6ES7338-4BC01-0AB0全國包郵
6ES7355-2SH00-0AE0
根據(jù)通訊狀態(tài)改變對象屬性
在連接中所建的變量,在通訊時都會帶有變量狀態(tài)信息,變量狀態(tài)包含WinCC 和自動化設(shè)備之間的連接狀態(tài)。通過獲取這個變量狀態(tài),我們就能得知變量所在連接的通訊狀態(tài)。
首先在需要監(jiān)控的通訊連接下新建一個變量“status",地址取位存儲區(qū)首地址(圖5)。
在此文檔中我們以靜態(tài)文本來舉例。在畫面中添加一個靜態(tài)文本,選擇對象屬性“字體"à “文本",在動態(tài)列表中選擇“動態(tài)對話框"(圖6)。
圖6
在動態(tài)對話框中,表達式/公式選擇變量“status",把表達式/公式的結(jié)果列表中“其他"范圍對應(yīng)的文本修改成“通訊已連接"。選擇“變量狀態(tài)",在彈出的狀態(tài)列表中,把“沒有連接"范圍對應(yīng)的文本修改成“通訊干擾"(圖7),應(yīng)用此設(shè)置。
圖7
項目激活運行后,如果通訊正常,靜態(tài)文本會顯示“通訊已連接",如果通訊故障會顯示“通訊干擾"。(具體故障原因可檢查通道診斷)
將外部的本質(zhì)-安全設(shè)備(用于有爆炸危險區(qū)域的傳感器和執(zhí)行器)與PLC非本質(zhì)-安全內(nèi)部回路隔離。轉(zhuǎn)換后的數(shù)字為N時,對應(yīng)的有功功率為0.6265N(kW),如果以kW為單位顯示功率P,使用定點數(shù)運算時的計算公式為P=NX6265/10000(kW)【例2-4】用于測量鍋爐爐膛壓力(-60Pa~60Pa)的變送器的輸出信號為4~20mA,模擬量輸入模塊將0~20mA轉(zhuǎn)換為數(shù)字0~27648,設(shè)轉(zhuǎn)換后得到的數(shù)字為N,試求以0.1Pa為單位的壓力值。反向定標(biāo)后的輸出值隨著輸入值的增大而減小。
此組態(tài)方法也可應(yīng)用到其他對象,例如修改對象的背景顏色等。
3 使用腳本獲取通訊狀態(tài)
上一章節(jié)是把變量的“變量狀態(tài)"直接與對象屬性關(guān)聯(lián),這個“變量狀態(tài)"也可以直接使用腳本來讀取,在腳本中判斷通訊狀態(tài),繼而執(zhí)行比較復(fù)雜的邏輯操作。
首先在需要監(jiān)控的通訊鏈接下新建一個變量“status",地址取位存儲區(qū)首地址(圖5)。
打開“全局腳本"—>“C-Editor",新建一個“動作",編寫如下代碼(圖8)。腳本中“GetTagDWordState"函數(shù)獲取了變量的變量狀態(tài),然后使用If語句執(zhí)行判斷。
圖8
在工具欄上點擊“信息/觸發(fā)",(“信息/觸發(fā)"按鈕在V6.2系統(tǒng)中圖標(biāo)參考圖8,如果是V7.0系統(tǒng)中圖標(biāo)參考圖9)在屬性選項板上選擇“觸發(fā)器"à“定時器"à“周期",然后點擊“添加"按鈕,在彈出對話框中填寫觸發(fā)器名稱“Action1",然后定義“周期"5秒。這種組態(tài)(圖10)會讓此腳本在WinCC運行期間以5秒的時間間隔,循環(huán)執(zhí)行。
圖9
圖10
注意事項:
1.項目運行前必須把計算機屬性“啟動"列表中“全局腳本行系統(tǒng)"給勾選上(圖11)。
2.腳本的執(zhí)行周期用戶可根據(jù)項目自行修改,但是不建議執(zhí)行周期過密。因為在WinCC系統(tǒng)中腳本是單進程的,如果腳本中有很耗時的執(zhí)行過程,過密的執(zhí)行周期會造成系統(tǒng)負擔(dān)過大,導(dǎo)致腳本不執(zhí)行或者系統(tǒng)運行緩慢等現(xiàn)象。
圖11
4 CPU停機監(jiān)控
這里需要注意一點,WinCC系統(tǒng)的默認設(shè)置是會監(jiān)控CPU的STOP狀態(tài)的,如果CPU打到STOP狀態(tài),也會顯示通訊故障,通道診斷的錯誤代碼“ 7001" 。這個默認設(shè)置可修改(圖12),打開變量管理器,選擇所用通訊協(xié)議,例如“TCP/IP",點擊鼠標(biāo)右鍵選擇“系統(tǒng)參數(shù)",在對話框中選擇 “CPU 停機監(jiān)控"取消“激活",則不對CPU的STOP狀態(tài)進行監(jiān)控。
西門子S7-200網(wǎng)絡(luò)的通訊設(shè)置和元件選擇
S7-200的端口是不隔離的,如果想使網(wǎng)絡(luò)隔離,應(yīng)考慮使用RS-485中繼器或者EM277。
注意:
●具有不同電位的互聯(lián)設(shè)備有可能導(dǎo)致不希望的電流流過連接電纜。
●這種不希望的電流可能導(dǎo)致通訊失敗或者設(shè)備損壞。
●要確保用通訊電纜連接的所有設(shè)備有相同的參考電位,或者彼此隔離,來避免產(chǎn)生這種不希望的電流。
為網(wǎng)絡(luò)確定通訊距離、通訊速率和電纜類型
網(wǎng)段的大長度取決于兩個因素:隔離(用RS-485中繼器)和波特率。但連接具有不同電位的設(shè)備是需要隔離。當(dāng)接地點之間的距離很遠時,有可能具有不同的地電位。即使距離較近,大型機械的負載電流也能導(dǎo)致地電位的不同。
表1 網(wǎng)絡(luò)電纜的大長度
波特率 | 非隔離CPU口1 | 有中繼器的CPU口或者EM277 |
9.6K到187.5K | 50m | 1000m |
500k | 不支持 | 400m |
1M到1.5M | 不支持 | 200m |
3M到12M | 不支持 | 100m |
1 如果不是用隔離端和中繼器,允許的大距離為50m。測量該距離時,從網(wǎng)段的一個節(jié)點開始。到網(wǎng)段的后一個節(jié)點。
在網(wǎng)絡(luò)中使用中繼器
RS-485中繼器為網(wǎng)段提供偏壓電阻和終端電阻。目的是為了:
●增加網(wǎng)絡(luò)的長度:在網(wǎng)絡(luò)中使用一個中繼器可以使網(wǎng)絡(luò)的通訊距離擴展50m。如果使用兩個中繼器而且中間沒有其他節(jié)點,網(wǎng)絡(luò)的通訊距離按照所使用的波特率擴展一個網(wǎng)段的長度。在一個串聯(lián)網(wǎng)絡(luò)中,多可以使用9個中繼器。但網(wǎng)絡(luò)的長度不能超過9600m.
●為網(wǎng)絡(luò)增加設(shè)備:在9600的波特率下。50米距離之內(nèi),一個網(wǎng)段多可以連接32個設(shè)備,使用一個中繼器允許在網(wǎng)絡(luò)上增加32個設(shè)備。
●在不同的網(wǎng)段之間電隔離:如果不同的網(wǎng)段具有不同的地電位,將他們隔離會提高網(wǎng)絡(luò)的通訊質(zhì)量。
一個中繼器在網(wǎng)絡(luò)中被算作網(wǎng)段的一個節(jié)點,但沒有被站地址。