ROS快速入门第二讲——ROS的Publisher发布者

该博客介绍了如何使用Python在ROS中创建一个Publisher节点,发布turtle1/cmd_vel消息来控制Turtlesim模拟器中的海龟移动。通过设置线速度和角速度,使海龟画出一个圆形轨迹。主要涉及ROS节点初始化、消息类型定义、发布者对象创建及循环发布消息等内容。
摘要由CSDN通过智能技术生成

ROS的Publisher发布者的编写

语言选择

首先语言的话有Python和C++两种选择,但是由于opencv没有编译的愿意,选择在之后的语言使用Python,就不在写C++的ROS代码了。
在这里插入图片描述

创建一个Py程序

#!/usr/bin/env python
import rospy
from geometry_msgs.msg import Twist

def velocity_publisher():
    # 初始化ros的节点为turtle_test_run
    rospy.init_node("turtle_test_run", anonymous=True)
    
    # 创建一个发布者,发布名为turtle1/cmd_vel, 类型为Twist, 队列长度是10.
    turtle_vel_pub = rospy.Publisher('/turtle1/cmd_vel', Twist, queue_size=10)
    
    # 设计一个休眠,为10Hz
    rate = rospy.Rate(10) # 100ms

    while not rospy.is_shutdown():
        vel_msg = Twist()
        vel_msg.linear.x = 0.5
        vel_msg.angular.z = 0.2

        turtle_vel_pub.publish(vel_msg)
        
        rate.sleep()

if __name__ == "__main__":
	velocity_publisher()

然后将代码在属性位置勾选
在这里插入图片描述

重新执行

catkin_make
catkin_make install

调用海龟界面

第一个终端
roscore

第二个终端
rosrun turtlesim turtlesim_node

第三个终端
rosrun 文件夹名称 xxx.py

我们就可以看到小海龟在画一个圆圈出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Loading_create

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值