INTRODUCCION En el presente trabajo corresponde corresponde a la actividad 14 del curso robótica el cual se desarrolla desarrolla en dos dos fase fases. s. En la fase fase 1 se inve invest stig igaa y docu docume ment ntaa cual cuales es son son los los leng lengua uaje jess de programación utilizados en robótica, como se clasifican y cuáles son los criterios de sele selecci cción ón de un leng lenguaj uajee de progr program amaci ación ón.. En la fase fase 2 se descar descarga ga el prog progra rama ma S!"#$%, se descarga el manual de usuario y un programa de soldadura para despu&s probarlo. 'or (ltimo usando S!"#$% se crea un algoritmo )ue permita desplazar el E*E+$# *-/ de un robot desde la posición inicial inicial 0asta una posición final.
Fase 1. Conceptualización. nvestigar y documentar cuales son los lenguajes de programación utilizados en robótica, como se clasifican y cuáles son los criterios de selección de un lenguaje de d e programación. !encione lenguajes de programación, y mencione sus principales caractersticas. /a descripción de cada uno de ellos no debe superar media página.
CLASIFICACIÓN DE LA PRORA!ACIÓN USADA EN RO"ÓTICA /a programación empleada en #obótica puede tener un carácter e3plcito, en el )ue el operador es el responsable de las acciones de control y de las instrucciones adecuadas )ue las implementan, o estar basada en la modelación del mundo e3terior, cuando se describe la tarea y el entorno y el propio sistema toma las decisiones. /a programación e3plcita es la utilizada en las aplicaciones industriales y consta de dos t&cnicas fundamentales . 'rogra 'rogramac mación ión 5estua 5estual. l. %. 'rogra 'rogramac mación ión e3tua e3tual. l. /a programación programación gestual consiste en guiar el brazo del robot directamente directamente a lo largo de la trayec trayector toria ia )ue debe seguir seguir.. /os puntos puntos del camino camino se graban graban en memori memoriaa y luego luego se repi repite ten. n. Este Este tipo tipo de progr program amaci ación ón,, e3ige e3ige el empl empleo eo del del mani manipul pulad ador or en la fase fase de ense6anza, o sea, trabaja 7on8line7. En la programación te3tual, las acciones )ue 0a de realizar el brazo se especifican mediante las instrucciones de un lenguaje. En esta labor no participa la má)uina 9off8line:. /as trayectorias del manipulador se calculan matemáticamente con gran precisión y se evita el posicionamiento a ojo, muy corriente en la programación gestual. /os lenguajes de programación te3tual se encuadran en varios niveles, seg(n se realice la descripción del trabajo del robot. Se relacionan a continuación, en orden creciente de complejidad 1. /eng enguajes elem elemeenta ntales, )ue cont ontrolan las articulaciones del manipulador
dir directa ctamente
el
movi ovimiento
2. /enguajes /enguajes dirigido dirigidoss a posicionar posicionar el elemento elemento termina terminall del manipulador manipulador.. ;. /enguajes /enguajes orientados orientados 0acia el objeto sobre sobre el )ue opera opera el sistema sistema.. 4. /enguajes /enguajes enfocad enfocados os a la tarea tarea )ue realiza realiza el robot. robot.
de
PRORA!ACIÓN ESTUAL O DIRECTA En este tipo de programación, el propio brazo interviene en el trazado del camino y en las acciones a desarrollar en la tarea de la aplicación. Esta caracterstica determina, ine3cusablemente, la programación 7on8line7. /a programación gestual se subdivide en dos clases •
'rogramación por aprendizaje directo.
•
'rogramación mediante un dispositivo de ense6anza.
En el aprendizaje directo, el punto final del brazo se traslada con ayuda de un dispositivo especial colocado en su mu6eca, o utilizando un brazo maestro o mani)u, sobre el )ue se efect(an los desplazamientos )ue, tras ser memorizados, serán repetidos por el manipulador. /a t&cnica de aprendizaje directo se utiliza, e3tensamente, en labores de pintura. El operario conduce la mu6eca del manipulador o del brazo maestro, determinando los tramos a recorrer y a)uellos en los )ue la pistola debe e3pulsar una cierta cantidad de pintura. +on esta programación, los operarios sin conocimientos de 7soft
ependiendo del algoritmo de control )ue se utilice, el robot pasa por los puntos finales de la trayectoria ense6ada. ?ay )ue tener en cuenta )ue los dispositivos de ense6anza modernos no sólo permiten controlar los movimientos de las articulaciones del manipulador, sino )ue pueden, tambi&n, generar funciones au3iliares, como 8 Selección de velocidades
8 5eneración de retardos 8 Se6alización del estado de los sensores 8 %orrado y modificación de los puntos de trabajo 8 *unciones especiales l igual )ue con la programación directa, en la )ue se emplea un elemento de ense6anza, el usuario no necesita conocer ning(n lenguaje de programación. Simplemente, debe 0abituarse al empleo de los elementos )ue constituyen el dispositivo de ense6anza. >e esta forma, se pueden editar programas, aun)ue como es lógico, muy simples. /a estructura del 7soft
PRORA!ACIÓN TE#TUAL E#PLICITA El programa )ueda constituido por un te3to de instrucciones o sentencias, cuya confección no re)uiere de la intervención del robot@ es decir, se efect(an 7off8line7. +on este tipo de programación, el operador no define, prácticamente, las acciones del brazo manipulado, sino )ue se calculan, en el programa, mediante el empleo de las instrucciones te3tuales adecuadas. En una aplicación tal como el ensamblaje de piezas, en la )ue se re)uiere una gran precisión, los posicionamientos seleccionados mediante la programación gestual no son suficientes, debiendo ser sustituidos por cálculos más perfectos y por una comunicación con el entorno )ue rodea al sistema. En la programación te3tual, la posibilidad de edición es total. El robot debe intervenir, sólo, en la puesta a punto final. Seg(n las caractersticas del lenguaje, pueden confeccionarse programas de trabajo complejos, con inclusión de saltos condicionales, empleo de bases de datos, posibilidad de creación de módulos operativos intercambiables, capacidad de adaptación a las condiciones del mundo e3terior, etc. >entro de la programación te3tual, e3isten dos grandes grupos, de caractersticas netamente diferentes
1. 'rogramación te3tual e3plcita. 2. 'rogramación te3tual especificativa. En la programación te3tual e3plcita, el programa consta de una secuencia de órdenes o instrucciones concretas, )ue van definiendo con rigor las operaciones necesarias para llevar a cabo la aplicación. Se puede decir )ue la programación e3plcita engloba a los lenguajes )ue definen los movimientos punto por punto, similares a los de la programación gestual, pero bajo la forma de un lenguaje formal. +on este tipo de programación, la labor del tratamiento de las situaciones anormales, colisiones, etc., )ueda a cargo del programador. >entro de la programación e3plcita, 0ay dos niveles 1A. -ivel de movimiento elemental +omprende los lenguajes dirigidos a controlar los movimientos del brazo manipulador. E3isten dos tipos a. rticular, cuando el lenguaje se dirige al control de los movimientos de las diversas articulaciones del brazo. b. +artesiano, cuando el lenguaje define los movimientos relacionados con el sistema de manufactura, es decir, los del punto final del trabajo 9+':. /os lenguajes del tipo cartesiano utilizan transformaciones 0omog&neas. Este 0ec0o confiere 7popularidad7 al programa, independizando a la programación del modelo particular del robot, puesto )ue un programa confeccionado para uno, en coordenadas cartesianas, puede utilizarse en otro, con diferentes coordenadas, mediante el sistema de transformación correspondiente. Son lenguajes )ue se parecen al %S+, sin poseer una unidad formal y careciendo de estructuras a nivel de datos y de control. 'or el contrario, los lenguajes del tipo articular indican los incrementos angulares de las articulaciones. un)ue esta acción es bastante simple para motores de paso a paso y corriente continua, al no tener una referencia general de la posición de las articulaciones con relación al entorno, es difcil relacionar al sistema con piezas móviles, obstáculos, cámaras de B, etc. /os lenguajes correspondientes al nivel de movimientos elementales aventajan, principalmente, a los de punto a punto, en la posibilidad de realizar bifurcaciones simples y saltos a subrutinas, as como de tratar informaciones sensoriales. 2A. -ivel estructurado ntenta introducir relaciones entre el objeto y el sistema del robot, para )ue los lenguajes se desarrollen sobre una estructura formal.
Se puede decir )ue los lenguajes correspondientes a este tipo de programación adoptan la filosofa del 'S+/. >escriben objetos y transformaciones con objetos, disponiendo, muc0os de ellos, de una estructura de datos arborescente. El uso de lenguajes con programación e3plcita estructurada aumenta la comprensión del programa, reduce el tiempo de edición y simplifica las acciones encaminadas a la consecución de tareas determinadas. En los lenguajes estructurados, es tpico el empleo de las transformaciones de coordenadas, )ue e3igen un cierto nivel de conocimientos. 'or este motivo dic0os lenguajes no son populares 0oy en da.
PRORA!ACIÓN TE#TUAL ESPECIFICATI$A Se trata de una programación del tipo no procesal, en la )ue el usuario describe las especificaciones de los productos mediante una modelización, al igual )ue las tareas )ue 0ay )ue realizar sobre ellos. El sistema informático para la programación te3tual especificativa 0a de disponer del modelo del universo, o mundo donde se encuentra el robot. Este modelo será, normalmente, una base de datos más o menos compleja, seg(n la clase de aplicación, pero )ue re)uiere, siempre, computadoras potentes para el procesado de una abundante información. El trabajo de la programación consistirá, simplemente, en la descripción de las tareas a realizar, lo )ue supone poder llevar a cabo trabajos complicados. ctualmente, los modelos del universo son del tipo geom&trico, no fsico. >entro de la programación te3tual especificativa, 0ay dos clases, seg(n )ue la orientación del modelo se refiera a los objetos a los objetivos. Si el modelo se orienta al nivel de los objetos, el lenguaje trabaja con ellos y establece las relaciones entre ellos. /a programación se realiza 7off8line7 y la cone3 ión +! es posible. >ada la inevitable imprecisión de los cálculos del ordenador y de las medidas de las piezas, se precisa de una ejecución previa, para ajustar el programa al entorno del robot. /os lenguajes con un modelo del universo orientado a los objetos son de alto nivel, permitiendo e3presar las sentencias en un lenguaje similar al usado com(nmente. 'or otra parte, cuando el modelo se orienta 0acia los objetivos, se define el producto final. /a creación de lenguajes de muy alto nivel transferirá una gran parte del trabajo de programación, desde el usuario 0asta el sistema informático@ &ste resolverá la mayora de los problemas, combinando la utomática y la nteligencia rtificial.
LENUA%ES DE PRORA!ACIÓN ESTUAL PUNTO A PUNTO Se aplican con el robot 7in situ7, recordando a las normas de funcionamiento de un magnetofón dom&stico, ya )ue disponen de unas instrucciones similares '/C 9reproducir:, #E+$#> 9grabar:, ** 9adelantar:, *# 9atrasar:, '"SE, S$', etc. demás, puede disponer de instrucciones au3iliares, como -SE# 9insertar un punto o una operación de trabajo: y >E/EE 9borrar:. +onceptualmente, ala estar el manipulador en lnea funciona como un digitalizador de posiciones. /os lenguajes más conocidos en programación gestual punto a punto son el *"-DC, creado por %! para uno de sus robots, y el ;, original de +-+-- !/+#$! para su robot ;. En el lenguaje *"-DC se usa un mando del tipo 7joystic=7 para el control de los movimientos, mientras )ue el ; dispone de un dispositivo de ense6anza 97teac0 pendant7:. +omo en un grabador de casetes, y en los dos lenguajes mencionados, los movimientos pueden tener lugar en sistemas de coordenadas cartesianas, cilndricas o de unión, siendo posible insertar y borrar las instrucciones )ue se desee. Es posible, tambi&n, implementar funciones relacionadas con sensores e3ternos, as como revisar el programa paso a paso, 0acia delante y 0acia atrás. El lenguaje *"-DC dispone de un comando especial para centrar a la pinza sobre el objeto. El procesador usado en ; es el !> 2FF 97bit slice7:, mientras )ue en el *"-DC está constituido por el %! SCSE!8G.
LENUA%ES DE ELE!ENTALES.
PRORA!ACIÓN
A
NI$EL
DE
!O$I!IENTOS
+omo ya menciono, se tratan los movimientos de punto a punto, e3presados en forma de lenguaje. Se citan, entre los más importantes
ANORAD E!IL& RCL RPL SILA
$AL !AL odos ellos mantienen el &nfasis en los movimientos primitivos, ya sea en coordenadas articulares, o cartesianas. En comparación, tienen, como ventajas destacables, los saltos condicionales y a subrutina, además de un aumento de las operaciones con sensores, aun)ue siguen manteniendo pocas posibilidades de programación 7off8line7. Estos lenguajes son, por lo general, del tipo int&rprete, con e3cepción del #'/, )ue tiene un compilador. /a mayora dispone de comandos de tratamiento a sensores básicos tacto, fuerza, movimiento, pro3imidad y presencia. El #'/ dispone de un sistema complejo de visión, capaz de seleccionar una pintura y reconocer objetos presentes en su base de datos. /os lenguajes E!/C y S5/ son transportables y admiten el proceso en paralelo simple. $tros datos interesantes de este grupo de lenguajes son los siguientes
ANORAD.8 Se trata de una transformación de un lenguaje de control num&rico de la casa -$#> +$#'$#$-, utilizado para robot -$!+. "tiliza, como procesador, al microprocesador HIFFF de !otorola de 1HJ;2 bits.
$AL.8 *ue dise6ado por "-!$- -+ para sus robots "-!E y '"!. /S' RPL.8 >otado con un /S8 como procesador central, y aplicado a los robots '"!, 0a sido dise6ado por S# -E#-$-/.
E!IL&.8 Es un lenguaje creado por %! para el control de uno de sus robots. "sa el procesador %! ;GFJ14 SCSE! G y está escrito en Ensamblador.
SILA.8 >esarrollado por $/BE para su robot S"'E# S5!, emplea un mini8 ordenador con I D de memoria. Escrito en Ensamblador, es del tipo int&rprete.
!AL.8 Se 0a creado en el 'olit&cnico de !ilán para el robot S5!, con un !ini8 multiprocesador. Es un lenguaje del tipo int&rprete, escrito en *$##-.
RCL.8 plicado al robot '+S y desarrollado por #', emplea, como +'", un '>' 11JF;. Es del tipo int&rprete y está escrito en Ensamblador.
LENUA%ES DE PRORA!ACIÓN EN FUNCIÓN DE LOS O"%ETI$OS. /a filosofa de estos lenguajes consiste en definir la situación final del producto a fabricar, a partir de la cual se generan los planes de acción tendentes a conseguirla, obteni&ndose, finalmente, el programa de trabajo.
Estos lenguajes, de tipo natural, suponiendo una potenciación e3traordinaria de la nteligencia rtificial, para descargar al usuario de las labores de programación. 'rev&n, incluso, la comunicación 0ombre8má)uina a trav&s de la voz.
C'ite'ios De I(plantación De Un Ro)ot In*ust'ial Es de gran importancia para conseguir un aumento de productividad, contar con un entorno de programación adecuado a las necesidades. 'rogramar las acciones de un manipulador es complicado en el sentido de )ue en todo momento e3iste una interacción con el entorno, tratándose de un proceso continuo de prueba y error. Esta es la principal causa )ue lleva a )ue las mayora de los sistemas de programación de robots sean de tipo interpretado, pudi&ndose realizar un seguimiento paso a paso de lo programado en cada momento. Se evita as el tedioso ciclo de editar8compilar8ejecutar muy costoso en tiempo. ambi&n es importante )ue e3ista una buena monitorización continua del desarrollo del programa. lgunos de los sistemas de programación actuales se soportan sobre sistemas operativos multitarea, permitiendo el control simultáneo y sincronizado de varios robots o del robot con otros sistemas. "n robot industrial forma parte de un proceso de fabricación )ue incluye muc0os otros e)uipos. El robot, parte principal de la denominada c&lula de trabajo robotizada, debe en general interactuar con otras má)uinas, formando parte de una estructura de fabricación superior.
Ro)ot en la C+lula El robot se sit(a de manera de )uedar rodeado por el resto de elementos )ue intervienen en la c&lula. Se trata de una disposición tpica para robots de estructura articular, polar, cilndrica o S+#. /a disposición del robot en el centro se usa frecuentemente en a)uellas aplicaciones en las )ue un robot sirve a una o varias má)uinas, en aplicaciones de soldadura al arco, paletización o ensamblado, donde el robot debe alcanzar diversos puntos fijos dentro de su área de trabajo.
Ro)ot en L,nea Es la más adecuada cuando uno o varios robots deben trabajar sobre elementos )ue llegan en un sistema de transporte.
Ro)ot !ó-il En ocasiones es (til disponer al robot sobre una va )ue permita su desplazamiento lineal de manera controlada. Esto, permite, por ejemplo, seguir el movimiento de la pieza en el caso de )ue &sta se desplace sobre un sistema de transporte continuo, de modo )ue la posición relativa entre pieza y robot durante el proceso se mantenga fija. +uando termina el procesamiento de la pieza el robot debe regresar rápidamente a su posición inicial para recibir una nueva
CRITERIOS DE SELECCIÓN DE UN LENUA%E DE PRORA!ACION • • • • • • •
Especificación de entradaJsalida. +apacidad de manejo de datos. +apacidad de almacenamiento de datos. yudas para la programación. Eficiencia. r)uitectura del compilador. -(mero de llamadas a los perif&ricos.
!encione len/ua0es *e p'o/'a(ación %A$A El lenguaje de programación Kava fue originalmente desarrollado por Kames 5osling de Sun !icrosystems la plataforma Kava de Sun !icrosystems. Su sinta3is deriva muc0o de + y +LL, puede ejecutarse en cual)uier má)uina virtual Kava 9KB!: sin importar la ar)uitectura de la computadora subyacente.
Ca'acte',sticas odo en Kava está dentro de una clase, incluyendo programas autónomos. El código fuente se guarda en arc0ivos con el mismo nombre )ue la clase )ue contienen y con e3tensión El compilador genera un arc0ivo de clase 9con e3tensión M.classN: por cada una de las clases definidas en el arc0ivo. /os programas )ue se ejecutan de forma independiente y autónoma, deben contener el m&todoNmain 9:N. /a palabra reservada NvoidN indica )ue el m&todo main no devuelve nada. El m&todo main debe aceptar un array de objetos tipo String
CO"OL El lenguaje +$%$/ 9acrónimo de +ommon %usiness8$riented /anguage, /enguaje +om(n $rientado a -egocios: fue creado en el a6o 1 con el objetivo de crear un lenguaje de programación universal )ue pudiera ser usado en cual)uier ordenador, ya )ue en los a6os 1HF e3istan numerosos modelos de ordenadores incompatibles entre s, y )ue estuviera orientado principalmente a los negocios, es decir, a la llamada informática de gestión.
Ca'acte',sticas +$%$/ fue dotado de unas e3celentes capacidades de auto documentación.
Sentencia '+"#E para la definición de campos estructurados. /os cálculos )ue se producen al convertir los n(meros a binario y )ue son inaceptables en temas comerciales. +$%$/ puede emplear y emplea por defecto n(meros en base diez. 'ara facilitar la creación de programas en +$%$/. /a sinta3is del mismo fue creada de forma )ue fuese parecida al idioma ingl&s.
ADA Es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática )ue fue dise6ado por Kean c0bia0 de + ?oneyepartamento de >efensa de los Estados "nidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de 'ascal 0asta la fle3ibilidad de +LL.
Ca'acte',sticas Sinta3is, inspirada en 'ascal, es bastante legible incluso para personas )ue no conozcan el lenguaje. Es indiferente el uso de may(sculas y min(sculas en los identificadores y palabras claves, es decir es un lenguaje case8incentive. En da, todo el programa es un (nico procedimiento, )ue puede contener subprogramas 9procedimientos o funciones:. +ada sentencia se cierra con end. Es un modo de evitar errores y facilitar la lectura. /a sinta3is de atributos predefinidos es $bjetoO tributo 9o ipoO tributo: 9nota esto sólo aplica a atributos predefinidos por el lenguaje, ya )ue no es el concepto de atributo tpico de $$':.Se distingue entre 7procedimientos7 9subrutinas )ue no devuelven ning(n valor pero pueden modificar sus parámetros: y 7funciones7 9subrutinas )ue devuelven un valor y no modifican los parámetros:. !uc0os lenguajes de programación no 0acen esta distinción. /as funciones de da favorecen la seguridad al reducir los posibles efectos colaterales, pues no pueden tener parámetros in out.
PASCAL 'ascal es un lenguaje de programación desarrollado por el profesor suizo -i=laus Pirt0 entre los a6os 1HI y 1H y publicado en1GF. Su objetivo era crear un lenguaje )ue facilitara el aprendizaje de programación a sus alumnos, utilizando la programación estructurada y estructuración de datos. Sin embargo con el tiempo su utilización e3cedió el ámbito acad&mico para convertirse en una 0erramienta para la creación de aplicaciones de todo tipo.
Ca'acte',sticas El código está dividido en porciones fácilmente legibles llamadas funciones o procedimientos. >e esta forma 'ascal facilita la utilización de la programación estructurada en oposición al antiguo estilo de programación monoltica. El tipo de dato de todas las variables debe ser declarado previamente para )ue su uso )uede 0abilitado. $tra diferencia importante es )ue en 'ascal, el tipo de una variable se fija en su definición@ la asignación a variables de valores de tipo incompatible no están autorizadas 9en +, en cambio, el compilador 0ace el mejor esfuerzo para dar una interpretación a casi todo tipo de asignaciones:. Esto previene errores comunes donde variables son usadas incorrectamente por)ue el tipo es desconocido@ y tambi&n evita la necesidad denotación 0(ngara )ue vienen a ser prefijos )ue se a6aden a los nombres de las variables y )ue indican su tipo.
"ASIC En la programación de computadoras, el %S+, siglas de %eginnerOs ll8 purpose Symbolic nstruction +ode 9+ódigo simbólico de instrucciones de propósito general para principiantes en espa6ol:, es una familia de lenguajes de programación de alto nivel. El %S+ original, el >artmout0 %S+, fue dise6ado en 1H4 por Ko0n 5eorge Demeny y 0omas Eugene Durtz en el >artmout0 +ollege en -e< ?amps0ire, Estados "nidos, como un medio para facilitar programar computadores a estudiantes 9y profesores: )ue no fueran de ciencias. En ese tiempo, casi todo el uso de los computadores re)uera codificar soft
Ca'acte',sticas *ácil de usar para los principiantes. Es un lenguaje de propósito general 9no orientado:, )ue permite a los e3pertos a6adir caractersticas avanzadas, conservando simple el lenguaje para los principiantes. Es interactivo en todos los casos, y provee mensajes de errores claros y amigables. #esponde rápido en los programas pe)ue6os en general, y no re)uiere un conocimiento del 0ard
CARACTER2STICAS DE UN LENUA%E IDEAL PARA LA RO"ÓTICA /as seis caractersticas básicas de un lenguaje ideal, e3 puestas por 'ratt, son 1. +laridad y sencillez. 2. +laridad de la estructura del programa. ;. Sencillez de aplicación. 4. *acilidad de ampliación. . *acilidad de corrección y mantenimiento. H. Eficacia. Estas caractersticas son insuficientes para la creación de un lenguaje 7universal7 de programación en la robótica, por lo )ue es preciso a6adir las siguientes 8 ransportabilidad sobre cual)uier e)uipo mecánico o informático. 8 daptabilidad a sensores 9tacto, visión, etc.:. 8 'osibilidad de descripción de todo tipo de 0erramientas acoplables al manipulador. 8 nteracción con otros sistemas. En el aspecto de claridad y sencillez, la programación gestual es la más eficaz, pero impide la confección de programas propiamente dic0os. /os lenguajes a nivel de movimientos elementales, como el B/, disponen de bastantes comandos para definir acciones muy parecidas )ue fueron surgiendo seg(n las necesidades y )ue, en gran medida, oscurecen su comprensión y conocimiento. un)ue, inicialmente, las t&cnicas de programación estructurada son más difciles de dominar, facilitan, e3traordinariamente, la comprensión y corrección de los programas. #especto a la sencillez de aplicación, 0ay algunos lenguajes 9como el !+/: dedicados a las má)uinas 0erramienta 9':, )ue pueden ser valorados, positivamente, por los usuarios conocedores de este campo. El '/, estructurado sobre la matemática matricial, sólo es adecuado para )uienes están familiarizados con el empleo de este tipo de transformaciones. "no de los lenguajes más fáciles de utilizar es el "$'SS, )ue posee un juego de comandos con una sinta3is similar a la del ingles corriente. Es imprescindible )ue los lenguajes para los robots sean fácilmente ampliables, por lo )ue se les debe dotar de una estructura modular, con inclusión de subrutinas definidas por el mismo usuario.
/a adaptabilidad a sensores e3ternos implica la posibilidad de una toma de decisiones, algo muy interesante en las labores de ensamblaje. Esta facultad precisa de un modelo dinámico del entorno, as como de una buena dosis de nteligencia rtificial, como es el caso del "$'SS. un)ue los int&rpretes son más lentos )ue los compiladores, a la 0ora de la ejecución de un programa, resultan más adecuados para las aplicaciones de la robótica. /as razones son las siguientes 1a. El int&rprete ejecuta el código como lo encuentra, mientras )ue el compilador recorre el programa varias veces, antes de generar el código ejecutable. 2a. /os int&rpretes permiten una ejecución parcial del programa. ;a. /a modificación de alguna instrucción es más rápida con int&rpretes, ya )ue un cambio en una de ellas no supone la compilación de las demás. *inalmente, el camino para la superación de los problemas propios de los lenguajes actuales 0a de pesar, necesariamente, por la potenciación de los modelos dinámicos del entorno )ue rodea al robot, acompa6ado de un aumento sustancial de la nteligencia rtificial.
Fase 3. Si(ulación 3.1 >escargar el simulador S!"#$% )ue se encuentra en el lin= de material de apoyo a la formación del curso dentro del área de contenidos. El arc0ivo )ue descargarán no re)uiere de instalación simplemente se da doble clic encima y comienza a funcionar 9es un ejecutable: se debe usar Pindo
)u vemos )ue el arc0ivo de la aplicación S!"#$% se descargo con el nombre de -ovF;.
'ara )ue comience a funcionar damos doble clic en el icono de la aplicación, con lo )ue nos aparece el siguiente mensaje
/uego damos clic en ejecutar con lo )ue nos aparece la siguiente ventana.
3.3 >escargar el manual de usuario 9tambi&n en material de apoyo:, leerlo y probar las diferentes caractersticas del programa.
3.4 OPCIONAL >escargar y probar un programa de ejemplo 9soldadura1.'#5: )ue tambi&n lo encontrará en el material de apoyo, los pasos para probarlo los encontrara en el manual de usuario.
"tilizando el joystic= para mover el brazo del robot
3.5 omar pantallazos del trabajo realizado con S!"#$% 0asta el momento y compartirlos con sus compa6eros en el foro subiendo un arc0ivo llamado as, fase24sunombreapellido.doc , por ejemplo para m sera fase24pedroperez.doc.
>amos clic en play para ejecutar el programa y vemos )ue el robot comienza a moverse, y en la parte del programa se resalta en azul el movimiento )ue está realizando el robot.
3. "sar S!"#$% para crear un algoritmo )ue permita desplazar el E*E+$# *-/ del robot desde la posición inicial 9en la )ue aparece al abrir el simulador: 0asta la posición
96789:; <74:; z73=n>(e'o *el /'upo: en la cual la pinza del robot deberá recoger un objeto y lo llevará 9671::; <7:; z7:?. 'ara esto se sugiere usar el K$CS+D de la forma en )ue se indica en el manual de usuario y colocar un objeto como referencia en la posición final. Si tu grupo es 2F111F, entonces la posición inicial del objeto en z será 3=1:73:. demás, si la coordenada z supera el espacio de trabajo debe usarse la cota mayor para )ue el robot pueda alcanzar el objeto.
NOTA
X =−70, Y =30 y Z =2∗6 =12
brimos el S!"#$%, y dejamos la posición inicial del robot como esta, luego insertamos un prisma y colocamos las coordenadas donde debe )uedar situado. X =−70, Y =30 y Z =12
'rograma
@.PR
Bisualizamos desde distintos ángulos el objeto en su posición.
#ealizamos la programación con ayuda de la consola
El robot toma el objeto
>eja el objeto en la nueva posición
CONCLUSIONES Se aplicaron los conocimientos ad)uiridos mediante la lectura de los temas referentes a la unidad n(mero tres del modulo de #obótica. /os lenguajes de programación en #obótica, como la tecnologa 0an ido evolucionando de acuerdo a las necesidades del ser 0umano y la industria, esto 0a puesto a los grandes programadores a ir innovando en sus productos por la gran competencia en el mercado, aun as con los grandes avances siempre seremos la má)uina más perfecta )ue 0emos conocido. /a 0erramienta S!"#$% es para nosotros la puerta )ue nos abre al mundo de los robots, la manipulación de objetos por medio de coordenadas o por mandos de control como el joystic=@ nos permite descubrir una serie de posibilidades y aplicabilidades dentro del medio )ue nos desempe6amos dentro de la industria, por ejemplo en mi caso se podra pensar en un robot dirigido remotamente para 0acer trabajos en áreas clasificadas con alto riesgo de e3plosión por la alta concentración de gases y vapores )ue salen del crudo. Se pudo entender la importancia de los diferentes sistemas de coordenadas en la robótica.
REFERENCIAS 0ttpJJ<<<.unad.learnmate.coJfile.p0pJ;G;J+ontenidoenlineaJ#oboticaJmodulo.0tml S!"#$%. !anual del "suario 'royecto *in de +arrera de !arina %eltrán %lanco.