yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
ROS Robot Expansion Board📖
1.Expansion board STM32 driver
  • 0. Precautions
  • 1.1 Expansion Board Introduction_V3.0
  • 1.1 Expansion Board Introduction_V1.0
  • 1.2 STM32 Development environment
  • 1.3 Button to control the buzzer to whistle
  • 1.4 FreeRTOS application
  • 1.5 Serial communication
  • 1.6 SBUS model aircraft remote control
  • 1.7 CAN bus communication
  • 1.8 RGB colorful light bar
  • 1.9 Timer interrupt to control PWM servo
  • 1.10 Control serial port servos
  • 1.11 Nine-axis attitude sensor to obtain data
  • 1.12 Control the forward and reverse rotation of the motor
  • 1.13 The timer captures the encoder data
  • 1.14.1 Robot kinematics analysis theory
  • 1.14.2 Mecanum wheel kinematics analysis
  • 1.15 PID control robot movement
  • 1.16 OLED character display
2.Python basic control
  • 2.0 Bind PCB port devices
  • 2.1 Update the firmware of the expansion board
  • 2.2 Turn off the self-starting large program at startup
  • 2.3 Install the Rosmaster driver library
  • 2.4 Buzzer whistle
  • 2.5 Control PWM servo
  • 2.6 RGB colorful light bar special effects display
  • 2.7 Control the forward and reverse rotation of the motor
  • 2.8 Control the movement of the robot
  • 2.9 Control Serial Servo
3.ROS1 Basic Course
  • 1.ROS introduction
  • 2.ROS installation
  • 3.ROS common command tools
  • 4.ROS workspace
  • 5.ROS function package
  • 6.ROS node
  • 7.ROS topic publisher
  • 8.ROS topic subscribers
  • 9.ROS service client
  • 10.ROS service server
  • 11.ROS action client
  • 12.ROS action server
  • 13.ROS custom message reception
  • 14.ROS-launch file
  • 15.ROS-TF transformation
  • 16.ROS parameter service
  • 17.ROS-rviz use
  • 18.ROS-rqt tool usage
  • 19.Topic message recording and playback
  • 20.urdf model introduction
  • 21.gazebo introduction
  • 22.ROS distributed communication
4.ROS1 robot control
  • 0. Bind PCB port devices
  • 1. Package Use the tutorial
  • 2. Package Description
  • 3. Robot keyboard control
  • 4. Robot state estimation
  • 5. Robot imu calibration
  • 6. Robot URDF Model
5.ROS2 Basic Course
  • 1.Introduction to ROS2
  • 2.ROS2 install Humble
  • 3.ROS2 development environment
  • 4.ROS2 workspace
  • 5.ROS2 function package
  • 6.ROS2 node
  • 7.ROS2 topic communication
  • 8.ROS2 service communication
  • 9.ROS2 action communication
  • 10.ROS2 custom interface message
  • 11.ROS2 parameter service case
  • 12.ROS2 meta-function package
  • 13.ROS2 distributed communication
  • 14.ROS2 DDS
  • 15.ROS2 time related API
  • 16.ROS2 common command tools
  • 17.ROS2 rviz2 use
  • 18.ROS2 rqt toolbox
  • 19.ROS2 Launch startup file configuration
  • 20.ROS2 recording and playback tool
  • 21.ROS2 URDF model
  • 22.ROS2 Gazebo simulation platform
  • 23.ROS2 TF2 coordinate transformation
6.ROS2 robot control
  • 0. Bind PCB port devices
  • 1. Package Use the tutorial
  • 2. Robot information release
  • 3. Robot keyboard control
  • 4. Robot state estimation
  • 5. Robot calibration
  • 6. URDF model
7.RDK X3 course
  • 1. Update the firmware of the expansion board
  • 2. Turn off the self-starting large program at startup
  • 3. Install the Rosmaster driver library
  • 4. Buzzer whistle
  • 5. Control PWM servo
  • 6. RGB colorful light bar special effects
  • 7. Control motor forward reverse
  • 8. Control robot movement
  • 9. Control Serial Servo
Download
  • Rules_File
  • Hardware Info
  • Code
  • 3D Model File
  • RDK Code
  • ROS2_Basic_VM
Download ZIP

Welcome to ROS Robot Expansion Board repository

16.ROS2 common command tools

16. ROS2 Common Command Tools

1. Package Management Tool ros2 pkg

1.1. ros2 pkg create

Function: Creates a package. When creating a package, you must specify the package name, compilation method, dependencies, etc.

Format:

xxxxxxxxxx
ros2 pkg create <package_name> --build-type <build-type> --dependencies <dependencies>

