seccion ii

8
SECCION II: AREA DE SOLDADURA Y SELLADO En esta sección se realizan las siguientes tareas: 1. Vertido del ácido en la caja 2. Soldadura de bornes y terminales de las placas 3. Sellado de la batería La sección programada en RobotStudio simula el proceso de soldadura y de vertido de ácido, se supone que existe un tercer elemento que se encarga del sellado. Declaración de intenciones: La idea que se pretende desarrollar en esta sección es la implementación de una estación de trabajo en la que un robot es capaz de realizar dos tareas utilizando herramientas diferentes, por tanto el robot debe realizar el cambio de herramienta a la hora de cambiar de tarea. Descripción del proceso: Sobre una cinta transportadora, llegan cajas de baterías que ya previamente (en la estación anterior, han sido colocadas las celdas de batería en cada caja, el conjunto caja+celdas (6 celdas) avanza por la cinta transportadora hasta que es interceptado por el sensor de la estación II (estación de trabajo) una vez que el robot recibe la señal emitida por el sensor, inicia la tarea 1: 1. Coger herramienta 1 y avanzar hasta una posición predeterminada sobre la pieza ( Caja de batería). 2. Situarse sobre la pieza y realizar la soldadura de los bornes de las celdas. 3. Dejar la herramienta 1 en su ubicación por defecto (posición home de la herramienta). Una vez que el robot deja la herramienta 1, tiene que llevar a cabo la tarea 2: 1. Ir a la posición de la herramienta 2 y cogerla 2. Avanzar hasta la pieza y situarse en una posición predeterminada sobre la pieza 3. Para verter el ácido, el robot debe realizar una trayectoria en vertical hacia abajo con la herramienta

Upload: ichaicoto

Post on 30-Jun-2015

198 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: SECCION II

SECCION II: AREA DE SOLDADURA Y SELLADO

En esta sección se realizan las siguientes tareas:1. Vertido del ácido en la caja 2. Soldadura de bornes y terminales de las placas3. Sellado de la batería

La sección programada en RobotStudio simula el proceso de soldadura y de vertido de ácido, se supone que existe un tercer elemento que se encarga del sellado.

Declaración de intenciones:

La idea que se pretende desarrollar en esta sección es la implementación de una estación de trabajo en la que un robot es capaz de realizar dos tareas utilizando herramientas diferentes, por tanto el robot debe realizar el cambio de herramienta a la hora de cambiar de tarea.

Descripción del proceso:

Sobre una cinta transportadora, llegan cajas de baterías que ya previamente (en la estación anterior, han sido colocadas las celdas de batería en cada caja, el conjunto caja+celdas (6 celdas) avanza por la cinta transportadora hasta que es interceptado por el sensor de la estación II (estación de trabajo) una vez que el robot recibe la señal emitida por el sensor, inicia la tarea 1:

1. Coger herramienta 1 y avanzar hasta una posición predeterminada sobre la pieza ( Caja de batería).

2. Situarse sobre la pieza y realizar la soldadura de los bornes de las celdas.3. Dejar la herramienta 1 en su ubicación por defecto (posición home de la

herramienta).

Una vez que el robot deja la herramienta 1, tiene que llevar a cabo la tarea 2:1. Ir a la posición de la herramienta 2 y cogerla2. Avanzar hasta la pieza y situarse en una posición predeterminada sobre la pieza3. Para verter el ácido, el robot debe realizar una trayectoria en vertical hacia abajo

con la herramienta de vertido, luego pararse e iniciar el vertido de ácido en la caja.

4. Llevar la herramienta hasta su posición home y soltarla.

Una vez dejado la herramienta 2, el sistema debe enviar una señal para desactivar el sensor, permitiendo así que la pieza interceptada pueda continuar su avance sobre la cinta transportadora y que una nueva pieza pueda avanzar hasta ser interceptada por el sensor, a partir de ahí, se repetiría el proceso descrito anteriormente de forma cíclica.

Estrictamente hablando, para completar los objetivos de esta sección, sería necesario o bien un tercer robot que se hiciera cargo de la tarea de sellado, que implica colocar la tapa de la batería y hacer la soldadura de los bornes o terminales Positivo y Negativo de la batería; si no se utiliza un segundo robot en la estación de trabajo, entonces el único robot, tendría que manejar tres herramientas lo cual podría ser una sobre carga. Por lo tanto, ahí entrarían en juego los conceptos de eficiencia,

Page 2: SECCION II

productividad y coste, que son decisiones a tomar por el personal ejecutivo o la gerencia.

TRABAJO REALIZADO:

De la declaración de intenciones que recoge los objetivos perseguidos, a continuación se describen los objetivos alcanzados durante el desarrollo de la célula robotizada.

1. Para conseguir el cambio de herramientas, se ha implementado un componente inteligente de RobotStudio (Smart Component), este componente cuenta con una serie de subcomponentes (child components) interconectados. El nombre del componente es Cambiador, y cuenta con los siguientes subcomponentes:

Dos componentes Attacher: Se encarga de acoplar la herramienta que tenga indicada como Child al extremo del robot que tenga asignado como Parent.

Dos componentes Detacher: Se encarga de desacoplar la herramienta que tenga asignada como Child.

Dos puertas lógicas tipo And (LogicGate) con entradas A y B: Utilizada para evitar que Attacher y detacher puedan entrar en conflicto, en una de las entradas, está conectado el pulsador de Soltar y en la otra entrada, está la salida del RSLatch que bloquea el estado de Agarrar.

o Explicación: Al accionar el pulsador llamado Agarrar, se ejecuta el attacher y el robot tiene la herramienta, como el pulsador no guarda su valor, este se guarda haciendo un Set con el SRLatch, esto ayudará a saber que la herramienta está cogida por el robot y por tanto tendrá sentido accionar el pulsador de Soltar. Si se acciona este pulsador, la puerta lógica dará un 1 a su salida (un 1 del estado Set que indica que la herramienta está acoplada AND 1 que llega del pulsador), la salida de la puerta lógica activará el Detacher y la herramienta quedará desacoplada del robot, una vez que se ejecuta el Detacher, se resetea el RSLatch.

Dos SRLatch (Pestillo Set-Reset): Se encarga de bloquear una señal en cualquiera de los estados Set o Reset.

Externamente el “Cambiador” puede ser manipulado mediante 4 pulsadores:- Agarrar- Soltar- Agarrar2- Soltar2También cuenta con dos salidas que nos indican cuando las herramientas 1 y 2 están acopladas (señales Tool1On, Tool2On).

La idea del uso de este componente es, acercar el robot todo lo posible a la base de la herramienta y entonces mediante señales accionar el pulsador para agarrar. Para soltar,

Page 3: SECCION II

basta con mover el robot hasta la posición donde debe dejar la herramienta y accionar el pulsador de soltar.

2. Para conseguir el movimiento de las cajas de batería sobre la cinta, simulando que vienen de la estación anterior, se ha desarrollado un componente inteligente llamado TheFeeder (El Alimentador) dicho componente cuenta con los siguientes componentes hijos: Alimentador: Simplemente es una cinta transportadora sobre la que se

moverán las cajas. Elemento Source: Componente para indicar a robotstudio la pieza que se

quiere mover sobre una cinta. Elemento Queue: Componente para crear una cola de espera, ya que la

técnica utilizada por el programa, es hacer copias del elemento Source. Dos componentes PlaneSensor: Utilizados para detectar la presencia de la

pieza. Dos componentes LinearMover: Utilizados para hacer que las sucesivas

copias de la cola (Queue) se muevan en linea recta hacia la dirección indicada.

Un Componente LinearMover2: Que mueve los elementos hacia la dirección indicada pero hasta una distancia predeterminada.

Cinco señales para poder conectar el alimentador a otros elementos de la estación y poder activar y desactivar sus componentes desde un programa rapid:

o Botón BoxIn, para generar piezaso Salida Sensing Box, Se activa cuando el PlaneSensor 1 está en

contacto con alguna caja. Así sabemos que hay una pieza para soldar y verter ácido en ella.

o Entrada Activar Avance, Se activa activa desde rapid, cuando se ha terminado con una pieza, está avanzará hacia la próxima estación gracias a esta señal.

o Entrada Activar Sensor, Una señal utilizada para apagar o encender el PlaneSensor 1. Si se desactiva, las piezas pueden avanzar para así poder ser interceptadas por el siguiente sensor.

3. Herramientas: Herramienta de RobotStudio: Para la soldadura, se ha utilizado una

herramienta de la librería de RobotStudio, el Arc Welding Gun (Pistola de soldadura por arco).

Herramienta creada: Para el vertido de ácido, se ha diseñado una pieza en un programa externo (3D Studio Max) y se ha importado a RobotStudio como una geometría, y luego se ha creado una herramienta a partir de esta geometría. Nombre de la herramienta: Acid_Pump.

Otros elementos creados: Un objeto diseñado en el programa SolidWorks, para simular el soporte donde están colocadas las herramientas, ha sido importado como archivo ACIS que tienen por extensión (.sat) que es uno de los formatos de importación soportados por RobotStudio. también se ha

Page 4: SECCION II

creado una caja de batería utilizando las herramientas de modelado de RobotStudio, aunque posteriormente se ha hecho un diseño mejorado de caja con celdas utilizando SolidWorks.

o Nombre del soporte: Apoyoo Nombre de la caja de batería: Caja.o Nombre de la caja con celdas: Batería.

4. Programación y Simulación

Se han creado todas las trayectorias necesarias para coger las herramientas, dejarlas realizar la soldadura y verter el ácido. 5 trayectorias en total. La mayoría de los objetivos de las trayectorias han sido creadas utilizando el método teach target

Se ha creado una tarjeta (Unit) de entradas y salidas para el sistema virtual del robot (VC), Nombre de la Tarjeta: DAQ0Tipo de Unidad: Virtual, conectada al bus Virtual1

Entradas: E1 E2 E3 E4 *Mapeadas del 1 al 4 y con nivel de acceso totalSalidas: S1,S2,S3,S4 *Mapeadas del 5 al 8 y con nivel de acceso total.

Se han realizado las siguientes conexiones utilizando Station Logic:

La señal S1 del sistema conectada al Pulsador “Agarrar” del CambiadorLa señal S2 del sistema conectada al Pulsador “Soltar” del CambiadorLa señal S3 del sistema conectada al Pulsador “Agarrar2” del CambiadorLa señal S4 del sistema conectada al Pulsador “Soltar2” del Cambiador.

Se han insertado diversas instrucciones de Rápid en el código para conseguir los resultados obtenidos, a continuación se muestran fragmentos de código relevantes.----------------------------------------------------------------------------------------------------PROC Main()Path_10;WaitTime 2;Path_20;WaitTime 2;Path_30;WaitTime 2;Path_40;WaitTime 5;Path_50;ENDPROC---------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------PROC Path_10()

MoveJ Target_10,v500,z100,tool0\WObj:=wobj0;MoveL Target_20,v500,z100,tool0\WObj:=wobj0;MoveL Target_30,v500,z100,tool0\WObj:=wobj0;

Se realizan retardos antes de ejecutar cada trayectoria, simplemente para no ver la simulación de forma brusca.

Se combinan instrucciones MoveL y MoveJ para facilitar al robot el desarrollo de la trayectoria.

Se pone a 1 la salida S1 conectada al cambiador para coger la herramienta 1

Page 5: SECCION II

MoveL Target_40,v500,z100,tool0\WObj:=wobj0;MoveL Target_50,v500,z100,tool0\WObj:=wobj0;MoveJ Target_60,v500,z100,tool0\WObj:=wobj0;MoveL Target_60,v500,z100,tool0\WObj:=wobj0;Set S1;WaitTime 2;MoveJ Target_70,v500,z100,tool0\WObj:=wobj0;MoveL Target_80,v500,z100,tool0\WObj:=wobj0;

ENDPROC--------------------------------------------------------------------------------------------------------------------------------------------PROC Path_30()

MoveJ Target_220,v1000,z100,tool0\WObj:=wobj0;MoveL Target_230,v1000,z100,tool0\WObj:=wobj0;MoveL Target_240,v1000,z100,tool0\WObj:=wobj0;MoveL Target_250,v1000,z100,tool0\WObj:=wobj0;MoveL Target_60,v1000,z100,tool0\WObj:=wobj0;WaitTime 2;Set S2;

ENDPROC

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------PROC Path_40()

MoveJ Target_60,v1000,z100,tool0\WObj:=wobj0;MoveJ Target_260,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_270,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_280,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_290,v1000,z100,tool0\WObj:=Tool2;MoveL Target_300,v1000,z100,tool0\WObj:=Tool2;WaitTime 4;Set S3;MoveJ Target_310,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_320,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_330,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_340,v1000,z100,tool0\WObj:=Tool2;

ENDPROC

----------------------------------------------------------------------PROC Path_50()

MoveJ Target_350,v1000,z100,tool0\WObj:=Tool2;MoveJ Target_360,v1000,z100,tool0\WObj:=Tool2;MoveL Target_300,v1000,z100,tool0\WObj:=Tool2;WaitTime 3;Set S4;

Reset S1;Reset S2;Reset S3;Reset S4;

ENDPROC

Se hace un retardo al llegar a la posición donde se debe dejar la herramienta y se activa S2 para Soltarla.

Aquí se hace un retardo antes de coger la herramienta porque por alguna razón que no he descubierto *(ver nota al pie), el robot cogía la herramienta antes de llegar a la posición o la soltaba antes de llegar al punto adecuado; haciendo un retardo, aseguraba que el robot llega a la posición y entonces el resultado de agarrar o soltar la herramienta era más realista.

Las sucesivas señales activadas permanecen activadas y al final del ciclo, es necesario prepararlas para el siguiente ciclo, de ahí los reset.

Al igual que se ha explicado en el bloque anterior, el robot se apresuraba en dejar la herramienta antes de llegar al punto adecuado, el problema se ha resuelto con el retardo de 3 segundos antes de soltar.

*Una posible causa del problema de dejar la herramienta antes de llegar a la posición objetivo, puede ser debido al uso combinado de instrucciones MoveL e Instrucciones MoveJ ya que el tiempo de trayectoria para cada tipo de instrucción no es el mismo.

Page 6: SECCION II

5. Dificultades encontradas

Además de los problemas ya comentados más arriba, otros problemas encontrados durante el desarrollo del trabajo son entre otros:

a) Para Simular el sensor de presencia de cajas, primero era necesario crear un sistema alimentador que moviera las cajas sobre la cinta. La manera de conseguir esto es mediante la creación de un componente inteligente que tuviera como subcomponentes