在社交媒体上共享

Blog文章

无人驾驶,还有多远?

发表 2011/01/03

【按】美国V2X车联网,要求识别哪条车道、哪一辆车,可以借鉴。关键词导航定位1.5米精度。

按照中国国家标准,三级以上多车道公路每条机动车道宽度为3.5~3.75米,和全世界通用标准相差无几,城市道路每车道宽度为3.5米,交叉路口分流车道每车道为2.3-2.5米,干线公路(包括高速公路)每车道宽为3.75米,路肩(高速公路紧急停车带)为1.5-2.5米。 高速公路收费站每车道宽度为2.5米~3.5米。

车辆本身宽度,日本系车的宽度是1695mm、1795mm,德系车、美系车的车身宽度多数都在1800mm以上。多数GPS模块、GNSS模块做不到道路识别、车辆识别的精度。

车联网要改变思路。多数车机、Telematics厂商热衷于过去的成功思维、用过熟悉的GPS模块,殊不知达不到识别车道、识别车辆的精度要求,然并卵;此外,现有通信基础设施,常被直接应用于车联网中,如移动通信网(中移动、联通、电信)充当数据传输和互联网通信手段,这就好比在高铁站、火车站打电话、连网老掉线(用户多通信塞车)。所以有DSRC短距离专用通信标准提出。

我们2014年在北京,实际测试(100Km/h)以下,NV08C-CSM v5 GPS+北斗模块及天线定位准确度1.5米,在行驶中定位准确度保持在1.5~2米,可以确保识别是在哪一条车道(3.5~3.75米)上、是哪一辆车(1.7~1.8米)。

多数人对ADAS(Advanced Driver Assistance Systems辅助驾驶技术)的理解,停留在基于视觉技术防撞警告、车道偏离警示等;实际上V2V/V2I + 新型无线技术才是下一代的ADAS。当然,多种传感器结合、有赖无线技术提升,可能是系统发展途径。最新情况是,中国正在研究第5代移动通信5G技术作为通信平台。

从防撞系统、半自动驾驶、全自动驾驶,从驾驶员驾驶车辆违法到无车,还有相当长的路要走。选用高准确度GNSS定位模块、高性能天线,以及惯性导航模块等核心模组十分关键。

先看4则媒体消息

人民网 2015年05月14日《首辆无人驾驶卡车获行驶许可证》

戴姆勒汽车公司的Freightliner无人驾驶货车获得了美国内华达州官方的行驶许可证,这也是全球首辆获得

无人驾驶许可证的重型卡车。

新车具有自动驾驶功能,但它并不能完全实现自动驾驶。它不会变线,不会自行超车,它仅能在高速公路上接管操控并保持自适应巡航的状态,而且该技术不能自行处理复杂的路面状况,例如前方道路上有积雪覆盖时,仪表盘上的图标会自动闪烁并伴有蜂鸣声来提醒驾驶员介入。如果驾驶员未在5秒内对车辆做出调整,车辆会逐渐放慢速度直至完全刹停。

新车的自动驾驶技术来源于奔驰卡车的自动驾驶技术,在它的车头安装有短程和长程雷达用来识别前方的障碍物,另外还装有一枚立体摄像头用来识别车道。

腾讯科技2015年7月26日《戴姆勒计划今年在德国测试无人驾驶卡车》。“我们非常乐观地认为,在未来几个星期内,我们将获得相关机构的批准,以便让我们在德国高速公路上测试无人驾驶卡车服务。”

新浪科技2015年10月13日《新加坡将发展无人驾驶公交车》。未来新加坡将投放无人驾驶公交车,而卡车也将集成自动驾驶技术。

韩国中央日报中文网2015年12月22日《板桥城市中心将建世界上首个自动驾驶汽车道路》。自动驾驶汽车在行驶道路上前行时,通过卫星定位系统(GPS)和自身传感器等获取交通信号和其它车辆及地形地物等信息

                                                                                       

NV08C-RTK-A,除了NV08C-RTK实时动态差分功能,还支持双天线航向应用。 航向无需基站或参考信息源支持。其中1#主天线提供位置、用于Rover或Base,2#次天线提供航向。 应用如GPS罗经、无人机飞行控制、农业机械自动驾驶、协同作业机械控制等。

