Você está na página 1de 20

Controlador de Motores de Passo L297

O L297 integra todos os circuitos de controlo necessários para controlar um motor de


passo unipolar ou bipolar.
Usando com um controlador dual brige como o L298N forma um microprocessador
completo para motores bipolares.
Os motores unipolares poderão ser controlados com um L297 mais um quad darilington
array. Este documento descreve a operação do circuito e mostra como é utilizado.

O controlador de motor de passo L297 está projectado principalmente para trabalhar com um
bridge driver como o L298N ou L297E em aplicações para motores de passo.

Ele recebe os sinais de controlo de um sistema controlador, normalmente um


microprocessador, e providencia todos os sinais necessários. Adicionalmente, inclui dois
circuitos PWM choppers para regular a corrente nas bobinas do motor.

Com um actuador adequado, o L297 controla um motor de iman permanente (permanent


magnet) bipolar de duas fases, unipolar de de quadro fases e de quatro fases com relutância
magnética variável. Mais, ele consegue controlar com vários tipos de passo: normal, wave
driver e half step (meio passo) (Isto será tudo explicado na secção “Motores de Passo: Básico”)

Há duas versões do dispositivo disponíveis: a versão regular do L297 e a versão especial


chamada L297A. O L297A tem um duplicador de pulsos e é desenhado especificamente para o
posicionamento das cabeças das drives de disco.

VANTAGENS:
O l297 combinado com uma drive tem inúmeras vantagens: baixo custo dos componentes
necessários, simplicidade do software e a dificuldade do microprocessador é reduzida. Para
além disso, a escolha de dois dispositivos confere uma enorme flexibilidade – o L298N pode
ser usado para motores DC (corrente continua) e o L297 pode ser usado para qualquer tipo
energético, incluindo dispositivos de “discrete power” (suportando 20mA para o motor)

Figure 1 : Nesta configuração tipica o controlador de motor de passo L297 e a dual bridge
L298 combinam-se para formar um microprocessador completo para motores bipolares.
Para motores bipolares de corrente superior a 2A (V/R=A) O L297 tem de ser utilizado com um
L298N; Para motores com correntes superiores a 1A é recomendado o uso de uma L293E (o
L293E também pode ser útil se o chopper não for necessário). Para correntes mais elevadas
pode-se utlizar transístores energéticos (power transístores) ou de darlingtons e para motores
unipolares é recomendado o uso de darlington array como o ULN2075B. O diagramada de
blocos, figura 1, mostra um sistema típico.

As aplicações para o L297 podem ser encontradas quase em todo o lado. Impressoras
(posicionador do cartucho, posição do daisy, puchador de papel, etc) maquinas de escrever,
máquinas controladas numericamente, máquinas de costura, caixas registadoras,
fotocopiadoras, fax, equipamento fotográfico, scanners, etc.

O L297 é feito com a tecnologias comparador analógico/digital SGS I2L (como Zodiac) e
montado num DIP de 20 pinos. A fonte usada é de 5V e todos os sinais TTL/CMOS são
compatíveis ou transístores com colector aberto. A alta densidade é um dos factores chaves do
L297, é bastante compacto.

O L298N e L293E

Tendo em conta que o L297 é usado normalmente com um L298N ou uma ponte L293E, um
curto resumo destes dispositivos facilita a compreensão deste documento.

O L298N e o L293E contem duas bridges (bridges driver stages) cada uma controlada por duas
entradas lógicas TTL e duas entradas de enable (ligar desligar) TTL. Adicionalmente, o emissor
dos transitores baixos (lower transístores) liga ao terminais externos para permitir a ligação de
duas resistências para sensor de corrente. (fig. 2)

Para o L298N a inovadora tecnologia SGS permite o uso de elevadas tensões/corentes,


permitindo potências com cerca de 160W (46V de fonte e 2A por bridge). O circuito lógico
separado de 5V é desenhado para reduzir a dissipação de calor e para permitir a ligação
directa com o L297 ou outro dispositivo lógico.

