标准源通讯协议常见指令举例

风 2017-04-2910:22:50 评论 610

友情提示:本文章内容仅适用于如下图示系列仪器的单相、三相标准源或装置。

针对用户反馈的常见问题,现将一些指令举例如下(具体协议请参考通讯协议文档):

总升降:

//3.3 UI总升输出

68 03 00 6B 16

//3.4 UI总降输出

68 05 00 6D 16

写控制:

设置电压值

//3.6 写控制 设置电压幅值 220.000000V

//  DATA1: 0xA3-0x33=0x70=0111 0000,L3L2L1有效 设置电压

//  DATA2: 0x55-0x33=0x22=0010 2(后四位作为BCD码的开始),置某一特定幅值

//  DATA3: 0x53-0x33=0x20, DATA3和DATA4之间固定小数点

//  DATA4: 0x33-0x33=0x00

//  DATA5: 0x33-0x33=0x00

//  DATA6: 0x33-0x33=0x00

68 07 06 A3 55 53 33 33 33 59 16

设置电流值

//3.6 写控制 设置电流幅值 5.000000A

//  DATA1: 0xA4-0x33=0x71=0111 0001,L3L2L1有效 设置电流

//  DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

//  DATA3: 0x38-0x33=0x05, DATA3和DATA4之间固定小数点

//  DATA4: 0x33-0x33=0x00

//  DATA5: 0x33-0x33=0x00

//  DATA6: 0x33-0x33=0x00

68 07 06 A4 53 38 33 33 33 3D 16

设置相位值

//3.6 写控制 设置相位: 60°

//  DATA1: 0xA6-0x33=0x73=0111 0011,L3L2L1有效 设置电压对电流的相位

//  DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

//  DATA3: 0x93-0x33=0x60, DATA3和DATA4之间固定小数点

//  DATA4: 0x33-0x33=0x00

68 07 04 A6 53 93 33 32 16

设置频率值

//3.6 写控制 设置频率: 50Hz

//  DATA1: 0x35-0x33=0x73=0000 0010,设置频率

//  DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

//  DATA3: 0x83-0x33=0x50, DATA3和DATA4之间固定小数点

//  DATA4: 0x33-0x33=0x00

68 07 04 35 53 83 33 B1 16

接线方式切换:

三相四线:

//3.14 设置参数

//  DATA1: 0x34-0x33=0x01,属于固定值

//  DATA2: 0x35-0x33=0x02=0000 0010,内置、正向、有功、三相四线

68 10 02 34 35 E3 16

三相三线:

//3.14 设置参数

//  DATA1: 0x34-0x33=0x01,属于固定值

//  DATA2: 0x34-0x33=0x01=0000 0001,内置、正向、有功、三相三线

68 10 02 34 34 E2 16

单相:(1P2W 国内)

//3.14 设置参数

//  DATA1: 0x34-0x33=0x01,属于固定值

//  DATA2: 0x33-0x33=0x00=0000 0000,内置、正向、有功、单相

68 10 02 34 33 E1 16

单相:(1P3W 国外)

//3.14 设置参数

//  DATA1: 0x34-0x33=0x01,属于固定值

//  DATA2: 0x36-0x33=0x03=0000 0011,内置、正向、有功、1P3W

68 10 02 34 36 E4 16

校验误差:

//开始试验之前需要先设置好当前试验点所需的基本参数:

//假如当前试验点的基本参数为:

// 内置标准表(一般均为此情况)、正向、有功、三相四线

// 额定电压为:100V,额定电流5A

// 当前试验点的功率因数为1.0

//设置参数:

// DATA1: 0x34-0x33=0x01,固定值

// DATA2: 0x35-0x33=0x02=0000 0010,内置、正向、有功、三相四线

68 10 02 34 35 E3 16

//升U1:

// DATA1: 0x43-0x33=0x10=0001 0000,L1有效 控制电压

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 43 73 27 16

//升U2:

// DATA1: 0x53-0x33=0x20=0010 0000,L2有效 控制电压

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 53 73 37 16

//升U3:

// DATA1: 0x73-0x33=0x40=0100 0000,L3有效 控制电压

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 73 73 57 16

//设置频率为50Hz

// DATA1: 0x35-0x33=0x02=0000 0010,控制频率

// DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

// DATA3: 0x83-0x33=0x50=5 0,DATA3和DATA4之间固定小数点

// DATA4: 0x33-0x33=0x00=0 0

68 07 04 35 53 83 33 B1 16

//设置额定电压为100V

// DATA1: 0xA3-0x33=0x70=0111 0000,L3L2L1有效 设置电压

// DATA2: 0x54-0x33=0x21=0010 1(后四位作为BCD码的开始),置某一特定幅值

// DATA3: 0x33-0x33=0x00=0 0,DATA3和DATA4之间固定小数点

// DATA4: 0x33-0x33=0x00=0 0

