软件与硬件之间最重要的连接桥梁就是传感器

描述

打造一辆无人驾驶车,软件只是成功的一半。即使软件已经达到完美,也仍然需要至少一年时间才能将软件与硬件完全融合在一起。

软件与硬件之间最重要的连接桥梁就是传感器。通过激光雷达、摄像头、毫米波雷达等传感器,才能将数据传给软件,做出相应的驾驶决策。因此,传感器的规格、位置、角度等等各种参数,都需要一步步调试。

调试好了一辆车上的传感器,还要保证可以将其顺利复制到车队里的其他车上。即使已经调试好了多辆车,一旦车的型号发生变化,或是车体的设计发生变化,就又需要重新调试。过程十分复杂。

传感器安装好之后,要通过逐步的测试得出来的结果来验证调试效果。例如,关于定位(localization)的各项指标要证明传感器调试的效果足够精准,各个传感器的数据传输时间不能有过长的延迟。

一辆按比例缩小的测试车与一个测试床(testbed)相连

除了传感器,硬件团队还需要为无人车的大脑提供必需的空间,即高效的GPU(图像处理器),不断优化计算能力(compute),收集到的数据才能被快速分析出结果。

硬件团队还需要提供电子控制器单元(ECU),才能探测到车在每时每刻的状态,让无人车听从大脑的指令,做出正确的驾驶行为。如今,一辆普通人类驾驶车上可能有上百个ECU,无人车需要的则更多。因此,如何在有限的空间里容纳更多的ECU,就变得至关重要。

ECU也是无人车做好车内体验的关键。车内的每一个功能都需要ECU的支持,比如车内屏幕、车锁、安全带、安全气囊,等等。比如,乘客只有坐下来,安全带和安全气囊才有效。ECU所扮演的角色就好像软件与硬件之间的翻译官。

硬件准备好了之后,就要把代码导入到车里。最原始的办法就是在工程师的电脑与车上的主机之间连一条线,把代码慢慢传上去。相对成熟的团队会把代码放在云里,然后让一名工程师在发车之前,通过几个命令行把代码传给这辆车。

比较有规模的团队则会在车上安装云端数据处理器,无需工程师帮助,车队里的每辆车会每天自动下载最新的代码,车的后备箱里也不再配置笨重的主机。这就像手机系统更新一样,更新系统时不用去手机商店,手机会自动更新。

硬件的设计、组装、验证过程复杂而漫长,需要与软件团队紧密合作。而问题是,在很多团队里,因为软件工程师的背景往往与硬件工程师的背景完全不同,之间的需求沟通不够明确,所以在合作时经常发生摩擦。软件工程师往往看重结果,讲求速度,而硬件工程师则注重过程,讲求严谨。团队的管理者要从大局出发,让两个团队互相了解彼此的需求,才能更快达成共识。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分