Neste documento os pins do L298N estão rotolados com o nome correspondete aos pins do
L297 para evitar confusões.

O L298N é disponibilizado num pacote plástico 15-lead Multiwatt. O L293E é o irmão mais
pequeno, é disponibilizado num pacote Powerdip.

Figura 2: O L298 contem duas bridges (quatro push pull stages) cada uma controlada com
duas entradas lógicas e dois interrupotores de entrada. As ligações externadas são suportadas
pelos sensores de resistência. O L293E tem 4 ligações externas de emissores.
Motores de Passo: Básico
Há dois tipos básicos de motores de passo usados normalmente: o iman permante (permanent
magnet) e o de redundancia variavel (variable reluctance). Os motores de íman permante são
divididos em 2 tipos, o unipolar e o bipolar.

MOTORES BIPOLARES
Simplificando para a essência, os motores bipolares de íman fixo consistem na rotação de um
magnet (íman) rodeado por bobinas. (figura 3). O controlador de corrente bidireccional é usado
e o motor dá um passo com a mudança da sequência das bobinas.

Figura 3: Muito simplificado, o motor de passo bipolar consiste na rotação de um íman cercado
por bobinas.
Para este tipo de motor há 3 tipos de controlo:
O primeiro é ligar as bobinas na sequência AB/CD/BA/DC (BA quer dizer ligar AB mas em
sentido inverso). Esta sequência é conhecida como “one phase on” full step (passo completo).
Apenas uma fase é ligada em cada momento. (fig. 4a)

A segunda possibilidade é ligar ambas as fases juntas, então o motor irá alinhar-se sempre
entre as duas posições. Isto é chamado “two-phase-on” full step, este modo normalmente é
utilizado para um motor bipolar de modo a obter o torque (força) máximo . (fig. 4b)

A terceira opção é ligar uma fase, depois duas, depois uma……. Então o motor irá avançar
meio passo de cada vez. Esta sequencia, conhecida como modo half-step (meio passo), divide
o passo a meio mas tem menos força (torque) (fig.4C)

Para rodar em sentido contrário (counter-clock-wise) é usado um dos 3 modos enunciados mas
com a ordem inversa.

No diagrama da fig.3 o motor teria um ângulo de 90º. Na realidade os motores tem múltiplos
pólos para reduzir o tamanho do passo para poucos graus mas o numero de bobinas e de
sequências mantêm-se. Um motor típico bipolar é mostrado na figura 5.

MOTORES UNIPOLARES
Um motor unipolar de íman permantente é indentico ao motor bipolar descrito anteriormente
exepto no facto que é utilizado uma bobina bifiliar para inverter o fluxo das bobinas, é necesário
um controlador bidireccional. (fig.6)

Este motor é controlado exactamente da mesma forma que o motor bipolar excepto que a
bridge é substituída por um “simple unipolar stages” – quatro darlingtons ou um quad darlington
array. Claro que um motor uniplar é mais caro porque tem o dobro das bobinas (o dobro do fio
entenda-se). Alem disso, o motor unipolar tem menos força do que um bipolar do mesmo
tamanho porque as bobinas são feitas com fio mais fino. Antigamente o motor unipolar era
mais atractivo para os designers porque simplificava o controlo. Agora com os monolithic push
pull drivers como o L298M os motores bipolares estão a tornar-se mais populares.

Todos os motores de íman permante têm um contador EMF gerado pelo rotor que limita o
numero de rotações. Quando são necessárias altas rotações são utilizados motores de
relutância variável.
Figura 4: Os 3 modos de sequência para controlar os motores bipolares. Rotação no sentido
dos relógios.

Figura 5: Motor real. Os multiplos polos são normalmente utilizados para reduzir o
tamnho do passo para valores práticos. Os princípios de operação e controlo
permanecem os mesmos.

Figura 6: O motor unipolar usa bobinas bifiliares para inverter o fluxo em cada fase
Motores de Relutância Variável

Os motores de relutância variável o ferro central não magnetizado têm menos pólos do
que o estator (parte fixa do motor). É utilizado um controlo unipolar e o motor de passo
move-se pela ligação de pares de pólos para alinhar o rotor com pólos com as bobinas
ligadas.

