Wednesday, 27 November 2024
MONOGRÁFICO: Controlabot - Controlabot (3) PDF Print E-mail
EQUIPAMIENTO TECNOLÓGICO - Didáctica de la tecnología
Sunday, 01 November 2009 00:00
Article Index
MONOGRÁFICO: Controlabot
Controlabot (2)
Controlabot (3)
Controlabot (4)
Controlabot (5)
Controlabot (6)
Controlabot (7)
All Pages

CONTROLABOT (3)

Introducción

En los dos capítulos anteriores de este monográfico, hemos aprovechado la facilidad de programar salidas desde el puerto paralelo para encender los leds de una mini-tarjeta diseñada para tal efecto, pero cabe recordar que disponemos de 5 pines donde conectar señales de entrada digitales para crear variaciones en nuestros programas cuando dichas entradas se accionen, es decir, cuando por ejemplo se cierre un pulsador al presionarlo.

Conexión a los pines de Entrada del puerto paralelo

Ya sabemos que el puerto paralelo proporciona 5 voltios de tensión en sus pines de salida, y también podemos decir que los pines de entrada son como un borne eléctrico que tuviera por defecto dicho potencial, con lo que al cerrar un circuito entre dos pines del puerto provocamos que una pequeña corriente recorra un cable fino (en el que intercalaríamos una resistencia) que una el pin de entrada (que hace las veces de un polo positivo) con el pin de masa (polo negativo). Al no existir alimentación externa, los riesgos de dañar el ordenador son mínimos, ya que en mi opinión, es como si estuviera el puerto paralelo autodetectándose.

El circuito de un sensor digital más sencillo, estará constituido por un pulsador (yo he escogido para mi montaje uno de tipo fin de carrera) en serie con una resistencia de 100 ohmios; desde la patilla libre de ésta saldrá un cable que se conecte al pin 25 (de puesta a tierra) del conector macho del puerto paralelo que he utilizado en la mini-tarjeta, y desde la patilla libre del pulsador saldrá otro cable que me lleve hasta el pin 13, que es el que detectará cuando, el circuito que acabo de configurar, está abierto o cerrado.



He repetido el montaje con otro fin de carrera conectando su cableado correspondiente a los pines 12 (entrada) y 24 (masa), disponiendo así de dos entradas que, contando con la posibilidad de pulsar los dos a la vez, me permitan tener al menos tres combinaciones de detección. Una vez terminemos de soldar los elementos y los cables, tendremos la posibilidad de interactuar con la mini-tarjeta durante la ejecución de nuestros programas; el circuito electrónico completo tendría la siguiente representación simbólica:


Escritura de programas que interpreten las señales de entrada

La primitiva de LOGO con la que podemos conocer el estado de las entradas del puerto paralelo es LEEPUERTO 889, de tal modo que si lo escribimos en la barra de ejecución, el programa MSWLogo nos devuelve una respuesta, que queda registrada en su ventana de Trabajo, y que en el caso de no estemos accionando ningún pulsador de entrada, dice literalmente: “No me has dicho que hacer con 120” ; éste valor numérico en código decimal, es la traducción de la información en forma de byte “01111000” código máquina que entiende el ordenador y que, en este caso, significa que no detecta nada en el puerto en entrada;con dos pulsadores conectados, podremos leer los siguientes mensajes numéricos en la ventana de Trabajo:

Entrada pulsada

Mensaje decimal

Byte en el puerto

Pin 13

104

“01101000”

Pin 12

88

“01011000”

Pines 12 + 13

74

“01001000”

Se observa como al ser presionado cada pulsador o ambos, el bit en el puerto pasa del estado en código binario “1” al valor cero“0”, es decir, según una lógica negativa, justo al contrario de la lógica positiva con la que se programan los pines de salida. Conociendo los valores de la tabla y recordando la expresión condicional utilizada en el lenguaje LOGO que ya utilicé en el capítulo anterior de este monográfico, escribiremos programas con la siguiente sintaxis:

