Skip to content

El servidor se conecta un robot con usuario por medio de un navegador web usando protocolo Websocket (Socket IO). El usuario envia comando de control mientras que el robot envia datos de sensores y la imagen de la camara. El cliente tambien tiene un sistema de autenticación usando una base de datos Moongo DB en ATLAS.

License

Notifications You must be signed in to change notification settings

LASER-UD/Iot-for-monitoring-and-remote-control-of-robots

Repository files navigation

Monitoreo y Control de Robot via Internet

Este proyecto consiste el desarrollo y la configuración para el despliegue de un servidor con NodeJS, el cual sirva como puente de comunicación entre un robot con conexión a internet y un cliente, conectado a una pagina web o una aplicación web. Los canales de comunicación se desplegaran con websocket, gracias a que mantiene una conexión persistente y permite el envió de video codificado. el cual tenga la capacidad de moverse en todas las direcciones, subir rampas, pasar túneles, transmitir vídeo, enviar su ubicación en su entorno según sensores de distancia, tomar y lanzar una pelota. El proyecto incorpora una Rasberry pi 3, PSOC 5 LP, una camara USB y una estructura impresa en 3D.

Pasos para ejecutar servidor (AWS)

  1. Clonar el repositorio $ cd home/pi/Documents/ $ git clone https://github.com/LASER-UD/Iot-for-monitoring-and-remote-control-of-robots
  2. Instalar archivos: $ sudo npm install
  3. Ejecutar pm2 por primera vez cliente: $ sudo pm2 start nombre.py interpreter==/usr/bin/python3.7 $ sudo pm2 save
  4. Ejecutar pm2 servidor: $ cd home/pi/Documents/Iot-for-monitoring-and-remote-control-of-robots/bin $ sudo pm2 www $ sudo pm2 save $ sudo pm2 clean www

Posibles Errores

  1. Detener Proceso desde terminal en caso de perder conexion ssh:
    • Ver el numero del proceso $ sudo fuser -n tcp 80
    • Copiar el numero del proceso: ejemplo 122
    • $ sudo kill -9 122
  2. Nginx no arranca
    • Eliminar Nginx: $ sudo apt-get remove nginx nginx-common
    • Eliminar Nginx: $ sudo apt-get purge nginx nginx-common
    • Intalar de nuevo : $ sudo apt-get install nginx
  3. Actualizacion de paquetes
    • Actualizar package-lock.json: $ sudo npm install
    • Si hay error en versiones de paquetes:
    • $ sudo npm install -g yarn
    • $ sudo npm install yarn
    • $ sudo yarn install
    • $ sudo yarn upgrade
    • Ver el reporte de actualizaciones: $ sudo npm audit
  4. Revisar las notificaciones del servidor
    • Mira el estado y los identificadores de cada proceso: $ sudo pm2 status
    • Revisa las notificaciones del proceso 1: $ sudo pm2 log 1
    • Detiene el proceso: $ sudo pm2 stop 1
    • Inicia el proceso: $ sudo pm2 start 1
    • Reinicia el proceso: $ sudo pm2 restart 1
  • Nota: los archivos de error o de conexión se configuran en la configuracion de nginx
    • cambiar permisos de camara y puerto $ sudo chmod 777 /dev/ttyACM0 $ sudo chmod 777 /dev/video0

About

El servidor se conecta un robot con usuario por medio de un navegador web usando protocolo Websocket (Socket IO). El usuario envia comando de control mientras que el robot envia datos de sensores y la imagen de la camara. El cliente tambien tiene un sistema de autenticación usando una base de datos Moongo DB en ATLAS.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published