同類(lèi)產(chǎn)品
在WinCC中獲取西門(mén)子S7-300/400 CPU的通訊狀態(tài)
如何在WinCC中獲取與S7-300/400 CPU的通訊狀態(tài)
WinCC項(xiàng)目中通訊連接至關(guān)重要,獲取連接通訊狀態(tài)能有效的判斷當(dāng)前系統(tǒng)的運(yùn)行情況,及時(shí)處理問(wèn)題。
此文檔提供了三種方式來(lái)獲取通訊連接狀態(tài)。文檔中所述的樣例,是已經(jīng)建立了與S7-300/400 CPU的通訊連接。關(guān)于通訊設(shè)置的具體步驟請(qǐng)參考文檔《WinCC連接Siemens PLC的常用方法》
文檔適用于WinCC 6.2或WinCC 7.0系統(tǒng)。
1 畫(huà)面中添加控件來(lái)獲取通訊狀態(tài)
WinCC 提供工具“Channel Diagonsis”來(lái)判斷項(xiàng)目中連接的通訊狀態(tài),此工具在操作系統(tǒng) “開(kāi)始”—>“Simatic”—>“WinCC”—>“Tools”目錄下可以找到。此工具也可以添加到WinCC畫(huà)面中使用。
圖1
打開(kāi)WinCC“圖形編輯器”,在右邊“對(duì)象選項(xiàng)板”中選擇“控件”列表,如果是V6.2的系統(tǒng)在列表空白區(qū)域點(diǎn)擊鼠標(biāo)右鍵選擇“添加/刪除”(圖1),如果是V7.0的系統(tǒng)需要先選中“ActiveX 控件”,再點(diǎn)擊鼠標(biāo)右鍵選擇“添加/刪除”(圖2)。
圖2
打開(kāi)“選擇OCX控件”對(duì)話(huà)框,在OCX控件列表中找到并且選中“WinCC Channel Diagonsis Control”控件(圖3),點(diǎn)擊確定。然后在選項(xiàng)板控件列表中就能找到此控件,把此控件添加到畫(huà)面中,激活WinCC項(xiàng)目。
圖3
項(xiàng)目激活運(yùn)行后,通道診斷控件會(huì)顯示項(xiàng)目中通訊連接的通訊狀態(tài),綠勾表示通訊正常,紅叉表示通訊故障。選中故障鏈接,在右邊列表中能顯示出此故障的錯(cuò)誤代碼(圖4)。
圖4
錯(cuò)誤代碼的說(shuō)明可以在幫助文檔“S7CHNERRORchs.HLP”中查到,此幫助文檔在 WinCC 的安裝路徑下(如:C:\Programs\Siemens\WinCC\bin )找到。
2 根據(jù)通訊狀態(tài)改變對(duì)象屬性
在連接中所建的變量,在通訊時(shí)都會(huì)帶有變量狀態(tài)信息,變量狀態(tài)包含WinCC 和自動(dòng)化設(shè)備之間的連接狀態(tài)。通過(guò)獲取這個(gè)變量狀態(tài),我們就能得知變量所在連接的通訊狀態(tài)。
首先在需要監(jiān)控的通訊連接下新建一個(gè)變量“status”,地址取位存儲(chǔ)區(qū)首地址(圖5)。
在此文檔中我們以靜態(tài)文本來(lái)舉例。在畫(huà)面中添加一個(gè)靜態(tài)文本,選擇對(duì)象屬性“字體”à “文本”,在動(dòng)態(tài)列表中選擇“動(dòng)態(tài)對(duì)話(huà)框”(圖6)。
圖6
在動(dòng)態(tài)對(duì)話(huà)框中,表達(dá)式/公式選擇變量“status”,把表達(dá)式/公式的結(jié)果列表中“其他”范圍對(duì)應(yīng)的文本修改成“通訊已連接”。選擇“變量狀態(tài)”,在彈出的狀態(tài)列表中,把“沒(méi)有連接”范圍對(duì)應(yīng)的文本修改成“通訊干擾”(圖7),應(yīng)用此設(shè)置。
圖7
項(xiàng)目激活運(yùn)行后,如果通訊正常,靜態(tài)文本會(huì)顯示“通訊已連接”,如果通訊故障會(huì)顯示“通訊干擾”。(具體故障原因可檢查通道診斷)
此組態(tài)方法也可應(yīng)用到其他對(duì)象,例如修改對(duì)象的背景顏色等。
3 使用腳本獲取通訊狀態(tài)
上一章節(jié)是把變量的“變量狀態(tài)”直接與對(duì)象屬性關(guān)聯(lián),這個(gè)“變量狀態(tài)”也可以直接使用腳本來(lái)讀取,在腳本中判斷通訊狀態(tài),繼而執(zhí)行比較復(fù)雜的邏輯操作。
首先在需要監(jiān)控的通訊鏈接下新建一個(gè)變量“status”,地址取位存儲(chǔ)區(qū)首地址(圖5)。
打開(kāi)“全局腳本”—>“C-Editor”,新建一個(gè)“動(dòng)作”,編寫(xiě)如下代碼(圖8)。腳本中“GetTagDWordState”函數(shù)獲取了變量的變量狀態(tài),然后使用If語(yǔ)句執(zhí)行判斷。
圖8
在工具欄上點(diǎn)擊“信息/觸發(fā)”,(“信息/觸發(fā)”按鈕在V6.2系統(tǒng)中圖標(biāo)參考圖8,如果是V7.0系統(tǒng)中圖標(biāo)參考圖9)在屬性選項(xiàng)板上選擇“觸發(fā)器”à“定時(shí)器”à“周期”,然后點(diǎn)擊“添加”按鈕,在彈出對(duì)話(huà)框中填寫(xiě)觸發(fā)器名稱(chēng)“Action1”,然后定義“周期”5秒。這種組態(tài)(圖10)會(huì)讓此腳本在WinCC運(yùn)行期間以5秒的時(shí)間間隔,循環(huán)執(zhí)行。
圖9
圖10
注意事項(xiàng):
1.項(xiàng)目運(yùn)行前必須把計(jì)算機(jī)屬性“啟動(dòng)”列表中“全局腳本行系統(tǒng)”給勾選上(圖11)。
2.腳本的執(zhí)行周期用戶(hù)可根據(jù)項(xiàng)目自行修改,但是不建議執(zhí)行周期過(guò)密。因?yàn)樵?/span>WinCC系統(tǒng)中腳本是單進(jìn)程的,如果腳本中有很耗時(shí)的執(zhí)行過(guò)程,過(guò)密的執(zhí)行周期會(huì)造成系統(tǒng)負(fù)擔(dān)過(guò)大,導(dǎo)致腳本不執(zhí)行或者系統(tǒng)運(yùn)行緩慢等現(xiàn)象。
圖11
4 CPU停機(jī)監(jiān)控
這里需要注意一點(diǎn),WinCC系統(tǒng)的默認(rèn)設(shè)置是會(huì)監(jiān)控CPU的STOP狀態(tài)的,如果CPU打到STOP狀態(tài),也會(huì)顯示通訊故障,通道診斷的錯(cuò)誤代碼“ 7001” 。這個(gè)默認(rèn)設(shè)置可修改(圖12),打開(kāi)變量管理器,選擇所用通訊協(xié)議,例如“TCP/IP”,點(diǎn)擊鼠標(biāo)右鍵選擇“系統(tǒng)參數(shù)”,在對(duì)話(huà)框中選擇 “CPU 停機(jī)監(jiān)控”取消“激活”,則不對(duì)CPU的STOP狀態(tài)進(jìn)行監(jiān)控。
圖12
相關(guān)產(chǎn)品
免責(zé)聲明
- 凡本網(wǎng)注明“來(lái)源:化工儀器網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-化工儀器網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來(lái)源:化工儀器網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
- 本網(wǎng)轉(zhuǎn)載并注明自其他來(lái)源(非化工儀器網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品第一來(lái)源,并自負(fù)版權(quán)等法律責(zé)任。
- 如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。