西門子S7-200plc模擬量編程
本文以EM235為(wei) 例講解S7-200模擬量編程,主要包括以下內(nei) 容: 1、模擬量擴展模塊接線圖及模塊設置 2、模擬量擴展模塊的尋址
3、模擬量值和A/D轉換值的轉換 4、編程實例
模擬量擴展模塊接線圖及模塊設置
EM235是最常用的模擬量擴展模塊,它實現了4路模擬量輸入和1路模擬量輸出功能。下麵以EM235為(wei) 例講解模擬量擴展模塊接線圖,如圖1。
圖1
圖1演示了模擬量擴展模塊的接線方法,對於(yu) 電壓信號,按正、負極直接接入X+和X-;對於(yu) 電流信號,將RX和X+短接後接入電流輸入信號的“+”端;
未連接傳(chuan) 感器的通道要將X+和X-短接。
對於(yu) 某一模塊,隻能將輸入端同時設置為(wei) 一種量程和格式,即相同的輸入量程和分辨率。(後麵將詳細介紹)
量的單/雙極性、增益和衰減。
時,模擬量輸入為(wei) 單極性輸入,SW6為(wei) OFF時,模擬量輸入為(wei) 雙極性輸入。
SW4和SW5決(jue) 定輸入模擬量的增益選擇,而SW1,SW2,SW3共同決(jue) 定了模擬量的衰減選擇。
6個(ge) DIP開關(guan) 決(jue) 定了所有的輸入設置。也就是說開關(guan) 的設置應用於(yu) 整個(ge) 模塊,開關(guan) 設置也隻有在重新上電後才能生效。 輸入校準
模擬量輸入模塊使用前應進行輸入校準。其實出廠前已經進行了輸入校準,如果OFFSET和GAIN電位器已被重新調整,需要重新進行輸入校準。其步驟如下: A、切斷模塊電源,選擇需要的輸入範圍。
B、接通CPU和模塊電源,使模塊穩定15分鍾。
C、用一個(ge) 變送器,一個(ge) 電壓源或一個(ge) 電流源,將零值信號加到一個(ge) 輸入端。 D、讀取適當的輸入通道在CPU中的測量值。
E、調節OFFSET(偏置)電位計,直到讀數為(wei) 零,或所需要的數字數據值。 F、將一個(ge) 滿刻度值信號接到輸入端子中的一個(ge) ,讀出送到CPU的值。
G、調節GAIN(增益)電位計,直到讀數為(wei) 32000或所需要的數字數據值。 H、必要時,重複偏置和增益校準過程。 EM235輸入數據字格式
下圖給出了12位數據值在CPU的模擬量輸入字中的位置
圖2
可見,模擬量到數字量轉換器(ADC)的12位讀數是左對齊的。最高有效位是符號位,0表示正值。在單極性格式中,3個(ge) 連續的0使得模擬量到數字量轉換器(ADC)每變化1個(ge) 單位,數據字則以8個(ge) 單位變化。在雙極性格式中,4個(ge) 連續的0使得模擬量到數字量轉換器每變化1個(ge) 單位,數據字則以16為(wei) 單位變化。
EM235輸出數據字格式
圖3給出了12位數據值在CPU的模擬量輸出字中的位置:
圖3
數字量到模擬量轉換器(DAC)的12位讀數在其輸出格式中是左端對齊的,最高有效位是符號位,0表示正值。
模擬量擴展模塊的尋址
每個(ge) 模擬量擴展模塊,按擴展模塊的先後順序進行排序,其中,模擬量根據輸入、輸出不同分別排序。模擬量的數據格式為(wei) 一個(ge) 字長,所以地址必須從(cong) 偶數字節開始。例如:AIW0,AIW2,AIW4 、AQW0,AQW2 。每個(ge) 模擬量擴展模塊至少占兩(liang) 個(ge) 通道,即使第一個(ge) 模塊隻有一個(ge) 輸出AQW0,第二個(ge) 模塊模擬量輸出地址也應從(cong) AQW4開始尋址,以此類推。
圖4演示了CPU224後麵依次排列一個(ge) 4輸入/4輸出數字量模塊,一個(ge) 8輸入數字量模塊,一個(ge) 4模擬輸入/1模擬輸出模塊,一個(ge) 8輸出數字量模塊,一個(ge) 4模擬輸入/1模擬輸出模塊的尋址情況,其中,灰色通道不能使用。
圖4
模擬量值和A/D轉換值的轉換
假設模擬量的標準電信號是A0—Am(如:4—20mA),A/D轉換後數值為(wei) D0—Dm(如:6400—32000),設模擬量的標準電信號是A,A/D轉換後的相應數值為(wei) D,由於(yu) 是線性關(guan) 係,函數關(guan) 係A=f(D)可以表示為(wei) 數學方程:
A=(D-D0)×(Am-A0)/(Dm-D0)+A0。
根據該方程式,可以方便地根據D值計算出A值。將該方程式逆變換,得出函數關(guan) 係D=f(A)可以表示為(wei) 數學方程:
D=(A-A0)×(Dm-D0)/(Am-A0)+D0。
具體(ti) 舉(ju) 一個(ge) 實例,以S7-200和4—20mA為(wei) 例,經A/D轉換後,我們(men) 得到的數值是6400—32000,即A0=4,Am=20,D0=6400,Dm=32000,代入公式,得出:
A=(D-6400)×(20-4)/(32000-6400)+4 假設該模擬量與(yu) AIW0對應,則當AIW0的值為(wei) 12800時,相應的模擬電信號是6400×16/25600+4=8mA。
又如,某溫度傳(chuan) 感器,-10—60℃與(yu) 4—20mA相對應,以T表示溫度值,AIW0為(wei) PLC模擬量采樣值,則根據上式直接代入得出:
T=70×(AIW0-6400)/25600-10 可以用T 直接顯示溫度值。
模擬量值和A/D轉換值的轉換理解起來比較困難,該段多讀幾遍,結合所舉(ju) 例子,就會(hui) 理解。為(wei) 了讓您方便地理解,我們(men) 再舉(ju) 一個(ge) 例子:
某壓力變送器,當壓力達到滿量程5MPa時,壓力變送器的輸出電流是20mA,AIW0的數值是32000。可見,每毫安對應的A/D值為(wei) 32000/20,測得當壓力為(wei) 0.1MPa時,壓力變送器的電流應為(wei) 4mA,A/D值為(wei) (32000/20)×4=6400。由此得出,AIW0的數值轉換為(wei) 實際壓力值(單位為(wei) KPa)的計算公式為(wei) :
VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(單位:KPa)
編程實例
您可以組建一個(ge) 小的實例係統演示模擬量編程。本實例的的CPU是CPU222,僅(jin) 帶一個(ge) 模擬量擴展模塊EM235,該模塊的第一個(ge) 通道連接一塊帶4—20mA變送輸出的溫度顯示儀(yi) 表,該儀(yi) 表的量程設置為(wei) 0—100度,即0度時輸出4mA,100度時輸出20mA。溫度顯示儀(yi) 表的鉑電阻輸入端接入一個(ge) 220歐姆可調電位器,
簡單編程如下:
溫度顯示值=(AIW0-6400)/256
編譯並運行程序,觀察程序狀態,VW30即為(wei) 顯示的溫度值,對照儀(yi) 表顯示值是否一致。