欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術頻道

COM組件技術在世紀星驅動開發中的應用

[摘 要]與設備通信的驅動程序是世紀星組態軟件的重要組成部分,本文主要講述COM組件技術在開發世紀星驅動程序時的應用。

1 引言

在工控軟件中,數據的采集和下發直接影響系統的性能,因此對于如何構架一個高效合理的軟件系統在工控界一直被廣泛關注。在組態軟件中,一般可分為兩部分:HMI人機接口和數據采集模塊。其中HMI是用戶和現場設備進行通信的接口,HMI要做到直觀易用以便于用戶對生產情況的了解和操作,而HMI要以數據采集模塊作為支撐,可見數據采集模塊在工控軟件中的重要性。為了適應各種不同的設備,世紀星的驅動程序采用了組件技術,使數據采集模塊具有高性能、高可靠性、靈活、便于升級等重要特性。

2 COM組件技術

COM--Component Object Model,即組件對象模型,它是微軟提出的一套開發軟件的方法與規范。組件實際上是一些小的二進制可執行程序,它們可以給應用程序,操作系統,以及其他組件提供服務,能夠跨越鏈接庫、應用程序、系統軟件甚至網絡軟件,多個COM對象甚至可以聯接起來形成應用程序或組件系統。組件式程序設計方法能像搭積木一樣開發大而復雜的軟件系統,并且可以利用以往開發的組件資源而不必進行二次開發。COM(組件對象模型)是一個與操作平臺 無關的、分布的、面向對象的機制,其本質特性是COM對象的接口與實現的分離。基于COM的組件開發具有以下幾點優勢:

第一,從用戶的角度考慮,用戶一般希望能夠定制所用的應用程序,而組件技術從本質上講就是可被定制的,因而用戶可以用更能滿足他們需要的某個組件來替換原來的那個。

第二,由于組件是相對應用程序獨立的部件,我們可以在不同的程序中使用同一個組件而不會產生任何問題,軟件的可重用性將大大的得到增強。

第三,隨著網絡應用的普及,分布式網絡應用程序在軟件市場上變得越來越重要。組件價構可以使得開發這類應用程序的過程得以簡化。

第四,組件式開發便于軟件系統的升級,當某部分功能需要升級時,開發人員只需修改相應組件即可,而用戶只需替換原來的組件,這就使得軟件升級只是替換一些組件而已。

第五,組件式開發便于軟件開發的分工協作,每個組件各自完成所需功能,只需在進行開發前協商好接口即可。

3 世紀星數據采集模塊

數據采集模塊是世紀星軟件系統的后臺服務程序,負責從現場設備采集數據并將數據提供給HMI,而HMI產生的控制信號又通過數據采集模塊傳輸給設備,這樣就達到了用戶與設備的相互對話。其信息流如圖1所示:

世紀長秋 世紀星組態軟件

1

在數據采集模塊中,基本上由兩部分組成,一部分是和設備相對應的驅動程序,該程序既是一個COM組件,另有一個控制程序DataComm負責調用驅動程序以及和其他模塊通信。在上位機和下位機或其他一些板卡進行通信時大致有以下幾種方式:串口,TCP/IP,計算機PCI卡,數據采集模塊通過一個統一的接口訪問不同的設備,設備驅動文件只需完成該接口功能即可,這樣在與新設備通信時DataComm不必修改,只要開發出與該設備通信的驅動組件就能完成上位機與設備之間的通信,DataComm與驅動程序之間的關系如圖2所示:

世紀長秋 世紀星組態軟件

2

4 設備驅動的接口設計與實現

每個COM組件都至少有一個IUnknown接口或繼承IUnknown的子接口,IUnknown接口負責查詢該組件的其他接口和維護引用計數,引用計數與組件對象持久性相關,本文不詳細闡述。前面說訪問設備使用統一的接口,那么該接口應該具有所有操作設備通用的功能,如初始化和關閉設備,讀寫數據等。在C++中使用抽象基類作為接口,其部分定義如下:

class IDeviceAccess : public IUnknown

