Introducing 

Prezi AI.

Your new presentation assistant.

Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.

Loading…
Transcript

Clasificación de los lenguajes de programación

Lenguajes a nivel de movimientos elementales

Mantienen énfasis en los movimientos primitivos, ya sea en coordenadas articulares, o cartesianas. Tienen, como ventajas destacables, los saltos condicionales y a subrutina, además de un aumento de las operaciones con sensores, aunque siguen manteniendo pocas posibilidades de programación "off-line".

Estos lenguajes son, por lo general, del tipo intérprete. La mayoría dispone de comandos de tratamiento a sensores básicos: tacto, fuerza, movimiento, proximidad y presencia.

Lenguajes de medio nivel

Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel.

Lenguajes de alto nivel

Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de una forma rígida y sistemática.

Lenguajes de bajo nivel

Son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel es el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.

Lenguajes de programación para Robots

Comunicación con el Robot

Reconocimiento de voz

Estos sistemas reconocen un conjunto de palabras concretas de un vocabulario muy limitado y exigen al usuario una pausa entre las palabras, aunque en la actualidad es posible reconocer las palabras separadas en tiempo real, la utilidad del reconocimiento de palabras separadas para describir la tarea de un robot es bastante limitada.

Un lenguaje de programación es una técnica estándar de comunicación que permite expresar las instrucciones que han de ser ejecutadas en una maquina u ordenador. Estas instrucciones permiten la construcción de programas con los cuales podemos realizar operación de entrada y salida, almacenamiento, cálculos y lógica de comparación. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural.

