十一不停歇-学习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下就是会运行原文件。

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

相关推荐
d111111111d35 分钟前
了解Modbus
网络·笔记·stm32·单片机·嵌入式硬件·学习
charlie1145141911 小时前
通用GUI编程技术——图形渲染实战(三十八)——顶点缓冲与输入布局:GPU的第一个三角形
开发语言·c++·学习·图形渲染·win32
我想我不够好。1 小时前
监控学习 4.29 1.5hour
学习
晓晓hh1 小时前
JavaWeb学习——JUnit和日志
学习·junit·单元测试
小超同学你好1 小时前
Transformer 30. MoCo:用「动量编码器 + 队列字典」把对比学习做成可扩展的“字典查找”
深度学习·学习·transformer
光影少年2 小时前
前端SSR和ssg区别
前端·vue.js·人工智能·学习·react.js
筱_智2 小时前
Docker学习-超详细-通俗易懂(从入门到精通)
学习·docker·容器
噜噜噜阿鲁~2 小时前
python学习笔记 | 8.2、函数式编程-返回函数
笔记·python·学习
小郑加油2 小时前
python学习Day8-9天:函数(def)的基础运用
python·学习
学掌门2 小时前
数据分析师初级—中级—高级,每个阶段都需要学习什么?
大数据·学习·数据分析·数据分析师