domingo, 24 de abril de 2022

PROGRAMACIÓN SYSMAC " BLOQUE 1 : SORTEO "QUIEN HACE EL PRIMER MOVIMIENTO?"

En esta nueva entrada voy a explicar el planteamiento elegido para elegir al jugador que hace el primer movimiento. Como ya se ha comentado la programación se esta realizando con el software SYSMAC de OMRON. La idea es que el player "Humano" pulse un botón denominado "Quien saca?" en la pantalla HMI. Esta acción activara  la instrucción RANDOM que nos devuelve un valor infinito entre 0 y 1. Como solo voy a necesitar dos estados, uno para el player 1 y otro para el robot DELTA, vamos a coger como referencia que cualquier valor que salga por debajo o igual a 0.5  le va a permitir sacar al player 1 y todo valor que salga  por encima de 0.5 le va a permitir sacar al robot DELTA.

A continuación voy  a pasar a explicar este método en el programa creado:

Mediante la siguiente activando la variable de memoria "Sorteo" ejecutamos el bloque RAND que nos devuelve un número entre 0 y 1

Al activar la variable "Sorteo" ponemos el bit "set_sorteo" a 1, esta acción nos permite que el bloque RAND deje de dar números aleatorios.



En las siguientes lineas de programa hacemos una comparativa entre el valor aleatorio recibido y 0,5. Si es menor o igual "set_sorteo" se cierra y se activa la variable de memoria player_1_start. Esta se utiliza como FLAG para marcar que se ha activado un estado.

Si el valor aleatorio es superior a 0.5 entonces "set_sorteo" se pone a valor 1 y la variable de memoria "delta_start" se activa con lo que empezara el primer movimiento el robot DELTA.



Con este simple programa tenemos solucionado cual de los dos jugadores realizara el primer movimiento en la partida.






No hay comentarios:

Publicar un comentario