Robot contrôlé par netbook via internet

Bonsoir, je viens présenter mon robot en espérant que quelqu'un pourra m'aider à le perfectionner.

Le principe de mon robot:

mon robot avance à l'aide de 2 roues indépendantes ( et d'1 roue "folle") contrôlées par 2 moteurs, chacun contrôlé par un pont en H. (j'ai récupéré tout ça d'une voiture téléguidée, bien que je comprenne parfaitement le fonctionnement, au moins tous les composants étaient déjà montés et bien dimensionnées)

mais par quoi sont pilotées les moteurs?
Les ponts en H sont pilotés à l'aide d'une arduino 2009, en MLI (PWM pour les anglais :slight_smile: )
Qui tire ses infos d'une liaison série avec mon netbook.
Le programme sur l'arduino est donc simple: du type "si-la-donnée-série-est-1-j'avance-si-c'est-2-je-recule-sinon-bah-tant-pis-je-bouge-pas"
J'exagère à peine.
Sur mon netbook on a un programme Processing, qui fonctionne, très simplement lui aussi: "flèche-haut-j'envoie-1-flèche-bas-j'envoie-2-sinon-je-me-repose".
Mais alors pour contrôler ton robot tu dois courrir après?
Mais non. Mon netbook est connecté à internet par wifi, ce qui me donne pas mal de moyens de le contrôler à distance:

1°)Utilisation de 2 sketchs Processing: 1 serveur, 1 client. ça en a pas l'air mais c'est le plus simple, tellement simple que je n'ai pas pris le temps de le finaliser.

avantage: libre, solution réalisée moi même, donc extrêmement personnalisable
Inconvénient: ne marche qu'en réseau local!

2°)Utilisation d'un client VNC: mes 2 ordis sont connectés, lorsque je bouge la souris de mon ordi de bureau cela fait bouger le curseur de mon netbook, pareil avec le clavier (mais non avec les infos de touches du clavier en fait, le clavier bouge pas -_-") donc mon arduino reçoit ses ordres comme si je pianotais sur mon EeePC .

Avantages: fonctionne très simplement et automatiquement, mon netbook a juste à accéder au net et moi aussi (pas de routages compliqués nescéssaires)
Inconvénients: C'est pas libre, c'est pas moi qui l'ai fait, et c'est pas optimisé!

3°)Utiliser une solution DIY(do it yourself, de l'anglais du même nom), sans DynDNS et autres méchancetés... Le problème est que je suis un peu à court d'idées! La solution actuelle que je vois: un logiciel (l'émetteur) capte mon clavier et en fonction il envoie un truc sur le net (un flux RSS, il modifie le code source d'une page web ou autre...) pendant qu'un autre, le récepteur, vérifie très souvent ce flux RSS ou cette page web afin d'en tirer les instructions du robot!

Avantages: paramétrables, rapide, automatique dans le fonctionnement, facile...
Inconvénient: Utopique je crains.

Je pense que vous avez compris, je cherche à mettre en place le point n°3. Pour les connaisseurs, je ne veut pas d'adressage machine fixe, je ne veux pas qu'il soit nécessaire d'ouvrir des ports de ma box, je veux que ce soit gratuit, et si possible que je le comprenne.
Pourquoi est-ce que je suis si difficile? parce que dans l'idéal, mon robot doit pouvoir se connecter n'importe où et je doit pouvoir lui envoyer des données de n'importe où.

[u]un ptit dossier de photos[/u]

Techno Adobe Flash :slight_smile: en p2p

http://labs.adobe.com/technologies/cirrus/

Merci pour ta réponse, mais je ne connais pas du tout le programmation sous java (j'ai uniquement des bases sous processing)

ce n'est pas du java mais de l'action script :slight_smile:
c'est plutôt simple et conviviale quand on viens de processing .
Si tu bosse sur windows tu a un ide FlashDevelop en open source.

Si sa correspond a ton besoin, j'essayerais de poster un projet dans la semaine pour que t'ai une base ...

Je suis en train de me renseigner, ça me plaît pas mal... Je devrais donc créer 2 "action script" (émetteur/récepteur)? mais est-que ça gère la liaison série pour envoyer les données à l'Arduino?

non malheureusement non, mais tu peut te connecter a un sosket serveur ( ce dernier peut etre ecris en cpp python ou processing ) et celui la meme peut ouvrir une liaison serie :slight_smile:

http://www.arduino.cc/playground/Interfacing/Flash

Donc je résume: je crée un programme action script, avec interface graphique, pour acquérir les données (ma "manette"), un action script (sur mon netbook?) pour recevoir les données à travers adobe techno flash, couplé à un sketch processing qui reçoit les données et envoie en conséquence sur le port série :D... C'est ça? ça ne sonne pas aussi simple que je le voudrai ;D mais je pense que ça réalise bien ce que je souhaite!

Exact :wink:
y'a une lib as3
http://code.google.com/p/as3glue/

coté unité de contrôleur
manette->processing serial to socket ->as3 --> cirrus

coté robot :
cirrus --> as3 --> processing serial to socket

Lorsque tu compile l'as3 tu as la possibilé de produire une application AIR ou swf !

le swf te permettras d'être embarqué sur une page web.
l'application Air par contre elle peut être desktop, iphone, et android :slight_smile: (bien pratique .. )

@+