We are happy to introduce you today in this article a few words about interfacing between third-party programs and the SimplyCube.
First of all, let me introduce you Christian Barat, who is a robotics specialist (PhD) working at SimplySim at part time and who is also a researcher and teacher at the University of Nice Sophia Antipolis. He is specialized in robotics and image processing. His scientific expertise is a significant asset in our team as he advises us on many issues, from image processing to artificial intelligence, and more globally on the whole robotics simulation domain. His contribution has been crucial to the quality and realism of the SimplyCube. His research job at the University of Nice Sophia Antipolis often leads him to use MATLAB in order to solve scientific problems, and he was interested in seeing how could interact and work together the SimplyCube and MATLAB. Lately he worked on a project where the objective was to control the UAVs from our Drone Simulation Pack with MATLAB.
This project has been made in two steps:
First, Christian created a controller for MATLAB, using its different libraries. In other words, he did a MATLAB workspace in C# to interface with the SimplyCube.
Then, he has implemented a MATLAB code that gets variables from the C#, treats them and sends them back to the C# code. For each of the three drones, this MATLAB code has:
- An input variable, which is the drone pose (position + orientation) from the DroneLibrary of the Drone Simulation Pack.
- An output variable, which is a table of double values containing flight instructions for the UAV (demand signals).
- A 3D plot of the trajectory of the drone.
As a result, visible in this video, the three drones fly in a SimplyCube simulation with a MATLAB PID Controller:
You will be able to find the MATLAB interfacing controller in a few months in the SimplyCube official release.
If you have any questions or feedbacks about this feature, feel free to post it on our forum and we will be happy to answer you in the shortest delays.