Aller au contenu


Photo
- - - - -

Débuter en robotique


  • Veuillez vous connecter pour répondre
16 réponses à ce sujet

#1 christuff

christuff

    Nouveau membre

  • Membres
  • 6 messages

Posté 22 janvier 2014 - 11:55

Bonjour a tous,

Etant développeur informatique de base, je cherche a découvrir le monde de la robotique de façon "simple" pour moi.

Je m'imaginais une carte contrôleur relie en wifi a l'ordinateur ou la partie contrôle serait sur l'ordinateur ( plus simple pour le développement ).
De plus j’espérai trouver des objets simples a assembler "tel servo avec tel carte" sans trop se poser de questions ( notamment concernant les voltages ).

Or lorsque j'ai regarde le catalogue de certains sites .. grosse désillusion. Tout a l'air complique. Y'aurait-il des gens pour m'aiguiller dans mes premiers pas ? ( que choisir etc ? )
Je cherche autant que possible a éviter de l'arduino en tant que contrôleur.

Merci a tous,

Bien cordialement,

#2 olivthill

olivthill

    Membre occasionnel

  • Membres
  • Pip
  • 141 messages
  • Gender:Male
  • Location:Val de Marne
  • Interests:Robots humanoides.

Posté 22 janvier 2014 - 01:15

Bonjour et bienvenue,

Je m'imaginais une carte contrôleur relie en wifi a l'ordinateur ou la partie contrôle serait sur l'ordinateur ( plus simple pour le développement ).
De plus j’espérai trouver des objets simples a assembler "tel servo avec tel carte" sans trop se poser de questions ( notamment concernant les voltages ).

La carte Arduino Uno est la carte contrôleur qui est probablement la plus utilisée par les débutants. Moi qui suis informaticien aussi, j'avais fait plusieurs tentatives pour étudier l'électronique, mais j'avais abandonné face à la complexité. Mais quand j'ai trouvé la carte Arduino, alors ça m'a permis tout de suite de faire des petites expériences, et de franchir les premières étapes. C'est une carte qui présente beaucoup d'avantages, comme un IDE avec un langage C facile à maitrisé, beaucoup de port d'entrée/sorties qui sont analogiques ou digitales, la gestion du PWM (courant ondulé pour certains périphériques), de la liaison série TX/RX, de la liaison I2C, de la liaison SPI, etc. C'est comme un petit couteau suisse utile aux campeurs.

Cela dit, la Arduino est connectée au PC via un câble USB, pas en Wifi. La carte coûte une vingtaine d'euros, et s'il avait fallu remplacer le câble USB par une liaison Wifi, cela aurait fait doubler ou tripler le prix de la carte. Le choix du coût nettement moindre est compréhensible pour une carte destinée à des jeunes ou à des personnes ne voulant pas investir aveuglément beaucoup d'argent dans un produit qu'ils ne connaissent pas encore.

Cela dit aussi, la Arduino, ne délivre pas assez de courant pour faire tourner des servos autre que des mini servos. Il suffit de rajouter une alimentation externe pour les servos plus gros, ce qui est assez facile à faire. Par contre, le voltage ne pose pas de problème car la Arduino délivre du 5V et les servos fonctionnent généralement sur la page 4.8V-6V. Les servos nécessitent un courant ondulé particulier (entre 800 et 22200 Hz) pour leur contrôle et la Arduino le génère sans problème.

