Jakopter peut s’interfacer avec Vicon Tracker pour obtenir les coordonnées du drone dans une salle de motion capture.
Pré-Requis
- Avoir le SDK Vicon présent: Client.h et ViconDataStreamSDK_CPP.so
- Avoir Vicon Tracker 2.2.0 ou plus actif sur une autre machine reliée au routeur de la salle
Utilisation
Il faut tout d’abord lancer le programme
jakopter-vicon [numero]
situé dans le répertoire build/DEBUG généré à la compilation pour communiquer avec Vicon Tracker. L’objet qui identifie le drone doit s’appeler dans Vicon Tracker « ardrone2_[numero] » où [numero] est l’identifiant que vous lui avez attribué.
Dans le script lua, on peut récupérer pour le com_channel numéro 5 (unités: mm et rad):
- En 0, la coordonnée flottante x dans le repère global de la salle
- En 4, la coordonnée flottante y dans le repère global de la salle
- En 8, la coordonnée flottante z dans le repère global de la salle avec z vers le haut
- En 12, la coordonnée flottante eulerienne(Rxyz) en x dans le repère global de la salle
- En 16, la coordonnée flottante eulerienne(Rxyz) en y dans le repère global de la salle
- En 20, la coordonnée flottante eulerienne(Rxyz) en z dans le repère global de la salle
- En 24, la coordonnée flottante w du quaternion dans le repère global de la salle
- En 28, la coordonnée flottante x du quaternion dans le repère global de la salle
- En 32, la coordonnée flottante y du quaternion dans le repère global de la salle
- En 36, la coordonnée flottante z du quaternion dans le repère global de la salle
avec ces commandes:
d.cc_read_float(5, 0) d.cc_read_float(5, 4) d.cc_read_float(5, 8)
d.cc_read_float(5, 12)
d.cc_read_float(5, 16)
d.cc_read_float(5, 20)