collapse

* Links de Robótica

* Posts Recentes

Autor Tópico: Motor de passo bipolar  (Lida 6201 vezes)

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

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Motor de passo bipolar
« em: 30 de Junho de 2011, 21:14 »
Boa tarde.
senhores, procurei em todos os lugares assuntos sobre como controlar motor de passo bipolar, e percebo que o melhor jeito é usando o ci L293d, porem tento usa-lo com o arduino, mas o motor só vibra. ja tentei todas a combinações. Se alguem tiver como me ajudar nessa.
Meu motor é um EM-483 (creio que seja esse o modelo, pois é a unica informação) procurei datasheet e nada, é de uma impressora da epson.

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 2.114
    • Tróniquices
Re: Motor de passo bipolar
« Responder #1 em: 30 de Junho de 2011, 21:39 »
Se o motor só vibra é porque a sequência está errada ou porque não consegue dar o passo por falta de força, que pode ser por falta de corrente (L293D não conseguir dar a suficiente) ou duração dos impulsos demasiado pequena.

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Re: Motor de passo bipolar
« Responder #2 em: 30 de Junho de 2011, 21:54 »
hum entendo. O pior que não consigo encontrar o datasheet desse motor para ver sua tensão e corrente. Mas vou tentar ver essas opções e ogo ponho os resultados.vlw.

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 898
    • GrcByte - Projectos
Re: Motor de passo bipolar
« Responder #3 em: 01 de Julho de 2011, 01:32 »
Por acaso hoje tb estava a tentar ligar 1 motor de passo ao Arduino.. tenho aqui vários..

EM-329
EM-290
EM-257
Mitsumi M42SP-6K

O que estou para ligar é o Mitsumi M35SP-7, datasheet http://pdf1.alldatasheet.com/datasheet-pdf/view/176481/MITSUMI/M35SP-7.html
A versão de 6V tem uma intensidade de 807mA max? não posso ligar a um ULN2003 pois não?

O problema é sempre saber se podemos ligar ou não um determinado motor.. conseguimos saber por exemplo a intensidade de um Motor através da medição da maior e menor resistência obtidas? Tínhamos era de adivinhar a fonte a aplicar, 6v, 12v, 24v.. etc..

« Última modificação: 01 de Julho de 2011, 01:36 por almamater »

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Re: Motor de passo bipolar
« Responder #4 em: 01 de Julho de 2011, 18:53 »
Tentei mudar a velocidade no delay mais contia a mesma coisa, já tentei todas a combinações de fios possiveis e nada.
Oque eu faço?pior que nem sei as especificações do motor pois não encontrei o datasheet. tentei tbm com outro motor bipolar, mas só que esse é um motor de drive de DVD do pc. e nem mexeu. poxa.

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.225
Re: Motor de passo bipolar
« Responder #5 em: 01 de Julho de 2011, 19:12 »
que código estás a usar?

a duração dos impulsos de que o Njay fala é o tempo entre passos, não está directamente relacionado com o delay

pode ainda ser pouca tenção para a velocidade a que o motor está a tentar rodar

almamater: o ULN2003 aguenta no máximo com 500ma, se tiveres 2 monta-os em cima um do outro, resolve o problema

podes aplicar qualquer tensão até 24V desde que a corrente seja limitada para não queimar o motor, quanto maior a tenção, maior será a velocidade de rotação

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Re: Motor de passo bipolar
« Responder #6 em: 01 de Julho de 2011, 20:02 »
Boa CBX.
o codigo que estou usando é esse apenas para teste. eu estou usando o CI L293d, como é que eu fasso para usar o ULM 2003, pois consigo apenas usa-lo com um motor unipolar. Será que é a tensão mesmo? Pois tbm usei esse mesmo codigo e circuito com outro  motor bipolar de 5V e nem mexeu.
.......................................
int pin1 = 8;
int pin2 = 9;
int pin3 = 10;
int pin4 = 11;

void setup(){
  pinMode(pin1, OUTPUT);
  pinMode(pin2, OUTPUT);
  pinMode(pin3, OUTPUT);
  pinMode(pin4, OUTPUT);
}

