TPE de 1ère SI : contrôle du PFS en vitesse variable par RCX

Pour expliquer certains fonctionnements, principes et fondements.
Avatar de l’utilisateur
greatlemon
Level 6
Level 6
 
Messages: 252
Âge: 31 ans

Messagepar greatlemon » Dim Oct 04, 2009 3:14 pm

Etant en 1ère S (option sciences de l'ingénieur), nous devons choisir un thème par groupe de 2 pour réaliser un TPE avec explications et production (film ou construction...) pour ensuite être jugés sur notre travail.
Je pense que ça peut en intéresser certains ici :)
Avec mon binôme nous avons choisi le thème des accéléromètres et de leurs applications (quel rapport, me direz-vous, je vais expliquer).
On va donc expliquer le principe des accéléromètres et leurs utilisations (téléphones portables, airbag de voiture, WIIMOTE).

Notre production :
Essayer d'utiliser une wiimote pour contrôler un bras robotisé en Lego. Cela s'est déjà fait, je sais, mais avec des NXT bien souvent :/
Matériel dispo :
-Mon binôme a la WiiMote et la clé usb bluetooth pour la relier au PC (il a fait le test avec des programmes tout faits, ça fonctionne)
-J'ai les Lego : RCX 2.0 avec la tour infrarouge USB / Power Functions (2 XL, 3 M et 3 récepteurs IR+ 2 téléco)

Solution 1)
-Relier la Wiimote en bluetooth au PC, mouvements interprétés par le logiciel GlovePie
-Script pour GlovePie qui transmet les mouvements à un programme (lequel :think: ?) qui lui demande à la tour USB IR d'envoyer les commandes au RCX pour contrôler les 3 moteurs maximum (peu puissants en + donc mouvements lents :pfff: ) (+ risque de fort décalage :s )

Solution 2)
-Relier la Wiimote en bluetooth au PC, mouvements interprétés par le logiciel GlovePie
-Script pour GlovePie qui transmet les mouvements à un programme (lequel :think: ?) qui lui demande à la tour USB IR d'envoyer les commandes aux 3 RÉCEPTEURS IR (donc 6 moteurs maxi, et plus puissants :D ) et si on se débrouille bien on peut envoyer des commandes PWM (impulsions électriques plus ou moins espacées pour modifier la vitesse du moteur)
Dans ce cas on se passe de l'intermédiaire du RCX, donc moins de décalages c'est sûr.

Donc on préfèrerait la solution 2 :)
J'ai fait des recherches et apparemment certains on réussi à contrôler les Power Functions à partir du RCX en vitesse variable grâce à deux capteurs de rotation, mais je n'ai pas vu ça depuis le pc. Le protocole IR reste le même que ce soit en émettant du RCX ou de la tour usb IR...
http://philohome.com/pf/pf.htm
Dans un encadré sur cette page, Philo explique que LEGO a mis dans un fichier PDF (téléchargeable) le protocole IR des PFS :D

Question : quelqu'un aurait-il des infos sur ce sujet qui pourraient m'aider ? :help:
Merci,
Au plaisir de vous lire :)

Avatar de l’utilisateur
roboleo
Level 8
Level 8
 
Messages: 955
Localisation: Hauts de Seine
expertnxt

Messagepar roboleo » Dim Oct 04, 2009 5:39 pm

@greatlemon.
Je n'ai personnellement pas d'expérience avec le RCX.
D'après tes explications, la solution 2 me paraît la plus adaptée.
As-tu fait un tour ici?
http://www.techlug.fr/Forum/topic1059.html
Avec le NXT, ces expérimentations ont pu être réalisées grâce aux servomoteurs qui intègrent leur propre capteur de rotation.
Mais il faut aussi un capteur IR Link de HITechnic monté sur le NXT qui active les récepteurs et moteurs PFS en mode PWM.

Essaie de te renseigner auprès de Thibaud ou Alban pour le RCX.
Fais aussi un tour sur le site de HITechnic qui offre des téléchargements sur divers capteurs LEGO.
http://www.hitechnic.com/cgi-bin/commerce.cgi?display=home ;)
A+
Roboleo
" Je ne cherche pas, je trouve…" P. Picasso

Avatar de l’utilisateur
greatlemon
Level 6
Level 6
 
Messages: 252
Âge: 31 ans

Messagepar greatlemon » Dim Oct 04, 2009 7:52 pm

Merci pour ta réponse ;)
Effectivement je n'avais pas pensé à aller voir sur le site de HiTechnic ! J'ai regardé un des code pour l'infrarouge et c'est bien compliqué :s
Donc j'ai pensé à un truc :
Dans moins de 3 mois c'est Noël, je vais être bien sage pour demander au Papa (Noël) un joli petit NXT :nana:
Ça faciliterait bien les choses, et comme ça rentre dans le cadre du projet, c'est un bon argument pour l'avoir :lolroule: et je pourrai bien m'amuser avec ^^
Je reste quand même intéresser par mon problème car je trouve que ce serait cool de pouvoir contrôler un robot PFS directos depuis le PC :col:

Avatar de l’utilisateur
roboleo
Level 8
Level 8
 
Messages: 955
Localisation: Hauts de Seine
expertnxt

Messagepar roboleo » Dim Oct 04, 2009 10:26 pm

greatlemon a écrit:Dans moins de 3 mois c'est Noël, je vais être bien sage pour demander au Papa (Noël) un joli petit NXT :nana:
Ça faciliterait bien les choses, et comme ça rentre dans le cadre du projet, c'est un bon argument pour l'avoir :lolroule:

Je ne cherche pas à pousser à la consommation ni à faire l'article pour LEGO, mais c'est effectivement la meilleure solution.
Plusieurs raisons:
1 - le problème est traité ici (voir la vidéo)


et pour la télécommande par PC ici:



2 - Tu entames une nouvelle année, et pour ton projet il vaut mieux avoir du matériel récent
3 - le NXT est compatible avec PFS et tu possèdes tous les éléments (moteurs, récepteurs). Seul IR Link est à ajouter, sauf si tu en dispose d'un (à la limite, t'en faire prêter un)
4 - la télécommande directe d'un NXT à partir du PC est possible
5 - moyennant quelques aménagements, le NXT, jouant le rôle d'une télécommande intelligente vis à vis du véhicule PFS (voir la vidéo), pourrait être actionnée par le PC au lieu de la main. Le test n'a pas été réalisé, mais il doit être possible
6 - enfin se faire un joli plaisir pour Noël
Pour terminer, je précise qu'il faut écrire un programme NXT-G (il est en ligne pour l'essentiel) et que le NXT est capable d'activer 4 moteurs PFS (2 par 2) par canal (4 canaux disponibles)
Voilà quelques arguments qui plaident en faveur de cette acquisition… ;)
A+
Roboleo
" Je ne cherche pas, je trouve…" P. Picasso

Avatar de l’utilisateur
maxlemalade
Level 10
Level 10
 
Messages: 1612

Messagepar maxlemalade » Mer Oct 07, 2009 1:51 pm

ce qui plaide d'autant plus pour l'acquisition d'un NXT, c'est qu'avec ton materiel, je ne veut pas être défaitiste mais ça fait un gros projet et, à mon humble avis, qui n'est pas tout à fait au niveau 1ere S ;)

en fait, le gros morceau de ton projet, à mon sens, c'est le bout de code pour récupérer le signal de la wiimote et le retranscrire en un signal pour la tour IR. j'n'ai pas trop réfléchi au problème (faut dire que j'ai autre chose à faire en même temps ^^ ) mais comme ça, j'imagine que la solution de plusieurs softs séparés n'est pas forcément la bonne. dans l'idéal, j'imagine qu'il te faudrait intégrer le fonctionnement de la wiimote et le contrôle de la tour IR à un même logiciel; ceci sous entendant que tu saches trouver des dll ou des morceaux de codes compatibles entre eux permettant de compiler tout ça dans un même soft.
ensuite, un tel programme sous entends de fonctionner en temps réel, ce qui est encore une difficulté assez coquette dans le sens où il faut maitriser des concepts de programmation et d'optimisation assez complexes.

