Débuter dans la robotique

Bonjour,

diabolow:
j'aimerais me lancer dans la robotique (+ programmation). Ayant fait quelques recherches sur internet et ayant déjà quelques bases en c#, je suis tombé sur un dérivé de "Arduino", j'ai nommé "Netduino". Avant de me lancer dans cette aventure, j'aimerais éclaircir 2 ou 3 petites choses :

J'ai moi même une netduino, j'ai fait un article à son sujet sur mon blog :wink:

diabolow:
-Est-ce que tous les produits que l'on peut acheter sur internet et étant compatibles avec "Arduino" le sont aussi avec "Netduino" ? (capteurs, moteurs, etc...)

Oui, et non, la plupart des shields arduino classique fonctionnerons avec une netduino.
Seulement certaines shields utilisant des fonctionnalités trés précise comme la "video experimenter shield" ne fonctionnerons pas par exemple.

Niveau logiciel il faut bien te rappeler que TOUT sera à faire toi même, drivers / librairies, code, etc.
Les librairies arduino classique ne pourrons pas être utilisé ! Cela implique donc de savoir lire un datasheet et savoir en extraire les informations utile.

diabolow:
-Est-il possible de faire un robot géré en wifi avec la "Netduino" ? (J'aimerais faire une sorte de voiture téléguidée avec une caméra, le tout contrôlé par mon ordinateur).

Pour faire du wifi il te faudra une shield wifi, celles de sparkfun sont assez simple à utiliser, par contre c'est 70€ minimum.
Pour la caméra, si tu as en tête de transmettre le flux vidéo par wifi via la netduino je t'arrête tout de suite ce n'est pas faisable, il te faudra obligatoirement un kit émetteur / récepteur vidéo externe.

diabolow:
-Faut il avoir d'énormes connaissances en électricité ? (Je n'ai que 16ans et n'ai jamais eu de cours d’électricité de ma vie :x je fais juste de la programmation à mes heures perdues)

Si tu compte te lancer dans un robot un peu avancé en C# il te faudra de solide connaissance en C# (logique), en bricolage (pour le montage), mais surtout en lecture / compréhension de datasheet / manuel en anglais.

barbudor:
NetDuino est un autre processeur qui se programme en C# sous VisualStudio et l'environnement dot.Net MicroFramework.
Au risque de me faire incendier par mes frères Arduinesques, l'environnement de développement et de mise au point (debug) VisualC# est a des années lumière devant l'environnement Arduino.
On peut faire du vrai pas à pas dans les fonctions, voir les variables, mettre des points d'arrêts. Le dot.Net MircroFramework contient un vrai environnement multi-tache (multi-thread en fait).

Aucune raison que tu te fasse incendier, VisualStudio est LE logiciel de développement C# VB.net par excellence !
Débugage temps réel, pas à pas, exécution depuis la ram ou depuis une carte SD, ... les possibilités offerte par la machine virtuelle .net sont infini.

barbudor:
Genre de chose qu'il est possible de faire sur le processeur ATmega328 mais plutôt hors de l'environnement Arduino.

Pas totalement d'accord, le pseudo multi-threading avec une surcouche RTOS ok, par contre le debug pas à pas & co sans matériel externe, même avec AVR studio c'est pas possible (faut au moins un debugeur externe, alors que la machine virtuel .net utilise directement l'usb).

barbudor:
Je ne connais pas trop la communauté NetDuino et surtout je ne sais pas s'il y a une communauté en français. En tout cas ici, autour de l'Arduino, il y a du monde pour t'aider.

Pas de communauté française, par contre il y a une grosse communauté Américaine.
J'ai eu le plaisir de discuter avec un des membres de la team netduino, ils sont trés sympa :slight_smile:

diabolow:
-Comment savoir si un accessoire compatible avec arduino l'est aussi avec netduino?

Soit ces marqué "arduino xxx uniquement", soit tu le déduit par toi même avec tes connaissances, sinon google + croise les doigts.

diabolow:
-Si un accessoire est compatible arduino et netduino et que j'ai un exemple de code en C pour arduino, il me suffit juste de traduire en ce code en C# pour qu'il fonctionne sous netduino?

Non il te faudra (dans la plupart des cas) tout reprendre de zéro, lire le manuel / datasheet du composant / shield, créer ta propre librairie, débuger, puis faire ton code final.
Certaine librairies existent tout prête sur internet pour la netduino, mais elles sont en nombre trés limité et souvent pour des domaines trés précis.

C'est plus compliqué d'autant plus que l'environnement dot.Net ferme beaucoup l'accès au hardware.

Ferme complétement l'accès au hardware, c'est une machine virtuelle, tu ne peut pas accéder directement au hardware.
Si le framework .net n'implémente pas un module pour un périphérique précis tu ne peut pas l'utiliser.
(Bon ok il y a le module "runtime interop" du .net micro framework qui permet d'exécuter du code assembleur mais bonjour la galére.)

En Arduino, jète un coup d'oeil chez Snootlab et lextronic. 2 vendeurs français. Il y en a d'autres ...
http://shop.snootlab.com/shields-snootlab/90-snootlab-starter-kit.html : n'inclue pas l'Arduino
http://www.lextronic.fr/R2830-combo-pack-arduino.html : idem, sans l'Arduino
Mais c'est basic : platque d'expérimentation, quelques leds, quelques résistances, des fils

Ou sinon http://www.watterott.com/index.php?page=index :grin:
Et n'oublions pas : http://store.arduino.cc/