NV08C-RTK、NV089C-RTK-A真北向速度命令:PNVGVOG。

$PNVGVOG,hhmmss.s-s,х.x,х.x,х.x,a*hh

3 hhmmss.s-s Time of position fix

4 x.x Latitude velocity, m/s

5 x.x Longitude velocity, m/s

6 x.x Height velocity, m/s

7 a Mode Indicator:

A = Autonomous mode

D = Differential mode

F = Float RTK

R = Real Time Kinematic

E = Estimated (dead reckoning) mode

N = Data not valid

NV08C-RTK的设置 0F

NV08C-RTK-A定向指令:$GPHDT真航向

4.NV08C-BRD补充特点

NV08C-BRD支持原始数据(伪距观测值,载波相位观测值,积分多普勒伪距值)输出、后处理等。类似于NV08C-CSM。NV08C-BRD没有内部UART转化USB芯片,实际上是NV08C-CSM在板上。如果用电脑USB通信端口简便测试,需要TTL(+3.3V)转USB线。

 

自由设置支持Glonass、北斗、SBAS及组合: $PKON1,x,x,c-c,c-c,xxxx,a*hh

第二个x: GPS+GLONASS = 0 

               GPS+GLONASS+SBAS = 10

               GPS+Beidou = 20

               GPS+Beidou+SBAS = 30

NV08C-CSM从v5.0版本开始,用户可以通过指令设置支持Glonass还是北斗,同时也可以设置支持SBAS。

 

5.NV08C-MiniCPI-E补充特点

NV08C-MiniPCI-E支持BINR二进制和原始数据输出,不提供后处理软件工具。只有一个通信端口NMEA+RTCM混合在一个通信端口,这样支持DGNSS。另外,使用BINR二进制message69H发送RTCM数据到NV08C,能自动使用NMEA和发送RTCM,以致一个数通信口输出NMEA和输入RTCM。

 

 

6. NV08C支持支持实时PPP(单点精密定位)吗?
 实时PPP(单点精密定位)需要L1和L2,因为NV08C-CSM、NV08C-BRD、NV08C-MiniPCI-E支持L1,所以不能做PPP。

NV08C-RTK-M、NV216C-RTK-A支持PPP。

                                  

 

7. L1/L2与L1到底有什么不同?

(消除了电离层误差)。L1测量需要使用电离层高精度模型较好地补偿误差(无法消除电离层误差)。但如果采用的CORS虚拟参考站已经消除电离层误差,如台湾国土部门CORS站,RTK L1板卡与RTK L1/L2就几乎没有差别。

L1/L2接收机支持实时PPP(单点精密定位 ),L1接收机支持后处理。

NV08C-RTKL1单频GNSS板卡性能不亚于双频板卡,能经济地满足一般实时差分需要。

得益于NV08C-CSM提供高质量的原始数据和先进的RTK算法,解算可靠、输出RTK精度高。GPS、Glonass足够多卫星,良好环境下丢星几乎不会发生。NV08C-RTK可以替代部分双频RTK板卡。

NV08C-RTK作业距离10公里为限,要求严格的大地测量精度时需要优质的双频/多频GNSS板卡,后者大致30公里作业半径。

用过市面上L1单频RTK板卡,遇到丢星、精度低等不佳体验,源于其GNSS模块或FPGA板卡提供的原始数据质量差、不可靠,加上RTK算法上的缺陷、低稳定性。NV08C-RTK完全可以替代部分双频RTK板卡。

 

NV08C-RTK虽然是L1/G1单频RTK板卡,但由于NV08C-CSM模块支持码群延(或称绝对测距误差)修正,载波相位的超前(或称相对测距误差)修正,多普勒频移(或称距速误差)修正等,实际上适合多数高精度应用要求,如测量、GIS、无人机UAV、机械控制和精准农业等。工程师不建议NV08C-RTK应用于用户站离基站超过10公里的场合。

NV08C-RTK-M为支持L1/L2、G1/G2、B1/B2双频板卡即将上市,换句话说作业半径30公里。