Il y a beaucoup de documentations sur la Arduino, beaucoup d'exemples, et beaucoup d'extensions.
Le site officiel est http://arduino.cc/ .
Il y a une "librairie" spéciale pour les servos (http://arduino.cc/en/Reference/Servo) avec deux exemples très simples Sweep (http://arduino.cc/en/Tutorial/Sweep) et Knob (http://arduino.cc/en/Tutorial/Knob).

#3 ChristianR

ChristianR

    Membre passionné

  • Membres
  • PipPipPip
  • 474 messages
  • Gender:Male
  • Location:Isère (38)
  • Interests:Arduino, programmation, électronique...

Posté 22 janvier 2014 - 01:20

Je cherche autant que possible a éviter de l'arduino en tant que contrôleur.

C'est paradoxalement plus simple de piloter un robot depuis une Arduino qu'un ordinateur.
Le PC n'a pas d'entrées / sorties permettant de commander directement son robot (mais de l'USB, du bluetooth, du Wifi, ou un port série, qu'il faudra obligatoirement interfacer).

Alors que ta carte de micro-contrôleur a des broches E/S directement utilisables.
Le développement du soft Arduino se fait depuis le PC en C++.
Christian

#4 christuff

christuff

    Nouveau membre

  • Membres
  • 6 messages

Posté 22 janvier 2014 - 01:30

Bonjour,

Merci pour vos réponses, en réalité je ne cherche pas a contrôler le robot depuis le pc, je cherche a ce que la logique du robot et la gestion des différents périphériques se fasse a partir du pc. Le contrôle du robot se fera a partir d'une carte sur le robot.

Je me rend compte que j'ai probablement mal explique.

Mon idéal serait que la gestion des ports, les E/S, les streams venant des différents capteurs ( camera, accéléromètre etc ) soient envoyé via wifi sur mon ordi qui gérera la logique et renverra sur la carte du robot la réponse a appliquer a ces flux.

Je peux bien évidement le faire en écrivant le programme me permettant d'envoyer les infos au pc, mais je me demandais si une solution "clef en main" ( je met des guillemets car je sais comment ça se passe ) était disponible.

#5 olivthill

olivthill

    Membre occasionnel

  • Membres
  • Pip
  • 141 messages
  • Gender:Male
  • Location:Val de Marne
  • Interests:Robots humanoides.

Posté 22 janvier 2014 - 04:41

Connaissez-vous la Arduino, ou faut-il que j'explique son fonctionnement ? Dans le doute, j'explique :

On branche la Arduino au PC.
On lance l'environnement de développement sur le PC, qui contient un éditeur de texte, un compilateur, et un logiciel de communication.
On écrit un programme dans l'éditeur de texte.
On le compile.
Et on le téléverse dans la mémoire de la carte Arduino.

Ensuite, on peut débrancher la carte Arduino du PC.
La carte Arduino peut être mise sur un robot.
Quand on allume la carte, elle joue le programme, et fait donc bouger le robot.

On peut rajouter sur la Arduino un shield (une carte d'extension, aussi appelé bouclier) ou un module qui gère le Wifi (ou le bluetooth, c'est moins cher (ou l'infrarouge, c'est encore moins cher)).
Cette extension peut recevoir sans fil des instructions depuis un PC, qui vont être interprétées par la Arduino sur le robot.
Et inversement, l'extension peut envoyer sans fil au PC, les mesures de capteurs, les images d'une petite caméra, etc.

Edit : Pour la Raspberry Pi, c'est à peu près la même chose, sauf que la Raspberry est beaucoup plus puissante que la Arduino, un peu plus complexe et un peu plus chère.

#6 transistance

transistance

    Membre passionné

  • Membres
  • PipPipPip
  • 409 messages

Posté 22 janvier 2014 - 05:26

Bonjour,

en gros ce que tu veux c'est faire un robot relativement autonome et d'autre part te servir d'un pc comme sorte de moniteur sur lequel tu lis toutes les infos du robot, voir te servir du pc comme télécommande pour envoyer des ordres au robot. Est-ce bien ça ?

Si oui je te conseil les modules xbee + platines d'adaptation. Alors oui c'est pas du wifi mais ça fonctionne très bien. Je suis en plein developpement d'un programme en delphi pour faire exactement ça. ça fonctionne très bien (ça s'utilise comme un port COM virtuel).

EDIT: Si tu tiens à passer par du WIFI le plus simple / moins cher / plus rapide pour toi c'est d'utiliser la carte Raspberry pi + clef wifi.

N'oubliez jamais que "Ban Ki-moon n'attrape pas mousse"


#7 christuff

christuff

    Nouveau membre

  • Membres
  • 6 messages

Posté 23 janvier 2014 - 10:26

Bonjour,

Merci pour vos réponses,

Connaissez-vous la Arduino, ou faut-il que j'explique son fonctionnement ? Dans le doute, j'explique :
....


Non je ne connais pas vraiment arduino, d'ou mon post, merci pour votre explication qui me permet d'y voir plus clair.

Bonjour,

en gros ce que tu veux c'est faire un robot relativement autonome et d'autre part te servir d'un pc comme sorte de moniteur sur lequel tu lis toutes les infos du robot, voir te servir du pc comme télécommande pour envoyer des ordres au robot. Est-ce bien ça ?


C'est exactement ca, je cherche à créer un robot le plus autonome possible ( deplacement, evitement d'obstacle, franchissement d'obstacle etc ) ou toute la partie calcul ( pathfinding,etc ) serait calculé sur l'ordinateur et les résultats ( commandes ) envoyés au robot.

#8 transistance

transistance

    Membre passionné

  • Membres
  • PipPipPip
  • 409 messages

Posté 23 janvier 2014 - 12:24

Ok donc, pour être concis tu veux juste déporter l'intelligence sur un pc.

