Ir ao conteúdo
  • Cadastre-se

Posts recomendados

Postado

ja tentei vários codigos , nestes dois programas 

porém nenhum deles COMPILOU CORRETAMENTE 

Alguém tem um codigo para PIC16F628A

que gere sinais de Spwm , para onda senoidal pura de 60hz ?

Pergunto isso pois estou tentando criar um codigo que gere 

dois sinais SPWM , para exitarem mosfet´s que vão por sua vez 

chavear um transformador , que por sua vez , irá gerar uma inversão 

de tensão DC/AC ......

alguém poderia me ajudar ?

OBS: preciso de algo prático ... teoria já tenho pra encher caminhão aqui na net kkkk

  • Membro VIP
Postado

tmj...

Mas cadê seu programa? Qual/como/porquê não compilou corretamente? Qual erro ou efeito deu e qual você queria que desse? o que é Spwm?

A parte do programa é bem simples. Basta você criar uma tabela de senos (uns 16 valores já tá bom) e ir alimentando o registro de dutty cycle com ela durante o ciclo da onda.

Já o circuito do seu conversor dc/ac é outro desafio à parte relativamente complexo. Pra recompor a onda senoidal a partir dum pwm exige circuito de filtro e técnica especial. Precisa de conhecimentos adicionais... (não adiciono)

  • Curtir 2
Postado
1 hora atrás, if. disse:

tmj...

Mas cadê seu programa? Qual/como/porquê não compilou corretamente? Qual erro ou efeito deu e qual você queria que desse? o que é Spwm?

A parte do programa é bem simples. Basta você criar uma tabela de senos (uns 16 valores já tá bom) e ir alimentando o registro de dutty cycle com ela durante o ciclo da onda.

Já o circuito do seu conversor dc/ac é outro desafio à parte relativamente complexo. Pra recompor a onda senoidal a partir dum pwm exige circuito de filtro e técnica especial. Precisa de conhecimentos adicionais... (não adiciono)

Então tentei como eu disse, nos seguintes : proteus , MPLAB e no mikroC PRO 

e em nenhumd eles o codigo ou melhor dizendo OS CODIGOS que baixei da internet 

dizendo criarem uma ona senoidal pura de 60hz não compilaram de jeito nenhum 

não sei programar em C , estou iniciando nesta área por isso baixo codigos para testes 

porém nenhum deles funcionou nos programas que eu usei ........

queria ajuda de alguém que sabe fazer isso 

será que o colega pode me ajudar com isso por favor ?

  • Membro VIP
Postado
Em 01/10/2020 às 10:04, Samuel Neiva disse:

não compilaram de jeito nenhum 

não sei programar em C , estou iniciando nesta área por isso baixo códigos para testes 

porém nenhum deles funcionou

Permita-me fazer uma análise psico & técnica das suas letras...

Isso complica 1 pouco. Suponho com um certo grau de certeza que você nem mesmo sabe como opera/configura o circuito de pwm do seu mc, o que complica ainda mais. Também não mostrou o que fez nem mesmo os links que supostamente achou o que nos deixa meio cegos pra nos guiarmos. E pra ajudar (a complicar), há o desafio dos complexos filtros pra recomposição da senoide como lhe disse (apesar que nisso não te ajudaria).

 

Penso que você deve ir por partes. 1º faça um led piscar. Nisso sou phd e posso te ajudar sim 😁. Pular direto pro seu desafio sem base em nada é algo como começar a construir uma casa pelo telhado.

Depois de piscar um led, veja no datasheet do seu mc como e quais registros controlam o circuito interno do pwm dele. Clique pra ter noção...

Deve ser algo como isso: Perceba TMR2 rodando sozinho e sendo comparado com os registros fixos... quase simples de entender...

maxresdefault.jpg

https://electrosome.com/pwm-pic-microcontroller-mplab-xc8/

 

Depois de piscar o led com qualidade, imagine algo minimalista como (digito on line). Ok,  você não entende nada de c e nem do mc mas alguém do futuro talvez...
(Baseando na figura acima)

set_pwm(unsigned int dt)
{
CCPR1L=dt; //LSB
CCPR1H=dt>>8; //MSB
}

unsigned int const tabela_seno[16]=
{
...seno_de_0 * 1023, //1023=ad 10 bits
...seno_de_10 * 1023,
...seno_de_x * 1023,
...
...seno_de_180 * 1023
}

}

for (i=0;i<16);i++)
{
set_pwm(tabela_seno[i]);
}

 

Se você colocar um filtro rc simples na saída pwm consegue até ver a senoide😁

 

Your turn baby...

 

 respondi no outro tópico...😁

4 horas atrás, endrinho disse:

1    16    C:\Users\Administrador\Desktop\PROJETO MPLAB\inversor.c    [Error] xc.h: No such file or directory

 

recebendo este erro

 

