机器人与人工智能技术的进步,催生了自动驾驶的再一次技术高潮。
科技在进步,汽车新技术不断兴起,从电动化到智能化,从高级辅助驾驶到自动驾驶,都是为了解决最根本的能源、环境和安全问题。
总之,自动驾驶技术的发展既能推动道路交通绿色、安全、智能化的进程,也能对社会经济发展产生重要的推动作用。
自动驾驶,也称无人驾驶或自主驾驶,是指车辆或其他交通工具在没有人类干预的情况下进行行驶和控制的技术。它可以由传感器、摄像头、雷达、激光雷达、GPS等设备实现对周围环境的感知和识别,通过机器学习、人工智能等算法进行决策和行动,从而实现完全自主的驾驶。自动驾驶的发展被认为有望提高道路交通的安全性、效率和便利性。
完全自动驾驶的实现还有很长一段路要走,目前大多数公司是用ADAS和AD两条路线走,包括Tesla等企业。
读者可能是学生,也可能是已经工作的工程师,大家可以从自己擅长的东西出发,比如之前是做算法的,就可以从了解自动驾驶相关算法入手;学习人工智能的,就可以从AI在自动驾驶上的应用开始;车辆相关的,可以从学习车辆动力学,了解pnc
算法开始;最后,没有方向的,我觉得可以从了解工具链开始,先学习ros
,了解自动驾驶软硬件是如何工作的开始……
这里列出一个自动驾驶学习路线,供参考:
自动驾驶中间件是连接整个自动驾驶系统的核心组件,其作用是在自动驾驶各模块之间、软件模块与硬件之间提供硬件抽象、驱动管理、通信机制和常用工具,常用的有ros、dds、autosar
等。(ros是一个开源的机器人软件平台,提供了一个通用的机器人系统架构,已经被广泛应用于自动驾驶领域。autosar是基于ecu的汽车开放系统架构,规定了基本系统功能、功能接口和开发方法,有cp和ap两个版本,类似于单片机的rtos,已成为汽车嵌入式的标准。)
ros有ros1和ros2两个版本,主要区别如下:
ros1 | ros2 |
---|---|
初始版本,事实标准,开发灵活性好 | 更新版本,实时性拓展性更强 |
基于发布/订阅和服务的通信模式 | 基于DDS(Data Distribution Service)协议,支持更多的QoS(Quality of Service)机制 |
支持广泛的硬件平台,已被广泛应用,有了大量的代码库和算法库,可加速应用开发 | 有更好的实时性能和更高的稳定性,可以支持更多的应用领域 |
ros能解决的软件开发问题主要有:
一些公司还会自研中间件,如基于DDS协议+Autosar
平台等,实际上是为了让整车各功能间更好的交互,以后可能是整车以SOA
(Service Oriented Architecture)的架构来设计,实现了解决方案间的集成、系统组件的集成、业务实现的集成,甚至可能以后也会往微服务架构去发展,彻底实现功能或者业务的组件化,当然这都是互联网到汽车领域的舶来品,因此,工作经验到哪都有用,加油少年。
下面就从ros学习出发,入门自动驾驶参考: