《WINCC通過OPC訪問自身WINCC數(shù)據(jù)》這題目名字是有點(diǎn)繞!但你沒看錯(cuò),確實(shí)是WINCC建立OPC通訊通道,訪問本地WINCC項(xiàng)目自身的內(nèi)部變量。
能通訊成功嗎?能!有意義嗎?還真的有。今天講的就是昌暉以表工程師做過的一次項(xiàng)目的應(yīng)用,一直感覺挺有意思的,所以寫出來給大家分享。
那是一套空調(diào)自控系統(tǒng)的項(xiàng)目,某知名商業(yè)地產(chǎn)的。下位除了幾十臺(tái)DDC之外還有幾十臺(tái)S7-1200控制通風(fēng)設(shè)備水泵等。上位是兩臺(tái)平行獨(dú)立運(yùn)行的WINCC。這是背景的配置情況。
系統(tǒng)中有一些控制參數(shù),是在上位WINCC管理的,由于WINCC與DDC和S7-1200通訊都是使用OPC通訊,另外也多謝WINCC7.2內(nèi)部變量可以支持掉電保持功能,所以這些控制參數(shù)就選擇了使用WINCC的內(nèi)部變量來保存。
為了便于管理和維護(hù),兩臺(tái)電腦上的WINCC項(xiàng)目其實(shí)只做了一套,運(yùn)行中通過用戶權(quán)限管理來實(shí)現(xiàn)功能區(qū)域的劃分和限制。原本也是正常的事。
但到運(yùn)行中,客戶就發(fā)現(xiàn)兩臺(tái)OS設(shè)置的參數(shù)不一致,不能同步刷新!由于兩臺(tái)WINCC都是單機(jī)運(yùn)行,所以同步是不可能的。而提到說如果修改其中一臺(tái)的項(xiàng)目,導(dǎo)致兩臺(tái)電腦因?yàn)檫@一點(diǎn)點(diǎn)原因就需要運(yùn)行完全不同的程序,項(xiàng)目經(jīng)理都直接否定了,說還不如就這樣接受瑕疵運(yùn)行呢。
好糾結(jié)?。?/span>
然后就突然想到了這一點(diǎn),想試試行不行?
過程是:新建立一個(gè)OPC通道,鏈接的站選擇網(wǎng)絡(luò)計(jì)算機(jī)上的本計(jì)算機(jī)的名字,OS1,然后選擇opc.wincc,找到那些作為參數(shù)的內(nèi)部變量,導(dǎo)入。導(dǎo)入時(shí)給這些變量增加了前綴cc_,這樣那些tag1的變量,反手換了個(gè)cc_tag1名字變成外部變量了。
然后畫面中打開設(shè)置系統(tǒng)參數(shù)的界面,選擇所有控件,選擇替換連接變量的名字,前面均加上cc_,保存,完成。
本機(jī)運(yùn)行中,變量通過opc通道訪問電腦名字為OS1的本機(jī)的變量,可以成功。而項(xiàng)目復(fù)制到另外一臺(tái)電腦OS2后,由于OPC通道中定義的計(jì)算機(jī)名稱為OS1,所以相關(guān)變量數(shù)據(jù)仍然來自O(shè)S1。
問題得到解決,前后只花了不到十分鐘。
