【Autoware源码解读】(二)runtime manager

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的电脑,这个需要对着界面理解。

猜你喜欢

转载自blog.csdn.net/wqwqqwqw1231/article/details/104729467
今日推荐