北斗用户机用户接口协议
(内部资料,注意保存)
接口数据传输约定
串口非同步传送,参数定义如下:
传输速率:115200bit/s(默认),可根据用户机具体情况设置其它速率; 1 bit开始位; 8 bit数据位; 1 bit停止位; 无校验 。
接口数据传输基本格式如下:
指令 / 内容 长度 用户地址 信息内容 校验和
“指令”或“内容”传输时以ASCII码表示,每个ASCII码为一个字节; “长度”表示从 “指令或内容”起始符“$”开始到“校验和”(含校验和)为止的数据总字节数;
“用户地址”为与外设相连的用户机ID号,长度为3字节,其中有效位为低21bit,高3bit填“0”;
“校验和”是指从“指令或内容”起始符“$”起到“校验和”前一字节,按字节异或的结果;
“信息内容”用二进制原码表示,各参数项按格式要求的长度填充,不满长度要求时,高位补“0”。信息按整字节传输,多字节信息先传高位字节,后传低位字节;
对于有符号参数,第1位符号位统一规定为“0”表示“+”,“1”表示“-”,其后位数为参数值,用原码表示。
1
接口数据传输协议
外设至用户机信息传输格式
指 令 定位申请 $DWSQ 通信申请 $TXSQ 串口输出 $CKSC IC检测 $ICJC 系统自检 $XTZJ 时间输出 $SJSC 版本读取 $BBDQ 长度 16 bit 16 bit 16 bit 16 bit 16 bit 16 bit 16 bit 用户地址 24 bit 24 bit 24 bit 24 bit 24 bit 24 bit 24 bit 信息类别 8bit 信息类别 8bit 信 息 内 容 高程数据和天线高 气压数据 32bit 32bit 用户地址 电文长度 是否应答 24bit 16 bit 8bit 传输速率 8bit 帧号 8bit(固定填0) 自检频度 16bit 输出频度 16bit (空) 入站频度 16bit 电文内容 最长1680bit 校验和 8 Bit 8 bit 8 Bit 8 bit 8 bit 8 bit 8 bit 外设至用户机信息传输格式说明 定位申请($DWSQ)
定位信息类别:
定位2bit 紧急定位 1 bit 有无时差 1 bit 测高方式 2 bit 00有高程 01无测高 10测高1 11测高2 保密 1 bit 高程指示 1 bit 00 固定填0 固定填0 固定填0 0 普通 1 高空 “普通”表示用户所在位置的大地高程数据<16300米或天线高<400米,“高空”表示用户所在位置的大地高程数据≥16300米或天线高≥400米;
当“测高方式”为“00”时,“高程数据和天线高”参数单位1米。对于普通用户,该参数高16bit(第1位为符号位)为天线所在点的大地高程数据,低16bit为天线高(填全“0” );对于高空用户,该参数为为天线所在点的大地高程数据,是
2
无符号数;
当“测高方式”为“01”时,对于普通用户,“高程数据和天线高”参数高16bit填全“0”,低16bit填天线距离地面的高度,单位为0.1米;对于高空用户,该参数填天线距离地面的高度,单位为0.5米;
当“测高方式”为“10”时,对于普通用户,“高程数据和天线高”参数高16bit填全“0”,低16bit填天线距离地面的高度,单位为0.1米;对于高空用户,该参数填天线距离地面的高度,单位为0.5米;
当“测高方式”为“11”时,对于普通用户,“高程数据和天线高”参数低16bit填天线距离用户机中气压仪的高度,单位为0.1米,高16bit填用户机中气压仪所处位置的概略正常高,其中第1位为符号位,单位1米;对于高空用户,“高程数据和天线高”参数填用户机中气压仪所处位置的概略正常高,单位1米。如果用户将概略正常高填为全“0”,则用户机在入站申请信息中自动填入该数据。
当“测高方式”为“00”和“01”时,“气压数据”参数填“0”;否则,该参数前20bit为气压,单位0.1Hp,后12bit(第1位为符号位)为温度,单位0.1℃。如果用户使用用户机自带高精度气压仪提供的气压数据,则“气压数据”参数填“0”,用户机在入站申请信息中自动填入气压数据。
“入站频度”单位1秒,填“0”表示单次定位,需要按一定频度连续定位时填入设置频度。
通信申请($TXSQ)
通信信息类别:
报文通信 3bit 010 密 钥 1 bit 固定填0 通信类别 2 bit 固定填01 传输方式 1 bit 0 汉字 1 代码 标志1 bit 固定填0 “用户地址”用户地址为此次通信电文的收信方地址;
“电文长度”为串口传输的汉字电文(以计算机内码编码传输)或代码电文(即BCD码)的有效长度,单位为1比特。
“传输方式”为代码且“电文内容”不满整字节,传输时在电文最后补“0”。
3
串口输出($CKSC)
“传输速率”:“00H”表示19.2Kbps、“01H” 表示1.2 Kbps、“02H”表示2.4 Kbps、“03H”表示4.8Kbps、“04H”表示9.6Kbps、“05H”表示38.4Kbps、“06H”表示57.6Kbps、“07H”表示115.2Kbps。默认值为“00H”。
IC检测($ICJC)
用户机在收到该指令后发送“IC信息”($ICXX)至外设。
当外设获取本机用户信息时,“用户地址”填全“0”;接收到本机用户信息后,向用户机获取下属用户信息时,“用户地址”填外设控制工作的用户机的ID号。
系统自检($XTZJ)
用于用户机进行系统自检和巡检。检测完成后返回“自检信息”($ZJXX)至外设。 自检频度:单位1秒,填“0”表示单次检测。
时间输出($SJSC)
用户机收到该指令后返回“北斗时间”($BDSJ)至外设。 输出频度:单位1秒;填“0”表示单次输出。
版本读取($BBDQ)
用于获取用户机硬件和软件(固件)的版本信息,用户机收到该指令后返回“版本信息”($BBXX)。。
用户机至外设信息传输格式
4
内 容 功率检测 $GLJC 定位信息 $DWXX 通信信息 $TXXX 长用户度 地址 16bit 16 bit 16 bit 16 bit 24 bit 24 bit 24 bit 信息类别8bit 信 息 内 容 输出频度 8bit 校验和 位置数据 查询地址 8 24bit T 32bit L 32bit B32bit H 16bit ζH 16bit bit CRC标志 8 bit 下属用户总数 16bit 8 bit 8 bit 8 bit 8 bit 8 bit 附加信息 32bit 8 bit IC信息 $ICXX 24 bit 信息 发信时间 发信方地 电文长度 电文内容最长类别 h M 24bit 16 bit 1680bit 8 bit 8bit 8bit 通播ID 用户特征 服务频度 通信等级 加密标帧号 志 24bit 8bit 16bit 8bit 8bit 8bit IC卡状态 8bit 硬件状态 8bit 电池电量 8bit 入站状态 8bit 北斗时间 年 16bit 月 8bit 日 8bit 时 8bit 分 8bit 波束1功率8bit 自检信息 $ZJXX 时间信息 $SJXX 版本信息 $BBXX 反馈信息 $FKXX 16 bit 16 bit 16 bit 16 bit 24 bit 24 bit 24 bit 24 bit 功率状况 …… 波束6功率8bit 秒 8bit 版本信息 反馈标志 8bit 用户机至外设信息传输格式说明 定位信息($DWXX)
信息类别如下:
定位 2 00 类别 1 0定位 1查询 密钥 1 无 1 有 精度 1 0一档 1二档 紧急定位 1 0 否 1 是 多值解 1 0 否 1 是 高程类型 1 0 普通 1 高空 “类别”为“0”时,“位置数据”为申请定位用户的位置信息,“查询地址”参数填全“0”;“类别”为“1”时,“位置数据”为被指挥型用户所查询用户的位置信息,“查询地址”为被查询用户的用户地址。
“多值解”用以提示用户本帧传输的定位信息是否为正确的定位信息。
5
“精度”:一档表示定位精度为20m,二档表示定位精度为100m。 位置数据
字节位置
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
T32bit L 32 bit h m s 0.01s ° ′ ″ 0.1″ 8 8 8 8 8 8 8 8 B 32 bit ° ′ ″ 0.1″ 8 8 8 8 H16bit ζH 16bit M ± M ± 2 14 8 8 当“高程类型”为“1”时,H参数变为24bit无符号数,ζH参数自动取消。 T(h)——定位时刻的小时位数据,起始值为0,单位1小时。 T(m)——定位时刻的分位数据,起始值为0,单位1分钟。 T(s)——定位时刻的秒位数据,起始值为0,单位1秒。
T(0.01s)——定位时刻的秒小数数据,起始值为0,单位0.01秒。 L(°)——用户位置的大地经度数据,单位1度。 L(′)——用户位置的大地经度数据,单位1角分。 L(″)——用户位置的大地经度数据,单位1角秒。 L(0.1″)——用户位置的大地经度数据,单位0.1角秒。 B(°)——用户位置的大地纬度数据,单位1度。 B(′)——用户位置的大地纬度数据,单位1角分。 B(″)——用户位置的大地纬度数据,单位1角秒。 B(0.1″)——用户位置的大地纬度数据,单位0.1角秒。
H(±)——用户位置的大地高程数据符号位,“00”为正(+),“01”为负(-)。 H(m)——用户位置的大地高程数据,单位1米。
ξH(±)——用户位置的高程异常值的符号位, “00H”为正(+),“01H”为负(-)。
ξH(m)——用户位置的高程异常值,单位1米。
通信信息($TXXX)
·通信信息类别:
通信 2 电文形式1 是否回执 1 通信方式1 密钥 1 余量 2 6
01 0汉字 1代码 固定填0 0通信 1查询 0 无 1 有 固定填0 “发信方地址”表示此次通信或查询所得电文的发信方用户地址。 “发信时间”:小时位起始值0,单位1小时;分钟位起始值0,单位1分钟。若此次通信不是查询通信,“发信时间”全填“0”。
“CRC标志”:“00H”表示用户机收到此次信息的CRC校验正确;“01H”表示不正确。
·电文长度同通信申请($TXSQ)中的电文长度。
IC信息($ICXX)
IC信息指当前用户机IC卡上包含的主要信息内容,用户机在收到 “IC检测”($ICJC)指令后,根据“帧号”发送所需信息内容。
第0帧:发送本机用户信息,信息内容定义如下表所示:
帧号 8bit 通播ID 24bit 用户特征 8bit 服务频度 16bit 通信等级 8bit 加密标志 8bit 下属用户总数 16bit 通播ID:对普通用户机,为接收通播ID号;对指挥型用户机,为发送通播ID号。
用户特征:用户特征代码。 服务频度:单位为1秒。 通信等级:1~4 加密标志: 1-保密用户 0-非密用户
下属用户总数:专指指挥型用户机所管辖的下属用户的数量,如果用户机卡
为普通型用户机该字节填全0
自检信息($ZJXX)
IC卡状态:非零表示出错 硬件状态:非零表示出错
电池电量:指示用户机的电池电量,数值表示目前电量还剩最高值的比例,如03 H表示目前电量只剩最高容量的三分之一。
7
入站状态:
bit0-是否可以入站,0-不可以,1-可以。 bit1-抑制状态, 0-非抑制,1-抑制。
功率状况:波束1~6功率分别对应用户机接收的1#~6#波束的信号功率,规定如下(没有接收到的波束相应位置填全“0”):
00(hex): <-158dBW 01(hex): -156~-157dBW 02(hex): -154~-155dBW 03(hex): -152~-153dBW 04(hex): >-152dBW
时间信息($SJXX)
北斗时间:年月日时分秒,年为16bit,其余均为8bit。
版本信息($BBXX)
版本信息:为一个可见的字符串,用ASCII逗号分成若干段,段数自定,每一段的格式自行定义。
4.4.19 反馈信息($FKXX)
反馈标志(8bit)第十字节 0x00-成功 0x01-失败 0x02-信号未锁定 0x03-电量不足 0x04-发射频度未到 0x05-加解密错误 0x06-CRC错误 0x09~0xA0-保留 0xA1~0xFF-厂家扩展
8
附加信息(32bit)可选 对应指令的四个ASCII字符 对应指令的四个ASCII字符 需要等待的时间(秒) 对应指令的四个ASCII字符(如DWXX、TXHZ、DSJG) *协议更改说明20140525:
1、新版本北斗一代接收机数据接口4.0协议中,在上述协议相比,多了一个A4字节,需要在电文内容字段的开头赋值为A4即可正常通信。
例子:通信申请指令(内容为77556,用户ID为:02 36 43): 24 54 58 53 51 00 18 02 36 43 46 06 F4 C2 00 30 00 A4 37 37 35 35 36 E6
9
因篇幅问题不能全部显示,请点此查看更多更全内容