- License: MIT
- License File: LICENSE (in the project directory)
-
For the final project, me and my teammate have decided to choose multi-robot/swarm action category for Acme’s new line up of autonomous robots. These are developed as part of a 5 year product road map for ACME in developing their fleet of autonomous. We will work on the deliverables and provide a high-quality solution following the essential software engineering practices which they can directly integrate into their product.
-
We will deploy a swarm of 20 turtlebots, which will collectively perform a task of crossing a narrow passage. Their default pattern will be a square or rectangle.
-
swarm_robot_ros_sim contains packages each of which features a set of functionalities for this simulation platform:
-
swarm_robot_description package describes the robot models and simulation environment initialization files.
-
swarm_robot_msgs folder contains packages for customized messages, services and actions that will be used in other packages.
-
swarm_robot_controller package contains the low level controllers for the swarm robots.
-
swarm_robot_simulation package contains the swarm algorithms.
- The purpose this project is to deploy simple swarm algorithm on 21 bots to form and deform a pattern in order to navigate a narrow passage. linear curve fitting algorithm be used to realize the line formation and simulate the project in Gazebo.
- Dhinesh Rajasekaran
- UID: 119400241
- Arshad Shaik
- UID: 118438832
- Ubuntu 20.4
- VS Code/Terminal
- Gazebo
- ROS1 noetic
- https://docs.google.com/spreadsheets/d/1qG9Fnqy8YEA1hoCkJ37Z2tK7iZklYtnleDhth3kJcko/edit?usp=sharing
- doxygen (run below command to install)
sudo apt install doxygen
- lcov (run below command to install)
sudo apt install lcov
- Please find 'src' folder of this repository to know more about the messages and services
- The test case will subscribe to the topic and check for the expected output
- Navigate to workspace
cd ..
catkin_make
cd catkin_ws
source devel/setup.bash
roslaunch swarm_robot_description two_wheel_robot.launch robot_quantity:=20 half_range:=0.5
rosrun swarm_robot_simulation two_wheel_robot_line_formation _spring_length:=0.7 _sensing_range:=2.0
cd catkin_ws
source devel/setup.bash
catkin_make <tests>
- From the Final-Project_Group-3 folder src directory, run the below command
cpplint --filter=-build/c++11,+build/c++17,-build/namespaces,-build/include_order subscriber.cpp publisher.cpp > ./../results/cpplintreport
- From the Final-Project_Group-3 folder src directory, run the below command
cppcheck --enable=all --std=c++17 *.cpp --suppress=missingIncludeSystem --suppress=missingInclude --suppress=unmatchedSuppression > ./../results/cppcheckreport
doxygen <cpp file>
cd html
firefox index.html