Controle de velocidade motor

Circuitos eletrônicos, topologias, diagramas elétricos, etc...

Moderadores: 51, Renie, gpenga

Controle de velocidade motor

Mensagempor longo.251272 » 17 Jan 2015 21:46

Boa noite pessoal,

Preciso montar um circuito que fique comparando duas tensões para aumentar ou diminuir uma terceira tensão. Quando a primeira for maior que a segunda tem que aumentar a terceira tensão e quando a primeira for menos que a segunda tem que diminuir a terceira. Como um controle de velocidade, onde eu determino a velocidade que quero através da primeira tensão, monitoro a velocidade através da segunda tensão e a terceira amenta ou diminui a velocidade do sistema.

Utilizando microcontroladores até seria fácil de implementar a lógica, mas perco a precisão quando usar o pwm para obter a terceira tensão já que é difícil encontrar um microcontrolador com dac interno.
Pensei em usar um circuito subtraidor com AOP, mais não fico na dúvida sem vai ficar estável.

Alguém pode dar alguma dica ?
Valeu pela atenção.
longo.251272
Byte
 
Mensagens: 318
Registrado em: 08 Nov 2011 11:58
Localização: São Paulo - SP

Re: Controle de velocidade motor

Mensagempor MOR_AL » 18 Jan 2015 10:14

Em tempo: Hoje em dia quase todos os microcontroladores possuem CAD.
Na realidade o que você descreveu é um controle de velocidade e como tal, é simples.
Como a velocidade não varia rapidamente, no instante em que ela alcance o valor desejado, basta parar de aumentar (ou diminuir). É um sistema de primeira ordem e por isso aceita este procedimento.
Vamos renomear suas tensões.
Primeira tensão. Como estamos falando de velocidade, então vamos chama-la de Velocidade Desejada ou VD.
Segunda tensão. É a tensão que você quer alcançar. Faz ela como sendo uma amostra da terceira tensão. Chama ela de Velocidade Amostrada, ou VA.
Terceira tensão. Chama ela de Velocidade Final, ou VF
Bom. Agora o procedimento.
A ideia é comparar as duas velocidades. A desejada com a amostrada. Faça Erro = VD - VA
Se este erro tender para zero, então VD vai ser igual a VA, que é o que você deseja.
Ainda mais.
Como VA é uma amostra de VF, então VD = VA = k VF, ou seja:
Se você determinar o valor de k, então vai saber o valor de VF.
Na realidade o que se faz é:
Ex.
VR é uma tensão entre 0 e 5V, obtida de um divisor resistivo. Como você quer variar VR, então o divisor é um potenciômetro P1. Um dos lados é o terra e o outro é o +5V. O meio é o VR. Sugestão. P1 = 10k.
Você agora tem que conseguir um sensor que transforme a velocidade em tensão. Esta tensão é a tal tensão de amostra VA. Então você terá o valor de k = VF/VA.
Não é tão imediato assim, não.
Para que o sistema funcione como você deseja, tem que fazer o sensor com as seguintes características:
Para VF = 0 rps (rotações por segundo ou minuto), VA = 0V.
Para VF = VFmáx rps, VA = 5V.
Se esta sua função for linear será melhor ainda. Função linear é tal que o valor de k seja constante para toda a faixa de variação de VF. Em outras palavras, um incremento x da velocidade vai gerar um incremento y da tensão, tal que y/x = k.
Para fazer isso usando um microcontrolador Mc, boa parte já está preparada, já que as tensões analógicas (VR e VA) variam entre 0V e 5V. A tensão de alimentação tem que ser igual a 5V.

O programa.
1 - Leia o valor de VD e logo em seguida o valor de VA. Assim você vai ter ambos no mesmo instante, ou quase.
2 - Calcule o valor do erro. Erro = VD - VA.
3 - Se Erro for positivo então VD é maior que VA, logo aumente a saída, que deve ser um PWM. Então aumente o Ton.
4 - Se Erro for negativo então VA é maior que VD, logo reduza o valor de Ton.
5 - Gaste um tempo. Use este tempo para atualizar algo. Como você deve usar um LCD, então coloque o valor da velocidade nele. Mas a taxa de leitura vai ser bem superior à taxa de atualização do LCD. Faça a taxa de leitura ser aprox. 10 a 20 vezes por segundo e a taxa de atualização do LCD com 3 a 4 vezes por segundo. Logo aqui você vai ter que introduzir um contador. Este contador tem que ser incrementado a cada leitura das tensões. Somente quando ele alcançar, digamos 4 ou 5 é que o dado será enviado ao LCD. Ah. O contador tem que ser zerado no fim da contagem.
6 - Você tem que manter os cinco primeiros itens em loop, ou seja, este item manda retornar ao item 1.

