Issuu on Google+

Centro Nacional de Información y Comunicación Educativa

SEMÁFORO Por medio de la controladora realizaremos las funciones típicas de un semáforo de tráfico. Los apartados en los que se divide esta documentación son los siguientes:

• • • •

Construcción Conexiones Programación en Visual Basic Programación en MSWLogo

CONSTRUCCIÓN La plataforma de operadores donde se va a colocar el semáforo es una tablilla de contrachapado de 20 cm de ancha por 25 de larga. En sus esquinas se han pegado cuatro trozos de listón que hacen de patas. Sobre dicha plataforma se pueden distinguir los siguientes elementos: Operadores fijos: sobre esta plataforma hay una serie de elementos fijos que no se pueden desmontar. Relés: se han colocado dos relés de cuatro contactos con el fin de poder conmutar el funcionamiento del semáforo entre el modo autónomo autoalimentado y el modo de control por ordenador alimentado mediante la interfaz. Previo a su colocación, hemos de estañar a los extremos de sus contactos los cables correspondientes. Motorcillo: conviene colocar un motor de 4/6V con reductora a fin de conseguir un movimiento lento. Los cables del motorcillo se conectan con dos hojalatas pegadas en la parte inferior de la plataforma (ver figura: Descripción del simulador de tráfico) Contacto común: en la zona 3 se ha colocado una estructura construida con madera de contrachapado a modo de hueco donde irá ubicado el semáforo. Sobre ella se pega un trozo de hojalata que hará de contacto común del semáforo. Esta hojalata lleva estañado un cable que se conecta a otra hojalata pegada en la parte inferior de la plataforma (ver figura: Descripción del simulador de tráfico) Alambres eje: hemos de fijar a la plataforma dos alambres en posición vertical donde se introducirán los ejes huecos de las poleas del sistema (polea reductora y disco de contactos).

Proyectos Semáforos

1


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo Tornillos con mariposa: en la zona 4 se colocan dos tornillos que nos servirán para encajar el elemento de contactos al disco. Zonas de elementos desmontables: hay unas zonas donde se podrán poner y quitar una serie de elementos. Zona 1: un disco de cartón fino (1) pegado a la base nos indica el lugar donde irá ubicada la polea reductora. El alambre 1 nos indica el centro de este disco.

Zona 2: un disco de cartón fino (2) pegado a la base nos indica el lugar donde irá ubicado el disco de contactos. El alambre 2 nos indica el centro de este disco. Zona 3: sobre ella se coloca, encajando en la pieza de contacto común, el semáforo. Zona 4: sobre ella se coloca el elemento de contactos al disco, introduciendo este elemento en los tornillos. Bloques de conexiones: una serie de chapitas pegadas a la plataforma nos servirán para realizar los contactos correspondientes entre sus elementos. Algunas de ellas se conectan con otras, colocadas de forma simétrica en la parte inferior de la plataforma. (ver figura: Plataforma de elementos vista por la parte inferior)

El ordenador como elemento de control

2


Centro Nacional de Información y Comunicación Educativa

Bloque de conexiones 1: se han pegado tres chapitas de hojalata que harán contacto con cada uno de los contactos a las bombillas del semáforo. Estas tres chapas están conectadas, mediante cables, a otras tres situadas en la parte inferior de la plataforma. Bloque de conexiones 2: se han pegado tres chapitas de hojalata que harán contacto con cada uno de los contactos al disco. Estas tres chapas están conectadas, mediante cables, a otras tres situadas en la parte inferior de la plataforma Bloque de conexiones 3: se han pegado cinco chapitas que serán los contactos a las entradas digitales de la controladora. Tres de ellas (S1, S2 y S3) para las luces, una (S4) para conmutar los relés y otra (masa) a la masa de la controladora.

Proyectos Semáforos

3


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo Bloque de conexiones 4: otras dos chapas nos servirán para hacer la conexión a la fuente de alimentación (puede servir una pila de petaca de 4,5V.). Una vez construido puedes colorear con pintura al agua procurando no pintar las chapas que hacen de contacto ni los operadores fijos:

• •

Blanco: zonas 1, 2, 3 y 4. Azul: el resto de la plataforma.

(ver las conexiones del circuito eléctrico en el CIRCUITO ELÉCTRICO)

