This is an old revision of the document!
Poppy-Kine : Stage d'été 2017 PoppyImitatesKinect
Introduction
Les objectifs principaux est travail portera sur la conversion et l’imitation de mouvements humains capturés à l’aide d’une Kinect en mouvements robots joués par Poppy.
- Conversion de l’orientation et la position des jointures en angles moteur de Poppy
- Simulation sur Vrep
Comment l'utiliser
- : Installation de V-rep
- : Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016
- : faire la conversion
- : Simulation sur V-rep
Première étape: obtenir les données de quaternion
- Connectez le Kinect
- Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016
- Enregistrez le fichier sur le dossier mouvement_kinect et le mettez json fichier.
Deuxième étape: obtenir la position des jointures en angles moteur de Poppy
Le code est sur git https://redmine.telecom-bretagne.eu/projects/poppyimitateskinect
- : ouvrir le V-rep
- : lancer la prgrammation Main.py et entrer le nom de fichier de quaternion dans le terminal.
Entrer python Main.py nom_fichier
Par exemple :
python Main.py 20170825_0
L'éntré : Le fichier de quaternion capturé par Kinect doit être enregistré dans le dossier mouvement_kinect .
Lorsque la programmation est lancé, nous obtenons deux fichiers json:
Le dossier mouvement_filtre enregitre les données de quaternion filtrés par un filtre de Butterworth.
Le dossier mouvement_poppy enregitre les données de angle de moteur de Poppy.
NB :
- Lorsque la programe est lancé, la figure de la réponse du filtre et les figures des résultats sont affichées.
- Il faut fermer les fenêtres de figure pour que la progrme avance.
- La Simulation est dans le logiciel V-rep .
Fonction de Code
butterworth.py et filtre.py est le filtre de butterworth.
Les fonctions de Main.py :
creatPoppyData(ex) : Conversion de quaternion à l'angle. ex est le nom d'exercice.
runSimu(PoppyData) : Exécuter la simulation sur V-rep. PoppyData est les données des angles qui sont enregistré sur le dossier mouvement_poppy .
Comment avancer
filtrer les quaternion capturé par le Kinect
Nous utilisons le filtre Butterworth pour filtrer les quaternions.
Filtre passe-bas
Ordre : 5
fs : 30Hz
cutoff : 0.2
Conversion de quaternion à l'angle de moteur
La structure de json fichie dans le dossier mouvement_poppy
{ "positions": { "<time1>": { "<moteur1>": [angle,0], "<moteur2>": [angle,0] }, "<time2>": { "<moteur1>": [angle,0], "<moteur2>": [angle,0] } } }
filtrer les angles
Amélioration
Les angles obtenu ne sont par très précis.
Nous n'avons pas détecter la faisabilité de mouvment. Il y a les cas où le poppy ne peut pas faire le mouvment humaines.
De plus, c'est mieux d'ajouter la gestion de l'équilibre