• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Graphics?。郑椋澹鞯慕M態(tài)仿真框架的設計

      2009-04-23 10:03:58趙保學汪琴琴
      新媒體研究 2009年6期
      關(guān)鍵詞:仿真組態(tài)控制策略

      趙保學 汪琴琴

      [摘要]設計一種基于Qt Graphics View的組態(tài)仿真框架。按照Graphics View模塊化的設計思路,首先介紹其每個模塊的特性,并在此基礎上提出組態(tài)仿真的設計要素。最后提出控制策略和數(shù)據(jù)庫的設計思路。

      [關(guān)鍵詞]Qt Graphics View 組態(tài) 仿真 控制策略

      中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0320043-01

      一、引言

      隨著信息技術(shù)和自動化技術(shù)的飛速發(fā)展,可視化組態(tài)軟件系統(tǒng)在工程設計、地形勘測、游戲開發(fā)等諸多領(lǐng)域都有著廣泛的應用。開發(fā)一款控制算法高效、功能完善且具有靈活擴展性的組態(tài)仿真軟件可能是一項十分復雜的工作,但優(yōu)秀的軟件框架無疑是至關(guān)重要的。

      Qt是一套優(yōu)秀的跨平臺應用程序開發(fā)包,自4.2版本開始引入的Graphics View框架對于開發(fā)者有很大的吸引力。Graphics View提供基于圖元的模型視圖設計方式,具備完善的圖元管理、碰撞檢測、外部事件處理及坐標變換等功能。Graphics View包含三個主要模塊,它們分別是場景(Scene)、視圖(View)和圖元(Item)。下文將從模塊的角度,利用Graphics View設計一個通用的組態(tài)仿真框架。

      二、視圖模塊

      Graphics View的視圖模塊提供了場景的載體,其實現(xiàn)類為QGraphicsView, 該類繼承自QAbstractScrollArea,是一個可滾動的窗口組件。在設計過程中,可以直接利用QGraphicsView的子類作為軟件的頂層組件,更常用的方法是將其作為QMainWindow的中心部件,這樣可以充分利用QMainWindow的菜單欄和工具欄實現(xiàn)功能的統(tǒng)一化布局和管理。

      視口的幾何變換功能可以在該模塊完成。QGraphicsView類提供了統(tǒng)一的視口變換方法setMatrix,從而將旋轉(zhuǎn)、縮放、平移、仿射等變換統(tǒng)一為矩陣變換。值得注意的是,矩陣變換僅改變場景的顯示效果,并不影響實際的圖元數(shù)據(jù)。所有這些功能可以轉(zhuǎn)化成為模塊的接口,通過信號槽機制連接用戶界面,響應用戶操作。

      三、場景模塊

      Graphics View的場景模塊主要由QGraphicsScene類來實現(xiàn)。繪圖場景模塊位于整個組態(tài)仿真框架的中間層次:外層有可視化模塊QGraphicsView的支持,同時場景也管理著框架最內(nèi)層次的圖元模塊、控制著圖元的幾何變換和渲染、重繪、設置字體和顏色等變換。利用場景可以實現(xiàn)對大量不同類型圖元的系統(tǒng)方便的管理。

      在仿真框架中,我們將控制邏輯加入到該模塊,使其具有控制器的功能。根據(jù)軟件的具體需求不同,該模塊可能執(zhí)行不同的操作,一般分為以下幾類:1.響應各種鼠標和鍵盤事件,實現(xiàn)對圖元的編輯功能;2.響應圖元狀態(tài)改變的事件(包括圖元焦點事件、位置改變事件、文字插入事件等);3.通過控制邏輯執(zhí)行相應的圖元處理,并將處理結(jié)果反饋給視圖模塊和相應的圖元;4.通過事件廣播機制管理場景內(nèi)各種類型圖元的屬性。

      場景模塊中的控制邏輯部分用來定義應用程序在整個場景和圖元之上的行為。場景從視圖模塊獲得用戶命令,然后傳送給控制邏輯執(zhí)行,對圖元進行相應的處理。最后場景模塊更新圖元數(shù)據(jù),并將更新通知給視圖模塊。實現(xiàn)了三個模塊的同步更新。對于控制邏輯的管理可采用策略模式(Strategy Pattern)進行:定義統(tǒng)一的接口,不同的控制算法以不同的方式實現(xiàn)此接口。

      四、圖元模塊

      Graphics View框架中的圖元是軟件中需要管理和編輯的對象。基類QGraphicsItem定義了所有圖元類型的共同屬性和方法,另外,框架也提供了最常用的幾種標準圖元,如矩形圖元(RectItem)、文本圖元(TextItem)、位圖圖元(PixmapItem)等。在框架的設計過程中,我們可以根據(jù)需求繼承QGraphicsItem,實現(xiàn)自己的圖元類型。在實際應用中,我們常常需要在同一場景中建立大量不同類型的圖元對象,對它們的統(tǒng)一管理也可使用策略模式。QGraphicsItem的接口type()可進行圖元類型統(tǒng)一識別。

      考慮到實際應用中眾多的模塊類別及數(shù)據(jù)流格式,對于圖形化組態(tài)仿真來說,關(guān)鍵是如何建立起反映實際拓撲結(jié)構(gòu)的模塊和流程。Graphics View中的圖元具有碰撞檢測、外部事件響應及相互之間的邏輯關(guān)聯(lián)、定向信息傳遞等特性,利用這些特性可以很容易地實現(xiàn)組態(tài)仿真軟件中的數(shù)據(jù)流動、信息反饋、實時監(jiān)控等業(yè)務邏輯。例如,用戶可以根據(jù)連線的源圖元和目的圖元類型及連線方向很容易地判斷出相關(guān)業(yè)務信息。另外,QGraphicsScene通過二叉搜索算法進行圖元查找,大大提高了搜索效率,對于業(yè)務邏輯非常復雜、模塊眾多的仿真仍能夠做到很高的實時性。

      五、控制策略

      組態(tài)仿真重要的是做到準確、實時地模擬實際系統(tǒng),在模擬的過程中,控制策略起著關(guān)鍵作用。本文涉及的控制策略主要包含兩個部分:場景的控制和單個圖元的控制。場景的控制即系統(tǒng)全局狀態(tài)的控制由場景模塊的控制邏輯部分來完成,而單個圖元的控制通過圖元對象自身與外界的交互來完成。這種集中加分布式的控制策略既便于整個仿真系統(tǒng)的統(tǒng)一管理,也增加了系統(tǒng)各個邏輯模塊自主運作的靈活性,減輕了控制邏輯的工作負擔。

      六、數(shù)據(jù)庫

      組態(tài)仿真系統(tǒng)的數(shù)據(jù)庫用來記錄系統(tǒng)中各個模塊的屬性和當前狀態(tài)信息,以及模塊之間的關(guān)聯(lián)信息。對于一般框架而言,數(shù)據(jù)庫中應包含如下信息:1.圖元的靜態(tài)屬性(編號、名稱、模塊類別、所執(zhí)行的業(yè)務邏輯等);2.圖元的動態(tài)屬性(位置、大小、當前狀態(tài)等);3.圖元的輸入接口和輸出接口的屬性;4.圖元之間連線的屬性(連線的序號、信息流向、上下游圖元的接口號等)。

      如果軟件設計為單機模式,控制策略和數(shù)據(jù)庫可作為與視圖、場景并列的模塊;如果軟件設計為客戶機/服務器模式,則可由服務器負責數(shù)據(jù)庫和控制策略算法的管理。

      七、結(jié)束語

      本文討論了Qt的Graphics View各個模塊的主要特性以及如何利用這些特性完成一個通用的組態(tài)仿真軟件框架的設計,該框架雖然不夠細化,但能反映出一般組態(tài)仿真系統(tǒng)的一些共性。在控制策略完善的情況下,利用Graphics View框架可以設計出界面美觀、執(zhí)行效率高、一體性和靈活性較好的仿真系統(tǒng),CISCO公司的仿真軟件Packet Tracer 5便是一個成功的案例。

      參考文獻:

      [1]薛福珍、侯菲莉,基于環(huán)節(jié)的控制系統(tǒng)圖形組態(tài)仿真軟件[J].系統(tǒng)仿真學報,2002,14(7).

      [2]楊晨、鐘晶亮,分布式控制系統(tǒng)可視化組態(tài)仿真軟件開發(fā)[J].系統(tǒng)仿真學報,1999,11(4).

      [3]蔡志明,精通Qt4編程[M].北京:電子工業(yè)出版社,2008.

      [4]Nokia. Qt 4.4.3 Reference Documentation,2008.

      猜你喜歡
      仿真組態(tài)控制策略
      考慮虛擬慣性的VSC-MTDC改進下垂控制策略
      能源工程(2020年6期)2021-01-26 00:55:22
      基于PLC及組態(tài)技術(shù)的恒溫控制系統(tǒng)開發(fā)探討
      工程造價控制策略
      山東冶金(2019年3期)2019-07-10 00:54:04
      現(xiàn)代企業(yè)會計的內(nèi)部控制策略探討
      消費導刊(2018年10期)2018-08-20 02:57:02
      基于PLC和組態(tài)的智能電動擰緊系統(tǒng)
      Buck開關(guān)變換器的基本參數(shù)設計及仿真分析
      試析PLC控制下的自動化立體倉庫仿真情況分析
      基于MADYMO的航空座椅約束系統(tǒng)優(yōu)化設計
      科技視界(2016年18期)2016-11-03 21:44:44
      中國體態(tài)假人模型與FAA Hybrid Ⅲ 型假人模型沖擊差異性分析
      科技視界(2016年18期)2016-11-03 20:31:49
      容錯逆變器直接轉(zhuǎn)矩控制策略
      四川省| 安龙县| 嵊泗县| 巍山| 江永县| 彰武县| 湖口县| 敦化市| 嘉义县| 南投县| 龙胜| 和平县| 砀山县| 招远市| 拜泉县| 莱芜市| 西吉县| 铁力市| 镶黄旗| 常宁市| 汕尾市| 金塔县| 淅川县| 肇源县| 周至县| 天台县| 洛宁县| 砚山县| 陈巴尔虎旗| 潞西市| 大姚县| 岑巩县| 华阴市| 融水| 巴里| 会理县| 错那县| 江门市| 调兵山市| 平度市| 河东区|