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

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

相关推荐
M78佐菲4 小时前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
无敌贵点大王6 小时前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表
是翎8 小时前
深度长文|2026产品经理AI实践手册
人工智能·深度学习·学习·自然语言处理·数据挖掘
Linux-lucky8 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
知识分享小能手9 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
AI职业加油站12 小时前
数据要素价值释放年:大数据治理工程师,站上职业新风口
人工智能·学习·职场和发展·数据分析·职场发展
啄缘之间12 小时前
1.【SVA】什么是SVA?
经验分享·学习·测试用例·verilog·sva
sunoo-22913 小时前
【嵌入式裸机开发Day04】i.MX6ULL 蜂鸣器驱动详解:从引脚地址查找到代码实现全流程
arm开发·单片机·嵌入式硬件·学习·串口·裸机
Purple Coder13 小时前
stm32
学习
边境悍匪14 小时前
蜗牛学苑 Java 智能体学习 Day45|Knife4j+SpringBoot3、书城项目整合 MyBatis 思维导图复盘
java·开发语言·vue.js·学习·spring