Descripción del programa de control
Servidor
Programa principal. Apaga todas las salidas. Mientras el carro no esté en la posición inicial se realizan 2 pasos hacia atrás en el PaP 3. Este ejemplo muestra como debe dividirse el proceso del PaP si se necesita realizar un control entre cada movimiento. Realiza 2 pasos, controla, y vuelve a revisar. Una vez que está ubicado en la posición de inicio, se asigna a la variable posicion el valor 1. Esta variable controla la ubicación del carro frente a los vasos. Luego llama a proceso
Proceso
Inicializa la variable vaso en el valor 1. Esta variable indica cual es el vaso que va a controlarse. Repite 4 veces la revisación del vaso, cambiando el valor del mismo para el siguiente. Es decir: revisa el vaso 1, asigna al vaso el valor siguiente, revisa el vaso 2, etc. Se llama a si mismo, para repetir el proceso de revisación en forma permanente.
Revisa
Conecta la salida 1, que enciende la luz inferior. Espera para dar tiempo a la estabilización de la misma. Controla si no hay contacto en el sensor correspondiente al vaso, si no hay contacto significa que hay un vaso colocado en esa posición. En ese caso, apaga la luz de la salida 1 y enciende la correspondiente a la salida 2 que controla el nivel. Si dicho sensor indica que hay contacto significa que la luz llega a él. Por lo tanto ordena llenar el vaso correspondiente. En ambos casos apaga la luz conectada a la salida 2.
Llenar vaso
La indicación de :vaso indica al programa que debe tomar ese valor para su utilización. Escribe el valor correspondiente a la variable vaso. Eso muestra en pantalla que vaso encontró para servir. Activa el motor PaP 3, que es el que lo posiciona frente a cada vaso.
La cantidad de pasos está determinada por la diferencia entre la posición a la que debe llegar, menos la posición en la que se encuentra. Este valor lo multiplica por 200 porque es la cantidad de pasos que necesita para moverse de una posición a la siguiente. Por ejemplo, si está en la posición 1 y debe servir el vaso 3, controla el PaP para que de (3-1)*200=400 pasos hacia adelante. Si está en la ubicación 4 y debe servir el vaso 1, realizará (1-4)*200=-600 pasos, o sea, 600 pasos en sentido inverso.
Una vez posicionado, actualiza la variable posicion para registrar el lugar donde se encuentra en ese momento. Cuando llega al lugar conecta la lámpara de la salida 1, del nivel inferior. Controla si el sensor correspondiente hace contacto. Este sistema evita que se sirva en una ubicación si durante el proceso de posicionamiento se le quitó el vaso del lugar. Si hay contacto (llega luz) significa que no hay vaso, y el proceso de llenado se detiene.
Si el vaso sigue estando en su lugar, desconecta la lámpara inferior y conecta la superior, para poder detectar el nivel del líquido. Vuelve a revisar el contacto del sensor superior, para evitar servir si el vaso fue cambiado por uno lleno.
Activa al motor PaP 4 para que realice 300 pasos, cantidad necesaria para que la botella llegue a la posición máxima. Nótese la diferencia con el cebador de mate, que necesitaba un sensor para determinar esta posición. Una de las grandes ventajas del motor PaP es que gira exactamente lo indicado. De esa manera uno sabe en cada momento en que lugar debe estar. Mientras reciba luz en el sensor correspondiente, esperará.
Una vez desaparecido el contacto en el sensor superior (el líquido llegó al nivel y tapó la luz) controla el PaP 4 para que de 300 pasos en sentido inverso, para que vuelva a la posición original. Desconecta la luz inferior y devuelve el control al procedimiento revisa.
Subir |