AIS (船舶自动识别系统Automatic Identification System)数据解析 |
您所在的位置:网站首页 › 什么是暗码pdf › AIS (船舶自动识别系统Automatic Identification System)数据解析 |
AIS数据解析
AIS电文种类暗码数据格式AIS数据部分字符编码比特值与ASCII码的对照表动态信息的格式表ROT参数说明静态信息的格式表船舶和货物类型报告位置参考点和船舶尺寸
B类AIS信息的解码过程举例VDM消息类型补充
AIS电文种类
VDM:本船接收到其他船舶的信息 VDO:本船向外播发的广播信息 明码:以“$”开头,明码报文内容可以直接读取 暗码:以“!”开头,报文内容需要通过字符转换和格式定义才能读出。 暗码数据格式 !XXYYY,A,B,C,N,Data,V*HH XX:使用的设备,“AI”是船载标志,“BS”是基站标志。YYY:语句类型,VDM表示封装的是他船信息,VDO表示封装的是本船信息。A:电文的长度可能很长,需要几句语句。此处规定了发送本条信息需要的报文条数(1-9)。B:本条报文的序列数(1-9),此字段不能为空。C:连续报文的识别码(0-9),给每一份新的多语句电文按序列指配编号,每次加1,计数到9后返回0,对要求多语句的电文,电文的每一句包含同样序列的电文号,它用于识别包含同一电文各个部分的语句。这样,使其他语句可以与包含该同一电文的各语句相互穿插。在电文可以使用一个语句时,该字段为空。N:AIS的信道指示为“A”或“B”,报文是从信道“A”还是“B”接收。本信道指示与接收该数据包时与AIS的运行状态有关。当不提供频道识别时,本数据为空。信道“A”或“B”的VHF信道号,可用AIS的一个ACA语句查询得到。Data:封装的数据部分,封装的最大长度的限制是语句的总字符数不超过82.对于用多语句传送的电文,本字段支持最多62个有效字符。而对于单语句传送的电文,最多为63个有效字符。V:填充位数(比特数),二进制比特数必须是6的倍数,如果不是,要加入1-5个填充比特。本参数指示加到最后一个6比特编码字符上的比特数。未加入填充比特时,本数值为0,本字段不可以为空。(即填充字符,由于每条消息语句总位数必须是6的整数倍,否则需填充0-5个字符)HH:检验字段。AIS数据采用8位CRC,取其8位CRC校验码的高四位,并转化为16进制数,构成AIS校验码的第一位,取其8位CRC校验码的低四位,转化为16进制数后构成校验码的第二位。当AIS接收设备收到一条AIS电文后,按照8位CRC对其数据部分进行重新校验,生成的校验值如果与电文自带的校验值相同,说明电文数据在传输过程中没有出错。如果不同,则说明数据在传输过程中出错了。< CR > < LF >:语句结束标志。 AIS数据部分字符编码AIS字符的编码采用的是6bit二进制串,因为AIS数据的字符有限,并不像ASXII字符那么丰富。为了保证数据的传输速度,AIS采用6比特编码,取代了8比特的ASCII码。 比特值与ASCII码的对照表
注: IMO号码:由7位数字组成,相当于“身份证”号码,一般不会更变。通常,远洋船舶都会被分配一个IMO编号。也有部分沿岸或者内河船舶没有分配,但是这些船舶不会随意输入一个号码充作IMO编号。呼号(Call sign):分配方式和MMSI相似,按照国家分配,中国国籍的船舶以B开头,法国的以F开头。实践中,船员呼叫对方船舶是船名和呼号一起呼叫的,以区别船名同音不同名或者同拼音不同名的船舶。 将42位的二进制字节串,分隔开,每组6位,一共7组。对照下表,得到每6位表示二进制串所代表的字符,就是呼号。船名:将120位的二进制字节串,分隔开,每组6位,一共20组。对照下表,得到每6位表示二进制串所代表的字符,就是船名。除非另有规定,所有字段均为二进制,所有数字均以十进制表示,负数用2的补码表示。 船舶和货物类型参考:R-REC-M.1371-5 建议书的表53
船舶尺寸以及定位设备位置 注: 在内河和近海区域中大多数中小船舶已经安装B类AIS船载设备。 B类AIS信息的解码过程单个字符的转换过程(用于代码实现): 判断每一个编码后的ASCII是否为有效字符,即AIS报文中的数据部分;根据8bitASCII对照表,可显示字符分为两部分,判断数据中的每个字符在哪个区间: 0x30 ~ 0x77 (即48 ~ 119) 0x57 ~ 0x60 (即87 ~ 96)把单个字符进行转化: 0x30 ~ 0x57(48 ~ 87)之间的字符:减去48,再和0x3f做与运算; 0x60 ~ 0x77(96 ~ 119)之间的字符:减去56,再和0x3f做与运算; 可通过计算器计算,算出字符所对应的十进制数,再做减法,得到的值转成十六进制后,再做与运算,最后将结果转成二进制。将上一步的二进制,除去高两位,只取低六位,即得到每个字符所对应的 6bit 的二进制串。 举例从Dotalog服务器中提取一条数据 !ABVDM,1,1,3,A,169DvlgP1R8KPtvFBfOCt3?h0@RT,0*03 AB指的是SAAB的AIS数据,VDM表示本台站收到的船舶的信息。 (SAAB 公司以!ABVDM开头的数据报文和以!AIVDM开头的国际标准的报文编码是完全一致的)
A: 该报文是通过A信道接收的 0*03: 0表示填充的比特数,03为数据区段CRC校验结果。 解析数据部分: 169DvlgP1R8KPtvFBfOCt3?h0@RT 数据区段共168bit,具体含义如下:
VDM消息类型总共有26种,可分为AIS目标显示信息(船舶静态信息和船舶动态信息)、安全信息处理、扩展应用处理和系统控制等几类。详细信息参考ITU-P M.1371规范. 消息1、2、3:位置报告 消息4:基站报告 消息5:船舶静态和航行相关数据 消息6:寻址二进制消息 消息7:二进制确认 消息8:二进制广播消息 消息9:标准的SAR航空器位置报告 消息10:UTC/日期询问(UTC和数据请求) 消息11:UTC/日期响应(UTC和数据应答) 消息12:寻址安全相关信息 消息13:安全相关确认 消息14:安全相关广播消息 消息15:询问 消息16:指配模式命令 消息17:GNSS广播二进制消息 消息18:标准的B类设备位置报告 消息19:扩展的B类设备位置报告 消息20:数据链路管理消息 消息21:助航设备报告 消息22:信道管理 消息23:群组指配命令 消息24:静态数据报告 消息25:单时隙二进制消息 消息26:带有通信状态的多时隙二进制消息 消息27:大量程AIS广播消息
VDM消息样例如下: !AIVDM,2,1,8,A,569 ;; gP0000089’'001 TTpPN0QD4000000000000t4IU7=4cG0@10H32@C’3I,079!AIVDM,2,2,8,A,T1CQp30B@00,21A消息5将被分解为两条连续的AIVDM消息进行发送,因此完整的压缩信息为: 569 ;; gP0000089’'001 TTpPN0QD4000000000000t4IU7=4cG0@10H32@C’3IT1CQp30B@00 所以要对这一个完整的消息进行解码. 注2:VDM消息的报告频率 静态消息:每6分钟,或者当数据被修正 动态消息:根据速度和航线改变情况 航行相关信息:每6分钟,或者当数据被修正 安全相关信息:根据请求 注3:A类设备和B类设备的区别 船用移动设备种类 A类船用移动设备符合相关的IMO AIS 运输要求。 A类设备能够接收和发送简短的安全相关信息,包括重要的航海和气象警报。 B类船用移动设备提供的工具和IMO AIS运输要求不必要完全一致。 B类设备只能接收简短的安全相关消息。 注4:A类设备的报告间隔 当移动站确定这是打信号时,报告速率都将增加到每2秒一次。 A类设备以外的其他设备的报告间隔 如果基站监测到有其他基站与它同步,需要将速度提高到3.3333秒 全文参考: AIS数据解析.pdf AIS国际标准解析和技术发展展望-2015.ppt |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |