0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S7-1200有关组态控制的重要信息介绍

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-08-21 09:50 次阅读

工作原理

在 S7-1200 的固件版本为 4.1 或更高版本时,组态控制可用于组态控制系统的结构并且有助于使用与该组态不同的变型(选项)。

一系列相似设备单元或机器所需的所有模块都在具有最大组态的主项目(全站组态方式)中进行组态。

在主项目的用户程序中,包含有适用于不同设备单元或机器的各种站组态方式,以及站组态方式的选件。例如,某种站组态方式仅使用一部分已组态的模块,而且这些模块以不同的顺序插入。

操作员可根据现场特定的设备选择某种站组态方式。他们无需修改项目,因此也无需下载修改后的组态。

9e360294-3f3d-11ee-ac96-dac502259ad0.png

在启动程序中编程的控制数据记录会通知 CPU 哪些模块缺失以及哪些模块所在的插槽不同于预设组态。组态控制对模块的参数分配没有影响。

组态控制为用户提供了灵活性,只要实际组态不超过预设的最高组态,就可以改变集中式安装。

下文将介绍如何激活组态控制(CPU 参数分配)以及如何构造所需的数据记录。

要求

STEP 7 版本 V13 SP1 或更高版本

CPU S7-12XX 固件版本 V4.1 或更高版本:支持“组态控制”功能的模块还在硬件目录的说明(信息文本)中提供“组态控制”(Configuration control) 条目。

建议:在装载带有修改后的控制数据记录的新程序前,请执行存储器复位。此操作可以防止因存在不兼容的控制数据记录而造成状态不一致。

启动参数“比较预设组态与实际组态”设置为“即使不一致也启动 CPU”(默认设置)。

所需步骤

在“组态控制”(Configuration control) 区域组态 CPU 时启用“允许通过用户程序重新组态设备”(Allow to reconfigure the device via the user program) 参数。

9e616bf0-3f3d-11ee-ac96-dac502259ad0.png

根据以下描述的控制数据记录示例,按照当前组态创建控制数据记录(例如在数据块中)。控制数据记录的编号为 196。如果要将控制数据记录以整块的方式传送到 WRREC 指令(输入参数 RECORD)中,则需注意,需要先创建一个包含控制数据记录结构的 PLC 数据类型,并将该数据块定义为此 PLC 数据类型。

9e6e1a08-3f3d-11ee-ac96-dac502259ad0.png

在启动程序中将控制数据记录传输到 CPU。

对于集中插入的模块,仅当 CPU 的操作模式从 STOP 更改为 RUN 后,组态控制才会生效。因此,请在启动 OB 中调用扩展的 WRREC(写入数据记录)指令,将创建的控制数据记录传输到 CPU;请参见下一章节。

如果在启动 OB 中未传输有效的控制数据记录,则控制未做好运行准备。在这种情况下,CPU 从启动状态恢复到 STOP 状态。

在启动程序中传输控制数据记录

CPU 处理 WRREC 指令以便异步传输控制数据记录。因此,必须在一个循环内,在启动 OB 中重复地调用 WRREC,直到输出参数“BUSY”或“DONE”指出数据记录已传输。

提示信息:请使用 SCL 编程语言和 REPEAT ... UNTIL 指令编程此循环。

REPEAT

"WRREC_DB"(REQ := "start_config_control",

ID := 33,

INDEX := 196,

LEN := "conf_LEN",

DONE => "conf_DONE",

BUSY => "conf_BUSY",

ERROR => "conf_ERROR",

RECORD := "ConfDB".ConfigControl,

STATUS => "conf_STATUS");

UNTIL NOT "conf_BUSY"

END_REPEAT;

下表中列出了组态控制中需指定特定值的块参数。有关其它块参数,另请参见“WRREC”:

参数 说明
ID 硬件标识符,对于集中排列模块的组态控制,始终为 33(十进制)。
INDEX 数据记录编号,对于集中排列模块的组态控制,始终为 196(十进制)。
RECORD 要传输的控制数据记录。
参见“控制数据记录”部分的控制数据记录结构。
提示信息:WRREC 指令(V1.1 以及更高版本)块参数“RECORD”的数据类型为“VARIANT”,因此需要带数据类型的变量。如果将控制数据记录存储在数据块中,那么此数据块必须具有数据类型。所创建的数据块不得是“全局 DB”类型,更确切地说,它必须属于用户数据类型。
请按以下步骤操作:
首先创建一个具有控制数据记录结构的新 PLC 数据类型(用户数据类型),并为其命名,例如命名为“ConfDB”。
创建一个新数据块。选择新创建的用户数据类型(如“ConfDB”),作为该数据块的类型。