// DATA5: 0x33-0x33=0x00=0 0

// DATA6: 0x33-0x33=0x00=0 0

68 07 06 A3 54 33 33 33 33 38 16

//设置额定电流为5A

// DATA1: 0xA4-0x33=0x71=0111 0001,L3L2L1有效 设置电流

// DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

// DATA3: 0x38-0x33=0x05=0 5,DATA3和DATA4之间固定小数点

// DATA4: 0x33-0x33=0x00=0 0

// DATA5: 0x33-0x33=0x00=0 0

// DATA6: 0x33-0x33=0x00=0 0

68 07 06 A4 53 38 33 33 33 3D 16

//校验误差

// DATA1: 0x33-0x33=0x00,被校表常数(0x44E10000=1800.0),浮点数的低字节在前.

// DATA2: 0x33-0x33=0x00

// DATA3: 0x14-0x33=0xE1

// DATA4: 0x77-0x33=0x44

// DATA5: 0x33-0x33=0x00,外接标准表常数(一般用户,此处直接设置为0即可)

// DATA6: 0x33-0x33=0x00

// DATA7: 0x33-0x33=0x00

// DATA8: 0x33-0x33=0x00

// DATA9: 0x34-0x33=0x01,校验圈数(请根据自己的情况设置)

68 11 09 33 33 14 77 33 33 33 33 34 73 16

//升I1:

// DATA1: 0x44-0x33=0x11=0001 0001,L1有效 控制电流

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 44 73 28 16

//升I2:

// DATA1: 0x54-0x33=0x21=0010 0001,L2有效 控制电流

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 54 73 38 16

//升I3:

// DATA1: 0x74-0x33=0x41=0100 0001,L3有效 控制电流

// DATA2: 0x73-0x33=0x40=0100 0000,升输出

68 07 02 74 73 58 16

//设置相位为0°:

// DATA1: 0xA6-0x33=0x73=0111 0011,L3L2L1有效 设置电压对电流的相位

// DATA2: 0x53-0x33=0x20=0010 0(后四位作为BCD码的开始),置某一特定幅值

// DATA3: 0x33-0x33=0x00=0 0,DATA3和DATA4之间固定小数点

// DATA4: 0x33-0x33=0x00=0 0

68 07 04 A6 53 33 33 D2 16

 

请求电压、电流、频率数据帧:
//协议目录索引号:3.9
//PC查询命令:
68 0A 00 72 16
//假设仪器返回如下数据:
68 8A 3F 73 63 61 63 63 63 63 63 33 74 63 61 63 63 63 63 63 33 75 63 61 63 63 63 63 63 33 76 63 61 63 63 63 63 63 33 77 63 61 63 63 63 63 63 33 78 63 61 63 63 63 63 63 33 79 67 6C 61 6C 6C 6C 63 33 DD 16
//下面开始针对上面一行数据进行解码分析:
68 //帧起始符
8A //控制码
3F //数据域长度:三相四线状态,即63字节
//各字节-0x33之后解码为: 40 30 2E 30 30 30 30 30 00
//那么分别对应的ASCII码为:
//40 A相电压标志
//30 0
//2E .
//30 0
//30 0
//30 0
//30 0
//30 0
73 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 41 30 2E 30 30 30 30 30 00
//41 B相电压标志
//B相电压值同理.
74 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 42 30 2E 30 30 30 30 30 00
//42 C相电压标志
//C相电压值同理.
75 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 43 30 2E 30 30 30 30 30 00
//43 A相电流标志
//A相电流值同理.
76 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 44 30 2E 30 30 30 30 30 00
//44 B相电流标志
//B相电流值同理.
77 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 45 30 2E 30 30 30 30 30 00
//45 C相电流标志
//C相电流值同理.
78 63 61 63 63 63 63 63 33
//各字节-0x33之后解码为: 46 34 39 2E 39 39 39 30 00
//46 频率标志
//那么分别对应的ASCII码为:
//34 4
//39 9
//2E .
//39 9
//39 9
//39 9
//30 0
//00 字符串终止符
79 67 6C 61 6C 6C 6C 63 33
DD //校验码
16 //结束符

设置外置标准表常数为120000000,被校表常数为1111.111:

68 11 09 C1 16 BD 77 33 41 5A 3A 35 CA 16

帧格式:如果仅仅需要控制一台仪器(源或装置),一般情况直接省略掉地址码。

应答帧:仅仅表示当前帧格式是否正确。
正常应答帧:68 9A 00 02 16
错误应答帧:68 9E 00 06 16

 

  • 相关协议举例:

多表位通讯协议常见指令举例: http://blog.fxian.org/1610.html

  • 辅助工具:

ASCII码在线查询 http://www.asciim.cn

浮点数和16进制在线互相转换 http://www.asciim.cn/Hex/float.html
十六进制数在线计算累加校验码http://www.asciim.cn/hex/accumulate_sum.html

风

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: