Autor Tópico: PWM  (Lida 10717 vezes)

Description:

0 Membros e 1 Visitante estão vendo este tópico.

Offline Marcos Dornelas

  • Graduando de Eng. de Controle e Automação
  • Novato
  • *
  • Posts: 30
  • Sexo: Masculino
  • GUIA-CNC
  • Cidade - UF: Itabira- MG
PWM
« Online: 02 de Fevereiro de 2011, 21:56 »
Aceito Exemplos!
Muito Obrigado!

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #1 Online: 24 de Maio de 2011, 15:28 »
E ai pessoal boa tarde !

Estou usando para funcionar um motor de passo um PIC16F877A e o CI L297 com TIPs, preciso gerar um clock para o CI, pelo o que eu li em alguns comentários eu tenho que gerar um sinal PWM fornecido por uma programação no PIC.

Alguem poderia me informar as comandos ou algum link que possa me ajudar ??

Aguardo,
Obrigado.

Thiago H.

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderadores
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:PWM
« Resposta #2 Online: 24 de Maio de 2011, 20:08 »
Thiago,

O PIC acionará o motor de passo através do L-297 e dos transistores. Sendo assim, o PIC só precisa enviar sinais de passo e de direção de movimento do motor ao L-297. Os sinais PWM são gerados e controlados pelo L-297. O PIC não precisa gerar sinais PWM.

Dependendo do que quer fazer, dá até para descartar o L-297 e usar o PIC para controlar os motores, fazendo a função de PWM e efetuar "microstepping" no PIC, mas aí a coisa complica um pouco. Link: http://www.fromorbit.com/projects/picstep/index.php

Sugiro colocar um CI TTL 7409 entre o L-297 (se for usado) e os transistores.

Offline Blackmore

  • CNCMASTER
  • ******
  • Posts: 1568
  • Sexo: Masculino
  • Profissão: Projetista Mecânico/Automação
Re:PWM
« Resposta #3 Online: 24 de Maio de 2011, 20:13 »
Thiago.Henrique

existe um equívoco aí ... eu tenho que gerar um sinal PWM fornecido por uma programação no PIC ... e isso não é verdade.
O que é necessário é na verdade um trem de pulsos, e este trem pode ser feito com qualquer oscilador, um exemplo bem simples é utilizando o LM555, onde vc terá circuitos aos montes na internet, e com o devido datasheet vc aprende até a calcular os valores dos componentes de acordo com a temporizaçao necessária.
Outra coisa, é que com o próprio LM555 vc pode fazer um PWM ... procure sobre o assunto que vc verá que existem opções além de microcontroladores.

Marcos Dornelas

recomendo procurar e ler o help do compilador que desejar utilizar (MikroC, PicBasic, C18, JavaPIC, CCS, ASM ... ) com certeza lá possui exemplos aproveitáveis.

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #4 Online: 25 de Maio de 2011, 09:38 »
Bom dia a todos !

Minilathe:
É exatamente isso que eu já tinha feito, usei o L297+7409+TIPs para o acionamento do motor, segue a imagem em anexo (algumas ligações entre PIC e L297 não serão necessárias).

Blackmore:
pois então blackmore, como gerar esse trem de pulso e como variar a velocidade de "trem"? Mas se é possivel fazer isso com o PIC eu não precisaria do LM555 no caso, pois já usarei o PIC para fazer toda a programação do projeto.

Dúvidas.
Como controlar a velocidade? ( até onde eu sei é a frequencia dos pulsos gerados )
No caso eu vou ter no projeto 4 motores de passo unipolares, e todos vão girar tanto sentido horário quando anti horário. No caso eu controlaria o sentido pela porta de direção do L297. Esse trem de pulsos se vir do PIC eu posso compartilhar com todos os 4 L297 ?

Obrigado de novo pessoal pela atenção.
AT+

Offline Blackmore

  • CNCMASTER
  • ******
  • Posts: 1568
  • Sexo: Masculino
  • Profissão: Projetista Mecânico/Automação
Re:PWM
« Resposta #5 Online: 25 de Maio de 2011, 18:59 »
Citar
pois então blackmore, como gerar esse trem de pulso e como variar a velocidade de "trem"?

é como falei, vc pode usar um LM555, basta estudar e entender como funciona ... dae tu vai sacar onde e como fazer essa variação do tempo do sinal ... e assim varia a velocidade do trem ... maaass

Citar
Mas se é possivel fazer isso com o PIC eu não precisaria do LM555 no caso, pois já usarei o PIC para fazer toda a programação do projeto.

bom ... eu não imaginei que o projeto já está sendo tocado por um microcontrolador, se fosse para girar apenas um motor não precisa de microcontrolador, afinal nem tudo precisa de microcontrolador, até certo ponto microcontrolador é evolução ... então esqueça o que eu disse anteriormente ...

Citar
Como controlar a velocidade? ( até onde eu sei é a frequencia dos pulsos gerados )

com o microcontrolador? se vc vai utilizar o PWM basta alterar o Duty cycle ... simples assim ...

Citar
No caso eu vou ter no projeto 4 motores de passo unipolares, e todos vão girar tanto sentido horário quando anti horário. No caso eu controlaria o sentido pela porta de direção do L297. Esse trem de pulsos se vir do PIC eu posso compartilhar com todos os 4 L297 ?