PARA PULSADORES :SEG

SI ((LEEPUERTO 889) =”120) [ESCRIBEPUERTO 888 0]

SI ((LEEPUERTO 889) =”104) [ESCRIBEPUERTO 888 (128+16+2) ESPERA :SEG]

SI ((LEEPUERTO 889) =”88) [ESCRIBEPUERTO 888 (64+8+1) ESPERA :SEG/2]

SI ((LEEPUERTO 889) =”74) [ESCRIBEPUERTO 888 (32+4) ESPERA :SEG*2]

PULSADORES :SEG

FIN

En este programa sencillo visualizaremos en la tarjeta el encendido, durante tiempos cambiantes con la variable, de los leds agrupados por colores (para el caso de esta mini-tarjeta): los verdes si pulsamos el pin 13, los rojos con el pin 12 y los amarillos si pulsamos 12 y 13 a la vez. La primera línea del procedimiento sirve para apagar los leds hasta la siguiente pulsación, pero como existe recursividad, el procedimiento permanece activo hasta que hagamos click en el botón Alto de la pantalla de MSWLogo.


Dentro de los corchetes de la expresión condicional de PULSADORES, podremos incluir cualquiera de los programas que probé en la segunda entrega de este monográfico, ya que todos procedimientos que realicemos para la mini-tarjeta se pueden guardar agrupados en un solo fichero en el disco duro del ordenador, lo que permite aprovechar las variables :LED y :SEG (u otras con el nombre que se quiera, pero siempre indicadas con los dos puntos antes de la primera letra), que ya utilizamos anteriormente:

PARA SECUENCIANDO

SI ((LEEPUERTO 889) =”120) [ESCRIBEPUERTO 888 0]

SI ((LEEPUERTO 889) =”104) [SEMAFORO]

SI ((LEEPUERTO 889) =”88) [LUCES]

SI ((LEEPUERTO 889) =”74) [NUMERO 129]

SECUENCIANDO

FIN

Conviene que los procedimientos entre corchetes no dispongan de su propia recursividad, ya que no se observarían cambios en el funcionamiento de la mini-tarjeta mientras el procedimiento SECUENCIANDO continúe activo, a pesar de que pulsemos en las entradas.

Nueva propuesta de mini-tarjeta controladora

Dado lo económico (menos de 6 euros) que va ha suponer elaborar este tipo de placa electrónica, podemos proponer a los alumnos que realicen su propia mini-tarjeta y que dispongan los diodos de manera lógica (sin desordenar la numeración de las salidas), pero con un cierto grado de libertad en su colocación (delimitando un cuadrado, en diagonal, haciendo una línea quebrada, combinando colores, etc.). El inconveniente principal de este proyecto sería el de un consumo excesivo de cables paralelos pelados (en función del número de grupos de alumnos del Centro), lo que se soluciona utilizando un conector de 25 pines acodado para pinchar en la placa (lo he escogido de tipo macho, pues voy a utilizar los cables paralelos de las controladoras del taller).

Aunque tenemos dos líneas en dicho conector con trece y doce pines, nos basta con utilizar la línea de trece pines completa (que consta de 8 pines de salida y 4 de entrada) junto con el pin 25 (de la otra línea) para la puesta a tierra, el cual ligeramente doblado, lo podremos alinear con los anteriores; todos los demás pines (incluido el 1) pueden ser recortados ya que no vamos a utilizarlos y además, nos impedirían pinchar nuestro nuevo conector en las placas estándar.



Como ejemplo, he realizado una mini-tarjeta sobre una placa recortada de 4,5 x 7 cm, sobre la que he dispuesto los diodos leds configurando tres líneas diagonales paralelas de dos, cuatro y dos diodos, que me permitirán realizar distintas figuras luminosas; además, sus colores se ordenan agrupados (tres rojos, dos amarillos y dos verdes) en orden creciente al valor del bit de salida. Cada uno de los diodos led se conecta en serie con una resistencia de 220 ohmios, las cuales deben conectarse al pin 25 de masa, tal como ya se explicó en el primer capítulo de este monográfico.


