References
Project references
Last updated
Project references
Last updated
The entire Swarm in Blocks platform developed relies on several existing libraries, packages, and algorithms that have facilitated our development. In this section, we will cover everything we use for the development of our project.
Obviously, the whole project was developed based on Clover and everything that was made available to us served as the basis for our project.
Our project relied on the majority use of the Python language. However, in addition to it, we made use of Java Script and the C language for the development of some applications. Also, coming out of programming, we use the HTML and CSS markup languages.
In the case of Python, we can emphasize some specific libraries that we have made use of for development.
Now, of the libraries linked to ROS, we highlight the use of those listed in the following table.
In addition to the references already mentioned, some Github repositories inspired us a lot for our applications and deserve to be mentioned:
Clover- CopterExpress
Description: All the basic clover platform, developed by COEX. We used this core repo to make some general improvements in addition to those needed for Swarm in Blocks.
Blockly- Google
Description: Before improving, it was necessary to study and understand how Blockly worked in its file base, for that, we used the official Blockly repository, which is very descriptive and intuitive.
ImageView- Pierriko
Description: We used the described algorithm as the basis for creating an image Subscriber in the WXPython interface via ROS.
Gazebo models and worlds collection- Chaolmu
Description: Repository used to get gazebo worlds. We got a world that is prepared for drone racing.
Interactive web-based terminal
Description: Repository with an explanation of the basic fundamentals of creating a web-based terminal using web sockets.
Libraries | Features |
---|---|
ROS Libraries | Features |
---|---|
NumPy
Python library for numerical scientific computing.
Matplotlib
Python library for 2D and 3D data visualization, with several graphics and customization options.
OpenCV
Computer vision and real-time image processing library, with support for several programming languages.
Tkinter
Python standard library for creating simple, portable GUIs (Graphical User Interfaces).
WXPythonGenericName
Python GUI library for creating cross-platform desktop applications.
Thread
Python library for concurrent programming, allowing the use of threads for concurrent tasks.
rospy
Client interface in Python for the ROS (Robot Operating System) communication system in robotics.
roslib
Roslib is a Python library for communicating with the ROS (Robot Operating System) framework.
tf2_ros
The tf2_ros library provides a ROS interface to the TensorFlow 2 transformation system.