OPC全稱是OLE for Process Control,即用于過程控制的OLE,是針對現(xiàn)場控制系統(tǒng)的一個工業(yè)標準接口,是工業(yè)控制和生產(chǎn)自動化領(lǐng)域中使用的硬件和軟件的接口標準?;谖④浀腛LE(現(xiàn)在的Active X)、COM(部件對象模型)和DCOM (分布式部件對象模型)技術(shù),OPC包括自動化應(yīng)用中使用的一整套接口、屬性和方法的標準集,用于過程控制和制造業(yè)自動化系統(tǒng)。提供工業(yè)自動化系統(tǒng)中獨立單元之間標準化的互聯(lián)互通,順應(yīng)了自動化系統(tǒng)向開放、互操作、網(wǎng)絡(luò)化、標準化方向發(fā)展的趨勢。
在過去,為了存取現(xiàn)場設(shè)備的數(shù)據(jù)信息,每一個應(yīng)用軟件開發(fā)商都需要編寫專用的接口函數(shù)。由于現(xiàn)場設(shè)備的種類繁多,且產(chǎn)品的不斷升級,往往給用戶和軟件開發(fā)商帶來巨人的工作負擔。通常這樣也不能滿足工作的實際需要,系統(tǒng)集成商和開發(fā)商急切需要一種具有高效性、可靠性、開放性、可互操作性的即插即用的設(shè)備驅(qū)動程序。在這種情況下,OPC標準應(yīng)運而生。OPC標準以微軟公司的OLE技術(shù)為基礎(chǔ),它的制定是通過提供一套標準的OLECOM接口完成的,在OPC技術(shù)中使用的是OLE 2技術(shù),OLE標準允許多臺微機之間交換文檔、圖形等對象。
以往在實現(xiàn)OPC DA的通訊的配置中,貌似以為上位機軟件與PLC進行OPC通訊, 其實不然。 其實電腦上跟PLC通訊的還是PLC的協(xié)議,如西門子的S7協(xié)議。 如果只有一臺電腦, 那么所謂的OPC通訊,只是電腦上的兩個程序進程之間的通訊而已。 比如WINCC或者IFIX或者組態(tài)王跟 OPC SERVER之間的通信。
所以,那個時候,電腦跟PLC的通訊網(wǎng)絡(luò)各種各樣,基本都基于各廠家自己的協(xié)議和網(wǎng)卡, 有少部分以太網(wǎng),但大部分是基于RS485的網(wǎng)絡(luò)。
然而,當所有主流PLC都支持以太網(wǎng)的時候,電腦和PLC之間,以及觸摸屏和PLC之間都是通過交換機接到以太網(wǎng)的鏈接的時候, 通訊還要靠OPC來實現(xiàn)協(xié)議轉(zhuǎn)換, 第三方的觸摸屏如果沒有開發(fā)出針對特有品牌的通訊協(xié)議驅(qū)動的時候,有沒有通用協(xié)議?
沒有。這就很尷尬了。
而OPC UA的出現(xiàn),解決了這個問題。
既然UA協(xié)議不依賴于平臺, 那么各廠家的PLC在自家平臺上大展神通, 只要其PLC有提供以太網(wǎng)口, 只要在以太網(wǎng)口上實現(xiàn)了OPC UA SERVER功能, 那么所有的OPC 客戶端都可以直接來訪問,而不再依賴于一個特定的OPC SERVER 中間件。
如此可以實現(xiàn):
1, 觸摸屏通過OPC UA協(xié)議直接訪問PLC。
2, 不同的PLC之間通過OPC UA協(xié)議訪問。
3, 上位機電腦SCADA上位機軟件直接與PLC通訊。
PLC與計算機之間的串口通信,可以利用VC、VB等語言進行編程。不管用什么語言開發(fā),件事情就是獲得串口設(shè)備、配置串口、寫數(shù)據(jù)、讀數(shù)據(jù)、釋放關(guān)閉串口。
一、美系廠家Rockwell ABRockwell的PLC主要是包括:PLC2、PLC3、PLC5、SLC500、ControlLogix等型號,PLC2和PLC3是早期型號,現(xiàn)在用的比較多的小型PLC是SLC500,中型的一般是ControlLogix,大型的用PLC5系列。DF1協(xié)議是Rockwell各PLC都支持的通訊協(xié)議,DF1協(xié)議可以通過232或422等串口介質(zhì)進行數(shù)據(jù)傳輸,也可以通過DH、DH+、DH485、ControlNet等網(wǎng)絡(luò)介質(zhì)來傳輸。DF1協(xié)議的具體內(nèi)容可以在AB的資料庫中下載。AB的PLC也提供了OPC和DDE,其集成的軟件中RSLogix中就包含DDE和OPC SERVER,可以通過上述軟件來進行數(shù)據(jù)通訊。AB的中高檔的PLC還提供了高級語言編程功能,用戶還可以通過編程實現(xiàn)自己的通訊協(xié)議。
二、GE現(xiàn)在在國內(nèi)用的比較多的主要是90-70和90-30系列PLC,這兩款PLC都支持SNP協(xié)議,SNP協(xié)議在其PLC手冊中有協(xié)議的具體內(nèi)容。現(xiàn)在GE的PLC也可以通過以太網(wǎng)鏈接,GE的以太網(wǎng)協(xié)議內(nèi)容不對外公開,但GE提供了一個SDK開發(fā)包,可以基于該開發(fā)包通訊。
三、西門子系列PLC主要包括其早期的S5和現(xiàn)在的S7-200、S7-300、S7-400等各型號PLC,早期的S5PLC支持的是3964R協(xié)議,但是因為現(xiàn)在在國內(nèi)應(yīng)用較少,除極個別改造項目外,很少有與其進行數(shù)據(jù)通訊的。S7-200是西門子小型PLC,因為其低廉的價格在國內(nèi)得到了大規(guī)模的應(yīng)用,支持MPI、PPI和自由通訊口協(xié)議。西門子300的PLC支持MPI,還可以通過Profibus 和工業(yè)以太網(wǎng)總線系統(tǒng)和計算機進行通訊。如果要完成點對點通訊,可以使用CP340/341。S7400作為西門子的大型PLC,提供了相當完備的通訊功能??梢酝ㄟ^S7標準的MPI進行通訊,同時可以通過C-總線,Profibus和工業(yè)以太網(wǎng)進行通訊。如果要使用點對點通訊,S7-400需要通過CP441通訊模塊。西門子的通訊協(xié)議沒有公開,許多組態(tài)軟件都支持MPI、PPI等通訊方式,Profibus和工業(yè)以太網(wǎng)一般通過西門子的軟件進行數(shù)據(jù)通訊。
四、施耐德(莫迪康)施耐德的PLC型號比較多,在國內(nèi)應(yīng)用也比較多。其通訊方式主要是支持Modbus和MODBUS PLUS兩種通訊協(xié)議。Modbus協(xié)議在工控行業(yè)得到了廣泛的應(yīng)用,已不僅僅是一個PLC的通訊協(xié)議,在智能儀表,變頻器等許多智能設(shè)備都有相當廣泛的應(yīng)用。MODBUS經(jīng)過進一步發(fā)展,現(xiàn)在又有了MODBUS TCP方式,通過以太網(wǎng)方式進行傳輸,通訊速度更快。Modbus PLUS相對于MODBUS傳送速度更快,距離更遠,該通訊方式需要在計算機上安裝MODCON提供的SA85卡并需安裝該卡的驅(qū)動才可以進行通訊。除了上述兩種方式之外,莫迪康的PLC還支持如TCP/IP以太網(wǎng),Unitelway, FIPWAY,F(xiàn)IPIO,AS-I,Interbus-s等多種通訊方式。
五、歐姆龍系列PLC在中國推廣的也比較多。在通訊方式上,OMRON現(xiàn)在主要采用兩種通訊方式:Host Link協(xié)議是基于串口方式進行數(shù)據(jù)傳輸?shù)耐ㄓ嵎绞?。當PLC進入MONITOR方式時,上位機可以和歐姆龍PLC通訊。在和歐姆龍通訊時要注意,兩次通訊之間要留一定時間,如果通訊速度過快容易造成PLC通訊異常。ControlLink是歐姆龍PLC的一種快速通訊方式。Control Link通過板卡進行數(shù)據(jù)通訊,板卡之間有數(shù)據(jù)交換區(qū),由板卡實現(xiàn)數(shù)據(jù)的交換從而完成數(shù)據(jù)采集功能。使用該方式通訊需配置歐姆龍的驅(qū)動。
六、三菱PLC的小型PLC在國內(nèi)的應(yīng)用非常廣泛。三菱的PLC型號也比較多,主要包括FX系列,A系列和Q系列。三菱系列PLC通訊協(xié)議是比較多的,各系列都有自己的通訊協(xié)議。如FX系列中就包括通過編程口或232BD通訊,也可以通過485BD等方式通訊。其A系列和Q系列可以通過以太網(wǎng)通訊。當然,三菱的PLC還可以通過CC-LINK協(xié)議通訊。
七、松下PLC和計算機之間可以通過串口和以太網(wǎng)進行通訊。其采用的通訊協(xié)議是MEWTOCOL協(xié)議。如大多數(shù)日系PLC一樣,MEWTOCOL協(xié)議比較簡單。許多軟件都可以從PLC中直接讀取數(shù)據(jù)。
以上介紹的是國外的主流PLC設(shè)備通訊方式。除以上廠家外,還有很多PLC廠家:廠家型號協(xié)議介質(zhì)
LGSTER-K10S/30S/60S/80S/K200SMASTER-K串口日立H系列 EH150等Hi協(xié)議串口/USB光洋所有系列CCM2協(xié)議串口信捷所有系列Modbus串口凱迪恩全部MODBUS串口