I’ve just started using Parrot-Sphinx as a software-in-the-loop platform to test my control architecture in an environment quite close to reality. Its combination with Gazebo makes the platform so interesting, therefore I thought: why shouldn’t I use it for my research activity and release the developed software as open-source for other researchers and developers?!
To that aim, I download the Parrot-Sphinx simulator on my Linux machine (Ubuntu 16.04 with ROS Kinetic Kame) and I developed the firmware interface (Sphinx) to allow my code (it is already able to simulate and control the Parrot Bebop 2 in Gazebo) to work with command signals used as input in the Sphinx simulation platform. Unfortunately, during development, I wasn’t able to change or get drone parameters from Sphinx. As I saw in the forum pages (Change mass and inertia of bebop_2), the files used by Sphinx are encrypted. Therefore, it seems that there are no ways to get them from the environment.
Thus, as your knowledge, is there a way (even a manual apart from the online documentation would be fine) to get information (i.e., inertia, mass, etc.) used by Parrot engineers in Sphinx?
Furthermore, to close the control loop I need to know more about the drone status. I started using the bebop_autonomy ROS package but the data published on the topic “/odom” refer to estimated values. As many of you know, have estimated values without having information about noise and bias terms, making controller parameters tuning a challenge. So, my question, is there a way to get data from the data logger (tlm-data-logger function) on a ROS network? I saw some topics on the forum (Reading altitude, velocities and acceleration of Bebop 1), but they used system calls and other stuff.
They might be enough, but when controlling the drone with a 100Hz position control working frequency, they could be critical.
Thank you in advance for all developers and researcher will help me.