小数PLC(FX2N)小数点(浮点)运算编程研究讲义

浮点  时间:2021-01-26  阅读:()

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。gPLC ( FX2N )浮点(小数点)运算编程研究讲义

目录

 PLC(FX2N)浮点(小数)运算编程概要

 实验一 将一个整数转变为一个二进制小数,并存入FX2N的Dn中(产生一个浮点数,存入FX2N的Dn中)

 实验二 将2个二进制小数(或其中一个常数K、 H)进行四则运算 实验三 一个二进制小数,如何在LED数码显示器,或者组态王上显示监控

 实验四 二进制浮点数运算实例

 实验五 任意位浮点数(小数)的输入

 附1 :PLC数值显示(LED数码显示器)含小数点方法

 附2:P LC(F X2N)中输入小数小结、 要点:

PLC(FX2N)浮点(小数)运算编程概要

1、 PLC ( FX2N )浮点数(小数)概论:

 二进制小数概念:二进制小数在PLC (FX2N) 中存储占用32位(即占用2个连续编号的Dn 、 Dn+1) ,最高位bit31位是符号位( 1是负数, 0是正数) ,其它位( bit30~bit0 )是数值位,数值位分尾数段和指数段 , bit0~bit22共23位是尾数段 ,bit23~bit30共8位是指数段;注:二进制小数不是按2的补码处

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

理;

二进制小数在PLC(FX2N)中存入形式

Dn+1 Dn

位)

浮点数(小数)运算规则概念

 进行浮点数(小数)运算的各Dn只能是二进制小数、 常数

K 、 H ;不能是整数或十进制小数;

 若Dn中数据是整数,需用FLT指令转化为二进制小数形式,再参与运算;

 若Dn中数据是十进制小数,需用EBIN指令转化为二进制小数形式,再参与运算;

 若Dn中数据是常数K 、 H,可直接参与运算,无需转化, 因其在参与运算过程中会自动转化;

 浮点数运算中指令前一般应加D , 因参与运算的二进制小数都占有二个连续的Dn 、 为32位数据;

 浮点数运算的种类在PLC ( FX2N ) 中有加9EADD ) 、 减(ESUB) 、 乘(EMUL) 、 除(EDIV) 、 正弦(SIN) 、余弦(COS ) 、 正切(TAN) 、 数类转化(FLT 、 INT 、EBIN 、 EBCD ) 、 比较( ECMP 、 CZCP )等等;

 二进制小数的PLC处理中的监控: 因二进制小数数值与指数占用了

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

二个连续的Dn ,且难以区别,故难以在组态王等上监控(如LED数码显示器、 组态王等) 、 监控的数据只是乱码, 故若要监控需将这些二进制小数用EBCD指令转化为十进制小数,十进制小数占用连续二个Dn ,编号大的为指数段,编号小的为尾数值、区别明确, 易于监控;如: D30D31 ;其中D30为尾数值、D31为指数段;注:在FX2N仿真软件上易监控仿真结果;

十进制小数概念:十进制小数在PLC ( FX2N ) 中占用32位,在PLC内部存储时采用2个连续编号的Dn 、 Dn+1 ,编号小的保存尾数段(Dn ) ,编号大的保存指数段(Dn+1 ) ;如: D30D31 ;其中D30为尾数值、 D31为指数段;

十进制小数在PLC(FX2N)中存入形式

Dn+1 Dn

)十进制小数的运算:十进制小数无法在PLC ( FX2N ) 中直接进行运算处理,需用EBIN指令转化为二进制小数再进行运算;

十进制小数的数值监控作用:十进制小数易于数值监控, 而二进制小数难以直接监控,直接监控数值往往为乱码,故PLC中二进制小数若需监控,可用EBCD指令将其转化为十进制小数;注:十进制小数在FX2N仿真软件上监控反而出现乱码;

 二~十进制数相互转化中的误差:

 在二进制小数转化为十进制小数、或十进制小数转化为二进制

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