Postado
23 horas atrás, if. disse:

tmj...

Mas cadê seu programa? Qual/como/porquê não compilou corretamente? Qual erro ou efeito deu e qual você queria que desse? o que é Spwm?

A parte do programa é bem simples. Basta você criar uma tabela de senos (uns 16 valores já tá bom) e ir alimentando o registro de dutty cycle com ela durante o ciclo da onda.

Já o circuito do seu conversor dc/ac é outro desafio à parte relativamente complexo. Pra recompor a onda senoidal a partir dum pwm exige circuito de filtro e técnica especial. Precisa de conhecimentos adicionais... (não adiciono)

 

20 horas atrás, if. disse:

Permita-me fazer uma análise psico & técnica das suas letras...

Isso complica 1 pouco. Suponho com um certo grau de certeza que você nem mesmo sabe como opera/configura o circuito de pwm do seu mc, o que complica ainda mais. Também não mostrou o que fez nem mesmo os links que supostamente achou o que nos deixa meio cegos pra nos guiarmos. E pra ajudar (a complicar), há o desafio dos complexos filtros pra recomposição da senoide como lhe disse (apesar que nisso não te ajudaria).

 

Penso que você deve ir por partes. 1º faça um led piscar. Nisso sou phd e posso te ajudar sim 😁. Pular direto pro seu desafio sem base em nada é algo como começar a construir uma casa pelo telhado.

Depois de piscar um led, veja no datasheet do seu mc como e quais registros controlam o circuito interno do pwm dele. Clique pra ter noção...

Deve ser algo como isso: Perceba TMR2 rodando sozinho e sendo comparado com os registros fixos... quase simples de entender...

maxresdefault.jpg

https://electrosome.com/pwm-pic-microcontroller-mplab-xc8/

 

Depois de piscar o led com qualidade, imagine algo minimalista como (digito on line). Ok,  você não entende nada de c e nem do mc mas alguém do futuro talvez...
(Baseando na figura acima)


set_pwm(unsigned int dt)
{
CCPR1L=dt; //LSB
CCPR1H=dt>>8; //MSB
}

unsigned int const tabela_seno[16]=
{
...seno_de_0 * 1023, //1023=ad 10 bits
...seno_de_10 * 1023,
...seno_de_x * 1023,
...
...seno_de_180 * 1023
}

}

for (i=0;i<16);i++)
{
set_pwm(tabela_seno[i]);
}

 

Se você colocar um filtro rc simples na saída pwm consegue até ver a senoide😁

 

Your turn baby...

nobre amigo , eu tentei lhe enviar um arquivo *.texto POR MENSAGEM 

não sei se chegou até o amigo , porém se tiver chegado ( e eu sinceramente espero que sim )

por gentileza , se for a você possível , analise o mesmo , pois entendo eu em minha Ignorância 

ainda muita nesta ÁREA DE PROGRAMAÇÃO PARA MICROCONTROLADORES , fascinante porém 

muito complexa e difícil DEVO ADMITIR ... obviamente - este arquivo vai lhe explicar tal vez 

de forma satisfatória a você , tal vez não , porém vai iluciadar o que eu estou tentando criar ....

 

caso este não o faça, peço a gentileza e caridade até do amigo , que volte a entrar em contato 

pois entenda : EU QUERO , EU PRECISO E EU VOU APRENDER ISSO DE QUALQUER MANEIRA 

NADA ME DETERÁ , MOTIVOS PRA EU ESCREVER ISSO ? AHMMMMMM

- SOU BRASILEIRO 

- SOU PERSISTENTE 

- SOU MINEIRO KKKKKKKKK

- E SOU AMANTE DA TECNOLOGIA 

e por ai vai ........... 

de qualquer forma , espero que você possa ME ENTENDER e melhor que me entender , 

ME AJUDAR DA MANEIRA QUE EU PRECISO CLARO .......... bom ! é isso .

E seja o que Deus quiser né kkkkkk 

 

ENDEL NEIVA 

UBA - MINAS GERAIS 

 

  • 2 anos depois...
Postado
Em 01/10/2020 às 08:53, .if disse:

tmj...

Mas cadê seu programa? Qual/como/porquê não compilou corretamente? Qual erro ou efeito deu e qual você queria que desse? o que é Spwm?

A parte do programa é bem simples. Basta você criar uma tabela de senos (uns 16 valores já tá bom) e ir alimentando o registro de dutty cycle com ela durante o ciclo da onda.

Já o circuito do seu conversor dc/ac é outro desafio à parte relativamente complexo. Pra recompor a onda senoidal a partir dum pwm exige circuito de filtro e técnica especial. Precisa de conhecimentos adicionais... (não adiciono)

1    16    C:\Users\Administrador\Desktop\PROJETO MPLAB\inversor.c    [Error] xc.h: No such file or directory

 

recebendo este erro

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...