对于不能使用 CFC 功能“Chart > Read Back…” 回读的数据,如何从控制器中读出当前值?

发生此种情况的例子如下:

  • FB 静态参数

    程序中会用到 FB,其中重要的数据以静态参数的形式保存在 FB 中。这种情况的应用场合如:用于实现一个可调整状态的调节块。当设置或修改调节块时,其参数 (或状态模型) 发生变化。

  • FB的输出参数 (OUT)

    程序在控制器中循环执行。例如,可以使用一个计数器来记录程序当前执行的步数。条目 29238054中描述了如何在 FB36 (COUNT_P) 块基础之上创建一个新的 FB 块,并且该 FB 块能够把输出值 (V)和CFC中 "Read Back..."功能联系起来。

  • 全局数据块

    程序中会有基于全局 DB不同的功能块。例如,按照不同的工艺功能 (如加热或者冷却) 分别预置 PID 控制器的调整参数 (KP、TN、TV)。调整参数以数据记录的形式存储在全局 DB 中。用户程序中的对应逻辑将全局 DB 的相关变量写入控制器模块的参数输入端。

本条目内容描述了如何通过从“online”向“offline”复制数据块来保存 FB 的背景数据和全局 DB。

No. 步骤
1 执行数据备份
建议开始工作之前先对当前的项目进行备份。关于这方面的信息请参阅:

  • PCS 7在线帮助 "Help to PCS 7 > Configuration - Engineering System > Archiving and Documenting > Archiving/Retrieving Multiprojects and Project Master Data > Data Security and Backup".
  • 手册PCS 7 - Service Support and Diagnostics
2 确定背景 DB 的编号
FB 插入 CFC 图时,系统会自动分配背景 DB 的编号。您可通过下列方法确定背景 DB 的编号:

  • 在 CFC 中从“Properties - Block”对话框读出FB号
    打开 CFC,在 CFC 中左键选择 FB。右击鼠标打开弹出菜单并选择“Object Properties”菜单项,“Properties - Block”对话框随即打开。背景 DB 的编号位于“General”选项卡上“Instance DB:”条目的右边。记下此号。

    对于不能使用 CFC 功能“Chart > Read Back...” 回读的数据,如何从控制器中读出当前值?
    图. 01

    对所有要保存的背景数据块执行此步骤。

  • 在 CFC 功能“Chart Reference Data”中确定 FB 编号"
    打开一个 CFC并选择菜单项“Options > Chart Reference Data”,打开“Chart Ref: Display Chart Reference Data”。选择菜单项“View > S7 Resource Allocation”。按照 S7 源程序、块类型和源程序类型排序显示各项。
    为此,首先点击列标题“S7 resource”,随后依次点击列标题“Type”和“Resource type”。移动滚动条直到文本“Instance DB”出现在“Resource type”列为止,随后在“Type”列中即可显示相关的块类型。您可以使用该方法确定某个块类型的所有实例的关联背景 DB 的编号。

    对于不能使用 CFC 功能“Chart > Read Back...” 回读的数据,如何从控制器中读出当前值?
    图. 02

3从“ONLINE”块文件夹中选择和复制块
在 SIMATIC 管理器中通过菜单命令“View > Online”打开“Online”块文件夹。标记希望保存数据的所有背景 DB。使用交叉索引帮助进行选择。

注意
使用鼠标进行选择时可按住“CTRL”或“SHIFT”键同时标记多个块。

在选择的块上右击鼠标打开弹出菜单并选择“Copy”菜单项。

对于不能使用 CFC 功能“Chart > Read Back...” 回读的数据,如何从控制器中读出当前值?
图. 03

警告
如果全局DB从源S7程序的“Online”视图 (例如通过“Accessible Nodes”视图) 复制到“Offline”视图时没有附带符号信息,则符号信息丢失。这样的话,您下次进行编译时将得到出错消息,因为指向的是无效的符号。必须手工将符号输入。因此只能通过源S7 程序的“Online”视图执行复制程序。

4 在“OFFLINE”文件夹中插入块
切换到“OFFLINE”块文件夹。右击鼠标打开“OFFLINE”块的弹出菜单并选择“Paste”菜单项。现在,从“ONLINE”块文件夹中复制的文件已被插入“OFFLINE”块文件夹中。点击 "All" 确认关于覆盖现有块的消息框。

对于不能使用 CFC 功能“Chart > Read Back...” 回读的数据,如何从控制器中读出当前值?
图. 04

重复步骤3和4,直到复制了全部想要复制的块。

5 执行数据备份
建议对当前项目另外再做一份备份。
6

将拷贝的DB块下载到AS上
为了保证在以后的一次可能必需的冷启动后,在上步保存的"OFFLINE" BLOCK里的内容还能在主存储器里,它们至少要在主存储器里运行一次,条目18645578描述了在冷启动后数据块的动作。

注意

如果功能块在启动过程中将背景数据复制到一个特定程序设定值,必须在重新启动CPU后,装载保存在“blcok”文件夹里的“OFFIINE”数据块,例如“PCS 7 Standard Library”里的“FB36:COUNT”功能块在每次启动后将输出值复位至0。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc322590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论