Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

EMAR Mini : Robot d'assistance d'urgence compact et open-source

EMAR Mini est une version réduite du robot d'urgence open-source EMAR, conçue pour aider les professionnels de santé pendant la pandémie de COVID-19. Basé sur un Raspberry Pi 4, il intègre des caméras Intel RealSense, du matériel de calcul neuronal, et des servomoteurs pour offrir détection d'objets en temps réel, détection de profondeur, et contrôle à distance.

Ce guide vous accompagne à chaque étape de la mise en place de l'EMAR Mini, de l'assemblage matériel à la configuration logicielle sécurisée.

Avertissement de sécurité

Faites toujours preuve de prudence lors de la manipulation d'électronique. Nous n'acceptons aucune responsabilité pour tout dommage matériel ou blessure personnelle résultant de ce tutoriel. Utilisez les instructions à vos propres risques.

Prérequis

Serveur HIAS

Avant de commencer, assurez-vous d'avoir un serveur HIAS pleinement fonctionnel installé. Suivez le guide d'installation HIAS pour configurer le serveur.

STLs pour impression 3D

Imprimez le boîtier et le châssis EMAR Mini avec les fichiers STL fournis dans le guide STLs For 3D Printing.

Raspberry Pi OS Lite

Téléchargez l'image Raspberry Pi OS Lite (Buster) depuis la page de téléchargement Raspberry Pi OS, extrayez le fichier, et flashez-le sur une carte SD 64 Go. Après démarrage, exécutez :

sudo apt-get update && sudo apt-get upgrade sudo raspi-config 

Utilisez l'outil de configuration pour étendre le système de fichiers, régler les préférences clavier, et connecter à votre réseau.

Aperçu de l'installation

Le processus d'installation inclut :

Sécurité de l'appareil

Sécuriser le Raspberry Pi est essentiel. Suivez les étapes ci-dessous pour créer un utilisateur distant dédié et activer l'authentification par clé SSH.

Utilisateur distant

Créez un nouvel utilisateur avec privilèges sudo :

sudo adduser YourUsername usermod -aG sudo YourUsername 

Connectez-vous au nouveau compte via SSH :

ssh [email protected] 

Accès SSH

Générez une paire de clés SSH sur votre machine locale (pas sur le Pi) :

ssh-keygen 

Copiez la clé publique sur le Pi :

ssh-copy-id [email protected] 

Testez la connexion sans mot de passe :

ssh [email protected] 

Désactivez l'authentification par mot de passe en éditant /etc/ssh/sshd_config :

sudo nano /etc/ssh/sshd_config # Changez la ligne suivante : #PasswordAuthentication yes PasswordAuthentication no 

Redémarrez SSH :

sudo systemctl restart ssh 

Pare-feu UFW

Activez et configurez le pare-feu Uncomplicated Firewall :

sudo ufw enable sudo ufw allow 22 sudo ufw allow OpenSSH sudo ufw status 

Sortie attendue :

Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 22 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6) 

Fail2Ban

Installez et configurez Fail2Ban pour fonctionner avec UFW :

sudo apt install fail2ban sudo mv /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo rm /etc/fail2ban/action.d/ufw.conf sudo touch /etc/fail2ban/action.d/ufw.conf sudo tee -a /etc/fail2ban/action.d/ufw.conf <<EOF [Definition] enabled = true actionstart = actionstop = actioncheck = actionban = ufw insert 1 deny from <ip> to any actionunban = ufw delete deny from <ip> to any EOF sudo sed -i "s#banaction = iptables-multiport#banaction = ufw#g" /etc/fail2ban/jail.local sudo fail2ban-client restart sudo fail2ban-client status 

La sortie doit inclure :