在图形编程语言中,使用程序控制指令实现循环。

FBD 中的示例:使用 LABEL(跳转标签)和 JMP(RLO=1 时跳转)指令编写循环。

9e930548-3f3d-11ee-ac96-dac502259ad0.png

模块的排列

下表列出了插槽号的分配:

插槽 模块 说明
1 信号板、通信板、电池板 CPU 前端的插槽
2 - 9 信号模块 CPU 右侧的插槽
101 - 103 通信模块 CPU 左侧的插槽

控制数据记录

将包含插槽分配的控制数据记录 196 定义为用于组态控制。

下列代码适用:

0 模块包括在硬件配置中,但在当前组态中未使用。
1 到 9,101 到 103 模块的当前插槽
16#FF (255) 在硬件配置中,模块并不位于此插槽中。
字节 元素 代码 说明
0 块长度 4 + 插槽数 标头
1 块 ID 196
2 版本 5 (用于集中式 I/O)
3 子版本 0
4 CPU 扩展板的分配 扩展板,0 或 16#FF 控制元素
每个元素分别为设备中与已组态插槽对应的实际插槽。下面说明了控制元素的结构。
5 分配的已组态插槽 2 实际插槽,0 或 16#FF
... ... ...
12 组态的插槽 9 的分配 实际插槽,0 或 16#FF
13 组态的插槽 101 的分配 实际插槽或 16#FF 相比于信号模块,通信模块的实际插槽必须对应已组态的插槽。
14 组态的插槽 102 的分配 实际插槽或 16#FF
15 组态的插槽 103 的分配 实际插槽或 16#FF

控制元素的结构

控制元素包含有关哪个模块插入哪个插槽的信息。

字节编号代表按升序排列的已组态插槽(参见上文):

字节 4 代表扩展板的已组态的插槽

字节 5 到 9 代表已组态的插槽 2 到 9

字节 13 到 15 代表已组态的插槽 101 到 103

在相应字节中输入指定值,具体取决于以下规则:

如果模块在实际组态中存在,则输入模块的实际插槽编号。

示例 1:组态为插入插槽 2 的模块位于插槽 2。

在字节 5(= 组态的插槽 2)中输入值 2(= 实际插槽)。

示例 2:组态为插入插槽 3 的模块位于插槽 2。

在字节 6(= 组态的插槽 3)中输入值 2(= 实际插槽)。

如果模块已组态,但在实际结构中缺少此模块,则在所组态插槽对应的字节中输入 0。

如果模块在硬件配置中并未位于此插槽,则在所组态插槽对应的字节中输入 16#FF (255)。

规则

请遵守以下规则:

组态控制不支持通信模块位置的调整。控制数据记录中插槽 101 到 103 对应的插槽条目必须与模块的实际位置相符或者必须在硬件配置中通过输入 16#FF (255) 定义为不存在。

组态中不允许存在插槽间隙。例如,如果在实际组态中将信号模块插入插槽 4,则实际组态中插槽 2 和 3 必须也被占用。这同样适用于插槽 101 到 103。如果在实际组态中将通信模块插入插槽 102,则在实际组态中插槽 101 内也必须插入一个通信模块。

如果启用了组态控制,没有控制数据记录 CPU 将不工作。如果在启动 OB 中未传送有效的控制数据记录,则 CPU 将从启动模式返回到 STOP 模式。此时,不会对集中式 I/O 进行初始化。CPU 转入 STOP 操作模式的原因将保存在诊断缓冲区中。

要对 WRREC 指令寻址,请使用硬件标识符 33(十进制,适用于 ID 块参数)写入控制数据记录。

控制数据记录始终保存在 CPU 中,因此在重新启动时如果组态没有发生变更则无需重新写入控制数据记录 196。在调试前,建议对 CPU 执行存储器复位,以删除存在的任何控制数据记录。

CPU 将忽略不在预设组态中的控制数据记录中的插槽条目。

在控制数据记录中,每个实际插槽只能记录一次。

只能将实际插槽分配给一个已组态的插槽。

说明
修改过的组态
使用修改后的组态对控制数据记录执行写入操作时将导致 CPU 触发以下自动反应:
存储器在后续启动时使用这个修改后的组态进行复位。
因此始终保存的原始数据记录 196 将被删除,并始终保存新的数据记录 196。

操作期间的行为

预设组态和实际组态之间差异的影响:

对于在线显示以及诊断缓冲区中的显示(模块正常或模块发生故障),始终使用硬件配置而并非不同的实际组态。

示例:模块提供诊断信息。此模块组态为插入插槽 4,但实际却插入到插槽 3 中(模块缺失,参见下一章节中的示例)。在线视图中,指示组态的插槽 4 发生故障。在实际组态中,插槽 3 中的模块通过 LED 显示屏指出出现错误。

如果模块在控制数据记录中记录为缺失,那么自动化系统将会执行以下操作:

在控制数据记录中指定为不存在的模块不提供诊断,其状态始终为“正常”(OK)。值状态为“正常”(OK)

对输出进行直接写访问,或者对不存在的输出过程映像进行写访问:仍然无效;不显示任何访问错误。

对输入进行直接读访问,或者对不存在的输入过程映像进行读访问:提供值“0”;不显示任何访问错误。

将数据记录写入不存在的模块:仍然无效;不显示任何错误。

从不存在的模块读取数据记录:显示错误,因为无法返回有效的数据记录。

错误消息

如果在写入控制数据记录的过程中发生错误,则将返回以下错误消息:

错误消息

错误代码 含义
16#80B1 长度无效;数据记录 196 中的长度信息不正确。
16#80B5 未分配组态控制参数。
16#80E2 数据记录在错误的 OB 中传送。该数据记录需在启动程序中传送。
16#80B8 参数错误;模块指示存在无效参数。

S7-1200组态控制示例:

由一个 CPU 和 3 个信号模块组成的组态按下文所述进行组态。

插槽 3 中的模块在第一个组态扩展中不存在,被组态控制“隐藏”。

在第二个组态扩展中,最初隐藏的模块位于最后一个插槽中。CPU 通过一条修改后的控制数据记录获知增加插槽的信息。

缺少模块的实际组态

指定的组态包含所有可以在最后扩展阶段显示的模块。

在指定组态中插入到插槽 3 的模块在实际扩展组态中缺失。因此,插槽 3 必须在控制数据记录中相应地进行编码:"FF H" (= 不存在)。

9eb9b454-3f3d-11ee-ac96-dac502259ad0.png

模块在实际组态中缺失

后继所添加模块的实际组态

在指定组态中插入到插槽 3 的模块作为最后一个模块插入到插槽 4,添加到实际组态之后。

控制数据记录会相应地进行调整。

9ecbdcb0-3f3d-11ee-ac96-dac502259ad0.png






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5011

    文章

    13300

    浏览量

    463499
  • 存储器
    +关注

    关注

    38

    文章

    7493

    浏览量

    163866
  • 组态控制
    +关注

    关注

    0

    文章

    4

    浏览量

    6450
  • SCL
    SCL
    +关注

    关注

    1

    文章

    239

    浏览量

    17089
  • S7-1200
    +关注

    关注

    11

    文章

    331

    浏览量

    17989

