恭喜,你发布的帖子
发布于 2016-07-27 12:58:35
3楼
首先你需要进行线性变换,把输入信号转换成工程量,200的库中也有scale和unscale,scale是数字量到工程量的转换(输入信号处理),unscale是工程量到数字量转换(输出信号处理的)。如果实在找不到这个库,也可以根据线性变换自己做一个:假设需要把信号x,范围是[a,b],转换成信号y,范围是[c,d]。则根据(x-a)/(b-a)=(y-c)/(d-c)求出y。
因为你的控制和输出是反的,4~20mA对应的数字量是6400~32000,如果你的阀门控制也是用4~20mA控制的,则可以直接用:aqw=32000-aiw。
根据上面的scale公式,求出y后,用y和2.0比较,比较结果赋值给q0.0(如果y大于2.0则q0.0为1,否则为0).
谢谢您的解答,库文件我有,输入的换算公式我也知道,按公式用四则运算写过程序,
Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl
帮我看看是不是这样的。如果可以您能帮忙具体写一下这个程序吗?这样我结合公式,就好理解了,对于你们这些大师来说,这也许是太简单的东西,但对于刚接触这个的人来说,没理解的话,真的好难。谢谢!
请填写推广理由:
分享
只看
楼主