在GPS观测量中包含了卫星和接收机的钟差、大气传播延迟、多路径效应等误差,在定位计算时还要受到卫星广播星历误差的影响,在进行相对定位时大部分公共误差被抵消或削弱,因此定位精度将大大提高,双频接收机可以根据两个频率的观测量抵消大气中电离层误差的主要部分,在精度要求高,接收机间距离较远时(大气有明显差别),应选用双频接收机。 电离层误差是GPS测量中的主要误差,是限制单频GPS接收机的测程不能超过20km的决定因素。电离层对GPS测量的主要影响有七种:信号调制的码群延(或称绝对测距误差),载波相位的超前(或称相对测距误差),多普勒频移(或称距速误差),电离折射同高度角的关系,振幅闪烁,磁暴对GPS的影响,电离层对差分GPS的影响。电离层特性高出地球表面50—1000km的大气层称为电离层。电离层是一种微弱的电离气体,它能以各种方式影响电波传播。

过去多频GPS接收机比单频GPS接收机具有更高的信号捕获灵敏度、更强的抗干扰性能和更高的定位精度,但三频GPS接收机相比于双频GPS接收机却没有太大的优势,因为双频GPS接收机已能实现电离层误差的精确补偿,且三频GPS接收机在抗干扰方面没有太大的提高。 现在,因为NV08C-CSM及NV08C-RTK等都是真正多星系同时工作。有足够多的卫星供捕获、足够强的信号供定位,越来越多开发者用来替代双频、多频板卡。今后,随着CORS站、虚拟参考站的普及与平民化,如向公众开放高精度差分广播,NV08C-RTK的优势将更加明显。在目前阶段,不得不说长达几千公里的精密定位还是要用双频或多频板卡。 NV08C-RTK-M为双频RTK板卡。

8.有没有实际高精度测试数据可参考?
我们进行了很多高精度测试,如NV08C-RTK、NV08C-RTK-A,后者包含定向、航向。
如下是来自某航空摄影客户测试NV08C-RTK的数据:  

       最上面是3D浮点精度,依次是纬度误差,经度误差,高程误差

       图中纵坐标1小格是1mm误差,纬度、经度误差-1~+1mm,高程误差-3~+2mm(极大部分点落在此区域)

         

自上至下纬度误差分布图、经度误差分布图、高程误差分布图:

 

                          图中横坐标1小格是1mm误差,纬度、经度误差-1~+1mm,高程误差-3~+2mm(极大部分点落在此区域):

                                                                           

9. DGNSS与RTK

虽然同样依赖2台接收机工作,DGNSS差分与RTK实时动态差分(又称载波相位差分)还是不同。

DGNSS系统,举例一台高性能接收机(如NV08C-RTK,基站),一台NV08C-CSM接收机(流动站),NV08C-CSM接收到基站发出的RTCMv2.x电文messages #1和#31。

RTCMv2.x并不使用基站坐标。

message #1为所有可视GPS卫星改正电文。

message #31为所有可视Glonass卫星改正电文。

DGNSS system, RTCMv2.x messages #1 and #31

RTCMv2.x does not need to use base coordinates

message #1 is corrections for all visible GPS SVs

message #31 is corrections for all visible GLONASS SVs

RTK系统,流动站接收基站发出的RTCMv3.x电文,RTCMv3.x电文包含原始数据,流动端需要基站坐标计算、改正原始数据。

GPS & GLONASS改正信息(RTCMv2.x) ,或者是GPS & GLONASS原始数据+ 基站坐标(RTCMv3.x) 都能提高精度。

基站坐标输入两条命令即可$PNVGRTL,BASEXYZ或$PNVGRTL,BASEBLH。

原始数据或当前可视卫星的改正信息是DGNSS或RTK观测的主要部分,基站坐标数据对RTK是必要的但并不足够,主要改正源仍然是观测基站可视卫星的原始数据。

Base transmits RTCM messages 1002, 1006, 1010

1006 is message with Base coordinates

1002 - raw data for GPS

1010 - raw data for GLONASS

all these messages are necessary for RTK

1006 message only is not enough.

RTCMv3.x contains raw data and therefore needs base coordinates to calculate raw data corrections on Rover side,

but raw data or corrections for currently visible SVs is the main part of DGNSS or RTK method, base coordinates are just necessary information but not all, the main correction source here is raw data from visible SVs which are measured at Base Station side.

 

