Aller au contenu


Photo
- - - - -

ROS et Raspberry Pi sur le web


2 réponses à ce sujet

#1 compyl

compyl

    Nouveau membre

  • Membres
  • 1 messages

Posté 05 mai 2020 - 05:32

Bonjour à tous,

 

Je poste ma 1ère petite contribution sur ce forum.

J'ai un projet en cours (distributeur automatique de friandises pour le chat de ma copine) piloté depuis un navigateur web.

Les fonctions du robot sont assez simples:

  • permettre à l'utilisateur de donner 1 friandise(répétable jusqu'à ce que le réservoir soit vide)
  • permettre à l'utilisateur de recharger le réservoir (Le réservoir se vide, puis l'utilisateur doit manuellement recharger les 6 emplacements)
  • permettre à l'utilisateur de jouer un son au format .midi sur un buzzer (pour attirer le chat ou éventuellement le dresser: un son -> 1 action du chat -> 1 friandise si action effectuée)
  • transmettre un retour vidéo à l'utilisateur (pour vérifier que le chat est là ou qu'il a fait l'action)

Remarque: le réservoir contient 6 friandises.

 

L'idée c'est que l'utilisateur se connecte à un page web, sur laquelle il peut voir le nombre de friandises restantes, donner des friandises, recharger le réservoir, voir le retour vidéo.

La page web n'est pas prévue d'être rendue publique par soucis de simplification et de sécurité.

 

Au cours de la réalisation je suis tombé sur quelques liens sympas que je vous mets ci-dessous et qui permettent de réalisé le projet décrit ci-dessous:

 

ROS: 

  • C'est quoi ? : J'imagine que beaucoup de monde connaît déjà mais tant pis :). C'est un middleWare qui simplifie énormément le développement logiciel en proposant déjà des "briques" toutes faites qui permettent de réaliser des fonctions et de structurer proprement  le code. Les tutoriels sont très bien faits et je vous recommande de les suivre, c'est 10h qui vont peut être changer votre vie :)
  • Tutoriels : http://wiki.ros.org/ROS/Tutorial

ROS DEVELOPMENT STUDIO:

  • C'est quoi ?: Un site qui propose aux utilisateurs de créer une machine virtuelle (hébergée sur leurs serveurs) avec un environnement ROS complet pré-installés. L'option gratuite permet d'utiliser 1 machine virtuelle (2 CPU, 8Go RAM, pas de GPU) pendant 8h tous les jours. Ce site permet de gagner beaucoup de temps d'installation, et facilite grandement la prise en main de ROS. C'est une trés bonne option pour développer rapidement des projets sous ROS avant de les tester sur une cible réelle (Pi ou autre). Le site propose aussi beaucoup de contenu pédagogique pour la prise en main de ROS. 
  • Lien : https://www.theconst...lopment-studio/

ROSLIB.JS:

  • C'est quoi ?: Il faut connaitre ROS pour comprendre ROSLIB.js mais en gros, pour résumer, c'est une librairie qui fournit une interface (API) en javascript pour permettre à une page web (html) d'appeler des services ROS et de recevoir ou d'envoyer des messages sur ROS. Elle repose sur le concept de "websocket".
  • Lien : http://wiki.ros.org/roslibjs#API_Documentation

ROSBRIDGE:

  • C'est quoi ? : Là aussi il faut connaître ROS. C'est un noeud ROS qui permet d'interfacer ROS avec d'autres systèmes non-ROS (et notamment avec des pages web pour le biais de websocket)
  • Lien : http://wiki.ros.org/rosbridge_suite

Pour relier ces éléments entre eux, je vous conseille l'excellent tutoriel suivant : https://www.youtube....wgOJPRJE&t=509s

 

En parallèle, je vous conseille le repo GitHub suivant (mis à jour trés récemment jusqu'à la partie 06-xc-opencv.md incluse, en cours de MAJ pour le reste):

 

CROSS COMPILATION RASPBERRY PI: 

  • C'est quoi ? : La raspberry Pi n'étant pas une bête de course, la compilation et le développement peuvent prendre un temps considérable s'ils sont réalisés directement sur la PI. Une solution alternative est de développer et de compiler sur un PC (plus puissant) et de ne transférer que les exécutables et éventuellement les librairies nécessaires à l'exécution sur la Pi. Le lien suivant décrit l'ensemble des étapes pour faire cela. C'est très bien expliqué, je l'ai utilisé (jusqu'à la partie 6 pour l'instant) et ça marche très bien. 
  • Lien : https://github.com/H...rpicross_notes/

Voilà, c'est tout pour l'instant, je reviendrais peut être vers vous pour vous montrer le résultat quand tout sera terminé.

 

@+



#2 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 143 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 06 mai 2020 - 07:57

Du coup si on veut proposer un moyen de sorte à ce que Vigibot soit compatible avec ROS il faudrait réaliser un Node qui serait un équivalent de ROSBRIDGE

Genre VIGIBOTROSBRIDGE =) Reste maintenant à creuser pour faire ça et l'ajouter au panel de ce que propose vigibot :) 
En tout cas je suis très curieux du retour d'expérience comparatif entre la mise en place d'un robot via rosbridge ou via Vigibot. 


=> Quels sont les avantages et inconvénients des deux ? 
=> Quel système est le plus facile à mettre en place 
=> Quel système à la meilleur qualité de retour ( vidéo, latence etc ... )
=> Quel système à le plus de fonctionnalités 

En tout cas hâte de voir le résultat de ce dresseur de chat à coup de croquettes ! :P
Vivement une vidéo ! =)

 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 

 

Les réalisations de Mike118  

 

 

 


#3 Ludovic Dille

Ludovic Dille

    Habitué

  • Membres
  • PipPip
  • 159 messages
  • Gender:Male
  • Location:Belgique
  • Interests:Robotique, électronique, embarqué, informatique, ...

Posté 06 mai 2020 - 09:10

J'ai pas encore eu l'occasion d'utiliser ROS mais il y a aussi ROS 2 qui serait peut-être intéressant de regarder





Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users