0% encontró este documento útil (0 votos)
191 vistas45 páginas

Funciones del Robot CRS A255 y A465

El documento describe los diferentes capítulos de un curso sobre la operación y programación de los robots CRS A255 y A465. Incluye información sobre las partes que componen los robots, las funciones de las teclas del teach pendant, el lenguaje de programación Robcomm3, la programación, y las entradas y salidas. Los robots tienen 6 grados de libertad y un alcance de 710 mm, y se componen de un brazo robot, controlador, teach pendant, terminal y cables. El teach pendant contiene teclas para mover cada eje manualmente y cambiar la velocidad.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
191 vistas45 páginas

Funciones del Robot CRS A255 y A465

El documento describe los diferentes capítulos de un curso sobre la operación y programación de los robots CRS A255 y A465. Incluye información sobre las partes que componen los robots, las funciones de las teclas del teach pendant, el lenguaje de programación Robcomm3, la programación, y las entradas y salidas. Los robots tienen 6 grados de libertad y un alcance de 710 mm, y se componen de un brazo robot, controlador, teach pendant, terminal y cables. El teach pendant contiene teclas para mover cada eje manualmente y cambiar la velocidad.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Operación del Robot CRS A255 y A465

Contenido del Curso Operación y Comunicación de los Robot CRS

CAPITULO I PARTES QUE INTEGRAN EL ROBOT

1. Elementos que integran el equipo


2. Características de los robots articulados
3. Instalación de los componentes y del software
4. Consideraciones de seguridad.

CAPITULO II FUNCIONES DE LAS TECLAS DEL TEACH PENDANT

1. Teclas del Teach Pendant


2. Sistemas de coordenadas que maneja el Robot
3. Movimiento del Robot
4. Grabado de posiciones con el teach pendant
5. Aplicación ASH
6. Grabado de locaciones desde ASH en la PC

CAPITULO III LENGUAJE DE PROGRAMACIÓN Y OPERACIÓN DEL ROBOT

1. Introducción al Robcomm3
2. Sistemas de coordenadas
3. Aplicaciones
4. Comandos relacionados con el gripper
5. Comandos de velocidad
6. Declaración de variables
7. Tipos de movimiento

CAPITULO IV PROGRAMACION

1. Estructura de los programas


2. Creación de programas
3. Definición de variables tipo arreglo (arrays)
4. Programación usando mensajes, cambios de velocidad, retardos y
operación del gripper
5. Ciclos repetitivos
6. Ciclos condicionales
7. Subrutinas
8. Ejecución de segmento con condición (case)

CAPITULO V ENTRADAS Y SALIDAS

1. Distribución física de puertos de entradas y salidas digitales y conectores


2. Programación utilizando puertos

1
Operación del Robot CRS A255 y A465

CAPITULO I PARTES QUE INTEGRAN EL ROBOT

1. Las partes que integran el robot son las siguientes:

• Brazo Robot
• Controlador ( para este caso el C500C)
• Teach pendant serial
• Terminal( PC)
• Cables umbilicales ( control y potencia )

2. CARACTERÍSTICAS DE LOS ROBOT ARTICULADO ROBOT A465

Grados de 6
libertad
Alcance 710 mm

Carga nominal 2.0 kg.

3. INSTALACIÓN DE LOS COMPONENTES Y EL SOFTWARE

Para el correcto funcionamiento del robot es necesario realizar una buena


instalación física de todos sus componentes así como también de una correcta
instalación del software.

Primero se recomienda, realizar la instalación del software en la terminal que sea


asignada para el robot. Todos los robots CRS traen su software en CD, en donde
la instalación es sencilla. Los pasos para la instalación son los siguientes:

1. Se lee el CD de instalación y se encuentra el comando INSTALAR ( este


comando instala el sistema operativo del robot.).
2. A continuación se procede a instalar el ROBCOMM3 el cual es el
lenguaje de programación del robot.

Para conectar la PC al robot es necesario configurar el puerto serial COM1 a


57600 bps. Para ello es necesario desde el programa Robcomm3 configurar la
velocidad de la siguiente manera:

Se escoge el tipo de controlador del robot a utilizar, para este caso el C500,
después, en la ventana comsettings se selecciona COM1 y la velocidad de 57600.

2
Operación del Robot CRS A255 y A465

Si el robot viene en la posición de empaque será necesario desbloquear el robot,


para lo cual es necesario aplicar el comando LIMP, el cual lo libera del bloqueo y
se puede manipular manualmente. Se debe tener cuidado no aplicar este
comando sin tener debidamente sujetado el Robot ya que puede sufrir algún daño
debido al impacto que este puede tener.

1. CONSIDERACIONES DE SEGURIDAD.

El controlador y sus componentes cuentan con paros de emergencia que se


distinguen fácilmente. Es importante verificar antes de encender el robot por
primera vez que estos paros de emergencia no se encuentren activados, ya que al
activarse un paro de emergencia se corta la energía del brazo robot.

Los paros de emergencia se encuentran conectados en circuitos serie, para que


de esta manera al ser activado cualquiera de ellos, abre el circuito y se interrumpe
la energía del brazo y en este se activan al instante los frenos o bloqueos de los
ejes, lo cual evita que el robot se mueva por alguna inercia o por la gravedad.
También el software aplica se activa y como medida de seguridad disminuye la
velocidad de los ejes a CERO en un período muy rápido de tiempo, lo cual
contribuye a no tener movimientos bruscos del brazo robot.

Una vez que se restablece un paro de emergencia, la energía se restablece a


los motores del brazo, pero no de forma inmediata, es decir, será necesario
pulsar el botón ARM POWER del controlador del robot.

El controlador C500B esta provisto de una entrada para paros de emergencia, de


tal forma que en un sistema se pueden instalar el número de paros de emergencia
externos que sean necesarios y con ello garantizar la seguridad, ya que el
controlador es el cerebro del robot. Se debe considerar que los paros de
emergencia que se conecten al controlador únicamente detendrán al robot. El
controlador no tiene salida de paro de emergencia lo cual implica que al ser
activado un paro de emergencia del robot, este no podrá parar el sistema en el
cual este interactuando.

El teach pendant posee un botón de paro de emergencia también. El teach


pendant cuenta también con un switch de seguridad en la parte lateral y el cual
debe de estar presionado cuando se este trabajando con el robot usando este
control. Este switch o palanca de seguridad tiene tres posiciones 1) abierta, 2)
cerrada y 3) sobrepresionada. Los movimientos que hagamos con el robot solo
serán posibles manteniendo la palanca en la posición 2 ( cerrada ). Si la palanca
se encuentra en cualquiera de las otras 2 posiciones.

3
Operación del Robot CRS A255 y A465

El brazo robot sólo puede ser movido por uno de los dos puntos de control
que tiene, es decir, si esta activado el teach pendant solo este tendrá el control
del robot. Para poder usar la PC como controlador, es necesario pasar el control a
la terminal y deshabilitar el teach pendant. El mismo procedimiento será necesario
realizar para ceder el control desde la PC hacia el teach pendant.