附:RTCM现有不同版本(括号内容表示变化)
RTCM 2.0 :仅用于DGPS (Code Correction-->DGPS)

RTCM 2.1 : 添加载波相位数据和RTK修正数据 (Code+Phase Correction-->RTK )

RTCM 2.2 : 包括了GLONASS 数据和相关信息 (...+Glonass)

RTCM 2.3 : 增加antenna types (message 23) ARP information (message 24) (...+GPS Antenna Definition)

RTCM 3.0 : RTCM 2.3 requires 4800 bps to broadcast dual-frequency code and carrier-phase observation corrections of 12 satellites. The information content is send with 1800 bps in RTCM 3.0 。增加了新的GNSS系统 (...+ Network RTK & GNSS)

GPS RTK Observations 

1001  GPS L1 observations
1002  GPS L1 observations, extended information 1)
1003  GPS L1+L2 observations
1004  GPS L1+L2 observations, extended information 1)
1) Extended information contains Signal-to-Noise (CNO) and full milliseconds for code observations.

Stationary Antenna Reference Point

1005   ARP station coordinates, ECEF XYZ
1006   ARP station coordinates, ECEF XYZ and extended information 2)
2) Extended information contains the antenna height.

Antenna Description

1007    antenna type
1008    antenna type, extended information 3)
3) Extended information contains the antenna serial number.

GLONASS Observations

1009    GLONASS L1 observations
1010    GLONASS L1 observations, extended information 4)
1011    GLONASS L1+L2 observations
1012    GLONASS L1+L2 observations, extended information 4)
4) Extended information contains Signal-to-Noise (CNO) and full milliseconds for code observations.

System Parameters

1013     system parameters, list of transmitted message types and update rates

RTCM 3.1 

Network Message

1014    Network Auxiliary Station Data
coordinate difference between one Aux station and the master station
1015    GPS Ionospheric Correction Differences for all satellites between one Aux station and the master station
1016    GPS Geometric Correction Differences for all satellites between one Aux station and the master station
1017    GPS Combined Geometric and Ionospheric Correction Differences for all satellites between one Aux station and the master station
(same content as both types 1015 and 1016 together, but less size)
1018    RESERVED for Alternative Ionospheric Correction Difference Message.Message type 1018 is not yet defined.

Ephemeris Data

1019    GPS Ephemeris
1020    GLONASS Ephemeris

UTF8 Text Message

1029   Text in UTF8 format (max. 127 multibyte characters and max. 255 bytes)

RTCM 3.1 Addendum 1

Transformation Message

1021    Helmert / Abridged Molodenski Transformation
1022    Molodenski-Badekas Transformation
1023   Transformation Residual Message, ellipsoidal grid representation
1024   Transformation Residual Message, plane grid representation
1025   Projection types except LCC2SP, OM
1026   Projection type Lambert Conic Conformal (LCC2SP)
1027   Projection type Oblique Mercator (OM)
1028   RESERVED for Global to Plate Fixed Transformation(Message type 1028 is not yet defined.)

RTCM 3.1 Addendum 2

Network Residuals Messages

1030   GPS Network Residuals
1031   GLONASS Network Residuals

ARP Message for VRS

1032    ARP station coordinates, ECEF XYZ of real reference station

Receiver and Antenna Descriptor

1033    Receiver and Antenna Descriptor

RTCM 3.1 Further Addendums

Further message types proposed for the next future are FKP for GPS and GLONASS, and MAC for GLONASS.

Network FKP Messages

1034   GPS FKP
1035   GLONASS FKP

 

10.NV08C-RTK相对坐标还是绝对坐标,以及不能

NV08C-RTK支持PPK(实时后处理)。NV08C-RTK支持输出二进制原始数据(raw data),能转换为RINEX,需要带RTK引擎后处理软件工具,如RTKlib,参考www.rtklib.com。

以虚拟参考VRS、CORS站作基站,由于输入的准确度很高的基站位置坐标,NV08C-RTK流动站输出的位置坐标为绝对坐标。一对NV08C-RTK分别作为基站、流动站工作,后者输出的只是相对坐标。

