Apollo 应用与源码分析:CyberRT-工具与命令

概念

cyberRT包括一个可视化工具cyber_visualizer和两个命令行工具cyber_monitor和cyber_recorder。

注意:使用这些工具需要apollo docker环境

并且Cyber RT 中提供了一些命令工具,可以方便快捷的解决上述问题,本部分内容就主要介绍这些命令的使用,常用的通信相关命令如下:

  1. cyber_node;
  2. cyber_channel;
  3. cyber_service;
  4. cyber_launch。

cyber_visualizer

概念

一个可视化仿真工具,用于在cyberRT中显示通道数据。

使用方法

username@computername:~$: source /your-path-to-apollo-install-dir/cyber/setup.bash
username@computername:~$: cyber_visualizer

与Cyber_visualizer 交互

  • 启动cyber_visualizer后,您将看到以下界面:

  • 当数据通过Cyber RT中的通道时,所有通道的列表都显示在ChannelNames,如下图所示。例如,您可以使用Cyber RT的记录工具(cyber_recorder)从另一个终端重播数据,然后cyber_visualizer将接收所有活动频道(来自重播数据)的信息并显示它。

  • 通过单击工具栏中的选项,您可以同时启用参考网格、显示点云、添加图像或显示多个相机的数据。如果您启用了ShowGrid选项,您可以通过双击ChannelNames下方Grid列表Color项来设置网格的颜色。默认颜色是灰色。您还可以编辑CellCount的值,以调整网格中的单元格数量。至于点云或图像,您可以通过其ChannelName子项和Action子项选择源通道,以播放或停止来自相应通道的数据。如下图所示,按钮部分的三个摄像头通道数据和顶部部分的一点云通道数据同时显示。

  • 要调整三维点云场景中的虚拟摄像头,您可以右键单击点云显示部分。将弹出一个对话框,如下图所示。

    点云场景支持两种类型的相机:Free和Target。(从上面的弹出式对话框中选择类型)您还可以直接在对话框中修改相机信息,以更改相机在点云场景中的观察状态。“步骤”项是对话框中的步进值。将鼠标放在相机通道的图像上,您可以双击左侧按钮以突出显示左侧菜单栏上的相应数据通道。右键单击图像以调出删除相机通道的菜单。播放和暂停按钮:单击Play按钮时,将显示所有频道。点按“Pause”按钮时,所有通道都将停止显示在工具上。
    • 免费类型相机:对于点云场景中的此类相机,您可以通过按住鼠标左键或右键并移动它来更改相机的姿势。要更改相机的音高,您可以滚动鼠标滚轮。
    • 目标类型相机:对于点云场景中的这种类型的相机,要更改相机的视角,您可以按住鼠标左键,然后移动它。要更改相机与观测点的距离(默认观察点是坐标系原点(0,0,0)),您可以滚动鼠标滚轮。

cyber_monitor

启动命令行工具后,您会注意到它与cyber_visualizer相似。它通过拓扑自动收集所有通道的信息,并将其显示在两列(通道名称、通道数据类型)。

通道信息的默认显示为红色。但是,如果有数据流过通道,则通道的相应行将以绿色显示。如下图所示:

cyber_recorder

概念

Apollo Cyber RT提供的记录/播放工具。它提供了许多有用的功能,包括录制记录文件、播放记录文件、拆分记录文件、检查记录文件信息等。


运行

$ source /your-path-to-apollo-install-dir/cyber/setup.bash
$ cyber_recorder
usage: cyber_recorder <command>> [<args>]
The cyber_recorder commands are:
    info                               Show information of an exist record.
    play                               Play an exist record.
    record                             Record same topic.
    split                              Split an exist record.
    recover                            Recover an exist record.
    

播放文件

$ cyber_recorder play -h
usage: cyber_recorder play [options]
    -f, --file <file>			input record file
    -a, --all				play all
    -c, --white-channel <name>		only play the specified channel
    -k, --black-channel <name>		not play the specified channel
    -l, --loop				loop play
    -r, --rate <1.0>			multiply the play rate by FACTOR
    -b, --begin <2018-07-01 00:00:00>	play the record begin at
    -e, --end <2018-07-01 00:01:00>	play the record end at
    -s, --start <seconds>		play started at n seconds
    -d, --delay <seconds>		play delayed n seconds
    -p, --preload <seconds>		play after trying to preload n second(s)
    -h, --help				show help message

rosbag_to_record

一个可以将rosbag转换为Apollo Cyber RT提供的记录文件的工具。现在,该工具支持以下通道:

/apollo/perception/obstacles
/apollo/planning
/apollo/prediction
/apollo/canbus/chassis
/apollo/control
/apollo/guardian
/apollo/localization/pose
/apollo/perception/traffic_light
/apollo/drive_event
/apollo/sensor/gnss/odometry
/apollo/monitor/static_info
/apollo/monitor
/apollo/canbus/chassis_detail
/apollo/control/pad
/apollo/navigation
/apollo/routing_request
/apollo/routing_response
/tf
/tf_static
/apollo/sensor/conti_radar
/apollo/sensor/delphi_esr
/apollo/sensor/gnss/best_pose
/apollo/sensor/gnss/imu
/apollo/sensor/gnss/ins_stat
/apollo/sensor/gnss/rtk_eph
/apollo/sensor/gnss/rtk_obs
/apollo/sensor/velodyne64/compensator/PointCloud2

cyber_node

用于获取 Cyber RT 中运行的节点的相关信息。

cyber_node list      列出所有运行中的节点 
cyber_node info xxx  输出某个节点或所有节点信息 

cyber_channel

获取关于话题的相关信息。

cyber_channel list   列出所有运行中的话题
cyber_channel info   输出话题相关信息(发布者、订阅者、消息类型....)
cyber_channel echo   输出话题消息
cyber_channel hz     输出话题消息的发布频率
cyber_channel bw     输出消息发布所占用带宽
cyber_channel type   输出话题消息类型

cyber_service

获取关于服务的相关信息。

cyber_service list   列出所有运行中的服务 
cyber_service info   输出某个服务的相关信息 

cyber_launch

用于 launch 文件的启动与关闭。

cyber_launch start   启动 launch 文件
cyber_launch stop    关闭 launch 文件中的模块 

 

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ym影子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值