自定义创建ros节点
1. 创建新的工程目录¶
mkdir -p ~/dev_ws/src
cd ~/dev_ws/src
3. 节点实现¶
1. 创建package¶
在src目录下执行如下命令创建package
ros2 pkg create --build-type ament_python first_pkg
可以修改
package.xml
文件如下信息<description>C++ client server tutorial</description> <maintainer email="you@email.com">Your Name</maintainer> <license>Apache License 2.0</license>
2. 编写代码¶
在first_package
目录的first_package
下创建first_node.cpp
文件,代码如下
import rclpy
from rclpy.node import Node
class MyNode(Node):
def __init__(self):
super(MyNode, self).__init__('first_node')
self.get_logger().info('first node')
def main():
rclpy.init()
node = MyNode()
node.destroy_node()
rclpy.shutdown()
if __name__ == '__main__':
main()
3. 配置工程¶
在setup.py
文件中做如下修改:
'console_scripts': [
'first_node = first_pkg.first_node:main',
],
first_node是节点名
可以在package.xml
文件中配置依赖
<depend>rclpy</depend>
3. 构建工程¶
在工程目录下执行如下命令
colcon build
4. 运行package¶
- source the setup file
source install/setup.bash
- 运行package
ros2 run package名称 节点名称