{

public:

virtual HRESULT __stdcall QueryInterface(REFIID iid, void** ppvObj) = 0;

virtual ULONG __stdcall AddRef() = 0;

virtual ULONG __stdcall Release() = 0;

public:

virtual BOOL __stdcall UnInitialDevice( LPDEVADDR pDevAddr )=0;

virtual BOOL __stdcall InitialDevice( LPDEVINIDATA pInitDat )=0;

virtual BOOL __stdcall ReadData(…… )=0;

virtual BOOL __stdcall WriteData( …… )=0;

…… ……

};

該接口的實現是在COM組件中,因為設備不同,所以實現也有所不同,但同類設備也有一些相同之處,比如智能儀表大多都是通過串口進行通信,而對串口的參數設置是這類設備的共同之處,為此我們定義一個類CDevicepublic IdeviceAccess,這個類完成初始化等基本的功能,而讀寫數據ReadDataWriteData都進行空實現,讓所有相關設備以CDevice為基類然后重寫ReadDataWriteData即可。世紀星的驅動組件是使用MFC開發的,MFC是通過嵌套類實現COM功能,在世紀星中我們以繼承CDevice的類作為嵌套類,這個嵌套類完成一些具體功能,它所在的類我們成為外部類,外部類提供一個全局唯一的CLSIDDataComm通過CLSID定位組件,然后使用之前定義的接口完成與設備的通信,通過圖3描述如下:

世紀長秋 世紀星組態軟件

3

5 小結

數據采集模塊的性能是影響工控軟件的一個重要因素,高效穩定的數據通信服務是工控軟件或許更大發展的基本保證。世紀星使用COM技術實現數據通信既方便了開發人員對新設備驅動的開發,又便于用戶對驅動的升級,同時增強了世紀星本身的可擴展性。

