5.0 KiB
Despliegue En Raspberry Pi
Guia para instalar, validar y operar el dashboard en Raspberry Pi.
1. Preparar Raspberry Pi OS
Actualice el sistema:
sudo apt update
sudo apt upgrade -y
Instale herramientas base:
sudo apt install -y git build-essential i2c-tools nginx nodejs npm
Habilite I2C:
sudo raspi-config
Ruta:
Interface Options -> I2C -> Enable
Reinicie:
sudo reboot
2. Confirmar I2C
ls -l /dev/i2c-1
i2cdetect -y 1
Mapa esperado:
| Sensor | Direccion |
|---|---|
| EZO-DO | 0x61 |
| EZO-pH | 0x63 |
| EZO-EC | 0x64 |
| EZO-RTD | 0x66 |
Si aparece 0x62 y responde ?I,ORP,..., ese modulo es ORP, no DO.
No calibre sensores hasta confirmar que la comunicacion I2C es estable.
3. Clonar El Repositorio
git clone ssh://git@gitea.itmorelia.com:222/Verano-Delfin-2026/bioreactor-multiparametric-daq-shield.git
cd bioreactor-multiparametric-daq-shield
4. Instalar El Proyecto
chmod +x scripts/install-raspberry-pi.sh
sudo ./scripts/install-raspberry-pi.sh
El instalador:
- Copia el proyecto a
/opt/photobioreactor. - Ejecuta instalacion de dependencias.
- Compila
EZO_COMMANDyEZO_ACQUIRE. - Crea usuario
photobioreactor. - Agrega permisos al grupo
i2c. - Configura
/etc/default/photobioreactor. - Crea servicios
systemd. - Configura Nginx.
5. Verificar Servicios
systemctl status photobioreactor-api --no-pager
systemctl status photobioreactor-acquisition --no-pager
systemctl status nginx --no-pager
Ver modo:
curl http://127.0.0.1:3000/api/system/ezo
En produccion debe indicar hardware.
6. Abrir Dashboard
Desde una computadora en la misma red:
http://IP_DE_LA_RASPBERRY/frontend/index.html
Para saber la IP:
hostname -I
7. Configurar Sensores Habilitados
Edite:
sudo nano /opt/photobioreactor/config/runtime.json
Tres sensores conectados:
{
"loggingRateSeconds": 5,
"historyRetentionDays": 30,
"enabledSensors": [
"temperature",
"ph",
"ec"
]
}
Cuatro sensores:
{
"loggingRateSeconds": 5,
"historyRetentionDays": 30,
"enabledSensors": [
"temperature",
"ph",
"do",
"ec"
]
}
Reinicie adquisicion:
sudo systemctl restart photobioreactor-acquisition
8. Validar Sensores Individualmente
Antes de ejecutar comandos manuales, detenga el recolector:
sudo systemctl stop photobioreactor-acquisition
sudo rm -f /tmp/photobioreactor-i2c.lock
Identificar pH:
/opt/photobioreactor/sensors/EZOCommand/EZO_COMMAND /dev/i2c-1 0x63 300 i
/opt/photobioreactor/sensors/EZOCommand/EZO_COMMAND /dev/i2c-1 0x63 300 Status
/opt/photobioreactor/sensors/EZOCommand/EZO_COMMAND /dev/i2c-1 0x63 1000 R
/opt/photobioreactor/sensors/EZOCommand/EZO_COMMAND /dev/i2c-1 0x63 300 Cal,?
Cambie la direccion segun el sensor:
| Sensor | Direccion |
|---|---|
| DO | 0x61 |
| pH | 0x63 |
| EC | 0x64 |
| RTD | 0x66 |
Reinicie adquisicion despues:
sudo systemctl start photobioreactor-acquisition
9. Revisar Datos
cat /opt/photobioreactor/data/EZORTD.json
cat /opt/photobioreactor/data/EZOPH.json
cat /opt/photobioreactor/data/EZODO.json
cat /opt/photobioreactor/data/EZOEC.json
tail /opt/photobioreactor/logs/temperature.csv
tail /opt/photobioreactor/logs/ph.csv
tail /opt/photobioreactor/logs/do.csv
tail /opt/photobioreactor/logs/ec.csv
10. Prueba De Estabilidad
Arranque limpio:
sudo systemctl stop photobioreactor-acquisition
sudo rm -f /tmp/photobioreactor-i2c.lock
sudo systemctl start photobioreactor-acquisition
Revise logs:
journalctl -u photobioreactor-acquisition --since "10 minutes ago" -l --no-pager
Monitoreo en vivo:
journalctl -u photobioreactor-acquisition -f
Salir:
Ctrl + C
Recomendacion de tiempo:
| Duracion | Uso |
|---|---|
| 15 minutos | Prueba rapida |
| 1 hora | Prueba inicial seria |
| 4 horas | Estabilidad de bus y alimentacion |
| 8 a 12 horas | Prueba fuerte de laboratorio |
| 24 horas | Validacion previa a operacion continua |
11. Calibracion
Use soluciones de referencia vigentes y espere estabilizacion fisica de cada sonda.
Resumen:
- RTD:
Cal,<temperatura>. - pH:
Cal,mid,7.00, luegoCal,low,4.00, luegoCal,high,10.00. - DO:
Cal,0y luegoCal. - EC:
K,<valor>,Cal,dry, luego puntos humedos.
Detalle completo:
docs/EZO_COMMANDS.md
12. Seguridad Minima
Edite:
sudo nano /etc/default/photobioreactor
Configure:
API_AUTH_TOKEN=un_token_largo_y_privado
Reinicie API:
sudo systemctl restart photobioreactor-api
No exponga el dashboard directamente a Internet.
13. Apagado Seguro
Para detener adquisicion:
sudo systemctl stop photobioreactor-acquisition
Para apagar Raspberry:
sudo shutdown now
14. Diagnostico
Si algo falla, consulte:
docs/TROUBLESHOOTING.md