Si bien la placa sobre la que se realiza el montaje dispone de una trama de topos de cobre cada 2,5 mm donde se supone que se pueden soldar los componentes, yo he optado por doblar las patillas de diodos y resistencias sin recortar, aprovechando su rigidez, para soldarlas alineadas directamente entre sí bajo la placa, incluso para llegar hasta cada pin correspondiente del conector. La conexión a masa de las patillas de las resistencias que cierran cada circuito las he soldado entre sí, volviendo por la superficie de la placa con un cable de cobre negro hasta el pin 25 del conector.

He querido completar la mini-tarjeta aprovechando al menos dos de las entradas digitales de las cuatro posibles que me posibilitan los pines 10 al 13, eligiendo precisamente estas dos extremas; para su activación utilizaré dos mini pulsadores de cuatro patillas, conectados en serie con resistencias de 220 ohmios. El circuito simbólico completo vuelve a ser el mostrado justo antes del inicio del apartado b) de este capítulo, cambiando el pin 12 por el 10, por lo que las posibilidades de programación ahora quedarían así:

Entrada pulsada

Mensaje decimal

Byte en el puerto

Pin 13

104

“01101000”

Pin 10

56

“00111000”

Pines 10 + 13

40

“00101000”


Podemos probar esta nueva mini-tarjeta con distintos programas como, por ejemplo, el de simulación de un carrusel de luces de tiempo variable, el encendido de una “flecha” o el parpadeo de dos “comillas”:

PARA FLECHA :SEG

ESCRIBEPUERTO 888 (1+2+8+32+64+128) ESPERA :SEG

ESCRIBEPUERTO 888 0 ESPERA :SEG

FIN


PARA COMILLAS :SEG

ESCRIBEPUERTO 888 (4+32+128) ESPERA :SEG

ESCRIBEPUERTO 888 0 ESPERA :SEG

ESCRIBEPUERTO 888 (2+16+64) ESPERA :SEG

ESCRIBEPUERTO 888 0 ESPERA :SEG

ESCRIBEPUERTO 888 (4+32+128+2+16+64) ESPERA :SEG

ESCRIBEPUERTO 888 0 ESPERA :SEG

FIN


PARA CARRUSEL :SEG

ESCRIBEPUERTO 888 1 ESPERA :SEG

ESCRIBEPUERTO 888 2 ESPERA :SEG

ESCRIBEPUERTO 888 16 ESPERA :SEG

ESCRIBEPUERTO 888 64 ESPERA :SEG

ESCRIBEPUERTO 888 32 ESPERA :SEG

ESCRIBEPUERTO 888 4 ESPERA :SEG

ESCRIBEPUERTO 888 0

FIN

PARA BOTONES

SI ((LEEPUERTO 889) =”120) [ESCRIBEPUERTO 888 0]

SI ((LEEPUERTO 889) =”104) [CARRUSEL 50]

SI ((LEEPUERTO 889) =”56) [FLECHA 100]

SI ((LEEPUERTO 889) =”40) [COMILLAS 30]

BOTONES

FIN

El último programa integra los tres primeros posibilitando, a través de los pulsadores, que se ponga en marcha uno u otro, convirtiendo a la mini-tarjeta en un moderno panel de leds a escala reducida.

Conclusión

La posibilidad de que cada grupo de alumnos diseñe su propia placa, va a provocar que disfruten de su propia y original lista de programas consecuencia de la experimentación con distintas combinaciones luminosas, y como consecuencia, la motivación o curiosidad por estos contenidos de la Tecnología irán en aumento. Una vez dominada la programación de figuras luminosas, será el momento de pasar a escribir procedimientos menos caprichosos en los que se busquen combinaciones matemáticas, como los propuestos en el capítulo anterior.

 

 



 

Revista INTEFP

Marcadores Sociales

Facebook MySpace Twitter Delicious Google Bookmarks 

Artículos relacionados