在三菱PLC中,AD和DA是怎么進(jìn)行轉(zhuǎn)換的?三菱PLC模擬量讀取和數(shù)字量轉(zhuǎn)換,請(qǐng)閱讀下面文章一起來(lái)了解下。
在拿到DA模塊說(shuō)明書(shū)時(shí),有很多人看不懂里面的說(shuō)的什么,怎么樣,對(duì)于A(yíng)D和DA是如何轉(zhuǎn)換的不清楚,今天就將一下轉(zhuǎn)換機(jī)制:
AD和DA模塊中有個(gè)緩沖存儲(chǔ)器分配(BFM),它是與PLC數(shù)據(jù)交換時(shí)暫時(shí)存放數(shù)據(jù)的地方,F(xiàn)X2N的BFM使用如下表:
BFM很多人看不懂這個(gè)表說(shuō)的什么,首先BFM是16位存儲(chǔ),(PLC中的16位、32位就是二進(jìn)制的位而不是10進(jìn)制)。
b15、b14、b13、b12、b11、b10、b9、b8、b7、b6、b5、b4、b3、b2、b1、b0、對(duì)于FX2DA,我們只用到BFM的16和17兩個(gè)編號(hào),其他保留不用看,在#16里面,只用前8位,b7~b0,其他保留不用看。#17里面,只用到b2~b0,其他保留不用看。這就簡(jiǎn)單了。這個(gè)BFM怎么和PLC進(jìn)行數(shù)據(jù)交換呢,用From和to指令來(lái)完成,F(xiàn)orm是從BFM中取數(shù)據(jù),to是存數(shù)據(jù)。
FX2DA轉(zhuǎn)換的數(shù)字量最大為4000,也就是2^12,因此DA模塊只能轉(zhuǎn)換12位數(shù)據(jù),而#16只能暫存儲(chǔ)8位數(shù)據(jù),怎么辦?那就分兩次以低8位和高4位順序進(jìn)行寫(xiě),所以才有低8位數(shù)據(jù)保持,不然第二次就把第一次寫(xiě)的覆蓋掉了。
#17里面有b2~b0,它的功能是:
b0:通過(guò)將1改變?yōu)?,通道2的D/A轉(zhuǎn)換開(kāi)始
b1:通過(guò)將1改變?yōu)?,通道2的D/A轉(zhuǎn)換開(kāi)始
b2:通過(guò)將1改變?yōu)?,D/A轉(zhuǎn)換的低8位數(shù)據(jù)保持。
這里是什么意思呢?
想要通道2的D/A轉(zhuǎn)換開(kāi)始,就必須要降b0的值從1變成0,怎么實(shí)現(xiàn)呢,先傳送個(gè)1給b0,再傳送個(gè)0就好了。
想要通道1的D/A轉(zhuǎn)換開(kāi)始,就必須要降b1的值從1變成0,怎么實(shí)現(xiàn)呢,先傳送個(gè)1給b1,再傳送個(gè)0就好了。
想要通D/A轉(zhuǎn)換的低8位數(shù)據(jù)保持,就必須要降b2的值從1變成0,怎么實(shí)現(xiàn)呢,先傳送個(gè)1給b2,再傳送個(gè)0就好了。
已說(shuō)明書(shū)例子來(lái)講解下如何實(shí)現(xiàn)的:
DA模塊PLC程序
a:數(shù)字?jǐn)?shù)據(jù)D100擴(kuò)展到輔助繼電器(M100~M115),K4M100表示M100~M115,k1表示連續(xù)4個(gè)M,例如下面的K2M100就表示M100~M107。(為什么要用M來(lái)表示D呢,因?yàn)槲抑晦D(zhuǎn)換12位,D是16位的)
D換成M(12位數(shù)據(jù)的傳輸)M怎么能存儲(chǔ)數(shù)據(jù)呢,因此M是個(gè)位軟元件,只有斷開(kāi)(0)和閉合(1),而PLC數(shù)據(jù)都是二進(jìn)制處理的,比如字軟元件D是16位的,所以就能通過(guò)M來(lái)表示,一個(gè)D需要16個(gè)M來(lái)儲(chǔ)存。
b:這條指令時(shí)將數(shù)據(jù)D100的低8位傳送到BFM的#16編號(hào)進(jìn)行輸出。
c:將D100的低8位寫(xiě)到#16后,還要寫(xiě)高4位,為了不覆蓋,得先把低8位保持,c的指令就是保持功能,H0004是16進(jìn)制的數(shù)字4.轉(zhuǎn)換成二進(jìn)制就是100,對(duì)應(yīng)b2b1b0;c的第一條指令就是將b2置1,第二條將b2置0,這樣就完成#17的低8位保持功能了。
c指令的低8位保持功能
e:e的指令就是D/A轉(zhuǎn)換,H0002是16進(jìn)制的數(shù)字2.轉(zhuǎn)換成二進(jìn)制就是010,對(duì)應(yīng)b2b1b0;c的第一條指令就是將b1置1,第二條將b1置0,這樣就完成#17D/A轉(zhuǎn)換功能。
DA轉(zhuǎn)換開(kāi)始功能
以上就是DA模塊與PLC之間的數(shù)據(jù)轉(zhuǎn)換過(guò)程。