Controlando Motor de Passo Bipolar com o driver ULN2803

1,580 views
Skip to first unread message

DQ

unread,
Feb 6, 2012, 9:54:44 AM2/6/12
to Garoa Hacker Clube
Na Noite do Arduino estamos montando uma CNC, usando motores de passo
bipolar. Para quem não conhece, os motores de passo bipolar possuem 4
fios, cada par controla uma bobina. Para fazer o motor girar, é
preciso inverter a tensão na bobina (ie, hora a corrente vai num
sentido e hora no outro). Um outro tipo de motor de passo é o
unipolar, com 5 ou 6 fios, onde as bobinas tem uma derivação central e
basta ativar uma ou outra metade, não é necessário inverter a tensão.

Estamos usando atualmente o driver L298 (basicamente porque eu tinha
um shield com ele). Futuramente vamos testar outras opções (como o
"EasyDriver Stepper Motor Driver" da Sparkfun). O L298 é um driver do
tipo "ponte H", um circuito projetado justamente para permitir
controlar a polaridade em um par de saídas.

Na semana passada alguém levantou a possibilidade de usar um ULN2803,
compartilho abaixo uma página interessante a respeito:

http://elabz.com/driving-a-bipolar-stepper-motor-with-arduino-and-uln2803ag/

Resumindo, o ULN consegue "absorver" (alguém tem uma tradução melhor
para "sink") a corrente, mas não fornecê-la. A solução usada são
resistores adicionais entre a alimentação e as conexões com o motor. A
desvantagem é que você joga fora potência (na forma de calor).

DQ
"Chanceler Supremo do Garoa HC"
Atual responsável pela Noite do Arduino
Um L298 queimado (e contando)

Claudio Miklos

unread,
Feb 6, 2012, 12:58:06 PM2/6/12
to hacker...@googlegroups.com
Olá DQ !

Eu fiz algumas experiências com motor de passo unipolar e Transistor darlington TIP122:

http://www.miklos.blog.br/2009/11/motor-de-passo-funcionando.html 

é uma forma simples e que possibilita bons níveis de corrente e dissipação de calor.

Eu traduzo "sink" como "drenar"

Abraços!

--
.--. .- .-. .- .--. --- ... - .- .-. . ... -.-. .-. . ...- .- .--. .- .-. .- .... .- -.-. -.- . .-. ... .--. .- -.-. . ... .--. .- - --. --- --- --. .-.. . --. .-. --- ..- .--. ... -.. --- - -.-. --- --
 Nachschlagewerk (Regras da Lista): http://garoa.net.br/wiki/Lista:LeiaAntesDeClicarNoSend
Como se Associar: http://garoa.net.br/wiki/Associados
Sobre as Contribuições: http://garoa.net.br/wiki/Contribuições
Para mais informações sobre o Garoa Hacker Clube acesse  http://garoa.net.br
Maiores opções sobre o Google Groups, visite: http://groups.google.com/group/hackerspacesp
.--. .- .-. .- -- .- .. ... .. -. ..-. --- .-. -- .- . ... .- -.-. . ... ... . --- .-- .. -.- ..
Epoch 0 <=> Fundação: 1298244863 s ~ 2.408064*10^52 tP  (tempos de Planck)



--
Cláudio Miklós
@claudio_miklos





DQ

unread,
Feb 7, 2012, 5:39:43 AM2/7/12
to Garoa Hacker Clube
Legal, gostei do artigo e dos links nele!

Eu comprei os componentes para montar outros circuitos de controle,
mas ainda não tive tempo de mexer. Entre eles estão transistores
MOSFET para construir uma ponte H "na raça", em princípio um
transistor MOSFET é mais apropriado que um transistor bipolar para
esta função.

Sim, drenar é a palavra que me fugiu.

DQ



On Feb 6, 2:58 pm, Claudio Miklos <clau...@miklos.com.br> wrote:
> Olá DQ !
>
> Eu fiz algumas experiências com motor de passo unipolar e Transistor
> darlington TIP122:
>
> http://www.miklos.blog.br/2009/11/motor-de-passo-funcionando.html
>
> é uma forma simples e que possibilita bons níveis de corrente e dissipação
> de calor.
>
> Eu traduzo "sink" como "drenar"
>
> Abraços!
>
> Em 6 de fevereiro de 2012 12:54, DQ <d.quad...@yahoo.com> escreveu:
>
>
>
>
>
>
>
>
>
> > Na Noite do Arduino estamos montando uma CNC, usando motores de passo
> > bipolar. Para quem não conhece, os motores de passo bipolar possuem 4
> > fios, cada par controla uma bobina. Para fazer o motor girar, é
> > preciso inverter a tensão na bobina (ie, hora a corrente vai num
> > sentido e hora no outro). Um outro tipo de motor de passo é o
> > unipolar, com 5 ou 6 fios, onde as bobinas tem uma derivação central e
> > basta ativar uma ou outra metade, não é necessário inverter a tensão.
>
> > Estamos usando atualmente o driver L298 (basicamente porque eu tinha
> > um shield com ele). Futuramente vamos testar outras opções (como o
> > "EasyDriver Stepper Motor Driver" da Sparkfun). O L298 é um driver do
> > tipo "ponte H", um circuito projetado justamente para permitir
> > controlar a polaridade em um par de saídas.
>
> > Na semana passada alguém levantou a possibilidade de usar um ULN2803,
> > compartilho abaixo uma página interessante a respeito:
>
> >http://elabz.com/driving-a-bipolar-stepper-motor-with-arduino-and-uln...

