T/COFA 0022-2023 渔用电子浮标数据报文编码规范 ,该文件为pdf格式 ,请用户放心下载!
尊敬的用户你们好,你们的支持是我们前进的动力,网站收集的文件并免费分享都是不容易,如果你觉得本站不错的话,可以收藏并分享给你周围的朋友。
如果你觉得网站不错,找不到本网站,可以百度、360搜搜,搜狗, 神马搜索关键词“文档天下”,就可以找到本网站。也可以保存到浏览器书签里。
收费文件即表明收集不易,也是你们支持,信任本网站的理由!真心非常感谢大家一直以来的理解和支持!
CCS B 50
中国远洋渔业协会团体标准
T/COFA 0022—2023
渔用电子浮标数据报文编码规范
Coding specification for data message of electronic buoy in fishery
中国远洋渔业协会 发布
目次
前言 ................................................................................. II
1 范围 ............................................................................... 1
2 规范性引用文件 ..................................................................... 1
3 术语和定义 ......................................................................... 1
4 数据报文编码 ....................................................................... 2
5 报文解译方法 ....................................................................... 4
附录A(资料性) 报文的解译流程图 ..................................................... 6
参考文献 .............................................................................. 7
T/COFA 0022—2023
II
前言
本文件按照GB/T 1.1—2020《标准化工作导则 第1部分:标准化文件的结构和起草规则》的规定起草。
请注意本文件的某些内容有可能涉及专利。本文件的发布机构不承担识别专利的责任。
本文件由中国远洋渔业协会提出。
本文件由中国远洋渔业协会归口。
本文件起草单位:中国水产科学研究院东海水产研究所。
本文件主要起草人:戴阳、郑汉丰、吴祖立、樊伟、张忭忭、杨胜龙、张衡、伍玉梅、陈帅、韦波、杨昱皞、何瑞麟、贺刘刚、俞圣池、熊鑫泉。
T/COFA 0022—2023
1
渔用电子浮标数据报文编码规范
1 范围
本文件规定了渔用电子浮标所采集数据在传输过程中报文的编码和解译方法。
本文件适用于渔用电子浮标的使用。
2 规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
SC/T 7003-1999 垂直回声探鱼仪通用技术条件
IEEE 754-2008 IEEE standard for floating-point arithmetic
3 术语和定义
下列术语和定义适用于本文件。
渔用电子浮标 electronic buoy in fishery
用于渔业生产和渔业科研的电子装置,一般由供电、环境参数感知、无线通讯、控制电路等功能模块和防水外壳组成,漂浮于水面,能够自动采集和上传数据。
垂直鱼探仪 vertical fish finder
由水声发射系统垂直水面向水下发射超声波,接收系统接收鱼群、海底及其他水中目标的反射回波,实现探测渔船下方鱼群和海底地貌的仪器。
[来源:SC/T 7003-1999:3.1 ]
数据报文 data message
数据传输过程中交换与传输的数据单元,即站点一次性要发送的数据块。
单精度浮点数 single-precision floating-point format
一种计算机数据格式,在计算机存储器中占用4个位元(32 bits),利用“浮点”(浮动小数点)的方法,可表示一个范围很大的数值。数据具体组织格式参见参考文献1。
时间戳 timestamp
记录事件发生时间的时间标志数据。本文件采用的是Unix 时间戳,即从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数。
数据头 data head
位于报文数据开头,用于指示数据报文开始的特定内容字节,本文件中数据头为ASCII码“$$”。
浮标编号 buoy number
每个浮标唯一的身份识别号码。
标识字节 identification byte
用于标识感知参量是否存在的字节,每个位对应一种感知参数,如果该位为“1”,数据中包含该种感知参量;该位为“0”,不包含该种感知参量。
T/COFA 0022—2023
2
数据体 data volume
将待传输数据按特定顺序排列组成的数据组织形式。
校验字节 check byte
保存数据校验结果的字节。
数据尾 data tail
位于报文数据结尾,用于指示数据结束的特定内容字节, 本文件中数据尾为ASCII码“##”。
链标志 chain annotation
用于指示下一个字节是否仍为标识字节的位。如果该位为“1”,则下一字节为标识字节;该位为“0”,则下一字节不是标识字节。
4 数据报文编码 数据类型
4.1.1 基础数据类型
渔用电子浮标所采集的数据类型及对应的计算机基础数据类型见表1。
表
1 基础数据类型
类型名称
长度
基础类型
说明
unsigned short无符号短整型
8bit
unsigned short
用作无符号整型数,表示数据量
Char字符型
8bit
char
字符,也可用作0~255无符号整型数,
Float浮点型
32bit
float
单精度浮点数,用于感知参数值
Flag标志位
1bit
boolean
布尔数,长度为1bit,用于做标志位
Timestamp时间戳
32bit
long int
Unix 的时间戳,用于记录数据采集时间
Array阵列
可变
array
用于存储鱼探仪回声强度数据
注:
渔用电子浮标上所用为简易垂直鱼探仪,其回声强度用一个字节长度的二进制数表示,在0~255之间,一组回声强度数据构成一个数组array。
4.1.2 数据种类和对应类型
浮标采集的信息中包含的数据种类及对应的数据类型见表2。
表
2 浮标信息中包含的数据种类及对应的数据类型
名称
数据类型
字符长度
是否应包括
说明
数据头
char(2个)
16bit
是
指示数据开始
数据尾
char(2个)
16bit
是
指示数据结束
校验值
char
8bit
是
位于数据的尾部,用于验证数据正确性
标识字节
boolean
1bit
是
用于标志传感器种类
经度
float
32bit
是
浮标所在位置的经度
纬度
float
32bit
是
浮标所在位置的纬度
速度/方向
unsigned short
16bit
是
浮标运动速度及方向
采集时间
timestamp
32bit
是
来自GPS或浮标系统时钟
电压
unsigned short
16bit
是
浮标电压
感知参数
float
32bit
否
感知参数量
鱼探数据
array
可变
否
鱼探回声强度数组,为8bit无符号数数组
注:
鱼探仪性能不同,鱼探数据的长度也不相同。其数据长度由鱼探数据的最前面两个字节组成的整型数表示。例如,最前两个字节是:0x01 0xF4,则表示鱼探仪数据总长为0x01F4=500个字节,数据长度后的字节分别表示探测深度分辨率等参数,然后是回声强度数据。 数据编码规范
T/COFA 0022—2023
3
4.2.1 报文编码组织形式
报文编码组织包括数据头、浮标编号、标识字节、数据体、校验字节和数据尾六个部分,组织形式见表3。
表
3 报文编码组织形式
名称
数据类型或内容
长度
说明
数据头
$$a
2byte
固定值(0x24 0x24),表示数据开始
浮标编号
unsigned int
4byte
每个浮标独有身份识别码
标识字节
boolean
nbyte
n为整数,具体长度与传感器种类与数量有关
数据体
float+ Array
可变
包括位置、速度、环境参量、鱼探等数据
校验字节
char
1byte
数据体的异或校验,一字节长度的无符号整型
数据尾
##b
2byte
固定值(0x23 0x23),表示数据结束
a
数据头固定为ASCII码“$$”。
b
数据尾固定为ASCII码“##”。
4.2.2 标识字节
标识字节用于标识浮标传感器感知参数的种类,其构成应符合以下要求:
a)
每个标识字节对应7种参数种类,分别对应标识字节的7~1位,第“0”位为标识字节的链标志位,用于指示下一个字节的属性,为“1”则下一个字节仍为标识字节,为“0”则下一个字节不是标识字节;
b)
标识字节的每位对应参数种类按表5约定,每位均可设置为“1”或“0”,对应位为“1”表示存在该传感器,后面的数据体中有对应该传感器的数据,对应位为“0”表示不存在该传感器,后面的数据体中没有对应该传感器的数据。
标识字节的组织形式见表4。
表
4 标识字节的组织形式
位序数
7
6
5
4
3
2
1
0
含义
参数1
参数2
参数3
参数4
参数5
参数6
参数7
链标志
标识
1/0
1/0
1/0
1/0
1/0
1/0
1/0
1/0
4.2.3 感知参数列表
将感知参数按照探测的常用程度列表,并与标识字节匹配建立感知参数表。感知参数组织列表宜符合表5要求。
表
5 感知参数列表
序号
数据种类
数据长度
数据类型
在标志字节中的位置(位次)
1
位置(经纬度)
8字节(经度纬度各4字节)
float
7
2
速度及方向
4字节(两个短整型,速度在前,方向在后)
短整型
6
3
采集时间
4字节
单精度浮点数
5
4
电压
4字节
float
4
5
温度
4字节
float
3
6
盐度
4字节
float
2
7
深度
4字节
float
1
8
pH值
4字节
float
7
9
溶氧
4字节
float
6
10
叶绿素a
4字节
float
5
11
叶绿素b
4字节
float
5
12
预留
3
13
预留
2
14
鱼探数据
多字节
char型array
1
注
1:列表中共列举了12个参数,用2个标识字节,还剩余2个位,可用于以后的探测参数的增加
注
2:对于两个标识字节,标识12个参数后,如果增加的参数多于2个,将第二个标识字节的链标志位设为“1”,表示后面仍是一个标识字节,按照这种方法,还可以继续增加传感器种类
T/COFA 0022—2023
4
4.2.4 浮标数据种类
浮标系统实际采集的数据种类和要求如下:
a)
数据种类宜包括位置、速度、方向、时间、电压、温度、盐度、pH值、溶氧和鱼探;
b)
第一个标识字节的链标志位为“1”,表示后面的字节仍是标识字节;
c)
第二个标识字节的链标志位为“0”,表示后面的字节不是标识字节,而是数据体的内容。
第一、第二个标识字节组织列表见表6和表7所示。
表
6 第一个标识字节组织列表
位序数
7
6
5
4
3
2
1
0
参数
位置
速度及方向
时间
电压
温度
盐度
深度
链标志
标识
1
1
1
1
1
1
0
1a
注:
各标志位为“1111110”,表示数据中含有位置、速度、方向、电压、温度、盐度等数据,不含深度数据。
a
链标志为“1”,表示下一个字节仍然是标识字节。
表
7 第二个标识字节组织列表
位序数
7
6
5
4
3
2
1
0
参数
pH值
溶氧
叶绿素a
叶绿素b
Null
Null
鱼探
链标志
标识
1
1
0
0
0
0
1
0a
注:
标识位数据为1100001,表示数据中含有pH值、溶氧、鱼探;不包含叶绿素a、叶绿素b数据。
a
链标志为“0”,表示标识字节结束,下一个字节是数据字节。
4.2.5 报文数据体结构
报文数据体结构见表8。
表
8 报文数据体结构
数据长度
8
4
4
4
4
4
4
4
可变
数据种类
位置
速度方向
时间
电压
温度
盐度
pH值
溶氧
鱼探
注:
数据体总长度随感知参数的种类变化而改变。
4.2.6 报文组织形式
报文组织形式应符合以下要求:
a)
报文数据包的组织形式为数据头“$$”+4个字节的采集系统编号+标识字节+数据体+校验值+数据结尾“##”;
b)
检验方式为一个字节长度的异或校验,参与校验计算的为除去数据头和校验字节本身及数据尾的所有数据。
报文组织形式构成见表9。
表
9 报文组织形式
名称
数据头
浮标编号
标识字节
数据体
校验字节
数据尾
数据长/字节
2
4
2
36+鱼探a
1
2
数据示例
$$
0x0001
0xF5C2b
##
a
数据体长度为“36+鱼探”,36表示表8中的数据所占长度为36字节,再加上鱼探数据长度。
b
0xF5C2为表6和表7两个标识字节的十六进制表示。
5 报文解译方法
浮标上传数据的解译程序要求如下:
a)
首先根据数据头和数据尾字节,判断数据是否接收完整,如不完整,则抛弃该数据;
b)
计算并比较校验值;
c)
根据已知的数据头为$$,找到第一个标识字节;
d)
根据第一个标识字节的最低位数值,找到所有标识字节。
T/COFA 0022—2023
5
e)
根据标识字节每位的数值和感知参数表,确定感知参数种类和相应的测量值。
报文解译流程图见附录A。
T/COFA 0022—2023
6
附录A
(资料性)
报文的解译流程图
接收数据
是否完整
提取浮标编号
校验正确
数据解译完毕
查找数据种类表
提取感知参数
提取标识字节
是
是
否
否
是
T/COFA 0022—2023
7
参考文献
[1] IEEE 754-2008 IEEE standard for floating-point arithmetic
评论