科威PLC通过自由协议与深圳传动之星变频器通信说明.docx

上传人:b****5 文档编号:30353758 上传时间:2023-08-13 格式:DOCX 页数:21 大小:513.80KB
下载 相关 举报
科威PLC通过自由协议与深圳传动之星变频器通信说明.docx_第1页
第1页 / 共21页
科威PLC通过自由协议与深圳传动之星变频器通信说明.docx_第2页
第2页 / 共21页
科威PLC通过自由协议与深圳传动之星变频器通信说明.docx_第3页
第3页 / 共21页
科威PLC通过自由协议与深圳传动之星变频器通信说明.docx_第4页
第4页 / 共21页
科威PLC通过自由协议与深圳传动之星变频器通信说明.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

科威PLC通过自由协议与深圳传动之星变频器通信说明.docx

《科威PLC通过自由协议与深圳传动之星变频器通信说明.docx》由会员分享,可在线阅读,更多相关《科威PLC通过自由协议与深圳传动之星变频器通信说明.docx(21页珍藏版)》请在冰豆网上搜索。

科威PLC通过自由协议与深圳传动之星变频器通信说明.docx

科威PLC通过自由协议与深圳传动之星变频器通信说明

科威PLC通过自由协议与深圳传动之星变频器通信说明

 

第1节传动之星系列变频器串口通讯协议

一、适用网络

单监控主机多变频器从机控制网。

即单主多从方式。

单监控主机单变频器从机控制网。

即单主单从方式。

单监控主机可以由变频器代替,能实现同步的启动和停止。

二、物理接口

1)接口方式

RS485/232接口,异步,半双工

2)数据格式

1位起始位、8位数据位、无奇偶校验位、1位停止位

1位起始位、8位数据位、偶校验位、1位停止位

1位起始位、8位数据位、奇校验位、1位停止位

3)波特率

300bps600bps1200bps2400bps4800bps9600bps19200bps38400bps

三、通讯协议功能

通过通讯协议格式建立主机和变频器之间的相互访问,达到控制变频器的目的。

四、通讯方式

1)上位机为主机,主机可为计算机、PLC可编程控制器等,变频器为从机。

采用主机轮询,从机应答的点对点通讯方式。

主机广播时,从机不允许应答。

2)利用键盘设定变频器串行接口通讯参数,包括本机地址(从站地址),波特率,串行接口地址等。

3)为保证半双工的可靠工作,发送数据帧与接收数据帧之间时间间隔应不小于5ms,数据帧的字节之间的时间,间隔应不小于1ms。

五、通讯出错

通讯时,若出现校验和错误或数据超出范围,从机变频器将发送报错数据包,并准备接收下一帧数据。

六、协议数据包格式格式

发送顺序

定义头地址区状态区命令区代码区数据区校验尾

发送字节12222421

注意:

除去数据包头和数据包尾其他数据都要转化为ASCⅡ码。

字节计算方法是除去数据包头和数据包尾各算一个字节,其他数据都要转化为ASCⅡ码后‚一个ASCⅡ码表示一个字节。

例如:

1号从机地址为01H,则高位ASCⅡ码30H,低位ASCⅡ码31H。

共两个字节。

七、协议格式解释(以下提到的D99,D100,D101,D102等数据都是PLC中的地址)

1)数据包头=7EH

数据包的起始字节,不用转换为ASCⅡ码,记为一个字节。

2)D99=从机地址

数据含义:

变频器为从机,变频器的本机地址即为从机地址。

发送方式:

将从机地址的高4位和低4位拆分并转换为ASCⅡ码,先高后低发送。

例如:

1号从机地址为01H,则高位ASCⅡ码30H,低位ASCⅡ码31H。

共两个字节。

先发送30H,再发送31H共两个字节,其他字节的发送方式与此一致。

3)状态代码(编程时发送包里状态码永远置为00H,而接收包里为其他的6个状态码,具体是哪个要看是变频器所处的状态)

数据含义:

从机变频器的状态代码。

即参数设定状态、运行状态(01H)、停车状态(02H)、故障状态(03H)和工厂测试状态,接收的数据帧中ASCⅡ码有错(90H),数据或命令超出可设定的范围(80H),运行中该参数不可修改(70H)

先高后低发送。

状态代码定义:

00H=保留

01H=从机运行

02H=从机停车

03H=从机故障

