JAMER ZARATE VERGARA CARLOS ALBERTO MOSQUERA REY CARLOS ALBERTO GARZON NOVOA HAI ORLANDO GONZALES
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD) ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERAS OCTUBRE 2013 INTRODUCION
El presente trabajo colaborativo es un aporte donde aplicamos la primera unidad del curso de Sistemas Secuenciales, aprovechando los conocimientos adquiridos en l. Es importante este trabajo porque aprendemos a desarrollar actividades en grupo, comunicndonos y apoyndonos en los conocimientos que a lo largo del semestre venimos aprendiendo, por lo que estamos presentando un diseo de robot muy sencillo en donde utilizamos la circuitera combinacional y los circuitos secuenciales para el diseo de la estructura, la cual ha sido realizada con los conocimientos vistos e investigaciones hechas en la red. Se trata de uno de los robots ms bsicos y sencillos de construir. El proyecto ha sido diseado segn las pautas estipuladas por la gua de trabajo, su diseo un pequeo Robot que sea autnomo y pueda cambiar su direccin al encontrar un obstculo y seguir su marcha utilizando censores o detectores de los obstculos manipulando para esto dos microswiches ubicados en la parte frontal los cuales deben enviar una seal de 0 o 1, con todos estos datos de entrada debemos hacer el diseo del robot, el tiempo de reversa del carro debe ser de 2 segundos para lo cual debemos utiliza un circuito reloj o 555 para calcular el tiempo. Entre las especificaciones dadas en el trabajo debemos tener en cuenta principalmente un diagrama de bloque y un diagrama de flujo con el que se tendr una idea clara de los pasos a seguir.
OBJETIVO GENERAL
La implementacin de la solucin a una problemtica, mediante el diseo de un vehculo, aplicando conocimientos de los sistemas digitales secuenciales.
OBJETIVOS ESPECIFICOS
Diseo de una solucin a una problemtica aplicando los conocimientos adquiridos mediante el estudio de los sistemas digitales secuenciales.}
Fortalecimiento en el grupo de trabajo colaborativo con el fin de hacer ms didctico el aprendizaje.
Sistematizar y conceptualizar sobre las diferentes reas y temas que abarcan los sistemas digitales secuenciales y combinacionales.
Aplicar el diseo de la solucin a un vehculo con las caractersticas como lo indica la simulacin.
PROBLEMA A RESOLVER
Debemos disear y simular un pequeo carro que al detectar obstculos en su trayectoria sea capaz de cambiar su rumbo de manera autnoma; el vehculo consta de dos motores DC que pueden funcionar entre 5 y 12 v dc.
Como sabemos para cambiar el sentido de giro de un motor DC lo que se debe hacer es invertir su polaridad de alimentacin, para hacer esto investigamos tres mtodos posibles, entre ellos hemos utilizado el puente H.
En el mercado podemos encontrar integrados que nos cumplen esta funcin y entre ellos el puente H, tambin est en modo CI, algunas referencias de chips son el DS1773 (hasta 46V y 4A), L293D (hasta 36V y 1A), TLE5206 (hasta 40V y 5A).
En Proteus tenemos el L298 cuya configuracin la vemos a continuacin.
Conexionado para un motor con giro en ambos sentidos (lado izquierdo) y con motores con giro en sentido nico en dos salidas (lado derecho) El integrado L298 incluye cuatro circuitos para manejar cargas de potencia media, en capacidad de controlar corriente hasta 600 mA en cada circuito y una tensin entre 4,5 V a 36 V.
Los circuitos individuales se pueden usar de manera independiente para controlar Cargas de todo tipo y, en el caso de ser motores, manejar un nico sentido de giro. Pero adems, cualquiera de estos cuatro circuitos sirve para configurar la mitad de un puente H. El integrado permite formar, entonces, dos puentes H completos, con los que se puede realizar el manejo de dos motores. En este caso el manejo ser bidireccional, con frenado rpido y con posibilidad de implementar fcilmente el control de velocidad.
DIAGRAMA DE BLOQUES
Usamos un flip flops J K ya que era el indicado para la solucin del problema que nos fue puesto; adems nos damos cuenta que como los flip flops son una combinacin de compuertas lgicas, a diferencia de las caractersticas de las compuertas solas, si se unen de cierta manera, estas pueden almacenar datos que podemos manipular con reglas preestablecidas por el circuito mismo; siendo esta la parte fundamental de los sistemas digitales secuenciales y lo cual se ve reflejado en la elaboracin del circuito que se simulo en Proteus.
DESARROLLO DEL PROYECTO
El presente proyecto inicia con le eleccin del IC555 como seal de reloj.
En el dibujo podemos ver su conexin, para el clculo del tiempo del 555 como Monoestables tenemos que T= 1.1*R1*C1, reemplazando: T= 1.1*1K*1000f = 1.1 sg, el tiempo requerido por la gua es de 2 sg pero lo disminuimos para poder observar mejor el retroceso del carro, es de tener en cuenta que la velocidad de los motores DC es muy alta y esta velocidad se ajust a 200 rpm para disminuir la histresis.
LISTADO DE COMPONENTES
1 RESISTENCIA DE 67K 2 PULSADORES 2 TEMPORIZADORES LM555 2 CAPACITARORES DE 0.1 MICROFARADIOS V 2 POTENCIOMETROS DE 100 K 2 CAPACITORES DE 100 MICRO FARADIOS 20 V 1 FLIP-FLOP JK 74111 1 COMPUERTA 7408 (AND) 1 COMPUERTAS 4071(OR) 1 COMPUERTA 4039 (NOT) 1 PUENTE H (L298) 2 MOTORES DC
CDIGO VHDL
library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; use IEEE.NUMERIC_STD.ALL;
entity compl is Port ( s_fcc, s_fcd, s_fci, reset, ss, c, i, d : in STD_LOGIC; clk: inout STD_LOGIC; e1, e2, e3, e4 : out STD_LOGIC); end compl;
architecture Behavioral of compl is
constant N : integer := 28; -- tamao de bits para bajar de frecuencia signal a: std_logic; signal q_reg, q_reg1, q_reg2, q_next, q_next1, q_next2 : unsigned (N-1 downto 0); signal sel : std_logic_vector (1 downto 0);
begin
process (s_fcc, s_fcd, s_fci,c,d,i,clk,ss,reset)
begin
if (reset = '0') then ---- GIRA ADELANTE
e1<= '0'; e2<= '1'; e3<= '0'; e4<= '1';
if (ss= '1') then if (s_fcc = '1' ) then a<= '1'; if(clk'event and clk = '1' ) then q_reg <= q_next; end if; q_next <= q_reg + 1; sel <= std_logic_vector(q_reg(N-1 downto N-2)); case sel is when "00"=> ---- retrocede e1<= '1'; e2<= '0';
e3<= '1'; e4<= '0';
when "01" => --- gira derecha e1<= '0'; e2<= '1';
e3<= '1'; e4<= '0';
when others => ---- GIRA ADELANTE e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1';
end case;
end if;
if (s_fcd = '1') then a<= '1'; if(clk'event and clk = '1' ) then
q_reg1 <= q_next1;
end if;
q_next1 <= q_reg1 + 1;
sel <= std_logic_vector(q_reg1(N-1 downto N-2)); case sel is when "00"=> ---- retrocede e1<= '1'; e2<= '0';
e3<= '1'; e4<= '0';
when "01" => --- gira izquierda e1<= '0'; e2<= '1';
e3<= '1'; e4<= '0';
when "10" => ---- GIRA ADELANTE e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1';
q_next1 <= q_reg1;
when others =>
e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1'; sel <="00"; a <='0';
end case; end if;
if (s_fci = '1') then a<= '1'; if(clk'event and clk = '1' and a = '1') then q_reg2 <= q_next2;
end if;
q_next2 <= q_reg2 + 1;
sel <= std_logic_vector(q_reg2(N-1 downto N-2)); case sel is when "00"=> ---- retrocede e1<= '1'; e2<= '0';
e3<= '1'; e4<= '0';
when "01" => --- gira izquierda e1<= '1'; e2<= '0';
e3<= '0'; e4<= '1';
when "10" => ---- GIRA ADELANTE e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1';
q_next2 <= q_reg2;
when others =>
e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1'; sel <="00"; a <='0';
end case; end if;
else if (c = '1' and d = '0' and i= '0') then
---- Seguir ADELANTE e1<= '0'; e2<= '1';
e3<= '0'; e4<= '1';
end if;
if (c = '1' and d = '1' and i= '0') then
--- GIRAR DERECHA e1<= '1'; e2<= '0';
e3<= '0'; e4<= '1';
end if;
if (c = '0' and d = '1' and i= '0') then --- GIRAR DERECHA
e1<= '1'; e2<= '0';
e3<= '0'; e4<= '1';
end if;
if (c = '0' and d = '0' and i= '1') then --- gira izquierda e1<= '0'; e2<= '1';
e3<= '1'; e4<= '0';
end if;
if (c = '1' and d = '0' and i= '1') then --- gira izquierda e1<= '0'; e2<= '1';
e3<= '1'; e4<= '0'; end if; end if;
elsif (reset = '1') then e1<= '1'; e2<= '1';
e3<= '1'; e4<= '1'; end if;
end process; end Behavioral;
Definir las variables lgicas de entrada y de salida del sistema.
Se indican las entradas D1 y D0 como bits, la direccin como un vector de 2 bits, y la salida S como un bit.
Realizar una tabla de verdad que muestre la relacin entre las variables de entrada y de salida del sistema.
Las variables de entrada son 2 que son la correspondiente a los 2 microswiches las posibles funciones de la variable son en total 4. Este nmero de posibilidades podemos calcularlo como 2.
Durante el desarrollo del presente proyecto hemos puesto en prctica lo aprendido en el mdulo y lo consultado en internet, hemos abarcado el funcionamiento de los diferentes tipos de flip flops y su respectiva utilizacin. La electrnica y muy puntualmente los sistemas digitales nos ofrecen la solucin de problemas de diferentes formas, lo complejo o fcil de la solucin generalmente se basa en la capacidad que tengamos y nuestros conocimientos adquiridos. Para la inversin del sentido de giro de los motores podemos encontrar varias opciones entre ellas esta hacerlo a travs de relevos, de transistores armando un puente H y la elegida que fue el integrado L293D que sirve para controlar dos motores, bsicamente son dos puente H en un solo chip. Tambin fue muy importante la utilizacin de un software como Proteus del cual hemos aprendido mucho, este proyecto puso en prctica el auto aprendizaje como grupo colaborativo lo cual es muy importante en nuestro proceso de formacin.
Inteligencia artificial: Lo que usted necesita saber sobre el aprendizaje automático, robótica, aprendizaje profundo, Internet de las cosas, redes neuronales, y nuestro futuro
44 Apps Inteligentes para Ejercitar su Cerebro: Apps Gratuitas, Juegos, y Herramientas para iPhone, iPad, Google Play, Kindle Fire, Navegadores de Internet, Windows Phone, & Apple Watch