Hood ROS2 Tutorials on Dashing

From wikidb
Jump to: navigation, search

References

Colcon

Create Workspace

ROS_DISTRO was set to 'crystal' before. Please make sure that the environment does not mix paths from different distributions.
$ mkdir -p ~/ros2_example_ws/src
$ cd ~/ros2_example_ws
$ cd ros2_example_ws
$ git clone https://github.com/ros2/examples src/examples
    Cloning into 'src/examples'...
    remote: Enumerating objects: 3613, done.
    remote: Total 3613 (delta 0), reused 0 (delta 0), pack-reused 3613
    Receiving objects: 100% (3613/3613), 544.75 KiB | 9.08 MiB/s, done.
    Resolving deltas: 100% (2350/2350), done.
$ ls src/
    examples
$ cd ~/ros2_example_ws/src/examples/
$ echo $ROS_DISTRO
    dashing
$ git checkout $ROS_DISTRO
    Branch 'dashing' set up to track remote branch 'dashing' from 'origin'.
    Switched to a new branch 'dashing'
$ cd ~/ros2_example_ws
$ colcon build --symlink-install
Starting >>> examples_rclcpp_minimal_action_client
Starting >>> examples_rclcpp_minimal_action_server
Starting >>> examples_rclcpp_minimal_client
Starting >>> examples_rclcpp_minimal_composition
Finished <<< examples_rclcpp_minimal_client [18.4s]
Starting >>> examples_rclcpp_minimal_publisher
Finished <<< examples_rclcpp_minimal_action_server [22.2s]
Starting >>> examples_rclcpp_minimal_service
Finished <<< examples_rclcpp_minimal_action_client [24.9s]
Starting >>> examples_rclcpp_minimal_subscriber
Finished <<< examples_rclcpp_minimal_composition [26.5s]
Starting >>> examples_rclcpp_minimal_timer
Finished <<< examples_rclcpp_minimal_publisher [18.1s]
Starting >>> examples_rclpy_executors
Finished <<< examples_rclcpp_minimal_service [15.5s]
Starting >>> examples_rclpy_minimal_action_client
Finished <<< examples_rclpy_executors [3.20s]
Starting >>> examples_rclpy_minimal_action_server
Finished <<< examples_rclpy_minimal_action_client [3.54s]
Starting >>> examples_rclpy_minimal_client
Finished <<< examples_rclpy_minimal_action_server [3.11s]
Starting >>> examples_rclpy_minimal_publisher
Finished <<< examples_rclpy_minimal_client [2.64s]
Starting >>> examples_rclpy_minimal_service
Finished <<< examples_rclcpp_minimal_subscriber [19.6s]
Finished <<< examples_rclcpp_minimal_timer [18.0s]
Starting >>> examples_rclpy_minimal_subscriber
Finished <<< examples_rclpy_minimal_publisher [1.75s]
Finished <<< examples_rclpy_minimal_service [1.32s]
Finished <<< examples_rclpy_minimal_subscriber [1.07s]             

Summary: 15 packages finished [45.9s]
eepp@hood:ros2_example_ws$ colcon test
Starting >>> examples_rclcpp_minimal_action_client
Starting >>> examples_rclcpp_minimal_action_server
Starting >>> examples_rclcpp_minimal_client
Starting >>> examples_rclcpp_minimal_composition
Finished <<< examples_rclcpp_minimal_action_server [0.07s]
Starting >>> examples_rclcpp_minimal_publisher
Finished <<< examples_rclcpp_minimal_client [0.07s]
Finished <<< examples_rclcpp_minimal_action_client [0.10s]
Starting >>> examples_rclcpp_minimal_service
Starting >>> examples_rclcpp_minimal_subscriber
Finished <<< examples_rclcpp_minimal_composition [0.09s]
Starting >>> examples_rclcpp_minimal_timer
Finished <<< examples_rclcpp_minimal_publisher [0.06s]
Starting >>> examples_rclpy_executors
Finished <<< examples_rclcpp_minimal_service [0.07s]
Finished <<< examples_rclcpp_minimal_subscriber [0.07s]
Finished <<< examples_rclcpp_minimal_timer [0.06s]
Starting >>> examples_rclpy_minimal_action_client
Starting >>> examples_rclpy_minimal_action_server
Starting >>> examples_rclpy_minimal_client
Finished <<< examples_rclpy_executors [2.50s]                           
Starting >>> examples_rclpy_minimal_publisher
Finished <<< examples_rclpy_minimal_action_server [3.12s]
Finished <<< examples_rclpy_minimal_action_client [3.12s]
Starting >>> examples_rclpy_minimal_service
Starting >>> examples_rclpy_minimal_subscriber
Finished <<< examples_rclpy_minimal_client [4.76s]                            
Finished <<< examples_rclpy_minimal_publisher [2.51s]
Finished <<< examples_rclpy_minimal_service [2.49s]                            
Finished <<< examples_rclpy_minimal_subscriber [3.02s]            

Summary: 15 packages finished [6.63s]

Environment Setup

$ . install/setup.bash

Demo

  • Tested July 19, 2019 after install
  • Tested Dec 31, 2019 after upgrade

Terminal 1 - Subscribe

$ ros2 run examples_rclcpp_minimal_subscriber subscriber_member_function
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 0'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 1'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 2'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 3'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 4'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 5'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 6'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 7'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 8'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 9'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 10'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 11'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 12'
[INFO] [minimal_subscriber]: I heard: 'Hello, world! 13'
^C[INFO] [rclcpp]: signal_handler(signal_value=2)

Terminal 2 Publisher

$ ros2 run examples_rclcpp_minimal_publisher publisher_member_function
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 0'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 1'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 2'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 3'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 4'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 5'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 6'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 7'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 8'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 9'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 10'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 11'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 12'
[INFO] [minimal_publisher]: Publishing: 'Hello, world! 13'
^C[INFO] [rclcpp]: signal_handler(signal_value=2)