In the ros2 command:

  • pkg: Indicates the functions associated with the package;
  • create: Indicates the creation of a package;
  • package_name: Required: The name of the new package;
  • build-type: Required: Indicates whether the newly created package is C++ or Python. If using C++ or C, follow ament_cmake; if using Python, follow ament_python;
  • dependencies: Optional: Indicates the package's dependencies. C++ packages must include rclcpp; Python packages must include rclpy, as well as other required dependencies.

1.2, ros2 pkg list

Function: View the list of packages in the system

Format:

xxxxxxxxxx
ros2 pkg list

image-20230427154146879

1.3. ros2 pkg executables

Function: View all executable files in a package

Format:

xxxxxxxxxx
ros2 pkg executables pkg_name

image-20230427154419005

2. Node Run ros2 run

Function: Run the node program in the package

Format:

xxxxxxxxxx
ros2 run pkg_name node_name
  • pkg_name: Package name
  • node_name: The name of the executable program

image-20230427155359745

3. Node-Related Tools: ros2 node

3.1. ros2 node list

Function: Lists all node names in the current domain

Format:

xxxxxxxxxx
ros2 node list

image-20230427155655753

3.2. ros2 node info

Function: View detailed node information, including subscriptions, published messages, enabled services, and actions.

Format:

xxxxxxxxxx
ros2 node info node_name
  • node_name: The name of the node to be viewed.

image-20230427160001101

4. Topic-Related Tools: ros2 topic

4.1. ros2 topic list

Function: List all topics in the current domain

Format:

xxxxxxxxxx
ros2 topic list

image-20230427160351051

4.2. ros2 topic info

Function: Display topic message type and number of subscribers/publishers

Format:

xxxxxxxxxx
ros2 topic info topic_name
  • topic_name: The name of the topic to be queried.

image-20230427160625594

4.3, ros2 topic type

Function: View the message type of a topic

Format:

xxxxxxxxxx
ros2 topic type topic_name
  • topic_name: The name of the topic type to be queried.

image-20230427161056536

4.4, ros2 topic hz

Function: Display the average publishing frequency of a topic.

Format:

xxxxxxxxxx
ros2 topic hz topic_name
  • topic_name: The name of the topic whose frequency you want to query.

image-20230427161721650

4.5, ros2 topic echo

Function: Print topic messages on the terminal, similar to a subscriber.

Format: ros2 topic echo topic_name

  • topic_name: The name of the topic whose messages you want to print.

image-20230427162312888

4.5, ros2 topic pub

Function: Publish a message on a specified topic on the terminal.

Format:

xxxxxxxxxx
ros2 topic pub topic_name message_type message_content
  • topic_name: The name of the topic whose messages you want to publish.
  • message_type: The data type of the topic.
  • message_content: Message content

The default is to publish at a 1Hz frequency. The following parameters can be set:

  • Parameter -1 to publish only once, ros2 topic pub -1 topic_name message_type message_content
  • Parameter -t count to publish count times, ros2 topic pub -t count topic_name message_type message_content
  • Parameter -r count to publish at a count Hz frequency, ros2 topic pub -r count topic_name message_type message_content

Example:

  • Publish velocity commands via the command line
  • Note that there is a space after each colon; otherwise, a format error will be displayed.
xxxxxxxxxx
ros2 topic pub turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 0.5, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.2}}"

image-20250905163149992

5. Interface-Related Tools: ros2 interface

5.1. ros2 interface list

Function: Lists all interfaces in the current system, including topics, services, and actions.

Format:

xxxxxxxxxx
ros2 interface list

image-20230427164755075

5.2. ros2 interface show

Function: Displays the detailed information of a specified interface

Format:

xxxxxxxxxx
ros2 interface show interface_name
  • interface_name: The name of the interface to be displayed

image-20230427165057647

6. Service-Related Tools ros2 service

6.1. ros2 service list

Function: Lists all services in the current domain

Format:

xxxxxxxxxx
ros2 interface show interface_name

image-20230427172236875

6.2, ros2 service call

Function: Call a specified service

Format:

xxxxxxxxxx
ros2 interface call service_name service_Type arguments
  • service_name: The service to be called
  • service_type: The service data type
  • arguments: The parameters required to provide the service

For example, to call the turtle spawn service

xxxxxxxxxx
ros2 service call /spawn turtlesim/srv/Spawn "{x: 2, y: 2, theta: 0.2, name: 'turtle10'}"

image-20230427173625631

ROS2 time related API
ROS2 rviz2 use

COMPANY

  • About us
  • Team Style
  • Blog

LEARNING & EXPLORATION

  • Tutorials
  • Edge AI hardware
  • Educational robots
  • Embedded intelligent hardware

WHERE TO BUY

  • Yahboom Online Store
  • Amazon
  • Alibaba
  • AliExpress
  • Mercado

TECHNOLOGY SUPPORT

  • Email: support@yahboom.com

BE A DISTRIBUTOR

  • Email: sales@yahboom.com
QR Code

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文