Cuando el robot se enciende es necesario ponerlo en la posición de HOME,


esto con la finalidad de que el robot este colocado en sus referencias de fabrica.
Poner el robot en HOME se puede hacer desde el teach pendant o bien desde la
PC. Antes de inicializar el robot debemos liberarlo para ponerlo entre las marcas
que trae cada eje y después aplicar el comando HOME.

CAPITULO II FUNCIONES DE LAS TECLAS DEL TEACH PENDANT.

1. TECLAS DEL TEACH PENDANT

4
Operación del Robot CRS A255 y A465

F1,F2,F3,F4

A estas teclas se les puede asignar una función, la cual se indicará en la línea del
menú de la pantalla actual, numeradas del 1 al 4 respectivamente.

ESC

Esta tecla sirve como una salida, paro o para cancelar alguna función
seleccionada, también nos lleva al menú anterior. La teclas ESC nos permite parar
un programa que se este ejecutando, parando el robot y terminando el programa.
Cuando tenemos algún error de una línea que se esta editando, con ESC
podemos cancelar la edición y empezar de nuevo.

TECLAS DE EJES

Son teclas que se encuentran grabadas por flechas y letras y además contienes
los símbolos de “+ “ y “ – “. Se utilizan para mover el robot de una manera manual,
cada par de teclas opera un eje del robot. Para el movimiento LIMP, la tecla que
contiene el signo “ + “ libera el eje que corresponde a la tecla y la tecla con el
signo “ – “ retoma el control de la unión liberada.

TECLAS DEL GRIPPER

Estas teclas se utilizan para abrir y cerrar el gripper de manera manual

HOME Y READY

5
Operación del Robot CRS A255 y A465

La tecla HOME alinea el robot a su posición de cero, es necesario mantenerla


presionada hasta que el robot termine de ejecutar la instrucción.
La tecla READY mueve al robot a una posición de seguridad o inicio programada
previamente.

LIMP/NO LIMP ALL

Estas teclas se utilizan para seleccionar el tipo de movimiento limp. LIMP ALL
libera todas las posiciones del robot para que se puedan mover libremente con la
mano. NO LIMP ALL retoma el control de todos los ejes del robot para que
mantengan su posición.

MOVE

Se utiliza para realizar movimientos en el robot de manera manual y puede ser en


dos formas. La forma 005 se pueden realizar movimientos simples, y la forma 006
se pueden realizar movimientos de arreglos.

UP/DOWN INDEX

Estas teclas aumentan o disminuyen de uno en uno el número del índice mostrado
en un arreglo.

TYPE INDEX

Con esta tecla se puede mostrar o rescribir un índice de un arreglo.

FIRST/LAST

Permite recibir el primero o el último índice de un arreglo.

INS/DEL/Pack Array

Estas teclas se utilizan para insertar dentro, borrar desde y compactar un arreglo.

SPEED DOWN/SPEED UP

Estas teclas son usadas para incrementar o reducir la velocidad de movimiento de


los ejes del robot.

SHIFT

Se utiliza para escribir el carácter denotado en la parte superior de una tecla


alfabética.

6
Operación del Robot CRS A255 y A465

ENTER

Esta tecla da entrada a toda la información que se este manejando en el teach


pendant.

7
Operación del Robot CRS A255 y A465

2. SISTEMAS DE COORDENADAS QUE MANEJA EL ROBOT

Existen cuatro tipo de coordenadas que maneja el robot. Si el robot no ha sido


puesto en home solo podrá utilizar la coordenada JOINT.

TIPODE COORDENADA EJES MOVIMIENTO


JOINT 1,2,3,4,5,6,( 7,8) ARTICULACIONES
WORLD X,Y,Z, YAW, PITCH, MOVIMIENTOS
ROLL RELATIVOS A LA BASE
DEL ROBOT
CYL Q, R, Z MOVIMIENTO
CILÍNDRICO DONDE Q
ES EL GIRO, R
MANTIENE LA
HORIZONTAL Y Z LA
VERTICAL.

MODO JOINT. Este comando mueve cada uno de los ejes con las teclas
correspondientes, es el único modo que se puede utilizar antes de poner en
HOME al robot.

MODO WORLD. El origen de este modo es el centro de la base del robot, la


coordenada Z se extiende verticalmente hacia arriba de la base del robot, la
coordenada Y se extiende hacia el lado derecho, y la coordenada X se extiende
hacia el frente del robot.

En cada tipo de movimiento se puede incrementar o disminuir la velocidad del


robot, con las teclas del teach pendant. También cuando se mueve el robot
manualmente se debe de seleccionar un tipo de movimiento, que puede ser, de
velocidad o de JOG.

3. MOVIMIENTO DEL ROBOT

Por medio del teach pendant y únicamente realizando movimientos individuales en


cada uno de los ejes, se pueden realizar de la siguiente manera:

1. Seleccionar F1 que son las aplicaciones del robot.


2. Dentro de las aplicaciones podemos revisar hasta encontrar test.
3. Presionar F1 para seleccionar test ( sel)
4. Presionar F3 para seleccionar el tipo de movimiento, comenzando con la
velocidad de movimiento de los ejes.
5. Con F4 podemos seleccionar el tipo de movimiento en donde tenemos las
opciones vistas anteriormente

8
Operación del Robot CRS A255 y A465

6. Con las teclas de movimiento que contienen las flechas podemos empezar
a dar movimiento al robot.

Podemos estar probando los tipos de movimiento del robot así como las diferentes
velocidades, para obtener dominio del brazo robot.

Es importante que el robot tenga locaciones especificas, por lo que es necesario


grabar cada una de las locaciones que nosotros creamos pertinentes, o bien que
algún proceso determinado no lo exija.

Como grabar posiciones del robot desde el teach pendant

1. Como primer paso se fija el robot en la posición que queremos grabar y se


acepta en el comando del teach pendant.
2. En el teach pendant se presiona la tecla F1 y aparece (var), lo cual nos
indica que debemos insertar una variable a esa posición.
3. Debemos de insertar la variable que nosotros asignemos a la posición en
donde podemos asignar una letra.
4. En el paso anterior aparecerá en la pantalla Var Create indicándonos el
nombre que le asignamos a la variable. Es necesario presionar F1 (make)
para crear o grabar la nueva posición.
5. Con F1 ( sel )podemos seleccionar una nueva variable
6. Mover el robot a otra locación que se desee guardar
7. Presionar F1 para grabar la posición en la tabla de variables.

Para determinar más locaciones se deben de repetir los pasos anteriores.

Saliendo del teach pendant hacia la computadora

Para salir del teach pendant se empieza a presionar la tecla ESC hasta llegar a la
pantalla donde aparezca la pregunta, que nos informa si queremos salir del
pendant donde tenemos que definir el SI o el NO, si es SI el control pasará a la
computadora, si es NO se queda el control en el Teach.

Saliendo de la computadora hacia el teach

En la terminal del ROBCOMM3 aparecerá un prompt de signo de pesos,


enseguida del prompt debemos escribir pendant y el control pasara al teach
pendant. Debemos recordar que el control del robot solo puede estar en una de
las dos partes anteriores, pero no en las dos a la vez.

9
Operación del Robot CRS A255 y A465

4. MOVIENDO EL ROBOT DESDE LA PC

Aplicación Ash

La aplicación ASH nos permite enviarle comandos al robot para que este los
ejecute, para poder trabajar con la aplicación ASH debemos de entrar
primeramente al ROBCOMM3, luego pulsar el icono TERMINAL.( se debe de
verificar que el control sea pasado a la PC ). Una vez que estemos en la PC y
abierto el programa del robot, debemos de abrir una aplicación de la siguiente
forma:

$ ash prueba

si esta aplicación no esta grabada o creada nos preguntará si deseamos crearla,


para lo cual debemos de pulsar la tecla Y de si , con esto se creará una nueva
aplicación y aparecerá:

prueba>

Después de creada la aplicación podemos insertar los comandos que se quieran


utilizar para trabajar con el robot desde la PC sin necesidad del teach pendant.

Para realizar movimientos con esta aplicación los procedimientos son los
siguientes:

NOTA: todos los comandos se deben de escribir con minúsculas.

joint # ángulo, mueve una unión a la vez, en donde # indica el número de la unión
y el ángulo es en grados.

wx distancia, mueve el robot sobre la dirección del eje X por la distancia


especificada.

wy distancia, mueve el robot sobre la dirección del eje Y por la distancia


especificada.

wz distancia, mueve el robot sobre la dirección del eje Z por la distancia


especificada.
move_(nombre de locación) mueve el robot a la variable de la locación grabada.

Las distancias pueden ser en milímetros o pulgadas.

Otros comandos de operación en el modo ash son los siguientes:

10
Operación del Robot CRS A255 y A465

COMANDOS DE OPERACIÓN DEL MODO ash

joint articulación, grados Movimiento relativo a la posición deseada, puede


ser positivo o negativo.
speed valor Proporciona la velocidad a la que queremos trabajar,
sin valor nos indica la velocidad a la que estamos
trabajando.
w0 Muestra valores de las articulaciones, valor de la
posición y del encoder.
w1 Muestra en tiempo real el valor del encoder, para
salir se presiona ctrl. +E.
wx,wy,wz Mueve el robot en el modo world en función del
sistema métrico seleccionado.
xrot, yrot, zrot Rota en relación al eje indicado en sentido positivo o
relativo.
ready Coloca al robot en una posición determinada.
cready Coloca el brazo en posición vertical.
tx,ty,tz Mueve las articulaciones en modo tool.
yaw,pitch,roll Rota en modo tool, segun el eje indicado.
go Abre gripper.
gc Cierra gripper.
here name Enseña la posición en que se encuentra
cloc Coordenadas cartesianas
ploc # Localización en función de pulsos
print nombre Muestra el valor de la variable
list Muestra los puntos guardados
new tipo name Crea una variable de nombre y tipo indicado.
set name=valor Asigna un valor a la variable que se indique
erase Borra la variable que se le indique.
output salida, valor Establece una salida al valor
appro nombre,distancia Mueve a una distancia del punto indicado con
respecto al gripper.
depart distancia Se aleja del punto actual respecto al gripper.
tool x,y,z,jaw,pitch,roll Establece la posición del centro de gravedad .

11
Operación del Robot CRS A255 y A465

Como grabar posiciones del robot desde la PC

1. Se debe de estar en la aplicación que va a ser modificada


2. Usando los comandos de movimiento de ash, mover el robot a la posición
deseada
3. En el prompt escribir el comando here variable ( here a)
4. repetir los pasos para cuantas posiciones se necesiten

12
Operación del Robot CRS A255 y A465

CAPITULO III LENGUAJE DE PROGRAMACIÓN Y OPERACIÓN DEL ROBOT

1. INTRODUCCIÓN AL ROBCOMM3

El ROBCOMM3 es un software que esta basado en windows y diseñado para


utilizarse con el RAPL3. se usa esta interfase para tener una comunicación entre
la computadora y el controlador.

Abriendo el ROBCOMM3

• Desde el menú inicio seleccionar programas


• Encontrar CRS ROBOTICS
• Seleccionar Robcomm3

Con lo anterior ya se esta dentro del programa y con ello podemos utilizar los
iconos que nos muestra el software, podemos abrir la ventana del editor y
abriendo un nuevo documento.

13
Operación del Robot CRS A255 y A465

Nombrar y salvar un programa

• Dentro del menú file seleccionar save as


• Escribir el nombre que se desee
• Hacer clic en ok

14
Operación del Robot CRS A255 y A465

Creando una nueva aplicación

• Una vez salvado el archivo, ir a la ventana del menú aplicación


• Seleccionar new app
• El nombre de la aplicación será el mismo que el nombre del archivo fuente
• Regresar al menú de la aplicación y seleccionar setup
• Todas las líneas deben de ser llenadas y aplicar ok.

15
Operación del Robot CRS A255 y A465

Escribiendo una aplicación

✓ Cada programa en RAPL3 debe de tener una construcción de bloque


“main.....end main”como esta en la entrada y salida de cada programa.
✓ Crear un programa que mueva el robot de una posición grabada y después
se mueva a otra posición y por último se ponga en posición ready.
✓ El comando move(): este comando mueve el centro de la punta de la
herramienta la posición especificada en modo de unión interpolada, es decir
las uniones del robot se mueven y paran al mismo tiempo.
✓ Para usar el comando se debe de escribir de la siguiente forma
✓ move(_location name)
✓ se debe asegurar de incluir los paréntesis y un guión bajo en frente del
nombre de la locación.
✓ ready(): este comando mueve el brazo a la posición ready.
✓ El programa puede quedar de la siguiente forma:

main
teachable cloc a,b
move (_a)
move (_b)
ready()
end main

16
Operación del Robot CRS A255 y A465

Compilando un programa

Cuando se compila un programa, se esta creando un programa, objeto del archivo


fuente y existen tres maneras de compilar un archivo.

• Desde la barra de herramientas, seleccionando el botón compile.


• Desde el menú de aplicación, seleccionando compile
• Desde la ventana del editor, con el botón derecho del mouse haga clic,de
esta formas se despliega un menú de trabajo, seleccionar compile.

17
Operación del Robot CRS A255 y A465

Si la compilación fue exitosa, Ralp-3 despliega un mensaje en la pantalla


indicándonos que la compilación fue buena, para lo que es necesario aceptar.

Si existen errores también no lo indica, para lo cual es necesario corregir el


programa fuente y volver a compilar hasta que este se pueda compilar.

18
Operación del Robot CRS A255 y A465

Cargando el programa en el controlador

El programa una vez compilado se queda en la PC por lo que es necesario


mandar el archivo objeto al controlador, para ello es necesario realizar el
procedimiento siguiente:

• Mandar el archivo
• Desde el menú herramientas, seleccionar send app
• Desde el menú application, seleccionar send
• Desde la ventana del editor, haciendo clic en el botón derecho del mouse
se despliega un menú de trabajo donde se selecciona send.

19
Operación del Robot CRS A255 y A465

Sobrescribiendo posiciones con el teach pendant

1. Seleccionar F1 ( edit)
2. Seleccionar F1 ( var )
3. Usando F3 y F4 par mostrar todas las variables
4. Seleccionar la variable a, presionar F1 (SEL)
5. Mover el robot a la nueva posición
6. Presionar F1 (TCH) para enseñar esa nueva locación
7. Presionar F1 (YES) cuando muestre la pregunta “ TEACH VARIABLE”
8. Presionar ESC para regresar a la pantalla de “VAR FIND”
9. Repetir los pasos del 4 a 8 para la posición B

Para ejecutar un programa, es necesario tener grabadas las posiciones a las


cuales le indicamos que se mueva en programa, como lo indicamos en el
capítulo anterior.

Una vez que se tiene el programa, que este ha sido compilado y enviado al
controlador y que las posiciones han sido verificadas o grabadas, se procede a
ejecutar el programa de la siguiente forma:

20
Operación del Robot CRS A255 y A465

Desde el teach pendant, se selecciona app, luego se selecciona la aplicación


run y se confirma la ejecución.

Desde la PC. Dentro del Robcomm3 y una vez que aparece el prompt se
selecciona la aplicación que fue grabada, cuando aparece la aplicación se
teclea run y se le da enter ejecutándose así el programa.

2. SISTEMAS DE COORDENADAS

Modo cilíndrico

Para mover el robot en modo cilíndrico solo se puede hacer desde el teach
pendant. El sistema de coordenadas cilíndrico esta definido por:

1. Una rotación alrededor del eje Z


2. Una distancia alejada del eje Z
3. Una distancia ( altura) a lo largo del eje Z

Sistema coordenado tool

Este sistema coordenado está directamente relacionado al flanco del plato de la


herramienta en el final del brazo del robot. Para la serie A de los robots, el eje que
apunta hacia fuera del centro del plato de herramienta es el eje X de la
herramienta. Para la serie F el eje Z apunta hacia fuera del centro del plato de la
herramienta.

Para que el robot se mueva en este modo, es necesario utilizar el teach pendant.

Si se quiere mover el robot sin el uso del teach pendant, el robot se va a mover en
el ambiente ash, los comandos en ash para mover el robot en modo tool son
similares a los comandos en modo world y se escriben de la siguiente forma:

tx distancia
ty distancia
tz distancia

estos comandos mueven al robot a una posición relativa a la herramienta

21
Operación del Robot CRS A255 y A465

Comandos relacionados con el Gripper

Al final del brazo del robot regularmente se instala una pinza con dedos, los cuales
pueden tener diferentes formas dependiendo de la tarea que se tenga que realizar.
Para manipular los dedos de cualquier tipo de gripper se utilizan los mismos
comandos.

grip_open(). Abre el gripper. Si se esta usando un servogripper, dentro de los


paréntesis se puede escribir la fuerza de trabajo que se desee, siendo el
parámetro de 0 a 100%. Si no se usa servogripper no se debe de incluir ningún
valor.

grip_close(). Cierra el gripper y se aplican los mismos parámetros que el


grip_open.

grip_finish(). Mantiene la ejecución del programa, cuando encuentra el comando


grip_finish() hasta que el movimiento del gripper ha terminado.

finish(). Obliga al programa a esperar este comando hasta que los movimientos
del robot han terminado.

EJERCICIO:
1. En la locación a cerrar gripper
2. Mover el robot a la locación b
3. En la locación b abrir gripper

Comandos aproach y depart (acercarce y retirarce)

En ocasiones resulta necesario que el robot no llegue directamente a un punto,


sino solo que se aproxime o retire, para ello se utilizan estos comandos.

appro() mueve el centro de la punta de la herramienta a una posición


aproximada. La posición de aproximación es definida por una locación y una
distancia a lo largo del eje de la herramienta.

Ejemplo:

appro(a,40) el robot se va a aproximar a la locación “a” 4 centímetros.


Desde ash la sintaxis cambia ya que los valores no se ponen entre los paréntesis

ash a,40

22
Operación del Robot CRS A255 y A465

depart() mueve el centro de la punta de la herramienta fuera de la posición actual


a lo largo del eje de la herramienta.

Ejemplo:

depart(20) retira el robot de la posición en que se encuentra 2 cm.

Desde ash

depart 20

Comandos de Velocidad

La velocidad de trabajo del robot se puede establecer desde el comando ash o


bien en el programa Rapl3

ash escribir el porcentaje de velocidad a la cual se quiere trabajar de 0 a 100%

Rapl3: speed_set(%) o speed(%)

La velocidad en el movimiento de una trayectoria puede ser variable de acuerdo a


la longitud de la trayectoria, también de acuerdo a las locaciones y al
acercamiento, etc.

EJERCICIO:

1. Grabar 2 nuevas locaciones al programa


2. Adicionar un comando appro y depart para las dos primeras locaciones a y
b
3. Antes del comando depart establecer una velocidad del 20%
4. Después del comando appro establecer una velocidad del 50%
5. Enseñar las 2 nuevas locaciones usando ash
6. Ejecutar el programa.

23
Operación del Robot CRS A255 y A465

Variables

Símbolo Tipo
Ninguno Entero
% Flotante
$ Cadena
Guión bajo (_) Cloc(cartesiano)
# Ploc(punto de presición)

Dentro de un programa las variables se usan para:

1. Nombrar una locación


2. Poner un nombre igual a una Constante
3. Usar contadores
4. Definir arreglos
5. etc.

Convención para nombrar las variables

En el Rapl3 los nombres de las variables pueden ser de cualquier longitud, sin
embrago los primeros 32 caracteres son los importantes. Números y guión bajo
pueden ser utilizados como primer carácter en un nombre.

Tipos de datos

Todas las variables pueden ser definidas como un tipo de dato de la tabla que se
mostró al momento de declarar estas en el programa. Las variables son
declaradas usando el tipo de dato de la variable con el nombre de la variable.

Asignación de variables

Las variables que son asignadas dentro del programa Rapl3, pueden ser
asignadas ya sea en la declaración de línea, o en cualquier parte del programa. La
asignación de una variable ocurre cuando la variable es cargada con un valor
actual.
Las variables del tipo teachable, le pueden ser asignados valores en el prompt de
ash, usando el comando set. Para asignar los valores a las variables se usa el
operador”=”, ejemplo:

Prueba> set A_VALOR=5

Rapl3 soporta la asignación de valores en código ASCII para caracteres, usando


el carácter actual encerrado entre comillas simples, ejemplo:

24
Operación del Robot CRS A255 y A465

Char=”A”

Variables del tipo teachable

Las variables de este tipo son aquellas que son declaradas en el programa Rapl3
y que aún no les ha sido asignado valor. Para crear este tipo de variables, se debe
de usar la palabra teachable antes de la variable que se esta declarando. La
asignación de la variable va a ser suministrada por el usuario antes de correr el
programa.