小数过程中, 易产生一定的误差, 因有效数字四舍五入的缘故;

 因某些自动控制采用浮点数可提高控制精度与品质,故需浮点数运算及处理;

 因某些自动控制部件只能采用整数,故需将浮点数转化为整数,其转化过程有四舍五入,将产生一定的误差。

2、得到一个二进制小数的方法概要(与得到一个十进制小数的方法互为逆运算) :

方法一:如产生一个二进制小数254.6 (往D20中存入一个二进制小数254.6 ) ;

 先往D0中送入一个整数( 2546 ) ; MOV K2546 D0 ; 再用二进制整数转化为二进制小数指令FLT转化得到二进制小数形式,存入D10 ( 2546.00 ) ; FLT D0 D10 ;注: FLT指令仅是将整数的表示形式转化为小数的表现形式( 2546---2546.00 ) ,但此数值实质上仍是整数;

 最后将二进制小数形式除以常数10的倍数,得到所需小数后为几位的二进制小数( 254.6 ) ; DEDIV D10 K10 D20 ;注:小数处理指令与整数处理指令类似, 只是前面加E ,表示属小数处理指令;另外小数数值占二个Dn, 为32位,故运算指令前需加D ;

 注:二进制小数因是32位数值,整个数值254. 6占了 (D21 )

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

D20 ;

 注:方案一PLC软件监控仿真结果正常;组态王监控为乱码; 例程:

方法二:如产生一个二进制小数254.6 (往D10中存入一个二进制小数254.6 ) ;

 将一个需转化的整数送入D0 ( 2546 ) ; MOV K2546 D0 ; ; 再将一个负数(为小数的位数)送入D1 ; MOV -1 D1 ; 注:上述二个Dn标号必须连续、 且存放整数的Dn标号应在前( D0 ) 、 存放负数的Dn标号应在后( D1 ) ;

 最后用十进制小数转化为二进制小数指令EBIN转化得到所需的二进制小数( 254.6 ) ; DEBIN D0 D10 ;注:小数处理指令与整数处理指令类似, 只是前面加E ,表示属小数处理指令;另外小数数值占二个Dn , 为32位,故运算指令前需加D ; 注:二进制小数因是32位数值,整个数值254. 6占了 (D21 )D20 ;

 注:方法二PLC软件监控仿真为乱码;组态王监控为乱码; 例程:

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

3、得到一个十进制小数的方法概要(与得到一个二进制小数的方法互为逆运算) :

方法一:将一个二进制小数经过EBCD指令(二进制小数转化为十进制小数指令)转化得到;注:直接结果显示PLC监控仿真为乱码,可在组态王等上用尾数\指数形式显示结果Dn-Dn+1 ;

方法二:先往Dn中送入一个整数;再往D n+1中送入一个负数(为小数的位数) ;注:上述二个Dn标号必须连续、 且存入整数的Dn标号在前( Dn ) 、 存入负数的Dn标号在后( Dn+1 ) 。注:直接结果显示PLC监控仿真为乱码,可在组态王等上用尾数\指数形式显示结果Dn-Dn+1 ;

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

实验一 将一个整数转变为一个二进制小数,并存入FX2N的Dn中(产生一

个浮点数,存入FX2N的Dn中)

1 、具体实例:将一个整数12,转变为二进制小数1.2,存入(D21 )D20中;为了在组态王上易监控,再转化为十进制小数存入(D31 )D30中 ;并用D30-D31方式在组态王显示结果。

2 、 程序1段及分析:

先将常数(整数) 12存入D0中;再用F LT指令将D 0中的常数(整数)转变为二进制小数形式( 12.00 )存入D11 (D10 )中;最后用二进制小数除法指令DEDIV得到1位小数的二进制小数( 1.200)存入(D21 )D20中;

3 、 程序1段PLC仿真:

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

4 、 程序2段及分析:

为了实现(D21 )D20中数值的组态王监控,先用DEBCD指令将

其转化为十进制小数、 存入(D31 )D30中;

M8002

并存入D31、 D30中

5 、 程序2段PLC仿真:

6 、 程序3段及分析、 PLC仿真:

十进制小数(D31 )D30中指数段(D31 )值作正负值判别,若是负值则求补码,再显示;若是正值则不需处理,直接显示; (指数段作正负判别是为了:若可能出现负数,需求补码处理成原码绝对值----十进制小数的指数一般都是负数,如此处-3) ;

7 、 程序4段及分析、 PLC仿真:

十进制小数(D31 )D30中尾数段(D30)值作正负值判别,若是负值则求补码,再显示;若是正值则不需处理,直接显示; (尾数段作正负判别是为了:若可能出现负数,需求补码处理成原码绝对值----为负数的十进制小数时才可能出现,此处不是) ;

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

8 、 组态王监控结果及说明:

在组态王监控中,原数D0=12,将其转化为1.200存入(D31)D30,并用D30-D31方式显示( 1199×10-3 ) :

9、 总的PLC程序及解说、 仿真结果:

Boomer.Host(年付3.5美)休斯敦便宜VPS

Boomer.Host是一家比较新的国外主机商,虽然LEB自述 we’re now more than 2 year old,商家提供虚拟主机和VPS,其中VPS主机基于OpenVZ架构,数据中心为美国得克萨斯州休斯敦。目前,商家在LET发了两款特别促销套餐,年付最低3.5美元起,特别提醒:低价低配,且必须年付,请务必自行斟酌确定需求再入手。下面列出几款促销套餐的配置信息。CPU:1core内存:...

PQ.hosting:香港HE/乌克兰/俄罗斯/荷兰/摩尔多瓦/德国/斯洛伐克/捷克vps,2核/2GB内存/30GB NVMe空间,€3/月

PQ.hosting怎么样?PQ.hosting是一家俄罗斯商家,正规公司,主要提供KVM VPS和独立服务器,VPS数据中心有香港HE、俄罗斯莫斯科DataPro、乌克兰VOLIA、拉脱维亚、荷兰Serverius、摩尔多瓦Alexhost、德国等。部分配置有变化,同时开通Paypal付款。香港、乌克兰、德国、斯洛伐克、捷克等为NVMe硬盘。香港为HE线路,三网绕美(不太建议香港)。免费支持wi...

麻花云:3折优惠,香港CN2安徽麻花云香港安徽移动BGP云服务器(大带宽)

麻花云在7月特意为主机测评用户群定制了促销活动:香港宽频CN2云服务器、安徽移动云服务器(BGP网络,非单线,效果更好)、安徽移动独立服务器、安徽电信独立服务器,全部不限制流量,自带一个IPv4,默认5Gbps的DDoS防御。活动链接:https://www.mhyun.net/act/zjcp特价云服务器不限流量,自带一个IPv4,5Gbps防御香港宽频CN2全固态Ⅲ型 4核4G【KVM】内存:...

浮点为你推荐
免费卡巴斯基杀毒软件十大终身免费杀毒软件?视频剪辑软件哪个好电脑视频剪辑软件哪个最好用游戏加速器哪个好网游加速器那个好?朱祁钰和朱祁镇哪个好朱高炽是不是被朱瞻基谋杀的?朱祁镇和朱祁钰谁更好音乐播放器哪个好音乐播放器哪个最好用炒股软件哪个好股票软件哪个最好用?手机音乐播放器哪个好手机音乐播放器音质好的APP是那款手机音乐播放器哪个好手机哪个音乐播放器的音质更好?车险哪个好车险平安和人保哪个好?都有什么优点和缺点?播放器哪个好什么播放器好用
免费域名注册 香港加速器 hostmonster kdata 精品网 bash漏洞 godaddy域名转出 2017年万圣节 台湾谷歌网址 卡巴斯基永久免费版 中国智能物流骨干网 dd444 193邮箱 hkg vip域名 台湾google 德隆中文网 阿里云手机官网 国外免费云空间 好看的空间 更多