You are on page 1of 11

Experimento 3:

Programao em VHDL associada a kit experimental

Disciplina: EN3723 Lgica Programvel.

Discentes:
Fernando Henrique Gomes Zucatelli
Fernando Soler

Turma: A/Diurno

Prof . Dr. Rodrigo Reina Muoz

Santo Andr, 11 de Novembro 2014.

2
1.

OBJETIVOS
Os objetivos deste experimento so simular no software Quartus II e verificar na placa

experimental alguns programas de forma a compreender como a configurao de hardware deve


ser feita no software.

2. PARTE EXPERIMENTAL
Foram projetados 4 modos de operao do motor de passo, conforme o algoritmo que se
encontra no anexo 6.1. A Figura 1 apresenta a configurao fsica das bobinas do motor de passo
estudados. A Figura 2 apresenta o diagrama de ligao deste motor em relao aos comandos
recebidos da placa eletrnica. A
Tabela 1 apresenta a configurao dos modos de funcionamento do motor.

Figura 1 Modelo do motor de passo bipolar.

Figura 2 Mapas de Karnaugh LEDs c,d.

Tabela 1 Modos de operao

2.1

Motor de passo com passo completo

A Tabela 2 apresenta os bits utilizados para energiar o motor de passo no modo de paso
completo, onde duas fases so energizadas por vez. Este proporciona bom torque e velocidade
com poucos problemas de ressonncia, sendo capaz de fornecer aproximadamente 30 a 40% de
mais torque do que a excitao nica mas requer o dobro da fonte.
Tabela 2 Ligao de passo completo

2.2

Motor de passo com wave-drive

Neste modo de operao o motor est apenas com uma nica fase energizada de cada vez.
Esse modo deve ser usado onde o torque e a velocidade no so importantes, e tambm h
problemas de ressonncia que podem impedir operao em baixa velocidade. Este modo requer
uma quantia de potncia menor do que os demais modos de excitao.
A Tabela 3 apresenta a sequncia de ligao das fases para operao neste modo.
Tabela 3 Ligao de passo em onda

2.3

Motor de passo com meio passo

a excitao nica e dual alternada que resulta em passos com a metade de um tamanho
de um passo norma, consequentemente esse modo dobra a resoluo. Este modo reduz a
ressonncia do motor, mas pode fazer este protelar em frequncias ressonantes particulares.
Pode operar motores em uma grande faixa de velocidade e com quase qualquer carga encontrada
comumente.
A Tabela 4 apresenta as 8 combinaes sequenciais necessrias para operar neste modo.

Tabela 4 Ligao de meio passo

2.4

Motor de passo acionado diretamente

Neste modo de operao, a bobinas esto diretamente associadas s chaves de comando,


sendo um modo mais apropriado para teste das fases do que para operao propriamente dita.
Devemos atentar que a ligao de todas as 4 fases, ou mesmo 3, ao mesmo tempo no
recomendada e deve ser evitado por software e por hardware.

3.

Resultados e discusso
Para o correto funcionamento dos circuitos simulados foi necessrio consulta o catlogo do

chip da placa experimental, o Cyclone IV E EP4CE115F29C7.


As imagens deste relatrio foram extradas do vdeo da simulao geral cujo link se
encontra nos anexos deste relatrio.

3.1

Motor de passo com passo completo


A Figura 3 exibe o resultado da simulao., observa-se a coerncia da forma de onda e dos

valores em cout crescentes para dir =1 e decrescentes para dir = 0, e a cada instante de tempo h
sempre duas sadas acionadas.
A Figura 4 apresenta um momento com a configurao de passo completo conforme
representam as duas chaves mais direita da fileira de chaves. Os LEDs esquerda representam
respectivamente as bobinas 1A, 2A, 1B, 2B das tabelas de configurao

Figura 3 Simulao em passo completo.

Figura 4 Operao em passo completo.

3.2

Motor de passo com passo em onda


A Figura 5 apresenta o resultado da simulao na qual se observa apenas uma sada

acionada a cada instante de tempo e a sequncia em cout mantida como {1,2,4,8} para dir = 1,
crescente e dir = 0 decrescente.
A Figura 6 por sua vez exibe o resultado na placa real.

Figura 5 Simulao em meio passo.

Figura 6 Operao em meio passo.

3.3

Motor de passo com meio passo


A Figura 7 apresenta o resultado da simulao para meia onda, na qual observamos a

existncia de oito diferente combinaes possveis nas sadas de cout pelos valores
{1,3,2,6,4,12,8,9} na ordem crescente e o reverso na sequncia descrente conforme o valor de dir.
A Figura 8 apresenta o trecho da onda em que duas sadas esto acionadas e a Figura 9 o
trecho em que apenas uma sada est acionada, repare na mesma posio das chaves extrema
direita da fileira de chaves.