Mais uma vez podem ser utilizadas as três formas de sequência……….

Fig. 7: Um motor de relutância variável com rotor de ferro com menos pólos que o
estator. O passo deste motor é 15º

Gerando sequências de fases


A cabeça do diagrama de blocos do L297, figura 8, é um bloco chamado “translator”
(tradutor) cujo gera uma sequência de fases adequada ao meio passo, one-phase on
full step e two-phase-on full step. Este bloco é controlado por duas entradas de modo
– direcção (CW/CCW) e HALF/FULL – e pelo relógio de passo cujo faz o tradutor
avançar de um passo para o seguinte.

Do tradutor saiem quadro saídas que são processadas por um bloco de saída lógica
(output logic block) cujo implementa as funcionalidades de inibição e cortador
(chopper).

Internamente o tradutor consiste num contador de 3bit mais algumas combinações


lógicas que geram uma sequência de 8 passos cinzenta (Basic eight-step gray code
sequences) como mostra a figura 9. Todos os três tipos de sequência podem ser
gerados facilmente a partir deste sinal. Este estado de sequência corresponde ao half
step mode, selecionado pelo nível alto (1) na entrada HALF/FULL .
Figura 8: O l297 contem uma tradutor (gerador de fases), um chopper PWM duplo e
uma saída de controlo lógico

Figura 9: Os 8 passos mestres saídos do tradutor. Estes correspondem ao Half Step


Mode. É indicada a rotação no sentido do relógio (clockwise)

A forma da onda emitida para esta sequência é demonstrada na figura 10.


Note que os outros dois sinais, INH1 e INH2 são gerados nesta sequência. O
propósito destes sinais é explicado adiante.

Os full step modes são ambos obtidos saltado alteranadamente os estados da


sequência de 8 passos. O que acontece é que o relógio de passo salta o primeiro
estado do contador de 3bits do tradutor. O ultimo bit significante (ultimo digito) não é
afectado logo a sequencia gerada depende do estado do tradutor quando o modo full
step é seleccionado (sinal baixo (0) na entrada HALF/FULL )

Se o modo full step é seleccionado quando o tradutor está num numero impar nos
obtemos um two-phase-on full step (fig.11).

Por contraste, o modo one-phase-on full step é obtido selecionando full step mode
quando o tradutor está num número par.
Fig.10 A formada da onda emitida correspondente ao modo half step. A acção do
chopper não está representada.

Fig.11 : Estado da sequência e onda emitida no two phase on. INH1 e INH2
permanecem no nível elevado (1)
Fig. 12 Estado da sequência e a onda emitida pelo wave driver (one-phase-on)
INH1 e INH2
Nos modos half step e one-phase-on full step são gerados dois outros sinais: INH1 e
INH2. Estes são os 2 sinais inibidores que são ligados às entradas enable do L298 e
servem para diminuir a velocidade da corrente quando a bobina é desligada, isto é,
para parar o motor.

Desde que ambas as bobinas estejam ligadas continuamente no modo two-phase-on


full step mode, não há bobinas sempre desligadas e estes sinais não são gerados.

Para visualizar o que estes sinais fazem vamos olhar para o modo one half do L298N
ligado à primeira fase das duas fases do motor bipolar (figura 13). É importante
relembrar que as entradas A e B do L298 determinam o transístor em cada par push
pull que será ligado. Por outro lado, INH1 desliga os 4 transístores.

Figura 13: Quando a bobina é desligada os bits inibidores (inhibit ) são activados para
diminuirem a velocidade da corrente. Se não esta corrente irá re-circular pelo D2 e D4
neste exempo. A dissipação no Rs também é reduzida.