Dans ce cas, si comme tu le dis, tu veux pas t'embêter avec le côté électronique (et sachant que tu es plus à l'aise en info) la raspberry pi + clef wifi te conviendront parfaitement!

Bonne réalisation!

N'oubliez jamais que "Ban Ki-moon n'attrape pas mousse"


#9 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 607 messages
  • Gender:Male

Posté 24 janvier 2014 - 05:39

Ok donc, pour être concis tu veux juste déporter l'intelligence sur un pc.

Dans ce cas, si comme tu le dis, tu veux pas t'embêter avec le côté électronique (et sachant que tu es plus à l'aise en info) la raspberry pi + clef wifi te conviendront parfaitement!

Bonne réalisation!


Je suis parfaitement d'accord avec tout ce qui a été indiqué par les autres membres, je rajoute juste un bémol sur le choix des cartes de commandes : Les arduino et raspberry pi sont très bien chacune dans leur catégorie respective cependant dans les deux cas, elles sont faites pour être "générique", elle ne sont pas dédié directement à contrôler un moteur cc ou pas à pas ou encore des servo-moteurs par exemple... Du coup elle ne sont pas dédiés pour une des ces tâches mais elle peuvent toute les faire si on ajoute à chaque fois le module qui va bien pour la tâche. ( carte de commande moteur alim externe etc... )

Après il existe aussi des cartes moins connue ( car moins générique ) dédié à commander X moteurs pas à pàs ou d'autre à commander Y servo moteurs et quelques capteurs, et quelque le tout pouvant se raccorder au PC ... Dans ces cas là plus aucun module n'est à ajouté tant qu'on reste dans le domaine du pourquoi la carte elle est faite.

Ces cartes sont particulièrement intéressante dans les robots où les moteurs sont tous des servo par exemple ( typiquement pour hexapodes, humanoides etc... ) ou pour les machines industrielle qui ne comptent bien souvant que des moteurs pas à pas ...

Ainsi pour confirmer ton choix, je te suggère juste de décrire un petit peu plus comment tu veux faire ton robot pour voir si tu as d'avantage besoin d'une carte "générique " ou si une carte plus spécifique ne te conviendrais pas d'avantage.

En tout cas bonne continuation !

Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#10 ChristianR

ChristianR

    Membre passionné

  • Membres
  • PipPipPip
  • 474 messages
  • Gender:Male
  • Location:Isère (38)
  • Interests:Arduino, programmation, électronique...

Posté 24 janvier 2014 - 06:12

Les cartes "génériques" ont l'avantage d'une large communauté d'utilisateurs, et beaucoup de documentation en libre accès.
Pour débuter c'est essentiel.
Christian

#11 christuff

christuff

    Nouveau membre

  • Membres
  • 6 messages

Posté 24 janvier 2014 - 11:10

Bonsoir,


Ainsi pour confirmer ton choix, je te suggère juste de décrire un petit peu plus comment tu veux faire ton robot pour voir si tu as d'avantage besoin d'une carte "générique " ou si une carte plus spécifique ne te conviendrais pas d'avantage.


D'accord,
Je cherche a créer un robot ( jusque la tout le monde a compris je pense ).
Hexapod ou biped, je ne suis pas décidé encore ( j'aime beaucoup les hexapods, de plus j'ai le sentiment qu'ils m'éviteront des soucis pour les mouvement du robot - mais je fais peut être erreur ? - ).

Mon idée est d'expérimenter et d'avoir un robot le plus autonome possible. Je compte tester différents capteurs ( notament kinect-like ). donc un peu de modularité sur ce qu'on peux connecter ne me fera pas de mal.

Mon but est d'avoir un robot qui peux reconnaitre son environnement "courrant" en dresser une cartographie pour pouvoir y évoluer facilement, puis répondre à des ordres "rapporte moi une canette de coca", "va vérifier l'état de la salle serveur" etc ....