囿于内部结构及运算机制局限,NV08C-RTK不适合要求延时非常小(如小于10毫秒)的场合,NovAtel CPT也不能!此时,需要用到其它惯性导航模块,如Spatial延时(Latency)仅仅0.4毫秒。

NV08C-RTK延时50毫秒(目前FW)。延时取决于电路设计。从NV08C-CSM获取数据计算新位置需要时间,数据交换大约20-30毫秒。

 

11.北斗原始数据、差分

0xF4 : 二进制包含原始数据请求指令; 0xF5 : 原始数据包括所有跟踪到的卫星; 包含原始数据观测值:伪距、载波相位、多普勒和信噪比。数据大小【28+(30*所用通道数)】比特.

 

     1 - 该电文仅包含接收卫星的测量结果

     2 - 信号类型由掩码决定: 0x01 - GLONASS 0x02 - GPS 0x04 - SBAS 0x08 - 伽利略 0x09 - 北斗

     3 - 测量标志由掩码确定: 0x01 - 信号(跟踪) 0x02 - 毫秒伪距/多普勒频率测量 0x04 - 伪距测量平滑 0x08 - 载波相位测量 0x10 - 信号时间可用(完全伪距) 0x20 - 未检测到前导码(载波相位的半周期模糊度)。

     我国多项北斗国际标准提案,已被国际海事无线电技术委员会RTCM第104专业委员会(RTCM SC-104)接受。随着北斗进入RTCM、NMEA、IGS、NGS等国际系列标准,北斗的作用、威力将大大增强。但目前相比Glonass进入RTCM3.1标准,北斗做得远远不够。 NV08C-CSM默认串口2为BINR,需要设置为RTCM,支持RTCM v2.x messages #1与 #31. Message #1 是GPS corrections, message #31是GLONASS corrections。由于北斗差分相关信息没有公开,目前固件(Firmware)不支持北斗RTCM,待将来升级FW可以完全支持GPS、北斗差分RTCM,目前版本只支持GPS差分RTCM v2.x messages #1、Glonass差分RTCM message #31。 NV08C-CSM v5.x支持 北斗RTCM。

 

12.NV08C-RTK设置

出厂默认设置

NV08C-RTK UART1口预设为NMEA, 115200 bps: 输出电文/数据率: GGA/1, RMC/1, GSV/1, GSA/1, RZD/1, GBS/10 (详情参考 NV08C Receivers NMEA Protocol Specification)

NV08C-RTK UART 2口预设BINR, 115200 bps。

BINR协议通信在用户请求下才输出电文 (详情参考NV08C Receivers BINR Protocol Specification)。

NMEA协议通讯UART口必须设置为1 start - 8data - 1 stop。

BINR协议UART口必须设置为1 start - 8data - 1 odd parity - 1 stop.

 

NV08C-RTK GNSS板卡其它默认设置:

   导航模式: GPS和GLONASS

   RTCM数据: 自动输出 (DGNSS或RTK模式)

   SBAS数据: 请求下输出 ($PONAV NMEA command)

   RAIM: 自动

   辅助导航数据: 自动输出

   导航数据更新率: 1 Hz

   NMEA电文: 参考协议文档NV08C Receivers NMEA Protocol Specification

 

UART2初始设置为RTCMv3 115200 bps.

NV08C-RTK移动UART2接收RTCM数据,基站UART2发出RTCM 数据;

NV08C-RTK基站,置于Base Mode即可自动发出改正信息; NV08C-RTK移动站,置于Rover Mode即可自动接收基站改正信息。

 

基站与移动站设置语句

    $PNVGRTK,MODE,x NMEA message (see also NV08C-RTK NMEA Protocol Specification):

    $PNVGRTK,MODE,2 message turns NV08C-RTK to RTK-Rover mode(by default).出厂默认设置为移动站;

    $PNVGRTK,MODE,1 message turns NV08C-RTK to Base mode.设置为基站;

    $PNVGRTK,MODE,3 message turns NV08C-RTK to Base mode with antenna position averaging.基站工作模式,取天线相位中心位置平均值。        $PNVGRTK,MODE,0 message turns NV08C-RTK to Autonomous mode.设置为自主工作接收机。

 

