programacion ascensor
TRANSCRIPT
Proyecto: Funcionamiento de un ascensor de 3 pisos mediante un µcontrolador
PICAXE 20M2
Funcionamiento:
El ascensor será de 3 pisos (0,1,2). Cuando se pulse para ir a un piso, se encenderá la flecha
(subir o bajar) parpadeando durante 3-4 sg. Se encenderá el LED del piso al que se quiere ir.
Cuando el ascensor esté en funcionamiento (subida o bajada), las flechas estarán encendidas
sin parpadear. Cuando el ascensor llegue al piso correspondiente se apagará el LED del piso.
Deberá señalizar el piso en que se encuentra, mediante un display 7 segmentos. Si da tiempo, se
realizará una fuente de alimentación con salidas 12V y 5 V DC para alimentar la placa, relés y
motor del ascensor
Entradas Salidas
Pulsador 0 = C.0 Rele Subir = B.0 Pulsador 1= C.1 Relé Bajar = B.1 Pulsador 2 = C.2 Display A (1) = B.4 FC0 = C.3 Display B (2) = C.7 FC1= C.4 Led piso 0 = B.7 FC2 = C.5 Led piso 1 = B.6 Led piso 2 = B.5 Flecha subir = B.2 Flecha bajar = B.3
PICAXE 20M2
PLACA CONEXIONES
CARA VISTA COMPONENTES
µcontrolador adoptado el PICAXE 20M2
Entradas
Las entradas (Pulsadores y finales de carrera) son digitales 1 = +5V y 0 = 0V
Salidas
Las salidas proporcionan una intensidad para accionar un LED. Podemos activarla a nivel ALTO o a nivel
bajo. Véase el esquema de conexión y las instrucciones de programación
Si tenemos que accionar un relé, motor o varios LED debemos amplificar esa salida mediante un
transistor en par de Darlington. Véase esquema (la bobina del relé se conectaría => output device)
Para amplificar las salidas a relés y las flechas de subir y bajar, utilizaremos el CI ULN2003 que es un
circuito integrado para amplificar 7 salidas por transistor en Par de Darlington. Ver el esquema
Programador – Esquema y PCB
Algoritmo básico para la programación
Inicio
Apagamos todas las salidas: led y relés
Cuando se inicie el programa, si el ascensor no se encuentra en ninguna planta, debe de enviarse a la
planta 0
Espera
El ascensor se encuentra en una planta determinada y está a la espera de que se acciona el pulsador de
otra planta:
Se enciende la flecha de subir o bajar durante 3 sg intermitentemente (50sg)
A continuación:
o Se enciende la flecha fija
o Se enciende el led del piso al que va el ascensor
o Comienza la marcha (subir) o bajar
o Al pasar por el piso correspondiente debe de encenderse el número en el display
o Cuando llegue al piso (Final de carrera activado)
Se apaga el led de piso
Se desactiva el motor (subir o bajar)
Se apagan las flechas (subir o bajar)
Se enciende el numero en el display
Vuelve a espera
Instrucciones básicas de programación
Las entradas y salidas son digitales por lo que se deben de declarar como salida 1 o entrada 0 mediante
la siguiente instrucción:
Vease que C.0, C.1,… C.6 son entradas
C.7, B.0, B.1, …., B.7 son salidas
Para activar una salida
high B.0
Para desactivar una salida
Low B.0
El ascensor está a la espera de que se accione el FC de una planta
If pinC.3 = 1 then goto detener
El ascensor se encuentra en una planta y está a la espera de que se accione un pulsador
If pinC.3 =1 and pin C.2 = 1 then goto subir1
Etiquetas
Son puntos del programa. Los nombres de las etiquetas, no tendrán espacios en blanco, ni carafcteres
especiales. Para enviar el programa a una etiqueta subir1 se utiliza, la instrucción goto
goto subir1
subir1:
Tiempo de espera
Espera 2 sg
Wait 2
Espera 800ms
Pause 800
Realizar un ciclo un número de veces
Esta instrucción enciende y apaga 5 veces la salida B.0 esperando 1 sg
También se puede realizar con la instrucción toggle. Está instrucción conmuta la salida, si está encendida la apaga y viceversa. *Esta instrucción puede dejarnos B.0 activada
Variables
No se puede utilizar cualquier variable. Tenemos que utilizar variables que reconozca el programa: b0,b1,
b2, b3, etc
También se pueden declarar variables mediante la instrucción symbol (solo funciona para salidas)
Código de programación Realizar primero el programa para que el ascensor suba y baje solamente, olvidando la señalización (LED de planta, Flecha de subir /bajar y display) Una vez que nos funcione esta primera parte, podemos ir añadiendo la señalización