Assumindo que o A está no nível alto (1) e B=0 e que a corrente desloca-se pelo Q1,
Q4 e bobina do motor. Se A estivesse no nível baiixo a corrente poderia recircular pelo
D2,Q4 e Rs, dando uma perda de corrente lenta (slow decay) e aumentando a
dissipação do Rs. Se, por outro lado, A =0 e INH1 estiver activado, todos os quatro
transístores estão desligados. Neste caso a corrente recircula do ground para o Vs
através do D2 e D3, dando uma decadência de corrente mais rápida, permitindo o
funcionamento mais rápido do motor. Alem disso, desde que a recirculação da
corrente não atravesse o Rs, pode ser utilizada uma resistência mais barata.

A mesma coisa acontece exactamente na segunda bobina, a outra metade do L298 e


o sinal C,D e INH2.
Os sinais INH1 e INH2 são gerados pela função OR (ou):
A+B=INH1 C+d=INH2

Contudo, as saidas logicas podem ser mais complexos porque os inhbits também são
utilizados pelo chopper, como nós iremos ver depois.

Outros sinais:
Os dois outros sinais ligados ao tradutor são a entrada Reset e a saída HOME.
O Reset é uma entrada reset assíncrona cuja restaura o bloco translator para a
posição HOME (estado 1, ABCD=0101). A saída HOME (colector aberto) assinala esta
posição.

Finalmente, a entrada ENABLE é ligada à saída lógica. Um nível baixo desliga o INH1,
INH2, A,B,C e D. Esta entrada é útil para desactivar o mor quando o sistema está a
inicializar.

Regulação da corrente carregada


A forma do controlo da corrente é essencial para obter boas velocidades e forças.
Estão aqui algumas das formas que podem ser utilizadas – alternando a fonte entre
duas voltagens (switching the supply between two voltages), impulsos modelados pelo
chopping (pulse rate modulation chopping) ou impulsos sem a modelação do
chopping (pulse width modulation choping).

O L297 oferece um controlo de corrente carregada na forma de dois PWM choppers,


um para cada uma das duas fases do motor bipolar ou para cada par de bobinas de
um motor unipolar. (num motor unipolar as bobinas A e B nunca são ligadas ao
mesmo tempo por isso podem partilhar o chopper; o mesmo se aplica à C e D).

Cada chopper consiste num comparador, um flip flop e um sensor de resistência


externo. Um oscilador comum no chip fornece os impulsos ao rate do chopper para
ambos os choppers.
Em cada chopper (figura 14) o flip
flop é definido por cada impulso
vindo do oscilador, ligando a saída
e permitindo o aumento da
corrente carregada. Como isto
aumenta a voltagem que passa
pelo sensor resistência, quando a
voltagem atinge o Vref o flip flop é
reiniciado (reset), desactivando as
saídas até que chegue o próximo
impulso do oscilador. A saída
deste circuito (a saída flip flop Q)
é, por conseguinte, um sinal PWM
constante. Note que Vref
determina o pico da corrente
carregada.
Phase chopping and inhibit chopping
O chopper pode actuar nas linhas de fase (ABCD) ou nas linhas de inibição (inhibit
lines) INH1 E INH2. Uma entrada chamada CONTROL decidi-o.
O inhibit copper é o único utilizado para motores unipolares mas nos motores bipolares
podes escolher entre o phase chopping e o inhibit choping. As razões para a escolha
são clarificadas com outro exemplo:

Vamos primeiro examinar a situação em que as linhas de fase são interrompidas


(phase chopping).

Figura 15: Phase Chopping. Neste exemplo a corrente X é interrompida através da


activação do B, reciculando a corrente pela linha Y. A alteranativa é reactivar o A,
podendo reciculando pela linha Z, aumentando a dissipação no Rs.

Como antes, nós estamos a utilizar um motor de duas fases bipolar e A=1, B=0
(figura 15). A corrente passa pelo Q1, Bobinas e D3. A queda de corrente é lenta
porque a voltagem das bobinas é baixa (Vcestat Q1 + Vd3) (figura 16)
Figura 16.Forma da onda com o phase chopping. O exemplo demonstra a
bobina A e B ligadas com A positivo com respeito a B. CONTROLO=1

Porque que B passa a elevado (1), porque que A passa a baixo (0)? A razão é
que a corrente cai pelo Rs. Tendo em conta que a corrente recircula na parte superior
da bridge, a corrente vai para os sensores de resistência apenas quando as bobinas
são controladas. Menos energia é dissipado na resistência Rs e nós podemos mandar
fora a resistência do chopper.

Para explicar porque que o phase chopping não é compatível com os motores
unipolares: Quando a bobina A é activada, o chopper actua na B. Claro, isto não é
usado para todos os motores de relutância variável e será mais lento e ineficiente para
motores de magnet fixo bifiliares.
A alternativa é colocar a entrada CONTROL no ground (=0) e o chopper irá
actuar no INH1 e INH2. Olhando para o mesmo exemplo, A=1, B=0. Q1 e Q4 estão a
conduzir e a corrente passa pelo Q1, bobina, Q2 e Rs (figura 17)

Figura17: Inhibit chopper. A corrente de controlo (Q1, bobina, Q4) neste caso é
interrompida pela activação do INH1. A queda que passa pelo D2 e D3 é mais rápida
do que o percurso Y da figura 15

Neste caso quando a voltagem pelo Rs atinge o Vref o flip flop do choper
reinicia e o INH1 é activado (passa a 0). INH1, lembra-te, desliga os 4 transistores e
permite que a corrente recircule do ground, pelo D2, Bobina e D3 para o Vs.
Descarregando na fonte, consegue atingir os 46V com uma queda de corrente muito
rápida (figura 18)
Fig.18. Forma da onda do Inhibit chopper. As bobinas AB estão ligadas e o
CONTROL=0
A vantagem da utilização desta segunda forma de queda é muito óbvia:
Permite a operação rápida de motores bipolares e é a única escolha para os motores
unipolares. Então porque que há hipótese da forma mais lenta, o phase chopping?
A resposta é que nós temos poder para obrigar a usar o rate do chopper baixo
(low chopper rate) com um motor que não acumule muita energia nas bobinas. Se a
queda de corrente for rápida, a corrente no motor pode ser insuficiente para dar uma
força (torque) útil, ou seja, o motor fica sem força. O baixo rate do chopper pode-se,
por exemplo, impor se tivermos um motor maior no mesmo sistema. Para evitar os
ruídos, todos os motores devem estar sincronizados e o chopper rate é determinado
pelo motor maior.

É fácil sincronizar vários L297 usando o pin SYNC. Este pino é uma saída de
onda quadrada do oscilador interno e da entrada de clock do chopper. O primeiro L297
é equipado com os componentes do oscilador e a saí uma onda quadrada por este
pino (figura 19)
Figura 19: O oscilador do chopper de vários L297 é sincronizado pela ligação
de todos os SYNC.

Os restantes L297 não necessitam dos componentes do SYNC, usam


apenas o SYNC como entrada de relógio. Um sinal de relógio externo pode ser
injectado neste terminal se quisermos que o L297 esteja sincronizado com os
componentes de outro sistema.
Dicas de Aplicação
Os motores bipolares podem ser controlados com um L297, L298N ou L293E e
muito poucos componentes externos.

Figura21. Este é uma aplicação típica que mostra um L297 e um L298N a


controlar um motor de passo bipolar com correntes nas fases superiores a 2A.

Juntando estes dois chips formamos um circuito completo de controlo d


