数模转换问题
112.95.251.214
发布于2014-04-18 17:33
362
0
标签:
在wincc里设置一个i/o域控制电动机的转速,那么输入一个数字(如1400转),电机用变频器驱动,就按这个速度转。用plc的模拟量输出ao接到变频器的3、4端子。问题就是怎么把这个wincc给的数字量转换为模拟量了再送到ao口?直接把内存里面的值送过去可以吗?是不是内部已经转换好了?如果是内部已经转换好了,那么想0-1400转对应0-10v模拟输出怎么整?
佳答案
1.需要使用fc106unscale功能接收一个以工程单位表示、且标定于下限和上限(lo_lim和hi_lim)之间的实型输入值(in),并将其转换为一个整型值,将结果写入out。
2.unscale功能使用以下等式:out=[((in-o_lim)/(hi_lim-o_lim))*(k2-1)]+k1,并根据输入值是bipolar还是unipolar设置常数k1和k2。bipolar:假定输出整型值介于?7648和27648之间,因此,k1=-27648.0,k2=+27648.0unipolar:假定输出整型值介于0和27648之间,因此,k1=0.0,k2=+27648.0,也可以根据上面公式,自己编写程序。
上传了张图,请参考。
在wincc里i/o域的电动机转速对应md100,0-1400转对应pqw2560-10v模拟输出。
若有收获,就点个赞吧!
文章来源于网络及文献如有侵权请联系站长
分享到:
微信扫一扫分享
阅读与本文标签相同的文章