Manual de Usuario - Datapek

Proyecto con Raspberry Pi para monitorear movimientos de caninos

¿Qué es Datapek?

Datapek es un proyecto desarrollado dentro del marco del proyecto Tzuku por la Facultad de Matemáticas de la Universidad Autónoma de Yucatán en el que se busca monitorear diferentes acciones de los caninos por medio de sensores conectados a una Raspberry Pi Zero, esta se encarga de recolectar diversos datos como la temperatura corporal, el movimiento de la cola, los sonidos que produce y los movimientos que realiza.

¿Cómo se ve Datapek?

Actualmente Datapek cuenta con un modelo, mismo que se muestra a continuación:

Datapek visto de frente Datapek visto desde arriba Datapek visto desde la derecha Datapek visto desde la izquierda

Primeros pasos con Datapek

Instalación del Firmware

Sigue estos pasos para instalar y configurar el firmware en tu Raspberry Pi:

Preparación de la Tarjeta SD

  1. Grabar la imagen del sistema operativo:
    • Descargue y abra el Raspberry Pi Imager en su computadora personal.
    • Dentro del programa Raspberry Pi imager presione la combinación de teclas CTRL + SHIFT + X de modo que se desplegará una nueva ventana llamada "Personalizacíon del SO"
    • Menú Personalización del SO dentro RPI imager
    • Ingrese todos los datos tal como se muestran en la imágen superior, excepto los ajustes regionales, puede usar la contraseña que usted desee, se sugiere usar la contraseña datapek2024 tanto para usuario como para SSID.
    • Seleccione la pestaña "Servicios" dentro de la ventana activa y asegurese de tener activas las casillas de "Activar SSH" y "Usar autenticación por contraseña". Una vez hecho seleccione el botón guardar.
    • Habilitar SSH mediante la personalización del SO dentro RPI imager
    • Seleccione el dispositivo "Raspberry Pi Zero" y grabe la imagen en una tarjeta SD.
    • Seleccione el sistema operativo "Raspberry Pi OS (Legacy, 32-bit): A port of Debian Bullseye with security updates and desktop environment".
    • Ingrese su tarjeta micro SD y en la tercera opción, seleccione su tarjeta micro SD para grabar la imagen en dicha tarjeta, tome en cuenta que los datos que tenía esta micro SD se borrarán, se aconseja hacer un respaldo de los mismos.
  2. Descargar Termux:
    • Descargue e instale la aplicación Termux desde Google Play Store.
    • Abra Termux y actualice los paquetes con los siguientes comandos:
    • pkg update && pkg upgrade
    • Instale el paquete de OpenSSH:
    • pkg install openssh
  3. Conexión SSH:
    • Desde su teléfono celular abra la configuración, seleccione Redes móviles > Zona Wi-Fi personal y cambie el nombre del dispositvo a wifi_datapek y la contraseña a datapek2024. Una vez hecho encienda su Zona Wi-Fi personal. Luego innserte la tarjeta SD en su Raspberry Pi Zero y enciéndala.
    • Busque la dirección IP de su Raspberry Pi Zero en su red, en algunos teléfonos móviles puede consultar los dispositivos conectados a su zona Wi-Fi personal, en caso contrario descargue la aplicación Fing (disponibles desde Play Store y AppStore) en otro dispositivo y conéctese a la zona móvil para conocer la dirección IP de su Raspberry Pi Zero.
    • Una vez que sepa la dirección IP de su Raspberry PI Zero, conéctese por SSH desde Termux ingresando el siguiente comando
    • ssh datapek@[IP DE LA RASPBERRY]

      sustituyendo [IP DE LA RASPBERRY] por la IP que encontró previamente.

    Una vez dentro de la Raspberry Pi Zero, es necesario actualizar los paquetes, para ello usaremos el comando sudo apt update && sudo apt upgrade -y


Configuración de Virtual Network Computing (VNC)

Primero tenemos que saber para que querríamos activar esta opción, esta opción nos permite el acceso remoto a la interfaz gráfica de usuario (GUI) de la Raspberry Pi desde otra computadora. Esto es útil para controlar la Raspberry Pi sin necesidad de conectar un monitor, teclado y ratón directamente

1. Instalar RealVNC

Use el siguiente comando desde su Raspberry Pi Zero para descargar RealVNC:

sudo apt-get install realvnc-vnc-server

2. Activar VNC desde raspi-config

Ingrese el comando:

sudo raspi-config

Debe poder ver una pantalla como la siguiente:

menú de sudo raspi-config

Navegue a Interfacing Options -> VNC y selecciona Enable.

Sin salir del menú de configuración de la Raspberry Pi, navegue a System Options -> Boot / Auto Login -> Desktop / CLI y seleccione la opción B4 Desktop GUI, automatically logged in as 'datapek' user.

3. Reiniciar el servicio VNC

Asegúrese de que el servicio VNC está corriendo con los siguientes comandos:

sudo systemctl start vncserver-x11-serviced.service
sudo systemctl enable vncserver-x11-serviced.service

4. Conectar al VNC Server

Desde su computadora, use un cliente VNC (como RealVNC Viewer) para conectarse a la dirección IP de tu Raspberry Pi.

Abra RealVNC Viewer e introduzca la dirección IP de su Raspberry Pi para conectarse.

Ingrese el usuario y contraseña que configuró para conectarse por SSH y presione el botón continuar.

Reinicie y debe ser capaz de visualizar un escritorio como el siguiente:

Escritorio de Raspberry en modo Headless por medio de VNC

Habilitar opciones necesarias

Abra el menú de Configuración con el comando:

sudo raspi-config

Navegue a interface options y habilite las siguientes opciones:

Reinicie su Raspberry con:

sudo reboot

Obtener scripts

Reconéctese a la Raspberry Pi y clone el repositorio de Datapek:

git clone https://github.com/jorge-riosmartinez/datapek_docs.git

Diagnóstico

Ejecutar el diagnóstico que permite conocer el funcionamiento de los sensores:

Esto lo puede hacer entrando al repositorio que recién clonó de Datapek y ejecutando el script diagnostico.py con los siguientes comandos:

cd datapek_docs
python firmware/utils/diagnostico.py

Uso de su Datapek configurado

Para iniciar la recolección de datos, es necesario usar el script adquisicion_datos.py. Dicho script toma los siguientes argumentos:

-n, --nombre_perro: Nombre del perro
-p, --prueba: nombre de la prueba, por ejemplo juguete
-d, --duracion: duracion de la prueba en segundos
--imu: activa la recolección de datos del IMU
--camara: activa la grabacion de video de la camara
--audio: activa la grabacion de audio del microfono
--temperatura: activa la recolección de datos del sensor ds18b20

Las salidas del script son:

Asegúrese de conectar el sensor de temperatura a su Datapek antes de usar el script de diagnóstico.

Para la ejecución del script de adquisición de datos asegúrese de encontrarse dentro del repositorio clonado de Datapek y use el siguiente comando::

python firmware/adquisicion_datos.py -n doug -p test -d 10 --imu --camara --audio --temperatura

Con este comando se creará una nueva carpeta llamada "doug" en el directorio actual, esta carpeta contendrá la carpeta test y dentro se guardarán los archivos resultantes de las pruebas de los sensores.

Puede cambiar el nombre del perro y de la carpeta test.

Los argumentos relacionados con los sensores (--imu --camara --audio --temperatura) son opcionales, pueden elegirse únicamente los de interés para la prueba.

Finalmente, los datos obtenidos se pueden encontrar en:

datapek_docs/doug/test