Las variables teachable son declaradas al comienzo del programa principal o bien
en un subprograma. Si la variable es declarada como variable global, todos los
subprogramas y el programa principal de cualquier archivo van a compartir el valor
de esas variables, lo cual no es muy recomendable.

Este tipo de variables no pueden ser declaradas y a la vez asignarles un valor o


inicializarlas.

Las variables teachables pueden ser de cualquier tipo, si no se declara el tipo por
default se declara cloc(cartesiana) y ploc ( presición ).

Movimiento en línea recta

Este tipo de movimiento mantiene el centro de la herramienta con movimiento en


línea recta. Los comandos de movimiento pueden ser generados para mover el
robot en línea recta, adicionando una “s” al final del comando, ejemplo

move(a) se mueve a la posición a pero no en línea recta

moves(a) se mueve a la posición a en línea recta

En ocasiones resulta imposible para el robot llegar de una posición a otra en línea
recta por lo que será necesario grabar algunas locaciones intermedias y que el
movimiento se pueda dar.

EJERCICIO:

En el programa que se tiene convertir todos los movimientos a línea recta y


observar la diferencia.

25
Operación del Robot CRS A255 y A465

Imprimiendo en pantalla

Imprimir mensajes en la pantalla de la PC, es útil para depurar programas. Si se


usa correctamente, se puede saber donde el programa ha fallado, que error ha
ocurrido, etc.

El comando mas favorable para realizar esto es printf

La expresión que se quiere que salga en pantalla se debe de encerrar entre


comillas

Printf(“el robot esta trabajando”)


Se puede utilizar un salto de línea añadiendo un \n, ejemplo

Int a=12
Printf(“ el valor de a es {}\n”,a);;esta línea se imprimirá en la pantalla como:
;; el valor de a es 12

26
Operación del Robot CRS A255 y A465

CAPITULO IV PROGRAMACION

ESTRUCTURA DE LOS PROGRAMAS

El formato general para un programa en RAPL3 es similar a los programas en


lenguaje “C”, en donde hay que respetar ciertas estructuras ya definidas para
poder interactuar con la interface de usuario y realizar programas.

El formato es el siguiente:

definición de variables: (puede ser antes o después de definir el segmento


principal)

teachable cloc a,b.....z,a1.... a xx, [10] puntos, etc......


ploc

int i, a1....axx,
float b.... etc.

para el caso en que las variables se refieran a ubicación de puntos grabados en el


controlados del robot, se especifica el tipo de exactitud de las variables (cloc, ploc)
en dónde cloc (cartesian location) se refiere a que se va a referenciar para la
exactitud en sistema de coordenadas cartesiano, y ploc (points location) lo hará
directamente de los puntos provenientes de los “decoders” del robot; se obtiene
mas presición con el tipo ploc

definición del segmento principal:

main ;; definir el segmento principal, comienzo de todo programa


;; es conveniente poner comentarios cuando se realiza y
;; estructura un programa para una mejor comprensión

ready() ;; aquí comienza la programación deseada


move (a)
move (b)
.....
.....
.....
ready() ;; termina la programación

end main ;; fin del programa con el cierre del segmento principal

Esta es la estructura básica de los programas, con la cual debe contar todo
programa para interactuar con la interface del robot

27
Operación del Robot CRS A255 y A465

CREACION DE PROGRAMAS

Los pasos para la creación de algún programa son los siguientes:

1. abrir el editor de texto (icono de hoja nueva o desde el menú File --Open
2. Se recomienda tener las pantallas de editor y terminal abiertas
3. crear el listado
4. salvar el programa con un nombre definido con extensión .r3 en un
directorio deseado (nombre.r3, el programa no lo hace automáticamente)
5. compilar el programa (icono, menú Application, o botón derecho del ratón)
6. crear una aplicación con el mismo nombre del programa fuente en la
pantalla de terminal (ash) (nombre)
7. Crear un nexo entre el programa fuente y la aplicación por medio de New
app del menú application, la cual debe tener el mismo nombre y proceder
del mismo directorio que el programa fuente, ([Link])
8. Para verificar, en el menú apliccation, seleccionar setup, el cual en este
punto debe contener los 3 tipos de archivos creados:

nombre.r3 “programa fuente”


[Link] “archivo de enlace”
nombre “aplicación de terminal”

REALICE LA SIGUIENTE PRACTICA:

1. encienda el controlador del robot y inicialícelo (home, ready, y pase el


control a la PC)
2. abra la interface robcomm3 y abra las pantallas de terminal y de nueva
edición (new del menú file)
3. en la pantalla del editor, escriba lo siguiente:

teachable cloc a,b

main

ready()
move (a)
move (b)
ready()

end main

4. salve el programa (save as del menú file) en el directorio de ejemplos con


un nombre cualquiera y extension r3
5. pase a la pantalla de terminal y cree la aplicación correspondiente en el
controlador (ash nombre)

28
Operación del Robot CRS A255 y A465

6. el controlador al no encontrar una aplicación con ese nombre, pregunta si


desea crearla, para aceptar teclee “y” (yes)
7. del menu application, seleccione new app, y asígnele el mismo nombre con
extensión app y en el mismo directorio ([Link])
8. verifique que esten presentes los tres elementos básicos del programa
(menú application, opción setup); en caso contrario realice los pasos del 4
en adelante hasta lograr que aparezcan)
9. compile el archivo (application -- compile) o botón derecho
10. mande la aplicación al controlador (application -- send) o botón derecho
11. en la pantalla de terminal, ejecute el programa (run)
12. al no haber grabado posiciones, el controlador avisa para que las variables
de posición sean definidas.
13. con los comandos de terminal mueva al robot a una posición cualquiera, y
asigne esa posición a la variable “a “(here a)
14. haga lo mismo para la variable “b”
15. corra de nuevo el programa y observe
16. Haga algunos agregados (mas posiciones, comandos del gripper, etc),
compile y mande la aplicación corregida y observe

OTRO METODO POSIBLE DE PROGRAMAR Y ASIGNAR VARIABLES

Otra manera viable de realizar el proceso de programación, es interactuando


directamente con el robot e ir asignando las variables aun sin haber realizado el
listado del programa; esto permite el ir moviendo el robot con los comandos de
terminal o con el “teach pendant” e ir asignando la secuencia de variables que se
utilizara en el programa; a su vez y puede ser de forma paralela, el ir creando el
listado del programa conforme a los movimientos que se van realizando y a las
variables que se van asignando. Para ejemplificar mejor este aspecto, realice el
siguiente ejercicio:

1. Salga de la aplicación actual que este presente en el controlador, por medio


