- ### Solución actividad 4. Avance por tiempo.

> Enunciado. Realiza un programa llamado ACTIVIDAD 4 que avance el robot durante 2 segundos y que se pare y emita un sonido durante medio segundo.

###

- ### Solución actividad 5. Ciclo por tiempo.

> Enunciado. Realiza un programa llamado ACTIVIDAD 5 que avance el robot durante 2 segundos y que vuelva a su posición inicial repitiendo el ciclo indefinidamente.

- ### Solución actividad 6. Procesos simultáneos.

  Enunciado. Realiza un programa llamado ACTIVIDAD 6 que avance el robot durante 2 segundos y que vuelva a su posición inicial repitiendo el ciclo indefinidamente, y que al mismo tiempo encienda y apague repetidamente la bombilla cada 0,5 segundos.

- ### Solución actividad 7. Avance por pulsador.

> Enunciado. Realiza un programa llamado ACTIVIDAD 7que permita avanzar el robot mientras se mantenga presionado el pulsador E8.

- ### Solución actividad 8. Posición de origen.

> Enunciado. Realiza un programa llamado ACTIVIDAD 7que que dirija al robot desde cualquier posición a su posición de origen.

- ### Solución actividad 9. Subprogramas.

> Enunciado. Realiza un programa llamado ACTIVIDAD 9, 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.

- ### Solución actividad 10. Avance hasta una posición.

Enunciado. Realiza un programa llamado ACTIVIDAD 10 que lleve el robot a su posición de origen (subprograma HOME1) y que después le avance hasta una posición distante 55 impulsos de contador desde el origen.

- ### Solución actividad 11. Avance múltiple con subprograma.

> Enunciado. Realiza un programa llamado ACTIVIDAD 11 que lleve el robot a su posición de origen (subprograma HOME1) y que después le avance hasta una posición 1 distante 55 impulsos de contador desde el origen, que espere 2 segundos y le avance de nuevo hasta una posición 2 distante 145 impulsos desde el origen. Realiza el avance mediante un subprograma (AVANZAR) que fije las posiciones (el número de impulsos) mediante la variable VAR11.

- ### Solución actividad 12. Avance y retroceso.

> Enunciado. Realiza un programa llamado ACTIVIDAD 12 que lleve el robot al origen y que después avance el robot a la posición 2 que dista 145 impulsos, que espere 2 segundos y que retroceda hasta una posición 3 distante 95 impulsos desde el origen. El retroceso se puede hacer directamente sin subprograma. Las posiciones finales (número de impulsos) se fijarán usando la variable VAR11.

- ### Solución actividad 13. Avances y retrocesos con un mismo subprograma.

> Enunciado. Realiza un programa llamado ACTIVIDAD 13 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.

###

- ### Solución actividad 14. Ciclo repetitivo con soldadura.

  Enunciado. 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). Guarda el programa como ACTIVIDAD 14. Comprueba la solución y después ejecuta tu programa para ver el resultado.

- ### Solución actividad 15. Arranque por pulsador.

> Enunciado. Crea un programa de nombre ACTIVIDAD 15 que emita un pitido durante 1 segundo después de presionar y soltar un pulsador NA (E8).

- ### Solución actividad 16. Ciclo de completo de soldadura con arranque por pulsador.

> Enunciado. Abre el programa ACTIVIDAD 15 y crea un subprograma llamado ARRANQUE basado en el programa de la actividad 15 en el que eliminaras el pitido. A continuación inserta este subprograma al comienzo del programa principal para que el robot no se ponga en funcionamiento hasta que el pulsador no se haya presionado y soltado. Guárdalo con el nombre ACTIVIDAD 16.Comprueba la solución y después ejecuta tu programa para comprobar el resultado.

- ### Solución actividad 17. Barrera de seguridad.

> Enunciado. Realiza un programa llamado ACTIVIDAD 17 que ponga en funcionamiento una barrera óptica formada por una lámpara conectada a la salida M3 y un fototransistor conectado a la entrada E3, y que cuando se interrumpa emita un pitido durante 3 segundos y haga una parada de seguridad.

- ### Solución actividad 18. ROBOT DE SOLDADURA CON BARRERA DE SEGURIDAD.

> Enunciado. Este es el programa definitivo y engloba a todos ellos. Se trata de que el robot realice el ciclo de soldadura completo partiendo desde la posición de reposo, cuando se presione el pulsador y que lo realice hasta que alguien interrumpa la barrera óptica de seguridad, momento en el cual se para toda la instalación por motivos de seguridad. Una vez creado guárdalo como ROBOT DE SOLDADURA.

- ### Solución actividad 19. Ciclo completo con programación orientada al estado.

  Enunciado. Vuelve a realizar el programa de ala actividad 14 mediante una 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:

  - Estado 0.- Origen.
  - Estado 1.- posición 1
  - Estado 2.-soldar
  - Estado 3.- posición 2
  - Estado 4.- soldar
  - Estado 5.- posición 3
  - Estado 6.- soldar
  - y vuelta a empezar.