技术频道

非线性转成多段线性变送

非线性转成多段线性变送

目前,很多模拟量的输入与输出存在着非线性的关系,而在计算这两者之间的关系时,总不能找到一个符合或者相近的公式来进行计算。对此常见的解决方法是把非线性的模拟量输入分割成多段,并将每段进行线性化处理,然后进行相应的模拟量输出。

下面是用海为PLC编程软件将频率与温度的非线性关系转成多段线性变送的例子。其多段频率对应的温度值如下表所示:

频率(Hz)

温度()

639.4

210.0

626.9

200.0

614.2

190.0

601.6

180.0

588.8

170.0

576.0

160.0

563.1

150.0

550.2

140.0

537.2

130.0

524.1

120.0

511.0

110.0

497.7

100.0

484.6

90.0

471.3

80.0

457.9

70.0

444.5

60.0

431.0

50.0

417.4

40.0

403.8

30.0

390.1

20.0

376.3

10.0

362.5

0.0

建立两个名称分别为“频率表”和“温度表”的初始寄存器表,地址V1100~V1121与上表的频率值相对应,地址V1200~V1221与上表的温度值相对应,如下图所示:

主程序如下图所示:

子程序如下图所示:

总结:通过这个例子,我们知道非线性曲线通过多段线性变送可以使输出逼近非线性曲线。逼近非线性曲线的程度取决于段数的多少,段数越多,就越逼近,反之,则偏离越远。而段数的多少应如何取决呢?因为当段数较少时,误差会相对较大;段数较多时,误差小,但是程序量大,会影响运行的速度。所以段数的多少需要根据工程的实际情况进行分割。使工程在允许的误差范围内程序尽可能的小。

文章版权归西部工控xbgk所有,未经许可不得转载。