Paso 5: Software
Como se mencionó, el software se ejecuta en la Raspberry Pi.
El concepto principal era fácil y rápidamente desarrollar el software de control.
Desde la configuración inicial del acuario sistema ligero ocurre sólo ocasionalmente (1 - 3 veces), el aspecto del software es minimalistico: sólo la información principal que se muestra y los elementos de entrada son sólo botones que teléfono inteligente amable.
El software fue escrito en python, tkinter utiliza como la interfaz gráfica de usuario.
El programa se inicia después de las botas de Pi, lee su configuración del archivo de configuración. Para tener el tiempo exacto, la IP necesita conexión a internet (tiempo actuales viene de protocolo de tiempo de red).
Conexión remota realiza mediante protocolo vnc (virtual network computing), mediante x11vnc, no cifrado, sin contraseña, una simple pantalla remota y control.
El control de luz tiene 9 pasos de tiempo, cada paso tiene su valor de iluminancia deseado. Los puntos intermedios (entre dos puntos de referencia) se calculan con interpolación lineal.
Hay 2 interruptores de tiempo adicionales, que puede controlar para, por ejemplo. bomba de alimentación de CO2...
El software es lo que ves, todo es obvio, con todas las informaciones (es necesarias) que se muestra. La resolución base se establece en 1024 x 768 para apto para pantallas de teléfono.
El esquema de control es un controlador de integración simple con un margen de oscilación. El control de nivel de energía tiene 1000 pasos, 0.1% es el mínimo cambio en la salida, que está perfectamente bien.
Frambuesa Pi tiene hardware solamente una salida PWM, que se utiliza en este proyecto. La frecuencia PWM de máximo (con resolución de 1000 paso) es de 9600 Hz, pero experimentos del mundo real (hechos con osciloscopio) demostraron que cualquier cosa por encima de 1000 Hz es inútil (simplemente la tira de LED no es lo suficientemente rápida), realmente fue creado 960Hz.
Cuando el tiempo es igual a un valor de tiempo deseado, el programa almacena el nivel de potencia real en el archivo de configuración.
Si falla el sensor de luz, luego un LED rojo que parpadea muestra esto, pero el control de luz continúa con los datos de nivel de energía guardada anteriormente.