Claudio Miklos

unread,
Feb 7, 2012, 6:23:38 AM2/7/12
to hacker...@googlegroups.com
Olá DQ !

Se desejar posso levar a placa de controle montada para suas experiências na quinta feira.

Confirme se vai "mexer" com isto na noite do arduino que eu apareço por lá.

abs!

DQ

unread,
Feb 7, 2012, 11:43:48 AM2/7/12
to Garoa Hacker Clube
Obrigado pela oferta da placa, mas acho que nesta 5a vamos trabalhar
com as placas que o Ulysses montou com o L298 e com os dois motores
bipolares que eu tenho. Se der, apareça para ver a nossa CNC nascendo.

DQ

On Feb 7, 8:23 am, Claudio Miklos <clau...@miklos.com.br> wrote:
> Olá DQ !
>
> Se desejar posso levar a placa de controle montada para suas experiências
> na quinta feira.
>
> Confirme se vai "mexer" com isto na noite do arduino que eu apareço por lá.
>
> abs!
>
> > > Cláudio Miklóswww.miklos.com.brwww.miklos.blog.br<http://xn--miklswww-y3a.miklos.com.brwww.miklos.blog.br>

ULYSSES SOLDA JUNIOR

unread,
Feb 9, 2012, 6:53:03 PM2/9/12
to hacker...@googlegroups.com
Boa noite DQ

Por favor como e o nome do arquivo do motor de passo

DQ

unread,
Feb 10, 2012, 5:49:49 AM2/10/12
to Garoa Hacker Clube
Ulysses,

O motor de passo é este aqui:

http://loja.labdegaragem.com.br/motor-de-passo-com-cabo.html
http://www.sparkfun.com/products/9238

A documentação está em

http://www.sparkfun.com/datasheets/Robotics/SM-42BYG011-25.pdf

DQ


On Feb 9, 8:53 pm, ULYSSES SOLDA JUNIOR <ulysses.so...@ig.com.br>
wrote:
> Boa noite DQ
>
> Por favor como e o nome do arquivo do motor de passo
>

ULYSSES SOLDA JUNIOR

unread,
Feb 10, 2012, 8:24:00 PM2/10/12
to hacker...@googlegroups.com
Boa noite DQ

Primeiro gostaria de saber se você esta bem? Melhoras !!!!!!

Na noite do Arduino tentamos ligar a nossa placa controladora com o
L298, porem não deu nada eu estava olhando o manuel do controlador e
esta falando que no SENSA e SENSB deve ser ligado dois resistores de
0,5 homes caso contrario curto - circuitar como ele e um controlador
de corrente não deveríamos ligar os dois?.

Por favor você pode verificar na sua placa este detalhe.

DQ

unread,
Feb 11, 2012, 7:44:01 AM2/11/12
to Garoa Hacker Clube
Ulysses,

Estou bem, quase 100% recuperado...

É verdade, na minha placa estes sinais estão curto-circuitados para
terra. Outra alternativa seria colocar resistores de 0,5 ohms 2W, a
tensão nos pinos SENA e SENSB poderia então ser usada para medir a
corrente de saída.

Coloquei a "imensa" documentação da minha placa (Tri Motor Shield.rar)
no mey SkyDrive:

https://skydrive.live.com/embed?cid=BB4E6DA92787B025&resid=BB4E6DA92787B025%21167&authkey=AI27SvpBV-2bT24

DQ

On Feb 10, 11:24 pm, ULYSSES SOLDA JUNIOR <ulysses.so...@ig.com.br>
wrote:
> Boa noite DQ
>
> Primeiro gostaria de saber se você esta bem? Melhoras !!!!!!
>
> Na noite do Arduino tentamos ligar a nossa placa controladora com o
> L298, porem não deu nada eu estava olhando o manuel do controlador e
> esta falando que no SENSA e SENSB deve ser ligado dois resistores de
> 0,5 homes caso contrario curto - circuitar como ele e um controlador
> de corrente não deveríamos ligar os dois?.
>
> Por favor você pode verificar na sua placa este detalhe.
>

