Ir ao conteúdo

Posts recomendados

Postado

Bom dia. Estou com um trabalho que envolve o controle de um motor de vidro elétrico. Consiste em uma bicicleta ergométrica para fisioterapia e preciso alterar o sentido e a velocidade, sem muita variação no torque. Pensei em utilizar uma ponte H com relés para alterar o sentido. Já a velocidade, utilizar PWM, mas não sei qual transistor é o melhor para essa situação, já que o motor de vidro elétrico consome uns 6 A. Ah, o programa do PWM deve ser feito no MSP430g2553. Já olhei alguns exemplos, mas gostaria de explicação quanto ao período que devo colocar. Obrigada desde já. 

Postado

@Nathália Campioni ,

 

Usando um desses módulos de ponte H atuais, você não vai precisar de relés, pois os módulos fazem essa inversão para você. Mas terá de escolher o módulo de acordo com os dados de seu motor.

 

Sobre o período, é uma boa pergunta.... seguem estes links que tem uma boa discussão e teoria sobre isso :

 

https://electronics.stackexchange.com/questions/242293/is-there-an-ideal-pwm-frequency-for-dc-brush-motors

 

https://electronics.stackexchange.com/questions/80153/calculate-dc-motor-frequency

 

https://electronics.stackexchange.com/questions/67663/criteria-behind-selecting-pwm-frequency-for-speed-control-of-a-dc-motor

 

Paulo

  • Curtir 1
  • Membro VIP
Postado

você está no caminho certo ao considerar os custos do projeto antes de começar.

Me deu vontade registrar isso.. de novo

pode que isso te ajude

ou não...

 

O ideal é com os módulos mesmo mas pode considerar também mosfets de pelo menos 30A

  • Curtir 1
Postado
1 hora atrás, Nathália Campioni disse:

Ah, o programa do PWM deve ser feito no MSP430g2553. Já olhei alguns exemplos, mas gostaria de explicação quanto ao período que devo colocar. Obrigada desde já. 

Pelo que olhei, o datasheet não está tão detalhado no sentido de explicar o PWM dele, mas olhando os códigos dá para ver que são setadas as flags TA0CCR0 e TA0CCR1 se no caso

 

TA0CCR0 =1000

TA0CCR1 = 500

O clico dele é 50% ou seja a cada 1000us (microssegundo) o sinal vai ficar ligado por metade do tempo ou seja 500us. Assim a velocidade do motor vai ser a metade... se você quiser aumentar a velocidade você aumenta TA0CCR1 até no máximo 1000, mas ai no caso isso seria um sinal constante ligado ao máximo. Se quiser 25% do motor vai com 250 no TA0CCR1 e por ai vai... Em um programa normal você pode definir uma variável para trocar esse valor... colocando uma variável tipo. Ou seja criando seu "duty cycle".

 

int = x ;

TA0CCR1=x;

 

Assim você pode mudar essa velocidade por um botão ou potenciômetro ligado a uma porta I/O por exemplo que pode mudar esse valor de x que você pode iniciar.

 

https://www.kompulsa.com/example-code-msp430-pwm/

 

 

Aqui ensina a fazer o cálculo certinho com teoria

http://www.npeducations.com/2013/05/generation-of-pwm-signal-using-msp430.html?showComment=1469501557574

 

Se sua referencia for 12KHz 50% de duty cycle ficaria no código

TA0CCR0 =12000

TA0CCR1 = 6000-1     

 

 

Como as flags são de 2^16 (dois elevado a 16 bits) não tem problema de você colocar esse número ai de 12000. Vi em algum lugar que é melhor usar 1000, mas perdi onde vi isso T_T .

 

