文章目录
整体框架
最近准备读一下Autoware源码,看看要完成一个自动驾驶系统,要到底都做些什么。先放一张由demo跑出来的所有的node和topic的关系图:
这张图实在是大,接下来我会记录一下这个图中的node和topic的源码都对应在哪
左上角单独的两块
- /vscan_filling: ????????
- /can_info_translator: core_perception/autoware_connector
- /vehicle_receiver: utilities/vehicle_socket
下面有关相机的
- /calibration_publisher:utilities/calibration_publisher , 发布的camera_info的命名空间是怎么定的?
- /relay_camera_info: utilities/kitti_launch/launch/xml/camera_lidar.xml可以看到,这个节点的类型是类型是topic_tools/relay
- /points2image: visualization/points2image
obj_car
并没有找到对应的节点,但是可以参考core_perception/vision_ssd_detect/interface.yaml
velodyne_nodelet && velodyne_nodelet_manager
参考utilities/data_preprocessor/scripts/velodyne_hdl64e_s3.launch
有关点云的
- /voxel_grid_filter: core_perception/points_downsampler
- /eculidian_cluster: core_perception/lidar_euclidean_cluster_detect
runime_manager
utilities/runtime_manager/scripts/runtime_manager_dialog.py
tf相关
- /nmea2tfpose: core_perception/gnss_localizer
- /joint_state_publisher: ros自带
- /robot_state_publisher: ros自带
- /base_link_to_localizer: tf/static_transform_publisher,ros自带,utilities/runtime_manager/scripts/setup_tf.launch
- /world_to_map: [tf/static_transform_publisher,ros自带],documentation/autoware_quickstart_examples/launch/tf_local.launch
- /map_to_mobility: ???????
定位相关
- /vector_map_loader: common/map_file
- /ndt_matching: core_perception/lidar_localizer
- /pose_relay: topic_tools/relay,core_perception/autoware_connector/launch/vel_pose_connect.launch
- /vel_relay: topic_tools/relay,core_perception/autoware_connector/launch/vel_pose_connect.launch
规划决策
- /waypoint_loader: core_planning/waypoint_maker
- /lane_rule: core_planning/lane_planner
- /lane_stop: core_planning/lane_planner
- /lane_select: core_planning/lane_planner
- /waypoint_maker_publisher: core_planning/waypoint_maker
- /pure_pursuit: common/waypoint_follower
控制
- /twist_filter: common/waypoint_follower
- /vehicle_sender: utilities/vehicle_socket
具体的先列这么多,其实有很多pkg和node还没在图中出现。有些找的地方可能也不是很对,这相当于做了个目录,在之后的细读的过程中再进行纠正好了。