Con el fin de conseguir un movimiento más lento se ha colocado una polea intermedia entre el motorcillo y la polea correspondiente el disco de contactos. Esta polea está construida con tres discos de madera de contrachapado pegados entre si, cuyas dimensiones son: 5 cm de diámetro para las dos exteriores y 4 cm de diámetro para la interior. En el centro se ha realizado un orificio donde lleva encajado un trozo de tubo hueco de unos 3 mm, de modo que pueda introducirse en él el alambre fijo situado en la plataforma (nos puede servir perfectamente un palito de caramelo hueco). Uno de los extremos del eje (por donde abrazará la correa de transmisión a la polea) se ha engrosado enrollando en él varias vueltas de cinta aislante.

El ordenador como elemento de control

4


Centro Nacional de Información y Comunicación Educativa

El disco de contactos también es una polea en la que uno de sus discos es de hojalata a fin de que conduzca la corriente eléctrica. Para su construcción se ha empleado una tapa de bote de hojalata de unos 11 cm de diámetro. Este disco lleva estañado en su parte central un tubo hueco metálico de 3 mm de sección y 4 cm de longitud. Para terminar de construir la polea se pegan sobre él dos discos de contrachapado: uno de 9 cm de diámetro y otro de 11cm de diámetro. El programa de contactos se construye con un círculo de plástico al que se le han realizado varias perforaciones que permitirán los contactos de encendido de las bombillas del semáforo. A continuación, se fija un poco al disco metálico con un poco de pegamento de barra. La programación la podemos realizar de distintas formas, haciendo las perforaciones deseadas según la secuencia de encendido que nos interese.

Proyectos Semáforos

5


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

Para la construcción del semáforo se han empleado dos trozos de madera de contrachapado pagados: uno que hace de poste y otro que nos sirve para la ubicación de las bombillas. En el trozo de madera donde se ubican las bombillas se han realizado tres orificios de diámetro igual al casquillo de los portalámparas, éstos irán encajados y pegados en dichos orificios. Sobre los portalámparas se pueden pegar tres hojalatas a modo de biseras para simular a los semáforos reales. En la parte inferior del poste se realiza una hendidura donde irá encajada una chapita que se conectará al contacto común del semáforo. Para sujetar el conjunto se corta una pieza de contrachapado que hace de base y que luego irá encajada en la zona 3 de la plataforma de elementos. A esta pieza se le ha realizado una ranura donde va encajado y pegado el poste del semáforo. Al mismo tiempo se le han pegado tres pinzas del pelo donde irán conectados los cables de las bombillas. Para evitar que se vean los cables se han pegado dos tiras de cartón, a las que se les ha dado una forma curva: una va pegada al poste del semáforo y la otra a la tablilla de ubicación de las bombillas. (ver imagen siguiente)

El ordenador como elemento de control

6


Centro Nacional de Información y Comunicación Educativa

Son unos alambres que van estañados a la punta de unas pinzas del pelo. A los extremos de los alambres hay que darles una forma curva y así se consigue menor rozamiento con el disco. Estas pinzas del pelo se colocan pegadas a una estructura de madera construida con dos piezas rectangulares de madera de contrachapado y un trozo de listón. Una de las piezas rectangulares lleva dos orificios por donde entrarán los tornillos para acoplar todo el conjunto a la plataforma.

Proyectos Semáforos

7


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

En la parte inferior ésta lleva pegadas tres chapitas que harán contacto con las chapas colocadas en el bloque de conexiones 2. Para la realización del montaje hemos de seguir el siguiente orden:

• • • •

Polea reductora: se introduce el eje hueco de dicha polea en el alambre fijo situado en la zona 1. Colocación de la correa de transmisión entre el eje del motorcillo y la polea reductora. Disco de contactos: se introduce el eje hueco de dicho disco en el alambre fijo situado en la zona 2. Colocación de la correa de transmisión entre el eje de la polea reductora y la polea del disco de contactos. En la colocación de esta correa se debe dar media vuelta con ella sobre el eje.

El ordenador como elemento de control

8


Centro Nacional de Información y Comunicación Educativa • • • • • •