ULYSSES SOLDA JUNIOR

unread,
Feb 11, 2012, 8:48:38 AM2/11/12
to hacker...@googlegroups.com
Obrigado DQ

Eu coloquei os pinos em curto, que emoção! o motor deu uma tremida.

Oda

unread,
Feb 11, 2012, 9:08:35 AM2/11/12
to hacker...@googlegroups.com
opa opa! esta viva!


--
Oda
------------------------------------------------------
If you don't have time to do it right, where
are you going to find the time to do it over?
------------------------------------------------------

2012/2/11 ULYSSES SOLDA JUNIOR <ulysse...@ig.com.br>:

Oda

unread,
Feb 11, 2012, 9:09:34 AM2/11/12
to hacker...@googlegroups.com
aproveitando, qual o diodo mesmo? vou deixar montado os outros dois L298 aqui.


--
Oda
------------------------------------------------------
If you don't have time to do it right, where
are you going to find the time to do it over?
------------------------------------------------------

2012/2/11 Oda <o...@member.fsf.org>:

DQ

unread,
Feb 11, 2012, 12:08:17 PM2/11/12
to Garoa Hacker Clube
Tem várias opções, o importante é ser um diodo de pelo menos 1A e
rápido.

Na minha placa o diodo é o 1N4934. Eu comprei na Futurlec (e ainda não
chegou) o 1N5818 que estava bem mais barato.

DQ


On Feb 11, 12:09 pm, Oda <o...@member.fsf.org> wrote:
> aproveitando, qual o diodo mesmo? vou deixar montado os outros dois L298 aqui.
>
> --
> Oda
> ------------------------------------------------------
> If you don't have time to do it right, where
> are you going to find the time to do it over?
> ------------------------------------------------------
>
> 2012/2/11 Oda <o...@member.fsf.org>:
>
>
>
>
>
>
>
> > opa opa! esta viva!
>
> > --
> > Oda
> > ------------------------------------------------------
> > If you don't have time to do it right, where
> > are you going to find the time to do it over?
> > ------------------------------------------------------
>
> > 2012/2/11 ULYSSES SOLDA JUNIOR <ulysses.so...@ig.com.br>:
> >> Obrigado DQ
>
> >> Eu coloquei os pinos em curto, que emoção! o motor deu uma tremida.
>
> >> Em 11 de fevereiro de 2012 10:44, DQ <d.quad...@yahoo.com> escreveu:
> >>> Ulysses,
>
> >>> Estou bem, quase 100% recuperado...
>
> >>> É verdade, na minha placa estes sinais estão curto-circuitados para
> >>> terra. Outra alternativa seria colocar resistores de 0,5 ohms 2W, a
> >>> tensão nos pinos SENA e SENSB poderia então ser usada para medir a
> >>> corrente de saída.
>
> >>> Coloquei a "imensa" documentação da minha placa (Tri Motor Shield.rar)
> >>> no mey SkyDrive:
>
> >>>https://skydrive.live.com/embed?cid=BB4E6DA92787B025&resid=BB4E6DA927...
> >>>> > Maiores opções sobre o Google Groups,...
>
> read more »

ULYSSES SOLDA JUNIOR

unread,
Feb 11, 2012, 3:49:12 PM2/11/12
to hacker...@googlegroups.com
Boa noite DQ

Estes diodos são equivalentes ao 1N4934 e de 100V por 1A 200ns

1N4888 SI-D 12V <0.5ns
1N4933(GP) SI-D 50V 1A <200ns
1N4934(GP) SI-D 100V 1A <200ns
1N4935(GP) SI-D 200V 1A <200ns
1N4936(GP) SI-D 400V 1A <200ns
1N4937(GP) SI-D 600V 1A <200ns
1N4942(GP) SI-D 200V 1A <150ns
1N4943(GP) SI-D 300V 1A <150ns
1N4944(GP) SI-D 400V 1A <150ns
1N4945(GP) SI-D 500V 1A <150ns
1N4946(GP) SI-D 600V 1A <250ns
1N4947(GP) SI-D 800V 1A <250ns
1N4948(GP) SI-D 1000V 1A <500ns
1N4949 SI-D 35V
1N4950 SI-D 30V <4ns
1N4997(R) SI-D 50V 3A

ULYSSES SOLDA JUNIOR

unread,
Feb 12, 2012, 2:01:41 PM2/12/12
to hacker...@googlegroups.com
Boa noite DQ

Acabei não respondendo a sua pergunta desculpe, os diodos utilizados
nas nossas placas 1N4937 de 600V - 1A - 200ns.

Em 11 de fevereiro de 2012 17:49, ULYSSES SOLDA JUNIOR
<ulysse...@ig.com.br> escreveu:

Reply all
Reply to author
Forward
0 new messages