line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 西门子6SL3211-0AB11-2UB1 G120 变频器原装现货
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 西门子6SL3211-0AB11-2UB1 G120 变频器原装现货
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 5.USS通信原理与编程的实现
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 5. 1 S7 1200 PLC与G120 通过USS通信的基本原理
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> S7 1200提供了的USS库进行USS通信,如下图所示:
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图5: S7 1200 的USS库
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
USS_DRV 功能块是S7-1200 USS通信的主体功能块,接受变频器的信息和控制变频器的指令都是通过这个功能快来完成的。必须在主 OB中调用,不能在循环中断OB中调用。
USS_PORT功能块是S7-1200与变频器USS通信的接口,主要设置通信的接口参数。可在主OB或中断OB中调用。
USS_RPM功能块是通过USS通信读取变频器的参数。必须在主 OB中调用,不能在循环中断OB中调用。
USS_WPM功能块是通过USS通信设置变频器的参数。必须在主 OB中调用,不能在循环中断OB中调用。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 这些功能块与变频器之间的控制关系如下图所示:
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图6: USS 通信功能块与变频器的控制关系
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> USS_DRV功能块通过USS_DRV_DB数据块实现与USS_PORT功能块的数据接收与传送,而USS_PORT功能块是S7-1200 PLC CM1241 RS485模块与变频器之间的通信接口。USS_RPM功能块和USS_WPM功能块与变频器的通信与USS_DRV功能块的通信方式是相同的。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 每个S7-1200 CPU多可带3个通信模块,而每个CM1241 RS485通信模块多支持16个变频器。因此用户在一个S7-1200 CPU中多可建立3个USS网络,而每个USS网络多支持16个变频器,共多支持48个USS变频器。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 5. 2 S7 1200 PLC进行USS通信的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
1.USS通信接口参数功能块的编程
USS通信接口参数功能块的编程如下图所示。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图7: USS通信接口参数功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> USS_PORT功能块用来处理USS网络上的通信,它是S71200 CPU与变频器的通信借口。每个CM1241 RS485模块有且必须有一个USS_PORT功能块。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
PORT:指的是通过哪个通信模块进行USS通信。
BAUD:指的是和变频器进行通行的速率。 变频器的参数P2010种进行设置。
USS_DB:指的是和变频器通信时的USS数据块。每个通信模块多可以有16个USS数据块,每个CPU多可以有48个USS数据块,具体的通信情况要和现场实际情况相联系。每个变频器与S7-1200进行通信的数据块是的。
ERROR:输出错误。
STATUS:扫描或初始化的状态。
S7-1200 PLC与变频器的通信是与它本身的扫描周期不同步的,在完成一次与变频器的通信事件之前,S7-1200通常完成了多个扫描。
USS_PORT通信的时间间隔是S7-1200与变频器通信所需要的时间,不同的通信波特率对应的不同的USS_PORT通信间隔时间。下图列出了不同的波特率对应的USS_PORT通信间隔时间。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图8:不同的波特率对应的USS_PORT通信间隔时间
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
USS_PORT在发生通信错误时,通常进行3次尝试来完成通信事件,那么S7-1200与变频器通信的时间就是USS_PORT发生通信时的时间间隔。例如:如果通信波特率是57600,那么USS_PORT与变频器通信的时间间隔应当大于的调用时间间隔,即大于36.1Ms而小于109Ms。S7-1200 USS 协议库默认的通信错误时尝试次数是2次。
基于以上的USS_PORT通信时间的处理,我们建议在循环中断OB块中调用USS_PORT通信功能块。在建立循环中断OB块时,我们可以设置循环中断OB块的扫描时间,以满足通信的要求。循环中断OB块的扫描时间的设置如下图所示:
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图9:循环中断OB块的扫描时间的设置
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
2.USS_DRV功能块的编程
USS_DRV功能块的编程如下图所示。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图10: USS_DRV功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> USS_DRV功能块用来与变频器进行交换数据,从而读取变频器的状态以及控制变频器的运行。每个变频器使用的一个USS_DRV功能块,但是同一个CM1241 RS485模块的USS网络的所有变频器(多16个)都使用同一个USS_DRV_DB。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
USS_DRV_DB:变频器进行USS通信的数据块。
RUN: DB块的变频器启动指令。
OFF2: 紧急停止,自由停车。 该位为0时停车。
OFF3: 快速停车,带制动停车。 该位为0时停车。
F_ACK: 变频器故障确认。
DIR : 变频器控制电机的转向。
SPEED_SP: 变频器的速度设定值。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
ERROR: 程序输出错误。
RUN_EN: 变频器运行状态指示。
D_DIR: 变频器运行方向状态指示。
INHIBIT: 变频器是否被禁止的状态指示。
FAULT: 变频器故障。
SPEED: 变频器的反馈的实际速度值。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
DRIVE: 变频器的USS站地址。变频器参数P2011设置。
PZD_LEN: 变频器的循环过程字。 变频器参数P2012设置。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 注意:变频器的PKW的长度在这里是特殊需要注意的,在使用USS通信时必须是4,如果改成3或者127都将不能读取反馈回来的过程值。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
3.USS_RPM功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> USS_RPM功能块的编程 如下图所示。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图11:USS_RPM功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">USS_RPM功能块用于通过USS通信从变频器读取参数。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
REQ: 读取参数请求。
DRIVE: 变频器的USS站地址。
PARAM: 变频器的参数代码。
INDEX: 变频器的参数索引代码
USS_DB: 变频器进行USS通信的数据块。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
DONE: 读取参数完成。
ERROR: 读取参数错误。
STATUS: 读取参数状态代码。
VALUE: 所读取的参数的值。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 注意:进行读取参数功能块编程时,各个数据的数据类型一定要正确对应。如果需要设置变量读取参数时,注意该参数变量的初始值不能为0,否则容易产生通信错误。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
4.USS_WPM功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> USS_WPM功能块的编程如下图所示。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
图12:USS_WPM功能块的编程
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
USS_WPM 功能块用于通过USS通信设置变频器的参数。
REQ: 读取参数请求。
DRIVE: 变频器的USS站地址。
PARAM: 变频器的参数代码。
INDEX: 变频器的参数索引代码。
EEPROM:把参数存储到变频器的EEPROM。
VALUE: 设置参数的值。
USS_DB: 变频器进行USS通信的数据块。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
DONE: 读取参数完成。
ERROR: 读取参数错误状态。
STATUS: 读取参数状态代码。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 注意:对写入参数功能块编程时,各个数据的数据类型一定要正确对应。如果需要设置变量进行写入参数值时,注意该参数变量的初始值不能为0,否则容易产生通信错误。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
5. 3 S7 1200 PLC进行USS通信的调试
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> S7-1200 PLC 通过CM1241 RS485模块与变频器进行USS通信时,需要注意如下几点:
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;"> 在S7-1200 PLC 与变频器的USS通信的实际使用过程中,需要根据网络的现场情况,对问题进行具体的解决。
line;font-weight:400;color:#333333;font-style:normal;text-align:left;background-color:#ffffff;text-indent:0px;">
关键词
USS 协议,S7-1200,G120,变频器
西门子***的金融解决方案使服务更加普及,帮助工业企业提高生产力,促进节能技术应用,并使更多的设备厂商得到有利于销售和投资的定制化融资服务。金融服务集团丰富的经验、完善的风险评估和以客户为本的服务意识惠及各类中小企业和大型机构。
在手机上查看
温馨提示:为规避购买风险,建议您在购买产品前务必确认供应商资质及产品质量。