企业信息

    上海腾希电气技术有限公司

  • 15
  • 公司认证: 营业执照已认证
  • 企业性质:私营企业
    成立时间:2012
  • 公司地址: 上海市 松江区 上海市松江区广富林路4855弄星月大业**88号4楼
  • 姓名: 田礼科
  • 认证: 手机未认证 身份证未认证 微信未绑定

参数典型 Par12D_S

时间:2021-08-02点击次数:150

参数典型 Par12D_S

功能

接收 1 到 12 个参数值(每个参数值都是 1 个双字),或在本地输入,并将本地有效的较新参数值向回发送给伙伴。

每个双字的内容可以是双字(DWORD、DINT、REAL)格式的值,也可以是共同组成双字的其它数据类型的混合,例如:

4 个字节

2 个字

2 个字节 + 1 个字

另请参见下文的“注意字边界”部分。

为“ParameterOutput”参数*要传输的数据区域时,应以 Any 指针的形式*。此数据区域必须在数据块中,并且其长度可以在 1 到 12 个双字范围内变化。

也可以使用块本地输入参数值。输入区通过参数“LocalParameterInput”*为 Any 指针。它必须位于数据块中,其长度必须与“ParameterOutput”参数中组态的长度相同。

块仅处理发生更改的数据区域。另一方面,收到一般或单个请求时,也可以通过传送或镜像的方式返回整个参数集。

“本地”(Local) 和“远程”(Remote) 操作模式之间的无扰动切换得到保证。


提示

发生更改的数据区域

发生更改的数据区域包括检测到更改的**个和最后一个双字,以及位于这两个双字之间的所有字(即使这些字未发生更改也包括在内)。

示例:
要读取的数据区域长度为 10 个双字。在本例中,在* 2、* 5 和* 8 个双字中检测到更改。因此,传送的数据区域范围是从* 2 个双字到* 8 个双字。

注意字边界

如果传送的只是发生更改的数据,且数据区域包含双字格式的值,应确保双字值实际位于要采集的数据区域的一个双字之中(较多 12 个双字)。

由于仅在特定字中发生了更改,因此如果分布于两个连续的数据双字上,则可能仅传送双字值中的一个字(高位或低位字)。在这种情况下,字缺失可能导致接收伙伴发生数据错误(适用于 ST7cc,不适用于 S7 CPU)。




提示

使用标准访问的 DB

该块具有“ANY”类型的参数。因此,禁用 DB 属性中的“优化块访问”(Optimized block access) 属性。



参数

参数:

PartnerNo

PartnerObjectNo

Enabled

ImageMemory

Conditional

Unconditional

有关说明,请参见重现参数部分。

参数:

Local

声明:

INPUT

数据类型:

BOOL

取值范围:

TRUE / FALSE

默认值:

FALSE

地址范围:

输入

I 0.0 ... I n.7

存储器位

M 0.0 ... M n.7
L 0.0 ... L n.7

数据位

DBm.DBX 0.0 ... n.7

说明:

释放本地参数输入

释放由“LocalParameterInput”*的数据区域的本地参数输入。

只要“Local”= TRUE,对象就不会接收伙伴(主站)发送的设定值。

“Local”输入的当前状态将传输到伙伴。

无扰动切换:

当“Local”从 0 切换到 1 时,将保留“ParameterOutput”输出中最后输出的值,直到通过本地输入区“LocalParameterInput”输入了新参数值。

当“Local”从 1 切换回 0 时,将保留“ParameterOutput”输出中最后输出的值,直到块从伙伴接收到新参数值。

请参阅“ContinuousEnterFunct”参数的注意事项。

特殊情况:

还可以在本地输入期间直接在“ParameterOutput”所*的输出区中输入参数值。不要为“LocalParameterInput”*输入区,或为“LocalParameterInput”和“ParameterOutput”*相同的数据区域。

“Local”输入无法阻止这种类型的参数输入。无论“Local”参数的状态如何,在输出区中输入的值都会由块立即发送给伙伴。

因此不管“Local”输入的状态如何,都可以创建本地参数条目。“Local”仅对接受伙伴所发送的参数有影响:

Local = 0

接受伙伴发送的参数,并将其输出到“ParameterOutput”数据区域。

Local = 1

拒绝伙伴发送的参数。

在这种特殊情况下,“Release”和“ContinuousEnterFunct”没有任何作用。

根据发送缓冲区原理,“Local”参数的状态变化始终由模块传送(即使参数“ImageMemory”= TRUE)。这可确保伙伴上输入区和输出区的可选同步操作始终能正确执行(参见 Par12D_S、参数“ApplyRemoteParamMan”和“ApplyRemoteParamAuto”)。

参数:

ContinuousEnterFunct

声明:

INPUT

数据类型:

BOOL

取值范围:

TRUE / FALSE

默认值:

FALSE

说明:

连续采集本地参数。

使用此参数,可决定是否连续读入“LocalParameterInput”输入区中的值并检查更改。检查更改的方式是比较“ParameterOutput”输出中的当前值。

输入区中的更改立即复制到输出区并传送到伙伴对象。只发送发生更改的值。如果有多处更改,块将发送所有发生更改的参数值所在的数据区域。

仅当满足以下条件时,“ContinuousEnterFunct”= TRUE 设置才会生效:

输入区由“LocalParameterInput”定义,不同于为“ParameterOutput”所设置的输出区。

并且

在“Local”输入 (= TRUE) 有信号 1。

如果“ContinuousEnterFunct”= TRUE,则当在“Local”输入检测到信号 1 时,将立即采用“LocalparameterInput”中未决的值,并在“ParameterOutput”输出中输出。条件是,本地输入值与同一时间的当前输出值不同。

当本地值是由软件在 LocalParameterInput 数据区域输入时,适合使用这种本地值采集方法。

如果不需要此参数,保留不处理即可。

参数:

LocalParameterInput

声明:

INPUT

数据类型:

ANY

取值范围:

请参见地址范围

默认值:

P#P 0.0 VOID 0
(空指针)

地址范围:

P#DBxx.DBX yy.0 DWORD zz

xx:数据块编号 1...32767

yy:字节编号

zz:双字的编号 1...12(从字节编号 yy 开始)。

示例:
P#DB20.DBX 100.0 DWORD 4

输入指针时,不要忘记点号和空格!

请注意,不允许使用默认值(空指针)。必须*具有真实地址的指针。

说明:

本地参数输入区

ANY 指针对要采集的参数值所在的数据区域进行寻址。此数据区域必须在数据块中,并且其长度可以在 1 到 12 个数据双字范围内变化。且必须等于为“ParameterOutput”所*的长度。

有关内容和格式的信息,请参见上文中的“功能”部分。

如果参数分配不正确(空指针、长度 > 12、数据区域不是 DB),则会在诊断缓冲区中输入错误消息(事件 ID B114,[Info2/3] = 11)。CPU 不切换为 STOP 模式。然后,在更正错误之前,不再对该数据块进行处理。

如果不需要此参数,保留不处理即可。

参数:

ParameterOutput

声明:

INPUT

数据类型:

ANY

取值范围:

请参见地址范围

默认值:

P#P 0.0 VOID 0
(空指针)

地址范围:

P#DBxx.DBX yy.0 DWORD zz

xx:数据块编号 1...32767

yy:字节编号

zz:双字的编号 1...12(从字节编号 yy 开始)。

示例:
P#DB20.DBX 100.0 DWORD 4

输入指针时,不要忘记点号和空格!

请注意,不允许使用预设值(空指针)。必须*具有真实地址的指针。

说明:

参数输出区

对于输出本地输入参数值或从伙伴接收到的参数值的数据区域,由 ANY 指针进行寻址。此数据区域必须在数据块中,并且其长度可以在 1 到 12 个双字范围内变化。

有关内容和格式的信息,请参见上文中的“功能”部分。

Par12D 将接收到的数据存储在“ParameterOutput”所*的数据区域中,不进一步处理。需要通过用户程序评估并处理接收到的数据。

如果伙伴对象 Par12D_S 只发送更改的数据,可能只有部分数据输出区有新写入的内容。这部分输出区是指采集结束时检测到更改的区域。

如果参数分配不正确(空指针、长度 > 12、数据区域不是 DB),则会在诊断缓冲区中输入错误消息(事件 ID B114,[Info2/3] = 11)。CPU 不切换为 STOP 模式。然后,在更正错误之前,不再对该数据块进行处理。

参数:

NewData

说明:

有关声明、数据类型、取值范围、默认值和功能的信息,请参见重现参数部分。

每当块从伙伴对象接收到新参数值并将其输出到输出字段“ParameterOutput”时,在一个 OB1 循环内,“NewData”输出都将设置为 TRUE。这对于“Local”= 1 的状态下有新的本地输入的情况同样适用。

参数:

Release

声明:

IN_OUT

数据类型:

BOOL

取值范围:

TRUE / FALSE

默认值:

FALSE

地址范围:

输入

I 0.0 ... I n.7

存储器位

M 0.0 ... M n.7

数据位

DBm.DBX 0.0 ... n.7

这是一个输入/输出参数(声明 IN_OUT)。使用此参数类型很难*本地位存储器,因此不应使用。

说明:

用于接受本地参数输入的输入。

通过此输入,信号沿变化可触发接受“LocalParameterInput”参数输入的参数值这一操作。

仅当满足以下条件时,才会将“Release”输入从 0 到 1 的变化考虑在内:

输入区由“LocalParameterInput”参数*,不同于“ParameterOutput”所*的输出区

并且

“Local”输入设置为 TRUE。

 

通过软件进行参数输入时,例如通过操作面板 (OP),可以使用“Release”进行参数输入。然后应使用 OP 上的功能键设置“Release”输入。可以先在 OP 上输入几个参数。只有当 Release 功能键激活时,才会读入参数值并检查其更改。

检查更改的方式是比较“ParameterOutput”输出中的当前参数值。输入区中的更改立即会复制到输出区并传送到伙伴。

只发送发生更改的值。如果有多处更改,块将发送所有发生更改的参数值所在的数据区域。

“Release”输入自动复位。除了存储器位或数据位外,数字输入也可以*为输入。数字输入不能自动复位,但并没有不利影响。通过“Release”进行的采集操作属于沿触发,也就是着,只触发一次。

如果不需要此参数,保留不处理即可。


http://shtxjd.cn.b2b168.com

上一篇:冗余 备用