Pilot project for Aalto University Factory of the Future in the Cloud
Version 1.0.2
Operating System: Ubuntu 18.04;
Installed Robot Operationg System (ROS), version - melodic (installation instruction: http://wiki.ros.org/ROS/Installation);
Installed Gazebo simulator, version 9.0.0
rospy library (installs automatically with ROS)
mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src/
git clone -b melodic https://github.com/Ivan2488/mir_robot_aole.git
sudo apt-get update -qq sudo apt-get install -qq -y python-rosdep sudo rosdep init rosdep update rosdep install --from-paths ./ -i -y --rosdistro melodic
source /opt/ros/kinetic/setup.bash catkin_init_workspace cd ~/catkin_ws catkin_make -DCMAKE_BUILD_TYPE=RelWithDebugInfo
1. Open a terminal window and type the following command to initialize simulation and robot description nodes:
roslaunch mir_gazebo mir_SF_world.launch
2. Open another terminal window and type the following command to initialize the position controller node:
rosrun move_node old_contr.py
The node takes coordinates and provides velocity control signals to the robot
3. The control node code can be accessed at "/home/amr/catkin_ws_3/src/mir_robot/move_node/src/old_contr.py".
Change the control algorithm according to your needs.
Different improvements can be made to optimize and develop the project in future:
-
Put ROS nodes-topics communication-related parts of old_contr.py script into separate file in order to receive a higher level of abstraction during development of control algorithm.
-
Include SLAM (Simultaneous Localization And Mapping) algorithm into control node by using LiDAR sensor data
-
Add more models related to Aalto Smart Factory (e.g. Conveyors) to the environment world located at YOUR_CATKIN_WS/src/mir_robot_aole/mir_gazebo/sdf/SF/model1.world"
-
Implement control of several robots
- Ivan Kolodko ivan.kolodko@aalto.fi
- Udayanto Atmojo udayanto.atmojo@aalto.fi
MiR100 robot model description, parts of launch files. Copyright (c) 2018, DFKI GmbH, BSD License (https://github.com/dfki-ric/mir_robot)
The rest of this project is licensed under Apache 2 license