KC6100网络通信协议
KC6100 多通道直流可编程电子负载通信协议手册更新日期:2014-04-14目录目录 前言 错误!未定义书签。 3通告 3 产品保证 ............................................................................................................................................................. 3 保修服务 ............................................................................................................................................................. 3 保证限制 ............................................................................................................................................................. 3 安全摘要 ............................................................................................................................................................. 3 安全须知 ............................................................................................................................................................. 3 安全标识 ............................................................................................................................................................. 41 KC6100 功能与特点 ..................................................................................................................... 5 2 KC6100 串口通讯协议 ................................................................................................................. 52.1 2.2 2.3 规则............................................................................................................................................................ 5 协议结构.................................................................................................................................................... 5 协议字段定义............................................................................................................................................ 53 注意事项...................................................................................................................................... 12 4 备注.............................................................................................................................................. 124.1 4.2 4.3 4.4 5.1 5.2 5.3 恒电流功能(CC) ................................................................................................................................ 12 恒电压功能(CV) ................................................................................................................................ 13 动态电流功能(DC) ............................................................................................................................ 13 寄存器编程.............................................................................................................................................. 14 规则.......................................................................................................................................................... 16 上位机下发指令...................................................................................................................................... 16 下位机返回指令...................................................................................................................................... 195 KC6100-LAN 通信协议 ............................................................................................................. 166 注意事项...................................................................................................................................... 21前言尊敬的用户: 首先,非常感谢您选择金凯博KC6100多通道直流可编程电子负载。本手册适用于金凯博KC6100多通道 直流可编程电子负载(下文简称KC6100),内容仅包括KC6100通信协议。 为保证安全、正确地使用KC6100,请您在使用前详细阅读本手册,特别为安全方面注意事项。 请妥善保管本手册,以备使用过程中查阅。通告本手册版权归金凯博所有。手册中包含信息仅供用户参考,如有更改,恕不另行通知。对本手册可能 包含错误或由提供、执行与使用本手册所造成损害,金凯博恕不负责。 有关产品最新信息,请登录金凯博网站http://www.kingcabletech.com查询。产品保证金凯博保证KC6100规格与使用特性完全达到手册中所声称各项技术指标,并对本产品所采用原材料与 制造工艺均严格把关,确保产品稳定可靠。保修服务自购买日起,一年保修期内,产品在正常使用与维护状态下所发生一切故障,金凯博负责免费维修。 对于免费维修产品,用户需预付寄送到金凯博维修部单程运费,回程运费由金凯博承担。若产品从其它国 家返厂维修,则所有运费、关税及其它税费均需由用户承担。保证限制本保证仅限于KC6100(保险管除外)。对于因错误使用、无人管理、未经授权修改、非正常环境下使 用及不可抗力因素所造成损坏,金凯博不负责免费维修,并将在维修前提交估价单。仅作以上保证,不作其它明示或默示性保证,其中包括适销性、某些特定应用合理性 与适用性等默示保证,无论在合同中、民事过失上,或为其它方面。金凯博不对任何特殊、 偶然或间接损害负责。安全摘要在操作与维修KC6100过程中,请严格遵守以下安全须知。不遵守以下注意事项或本手册中其它章节提 示特定警告,可能会削弱本负载所提供保护功能。对于用户不遵守这些注意事项而造成后果,金凯博不负 任何责任。安全须知◆ KC6100交流输入必须为三芯线,且保证可靠接地,否则可能导致人身伤亡等潜在电击危险。 ◆ 禁止用户打开KC6100机箱。非专业人员请勿进行维修或调整。拆装前请断开交流输入。 ◆ 开机前,确保已安装了正确保险管。 ◆ 为避免产品损坏或人身伤害,请勿在易燃易爆环境下使用。◆ 为保证产品安全性,请勿自行安装替代零件或执行任何未经授权修改。 ◆ 为避免起火或造成永久性损坏,请确保电源输入电压不超过额定值20%。安全标识在本产品外壳、用户手册所使用国际符号解释请参见下表。1 KC6100 功能与特点金凯博 KC6100 多通道直流可编程电子负载,主要应用于小功率电源、DC 转 换器、手机充电器、电池、UPS、BMS 等小功率电源产品的生产、老化与品检。 它具有下述特点: 简单易用,性价比高; 采用 RS485 工业总线,通讯稳定可靠; 专业测试软件,满足客户各种需求。2 KC6100 串口通讯协议2.1 规则 数据包采用小端模式; 波特率:115200 上位机发送数据部分的 system id 与下位机的 system id 一致或为 0xFF (广 播) ,下位机才会对此应答。 一共两类信息:系统信息、通道控制信息,通过协议头(head)字段区别。 系统 ID 为 KC6100 区别于其他 KC6100 的唯一标识。2.2 协议结构字头 数据包长度 数据包校验 系统 ID head lenth checksum 数据system id channeldata2.3 协议字段定义head:1 字节,上位机发送使用 0x03,下位机返回使用 0x83; lenth:2 字节,表示整个数据包长度,可设为 0; checksum:2 字节,除 checksum 字段外整个数据包和的低 16 位;可设为 0; system id:1 字节,低 6 位有效,由系统机框拨码开关设置系统 id 由通讯板 上拨码开关设置,将开关拨到上面(靠近 ON)表示相应位为 1 否则为 0,如下图系统 ID 为 0x0A。ON DP123456图 2-1:系统 ID channeldata:N 字节,通道控制字段,具体内容见下文,结构见下表:表 2-1:通道控制字段结构开始 地址(channel) 功能码 : 2 字符 2 字符数据校验结束N 字符 2 字符 ‘\r’ ‘\n’2.3.1 通道控制字段编码规则channeldata 内容采用 Modbus(ASCII 模式)格式(注意:它是大端模式) , 其中单个数据采样 4 字节宽度, 区别于传统的 2 字节宽度。 一个信息中的每 8 位 字节作为 2 个 ASCII 字符传输的。 ASCII 码每一个字节的格式: 编码系统: ASCII 字符‘0’-‘9’,‘A’-‘F’ 数据位: 1 起始位 7 位数据,低位先送 奇/偶校验时 1 位;无奇偶校验时 0 位 (LRC)1 位带校验 1 停止位;无校验 2 止位 在 modbus-ASCII 模式中,以(:)号(ASCII3AH)表示信息开始,以回撤一换行键 (CRLF) (ASCII OD 和 OAH)表示信息结束。对其它的区,允许发送的字符为 16 进 制字符 0-9,A-F。 网络中设备连续检测并接收一个冒号(:)时, 每台设备对地址区解 码,找出要寻址的设备。 通常,RS485 总线上的全部通道均处于接收状态。发送消息时,所有通道都 能收到,但只有与消息中相同 channel 的通道才会响应。该通道转为发送状态, 发送应答消息,发送完成后,转为接收状态。 系统支持广播命令,对于 channel 为 0xFF 的消息,即为广播消息。通道收到广播消息后,能执行动作,但不会产生应答消息。2.3.2 通道控制字段说明1. 地址(channel) :1 字节,拨码开关的 1~5 位对应于通道地址的 0~4 位。将开 关拨到上面(靠近 ON)表示相应位为 1,其位于机箱内部,出厂已设置好。 机箱内通道编号对应结构如下图:ONDP12345图 2-2 通道拨码开关图 2-3:KC6100 通道面板示意图2. 错误校验区: 纵向冗余校验,计算方法见下图图 2-4:纵向冗余校验计算方法3. 数据根据功能码不同,而格式不同。功能码:03 读寄存器值 该功能码用于读取连续多个寄存器的内容。表 2-2:读寄存器请求格式功能码 起始地址 寄存器个数表 2-3:读寄存器应答格式1 Byte 2 Bytes 2 Bytes0x03功能码 字节个数 寄存器数值表 2-4:读寄存器错误格式1 Byte 1 Byte 4*n Bytes0x03错误码 异常码 06 写单个寄存器 该功能码用于写一个寄存器。表 2-5:写单个寄存器请求格式1 Byte 1 Byte0x83 *功能码 寄存器地址 寄存器数值表 2-6:写单个寄存器应答格式1 Byte 2 Bytes 4 Bytes0x06功能码 寄存器地址 寄存器数值表 2-7:写单个寄存器错误格式1 Byte 2 Bytes 4 Bytes0x06错误码 异常码表 2-8:写单个寄存器异常码表格式1 Byte 1 Byte0x86 *异常码 01说明 不支持的功能码02 03 04 06 07寄存器与寄存器值 表 2-9: 测量通道寄存器表格寄存器地址错误 数据值错误 设备异常 设备忙 只读寄存器,禁止写操作地址 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20用途 状态寄存器 1 状态寄存器 2 采样电压 采样电流 采样功率 采样阻值 采样电量 带载时间 传感器温度 通道事件 负载测试功能 负载测试开关 CC 电流 CV 电压 DC 主值电流 DC 瞬态电流 DC 主值时间 DC 瞬态时间 过流保护 过压保护 过功率保护读写 OR OR OR OR OR OR WR OR OR OR WR WR WR WR WR WR WR WR WR WR WR数据类型 int int float float float float float int float int int int float float float float float float float float float参数说明 参考状态寄存器 1 位定义 参考状态寄存器 2 位定义 伏 安 瓦 欧 只能写 0,清零电量 预留 摄氏度 参考事件位定义,读后清零 0-CC,1-CV,2-DC 0-停止,1-开始 带载电流设定,安 带载电压设定,伏 动态电流 A 值,安 动态电流 B 值,安 动态电流 A 值脉宽,毫秒 动态电流 B 值脉宽,毫秒 保护电流设定,安 保护电压设定,伏 保护功率设定,瓦21 22带载时间 保存开关WR WRint int连续带载时间,秒 写 1 保存寄存器设置表 2-10:状态寄存器 1 位定义名称 模式 输入 测试完成 测试进行 电压采样 电流采样 电压反接信 号 电流反接信 号 过功率指示 过电流指示 过保护电流 过保护电压 过保护功率 过温表 2-11:状态寄存器 2 位定义位 0~3 4 5 6 7 8 9 10 11 12 13 14 15 16说明 0x00-CC,0x01-CV 0-关闭,1-开启 0-未完成,1-完成 0-未进行测试,1-正在测试 0-正常,1-溢出 0-正常,1-溢出 0-正常,1-电压为负 0-正常,1-电流为负 0-正常,1-过额定功率 0-正常,1-过额定电流 0-正常,1-过保护电流 0-正常,1-过保护电压 0-正常,1-过保护功率 0-正常,1-负载过热名称 型号是否校 准 温度是否校 准 电压是否校 准 电流是否校位 31 30说明 0-已校准,1-未校准 0-已校准,1-未校准290-已校准,1-未校准280-已校准,1-未校准准 CV 是否校准 CC 是否校准表 2-12:通道事件位定义27 260-已校准,1-未校准 0-已校准,1-未校准名称 电压反接 电流反接 过功率指示 过电流指示 过保护电流 过保护电压 过保护功率 过温 带载时间达 到位 0 1 2 3 4 5 6 7 8说明 0-无,1-发生电压反接 0-无,1-发生电流反接 0-无,1-发生过额定功率 0-无,1-发生过额定电流 0-无,1-发生过保护电流 0-无,1-发生过保护电压 0-无,1-发生过保护功率 0-无,1-发生过热 0-无,1-发生带载时间达到2.3.3 通道控制数据格式举例 上位机读取系统 ID 为 0x00 的 KC6100 上通道 1 的从寄存器 00 开始的 10 个 寄存器值,发送03 00 00 00 00 00 3A 30 30 30 33 30 30 30 30 30 30 30 41 46 33 0D 0A字头 长度 包校验 系统 ID 开始 地址 功能 数据 校验 结束0300 00 (0x00)00 00 (0x00)0x003A(:)30 30(0x00)30 33(0x03)30 30 30 30 30 30 30 41(0x00 00 00 0A)46 33(0xF3)‘\r’ ‘\n’channeldta channel data使用冗余校验函数(prvucMBLRC)计算,pucframe 为(0x00 03 00 00 00 0A), usLen 为 6,函数返回值为 0xF3。 modbus-ASCII 最终将 “0x00 03 00 00 00 0A F3” 转化成 assic 格式 “30 30 30 33 30 30 30 30 30 30 30 41 46 33” ,并添加开始 0x3A 与结束标志 0x0D、0x0A 作为channeldate。 下位机返回前 10 个寄存器值:83 61 00 45 13 00 3a 30 30 30 33 32 38 30 30 30 30 30 34 30 30 30 30 30 30 30 30 30 30 33 43 45 38 35 34 36 30 42 45 38 35 44 34 30 45 33 42 46 32 45 38 39 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 34 31 44 46 38 45 41 30 30 30 30 30 30 30 30 32 44 45 0d 0a2.3.4 系统信息head 0x7E 0xFE lenth 6或0 6或0 checksum checksum 或 0 checksum 或 0 system id system id 或 0xFF system id 或 0xFF 说明 上位机查询 KC6100的系统 ID 下位机返回 KC6100 的系统 ID如上位机查询 systemid 为 00 的 KC6100 可发送(lenth = 0,checksum = 0) :7E 00 00 00 0000; 下位机返回:fe 06 00 04 01 00; 其中 0x0006 = 0xFE + 0x04 + 0x01 + 0x00。3注意事项4 备注4.1 恒电流功能(CC)恒电流模式下,无论输入电压如何变化,负载始终消耗一个恒定的电流,工 作曲线如下图所示。VConstant current4-1:恒电流功能I4.2 恒电压功能(CV)恒电压模式下, 负载将消耗足够电流使输入电压维持在设定值,工作曲线如 下图所示。VConstant voltage图 4-2:恒电压功能I4.3 动态电流功能(DC)动态电流测试功能可根据设定, 使负载在两个设定电流 (动态电流 A 值与动 态电流 B 值)之间连续切换,适用于电源动态特性测试。动态脉宽的范围是: 1~60000 毫秒。I LA LB TA TB t Dynamic current图 4-3:动态电流功能4.4 寄存器编程 4.4.2 切换测试功能写值到“负载测试功能”寄存器,即切换测试功能。 写 0 为 CC 功能,1 为 CV 功能,2 为 DC 功能。负载上电默认为 CC 功能。4.4.3 开始/停止测试功能写值到“负载测试开关”寄存器,即切换测试功能。 写 0 为停止测试,1 为开始测试。4.4.4 改变负载带载电流写值到“CC 电流”寄存器,能改变负载的带载电流。4.4.5 改变负载带载电压写值到“CV 电压”寄存器,能改变负载的带载电压。4.4.6 配置动态电流参数通过写寄存器: “DC 主值电流” 、 “DC 瞬态电流” 、 “DC 主值时间”和“DC 瞬态时间” ,能达到配置动态电流参数的目的。 如图 4-3:动态电流功能所示。其中: LA 对应于“DC 主值电流” ; LB 对应于“DC 瞬态电流” ; TA 对应于“DC 主值时间” ; TB 对应于“DC 瞬态时间” 。4.4.7 设置保护电流写值到“过流保护”寄存器,即设置负载的保护电流。写 0 表示关闭保护电 流功能。 当采样电流超过此设定值时,负载自动停止测试,关闭输入,并置位“通道 事件”寄存器。4.4.8 设置保护电压写值到“过压保护”寄存器,即设置负载的保护电压。写 0 表示关闭保护电 压功能。 当采样电压超过此设定值时,负载自动停止测试,关闭输入,并置位“通道 事件”寄存器。4.4.9 设置保护功率写值到“过功率保护”寄存器,即设置负载的保护功率。写 0 表示关闭保护 功率功能。 当采样电压与采样电流的乘积超过此设定值时,负载自动停止测试,关闭输入,并置位“通道事件”寄存器。4.4.10 设置带载时间写值到“带载时间”寄存器,即设置负载的带载时间。写 0 表示关闭带载时 间功能。 此寄存器设置为非零值时,负载将计算连续带载的时间。当时间达到设定时 自动停止测试,关闭输入,并置位“通道事件”寄存器。 5 KC6100-LAN 通信协议5.1 规则 所有数据采用小端模式; 上位机发送数据部分的 system id 与下位机的 system id 一致或为 0xFF (广 播) ,下位机才会对此应答。 网络信息修改必须 mac 地址一致,才可以进行设置。 对于需要透传的数据,请使用 TCP 的 7001 端口:任何数据,通讯板均 直接传递下下面串口,自身不做任何处理。5.2 上位机下发指令表 5-1:上位机下发指令表headcmd 0x00 0x01data NULL mac[6]checksum checksum checksum说明 获取系统网络信息 重启系统 获取或修改网络信0x02 0x24rd_or_wr[1] + mac[6] + dhcp[1] checksum + ip[4] + mask[4] + gate[4]+ port[2]息,mac 地址必须与 下位机一致 设置下位机 Com 口03RD_or_WR[1]+Com[1] + Baud[4] checksum波特率,Com 表示 Com 口,如果有多 个,则 Com 为 0 或者 1,2,3..., 。 后面的 4 字节的为波特率,若 取值为 9600, 则波特 率为 9600 data_trans_type 为 0 表示用 udp 传输 数据,数据包中需要 添加 checksum 与长 度, (03 + len + checksum + data) 为 1 表示用 tcp 传输 数据,数据包中需要 添加 checksum 与长 度, (03 + len + checksum + data) 为 2 表示使用 485 通 0x04 RD_or_WR[1] +data_trans_type[1B] checksum 信,数据包中需要添 加 checksum 与长度, (03 + len + checksum + data) 为 3 表示使用 TCP 透 传模式; 为 4 表示使用 UDP 透传模式; 为 5 表示使用 485 透 传模式 为 6 表示用 udp 传输 数据,数据包中需要 添加 01 + item(com)+ data 为 7 表示用 tcp 传输 数据,数据包中需要 添加 01 + item(com) + data 为 8 表示使用 485 通 信,数据包中需要添 加 01 + item(com) + data 读取系统 ID 7E RD [1] +SYSTEMID[1] checksum RD :0x00 SYSTEMID:系统 ID0x7FRD_or_WR[1] + system_ID[1]+HEART_BEAT_TIME[2 checksum B]HEART_BEAT_TIME : 心跳时间间隔,0 表 示关闭心跳功能,否 则若上位机与下位机 超过间隔时间,则通 讯板主动关闭通道板 负载FANCONTROL:0 表示 通讯板不需要控制风 扇(默认) ,1 表示需 要控制风扇; 0x80 RD_or_WR[1] +FANCONTROL[1] + checksum FAN_NUM[1] + FAN_OVER_TEMP[4] FAN_NUM: 通讯板上 接的风扇数(即通道 数) FAN_OVER_TEMP : float 类型,打开或关 闭热风扇的温度 (℃) 。 0x03 data data 同上文 RS485 通道控制通信协议5.3 下位机返回指令表 5-2:下位机返回指令表headcmddatachecksum 说明0x00mac[6] + dhcp[1] + ip[4] + mask[4] + gate[4] + port[2] + version[36] + checksum 获取网络信息 remoteip[4] mac[6] checksum 重启系统0x01 0x02获取或修改网络信 rd_or_wr[1] + mac[6] + dhcp[1] checksum + ip[4] + mask[4] + gate[4]+ port[2] 息。 设置下位机 Com 口 波特率, Com 表示 Com 口,如果有多 个,则 Com 为 0 或 Com[1] + Baud[4] checksum 者 1,2,3..., 。 后面的 4 字节的为波特率,若 取值为 9600, 则波特 率为 9600 data_trans_type 为 0 表示用 udp 传输 数据,数据包中需要 添加 checksum 与长 度, ( 03 + len + checksum + data) 为 1 表示用 tcp 传输 数据,数据包中需要 checksum 添加 checksum 与长 度, ( 03 + len + checksum + data) 为 2 表示使用 485 通 信,数据包中需要添 加 checksum 与长度, ( 03 + len + checksum + data) 为 3 表示使用 TCP 透0x03RD_or_WR[1]+0xA40x04RD_or_WR[1] +data_trans_type[1B]传模式; 为 4 表示使用 UDP 透传模式; 为 5 表示使用 485 透 传模式 为 6 表示用 udp 传输 数据,数据包中需要 添加 01 + item(com) + data 为 7 表示用 tcp 传输 数据,数据包中需要 添加 01 + item(com) + data 为 8 表示使用 485 通 信,数据包中需要添 加 01 + item(com) + data 返回系统 ID 7E RD [1] +SYSTEMID[1] checksum RD :0x00 SYSTEMID:系统 ID HEART_BEAT_TIME: 心跳时间间隔,0 表 示关闭心跳功能,否 RD_or_WR[1] + checksum 则 若 上 位 机 与 下 位 system_ID[1]+HEART_BEAT_TIME[2B] 机超过间隔时间,则 通讯板主动关闭通 道板负载 FANCONTROL:0 表示 通讯板不需要控制 风扇 (默认) , 1 表示 需要控制风扇; 0x80 RD_or_WR[1] +FANCONTROL[1] + 通讯板上 checksum FAN_NUM: FAN_NUM[1] + FAN_OVER_TEMP[4] 接的风扇数(即通道 数) FAN_OVER_TEMP : float 类型, 打开或关 闭热风扇的温度0x7F(℃) 。 0x83 data data 同上文 RS485 通 道控制通信协议note:实际上面 LAN 的命令,对 485 也是通用的,即 485 也可以使用上面 LAN 的命令。6注意事项