Industry robots es un producto fischertechnik (www.fischertechnik.de/english/index.html, www.fischertechnik.com/index.html) de Fischer. Pertenece a un conjunto de productos de la línea Computing como son también:
Estos productos están pensados para chicos de edades a partir de los 12 años, lo que los hace bastante adecuados para su uso en los niveles de la E.S.O.
Industry Robots consta de un piecerío muy extenso (más de 500 componentes), que incluye motores y sensores de contacto, con los que se pueden montar inicialmente cuatro modelos que simulan robots industriales:
![]() |
![]() |
La documentación del producto incluye instrucciones detalladas para el montaje de estos cuatro aunque, obviamente, se pueden realizar los diseños imaginables compatibles con las piezas suministradas.
Los robots indicados se controlan mediante computador. La programación, en forma gráfica, se desarrolla en un PC, y los programas diseñados se descargan en una unidad controladora adjunta al robot.
Aunque no se tratarán aquí los robots neumáticos, se da una breve reseña sobre los mismos. En estos, las funciones neumáticas también pueden ser llevadas a cabo mediante control programado. Incluyen más de 350 piezas y cuentan con una fuente de aire comprimido en miniatura con reservorio. Adjuntan 4 cilindros neumáticos, 3 válvulas, 4 motores, una barrera luminosa y un sensor de contacto. Se sirven instrucciones detalladas para el montaje de cuatro modelos.
Para programar y controlar los modelos fischertechnik mediante un ordenador personal se precisa de una interfase como elemento vinculador entre el modelo y el PC. Esta interfase es denominada "Intelligent interface".
![]() |
![]() |
Cuenta con 4 salidas digitales (M1 a M4) para el control de los actuadores y 10 entradas para el control de los sensores: 8 son digitales (E1-E8) y dos son analógicas (EX, EY). La conexión con el PC se realiza mediante un puerto serie RS-232 con conector SubD9 (9 pines). Requiere una alimentación de c.c. de 9 V/1000 mA. Puede utilizarse una batería o un alimentador (con el polo + en el interior del casquillo).
Se pueden interconectar dos interfases para duplicar el número de actuadores (M1-M8) y de sensores (E1-E16).
El microprocesador constituye la central de control. Ejecuta las instrucciones memorizadas en la RAM (de 32 kByte) y en la EPROM (de 64 kByte).
Puede funcionar en modo "on-line" (en línea, gobernado en todo momento por el PC) o en modo "download". En este último modo el procesamiento del programa tiene lugar únicamente en el microprocesador de la interfase, desacoplado del PC. En una primera fase se escribe el programa de control en el PC, luego se descarga en la interfase y, finalmente, ésta puede cortar el contacto con el PC (de modo que el cable serie puede ser desconectado).
La forma natural de programar la interfase es el lenguaje LLWin, pero en modo "on-line" puede ser utilizada mediante cualquier lenguaje de programación. Los detalles acerca de este proceso se pueden encontrar en www.fischertechnik.de. En dicha página figuran algunos drivers diseñados para diferentes lenguajes de programación.
Un ejemplo del conexionado de los actuadores y sensores a la interfase se muestra en la siguiente figura. En este ejemplo cuatro motores están conectados a las salidas digitales y ocho pulsadores a las entradas digitales. De estos ocho, cuatro se utilizan como finales de carrera (E1, E3, E5, E7) y los otros cuatro (E2, E4, E6, E8) se utilizan como contadores de impulsos (golpeados por una rueda dentada de 4 dientes conforme giran los motores) que sirven para llevar la cuenta de la posición actual del robot - el conjunto motor de c.c. más contador de impulsos actúa como un motor paso a paso-. Este montaje se utiliza en un brazo de robot articulado de tres grados de libertad finalizado en una pinza al que se hará mención en la sección Un ejemplo en el aula.
Las entradas/salidas de la interfase inteligente se pueden monitorizar/controlar directamente mediante la herramienta "Check Interface" que se proporciona conjuntamente con LLWin. Las entradas digitales E1-E8 muestran su estado 0 o 1 (inactivo/activo). Las salidas M1-M4 se pueden desactivar (off), polarizar de forma directa (cw, giro horario -clockwise- en el caso de un motor) o de forma inversa (ccw, giro antihorario -counter clockwise- en el caso de un motor). El valor de las dos entradas analógicas EX y EY se muestran es sendos "vúmetros" con un fondo de escala de 999 unidades.
Los actuadores que pueden ser utilizados con los modelos de Industry Robots son:
electroimanes
lámparas
motores
![]() |
![]() |
![]() |
Los estados instantáneos de las salidas se guardan en unas
entradas digitales (virtuales) denominadas E31-E38 y E41-E48.
E31-E38 almacenan
el estado de giro antihorario de los motores M1-M8 y E41-E48 el estado de giro
horario. Se pueden consultar también estas últimas para determinar si las
lámparas y los electroimanes se hallan activados.
Los posibles sensores digitales son:
fototransistores
pulsadores
células Reed (sensores magnéticos)
![]() |
![]() |
![]() |
Los posibles estados de estas entradas son:
fototransistor: luz - oscuridad;
pulsador: presionado - no presionado;
contacto Reed: activado - no activado
Todos los anteriores dispositivos de entrada/salida son alimentados mediante el Intelligent Interface (a 9 V).
De los actuadores y sensores anteriores, en el producto Industry Robots tal como se adquiere directamente, sólo se incluyen 4 motores y 8 pulsadores. Si se necesitan, el resto han de adquirirse por separado.
El lenguaje de programación de la interfase inteligente de los robots fischertechnik se denomina LLWin (Lucky Logic for Windows), y la última versión del software es la 3.0, para entornos Windows 9x/Me/2000/NT/XP. Es un lenguaje imperativo gráfico cuya secuencia de órdenes se construye como un ordinograma, en el que se unen bloques gráficos de código mediante líneas de flujo. Un ejemplo se puede observar en la siguiente figura.
En el anterior programa de ejemplo se hace lo siguiente:
Nada más dar comienzo el programa (muñeco verde andando) se emite un sonido de 1000 Hz durante una décima de segundo.
Se comprueba si un pulsador conectado a la primera entrada digital (E1) se halla pulsado o no.
Si el pulsador está activado (E1 = 1) se pone en marcha un motor (conectado a la primera salida digital, M1) girando en el sentido de las agujas del reloj durante 2s.
Si el pulsador no está activado (E1 = 0) se ordena que el motor gire en el sentido contrario a las agujas del reloj durante 3 s.
Transcurrido el período de activación del motor, éste se detiene y finaliza el programa (muñeco rojo detenido).
Como se observa en la figura superior, en el entorno de programación se cuenta con una caja de herramientas (Toolbox) desde la que se pueden insertar en todo momento los distintos bloques gráficos de código.
Las opciones de cada orden se pueden ajustar sin más que pulsar con el botón derecho del ratón sobre el bloque representativo de la misma.
Resulta un lenguaje intuitivo y rápido de aprender. La sintaxis de los bloques está en inglés (lo mismo que sucede en los lenguajes textuales como BASIC o C), así como también la ayuda on-line.
El lenguaje de programación puede manejar 100 variables para uso libre del programador y cuenta también con otras variables estándar prefijadas para el control de los actuadores y los sensores.
Se pueden definir y utilizar subprogramas. En el ejemplo que se
muestra un poco más abajo, los rectángulos en gris con un nombre en su
interior corresponden a diferentes subprogramas utilizados en un programa
principal denominado ROB4.MDL
. Este programa
controla las tres articulaciones de un robot de tres grados
de libertad: rotación de cintura (motor M1), desplazamiento lineal del
brazo (motor M2) y elevación del antebrazo (motor M3), y la apertura y cierre del elemento
terminal: una pinza.
ORIGEN_M1
:
consta del siguiente código:
que sirve para llevar la cintura (motor M1) a su posición origen (aquella en la que un pulsador conectado a la entrada digital E1, actuando como final de carrera, se encuentra pulsado por un saliente de la cintura).
También se pueden realizar tareas simultáneas. Por ejemplo, el
subprograma POSICION
del programa principal ROB4.MDL
,
consta de varias tareas "en paralelo", para activar simultáneamente
los motores de cintura, brazo y antebrazo y llevar en consonancia dichos eslabones a la posición
final requerida.
A continuación se presenta una película de los movimientos del robot llamado Rob 4, un brazo manipulador articulado utilizado por los alumnos de 4º de E.S.O. en el aula de Tecnología del I.E.S. Zorrilla.
Este robot tiene tres grados de libertad: las articulaciones de rotación de la cintura (motor M1), desplazamiento lineal del brazo (motor M2) y elevación del antebrazo (motor M3), y cuenta con una pinza como elemento terminal (su apertura y cierre se realiza gracias al motor M4). Los elementos de transmisión del movimiento son, fundamentalmente, tornillos sinfín, ruedas dentadas y un cardán para la pinza.
Las instrucciones paso a paso para el ensamblado de este robot aparecen detalladas en el manual de Industry Robots. Dado que el montaje es laborioso, para llevarlo a cabo en el aula su estructura se dividió en 5 partes:
Cada una de estas partes fue montada por un equipo de alumnos del aula-taller. El correspondiente diagrama de conexiones de los motores y de los sensores a la interfase inteligente figura en la sección La interfase inteligente.
El robot fue controlado con el programa ROB4.MDL
, mencionado anteriormente.
Este programa es una traducción del inglés, con algunos ligeros reajustes, de uno
de los programas originales (ROB4-ENGLISH.MDL
) que se sirven con el
lenguaje de programación LLWin. El programa ordena al robot realizar un ciclo
repetitivo en el que debe tomar un primer cilindro desde la denominada posición 1 y
trasladarlo a otra, 2. Debe tomar unsegundo cilindro de la posición 3 y apilarlo
sobre el primero, en la posición 2. Finalmente, debe tomar ambos cilindros y depositarlos en las
situaciones originales, pero el cilindro 1 en el lugar del 2, y viceversa.