USS通信协议
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西门子S7-1200 紧凑型PLC在当前的市场中有着广泛的应用,作为经常与SINAMICS G120系列变频器共同使用的PLC,其USS通信协议的使用一直在市场上有着非常广泛的应用。本文将主要介绍如何使用USS通信协议来实现S7-1200与G120变频器的通信。
1.控制系统原理和接线图
下图是本例中所使用的原理和接线图。
图1:控制系统原理和接线图
2.硬件需求
S7-1200PLC目前有3种类型的CPU:
1)S7-1211C CPU。
2)S7-1212C CPU。
3)S7-1214C CPU。
这三种类型的CPU都可以使用USS通信协议通过通信模块CM1241RS485来实现S7-1200与G120变频器的通信。
本例中使用的PLC硬件为:
1)PM1207电源(6EP1332-1SH71)
1)S7-1214C(6ES7214-1BE30-0XB0)
1) CM1241RS485(6ES7241-1CH30-0XB0)
2) 模拟器(6ES7274-1XH30-0XA0)
本例中使用的G120变频器硬件为:
1)SINAMICS G120PM240 (6SL3244-0BA20-1BA0)
2)SINAMICS G120CU240S(6SL3224-0BE13-7UA0)
2)SIEMENS MOTOR(1LA7060-4AB10)
3)操作面板(XAU221-001469)
4)USS 通信电缆(6XV1830-0EH10)
3.软件需求
1) 编程软件Step7Basic V10.5( 6ES7822-0AA0-0YA0)
4.组态
我们通过下述的实际操作来介绍如何在Step7Basic V10.5 中组态S7-1214C 和G120变频器的USS通信。
4. 1 PLC 硬件组态
首先在Step7Basic V10.5中建立一个项目,如图1所示。
图2:新建S71200项目
在硬件配置中,添加CPU1214C和通信模块CM1241RS485模块,如图2所示。
图3:S71200硬件配置
在CPU的属性中,设置以太网的IP地址,建立PG与PLC的连接,如下图所示。
图4:S71200IP地址的设置
4. 2 G120参数设置
变频器的参数设置如下表所示。
序号功能参数设定值1工厂设置复位P001030
2工厂设置复位P9701
3快速启动设置P00101
表1 :G120变频器的参数设置
注意:表1中的17,18,19,20 这四项参数值的设置必须使PLC的参数值与变频器的参数值相一致。而19,20这两个参数值必须设置成如表1中的值,否则有可能变频器与S7-1200通信有如下问题:可能不能读出从变频器反馈回来的参数值。
5.USS通信原理与编程的实现
5. 1 S71200PLC与G120通过USS通信的基本原理
S7 1200提供了专用的USS库进行USS通信,如下图所示:
图5:S71200 专用的USS库
USS_DRV 功能块是S7-1200 USS通信的主体功能块,接受变频器的信息和控制变频器的指令都是通过这个功能快来完成的。必须在主OB中调用,不能在循环中断OB中调用。
USS_PORT功能块是S7-1200与变频器USS通信的接口,主要设置通信的接口参数。可在主OB或中断OB中调用。
USS_RPM功能块是通过USS通信读取变频器的参数。必须在主OB中调用,不能在循环中断OB中调用。
USS_WPM功能块是通过USS通信设置变频器的参数。必须在主OB中调用,不能在循环中断OB中调用。
这些专用功能块与变频器之间的控制关系如下图所示:
图6:USS 通信功能块与变频器的控制关系
USS_DRV功能块通过USS_DRV_DB数据块实现与USS_PORT功能块的数据接收与传送,而
USS_PORT功能块是S7-1200PLC CM1241 RS485模块与变频器之间的通信接口。USS_RPM功能块和USS_WPM功能块与变频器的通信与USS_DRV功能块的通信方式是相同的。
每个S7-1200CPU最多可带3个通信模块,而每个CM1241RS485通信模块最多支持16个变频器。因此用户在一个S7-1200CPU中最多可建立3个USS网络,而每个USS网络最多支持16个变频器,总共最多支持48个USS变频器。
5. 2 S71200PLC进行USS通信的编程
1.USS通信接口参数功能块的编程
USS通信接口参数功能块的编程如下图所示。
图7:USS通信接口参数功能块的编程
USS_PORT功能块用来处理USS网络上的通信,它是S71200CPU与变频器的通信借口。每个CM1241
RS485模块有且必须有一个USS_PORT功能块。
PORT:指的是通过哪个通信模块进行USS通信。
BAUD:指的是和变频器进行通行的速率。变频器的参数P2010种进行设置。
USS_DB:指的是和变频器通信时的USS数据块。每个通信模块最多可以有16个USS数据块,每个CPU最多可以有48个USS数据块,具体的通信情况要和现场实际情况相联系。每个变频器与S7-1200进行通信的数据块是唯一的。
ERROR:输出错误。
STATUS:扫描或初始化的状态。
S7-1200PLC与变频器的通信是与它本身的扫描周期不同步的,在完成一次与变频器的通信事件之前,S7-1200通常完成了多个扫描。
USS_PORT通信的时间间隔是S7-1200与变频器通信所需要的时间,不同的通信波特率对应的不同的
USS_PORT通信间隔时间。下图列出了不同的波特率对应的USS_PORT最小通信间隔时间。
图8:不同的波特率对应的USS_PORT最小通信间隔时间
USS_PORT在发生通信错误时,通常进行3次尝试来完成通信事件,那么S7-1200与变频器通信的时间就是USS_PORT发生通信超时的时间间隔。例如:如果通信波特率是57600,那么USS_PORT与变频器通信的时间间隔应当大于最小的调用时间间隔,即大于36.1Ms而小于109Ms。S7-1200USS 协议库默认的通信错误超时尝试次数是2次。