十一不停歇-学习ROS2第一天 (10.2 10:45)

话题通信

1.1 发布第一个节点:

import rclpy #导入此类模块 rcl+类型

from rclpy.node import Node #从这个子模块中导入这类函数

def main(): #定义这个函数

rclpy.init() #使用初始化函数

node = Node('hello_python') 将类函数里面的内容调给node 在ROS2中的节点不允许有标点符号出现

node.get_logger().info('您好,中国') 显示日志信息,填充节点内容

node.get_logger().warn('您好,中国')

rclpy.spin(node) #一直出现

rclpy.shutdown() #关闭

if name=='main': 如果调用的名字相同就调用main()函数

main()

有一些技巧 在终端这里按住ctrl+5可以分端口

1.2 使用功能包组织python节点

创建方法:ros2 pkg create --build-type ament_类型(python) --licenseApache-2.0 demo_python_pkg

接着在srtup.py中画得蓝色框中记得修改 右面的意思是包名+文件名+函数名

最后在程序中既然都用到了rclpy.那么把rclpy添加依赖信息。

<depend>relpy</depend>

最后在这个下面添加 colcon build 就会多出三个文件夹,build install log

其中 install是结果文件夹

我们在编译colcon build时候,实际上是把节点那个py文件给复制了一份。如果不colcon build下就是会运行原文件。

国庆第二天,学的效率很低,明天开始好好学习,充分利用好时间。

相关推荐
zhangrelay1 分钟前
Lubuntu 26.04移动系统使用配置测试记录与引导修复备注
笔记·学习
摇曳的精灵3 分钟前
OceanBase学习
学习·oceanbase
星幻元宇VR13 分钟前
VR消防安全学习机,数字化消防培训新选择
科技·学习·安全·vr
光影少年25 分钟前
高级前端需要学习那些东西?
前端·人工智能·学习·aigc·ai编程
jiayong2329 分钟前
第 41 课:任务详情抽屉里的快速筛选联动
开发语言·前端·javascript·vue.js·学习
浅念-42 分钟前
LeetCode 模拟算法:用「还原过程」搞定编程题的入门钥匙
开发语言·c++·学习·算法·leetcode·职场和发展·模拟
艾莉丝努力练剑1 小时前
【Linux网络】计算机网络入门:网络通信——跨主机的进程间通信(IPC)与Socket编程入门
linux·运维·服务器·网络·c++·学习·计算机网络
三品吉他手会点灯1 小时前
C语言学习笔记 - 13.C语言简介 - 回顾本讲内容
c语言·笔记·学习
再玩一会儿看代码1 小时前
idea中快捷键详细总结整理
java·ide·经验分享·笔记·学习·intellij-idea
极光1311 小时前
DevOps学习
运维·学习·devops