利用OPC實現(xiàn)VC應用程序與PLC的數(shù)據(jù)交換
4.6 數(shù)據(jù)交換
成功地增加完所需要的數(shù)據(jù)項后,OPC客戶(VC應用程序)和OPC服務器(RSView32)就可以進行數(shù)據(jù)交換了。在數(shù)據(jù)量不大的情況下,可以使用 IOPCSyncIO同步接口的Write()和Read()兩個方法進行數(shù)據(jù)的讀寫操作,從而實現(xiàn)OPC客戶(VC應用程序)和OPC服務器 (RSView32)之間的數(shù)據(jù)交換。代碼如下:
ppUnknown->QueryInterface(IID_IOPCSyncIO,(void **)pOPCSync);
//得到IOPCSyncIO接口指針
pOPCSync->Read(OPC_DS_CACHE,ReadNumber,hServerRead,pItemValue,pErrors);
//讀ReadNumber個數(shù)據(jù)
pOPCSync->Write(WriteNumber,hServerWrite,WriteValue,pErrors);
//寫WriteNumber個數(shù)據(jù)
4.7 釋放接口指針
在VC應用程序停止運行之前必須使用Release()方法刪除已創(chuàng)建的OPC對象并釋放內存。
5 結束語
OPC技術規(guī)范把硬件供應商和應用軟件開發(fā)者分離開來,使得雙方的工作效率都有了很大提高。軟件開發(fā)商無需了解硬件的實質和操作過程,就能訪問OPC數(shù)據(jù)服務器中的數(shù)據(jù),尤其是開發(fā)商在已使用了組態(tài)軟件進行實時監(jiān)控的過程控制系統(tǒng)基礎上,用C++等高級語言開發(fā)系統(tǒng)時,大大簡化了過去從設備傳輸數(shù)據(jù)的復雜過程。在某鋁廠的自動配料系統(tǒng)開發(fā)中,應用OPC技術方便地實現(xiàn)了VC應用程序和RSView32的數(shù)據(jù)交換,間接地實現(xiàn)了VC應用程序與PLC的通信,獲得了很好的結果。
評論