motores de passo. Com um L298N esta configuração controla motores com bobinas
com cerca de 2A. Para motores com 1A por bobina é utilizado o L293E. Se o PWM
chopper não for necessário, um L293 também pode ser utilizado (ele não tem uma
ligação externa para os sensores de resistência mas um L297 é subaproveitado. Se
são necessárias correntes mais elevadas, o controlador bridge é substituído por um
circuito equivalente feito com transistors. Para correntes superiores a 3.5A são
utilizados dois L298N com ligando as saídas paralelamente.

Para motores unipolares a melhor escolha é um “quad darlington array”. O


L702B pode ser usado se o chopper não for necessário mas é preferível ULN2075B é
preferível. Este quad darlington tem ligação para sensores de resistência (figura 22)
Figura 22: Para motores unipolares com um “quad darlington array” acupulado
ao L297. O inhibit chopping é utilizado por isso as 4 portas AND tem de ser utilizadas.

Como o chopper actua nas linhas inhibit, as quadro portas AND tem de ser
adicionadas a esta aplicação. Como é demonstrado no esquema são utilizados díodos
de protecção.
Em todas as aplicações onde os choppers não são utilizados é importante
lembrar que as entradas dos sensores tem de ser ligadas ao Ground e o Vref ligado ao
Vs ou a algum ponto com tensão entre o Vs e o Ground.
A frequência do oscilador do chopper é determinada pela rede RC no pino 16.
A frequência é aproximadamente de 1/0.7 RC e a resistência R tem se ser superior a
10K. Quando a duplicação do impulso do L297A é utilizado, o tempo de espera (delay)
é determinado pela rede Rd Cd e é aproximadamente 0.75 Rd Cd. Rd deve ter entre
3K e 100K (figura 23)
Figura 23. O duplicador de impulso cria um pulso fanstasma t0 segundos após
o pulso da entrada de relógio. Rd Cd estão fechadas para dar um atraso com
aproximadamente metade do período da entrada de relógio.
Funções dos Pinos do L297

Nº Nome Função
1 SYNC Saida do oscilador interno do Chopper. O SYNC de todos os L297
são ligados juntos para os sincronizar e apenas 1 dos L297 tem
rede de oscilador. Se algum sinal externo for utilizado, este
deverá ser ligado aqui.
2 GND Ligação Ground (negativo)
3 HOME Saida de colector aberto que indica quando é que o L297 está na
fase inicial (ABCD=0101). O transístor está aberto quando o sinal
é activado
4 A Fornecimento energético para a Fase A do motor
5 INH1 Activa o inhibit control paras as fases A e B. Quando é utilizado
uma ponte bipoplar este sinal pode ser usado para assegurar a
queda rápida da tensão acumulada quando a bobina é
descarregada. Pode também ser utilizado pelo chopper para
regular a corrente carregada se o CONTROL=0
6 B Fornecimento energético para a Fase B do motor
7 C Fornecimento energético para a Fase C do motor
8 INH2 Activa o inhibit control para as fases C e B. Mesmas funções do
INH1
9 D Fornecimento energético para a Fase D do motor
10 ENABLE Interruptor do chip. Quando baixo (inactivo) INH1, INH2, A,B,C e
D estão desligados
11 CONTROL É a entrada control que define a acção do chopper. Quando=0 o
chopper actua no INH1 e INH2. Quando =1 actua nas linhas de
fase ABCD
12 Vs Entrada de energia para 5V
13 SENS2 Entrada do sensor de voltagem carregada vinda das fases C e D
14 SENS1 Entrada do sensor de voltagem carregada vinda das fases A e B
15 Vref Voltagem de referencia para o circuito do chopper. A voltagem
aplicada neste pin determina o pico máximo de corrente
carregada
16 OSC Uma rede RC (R to Vcc, C para o GND) é ligada a este terminal
para getar o rate do chopper. Este terminal é ligado ao GND
quando há sincronização pelo SYNC (f = 1/0.69 RC)
17 CW/CCW Determina o sentido do motor. 1= Sentido do Relógio. 0=
Contrário do Sentido do Relógio. A direcção física do motor
depende da ligação das bobinas. Pode-se alterar a direcção a
qualquer momento
18 CLOCK Relógio do passo. Um pulso 0 nesta entrada faz o motor avançar
1 incremento. O passo ocorre durante a queda do sinal
19 HALF/FULL Selector de meio passo ou passo completo. Quando =1
selecionamos a operação em meio passo quando =0
seleccionamos o modo de passo completo.
One-phase-on full step mode é obtido selecionando FULL quando
o L297 está num numero par.
O two-phase-on full step é seleccionado quando activamos o
FULL e o tradutor está num numero impar
20 RESET Um impulso 0 faz o tradutor reiniciar e regressar à posição HOME
(ABCD=0101)