假設(shè)模擬量的標(biāo)準(zhǔn)電信號(hào)是 A0—Am(如:4—20mA),A/D轉(zhuǎn)換后數(shù)值為D0—Dm(如:6400—32000) ,設(shè)模擬量的標(biāo)準(zhǔn)電信號(hào)是A,A/D轉(zhuǎn)換后的相應(yīng)數(shù)值為D,由于是線性關(guān)系,函數(shù)關(guān)系
A=f(D)可以表示為數(shù)學(xué)方程:
A=(D-D0)×(Am-A0)/(Dm-D0)+A0。
D=(A-A0)×(Dm-D0)/(Am-A0)+D0。
A=(D-6400)×(20-4)/(32000-6400)+4
假設(shè)該模擬量與AIW0對(duì)應(yīng),則當(dāng)AIW0的值為12800時(shí),相應(yīng)的模擬電信號(hào)是6400×16/25600+4=8mA。
又如,某溫度傳感器,-10—60℃與4—20mA相對(duì)應(yīng),以T表示溫度值,AIW0為PLC模擬量采樣值,則根據(jù)上式直接代入得出:T=70×(AIW0-6400)/25600-10 可以用T直接顯示溫度值。
模擬量值和A/D轉(zhuǎn)換值的轉(zhuǎn)換理解起來比較困難,該段多讀幾遍,結(jié)合所舉例子,就會(huì)理解。為了讓您方便地理解,我們?cè)倥e一個(gè)例子:
VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100 (單位:KPa)
編程實(shí)例
您可以組建一個(gè)小的實(shí)例系統(tǒng)演示模擬量編程。本實(shí)例的的CPU是CPU222,僅帶一個(gè)模擬量擴(kuò)展模塊EM235,該模塊的第一個(gè)通道連接一塊帶4—20mA變送輸出的溫度顯示儀表,該儀表的量程設(shè)置為0—100度,即0度時(shí)輸出4mA,100度時(shí)輸出20mA。溫度顯示儀表的鉑電阻輸入端接入一個(gè)220歐姆可調(diào)電位器。
通用比例換算公式
圖1. 模擬量比例換算關(guān)系
實(shí)用指令庫(kù)
在STEP 7-Micro/WIN Programming Tips(Micro/WIN編程技巧中)的Tip38就是關(guān)于如何實(shí)現(xiàn)上述轉(zhuǎn)換的例程。為便于用戶使用,現(xiàn)已將其導(dǎo)出成為“自定義指令庫(kù)”,用戶可以添加到自己的Micro/WIN編程軟件中應(yīng)用。
模擬量比例換算指令庫(kù)和例子
注意:此指令庫(kù)/程序的作者和擁有者對(duì)于該軟件的功能性和兼容性不負(fù)任何責(zé)任。使用該軟件的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門子技術(shù)支持與服務(wù)部門。 在這個(gè)指令庫(kù)中,子程序Scale_I_to_R可用來進(jìn)行模擬量輸入到S7-200內(nèi)部數(shù)據(jù)的轉(zhuǎn)換;子程序Scale_R_I可用于內(nèi)部數(shù)據(jù)到模擬量輸出的轉(zhuǎn)換。
本文來源于網(wǎng)絡(luò),版權(quán)歸原作者所有。但因轉(zhuǎn)載眾多,無法確認(rèn)原作者,故僅標(biāo)明轉(zhuǎn)載來源。