collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[Ontem às 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: Controle de motores  (Lida 19512 vezes)

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

Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Controle de motores
« em: 31 de Dezembro de 2015, 11:12 »
Boas :)

Estou a construir mais um robôzito  e tenho uma duvida.
Preciso de  ter um feedback preciso de motor DC, no caso de 0/360.
Há milhares de soluções  no Google ENCODER ,PID,POTENCIÓMETRO,PWM, etc.
A minha duvida é  qual é a mais precisa e mais fácil de implementar.

Obrigado desde já a possíveis respostas

Um bom ano de 2016 ;)

Está aqui um exemplo

« Última modificação: 31 de Dezembro de 2015, 11:34 por josecarlos »

Offline artur36

  • Mini Robot
  • *
  • Mensagens: 795
Re: Controle de motores
« Responder #1 em: 31 de Dezembro de 2015, 11:47 »
Encoder sem dúvida, dependendo da precisão pode até ser feito em papel em casa.
Para detectar o ângulo sem necessitar de estar a fazer contas é usar um encoder absoluto, basicamente em vez de contar pulsos a saída é um código binário em função da posição, dá para fazer com um disco de espaços outros e brancos devidamente codificados ou então com um íman e um ic específico, para esta solução podes dar uma olhada pelo site da Áustria microsystems

Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Re: Controle de motores
« Responder #2 em: 31 de Dezembro de 2015, 12:27 »
Olá @artur36

Tenho ideia que quase todos os encoderes são aplicados ao eixo do motor isso não dificulta  um pouco as coisas ?
 Muitos motores não estão preparados para tal, uma solução é comprar motores já com encoder mas são caros e nunca é a medida que queremos.
 

Offline artur36

  • Mini Robot
  • *
  • Mensagens: 795
Re: Controle de motores
« Responder #3 em: 31 de Dezembro de 2015, 12:30 »
Não necessariamente, pode ser numa engrenagem posterior ou mesmo directamente no actuador final como acontece nas impressoras actuais

StarRider

  • Visitante
Re: Controle de motores
« Responder #4 em: 31 de Dezembro de 2015, 12:32 »
Boas :)

Estou a construir mais um robôzito  e tenho uma duvida.
Preciso de  ter um feedback preciso de motor DC, no caso de 0/360.
Há milhares de soluções  no Google ENCODER ,PID,POTENCIÓMETRO,PWM, etc.
A minha duvida é  qual é a mais precisa e mais fácil de implementar.

Boas,

Não estou a perceber, quando dizes 0/360 queres saber quando a roda/eixo faz
uma rotação complecta de 360 graus ? Ou seja, contar as RPMs ?

Ou por outro lado queres saber a posição angular do eixo ? E neste caso quando
dizes "Feedback preciso" queres saber a posição em arc/sec ? Ou algo com menor
resolução ?

Abraços,
PA
« Última modificação: 31 de Dezembro de 2015, 12:34 por StarRider »

Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Re: Controle de motores
« Responder #5 em: 31 de Dezembro de 2015, 12:48 »
Olá @StarRider

O que quero é a posição do ângulo  referente a uma volta.
Poder determinar aonde esta o ângulo 50 em 360 .

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.947
  • NERD!
Re: Controle de motores
« Responder #6 em: 31 de Dezembro de 2015, 14:20 »
O mais "simples" seria com um encoder absoluto, mas o seu preço e complexidade upa-upa.

Tens a possibilidade de fazer um "homing" (ir à posição "0º") quando ligas? Nesse caso podias usar um enconder incremental de quadratura (tipo os dos ratos de bola) mais um detetor de 0º. Quando ligavas ias a zero, fazes um reset do contador e passas a usar o incremental.

Ou então se em cima disso puderes usar um motor de passo fica ainda mais simples: só precisas da deteção de 0º e depois vais controlando os passos que dás.


Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Re: Controle de motores
« Responder #7 em: 31 de Dezembro de 2015, 14:29 »
 @artur36

Como no exemplo acima, está a dar referencia em relação a engrenagem posterior é mais um dos pontos a ter em consideração.
Muitas das vezes os motores  pequenos têm pouco força e é preciso adicionar  engrenagens  planetárias e outras para obter mais força, o feedback pode ser incerto.
   

Offline artur36

  • Mini Robot
  • *
  • Mensagens: 795
Re: Controle de motores
« Responder #8 em: 31 de Dezembro de 2015, 14:35 »
Mas a opção do encoder no motor permite com o mesmo encoder maior resolução, permitindo assim encoders mais simples de construir.
No actuador final o encoder não é afectado pelas folgas das engrenagens, como em tudo na vida as várias opções têm vantagens e desvantagens.

Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Re: Controle de motores
« Responder #9 em: 31 de Dezembro de 2015, 14:40 »
Olá @jm_araujo

