(window.webpackJsonp=window.webpackJsonp||[]).push([[388],{705:function(t,_,v){"use strict";v.r(_);var a=v(10),e=Object(a.a)({},(function(){var t=this,_=t._self._c;return _("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[_("h1",{attrs:{id:"里程计校准"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#里程计校准"}},[t._v("#")]),t._v(" 里程计校准")]),t._v(" "),_("p",[t._v("FDISYSTEMS的产品支持外部输入里程计数据进行组合导航,同时也支持里程计的刻度因子校准以及惯导-载体安装误差角校准。\n"),_("fdi-img",{attrs:{width:"100%",alt:"IMU",src:"/fdigroundstation/里程计/ODOM.png",caption:""}})],1),t._v(" "),_("h2",{attrs:{id:"里程计输入格式说明"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#里程计输入格式说明"}},[t._v("#")]),t._v(" "),_("strong",[t._v("里程计输入格式说明")])]),t._v(" "),_("fdi-img",{attrs:{width:"100%",alt:"IMU",src:"/fdigroundstation/里程计/05231743_00.gif",caption:""}}),t._v(" "),_("p",[t._v("FDISYSTEMS的产品支持用户通过串口或者CAN总线输入里程计数据,在上位机中将对应COMM口配置为External Odom即可。配置界面如下图所示(CAN总线输入方式),配置过后保存重启生效:")]),t._v(" "),_("fdi-img",{attrs:{width:"100%",alt:"IMU",src:"/fdigroundstation/里程计/图片37.png",caption:""}}),t._v(" "),_("p",[t._v("其输入格式必须符合FDILink协议格式,具体可见第11章第一节数据帧定义部分:")]),t._v(" "),_("p"),t._v(" "),_("p"),t._v(" "),_("p"),t._v(" "),_("p"),t._v(" "),_("p",[t._v("载荷部分的定义如下:")]),t._v(" "),_("table",[_("thead",[_("tr",[_("th",{staticStyle:{"text-align":"left"}},[t._v("Packet ID")]),t._v(" "),_("th",{staticStyle:{"text-align":"left"}},[t._v("0x90")]),t._v(" "),_("th"),t._v(" "),_("th"),t._v(" "),_("th"),t._v(" "),_("th")])]),t._v(" "),_("tbody",[_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("Offset")]),t._v(" "),_("td",{staticStyle:{"text-align":"left"}},[t._v("Size")]),t._v(" "),_("td",[t._v("Format")]),t._v(" "),_("td",[t._v("Field")]),t._v(" "),_("td",[t._v("Unit")]),t._v(" "),_("td",[t._v("Description")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("0")]),t._v(" "),_("td",{staticStyle:{"text-align":"left"}},[t._v("1")]),t._v(" "),_("td",[t._v("uint8_t")]),t._v(" "),_("td",[t._v("TYPE")]),t._v(" "),_("td"),t._v(" "),_("td",[t._v("里程计输入类型,输入4表示单轮速度输入,输入2表示双轮速度输入")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("1")]),t._v(" "),_("td",{staticStyle:{"text-align":"left"}},[t._v("4")]),t._v(" "),_("td",[t._v("uint32_t")]),t._v(" "),_("td",[t._v("Microseconds")]),t._v(" "),_("td",[t._v("us")]),t._v(" "),_("td",[t._v("输入数据时间戳")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("5")]),t._v(" "),_("td",{staticStyle:{"text-align":"left"}},[t._v("16")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("Wheel_rate[4]")]),t._v(" "),_("td",[t._v("m/s")]),t._v(" "),_("td",[t._v("TYPE等于4时只需要给Wheel_rate[0]赋值,TYPE等于2时需要给Wheel_rate[0]和Wheel_rate[1]赋值")])])])]),t._v(" "),_("p",[t._v("下面给出里程计输入数据的一帧示例:")]),t._v(" "),_("p",[t._v("FC 90 15 C6 4F 78 5F "),_("a",{staticStyle:{color:"#c60c30","font-weight":"600"}},[t._v("02")]),t._v(" "),_("a",{staticStyle:{color:"#24C60C","font-weight":"600"}},[t._v("92 02 31 03")]),t._v(" "),_("a",{staticStyle:{color:"#BA0CC6","font-weight":"600"}},[t._v("5D C2 17 41")]),t._v(" "),_("a",{staticStyle:{color:"#0C18C6","font-weight":"600"}},[t._v("5A C0 19 41")]),t._v(" 00 00 00 00 00 00 00 00 FD")]),t._v(" "),_("p",[t._v("其中"),_("a",{staticStyle:{color:"#c60c30","font-weight":"600"}},[t._v("红色数据")]),t._v("表示type,数值转换到十进制等于2,即需要输入两个轮速;")]),t._v(" "),_("p",[_("a",{staticStyle:{color:"#24C60C","font-weight":"600"}},[t._v("绿色数据")]),t._v("表示时间戳,数值转换到十进制等于53543570us;")]),t._v(" "),_("p",[_("a",{staticStyle:{color:"#BA0CC6","font-weight":"600"}},[t._v("紫色数据")]),t._v("表示Wheel_rate[0],数值转换到十进制等于9.48m/s;")]),t._v(" "),_("p",[_("a",{staticStyle:{color:"#0C18C6","font-weight":"600"}},[t._v("蓝色数据")]),t._v("表示Wheel_rate[1],数值转换到十进制等于9.61m/s;")]),t._v(" "),_("p"),t._v(" "),_("p",[t._v("## 刻度因子校准")]),t._v(" "),_("p",[t._v("FDISYSTEMS提供了两种里程计刻度因子校准方法,其位于Config主界面的Odom界面内,如下图所示:")]),t._v(" "),_("fdi-img",{attrs:{width:"100%",alt:"IMU",src:"/fdigroundstation/里程计/图片38.png",caption:""}}),t._v(" "),_("p"),t._v(" "),_("h3",{attrs:{id:"select-odommeter-type"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#select-odommeter-type"}},[t._v("#")]),t._v(" Select Odommeter type:")]),t._v(" "),_("p",[t._v("表示接入的里程计数据类型,分别为脉冲式输入和转速(速度)输入。脉冲信号通过GPIO输入,转速(速度)通过CAN输入。")]),t._v(" "),_("h3",{attrs:{id:"里程计刻度因子"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#里程计刻度因子"}},[t._v("#")]),t._v(" 里程计刻度因子:")]),t._v(" "),_("p",[t._v("指的是载体实际运动速度(距离)与里程计输出的速度(距离)的比值,理想情况下比值为1。但由于受到载体的轮胎充气和磨损,路面打滑等因素影响,实际上该值不是1。通过对里程计刻度因子的校准,从而提高导航的定位精度。校准刻度因子需要用到其他测量速度(距离的)传感器,下面介绍的方法一和方法二均采用GPS数据辅助计算里程计刻度因子。")]),t._v(" "),_("h2",{attrs:{id:"方法一-简易校准工具"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#方法一-简易校准工具"}},[t._v("#")]),t._v(" "),_("strong",[t._v("方法一:")]),t._v(" 简易校准工具")]),t._v(" "),_("p",[t._v("该方法采用GPS辅助对里程计刻度因子进行校准,GPS定位精度越高,计算出来的里程计刻度因子越准确。该方法的原理是通过计算一段距离里程计输出的路程,和GPS计算的路程相比,从而计算得出里程计刻度因子,因此需要载体在校准过程中"),_("strong",[t._v("直线行驶")]),t._v("。")]),t._v(" "),_("p",[t._v("操作步骤:")]),t._v(" "),_("h3",{attrs:{id:"a-开始"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#a-开始"}},[t._v("#")]),t._v(" "),_("strong",[t._v("A")]),t._v(". 开始")]),t._v(" "),_("p",[t._v("GPS定位有效,里程计数据输入正常的前提下点击Calibration按钮,此时下面state状态栏里开始实时显示数据,具体为:")]),t._v(" "),_("p",[_("strong",[t._v("Odometer Distance Left")]),t._v(":左轮里程计计算出来的当前位移;")]),t._v(" "),_("p",[_("strong",[t._v("Odometer Distance Right")]),t._v(":右轮里程计计算出来的当前位移;")]),t._v(" "),_("p",[_("strong",[t._v("Speed")]),t._v(":GPS接收机获得的载体实时速度;")]),t._v(" "),_("p",[_("strong",[t._v("Distance")]),t._v(":通过GPS接收机计算出来的当前位移;")]),t._v(" "),_("h3",{attrs:{id:"b-刻度因子估计"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#b-刻度因子估计"}},[t._v("#")]),t._v(" "),_("strong",[t._v("B")]),t._v(". 刻度因子估计")]),t._v(" "),_("p",[t._v("在Distance显示的位移充足的情况下(推荐20m以上),点击Stop and Calculate按钮进行计算,此时在Scale Factor Left和Scale Factor Right右侧的框中会显示计算的里程计刻度因子,如下图所示。")]),t._v(" "),_("fdi-img",{attrs:{width:"100%",alt:"IMU",src:"/fdigroundstation/里程计/图片39.png",caption:""}}),t._v(" "),_("p",[t._v("此时两个参数已自动写入模组flash内,用户如果觉得不满意的话可以重复A->B步骤重新进行校准。")]),t._v(" "),_("p"),t._v(" "),_("h2",{attrs:{id:"方法二-精准校准工具"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#方法二-精准校准工具"}},[t._v("#")]),t._v(" "),_("strong",[t._v("方法二:")]),t._v(" 精准校准工具")]),t._v(" "),_("p",[t._v("该方法同样采用GPS辅助对里程计刻度因子进行校准,GPS定位精度越高,计算出来的里程计刻度因子越准确。该方法是通过模组内单独运行一个滤波系统,对包含里程计刻度因子在内的几个状态进行实时估计,最终完成计算。下面对估计的几个状态进行说明:")]),t._v(" "),_("p",[_("strong",[t._v("Body2Vehicle Pitch offset")]),t._v(":惯导模组坐标系到载体坐标系的安装俯仰角;")]),t._v(" "),_("p",[_("strong",[t._v("Body2Vehicle YAW offset")]),t._v(":惯导模组坐标系到载体坐标系的安装偏航角;")]),t._v(" "),_("p",[_("strong",[t._v("Odom Scale Factor")]),t._v(":里程计刻度因子;")]),t._v(" "),_("p",[_("strong",[t._v("Odometer Arm X(Y,Z)")]),t._v(":惯导模组在自己坐标系中到里程计中心的X(Y,Z)轴位置,即IMU到ODOM的杆臂。")]),t._v(" "),_("p",[t._v("由于估计的状态有6组,同时对6组状态进行估计是不可观的,因此本滤波方法将状态估计分为两个部分,具体操作步骤如下:")]),t._v(" "),_("h3",{attrs:{id:"a-校准开始"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#a-校准开始"}},[t._v("#")]),t._v(" A. 校准开始")]),t._v(" "),_("p",[t._v("校准前需要将滤波开关AID_ODOMETER_VEL_UPDATE关闭,同时在GPS定位有效的环境下,载体进行充分运动,首先实现GNSS/INS的组合导航,即完成惯导的初始对准过程。")]),t._v(" "),_("h3",{attrs:{id:"b-刻度因子估计走直线"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#b-刻度因子估计走直线"}},[t._v("#")]),t._v(" B.刻度因子估计走直线")]),t._v(" "),_("p",[t._v("点击STEP1按钮,对安装角和里程计刻度因子进行实时估计。要求载体直线运动,在运动过程中用户观察三个状态的实时数据,判断数值已经稳定时点击STEP2按钮结束安装角和里程计刻度因子的估计过程并跳入下一个步骤,此时相关参数会自动保存到flash里。")]),t._v(" "),_("h3",{attrs:{id:"c-杆臂估计充分运动"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#c-杆臂估计充分运动"}},[t._v("#")]),t._v(" C.杆臂估计充分运动")]),t._v(" "),_("p",[t._v("在B步骤中点击STEP2按钮后进入杆臂估计流程。此时B中估计的安装角和里程计刻度因子不再发生变化,要求载体进行充分的运动,比如频繁的加减速与转弯。在运动过程中用户观察三个杆臂状态的实时数据,判断数值已经稳定时点击STOP按钮结束杆臂的估计,此时参数会自动保存到flash里。")]),t._v(" "),_("h3",{attrs:{id:"d-完成保存开启"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#d-完成保存开启"}},[t._v("#")]),t._v(" D. 完成保存开启")]),t._v(" "),_("p",[t._v("当里程计校准完成后,在config界面打开滤波开关AID_ODOMETER_VEL_UPDATE,保存并重新上电,此时里程计/惯导组合导航生效。")]),t._v(" "),_("cite-panel",{attrs:{title:"需要说明的是NOTE1"}},[_("p",[t._v("1.安装角和里程计刻度因子的标定是里程计/惯导组合导航的重要环节,这三个状态在B步骤中可观性很强,收敛速度较快;杆臂可观性较差,可能存在无法收敛的现象,但是其对里程计/惯导组合导航较小,因此C步骤中若杆臂无法收敛,则可以将杆臂手动设置0。")])]),t._v(" "),_("cite-panel",{attrs:{title:"需要说明的是NOTE2"}},[_("p",[t._v("2.当惯导模组水平安装在载体上,且X轴与车头方向基本平行时,采用方法一或者方法二都是可行的;否则必须估计惯导与载体之间的安装角,此时必须采用方法二进行校准。")])]),t._v(" "),_("cite-panel",{attrs:{title:"需要说明的是NOTE3"}},[_("p",[t._v("3.若模块始终安装在载体上的固定位置,则校准只需进行一次即可。或对于使用一定时长的载体,由于轮胎磨损,进行过换胎或者充气的操作后,推荐重新进行一次里程计校准。")])])],1)}),[],!1,null,null,null);_.default=e.exports}}]);