[西门子] 速看!西门子 S - 1200 PLC 运行模式下载指南

[复制链接]
查看148 | 回复0 | 2024-12-6 19:20:59 | 显示全部楼层 |阅读模式



S7-1200下载 但不重新初始化



S7 - 1200 下载但不重新初始化功能概述


S7 - 1200(V4 及以上版本)的 PLC CPU 具备一项强大功能,即在运行时能够对功能块(FB)或数据块(DB)的接口进行扩展。这意味着,在修改块内容后进行下载时,无需将 CPU 置于 STOP 模式,且不会影响块内其他已有数据。此功能极大地简化了程序更新流程,并且这种无需重新初始化的下载操作不会给控制过程带来负面影响。


工作原理剖析


  1. 默认内存分配与预留机制
    默认情况下,每个功能块(FB)和数据块(DB)都有专门为接口修改预留的内存区域,不过在初次使用时,这部分内存通常处于未占用状态。若计划在编译和下载块之后对接口进行修改,就需要先启用这个预留内存区。启用后,新声明的变量会存储于此,后续下载操作便不会改变已加载变量的值。

  2. 工厂停机期间的程序更新与存储器布局调整
    若在工厂停机期间更新程序,可以有选择性地重置一个或多个程序块的存储器布局。如此一来,块中的所有变量会从预留存储区转移至常规存储区,清除预留存储器后,可在后续接口扩展中重新使用。

启用 “无需重新初始化的下载” 功能的要求


若要使用 1200 CPU 的 “无需重新初始化的下载” 功能,需满足以下条件:


  1. 使用 S7 - 1200 V4 及更高版本的 CPU。

  2. FB 块需使用 LAD、FBD 或 SCL 创建。

  3. DB 块由用户创建,且 FB 或 DB 必须是 “优化访问” 类型。


启用 “无需重新初始化的下载” 功能的要求

若要使用 1200 CPU 的 “无需重新初始化的下载” 功能,需满足以下条件:

  1. 使用 S7 - 1200 V4 及更高版本的 CPU。

  2. FB 块需使用 LAD、FBD 或 SCL 创建。

  3. DB 块由用户创建,且 FB 或 DB 必须是 “优化访问” 类型。




设置块扩展预留储存器



预留存储器简介


每个功能块(FB)或数据块默认被分配 100 字节的预留空间,此空间不在块的保持性存储区域内,因为保持性存储区域由 CPU 直接使用,默认不设预留空间。项目可按需调整每个块的预留空间大小,这种调整会影响新创建的块。同时,也能为特定块在保持性存储区域设置预留空间,并单独修改其大小。


设置新块中预留存储器的大小

若要为项目中所有新创建的块设置预留存储器大小,操作步骤如下:

  1. 在 “选项” 菜单中选择 “设置” 命令,工作区会显示 “设置” 窗口。

  2. 在区域导航中选择 “PLC 编程> 常规” 组。

  3. 在 “下载但不重新初始化” 选项组内,于 “存储器预留” 输入框中输入所需字节数,为块接口后续扩展分配预留存储器。新创建的功能块(FB)和全局数据块(DB)会被分配指定大小的预留存储空间,已存在的块不受此更改影响。需注意,只有支持 “下载但不重新初始化” 功能的块才受此存储器预留设置影响。

1.为所有新创建的块设置预留存储器的大小


设置现有块中预留存储器的大小

若要设置现有块中预留存储器大小,步骤如下:

  1. 在项目树中选择该块,右键快捷菜单中选择 “属性” 命令,打开 “属性” 对话框。

  2. 在浏览区选择 “下载但不重新初始化” 组,在 “预留的存储空间大小” 输入框中输入所需字节数。若要在保持型存储器中设置预留区域,需勾选 “启用下载,但不重新初始化保持性变量” 选项,并在 “预留可保持性存储器” 文本框中指定字节数量。注意,一旦为某个块设定了预留存储器,其大小无法修改

2.设置现有块中预留存储器大小






激活存储器预留区域





简介

每个FB块或数据块都有一个默认的存储器预留区域分配给它,然而这个存储器预留区域在最初并没有使用。若已编译并加载块,但之后需要加载接口更改,可以启用存储器预留区域。在此之后声明的所有变量都将存储在存储器预留区域。