del comando “exit” en la pantalla de terminal, y cierre la aplicacion de nexo
presente de la pantalla del programa robcomm3 por medio de seleccionar
“close app” del menu application
2. Desde la pantalla de terminal, cree una nueva aplicación que se llame curso
por medio del comando “ash curso” y acepte la nueva creación
3. mueva el robot a la posición de ready
4. asigne una nueva variable directamente al controlador, por medio del
comando “new a” (para asignar variables tipo cartesiano se agrega el
simbolo de guion bajo “_” , y para variables del tipo de presición, el símbolo
de numero “#” )
5. asigne la variable b con el comando “new _b”
6. en la pantalla de terminal, teclee el comando “list”, para observar las
variables existentes (observara que las variables aparecen precedidas del
simbolo “ * ” , lo que indica que no han sido asignadas posiciones a estas
variables)
7. mueva el robot a una posición distinta con el comando “joint 1,100”

29
Operación del Robot CRS A255 y A465

8. indique que esa posicion se le asignara a la variable a, por medio del


comando “here a”
9. teclee de nuevo el comando “list” y observe
10. mueva el brazo a otra posición, digamos “joint 2,50”
11. teclee de nuevo el comando “list” y observe
12. ahora abra una nueva pantalla de editor y nómbrela “curso.r3” y teclee el
siguiente programa:

teachable cloc a,b

main

ready()
move (a)
move (b)
ready()

end main

13. cree una nueva aplicación de nexo llamada [Link]


14. observe la pantalla de setup (setup del menu application) (tiene que estar
los tres elementos basicos, fuente, aplicacion y nexo; de lo contrario repita
los pasos anteriores)
15. corra el programa y observe

DECLARACION DE VARIABLES TIPO ARREGLO (ARRAY)

Un arreglo de variables es útil por ejemplo cuando se van a realizar movimientos a


posiciones secuenciales diferentes, o cuando se realizan operaciones complejas,
o cuando se necesita guardar resultados en diferentes variables de manera
secuencial, etc (depende del programador). y para definir estas variables, solo se
define en la declaración el número de localidades o diferentes valores va a contar
dicha variable:

teachable cloc [5] a, [5] b, c..... etc

REALICE LA SIGUIENTE PRACTICA:

1. del mismo ejercicio anterior, corrija la declaración de variables por lo


siguiente:

teachable cloc [5] a


teachable cloc b

30
Operación del Robot CRS A255 y A465

2. corrija el listado del programa por lo siguiente:

main

ready()
move (a[0])
move (a[1])
move (a[2])
move (a[3])
move (a[4])
move (a[5])
move (b)
ready()

end main

3. agregue esas 6 nuevas posiciones y salve el programa con otro nombre2.r3


4. cree la aplicación en la terminal (primero salga de la aplicación actual con el
comando exit en terminal)
5. cree el nuevo nexo con una nueva aplicación (primero salga de la aplicación
actual con close app del menu application)
6. defina nuevas posiciones para las variables
7. ejecute el programa y observe.

COMENTARIO: Es recomendable cambiar y realizar todo el proceso de creación


de un programa cada vez que se realicen cambios a este, ya que el controlador no
acepta los cambios realizados, sobre todo cuando se cambian o agregan variables
de diferente tipo a los programas. Se debe tener especial cuidado cuando se
realicen cambios a los programas y verificar efectivamente que las correcciones
realizadas se lleven a cabo.

Una manera de seguir con los mismos programas fuente y aplicaciones cuando se
hacen correcciones en las variables, es el eliminarlas del controlador
completamente y reasignar las posiciones de todas las variables, o las que se
hayan corregido al menos con el comando “erase <nombre de variable>”

PROGRAMACION DE MENSAJES, VELOCIDAD, RETARDOS Y OPERACION


DEL GRIPPER

Algunos comandos útiles que se utilizan comúnmente son los siguientes:

REFRESH el cual limpia y “resetea” o inicializa la memoria del controlador


para evitar degradación de los códigos con basura. (en la pantalla de terminal)

LIST muestra todas las variables existentes en uso por la aplicación


actual y marca con * las que no se hayan asignado

31
Operación del Robot CRS A255 y A465

Delay(#milisegundos) útil cuando se programan esperas definidas (en edición


de programas)

finish() espera a que la instrucción anterior se realice completamente


antes de proceder a ejecutar la siguiente

grip_open() abre el gripper

grip_close() cierra gripper

speed(0-99) cambia la razón de velocidad del robot y se expresa en


porcentaje

REALICE LA SIGUIENTE PRACTICA:

1. Realice el siguiente programa y sálvelo con un nuevo nombre (recuerde


salir y cerrar las aplicaciones actuales)

teachable cloc a,b,c

main

ready()
printf (“moviendose a punto a\n”)
move (a)
printf (“espera de 5 segundos\n\n\n”)
delay(5000)
grip_open()
printf (“moviendose a punto b\n”)
move (b)
finish()
speed(30)
printf (“aumentando la velocidad de operación \n”)
move (c)
finish()
printf (“se move a punto c y espera a que termine \n”)
printf (“espera de 3 segundos \n”)
delay (3000)
grip_close()
printf (“fin del programa y se va a posición de ready \n”)
ready()

end main

2. salve, compile, cree aplicación, nexo, ejecute el programa y observe


3. haga modificaciones a su gusto y observe.

32
Operación del Robot CRS A255 y A465

CICLOS REPETITIVOS

CICLO for variable=xx to xx ....... end for


repetición de secuencias del programa con numero finito de veces

REALICE LA SIGUIENTE PRACTICA:

1. Realice el siguiente programa:

teachable cloc [5] a


teachable cloc b
int c

main

ready()

for c=1 to 5

printf(“realizando el ciclo: [{}]\n”,c)


move (a[0])
move (a[1])
move (a[2])
move (a[3])
move (a[4])
move (b)

end for

ready()

end main

2. realice todo el proceso de enviar el programa y observe

CICLO goto etiqueta

REALICE LA SIGUIENTE PRACTICA:

1. sobre el mismo programa anterior, realice los siguientes cambios:

33
Operación del Robot CRS A255 y A465

teachable cloc [5] a


teachable cloc b
main
ready()
regreso1:: move (a[0])
move (a[1])
move (a[2])
move (a[3])
move (a[4])
move (b)
goto regreso1
end main

2. Ejecute el programa y observe

Este modo de ejecutar programas aunque es posible no es recomendable bajo


ciertas circunstancias, debido a que como se observó, la única manera en este
caso de salir del programa es utilizando los paros de emergencia o forzando el
apagado del programa desde la pantalla de terminal utilizando la secuencia
<CTRL+Z>.

CICLO loop ...... end loop


Otra herramienta útil para realizar ciclos, es esta función, que aunque básicamente
es un ciclo incondicional, fácilmente puede utilizarse como un ciclo dependiente de
cierta condición, lo cual, se verá posteriormente.

Otra manera de asignar valores a variables que no cambiarán su valor, y para una
mejor comprensión al utilizarlas, es darle valores predeterminados a estas
variables con nombres complejos definiéndolas desde el comienzo de los
programas con la herramienta (.include)

REALICE LA SIGUIENTE PRACTICA:

1. Cierre todas las aplicaciones y cree este nuevo programa:

teachable cloc a,b,c,d

.define alta 100


.define media 40
.define baja 10

main

34
Operación del Robot CRS A255 y A465

ready()

loop
speed(baja)
move (a)
speed(media)
move (b)
speed(alta)
move (c)
delay(5000)
move(d)
end loop
end main

2. Salve, compile cree aplicacion y nexo y enseñe al robot las nuevas


posiciones
3. Ejecute el programa y observe
4. Realice modificaciones a su gusto y observe los cambios.

CICLOS CONDICIONALES

CICLO if ......... end if


Una de las herramientas más útiles en cualquier lenguaje de programación, es el
poder verificar el estado de cierta variable, condición o estado de alguno de los
parámetros asociados de que es capaz de manejar el ambiente o dispositivo a
programar; para la creación de ciclos condicionales con el ciclo loop, se puede
verificar cierta condición con la función “if” y si se cumple, agregar la función
“break”, con la cual se podrá salir del ciclo a la siguiente instrucción posterior al
“end loop.”

REALICE LA SIGUIENTE PRACTICA:

1. Modifique el programa anterior de la siguiente manera:

teachable cloc a,b,c,d

.define alta 100


.define media 40
.define baja 10

main
ready()
int e=0

35
Operación del Robot CRS A255 y A465

loop
speed(baja)
move (a)
speed(media)
move (b)
speed(alta)
move (c)
delay(5000)
e=e+1

if e>5
break
end if

end loop

move(d)
delay(5000)
ready()

end main

2. aplique un refresh al controlador y compile y mande este nuevo programa;


observe que el ciclo loop se ha convertido en un ciclo condicional
3. realice modificaciones y observe

CICLO while .......... end while


Para este caso, la secuencia del programa se ejecuta repetitivamente hasta
alcanzar cierta condición, que puede ser un valor en especial de una variable o
una señal digital de entrada

REALICE LA SIGUIENTE PRACTICA:

1. Cierre aplicación nexo y programa y cree un conjunto nuevo con este


listado

teachable a,b

main
int c=1
while c<5
ready()
move (a)
move (b)
c=c+1

36
Operación del Robot CRS A255 y A465

end while
ready()
end main

2. Ejecute el programa y observe


3. Realice algunos cambios y observe

CICLO do .......... until


REALICE LA SIGUIENTE PRACTICA:

4. Cierre aplicación nexo y programa y cree un conjunto nuevo con este


listado

teachable a,b

main
int c=1
do
ready()
move (a)
move (b)
c=c+1
until c>5
ready()
end main

5. Ejecute el programa y observe


6. Realice algunos cambios y observe

SUBRUTINAS
Otra característica especial de este tipo de lenguajes, es la compilación por
módulos o separada, lo que permite que se puedan definir subrutinas separadas
del programa principal y utilizarse llamándolas cuando sea necesario; estas
subrutinas por lo general contienen partes de un programa o secuencia fijos, es
decir, que no varían aunque la secuencia de su utilización así como otras acciones
se puedan controlar desde el programa principal.

Para la utilización de subrutinas en un programa, es necesario incluirlas en las


declaraciones que va a usar el programa principal por medio de la función
.include tal como se muestra a continuación; y el formato de los archivos que
contengan las subrutinas, no deberan contener la función main, y en vez de esto,

37
Operación del Robot CRS A255 y A465

tener como encabezado y fin de las subrutinas, las sentencias sub nombre() y
end sub respectivamente.

REALICE LA SIGUIENTE PRACTICA:

1. Cierre aplicación nexo y programa y cree un conjunto nuevo con este


listado, que se llame sub1.r3

.include sub2.r3
.include sub3.r3

teachable cloc a,b

main

ready ()
move(a)
finish()
printf("movio a punto a y espera de 3 seg\n")
delay(3000)
finish()
printf("ejecutando subrutina 2 y espera de 5 seg\n")
sub2() ;; ejecucion de subrutina 2
printf("termina la subrutina 2, mueve a b y espera de 3 seg\n")
move(b)
finish()
delay(3000)
finish()
printf("ejecutando subrutina 3 y espera de 5 seg\n")
sub3()
printf("termina la subrutina 3, mueve a b y espera de 3 seg\n")
move(b)
finish()
delay(3000)
finish()
ready()
finish()
printf("termina el programa\n")

end main

2. Abra un nuevo editor y escriba la siguiente subrutina y sálvela con el


nombre de sub2.r3

sub sub2()

teachable cloc c

38
Operación del Robot CRS A255 y A465

delay(5000)
move(c)
finish()
printf("movio a c en subrutina 2 y espera de 3 seg\n")
delay(3000)
finish()

end sub

3. De nuevo abra un nuevo editor y escriba la siguiente subrutina y sálvela con


el nombre de sub3.r3

sub sub3()

teachable cloc d

delay(5000)
finish()
move(d)
finish()
printf("movio a d en subrutina 3 y espera de 3 seg\n")
delay(3000)
finish()

end sub
4. Ahora abra la pantalla de terminal, del menú window, seleccione la opción
Tile; asegúrese de haber encendido el robot y cree la aplicación sub1 por
medio del comando ash sub1
5. Del menú Application seleccione New app y cree el nexo [Link]
6. Asegúrese de que en el setup aparezcan los tres elementos y compile el
programa principal (sub1.r3) hasta que no aparezcan errores
7. mande al controlador el programa (send)
8. Ejecute el programa para que reconozca las variables a usar
9. Mueva el robot y grabe 4 diferentes puntos
10. ejecute el programa, realice algunas modificaciones y observe.

EJECUCIÓN DE SEGMENTO CON CONDICIÓN (CASE)


Algunas veces se hace necesario redirigir el flujo del programa para realizar
alguna terea específica dependiente de un valor de una variable, condicion o
entrada digital, esto puede ser realizado con la función case.

FUNCION case .......... of xx


REALICE LA SIGUIENTE PRACTICA

39
Operación del Robot CRS A255 y A465

1. Cierre todas las aplicaciones y programas, y cree este programa nuevo.

teachable cloc a,b,c,d

main

int e=1
string[64] mensaje
ready()

loop

printf("el contador es: {}\n",e)


delay(6000)
finish()

case e

of 1:

mensaje = "caso de 1 paso a posicion a\n"


printf(mensaje)
move(a)
finish()

of 2,3,5:

mensaje = "caso de 2,3 o 5 y paso a posicion b\n"


printf(mensaje)
move(b)
finish()

of 6 to 8:

mensaje = "paso a posicion c, en los casos del 6 al 8\n"


printf(mensaje)
move(c)
finish()

of 9 to 10, 12 to 14, 16:


mensaje = "posicion d cuando e es de 9 a 10, de 12 a 14, o 16\n"
printf(mensaje)
move(d)
finish()

else
mensaje = "caso indefinido, no hago nada\n"

40
Operación del Robot CRS A255 y A465

printf(mensaje)
end case

e=e+1

if e>17
break
end if

end loop

ready()
finish()
printf("fin del programa.....adios\n")

end main

2. salve con un nombre nuevo y abra las aplicaciones correspondientes,


compile y asegúrese de que en el setup aparezcan los tres elementos y
compile el programa principal hasta que no aparezcan errores
3. mande al controlador el programa (send)
4. Ejecute el programa para que reconozca las variables a usar
5. Mueva el robot y grabe 4 diferentes puntos
6. ejecute el programa, realice algunas modificaciones y observe.

41
Operación del Robot CRS A255 y A465

CAPITULO V ENTRADAS Y SALIDAS


DISTRIBUCIÓN FÍSICA DE PUERTOS DE ENTRADAS Y SALIDAS DIGITALES
Y CONECTORES

PUERTO DE ENTRADAS / SALIDAS DIGITALES GPIO

El controlador C500C del robot cuenta con un juego de entradas y salidas


digitales, con las cuales poder interactuar en tiempo real con el medio externo y
poder monitorear o controlar dispositivos externos; este controlador cuenta con 16
entradas digitales opto aisladas, 4 salidas con contactos de relevador y 12 salidas
opto aisladas.

CONSIDERACIONES EN EL DISEÑO DE CIRCUITOS

Si se va a usar el puerto GPIO, se deben tener en cuenta las siguientes


consideraciones.

• Para los robots A255 y A465, se puede usar tanto la fuente interna de 24
VDC que provee el equipo o una externa que conecte al sistema
• La capacidad de corriente que puede manejar la fuente interna es de
máximo 1 Ampere, por lo que si la aplicacion que se va a manejar es de
mayor capacidad, use una fuente externa.
• Las salidas opto aisladas son de baja capacidad en corriente, manejan
hasta 50 mA cada una de ellas.
• Las salidas relevadas masnejan hasta 3 A cada una.
• Todas las salidas de relevador, están conectadas a un punto en común, y
están protegidas por un relevador que se encuentra en el panel frontal.
• PRECAUCION.- Apague el interruptor principal del controlador antes de
conectar cualquier alambre al controlador.

Los diagramas del patillaje correspondientes se muestran en las páginas


siguientes:

42
Operación del Robot CRS A255 y A465

REALICE LA SIGUIENTE PRACTICA

1. Aplique el comando shutdown now a la pantalla de terminal para apagar el


robot, Cierre todas las aplicaciones y el programa robcomm3 y apague el
controlador.
2. Del conector DD-50, conecte las terminales 1 y 3, o bien la 2 y 4, para
utilizar la fuente interna de 24 volts de DC; también conecte las terminales
47 a la 49, o bien la 48 a la 50, para cerrar el lazo a tierra de los circuitos
internos del GPIO
3. Conecte el cable tipo listón al conector DD-50 y por el otro extremo al
controlador del robot
4. Encienda el controlador y abra la pantalla de terminal del robcomm3
5. abra cualquier aplicación existente (ash xxxxx) de la pantalla terminal
6. Introduzca el comando input 1, haga lo mismo con las 16 entradas y
observe.
7. Con mucho cuidado, conecte un alambre largo a la terminal 49 ó 50 del
conector DD-50 y a la terminal 5 del mismo; aplique el comando input 1 y
oberve, retirelo de la terminal 5 y vuelva a verificar el estado de la entrada 1
y haga lo mismo con algunas otras entradas.

NOTA: TAL COMO SE OBSERVO, LA SALIDA SE HACE VALIDA (VALOR DE 1) CUANDO SE


CONECTA A TIERRA LA ENTRADA CORRESPONDIENTE

8. Ahora, con la ayuda de un multímetro ajustado para medir voltaje de DC, en


la escala que soporte al menos 24 VDC, conecte la terminal positiva del
multímetro a la terminal 1 ó 2 del conector DD-50, y la negativa a la terminal
21, observe la lectura del multímetro; ahora, aplique a la pantalla de
terminal el comando output 1,1 (formato: output #salida, valor lógico) y
observe; ahora el comando output 1,0 y note el cambio de estados de
aprox. cero Volts a aprox. 24 VDC que es el voltaje de la fuente interna del
controlador. Haga lo mismo con algunas salidas de la 2 a la 12.

NOTA: CUANDO SE USEN LAS SALIDAS DIGITALES, DE PREFERENCIA UTILICE YA SEA


LA FUENTE INTERNA O UNA EXTERNA, DE MAXIMO 24 VDC Y LAS CARGAS O
DISPOSITIVOS A ENCENDER (TAL COMO UN RELEVADOR) DEL MISMO VALOR DE
VOLTAJE.

9. Para el caso de las salidas de la 13 a la 16, existe la diferencia de que estas


son contactos de relevador, con un punto en comun. Para verificar, ajuste el
multímetro para medir resistencia (si tiene la capacidad de tono audible
cuando se detecta resistencia cercana a cero, actívela); con mucho
cuidado, conecte una de las terminales del multímetro a la terminal 43 ó 44
del conector DD-50, y la otra a la terminal 36 del DD-50; introduzca el
comando output 13,1 y observe la lectura del medidor; después de el
comando output 13,0 y observe; conecte ahora de la terminal 43 ó 44 a la
35 y repita los dos comandos anteriores.

43
Operación del Robot CRS A255 y A465

Con estas herramientas, se pueden realizar programas mas complejos que


involucren el uso de entradas y salidas digitales, para poder controlar dispositivos
externos, o coordinar acciones determinadas dependientes de esos dispositivos, a
ambas cuestiones.

REALICE LA SIGUIENTE PRACTICA

1. Abra una pantalla de edición de programas nuevos y teclee el siguiente


programa:

teachable cloc a,b,c

main

loop

while input(16)==1

printf("activada la entrada 16 y espero seleccion de entrada\n")


delay(5000)
finish()

if input(1)==1
move(a)
finish()
printf("entrada uno conectada, muevo posicion a\n")
printf("y activo salida 13 por 5 segundos a\n")
output (13,1)
delay(5000)
output_set (13,0)
end if

if input(2)==1
move(b)
finish()
printf("entrada dos conectada, muevo posicion b\n")
printf("y espero a que active la entrada 3\n")
while input(3)==0
end while
printf("entrada 3 pulsada, continuo con el programa\n")
end if

if input(4)==1
move(c)
finish()
printf("entrada cuatro conectada, muevo posicion c\n")
end if

44
Operación del Robot CRS A255 y A465

if input(15)==1
printf("entrada 15 conectada, termino programa en 5 seg\n")
delay(5000)
finish()
goto final
end if

end while

printf("no esta activada la entrada 16 y espero 5 seg\n")


delay(5000)

end loop

final::

printf("fin del curso...... felicidades y buen viaje\n")

end main

2. Salve el programa, cree la aplicación y el nexo, asigne las tres posiciones y


ejecute el programa, siguiendo cuidadosamente el diagrama de conexiones
y las instrucciones del instructor, si tiene cualquier duda, no proceda con el
paso siguiente hasta estar seguro de lo que va a hacer.
3. Realice modificaciones y observe

45

También podría gustarte