原文标题:西门子博途:S7-1200有关组态控制的重要信息(选件处理)

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于S7-1200的设备与网络组态

    本文档内容介绍了基于S7-1200的设备与网络组态,以及S7-1200的概要及功能。
    发表于 09-25 18:14 28次下载
    基于<b class='flag-5'>S7-1200</b>的设备与网络<b class='flag-5'>组态</b>

    基于S7-1200的运动控制功能介绍

    S7-1200 CPU 将微处理器、集成电源、输入和输出威廉希尔官方网站 、内置PROFINET、高速运动控制I/0 以及板载模拟量输入组合到一个设计紧凑的外壳中来形成功能强大的控制器。S7-1200
    发表于 09-25 18:25 12次下载
    基于<b class='flag-5'>S7-1200</b>的运动<b class='flag-5'>控制</b>功能<b class='flag-5'>介绍</b>

    基于S7-1200的PLC的编程及扩展

    S7-1200 系列是一款可编程逻辑控制器 (PLC, Programmable Logic Controller),可以控制各种自动化应用。S7-1200设计紧凑、成本低廉且具有功能
    发表于 09-25 18:39 24次下载

    WinCC V7.2与S7-1200的PLC通讯

    以太网通讯,使用 TCP/IP 协议。此文档主要讲述如何使用SIMATIC S7-1200S7-1500 Channel通道,组态S7-1200/1500的以太网通讯。
    发表于 09-26 19:06 11次下载
    WinCC V7.2与<b class='flag-5'>S7-1200</b>的PLC通讯

    基于S7-1200S120实现TO位置控制的设计

    S7-1200 及SINAMICS S120 通过PROFINET 通讯连接,详细介绍了在S7-1200 中以工艺对象的方式来实现定位控制
    发表于 09-27 11:19 29次下载
    基于<b class='flag-5'>S7-1200</b>与<b class='flag-5'>S</b>120实现TO位置<b class='flag-5'>控制</b>的设计

    基于WinCC V7.2与S7-1200/1500 PLC通讯步骤介绍

    以太网通讯,使用 TCP/IP 协议。此文档主要讲述如何使用SIMATIC S7-1200S7-1500 Channel通道,组态S7-1200/1500的以太网通讯。
    发表于 09-28 11:01 37次下载
    基于WinCC V7.2与<b class='flag-5'>S7-1200</b>/1500 PLC通讯步骤<b class='flag-5'>介绍</b>

    S7-1200运动控制的结构及原理

    通过脉冲接口控制步进电机和伺服电机: 1、在 TIA Portal 中,可以组态轴和命令表工艺对象。 CPU S7-1200 可以使用这些工艺
    发表于 09-29 14:37 43次下载
    <b class='flag-5'>S7-1200</b>运动<b class='flag-5'>控制</b>的结构及原理

    S7-1200 PLC的硬件与硬件组态

    S7-1200 PLC的硬件与硬件组态,ppt学习!
    的头像 发表于 03-19 11:31 2.1w次阅读

    S7-1200S7-1200进行S7通信的详细资料说明

    S7-1200 的 PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本)。S7-1200 仅支持 S7 单边通信,仅需在客户端单边
    的头像 发表于 08-17 10:51 2.9w次阅读
    <b class='flag-5'>S7-1200</b>和<b class='flag-5'>S7-1200</b>进行<b class='flag-5'>S7</b>通信的详细资料说明

    S7-1200可编程控制器系统手册下载

    S7-1200 控制器使用灵活、功能强大,可用于控制各种各样的设备以满足您的自动化需求。S7-1200 设计紧凑、组态灵活且具有功能强大的指
    发表于 04-22 10:50 2次下载

    S7-1200侧硬件组态和网络组态

    本文以采用1个CPU1215C(6ES7215-1AG40-0AB0),1个S7-200SMART PLC为例,介绍它们之间的S7通信。S7-1200将通信数据区DB1中的200个字节
    的头像 发表于 04-07 11:41 3891次阅读

    S7-1200 Modbus RTU 从站通信组态及编程步骤

    S7-1200 支持Modbus RTU通信模式的模块可作为Modbus RTU从站。以下以 CPU1215C DC/DC/DC和CM1241 RS485为例,介绍S7-1200 Modbus RTU 从站通信
    发表于 12-07 20:37 1.3w次阅读

    S7-1200 CPU与S7-200 SMART S7通信指南

    S7-1200 CPU 固件版本 V2.0 及其以上,本体集成的 PROFINET 通信接口可以做 S7 通信客户端。S7-1200 仅支持 S7 单边通信,做客户端仅需单边
    的头像 发表于 04-19 15:14 3160次阅读

    S7-1200S7-300的选型区别

    的CPU支持通过信号板来增加IO点数,而S7-300CPU的IO点数是固定的。在硬件组态方面,S7-300和S7-1200的地址都可以由用户手动进行重新分配。
    的头像 发表于 05-04 15:18 1709次阅读
    <b class='flag-5'>S7-1200</b>与<b class='flag-5'>S7</b>-300的选型区别

    一文解析S7-1200S7-1500 S7通信

    S7-1200 的 PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本)。S7-1200 仅支持 S7 单边通信,仅需在客户端单边
    发表于 05-15 17:13 6045次阅读
    一文解析<b class='flag-5'>S7-1200</b>与<b class='flag-5'>S7</b>-1500 <b class='flag-5'>S7</b>通信