De plus il devrait pouvoir réagir en fonction de son environnement ( éviter quelqu'un quand il passe, etc ).

Bref dans un premier temps l'idée est de pas mal expérimenter smile.gif

#12 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 607 messages
  • Gender:Male

Posté 25 janvier 2014 - 02:15

Bonsoir,



D'accord,
Je cherche a créer un robot ( jusque la tout le monde a compris je pense ).
Hexapod ou biped, je ne suis pas décidé encore ( j'aime beaucoup les hexapods, de plus j'ai le sentiment qu'ils m'éviteront des soucis pour les mouvement du robot - mais je fais peut être erreur ? - ).

Mon idée est d'expérimenter et d'avoir un robot le plus autonome possible. Je compte tester différents capteurs ( notament kinect-like ). donc un peu de modularité sur ce qu'on peux connecter ne me fera pas de mal.

Mon but est d'avoir un robot qui peux reconnaitre son environnement "courrant" en dresser une cartographie pour pouvoir y évoluer facilement, puis répondre à des ordres "rapporte moi une canette de coca", "va vérifier l'état de la salle serveur" etc ....

De plus il devrait pouvoir réagir en fonction de son environnement ( éviter quelqu'un quand il passe, etc ).

Bref dans un premier temps l'idée est de pas mal expérimenter :)/>


Alors vu que l'idée générale est de pas mal expérimenté et pas de faire " spécifiquement un bipède ou autre ", il est plus intéressant pour toi d'avoir une carte générique =) .

Du coup les deux propositions arduino et raspberry pi conviennent bien pour toi.

Après chacune a ses avantage et inconvénient !

La raspberry pi est de base très proche d'un PC, tournant sur linux tu peux t'en servir directement en la branchant sur un écran avec ton clavier et la souris, elle est pas malutilisé pour faire des serveurs, des jeux arcades, système de surveillance etc... Le fait que cela soit proche du PC tu peux entre autre facilement y brancher des périphérique usb comme une caméra pour faire de la vision ou une clé wifi de plus elle dispose quand même de quelques broches qui lui permette de s'interfacer avec d'autre module ou cartes (shield) et permettre ainsi de faire de faire de la domotique et de la robotique. Cependant bémol, la logique de la raspberry pi fonctionne en 3.3V ce qui est moins courant que le 5V et il y a moins de shield dispo pour rasberry pi que pour arduino. Par contre il y a une tres bonne communauté autour de la pi et il commence à y avoir pas mal d'exemple de code et autre exemple d'applications sur le web. Dommage pour ma part que cela soit essentiellement en python et pas plus en C mais on fais avec ^^
pour conclure je dirais que la pi est plus puissante mais moins user friendly.

La arduino est un micro_controlleur agrémenté de ce qui lui faut autour pour ne pas à avoir à ajouter d'électronique pour réaliser la partie commande. On ne peut pas y brancher d'écran ou de caméra comme sur la pi, cependant il y a beaucoup plus de shield qui vont sur l'arduino pour faire facilement plus de chose surtout qu'elle fonctionne en logique 5V. Il y a énormément d'exemple sur le note et une communauté plus large et plus importante. Si tu veux absolument qu'elle communique en wifi tu peux ajouter un shield wifi prévu pour, si tu veux controller deux moteur CC tu as un shield pour aussi etc... Pour commencer en robotique une arduino me semble plus adaptée quitte à migrer ensuite vers une raspberry pi si besoin par la suite ... Car même si moins puissante elle est plus user friendly et permettra plus facilement d'acquérir les bases sur tout ce qui est capteurs, moteurs etc...

En tout cas dans les deux cas le coût des cartes n'est pas le seul à prendre en compte il faut aussi prendre en compte le coût des accessoires ou shield en fonctions de ce par quoi tu veux commencer =).

Voilà mon avis !

Après voilà cet avis n'est que à prendre en regard de tes objectifs. Si tu me dis que tu veux absolument faire de la vision par ordinateur par exemple pour commencer sur ton robot dans ce cas là il est claire que je te suggère directement la pi ...

Perso j'ai les deux même si je reconnait qu'en ce moment je ne les utilise pas beaucoup -___-' Je suis trop pris par d'autres projets ...

Bref bon courage par la suite!

Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#13 christuff

christuff

    Nouveau membre

  • Membres
  • 6 messages

Posté 30 janvier 2014 - 11:30

Merci pour vos réponses,

Je commence a avoir une idée de quelle direction je dois prendre :)


Bien cordialement

#14 Popeye.

Popeye.

    Nouveau membre

  • Membres
  • 2 messages

Posté 10 décembre 2015 - 03:54

Bonjour à tous,

 

C'est mon premier message sur ce forum, que je trouve très complet au passage.

Voilà je ne m'y connais pas du tout en robotique, mais je suis développeur informatique.

 

J'ai un projet robotique qui me trotte dans la tête depuis un petit bout de temps et je me lance.

J'ai vu, dans ce post, la description de la carte Raspberry et Arudino et j'aimerai un avis sur celle qui conviendrait le mieux 

à mon projet.

 

Petite description du projet :

- se serait pour faire un biped

- j'aimerai y mettre un capteur de distance infrarouge

- une caméra

- un micro

- un shield pour ajouter une connectique wifi

 

L'objectif est surtout de pouvoir mettre en place les fonctionnalités suivantes :

