呵呵,很多人可能都是凑热闹的态度!
我看到楼主的问题后,我首先想说的一句话是,你应该好好看看编程手册,里面讲到,整数,浮点数在内存中怎么表示的,
1,字、双字在什么时候用比较好?
答:看你处理的数据的大小,及精度,一般要是能达到要求就尽量用字,有些情况甚至字节都够,要是处理浮点数,或比较大的值,你必须用
双字啊,没得商量的,不是你想不想用!
2。浮点数,再什么情况下用?
答:浮点数在你处理的数据要求高精度的情况下用,或标准化一些数据时,例如,你要把一个小于65535的整数,标准化成精确到0。1%
的百分比时,就要把它转换成实数,很典型的应用!
至于你说“如果我的控制系统有上位机控制,那么我的程序中与上位机相关的数据(开关量除外)是否都要转成浮点数? ”
你上位机读取数据一般是 一帧一帧数据读把,那你不管数据是浮点数,还是整数,你只要知道这一帧数据的第几个字或字节是什么类型就可以了;
在上位机那端,你只考虑这PLC那端数据是什么类型,读上来的也就是什么类型;例如:读取PLC 中 B200~VB220,连续20个字节的数据;
事先你肯定知道这里面有些定义好的数据,比如 VB 200里是PLC地址,那就是一个字节,整型数据,VB201里放了一个百分比的值最大100,
也是整型数据,你知道的一个字节存放有符号数范围-128~127,无符号,0~255,足够用!
再假如,VD202 (即VB202~VB205)存放了一个浮点数,读取到上位机,取这几个字节的数据就是你要的浮点数,直接拿来用不必转换!