- 相关知识
- 实践创建文件
- 创建文件
- 查看信息的命令
- 实际的topic代码
- 编程思想
ros2 pkg class="superseo">create <package-name> --build-type {cmake,ament_cmake,ament_python} --dependencies <依赖名字>
功能包类型 | 用法 |
---|---|
ament_python | 适用于python程序 |
cmake | 适用于C++ |
ament_cmake | 适用于C++程序,是cmake的增强版 是默认的创建类型 |
功能包相关指令 | 含义 |
---|---|
create | 创建一个新的 ROS2 包 |
executables | 输出包特定可执行文件的列表 |
list | 输出可用包的列表 |
prefix | 输出包的前缀路径 |
xml | 输出包清单或特定标签的 XML dashing版本沒有此功能 |
ros2 pkg executables // 列出所有功能包的可执行文件
ros2 pkg executables turtlesim // 列出某个功能包的可执行文件
rosdep install --from-paths src --ignore-src -rosdistro=dashing -y
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
// 只编译一个包
colcon build --packages-select YOUR_PKG_NAME
// 不编译测试单元
colcon build --packages-select YOUR_PKG_NAME --cmake-args -DBUILD_TESTING=0
// 每次调整 python 脚本时都不必重新build了
colcon build --symlink-install
在ROS的API的实现层级中,最下面的是第三方的DDS,rmw(中间件接口)层是对各家DDS的抽象层,基于rmw实现了rclc,有了rclc,我们就可以实现各个语言的库,大家都知道C语言是各个语言的鼻祖(汇编除外)所以基于rclc,ROS2官方实现了rclpy和rclcpp
实践创建文件 创建文件// 建立工作空间和功能包
mkdir -p ~/test-ros2-launch/src
cd ~/test-ros2-launch/src
ros2 pkg create fishbot_description --build-type ament_python
// 建立URDF文件
cd fishbot_description && mkdir urdf
cd urdf
touch fishbot_base.urdf
cd ../
mkdir launch
cd launch
touch display_rviz2.launch.py
colcon build
source install/setup.bash
ros2 launch fishbot_description display_rviz2.launch.py
查看信息的命令
// | grep 过滤命令
ros2 pkg list | grep vill*
// 打印节点的发布与接受信息
ros2 node info /li4
实际的topic代码
编程思想
OOP编程就是面向对象编程
非OOP就是面向过程的编程方法 也就是POP
函数式思想,是FP
对象 = 属性+行为
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)