Você tem que ajustar a taxa de incremento ou decremento de Ton. Se fizer um PWM com 256 valores, então seu erro mínimo seria de 1/512 x 100% = 0,2%.
O ideal seria fazer uma alteração dinâmica e (não fixa) em Ton.
Para cada valor da variável Erro, produza um valor de variação de Ton.
Se o erro estiver muito grande, varie muito Ton. Se o erro estiver pequeno, varie pouco Ton.

Ex.:
Variação de Ton = Erro/2. (é uma instrução de shift à direita).
Claro que você deve se preocupar com os limites de Ton. Caso eles sejam ultrapassados, retorne o valor para o limite.

Acho que aí estão quase todas as dicas.
Bons projetos.
MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Re: Controle de velocidade motor

Mensagempor aldss » 18 Jan 2015 10:52

Bom dia!
Seria basicamente o circuito "High Impedance Differential Amplifier" mostrado na imagem abaixo:
http://www.analog.com/static/imported-f ... 1_0415.gif
ou
http://electronicdesign.com/site-files/ ... hip_F3.gif
Para o primeiro pode colocar nas entradas ampop seguidores como na imagem:
http://archives.sensorsmag.com/articles ... 1297_3.gif
Se precisar de ajuda para o dimensionamento me pergunte!
Abraço
aldss
Bit
 
Mensagens: 9
Registrado em: 22 Dez 2006 20:57

Re: Controle de velocidade motor

Mensagempor ze » 18 Jan 2015 15:00

eu acho que (dependendo do projeto), teoricamente um mc e um encoder vc pode monitorar e corrigir diretamente a velocidade. Tende a ficar menos complicado sem ter que realimentar com tensão.
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Re: Controle de velocidade motor

Mensagempor EvandrPic » 18 Jan 2015 15:25

Eu acho que você terá mais opções se disser o que exatamente você quer fazer com esse motor.
Do que se trata o projeto?
EvandrPic
Dword
 
Mensagens: 2116
Registrado em: 31 Mar 2010 15:05

Re: Controle de velocidade motor

Mensagempor longo.251272 » 18 Jan 2015 18:02

Vou tentar montar todas as alternativas para ver os pós e contras.

Há aplicação é para controlar a tensão de um fio que está sendo puxado. Esse fio passa por um polia de arraste que está acoplado ao motor e depois passa por um sensor de tensão. O circuito tem que ficar monitorando esse sensor e aumentar ou diminuir a velocidade do motor que esta puxando esse fio para ajustar a tensão dele de acordo com a pré determinada.

Não sei se fui bem claro, posso procurar um vídeo para ajudar a visualizar.

Valeu pessoal.
longo.251272
Byte
 
Mensagens: 318
Registrado em: 08 Nov 2011 11:58
Localização: São Paulo - SP

Re: Controle de velocidade motor

Mensagempor KrafT » 18 Jan 2015 22:04

Bom, um controlador P é meio inadequado para esse sistema... Ele pode ou ser muito lento ou oscilar demais.

Mas você tem que começar de algum lugar, então faz como o MOR_AL sugeriu, que pode inclusive ser com amp-op, mas um MCU te dá mais liberdade.

Sinceramente, a não ser que você queira estudar controle, sugiro usar esses CLPs (relativamente) baratos que tem por aí que já tem controlador PID embutido.

Colocar um controle PID num Piczinho não é difícil. O duro é modelar a tua planta e obter os coeficientes do controlador, além da maldita resolução do ADC e do PWM, que podem fazer teu motor ficar eternamente mudando de um passo para outro, por não encontrar o valor ideal entre dois degraus, tando do ADC como do PWM.
"..."Come to the edge," he said. And so they came. And he pushed them. And they flew."― Guillaume Apollinaire
Avatar do usuário
KrafT
Dword
 
Mensagens: 2228
Registrado em: 11 Out 2006 14:15
Localização: Blumenau -SC

Re: Controle de velocidade motor

Mensagempor Maffeis » 18 Jan 2015 22:22

Vale a pena projetar a placa?

Qual o custo do CLP e do tempo de projeto da placa?

Eu fiz pro meu tcc um controle de motor entrada de encoder e saida 0-10V para controlar o motor, a saida 0-10V ficou bem meia boca

Da pra consertar mais vai dar trabalho, isso falando só em resolução se é 8 10 12bits agora tem a parte de EMC também.
Maffeis
Word
 
Mensagens: 501
Registrado em: 07 Ago 2010 19:10

Re: Controle de velocidade motor

Mensagempor andre_luis » 19 Jan 2015 07:26

longo.251272 escreveu:Utilizando microcontroladores até seria fácil de implementar a lógica, mas perco a precisão quando usar o pwm para obter a terceira tensão já que é difícil encontrar um microcontrolador com dac interno.
Pensei em usar um circuito subtraidor com AOP, mais não fico na dúvida sem vai ficar estável.