90H=接收的数据帧中ASCⅡ码有错误

80H=数据或命令超出可设定的范围

70H=运行中该参数不可修改

其他=预留

4)D100=命令代码

数据含义:

主机发送的命令代码,对从机进行相应操作,如读、写、启动、停车、清除故障等。

发送方式:

先高后低发送。

命令代码定义:

00H=变频器运行状态查询

01H=启动变频器运行

02H=变频器停车

03H=复位变频器故障

04H=读对应功能代码内容

05H=写对应功能代码内容

06H=读取监视参数

07H=读取历史故障信息

08H=恢复默认值

09H=机给定频率设定

其他=非法

5)D101=数据地址

数据含义:

数据地址的定义,即变频器的功能代码地址编号(参见功能代码表及意义)。

发送方式:

将功能代码的高4位和低4位拆分并转换为ASCⅡ码,先高后低发送。

6)D102=数据信息高字节,D103=数据信息低字节

数据含义:

数据信息的定义,范围:

0-32000。

无小数点,是否为小数和有几位小数见功能代码说明,若功能代码内容为10.00,发送的数据为1000,转换成16进制为03E8H。

数据类型:

十六进制,双字节。

发送方式:

先发高字节,再发低字节,将数据信息双字节的高4位和低4位拆分并转换为ASCⅡ码,先高后低发送。

若发送16进制的03E8H,则依次发送30H,33H,45H,38H

7)校验码

数据含义:

数据帧中,从从机地址至数据信息12个字节ASCⅡ码值的累加和的低字节。

8)数据包尾=0DH

第2节科威PLC自由协议通信说明

一、自由协议收发函数

通过对通信格式字D8120的设置来完成通信。

更多具体示例参见科威PLC《编程手册》第十一章<自由协议说明及应用>

1〕相关标志位及寄存器

特殊数据寄存器

特殊数据寄存器

描述

D8120

通信格式

D8121

待发送字节数

D8122

发送剩余字节数

D8123

待接收字节数

D8124

已接收字节数

D8125

接收起始符

D8126

接收终止符

D8127

发送接收超时

D8128

发送起始单元

D8129

接收起始单元

D8130

超时剩余时间

特殊辅助继电器

特殊辅助继电器

描述

M8120

奇偶校验错标志

M8121

发送请求标志

M8122

发送成功标志

M8123

接收请求标志

M8124

接收成功标志

M8125

接收起始符标志

M8126

接收终止符标志

M8127

发送接收超时标志

 

2〕自由协议发送函数UART1_SEND

功能:

将设置好的数据等信息进行发送。

函数号:

D8200=29函数调用:

M8200

3〕自由协议接收函数UART1_REV

功能:

将设置好的数据等信息接收。

函数号:

D8200=30函数调用:

M8200

二、自由协议的通信格式

自由协议的通信格式由D8120控制,在运行过程中,根据通信对象的不同,可以改变控制字。

但专用协议和自由协议,在运行时不允许相互切换。

嵌入式PLC串口1通信,一旦选择专有协议,其各项通信指标是固定的。

只有选择自由协议,各项通信参数才根据D8120而变化。

专有协议有主从站设置和地址设置类信息,而自由协议的的主从信息、地址信息是隐含在编程中。

如,主从信息表现在主动发信息还是被动发信息的编程上,地址信息包含在规划的报文格式中及解读报文的编程中。

D8120的协议选项(D8120_Bit14),决定是自由协议还是专有协议,其他选项都是针对自由协议的。

当选择专有协议时,其他各项可以不选。

嵌入式PLC每次上电,D8120都有一个默认初值D8120=H6881,也就是默认选择为专

有协议。

当选择为自由协议时,才需要对D8120进行重新赋值。

位置选项

OFF时含义

ON时含义

D8120_Bit15

未定义

未定义

D8120_Bit14

自由协议

专有协议

D8120_Bit13

未定义

未定义

D8120_Bit12

未定义

未定义

D8120_Bit11

未定义

未定义

D8120_Bit10

未定义

发送结束自动转接收

D8120_Bit09

未定义

接收终止符有效

D8120_Bit08

未定义

接收起始符有效

D8120_Bit07

D8120_Bit07_06_05_04=xxxx,.波特率选项

xxxx=0000:

1200bpsxxxx=0001:

2400bps

xxxx=0010:

4800bpsxxxx=0011:

9600bps

xxxx=0100:

14400bpsxxxx=0101:

19200bps

D8120_Bit06

D8120_Bit05

D8120_Bit04

D8120_Bit03

1停止位

2停止位

D8120_Bit02

D8120_Bit02_01=xx,.奇偶校验选项。

xx=00:

无奇偶校验;xx=01:

奇校验;xx=11:

偶校验;

D8120_Bit01

D8120_Bit00

7位数据

8位数据

如D8120=H0431,表示自由协议,发送结束自动转接收,通信速率为9600bps,7位数据,无奇偶校验。

自由协议的通信格式总共是11位,其中起始位1位,数据位9位(B0----B7+TB8/RB8),1停止位,如图所示。

嵌入PLC与其它控制器通信,如与计算机通信,以自由协议方式,9600bps速率,发送自动转接收为例,可选设置项如下:

、7位数据+无奇偶校验+1停止位:

请按第

种情况设置。

、7位数据+无奇偶校验+2停止位(Bit7=1)D8120=H0438

、7位数据+奇校验+1停止位(Bit7=奇校验)D8120=H0432

、7位数据+偶校验+1停止位(Bit7=偶校验)D8120=H0436

、7位数据+奇校验+2停止位(Bit7=奇校验,TB81/RB81=1)D8120=H043A

、7位数据+偶校验+2停止位(Bit7=偶校验,TB81/RB81=1)D8120=H043E

、8位数据+无奇偶校验+1停止位D8120=H0431

、8位数据+无奇偶校验+2停止位(TB81/RB81=1)D8120=H0439

、8位数据+奇校验+1停止位(TB81/RB81=奇校验)D8120=H0433

、8位数据+偶校验+1停止位(TB81/RB81=偶校验)D8120=H0437

、8位数据+奇校验+2停止位:

请按第

种情况设置。

、8位数据+偶校验+2停止位:

请按第

种情况设置。

三、自由协议通信中常用功能函数

1〕常用功能函数

函数号

函数名

功能说明

25

ASCII_HEX函数

将指定寄存器的ASCII码转换为十六进制数HEX

26

HEX_ASCII函数

将指定寄存器的十六进制数HEX转换为ASCII码

27

BYTE_BYTE函数

将指定寄存器的字进行拆分和组合

28

CRC函数

将和校验区ASCII码的十六进制数相加后,取后两位字符

29

自由协议发送函数

将设置好的数据等信息进行发送。

30

自由协议接收函数

将设置好的数据等信息接收。

2〕自由协议相关函数

在工控通信中,根据不同的情况,各工控厂家有不同的通信协议。

有的以16进制的方

式传输,有的以ASCII码传输,有的以BCD码传输;校验方式有和校验,异或校验;传输顺序有的从高字节开始,有的从低字节开始;传输单位一般是以字节为单位,而PLC在梯形图中多以字为单位。

而自由协议的发送区和接收区是以字节为单位的连续区。

为适应各家协议,必须有相关的辅助函数,才能更好发挥自由协议的作用。

辅助函数只针对数据寄存器区。

1.ASCII码字符转HEX数值(函数号:

25)

将ASCII码表示的“0---9,A---F”字符转换成16进制的数值0---9,A---F。

如ASCII值为31323342(表示字符“123B”),经函数转换后成HEX值为123B,四个字节变成二个字节。

2.HEX数值转换成ASCII码字符(函数号:

26)

将HEX表示的数值变换为ASCII码,与25号函数功能相对。

如将HEX值AB23转换为ASCII码字符“AB23”,ASCII值为41423233。

3.区域移动(函数号:

27)

将字节拼成字,或将字拆成字节,或字区的移动。

如,填写发送字节时,将字节赋给字单元的低字节,我们会觉得方便;但对发送而言,发送的是连续字节区,因此发送前,又必须将不连续的低字节变成连续的字节,即连续的字区。

4.区域求和(函数号:

28)

在有和校验的协议中,以字节为单位进行求和运算。

因此对接收字可能需拆成字节,而后进行求和运算。

如11H22H33H44H55H66H77H的7个字节,求和结果为01DCH。

如果只传两个字的ASCII码值,则只传“DC”,ASCII码值为44H43H。

以上提供的辅助函数在自由协议方式下,使用的频率较高,辅助函数的调用方式也大体相同。

入口参数:

输入的元件号(D8201):

如D8201=K100,表示从D100开始。