enfin, bref, même sans entrer dans le détail, la difficulté semble déjà assez importante, voir même trop importante, avec le matériel dont vous disposez :/ alors qu'avec un MXT, à priori, le travail sera facilité puisqu'à priori, le code existe déjà pour réaliser votre projet et vous n'aurez qu'à adapter :) ce qui vous permettra de vous concentrer sur ce qui me semble essentiel dans votre projet:
-étudier le fonctionnement des accéléromètres (démonstration de la wiimote et explication de son fonctionnement, divers essais et mesures pour la caractériser)
-montrer une ou plusieurs applications grâce à un/des MOC légo commandé par wiimote ou utilisant la wiimote comme accessoire (genre, wiimote utilisée en capteur de choc sur une voiture et commandant l'arrêt du moteur... )
-explication rapide du code et des softs employés.
membre fantôme en cure de désintoxication d'internet ludique :p

Avatar de l’utilisateur
Alban42800
Level 11
Level 11
 
Messages: 2473
Localisation: Loire (42)
Âge: 51 ans
expertgbbexpertnxtvainqueurconcours

Messagepar Alban42800 » Mer Oct 07, 2009 2:15 pm

Il y a ça, mais il y a un téléphone entre la wiimote et le NXT :
http://www.fleurey.com/weblogs/franck/index.php?2009/01/12/181-wiibot-lego-nxt-controle-par-une-wiimote

Ici aussi : http://www.techeblog.com/index.php/tech-gadget/wiimote-controlled-robot

Au final il te faudra toujours un programme qui reçoit les infos de la wiimote et les renvoie au robot. Malgrès qu'ils soient tous les 2 en Bluetooth l'interfaçage Wiimote-nxt n'est pas possible :(

Sinon autre solution : Acheter un nxt et un capteur accéléromètre (hitechnic ou lego). Ainsi tu n'a plus d'interfaçage à faire.

Avatar de l’utilisateur
semtou
Level 7
Level 7
 
Messages: 525
Localisation: Toulouse
Âge: 55 ans

Messagepar semtou » Mer Oct 07, 2009 4:05 pm

Alban42800 a écrit:Sinon autre solution : Acheter un nxt et un capteur accéléromètre (hitechnic ou lego). Ainsi tu n'a plus d'interfaçage à faire.

ha pas bête là tu résouts d'un coup tous les problèmes : t'as un accéléromètre, un NXT pour noël et du travail pour faire l'interface : bref un beau programme mais pour moi le reste est possible aussi wiimote>bluetooth>pc>prog??>tour IR>rcx ou nxt et enfin moteurs en pfs ou en rcx. :sweat:
j'ai l'impression que l'évolution possible peu se situer au niveau de la vitesse de réaction du bras robotique.
Dans le cadre de la progression de ton projet cela peut-être le fil directeur : l'optimisation de la réponse du bras car quel intérêt y aurait il a utilisé une wiimote si le bras ne répond pas aussi vite que ton mouvement.


Merci alban pour les adresses :
Dans ce cas par exemple la vitesse du bras n'est pas géniale :s et on cherche l'utilité de la wiimote...


Dans ce cas la réactivité est géniale et la réponse au mouvement de la wiimote semble pas vraiment adapter (sens-orientation etc...)
Chaque solution est plus ou moins ergonomique et rapide à toi de trouver un juste milieu et surtout une cohérence.


Bon courage et bonne continuation, je suivrai ton projet de prêt.
"Ce qui se conçoit bien s’énonce clairement et les mots pour le dire viennent aisément..." Nicolas Boileau-Despreaux
Mon blog = http://semtou.skyrock.com/
Ma galerie photos = http://www.brickshelf.com/cgi-bin/gallery.cgi?m=SEMTOU

cybermaster
Level 11
Level 11
 
Messages: 2205
Localisation: Valence
Âge: 29 ans

Messagepar cybermaster » Mer Oct 07, 2009 5:40 pm

[mylife] Remarque absolument pas constructive, mais ton sujet me fait tilter : mes parents fabriquent des accéléromètres. ;) [/mylife]
Image

Le jour où on mettra les con* sur orbite, j'en connait qui n'ont pas fini de tourner

Avatar de l’utilisateur
greatlemon
Level 6
Level 6
 
Messages: 252
Âge: 31 ans

Messagepar greatlemon » Sam Oct 10, 2009 6:54 pm

Merci beaucoup pour vos réponse :D
Je vais étudier la question, en mettant à jour ce topic quand j'ai du nouveau.

Très intéressant dans la vidéo où un téléphone est utilisé ! Dommage, sur le site de l'auteur et sur la page de la vidéo youtube aucun commentaire n'est fait quant au fonctionnement.

Si j'ai un NXT et que je trouve des explications sur cela j'essaierai (j'ai un smartphone sous Symbian)


Retourner vers De la théorie à la pratique

Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 7 invités