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