0% encontró este documento útil (0 votos)
73 vistas5 páginas

Control de Semáforos y VHDL en Seguridad

El primer documento describe un semáforo de dos calles controlado por dos semáforos que cambian de verde a amarillo a rojo en cuatro tiempos usando una tabla de verdad. El segundo documento presenta un código VHDL para encender un motor según la ecuación y=a.b+c.b+a.c. El tercer documento muestra un código VHDL para una caja de seguridad que sólo se abre cuando se presionan los botones a, c y d a la vez.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
73 vistas5 páginas

Control de Semáforos y VHDL en Seguridad

El primer documento describe un semáforo de dos calles controlado por dos semáforos que cambian de verde a amarillo a rojo en cuatro tiempos usando una tabla de verdad. El segundo documento presenta un código VHDL para encender un motor según la ecuación y=a.b+c.b+a.c. El tercer documento muestra un código VHDL para una caja de seguridad que sólo se abre cuando se presionan los botones a, c y d a la vez.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

1.

- El trfico en una interseccin de dos calles es controlada por dos semforos,


describa el comportamiento por medio de una tabla de verdad en el cual se realice
la secuencia en cada uno de ellos (verde amarillo (esttico) rojo) en 4 tiempos.
a

0
0
1
1

0
1
0
1

v
1
1
0
0
0

a
1
0
1
0
0

r
1
0
0
1
1

v
2
0
0
1
0

a
2
0
0
0
1

r
2
1
1
0
0

Solucin:
Donde V=verde, A= amarillo (esttico) y R=
rojo

Cdigo:
--Artemio Snchez Avendao
--Juan Benigno Avils Avils
--Jose Juan Martinez Rodriguez
library ieee;
use ieee.std_logic_1164.all;
entity semaforo is
port (a,b:in bit;
v1,a1,r1,v2,a2,r2: out bit);
end semaforo;
architecture pros of semaforo is
begin
v1<='1' when (a='0' and b='0') else '0';
r2<='1' when (a='0' and b='0')or (a='0' and b='1') else '0';
a1<='1' when (a='0' and b='1') else '0';
r1<='1' when (a='1' and b='0')or (a='1' and b='1') else '0';
v2<='1' when (a='1' and b='0') else '0';
a2<='1' when (a='1' and b='1') else '0';
end pros;

2.- Elabore el programa en VHDL que encienda un motor cuyo funcionamiento


est dado por la ecuacin y= a . b + c . b +a . c

Cdigo:
--Artemio Sanchez Avendao
--Juan Benigno Avilez Avilez
--Jose Juan Martinez Rodriguez
library ieee;
use ieee.std_logic_1164.all;
entity motor is
port (a,b,c: in std_logic;
y:out std_logic);
end motor;
architecture proble of motor is
begin
y<=((a and b)or(c and b) or (a and c));
end proble;

3.- Se tiene una caja de seguridad cuyo sistema de apertura consta de cuatro
botones (a, b, c y d). La caja de seguridad nicamente se abrir si se
presionan al mismo tiempo los tres botones a, c y d, con cualquier otra
combinacin la caja de seguridad no abrir. Proponga la tabla de verdad que
genere el comportamiento del enunciado anterior y elabore su programacin en
VHDL.

Solucin:

Cdigo:

a
0
0
0
0
0
0
0
0
1
1

b
0
0
0
0
1
1
1
1
0
0

c
0
0
1
1
0
0
1
1
0
0

d
0
1
0
1
0
1
0
1
0
1

s1
0
0
0
0
0
0
0
0
0
0

--Artemio Sanchez Avendao

s1: out std_logic);

end caja;

architecture codig of caja is

--Juan Benigno Avilez Avilez


--Jose Juan Martinez Rodriguez
library ieee;
use ieee.std_logic_1164.all;
entity caja is
port(a,b,c,d: in std_logic;

begin
s1<= '1' when (a= '1' and b='0' and c='1'
and d='1')
else '0';
end codig;

4.- Una fbrica cuenta con un robot cuya funcin es transportar un contenedor
desde el taller hasta almacn. El robot nicamente puede llevarse el contenedor si
este se encuentra lleno con cuatro cajas de herramientas, si falta alguna el robot
no puede realizar su funcin. Para saber si en el contenedor se encuentran todas
las cajas, se cuenta con cuatro sensores correspondientes a cada una de las
cajas; si el sensor detecta una caja, marca un 1 lgico, en caso contrario, marca
un '0 lgico. Proponga la tabla de verdad que genere el comportamiento del
enunciado anterior y elabore su programacin en VHDL.
Solucin:

Cdigo:

a
0
0
0
0
0
0
0
0
1
1

b
0
0
0
0
1
1
1
1
0
0

c
0
0
1
1
0
0
1
1
0
0

d
0
1
0
1
0
1
0
1
0
1

s1
0
0
0
0
0
0
0
0
0
0

1
1

0
0

1
1

0
1

0
0

1
1

1
1

0
0

0
1

0
0

1
1

1
1

1
1

0
1

0
1

--Artemio Sanchez Avendao


--Juan Benigno Avilez Avilez
--Jose Juan Martinez Rodriguez
library ieee;
use ieee.std_logic_1164.all;
entity robot is
port(a,b,c,d: in std_logic;
s2: out std_logic);
end robot;
architecture caja of robot is
begin
s2<='1' when (a='1' and b='1' and c='1' and d='1')
else '0';
end caja;

5.- Se muestra la tabla de verdad de un decodificador BCD de 7 segmentos con


conexin a nodo comn. El circuito cuenta con 4 entradas (A, B, C y D) cuyas
combinaciones mostrarn en el display los nmeros decimales sealados en la
primera columna. Elabore un programa en VHDL que incluya las 7 salidas
(correspondientes a cada segmento) mostradas en la tabla de verdad.
A

Solucin
:

Cdigo:
--Artemio Sanchez Avendao

when "0001"=> d <="1001111";

--Juan Benigno Avilez Avilez

when "0010"=> d <="0010010";

--Jose Juan Martinez Rodriguez

when "0011"=> d <="0000110";

library ieee;

when "0100"=> d <="1001100";

use ieee.std_logic_1164.all;

when "0101"=> d <="0100100";

entity display1 is

when "0110"=> d <="0100000";

port(A: in std_logic_vector(3 downto 0);

when "0111"=> d <="0001111";

d: out std_logic_vector(6 downto 0));

when "1000"=> d <="0000000";

end display1;

when "1001"=> d <="0000100";

architecture salida of display1 is

when others => d <="1111111";

begin

end case;

process (A) begin

end process;

case A is

end salida;

when "0000"=> d <="0000001";

También podría gustarte