Você está na página 1de 6

Usando a Porta Paralela do seu PC para acionar um motor de Passo

Introduo
Um dos motivos que me fizeram escrever esse artigo que com esse site eu sempre pretendi popularizar os conhecimentos sobre eletrnica e robtica pois muitos acham isso uma coisa do outro mundo e na verdade no !sse artigo tem o ob"etivo de esclarecer como podemos fazer com que um PC possa funcionar como um microcontrolador# pois se analisar friamente oque um microcontrolar veremos que ele no passa de um circuito processado que possui memria e tem dispositivos de !ntrada$%aida de dados# parece que estamos descrevendo um PC# no verdade&

Cuidados a serem tomados


Como o t'tulo desse artigo diz # iremos usar a porta paralela para fazer um pequeno e(perimento# ento peo encarecidamente para o leitor seguir a risca esses conselhos pois a porta paralela algo muito delicado# e qualquer ligao que por ventura voc) faa errado# seu PC literalmente pode queimar# e o dano ser* maior se sua placa for com dispositivos +, -+./0 1odos os artigos sobre Porta Paralela que so encontrados na internet# recomendam que se deve interfacear a porta paralela com um outro circuito# usando2se acopladores pticos# mas nesse caso o nosso circuito to simples que estarei dispensando esse componente que tornaria o nosso circuito bem mais complicado# e at o fim das minhas frias irei escrever sobre os acoplamentos pticos

3ista de Componentes

4 Conector 0- 56 7acho 8custa 4 /eal9 4 Circuito Integrado U3, 5::; 8Custa 4 /eal9 4 7otor de Passo de no m*(imo 6:: m. por fase 8consumo9 8 4: /eais9 4 0iodo 4,<::4

7apa da Porta Paralela

Identificando os fios do motor


Um dos passos mais trabalhosos nesse pro"eto identificar os fios do motor =ou tomar por base um motor de > fios onde 5 so para ser ligados em ?=CC Usando um mult'metro deve2 se medir as resist)ncias entre todos os fios 3ogo voc) ir* notar que vai haver ; tipos de resist)ncia@ / # 5/ e infinito# imagine que a resist)ncia entre o fios 4 e 5 de 5/ e entre os fios 4 e ; deu / e entre os fios 5 e ; tambm deu / Com isso podemos dizer que o fio ; o fio de alimentao ?# e os fios 4 e ; fazem parte da mesma bobina . mesma coisa deve ocorrer com os ; fios restantes# sendo que se voc) medir as resist)ncias entre qualquer um dos fios 4#5#; e <#6#># elas vo dar infinito# pois eles no esto ligados entre si %upondo que o fio ; e o fio > se"am nos nossos fios de alimentao# teremos que liga2los na alimentao de 45=8 no

caso do motor que eu estou usando# no caso de voc)s chequem o valor que o motor necessita ser alimentado# e o alimentem com essa tenso9

.chando a ordem correta de acionamento das -obinas


=erificar a ordem das bobinas um passo e(tremamente importante# pois se isso no for verificado# provavelmente o seu motor no ir* funcionar do "eito que voc) quer Para verificar a ordem das bobinas# basta alimentar os fios de alimentao com a tenso requerida# e com o terra da fonte# v* encostando nos outros < cabos que sobraram# um de cada vez# voc) ir* perceber que o motor comear* a girar# a cada vez que voc) encostar o terra em um cabo diferente# uma hora ele vai girar girar em um sentido# outras em outro sentido =* trocando a ordem dos cabos que voc) liga no terra# at que o seu motor gire < vezes consecutivas no mesmo sentido .note a ordem dos cabos que voc) ligou no terra para dar essa seqA)ncia de < giradinhas no mesmo sentido# e com isso voc) tem a ordem das bobinas .gora basta voc) ligar os fios na ordem na sa'da do U3, 5::

!squema do Circuito

Um pouco de .lgebra -ooleana

A porta paralela possui B -its que podemos mudar o nivel lgico de : para 4 ou vice2 versa# no entanto as funCes que acessam a porta paralela podem usar valores tanto em bin*rios# he(adecimais ou inteiros# ento irei e(plicar como transformar um em outro -ase -in*ria@ 1emos B bits que podemos manipular# ento claramente temos 44444444 para todas as sa'das igual a 6=# ou :::::::4 para apenas uma sa'da igual a 6= e o restante igual := -ase 0ecimal@ Pensando primeiro em -in*rio para depois transformando em inteiro# ento por e(emplo temos# 8:::4:4449- D 5: ? 54 ? 55 ? 5< D 5; na base decimal -ase Ee(adecimal Pensando em -in*rio primeiro pois o mais intuitivo e passando para he(adecimal# temos@ 8:::4:4449-D 4F na base Ee(adecimal !sse caso no to bvio como o caso acima# ento para transformar em Ee(adecimal# temos que separar o numero em bin*rio em agrupamentos de < nGmeros# no caso acima temos# :::4 e :444 # depois calcularemos o valor desses dois nGmeros em decimal# assim encontramos o valor 4 para o primeiro bin*rio e F para o segundo# com isso achamos o nGmero 4F# que o valor em Ee(adecimal +bs@ ,ote que 4: em decimal igual a . em Ee(adecimal # e assim por diante

=isual -asic ( HindoIs

Para quem tem o HI,J6$JB @ 42 pegue esse arquivo@ http@$$III mrshp hpg ig com br$rob$inpout;5 zip 52descompacte em algum lugar# e copie o arquivo inpout;5 dll pra

KIindirKLsMstem;5 ou KIindirKLsMstem dependendo do seu sistema ;2 ve"a o programa e(emplo que vem com esse arquivo para aprender <2 Nualquer duvida# me contatemOO Para quem tem HI,PP$5::: 42 pegue esse arquivo@ http@$$III matt"ustice com$parport$userport zip 52Copiar UserPort sMs para KIindirKLsMstem;5Ldrivers ;2/odar o UserPort e(e para setar configuracao da sua porta paralela <2 seguir os passos do tutorial acima de quem tem o HI,J6$JB +bs@ Q necessario rodar sempre esse programa Userport# pois com o Hin(p$5::: no possivel interfacear a porta paralela diretamente# li isso em varios artigos na internet# e testei aqui# e realmente da certo

+bservaCes
. 3P14 se encontra no endereo E;FB e funciona como descrito no artigo acima . 3P15 se encontra no endereo E5FB e todas as porta 0: 2 0F so negadas# isto # a tenso de 6= dado quando o n'vel lgico Rero

Sinalizando
. lgica de programao para fazer o motor funcionar a de energizar uma bobina de cada vez na ordem correta# assim o ei(o do motor ir* se alinhar com o campo induzido por essa bobina# assim no e(emplo que eu vou citar # temos um ob"eto 1imer cu"a funo foi programada desse modo 8onde conta D integer9@

If conta D4 1hen +ut TE;FB# 4 !nd If If conta D 5 1hen +ut TE;FB# 5 !nd If If conta D ; 1hen +ut TE;FB# <

!nd If If conta D < 1hen +ut TE;FB# B !nd If conta D conta ?4 If conta D 6 1hen conta D 4 !nd %ub

,o caso de C$C?? s acessar o endereo correto pra interfacear a porta paralela

Você também pode gostar