Luces del semáforo: se encaja el semáforo en la zona 3 de modo que las chapas de contacto común se toquen. Si observa, las pinzas del pelo han de hacer contacto con las chapitas situadas en el bloque de conexiones 1. Contactos al disco: se introduce este elemento en los tornillos ubicados en la zona 4. Para dejarla fija, se enroscan unas mariposas en dichos tornillos. Si observas, las chapitas pegadas en la parte inferior de este elemento, han de hacer contacto con el bloque de conexiones 2. Funcionamiento automático (sin intervención de operador): para poner en funcionamiento el sistema debe conectar el bloque de conexiones 4, a una fuente de alimentación. En este caso se ha empleado una pila de petaca de 4,5V. Al ponerse a girar el sistema, los alambres de contacto van rozando en las zonas perforadas del disco haciendo que las bombillas del semáforo se enciendan o se apaguen según toquen en la hojalata o en el plástico. Aunque también puede conectarse a 2 salidas digitales de la controladora, que actuarán de tal manera, que cuando se seleccione el funcionamiento automático, se activen dichas salidas para poner en marcha el motor.

Esta última forma de conseguir el funcionamiento automático del semáforo será la que describiremos mas adelante. (ver imagen: Acoplamiento de elementos)

Proyectos Semáforos

9


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

CONEXIONES Para conseguir un funcionamiento mediante control por ordenador, hemos de conectar desde los contactos del bloque de conexiones 3 a una interfaz controladora de entradas y salidas. Los contactos S1, S2 y S3 se conectan a las salidas digitales SD0, SD1 y SD2 de la controladora y serán las que activen las bombillas rojo, ámbar y verde del semáforo respectivamente.

El ordenador como elemento de control

10


Centro Nacional de Información y Comunicación Educativa El contacto S4 se conecta a la salida digital SD3 de la controladora y será la que active los relés haciendo que se conmute entre el funcionamiento autónomo y el funcionamiento manual del semáforo. La activación de esta salida conlleva un funcionamiento manual, mientras que la desactivación permite el funcionamiento autónomo. El contacto "masa" se conecta a la salida de masa de la controladora y será la que cierre los circuitos que posibilitan el funcionamiento del sistema. El bloque de conexiones 1 del semáforo (E1 -rojo-, E2 -amarillo- y E3 -verde-), se conecta a las entradas digitales de la controladora (ED3, ED2 y ED1) respectivamente, con el fin de conocer en todo momento el estado de las bombillas. (ver figura: Descripción del simulador de tráfico) Los contactos S5 y S6 se conectan a las salidas digitales SD4 y SD5 de la controladora, activando el motor una vez elegido el funcionamiento autónomo. (ver la imagen: Conexiones a la Controladora)

En la tabla siguiente se pueden ver las conexiones que se deben realizar:

ASCENSOR CONECTOR

CONTROLADORA

COLOR SENSOR

SALIDA DIGITAL

S1

VERDE

SD2

S2

AMARILLO

SD1

S3

ROJO

SD0

S4

GRIS

SD3

S5

AZUL (POLO POSITIVO)

SD4

S6

VERDE (POLO NEGATIVO)

SD5

ENTRADA DIGITAL

E1

ROJO

E2

AMARILLO

ED2

E3

VERDE

ED1

MASA

AZUL (+5V)

MASA

Proyectos Semáforos

ED3

11


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

