- 相關推薦
面向對象的嵌入式系統設計方法
摘要:通過UML語言對嵌入式系統建模,急準確地完成了分析人員與用戶需形式化層次上的一致性,也為程序開發人員建立了清晰的程序結構和行為準則,大大縮短了系統開發周期,并使系統的升級和重用成為可能。本文通過一個用Atmel 89C52單片機實現簡單變頻調速器系統,說明UML應用與嵌入式系統的分析設計方法。1 概述
隨著我國裝備制造業的發展,嵌入式系統已經成為制造業的核心技術。它被廣泛地應用到工業控制、仿真系統、醫療儀器、信息家電、通信設備等眾多領域。目前,圍繞嵌入式系統展開研究和開發,已經成為計算機軟硬件技術發展最活躍的方向之一。
嵌入式系統不同于通常純粹的軟件系統或硬件系統,而是軟件與硬件通過在一起的,有些功能既可以用軟件實現,也可以通過硬件實現。另外,嵌入式系統設計所面臨的挑戰不僅涉及到計算機軟件和硬件,也會涉及到許多非計算機工程中的問題,諸如機械尺寸問題、功耗問題和制造成本問題等。即使是計算機工程方面的問題,大部分系統在實時性、可靠性和多速率等問題方面也都有特別要求。
目前,實現嵌入式系統的硬件方法主要有:定制邏輯(ASIC)、現場可編程門陣列(FPGA)和嵌入式微處理器三種。在實際系統實施中,絕大多數系統是采用嵌入式微處理器方式,如單片機、單板機或嵌入式微處理器芯片等。這是因為用微處理器實現嵌入式系統是一種十分有效的方法,它使得在不同價位上設計不同特性的產品系列成為可能,并且能夠擴充新特性以滿足飛速發展變化的市場需求。
2 嵌入式系統設計面臨的問題和解決辦法
過去嵌入式系統分析和設計方面的主要問題為:①分析設計沒有一個統一的標準;②分析設計方法不統一;③從分析設計到制作和編程沒有一個始終一貫的工程化方法,使得產品形成的每一個過程人為因素影響十分嚴重;④分析設計的成果不能被開發類似項目或產品的重用。以上4個方面的問題成為多年來制約嵌入式系統發展的主要瓶頸,使得大部分從事嵌入式系統應用開發的組織和團體,基本上是采用小組甚至是作坊式的動作模式。這使得開發較復雜或大型系統的工作變得十分困難甚至無法進行,或因為系統需求的不斷變化或小組成員的流動導致項目失敗。我們知道,人類之間要想達成對任何事件的交流,前提是實現對該事物形態(或表現形式)和行為的標準化,之后才可能實現對該事物形態(或表現形式)和行為的標準化,之后才可能實現對其的存儲、處理和交流。嵌入式系統制作過程產品以上4方面問題的主要原因是沒有一個對嵌入式系統需求、分析、設計、制作、測試和維護過程的結構特征和行業特征統一的工程化描述方法。目前,面向對象技術正是建立在對真實世界抽象思維的基礎上,統一建模語言(UML)為這種思維提供了可視化工具,解決了以上難題。使用UML對嵌入式系統建模,不僅可以使系統分析設計實現標準化,而且完全可以實現系統分析、設計和制作、測試分別由不同的項目成員在統一、一貫的方式下完成,也使得系統分析和設計模型在相似系統中重用成為可能。
3 系統建模
面向對象的嵌入式系統建模同任何軟件密集型系統建模一樣,從系統中的類建模開始。為了解類的結構,首先對系統工作過程作一個總體陳述。無論是采用問題空間詞匯抽象方法還是采用用例(use case)驅動建模方法,目標都是找到系統以類或對象作為構造塊的類圖。如果采用用例驅動的系統分析方法,該內容也可以用用例視圖加以模型規格說明,然后使其作為系統白盒測試依據。由于使用用例視圖做的規格說明篇幅比較大,本文僅用文字描述說明這部分內容。
本文所例舉的系統為一小型變頻調速器系統。對任何一個三相交流電機,在輸入單相交流電源的情況下,實現6Hz到[9Hz,50Hz]區間內任一頻率的穩步啟動運轉。系統用戶界面包括2位數碼顯示器、一個運行/停止指示器、電源開/關指示器、6個按鈕鍵盤和電源開關。2位顯示器用于顯示電機當前正在運轉的頻率,6個按鍵分別代表啟動、停機、正點動、反點動、頻率加和頻率減。啟動命令使電機從6Hz以每步0.2Hz的步長穩步提升到當前設置頻率上后在該頻率上穩定運轉;正點動命令使電機穩定在6Hz上正向運轉;反點動命令時,電機轉動頻率與正點動上同,但旋轉方向相反;頻率加命令在電機運轉時使電機以1Hz/s的速率增加運轉頻率和當前預置頻率,在電機停止時僅改變預置頻率;頻率減命令與頻率加命令相反;停機命令則無論電機運行在什么狀態下,都使電機停止運轉。
系統類圖如圖1所示。圖中有2個硬件類Button*和Light*,1個主動類Microcontrollor和3個一般類Convertor、Watchdog和Display。Button*類代表所有按鈕;Light*類代表2個發光數碼管和1個運行指示燈;主動類Microcontrollor是系統主控模塊,完成所有對象的調度和管理;3個一般類為3個功能獨立的程序模塊。
圖2為系統實施圖。微處理器節點是系統的主控節點,采用Atmel 89C52。其內部8KB Flash ROM和128B RAM資源已能滿足系統需要,因此不再增加外部存儲器。與其它節點的連接完全通過其本身的串并接口就可完成。按鈕節點代表所有按鈕,在系統變化時也可以用鍵盤取代,本例為6個單獨機械按鈕。顯示節點代表系統顯示部分,本例為2個數碼管和1個表示電同運行狀態的發光二極管。運行監控節點具有兩部分功能,其一是通過WatchDog技術監視微處理器的運行狀況,另一個是監視變換器輸出的脈沖寬度。變換器邛樹熊設計為專用電路,通過微處理器并行口接受三相正弦脈沖,根據電機功率轉換成本相電機線圈所需要的脈沖電壓。三相電機節點不屬于嵌入式系統本身,但為了說明本嵌入式系統與控制對象關系而布置在同一實施圖中。
圖3為系統有限狀態機行為模型。系統開機上電后,經過初始化處理自動進入到等待狀態,在等待狀態,Microcontrollor對象根據用戶鍵盤按鈕命令,調度相應的操作對象。當用戶發出正或反點動命令時,系統進入
【面向對象的嵌入式系統設計方法】相關文章:
面向網絡測試的嵌入式系統設計與實現03-07
面向對象設計在樓宇控制系統中的應用03-18
面向對象程序設計技術在金融信息系統的應用03-07
UML 在嵌入式系統設計中的應用03-18
嵌入式系統中的線性Flash文件系統設計03-21
面向對象petri網防空C3I系統建模12-26
嵌入式計算系統調測方法與技術綜述03-20