输入的有效字节数(D8202):

如D8202=K10,表示10个字节。

起始字节高/低选择(M8201):

如SETM8201表示从低字节开始。

字/字节有效选择(M8202):

如SETM8202表示字节方式。

出口参数:

输出元件号(D8203):

如D8203=K1000,表示结果存在D1000超始区。

起始字节高/低选择(M8203):

如SETM8203表示从低字节开始。

字/字节有效选择(M8204):

如SETM8204表示字节方式。

以上函数的具体示例参见科威PLC《编程手册》第八章<常用功能函数说明>

第3节科威PLC通过自由协议与深圳传动之星变频器通信实现

进行参数初始化即填写D10,D25,D26(D99),D27,D28〜D31(D100〜D103)

调用M8200=K26实现HEX到ASCⅡ码转换)(P1)

调用M8200=K28号函数计算和校验码,并把校验码HEX到ASCⅡ码转换

调用M8200=K27号函数实现字节到字转换

调用M8200=K29发送函数,M8200=K30接收函数最后对数据处理即调用M8200=K25号函数把接收到的数据从ASCⅡ码到HEX转换,结果存在D4。

结束

一、程序流程图

二、资源分配

1)资源分配总体情况

字元件

位元件

标签P

定时器

D0〜D4

M11〜M42

P1,P10〜P19

T0,T1,T3

D10〜D49

M100,M110,M120,M130,M140,M150,M160,M170,M180,M190

D99〜D103

M1000〜M1016(仅在子程序P1中)

2)主程序里包含的资源

字元件

位元件

标签P

定时器

D0〜D4,D99

M100,M110,M120,M130,M140,M150,M160,M170,M180,M190

P1,P10〜P19

T0,T1,T3

D10〜D49

M0〜M4,

3)子程序P1

字元件

位元件

标签P

D49,D23,D24

M1000〜M1016(仅在子程序P1中)

P1,P10〜P19

4)子程序P10〜P19

字元件

D28〜D31

D100〜D103

二、读写方法举例

1)读操作流程:

 

 

2)写操作流程:

 

3)假设要读取的1#变频器的“给定[频率”F0-002=50HZ=5000*0.01HZ(最小单位)

解析:

读1#变频器D99=01,读命令代码D100=“04H”,参数的序号D101=“002”(10进制)=数据地址=“02H”,读命令代码对应程序中定义的M140=ON,填写后D4=1388H,同时还出现以下的应答报文格式:

M140

字段

报文头

从站地址

状态代码

命令代码

数据地址

数据信息

校验码

报文尾

位置

D40H

D40L

D41H

D41L

D42H

D42L

D43H

D43L

D44H

D44L

D45H

D45L

D46H

D46L

D47H

D

4

7

L

ASCⅡ

7E

30

31

30

32

30

34

30

32

31

3338

38

35

44

0D

备注

16进制

ASCⅡ

16

注意:

表中D40H表示D40的高字节,D40L表示D40L的低字节,其他定义也一样

4)假设要向1#变频器写“给定[频率”F0-002=50HZ=5000*0.01HZ(最小单位)

解析:

写入1#变频器D99=“01H”,写入的命令代码D100=“05H”,命令代码对应程序中定义的M150=ON,参数的序号D101=“002”(10进制)=数据地址=“02H”,数据信息=“1388H”,所以数据信息高字节D102=13H,数据信息高字节D102=88H,填写后将出现以下的应答报文格式:

M150

字段

报文头

从站地址

状态代码

命令代码

数据地址

数据信息

校验码

报文尾

位置

D40H

D40L

D41H

D41L

D42H

D42L

D43H

D43L

D44H

D44L

D45H

D45L

D46H

D46L

D47H

D

4

7

L

ASCⅡ

7E

30

31

30

32

30

35

30

32

31

3338

38

35

45

0D

备注

16进制

ASCⅡ

16

注意:

表中D40H表示D40的高字节,D40L表示D40L的低字节,其他定义也一样

使用下表说明:

要求填写序号(D101)是指功能码去掉头三个字符"F0-"后,留下的三个字符的10进制,如"F0-000",去掉头三个字符"F0-"后留下"000"就是所说的功能序号,数值大小也等于表中16进制表示的“数据地址”所以填序号实际上就是填数据地址。

功能代码的定义表参见科威公司主页:

中的“资料下载”-“PLC应用”。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1