Está en la página 1de 3

Proyecto Electronica 3

Replica de un Controlador Logico Programable


Universidad de San Carlos de Guatemala
Facultad de Ingeniera
Escuela de Mecanica Electrica
Laboratorio de Electronica
Electronica 3
Segundo Semestre 2016
Tutor: Inga. Magdalena Puente
Auxiliar: David Barrientos, Haroldo Lopez

ResumenEl proyecto consiste en hacer una replica de un


PLC. La FPGA funcionara como el PLC y sera programado
previamente desde la computadora controlando una banda transportadora la cual solamente debe realizar las tareas programadas
en el orden establecido.

I.

DEL P ROYECTO
D ESCRIPCI ON

Un PLC es un dispositivo electronico programable. Se


utiliza en la industria para solventar problemas de control
de secuencias en la maquinaria o procesos incrementando la
confiabilidad de los equipos.
Para mas informacion de este dispostivo puede visitar la
siguiente referencia:
http://www.abcinnova.com/articulos-e-informacion/18ique-es-un-plc-y-que-beneficios-tiene.html
La FPGA funcionara como la replica del PLC, al cual se le
podran conectar tres modulos diferentes hechos por el usuario:
1.
2.
3.

Modulo de Entrada
Modulo de Salida
Generacion de Senal Trifasica

Primeramente, el estudiante programara el FPGA enviando


3 caracteres diferentes dependiendo de la accion que se desee
por medio del protocolo UART utilizando el programa PUTTY.
Cada uno de estos 3 datos consistiran en una letra ASCII (8
Bits) que indicaran lo siguiente:

Esta es la estructura de un byte. La longitud total del vector


de bits es de 5 bytes, el significado de cada byte se describe
a continuacion:
Instruccion
Operaciones
or
#portin
#portin
#portout
8 bits
8 bits
8 bits
8 bits
and
#portin
#portin
#portout
8 bits
8 bits
8 bits
8 bits
not
#portin #portout
8 bits
8 bits
8 bits
out
#portout
value
8 bits
8 bits
8 bits
ultra
#echo
#triger
#distancia #portout
8 bits
8 bits
8 bits
8 bits
8 bits
delay
miliseg
8 bits
32 bits
pwm
duty
#portout
8 bits
24 bits
8 bits
gen
#sin
#gpio
8 bits
2 bits
8 bits
end
8 bits
Los posibles valores para las instrucciones son los siguientes:
Instruccion
or
and
out
ultra
delay
pwm
gen
end

Bin
0110
0110
0110
0110
0110
0110
0110
0110

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
a
b
c
d
e
f
g
h

Este primer caracter de instruccion se referira a la accion


a realizar como se describe a continuacion.
Or: Compuerta or entre dos pines para mostrarlo en

una salida.
And: Compuerta and entre dos pines para mostrarlo
en una salida.
Out: Mostrar en un pin del puerto especificado por
portout el valor del u ltimo bit del puerto por portin.
Ultra: Utilizar un sensor utrasonico con un una entrada
de echo, una salida de disparo, la distancia a medir y
una salida para saber indicar si hay objeto o no a esa
distancia.
Delay: Se hara una espera en la ejecucion del tiempo
especificado, este puede ser cualquier numero de 32
bits.
Pwm: Se generara una salida controlada por ancho de
pulso de ciclo de trabajo (duty) especificada por el
caracter duty puede ser cualquiera que especifique el
ciclo de trabajo solicitado. Mostrandolo en el puerto
especificado por el u ltimo caracter.
Gen: Con este se generara una senal senoidal, previamente guardada en una FIFO. Se debera tener 3
senales senoidales distintas, la primera sin desface
la segunda con un desfase de 120 con respecto a
la primera y la tercera con un desfase de 120 con
respecto a la segunda. Para mostrar esta senal se
deberan utilizar el gpio especificado por el caracter
gpio. Con el caracter sin se especificara cual de las
tres senoidales se mostrara.
End: Instruccion para finalizar el programa.
Los caracteres que deben utilizar para describir los puertos
son los siguientes:
Pines de puerto 1
pin 1
pin 2
pin 3
pin 4
pin 5
pin 6
pin 7
pin 8

Bin
0011
0011
0011
0011
0011
0011
0011
0011

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
1
2
3
4
5
6
7
8

Pines de puerto 2
pin 1
pin 2
pin 3
pin 4
pin 5
pin 6
pin 7
pin 8

Bin
0010
0010
0010
0010
0010
0010
0010
0010

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
!

#
$
%
&

