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

Lucas在澳洲
Python领域优质创作者
2022-08-01 14:50:03

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

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

...全文
49 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

88

社区成员

发帖
与我相关
我的任务
社区管理员
  • c_university_162
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