北岛夜话
原创工业智能控制领域(PLC、单片机/嵌入式、机器人、通信、机器视觉)的技术及经验分享。
文章545 浏览8640828

西门子SCL编程入门教程连载(9)-NORM_X和SCALE_X指令

NORM_X指令和SCALE_X指令用来实现数据的缩放及转换,在处理模拟量信号数据时经常使用。今天这篇文章,我们就来谈谈这两个指令。

cover.png

1、NORM_X指令

NORM是英文Normalization的简写,中文翻译为“归一化”。
数据的归一化是将数据按比例缩放,使其落入到闭区间[0,1]之间。既然是按比例缩放,那么必须有该数据的范围,即该数据可能的最大值和最小值。
假设当前数据的值为x,其数据最大值为Xmax,最小值为Xmin,归一化后生成的新数据值为Xnew,则将该数据归一化(Normalization)并产生新的数据Xnew的公式为:

normalization.png

用坐标图表达如下:

normalization2.png

在西门子SCL编程语言中,NORM_X指令就是用来实现数据的归一化。
可以在【基本指令】-【转换】中找到该指令,如下图:

instruction_norm.png

假设某个比例阀使用4~20mA电流信号输出,其压力的量程范围为0~25000 mbar,某个瞬时值为TMP_Value1,其归一化后放在变量tag_normalized中,则有如下公式:

example_normalization.png

注意:归一化后其数据值介于0~1之间,为实数。

2、SCALE_X指令

SCALE_X指令可以将归一化的数据按照比例进行放大,它是NORM_X的逆操作。
SCALE_X指令的坐标图如下:

scale.png

其中,X是归一化后的数据,Xnew是放大后的数据。
接着上面归一化的例程,假设我们使用模拟量输出模块的量程范围为0~27648,归一化的数据变量为tag_normalized,按比例放大后的变量为tag_scaled,
则比例阀输出控制的代码为:

example_scale.png

NORM_X和SCALE_X指令在处理模拟量信号时经常被用到,要理解清楚。

好了,关于西门子SCL的NORM_X和SCALE_X指令就先介绍到这里。欢迎扫描下方的二维码关注我们的微信公众号。

founderchip.png

西门子SCL编程入门教程连载(9)-NORM_X和SCALE_X指令

来源:本站|   大小:609 KB|   下载次数:3162次

取消

感谢您的支持,欢迎常来看看!

扫码支持
一点动力,多少随意

打开支付宝扫一扫,即可进行扫码打赏哦

发表评论