
install ROS Noetic on Ubuntu 20 by configuring repositories, adding ROS sources, and setting up SSH keys before a desktop full install and sourcing the environment to run roscore.
Learn to integrate ROS tools into our C code using the ROS C libraries, and use ROS terminal commands to debug and ensure the code behaves as expected.
Set up a ROS catkin workspace, organize a source folder with packages, and build with catkin_make. Create C++ ROS package using catkin_create_pkg and dependencies like roscpp, rospy, std_msgs, and sensor_msgs.
Create a simple ROS publisher in C++ that publishes a hello world string with a counter on the hello_world topic at five messages per second.
Learn to build a ROS C++ subscriber, subscribe to the hello world topic, process messages with a callback, and keep the node running with ROS spin.
Learn to use the ROS parameter server to store wheel radius and other attributes, and query, set, dump, and load them via terminal and code.
Explore ros packages, install the usb_cam package with noetic, and run roscore, rosrun, and roslaunch to publish and view usb_cam image_raw topics.
Discover how to simulate a robot in ROS using Gazebo and RViz, test software without a physical robot, and visualize sensor data like cameras, lidars, and GPS.
Learn to visualize a ROS robot in simulation with RViz and rqt. Visualize robot models and tf transforms, monitor topics, and play back rosbag data.
Learn how to use the Robot Operating System (ROS) platform which is used to program real world robotics. This course is designed for those who want to learn to program robots using one of the most widely used coding languages in industry: C++. The coding in this course is done in C++ using ROS Noetic on the Ubuntu 20.04 operating system.
This course will go over installation of ROS, how to develop code that uses the framework, and even go over simulation tools so you can make your own robot and control it in simulation, with code that can easily be ported to a real robotic system.
The course is broken into 6 main sections:
Course Introduction
Environment Setup
ROS Overview
Using ROS in C++
Robotics Simulation
Course Outro
Section 1 is a general introduction to the course.
In section 2 you will learn how to setup your computer to be able to run ROS. This includes utilizing the Ubuntu operating system, installing ROS, and introducing you to the code editors we will be using in this course.
In section 3 I will teach you at a high level what "tools" are included in the ROS framework, and what each of them do.
You will spend the majority of this course in section 4, learning how to implement all the various ROS tools in your very own C++ code.
Section 5 will touch on using the simulation and sensor data visualization tools ROS has to offer.
And lastly the course outro will go over what you can do once you have completed the course, as well as some frequently asked questions and a survey to help me improve the course.
So what are you waiting for? Let's get to programming, using the most widely used open source robotics platform, ROS.