999久久久精品国产消防器材,国产成人久久综合77777,√最新版天堂资源网在线,精品久久久久区二区8888,卡一卡二卡三乱码视频

技成培訓網(wǎng) 技成學習APP 技成工具箱 技成企業(yè)服務(wù)

歡迎回到技成培訓網(wǎng)

技成培訓網(wǎng)

電工題庫寶典

技成電工課堂

PLC練習題

技成PLC課堂

變頻器故障查詢

技成PLC學吧

伺服驅(qū)動故障查詢

技成PLC網(wǎng)校

當前位置:技成首頁 > 文章中心 > 三菱PLC > 三菱FX PLC學習之數(shù)值運算指令(上)

三菱FX PLC學習之數(shù)值運算指令(上)

吳翠萍 發(fā)布于2020-10-15 15:44 55 2 標簽:三菱PLC,三菱FX PLC

【點擊領(lǐng)取】三菱案例 | 西門子案例 | 電工手冊 | 工具箱 軟件

【點擊獲取】三菱PLC例程117個|西門子PLC例程777個

【點擊下載】2020新電工仿真軟件


所謂數(shù)值運算,就是通過加減乘除來實現(xiàn)數(shù)值的變換。在PLC中,數(shù)值運算的指令不算難,難的是怎樣理解PLC對這些數(shù)值的定義與處理方式。所以,我將這部分知識分為上下兩篇文章來述說。



在學習數(shù)值指令之前,我們得先了解這些數(shù)值有哪些特點。

在數(shù)學中,數(shù)的分類有很多,那在PLC中,數(shù)值的分類是不是也有很多的?在學習之前,看到數(shù)值運算指令,我頓時瑟瑟發(fā)抖,不會在PLC中也要學習數(shù)學吧!



后來才發(fā)現(xiàn),是我杯弓蛇影了,PLC中的數(shù)值,除了我之前所說的各種進制數(shù)外,其實也不過是有整數(shù)與小數(shù)之分、整數(shù)與負數(shù)之分而已。這讓我松了一口氣。那么,我們正式開始這次的學習分享吧!


一、PLC的正數(shù)和負數(shù)

在數(shù)學中,負數(shù)和正數(shù)的區(qū)別,在于前面的正負號,例如-5和 5,而PLC中是不是也是這樣的呢?并不是的。



PLC中,正負之分是通過高位(b15或b31)的值來判定的。高位為0表示正數(shù),高位為1表示負數(shù)。

例如數(shù)據(jù)寄存器D0中高位b15=0,表示D0的值為正數(shù);若b15=1,那么D0的值就為負數(shù)。


另外,除了高位用于區(qū)分正負之外,其他位(b14…b0或b30…b0)的值也有區(qū)別,這主要是體現(xiàn)在負數(shù)的表示中。在說明這一點之前,我們先來了解一下什么是原碼、反碼和補碼。

在數(shù)字電路中,數(shù)碼有原碼、反碼和補碼之分,這樣可以使得數(shù)值運算變得更為簡單。結(jié)合符號位(高位),所謂原碼,是指數(shù)值本身,例如十進制數(shù) 11、-5用二進制數(shù)表示的原碼分別為01011、10101,此時高位的“0”、“1”為符號位。



在數(shù)字電路中規(guī)定,正數(shù)的原碼=反碼=補碼,也就是正數(shù)的原碼、反碼和補碼都是其本身,如上圖所示的 11,其反碼和補碼也是01011。

而負數(shù)就不一樣了,符號位始終保持不變,負數(shù)的反碼就是對各數(shù)值位分別取反,如上圖所示的-5,反碼就是把1 0101變成1 1010。而負數(shù)的補碼等于其反碼加1,如1 1010 1=1 1011。


那么,反碼和補碼存在的意義又是什么呢?其實,補碼的作用就是使運算變得更方便快捷,一個數(shù)減去另一個數(shù),就等于這個數(shù)加上另一個數(shù)的相反數(shù)的補碼,從而把減法運算轉(zhuǎn)化為加法運算。


如下圖所示,求解11-5,5的相反數(shù)為-5,從而把11-5轉(zhuǎn)化為11 (-5的補碼),并舍去進位,后得到的結(jié)果恰好為6。



為什么把減法轉(zhuǎn)化為加法就可以變得方便呢?這是因為加法的電路可以更為容易設(shè)計,這是數(shù)字電路的知識,在此我就不再展開闡述,大家感興趣的可以自行了解。


類似于數(shù)字電路對原碼、反碼和補碼的定義,在PLC中,正數(shù)(符號位為0)直接用其原碼表示,而(符號位為1)負數(shù)就用其補碼表示。這說明,數(shù)據(jù)寄存器中的數(shù)據(jù)若為負數(shù),那它各個數(shù)位的值并不代表它本身的值,而是其補碼。例如D0所存的數(shù)據(jù)為H8003,如下圖所示,其高位b15=1,為負數(shù),所以這是補碼,不能認為D0的數(shù)值大小為-3。



由于高位為符號位,所以PLC中數(shù)值的取值范圍也會有所不同,如16位和32位的取值范圍如下圖所示,此時取值范圍顯然不是±65536(16位)。

另外,PLC中還對兩個數(shù)作出特別的規(guī)定,如圖所示的K0和K-32768,特別是B1000 0000 0000 0000不是表示負零。



知道了PLC中對正負數(shù)的定義,我們繼續(xù)往下看它是怎么定義整數(shù)和小數(shù)的。


二、PLC的定點數(shù)與浮點數(shù)

在PLC中,也可以根據(jù)小數(shù)點位置的不同,將數(shù)值分為整數(shù)和小數(shù)。其中整數(shù)就屬于定點數(shù),那么,所謂定點數(shù)具體指的又是什么呢?


1、定點數(shù)

所謂定點,是指小數(shù)點是固定的,要么在高位的左邊、要么在低位的右邊。



如上圖所示,若將小數(shù)點至于數(shù)值高位的左邊,該數(shù)值就為純小數(shù),所謂純小數(shù),就是指整數(shù)部分為零的數(shù),例如0.12、0.07等;若將小數(shù)點至于數(shù)值低位的右邊,該數(shù)值就為整數(shù),沒有小數(shù)部分,例如7、8、9等。一般都是采用整數(shù)的定點數(shù)表示,所以在談及定點數(shù)時,很多時候都默認是整數(shù)。


結(jié)合上文所提的符號位,即帶符號的二進制整數(shù)稱為BIN數(shù)。大家細心點也可以發(fā)現(xiàn),編程手冊中經(jīng)常出現(xiàn)“BIN”這個詞,沒錯,它代表的就是二進制整數(shù),而且?guī)в蟹枴?/span>



所以,在之后談及BIN運算指令時,要注意其數(shù)值的正負。


2、浮點數(shù)

所謂浮點數(shù),其實就是小數(shù),“浮點”表示小數(shù)點是浮動的,隨著小數(shù)點位置的不同,數(shù)值的大小也會有所不同。在了解浮點數(shù)之前,我們先來了解一個概念:科學計數(shù)法。


(1)科學計數(shù)法

科學記數(shù)法是一種記數(shù)的方法。就是把一個數(shù)表示成a×10n的形式。如下圖所示,其中底數(shù)10是固定不變的,變的是a和n,所以要用科學計數(shù)法去表示一個數(shù),只需知道a和n即可。



類似的,在PLC中,浮點數(shù)就是用科學計數(shù)法表示的,又因為它由兩部分構(gòu)成(a與10n),所以浮點數(shù)都是用32位表示,即占用兩個字元件。其中又分為十進制浮點數(shù)和二進制浮點數(shù)。


(2)十進制浮點數(shù)

根據(jù)上文所提,浮點數(shù)用兩個連續(xù)編號的數(shù)據(jù)寄存器(Dn 1,Dn)表示。如下圖所示,Dn保存浮點數(shù)的基數(shù),Dn 1保存浮點數(shù)的指數(shù),且兩個數(shù)都帶有符號位。例如(D0)=K666,(D1)=K-2,(D1,D0)就表示了十進制數(shù)666×10-2=6.66。



在三菱PLC FX2N中,基數(shù)和指數(shù)的取值范圍各有不同,表示基數(shù)的Dn的取值范圍為±1000~9999或0,表示指數(shù)的Dn 1的取值范圍為-41~35。另外,十進制浮點數(shù)中,小的數(shù)是1175×10-41,大的數(shù)為3402×1035。至于為什么是這樣,我也不甚清楚,反正這是PLC中的規(guī)定。



在PLC中,十進制浮點數(shù)是不能直接用來運算的,而是用二進制浮點數(shù)進行運算的,但它可以和二進制浮點數(shù)相互轉(zhuǎn)換,可用來進行數(shù)據(jù)監(jiān)視。這就像是計算機系統(tǒng),計算機中處理數(shù)據(jù)是基于二進制數(shù)的,但我們查看的時候看到的是十進制數(shù),這是因為計算機把二進制數(shù)轉(zhuǎn)換為十進制數(shù)以便我們查看。



(3)二進制浮點數(shù)

二進制浮點數(shù)在PLC中的表示比較復雜,如上圖所示,同樣是用兩個連續(xù)編號的數(shù)據(jù)寄存器表示,其高位(b31)仍然表示符號位,這個符號位表示的該浮點數(shù)本身的正負,而不是指數(shù)的正負。從上圖可以看出,指數(shù)N占有8位,即b30~b23,而基數(shù)a占有23位,即b22~b0。它們的取值如下圖所示,其中b0~b30的值為0或1。



雖然二進制浮點數(shù)的表示方式比較復雜,但是能不能完全理解它,都不妨礙我們對浮點數(shù)的理解,對數(shù)值運算指令的運用。所以,不理解二進制浮點數(shù)的表方法,問題不大,能理解二進制浮點數(shù)本身就行。


例如在三菱PLC FX3U中想輸入浮點數(shù)3.14,直接輸入“E3.14”就行,但在三菱PLC FX2N中不能直接輸入浮點數(shù),想輸入浮點數(shù),就得先輸入整數(shù),再運用相應(yīng)指令運算或轉(zhuǎn)化。

知道了這些數(shù)值的相關(guān)定義和處理方式,那么我們在下篇文章就可以繼續(xù)分享數(shù)值運算的相關(guān)指令啦!


后,這次的學習分享就到這里吧!

注:本文章內(nèi)容都是基于三菱FX PLC 2N所寫

選自《三菱FX系列PLC功能指令詳解》第五章第27~28課時

技成培訓網(wǎng)原創(chuàng),作者:楊思慧,未經(jīng)授權(quán)不得轉(zhuǎn)載,違者必究?。?/strong>


技成培訓

微信公眾號:jcpeixun


技成電工課堂

微信公眾號:jcdgkt


技成PLC課堂

微信公眾號:jc-plc

若有收獲,就點個贊吧!

文章來源于網(wǎng)絡(luò)及文獻如有侵權(quán)請聯(lián)系站長
分享到:

微信掃一掃分享

閱讀與本文標簽相同的文章

三菱PLC 三菱FX PLC

相關(guān)推薦

最新文章 熱門文章
最新課程 免費課程
PLC資料下載 電工電氣資料下載
應(yīng)用新秀
變頻器故障代碼查詢APP
伺服故障代碼查詢APP
技成
手機APP
熱門標簽