前言
步骤概述 1
用于PROFIBUS CP的“PROJECT
PROFIBUS”STEP 7实例 2
通过 SEND/RECEIVE接口进行通讯
...在S7站之间 3
...在S7站和S5站之间 4
DP模式
S7--300作为DP主站和DP从站 5
FMS模式
在FMS连接上进行通讯 6
A 用于PROFIBUS的NCM S7
入门手册
SIMATIC NET
长沙工控帮教育科技有限公司整理
有关安全的各类注意事项
本手册包括了保证人身安全与保护本产品及连接的设备所应遵守的注意事项。这些注 意事项在手册中均以三角形警告符号加以突出,并根据危险等级标明如下:
!
危险表示如果不采取适当的预防措施,将导致死亡或严重的人身伤害。!
警告表示如果不采取适当的预防措施,可能导致死亡或严重的人身伤害。!
当心带三角形:表示如果不采取适当的预防措施,可能导致轻微的人身伤害。当心
不带三角形:表示如果不采取适当的预防措施,可能造成财产损失。
须知
表示如果忽略相关注意事项,可能会导致非预期的结果或状态。
注意
强调有关产品、产品使用的重要信息,或强调文档中特别重要的、有利于用户的部
长沙工控帮教育科技有限公司整理
分。商标
SIMATICR、SIMATIC HMIR和SIMATIC NETR是SIEMENS AG的注册商标。
本文档中的其它一些标志也是注册商标,如果任何第三方出于个人目的而使用,都会 侵犯商标所有者的权利。
产品安全指南:
在使用本手册所述产品之前,请通读下列安全指南。
合格人员
只有合格人员才允许安装和操作该设备。合格人员是指被授权按照既定安全惯例和标 准,对线路、设备和系统进行调试、接地和标记的人员。
正确使用硬件产品
请注意如下事项:
!
警告本设备及其部件只能用于产品目录或技术说明书中所描述的范畴,并且只能与由西 门子公司认可或推荐的第三方厂商提供的软件、设备或部件一起使用。只有正确地运输、保管、设置和安装本产品,并且按照推荐的方式操作和维护,产 品才能正常、安全地运行。
在使用提供的程序实例或者自己编写的程序之前,请确保不会在设备或过程中造成 人身伤害或设备损坏。
EU规范:除非已确定使用本组件的设备符合89/392/EEC规范,否则不可启动设备。
正确使用软件产品
请注意如下事项:
!
警告本软件只能用于产品目录或技术说明书中所描述的范畴,并且只能与由西门子公司 认可或推荐的第三方厂商提供的软件、设备或部件同时使用。在使用提供的程序实例或者自己编写的程序之前,请确保不会在设备或过程中造成 人身伤害或设备损坏。
长沙工控帮教育科技有限公司整理
启动前的注意事项
在启动前,请注意下列事项:
当心
在启动前,请注意最新文档中的信息,并遵守相关说明。可在相关目录中查看该文 档的订购信息,或与当地西门子办事处联系。
长沙工控帮教育科技有限公司整理
前言
在系统中安装SIMATIC S7 CP,并使其得到最佳运用。
本入门手册将帮助您熟悉用于PROFIBUS的NCM S7 (S7 CP组态工具) 的使用方法。以NCM所带的组态和程序实例为基础,我们将向您介绍在 SIMATIC S7 CP上优化使用用于PROFIBUS的NCM S7的典型步骤。
本入门手册的目的 如何实现这些目的 您可以在短时间内学会如何有效地
使用该产品
在合适的系统组态中,使用产品的 自带程序实例、按照手册中说的步 骤执行。
只需多花点时间,您就可了解如何 最有效地使用该产品
首次组态、编写自己的应用程序 时,请参照手册中的说明进行。
您应熟悉STEP 7的基本知识,换句话说,应了解下列内容:
S 如何使用STEP 7
S STEP 7提供了哪些软硬件管理功能 S 如何操作项目
本入门手册的目标用户为安装人员、STEP 7编程人员及维修人员。
本入门手册适用于NCM S7 V5.2版以上组态软件,以及STEP 7 V5.0版 以上软件。
目的
如何实现目的
要求
使用对象
手册范围
长沙工控帮教育科技有限公司整理
欲知有关STEP 7文档及产品的详细信息,请参考附带的“用于 PROFIBUS的NCM S7”手册。
欲知有关安装用于PROFIBUS的NCM S7软件的详细信息,请参考自述 文件。
注意
请注意,用于PROFIBUS的NCM S7的自述文件中可能含有本入门手册 中阐述的程序实例的更详细信息。
本入门手册所使用的约定如下:
S 需要参考其它手册和文档时,以斜杆中的数字(/.../)表示,这些数字代表 附录中所列出的手册的标题。
S 需要执行的动作以符号“n”表示。
- 详细信息
约定
长沙工控帮教育科技有限公司整理
步骤概述
以“PROJECT PROFIBUS”组态实例和程序实例为基础,本入门手册将在下面的章节中指导您 执行下列步骤:
FDL
第3章S7<-->S7
建议“离线”创建所有系统数据。
以后可以随时更改、保存和下载这 些数据。可以以STEP 7项目为基 础。
1.创建/打开项目
2.配置、联网硬件
3.组态通讯服务
4.编写用户程序
指定系统组件。根据以下章节的列表 作出选择:第3、4和第5章。
将控制任务转换成S7用户程序。
例如,可以使用STL表示法。
5.启动/诊断
如果出现问题,可使用STEP 7/STL 和NCM诊断在线工具对S7站点进行 检查。
第2章
“PROJECT PROFIBUS”
FDL
第4章S7<-->S5
第5章DP S7<-->S7
第6章FMS S7<-->S7
S
第3、第4章:FDL连接
S
第5章:DP主站系统
S
第6章:FMS连接
1
长沙工控帮教育科技有限公司整理
不过,按入门手册中的步骤逐步执行将使您收获更大。 提示
可以跳过您已了解的功能。
长沙工控帮教育科技有限公司整理
“PROJECT PROFIBUS”
用于PROFIBUS CP的STEP 7实例
本章介绍如何使用带有通讯实例所需要的组态和程序的“PROJECT PROFIBUS”。
本章将帮助您:
S 了解如何创建带CP的项目 S 了解组态时所涉及的所有步骤
要求:
具有STEP 7实践知识、STL编程经验、PLC的基本知识。
欲知有关组态软件其它功能的详细信息,请参考相应的手 册。本章还包括特定手册的参考信息。
目录:
-- 创建/打开项目 10 -- 配置、联网硬件 13
2
长沙工控帮教育科技有限公司整理
1. 创建/打开项目
2. 配置、联网硬件 在该STEP 7项目中,对用户程序和
S7站图像进行管理。
安装好NCM S7可选软件后,项目实例位于STEP 7项目文件夹中,例如文件夹 C:\SIEMENS\STEP7\EXAMPLES\PROJECT--PROFIBUS。
如果要使用S7文件夹中的项目,请按照下列步骤执行:
n
启动SIMATIC管理器。n
使用文件"打开" 项目...,打开附带的项目实例PROJECT--PROFIBUS。从此处显示的程序实例开始,可以继续进 行后续章节中所描述的步骤。
项目实例中包含一个PROFIBUS子网。如果要创建新的或更多 的PROFIBUS子网,或要创建其它项目,请
n
选择菜单命令插入"...
"...
手册 /2/
第1卷 第2章
详情请参见长沙工控帮教育科技有限公司整理
如果要创建PROFIBUS项目实例的工作版本
n
请使用菜单命令文件" 另存为,在所希望的任意文件夹中创建项目实例的副本。下表列出各个站的组态。该表同时还指出可直接使用多少项目实例,以及要如何调整实例。
站 CP类型 PROFIBUS
地址
通讯对象站 描述
SIMATIC 300 站(1)
CP 342-5 2 SIMATIC 300
站(2) 使用CP 342--5,通过SEND/RECEIVE 接口进行通讯。
数据双向传输。使用AG_SEND和 AG_RECV功能。
SIMATIC 300 站(2)
CP 342-5 6 SIMATIC 300 站(1)
SIMATIC 300 站(3)
CP 342-5 8 S5站(1) 使用CP 342--5,通过SEND/RECEIVE 接口进行通讯。
用户程序根据CP 5431程序实例进行调 整。
SIMATIC S5(1) CP 5431 4 SIMATIC 300 站(3)
SIMATIC 300
DP主站 CP 342-5 10 SIMATIC 300
DP从站 使用DP协议与CP 342--5进行通讯。
DP主站中的用户程序将“输出数据”传 送到DP从站,并从DP从站读取输入数 据。
SIMATIC 300
DP从站 CP 342-5 12 SIMATIC 300 DP主站 FMS客户机
S7-400站 CP 443--5 基本型
14 FMS服务器
S7-400站 使用CP 443--5基本型在FMS连接上进 行通讯。
FMS客户机中的用户程序在FMS服务器 上读、写具有各种结构的数据(变量)。
FMS服务器
S7-400站 CP 443--5 基本型
16 (无自发性)
长沙工控帮教育科技有限公司整理
已经创建了一个组态
如果已经创建了一个组态,且只想在CPU中使用程序实例,请按照下列步骤执行:
n
将项目实例中的站的程序实例(S7程序容器)复制到现有项目的CPU中。请确保不要重叠块。n
请确保根据下列说明,对硬件配置、联网和所组态的连接进行调整。小结 -- 第1步“创建项目”:
已经创建了一个STEP 7项目 -- 可在其中组态系统
-- 还可在其中创建、保存用户程序。
长沙工控帮教育科技有限公司整理
1. 创建/打开项目
2. 配置、联网硬件
S系统中包含哪些组件?
S
这些组件是如何连接到网络中的?
上述过程完成后,应该已将硬件配置下载到站 中。
n
如果从现有的组态实例开始,在将组态下载到PLC之前,
应先了解组态概况。STEP 7提供了十分便捷的方法,帮 助用户总览组态。您可如下操作:
S 在HW Config中显示硬件配置 S 显示站总览
S 使用NetPro来显示站的网络连接图
n
在SIMATIC管理器中,双击项目中的“PROFIBUS(1)”对象。这会打开项目视图。
从该显示画面中,可以启动配置硬件和连接需要的所有步骤。
提示
“下载”主题参见第
19页。
手册 /2/
第1卷 第2章
详情请参见长沙工控帮教育科技有限公司整理
如图中所示,
S 所选择的CPU的连接表显示在画面下方。
S 如果将鼠标指针指向代表节点接口的符号,则显示有关网络连接的信息。
可以识别出下列状况:
所示CP 443-1具有PROFIBUS地址和MPI地址。例如,在需要通过NCM PROFIBUS诊断功能、
经CPU的MPI连接取得有关CP的诊断信息时,将需要此MPI地址。
CPU仅显示MPI地址。
如果要修改网络地址
可以调用PROFIBUS节点的属性对话框。在视图中双击网 络节点,可以打开此对话框。例如,当在网络中所组态的 PROFIBUS地址正被其它站使用时,有必要修改地址。
在HW Config中显示组态 -- 此处以SIMATIC 300站(1)为基础
n
在视图中选择SIMATIC 300站(1);然后选择编辑" 打开对象。将会看到硬件配置。以后对
SEND/RECEIVE接口编程时,将需要此模 块起始地址。
提示
可以在“
FDL连接属性”对话框中查看用户程序中 所需要的十六进制表达式,参见第
27页。
详情请参见
手册 /2/
第1卷 第2.2.4节
长沙工控帮教育科技有限公司整理
如需查看某个所显示的模块的组态详情,
n
可将光标放到该模块上,例如CP 342--5,然后选择编辑" 对象属性。长沙工控帮教育科技有限公司整理
在HW Config中调整配置
如果硬件配置与实例所需要的配置不匹配,现在可更改条目。例如,可进行如下更改:
S 将模块移到其它插槽中。
-- 连接的配置仍保留。
-- 用户程序可能需要根据新的模块地址进行调整。
S 工作时不使用仿真模块
为此,删除插槽4中的仿真模块。
S 使用其它CP类型 输出站总览
使用STEP 7的打印功能来创建用户的系统文档。可从HW Config中打印输出下列文档:
S 整个站
S 所选择的模块
所选用的CP模块的打印输出如下所示(实例):
长沙工控帮教育科技有限公司整理
有关站联网的更详细信息
使用内置的打印功能,可以轻松地获取现有网络连接组态的总览。
实例中的组态网络的打印输出显示如下:
长沙工控帮教育科技有限公司整理
检查网络设置:调整站的传输率和总线配置文件
在STEP 7项目中和在PROJET--PROFIBUS以外组态的其它站(例如实例 2中的S5站)的数据库 中,传输率和总线配置文件也必须相匹配。
在STEP 7项目中,传输率和总线配置文件在PROFIBUS子网的属性对话框中进行组态。
n
双击所示总线电缆,即可打开PROFIBUS网络属性对话框。长沙工控帮教育科技有限公司整理
要将硬件配置下载至PLC 请按照下列步骤执行:
n
使用MPI电缆将PG连接到CPU的MPI接口。n
根据所需要的连接类型,设置PG/PC上的接口。n
在Windows控制面板中选择PG/PC接口,使其与PG上可供使用的CP相匹配,并与总线连接相 匹配。n
选择菜单选项PLC"下载。STEP 7将通过其它对话框,引导用户获得所需要的结 果。
小结 -- 第2步“配置、联网硬件”:
已经完成了下列工作:
1. 组态了STEP 7项目中的S7站
2. 将S7站分配给了PROFIBUS子网并分配了地址。
3. 将组态下载给了两个S7站。
提示
要检查可通过
MPI访问的节点,可使 用“可访问节点”功能。
在项目实例中,显示了下列内容:
MPI=2(
直接
) -->适用于
CPU MPI=3 -->适用于
CPSTEP 7帮助系统 详情请参见
手册 /2/
第1卷 第2.2.8节
长沙工控帮教育科技有限公司整理
通过SEND/RECEIVE接口在S7站之间进行通讯
可以通过SEND/RECEIVE接口在已组态的FDL连接上进行数据交换。
本章介绍为了在FDL连接上实现一个简单的通讯任务,组态、编程时所需 要的步骤。
本章将帮助您:
S 了解组态所包括的步骤。
S 了解下载、启动过程。
S 熟悉SEND/RECEIVE调用接口。
S 以实例程序为模板,创建PLC程序。
要求:
具有STEP 7实践知识、STL编程经验、PLC的基本知识。
欲知此处所采用的通讯类型的属性的详细信息,或者组态 软件所提供的其它功能的详细信息,请参考相应的手册。
手册的前言部分给出了可用文档的总览。本章还包括特定 手册的参考信息。
目录:
3.1 任务 21
3.2 系统组态 22
3.3 实例剖析 24
-- 组态FDL连接 25
-- 创建用户程序 31
-- 启动/诊断 38
3
长沙工控帮教育科技有限公司整理
3.1 任务
发送和接收数据
程序实例中所介绍的通讯任务已经刻意简化。
S 控制器(SIMATIC 300站(1))处理过程数据。
S 它与其它设备(SIMATIC 300站(2))进行通讯,例如委托一个控制作业。服务器(SIMATIC 300 站(2))返回响应数据。
下图说明程序的工作过程:
SIMATIC 300站(1)
评估接收到的数据
时间 时间
过程数据 处理
接收并处理作业 SIMATIC 300站(2)
发送响应数据(4字节) 发送作业数据(4字节)
在实例任务中传送的作业和响应数据都是4个字节长。
长沙工控帮教育科技有限公司整理
3.2 系统组态
结构
附带的实例项目要求使用下列系统组态(可以进行修改/替换 --> 请参见下页):
S7-300站1
PROFIBUS
装有STEP 7的PG/PC
MPI接口S7-300站2
as300
MPI接口 PS CPU314 SIM CP
342-5
PS CPU314 SIM CP 342-5
长沙工控帮教育科技有限公司整理
所需要的设备/资源
如果想不作修改就使用程序实例,需要使用下列组件。
所需数量 类型 订货号:
2 装有CPU 314的S7-300可编程控制器 参见目录ST 70
2 CP 342-5 6GK7 342-5DA02-0XE0
1)2 DI/DO仿真模块 6ES7 323-1BL00-0AA0
1 传输路径 参见/7/
1 编程设备(PG/PC),装有
S
STEP 7软件,V5.2以上版本
S
用于PROFIBUS的NCM S7可选软件V5.2以上版本,
或NetPro可选软件。
S
MPI连接
S
作为PROFIBUS上的PG/PC模式的可选项:用于 PROFIBUS连接的CP --> 诊断/安装/维护
参见目录ST 70
1) 较新版的模块通常在功能上是兼容的;可以不作修改就将实例项目的组态数据装载到模块 中。请阅读CP手册中有关兼容性和设备更换的相关内容!
可选方法:
可以根据实际情况调整组态实例。可能的更改包含下列内容:
S 用S7-300来替换S7-400
也能使用S7-400站来替换S7-300站。在这种情况下,例如,使用CP 443-5。
配置硬件时,必须作适当的修改。
S 使用不同的CPU类型 S 不使用仿真模块
只需对用户程序略作修改,从而不输出到仿真模块。还必须调整地址(CP组态)。这时,可通过 在PG上显示数据块来监视通讯。
S 使用其它输入/输出模块
这可能意味着更改了模块地址。
S 更改机架中的模块的次序。
对于某些CPU型号,这还会改变模块地址。
长沙工控帮教育科技有限公司整理
须知
如果改变了组态中的模块地址,必须同时调整用户程序和已组态的连接。
3.3 实例剖析
本说明以所创建的项目和所组态的站为基础。“创建项目”和“配置、联网硬件”步骤已在第2章 描述过。
1.创建/打开项目 2.配置、联网硬件 3.组态FDL连接 4.编写用户程序 5.启动
n n
第2章第3.3节/以及后续页
速成办法
如果您的系统组态和实例中所选择的组态一致,就可以通过第3和第4步,将实例数据直接下载到 S7站中!
不过,按入门手册中的步骤逐步执行将使您收获更大。
提示
可跳过已经了解的功能。
第
2章介绍有关“下载”的主题。
长沙工控帮教育科技有限公司整理
1.创建/打开项目 2.配置、联网硬件 3.组态FDL连接 4.编写用户程序 5.启动
为了完成各种通讯任务,各CPU需要哪 些通讯连接?
完成后,应该已将连接组态下载到了站 中。
n n
在SEND/RECEIVE接口上进行通讯使用已组态的FDL连 接。因此,下一步是将连接表下载到站中。
不过,首先要通过下列方法获取组态实例的总览:
S 检查NetPro连接表中的已组态连接。
检查连接表中的连接
n
切换回SIMATIC管理器,并在所需要的站中选择CPU。提示
第
30页介绍有关“下载”的详细信 息。
详情请参见
手册 /2/
第1卷
第6章
长沙工控帮教育科技有限公司整理
n
请先选择“连接”对象,然后选择编辑" 打开对象。连接表就会显示。
或者
n
通过选择网络,直接跳转到NetPro视图。可在此选择连接属性 可在此选择“更改伙伴”。
可以清楚地看出下列情况:
当前已将一个FDL连接组态到伙伴站SIMATIC 300站(2)。
更多的连接
在此总览中,可以为这个伙伴站或者其它伙伴站组态更多的连接。
n
要在连接列表中插入一个新的连接,可选择菜单命令插入"连接。连接
注意
通过选择各个站,可以总览项目中 所有的站和已组态的连接。
长沙工控帮教育科技有限公司整理
如有需要,可以如下选择其它连接参数
n
可在连接表中双击连接,选择连接属性。可在此为连接指定适合设备或过程的名称。
0001是用户程序中FC调用接 口上所使用的连接ID。
A000是FDL连接ID。
n
现在切换至“地址”标签页。取消
一个项目中的各个S7站之间的连接所用的“地址”标签页中的信息通常不需要进行修改。
长沙工控帮教育科技有限公司整理
在“总览”标签页,可以获得更多关于连接或连接组态的信息。
取消 帮助
如果在“本地ID”域中输入了“!”,表示在“状态”域中有更多的相关信息。根据表头设置,
该域可能会隐藏。使用箭头键,可以平行移动该表格。
在此例中,连接当前正处于编辑状态。
长沙工控帮教育科技有限公司整理
如果要编址其它的通讯伙伴
n
可选择菜单选项编辑" 更改连接伙伴,或双击连接表中“连接伙伴”列中的连接,选择“更 改连接伙伴”对话框。n
如有必要,可在“站”域中选择不同的连接伙伴。长沙工控帮教育科技有限公司整理
要将连接组态下载至PLC 请按下列步骤执行:
n
如果在连接组态中更改了设定,可使用连接表" 保存菜单命令,保存所作的修改。n
在连接表中选择有MPI连接的站。n
选择菜单命令PLC" 下载。n
关闭连接表。注意
也可以通过“在PROFIBUS上的PG”下载连接组态。为此,必须先通过MPI下载硬 件配置(节点初始化)。
n
连接MPI到第二个站。n
如果要改变第2个站的现有组态,请对第二个站重复第2步“配置、联网硬件”和第3步“组态 FDL连接”。小结 -- 第3步“组态FDL连接”:
已经完成了下列工作:
1. 组态了两个S7站之间的FDL连接 2. 将连接组态下载到了两个S7站中
注意:
在下载过程中,会提示是否将
RAM中的内容复制到
ROM中。如果要防 止意外断电,请回答“是”。
STEP 7帮助系统
文件 编辑 插入 PLC
详情请参见
手册 /4/
长沙工控帮教育科技有限公司整理
1.创建/打开项目 2.配置、联网硬件 3. 组态FDL连接 4.编写用户程序 5.启动
-- 如何为SEND/RECEIVE接口提供 数据?
-- 状态位是如何计算的?
完成后,应该已将用户程序下载到了站 中。
n n n
用户程程程序序序的任务
现在,必须将第3.1节中所描述的任务转化为合适的可编程控制器程序。
执行 ,或将程序下载到S7站中
n
在PROJECT-PROFIBUS项目中,在所需要的 SIMATIC 300站内,选择带有程序块的容器。更好地查看总览
n
应该先打印出程序块,然后再检查。下一页包含通讯所需要的FC的总览。提示
第
37页含有有关“下载”的更详细 信息。
长沙工控帮教育科技有限公司整理
表中将显示各种类型的OB与FC块所处理的各种任务。
S7站1任务 S7站2任务 程序块中的任务说明
正在处理过程数据 模拟更改过程值:
OB100
提供数据块DB30和DB31。过程值保存在这些数据块中。
OB1
协调程序序列。
FC29
周期性地增、减数据字。增、减时间间隔都为3秒。
FC30 / FC5 (AG_SEND)
数据字作为当前过程值(作业)传送到站2。
接收并处理作业 接收并进一步处理作业数据:
OB100
提供数据块DB30和DB31。过程值保存在这些数据块中。
OB1
协调程序序列。
FC31 / FC6 (AG_RECV)
将接收到的数据保存到数据块中,并将这些数据输出到过程 仿真器。
FC30/FC5 (AG_SEND)
将这些数据作为作业确认值返回到站1。
评估所接收的数据 FC31 / FC6 (AG_RECV) 确认接收和评估作业。
将过程参数输出到仿真模块。
须知
可以从STEP 7的SIMATIC NET块库中为模块选择、使用最新版本的通讯块(FC5/
FC6)。
如果正在使用旧版本的模块类型,则只有使用了该模块类型的最新版固化程序时,
才能使用此功能。
长沙工控帮教育科技有限公司整理
程序序列
在实例中,组织块将在两个S7站中产生下列程序序列:
AG_SEND OB1
图例: CPU周期序列
AG_RECV
FDL连接
FC30
FC31 FC29 OB100
-- 增量 减量/ 数据字
启动
周期性执行
-- 生成数据块DB30和 DB31
AG_RECV FC31
AG_SEND FC30
OB1 OB100
SIMATIC 300站(1) SIMATIC 300站(2)
-- 生成数据块 DB30和 DB31
长沙工控帮教育科技有限公司整理
编程通讯功能(FC)
有两个功能(FC)可处理在FDL传输连接上进行的通讯,具体内容如下:
S AG_SEND (FC5)
该块将用户数据从指定的用户数据区传送到用于传输的 PROFIBUS CP上。
S AG_RECV (FC6)
该块将所接收到的用户数据输入到调用过程所指定的用 户数据区中。
实例中的用户程序是用STL方法编写的。例如,在SIMATIC 300站(1) (客户端)中调用AG_SEND 和AG_RECV时的参数分配如下:
STL 注释
call fc 5
ACT := M 50.0
ID := 1
LADDR := W#16#0110
SEND := P#db30.dbx1.0 byte 240,
LEN := 4
DONE := M 1.2 ERROR := M 1.3 STATUS := MW 200
//AG_SEND块调用 //作业触发位 //连接ID
//硬件配置中的LADDR272十进制 //要要要传送送送的的的数数数据据据区区区
// 发 的的的长度(4字节) //返返返回回回参参参数数数DONE的存储位 // ERROR 存储位 // STATUS的存储字
STL 注释
call fc 6
ID := 1
LADDR := W#16#0110
RECV := P#DB31.DBX 1.0 BYTE 240 NDR := M1.0
ERROR := M1.1 STATUS := MW202 LEN := MW10
//AG_RECV块调用 //
//连接ID
//硬件配置中的模块地址512十进制 //用用用于于于接收数据的数据区
// 返返返回回回参参参数数数NDR的存储位
// ERROR的存储位
// STATUS的存储字
//接收数据长度区
如要查看这些FC以及其它OB和FC的完整代码,请查看项目实例的打印输出内容。
详情请参见
手册 /2/
第1卷
第7.3节
长沙工控帮教育科技有限公司整理
自动设置块参数
为了确保能够正确设置块调用参数,STEP 7中的LAD/STL/FBD编辑器为用户提供了“从硬件配 置中接受所有相关参数”和“从连接组态中接受相关参数”选项。
当在用户程序中为块分配参数值时,请执行下列步骤:
n
选择块调用及其块参数;n
使用鼠标右键选择“连接...”菜单命令。n
根据模块类型,现在可以从列表中选择用于块或模块的连接。n
确认所作的选择;如有可能,在块调用中输入可用的参数值。扩展程序实例
可以通过包含如下更多的功能来扩展实例程序,或以后扩展您自己的应用程序:
S 评估AG_SEND和AG_RECV功能的结果代码,允许在系统中对特定状态或错误作出发应。
S 根据结果代码,有条件地初始化通讯调用,例如,只有通过接收调用收到了作业确认后,才能 再次在客户端上触发发送调用。
n
评估AG_SEND的参数DONE、ERROR和STATUS,并评估AG_RECV的参数NDR、ERROR和STATUS。
可如下评估这些参数:
关于返回值的更详 细资料请参见
手册 /2/
第1卷 第7.3节
长沙工控帮教育科技有限公司整理
作业
无错地完成 激活 因出错而终止
必须由用户程序处理的典型的错误代码 (STATUS):
8302
H连接伙伴上缺少资源
8311
H目标站不可(尚不可)用(例如,由于 启动原因)
80C3
H资源被占用(由于S7 400达到最大负载) 80D2
H模块起始地址出错(例如,在移动一个
模块后,忘记更改地址)。
DONE/NDR = 1 ERROR = 0 STATUS = 0
DONE/NDR = 0 ERROR = 0 STATUS = n
DONE/NDR = 0 ERROR = 1 STATUS = x
当n = 8302
H作业激活 8181
H无已接收的数据
不使用仿真模块的实例
如果不想使用仿真模块,只需要取消激活SIMATIC 300站(1)和2上的FC31块的输出
“T QW ...”。
然后,通过在STEP 7/STL中在线显示数据块,可继续执行程序。
长沙工控帮教育科技有限公司整理
将用户程序下载至PLC 请按下列步骤执行:
n
将CPU切换为STOP或者RUN-P。n
在SIMATIC管理器中,在合适的站内选择“块”容器。n
使用菜单命令PLC
" 下载,下载整个程序(除STB外)。n
将CPU切换为RUN-P或RUN。n
对其它站重复下载过程。小结 -- 第4步“创建用户程序”:
已经完成了下列工作:
1. 根据两个S7站的任务说明,创建了用户程序 2. 扩展了程序实例,例如,通过评估状态代码来实现 3. 将用户程序下载到了两个站的CPU中。
结果:
如果正在使用仿真模块,现在应该看到,仿真模块或输出模块上的LED显示灯正在工作。
如果无法检测到任何通讯,可执行下列步骤:
n
在STEP 7/STL中在线检查程序序列。检查是否正在将尚在变化的数据字输出到仿真模块中。n
继续进行下一步,并使用PROFIBUS诊断工具检查通讯。注意:
在
RUN-P模式下,因为
CPU周期处 于工作状态,所以块次序非常重 要。请确保只在启动时执行
OB100。
STEP 7帮助系统 详情请参见
手册 /4/
长沙工控帮教育科技有限公司整理
1.创建/打开项目 2.配置、联网硬件 3.组态FDL连接 4.编写用户程序 5.启动--诊断
使用PROFIBUS诊断功能,可 以检测通讯问题。
n n n n
n
例如,使用如下所示诊断功能,检查站和FDL连接的状 态。S PROFIBUS节点
FDL连接是否已经建立?
站的状态如何?
S 诊断缓冲区
诊断缓冲区条目说明了什么?
S FDL
FDL连接的状态如何?
帧是否已经传送?
发送成功的有多少?
发送出错的有多少?
详情请参见
手册 /2/
第1卷
第8章
长沙工控帮教育科技有限公司整理
在S7和S5站之间,通过SEND/RECEIVE接口 进行通讯
在第一个例子中,我们说明了为了在FDL传输连接上实现一个简单的通讯 任务而进行组态、编程时所需要的步骤。
在本章,我们将说明通过“非S7”站进行通讯时所出现的(少量)差异。这 些站通常被称为“其它站”。
本章中的通讯任务与第一个实例中的通讯任务相同。唯一的改变是在系 统组态中将S7站替换为S5站。
以第1章为基础,用户将了解下列内容:
S 如何在STEP 7项目中处理“非S7站”
S 如何处理到“非S7站”的STL连接 要求:
具有STEP 7实践知识、了解STL语句表、具有可编程控 制器基本知识、具有SIMATIC S5实践知识。
目录:
4.1 更改的系统组态 40 4.2 实例剖析 42 -- 创建项目 43 -- 配置、联网硬件 44 -- 组态FDL连接 47 -- 创建用户程序 49
4
长沙工控帮教育科技有限公司整理
4.1 系统组态
在第3.2节所显示的系统组态中,S7站2替换为SIMATIC S5站(可以修改/替换 --> 请参见 第3.2节):
PROFIBUS (SINEC L2网络)
装有STEP 7的PG/PC
MPI接口as300
带CP 5430/31的 SIMATIC S5 SIMATIC 300站(3)
CPU314 SIM CP 342--5
AS 511
所需要的设备/资源
如果想不作修改就使用附带的程序实例,则需要下列组件。
所需数量 类型 订货号
1 SIMATIC S7-300可编程控制器 参见目录ST 70
1 CP 342-5 DP 6 GK 7342--5DA02--0XE0
1)1 DI/DO仿真模块 6 ES 7323--1BL00--0AA0
1 SIMATIC S5可编程控制器 参见目录ST 52.3、ST 54.1
1 CP 5431 6 GK1 543--1AA01
1) 较新版的模块通常在功能上是兼容的;可以不作修改就将项目实例的组态数据装载到模块 中。请阅读CP手册中有关兼容性和设备更换的相关内容!
长沙工控帮教育科技有限公司整理
所需数量 类型 订货号
1 传输路径 参见/7/
1 编程设备(PG/PC),装有
S
STEP 7 V5.2以上版本
S
用于PROFIBUS的NCM S7可选软件V5.2以上版本。
S
STEP 5和NCM COM 5430/5431软件
S
MPI连接
S
作为PROFIBUS上的PG/PC模式的可选项:用于 PROFIBUS连接的CP --> 诊断/安装/维护
在S5站上,可以使用随NCM COM 5430/5431组态工具所带的程序实例。根据硬件配置(CPU型 号等)情况,可以选择合适的程序实例。欲知详情,请参考
手册 /11/
第 第 第7.3节
16章
长沙工控帮教育科技有限公司整理
4.2 实例剖析
下面的实例以已创建的项目和已组态的站为基础。“创建项目”和“配置、联网硬件”两个步骤 已经在第2章中介绍过。
1. 创建项目 2. 配置、联网硬件 3. 组态FDL连接 4. 创建用户程序 5. 启动
n n
第2章第4.2节/以及后续页
速成办法
如果您的系统组态和实例中所选择的组态一致,就可以通过第3和第4步,将实例数据直接下载到 S7站中。
不过,按入门手册中的步骤逐步执行将使您收获更大。
提示
可跳过已经了解的功能
第
2章介绍有关“下载”的主题。
长沙工控帮教育科技有限公司整理
1. 创建项目
2. 配置、联网硬件 3. 组态FDL连接 4. 创建用户程序 5. 启动--诊断-- 附加说明:
S5站通过
NCM COM 5431进行管理。
管理S7站:
在CP 5431程序实例中使用数据库文件,并用COM 5431组态工具进行编辑。
NCM COM 5431
使用CP 5430/31的 SIMATIC S5的 组态环境
数据库文件:QAGAG.xxx
手册
/11/
第 第 第7.3节
16章
详情请参见:小结 -- 第1步“创建项目”:
1. 已经在STEP 7中创建了项目,可在其中组态S7站,并保存相应的用户程序。
2. 已经为S5站创建了数据库文件,可在其中保存CP组态数据。
长沙工控帮教育科技有限公司整理
1. 创建项目 2. 配置、联网硬件 3. 组态FDL连接 4. 创建用户程序 5. 启动
附加说明:
-- 必须在STEP 7项目中包含该S5站,并 且联网该站。
-- S5和S7 PLC的PROFIBUS地址和总线 参数必须相匹配。
n
在STEP 7项目中组态S7站
请按照第2章中所描述的步骤执行。
管理S5站:
欲知关于管理组态数据和程序(实例)的信息,请参见 其中提供了关于使用S5工具的信息。
将S7站和S5站联网,并通过FDL传输连接访问站
必须在STEP 7项目中包含“S5站”。在项目实例中,已经创建了一个“SIMATIC S5”型站。
手册 /11/
第16章
长沙工控帮教育科技有限公司整理
现在,对站进行联网
S7站的联网方法与第一个实例中的方法相同。这里主要要关注的是如何将SIMATIC S5站联网。
3. 使用SIMATIC管理器,在项目中选择S5站。
4. 使用编辑"对象属性菜单选项,或双击工具栏上的按钮,
选择对象属性对话框。
5. 切换到“节点”标签页。
n
为了查看S5站使用了哪 个PROFIBUS地址进行 访问,可选择FROFIBUS站,并单击
“属性”按钮。
匹配站的传输率和总线配置文件
还必须在STEP 7项目和数据库中为S5站的PROFIBUS CP组态匹配的传输率和总线配置文件。
在STEP 7项目中,传输率(波特率)和总线配置文件是在PROFIBUS子网的属性对话框中进行组 态的。
S5
长沙工控帮教育科技有限公司整理
在COM 5431中联网站2 (S5)
必须在S5站的网络组态中调整下列参数:
n
选择一个匹配的传输率。在组态实例中,将 PROFIBUS网络的传输率设为1.5 Mbps。n
选择一个匹配的PROFIBUS地址。在组态实例中,将 S5站地址设为“4”。n
指明要修改全部联网数据,然后,在将组态数据下载到 S5站之前,使用网络文件AGAGQNCM.NET匹配网 络。将硬件配置下载至PLC
要将组态数据下载到S7站中,请执行下列步骤 S 对于S7站,请按照第2章所描述的步骤进行。
S 对于S5站,请参见 ...
小结 -- 第2步“配置、联网硬件”:
已经完成了下列工作:
1. 已经在STEP 7项目中组态了S7站
2. 已经将S7站分配给了PROFIBUS子网,并分配了地址 3. 已经将组态下载到了S7站
4. 已经使用NCM COM 5430/5431调整了S5站的网络组态
现在,S7站已准备就绪,您可以组态通讯连接,并下载用户程序。
手册 /11/
第16章
长沙工控帮教育科技有限公司整理
1. 创建项目 2. 配置、联网硬件 3. 组态FDL连接 4. 创建用户程序 5. 启动
附加说明:
S5和S7 PLC的连接参数必须匹 配。
n n
在STEP 7项目中为S7站(3)创建FDL连接 按第一个实例中所描述的步骤执行:
S 显示连接表中的组态连接 S 将组态连接下载到PLC中 检查/组态连接参数
在地址标签页中,调整LSAP设置,使其与S5站中的组态相匹配。只有这样,才能正确地标识连 接的本地端点,以便成功地建立连接。
n
打开S7站中的CPU的连接表n
双击连接表中的连接,选择连接属性。n
切换到“地址”标签页。长沙工控帮教育科技有限公司整理
要创建或调整S5站FDL连接 必须确保已正确调整连接组态。
n
使用“连接编辑器FDL连接”来调整连接端点SSAP和DSAP,使下列适用:SSAP (S5) = LSAP 远程 (S7) DSAP (S5) = LSAP 本地 (S7)
在实例中,为两个LSAP选择数值“5”。
COM 5430/5431 连接编辑器FDL连接
SSAP = 5 DSAP = 5
将连接组态下载至PLC
要将组态数据下载到S7站中,可执行下列步骤:
S 对于S7站,请执行第2章所描述的步骤。
S 对于S5站,请参见
小结 -- 第3步“组态FDL连接”:
已经完成了下列工作:
1. 在S5上已组态FDL连接:(FDL连接)在S7 站S5站之间。
手册 /11/
第7章
手册 /11/
第16章
长沙工控帮教育科技有限公司整理
1. 创建项目 2. 配置、联网硬件 3. 组态FDL连接 4. 创建用户程序 5. 启动
附加说明:
-- 在S5端使用了OB、FB和HDB
n n n
用户程序的任务
下表不仅显示了现已熟悉的S7站中的块,还显示了S5站中的OB类型和FB类型的块。这些块负责 接收来自S7站的作业数据,并进行处理。
S7站中的任务 S5站中的任务 程序块任务说明
处理过程数据 模拟更改过程值:
OB100
提供数据块DB 31。过程值保存在此数据块中。
OB1
协调程序执行。
FC29
周期性地增、减数据字。增、减时间间隔都为3秒。
FC30 / FC5 (AG_SEND)
本数据字作为当前过程值(作业)传送到站2。
接收并处理作业数据 正在接收和处理作业数据:
OB1
协调程序序列。
FB101 (HDB-RECEIVE)
将接收到的数据保存到数据块,并将其输出到过程仿真器 中。
FB10 (HDB-发送)
将数据作为作业确认返回到站1。
评估所接收的数据 FC31 / FC6 (AG_RECV) 确认接受和评估作业。
将过程数据输出到仿真模块。
须知
可以从STEP 7的SIMATIC NET块库中为模块选择、使用最新版本的通讯块(FC5/
FC6)。
如果正在使用旧版本的模块类型,则只有使用了该模块类型的最新版固化程序时,
才能使用此功能。
长沙工控帮教育科技有限公司整理
程序序列
在实例中,OB块将在两个站中组织下列程序序列:
AG_SEND OB1
图例: CPU周期序列
AG_RECV
FDL连接
FC30FC31 FC29 OB100
-- 增加/
减小数据字
启动
周期性执行
-- 生成数据块DB30和DB31
HDB--RECEIVE FB101
HDB-SEND FB10
S7站 S5站
OB20 / 21 / 22 FB111
HDB--SYNC
OB1
HDB--CTRL
HDB--CTRL
长沙工控帮教育科技有限公司整理
要处理或者下载S7站的程序
请按照第2章中的步骤执行。第2章中关于程序扩展的信息,例如,评估调用状态代码,在此同样 适用。
对于S5站
应该按照如下的方法来调整程序,以便获得所需要的序列:
n
在FB10中,将HDB-SEND调用中所使用的地址从DB 20改为DB 22,意味着将接收数据返回 到S7站。这可在S7站上通过LED显示器指示。n
如果在启动过程中CP 5431不同步,可能是因为OB20不正确所引起的。将OB21的内容复制 到OB20,以便正确调用HDB SYNC。使用程序文件AGAGT2ST.S5D。
须知
请确保S5站中的特定CPU使用了正确的HDB。
实例中需要下列对象:
HDB-SYNC HDB-CTRL HDB-SEND HDB-RECEIVE
小结 -- 第4步“创建用户程序”:
已经完成了下列工作:
1. 按照两个站的任务来创建用户程序
2. 扩展了程序实例,例如包含了对状态代码的评估 3. 将用户程序下载到了两个站的CPU中。
结果:
如果使用了仿真模块,现在应该在仿真模块上看到LED显示器正在工作。
n
在STEP 7/STL (监视块)中在线检查程序序列。检查步骤与STEP 5中的SIMATIC S5 PLC程 序的检查步骤相同。n
使用NCM PROFIBUS诊断检查通讯;请参见第一个实例。-
长沙工控帮教育科技有限公司整理
PROFIBUS上的DP模式
S7-300作为DP主站和DP从站
PROFIBUS DP允许与分布式外围设备进行简单、良好的数据交换。
PROFIBUS CP允许SIMATIC S7-300作为DP主站和“智能化”DP从站 进行操作,基于PROFIBUS CP这个实例,本章将介绍如何使用STEP 7 组态和编程DP主站系统。
本章将帮助您:
S 了解DP模式组态的步骤
S 了解DP主站和DP从站的DP调用接口 S 可将程序实例作为创建PLC程序的基础
要求:
具有STEP 7实践知识、STL编程经验、PLC使用经验、
DP的实践知识。
欲知此处所采用的DP功能属性的详细信息,或者组态软件 所提供的其它功能的详细信息,请参考相应的手册。手册 的前言部分给出了可用文档的总览。本章还包括特定手册 的参考信息。
目录:
5.1 任务 53
5.2 系统组态 54
5.3 实例剖析 56
-- 组态DP主站模式 57
-- 创建用户程序 61
-- 启动/诊断 67
5
长沙工控帮教育科技有限公司整理
5.1 任务
发送和接收数据
与前面的章节一样,已刻意选择了一个简单的通讯任务:
S 可编程控制器(SIMATIC 300DP主站)处理过程数据。
S 输出数据到一个智能外围设备(SIMATIC 300 DP从站)中,在此外围设备中,进一步处理过程数 据,并输出到进程中。DP从站读入的过程数据返回到DP主站。
下列示意图解释了这种情况,并解释了用户程序是如何工作的。
SIMATIC 300 DP主站
写输出数据
计算接收到的数据
时间 过程数据处理
SIMATIC 300 DP从站
读输入数据
准备输出数据
输出数据
准备输入数据 输入数据
CP CP
读/写DP
长沙工控帮教育科技有限公司整理
5.2 系统组态
结构
附带的项目实例要求使用下列系统组态(可以进行修改/替换 --> 请参见下页):
PROFIBUS
装有STEP 7的PG/PC
MPI接口as300
MPI接口
SIMATIC 300
DP主站 SIMATIC 300
PS CPU314 SIM CP 342-5
DP从站
PS CPU314 SIM CP 342-5长沙工控帮教育科技有限公司整理
所需要的设备/资源
如果想不作修改就使用程序实例,需要使用下列组件
所需数量 类型 订货号
2 带CPU 314的S7-300可编程控制器 参见目录ST 70
2 CP 342-5 DP 6GK 7342-5DA02-0XE0
1)2 DI/DO仿真模块 6ES 7323-1BL00-0AA0
1 传输路径 参见/7/
1 编程设备(PG/PC),装有
S
STEP 7 V5.2以上版本软件
S
用于PROFIBUS的NCM S7 V5.2以上版本的可选软 件。
S
MPI连接
S
作为PROFIBUS上PG/PC模式的可选项:用于 PROFIBUS连接的CP -->
诊断/安装/维护
参见目录ST 70
1) 较新版的模块通常在功能上是兼容的;可以不作修改就将程序实例的组态数据装载到模块 中。请阅读CP手册中有关兼容性和设备更换的相关内容!
可选方法:
可以根据实际组态调整组态实例。可能的修改方法如下:
S 使用不同的CPU类型 S 不使用仿真模块
只需对用户程序略作修改,以便不输出到仿真模块。这时,可通过在编程设备上显示数据块来 监视通讯。
S 使用其它输入/输出模块
这可能意味着,更改了模块地址。
S 更改机架中的模块的次序。
对于某些CPU型号,这还会改变模块地址。
注意
如果改变了组态中的模块地址,必须调整用户程序的块调用地址。
长沙工控帮教育科技有限公司整理
5.3 实例剖析
下列说明以所创建的项目和所组态的站为基础。“创建项目”和“配置、联网硬件”步骤已在第 2章描述过。
1.创建项目 2.配置、联网硬件 3.组态DP主站系统 4.创建用户程序 5.启动
n n
第2章第5.3节/以及后续页
速成办法
如果您的系统组态和实例中所选择的组态一致,就可以通过第3和第4步,将实例数据直接下载到 S7站中!
不过,按入门手册中的步骤逐步执行将使您收获更大。
提示
可跳过已经了解的功能。
第
2章将介绍有关“下载”的主 题。
长沙工控帮教育科技有限公司整理
1.创建项目 2.配置、联网硬件 3.组态DP主站系统 4.创建用户程序 5.启动
-- 如何创建DP主站系统?
-- DP主站可使用哪些DP从站 寻址哪些输入输出域?
n n
DP主站系统组态的关键是设置PROFIBUS CP模式。更精确地说,CP在站名中采用的模式。
以“DP主站”和“DP从站”这两种S7站实例为基础,设置DP模式 按如下步骤,选中或改变设置:
n
在S7站2组态表中选择PROFIBUS CP。n
选择编辑"对象属性。取消 帮助
DP从站
DP主站
长沙工控帮教育科技有限公司整理
在下列情况下,必须选择“模块是PROFIBUS上的激活节点”功能 S 还要使用FDL连接或S7连接
S 需要PG功能(例如,诊断)。
将DP从站、从站模块分配给DP主站
一旦配置了硬件,必须告知DP主站所连接的DP从站的配置情况。
当STEP 7项目中的DP从站已配置和联网时,这将会非常简单。
然而,首先需了解DP主站系统的组态实例概况:
n
打开要作为DP主站使用的S7站的硬件配置。从连接到CP的DP主站系统,立刻可以看出CP 342-5 已组态为DP主站。
对于DP从站,组态了一个用于数据输入的通用模块和一个用于数据输出的通用模块,长度各为 10个字节。
详情请参见
手册 /2/
第1卷 第5.4.1节
长沙工控帮教育科技有限公司整理
DP模块可从硬件配置中单个地选中。
n
首先选择已创建的DP从站;在屏幕的下部,可以查看DP从站的组态表。n
在硬件目录中选择条目“PROFIBUS-DP/已组态站/S7-300 CP342-5 DP”。可以查看通用模 块的相关条目,如果需要可以拖动到组态表中。创建DP主站和DP从站
在组态实例中,已有一个DP主站系统。本节将简单介绍如何实现组态。
首要的要求是,已经在站中组态了具有主站功能的PROFIBUS CP,并想将它作为主站。可使用 集成了DP功能的CPU。
通过将PROFIBUS CP的模式设置为DP主站,一定会有一个“框架”符号 显示 在组态表中,以便组态DP主站系统。
如果现在需要按相同的步骤和组态PROFIBUS CP为DP从站,请确保这些DP从站已输入在硬件 目录中,如上所示。
长沙工控帮教育科技有限公司整理
将硬件配置下载至PLC
请按第2章中所列出的步骤执行。
小结 -- 第3步“组态DP主站系统”:
已经完成了下列工作:
1. 在STEP 7项目中,组态了DP主站系统,将SIMATIC 300 DP从站作为一个“智能化”
DP从站
2. 检查了站的工作模式 3. 将组态下载到了两个S7站中
现在,站已经准备就绪,可以下载用户程序。
长沙工控帮教育科技有限公司整理
1.创建项目 2.配置、联网硬件 3.组态DP主站系统 4.创建用户程序 5.启动
-- 如何向FC接口 提供数据?
-- 状态代码是如何评估的?
n n n
用户程程程序序序的任务
现在,必须将第5.1节中所描述的任务转化为合适的PLC用户程序。
编辑 或将程序下载到S7站中
n
在PROJECT--PROFIBUS项目所需要的SIMATIC300站 内,选择包含有程序块的容器。更好地查看总览
n
应该打印程序块并仔细地检查它们。下页显示了如何向FC提供用于DP通讯的数据的总览。提示
“下载”主题参见第
66页。
长沙工控帮教育科技有限公司整理
下表显示了OB和FC型的程序块以及它们所处理的任务。
S7站1任务 S7站2任务 程序块中的任务说明
正在处理过程数据 模拟更改过程值:
OB100
提供数据块DB30和DB31。过程值保存在这些数据块中。
OB1
协调程序序列。
FC29
周期性地增、减数据字。增、减时间间隔都为3秒。
FC1 (DP_SEND)
本数据字作为当前过程值(作业)传送到站2。
接收和处理输出数据 并输出到进程
接收和处理输出数据:
OB100
提供数据块DB10和DB11。过程值保存在这些数据块中。
OB1
协调程序序列。
FC2 (DP_RECV)
将接收到的数据保存到数据块中,并将这些数据输出到过程 仿真器。
FC1 (DP_SEND)
将数据作为作业确认返回到站1。
计算接收数据 FC2 (DP_RECV)
接收并计算由DP从站发送的输入数据(过程数据):
将过程数据输出到仿真模块。
注意
可以从STEP 7的SIMATIC NET块库中为模块选择、使用最新版本的通讯块(FC5/
FC6)。
如果正在使用旧版本的模块类型,则只有使用了该模块类型的最新版固化程序时,
才能使用此功能。
长沙工控帮教育科技有限公司整理
程序序列
在实例中,组织块将在两个S7站中产生下列程序序列:
DB10
DB10 DB11
DP_SEND
DB11DP_SEND OB1
图例:
CPU周期序列
DP_RECV FC29 OB100
-- 增加/
减小 数据字
启动
周期性执行
-- 生成数据块DB10和 DB11
DP_RECV OB1 OB100 S7站1
DP主站 S7站2
DP从站
读/写DP
-- 生成数据块 DB10和 DB11
长沙工控帮教育科技有限公司整理
用于DP模式的FC块编程
有两个功能(FC)可处理DP模式,具体内容如下:
S DP_SEND (FC1)
该块将指定的DP输出域的数据传送到
PROFIBUS CP,以便输出到分布式外围设备I/O上。
S DP_RECV (FC2)
该块在指定的DP输入域中接收分布式外围设备I/O的过 程数据和状态信息。
实例中的用户程序是用STL方法编写的。下列实例显示了在“主站”S7站 (DP主站)中,DP_SEND和DP_RECV的调用参数分配。
STL 注释
call fc 1
CPLADDR := W#16#0110
SEND := P#db11.dbx0.0 byte 10, DONE := M 1.2
ERROR := M 1.3 STATUS := MW 206
//DP_SEND块调用
//硬件配置中的的的模块地地地址址址272十进制 //要传送的数据区(10字节) //参参参数数数DONE的返回地址 // ERROR 返回 // STATUS的返回地址
STL 注释
call fc 2
CPLADDR := W#16#0110
RECV := P#DB10.DBX 0.0 BYTE 10 NDR := M1.0
ERROR := M1.1 STATUS := MW200 DPSTATUS:= MB202
//DP_SEND块调用
//硬件配置中的的的模块地地地址址址272十进制 //接收数据的的的数据区(10字节) //参参参数数数NDR 返回地址 // ERROR 返回 // STATUS的返回地址 // DP-STATUS的返回地址
要获取这些FC和其它OB和FC的完整代码,请参见项目实例打印。
详情请参见
手册 /2/
第1卷 第7.3节
长沙工控帮教育科技有限公司整理
扩展程序实例
通过采用更多如下功能,可扩展程序实例,或以后扩展用户应用程序:
S 评估DP_SEND和DP_RECV功能的结果代码,对系统中的特定状态或错误作出响应。
S DP_DIAG和DP_CTRL功能的使用。通过DP_DIAG,可以从DP从站请求诊断信息。通过 DP_CTRL,可以从用户程序向PROFIBUS CP发送控制作业。
n
评估DP_SEND的参数DONE、ERROR和STATUS,并评估DP_RECV的参数NDR、ERROR和STATUS。
可如下评估这些参数:
作业
无错地完成 激活 因出错而终止
必须由用户程序处理的典型的代码 (STATUS),
例如:
80D2
H模块起始地址不正确(例如,在移动 一个模块后,忘记更改地址)
DONE/NDR = 1 ERROR = 0 STATUS = 0
DONE/NDR = 0 ERROR = 0 STATUS = 8180
DONE/NDR = 0 ERROR = 1 STATUS = x
不带仿真模块的实例
如果不想使用仿真模块,只需取消激活DP主站和DP从站上的FC31块的输出“T QW ...”
然后,通过在STEP 7/STL中在线显示数据块,可监督程序执行。
欲知更多关于返回 值和FC的详细信
息,请参见...
手册 /2/
第1卷 第7.3节
长沙工控帮教育科技有限公司整理
将用户程序下载至PLC 请按照第2章中的步骤执行。
小结 -- 第4步“创建用户程序”:
已经完成了下列工作:
1. 已根据任务说明为DP例如,评估状态代码 主站和DP从站创建了用户程序 2. 扩展了程序实例,例如采用了状态代码评估
3. 将用户程序下载到了两个S7站中 结果:
如果正在使用仿真模块,现在应该看到,仿真模块上的LED显示灯正在工作。
如果无法检测到任何通讯,请执行下面的任何一个步骤:
n
在STEP 7/STL中在线检查程序序列。检查是否正在将尚在变化的数据字输出到仿真模块中。n
继续进行下一步,并使用PROFIBUS诊断工具检查通讯。长沙工控帮教育科技有限公司整理
1.创建项目 2.配置、联网硬件 3.组态FDL连接 4.创建用户程序 5.启动--诊断
n n n n
使用PROFIBUS诊断功能,可以 检测通讯问题。
n
例如,使用下列诊断功能功能来检查站和DP模式的 状态。S PROFIBUS节点 站的状态?
S 诊断缓冲区
诊断缓冲区条目说明了什么?
S DP主站
DP主站或DP主站模式的状态是什么?
S DP从站
DP从站提供什么诊断数据?
详情请参见
手册 /2/
第1卷
第8章
长沙工控帮教育科技有限公司整理
通过FMS连接进行通讯
FMS连接允许在通过PROFIBUS进行通讯的设备之间传送结构化数据,
并支持FMS标准。
本章介绍为了在FMS连接上实现一个简单的通讯任务而进行组态、编程 时所需要的步骤。
本章将帮助您:
S 了解与组态(连接和变量组态)有关的步骤 S 了解如何下载和启动
S 了解FMS调用接口
S 可将程序实例作为创建PLC程序的基础 要求:
具有STEP 7实践知识、STL编程经验、PLC使用经验。
欲知此处所介绍的通讯特征的详细信息,或者组态软件所 提供的其它功能的详细信息,请参考相应的手册。手册的 前言部分给出了可用文档的总览。本章还包括特定手册的 参考信息。
6.1 任务和系统设置 69
6.2 实例剖析 71
-- 组态FMS连接 72
-- 组态FMS变量 79
-- 创建用户程序 82
-- 启动/诊断 89
6.3 报告变量
-- 提示和信息 91
6
长沙工控帮教育科技有限公司整理
6.1 任务和系统设置
发送和接收“常规”数据
已选择了实例程序所示的通讯任务,因此可以演示用户程序中的调用接口和访问变量(FMS客户 端)以及变量组态:
S “FMS客户端S7-400站”在“FMS服务器S7-400站”中读取并写入变量。
PROFIBUS
装有STEP 7和用于PROFIBUS的NCM S7的PG/PC
MPI接口MPI接口
FMS客户端 S7-400站
FMS服务器 S7-400站
S7-300
读变量 写变量
FMS作业
更多特征:
以非周期性模式主站-主站通讯的方式实现通讯,换句话说,通讯作业由通过用户程序发送的作业 触发一次。
数据的结构,如下页: