在《駝子的學習筆記——利用TIA創建WinCC畫面,監控電機的正反轉》一文中,我們介紹瞭如何用WinCC與S7-300/400PLC建立起聯繫,並實時監視與控制過程數據。利用TIA來創建WinCC畫面簡單、快捷,但我們仍然要了解WinCC與PLC之間的通訊機制,今天我們就一起探討一下這個話題。
以下所有的討論都是基於WinCC與仿真PLC(即PLCSIM,如圖1所示)之間的通訊的。
一、添加驅動程序
新建一個WinCC項目,右鍵單擊"變量管理",選擇"添加新的驅動程序",在打開的窗口中,選擇"S7協議集",如圖2所示。WinCC與S7-300/400之間的通訊都是基於S7協議集的。
二、建立連接
S7協議集中,包含了諸多通訊協議,如:MPI、PROFIBUS、工業以太網等。根據PLC端實際的硬件配置,選擇合適的通訊協議(這裡我們選用PROFIBUS協議),按照圖3所描述的步驟建立PROFIBUS下的通訊連接。
建立好連接後,要設置連接屬性,步驟如圖4所示。主要要設置好"站地址","機架號"、"插槽號"等幾個值。其信息要到PLC的硬件配置中查詢,如圖5所示。這幾個值不能寫錯,不然通訊無法建立。
三、新建外部變量
在上面建立的連接"connect1"下,新建變量,並與PLC的工程數據建立關聯。如圖6所示,這裡新建一個二進制變量NewTag,並將其與PLC的M0.0關聯起來。這樣,若PLC側M0.0變化,則NewTag的值也隨之變化;相反,WinCC側的NewTag改變,M0.0也會相應改變。
四、設置PG/PC接口
如圖7所示,右鍵點擊"PROFIBUS",查看或修改邏輯設備名稱,這裡要記住其邏輯設備名稱:CP_L2_1:。然後打開"設置PG/PC接口"窗口,在"應用程序訪問點"中,寫入邏輯設備名稱"CP_L2_1:",並選擇通訊板卡,這裡選擇"PLCSIM(PROFIBUS)",如圖8所示。如此,WinCC與PLC通訊的最後一步也完成了。
五、新建畫面,測試
新建畫面,在畫面中分別放置一個"輸入/輸出域"和一個按鈕,實現以下功能:
1、"輸入/輸出域"關聯變量"NewTag",其可以更改並顯示"NewTag"的實時值,即M0.0的狀態;
2、按下按鈕,NewTag的狀態反轉,即"NewTag=0"時,按下按鈕,"NewTag=1",反之,亦然;
3、按鈕的背景顏色隨"NewTag"的不同而不同,"NewTag=0",背景色為藍色;"NewTag=1",背景色為綠色。
上述功能的具體實現過程,這裡暫時留下不表,圖9為仿真測試結果。
五、思考
慣例留下思考問題,供有興趣的小夥伴發散思維:
1、 WinCC與多個PLC進行數據交換,在通訊組態上有什麼異同?
2、 測試畫面的各個功能是如何實現的?
閱讀更多 塞北名駝 的文章