PLC与变频器通讯详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PLC与变频器通讯详解
1.通讯⽅式的设定:PPO 4,这种⽅式为0 PKW/6 PZD,输⼊输出都为6个
PZD,(只需要在STEP7⾥设置,变频器不需要设置);
PROFIBUS 的通讯频率在变频器⾥也不需要设置,PLC ⽅⾯默认为1.5MB. 在P60=7设置下,设置P53=3,允许CBP(PROFIBUS)操作. P918.1设置变频器的PROFIBUS 地址.
2.设置第⼀与第⼆个输⼊的PZD 为PLC 给变频器的控制字,其余四个输⼊PZD 这⾥没有⽤到.
设置第⼀与第⼆个输出的PZD 为变频器给PLC 的状态字,设置第三个为变频器反馈给PLC 的实际输出频率的百分⽐值,
第四个为变频器反馈给PLC 的实际输出电流的百分⽐值,其余两个输出PZD 这⾥没有⽤到.
3.PLC 给变频器的第⼀个PZD 存储在变频器⾥的K3001字⾥.
K3001有16位,从⾼到底为3115到3100(不是3001.15到3001.00).
变频器的参数P554为1时变频器启动为0时停⽌,P571控制正转,P572控制反转.
如果把P554设置等于3100,那么K3001的位3100就控制变频器的启动与停⽌,P571设置等于3101则3101就控制正转,
P572设置等于3102则3102就控制反转.(变频器默认P571与P572都为1时正转,都为0时为停⽌).
经过这些设置后K3001就是PLC 给变频器的第⼀个控制字.
此时K3001的3100到3115共16位除了位3110控制⽤途都不是固定的,所以当设置P554设置等于3101时则3101可以控制启动与停⽌, P571等于3111时则3111控制正转,等等.
K3001的位3110固定为“控制请求”,这位必须为1变频器才能接受PLC 的控制讯号,所以变频器⾥没有⽤⼀个参数对应到这个位,必须保证PLC 发过来第⼀个字的BIT 10为1.
这⾥设置为:P554=3100,P571=3101,P572=3102,当PLC 发送W#16#0403时(既0000,0100,0000,0011)变频器正转.
4.PLC 给变频器的第⼆个PZD 存储在变频器⾥的K3002字⾥. 变频器的参数P443存放给定值.
如果把参数P443设置等于K3002,那么整个字K3002就是PLC 给变频器的主给定控制字. PLC 发送过来的第⼆个字的⼤⼩为0到16384(⼗进制),(对应变频器输出的0到100%),当为8192时,变频器输出频率为25Hz.
5.变频器的输出给PLC 的第⼀个PZD 字是P734.1,第⼆个PZD 字是P734.2,等等.
要想把PLC 接收的第⼀个PZD ⽤作第⼀个状态字,需要在变频器⾥把P734.1=0032(既字K0032),
要想把PLC 接收的第⼆个PZD ⽤作第⼆个状态字,需要在变频器⾥把P734.2=0033(既字K0032).
(K0032的BIT 1为1时表⽰变频器准备好,BIT 2表⽰变频器运⾏中,等等.) (变频器⾥存贮状态的字为K0032,K0033等字,⽽变频器发送给PLC 的PZD 是P734.1,P734.2等)
在变频器⾥把P734.3=0148,在变频器⾥把P734.4=0022,则第三个和第四个变频器PZD 分
W W
W
.P
L C
W O
R
L D .C
N
别包含实际输出频率的百分⽐值和实际输出电流的百分⽐值
6.程序:(建⽴DB100,调⽤SFC14,SFC15,6SE7的地址为512既W#16#200) A. 读出数据
CALL "DPRD_DAT" LADDR :=W#16#200 RET_VAL:=MW200
RECORD :=P#DB100.DBX0.0 BYTE 12(读取12个BYTE) NOP 0
B. 发送数据
CALL "DPWR_DAT" LADDR :=W#16#200
RECORD :=P#DB100.DBX12.0 BYTE 12(写⼊12个BYTE) RET_VAL:=MW210 NOP 0
C. L "DB100".DBW0 T "MW20" NOP 0
D. L "DB100".DBW2 T "MW22" NOP 0
则:DB100.DBX 13.0 控制启动与停⽌; DB100.DBX 13.1 控制正转; DB100.DBX 13.2 控制反转; M21.1 变频器READY; M21.3变频器FAULT.
西门⼦控制字和状态字都是32位,实际上⽤的位数不多,控制字⽤到的有合闸、急停、运⾏允许、故障复位、点动、PLC 控制等,状态字⽤到的有开机准备、运⾏准备、运⾏信号、故障、报警等。

这是⽐较简单的控制,如果要在线参数变更就⽐较复杂了。

最简单的学习⽅法就是看看PLC 和变频器的接⼝配置,运⾏中⽤那些位有⽤,停⽌时那些位有⽤,启动和停⽌过程中那些位在变化,相信这样去学会⽐看⼤全理解的要快PLC 与变频⽤DP 通讯硬件组态
1. 将MASTERDRIVES CBPCBP2 加⼊组态
2. Profibus 地址
W W
W
.P
L C
W O
R
L D .C
N
1. 将MICROMASTER 4 加⼊组态
2. Profibus 地址 Top
选择数据格式
1. MASTERDRIVE 中可供选择的PP0类型
2. IQ address
1. MICROMASTER 4 中可供选择的数据格式
2. IQ address
Top
Step 7 中的编程
创建数据块DB1 说明
1.在Step7 中对PKW (参数区)读写参数时调⽤SFC14和 SFC15
2. SFC14(“DPRD_DAT”)⽤于读Profibus 从站的数据
3. SFC15(“DPWR_DAT”)⽤于将数据写⼊Profibus 从站
4. W#16#100(即256)是硬件组态时PKW 的起始地址 Top
程序举例1 1. 读参数r015
注PKW ,IND 的详细说明见附录
1. W#16#100(即256)是硬件组态时PKW 的起始地址
2 .将从站数据读⼊DB1.DBX0.0 开始的8个字节(P#DB1.DBX0.0 BYTE 8) PKE - DB1.DBW0 IND - DB1.DBW2
PWE1 - DB1.DBW4 参数值的⾼字位 PWE2 - DB1.DBW6 参数值的低字位
W W
W
.P
L C
W O
R
L D .C
N
3 .将DB1.DBX28.0 开始的8个字节写⼊从站(P#DB1.DBX28.0 BYTE 8) DB1.DBW28 - PKE DB1.DBW30 - IND 参数值的⾼字位 DB1.DBW32 - PWE1 参数值的低字位 DB1.DBW3
4 - PWE2
注PKW ,IND 的详细说明见附录
更多内容下载请登陆:/doc/8b0e575bed630b1c58eeb55e.html 电邮件:
plc808@/doc/8b0e575bed630b1c58eeb55e.html
程序举例2 (读参数数组的数值) 2. 读参数P401.2
注PKW ,IND 的详细说明见附录 1. W#16#100(即256)是硬件组态时PKW 的起始地址 2 .将从站数据读⼊DB1.DBX0.0 开始的8个字节(P#DB1.DBX0.0 BYTE 8)
PKE - DB1.DBW0 IND - DB1.DBW2
PWE1 - DB1.DBW4 参数值的⾼字位 PWE2 - DB1.DBW6 参数值的低字位
3 . 将DB1.DBX28.0 开始的8个字节写⼊从站(P#DB1.DBX28.0 BYTE 8) DB1.DBW28 - PKE DB1.DBW30 - IND
参数值的⾼字位 DB1.DBW32 - PWE1 参数值的低字位 DB1.DBW34 - PWE2 注PKW ,IND 的详细说明见附录
Top
程序举例3 (读须置位参数页的参数) 3. 读参数U001.2
注PKW ,IND 的详细说明见附录
1. W#16#100(即256)是硬件组态时PKW 的起始地址
2 .将从站数据读⼊DB1.DBX0.0 开始的8个字节(P#DB1.DBX0.0 BYTE 8) PKE - DB1.DBW0 W W
W
.P
L C
W O
R
L D .C
N
IND - DB1.DBW2
PWE1 - DB1.DBW4 参数值的⾼字位 PWE2 - DB1.DBW6 参数值的低字位
3 . 将DB1.DBX28.0 开始的8个字节写⼊从站(P#DB1.DBX28.0 BYTE 8) DB1.DBW28 - PKE DB1.DBW30 - IND 参数值的⾼字位 DB1.DBW32 - PWE1 参数值的低字位 DB1.DBW3
4 - PWE2
注PKW ,IND 的详细说明见附录 Top
程序举例4(写参数)
4. 写参数P401.1 (将W#16#1000 写⼊P401.1中) 1.将W#16# 8191 写⼊DB1.DBW28 (PWE)
注PKW ,IND 的详细说明见附录
1. W#16#100(即256)是硬件组态时PKW 的起始地址
2 .将从站数据读⼊DB1.DBX0.0 开始的8个字节(P#DB1.DBX0.0 BYTE 8) PKE - DB1.DBW0 IND - DB1.DBW2
PWE1 - DB1.DBW4 参数值的⾼字位
PWE2 - DB1.DBW6 参数值的低字位
3 . 将DB1.DBX28.0 开始的8个字节写⼊从站(P#DB1.DBX28.0 BYTE 8) DB1.DBW28 - PKE DB1.DBW30 - IND 参数值的⾼字位 DB1.DBW32 - PWE1 参数值的低字位 DB1.DBW3
4 - PWE2
注PKW ,IND 的详细说明见附录 Top
对PZD (过程数据)的读写说明
1. 在Step7 中对PZD (过程数据)读写参数时调⽤SFC14和SFC15
2. SFC14(“DPRD_DAT”)⽤于读Profibus 从站的数据
3. SFC15(“DPWR_DAT”)⽤于将数据写⼊Profibus 从站
4. W#16#108(即264)是硬件组态时PZD 的起始地址
W W
W
.P
L C
W O
R
L D .C
N
5. 对特殊结构的PZD 可⽤PQW , PIW 进⾏读写 Top
程序举例5 对PPO5 中10PZD 的读写
DB1中与PZD 相对应的数据字
1.在P918 中设置Profibus 地址,必须与Step 7 中设置相同.地址不能重复.
2. 控制字第⼗位置“1”. PZD1 = W#16#X4XX
profibus-dp 的数据通讯格式
传动装置通过profibus-dp ⽹与主站plc 的接⼝是经过通讯模块cbp
板来实现的,带有dp ⼝的s7-300和400 plc 也可以通过cpu 上的dp ⼝来实现。

采⽤rs485接⼝及⽀持(9.6k ~12m )bps 波特率数据传输(数据
传输的结构如图1所⽰),其中数据的报⽂头尾主要是来规定数据的功能码、传输长度、奇偶校验、发送应答等内容,主从站之间的数据读写的过程(如图2所⽰)核⼼的部分是参数接⼝(简称pkw )和过程数据(简称pzd ),pkw 和pzd 共有五种结构形式即:ppo1、ppo2、ppo3、ppo4、ppo5,其传输的字节长度及结构形式各不相同。

在plc 和变频器通讯⽅式配置时要对ppo 进⾏选择,每⼀种类型的结构形式如下。

图1 数据传输的结构
图2 主从站间数据读写过程
ppo1 4 pkw + 2 pzd (共有6个字组成) ppo2 4 pkw + 6 pzd (共有10个字组成) ppo3 2 pzd (共有2个字组成) ppo4 6 pzd (共有6个字组成)
ppo5 4 pkw+10 pzd (共有14个字组成)
参数接⼝(pkw ):参数id 号(pke )、变址数(ind )、参数值(pwe )三部分组成。

过程数据接⼝(pzd ):控制字(stw )、状态字(zsw )、主给定(main setpoint ),实际反馈值(main actual value )等组成,另
W W
W
.P
L C
W O
R
L D .C
N
外要了解掌握控制字和状态字每⼀位的具体含义,并熟悉西门⼦变频器参数的具体应⽤,在通讯参数设置时需要具体定义。

4 实现通讯的软硬件要求和参数设置(1)硬件要求
·133mhz 以上且内存不⼩于16mb 的编程器。

·西门⼦s7-300/400系列plc ,ram 不⼩于12kb ,并带有profibus-dp 接⼝,或是s7-400(ram 不⼩于12kb )配cp443-5的通讯板。

·带有cbp 通讯模块和带有cu2/sc 的vc 板的变频器(2)软件要求
·win 95或win nt (v4.0以上) ·step7(v3.0以上) ·安装dva-s7-sps7 (3)通讯设置基本步骤 ·设置传动参数
· plc 硬件配置 ·创建数据块 ·编写通讯程序 · 系统调试
(4)传动参数的设置 ·p053 = 3 参数使能 ·p090 = 1 cbp 板在2#槽 ·p918 = 3 从站地址 ·p554.1=3001 控制字pzd1
·p443.1=3002 主给定pzd2 ·p694.1=968 状态⼦pzd1 ·p694.2=218 实际值pzd2 5 plc 与传动变频器通讯程序要实现通讯功能,
正确的程序编写是⾮常重要的,下⾯将以西门⼦的s7-416 plc 和6se70变频器为例来
介绍通讯的程序编写。

(1)基本配置和定义基本配置如图3所⽰: W W
W
.P
L C
W O
R
L D .C
N
图3 基本配置界⾯
主站master 为cpu-416-2dp
从站slave 为6se70传动装置,profibus 地址是3 输⼊地址: iw 256 ( 2 words pzd ); 输出地址: qw256 (2 words pzd ); ppo 类型: 3; 总线接⼝: rs485。

(2)使⽤的功能块 ob1 main cycle 主循环
sfc14 dprd-dat 读数据系统功能块 sfc 15 dpwr-dat 写数据系统功能块 db100 数据存取(dbw0 –dbw4是读出,
dbw5-dbw8是写⼊) mw200 mw210 通讯状态显⽰
(3)简单程序编写(如图4)
W W
W
.P
L C
W O
R
L D .C
N
图4
程序编写界⾯
ob1
network1: 读出数据 call sfc 14 laddr w#16#100 ret-val mw200
record p#db100.dbx0.0 byte 4 network2: 显⽰数据 l db100.dbw 0 t mw50 nop 0 network3: 写⼊数据 l w#16#efff t db100.dbw 5 network4: 发送数据 call sfc 15 laddr w#16#100
record p#db100.dbx5.0 byte 4 ret-val mw210
把程序存储编译下装,检查传动装置的参数设置后,即可上电进⾏调试。

6 结束语
通过上述介绍,我们可以以profibus-dp 总线为基础通过⽹络配置和参数设定来建⽴plc 和传动装置之间的通讯,并通过参数的变化来实现对装置的启停控制,快慢调速等功能。

借助于编程器可plc 在线查看从装置读取上来的状态和实际反馈值,在装置pmu 上也可查看主给定。

通讯技术的实现了⾃动化的更加⼴泛应⽤。

W
W
W
.P
L C W O R
L D .C N。

相关文档
最新文档