PROGRAMACIÓN EN VISUAL BASIC La programación de este caso se estructura en los siguientes pasos: 1. Se crea un nuevo proyecto EXE Estándar. 2. Agrege un Módulo nuevo. 3. En el módulo añadido, se tendrán que poner las siguientes declaraciones de llamadas a las funciones de la biblioteca IO.DLL. También se incluirá la función que permite activar las salidas digitales de la controladora. Public Declare Sub PortOut Lib ''IO.DLL'' (ByVal nPort As Integer, ByVal nData As Integer) Public Declare Function PortIn Lib ''IO.DLL'' (ByVal Port As Integer) As Integer 4. También se incluirá la función que permite activar las salidas digitales de la controladora. Esta función o procedimiento se denominará Activar. Public Sub Activar (led) PortOut &H37A, &H7 PortOut &H378, Dato End Sub Se declararán 3 variables globales (rojo, amarillo y verde), las cuales contienen en valor decimal el valor que hay que poner en las salidas digitales. Estas variables se inicializan con unos valores para las salidas digitales, a las cuales se las sumará el valor de la salida digital que activará el funcionamiento automático del semáforo. 5. También en el módulo se creará una función o procedimiento para leer las entradas digitales de la controladora, a este función se la denominará LeeDigital. Este procedimiento comprueba si hay algún dato en las entradas digitales, si lo encuentra, lo transforma a base decimal. Public Sub LeeDigital (ENTERO: BitsBajos, BitsAltos, TotalBits) PortOut &H37A, 3 b = PortIn(&H379) PortOut &H37A, 1 a = PortIn(&H379) b = (b And &H78) / 8 b = Not b b = b And 15 a = (a And &H78) / 8 a = Not a a = a And 15 d = (a * 16) Or b End Sub 6. En el formulario se crearán 2 botones, uno para cada modo de funcionamiento del semáforo (automático o manual), cada botón cargará distintas imágenes en el formulario. 7. En el formulario se creará un procedimiento de control, el cual interpreta el dato leído en las entradas digitales para, a continuación, realizar la acción que corresponda a ese dato. Por ejemplo, si el dato leído en las entradas digitales es el que activa el color verde (1) del semáforo, entonces se cargará una imagen del semáforo en verde. El procedimiento de control quedaría de la siguiente forma, para lo cual se pone un Timer para que vaya leyendo el valor de las entradas digitales continuamente. Private Sub Timer1_Timer ( ) Call LeeDigital (BitsBajos, BitsAltos, TotalBits) Select Case BitsBajos Case 3,4

El ordenador como elemento de control

12


Centro Nacional de Información y Comunicación Educativa Picture1.Picture Case 5,2 Picture1.Picture Case6,1 Picture1.Picture Case 0,7 Picture1.Picture End Select End Sub

= LoadPicture (App.Path & ''\verde.jpg'') = LoadPicture (App.Path & ''\amarillo.jpg'') = LoadPicture (App.Path & ''\rojo.jpg'') = LoadPicture (App.Path & ''\semaforo.gif'')

8. Una vez terminado el proyecto, éste se guarda. Pulse F5 o el botón Iniciar para ejecutar la aplicación. 9. Una vez comprobada que la aplicación funciona, se creará un archivo ejecutable del proyecto creado. Descargue los diferentes archivos que forman todo el proyecto, descomprímalos y guárdelos en un directorio aparte. Contiene todos los ficheros necesarios para editar el proyecto en Visual Basic. Ejecute el archivo semaforo.exe. Una vez ejecutada la aplicación, se muestra la pantalla de control siguiente:

Proyectos Semáforos

13


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

10. El FUNCIONAMIENTO MANUAL habilita tres botones nuevos, uno por cada color del semáforo, en los que podrá pulsarse para encender las bombillas correspondientes. (ver imagen siguiente)

11. El FUNCIONAMIENTO AUTÓNOMO activa el motor y la fase en la que el semáforo irá cambiando de color, a medida que el disco de contactos vaya girando. También, al pulsar esta opción, se habilita un botón nuevo con el que se podrá parar el movimiento. (ver imagen siguiente)

El ordenador como elemento de control

14


Centro Nacional de Información y Comunicación Educativa

PROGRAMACIÓN EN MSWLOGO La programación de este caso se estructura en los siguientes pasos: 1. Se crea un procedimiento para crear la ventana gráfica principal del programa. Para ello se utiliza la función creaventana, dentro de la ventana se crean los botones con la función creaboton. Dentro de cada botón se establecerán entre los corchetes las funciones que se han de ejecutar una vez presionado el botón. Uno de los botones creados será el que se utiliza para salir de la aplicación, para lo cual se utiliza la orden adios. creaventana '' ''Principal [Semaforo ] 120 42 200 150 [] creaboton ''Principal ''Manual ''MODO MANUAL 50 34 80 10 [Activar 8 Modo Manual control] creaboton ''Principal ''Automatico ''MODO AUTOMATICO 50 54 80 10 [Activar 16 Modo Automatico control] creaboton ''Principal ''Salir ''Salir 70 94 40 20 [proc_salir adios] En este procedimiento se crea y se inicializa a 0 una variable que llamaremos bucle, y que nos servirá para poder leer las entradas digitales.

