文章目录
Autoware的使用方式是调用./run中可以看到:其中调用也是utilities/runtime_manager/scripts/runtime_manager_dialog.py。其中的一些解释可以参考这篇博客。
runtime_manager_dialog.py的main中调用了wx模块,构建交互界面,各种参数通过MyFrame储存,然后在MyFrame这个类的初始化过程中,可以看到加载了各种yaml,来读取交互界面的各种参数。
其中比较重要的是main.yaml,main.yaml中相当于分别给交互界面的一些button联系了一些特定的roslauch文件或者是一些rosrun代码。这些launch文件在utilities/runtime_manager/scripts/launch_files/check.launch也有,这也就给出了阅读代码的顺序。
runtime manager
这里就先理一下runtime manager的订阅的发布的一些topic吧
subscribe
/to_rtmgr & /from_rtmgr(pub)
这两个topic的存在是不是就是为了测试啊。subscribe /to_rtmgr 然后通过ROSCb()函数将/to_rtmgr的内容通过/from_rtmgr发布出去。
- 数据类型:两者均为std_msgs.msg.String
- /from_rtmgr的发布函数:MyFrame.ROSCb()
- /to_rtmgr的发布函数:utilities/runtime_manager/scripts/test_pub.py
/topic1 & topic2
utilities/data_preprocessor/scripts/runtime.yaml
这个留在后面看data_preprocessor再补充
stat系列
- /gnss_satate: core_perception/gnss_localizer/interface.yaml
- /ndt_state: core_perception/lidar_localizer/interface.yaml
- /pmap_stat: common/map_file/interface.yaml
- /vmap_stat: common\map_file\interface.yaml
- /lf_stat: 没找到
这个留在后面再补充
/route_cmd
没找到
Publish
cmd系列
- /accel_cmd
- /brake_cmd
- /gear_cmd
- /indicator_cmd
- /lamp_cmd
- /mode_cmd
- /steer_cmd
- /twist_cmd
config系列
- /config/adjust_xy
- /config/X_dpm
- /config/X_kf
- /config/X_fusion
- /config/lane_rule
- /config/lane_select
- /config/ndt
- /config/ndt_mapping
- /config/ndt_mapping_output
- /config/superimpose
- /config/twist_filter
- /config/velocity_set
- /config/waypoint_follower
以上内容还需要在对着代码理解,目前身边没有能跑autoware的电脑,这个需要对着界面理解。