Shutdown successful Server readyStatus |- Number of jail: 1 `- Jail list: sshd 

Dépendances Python

sudo apt install python3-pip sudo pip3 install geolocation paho-mqtt psutil numpy requests zmq 

Créer un dispositif EMAR dans HIAS

Dans votre serveur HIAS, allez à Robotique > EMAR > Créer. Configurez le dispositif en sélectionnant l'emplacement iotJumpWay approprié, en assignant un nom, et en entrant l'IP et l'adresse MAC du Pi. Laissez les paramètres de détection d'objets temps réel et de profondeur par défaut sauf si des ports personnalisés sont requis.

Proxy serveur HIAS

Ajustez le proxy NGINX pour router le trafic vers le Pi. Éditez /etc/nginx/sites-available/default :

sudo nano /etc/nginx/sites-available/default 

Localisez le bloc EMAR et remplacez l'IP placeholder par l'adresse de votre Pi :

location ~* ^/Robotics/EMAR/Live/(.*)$ { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/tass/htpasswd; proxy_pass https://###.###.#.##:8282/$1; } 

Rechargez NGINX :

sudo systemctl reload nginx 

Mettre à jour les paramètres du dispositif

Utilisez les identifiants de l'interface HIAS pour éditer confs.json sur le Pi, en assurant que ports et noms d'hôte correspondent à votre configuration :

sudo nano confs.json { "iotJumpWay": { "host": "", "port": 8883, "ip": "localhost", "lid": 0, "zid": 0, "did": 0, "dn": "", "un": "", "pw": "" }, "EMAR": { "ip": "" }, "Realsense": { "server": {"port": 8282}, "socket": {"port": 8383} }, "MobileNetSSD": { "bin": "Model/MobileNetSSD_deploy.bin", "classes": [ "background", "aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", "pottedplant", "sheep", "sofa", "train", "tvmonitor" ], "inScaleFactor": 0.007843, "meanVal": 127.53, "size": 300, "threshold": 0.6, "xml": "Model/MobileNetSSD_deploy.xml" } } 

Intel® RealSense™ D415

Installez le SDK RealSense sur le Pi. Assurez-vous que la caméra est déconnectée pendant l'installation.

wget https://github.com/IntelRealSense/librealsense/raw/master/scripts/libuvc_installation.sh chmod +x libuvc_installation.sh sed -i "s/cmake ../ -DFORCE_LIBUVC=true -DCMAKE_BUILD_TYPE=release/cmake ../ -DFORCE_LIBUVC=true -DCMAKE_BUILD_TYPE=release DBUILD_PYTHON_BINDINGS=bool:true/" libuvc_installation.sh ./libuvc_installation.sh 

Ajoutez le chemin de la bibliothèque à ~/.bashrc :

echo 'export PYTHONPATH=$PYTHONPATH:/usr/local/lib' >> ~/.bashrc source ~/.bashrc 

Vérifiez le dispositif :

rs-enumerate-devices python3 -c "import pyrealsense; print('PyRealsense loaded')" 

Intel® Distribution of OpenVINO™ Toolkit

Suivez ces étapes pour installer OpenVINO sur le Pi :

sudo apt-get install build-essential cmake unzip pkg-config sudo apt-get install libjpeg-dev libpng-dev libtiff-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev sudo apt-get install libgtk-3-dev sudo apt-get install libcanberra-gtk* sudo apt-get install libatlas-base-dev gfortran sudo apt-get install python3-dev cd wget https://download.01.org/opencv/2020/openvinotoolkit/2020.1/l_openvino_toolkit_runtime_raspbian_p_2020.1.023.tgz tar -xf l_openvino_toolkit_runtime_raspbian_p_2020.1.023.tgz mv l_openvino_toolkit_runtime_raspbian_p_2020.1.023 openvino echo 'source ~/openvino/bin/setupvars.sh' >> ~/.bashrc source ~/.bashrc 

Intel® Neural Compute Stick 2

Installez les dépendances NCS2 :

sudo usermod -a -G users "$(whoami)" cd sh openvino/install_dependencies/install_NCS_udev_rules.sh 

Connecter le cou

Attachez le servo final par le haut de Body-Middle.stl et fixez-le. Vissez le bras du servo dans la base du cou et connectez le servo. Utilisez une petite quantité d'adhésif si nécessaire pour maintenir la stabilité.

Source : EMAR Mini – Robot d'assistance d'urgence

Processus de fabrication

  1. Construire un robot Arduino piloté par Raspberry Pi – Guide pas à pas
  2. Construire un robot intelligent avec le Bridge Shield – Intégration Raspberry Pi & Arduino
  3. Robot DIY inspiré de Wall‑E : Raspberry Pi dans une boîte de CD recyclée
  4. ANDY – Le robot humanoïde polyvalent
  5. Robot réveil roulant : Système mobile intelligent piloté par Raspberry Pi et Google Calendar
  6. Construire un robot Creeper motorisé Minecraft avec Arduino
  7. JQR Quadrupède Autonome : Robot à pattes DIY pour navigation et secours autonomes
  8. Archimède : Le hibou robotique IA à détection d'émotions
  9. Nox : Robot domestique SLAM DIY propulsé par ROS