当前位置:文档之家› PLC与变频器通讯

PLC与变频器通讯

西门子的USS通讯,无需使用特殊硬件,PLC与变频器都有继承的串口,简单,价廉。

如果要使用总线的话,就需要额外使用通讯卡或适配器。

PLC 与驱动装置连接,主要实现的任务是:控制驱动装置的启动、停止等运行状态控制驱动装置的转速等参数获取驱动装置的状态和参数S7-200 和西门子传动装置主要可以通过以下几种方式连接在一起工作:S7-200 通过数字量(DI/DO)信号控制驱动装置的运行状态和速度S7-200 通过数字量信号控制驱动装置的运行状态;通过模拟量(AI/AO)信号控制转速等参数S7-200 通过串行通信控制驱动装置的运行和各种参数**************************************************************************************************** 由于题目的需要,那就使用“S7-200 通过串行通信控制驱动装置的运行”,也就是控制启停。

S7-200 CPU 将在USS 通信中作为主站。

而变频器则为USS从站。

当S7-200的编程软件为V4.0 SP5以上的话,就包括USS协议指令库,以下介绍通过西门子提供的USS 指令库与MM 440 之间的串行通信控制。

1、关于指令库见下图,就是安装了USS协议指令库的指令树。

西门子的标准USS 协议库以浅蓝色图标表示。

如果未找到浅蓝色图标的指令库,说明系统中没有安装西门子标准指令库。

必须先安装标准指令库。

2、USS 初始化指令西门子的S7-200 USS 标准指令库包括14 个子程序和3 个中断服务程序。

但是只有8 个指令可供用户使用。

一些子程序和所有中断服务程序都在调用相关的指令后自动起作用。

每个USS 库应用都要先进行USS 通信的初始化。

使用USS_INIT 指令初始化USS 通信功能。

打开USS 指令库分支,像调用子程序一样调用USS_INIT 指令。

上图中:a. EN:初始化程序USS_INIT 只需在程序中执行一个周期就能改变通信口的功能,以及进行其他一些必要的初始设置,因此可以使用SM0.1 或者沿触发的接点调用USS_INIT 指令;b. Mode:模式选择,执行USS_INIT 时,Mode 的状态决定是否在Port 0 上使用USS 通信功能;= 1 设置Port 0 为USS 通信协议并进行相关初始化0 恢复Port 0 为PPI 从站模式c. Baud:USS 通信波特率。

此参数要和变频器的参数设置一致;= 2400 2400 bit/s4800 4800 bit/s9600 9600 bit/s19200 19200 bit/s38400 38400 bit/s57600 57600 bit/s115200 115200 bit/sd. Active:此参数决定网络上的哪些USS 从站在通信中有效。

详见下面的说明;e. Done:初始化完成标志f. Error:初始化错误代码Active 参数USS_INIT 子程序的Active 参数用来表示网络上哪些USS 从站要被主站访问,即在主站的轮询表中激活。

网络上作为USS 从站的驱动装置每个都有不同的USS 协议地址,主站要访问的驱动装置,其地址必须在主站的轮询表中激活。

USS_INIT 指令只用一个32 位长的双字来映射USS 从站有效地址表,Active 的无符号整数值就是它在指令输入端的取值。

在上表中的这个32 位的双字中,每一位的位号表示USS 从站的地址号;要在网络中激活某地址号的驱动装置,则需要把相应位号的位置设为二进制“1",不需要激活USS 从站,相应的位设置为”0"。

最后对此双字取无符号整数就可以得出Active 参数的取值。

将使用站地址为3 的MM 440 变频器,则须在位号为03 的位单元格中填入二进制“1"。

其他不需要激活的地址对应的位设置为”0"。

取整数,计算出的Active 值为00000008 h,即16#00000008,也等于十进制数8(如调用USS_INIT 指令中的d)我一般都是使用16 进制数,这样可以每4 位一组进行加权计算出16 进制数,并组合成一个整数。

如果一时难以计算出有多个USS 从站配置情况下的Active 值,可以使用Windows 自带的计算器。

将其设置为科学计算器模式,可以方便地转换数制。

3、分配库存储区地址指令库或者向导都要求分配库存储区地址,这也是使用西门子200容易忽略的步骤。

USS 指令库需要大概400 个字节的V 存储区用于支持其工作。

调用USS_INIT 指令后就可以为USS 指令库分配库存储区。

也可以在编程的稍后阶段分配存储区地址,但这一步是必不可少的,否则程序无法通过编译。

注意:S7-200 中的数据存储区分配原则,分配给库指令的数据区绝对不能与其他程序使用的数据区有任何重叠。

否则会造成出错。

在指令树的Project(项目)中,以鼠标右键单击Program Block(程序块),在弹出的快捷菜单中选择Library Memory。

如下图所示:4、USS 驱动装置控制功能块USS_CTRL 指令用于对单个驱动装置进行运行控制。

这个功能块利用了USS 协议中的PZD 数据传输,控制和反馈信号更新较快。

网络上的每一个激活的USS 驱动装置从站,都要在程序中调用一个独占的USS_CTRL 指令,而且只能调用一次。

