Soluciones de las actividades

 

 

Programación del robot de soldadura.

Realiza un programa que avance el robot durante 2 segundos y que se pare y emita un sonido durante medio segundo.

 

 

 

 

 

Realiza un programa que por cada presión en el pulsador de entrada E8 el robot avance un diente de la ruleta de contador (detección de flanco de subida de E2).

 

 

Realiza un programa que lleve el robot desde cualquier posición a su posición origen (HOME) fijada por la entrada E1

 

 

Realiza un programa que en primer lugar lleve el robot a su posición de origen, mediante un subprograma llamado HOME1, y que después permita avanzar al robot siempre que se mantenga presionado el pulsador E8.

 

 

 

 

 

 

 

 

 

Realiza un programa que lleve el robot a su origen y desde allí avance el robot a la posición 1 distante 55 impulsos, espere 2 segundos, avance a la posición 2 distante 145 impulsos del origen, espere 2 segundos y retroceda a la posición 3 distante 95 impulsos del origen. Las 3 posiciones se deben alcanzar mediante un único subprograma (POSICIONAR) que detecte si una posición nueva (fijada por VAR11) es igual, mayor o menor que la anterior alcanzada ( guardada en Z2) en cuyo caso no se moverá, avanzará o retrocederá el robot hasta la posición indicada por VAR11.

 

 

Sobre el programa anterior vamos realizar un programa que repita el ciclo completo desde el origen y vamos a sustituir el tiempo de espera se 2 segundos por un subprograma (SOLDAR) que durante los 2 segundos simule el efecto de soldar creando una intermitencia que encienda 0,1 segundos la lámpara (M2) y la apague otros 0,1 segundos. (Para el contador de soldadura utiliza la VAR 4).

 

 

 

Vuelve a realizar el programa anterior mediante la programación orientada al estado. Es decir, los subprogramas HOME1, POSICIÓN y SOLDAR solo aparecerán una vez en el programa y se accederá a ellos en función de una variable (VAR1) que vaya marcando los distintos estados:

 

 

Sobre el programa anterior añade una parada de emergencia que entre en funcionamiento cuando se presione el pulsador E8 y una pantalla donde se visualice en todo momento la posición del robot expresada en impulsos desde el origen (Z2).

 

 

 

Sobre el programa de la actividad 11:Fija las tres posiciones del robot mediante los parámetros EA, EB y EC del terminal. Visualiza en un display el estado por el que pasa el programa en cada momento. Muestra el mensaje robot soldando durante el tiempo que dure la soldadura y por último  añade al programa un reset que entre en funcionamiento al accionar el pulsador E8.

 

 

Realiza un programa que después de colocar el robot en su posición de origen lo haga avanzar  al presionar la entrada E22 del terminal. El programa también debe contar y mostrar los impulsos (flancos) que la rueda dentada al girar produce sobre la entrada E2. (Utilizar como  variable contador Z2).

 

4. Programación del robot de brazo plegable.

 

Realiza un programa que lleve a la posición de origen todas las articulaciones simultáneamente. (No es necesario realizar subprogramas).

 

 

Realiza un programa que para cada articulación del robot y de modo independiente la coloque  en su origen y  la haga avanzar  al presionar las respectivas entradas E22, E23, E24, E25  del terminal. El programa también debe contar y mostrar los impulsos (flancos) que las ruedas al girar producen sobre cada entrada E2, E4, E6 y E8 respectivamente. (Utilizar como  variables de cuenteo Z2, Z4, Z6 y Z8 respectivamente).

 

 

 

 

 

Realiza un programa que: coloque la articulación 2 y a continuación la 1 en sus posiciones de origen (subprogramas HOME2 y HOME1), y que después mediante un subprograma (POSICIONAR) lleve simultáneamente las articulaciones 1 y 2 a las posiciones indicadas en la tabla siguiente expresada en impulsos desde el origen:

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12

1

60 50

La posición de la articulación 1 se fijará mediante la variable VAR11 y la de la articulación 2 mediante la variable  VAR12.

 

 

 

Basándonos en el programa de la actividad anterior. Realiza un programa que coloque en sus orígenes las articulaciones 3, 2 y 1 en ese orden (HOME3, HOME2, HOME1) y que después mediante el subprograma POSICIONAR lleve las tres articulaciones simultáneamente a las posiciones indicadas en la tabla siguiente expresada en impulsos desde el origen:

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12 Articulación 3 (Codo) VAR13