void loop(){
  digitalWrite(pin1, HIGH);
  digitalWrite(pin2, HIGH);
  digitalWrite(pin3, LOW);
  digitalWrite(pin4, LOW);
  delay(100);
  digitalWrite(pin1, LOW);
  digitalWrite(pin2, HIGH);
  digitalWrite(pin3, HIGH);
  digitalWrite(pin4, LOW);
  delay(100);
  digitalWrite(pin1, LOW);
  digitalWrite(pin2, LOW);
  digitalWrite(pin3, HIGH);
  digitalWrite(pin4, HIGH);
  delay(100);
  digitalWrite(pin1, HIGH);
  digitalWrite(pin2, LOW);
  digitalWrite(pin3, LOW);
  digitalWrite(pin4, HIGH);
  delay(100);
}
......................................

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.225
Re: Motor de passo bipolar
« Responder #7 em: 01 de Julho de 2011, 20:12 »
o motor de passo não funciona assim, precisa de pulsos de 20 a 50ns, cada pulso corresponde a um passo que é mais ou menos 1.8º se o motor for de 200 passos por revolução.

para isso tens a biblioteca stepper que é bastante simples de utilizar e funciona na perfeição, o IDE do arduino já trás bons exemplos

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Re: Motor de passo bipolar
« Responder #8 em: 01 de Julho de 2011, 20:23 »
hum entendo. Ja tentei usar o da biblioteca do arduino o MotorKnob e deu a mesma coisa.
Esse 20 - 50ns corresponde ao tempo que eu coloque no delay(100) "devo subistituir 100 por 50 ou 20"?.
Outra coisa. Nesse meu codigo oque vc mudaria, porque pretendo controlar 3 motores ao mesmo tempo, sendo que um será unipolar e os outros dois bipolar, o unpolar consegui, só falta esse.

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 898
    • GrcByte - Projectos
Re: Motor de passo bipolar
« Responder #9 em: 01 de Julho de 2011, 20:28 »
CBX, então seria algo deste tipo:




Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.225
Re: Motor de passo bipolar
« Responder #10 em: 01 de Julho de 2011, 20:33 »
esse código não vai funcionar de maneira nenhuma, mesmo com os delays, testa o stepper_oneRevolution, em que 200 passos é igual a uma volta completa, se o motor for de 200 passos por revolução claro

almamater: não, ai vais continuar apenas só com os 500ma do ultimo, eu queria dizer literalmente em cima um do outro
« Última modificação: 01 de Julho de 2011, 20:44 por CBX »

Offline fabio.sales

  • Mini Robot
  • *
  • Mensagens: 36
Re: Motor de passo bipolar
« Responder #11 em: 01 de Julho de 2011, 20:49 »
hum entendo. tentei usar o stepper_oneRevolution e nada rsrs. Tire uma duvida, tem como eu ligar i motor bipolar apenas usando o ULM2803? Será que o problema é com o motor?.

Offline CBX

  • Mini Robot
  • *
  • Mensagens: 1.225
Re: Motor de passo bipolar
« Responder #12 em: 01 de Julho de 2011, 21:06 »
se aguentar com o motor sim, da mesma maneira que liga o unipolar, a única diferença é o bipolar não ter os fios para ligar à fonte, mas neste caso não interessa

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 2.114
    • Tróniquices
Re: Motor de passo bipolar
« Responder #13 em: 01 de Julho de 2011, 21:15 »
O 2803 não serve. Verifica se não tens um enrolamento partido; num motor bipolar tens 2 enrolamentos independentes. O delay não tem que ser tão grande, basta 10ms ou menos. A sequência que aí tens não está bem; se bem me lembro só se muda 1 pino de cada vez (de passo para passo).
« Última modificação: 01 de Julho de 2011, 21:18 por Njay »

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 898
    • GrcByte - Projectos
Re: Motor de passo bipolar
« Responder #14 em: 02 de Julho de 2011, 22:50 »
Humm.. será que estou a fazer bem?

Tenho motores de impressora que geralmente funcionam todos a 24V segundo o datasheet de 1 deles (Unipolar):



Dizem que é de 800 mA.. mas isto aplicando os 24V certo? I=V/R (I=24/30)

Mas se aplicar apenas 12V, será que fica com uma intensidade de 400mA e neste caso já pode ser usado com um ULN2003 sem fazer qualquer adaptação.. certo?