Proyectos Semáforos

15


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo 2. Se crea un segundo procedimiento que cargará otra ventana gráfica, este procedimiento que servirá para activar el funcionamiento manual del semáforo una vez se pulse en la ventana gráfica principal el botón de modo manual. para Modo_Manual borraventana ''Principal creaventana '' ''Mod_man [Semaforo - Modo Manual] 120 42 200 150 [] creaboton ''Mod_man ''Rojo ''Rojo 75 14 24 10 [Activar 1+8 control] creaboton ''Mod_man ''Ambar ''Ambar 75 34 24 10 [Activar 2+8 control] creaboton ''Mod_man ''Verde ''Verde 75 54 24 10 [Activar 4+8 control] creaboton ''Mod_man ''Apagar ''Apagar 50 100 30 10 [Activar 0 control] creaboton ''Mod_man ''Volver ''VOLVER 100 94 40 20 [Activar 0 graficos control] fin 3. Se crea un procedimiento para activar las salidas digitales mediante la función salida la cual activará la salida digital adecuada expresada en un nº binario. Éste nº binario se va a guardar en una variable creada a la que llamaremos led. para Activar :led salida :led fin En la programación de los botones, se pondrá directamente las salidas digitales que se tendrán que activar. 4. Para poder leer las entradas digitales se necesita crear un bucle, para que esté continuamente leyendo el valor de las entradas digitales. Para crear un bucle utilizamos la orden mientras y asignamos a una variable un valor, el cual se cambiará al dar al botón salir, para poder salir del bucle y poder parar así de la ejecución del programa. Para leer las entradas digitales se utiliza la función ve? la cual nos devuelve el valor que hay en ese momento en las entradas. Este valor lo guardaremos en una variable a la que llamamos entrada. Luego, según el valor que tengan las entradas, activará el motor en un sentido o en el otro, para lo cual se utilizarán condicionales. para control mientras [:bucle=0] [ haz ''entradas ve? si Y (O (:entradas=6) (:entradas=1)) NO(:foto=1) [cargadib(''verde.bmp) haz ''foto ''1] si Y (O (:entradas=5) (:entradas=2)) NO(:foto=2) [cargadib(''amarillo.bmp) haz ''foto ''2] si Y (O (:entradas=3) (:entradas=4)) NO(:foto=3) [cargadib(''rojo.bmp) haz ''foto ''3] si Y (O (:entradas=7) (:entradas=0)) NO(:foto=4) [cargadib(''semaforo.bmp) haz ''foto ''4] ] fin 5. Se llama al procedimiento que crea la ventana gráfica fuera de cualquier procedimiento, para que se cargue la aplicación gráfica nada más cargar el fichero de logo. Descargue el archivo programado en MSWLogo, descomprímalo y guárdelo en un directorio aparte. Contiene el fichero de código en MSWLogo (semaforo.lgo), y algunos bits maps para mostrar imágenes del semáforo.

El ordenador como elemento de control

16


Centro Nacional de Información y Comunicación Educativa Ejecute el compilador MSWLogo versión 6.5a en castellano. Elija la opción de trabajo Usar una controladora --> Elija la Controladora CNICE --> Elija como entorno de trabajo de la controladora CNICE la programación manual. Vaya al menú del programa, Archivo/Abrir y seleccione el fichero semaforo.lgo que se descargó previamente. Se visualizará la siguiente pantalla:

El FUNCIONAMIENTO MANUAL habilita tres botones, uno por cada color del semáforo, en los que podrá pulsarse para encender las bombillas correspondientes, otro botón para apagar el semáforo si estuviera alguna de sus luces encendidas y otro botón para volver al menú anterior.

Proyectos Semáforos

17


Interfaz de control de dispositivos externos por ordenador a través de puerto paralelo

El FUNCIONAMIENTO AUTÓNOMO O AUTOMÁTICO activa el motor y la fase en la que el semáforo irá cambiando de color a medida que el disco de contactos vaya girando. También, al pulsar esta opción, se habilita una nueva pantalla donde aparece un botón nuevo con el que se podrá parar el movimiento y volver al menú inicial.

El dibujo del semáforo irá cambiando sus luces a medida que éstas vayan cambiándose en el programa.

El ordenador como elemento de control

18


Pruebas