7.3.3  封装语句
7.3.3.1  描述
这些语句以“!”开始,这个特别目的语句的作用是提供一个方法来传达信息。当特别的数据内容是未知的或者更大的信息带宽是被需要的。这与一个modem是相似的,它传输信息不知道信息是怎样解码或者解读。
基本的封装语句的规则是:
语句开始于“!”
只有认可的语句格式被允许。看8.2
只有有效地字符被允许。看8.1(Table 1 and 2)
只有认可的域类型被允许。看8.2(Table5)
只有6位编码可能被使用来创建封装数据域。看8.2(Table 5)
封装数据域可能包含任何数目的参数,他们的内容不被这个标准识别或者描述。
语句将被定义用一个封装的数据域和任意数目的参数数据域,用“,”分开。封装的数据域
将总是第二个最后的数据域,不算校验和。看7.2.2
语句包含一个 “语句总数” 域。看7.3.3.1
语句包含一个“语句数”域。看7.3.3.1
语句包含一个“连续的信息标识”域。看7.3.3.1
语句包含一个“填充位”域,紧跟着封装的数据域。这个填充位域将总是最后的数据域,不算校验和。看7.3.3.1
注意:这个方法来传导信息是被用只当完全必须的时候,将值被考虑当一个或者两种情况是真实的,当没有二选一的情况。
情况1:数据参数是未知的,必须传导信息。例如,ABM\BBM语句满足情况,因为内容是不知道的对于AIS(自动身份识别系统)。
情况2:当信息要求一个重要的更高的数据速率,能被IEC61162-1(4800速率)完成和IEC61162-2(38400速率)标准利用参数语句。
通过封装大量的信息,overhead字符的数目,像“,”域分隔符能被减少。导致一个更高的数据传输率。它是不寻常的对于第二种情况的实现。作为一个例子,一个AIS有一个数据率能承载4500消息和卫星每秒,导致VDM和VDO语句。
 
7.3.3.2   结构
下面提供一个大概的解释对认可的封装语句结构:
 
!aaccc,x1,x2,x3,c--c,x4*hh<CR><LF>
 
ASCII                           HEX                                description
"!"                                21                           开始语句
aaccc                                                            与前面介绍的“$”开头的相同
","                               2c                           与前面介绍的“$”开头的相同
x1                                                                语句域的总数:封装信息常常要求超过一
                                                                    个语句,这个域代表需要的分装语句的总数。
                                                                    这可能是一个固定的或者变长的,被定义在8.3
x2                                                                语句数目域:封装信息常常要求超过一个语句。
                                                                    这个域定义这是总语句数中的哪个语句。这可
                                                                   能是定长或者不定长的,见8.3
x3                                                               连续的信息识别域,这个域区别一个封装信息于
                                                                  另一个封装信息,使用相同的语句格式。这个域
                                                                   增加每当一个封装信息按照前一个格式产生。
                                                                   该值被重置为0,当它增长在定义的最大值之
                                                                    上。最大值和这个域的大小被定义通过合适的
                                                                   语句定义看clsuse 8.
c----c                                                          数据语句块:下面的连续的消息识别域是一系列
                                                                 数据域,包含一个或者更多参数数据域和一个封
                                                              装的数据域。数据域序列是固定的,被地址域的第
                                                             三个字符序列识别。个别的数据域可能是变长的,
                                                              领先于“,”。这个封装的数据域将总是倒数第二
                                                              个数据域。
x4                                                         填充位域:这个域代表被添加来完成最后的6位编码
                                                            字符的填充位的数目。这个域被要求和将立即跟着
                                                           封装的数据域。为了封装,二进制位数目将是6位。
                                                           如果它不是,一到五填充位将被添加。这个域将被设
                                                       置为0,当没有填充位已经被增加。这个填充位将总是
                                                         最后的数据域在句子中。这将不是一个空域。
“*”                 2A                        校验和分隔符:跟着最后的数据域。它表明下面的两
                                                       个字符展示HEX值。
 hh                                                 校验和(同以前)
<CR><LF>        0D  0A               结束符
 
 
7.3.4                 查询语句
7.3.4.1             描述
查询语句打算要求认可的语句来传输在一个two_way的方式。使用查询语句意味着监听者将有能力成为一个发射者使用他自己的总线。查询语句将总是用“$”构建。
 
 认可的查询语句包含,
ASCII                                   HEX                                 描述
“$”                                    24                                  开始
<aa>                                                                          发射者,标识请求者
<aa>                                                                          发射者,标识数据别请求的设备。
“Q”                                                                         查询字符,标识查询地址
“,”                                                                      数据域分割符
<ccc>                                                                       被认可的被请求的数据的语句格式
“*”<检验域>                                                        校验域
<CR><LF>                          0D0A                                结束语句
 
7.3.4.2             回应查询语句
 
查询语句的回应  是 被请求的认可的语句。使用查询语句要求相互联系的设备的协调。一个查询语句的回应 不是强制的,没有特别的时间延迟在收到一个查询和回应之间。
 
7.3.5             所有权语句
这些是不包含在标准中的句子:这些提供一个方法给制造者使用语句结构定义来传输非标准的语句。请看下面的原因:
1. 数据打算到另一个从相同的制造者的设备,这个设备很特别,不在一个形式,或者不是一般用户感兴趣的类型
2.正被使用来测试目的,先于采用认可的语句的数据
3.数据,不是一类和一般有用,值得创造一个认可的语句。
 
注意: 制造者的记忆代码参考清单是等价的NMEA0183说明的组成部分。
 
一个所有权语句包含:
 
ASCII                               HEX                             描述
"$"                                     24                       开始
"P"                                    50                          ID所有权语句
<aaa>                                                            制造者的记忆代码
[<有效字符,"^"",">]                              制造者的数据
"*"<校验和>                                             校验域
<CR><LF>                        0D0A                语句结束
 
所有权语句将包括检验和和符合要求限制所有语句长度。制造者的数据域将包含只是有效地字符,但是可能包含“^”“,”,分割或者作为制造者数据。所有权数据域的详情不包含在标准,需要提交来认可。尽管如此,他是被要求,语句被出版在制造者的参考手册。
 
7.3.6         命令语句
7.3.7         有效语句
7.3.8         多重语句消息
7.3.9      语句传输时间
7.3.10      额外的认可的语句
7.4           错误检测和处理
7.5         处理弃用语句
8                数据内容
8.1           字符定义
Table 1  保留的字符
 
Table 2   有效字