西門子PLC模塊6ES73125BF040AB0,。
西門子PLC模塊6ES73125BF040AB0。
如何在WinCC中獲取與S7-300/400 CPU的通訊狀態(tài)
WinCC項目中通訊連接至關(guān)重要,獲取連接通訊狀態(tài)能有效的判斷當前系統(tǒng)的運行情況,,及時處理問題,。
1 畫面中添加控件來獲取通訊狀態(tài)
WinCC 提供工具“Channel Diagonsis"來判斷項目中連接的通訊狀態(tài),此工具在操作系統(tǒng) “開始"—>“Simatic"—>“WinCC"—>“Tools"目錄下可以找到,。此工具也可以添加到WinCC畫面中使用,。

圖1
打開WinCC“圖形編輯器",在右邊“對象選項板"中選擇“控件"列表,,如果是V6.2的系統(tǒng)在列表空白區(qū)域點擊鼠標右鍵選擇“添加/刪除"(圖1),,如果是V7.0的系統(tǒng)需要先選中“ActiveX 控件",再點擊鼠標右鍵選擇“添加/刪除"(圖2),。

圖2
打開“選擇OCX控件"對話框,,在OCX控件列表中找到并且選中“WinCC Channel Diagonsis Control"控件(圖3),點擊確定,。然后在選項板控件列表中就能找到此控件,,把此控件添加到畫面中,激活WinCC項目,。

一個編碼元件與之嚙合,,該連接器只能插入同類模塊。FM357可以用于多4個插補軸的協(xié)同定位,。反向定標后的輸出值隨著輸入值的增大而減小,。
圖3
項目激活運行后,通道診斷控件會顯示項目中通訊連接的通訊狀態(tài),,綠勾表示通訊正常,,紅叉表示通訊故障。選中故障鏈接,,在右邊列表中能顯示出此故障的錯誤代碼(圖4),。

圖4
錯誤代碼的說明可以在幫助文檔“S7CHNERRORchs.HLP"中查到,此幫助文檔在 WinCC 的安裝路徑下(如:C:ProgramsSiemensWinCCbin )找到,。
如果輸入的整形數(shù)小于K1,,輸出限位到LO_LIM ,并返回錯誤代碼,。2,、STEP 7中模擬量輸入/輸出的編程2.1 FC105/FC106庫文件位置在編程界面下,,在Program elements中的 Libraries下的Standard Library下的 TI-S7 Converting Blocks中就可以找到,,見下圖:注意: 請不要使用S5-S7 Converting Blocks下的 FC105, FC106,該路徑下的功能是用于S5輸入輸出模板的,,在S7 輸入輸出模板上無法使用,。
2 根據(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é)果列表中“其他"范圍對應的文本修改成“通訊已連接"。選擇“變量狀態(tài)",,在彈出的狀態(tài)列表中,,把“沒有連接"范圍對應的文本修改成“通訊干擾"(圖7),應用此設(shè)置,。

圖7
項目激活運行后,,如果通訊正常,靜態(tài)文本會顯示“通訊已連接",,如果通訊故障會顯示“通訊干擾",。(具體故障原因可檢查通道診斷)
2.標準型CPU:CPU312,CPU313,,314,,315,315-2DP和316-2DP,。2.標準型CPU:CPU312,,CPU313,314,,315,,315-2DP和316-2DP。2.2.1 FC105 功能描述SCALE( FC105 )功能將一個整形數(shù)INTEGER( IN)轉(zhuǎn)換成上限,、下限之間的實際的工程值(LO_LIM and HI_LIM) ,,結(jié)果寫到OUT。
此組態(tài)方法也可應用到其他對象,,例如修改對象的背景顏色等,。
3 使用腳本獲取通訊狀態(tài)
上一章節(jié)是把變量的“變量狀態(tài)"直接與對象屬性關(guān)聯(lián),這個“變量狀態(tài)"也可以直接使用腳本來讀取,,在腳本中判斷通訊狀態(tài),,繼而執(zhí)行比較復雜的邏輯操作,。
首先在需要監(jiān)控的通訊鏈接下新建一個變量“status",地址取位存儲區(qū)首地址(圖5),。
打開“全局腳本"—>“C-Editor",,新建一個“動作",編寫如下代碼(圖8),。腳本中“GetTagDWordState"函數(shù)獲取了變量的變量狀態(tài),,然后使用If語句執(zhí)行判斷。

圖8
在工具欄上點擊“信息/觸發(fā)",,(“信息/觸發(fā)"按鈕在V6.2系統(tǒng)中圖標參考圖8,,如果是V7.0系統(tǒng)中圖標參考圖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)負擔過大,導致腳本不執(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",,點擊鼠標右鍵選擇“系統(tǒng)參數(shù)",,在對話框中選擇 “CPU 停機監(jiān)控"取消“激活",則不對CPU的STOP狀態(tài)進行監(jiān)控,。

西門子PLC模塊6ES73211EL000AA0:待審核