MD320串行通讯协议附件说明:本文件与深圳市汇川技术有限公司所设计之通讯卡一起配送给用户。在MD320系列变频器中,提供RS232/RS485通信接口,用户可通过PC/PLC实现集中控制(设定变频器运行命令,功能码参数,读取变频器的工作状态及故障信息),以适应特定的使用要求。1.协议内容该串行通信协议定义了串行通信中传输的信息内容及使用格式。其中包括:主机轮询(或广播)格式;主机的编码方法,内容包括:要求动作的功能码,传输数据和错误校验等。从机的响应也是采用相同的结构,内容包括:动作确认,返回数据和错误校验等。如果从机在接收信息时发生错误,或不能完成主机要求的动作,她将组织一个故障信息作为响应反馈给主机。2.应用方式变频器接入具备RS232/RS485总线的“单主多从”PC/PLC控制网络。3.总线结构(1)接口方式RS232/RS485硬件接口(2)传输方式异步串行,半双工传输方式。在同一时刻主机和从机只能有一个发送数据而另一个只能接收数据。数据在串行异步通信过程中,是以报文的形式,一帧一帧发送。(3)拓扑结构单主机多从机系统。从机地址的设定范围为1~247,0为广播通信地址。网络中的从机地址必须是唯一的。4.协议说明MD320系列变频器通信协议是一种异步串行的主从ModBus通信协议,网络中只有一个设备(主机)能够建立协议(称为“查询/命令”)。其他设备(从机)只能通过提供数据响应主机的“查询/命令”,或根据主机的“查询/命令”做出相应的动作。主机在此是指个人计算机(PC),工业控制设备或可编程逻辑控制器(PLC)等,从机是指MD320变频器。主机既能对某个从机单独进行通信,也能对所有下位从机发布广播信息。对于单独访问的主机“查询/命令”,从机都要返回一个信息(称为响应),对于主机发出的广播信息,从机无需反馈响应给主机。5.通讯资料结构MD320系列变频器的ModBus协议通信数据格式如下:使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在网络波特率下多样的字符时间,这是最容易实现的(如下图的T1-T2-T3-T4所示)。传输的第一个域是设备地址。可以使用的传输字符是十六进制的0...9,A...F。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束。一个新的消息可在此停顿后开始。整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。这将导致一个错误,因为在最后的CRC域的值不可能是正确的。RTU帧格式:帧头START3.5个字符时间从机地址ADR通讯地址:1~247命令码CMD03:读从机参数;06:写从机参数数据内容DATA(N-1)资料内容:功能码参数地址,功能码参数个数,功能码参数值等。数据内容DATA(N-2)……数据内容DATA0CRCCHK高位检测值:CRC值。CRCCHK低位END3.5个字符时间CMD(命令指令)及DATA(资料字描述)命令码:03H,读取N个字(Word)(最多可以读取12个字)例如:从机地址为01的变频器的启始地址F002连续读取连续2个值主机命令信息ADR01HCMD03H启始地址高位F0H启始地址低位02H寄存器个数高位00H寄存器个数低位02HCRCCHK低位有待计算其CRCCHK值CRCCHK高位从机回应信息ADR01HCMD03H字节个数高位00H字节个数低位04H资料地址F002H高位00H资料地址F002H低位00H资料地址F003H高位00H资料地址F003H高位01HCRCCHK低位有待计算其CRCCHK值CRCCHK高位命令码:06H,写一个字(Word)例如:将5000(1388H)写到从机地址02H变频器的F00AH地址处。主机命令信息ADR02HCMD06H资料地址高位F0H资料地址低位0AH资料内容高位13H资料内容低位88HCRCCHK低位有待计算CRCCHK值CRCCHK高位从机回应信息ADR02HCMD06H资料地址高位F0H资料地址低位0AH资料内容高位13H资料内容低位88HCRCCHK低位有待计算CRCCHK值CRCCHK高位校验方式——CRC校验方式:CRC(CyclicalRedundancyCheck)使用RTU帧格式,消息包括了基于CRC方法的错误检测域。CRC域检测了整个消息的内容。CRC域是两个字节,包含16位的二进制值。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两个CRC值不相等,则说明传输有错误。CRC是先存入0xFFFF,然后调用一个过程将消息中连续的8位字节与当前寄存器中的值进行处理。仅每个字符中的8Bit数据对CRC有效,起始位和停止位以及奇偶校验位均无效。CRC产生过程中,每个8位字符都单独和寄存器内容相异或(XOR),结果向最低有效位方向移动,最高有效位以0填充。LSB被提取出来检测,如果LSB为1,寄存器单独和预置的值相异或,如果LSB为0,则不进行。整个过程要重复8次。在最后一位(第8位)完成后,下一个8位字节又单独和寄存器的当前值相异或。最终寄存器中的值,是消息中所有的字节都执行之后的CRC值。CRC添加到消息中时,低字节先加入,然后高字节。CRC简单函数如下:unsignedintcrc_chk_value(unsignedchar*data_value,unsignedcharlength){unsignedintcrc_value=0xFFFF;inti;while(length--){crc_value^=*data_value++;for(i=0;i8;i++){if(crc_value&0x0001){crc_value=(crc_value1)^0xa001;}else{crc_value=crc_value1;}}}return(crc_value);}通信参数的地址定义该部分是通信的内容,用于控制变频器的运行,变频器状态及相关参数设定。读写功能码参数(有些功能码是不能更改的,只供厂家使用):功能码参数地址标示规则:以功能码组号和标号为参数地址表示规则:高位字节:F0~FF低位字节:00~FF如:F3-12,地址表示为F30C;注意:F1组:只能读取参数,不可更改参数;FF组:既不可读取参数,也不可更改参数;有些参数在变频器处于运行状态时,不可更改;有些参数不论变频器处于何种状态,均不可更改;更改功能码参数,还要注意参数的范围,单位,及相关说明。另外,由于EEPROM频繁被存储,会减少EEPROM的使用寿命,所以,有些功能码在通讯的模式下,无须存储,只要更改RAM中的值就可以了。要实现该功能,只要把该功能码地址的高位F变成0就可以实现。相应功能码地址表示如下:高位字节:00~0F低位字节:00~FF如:功能码F3-12不存储到EEPROM中,地址表示为030C;该地址表示只能做写RAM,不能做读的动作,读时,为无效地址。停机/运行参数部分:参数地址参数描述1000设定频率(可读写)1001运行频率1002母线电压1003输出电压1004输出电流1005输出功率1006输出转矩1007运行速度1008DI输入标志1009DO输出标志100AAI1电压100BAI2电压100CAI3电压100D计数值输入100E长度值输入100F线速度1010PID设置1011PID反馈1012PLC步骤1013保留控制命令输入到变频器:(只写)命令字地址命令功能20000001:正转运行0002:反转运行0003:正转点动0004:反转点动0005:自由停机0006:减速停机0007:故障复位读取变频器状态:(只读)参数锁定密码校验:(如果返回为8888H,即表示密码校验通过)密码地址输入密码的内容4000*****参数锁定命令:(只写)锁定密码命令地址锁定密码命令内容50000001:锁定系统命令码变频器故障描述:变频器故障地址变频器故障信息状态字地址状态字功能30000001:正转运行0002:反转运行0003:停机80000000:无故障0001:逆变单元保护0002:加速过电流0003:减速过电流0004:恒速过电流0005:加速过电压0006:减速过电压0007:恒速过电压0008:控制电源故障0009:欠压故障000A:变频器过载000B:电机过载000C:输入缺向000D:输出缺向000E:散热器过热000F:外部故障0010:通讯故障0011:接触器故障0012:电流检测故障0013:电机调谐故障0014:码盘故障0015:保留0016:保留0017:保留0018:保留通讯故障信息描述数据(故障代码):通讯故障地址故障功能描述80010000:无故障0001:密码错误0002:命令码错误0003:CRC校验错误0004:无效地址0005:无效参数0006:参数更改无效0007:系统被锁定6.FD组通讯参数说明FD-00波特率出厂值5设定范围0300BPS1600BPS21200BPS32400BPS44800BPS59600BPS619200BPS738400BPS此参数用来设定上位机与变频器之间的数据传输速率。注意,上位机与变频器设定的波特率必须一致,否则,通讯无法进行。波特率越大,通讯速度越快。FD-01数据格式出厂值0设定范围0无校验:数据格式8,N,21偶检验:数据格式8,E,12奇校验:数据格式8,O,1上位机与变频器设定的数据格式必须一致,否则,通讯无法进行。FD-02本机地址出厂值1设定范围1~247,0为广播地址当本机地址设定为0时,即为广播地址,实现上位机广播功能。本机地址具有唯一性(除广播地址外),这是实现上位机与变频器点对点通讯的基础。FD-03应答延时出厂值10ms设定范围0~20ms应答延时:是指变频器数据接受结束到向上位机发送数据的中间间隔时间。如果应答延时小于系统处理时间,则应答延时以系统处理时间为准,如应答延时长于系统处理时间,则系统处理完数据后,要延迟等待,直到应答延迟时间到,才往上位机发送数据。FD-04通讯超时时间出厂值0.0s设定范围0.0s(无效),0.1~100.0s当该功能码设置为0.0s时,通讯超时时间参数无效。当该功能码设置成有效值时,如果一次通讯与下一次通讯的间隔时间超出通讯超时时间,系统将报通讯故障错误(Err16)。通常情况下,都将其设置成无效。如果在连续通讯的系统中,设置次参数,可以监视通讯状况。