Blender pour Poppy

J’explique dans ce post pourquoi cela pourrait être intéressant d’utiliser Blender avec Poppy, pour personnaliser le design, réaliser des animations promotionnelles ou même pour la programmation:

J’ai vu que @openbionics le proposait comme alternative à solidworks dans ce post.
J’ai trouvé ce wiki sur blender et la robotique, mais il est très ancien.

1 Like

Bonjour,

Le LAAS propose Morse, un simulateur pour la robotique, fondé sur le Blender Game Engine. Quelqu’un l’a-t-il déjà testé ? Je ne sais pas quels critères retenir pour le comparer à V-Rep.

De plus, des plugins web pour Blender Game Engine ont déjà été créés, ce qui est intéressant. Le dernier en date étant Burster, mais il ne me semble plus maintenu depuis 2012.

–N–

La killer app de v-rep est qu’il marche simplement et directement sur n’importe quel OS. Morse c’est beaucoup plus compliqué à installer.

1 Like

Merci pour ces pistes.

C’est vrai que V-rep est assez simple, mais je ne crois pas qu’on puisse l’utiliser avec des textures (?) si l’on souhaite par exemple réaliser des animations promotionnelles du robot.

De plus, avec Blender, si on avait le plugin ou l’appli nécessaire, on pourrait à la fois commander le robot et customiser les pièces à imprimer. Une sorte de tout en un open-source, donc.

Dans l’idéal, il faudrait qu’on puisse utiliser le pose-mode pour bouger le robot de manière graphique et que cela soit répercuté sur le véritable robot au besoin. J’imagine que ce serait possible avec des scripts ou des plug-in.

Ce que j’aimerais, c’est pouvoir se passer d’une programmation en ligne de code, mais je crois que d’autres projets basés sur une interface web sont en cours sur ce plan.

Sinon, on m’avait dit qu’on pouvait trouver les servomoteurs Dynamixel déjà modélisés. C’est effectivement le cas mais les formats utilisés ne sont pas importables dans Blender (cf http://www.robotis.com/xe/download_en/26324 ).
Cependant ce post fournit une solution, en utilisant Freecad.

J’ai travaillé sur un script permettant de synchroniser les mouvements d’un robot modelisé et animé dans Blender à ceux du robot réel. J’utilise pypot mais uniquement l’API bas-niveau (gestion des moteurs).

Le but est de permettre à des animateurs d’animer un robot et par la suite de pouvoir créer des primitives sans coder.

Je suis en train de mettre ça “au propre” pour pouvoir le partager avec la communauté.

7 Likes

Tu peux montrer une vidéo de ce que ça donne ? Je suis curieux de voir ça en action !

Super bonne idée, ça va intérrésser plein de gens!
J’ai hate de voir ce que ça donne!

J’ai fait un exemple rapide :

https://dl.dropboxusercontent.com/u/50464815/VID_20150908_111840.mp4

8 Likes

Très très intéressant !

N’hésite pas à mettre du code en ligne et à poser des questions si tu as besoin d’aide sur comment intégrer ce que tu as fait à l’existant !

Ah oui c’est tres interessant !
Niveau du fonctionnement, tu produis le mouvement sur blender pius le robot le reproduit ? Je voulais savoir si tu pouvais faire l’inverse en donnant des poses au robot pour ensuite les relier de manière lisse sous blender.
Peut on eteindre un moteur ? Compliant = true ?

En tous les cas, beau boulot !

Oui le mouvement est produit dans Blender et reproduit sur le robot. Je n’ai pas implémenté l’inverse mais ce serait possible et très intéressant. Le robot pourrait servir d’interface tangible pour définir les keyposes et ensuite, Blender servirait à préciser les courbes.

Pour la compliance, actuellement elle est statique. J’ai pensé à rendre cette propriété animable, mais je suis un peu bloqué par Blender sur ce point.

1 Like

Super ! C’est exactement ce que je recherchais ! J’attends de pouvoir l’utiliser quand tu auras tout fini !

Il y a du nouveau sur ce projet ?

Je viens de mettre en ligne le projet sur GitHub :

J’ai un peu mis du propre dans le plugin et notamment j’ai créé des raccourcis pour activer ou désactiver la synchronisation sans avoir besoin de redémarrer Blender. Pour y accéder, il faut entrer ESPACE puis Start Synchronizer / Stop Synchronizer.

S’il y a des questions ou qu’une partie du code n’est pas compréhensible et non commentée, n’hésitez pas à ouvrir une “issue” sur GitHub.

6 Likes

C’est noël avant l’heure !

Merci pour la contribution, ça va ouvrir plein de nouvelles possibilités.

Je viens juste de télécharger ce plug-in, avec beaucoup de retard.

Pas trop le temps de faire un test aujourd’hui mais je vous tiens au courant.

@EtienneB : As-tu mis ce lien sur un site genre blenderclan ou autre, pour avoir des testeurs ?

Bonjour Etienne,
Est-ce que vous avez réussi à mettre au propre votre travail? Je suis fortement intéressée à savoir un peu plus de renseignements.Actuellement, j’ai un projet professionnel et j’aimerais trop m’en servir de Blender pour montrer Poppy Humanoid. Pour ce qui concerne Blender je suis débutante, est-ce que vous avez des conseils ou bien des tutoriels à me recommander, s’il vous plaît?
Merci d’avance.

Bonjour,

@Animatrice_Epn
Non, je n’ai pas mis le lien sur blenderclan. Il faut avoir un robot pour pouvoir tester donc je pense que les utilisateurs potentiels sont principalement sur ce forum.

@Chibimoon
Le code actuellement en ligne est utilisable. J’ai aussi mis quelques informations pour installer le plugin. N’hésitez pas à me poser des questions ici si besoin.
OpenClassRoom est une bonne source de tutoriels Blender, par exemple celui-ci sur l’animation avec Blender.

merci @EtienneB en fait suivi toute la partie que tu as mis sur README.md , j’ai également télechargé poppy torso mais après je ne sais plus comment m’en servir. Est-ce que tu pourrais m’expliquer avec un peu plus de détails comment il faut faire après les étapes que j’ai suivi s’il te plait? (je suis étudiante et comme je l’ai dit c’est la première fois que j’utilise ce genre d’outils donc je suis un peu perdue).
Merci d’avance :grin:

En l’état, le logiciel est fait pour un Poppy Torso physique connecté en USB (grâce à un USB2AX par exemple).

Tu peux tester que ton Poppy est bien connecté en utilisant l’outil herborist.

Si herborist te montre bien tous les moteurs, tu peux lancer Blender en executant dans un terminal le script launch.sh depuis le dossier BlenderPoppy.

Une fois que Blender est lancé, il faut appuyer sur la touche ESPACE puis rechercher “Start Synchronizer” pour démarrer la synchronisation du robot virtuel avec le robot réel. Essaie de déplacer une des cibles à côté des mains par exemple.

Pour désactiver la synchronisation, il faut appuyer sur la touche ESPACE et rechercher “Stop Synchronizer”.