如何快速搭建可靠、低成本、高精度的自动驾驶系统

        假设你正在设计用于海上钻井平台的巡查无人机,那么肯定需要高精度的飞行控制。但在开发测试中,你发现,当无人机接近钢铁结构时,飞控系统变得不稳定。经判断,这是由GPS信号丢失和磁场干扰引起的。这两者都会降低无人机姿态控制系统的性能。

运行于严苛环境下的无人机

Figure 1 运行于严苛环境下的无人机

        因此,需要升级无人机的导航系统,使之更为稳定精确。经调研,你得出了两种方法:

        方法1:采用更高精度的导航方案,例如选择光纤陀螺。但这会导致每台无人机额外增加$20k的成本。并且,光纤陀螺重量较大,你还需要增加无人机的带载能力。

        方法2:当靠近钢铁结构时,调整导航方法以降低磁传感器在姿态确定中所占的权重;当GPS丢失时,使用带约束的航迹推算算法。然而,你当前采用的导航方案是一个“黑盒子”,无法对其进行定制化。如果自己重新设计整个导航方案,这将需要大量的软硬件开发工作。

        这是开始应用导航和控制系统时很可能遇到的问题。系统开发人员面临这样一个问题:或者定制化解决方案,或者购买更高精度的方案。

        新纳为此推出了OpenIMU方案,该方案包含低成本的IMU硬件和开源的软件栈,为用户提供了第三种更为合理的方法。OpenIMU目的是通过提供可靠、专业、可定制的开源软件栈以及易于集成的硬件来简化导航系统的开发。OpenIMU还提供了详细的文档及仿真系统,使之成为复杂定位和导航算法开发的独一无二的解决方案。

OpenIMU解决方案
Figure 2 OpenIMU解决方案

        回到上述的巡查无人机,通过使用OpenIMU,系统开发者首先进行仿真,然后修改OpenIMU提供的经过严格测试的算法,可以迅速开始项目开发。除了算法源代码和仿真系统外,完整的文档(包括算法的数学原理)都可以通过网络获取。

        对于嵌入式开发,我们提供了基于开源代码编辑器Visual Studio Code的OpenIMU工具链。安装VS Code后,可以搜索并安装我们的Aceinna Navigation Studio。完成安装后,你将会看到OpenIMU主页,这里你可以开始创建导航工程。最简单的方法就是直接导入一个可定制的IMU示例。我们提供了多个可直接部署的OpenIMU应用,这些应用包含了不同复杂程度的导航算法。

OpenIMU平台主页Figure 3 OpenIMU平台主页

        当然,仅仅仿真和编写代码并不能真正让无人机起飞。接下来我们介绍实际的OpenIMU硬件设备。通过OpenIMU平台定制的算法可以直接运行于低成本的OpenIMU硬件,首先发布的是OpenIMU300.

OpenIMU300惯性测量单元

Figure 4 OpenIMU300惯性测量单元

        OpenIMU300是一个9轴IMU模块,所有传感器都进行了完整的温度校准和转台校准,非线性和正交性等指标比其他低成本IMU提高了一个数量级。

        OpenIMU300具备多路串口、一路SPI端口和强大的168MHz的Cortex M4浮点CPU,串口可以用于集成外部GPS和其他传感器。OpenIMU300能够提供优于6deg/Hr的零偏漂移。OpenIMU开发套件包含JTAG调试器、开发板和高精度夹具以帮助开发者快速实现从编码到测试。

        导航应用可以运行于硬件上之后,我们需要采集数据来分析结果。OpenIMU提供了数据采集和记录方案。通过结合Python脚本和我们的开发者网站——Aceinna Navigation Studio使得数据采集和分析简单易用,用户不需要为新算法编写解码驱动。当OpenIMU应用中使用了自定义的数据包/消息时,可以通过配置一个JSON文件让数据采集和分析工具自动完成数据的解码和显示。

应用Aceinna Navigation Studio进行实时数据采集和记录
Figure 5 应用Aceinna Navigation Studio进行实时数据采集和记录

        OpenIMU开源工具链是自动驾驶导航开发的一大进步。易用、免费和现代化的软件工具和低成本的IMU硬件相结合,为高精度导航应用提供了完美的解决方案。

 

关于新纳传感系统有限公司

        新纳传感系统有限公司是全球领先的MEMS传感解决方案提供商,产品线包括基于磁阻薄膜的高频率高带宽电流传感器、高性能代码开源惯性测量单元(IMU)、高精度实时动态(RTK)导航系统和厘米级精度定位服务。公司在中国无锡设有研发与生产基地,并在波士顿、芝加哥和硅谷设有全球研发中心。请访问新纳官网www.aceinna.cn了解更多信息。