Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository

Repository Summary

Description
Checkout URI https://github.com/road-balance/gcamp_ros2_basic.git
VCS Type git
VCS Version main
Last Updated 2023-03-16
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

GCamp ROS 2 Basic

ROS 2 Basics with Gazebo Simulations

Feel Free to use this repo as an template code πŸ˜€

News

There’s Youtube Lecture note for all codes, all packages (Written in Korean)

There’s Lecture note for all codes, all packages (Written in Korean)

You can pull prepared Docker Image for this lecture. All you need to install is already prepared in this setup!

docker pull tge1375/gcamp-ros2-foxy:0.0.4
docker run -it -p 6080:80 --name gcamp_ros2_foxy --privileged tge1375/gcamp-ros2-foxy:0.0.4
# open your web brower and enter to http://127.0.0.1:6080

(Special thanks to Tiryoh )

Comming Soon… All process with *Windows OS*


Repo Structure

β”œβ”€β”€ cpp_first_pkg
β”œβ”€β”€ cpp_topic_pkg
β”œβ”€β”€ cpp_service_pkg
β”œβ”€β”€ cpp_action_pkg
β”œβ”€β”€ py_first_pkg
β”œβ”€β”€ py_topic_pkg
β”œβ”€β”€ py_service_pkg
β”œβ”€β”€ py_action_pkg
β”œβ”€β”€ custom_interfaces
β”œβ”€β”€ gcamp_gazebo
└── image

  • gcamp_gazebo : Gazeobo Package with Worlds and Robot.
  • cpp_<sth>_pkg : C++ ROS 2 packages for each ROS Communication Mechanisms
  • py_<sth>_pkg : Python ROS 2 packages for each ROS Communication Mechanisms
  • custom_interfaces : Package for custom ROS 2 communication interfaces

Examples - rclpy

Topic Examples

  • Available nodes and Execution commands
ros2 run py_topic_pkg cmd_vel_pub_node 
ros2 run py_topic_pkg laser_raw_node 
ros2 run py_topic_pkg laser_sub_node
ros2 run py_topic_pkg parking_node

Project - Parking

Use ROS 2 topic to park the robot correctly in the simulation.

  • LaserScan data Subscribe
  • Twist publish

Service Examples

  • Available nodes and Execution commands
ros2 run py_service_pkg gazebo_model_spawner
ros2 run py_service_pkg robot_turning_server
ros2 service call /turn_robot custom_interfaces/srv/TurningControl "{time_duration: 5, angular_vel_z: 1.0, linear_vel_x: 0.5}"
ros2 service call /delete_entity gazebo_msgs/srv/DeleteEntity "{name: 'skidbot'}"
ros2 run py_service_pkg robot_turning_client

Project - Spawn Cloned Robot

Use ROS 2 service to bring a robot into the simulation.

  • ROS Gazebo Service
  • Service Client
  • URDF

File truncated at 100 lines [see the full file](https://github.com/road-balance/gcamp_ros2_basic/tree/main/README.md)

Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository

Repo symbol

gcamp_ros2_basic repository