Figura 7 Simulao em meia onda.

Figura 8 Operao em meia onda, trecho com 2 sadas acionadas.

Figura 9 Operao em meia onda, trecho com 1 sada acionada.

3.4

Motor de passo acionado diretamente


A Figura 10 apresenta o resultado da simulao para o acionamento direto, na qual se nota

a coerncia do resultado esperado em cout justamente por este ser sempre identicamente igual
ao cin, ressalta-se que a varivel de controle da direo (dir) e o comano de executar o passo
(step) no tem nenhuma influncia neste modo de operao.

7
A Figura 11 apresenta um pedao da operao na placa real na qual os comandos foram
inseridos diretamente atravs das chaves localizadas imediatamente esquerda das duas chvaes
de seleo do modo de operao.

Figura 10 Resultado na placa..

Figura 11 Operao direta.

4. CONCLUSO
Conclui-se que a programao de diversos modos de operao de um motor de passo
obtida na linguagem VHDL de modo simples, com o uso de comandos CASE para a seleo e da
combinao do comando PROCESS sobre a ocorrncia de um EVENT de clock associado
varivel step para controlar a operao e transio do motor somente nas bordas do step.
A aplicao na placa real permite visualizar atravs de LEDs os comandos que seriam
enviados ao driver de acionamento do motor de passo, necessrio para operar o motor com
tenso e correntes adequados ao uso do motor sem comprometer o circuito do controlador digital.

5. REFERNCIAS
QUEIROZ, Ricardo Alexandro de Andrade. Motores de passo. Disponvel em
:<http://www.ppgel.ufsj.edu.br/uaisoccer/downloads/1272062510.pdf >. Acesso em 08 de Nov.
2014.

8
DE2 115 Altera, Manual do Usurio. Disponvel em:
<ftp://ftp.altera.com/up/pub/Altera_Material/13.0/Boards/DE2-115/DE2_115_User_Manual.pdf>.
Acesso em 04 de Nov. 2014.

6. ANEXOS
O vdeo do funcionamento da placa simulando a operao de um motor de passo se
encontra no link:
https://dl.dropboxusercontent.com/u/82233214/L%C3%B3gica%20Program%C3%A1vel%20
-%20LAB%203%20-%20Motor%20de%20Passo/2014-11-11%2011.35.20.mp4

6.1

Programa dos modos de operao de um motor de passo

LIBRARY IEEE;
USE IEEE.STD_logic_1164.all;

ENTITY INTERFACE IS
PORT ( step, dir

:IN BIT;

:IN BIT_VECTOR(1 DOWNTO 0);

cin

:IN BIT_VECTOR(3 DOWNTO 0);

cout

:OUT BIT_VECTOR(3 DOWNTO 0) );

END INTERFACE;

ARCHITECTURE TESTE OF INTERFACE IS


BEGIN
PROCESS(step)
VARIABLE count

:INTEGER RANGE 0 TO 7;

BEGIN
--Estrutura do contador
IF(step'EVENT AND step = '1') THEN

9
IF dir = '1' THEN

count := count + 1;

--CONTAGEM

CRESCENTE
ELSE

count := count - 1;

DECRESCENTE
END IF;
END IF;

--Definio dos modos de operao


CASE m IS
WHEN "00" =>

--PASSO COMPLETO

CASE count IS
WHEN 0 =>

cout <= "1001";

WHEN 1 =>

cout <= "0011";

WHEN 2 =>

cout <= "0110";

WHEN 3 =>

cout <= "1100";

WHEN 4 =>

cout <= "1001";

WHEN 5 =>

cout <= "0011";

WHEN 6 =>

cout <= "0110";

WHEN 7 =>

cout <= "1100";

END CASE;

WHEN "01" =>

--WAVE DRIVE

CASE count IS
WHEN 0 =>

cout <= "0001";

WHEN 1 =>

cout <= "0010";

--CONTAGEM

10
WHEN 2 =>

cout <= "0100";

WHEN 3 =>

cout <= "1000";

WHEN 4 =>

cout <= "0001";

WHEN 5 =>

cout <= "0010";

WHEN 6 =>

cout <= "0100";

WHEN 7 =>

cout <= "1000";

END CASE;

WHEN "10" =>

--MEIO PASSO

CASE count IS
WHEN 0 =>

cout <= "0001";

WHEN 1 =>

cout <= "0011";

WHEN 2 =>

cout <= "0010";

WHEN 3 =>

cout <= "0110";

WHEN 4 =>

cout <= "0100";

WHEN 5 =>

cout <= "1100";

WHEN 6 =>

cout <= "1000";

WHEN 7 =>

cout <= "1001";

END CASE;

WHEN "11" =>


cout <= cin;
END CASE;
END PROCESS;
END TESTE;

--ACIONAMENTO DIRETO

11

You might also like