需要控制的驱动装置必须在USS 初始化指令运行时定义为“激活”。

在USS 通信指令库分支中选择USS_CTRL 指令上图中:a. EN:使用SM0.0 使能USS_CTRL 指令b. RUN:驱动装置的启动/停止控制= 0 停止1 运行此停车是按照驱动装置中设置的斜坡减速指电机停止c. OFF2:停车信号2。

此信号为“1"时,驱动装置将封锁主回路输出,电机自由停车d. OFF3:停车信号3。

此信号为”1"时,驱动装置将快速停车e. F_ACK:故障确认。

当驱动装置发生故障后,将通过状态字向USS 主站报告;如果造成故障的原因排除,可以使用此输入端清除驱动装置的报警状态,即复位。

注意这是针对驱动装置的操作。

f. DIR:电机运转方向控制。

其“0/1”状态决定运行方向g.Drive:驱动装置在USS 网络上的站号。

从站必须先在初始化时激活才能进行控制h.Type:向USS_CTRL 功能块指示驱动装置类型= 0 MM 3 系列,或更早的产品1 MM 4 系列,SINAMICS G 110i. Speed_SP:速度设定值。

速度设定值必须是一个实数,给出的数值是变频器的频率范围百分比还是绝对的频率值取决于变频器中的参数设置(如MM 440 的P2009)j. Resp_R:从站应答确认信号。

主站从USS 从站收到有效的数据后,此位将为“1"一个程序扫描周期,表明以下的所有数据都是最新的k. Error:错误代码。

0 = 无出错。

其他错误代码请参考l. Status:驱动装置的状态字。

此状态字直接来自驱动装置的状态字,表示了当时的实际运行状态详细的状态字信息意义请参考相应的驱动装置手册。

m. Speed:驱动装置返回的实际运转速度值,实数。

是否频率值跟随设定值的规格化设定n. Run_EN:运行模式反馈,表示驱动装置是运行(为1)还是停止(为0)o. D_Dir:指示驱动装置的运转方向,反馈信号p. Inhibit:驱动装置禁止状态指示(0 - 未禁止,1 - 禁止状态)。

禁止状态下驱动装置无法运行。

要清除禁止状态,故障位必须复位,并且RUN, OFF2 和OFF3 都为0q. Fault:故障指示位(0 - 无故障,1 - 有故障)。

表示驱动装置处于故障状态,驱动装置上会显示故障代码(如果有显示装置)。

要复位故障报警状态,必须先消除引起故障的原因,然后用F_ACK 或者驱动装置的端子、或操作面板复位故障状态。

USS_CTRL 已经能完成基本的驱动装置控制,如果需要有更多的参数控制选项,可以选用USS 指令库中的参数读写指令实现。

5、MM 440 的参数设置5.1 控制源参数设置控制命令控制驱动装置的启动、停止、正/反转等功能。

控制源参数设置决定了驱动装置从何种途径接受控制信号。

控制源由参数P0700 设置,选择55.2 设定源控制参数设定值控制驱动装置的转速/频率等功能。

设定源参数决定了驱动装置从哪里接受设定值(即给定)。

设定源由参数P1000 设置:同样选择55.3 USS 通信控制的参数设置主要参数有:1. P0700:设置P0700[0] = 5,即控制源来自COM Link 上的USS 通信2. P1000:设置P1000[0] = 5,即设定源来自COM Link 上的USS 通信3. P2009:决定是否对COM Link 上的USS 通信设定值规格化,即设定值将是运转频率的百分比形式,还是绝对频率值= 0 不规格化USS 通信设定值,即设定为变频器中的频率设定范围的百分比形式。

1 对USS 通信设定值进行规格化,即设定值为绝对的频率数值。

4. P2010:设置COM Link 上的USS 通信速率。

根据S7-200 通信口的限制,支持的通信波特率有:= 4 2400 bit/s5 4800 bit/s6 9600 bit/s7 19200 bit/s8 38400 bit/s9 57600 bit/s12 115200 bit/s5. P2011:设置P2011[0] = 0 至31,即驱动装置COM Link 上的USS 通信口在网络上的从站地址。

USS 网络上不能有任何两个从站的地址相同。

6. P2012:设置P2012[0] = 2,即USS PZD 区长度为2 个字长。

7. P2013:设置P2013[0] = 127,即USS PKW 区的长度可变。

8. P2014:设置P2014[0] = 0 至65535,即COM Link 上的USS 通信控制信号中断超时时间,单位为ms。

如设置为0,则不进行此端口上的超时检查。

此通信控制信号中断,指的是接收到的对本装置有效通信报文之间的最大间隔。

如果设定了超时时间,报文间隔超过此设定时间还没有接收到下一条信息,则会导致F0072 错误,变频器将会停止运行。

通信恢复后此故障才能被复位。

根据USS 网络通信速率和站数的不同,此超时值会不同。

如果要设定超时值,请参考相关表格,并选取一个适当的数值。

9. P0971:设置P0971 = 1,上述参数将保存入MM 440 的EEPROM 中。

USS 通信是由S7-200 和驱动装置配合,因此相关参数一定要配合设置。

相关主题