Lablet AP101 Lecture1
Lablet AP101 Lecture1
https://www.artpark.in/
Lecture contents
- Introduction to Robot Operating System (ROS)
- Middleware concept
- ROS Distributions
- Usually the installation proceeds without errors if all the instructions on the Wiki page are
correctly followed, but a few potential failure cases exist
- Bad network / loss of connectivity during install.
- Mirror sync scheduled on the servers hosting the binaries and packages we are
installing
ROS Installation
ROS Installation - Environment variables
ROS Workspace - Directory structure
- A directory structure to organize source code in a ROS project - Source space (‘src’)
- Since ‘catkin’ is the most commonly used build tool, ROS workspaces are
often called catkin workspace.
ROS Workspace - Directory structure
ROS Workspace - ROS development package
- A ROS package is a “special” folder where code that is developed by “YOU” is written.
- Two files distinguish a ROS package folder from others
- Existence of package.xml
- Existence of CMakeLists.txt
$ catkin_create_pkg <your_package_name> <your_package_deps>
Run the above command in the ‘src’ space.
ROS Workspace - ROS development package
Running ROS in a Docker container
- Docker is a containerization tool to enable the creation of a stand-alone development
environment [4]
- Prevents polluting your own laptop or desktop environment with installations you may not
use later
- Common in production systems.
FROM osrf/ros:melodic-desktop-full
USER root
RUN apt-get -y update && \
apt-get install -y wget && \
sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release
-sc` main" > /etc/apt/sources.list.d/ros-latest.list' && \
wget http://packages.ros.org/ros.key -O - | sudo apt-key add - && \
apt-get -y update && \
apt-get install -y python-catkin-tools
Running ROS in a Docker container
- Specific directories on your host computer can be mounted inside the container
- All runtime dependencies are only needed in the container
- More on this in the lab session on Saturday
References:
[1] https://www.ros.org/about-ros/
[2] http://wiki.ros.org/Distributions
[3] http://wiki.ros.org/melodic/Installation/Ubuntu
[4] https://www.docker.com/