/mobile_base_controller/cmd_vel_unstamped
#
Caution
This documentation page has been auto-generated.
It may be missing some details.
/mobile_base_controller/cmd_vel_unstamped
Quick Facts
- Category
- Message type
- Direction
➡️ you normally subscribe to this topic.
Command Velocity topic directly connected to the wheels controller
Quick snippets#
$ ros2 topic hz /mobile_base_controller/cmd_vel_unstamped
$ ros2 topic echo /mobile_base_controller/cmd_vel_unstamped
How to use in your code#
1#!/usr/bin/env python
2
3import rclpy
4from rclpy.node import Node
5
6from geometry_msgs.msg import Twist
7
8
9class CmdVelUnstampedSubscriber(Node):
10
11 def __init__(self):
12 super().__init__('mobile_base_controller_cmd_vel_unstamped_subscriber')
13 self.subscription = self.create_subscription(
14 Twist,
15 '/mobile_base_controller/cmd_vel_unstamped',
16 self.listener_callback,
17 10)
18
19 def listener_callback(self, msg):
20 # see https://docs.ros2.org/latest/api/geometry_msgs/msg/Twist.html
21 # for the msg structure
22 self.get_logger().info('I heard: "%s"' % msg.data)
23
24
25if __name__ == '__main__':
26 rclpy.init(args=args)
27
28 subscriber = CmdVelUnstampedSubscriber()
29
30 rclpy.spin(subscriber)
31
32 rclpy.shutdown()
1#include <memory>
2
3#include "rclcpp/rclcpp.hpp"
4#include "geometry_msgs/msg/twist.hpp"
5
6using std::placeholders::_1;
7using namespace rclcpp;
8
9class CmdVelUnstampedSubscriber : public rclcpp::Node
10{
11public:
12 CmdVelUnstampedSubscriber()
13 : Node("mobile_base_controller_cmd_vel_unstamped_subscriber")
14 {
15 subscription_ = this->create_subscription<geometry_msgs::msg::Twist>(
16 "/mobile_base_controller/cmd_vel_unstamped",
17 10,
18 std::bind(&CmdVelUnstampedSubscriber::topic_callback, this, _1));
19 }
20
21private:
22 void topic_callback(const geometry_msgs::msg::Twist::SharedPtr msg) const
23 {
24 // see https://docs.ros2.org/latest/api/geometry_msgs/msg/Twist.html
25 // for the msg structure
26 RCLCPP_INFO_STREAM(this->get_logger(), "Got " << msg->data);
27 }
28
29 Subscription<geometry_msgs::msg::Twist>::SharedPtr subscription_;
30};
31
32int main(int argc, char * argv[])
33{
34init(argc, argv);
35spin(std::make_shared<CmdVelUnstampedSubscriber>());
36shutdown();
37return 0;
38}