Introducción
Si quieres activar una salida de tu PLC Raspberry y quieres saber exactamente cuánto tiempo tardará en activarse, aprende en esta entrada del blog cómo calcular la velocidad de un ciclo de trabajo con una media de 1000 bucles!
Últimos Posts
Requisitos
RPIPLC-PYTHON3-LIB
Para hacer una prueba de velocidad de las salidas del PLC de Raspberry, necesitaremos descargar el rpiplc-python3-lib.
Puedes comprobar el Librería Python para Raspberry PLC entrada del blog para ayudarte a descargar la Librería.
Pruebas
1. Una vez instalada la Librería, vamos a crear un nuevo archivo llamado test.py:
nano test.py
2. A continuación, copia este código:
from rpiplc_lib import rpiplc
import time
def main():
rpiplc.init("RPIPLC_21")
rpiplc.pin_mode("Q0.0", 1)
rpiplc.pin_mode("Q0.1", 1)
rpiplc.pin_mode("Q0.2", 1)
rpiplc.pin_mode("Q0.3", 1)
rpiplc.pin_mode("Q0.4", 1)
rpiplc.pin_mode("A0.5", 1)
rpiplc.pin_mode("A0.6", 1)
rpiplc.pin_mode("A0.7", 1)
start = time.time()
for i in range(1000) :
rpiplc.digital_write("Q0.0", rpiplc.HIGH)
rpiplc.digital_write("Q0.0", rpiplc.LOW)
rpiplc.digital_write("Q0.1", rpiplc.HIGH)
rpiplc.digital_write("Q0.1", rpiplc.LOW)
rpiplc.digital_write("Q0.2", rpiplc.HIGH)
rpiplc.digital_write("Q0.2", rpiplc.LOW)
rpiplc.digital_write("Q0.3", rpiplc.HIGH)
rpiplc.digital_write("Q0.3", rpiplc.LOW)
rpiplc.digital_write("Q0.4", rpiplc.HIGH)
rpiplc.digital_write("Q0.4", rpiplc.LOW)
rpiplc.digital_write("A0.5", 4095)
rpiplc.digital_write("A0.5", 0)
rpiplc.digital_write("A0.6", 4095)
rpiplc.digital_write("A0.6", 0)
rpiplc.digital_write("A0.7", 4095)
rpiplc.digital_write("A0.7", 0)
end = time.time()
res = ( int(end) - int(start) ) / 1000
print(res)
if __name__ == "__main__":
main()
Explicación
En primer lugar, vamos a importar la Librería rpiplc.
A continuación, vamos a definir el modo de los pines de las salidas a 1, para establecerlos como salidas y no como entradas.
Después, haremos un bucle de 1000 veces para 1000 ciclos de trabajo.
Para medir este tiempo, obtendremos el tiempo antes de hacer el bucle, y el mismo una vez hecho. Luego, restaremos el tiempo de finalización y el de inicio, y lo dividiremos por 1000, para obtener la velocidad del ciclo de trabajo.
Finalmente, imprimiremos el resultado y ejecutaremos la función principal para ejecutar todo lo explicado.
Realiza la prueba
Ahora, ejecuta el siguiente comando para obtener la resolución de la velocidad de las salidas cuando todas ellas están funcionando:
python3 test.py
Salidas digitales
Si quieres saber la velocidad de las salidas cuando sólo están funcionando todas las salidas digitales, sólo tienes que comentar las salidas analógicas, y volver a ejecutar la aplicación.
Salidas analógicas
Y lo contrario con las salidas analógicas: Si quieres saber la velocidad de las salidas cuando sólo están funcionando todas las salidas analógicas, sólo tienes que comentar las salidas digitales, y volver a ejecutar la aplicación.