#1
Posté 10 avril 2017 - 05:18
J'aimerais faire communiquer plusieurs robots entre eux. Pour ce faire, je souhaiterai mettre en place un réseaux ad hoc afin d'établir une connections entre chaque semaine agents.
Ma question, c'est comment (quel moyen) est ce possible d'envoyer des messages à un (des) robot(s) ? Pour que ces messages soit compréhensible par chaque agents ayant reçu le message et comment l'algorithme de contrôle du robots peut aller lire ces messages?
J'ai vu que il y a des protocoles ACL (Agents Communication Langages) qui sont FIPA et KQML.
Est ce possible d'avoir un algorithme de contrôle du robots (en C par exemple) qui puissent être averti de l'arriver d'un message et ensuite le lire?
Comment intégrée un ACL dans un algorithmes de contrôle ?
Merci de votre aide 😃😃
J'espère avoir été clair sur ma problématique 😉
#2
Posté 10 avril 2017 - 05:35
Ce n'est pas du tout mon domaine d'expertise, donc d'autre pourront apporter des réponses plus pertinente, cependant si je devais faire une communication entre plusieurs robot de la façon la plus simple possible je choisirais des ondes radio, avec tout le monde sur le même canal, et un système de " Trame " avec adressage pour savoir qui parle à qui. La seule contrainte c'est qu'il n'y a qu'un seul robot qui peut parler en même temps ... D'ailleurs mieux vaudrait mettre dans ce cas un robot en " master coordinateur " ...
Mais bon ça c'est pour faire un truc " simple " , sans faire de recherche sur le choses qui existent déjà et qui marchent très bien etc...
Si mon commentaire vous a plus laissez nous un avis !
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 !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
#4
Posté 11 avril 2017 - 08:02
En effet, je ne souhaite pas avoir de maître et d'esclave. Je voudrai que un ou plusieurs robots puisse se greffer au micro réseau pour que des robots réalise des tâches en collaboration. C'est pour cela que je voulais utilisé un réseau de type Ad Hoc.
Mon problème est comment transmettre des messages en mode multicast aux autres robots. Et ensuite comment demander à l'algorithme principale du robots de venir lire ces messages?
Ou stocker ces messages? Dans un socket? (Comment faire ceci :s)
Si vous avez déjà réalisé se genre de communication je suis preneur :-)! Ou si vous des techniques pouvant m'aider :-)
#7
Posté 11 avril 2017 - 01:16
Oui désolé Path, RPB c'est une carte Raspberry. Je pense plus à la raspberry pi 3 (ou a n'importe quel autre PC embarqué avec du WIFI). A mon avis, établir une connexion Ad Hoc entre plusieurs mini PC ne sera pas un problème. C'est plutôt l'échange de données, comment lorsque le destinateur a reçu la trame, le programme principale peut aller lire la trame? Ou stocker la trame reçu? (pour que le programme principale aille lire son contenu).
#8
Posté 11 avril 2017 - 01:52
Une fois que chaque RPB est connecté au réseau (ad hoc ou pas) il a son IP. Après, c'est à toi de voir. Soit tout le monde parle à tout le monde soit chacun connait son interlocuteur (ip) soit un centralise ... à ce niveau, c'est complètement ouvert. Tu fais comme tu veux.
D'où ma demnde de plus d'infos
#9
Posté 11 avril 2017 - 02:29
J'ai fait rapidement un pti shéma ci joint.
Ma principale interrogation, c'est comment stocker les trames reçu, comment aller les lires pour ensuite prendre en considération le message dans l’algorithme principal.
Il y aura un programme principal qui gère chaque entité (robot), il contrôle le robot dans son déplacement (donc reçoit les données de ses propres capteurs, les analyses et envoi les commande sur les moteurs pour faire déplacer le robot).
Le but étant de faire déplacer la flotte de robot en formation.
Pour la sécurité, si un robot remarque un obstacle il doit avertir ses camarades. Ou bien si un ou plusieurs autre robots veulent se greffer au groupe, le ou les robots supplémentaire doit avertir la flotte.
Donc il faudra faire un message multicast ou bien broadcast.
Comment faire pour que le robot s’aperçoive qu’il a reçu un message ? Comment aller le lire et où aller le lire ? Sachant que pendant ce temps-là il exécute son programme principal (déplacement) !
J’espère que je suis un peu plus clair dans ma demande :s
#10
Posté 11 avril 2017 - 04:53
Pour démystifier tout cela, il faudrait que tu fasses quelques montages unitaires. Recevoir/ lire un message, faire tourner un moteur. Cela te paraîtra moins obscure.
Tu sais quel langage tu vas utiliser ?
#11
Posté 11 avril 2017 - 05:07
#15
Posté 25 avril 2017 - 09:26
#18
Posté 27 avril 2017 - 11:58
Personnellement j'aime bien les solutions simple et efficace...
Je préfère largement utiliser un système radio qui se branche sur l'uart que de passer par le réseau wifi ... En plus en terme de porté ... c'est pas la même chose mais bon chacun son choix
Si tu ne l'as pas déjà lu ce document est intéressant : robotex-communication-2015.pdf 1,42 Mo 156 téléchargement(s)
à bientôt en tout cas n'hésite pas à nous présenter ce que tu fais
Si mon commentaire vous a plus laissez nous un avis !
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 !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
#19
Posté 19 mai 2017 - 07:06
Le réseau maillé, c'est bien quand tu as vraiment beaucoup de noeuds (donc de robots), et que tu veux économiser de l'énergie. Ca permet aussi de ne pas dépendre d'un élément, donc si il y en à un qui tombe en panne / perd la connexion, le groupe continue de fonctionner. Mais c'est compliqué à mettre en oeuvre.
A mon avis, le plus simple c'est de tous les connecter à un même réseau wifi, et en utilisant des protocoles réseau, tu peux envoyer des trames en broadcast, donc à tout le monde.
- Path aime ceci
#20
Posté 19 mai 2017 - 08:47
Peut etre ceci ... https://www.mysensor...g/about/network
Un réseau maillé autour d'un Controlleur , d'1 GW Arduino et de x nodes Arduinos connectés à la GW par radio (NRF24) sur lesquels sont connectés les robots dans le cas présent ( intégrés dans le robot )
Les nodes peuvent etre aussi de type ESP286 + wifi
J'avais regardé ce projet pour un besoin domotique ( capteurs ) mais c'est peut etre adaptable à la robotique
Pura vida
Ma chaine youtube https://www.youtube....EQ5MTR3A/videos
Tutoriel MIT Inventor2 https://www.robot-ma...e-robot-mobile/
Répondre à ce sujet
0 utilisateur(s) li(sen)t ce sujet
0 members, 0 guests, 0 anonymous users