Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CREACIÓN DE UN CHEVISTAR
Docente: ...Bachiller:
Ing. Luis Almehida .Bello José
Electiva III (Microcontroladores) .....CI: 27.287.508
1
Fuente de alimentación:
Esta parte está constituida por una batería de 12 V y un regulador de
voltaje 7805, junto con un condensador para eliminar señales parásitas. Los
12 V de la batería están conectados a la etapa de salida, en tanto, el regulador
7805 (5 V de salida) se encargar de suministrar de energía al resto del circuito
(Unidad de control, Panel de control).
2
Unidad de control:
Encargada de controlar las salidas del sistema de acuerdo a las entradas
que se reciban, esto mediante la programación microcontrolada. Esta etapa es
el cerebro de todo el sistema CHEVISTAR. Está compuesta por un
microcontrolador PIC16f84A. Además de un cristal externo de 4 Mhz con 2
condensadores de 33 pF cada uno. Aunque el cristal puede ser opcional, la
colocación de este ayudará al circuito a trabajar de forma más precisa.
Panel de control
Esta se encuentra dividida en tres partes. La primera está compuesta por
3 botones en configuración pull-down conectados al microcontrolador de la
unidad de control. Cada botón representa un número: 1, 2 y 3. Unido a esta
parte está un led (D3) que indicará cuando un botón es presionado. Las otras
dos partes constan de un led cada una los cuales indicarán: en “CLAVE
ERRADA” el led rojo (D2) indicará cuando la clave ingresada es incorrecta. El
3
led amarillo de “BLOQUEADO” indicará que excedió los límites permitidos y el
sistema se bloqueará temporalmente.
Salida:
Esta parte es la para la cual fue diseñado el sistema. Activa un relé de
12V que está conectado a la unidad de control. Cuando el microcontrolador
envía la señal de salida por el pin RB7, excita la base del transistor 2N2222A
(𝑄1), el cual entra en estado de saturación, lo que hace circular corriente por
el relé y provoca que este conmute de posición. El relé está conectado en
4
paralelo a un diodo 1N4007 para la protección del transistor. Una vez que el
relé cambia de posición, de normalmente cerrado a normalmente abierto,
enciende el LED verde (D5), mostrando que la salida del CHEVISTAR es
activada.
Una vez establecido el diseño, las variables y función de cada
componente del circuito, se prosiguió a realizar la programación adecuada.
Las variables establecidas fueron 9:
Bt1 para el botón 1
Bt2 para el botón 2
Bt3 para el botón 3
Led1 para el indicador de clave errada.
Led2 para el indicador de acción de un botón.
Led3 para el indicador de bloqueo temporal.
Num para almacenar los valores de entrada.
E para almacenar el número de intentos.
Out para activar o desactivar el relé.
La programación es de tipo secuencial y se encuentra dividida en 10
secciones. A continuación se explicará el orden en el cual se ejecutan cada
conjunto de subrutinas del código.
1. OSCILADOR EXTERNO:
En esta sección se define el oscilador externo de 4 MHz.
5
2. CONFIGURACIÓN DE PUERTOS:
Esta sección establece los puertos de salida y los valores iniciales de los
mismos.
3. ETIQUETAS Y VARIABLES:
En esta parte se asignan nombres a los puertos. Y se crean las variables
“num” para almacenar el valor de los botones, y “E” para almacenar el número
de intentos erróneos de la clave de acceso.
6
5. SUBRUTINA PARA COMPARAR LA CLAVE:
Esta es la parte más importante del código. Es la encargada de comparar
la secuencia de números ingresados mediante los botones. Está compuesta
por cuatro subrutinas: digito1, digito2, digito3 y digito4. Para todas estas
subrutinas es la misma lógica. Primero llama a la subrutina “botones” y luego
a “antireb” que vaya a la rutina que guarda los valores de los botones y regresa
con el valor. Luego de ya tener el valor del botón accionado entra en una
instrucción condicional. Si la condición es cierta (digito correcto) continúa con
la siguiente subrutina. Por ejemplo, si digito1 es cierto, continúa a digito2 y así
sucesivamente hasta llegar a digito4. En caso de que la condición sea falsa,
la rutina salta a los “Lazos de falsos”, entrando en un ciclo.
7
6. ACTIVADOR DE SALIDA:
Es la parte encargada de activar el relé sólo si es llamada, es decir, si la
clave ingresada es la correcta. Si la condicional de digito4 es verdadera, llama
a “on_out” que activa el relé temporalmente (1500 milisegundos). La única
forma de que se llegue o llame a esta subrutina es que la condiciones de todas
las subrutinas de “SUBRUTINA PARA COMPARAR CLAVE” (digito1, digito2,
digito3 y digito4) sean verdaderas.
8
al lazo 4, el cual retorna a “Inicio”. Esta sección funciona de forma similar a la
de SUBRUTINA PARA COMPARAR CLAVE, las rutinas ocurren de forma
secuencial.
8. CONTEO DE INTENTOS:
Cuenta con una sola rutina de instrucciones “intentos” que se encarga de
llevar el conteo de las veces que la clave ingresada fue errónea. Cuando llegue
a 3, este bloqueará el sistema por 2500 milisegundos. Esta sección sólo puede
ser llamada por la rutina falso4. Cuando se llega a la esta rutina es porque la
clave era incorrecta, por lo que llevará ese número de intentos.
9. TECLAS:
Esta parte se encarga de almacenar el valor correspondiente en la
variable “num” para cada botón: 1,2 o 3. Sólo es llamada por las rutinas dígitos
y falsos. Está formada por la rutina “botones”.
9
10. ANTIREBOTE:
Esta sección es llamada siempre después de “TECLAS”. Sirve para que
el microcontrolador con capte señales falsas al presionar cualquier botón. El
PIC trabaja a 1uS cada instrucción y cuando una persona presiona el botón,
por lo menos necesita de 100 mS de tiempo para soltarlo, en ese tiempo el
PIC ya sumó alrededor de 25.000 veces. Esta subrutina soluciona este
problema. ANTIREBOTE está conformado por la subrutina “antireb”.
10
Mientras se encuentra bloqueado no podrá intentar ingresar la
clave. Al apagarse el led amarillo podrá ingresar la clave
nuevamente.
11