Ubuntu20.04 中ROS调试rqt_topic

学习目标:

ROS_Publisher和调试

学习内容:

学习ROS_Publisher的写法和如何GUI调试以及命令行调试。

学习产出:

生成hello_topic的pkg文件夹:

cd ROSWorkspace/first_ws
catkin_create_pkg hello_topic rospy rosmsg roscpp
source devel/setup.zsh (或者是.bash)
cd /snap/clion/139/bin
./clion.sh

编写hello_topic:
先在hello_topic下生成scripts目录,这个是用来存放python代码的。
然后在scripts下新建一个py文件,我取名为hello_topic.py

#!/usr/bin/env python3.8
import rospy
from std_msgs.msg import String


# 这个来自rosmsg
if __name__ == '__main__':
    rospy.init_node("publisher_node")
    rate1 = rospy.Rate(4)
    # 主题名称,唯一类型
    topic_name = "hello_topic_publisher"
    publisher1 = rospy.Publisher(topic_name, String, queue_size=100, )
    # 主题名称,数据类型,
    count = 0
    while not rospy.is_shutdown():
        # 往外发送数据
        msg = String()
        msg.data = "hello topic {}".format(count)
        publisher1.publish(msg)
        rate1.sleep()
        count += 1

运行之前要把这个hello_topic.py设置成可执行文件。

rosrun hello_topic hello_topic.py

这时候topic已经在运行了,但是终端上看不到。
我们可以进行GUI调试或者是命令行调试。
GUI调试:
这里有个BUG 虽然Ubuntu的默认python是3.8版本,但是这里不能直接运行rqt_topic 会提示环境目录中没有python 这是因为它lib文件里面的环境还是python2.7的环境。
所以要这样来运行:

rosrun rqt_gui rqt_gui

在弹出的框中,选择菜单栏里的plugins,找到topics 里面对应有Topic Monitor,选择这个就可以了。
然后在Topic Monitor里可以看到我们正在运行的hello_topic的节点。勾选它,可以在展开信息里看到data的变化。

命令栏调试:

rostopic XXXX
echo打印目前的消息
hz显示频率
bw带宽
info节点信息
listtopic所有的节点
typetopic的消息类型
Ubuntu 20.04如果缺少`robot_state_publisher`,这通常是因为你正在尝试使用ROS(Robot Operating System)相关的包,而这个包是ROS Noetic版本(默认发布于2020年)的一个基础工具,用于发布机器人状态信息。 `robot_state_publisher`是一个Python程序,它从传感器数据生成并发布一个标准的机器人状态消息,这对于机器人仿真和监控非常有用。如果你在安装或更新ROS的过程没有正确安装此包,可能会遇到问题。 解决这个问题的步骤可能包括: 1. **安装ROS Noetic**: 如果你还没有安装ROS,首先确保安装最新版本的Noetic。打开终端并运行以下命令: ``` sudo apt update sudo apt install ros-noetic-desktop ``` 2. **安装缺少的包**: 如果`robot_state_publisher`已包含在你的ROS安装,但仍然缺失,你可以检查是否安装了所有依赖项。使用命令 `sudo apt list | grep robot_state_publisher` 查看包是否已安装。如果没有,执行 `sudo apt install ros-noetic-robot-state-publisher` 进行安装。 3. **源码安装**: 如果官方软件源没有该包,你可能需要从ROS仓库的GitHub存储库源码编译安装。这涉及到更复杂的步骤,可能需要先安装一些构建工具如`git`, `catkin`, 和`cmake`。 4. **检查错误日志**: 在安装过程查看错误日志(如`/var/log/apt`目录下的`daemon.log`或`install.log`),可能能提供关于问题的线索。 5. **更新系统索引**:有时,由于网络问题或其他原因,软件源可能没有及时更新,你可以试试`sudo apt-get update`。 6. **确认权限**: 确保你有足够的权限安装软件,特别是作为root用户安装。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

LZZ and MYY

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

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

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

打赏作者

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

抵扣说明:

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

余额充值