En este caso, al contrario que en el guiado, se emplea un lenguaje de programación específico con unas ordenes concretas, que hacen moverse al robot por las trayectorias deseadas. Es por esto que en este método existe un texto, que se puede modificar y depurar antes de ejecutar.

Este método de programación se puede clasificar en tres niveles: robot, objeto y tarea.

Nivel robot

Las órdenes se refieren a los movimientos a realizar por el robot. Se necesita concretar cada uno de los movimientos, velocidades, direcciones de aproximación y salida...por lo que de este modo se divide el programa en subtareas. Es el tipo más empleado.
 
Algunos ejemplos son:
 
  • AL (Universidad de Stanford - 1974).
  • AML (IBM - 1979).
  • LM (Universidad de Grenoble - 1981).
  • VAL II (UNIMATION - 1983).
  • V+ (ADEPT - 1989).
  • RAPID (ABB - 1994).

Nivel objeto

Las órdenes se refieren al estado en que deben quedar los objetos que intervienen en el programa. De este modo el programa es menos complejo y la programación más cómoda, ya que las instrucciones dependerán de los objetos a manipular. En este caso, un planificador de tareas generará las instrucciones a nivel robot tras consultar en una base de datos.
 
Aunque se han realizado varios intentos en la historia, estos lenguajes no poseen una implementación eficiente.
 
Algunos ejemplos son:
 
  • LAMA (MIT - 1976).
  • AUTOPASS (IBM - 1977).
  • RAPT (Universidad de Edimburgo - 1978).

Nivel tarea

Las órdenes se refieren al objetivo o subobjetivo parcial del programa. De este modo, el programa queda reducido a una única sentencia que especifica qué es lo que debe hacer el robot, sin meterse en el cómo.

A continuación se observa un ejercicio simple que ejemplifica las diferencias que se han explicado entorno a los distintos niveles de la programación textual: 

Programación textual

ENUNCIADO: Se pretende situar la pieza B sobre la pieza C.

RESOLUCIÓN:

Nivel robot

Mover_a P1 vía P2              ; Situarse en un punto sobre la pieza B.
Vel=0.2*VELMAX                ; Reducir la velocidad.
Pinza=ABRIR                      ; Abrir la pinza.
Prec=ALTA                          ; Aumentar la precisión.
Mover_recta_a P3               ; Descender verticalmente en línea recta.
Pinza=CERRAR                   ; Cerrar la pinza para coger la pieza B.
Espera=0.5                         ; Esperar para garantizar cierre de pinza.
Mover_recta_a P1               ; Ascender verticalmente en línea recta.
Prec=MEDIA                      ; Decrementar la precisión.
Vel=VELMAX                      ; Aumentar la velocidad.
Mover_a P4 via P2             ; Situarse sobre la pieza C.
Prec=ALTA                         ; Aumentar la precisión.
Vel=0.2*VELMAX               ; Reducir la velocidad.
Mover_recta_a P5              ; Descender verticalmente en línea recta.
Pinza=ABRIR                      ; Abrir la pinza.

Nivel objeto

Situar B sobre C haciendo coincidir
LADO_B1 con LADO_C1 y LADO_B2 con LADO_C2 ;

Nivel tarea 

Situar B sobre C.
Métodos de programación en robots.
 

Esta píldora formativa está extraída del Curso online de Fundamentos de robótica (FMEM009PO).

¿Te gusta el contenido de esta píldora de conocimiento?

No pierdas tu oportunidad y ¡continúa aprendiendo!

Política de privacidad

ADR Formación utiliza cookies propias y de terceros para fines analíticos anónimos, guardar las preferencias que selecciones y para el funcionamiento general de la página.

Puedes aceptar todas las cookies pulsando el botón "Aceptar" o configurarlas o rechazar su uso pulsando el botón "Configurar".

Puedes obtener más información y volver a configurar tus preferencias en cualquier momento en la Política de cookies