要求

  1.  块目前已被编译。

  2. 块包含存储器预留区域。


步骤

若要为FB块或全局数据块激活存储器预留区域,请按以下步骤操作:

  1.  打开块。

  2. 选择工具栏上的"下载但不重新初始化"按钮。


结果

  1. 所有新声明的变量都会保存在存储器预留区域中,这使得在进行下载操作时不会影响正在运行的进程。

  2. 一旦变量被声明并保存在存储器预留区域中,通常就无法删除这些变量。除了可以更改的属性如"默认值"、"起始值"和"注释"之外,其它属性一般不能再进行修改。

3.激活存储器预留区域






扩展接口或数据块




扩展简介


激活 FB 块或全局数据块的预留存储器后,可添加新变量。


步骤

  1. 要求:预留存储器已激活。

  2. 步骤:在声明部分(如 “Input”“Output”“InOut” 或 “Static”)选择区域,声明一个或多个变量并输入其属性。在 FB 的 “保持性” 列中只能选择 “保持性” 或 “非保持性”,预留存储器中不支持 “在 IDB 中设置” 选项。无法向结构化数据类型变量添加新变量,但可在预留存储器中创建新结构。编译变更的块(在项目树中选择该块,快捷菜单中选择 “编译 > 软件(仅变更)” 命令)时,新声明的变量将插入预留存储器。若预留存储器容量不足,编译会因错误终止并显示消息。下载变更的块(在项目树中选取该块,快捷菜单中选择 “下载到设备 > 软件(仅变更)” 命令)时,仅初始化有初始值的新增变量,不会重新初始化现有在线变量。

4.预留存储器过小,编译将终止






禁用存储器预留区域




禁用简介

禁用预留存储器后,需要重新编译并重新加载块。此外,禁用存储器预留区域后,将无法执行“无需重新初始化的下载”操作。这意味着您需要重新初始化块并重新加载程序,以确保所有的变量都得到正确的初始化,并且能够正确地运行在工厂的运行过程中。这样做是为了避免潜在的错误和安全风险。


禁用要求与步骤

  1. 要求:块中的预留存储器已激活。

  2. 步骤:打开块,选择工具栏上的 “下载但不重新初始化” 按钮。

禁用结果

通过这个操作后,之前存储在预留区域所有的变量,会被移至常规区域。在禁用存储器预留区域后,需对块进行重新编译并再次加载。在加载期间,CPU中的变量值将会重新初始化。

5.取消存储器预留区域






重置预留储存器




重置简介

若决定在工厂未运行时修改程序,重置块的存储器布局是个不错选择。这可将所有变量从预留存储器移至常规存储区域,为接口扩展腾出空间,确保预留存储器清除,为未来修改和扩展提供更多灵活性

重置要求和步骤

要重置一个或多个块的预留存储器,按照以下步骤操作:

  1. 要求:块中的预留存储器已激活,且包含有变量。

  2. 步骤:找到并选择包含需重置程序块的文件夹或特定块,在快捷菜单中选择 “编译” 选项,再选择 “软件(复位存储器预留区域)” 命令。


重置结果

所选块存储在预留存储器中的变量转移至常规区域,块重新编译。下次加载时,变量重新初始化,组态的预留存储器仍保持活动状态,供未来接口扩展使用。需注意,重置预留存储器后,下次加载时存储器中的所有变量(包括保持性和非保持性变量)都会重新初始化。在工厂运行过程中修改预留存储器中的变量可能导致重大经济损失和人身安全问题,因此重置后必须在测试环境中彻底检验程序,确保无误后再投入使用,保障工厂安全稳定运行。


6.重置预留存储器



重置预留存储器后,下次加载时,存储器中的所有变量,无论是保持性的还是非保持性的,都将重新初始化。要知道,在工厂运行期间修改预留存储器中的变量,极有可能导致严重的经济损失,甚至危及人身安全。所以,一旦完成预留存储器的重置,务必先在测试环境中对程序进行全面、细致的检查,确认无误后,方可重新投入使用,以此保障工厂安全、稳定地运营,这对于确保工厂运行的安全性、稳定性以及整个工厂的安全稳定运行至关重要。



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则