docs/工具使用/标定工具/底盘标定.md
是底盘线控功能性能评测工具。 用于验证 Apollo 下发的控制指令,车辆底盘能否准确并快速执行。
参见标定工具环境配置。
以下为配置文件teleop_conf.pb.txt,在/apollo/modules/dreamview_plus_plugins/teleop_tool/conf/路径下,建议按此默认设置即可。
action_conf {
#单次命令检测最长等待时间
maximum_waiting_time: 3.0
}
gear_conf {
# 车辆档位配置 D档位, R档位, N档位, P档位
gear: GEAR_DRIVE
gear: GEAR_REVERSE
gear: GEAR_NEUTRAL
# P档位可选配
gear: GEAR_PARKING
record_curve: false
maximum_waiting_time: 3.0
}
steer_wheel_conf {
#自动检测默认步长
step: 5.0
#是否记录底盘响应曲线和命令下发曲线
record_curve: true
#底盘延时时间阈值
delay_time_threshold: 0.2
#单次命令检测最长等待时间
maximum_waiting_time: 3.0
#峰值最大角度差值
peak_maximum_angle_difference: 2
#稳态角度最大差值
maximum_angle_difference: 2
#稳态幅度值
steady_state_amplitude: 0.5
#稳态帧数
steady_state_frame_number: 20
}
brake_conf {
#自动检测默认步长
step: 5.0
#是否记录底盘响应曲线和命令下发曲线
record_curve: true
#底盘延时时间阈值
delay_time_threshold: 0.2
#单次命令检测最长等待时间
maximum_waiting_time: 3.0
#稳态幅度值
steady_state_amplitude: 0.5
#稳态帧数
steady_state_frame_number: 20
#稳态百分比最大差值
maximum_percentage_difference: 2
}
parking_brake_conf {
#是否记录底盘响应曲线和命令下发曲线
record_curve: false
#单次命令检测最长等待时间
maximum_waiting_time: 3
}
throttle_conf {
#自动检测默认步长,一般不超过10%
step: 5.0
#是否记录底盘响应曲线和命令下发曲线
record_curve: true
#底盘延时时间阈值
delay_time_threshold: 0.3
#单次命令检测最长等待时间
maximum_waiting_time: 3.0
#稳态幅度值
steady_state_amplitude: 0.5
#稳态帧数
steady_state_frame_number: 20
#稳态百分比最大差值
maximum_percentage_difference: 2
#油门检测可达最大百分比
maximum_test_percentage: 10
}
speed_conf {
record_curve: true
#陡峭值,速度检测突变可接受最大范围值
jagged_threshold: 0.3
delay_time_threshold: 0.02
}
#can总线刷新帧率
canbus_clock: 10.0
更改 canbus 的配置参数, 使 canbus 能进入调试, 文件路径/apollo/modules/canbus/conf/canbus.conf。
--enable_chassis_detail_pub
--enable_chassis_detail_sender_pub
--chassis_debug_mode=true
--use_control_cmd_check=false
--use_guardian_cmd_check=false
--noreceive_guardian
--estop_brake=30.0
在 docker 环境下输入以下命令启动 Dreamview+:
aem bootstrap restart --plus
在浏览器端通过访问机器的8888端口打开 Dreamview+ 页面。
页面左下角有登录信息说明登录成功。
在 模式 中选择 Canbus Debug。
在 模块 中,启动 Canbus 模块。
将遥控器切换到自动驾驶模式。
检测进退自动以及接管的指令下发后结果正确性及延迟时间。需要手动检测。
选择 Canbus Debug 模式,启动 Canbus 模块后会自动进入自动握手检测界面。
关闭车辆上的自动驾驶开关,单击 开始检测。
打开车辆上的自动驾驶开关,然后进行下一步操作。
单击 进自动驾驶 的 检测 按钮。
根据提示,确认车辆上的自动驾驶开关是否已打开,如已打开,单击 已打开;如未打开,需先打开然后才能打开 TeleopTool 的自动驾驶。
结果显示检测 正确。
单击 退自动驾驶 的 检测 按钮。
结果显示检测 正确。
单击 进自动驾驶 的 检测 按钮。
根据提示,先打开车辆上的自动驾驶开关,才可以打开 TeleopTool 的自动驾驶,确认并单击 已打开。
结果显示检测 正确。
单击 接管测试 的 检测 按钮。
手动控制遥控器,切换驾驶模式为手动。
结果显示检测 正确。
单击 进自动驾驶 的 检测 按钮。
结果显示检测 正确。
检测完成后,当检测结果全部显示 正确,单击 下一步 进入档位测试或选择任意项进行测试。
注意:如果检测结果显示 错误,可以单击 详情 排查原因后重新检测。
档位检测:检测D、R、N、P档位指令下发后结果正确性以及延迟时间。支持自动检测。默认:自动检测。
进入档位测试后,将车轮驱动轮悬空,并单击 我已完成 按钮。
打开车辆的自动驾驶开关,并单击 我已完成 按钮。
打开自动驾驶模块开关,并单击 我已完成 按钮。
单击 开始检测。
说明:进行自动检测前,需要先释放车端的手刹按钮。
单击 开始 进行自动检测。
当下发指令和返回结果显示的档位信息一样,则显示检测结果正确,否则,显示检测结果错误。
说明:
- 档位检测为纯自动检测,需要检测的档位要在配置文件里配置好,默认 D R N P 档。如没有 P 档,可从
teleop_conf.pb.txt中gear_conf配置中去掉 P 档配置。- 自动检测完成后,手动检测档位时,如果出现异常,需再次手动检测即可显示正常。
检测完成后,当检测结果全部显示 正确,单击 下一步 进入方向盘测试或选择任意项进行测试。
左右转向期间,检测下发指令与返回结果一致性以及延迟时间。支持手动检测、阶越检测和连续检测。默认:手动检测。
进入方向盘检测后,将车辆驱动轮悬空,并单击 我已完成。
将方向盘分别向左、向右转到最大后,点击 查看详情 查看方向盘详情中的steering_angle数值。
将方向盘详情中的steering_angle数值依次输入左转最大真值和右转最大真值输入框中,并单击 我已完成。
根据提示调整左右最大真值并单击 确认。
左右最大真值自动调整完成并进入下一步。
设置转速,并单击 我已完成。
说明:
- 如果无法知道底盘的转速,这项可不填入,单位:度/秒。
- 在该项 我已完成 后,canbus 模块会自动杀死重启,请查看 canbus 是否重启成功。
打开车辆的自动驾驶开关,并单击 我已完成。
单击 我已完成 进入自动驾驶模式。
说明:如果切换自动驾驶模式时车辆自动拉起手刹,需要手动释放手刹按钮。请根据车辆实际情况释放手刹按钮。
以上步骤均完成后,单击 开始检测。
您可以通过手动添加指令检测、阶跃检测或者连续检测的方式进行。
设置旋转值,并单击 添加左转 进行左转检测。
设置旋转值,并单击 添加右转 进行右转检测。
说明:添加第一条命令成功后,再次执行第二条命令,数值变化是根据上一条命令累积执行的。以此类推。
设置旋转到,并单击 添加。
说明:
- 旋转值指左右转方向盘角度步长值,相对值,通过加减逐步叠加。
- 旋转到指绝对值。
- 旋转到的值不能直接从一个方向打满切换到另外一个方向打满。
单击 曲线图 查看响应时间曲线。
如果下发指令和返回结果曲线重合,且延时不超过300ms(支持在配置文件中配置)表示合格。
说明:在曲线图中,您可以点击 下发指令,关闭下发指令曲线,只显示返回结果曲线。
或者关闭返回结果曲线,只显示下发指令曲线。
单击 阶跃检测 进入阶跃检测界面。
单击 重新设置。
说明:系统默认会给出5%的步长值,如果检测其他数值,可以点击重新设置按钮进行设置。
在弹出的步长设置界面设置 步长值,并单击 确认。
说明:步长值需要大于
teleop_conf.pb.txt中的稳态角度最大差值。
单击 开始 进入检测。
单击 曲线图 查看响应时间曲线。
如果下发指令和返回结果曲线重合,说明检测合格,如不重合,则需要重新检测。
单击 连续检测。
设置幅值和周期,并单击 添加 开始检测。
说明:
- 连续检测:指 control 命令以 canbus 总线刷新帧率进行定频发送,检测底盘跟随响应情况。
- 幅值:连续检测中需要方向盘打到的左右最大百分比。
- 周期:所有命令下发完一轮的时间,这里周期最好大于16s。
检测完成后查看曲线图,如果两个曲线的峰值差距不大,且两个曲线在同一幅度时,延迟时间不大,则说明检测合格。
检测完成后,单击 下一步 进入刹车测试或选择任意项进行测试。
检测刹车踏板指令下发后结果正确性以及延迟时间。支持手动检测、自动检测。默认:手动检测。
将车辆驱动轮悬空,并单击 我已完成。
打开车辆上的自动驾驶开关,并单击 我已完成。
打开自动驾驶模块,并单击 我已完成。
依次完成以上步骤后,单击 开始检测。
说明:如果车辆带手刹功能,需要先释放手刹按钮。
设置踏板量,单击 添加踩下。
说明:稳态百分比最大差值不超过2%。
设置踏板量,单击 添加松开。
查看曲线图。如果下发指令和返回结果曲线重合,或者稳态百分比最大差值不超过±2%,都说明检测合格,如不重合且大于±2%,则需要重新检测或调整底盘参数。
单击 下一步 进入手刹测试或选择任意项进行测试。
说明:开始自动检测前,需检查车辆手刹是否放下,如果拉起状态会显示检测错误。
单击 自动检测。
单击 重新设置。
说明:系统默认会给出5%的步长值,如果检测其他数值,可以点击重新设置按钮进行设置。
在弹出的步长设置界面设置 步长值,并单击 确认。
单击 开始 进入检测。
单击 曲线图 查看响应时间曲线。
说明:如果检测不合格,可以重测,如果多次重测还是不合格,说明底盘有问题,需要检查底盘。
检测手刹拉起、放下指令下发后结果正确性以及延迟时间。支持自动检测。默认:自动检测。
说明:如果车型无手刹,可跳过该检测直接进入油门检测。
将车辆驱动轮悬空,并单击 我已完成。
打开车辆上的自动驾驶开关,并单击 我已完成。
打开自动驾驶模块,并单击 我已完成。
依次完成以上步骤后,单击 开始检测。
说明:开始检测前,放下手刹。
单击 开始。
系统开始自动检测。
检测显示结果正确的话,则检测通过。否则,需要查看车端手刹和检测项是否一致,如果不一致说明车辆底盘参数有问题,需要进行修改。
单击 下一步,进行油门检测选择任意项进行测试。
检测车辆在不同档位下(D、R、N),下发指令与返回结果一致性及延迟时间。支持手动检测、自动检测。默认:手动检测。
将车辆驱动轮悬空,并单击 我已完成。
打开车辆上的自动驾驶开关,并单击 我已完成。
打开自动驾驶模块,并单击 我已完成。
依次完成以上步骤后,单击 开始检测。
说明:开始检测前,放下手刹。
说明:为了安全起见,油门有最大踏板量限制,在配置文件里,目前默认 10%,如需检测更大油门,需要修改油门配置。
选择档位。
设置踏板量,并单击 添加踩下。
单击 添加松开。
查看曲线图,如果下发指令和返回结果曲线重合,说明检测合格,如不重合,则需要重新检测。
说明:松开踏板后,车可能会继续前进一段距离,如果车辆速度过高,可以按刹车键减速,长按刹车键刹车百分比会上升。
单击 重新设置。
说明:自动检测模式默认是 5% 的步长值,您也可以重新设置步长值。
输入 步长值,并单击 确认。
单击 开始。
检测完成后,查看曲线图,如果返回指令曲线拟合到下发指令,且延迟时间小于配置中的限制,则检测通过。
单击 下一步,进行速度检测选择任意项进行测试。
检测手动驾驶模式下,切换不同档位,速度的实时变化曲线。支持手动检测。默认:手动检测。
关闭车辆上的自动驾驶开关,将车辆行驶到宽敞的道路中,如果切换模式时手刹自动拉起,需要先将手刹放下,并单击 我已完成。
挂 D 挡,确认车辆行驶方向 前进。
挂 R 挡,确认车辆行驶方向 后退。
挂 N 挡,确认车辆行驶方向 驻车。
单击 开始检测。
依次选择不同档位。
设置最高速度,并单击 确认。
驾驶车辆看车辆是否能达到设置的最高速度。
说明:只要曲线能达到设置的最高速度值,检测通过。