电动机功率 | 3kW | 外形尺寸 | 6mm |
---|---|---|---|
应用领域 | 环保,食品/农产品,地矿,包装/造纸/印刷,纺织/印染 | 重量 | 5kg |
西门子S7-1500PLC 控制器产品系列中具有较大容量程序及数据存储器的 CPU,适用于具有较高程序范围和联网要求的苛刻应用。具有*处理速度,适用于二进制和浮点运算。用于系列机器、机器以及工厂中的跨领域自动化任务,在具有集中式和分布式 I/O 的生产线上作为集中式控制器使用。
![]() |
参考价 | ¥366 |
订货量 | 1 |
更新时间:2019-06-11 12:36:02浏览次数:255
联系我们时请说明是化工仪器网上看到的信息,谢谢!
山东西门子S7-1500PLC模块代理(欢迎您)
西门子S7基本通信SFC的公用参数的说明
(1)输入参数REQ
REQ(请求激活)是电平触发的控制参数,REQ为1时触发任务。
(2)输入参数REQ_ID
仅SFC 65和SFC 66使用REQ_ID来识别发送的数据。下列情况下,需要在接收端使用参数REQ_ID:
1)发送端的CPU用不同的REQ_ID调用几次SFC 65,将数据发送到同一个通信伙伴。
2)不同的CPU调用SFC 65,将数据发送到同一个通信伙伴。
根据REQ_ID可以将接收到的数据保存到不同的存储区。
(3)输入参数CONT
输入参数CONT(Continue,继续)的值如果为1(TRUE),表示任务完成后继续保持与通信伙伴的连接。如果要在两个站之间周期性地交换数据,可以令CONT为1。建立的连接可以用SFC 69“X_ABORT”来终止。
如果在调用SFC时令CONT=0,连接在数据传输完成后被终止,又可以使用该连接来与一个新的通信伙伴交换数据。这种方式可以确保只是在实际使用时才占用连接资源。
S7基本通信的系统功能(SFC)分为两类:
1) I_GET与I_PUT(见表9-2)用于CPU与同一个S7站的其他有通信功能的模块之间交换数据。SFC名称中的“I”表示内部。
2) X_SEND、X_RCV、X_GET与X_PUT用于S7 CPU与其他具有通信功能的模块之间交换数据,通信伙伴在同一个MPI子网内,但不是在同一个站内。块的名称中的“X”表示外部。用于S7基本通信的SFC可以在所有的S7 - 300/400 CPU上运行。
表9-2 用于S7基本通信的SFC
S7基本通信服务通过调用系统功能(SFC)和不需组态的S7连接进行数据交换,只能用于MPI网络。这些SFC可以访问所有S7和C7 PLC中的数据,发送多76 B的数据给MPI网络中的S7 PLC、HMI或PC。S7基本通信的SFC集成在CPU的操作系统中,并用SFC提供用户程序的软件接口。S7基本通信不能与其他子网中的站进行通信。
PG(编程器)通信和S7基本通信不需要对连接组态,这种连接也称为动态连接。通过通信块SFC 65~SFC 68的参数,通信伙伴的地址和触发通信的信号,并确定完成数据传输后该连接是继续保持或终止。
在同一时刻,一个不需要组态的连接只能用于一个通信伙伴,与不同的通信伙伴的连接可以一个接一个地建立和终止。完成与某一通信伙伴的数据传输后,可以连接其他通信伙伴,因此可以相继访问的通信伙伴的数量不受连接资源的限制。但是CPU同时建立的连接总数不能超过可以同时使用的大连接个数的限制。由于在通信过程中必须考虑连接的建立和断开,因此降低了网络的数据传输能力。CPU进入STOP模式时,所有已建立的连接被终止。
使用SFC 60“GD_SEND”和SFC 61“GD_RCV”,S7 - 400之间可以用事件驱动的方式发送和接收GD包,实现全局数据通信。应在全局数据表中组态用事件驱动方式发送的GD包,并将该GD包的扫描速率设置为0。
在SIMATIC管理器中新建一个项目,项目名称为“MPI_GD_B”。首先在SIMATIC管理器中生成两个站,它们的CPU均为CPU 413 -2DP,MPI站地址分别为2和3,将它们连接到MPI网络上。为两个站点生成数据块DB 1、DB 2和组织块OB100、OB35、OB87,在各数据块中生成一个数组。
打开网络组态工具NetPro,用鼠标右键点击MPI网络线,执行弹出的快捷菜单中的“定义全局数据”命令。用出现的GD表(见图9-8)对全局数据通信组态,将双方的ID0发送到对方的QD0。将双方的DB 1中的54B数据发送到对方的DB 2。
为了实现事件驱动的全局数据通信,将全局数据包GD2.1的扫描速率(SR2.1)设置为0。
SFC 60和SFC 61可以在用户程序中的任何一点被调用,全局数据表中设置的扫描速率不受调用SFC 60和SFC 61的影响。
SFC 60和SFC 61可能被更高优先级的块中断。为了保证全局数据交换的连续性,在调用SFC 60之前,调用SFC 41“DIS_AIRT”,来延迟处理更高优先级的中断和异步错误。执行完SFC 60后,调用SFC 42“EN_AIRT”,允许处理高优先级的中断和异步错误。
下面是2号站的CPU 413 -2DP的081中的程序,调用SFC 60发送数据包GD2.1。
程序段1:延迟处理高中断优先级的中断和异步错误
CALL”DIS_AIRT” //调用SFC 41
RET_VAL :=MW100 //返回的错误信息
程序段2:发送全局数据包GD 2.1
A I 0.0
FP M 1.0
JCN _001 //不是I0.0的上升沿则跳转
CALL “GD_SND” //调用SFC 60
CIRCLE_ID:=B#16#2 //组态时设置的GD环编号
BLOCK_ID :=B#16#1 //组态时设置的GD包编号
RET_VAL :=MW102 //返回的错误信息
-001: NOP 0
程序段3:允许处理高中断优先级的中断和异步错误
CALL “EN_AIRT” //调用SFC 42
RET_VAL :=MW104 //返回的错误信息
下面是3号站的081调用SFC 61接收数据包GD2.1的程序:
CALL“GD_RCV” //调用SFC 61
CIRCLE_ID :=B#16#2 //组态时设置的GD环编号
BLOCK_ID :=B#16#1 //组态时设置的GD包编号
RET_VAL :=MW106 //返回的错误信息
各CPU的OB100中,分别将DB 1中的发送区预置为16#4131和16#4132,将DB 2中的数据接收区清零。在OB35中,每100 ms将要发送的*个字DB1. DBW0加1。
将组态信息和程序分别下载到各CPU,然后用PROFIBUS电缆连接编程用的计算机和两台PLC的MPI接口。将两台CPU切换到RUN模式,CPU之间开始自动地交换全局数据。
图9-9~图9-11是系统运行时复制的各站点的变量表。进入RUN模式后,通信双方开始周期性地将ID0传送给对方的QD0,3号站周期性地将DB 1中的数据传送到2号站的DB 2。
图9-9 2号站的变量表
图9-10 刚开始进入RUN模式的3号站变量表
图9-11 事件触发数据发送后的3号站变量表
3号站的DB 2的前54 B数据被OB100初始化为0。在2号站的I0.0的上升沿调用SFC 60,将2号站的DB 1中的数据传送到3号站的DB 2。
图9-10和图9-11是I0.0*个上升沿触发数据发送之前和触发发送之后的3号站的变量表。2号站的DB 1的前54B的数据字被OB100初始化为16#4131,OB35将DB1.DBW0不断加1。在每次I0.0的上升沿,2号站的DB 1中的数据被发送给3号站的DB 2,3号站的DB2.DBW0的值才会变化。
山东西门子S7-1500PLC模块代理(欢迎您)