A robot system that can efficiently schedule robot tasks according to environmental information, including room occupation. This project is part of my master thesis -- Simulation of robot task scheduling method
- Log in to MySQL server
mysql -r root -p
- Use SQL schema to create tables
source /home/[user_name]/catkin_ws/src/robot_navigation/sql/run.sql
- Download this project to home/catkin_ws
git clone https://github.com/xuanjiao/robots_task_scheduling.git
- Start Gazebo simulator
roslaunch turtlebot3_gazebo multi_turtlebot3.launch
- Start navigation stack
roslaunch turtlebot3_gazebo multi.launch
- Start ROS nodes: robots, centralized pool, charging station, sensor simulator, etc.
roslaunch robot_navigation move_demo.launch
- The door sensors can measure and store door status in the local table.
- The robot can request the sensor data (table) as long as it enters the sensor range.
- The robot then sends the acquired room occupation table to the centralized server.
- The centralized server makes decisions based on the information from the robot and the environment. The decisions include selecting a navigation task, asking the robot to gather information from a specific sensor, asking the robot to recharge at a charging station, etc.