This repository is for the purpose of sharing files for my autonomous robot using Visual SLAM project. To learn more about the project and view demos, please visit the Project Page: Autonomous Robot using Visual SLAM
base_controller.ino
is an arduino sketch which was uploaded to the Arduino Mega. It is essentially a ROS Serial Node (must install ROS Serial library). The node listens to thecmd_vel
topic and issues PWM signals to the motor controllers used by the differential drive robot.tf_broadcaster.cpp
is a ROS node that published the transform from the camera's origin to the robot's origin, essential for odometry and working with ROS's navigation stacksynced_rgbd.launch
is used to launch the following nodes/launch files on the robot's Raspberry Pi 4:
rs_rgbd.launch
to start published sensor data from the Inter RealSense D435 RGBD sensorrgbd_sync
node along with a nodelet manager to synchronize and compress the RGB and Depth data before publishing over the networkrosserial
nodetf_broadcaster
node to braodcast the transfrom from camera_link to base_link to odom for navigation
- The
/ros_robot
folder contains the necessary files that are required for running Visual SLAM and Autonomous Navigation on the remote computer. Simply launch theSLAM_with_teleop.launch
to start mapping an environment orautonomous_navigation.launch
to issue goals to the robot (will need to launch RVIZ seperately) from the remote computer after launching thesynced_rgbd.launch
file on the robot.