Pines de puerto 3
pin 1
pin 2
pin 3
pin 4
pin 5
pin 6
pin 7
pin 8

Bin
0100
0100
0100
0100
0100
0100
0100
0100

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
A
B
C
D
E
F
G
H

Pines de puerto 4
pin 1
pin 2
pin 3
pin 4
pin 5
pin 6
pin 7
pin 8

Bin
0101
0101
0101
0101
0101
0101
0101
0101

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
Q
R
S
T
U
V
W
X

Pines de puerto 5
pin 1
pin 2
pin 3
pin 4
pin 5
pin 6
pin 7
pin 8

Bin
0111
0111
0111
0111
0111
0111
0111
0111

0001
0010
0011
0100
0101
0110
0111
1000

ASCII
q
r
s
t
u
v
w
x

Tomar en cuenta que son 8 bits los primeros cuatro se


repiten por lo tanto esta sera la forma de saber a que puerto
se esta refieriendo.
Algunos ejemplos que se podran programar por
comunicacion serial con Putty se describen a continuacion:
a15!
Donde:
a = or
1 = pin 1 del puerto 1
5 = pin 5 del puerto 1
! = pin 1 del puerto 2
Otro programa valido podra ser:
c!1
eabcd
c!2
Encendiendo el puerto 2 pin 1, tomando el u ltimo bit del
caracter 1, ya que este finaliza con uno. Luego se hace una
espera de 394 milisegundos y por u ltimo se apaga el puerto
2 pin 1, ya que se toma el u ltimo bit del caracter 2. Con
esta ejecucion se puede realizar una tarea automatizada en un
tiempo programado.
En la FPGA se sintetizara el hardware correspondiente para
la interpretacion de cada instruccion junto con los otros bytes
para la realizacion de las correspondientes acciones.
Para la generacion de las senales trifasicas, se deberan
guardar las muestras de cada una de las senales senoidales

en sus correspondientes memorias FIFO, siendo un total


de 3 memorias. Para mostrar estas senales se colocara el
valor binario de 8 bits en el puerto GPIO y as mostrar con
un convertidor digital a analogo (DAC) de tipo R2R en un
osciloscopio la salida correspondiente de la senal.

II.

O BJETIVOS

Aplicar los conocimientos adquiridos tanto en el aula


como en el Laboratorio de Electronica 3 sobre el
diseno de circuitos digitales utilizando VHDL.
Implementar lo aprendido teoricamente en laboratorio
y clase en la tarjeta de desarrollo.
III.

C ARACTERI STICAS

El estudiante debe construir la banda transportadora, la


cual debe contener por separado sus entradas y salidas.
Siendo estas las siguientes
1. 3 Entradas de Sensores de Altura (3 Alturas
Diferentes).
2. 1 Entrada Boton de Inicio de Funcionamiento.
3. 1 Entrada Lectura de Sensor Ultrasonico.
4. 1 Salida Actuador.
5. 1 Salida PWM.
6. 1 Salida Trigger Ultrasonico.
7. 1 Salida LED indicador de funcionamiento
correcto.
8. 1 Salida LED indicador de funcionamiento
incorrecto.
9. 3 DACs R2R de 8 Bits de Resolucion.

1.

2.

IV. R ESTRICCIONES
Toda el proyecto debe ser desarrollado en la
tarjeta de desarrollo Elbert V2 -Spartan 3A
FPGA Development Board.
La programacion debe ser realizada en: ISE
DESIGN SUITE de Xilinx utilizando VHDL
solamente.
Codigos copiados (Se hara una revision exhaustiva) seran anulados los proyectos y se enviara carta a Junta Directiva para la suspension
del laboratorio.
V. F ORMATO DE E NTREGA
Primera Fase
Presentar un reporte segun el normativo
de laboratorio en cual se incluya un breve
marco teorico de un PLC, cronograma de
sus actividades y un diagrama de bloques
que explique como funcionara el proyecto paso a paso y como lo resolvera.
Segunda Fase
Para esta fase deberan entregar el proyecto funcionando en un 50 % (protoboard/placa). En esta fase no se entregara
reporte, en su lugar deben entregar un
diagrama esquematico y uno de bloques
del circuito que hasta el momento llevan.

3.

Fase Final
Entregar la Fase Final funcionando al
100 % (en placa de circuito impreso),
ademas deberan entregar un reporte final
segun el normativo de evaluacion del Laboratorio de Electronica utilizando el formato IEEE/Latex, indicando en el mismo
los inconvenientes presentados, descripcion del experimento, calculos, disenos y
conclusiones; as como todos los archivos que entregaron en fases anteriores

También podría gustarte