文章版權歸西部工控xbgk所有,未經許可不得轉載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      9000px;">

          黄色成人免费在线| 久久久久亚洲综合| 久久精品久久99精品久久| 欧美精彩视频一区二区三区| 日韩欧美在线123| 91精品国产欧美日韩| 91精品欧美综合在线观看最新| 欧美亚日韩国产aⅴ精品中极品| 国产精品1区2区| 国产毛片精品视频| 风间由美一区二区三区在线观看 | 亚洲成av人片www| 一区二区在线观看视频| 视频在线在亚洲| 国产精品一区二区91| 白白色 亚洲乱淫| 欧美丰满少妇xxxbbb| 久久九九久精品国产免费直播| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 日日嗨av一区二区三区四区| 久久av老司机精品网站导航| 97久久人人超碰| 欧美哺乳videos| 洋洋成人永久网站入口| 高清beeg欧美| 久久精品一区二区三区不卡| 亚洲国产综合在线| 99天天综合性| 国产亚洲自拍一区| 国产在线播精品第三| 日韩一区二区免费视频| 天天亚洲美女在线视频| 色噜噜狠狠一区二区三区果冻| 久久久久久久精| 激情综合网激情| 日韩精品一区二区三区在线观看 | 欧美日韩国产天堂| 一区二区三区在线看| 色哟哟日韩精品| 国产精品美女久久久久久久久久久 | 亚洲高清免费观看高清完整版在线观看| 国产精品99久久久久久宅男| 久久你懂得1024| 99vv1com这只有精品| 亚洲黄色小说网站| 欧美日韩精品一区二区三区| 午夜精品久久久久久久99水蜜桃| 欧美日韩精品专区| 国产成人日日夜夜| 亚洲一区二区偷拍精品| 久久九九久久九九| 欧美性猛交xxxx黑人交| 国产一区二区在线视频| 国产精品久久久久精k8| 欧美日韩一区高清| 国产麻豆日韩欧美久久| 一区二区成人在线| 精品美女在线播放| 欧美日韩高清一区二区| 大桥未久av一区二区三区中文| 免费xxxx性欧美18vr| 亚洲欧洲日韩一区二区三区| 欧美日韩高清影院| 欧美亚洲国产一区二区三区va| 久久99久久久久久久久久久| 亚洲综合色噜噜狠狠| 亚洲品质自拍视频| 国产精品久久久久久久久动漫 | 国产做a爰片久久毛片| 亚洲乱码日产精品bd| 国产无遮挡一区二区三区毛片日本| 欧美视频三区在线播放| 欧美亚洲国产一卡| 欧美精品视频www在线观看 | 久久精品网站免费观看| 欧美性三三影院| 欧美色涩在线第一页| 波多野结衣在线一区| 国产成人免费视频网站| 国产成人在线色| 99精品国产一区二区三区不卡| 成人激情午夜影院| 欧亚一区二区三区| 欧美一区二区视频在线观看2020 | 极品美女销魂一区二区三区| 理论电影国产精品| 国产精品一区二区三区乱码| 国产乱子轮精品视频| 国产成人啪免费观看软件| 99re热视频这里只精品 | 91精品办公室少妇高潮对白| 欧美性生活久久| 欧美老年两性高潮| 久久综合网色—综合色88| 欧美一级淫片007| 国产精品免费久久久久| 久久国产精品99精品国产| 夫妻av一区二区| 91麻豆精品国产自产在线观看一区| 久久色成人在线| 日本不卡一二三区黄网| 91热门视频在线观看| 91精品国产入口在线| 一区二区三区在线观看动漫| 国内精品国产成人| 日韩精品一区在线观看| 丝袜亚洲另类欧美| 91丨九色porny丨蝌蚪| 国产欧美日韩三级| 国产福利91精品一区| 在线观看91av| 秋霞成人午夜伦在线观看| 欧美天堂一区二区三区| 亚洲欧美自拍偷拍| 不卡视频在线看| 国产女主播一区| 风间由美一区二区三区在线观看| 国产精品私人影院| 99热在这里有精品免费| 亚洲精品大片www| 欧美最新大片在线看| 日本女优在线视频一区二区 | 欧美日韩免费观看一区二区三区| 亚洲人成网站精品片在线观看| 99精品视频在线播放观看| 亚洲黄色在线视频| 日韩欧美一区二区三区在线| 精品一区二区精品| 亚洲精品视频在线看| 欧美一级高清片在线观看| 精品亚洲欧美一区| 日韩美女视频一区二区 | 激情另类小说区图片区视频区| 久久伊人中文字幕| 91在线播放网址| 乱中年女人伦av一区二区| 中文一区二区完整视频在线观看 | 欧美综合一区二区| 久久成人免费电影| 亚洲韩国一区二区三区| 国产欧美一区视频| 欧美高清视频一二三区| 色综合中文综合网| 日韩欧美在线观看一区二区三区| 高清不卡在线观看av| 奇米精品一区二区三区在线观看| 国产欧美一区二区三区在线看蜜臀 | 91原创在线视频| 国产成人丝袜美腿| 国产成人免费9x9x人网站视频| 五月综合激情婷婷六月色窝| 亚洲综合一二区| 亚洲一区二区三区影院| 亚洲制服丝袜一区| 亚洲综合色区另类av| 亚洲一区二区三区爽爽爽爽爽| 欧美激情一区二区三区在线| 国产无遮挡一区二区三区毛片日本| 欧美一区二区播放| 精品国产第一区二区三区观看体验| 91精品国产色综合久久ai换脸| 91精品在线观看入口| 欧美电影免费观看完整版| 日韩欧美一二区| 国产欧美一区二区三区网站| 国产精品网站导航| 亚洲精品高清视频在线观看| 日韩高清在线观看| 国产九色sp调教91| 91在线视频网址| 欧美综合色免费| 久久久久国产精品麻豆ai换脸| 国产精品看片你懂得| 亚洲综合色视频| 国产一区在线观看麻豆| 99精品热视频| 欧美精品一区二| 亚洲图片你懂的| 国内不卡的二区三区中文字幕| 波多野结衣在线一区| 欧美精品第一页| 国产精品久久久久国产精品日日| 五月天婷婷综合| 白白色亚洲国产精品| 日韩精品专区在线影院重磅| 欧美电视剧在线看免费| 亚洲欧美在线观看| 美女视频一区二区三区| 在线视频欧美区| 亚洲日本青草视频在线怡红院| 韩国一区二区在线观看| 欧美撒尿777hd撒尿| 椎名由奈av一区二区三区| 国产精品2024| 亚洲同性同志一二三专区| 久久99精品国产麻豆婷婷| 3d成人h动漫网站入口| 亚洲成人免费视频| 欧美一区二区三区视频在线观看| 亚洲日本中文字幕区|