até pode, mas todos os motores terão sempre a mesma velocidade ... se vc pretende q um seja mais rápido que outro continuamente, procure outra opção.

Offline C N C N o w !

  • CNCMASTER
  • ******
  • Posts: 6300
  • Sexo: Masculino
Re:PWM
« Resposta #6 Online: 25 de Maio de 2011, 19:06 »
Citar
Como controlar a velocidade? ( até onde eu sei é a frequencia dos pulsos gerados )

com o microcontrolador? se vc vai utilizar o PWM basta alterar o Duty cycle ... simples assim ...

Nananinanão ! Vou repetir pela enésima vez: motores de passo são motores síncronos. A velocidade é determinada pela frequência, não pelo ciclo de trabalho.

Citar
Citar
No caso eu vou ter no projeto 4 motores de passo unipolares, e todos vão girar tanto sentido horário quando anti horário. No caso eu controlaria o sentido pela porta de direção do L297. Esse trem de pulsos se vir do PIC eu posso compartilhar com todos os 4 L297 ?

até pode, mas todos os motores terão sempre a mesma velocidade ... se vc pretende q um seja mais rápido que outro continuamente, procure outra opção.

Ou gere trens de pulsos individuais ...

Offline Blackmore

  • CNCMASTER
  • ******
  • Posts: 1568
  • Sexo: Masculino
  • Profissão: Projetista Mecânico/Automação
Re:PWM
« Resposta #7 Online: 25 de Maio de 2011, 19:29 »
Citar
Nananinanão ! Vou repetir pela enésima vez: motores de passo são motores síncronos. A velocidade é determinada pela frequência, não pelo ciclo de trabalho.

ok ... PWM não serve ..  :)

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #8 Online: 26 de Maio de 2011, 09:09 »
Bom dia pessoal,

Poh assim me confundiram ainda mais, srsr...

Não há problema se os motores terem a mesma velocidade (freqüência), mas se não é pelo Duty Cycle como eu gero esse trem de pulsos?? E o PWM, eu esqueço??

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderadores
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:PWM
« Resposta #9 Online: 26 de Maio de 2011, 12:08 »
Não confundir duty cycle (DC) com frequência (f), são coisas diferentes:

DC = Ton / ( Ton + Toff)

f = 1 / (Ton + Toff)

Um pode variar independentemente do outro.

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #10 Online: 26 de Maio de 2011, 14:30 »
ah tá

Entao Minilathe seria isso:

Ton + Toff = T

f = 1 / T

Mas agora trabalhando no PIC, eu tenho que criar um trem de pulsos, então quanto menor o periodo (T), maior será a frequencia. Mas maior será a frequencia do clock ou do motor ?? Ou aumentando a Frequencia consequentemente já aumenta a velocidade de rotacao do motor ??

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderadores
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:PWM
« Resposta #11 Online: 26 de Maio de 2011, 15:27 »
Ton + Toff = T

f = 1 / T

Correto.

Mas agora trabalhando no PIC, eu tenho que criar um trem de pulsos, então quanto menor o periodo (T), maior será a frequencia. Mas maior será a frequencia do clock ou do motor ?? Ou aumentando a Frequencia consequentemente já aumenta a velocidade de rotacao do motor ??

O PIC tem de gerar um trem de pulsos ao motor de acordo com a necessidade. Não confundir a frequência do clock do processador (PIC), que rodará o programa, e o "clock" enviado ao motor. São independentes!!

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #12 Online: 26 de Maio de 2011, 16:03 »
a frequencia do clock do processador é o do crystal ou to falando besteira ??

Agora o trem de pulsos enviados para o motor, quais os comandos de programação usados para criar esse trem de pulsos para o motor ??
Uso a saida CCP do PIC ?? Posso usar para para 4 motores simultaneamente ??

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderadores
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:PWM
« Resposta #13 Online: 26 de Maio de 2011, 18:08 »
a frequencia do clock do processador é o do crystal ou to falando besteira ??

Sim, é a do cristal. Mas o PIC também poderia operar com oscilador interno (do tipo RC).

Agora o trem de pulsos enviados para o motor, quais os comandos de programação usados para criar esse trem de pulsos para o motor ??
Uso a saida CCP do PIC ?? Posso usar para para 4 motores simultaneamente ??

Os pulsos podem ser gerados através de uma programação dotada de temporização ajustável (para variar a frequência do clock do motor) por software do PIC ou por hardware interno do PIC (temporizador).

Offline Thiago.Henrique

  • Fuso
  • **
  • Posts: 140
  • Sexo: Masculino
Re:PWM
« Resposta #14 Online: 26 de Maio de 2011, 19:40 »
maravilha Minilathe,

no caso o pic iria operar com o cristal.

agora no caso da frequencia do motor, eu desconheço essa diferença entre o software do PIC e o hardware interno. Como seria ?
O que eu descobri até agora foi algo parecido com
setup_ccp1 ( ccp_pwm )
set_pwm_duty ( valor )
setup_timer2_ ( .....

mas ainda não sei como organizar de uma forma funcional.

 

/** * */