- contrôle vocal (du style : viens ici...)

- possibilité d'envoie via wifi une photo prise par le robot

- prise de contrôle à distance, en ayant la possibilité de voir ce que voit le robot

- ...

 

Du coup, je pense que la Raspberry Pi convient le mieux, mais je ne sais pas si je pourrai y connecter tout ce que je veux.

Ce qui m'ennuierai c'est de commencer le projet avec une carte et de voir après 6 mois que je ne peux pas faire ce que je veux et devoir recommencer le dev sur l'autre carte :/

 

Merci d'avance.



#15 ailgorbot

ailgorbot

    Membre occasionnel

  • Membres
  • Pip
  • 107 messages
  • Gender:Male
  • Interests:IOIO

Posté 10 décembre 2015 - 08:51

Salut,

 

Peut-être que ce n'est pas trop tard, pour un peu prêcher dans une autre paroisse que le Raspberry ou Arduino.

 

Moi je suis parti avec un autre microcontrolleur le IOIO-OTG. (google est ton ami)

 

L'avantage :

- Utilisation d'un smartphone comme cerveau du robot sachant ils ont de base de nombreux capteurs, camera, gps...

- leurs processeurs sont puissants pour toute sortes de calcul dès que l'on envisage des traitements d'image (voir opencv... cherche sur ton android des applications)

- wifi / bluetooth du telephone

- Full Java Android

 

Mon robot : 

http://www.robot-mak...dee-ioio-l293d/

 

et son évolution en tant que robot de téléprésence

http://www.robot-maker.com/forum/topic/9932-ailgorwebrtc-car-rc-ioio-otg-en-wifi-chatvideo-webrtc/ 

 

Bon courage quelque soit ton choix


Robot de téléprésence : IOIO-OTG Robot WebRTC 

Car RC : AilgorRC


#16 Popeye.

Popeye.

    Nouveau membre

  • Membres
  • 2 messages

Posté 14 décembre 2015 - 09:42

Salut ailgorbot,

 

Merci pour ta réponse, c'est intéressant de voir qu'il y a d'autre microcontrolleur.

L'objectif est tout de même que le root soit autonome, mais que je puisse prendre la main dessus à tout moment.

 

Je me trompe peut être mais les inconvénient que j'y vois c'est le fait que le robot doit être rattaché à un téléphone android.

du coup je ne peux placer mes capteur où je ne désire :/



#17 ailgorbot

ailgorbot

    Membre occasionnel

  • Membres
  • Pip
  • 107 messages
  • Gender:Male
  • Interests:IOIO

Posté 14 décembre 2015 - 10:44

Salut,

 

bon, je vais essayer de répondre à quelques unes de tes interrogations.

 

- Non tu n'es pas obligé de rattacher ton Android à ton robot. il communique nativement par bluetooth (ajout d'un dongle bluetooth). voir vidéo. 

 

https://www.youtube....h?v=kwhTyIG9nXM

 

- Tu peux mettre tous les capteurs (infrarouge, température, camera, gps, etc...) que tu veux, comme sur l'Arduino. L'avantage de mettre un Android avec d'autres capteurs au choix(si tu le colles au robot), c'est que l'Android a déjà des capteurs intéressants comme la camera, le gps, la boussole etc... Sans parler du fait que c'est aussi un smartphone et que ton robot peut s'interfacer à plein d'applications (email, sms, skype, hangout, map...etc).

 

- En outre, l'Android est surtout le coeur du robot. Si tu as un Android avec un bon processeur+GPU(c'est le cas pour toutes les entrées de gamme et même un vieux comme le mien le Galaxy S), tu peux largement envisager des traitements d'images comme openCV pour la reconnaissance faciale directement via le téléphone.

 

Des exemples de projets IOIO-OTG : 

https://www.youtube....h?v=wldJPCy6y54

 

Surtout que maintenant, sur le bon coin, ou ailleurs il y a des Android pas chers... (c'est Noël)

A minima un Android c'est : 

- un bon CPU+GPU pour toutes formes calcules (traitements vidéo, calcul des positions, envoie de messages, flux vidéo, etc...) 

- une caméra

- le GPS

- le Bluetooth

- la Wifi

- un écran LCD Tactile

- plus d'autres capteurs

 

Mis bout à bout, il vaut mieux parfois un petit boitier compact (c'est-à-dire le smartphone) qu'une palanquée de Shield Arduino ou autres...pour faire la même chose. Le poids est ennemi. 


Robot de téléprésence : IOIO-OTG Robot WebRTC 

Car RC : AilgorRC





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

0 members, 0 guests, 0 anonymous users