Motores de passo é bem mais fácil mas tem alguns problemas como perda de passos pouco torque a não ser que metas um nema 34 isso faz aumentar a escala.

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.947
  • NERD!
Re: Controle de motores
« Responder #10 em: 31 de Dezembro de 2015, 15:35 »
Se não precisares de muita velocidade tens steppers com caixas redutoras ;)

StarRider

  • Visitante
Re: Controle de motores
« Responder #11 em: 31 de Dezembro de 2015, 16:19 »
Boas,

Pelo que percebi, suponho que necessites disto para posicionar um qualquer eixo,
independentemente desse eixo ser o do motor ou outro qualquer, não é assim ?

Ora, o que necessitas realmente saber é a posição do dito eixo, qualquer que seja
o método que vais usar para rodar o mesmo (seja motor CD, seja stepper, seja com
redução, etc).

Geralmente o uso de motores CD com encoders incluídos (tipo Pitmann) serve mais
para controlar os RPMs do motor em si, o que acaba por não ser o que pretendes.

Com um motor de passos é relativamente simples, e para ser 100% fiável o que
necessitas é somente um sensor (Hall, foto-diodo, etc) que te possa dar uma
posição que assumes como sendo a chamada "home position". A partir dai é
mesmo muito fácil posicionares o eixo em qualquer posição angular, tenhas ou
não desmultiplicação entre o eixo do motor e o eixo final.

Se fores para motores DC o principio é o mesmo, sendo que em vez de poderes
contar com os "steps" do motor de passo contas os "ticks" do encoder que vais
instalar no eixo FINAL (podes use o encoder no eixo do motor mas tens que contar
com o backlash do sistema). É claro que vais ter que mover o motor CD com um
sistema mais elaborado e o firmware vai complicar ... mas nada por demais.

Podes usar encoders magnéticos e rodas com home index o que te permite saber
exactamente a posição 0 (zero), tens que ter em conta a resolução do encoder pois
se queres ter uma resolução de 1 graus não podes usar encoders com menos de 200
ticks (depois multiplicas por 4).

Just my 2 cents,
PA



StarRider

  • Visitante
Re: Controle de motores
« Responder #12 em: 31 de Dezembro de 2015, 16:22 »
Boas novamente,

E que tal um servo ?  Pensa nessa solução.

Abraços,
PA

Offline Hugu

  • Mini Robot
  • *
  • Mensagens: 5.602
  • Keyboard not found. Press any key to continue.
    • [url=www.g7electronica.net]G7 Electrónica.net[/url]
Re: Controle de motores
« Responder #13 em: 01 de Janeiro de 2016, 00:02 »
Olá @StarRider

O que quero é a posição do ângulo  referente a uma volta.
Poder determinar aonde esta o ângulo 50 em 360 .
tb nao entendi...queres um motor que nao dê mais que uma volta completa ou é para poder dar voltas e mais voltas? e com que precisao? 1grau? 5 graus? em 360graus qtas posiçoes queres identificar?
« Última modificação: 01 de Janeiro de 2016, 00:10 por Hugu »

Offline josecarlos

  • Mini Robot
  • *
  • Mensagens: 393
Re: Controle de motores
« Responder #14 em: 01 de Janeiro de 2016, 11:29 »
Boas :)



E que tal um servo ?  Pensa nessa solução.

Já construí braços com servos de modelismo foi interessante mas desta vez quero ir mais alem,  sei que há servos com mais capacidades tanto em força como em control já preparados para robótica.

Este foi o que construí 
É controlado com um software ainda cheguei a programa-lo para agarrar um objecto é giro controlar 14 servos de dois braços, fiz alguns truques aonde precisava de mais força adicionei 2 servos foi de loucos :D

Voltando, a balança pende para os encoderes , tenho algumas duvidas, quando tens engrenagens pelo meio mesmo estando o encoder na engrenagem final.

Motores de passo
 

Aqui dá para ver como se comporta e toda a montagem interior, na minha opinião deixa muito a desejar.

 

tb nao entendi...queres um motor que nao dê mais que uma volta completa ou é para poder dar voltas e mais voltas? e com que precisao? 1grau? 5 graus? em 360graus qtas posiçoes queres identificar?

Olá @Hugu

Como disse, quero identificar todas para ser possível de as controlar, senão repara tens um erro de um grau isso multiplicado por 6 juntas e se imaginares que 1 grau representa 1 cm o teu braço está desviado do objecto que queres mover 6cm ;)