Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCCIN
En este proyecto se implemento un sistema de
control de posicin a partir de un moto-reductor,
sensores infrarrojos y el kit de desarrollo FPGA
controlado por el programa de sntesis Xilinx.
OBJETIVOS
*Disear y describir sistemas digitales
combinacionales mediante VHDL.
*Aplicar el mtodo jerrquico para diseo de
sistemas digitales en VHDL.
*Controlar dispositivos de potencia con seales
digitales.
*Construir y acondicionar sensores de proximidad.
MATERIALES
EQUIPOS Y SOFTWARE
*Kit FPGA Basis 2
*Xilinx WebPack
*Digilent Adept
MATERIALES
*Protoboard.
*Sensores de Herradura.
*Motor DC.
*Puente H (L298N).
*Buffers Open Collector (74LS07).
*Amplificadores operacionales (LM339 o LM393).
*Resistencias.
*Trimmers.
*Pinzas.
*Cable.
PROCEDIMIENTO
PROBLEMA:
Disear e implementar en el kit de desarrollo un
sistema de control digital que permita el
posicionamiento del eje de un motor DC:
El sistema debe poder posicionar en siete
diferentes puntos alrededor de 180 grados.
El sistema se debe implementar con un mximo de
4 sensores de proximidad. El sistema debe contar
con una entrada con la cual se pueda seleccionar la
posicin deseada (Dip-switch).
El sistema debe ser totalmente automtico, debe
posicionar el eje del motor conforme a la entrada de
posicin.
Los datos de la posicin actual, la posicin
deseada y las acciones instantneas ejercidas sobre
el motor deben ser visualizadas en el display 7Segmentos del kit de desarrollo.
Es necesario implementar todo el servomotor e
integrarlo con los dispositivos necesarios y con el
kit de desarrollo.
SOLUCION:
Para poder solucionar el problema del
posicionamiento del motor se tuvo que tener
encuentra los materiales necesarios para controlar el
motor y que posteriormente se haran las
conexiones necesarias para unir los sensores en
herradura con el circuito. Para efectuar todo esto es
necesario utilizar unos controladores de voltaje para
evitar que daemos la FPGA por medio de un
74ls07 que reciba y enva seales al kid de
desarrollo.
Imagen. 1
En la imagen 1 se muestra el plano el cual fue
necesario para conectar los sensores a la FPGA
teniendo cuidado de obtener una buena seal de
salida soportable para el kid de desarrollo.
entity Servo1 is
Port ( X : in STD_LOGIC_VECTOR (6 downto 0);--Sensores
Y : in STD_LOGIC_VECTOR (3 downto 0);--Switch
Z : in STD_LOGIC;--CLK
W : out STD_LOGIC_VECTOR (3 downto 0);--Siete Seg
D : out STD_LOGIC_VECTOR (7 downto 0);--Siete Seg
R : out STD_LOGIC_VECTOR (1 downto 0));--Motor
end Servo1;
architecture Behavioral of Servo1 is
component ComparB is
Port ( A : in STD_LOGIC_VECTOR (3 downto 0);
B : in STD_LOGIC_VECTOR (3 downto 0);
GI : in STD_LOGIC;
LI : in STD_LOGIC;
EI : in STD_LOGIC;
SAL : out STD_LOGIC_VECTOR (1
downto 0));
end component;
Imagen. 2
En esta imagen se muestra el esquema general del
proyecto con la explicacin de cmo conectar el
puente h y como sera la entrada y salida de datos.
component DecoA is
Port ( A : in STD_LOGIC_VECTOR (6 downto 0);
B : out STD_LOGIC_VECTOR (3 downto 0));
end component;
component DecoB is
Port ( A : in STD_LOGIC_VECTOR (3 downto 0);
B : out STD_LOGIC_VECTOR (3 downto 0));
end component;
component DecoAA is
Port ( A : in STD_LOGIC_VECTOR (1 downto 0);
B : out STD_LOGIC_VECTOR (3 downto 0));
end component;
Imagen. 3
component MuxtepA is
Port ( CH1 : in STD_LOGIC_VECTOR (3 downto 0);
CH2 : in STD_LOGIC_VECTOR (3 downto 0);
CH3 : in STD_LOGIC_VECTOR (3 downto 0);
CH4 : in STD_LOGIC_VECTOR (3
downto 0);
SELECT1 : in STD_LOGIC_VECTOR (1 downto 0);
O1 : out STD_LOGIC_VECTOR (3 downto 0));
end component;
component Conta2 is
Port ( CLK_50MHz : in STD_LOGIC;
L : out STD_LOGIC_VECTOR (1 downto 0));
end component;
component Code1 is
Port ( A2 : in STD_LOGIC_VECTOR (1 downto 0);
B2 : out STD_LOGIC_VECTOR (3 downto 0));
end component;
component Code2 is
Port ( entrada : in STD_LOGIC_VECTOR (3 downto 0);
salida : out STD_LOGIC_VECTOR (7 downto 0));
end component;
signal s_0,s_1,s_2,s_3,s_4,s_5,s_6,s_7,s_8 : std_logic;
signal v,l,k,ll,lk,km: std_logic;
signal t_0,t_1,t_2,t_3 : std_logic;
signal w_0,w_1,w_2,w_3 : std_logic;
signal w_4,w_5,w_6,w_7,s_9,s_10,s_11 : std_logic_vector (1
downto 0);
signal w_11,s_00,s_000,s_13: std_logic_vector (3 downto 0);
begin
v <= '0';
l <= '0';
k <= '0';
ll <= '0';
lk <= '0';
km <= '0';
Imagen.4
En esta imagen mostramos las conexiones que
fueron utilizadas para que el programa funcionara
sin ningn problema.
CONCLUSIONES
Deco11 : DecoA port map (A => X, B =>s_00); --B(0) =>t_0,
B(1) =>t_1, B(2) =>t_2, B(3) =>t_3);
Deco12 : DecoB port map (A => Y, B => s_000); --(0) =>w_0,
B(1) =>w_1, B(2) =>w_2, B(3) =>w_3);
Deco13 : DecoAA port map (A => s_9, B =>w_11); --C => s_10,
D =>s_11,