{

Enseñanza y repetición

También conocido como guiado, es la solución más común utilizada en el presente para los robots industriales. Este método implica enseñar al robot dirigiéndole los movimientos que el usuario desea que realice. Guiar al robot en movimiento lento, puede ser en general llevado a cabo de varias maneras: usando un joystick, un conjunto de botones o un sistema de manipulación maestro-esclavo. Se aplica en áreas tales como soldadura por arco voltaico o pintura con spray.

Hay varias maneras de comunicarse con un robot, y tres soluciones generales para lograrlo, que son reconocimiento de voz, enseñanza y repetición y lenguajes de programación de alto nivel.

Programación textual

Lenguajes de programación

Las tareas requieren técnicas de programación en lenguajes de alto nivel ya que el robot de la línea de producción se realimentan de los valores de los sensores y este tipo de interacción es mantenida por métodos de programación que contengan condiciones. Los lenguajes clásicos empleados en informática, como el C++, BASIC, PASCAL, etc., no disponen de las instrucciones y comandos específicos que necesitan los robots para aproximarse a su configuración y a los trabajos que han de realizar. Esto ha obligado a los fabricantes de robots e investigadores a diseñar lenguajes propios de la Robótica. Sin embargo, estos se limitan a un modelo de manipulador y a una tarea concreta, lo que ha impedido la aparición de lenguajes universales y transportables entre máquinas.

Características de un lenguaje ideal para la robótica

1. Claridad y sencillez.

2. Claridad de la estructura del programa.

3. Sencillez de aplicación.

4. Facilidad de ampliación.

5. Facilidad de corrección y mantenimiento.

6. Eficacia.

Este método de programación permite indicar la tarea al robot a través de un lenguaje de programación específico. Un programa se entiende como una serie de órdenes que son editadas y posteriormente ejecutadas, por lo tanto, existe un texto para el programa. La programación textual se puede clasificar en tres niveles:

Estas características son insuficientes para la creación de un lenguaje "universal" de programación en la robótica, por lo que es preciso añadir las siguientes:

• Transportabilidad sobre cualquier equipo mecánico o informático.

• Adaptabilidad a sensores (tacto, visión, etc.).

•Descripción de todo tipo de herramientas acoplables al manipulador.

• Interacción con otros sistemas.

Nivel Objeto

La programación se realiza de manera más cómoda, ya que las instrucciones se dan en función de los objetos a manejar. Una planificación de la tarea se encargará de consultar una base de datos y generar las instrucciones a nivel de robot.

Nivel Robot

Se debe especificar cada uno de los movimientos que ha de realizar el robot, como velocidad, direcciones de aproximación y salida, apertura y cierre de la pinza, etc. También es necesario descomponer la tarea global en varias subtareas.

Nivel Tarea

El programa se reduce a una única sentencia, ya que, se especifica qué es lo que debe hacer el robot en lugar de como debe hacerlo.

Ensamblar A con D

Actualmente, la programación de robots se aplica en este nivel, existiendo una gran cantidad de lenguajes de programación textual, entre los que destacan por orden cronológico los siguientes:

AL (Universidad de Stanford - 1974)

AML (IBM - 1979)

LM (Universidad de Grenoble - 1981)

VAL II (ADEPT – 1989)

RAPID ( ABB – 1994)

A nivel objeto, se han realizado diversos intentos para poder desarrollarlos, pero las dificultades que se han encontrado han impedido una implementación eficiente. Entre ellos destacan los siguientes ejemplos:

LAMA (MIT – 1976)

AUTOPASS ( IBM – 1977)

RAPT ( Universidad de Edimburgo- 1978)

Antecedentes

Charles Babbage, profesor de matemáticas en la universidad de Cambridge en los años de 1828 a 1839, puede ser considerado como el padre de las computadoras, entre 1833 y 1842 Babbage intento construir una máquina que fuese programable, esta máquina lleva por nombre la maquina Analítica.

Tipos de programación

Ada Augusta Byron (Lady Ada Lovelace), Condesa de Lovelace, matemática; colaboró con Babbage económicamente y promovió activamente la maquina analítica de Babbage. Escribió programas para la maquina analítica, estas primeras instrucciones hacen de Ada Lovelace la primera programadora de la historia.

Existen varios criterios para clasificar los métodos de programación. Algunos lo hacen según la potencia del método, y otras lo hacen según el sistema utilizado para indicar la secuencia de acciones a realizar, éste último es el más ilustrativo al momento de dar a conocer las alternativas existentes para programar un robot. Según este último criterio, un robot puede ser programado por:

Programación por Guiado

La programación por guiado o aprendizaje consiste en hacer realizar al robot, o a una maqueta del mismo, la tarea, registrando las configuraciones adoptadas para su posterior repetición en forma automática. Para guiar al robot por los puntos deseados se utilizan distintas soluciones:

Guiado Pasivo Directo

El programador puede tomar el extremo del robot y llevarlo hasta los puntos deseados a través de las trayectorias más adecuadas. La unidad de control del robot registra de manera automática la señal de los sensores de posición de las articulaciones en todos los puntos recorridos.

Guiado Pasivo por Maniquí

En este caso se dispone de un doble del robot, mientras que éste permanece fuera de línea. El doble posee una configuración idéntica que el robot real, pero es mucho más ligero y fácil de mover. La programación se realiza llevando de la mano a este doble, mientras que la unidad de control muestrea y almacena con cierta frecuencia los valores que toman los sensores de posición de las articulaciones, para su posterior repetición por el robot.

Guiado Pasivo

Si los actuadores del robot están desconectados y el programador aporta en forma directa la energía para mover el robot.

Guiado Extendido

Permite especificar, junto a los puntos por los que deberá pasar el robot, datos relativos a la velocidad, tipo de trayectoria, precisión con la que se quiere alcanzar los puntos, control del flujo del programa, atención a entradas/salidas binarias, etc. En este caso, el método guiado de utilizado es el de la botonera o joystick. El guiado por extendido aumenta la potencia del sistema de programación.

Guiado Básico

El robot es guiado por los puntos por los cuales se desea que pase durante la fase de ejecución automática del programa. Muchas veces no es posible incluir ningún tipo de estructuras de control dentro del programa, por lo que los puntos son recorridos siempre secuencialmente, en el mismo orden que se programaron.

Guiado Activo

Esta posibilidad permite emplear el propio sistema de accionamiento del robot, controlado desde una botonera o joystick para que sea éste el que mueva sus articulaciones.

En las máquinas controladas por sistemas informáticos, el lenguaje es el medio que utiliza el hombre para controlar su funcionamiento, por lo que su correcta adaptación con la tarea a realizar y la sencillez de manejo, son factores determinantes para el buen rendimiento en los robots industriales.

Programar un robot consiste en indicar paso por paso las diferentes acciones (moverse a un punto, abrir o cerrar la pinza, etc.) que éste deberá realizar durante su funcionamiento, la flexibilidad en la aplicación del robot y, por lo tanto, su utilidad van a depender en gran parte de las características de su sistema de programación.

4 LENGUAJES Y PROGRAMACIÓN DE ROBOTS

INTRODUCCIÓN

4.1 PROGRAMACIÓN DEL ROBOT

Learn more about creating dynamic, engaging presentations with Prezi