(1)模擬量值和A/D轉換值的轉換是成線性關(guan) 係的。假設模擬量的標準電信號是A0~Am(如4~20mA),A/D轉換後的數值為(wei) D0~Dm(如6 400~32 000),設模擬量的標準電信號是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
(2)具體(ti) 舉(ju) 一個(ge) 實例,以S7-200和4~20mA為(wei) 例,經A/D轉換後,得到的數值是6 400~32 000,即A0=4,Am=20,D0=6 400,Dm=32 000,代入公式,得出:
A=(D-6400)×(20-4)/(32000-6400)+4
假設該模擬量與(yu) AIW0對應,則當AIW0的值為(wei) 12800時,相應的模擬電信號是6400×16/25600+4=8mA。
例如,當輸入模擬量設定為(wei) 電流信號的輸入,在S7-200 CPU內(nei) 部,電流信號0-20mA對應於(yu) 數值範圍0-32000;但是對於(yu) 4-20mA的信號,對應的內(nei) 部數值為(wei) 6400-32000。那可能有學員不知道這個(ge) 6400是怎麽(me) 算來的?其實這裏的數字量和電流是成正比的,隻需要按比例去算就可以了。因為(wei) 電流信號0-20mA對應於(yu) 數值範圍0-32000,那麽(me) 1mA對應的數字量就是32000/20=1600,而4mA對應的數字量就等於(yu) 4*1600,等於(yu) 6400。(這裏是以S7-200 PLC來作為(wei) 舉(ju) 例,對於(yu) S7-200 SMART S7-300 400等等PLC也是同理的,隻是對應的數字量不同而已)
不同的傳(chuan) 感變送器,通過不同的模擬量輸入輸出模塊進行轉換,其轉換公式是不一樣的,如果選用的轉換公式不對,編出的程序肯定是錯誤的。比如有3個(ge) 溫度傳(chuan) 感變送器:
(1)、測溫範圍為(wei) 0~200 ,變送器輸出信號為(wei) 4~20ma
(2)、測溫範圍為(wei) 0~200 ,變送器輸出信號為(wei) 0~5V
(3)、測溫範圍為(wei) -100 ~500 ,變送器輸出信號為(wei) 4~20ma
(1)和(2)二個(ge) 溫度傳(chuan) 感變送器,測溫範圍一樣,但輸出信號不同,(1)和(3)傳(chuan) 感變送器輸出信號一樣,但測溫範圍不同,這3個(ge) 傳(chuan) 感變送器既使選用相同的模擬量輸入模塊,其轉換公式也是各不相同。
下麵選用S7-200的模擬量輸入輸出模塊EM235的參數為(wei) 依據對上述的3個(ge) 溫度傳(chuan) 感器進行轉換公式的推導:
對於(yu) (1)和(3)傳(chuan) 感變送器所用的模塊,其模擬量輸入設置為(wei) 0~20ma電流信號 ,20ma
對應數子量=32000,4 ma對應數字量=6400;
對於(yu) (2)傳(chuan) 感變送器用的模塊,其模擬量輸入設置為(wei) 0~5V電壓信號,5V對應數字量=32000,0V對應數字量=0;
這3種傳(chuan) 感変送器的轉換公式該如何推導的呢?這要借助與(yu) 數學知識幫助,請看下圖: