ob体育竞彩 _欧宝体育在线链接 學習網站
當前位置: ob体育竞彩 > plc> 西門子plc> 正文

如何編寫模擬量采集程序塊

時間:2018-01-30 20:30 來源:ob体育竞彩

模擬量模塊工作原理:通過模數轉換器(A-D轉換),將模擬量信號轉換成數字量信號。並且以二進製補碼的形式表示,占用兩個字節,共16位,最高位為符號位。
16位二進製補碼表示的數值範圍是-32768~+32767,但模塊的測量範圍卻不與數值範圍相同。
測量範圍為-27648~+27648,比如測量的電壓為±10V,那麼對應關係就是:
-10V=-27648
+10V=+27648
數值範圍與測量範圍的不同,可以表示當傳感器輸入信號超限時的數據,這樣CPU就能對故障進行診斷。
下表是輸入信號與轉換的數字值之間的對應關係:


1、模擬量值的規範化
剛才講了,無論外部的信號是什麼(溫度、壓力、流量、速度),這些信號經模塊轉換後都用-27648~+27648範圍的整數表示,這個整數沒有單位,更不容易記憶。
我們在程序中使用模擬量時,如果程序中的數值和實際中的情況一致,那麼將會更加方便。把無意義的數值轉換成有實際意義的數據,就是模擬量的規範化。
2、SCALE指令
在經典STEP7軟件中通過庫的方式,提供規範化程序模塊,在博途中把這些常用的功能塊做成了指令。
SCALE指令就相當於經典STEP7中的FC105,用法相同。
示例:利用壓力傳感器通過4-20mA信號,采集壓力值,壓力變送器量程0~0.6MPa,如果利用SCALE指令采集模擬量數據,如下圖所示:

IN:模擬量數據地址,在硬件組態中可查到具體地址,以%IW開頭(與經典STEP7不同)。
HI_LIM:量程上限,本示例為壓力變送器上限量程0.6,數據類型為浮點數。
LO_LIM:量程下限,本示例為壓力變送器上限量程0.0,數據類型為浮點數。
RET_VAL:錯誤代碼,當轉換出錯時可根據代碼提示查找錯誤。
OUT:轉換值,通過指令規範化後的實際值,數據類型為浮點數。
BIPOLAR:極性選擇,0=單極性,1=雙極性。
除了利用SCALE指令進行數據轉換,當然你也可以自己利用數學方法,構造出轉換程序,博途中提供很方便的指令。
但是我不建議你這麼做,既然有了SCALE指令再去自己寫算法,顯然這麼做很浪費精力。這些指令經過了多次驗證,肯定不會出問題,自己編寫的程序,容易出差錯。
在博途中增加了縮放SCALE_X和NORM_X標準化兩個指令,也可以通過這兩個指令進行規範化,但要比SCALE指令複雜點,可以試著自己編寫。
3、循環采集
對於模擬量信號,在短時間內不會出現很大的波動,沒必要在主程序中每個周期都掃描采集,可以利用循環中斷,實現固定時間間隔進行采樣。
新建一個組織塊,類型選擇為Cyclic interrupt(循環中斷),如下圖所示:

上圖中的時間間隔單位是μs,數值範圍250~60000000(250μs~60s)
把我們編寫的模擬量采集程序塊,拖拽到循環中斷OB30中,即可實現每隔500ms對模擬量進行一次采樣。

    看過《如何編寫模擬量采集程序塊》的人還看了以下文章
    S7-200的特殊存儲器SM S7-200的特殊存儲器SM
    1、 SMB0字節:(係統狀態位) SM0.0 PLC運行時這一位始終為l,是常0N繼電器。 SM0.l PLC首次掃描時為1一個掃描周期。用途之一是調用初始化使用。 SM0.2 若保持數據丟失,該位為1一個掃描周期。 SM0.3 開機進入RUN方式將ON一個掃描周期。 SM0.4 該位提供了一個...
    如何備份s7-300plc程序 如何備份s7-300plc程序
    備份S7-300程序 1:打開Simatic manager, File>New雙擊打開; 2:點擊 Browse , 出現一個新窗口如下; 選擇一個目錄/創建一個新文件夾來保存備份。 3:接下來,進入option菜單,出現一個下拉列表,如下圖所示。 選擇PG/PC接口選項。 4:一個新的窗口將打...
    在西門子PLC中讀取或搜索Tag的過程 在西門子PLC中讀取或搜索Tag的過程
    1:打開Siemens Simatic Manager 2:搜索所需的PLC程序,然後按OK。 3:點擊S7程序,然後點擊符號如下圖所示。 4:將打開一個新窗口並按ok。 5:打開菜單Find and Replace 輸入所需查詢的tag。假設我們需要一個溫度變送器,所以輸入temp文本。 然後點擊Find...
    西門子plc程序暫停功能怎麼實現 西門子plc程序暫停功能怎麼實現
    這個沒有做過數控係統開發的,根本不知道這裏麵的門道。注意,對於運動控製特別是有位置控製的話,暫停並不是將當前脈衝停止即可,大多數情況下必須有個減速暫停功能,否則會造成伺服報警或步進丟步。當然大多數PLC能實現此功能,點動情況實際上就是這樣操作...
    西門子PLC用少數IO接口連接更多按鈕的方法 西門子PLC用少數IO接口連接更多按鈕的方法
    西門子PLC為例說明用少數IO接口連接更多按鈕的方法。 接線如圖一所示: 梯形圖如圖二所示: 在這個例子中使用了SB0到SB5共6個按鈕,占用6個輸入口。操作時,按下按鈕SB0,再分別按其它按鈕,可以得到5個按鈕信號;不按按鈕SB0,操作其它按鈕,又可以得到5個按鈕...
    Baidu
    map