业务销售;竭诚为你服务.
公司主营西门子PLC模块,数控伺服,触摸屏等系列产品,产品*,质保一年
![]() |
参考价 | ¥670 |
订货量 | 1 |
更新时间:2019-03-29 17:42:31浏览次数:411
联系我们时请说明是化工仪器网上看到的信息,谢谢!
西门子6ES7952-1AS00-0AA0编程
不在质保范围内,仿货、二手翻新货,一律不做。请另找别家。比较扫描矩阵 (S7-1500)
说明
“比较扫描矩阵"指令可将多 16 个已编程输入位(IN_BIT0 到 IN_BIT15)的状态
与各步比较掩码的相应位进行比较。处理从步 1 开始并继续,直到后一个编程步 (LAST)
或直到找到匹配值。将参数 IN_BIT0 的输入位将与掩码 CMP_VAL[x,0] 的值相比较,其中
“x"代表步号。所有编程值均以相同进行比较。如果找到匹配值,则将参数 OUT 的信
号状态设置为“1",并将匹配掩码的步号写入参数 OUT_STEP。未编程输入位或未编程掩
码位的默认状态为 FALSE。如果多个步具有匹配掩码,则参数 OUT_STEP 仅指示找
到的个步。如果没有找到匹配值,则将参数 OUT 的状态置为“0"。在这种情况
下,参数 OUT_STEP 的值比参数 LAST 的值大“1"。
参数
下表列出了“比较扫描矩阵"指令的参数:
参数声明数据类型存储区说明
IN_BIT0 Input BOOL I、Q、M、D、L
或常数
比较输入位 0 与
掩码位 0。
IN_BIT1 Input BOOL I、Q、M、D、L
或常数
比较输入位 1 与
掩码位 1。
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1719
参数声明数据类型存储区说明
IN_BIT2 Input BOOL I、Q、M、D、L
或常数
比较输入位 2 与
掩码位 2。
IN_BIT3 Input BOOL I、Q、M、D、L
或常数
比较输入位 3 与
掩码位 3。
IN_BIT4 Input BOOL I、Q、M、D、L
或常数
比较输入位 4 与
掩码位 4。
IN_BIT5 Input BOOL I、Q、M、D、L
或常数
比较输入位 5 与
掩码位 5。
IN_BIT6 Input BOOL I、Q、M、D、L
或常数
比较输入位 6 与
掩码位 6。
IN_BIT7 Input BOOL I、Q、M、D、L
或常数
比较输入位 7 与
掩码位 7。
IN_BIT8 Input BOOL I、Q、M、D、L
或常数
比较输入位 8 与
掩码位 8。
IN_BIT9 Input BOOL I、Q、M、D、L
或常数
比较输入位 9 与
掩码位 9。
IN_BIT10 Input BOOL I、Q、M、D、L
或常数
比较输入位 10
与掩码位 10。
IN_BIT11 Input BOOL I、Q、M、D、L
或常数
比较输入位 11
与掩码位 11。
IN_BIT12 Input BOOL I、Q、M、D、L
或常数
比较输入位 12
与掩码位 12。
IN_BIT13 Input BOOL I、Q、M、D、L
或常数
比较输入位 13
与掩码位 13。
IN_BIT14 Input BOOL I、Q、M、D、L
或常数
比较输入位 14
与掩码位 14。
IN_BIT15 Input BOOL I、Q、M、D、L
或常数
比较输入位 15
与掩码位 15。
OUT Output BOOL I、Q、M、D、L 状态“1"表
示找到一个匹配
值。
状态“0"表
示未找到匹配
值。
指令
4.1 指令
对 PLC 进行编程
1720 编程和操作手册, 10/2018
参数声明数据类型存储区说明
ERR_CODE Output WORD I、Q、M、D、
L、P
错误信息
OUT_STEP Output BYTE I、Q、M、D、
L、P
包含具有匹配掩
码的步号,如果
未找到相匹配的
掩码,则是比参
数 LAST 的值
大“1"的步号。
LAST Static BYTE I、Q、M、D、
L、P 或常数
为匹配
掩码而将扫描的
后一步的步
号。
CMP_VAL Static ARRAY OF
WORD
I、Q、M、D、L
或常数
比较掩码 [0 到
15,0 到 15]:
下标的个编
号为步号,第二
个编号为掩码的
位号。
ERR_CODE 参数
下表列出了 ERR_CODE 参数值的含义:
错误代码*
(W#16#...)
说明
0000 无错误
000E 参数 LAST 的值大于 15。
* 在程序编辑器中,错误代码可显示为整数或十六进制值。有关切换显示格式的更多信
息,请参见“另请参见"。
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1721
示例
在本示例中,将 16 个输入位全部与步 0 到步 5 的掩码进行比较,直到找到匹配值。由于
步 2 的掩码与输入位相匹配,因此只扫描步 0 到步 2 的掩码。
说明
可以初始化数据块中的静态参数。
STL 说明
CALL SMC, "SMC_DB" // 调用“比较扫描矩阵"指令并创建背景数据块“SMC_DB"
IN_BIT0 := "Tag_Input_BIT0" // 输入位 0
IN_BIT1 := "Tag_Input_BIT1" // 输入位 1
IN_BIT2 := "Tag_Input_BIT2" // 输入位 2
IN_BIT3 := "Tag_Input_BIT3" // 输入位 3
IN_BIT4 := "Tag_Input_BIT4" // 输入位 4
IN_BIT5 := "Tag_Input_BIT5" // 输入位 5
IN_BIT6 := "Tag_Input_BIT6" // 输入位 6
IN_BIT7 := "Tag_Input_BIT7" // 输入位 7
IN_BIT8 := "Tag_Input_BIT8" // 输入位 8
IN_BIT9 := "Tag_Input_BIT9" // 输入位 9
IN_BIT10 := "Tag_Input_BIT10" // 输入位 10
IN_BIT11 := "Tag_Input_BIT11" // 输入位 11
IN_BIT12 := "Tag_Input_BIT12" // 输入位 12
IN_BIT13 := "Tag_Input_BIT13" // 输入位 13
IN_BIT14 := "Tag_Input_BIT14" // 输入位 14
IN_BIT15 := "Tag_Input_BIT15" // 输入位 15
OUT := "Tag_Output" // 指示是否找到匹配值。
OUT_STEP := "Tag_Output_STEP" // 包含具有相应掩码的步号。
ERR_CODE := "Tag_ErrorCode" // 错误信息
下表将通过具体的值对该指令的工作原理进行说明:
处理前
在本示例中,输入和输出参数可使用以下各值:
参数操作数值
IN_BIT0 Tag_Input_BIT0 TRUE
IN_BIT1 Tag_Input_BIT1 TRUE
IN_BIT2 Tag_Input_BIT2 FALSE
IN_BIT3 Tag_Input_BIT3 TRUE
指令
4.1 指令
对 PLC 进行编程
1722 编程和操作手册, 10/2018
参数操作数值
IN_BIT4 Tag_Input_BIT4 TRUE
IN_BIT5 Tag_Input_BIT5 FALSE
IN_BIT6 Tag_Input_BIT6 TRUE
IN_BIT7 Tag_Input_BIT7 TRUE
IN_BIT8 Tag_Input_BIT8 FALSE
IN_BIT9 Tag_Input_BIT9 TRUE
IN_BIT10 Tag_Input_BIT10 TRUE
IN_BIT11 Tag_Input_BIT11 FALSE
IN_BIT12 Tag_Input_BIT12 TRUE
IN_BIT13 Tag_Input_BIT13 TRUE
IN_BIT14 Tag_Input_BIT14 FALSE
IN_BIT15 Tag_Input_BIT15 TRUE
OUT Tag_Output FALSE
OUT_STEP Tag_Output_STEP B#16#00
ERR_CODE Tag_ErrorCode W#16#0000
步 2 掩码的以下值保存在该指令的背景数据块“SMC_DB"中:
参数地址值
CMP_VAL [2,0] DBX12.0 TRUE
CMP_VAL [2,1] DBX12.1 TRUE
CMP_VAL [2,2] DBX12.2 FALSE
CMP_VAL [2,3] DBX12.3 TRUE
CMP_VAL [2,4] DBX12.4 TRUE
CMP_VAL [2,5] DBX12.5 FALSE
CMP_VAL [2,6] DBX12.6 TRUE
CMP_VAL [2,7] DBX12.7 TRUE
CMP_VAL [2,8] DBX13.0 FALSE
CMP_VAL [2,0] DBX13.1 TRUE
CMP_VAL [2,10] DBX13.2 TRUE
CMP_VAL [2,11] DBX13.3 FALSE
CMP_VAL [2,12] DBX13.4 TRUE
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1723
参数地址值
CMP_VAL [2,13] DBX13.5 TRUE
CMP_VAL [2,14] DBX13.6 FALSE
CMP_VAL [2,15] DBX13.7 TRUE
LAST DB84 B#16#05
执行后
执行该指令之后,将以下各值写入输出参数:
参数操作数值
OUT Tag_Output TRUE
OUT_STEP Tag_Output_STEP B#16#02
ERR_CODE Tag_ErrorCode W#16#0000
参见
有效数据类型概述 (页 247)
状态字的基本信息 (页 200)
转换程序状态的显示格式 (页 8834)
STL 基础知识 (页 8341)
LEAD_LAG:提前和滞后算法 (S7-1500)
说明
可以使用“提前和滞后算法"指令,通过模拟量变量处理。GAIN 参数的增益值必须
大于零。使用以下等式计算“提前和滞后算法"指令的结果:
仅当在固定的程序周期中运行指令“提前和滞后算法"时,才生成正确的结果。参数
LD_TIME、LG_TIME 和 SAMPLE_T 中必须相同的运算单元。计算 LG_TIME > 4 +
SAMPLE_T 时,该指令与以下函数类似:
OUT = GAIN * ((1 + LD_TIME * s) / (1 + LG_TIME * s)) * IN
指令
4.1 指令
对 PLC 进行编程
1724 编程和操作手册, 10/2018
当参数 GAIN 的值小于或等于零时,将不进行计算,并在参数 ERR_CODE 中输出错误信
息。
“提前和滞后算法"指令可与回路一起用作动态前馈控制中的补偿器。该指令由两项操作
组成。“提前"操作将输出 OUT 的相位进行移位,使得输出提前于输入。相反,“滞后"
操作对输出进行移位,使得输出滞后于输入。由于“滞后"操作相当于积分,因此可用作
噪声器或低通滤波器。“提前"操作相当于微分,因此可用作高通滤波器。同时使用
两个指令(“提前"和“滞后"),将在较低时输出的相位滞后于输入,而在较
高时输出的相位提前于输入。这意味着“提前和滞后算法"指令可用作带通滤波器。