Base setting message基站设置指令:

   $PNVGRTK,MODE,3,AVGTIME,N where N is length of antenna averaging interval in minutes, N = 1~1440,即1分钟到24小时;

   举例:基站设置1分钟天线位置平均值,语句为$PNVGRTK,MODE,3,AVGTIME,1。

 

检查基站设置是否成功语句: $PNVGRTK,MODE,BASEXYZ*0F 如果NV08C-RTK回复MODE=1和非0基站坐标,即为基站设置成功。

 

小贴士:1.NMEA语句只有合法字符、没有空格,字符与字符之间要么挨着、要么用逗号(,)分隔;

               2.注意字符半角与全角,认半角; 3.$PNVGRTK,MODE,

               3,AVGTIME,N默认的取天线位置值时间是30分钟,如果仅仅是测试目的,可以设置时间为1、2、3分钟,即 N=1或2或3。

 

保存用户设置与恢复出厂默认设置:(4.8 PNVGCFG – Save/Erase RTK Engine and Communication Ports settings) saving of the current RTK Engine and communication ports settings to FLASH memory and erasing of the previously saved settings (restore default settings).

     $PNVGCFG,x*hh Saving / erasing of settings:

     X= W – save (write) settings to FLASH保存用户设置到闪存中

           E – erase (restore default settings)清除用户设置、恢复到出厂默认设置

           R – erase and restart清除用户设置、重新启动

 

串口设置(4.4 PNVGRZA – COM Port Setting) the receiver COM port settings: protocol NMEA/RTCM and baud rate

       $PNVGRZA,x,x,x*hh

       第一个x, COM port number to be set:

                 0 – current port 1 – COM1 (UART 1)

                 2 – COM2 (UART 2) 3 – USB

       第二个x, Port baud rate, in bauds from 4,800 to 460,800

       第三个x, Protocol type:

                 0 – disable

                 1 – NMEA 0183

                 7 – RTCM

 

设置列表或清除设置    PNVGRZB – Extended Query Message sets a list of transmitted NMEA messages and output rates for the messages, or clears the earlier preset list.

        Message Format to clear the list of transmitted messages:  $PNVGRZB*hh

        Message Format to add messages to be transmitted to the list:  $PNVGRZB[,PORT,х],c-c,x[,с-c,х…]*hh

        [PORT,x] x: defines the port number for the following settings

        0 – current port; 1 – UART 1; 2 – UART 2; 3 – USB

 

       Note – The field is optional and can be omitted. If the field is omitted the setting are related to the current port

       c-c:  Addresses of the required messages (3 last characters for standard messages and all address field characters or 3 last characters for proprietary messages) 

       X: Message output rate in PVT update intervals

      Note: PVT update interval (in sec) is a value opposite to PVT update rate (in Hz) (see Message 4.12 PNVGRTK – Setting of RTK Engine parameters )

Setting the output rate to 1 will request messages to output every time a new PVT is calculated. Setting the output rate to N will request messages to output one time after N times of PVT calculation.

       [,с-c,х…]When several messages are to be added to the list then the Fields 3 and 4 should be set for each of requested messages

 

13.NV08C-RTK-A设置

主要设置指令:

1.$PNVGRTK,MODE,4 启动定向,自动输出BLS基线状况及航向。

2.$PNVGRZB,HDT 请求HDT真航向, $GPHDT语句包含在RTK NMEA协议($GPHDT - Heading,True),RTK FW0027版固件开始支持。

3.$PNVGRZB,BLS 请求基线状况及定向参数,包括固定解UTC时间、基于基线的北向、基于基线的东向、基线长度(计算两个天线中心相位长度)、基线与北向的角度、基线与水平的角度、工作模式等。

 

RTK FW0027固件简要:

NV08C-RTK-A默认RTK+航向工作模式;支持TimeMark EVENT;增加 HDT(真航向), SDP(位置标准方差), SDV(速度标准方差), SDH(航向标准方差), RZD(坐标方差2D RMS), TME(时间周标记事件), TMU(国际时间标记事件), TMC(GPS锁定时间标记事件), VOG(对地速度)输出...

注意:IMU得到偏航Yaw基于PCB板卡、对地速度VOG,而双天线得到航向Heading基于天线相位中心基线。

 

作者:AIT