1. 首页
  2. 自习室
  3. 无人驾驶技术入门(三)| 无人车传感器 GPS 深入剖析(图)

无人驾驶技术入门(三)| 无人车传感器 GPS 深入剖析(图)

前言


上一次的分享里,我对百度 Apollo 计划的技术框架做了介绍,如图。

1.jpg

图片出处:无人驾驶技术入门(二)| 百度Apollo技术框架分析


如果要完成 Apollo 1.0 的“封闭场地寻迹自动驾驶”功能,需要解决一个重要的问题:我(无人车)在哪?


“我在哪”这个问题,在 Apollo 1.0 的架构中完全依赖 GPS(全球定位系统) 和 IMU(惯性测量单元)。


今天的分享,我会用尽可能简单的语言,介绍GPS的原理及特性,并谈一谈,为什么无人车的定位不仅要依赖GPS,还依赖IMU。我会在下次的分享中,着重地介绍IMU的功能。




正文


GPS定位原理很简单


GPS是全球定位系统(Global Position System)的简称,常见于汽车、手机中。民用GPS的定位精度在10~20米之间,这是为什么用手机的GPS定位,有时候明明在陆地上,却被认为在河里的原因。


GPS定位的原理很简单,叫做三角定位法(Triangulation)。原理如图:

2.jpg

图片出处:https://www.nationalgeographic.org/photo/triangulation-sized/


装在无人车上的GPS接收机,首先量测无线电信号到达卫星的传播时间,再将传播时间乘以光速,即可得到当前GPS接收机到达卫星的距离,有了距离,就可以根据几何原理求得位置了。


3.jpg

图片出处:http://slideplayer.com/slide/5717261/


若已知GPS接收机到达1号卫星和3号卫星的距离,那么1号和3号卫星根据距离产生两个球体(图中绿色和蓝色的球体),两个球体的相交的部分为圆形,该圆形与地球表面靠近的任何一个点都有可能是当前无人车(GPS接受装置)的位置。


因此仅根据这两个距离信息,还无法确定当前无人车的具体位置。此时通过引入第三个卫星的距离,就能较为准确地确定无人车的位置。这就是三角定位法的原理。


GPS定位精度不太够


根据上面的介绍,只要得到无线电信号达到三颗卫星的传播时间,似乎就能计算得到无人车的位置。


可是工程问题永远没有理论计算那么简单!


空旷云层稀薄的情况下,无线电信号的传播时间乘以光速确实与实际的距离接近。


但无线电信号的传播时间多少会受到传播介质的影响的。诸如云层的稀薄情况、天气好坏等都会影响到传播时间,进而影响到距离的计算。距离不准,得到的定位结果当然也不准了。


为了降低天气、云层对定位的影响,工程师们引入了差分GPS的技术。如下图所示:

4.jpg

图片出处:http://what-when-how.com/gps-with-high-rate-sensors/carrier-smoothed-code-gps/


在地面上建基站(Base Station),基站在建立时,可以得到基站的精确位置信息(经纬度)。同时基站具有接收卫星信号的功能。


当基站的GPS接收机与车载GPS接收机相距较近时(<30km),可以认为两者的GPS信号通过的是同一片大气区域,即两者的信号误差基本一致。根据基站的精确位置信号传播的时间,反推此时天气原因导致的信号传播误差,之后利用该误差修正车载的GPS信号,即可降低云层、天气等对信号传输的影响。


使用差分GPS技术,可以使无人车的定位精度从10米级别提升至米级。


差分GPS可以解决定位的精度问题,但是解决不了遮挡反射问题。


当无人车在高楼林立的环境中行驶时,这就会发生如下问题。


5.jpg

图片出处:https://www.e-education.psu.edu/geog862/node/1721


1.信号丢失

GPS接收机在高楼周围,很容易失去某一方向、所有的卫星信号,仅依靠另外三面的卫星信号求得的定位结果,在精度上很难满足无人驾驶的需求。


2.多路径问题

在高楼周围也可能导致原本收不到的卫星信号,经过大楼楼体的镜面反射被接收到,这种信号被称为多路径信号(Multi-Path Signal)。从图中可以看出,根据多路径信号计算得到的距离会明显大于实际距离。而无人车是很难判断,当前接收到的信号是单路径还是多路径的。


鉴于以上各种原因,可以看出,单靠GPS这一种传感器,无人车在复杂场景中,很难实现精确定位。


GPS定位频率不太高


GPS定位的频率不怎么高,只有10Hz,即100ms才能定位一次。

通过一个简单的例子,说一说为什么10Hz不够高。


假设一辆汽车正以72km/h(20m/s)的速度在路上直线行驶,GPS定位的周期为100ms,则一个周期后,汽车相对于前一次定位的结果移动了20m/s * 0.1s = 2m,即两次的定位结果相距2米。


如果无人车行驶在一条有曲率的路上,那就意味着,每隔2m,才能根据自车所在的位置,进行一次控制(方向盘转角、油门开度等)的计算。这种控制频率下的车辆行驶效果如下图。

6.jpg


无人车在实际轨迹两侧忽左忽右,无法精确地沿着轨迹行驶。


相对于理想情况下的控制方法,无人车的行驶轨迹应当如下图,保持极高频率的定位和控制,每走一小步,都重新进行控制的计算,并执行控制。

7.jpg


为了解决GPS频率太低所带来的问题,工程师引入了其他传感器信号(IMU、激光、视觉)用以辅助无人车的定位。


这些辅助手段如何实现会在以后分享给大家。




小结


上面的分享不仅介绍了GPS的原理(三角定位)及特性(精度、频率),同时也从无人车控制的角度,讨论了为什么仅有GPS无法满足无人车的定位要求。


如果你想对GPS的信号接口有更为细致的了解,可以参看Apollo公开的proto文件。链接如下:

https://github.com/ApolloAuto/apollo/blob/master/modules/drivers/gnss/proto/gnss.proto


我将在下一次分享中介绍IMU如何与GPS相辅相成,实现无人车的稳定定位。


作者:陈光

来源:自动驾驶干货铺

原文链接:https://mp.weixin.qq.com/s/09x5HYKjqEg9j1Kndbhi0A

本文已获权转发,如需转发请与原作者联系


相关推荐
发表评论
访客的头像
请先 登录 再评论,若不是会员请先 注册
留言列表

    还没有留言,还不快点抢沙发?