1

60 50 114

La posición de la articulación 1 se fijará mediante la variable VAR11, la de la articulación 2 mediante la variable  VAR12 y la de la articulación 3 mediante VAR13.

 

 

 

 

 

A partir del programa anterior realiza un programa que coloque todas las articulaciones en sus orígenes, empezando por PINZA_ABIERTA y siguiendo con el orden anterior, que después lleve el robot a la misma posición anterior indicada en la tabla  y una vez allí cierre la pinza 25 impulsos.

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12 Articulación 3 (Codo) VAR13 Pinza EA

1

60 50 114 Cerrada 25

El cierre de la pinza hay que hacerlo mediante un subprograma (PINZA_CERRADA), en el que el valor de cierre (25) será fijado directamente mediante el parámetro EA del TERMINAL.

 

 

A partir del programa anterior, realiza un programa secuencial (como actividad 10) que desplace el robot cíclicamente desde la posición de origen a la posición 1  seguido de cierre de pinza  y después a la posición 2 seguido de apertura de pinza. Las posiciones están indicadas en la tabla siguiente expresadas en  impulsos que dista cada articulación del origen.

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12 Articulación 3 (Codo) VAR13 Pinza EA

1

60 50 114 Cerrada 25
2 110 80 80 Abierta

 

Esta solución tiene un problema y es que las articulaciones 2 y 3 no las posiciona en el punto espacial que determinarían los valores finales de las variables VAR11 y VAR12, sino en sus puntos medios. Esto se debe a que el subprograma POSICIONAR contiene las secuencias de las articulaciones 2 y 3 con estructura de secuencia principal (empieza por arranque) y el programa las ejecuta como si estuvieran fuera del subprograma a pesar de estar editadas en su interior. De modo que al repetir el subprograma POSICIONAR dentro del programa, se  procesan  dos veces de manera simultanea cada una de las secuencias de las articulaciones 2 y 3 , y por lo tanto se repiten los bloques posicionar, con lo que las variables Z4 y Z6 se incrementan o decrementan de dos en dos por cada impulso de la rueda del motor, y esto hace  que cuando se haya alcanzado el valor final de posición de cada articulación, dichas articulaciones  se encuentran a medio camino de su posición final.

Para evitar este problema el subprograma posicionar solo debe contener la secuencia de la articulación 1, y las secuencias de las articulaciones 2 y 3 deben estar una única vez en el programa principal. El programa sería:

Solución 20.1

 

 

 

Realiza el mismo ciclo de trabajo de la actividad anterior, pero realizando una programación orientada al estado (como en actividad 11). Los estados son: 0.- Orígenes, 1.- Posición 1, 2.- Pinza cerrada, 3.- Posición 2, 4.- pinza abierta.

 

 

 

Realiza un programa para que el robot coja repetidamente un barril desde la posición 1 y lo deje en la posición 2. Para ello el robot  siempre partirá desde la posición de origen, se dirigirá a la posición 1, cogerá el barril,  desplazará la articulación 3 hasta su origen sin variar las otras articulaciones, y se dirigirá a la posición 2 donde abrirá la pinza y empezará de nuevo el ciclo.

Las posiciones están indicadas en la tabla siguiente expresadas en  impulsos que dista cada articulación del origen.

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12 Articulación 3 (Codo) VAR13 Pinza EA

1

60 50 114 Cerrada 25
2 110 80 114 Abierta

 

 

 

Realiza un programa para que el robot tome un barril desde la posición 1 y lo coloque en la posición 2, que a continuación  recoja  un segundo barril de una posición 3  y lo apile encima de del primer barril (posición 4).

Posición Articulación 1 (Cintura) VAR11 Articulación 2 (Hombro) VAR12 Articulación 3 (Codo) VAR13 Pinza EA

1

60 50 114 Cerrada 25
2 110 80 114 Abierta
3 180 80 114 Cerrada 25
4 109 18 86 Abierta

 

Recuerda en cada ciclo debe partir de la posición de origen y que para abandonar las posiciones 1, 2 y 3 es necesario desplazar la articulación 3  hasta su posición de origen.

 

 

 

Realiza un programa para que el robot tome un barril desde la posición 1 y lo coloque en la posición 2, que a continuación  recoja  un segundo barril de una posición 3  y lo apile encima de del primer barril (posición 4). A continuación coloca el segundo barril en la posición 1 y el primer barril en la posición 2.

 

 

 

volver a Inicio