|
Ah oui, je me rappelle bien.
Je tiens aussi à souligner que ta compagne a été assez précise dans sa demande. De mémoire, je lui ai présenté différents trucs dans plusieurs thèmes et à chaque fois dans un budget donné, et elle a bien su cerner les choses. Parce que des fois, on me demande un truc, sans budget fixé, sans connaitre les goûts de la personne, etc. Genre je suis devin. Amuse-toi bien. |
|
Peux-tu préciser ta réponse ? Quand tu dis qu'il y en a un par défaut, peux-tu donner la source du document sur ce sujet. J'ai lu le fil de Roboleo sur le sujet et en particulier celui là, topic4825.html J 'ai laissé un message sur le blog de Hitechnic, http://www.hitechnic.com/blog/uncategorized/pid-block/ pour leur demander s'ils avaient un bloc pour l'EV3, mais bizarrement ils ont supprimé ma question et ne m'ont pas répondu. En résumé, il est très important pour moi de savoir si on peut imposer une position aux servo-moteurs de l'EV3. Par exemple, vas à la position 30°, et non pas tourne de 30°, ça je sais faire. C'est exactement ce qu'explique Roboleo. Si quelqu'un avait un exemple alors là, ce serait super. Merci par avance. |
|
A moins que j'ai loupé la partie du cours qui en parlait, non tu ne peux pas lui dire d'aller jusqu'à un angle relatif
Tu peux lui indiquer une rotation de x°, x tours, ou x sec |
|
C'est bien là tout le problème ! C'est pour cette raison que Hitechnic a créé un nouveau bloc moteur (je parle de programmation là) pour le NXT en remplacement du bloc d'origine. La question est, existe t-il un bloc similaire pour l'ev3 ? Certes, je sais bien que l'on peut faire ses propres blocs en associant plusieurs blocs afin de rendre la programmation plus structurée et donc plus lisible. Mais là, il ne s'agit pas de cela. Il s'agit de remplacer le bloc moteur actuel par un nouveau beaucoup plus élaboré (sans doute programmé en c). |
|
Les "blocs" NXT sont normalement compatible avec l'EV3 il me semble (en tout cas, dans la doc ils disent que ça l'est).
J'ai pensé à une solution, mais ça dépend bien sur de l'utilisation qu'il veut faire du moteur. Si c'est pour un déplacement de robot, il peut utiliser le capteur boussole, qui lui a une position relative, le nord.je retire ce que j'ai dis, c'est une connerie, désolé, je suis pas du matin et je n'ai pas encore bu mon café |
|
je viens de tester et j'ai bien peur qu'il ne soit pas possible d'importer directement les blocs NxtG dans le soft ev3
Après rien ne t'empêche de refaire le bloc PID nxt G en ev3, ca se fait bien. Tu commande le moteur en puissance et tu fait manuellement ta boucle d'asserissement pour moduler cette puissance d'entrée avec un truc du style : puissance = k1 x erreur + k2 x dérivée (erreur) + k3 x intégrale(erreur) |
|
Faudrait que je regarde comment sont fait les blocs un de ces 4.
Je n'ai pas touché à du code depuis 7 ans, mais c'est comme le vélo, ça ne s'oublie pas j'y pense, on peut utiliser des variables globales avec l'EV3, donc on peut enregistrer la dernière valeur d'angle et l'utiliser dans un calcul pour le nouveau déplacement. AncAngle = 0 si on veut une rotation de AngleRelatif (rotation par rapport à une position relative 0), la rotation réelle AngleReel (par rapport à la position à l'instant T) sera AngleReel = Anglerelatif - AncAngle et on initialise AncAngle = AngleRelatif Si tu ne sais pas comment utiliser les variables, tu peux t'aider du paragraphe 13 de cette page https://sites.google.com/site/gask3t/lego-ev3/the-missing-commentaries/ev3-beyond-basics-exercises-12-18 Ou de ce tutoriel en vidéo : https://dl.dropboxusercontent.com/u/31442572/EV3%20Tutorial/DataOps/index.html |
|
Je vous remercie pour votre aide.
En fait, quand j'étais en activité, j'étais informaticien, et j'ai donc pratiqué pas mal, l'assembleur, cobol, Basic, C etc... Le problème là est un peu plus compliqué qu'un simple problème de variable. Si par exemple, je dis à un moteur de tourner de 30° dans un sens, puis de 30° dans l'autre sens, en principe, il revient à sa position d'origine. Et bien non ! Il revient à sa position d'origine +- une erreur, et c'est là que le PID tel que Roboleo l'a expliqué prend tout son sens. Bien sûr, je pourrais me lancer dans la programmation de bloc, mais justement, c'est ce que je voulais éviter, car je sais par expérience ce que cela coute d'aller mettre son doigt là dedans. Je ne suis pas tout seul dans cette galère, si une entreprise comme Hitechnic a fait ce développement, c'est que c'est assez compliqué. Et c'est également pour cette raison que Roboleo en a fait de si longs développements. Bon, peut-être que je me plante complètement, j'aimerais bien, mais je ne crois pas . En tout cas, si vous avez des idées, merci d'avance. |
|
Ma méthode permet de définir une rotation à partir d'une position d'origine, mais ne tient pas compte de l'imprécision de la rotation, en effet.
|
|
Salut,
D'expérience avec le nxt quand les fonctions fournies ne te permettent pas d'avoir le résultat voulu (précision) et bien t'es bon pour faire à ta sauce et cela prends du temps. Je pense que tu devrais aller sur les forums spécialisés (en anglais) pour plus d'infos. il y avait quelques pointures qui confirmeront et te proposeront des solutions. |
|
j'ai regardé un peu leur site, je n'y ai rien vu lié à l'EV3. Ce qui expliquerait la suppression de ta question (ça n'excuse pas pour autant l'impolitesse de ne pas avoir répondu). Pour le moment, je ne me suis guère penché sur l'EV3, j'ai regardé le fonctionnement général via les tutoriels fournis, mais je n'ai pas pris le temps d'approfondir. Il faut vraiment que je m'y mette. J'ai finalement trouvé ça de façon indirecte (en cherchant sur le site, je ne trouvait rien qui fasse mention à l'EV3, mais par google ... oui ) concernant l'EV3 sur HiTechnic : http://www.hitechnic.com/downloadnew.php?category=38 le 1er bloc ne correspondrait pas ? |
|
Tout à l'heure, je n'avais pas beaucoup de temps pour vous répondre, désolé.
Oui, c'est ce que j'aimerais faire. Mais j'ai l'impression que je vais être obligé de mettre les mains dans le cambouis et je préférais éviter.
Merci pour tes liens. Je ne connaissais pas. J'ai l'EV3 éducation qui comprend un tutorial, mais ça complète bien.
Il y a quelques temps, j'allais sur http://www.mindboards.net/ , mais aujourd'hui, j'ai une méchante alerte concernant leur certificat de sécurité. Si tu as des sites a me conseiller, merci par avance.
Oui, j'avais déjà vu cette page sur leur site et c'est pourquoi je leur avais demandé la version du Motor PID Bloc pour EV3. Non, malheureusement, ce bloc concerne le Gyro Sensor. Sur le lien du bloc NXT, on peut voir la dénomination et l'importance qu'ils accordent à ce sujet, http://www.hitechnic.com/blog/uncategorized/pid-block/ L'idée, ce n'est pas de déplacer un robot, cela, avec le capteur d'angle, je m'en sort très bien. L'exemple de base, c'est d'activer un actionneurs qui appuie sur un bouton. Si le moteur subit une dérive consécutive à une erreur angulaire, très vite, c'est la cata. J'aurais beau mémoriser la position du moteur dans une variable, j'aurai la valeur de la variable, mais pas la position exacte et réelle du servo. Le pire, c'est que la doc de l'EV3 éducation dans le chapitre "Journalisation des données" sur le mode oscilloscope est illustrée par l'enregistrement de l'angle de rotation de 2 moteurs : "L'illustration suivante montre les données des capteurs de rotation de deux moteurs sur un robot qui est poussé vers l'avant." Comment ? De quoi s'agit-il ? Mystère ! |
|
J'ai les 2 version, classique et education, mais n'ai pour le moment regardé (je devrais dire jeté un oeil, je n'y ai pas passé beaucoup de temps) que le logiciel et la doc de la version éducation.
Tu avais posté ta question sur cette page ? Si oui, ils ont du considérer ça comme H.S. Peut-être que posté dans la partie questions en général, ils répondraient. |
|
Créer le bloc, je pense que c'est l'affaire de 5 minutes, un quart d'heure tout au plus. Après le plus long sera de trouver les bonnes valeurs de k1, k2, k3... sur ce point là je te rejoins, on peut vite y passer des heures au carré... Faudrait tester en mettant direct les valeurs par défaut de l'ancien bloc nxt g, avec un peu de chance ca pourrait donner quelque chose d'assez propre. |
|
Oui, c'était bien sur cette page. Tu as raison, je vais reposer la question,.
Bon, et bien, je vais m'y mettre, mais je pense que cela va me demander un certain temps, D'autant que mon niveau en EV3-G est celui d'un débutant et que Madame Oracid a décidé de refaire toutes les peintures de la maison. |
Retourner vers Discussions sur les modèles
Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 2 invités