苦人儿
级别: 探索解密
精华主题: 0
发帖数量: 8 个
工控威望: 103 点
下载积分: 601 分
在线时间: 4(小时)
注册时间: 2014-10-31
最后登录: 2017-06-29
查看苦人儿的 主题 / 回贴
楼主  发表于: 2016-06-13 17:35
通过s7-200的梯形图,运算次方,比如Y等于X的N次方,用梯形图怎么运算得到Y。
求大神指教!
多谢
高手指点
instanttw
级别: 探索解密
精华主题: 0
发帖数量: 26 个
工控威望: 155 点
下载积分: 2292 分
在线时间: 39(小时)
注册时间: 2013-04-25
最后登录: 2021-11-04
查看instanttw的 主题 / 回贴
1楼  发表于: 2016-06-13 21:22
x ^ y = exp(ln(x ^ y)) = exp(y * ln(x))

若精度很要求,ln(x) 需要改成 ln(2^n * x/(2^n)) = n * ln(2) + ln(x/(2^n))
找 2^n 和 x/(2^n) 的部分需要了解浮点数是如何表示的,其功能和 C 语言的标准函数 frexp 一样。
最后再透过拟合方式把 ln 和 exp 的数值找出来即得到解答。
拟合所需要的各项係数可以上网从 IBM 的数学函式库中得到。

在 3G 上使用过上述方法,最后结果的精度和使用数学函数算出来的一模一样。