(window.webpackJsonp=window.webpackJsonp||[]).push([[69],{384:function(t,_,v){"use strict";v.r(_);var e=v(10),d=Object(e.a)({},(function(){var t=this,_=t._self._c;return _("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[_("h1",{attrs:{id:"msg-install-align"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#msg-install-align"}},[t._v("#")]),t._v(" "),_("strong",[t._v("MSG_INSTALL_ALIGN")])]),t._v(" "),_("table",[_("thead",[_("tr",[_("th",{staticStyle:{"text-align":"left"}},[t._v("MSG_INSTALL_ALIGN")]),t._v(" "),_("th"),t._v(" "),_("th"),t._v(" "),_("th"),t._v(" "),_("th"),t._v(" "),_("th")])]),t._v(" "),_("tbody",[_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("Packet ID")]),t._v(" "),_("td",[t._v("0x80")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("Length")]),t._v(" "),_("td",[t._v("73")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("Read / Write")]),t._v(" "),_("td",[t._v("Read")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("Offset")]),t._v(" "),_("td",[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",[t._v("1")]),t._v(" "),_("td",[t._v("Uint8_t")]),t._v(" "),_("td",[t._v("Permanent")]),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("1")]),t._v(" "),_("td",[t._v("36")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("Alignment_DCM[3][3]")]),t._v(" "),_("td"),t._v(" "),_("td",[t._v("对齐旋转矩阵")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("37")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("GNSS_antenna_offset_X")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("GNSS天线X方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("41")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("GNSS_antenna_offset_Y")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("GNSS天线Y方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("45")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("GNSS_antenna_offset_Z")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("GNSS天线Z方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("49")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("Odometer_offset_X")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("里程计X方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("53")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("Odometer_offset_Y")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("里程计Y方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("57")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("Odometer_offset_Z")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("里程计Z方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("61")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("External_data_offset_X")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("外部数据X方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("65")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("External_data_offset_Y")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("外部数据Y方向偏移")])]),t._v(" "),_("tr",[_("td",{staticStyle:{"text-align":"left"}},[t._v("69")]),t._v(" "),_("td",[t._v("4")]),t._v(" "),_("td",[t._v("float32_t")]),t._v(" "),_("td",[t._v("External_data_offset_Z")]),t._v(" "),_("td",[t._v("m")]),t._v(" "),_("td",[t._v("外部数据Z方向偏移")])])])]),t._v(" "),_("p",[t._v("Alignment DCM")]),t._v(" "),_("p",[t._v("The alignment DCM (direction cosine matrix) is used to represent an alignment offset of Spatial Dual from it's standard alignment. A DCM is used rather than euler angles for accuracy reasons. To convert euler angles to DCM please use the formula below with angles in radians.")]),t._v(" "),_("p",[t._v("DCM[0][0] = cos(heading) * cos(pitch)")]),t._v(" "),_("p",[t._v("DCM[0][1] = sin(heading) * cos(pitch)")]),t._v(" "),_("p",[t._v("DCM[0][2] = -sin(pitch)")]),t._v(" "),_("p",[t._v("DCM[1][0] = -sin(heading) * cos(roll) + cos(heading) * sin(pitch) * sin(roll)")]),t._v(" "),_("p",[t._v("DCM[1][1] = cos(heading) * cos(roll) + sin(heading) * sin(pitch) * sin(roll)")]),t._v(" "),_("p",[t._v("DCM[1][2] = cos(pitch) * sin(roll) DCM[2][0] = sin(heading) * sin(roll) + cos(heading) * sin(pitch) * cos(roll) DCM[2][1] = -cos(heading) * sin(roll) + sin(heading) * sin(pitch) * cos(roll)")]),t._v(" "),_("p",[t._v("DCM[2][2] = cos(pitch) * cos(roll)")])])}),[],!1,null,null,null);_.default=d.exports}}]);