自动驾驶这一块,其实从方向来说,包括感知融合规划决策和控制。
那么对于感知来说的话,它主要包括雷达和摄像头,对于雷达,它包括有毫米波雷达和超声波雷达以及激光雷达,从当前的技术角度来说,毫米波雷达主要用于当前的各种adas的功能,而对于超声波雷达呢,主要用于泊车,激光雷达当前更多的用于没有量产的东西,成本太高了,所以说这个能不能量产,未来不好说。雷达它的作用其实主要就感觉周围的物体,然后形成点云。
下面咱们再说说摄像头。摄像头它和雷达的区别是雷达可以有效探测前方物体的距离,而摄像头探测距离是差的。我们可以认为它对模式识别是非常准确的,比如说它可以探测前方物体是一个什么物体,是人还是车辆?对于这一块的工作呢,其实更多的是我们做一些摄像头的识别算法,然后通过深度学习去训练这些算法。摄像头算法是简单的容易,但是能做好是比较难的。目前量产的摄像头产品中基本都是被国外的把控。
所以如果你想做感知这一块呢,你就可以看雷达或者是摄像头,可以重点研究一下。
那么感知这一块做好之后,我们可以下一步关注的是融合。那么所谓的融合呢,我们就可以利用摄像头和雷达各自的优点,然后对我们探测到的目标进行融合。比如说我们雷达有前雷达,角雷达。而每一个雷达探测到的目标有几十甚至上百个。那么我们要把这些目标和摄像头探着的十几个或者几十个目标进行融合。然后得到我们想得到的这个目标物。目标物呢,它包含作为运动的物体,周围的一些栅栏,还有周围的一些障碍物什么的。
目标融合之后呢,我们要下面要做的另外一个事情,就是目标的选择。而目标的选择取决于我们车辆的运动状态以及我们所在的道路环境。同时我们还要考虑我们开发的功能。举个例子,自适应巡航的功能,和紧急自动刹车的功能,他们在选择目标的时候是不一样的。那么这个呢,我们就可以认为是我们的规划来的,那么这个规划呢,其实一是根据我们周围感知到的目标,二是要根据我们对应的车辆状态,三是要考虑我们当前形势的这个车路环境。然后还要考虑我们车辆的做的功能。然后去规划出相应的车辆行驶轨迹,车辆目标运动状态,比如说它的横向加速度,纵向加速度。
规划之后呢,我们就要实现车辆的控制。对车辆的控制呢,我们可以总结总结成横向控制和纵向控制。那么无论横向控制也好,纵向控制也好,其实我们都要算出车辆的横向控制和纵向控制的控制量。对于纵向控制的话,我们主要是控制车辆的加速度和减速度。在加速过程中,我们会把加速度给到发动机控制模块或者是整车控制模块。那么有的企业呢也可以考虑,它是得出的是期望的扭矩。然后也交给动力系统,来实现期望的控制效果。而对于横向控制呢,其实就是控制的方向盘,对方向盘的控制我们有几种方式,第1种控制方向盘转角。第2种控制方向盘的扭矩。第3种控制方向盘的齿条位置。那么这三种呢都和我们期望的轨迹以及当前的轨迹,以及车辆的期望航向角,以及当前航向角这些量有关系。
上面就是我总结的关于自动驾驶算法相关的一些方向。对于这个方向呢,其实在学校的时候,我们没办法在实车来做。我们可以通过一些仿真软件,来实现算法的开发。这对于学生来说是非常方便的。比如carsim,prescan, carmaker等仿真软件
那么除了上面我所说的一些,我建议大家要学习的什么呢?现在软件的重要性越来越重要。那么它的主要体现在嵌入式软件的开发。所以有时间的话,可以学习一下嵌入式软件的开发的。比如c语言、c++。
另外一个其实大学中我们学的这些东西真的到企业中,能不能用到不一定。所以说在学校里,我们更重要的是我们的学习能力的提升。因为学校里做的东西和企业里其实差距越来越大。我们在学校里学的那些东西,在企业中可能根本就用不到。
而且在企业里我同样开发一个自动驾驶的一个车,或者是智能辅助驾驶的一辆车,那么在整个开发过程中,我们会涉及到很多的岗位,比如项目管理,系统工程师,软件工程师,功能开发工程师,测试工程师。每一个工程师的工作内容以及需求的软件,硬件和工作能力都是不一样的。那么我们在学校的过程中,更多的是除了知识的储备,还有一些沟通交流等方面的能力!
未来的企业需要的是复合型人才。我们也可以称为是钉子型人才。那么我们需要有一个钉子的面,那么这个面呢,其实就是要求我们的知识的广度。那么同时呢,我们还要钉子尖,还有这个尖呢,其实就是取决于我们钉子的深度。