《PLC与变频器通讯问题.doc》由会员分享,可在线阅读,更多相关《PLC与变频器通讯问题.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流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的状态字,设置第三个为变频器反馈给P
2、LC的实际输出频率的百分比值, 第四个为变频器反馈给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时为停止).
3、 经过这些设置后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
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用作第二个状态字,需要在变频器里把P73
5、4.2=0033(既字K0032). (K0032的BIT 1为1时表示变频器准备好,BIT 2表示变频器运行中,等等.) (变频器里存贮状态的字为K0032,K0033等字,而变频器发送给PLC的PZD是P734.1,P734.2等) 在变频器里把P734.3=0148,在变频器里把P734.4=0022,则第三个和第四个变频器PZD分别包含实际输出频率的百分比值 和实际输出电流的百分比值 6.程序:(建立DB100,调用SFC14,SFC15,6SE7的地址为512既W#16#200) A. 读出数据 CALL DPRD_DAT LADDR :=W#16#200 RET_VAL:=MW20
6、0 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
7、.3 变频器FAULT.西门子控制字和状态字都是32位,实际上用的位数不多,控制字用到的有合闸、急停、运行允许、故障复位、点动、PLC控制等,状态字用到的有开机准备、运行准备、运行信号、故障、报警等。这是比较简单的控制,如果要在线参数变更就比较复杂了。最简单的学习方法就是看看PLC和变频器的接口配置,运行中用那些位有用,停止时那些位有用,启动和停止过程中那些位在变化,相信这样去学会比看大全理解的要快PLC与变频用DP通讯硬件组态1. 将MASTERDRIVES CBPCBP2 加入组态2. Profibus 地址1. 将MICROMASTER 4 加入组态2. Profibus 地址Top 选
8、择数据格式1. MASTERDRIVE中可供选择的PP0类型2. IQ address1. MICROMASTER 4 中可供选择的数据格式2. IQ addressTop Step 7 中的编程创建数据块DB1说明1.在Step7 中对PKW (参数区)读写参数时调用SFC14和 SFC152. SFC14(“DPRD_DAT”)用于读Profibus 从站的数据3. SFC15(“DPWR_DAT”)用于将数据写入Profibus 从站4. W#16#100(即256)是硬件组态时PKW的起始地址 Top 程序举例11. 读参数r015注PKW ,IND 的详细说明见附录1. W#16#1
9、00(即256)是硬件组态时PKW的起始地址2 .将从站数据读入DB1.DBX0.0 开始的8个字节(P#DB1.DBX0.0 BYTE 8) PKE - DB1.DBW0 IND - DB1.DBW2PWE1 - DB1.DBW4 参数值的高字位PWE2 - DB1.DBW6 参数值的低字位3 .将DB1.DBX28.0 开始的8个字节写入从站(P#DB1.DBX28.0 BYTE 8)DB1.DBW28 - PKEDB1.DBW30 - IND参数值的高字位 DB1.DBW32 - PWE1参数值的低字位 DB1.DBW34 - PWE2注PKW ,IND 的详细说明见附录更多内容下载请登
10、陆: 电邮件:plc808163.COM程序举例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.DBW0IND - DB1.DBW2 PWE1 - DB1.DBW4 参数值的高字位 PWE2 - DB1.DBW6 参数值的低字位3 . 将DB1.DBX28.0 开始的8个字节写入从站(P#DB1.DBX28.0 BYTE 8)DB1.DBW28 - PKEDB1.DBW30 - I
11、ND参数值的高字位 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 IND - DB1.DBW2PWE1 - DB1.DBW4 参数值的高字位PWE2 - DB1.DBW6 参数值的低字位3 . 将DB1.DBX28.0 开始的8个字节
12、写入从站(P#DB1.DBX28.0 BYTE 8)DB1.DBW28 - PKEDB1.DBW30 - IND参数值的高字位 DB1.DBW32 - PWE1参数值的低字位 DB1.DBW34 - 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)
13、 PKE - DB1.DBW0 IND - DB1.DBW2PWE1 - DB1.DBW4 参数值的高字位PWE2 - DB1.DBW6 参数值的低字位3 . 将DB1.DBX28.0 开始的8个字节写入从站(P#DB1.DBX28.0 BYTE 8)DB1.DBW28 - PKEDB1.DBW30 - IND参数值的高字位 DB1.DBW32 - PWE1参数值的低字位 DB1.DBW34 - PWE2注PKW ,IND 的详细说明见附录Top 对PZD (过程数据)的读写说明1. 在Step7 中对PZD (过程数据)读写参数时调用SFC14和SFC152. SFC14(“DPRD_DAT
14、”)用于读Profibus 从站的数据3. SFC15(“DPWR_DAT”)用于将数据写入Profibus 从站4. W#16#108(即264)是硬件组态时PZD的起始地址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
15、口的s7-300和400plc也可以通过cpu上的dp口来实现。采用rs485接口及支持(9.6k12m)bps波特率数据传输(数据传输的结构如图1所示),其中数据的报文头尾主要是来规定数据的功能码、传输长度、奇偶校验、发送应答等内容,主从站之间的数据读写的过程(如图2所示)核心的部分是参数接口(简称pkw)和过程数据(简称pzd),pkw和pzd共有五种结构形式即:ppo1、ppo2、ppo3、ppo4、ppo5,其传输的字节长度及结构形式各不相同。在plc和变频器通讯方式配置时要对ppo进行选择,每一种类型的结构形式如下。图1数据传输的结构图2主从站间数据读写过程ppo14pkw+2pzd
16、(共有6个字组成)ppo24pkw+6pzd(共有10个字组成)ppo32pzd(共有2个字组成)ppo46pzd(共有6个字组成)ppo54pkw+10pzd(共有14个字组成)参数接口(pkw):参数id号(pke)、变址数(ind)、参数值(pwe)三部分组成。过程数据接口(pzd):控制字(stw)、状态字(zsw)、主给定(mainsetpoint),实际反馈值(mainactualvalue)等组成,另外要了解掌握控制字和状态字每一位的具体含义,并熟悉西门子变频器参数的具体应用,在通讯参数设置时需要具体定义。 4实现通讯的软硬件要求和参数设置(1)硬件要求133mhz以上且内存不小
17、于16mb的编程器。西门子s7-300/400系列plc,ram不小于12kb,并带有profibus-dp接口,或是s7-400(ram不小于12kb)配cp443-5的通讯板。带有cbp通讯模块和带有cu2/sc的vc板的变频器(2)软件要求win95或winnt(v4.0以上)step7(v3.0以上)安装dva-s7-sps7(3)通讯设置基本步骤设置传动参数plc硬件配置创建数据块编写通讯程序系统调试(4)传动参数的设置p053=3参数使能p090=1cbp板在2#槽p918=3从站地址p554.1=3001控制字pzd1p443.1=3002主给定pzd2p694.1=968状态子
18、pzd1p694.2=218实际值pzd25plc与传动变频器通讯程序要实现通讯功能,正确的程序编写是非常重要的,下面将以西门子的s7-416plc和6se70变频器为例来介绍通讯的程序编写。(1)基本配置和定义基本配置如图3所示:图3基本配置界面主站master为cpu-416-2dp从站slave为6se70传动装置,profibus地址是3输入地址:iw256(2wordspzd);输出地址:qw256(2wordspzd);ppo类型:3;总线接口:rs485。(2)使用的功能块ob1maincycle主循环sfc14dprd-dat读数据系统功能块sfc15dpwr-dat写数据系统
19、功能块db100数据存取(dbw0dbw4是读出,dbw5-dbw8是写入)mw200mw210通讯状态显示(3)简单程序编写(如图4)图4程序编写界面ob1network1:读出数据callsfc14laddrw#16#100ret-valmw200recordp#db100.dbx0.0byte4network2:显示数据ldb100.dbw0tmw50nop0network3:写入数据lw#16#effftdb100.dbw5network4:发送数据callsfc15laddrw#16#100recordp#db100.dbx5.0byte4ret-valmw210把程序存储编译下装,检查传动装置的参数设置后,即可上电进行调试。 6结束语通过上述介绍,我们可以以profibus-dp总线为基础通过网络配置和参数设定来建立plc和传动装置之间的通讯,并通过参数的变化来实现对装置的启停控制,快慢调速等功能。借助于编程器可plc在线查看从装置读取上来的状态和实际反馈值,在装置pmu上也可查看主给定。通讯技术的实现了自动化的更加广泛应用。