Motivations and Goals |
---|
Become familiar with frontier based exploration |
Become familiar with the ROS framework |
Tasks (teacher) |
T1e-expl (3 Points) Implement a frontier detector |
Projects |
P1-expl (15 Points) Implement and integrate ROS nodes to solve the exploration task |
Lab resources |
T1e-expl resource package |
P1 resource package |
The Robot Operating System (ROS) is a set of open-source software libraries designed to build and connect robotic applications.
To run the ROS nodes, it is strongly recommended to use either Ubuntu 16 with ROS Kinetic or Ubuntu 18 with ROS Melodic. Detailed installation instructions may be found on ROS web pages ROS Kinetic, ROS Melodic.
On the lab computers, ROS Kinetic is already preinstalled but two more libraries need to be installed before using it.
pip install rospkg pip install netifacesMoreover, it is necessary to source the main ROS setup script, which has to be done in each new terminal instance. Thus, it is recommended to add the following source command in your
~/.bashrc
file
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrcor alternatively when running ROS Meloding
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
Finally, on Ubuntu 16 the STDR simulator is installed using
sudo apt-get install ros-kinetic-stdr-*On Ubuntu 18, STDR has to be compiled from source, which can be found at https://github.com/stdr-simulator-ros-pkg/stdr_simulator.
On Ubuntu 16 and 18 the ROS workspace is created as follows
cd ~/ mkdir rds_ws mkdir rds_ws/src cd rds_ws catkin_make # source the workspace cd devel devel_path=$(pwd) echo "source $devel_path/setup.bash" >> ~/.bashrc source setup.bash
The main study material for ROS is http://wiki.ros.org/ROS/Tutorials. A special attention should be given to ROS message-based communication presented in http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber%28python%29.