Ainda não programei nesse microcontrolador... então esse é o máximo que conseguir :(

Postado
5 horas atrás, Nathália Campioni disse:

Certo, mas esses módulos estão na faixa de que preço? Se eu quisesse fazer mesmo, seria mais barato?

@aphawk

 

Existem vário tipos , dependendo das correntes envolvidas e dos tipos de motores. Por esse fato é que eu te disse que tem de saber os dados de seu motor elétrico ANTES de adquirir um módulo.

 

Tem de R$ 10,00 até uns R$ 80,00 , mas uma de 30A de pico fica na faixa de R$ 50,00 .

 

http://lista.mercadolivre.com.br/ponte-h#D[A:ponte-h]

 

Esta aqui é excelente e de alta potência, com mais de 40A de pico :

http://produto.mercadolivre.com.br/MLB-807437166-modulo-driver-ponte-h-43a-bts7960-ibt2-_JM

 

Já esta é boa para até 30A de pico, e tem duas pontes H :

http://produto.mercadolivre.com.br/MLB-790072301-ponte-h-dupla-bridge-motor-30a-vnh2sp30-monster-moto-shield-_JM

 

Em minha opinião : montar uma com componentes discretos fica bem parruda, usando Mosfets próprios para isso, mas acaba saindo mais caro, fora os detalhes de projeto que podem te fazer perder dias e dias até tudo funcionar sem queimar nada E entregando uma boa potência ao motor....  Eu compraria uma dessas pronta e resolvo meu problema !

 

Paulo

  • Curtir 2
Postado

Se no circuito for adicionado um sensor de corrente, a sua velocidade também poderá ser constante independente de variação de carga.

No motor DC paralelo (shunt) a velocidade é diretamente proporcional a tensão. No caso de um PWM, acaba sendo diretamento proporcional ao duty cycle. Ocorre que temos perdas na resistencia de armadura do motor. Dessa forma, deve-se fazer uma realimentação da corrente consumida pelo motor para manter na velocidade constante para qualquer carga. A equação fica dessa forma.:

V_alimentação = V_armadura + (I_armadura x R_armadura), onde:

V_alimentação = sua fonte X duty cycle

V_armadura = a tensão da armadura de um motor ideal

I_armadura = corrente drenada pelo motor

R_armadura = Resistencia interna do motor (colocada em série com a armadura ideal)

Com um ajuste correto, consegue-se estabilidade de rotação < 1%. Menor que isso só com tacogerador ou encoder (0,1%). Se tiver como adaptar os encoders usados nos mouses de bolinha vai ter um excelente regulador.

  • Curtir 3
  • Membro VIP
Postado

Curioso o lance da corrente constante. Imagino cá com meus velhos botões... se com as mãos eu tento frear meu motor alimentado com v constante, a corrente/tensão do sensor shunt série penso que vá aumentar. Como usar esta informação pra atuar no sistema pra manter o torque ou velocidade ou corrente constante? Pode ser no campo linear mesmo. Deve-se atuar na varmadura e vrotor? Se bem que algumas furadeiras tem o botão de velocidade que até que dá um bom torque em baixa rotação. Nunca abri pra ver...

Também penso que...

9 horas atrás, Sérgio Lembo disse:

Se tiver como adaptar os encoders usados nos mouses de bolinha vai ter um excelente regulador.

pode ser menos difícil  mais eficaz. Também pode ser um motorzinho qualquer. Um de passo é melhor

Postado

@Bommu Perneta obrigada, vou testar e qualquer duvida eu mando aqui. Então eu posso adotar 1kHz tranquilamente e só ir ajustando o Duty-Cycle?

adicionado 3 minutos depois
 
 

@aphawk Esse módulo seria viável? <http://produto.mercadolivre.com.br/MLB-833364842-ponte-h-bridge-motor-monste-30a-vnh2sp30-arduino-_JM?source=gps>

Lendo, acredito que atende as necessidades do motor, mas gostaria de uma confirmação. Na alimentação do motor, eu preciso colocar uma fonte de 12Vdc que forneça a corrente necessária, certo? Outra dúvida: esse módulo também pode ser controlado via MSP430?

 

Postado

Só fazer o teste do código, você pode buscar um simulador para fazer isso... o Proteus tem uns MSP430g, porém não é o mesmo código "2553", contudo, novamente, tem uns parecidos que podem quebrar o galho... Não tem só o Proteus ^^

adicionado 0 minutos depois

testa com o osciloscópio virtual dele ^^

  • 4 semanas depois...
Postado

olá, boa tarde, não sei se aqui é o local correto para fazer esta pergunta, mas vamos lá, estou querendo fazer o controle de dois motoras dc, para que eles sirvam de locomoção para um robô, ate ai tudo bem fazer isso com um arduino e uma placa l298n é fácil, porém preciso fazer isso com um radio controle de 6 canais, minha duvida é como fazer a ligação do receptor com a ponte h para que eu possa mover o robô para frente e para traz com o controle, já que no controle eu uso canais diferentes para isso, me ajudem por favor

Visitante
Este tópico está impedido de receber novas respostas.

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...