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
:
? 5
4
? 5
5
? 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@$$IIImrshphpgigcombr$rob$inpout;5zip
52descompacte em algum lugar# e copie o arquivo inpout;5dll 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@$$IIImatt"usticecom$parport$userportzip
52Copiar UserPortsMs para KIindirKLsMstem;5Ldrivers
;2/odar o UserPorte(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