Mas a saída do PWM do uC ao ser devidamente driveada e passando por um capacitor vai gerar a tensão DC, não é isso que precisa ?
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: Controle de velocidade motor

Mensagempor edison » 21 Jan 2015 19:52

longo.251272 escreveu:...........A aplicação é para controlar a tensão de um fio que está sendo puxado. Esse fio passa por um polia de arraste que está acoplado ao motor e depois passa por um sensor de tensão. O circuito tem que ficar monitorando esse sensor e aumentar ou diminuir a velocidade do motor que esta puxando esse fio para ajustar a tensão dele de acordo com a pré determinada...........


VI algo semelhante numa máquina de empalar revistas. O filme plástico passa por vários cilindros "esticadores" antes de entrar na máquina.
Num dos cilindros tem uma haste que atua um potenciômetro e esse envia qualquer variação direto ao inversor de frequência do motor de tração.

A sensibilidade da correção é feita nos parâmetros de rampa de aceleração e desacel. do inversor.
Nos extremos desta haste há sensores indutivos os quais só atuam se ocorrer excesso de velocidade ou rompimento do filme tracionado e assim desligando o sistema.

O maior cuidado nesse conjunto é com a parte mecânica ,os rolamentos e mancais dos rolos tem que estar 100% se não o mecanismo fica muito "nervoso" nas correções e desligamentos constantes.

Achei algo que ilustra isso :

Imagem

Aqui tem outras opçoes: ( didática e traduzido de gratis :D )

http://www.carotron.com/applications/csag-h/
-----------------------------------------------
"Os políticos e as fraldas devem ser trocados freqüentemente. E pelas mesmas razões"
-----------------------------------------------
Avatar do usuário
edison
Dword
 
Mensagens: 2011
Registrado em: 10 Mar 2007 00:18
Localização: Curitiba

Re: Controle de velocidade motor

Mensagempor longo.251272 » 21 Jan 2015 20:55

O sensor que vou utilizar é o que está neste link www.retech-godet-rolls.ch/yarn-tension-sensors.html
Este link mostra um sistema completo sartek.in/sr-12

Aqui no Brasil é conhecido como alimentador positivo. Escolhi o microcontrolador attiny45 por já ter ele aqui e tem ADC e PWM, preferi usar microcontrolador por ter a facilidade de ajustar as rampas de aceleração e desaceleração. Só preciso tomar cuidado na parametrização do pwm, para ele ficar 100%.

Valeu pessoal.
longo.251272
Byte
 
Mensagens: 318
Registrado em: 08 Nov 2011 11:58
Localização: São Paulo - SP

Re: Controle de velocidade motor

Mensagempor longo.251272 » 17 Fev 2015 12:03

Boa tarde pessoal, fiz alguns testes na aplicação e estou tendo uma tensão de 1 volt parasitada no sensor. Para eliminar esse 1 volt estou pensando em usar um circuito subtrador usando AOP. Vou ver se consigo deixar a resposta do adc mais rápida, para dar a possibilidade de pegar vários valores para calcular a média.

Estou usando o attiny13a. Valeu
longo.251272
Byte
 
Mensagens: 318
Registrado em: 08 Nov 2011 11:58
Localização: São Paulo - SP

Re: Controle de velocidade motor

Mensagempor mega.rod » 28 Fev 2015 22:31

Esta solução que o Edson menciona funciona bem. Por aqui chamam de bailarina. Já apliquei com CLP. É bastante simples e exige apenas 2 sensores ON/OFF simples e baratos(30 conto cada). Já ouvi que funciona também com potenciômetro preso no eixo da bailarina. A sacada do programa com sensores é começar a operação da máquina em velocidade baixa e a cada faixa de velocidade você corrige mais ou menos velocidade, ex.: No começo, quando a velocidade esta devagar, você adiciona/subtrai x rpm ao motor, mas quanto a velocidade já está alta, na nominal por exemplo, você corrige  x/y apenas para fazer o ajuste fino. Caso um sensor fique acionado por um período, a cada x tempo você corrige mais x de velocidade.



Independente da solução ser na base da eletrônica ou automação mais tradicional, acredito que para cada faixa de velocidade você vai precisar de tempos de respostas diferentes para não acorrer os problemas com o controle P(proporcional) mencionado pelo amigo KrafT. Esta sua necessidade já vi em uma fiação onde uma máquina importada aplica este controle muito bem. Para o controle da tensão do fio existe um inversor de frequência especial que queimou e o tal inversor é fabricado pelo próprio fabricante da máquina. Quiseram nacionalizar a solução com uma empresa local que não conseguiu fazer funcionar com Servoacionamento. No final das contas tiveram que importar o tal inversor por um preço grotesco, algo em torno de R$35000,00.



Espero ter ajudado! 
Avatar do usuário
mega.rod
Nibble
 
Mensagens: 83
Registrado em: 17 Out 2006 09:52


Voltar para Circuitos Diversos

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x