[DFRobotshop] Roby
#1
Posté 17 janvier 2012 - 03:26
Je viens partager avec vous le développement de mon robot Roby (dsl pour la non originalité de son nom ) !
Il s'agit d'un robot basé sur arduino, acheté chez robotshop.
De base il sait déjà faire 2/3 trucs, comme se déplacer ce qui n'est déjà pas mal.
Je lui ai ajouté quelques fonctionnalités (antennes, IR Sharp, servo moteur pour guider le sharp), cf les 2/3 images ci-dessous (que j'uploaderai ce soir ).
Mais j'aimerai maintenant passer à la vitesse supérieur en lui donnant.. des yeux !
Dans un premier temps, je compte "tricher" en lui ajoutant mon téléphone Androïd en guise de caméra avec une architecture du genre :
Le tel envoie les data vers un serveur (PC) => le PC traite les données (en auto (à faire) ou via une IHM (une appliweb en java) avec un utilisateur) => le PC renvoi les données au robot (via WIFI a priori).
Cela fonctionne plutôt pas mal, (je n'ai pas encore testé la partie WIFI mais ça marche en USB !), mais c'est assez pénalisant de "sacrifier" mon téléphone pour cette tache !
Je voulais donc savoir si il était possible de mettre une caméra directe sur le robot et d'envoyer les données vers le PC (en WIFI) en passant vers la carte arduino (elle renvoi déjà la valeur du capteur IR par exemple).
Je suis bien conscient que la qualité ne devrait pas être exceptionnelle, mais un 240*320 pixel me suffira amplement !
Ma question est donc la suivante :
Est-ce possible, et si oui comment ?
Merci d'avance !
#4
Posté 23 janvier 2012 - 01:50
Je voulais donc savoir si il était possible de mettre une caméra directe sur le robot et d'envoyer les données vers le PC (en WIFI) en passant vers la carte arduino (elle renvoi déjà la valeur du capteur IR par exemple).
Je suis bien conscient que la qualité ne devrait pas être exceptionnelle, mais un 240*320 pixel me suffira amplement !
Ma question est donc la suivante :
Est-ce possible, et si oui comment ?
Faire du streaming directement par la carte arduino est plutôt consommateur (et pas très évidement au vue des performance du CPU et de la RAM des cartes), ce que tu peux faire c'est du "mjpeg", envoyé un flux d'image jpeg, les unes après les autres via ton propre protocole de comm (un header, avec la taille en octet, puis les données du jpeg).
Avec ce type de camera, ça doit être faisable Camera TTL ! tu récupéres directement le jpeg (compressé par le module camera), et tu fais le relai en WiFi.
C'est grosso modo, ce que je fais avec mon Roby (vi vi, le meme nom ) entre la tête du robot (telephone Android) et le centralisateur de données annexes (tablette Android).
#5
Posté 23 janvier 2012 - 02:59
X images jpeg comme cela ca me convient bien. Pas besoin de faire de la full hd à 60fps pour l'instant !
L'idée c'était plutôt de traiter les images avec OpenCV ou quelque chose comme ça pour faire de la détection d'objet.
Il n'y a plus qu'à maintenant ! Enfin si ce n'est que j'ai cassé l'adaptateur USB de ma carte et qu'il faut que je le ressoude/recolle ! ...
Merci !
#6
Posté 24 janvier 2012 - 07:45
L'arduino n'est clairement pas conçue pour manipuler de grandes quantités de données, ni pour faire des transferts rapide de données.
Mais bon, à vous d'estimer tout ça, et de tester, même sans caméra: tester un transfert de données vers le PC pour voir quel débit maxi peut être atteint. J'avoue que j'ai un peu peur du résultat.
Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + Foxboard Linux http://ze.bot.free.fr/
BOB5, robot bipède simulé, puis tentative de réalisation (fail)
#7
Posté 25 janvier 2012 - 12:26
Je n'ai pas compris: c'est quoi la liaison radio qu'il y aura entre l'arduino et le PC? Bluetooth? WiFi?
La liaison sera en WiFi, mais il faut encore que je la test. J'ai reçu mes pièces mais comme ma carte est endommagée, faut dabbord que je la répare !
Je vous tiens au courrant !
#8
Posté 01 mars 2012 - 09:48
Apres une longue pause forcee et pas mal de galere pour faire marcher mon wishield, j'ai enfin pu etablir la communication entre mon robot et mon PC via WIFI !
Mais j'ai un comportement tres bizare... des que je fais fonctionner les moteurs de mon robot, la connexion WIFI se perd et je ne peux plus controller le robot... En gros seul le premier ordre est recu. Pourtant, si je garde le mm code et que je desactive l'alimentation des moteurs, tous les ordres sont bien recu...J'ai aussi essaye avec un servomoteur et la ca marche....
Est ce que le champ magnetique des moteur peut perturber le signal WIFI ?
Enfin si quelqu'un a une idee je suis preneur !
Merci d'avance !
#11
Posté 27 mars 2012 - 03:24
J'aurais pu le voir c'était écrit sur le site robotshop.com...
Bon ben du coup je vais réfléchir à une autre solution ! Je peux peut-être changer le pin utilisé pour le moteur en le courcircuitant !
Si quelqu'un a eu le même problème ou si quelqu'un a une solution, je suis preneur !
Merci et @+ !
#12
Posté 10 août 2012 - 01:09
Après une longue période de non-activité, j'ai repris un peu mon robot !
Au final, julkien , tu avais raison ! Pb d'alim, et non pas pb de compatibilité. En gros qd les moteurs tournent, je suppose que la puissance nécessaire à la puce WIFI + l'arduino + les moteurs n'est pas suffisantes, du coup tout s’arrête...
Comme il me paraissait compliqué de modifier l'alim des moteurs étant donnée que le circuit de contrôle de puissance est directement sur ma carte arduino, j'ai préféré les remplacer par des servos à rotation continue. De toute façon je voulais mettre des roues !
J'ai donc enfin un robot qui marche !
Petit récap :
- 1 carte du dfrobotshop (arduino + control moteur)
- 1 shield linksprite cuperhead WIFI
- 2 servos à rotation continue + 2 grosses roues d'une voiture RC (rip...)
- 2 boitiers 4 piles (6v chacun)
- 1 samsung galaxy S
Le robot se contrôle donc par WIFI via une application WEB (on contrôle la direction avec les flèches du clavier).
Le galaxy S sert de caméra IP et affiche dans la page ce qui est filmé.
Je réfléchi maintenant à ce que je vais pouvoir faire faire à ce robot !
J'envisage de lui mettre des codeurs pour mesurer ces déplacements et remettre le capteur sharp pour lui permettre de faire de la cartographie.
C'est peut être mieux d'utiliser des capteurs US pour ça non ?
J'ai aussi fait quelques tests de tracking d'objet/visage sur openCV ce qui pourrait etre sympa : un robot qui suit les gens ou les objets coloré (balle rouge par exemple).
Si vous avez des idées !
En attendant je vais surement lui faire un nouveau chassie en plexiglass car les servos sont simplement stocké à la carte arduino et du coup quand il tourne la carte ce déscotche...
Il y a aussi bcp trop de poid à l'avant (8 pile + le tel...) et du coup il n'est pas capable de franchir la moindre bosse...
Voici quelques photos : (la "roue" avant est une tete de déo stick... nettoyée bien sur !)
Petites questions subsidiaire :
Pour remplacer les pilles, je pensais utiliser des panneaux solaires comme ceux-ci :
http://www.robotshop.com/eu/module-photovoltaique-55v-170ma-max.html
Est-ce que vous savez si cela peut suffire pour alimenter mon robot ?(si j'en met 2).
Si j'en met 4 au lieu de 2, est ce que c'est suffisant en cas de manque de lumière ?
Merci à vous !!
#13
Posté 10 août 2012 - 03:11
tu as des panneaux solaire qui alimente ton arduino(on admet qu'ils ont suffisament les watt pour alimenté ton electronique !) puis soudain vien le mechant nuage qui vien faire baisser la tension et la c'est le drame, on a un shield wifi qui ne fonctionne plus (juste par exemple)
pour moi les panneau doivent recharger les bat(pile) en passant au prealable par un regulateur de charge, encore une fois je n'ai pas grande experience dans ce domaine et je ne fais que donné mon avis
A+
- Microrupteurman aime ceci
#18
Posté 17 août 2012 - 06:27
Merci pour l'info ! A priori pas de soucis pour l'instant, j'ai été chanceux.
Je ne les ai pas modélisé mais je vais aussi placer un codeur sur chaque roue pour faire de l'odométrie.
tu les as partager sur la banque d'image ? ou ailleurs ? tu as un lien ?
[edit] regarde mon avart, j'ai modelisé sur sketchup, la petite roue qui tourne dans ma tete ^^ , du coup elle tourne pas super vite mais elle tourne en continu !^^
Modifié par julkien, 17 août 2012 - 06:31 .
Répondre à ce sujet
0 utilisateur(s) li(sen)t ce sujet
0 members, 0 guests, 0 anonymous users