時間:2023-07-10 16:33:16
序論:好文章的創(chuàng)作是一個不斷探索和完善的過程,我們?yōu)槟扑]十篇嵌入式設計系統(tǒng)范例,希望它們能助您一臂之力,提升您的閱讀品質,帶來更深刻的閱讀感受。
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)34-9742-02
The Design on UML Embedded Systems
YU Hai-wen
(College of Information Engineering Nanchang University(Pre-Lake Campus), Nanchang 33000, China)
Abstract: UML is the the most popular standard modeling language, embedded systems are professional computer system on the centre of application and the base of computer technology, embedded systems are the integrity of software and hardware; The design's quality of embedded systems is the key of success about digital products. The paper discuss the important conception of UML,and how to use the technology of UML OOD in the design of embedded systems, then show us the steps based on the example of microwave light.
Key words: UML; embedded systems; OOD modeling; two-way engineering
近年來,數(shù)字家電、汽車電子、MP3、Smart Phone等躍居電腦產(chǎn)業(yè)的主流地位,數(shù)字整合的需求日益增長,嵌入式軟件(Embedded Software)系統(tǒng)愈來愈復雜,涉及到的接口越來越多,這種軟、硬件結合的協(xié)同設計(Hardware/Software Co-design)需要不同技術背景的人共同開發(fā),如何使這些具有不同技術背景和專長的人聯(lián)合開發(fā)、協(xié)同設計?UML可以解決這個問題。統(tǒng)一建模語言UML(Unified Modeling Language)采用一種簡單而直觀的圖形化方式描述系統(tǒng)設計中的各個問題和細節(jié)。不同技術背景的設計師只需懂得UML 符號就可以與對方交流、共同設計。
本文將重點討論如何在嵌入式系統(tǒng)設計中使用 UML 技術,并結合實例“微波爐小燈”演示采用 UML 的嵌入式系統(tǒng)設計過程。
1 UML OOD建模
1.1 UML基本概念介紹
1.1.1 UML事物
UML中事物是實體抽象化的最終結果,是模型中的基本成員,UML中包含結構事物、行為事物、分組事物和注釋事物。
1.1.2 UML建模圖
圖是事物集合的分類,UML中包含多種圖:1)類圖(Class Diagram);2)對象圖(Object Diagram);3)包圖(Package Diagram);4)組件圖(Compoment Diagram,也稱構件圖);5)部署圖(Deployment Diagram);6)用例圖(Usecase Diagram);7)時序圖(Sequence Diagram);8)協(xié)作圖(Collaboration Diagram);9)狀態(tài)圖(Statechart Diagram);10)活動圖(Activity Diagram)。
由于篇幅原因,本文將結合一個需求非常簡單的“微波爐小燈”的實例,給出幾個重要的圖。本文介紹的圖采用業(yè)界使用最廣泛的UML建模工具Rational Rose。Rational Rose為團隊開發(fā)和規(guī)范的開發(fā)過程管理提供了良好的支持。
1.2 UML OOD建模
從應用的角度上來講,面向對象的系統(tǒng)設計一般需要完成如下工作:
1)描述需求;2)根據(jù)需求建立系統(tǒng)的靜態(tài)模型;3)建立系統(tǒng)的動態(tài)模型:即描述系統(tǒng)的行為。
1.2.1 描述需求
“微波爐小燈”的實例需求很簡單,即微波爐里有個小燈,微波爐門打開時,它就亮起來,一旦關上門,就熄掉了。本文將根據(jù)此需求說明,采用UML設計一個控制程序來感應微波爐對象的狀態(tài)變化,并且觸發(fā)小燈對象的狀態(tài)變化。
1.2.2 建立系統(tǒng)的靜態(tài)模型
用例圖(Use Case Diagram):UML的Use Case圖1描述User對整體系統(tǒng)的功能需求,本例中,User會有兩項動作――“開微波爐”與“關微波爐”,而且期待開微波爐時會亮小燈,關微波爐時小燈會自動熄掉。
類圖(Class Diagram):如圖2,類是OOD中一個重要概念。軟件組件的模塊通稱為組件的類(Class),OOD設計理念是程序指令寫在類里,其所檢驗測試的對象都是類,等到電腦執(zhí)行時才由電腦在內(nèi)存中定義實體組件(對象)。
1.2.3 建立系統(tǒng)的動態(tài)模型
建立系統(tǒng)的動態(tài)模型實質就是描述系統(tǒng)的行為。
時序圖(Sequence Diagram):圖3這個時序圖反映了開微波爐過程中觸發(fā)小燈亮的詳細執(zhí)行過程。
狀態(tài)轉換圖4(Statechart Diagram):對對象行為做詳細的描述。就小燈而言,消息的傳達是個事件(Event),這事件令小燈改變狀態(tài)(亮或熄)。
2 雙向工程
2.1 正向工程
Rational Rose中可實現(xiàn)正向(為模型產(chǎn)生相應的代碼,即程序框架)、逆向(從用戶原來的軟件系統(tǒng)導出該系統(tǒng)的模型)和雙向工程(實現(xiàn)模型和代碼之間的循環(huán)工程),從而保證模型與代碼的高度一致,這個功能意味著降低了開發(fā)人員編寫程序的復雜度和工作量。
Rational Rose支持C++、Visual C++、Java、Smalltalk、Ada、Visual Basic、PowerBuilder等語言和開發(fā)工具,并能為CORBA 應用生成接口定義語言(IDL),為數(shù)據(jù)庫應用生成數(shù)據(jù)庫描述語言(DDL)等。Rational Rose默認支持的語言是Java。
本例中,在完成了“微波爐小燈”類圖制作后,選擇菜單“Tools” “Java/J2EE”“generate code”即可生成Java代碼,當原建模文件更新時,代碼會同步更新。
2.2 逆向工程
前面所述正向工程雖然只是得到了代碼框架,實現(xiàn)功能部分的代碼仍需開發(fā)人員輸入。隨著軟件功能的實現(xiàn)及新的用戶需求的加入,原建模文件在需要更新時,可不需要重新畫圖,只需進行逆向工程操作即可。本例中,在完成了“微波爐小燈”代碼后,選擇菜單“Tools”“Java/J2EE”“reverse engineer”即可生成新的建模文件。
3 小結
在軟、硬件設計領域中,采用UML進行軟件組件設計及其架構(Architecture)規(guī)劃技術逐漸成為業(yè)界關注的焦點。根據(jù)本文及“微波爐小燈”實例,顯然從UML設計圖到Java(C及C++)代碼的過程很流暢。
參考文獻:
引言
黑盒測試是從用戶觀點出發(fā)的測試,依據(jù)需求功能說明書中的預期用途、定時和性能的要求,推斷測試結果。黑盒測試根據(jù)測試階段可分為單元測試、集成測試、確認測試、系統(tǒng)測試四個階段[1]。嵌入式計算機系統(tǒng)具有與傳統(tǒng)軟件測試不同的新特性,因此需要采取針對性的測試方法。通用的測試方法可分為靜態(tài)時間分析和動態(tài)時間分析。
1嵌入式軟件測試的環(huán)境分析
在線仿真配備了CPU芯片接口,提供和應用程序交流信息橋,不足之處在于對硬件的依賴性較強,測試范圍較窄;目標機仿真測試結果真實,但由于實際運行中連接外部設備,很難辨識軟件和硬件錯誤。在實際測試中,根據(jù)測試效率、成本、可靠性、自動化程度等因素選擇測試環(huán)境[2]。
2嵌入式測試系統(tǒng)的技術實現(xiàn)
CodeTest一方面吸取軟件插樁技術,另一方面從硬件測試那里吸取從總線獲取數(shù)據(jù)的技術,并進行升級改造。在硬件測試時,CodeTest選擇插入點的方式為主動獲取關鍵數(shù)據(jù)。和CodeTest相比,純軟件測試對目標測試的影響大大降低。因此選用Cereal仿真器。嵌入式軟件測試系統(tǒng)由功能測試模塊、代碼測試模塊、數(shù)據(jù)分析和文檔報告模塊、通信接口轉換模塊組成。對于黑盒測試來說,功能測試模塊居主導地位,它主要通過接收目標系統(tǒng)輸出信號和需要的信號進行比對來判定目標系統(tǒng)在功能上是否達到最優(yōu)[3]。
3詞法語法分析的設計與實現(xiàn)
3.1Lex⁃Yacc
Lex是檢測字符匹配性的詞法生成程序,Yacc是測定語法的生成程序。一個Lex程序由三段組成:首先是C和Lex定義;第二段是C代碼;第三段是C函數(shù)。一個Yacc程序也是由三段組成,分別是聲明、語法規(guī)則和C代碼。Lex同Yacc的工作原理如圖1所示。
3.2Lex⁃Yacc之間的聯(lián)系
Lex程序用來計算數(shù)字字符串,能對各種符號進行識別,當插碼時可以以注釋的形式插入插樁代碼,等程序完成,可以自行取消代碼插樁,不影響整體進程。Yylval用來傳遞Lex與Yacc之間數(shù)字字符串轉化后的數(shù)值,利用lineno傳遞正在處理的代碼行號和標號。本次設計全程在Linux下,通過Lex編譯后生成詞法分析程序的C代碼,通過Yacc編譯后生成語法分析程序的C程序代碼。兩者通過gcc命令進行編譯形成綜合分析。最后運行該綜合分析器就可以對51系列的匯編語言進行分析[4⁃5]。
3.3被測源程序靜態(tài)結構分析
Lex⁃Yacc工具對單文件逐行掃描,得出當前語句各類參數(shù)類型,不同參數(shù)類型分別進入不同的單鏈表中。其中除了順序單鏈表外,其他四種處理方式基本相同。待詞法、語法分析完畢,五個單鏈表中存儲了對應的匯編程序。因為單鏈表本身只是一個轉換器,無法顯示匯編程序之間的邏輯關系,所以需要對程序進行二次分析,確定所有邏輯關系。其中五個單鏈表形成的流程圖如圖2所示。針對程序流程圖的建立,首先搜索匹配節(jié)點,根據(jù)節(jié)點不同進入相應分支處理。當前語句在順序節(jié)點,則進入順序處理模塊。從關鍵字“結束行號+1”開始遍歷單鏈表,存在兩種結果:一是算法出錯;另外一種就是在主程序中時則表明當前分支分析完成。接著要判斷條件跟蹤鏈表中的順序分支(規(guī)定為右分支)是否都已分析完畢。
4覆蓋率分析及評測
4.1被測源程序覆蓋率分析
虛擬插樁技術就是在匯編語言基本結構的特點上,在源程序的插樁點處設置斷點,在源程序執(zhí)行到斷點處,響應斷點處指令,給出具體的PC地址,自動記錄并打印出來,接連下去形成PC值的數(shù)據(jù)鏈。通過查詢五類單鏈表與之建立對應關系,就可以獲得到源程序的真實運行軌跡,進而計算出各類覆蓋指標。
4.2基于代碼的覆蓋評測
在仿真測試平臺原型系統(tǒng)上,基于代碼的覆蓋測試首先需要選定適合用作黑盒測試的子過程模塊。提取的子過程模塊必須具備獨立運行的能力,根據(jù)覆蓋測試的標準和要求對代碼邏輯結構進行認真分析,設計出多個測試用例,然后通過手工運行該子程序的方式,在某一特定測試用例驅動下運行,測定出運行路徑,通過計算得出兩種覆蓋率理論評測指標,與仿真測試平臺上實現(xiàn)的兩種覆蓋率相對比,得出覆蓋率分析法與虛擬插樁的正確性驗證結果。
5嵌入式系統(tǒng)平臺設計
設計一個可以代替人工進行黑盒測試的平臺系統(tǒng),見圖3,其基本原理是通過腳本語言記錄狀態(tài)信息,之后通過PC回放測試信息以判斷結果是否與記錄腳本一致,以此決定本次測試是否通過。為此,在編輯源代碼時就需要滿足錄制腳本和腳本回放兩個階段的需求。
5.1插裝代碼分析
在PC上運行插裝系統(tǒng)最重要的原則就是要保證軟件原有功能的穩(wěn)定性和完整性。因此在設計嵌入式系統(tǒng)的插裝代碼時不能改變程序的原有邏輯和原有執(zhí)行流程,應盡量降低在嵌入式系統(tǒng)所占的資源,盡可能將部分功能和操作交付于PC進行。嵌入式系統(tǒng)中的模擬用戶輸入模塊的主要功能是將計算機發(fā)送的命令進行分析,并將結果回復到處理模塊中,其操作模擬流程見圖4。
5.2系統(tǒng)狀態(tài)的定義和獲取
(1)聲音信息的獲取嵌入式系統(tǒng)中對聲音信息的獲取主要是通過識別每個聲音惟一的ID編號和固定的音頻編碼進行的。工作時,由系統(tǒng)中的服務函數(shù)獲得ID聲音的音頻編碼并發(fā)送到PC中。(2)獲取LED信息LED的運行方法和聲音相似,都有一套惟一的LED編碼,并由LED控制器控制。常用的設計方法是將LED中的編碼放到嵌入式系統(tǒng)中的緩沖區(qū)內(nèi),通過定時刷新函數(shù)提取LED信息[6]。(3)獲取LCD信息由于LCD需要顯示的信息較多,且各消息屬性復雜,因此較難提取。目前常用的提取方法是點陣截取法和消息截取法。由于點陣截取法操作簡單、測試結果準確率高,因此本文使用點陣截取法獲取LCD信息。(4)系統(tǒng)狀態(tài)的獲取主動請求和被動獲取是嵌入式系統(tǒng)獲取信息的主要方式。主動請求是指嵌入式系統(tǒng)在處理完PC發(fā)出的操作命令時,主動將搜集好的信息發(fā)送到PC上。被動獲取是指嵌入式系統(tǒng)并不主動發(fā)送檢測信息,而是當狀態(tài)出現(xiàn)時才決定是否繼續(xù)后續(xù)操作。
5.3自動化比較和測試
軟件是否準確輸出結果,需要經(jīng)過多次測試實際輸出和預期輸出的差別。本文在設計嵌入式系統(tǒng)時綜合考慮了一些智能比較思想來優(yōu)化設計流程。由于實際的嵌入式系統(tǒng)會產(chǎn)生上百個復雜的狀態(tài)信息[7],為便于比較,本文采用了相對比較的辦法對錄制腳本時的狀態(tài)變遷進行比較。最后設計完成的嵌入式系統(tǒng)需對腳本進行測試,這是交互式應用的重要組成部分。腳本測試的準確度主要依賴于所選用的測試工作和腳本技術。當前主要的腳本技術有共享腳本、數(shù)據(jù)驅動腳本、結構化腳本等。這些腳本都包括了三個命令,即人工操作命令、狀態(tài)檢查命令、邏輯控制命令。測試腳本主要就是對這三個命令進行檢查,其中在自動化檢測中采用何種腳本記錄測試結果可依據(jù)模塊要求進行選定。
6結語
黑盒測試技術的匯編語言測試系統(tǒng)用例研究在我國已經(jīng)很多,本文最大的亮點是引入虛擬插樁技術,實現(xiàn)真正插樁,即在被測源程序的插樁點處設置中斷指令,當源程序運行到該點處時自動運行斷點指令,給出具體的PC地址,進而給出一系列地址數(shù)據(jù),根據(jù)事先設定的用例判定運行效果,得出黑盒測試的正確驗證結果。此方法最大的優(yōu)點在于高效、精確、成本較低,在實際運用中具有較高的實用價值。
參考文獻
[1]孫昌愛,靳若明,劉超,等.實時嵌入式軟件的測試技術[J].小型微型計算機系統(tǒng),2000,21(9):920⁃924.
[2]杜曉東.面向嵌入式系統(tǒng)的測試工具研究[D].成都:電子科技大學,2003.
[3]蘇銘,宋宗宇,王華.多計算機的自動插樁與監(jiān)測系統(tǒng)[J].計算機工程與應用,2002(4):79⁃82.
[4]楊作梅,張旭東.1ex與yacc[M].北京:電子工業(yè)出版社,2003.
[5]鄧支益,何亦征,田翼.嵌入式軟件測試研究[J].航空電子技術,2003,34(1):37⁃42.
中圖分類號:TP274;TP3680
引 言
經(jīng)過近幾年的快速發(fā)展,嵌入式系統(tǒng)(Embedded System)已經(jīng)成為電子信息產(chǎn)業(yè)中最具增長力的一個分支。隨著手機、PDA,GPS、機頂盒等新興產(chǎn)品的大量應用,嵌入式系統(tǒng)的市場正在以每年30%的速度遞增(IDC預測),嵌入式系統(tǒng)的設計也成為軟硬件工程師越來越關心的話題。
在嵌入式系統(tǒng)設計中,低功耗設計(Low Power Design)是許多設計人員必須面對的問題。其原因在于嵌入式系統(tǒng)被廣泛應用于便攜式和移動性較強的產(chǎn)品中,而這些產(chǎn)品不是一直都有充足的電源供應,往往是靠電池來供電的;而且大多數(shù)嵌入式設備都有體積和質量的約束。另外,系統(tǒng)部件產(chǎn)生的熱量和功耗成比例,為解決散熱問題而采取的冷卻措施進一步增加了系統(tǒng)的功耗。為了得到最好的結果,降低系統(tǒng)的功耗具有下面的優(yōu)點:
(1) 電池驅動的需要。在強調綠色環(huán)保時期,許多電子產(chǎn)品都采用電池供電。對于電池供電系統(tǒng),延長電池壽命,降低用戶更換電池的周期,提高系統(tǒng)性能與降低系統(tǒng)開銷,甚至能起到保護環(huán)境的作用。
(2) 安全的需要。在現(xiàn)場總線領域,本安問題是┮桓霆重要話題。例如FF的本安設備,理論上每個網(wǎng)段可以容納32個設備,而實際應用中考慮到目前的功耗水平,每個網(wǎng)段安裝10個比較合適。因此降低系統(tǒng)功耗是實現(xiàn)本安要求的一個重要途徑。
[JP2](3) 解決電磁干擾。系統(tǒng)功耗越低,電磁輻射能量越小,對其他設備造成的干擾也越小。如果所有的電子產(chǎn)品都能設計成低功耗,那么電磁兼容性設計會變得容易。[JP]
(4) 節(jié)能的需要。特別是對電池供電系統(tǒng),功耗與電壓的平方成正比即:P=V2fC+P┆static,б虼私諛芨為重要。
1 功耗產(chǎn)生的原因
[BT3]1.1 集成電路的功耗
目前的集成電路工藝主要有TTL和CMOS兩大類,無論哪種工藝,只要電路中有電流通過,就會產(chǎn)生功耗。通常,集成電路的功耗主要有4個:
(1) 開關功耗。對電路中的電容充放電而形成,其表達式為:
(2) 靜態(tài)功耗和動態(tài)功耗。當電路的狀態(tài)沒有進行翻轉(保持高電平或低電平)時,電路的功耗屬于靜態(tài)功耗,其大小等于電路電壓與流過電流的乘積;動態(tài)功耗是電路翻轉時產(chǎn)生的功耗,由于電路翻轉時存在跳變沿,在電路翻轉瞬間,電流比較大,存在較大的動態(tài)功耗。目前大多數(shù)電路都采用CMOS工藝,靜態(tài)功耗很小,可以忽略。起主要作用的是動態(tài)功耗,因此從降低動態(tài)功耗入手來降低功耗。
(3) 短路功耗。因開關時由電源到地形成的通路造成的,其表達式為:
(4) 漏電功耗。由亞閾值電流和反向偏壓電流造成。目前大多數(shù)電路都采用CMOS工藝,故漏電功耗很小,可以忽略。
1.2 電阻的功耗和有源器件的功耗
通常為負載器件和寄生元件產(chǎn)生的功耗。有源開關器件在狀態(tài)轉換時,電流和電壓比較大,將引起功率消耗。另外, CMOS電路中最大的功耗來自于內(nèi)部和外部的電容充放電產(chǎn)生的功耗。
2 硬件低功耗設計
[BT3]2.1 選擇低功耗的器件
選擇低功耗的電子器件可以從根本上降低整個硬件系統(tǒng)的功耗。目前的半導體工藝主要有TTL工藝和CMOS工藝,CMOS工藝具有很低的功耗,在電路設計上盡量選用,使用CMOS系列電路時,其不用的輸入端不要懸空,因為懸空的輸入端可能存在感應信號,它將造成高低電平的轉換。轉換器件的功耗很大,盡量采用輸出為高的原則。
嵌入式處理器是嵌入式系統(tǒng)的硬件核心,消耗大量的功率,因此設計時選用低功耗的處理器;另外,選擇低功耗的通信收發(fā)器(對于通信應用系統(tǒng))、低功耗的訪存部件、低功耗的電路,目前許多通信收發(fā)器都設計成節(jié)省功耗方式,這樣的器件優(yōu)先采用。
2.2 選用低功耗的電路形式
完成同樣的功能,電路的實現(xiàn)形式有多種。例如,可以利用分立元件、小規(guī)模集成電路,大規(guī)模集成電路甚至單片實現(xiàn)。通常,使用的元器件數(shù)量越少,系統(tǒng)的功耗越低。因此,盡量使用集成度高的器件,以減少電路中使用元件的個數(shù),減少整機的功耗。
2.3 單電源、低電壓供電
一些模擬電路如運算放大器等,供電方式有正負電源和單電源兩種。雙電源供電可以提供對地輸出的信號。高電源電壓的優(yōu)點是可以提供大的動態(tài)范圍,缺點是功耗大。例如,低功耗集成運算放大器LM324,單電源電壓工作范圍為5~30 V。當電源電壓為15 V時,功耗約為220 mW;當電源電壓為10 V時,功耗約為90 mW;當電源電壓為5 V時,功耗約為15 mW。可見,低電壓供電對降低器件功耗的作用十分明顯。因此,處理小信號的電路可以降低供電電壓。
2.4 分區(qū)/分時供電技術
一個嵌入式系統(tǒng)的所有組成部分并非時刻在工作,基于此,可采用分時/分區(qū)的供電技術。原理是利用“開關”控制電源供電單元,在某一部分電路處于休眠狀態(tài)時,關閉其供電電源,僅保留工作部分的電源。
2.5 I/O引腳供電
嵌入式處理器的輸出引腳在輸出高電平時,可以提供約20 mA的電流,該引腳可以直接作為某些電路的供電電源使用,如圖2所示。處理器的引腳輸出高電平時,外部器件工作;輸出低電平時,外部器件停止工作。需要注意,該電路需滿足下列要求:外部器件的功耗較低,低于處理器I/O引腳的高電平輸出電流;外部器件的供電電壓范圍較寬。
2.6 電源管理單元設計
處理器全速工作時,功耗最大;待機狀態(tài)時,功耗比較小。常見的待機方式有兩種:空閑方式(Idle)和掉電方式(Shut Down)。其中,Idle方式可以通過中斷的發(fā)生退出,中斷可以由外部事件供給。掉電方式指的是處理器停止,連中斷也不響應,因此需要進入復位才能退出掉電方式。
為了降低系統(tǒng)的功耗,一旦CPU處于“空轉”,可以使之進入Idle狀態(tài),降低功耗;期間如果發(fā)生了外部事件,可以通過事件產(chǎn)生中斷信號,使CPU進入運行狀態(tài)。對于Shut Down狀態(tài),只能用復位信號喚醒CPU。
2.7 智能電源設計
既要保證系統(tǒng)具有良好的性能,又能兼顧功耗問題,一個最好的辦法是采用智能電源。在系統(tǒng)中增加適當?shù)闹悄茴A測、檢測,根據(jù)需要對系統(tǒng)采取不同的供電方式,以求系統(tǒng)的功耗最低。許多膝上型電腦的電源管理采用智能電源,以筆記本電腦為例,在電源管理方面,Intel公司采取Speed Step技術;AMD公司采取Power Now技術;Transmeta公司采取Long Run技術。雖然這三種技術涉及到的具體內(nèi)容不同,但基本原理是一致的。以采用Speed Step技術的筆記本電腦為例,系統(tǒng)可以根據(jù)不同的使用環(huán)境對CPU的運行速度進行合理調整。如果系統(tǒng)使用外接電源,CPU將按照正常的主頻率及電壓運行;當檢測到系統(tǒng)為電池供電時,軟件將自動切換CPU的主頻率及電壓至較低狀態(tài)運行。
2.8 降低處理器的時鐘頻率
處理器的功耗與時鐘頻率密切相關。以SAMSUNG S3C2410X (32 b ARM 920T內(nèi)核)為例[8],它提供了四種工作模式:正常模式、空閑模式、休眠模式、關機模式,各種模式的功耗如表1所示。[HJ1][HJ]
由表1可見,CPU在全速運行的時候比在空閑或者休眠的時候消耗的功率大得多。省電的原則就是讓正常運行模式遠比空閑、休眠模式少占用時間。在類似PDA的設備中,系統(tǒng)在全速運行的時候遠比空閑的時候少,所以可以通過設置,使CPU盡可能工作在空閑狀態(tài),然后通過相應的中斷喚醒 CPU,恢復到正常工作模式,處理響應的事件,然后再進入空閑模式。因此設計系統(tǒng)時,如果處理能力許可,可盡量降低處理器的時鐘頻率。
另外,可以動態(tài)改變處理器的時鐘,以降低系統(tǒng)的總功耗。CPU空閑時,降低時鐘頻率;處于工作狀態(tài)時,提高時鐘頻率以全速運行處理事務,實現(xiàn)這一技術的方法。通過將I/O引腳設定為輸出高電平,加入電阻R1,將增加時鐘頻率;將I/O引腳輸出低電平,去掉電阻R1,可降低時鐘頻率,以降低功耗。
2.9 降低持續(xù)工作電流
在一些系統(tǒng)中,盡量使系統(tǒng)在狀態(tài)轉換時消耗電流,在維持工作時期不消耗電流。例如,IC卡水表、煤氣表、靜態(tài)電能表等,在打開和關閉開關時給相應的機構上電,開關開和關狀態(tài)通過機械機構或磁場機制保持開關的狀態(tài),而不通過電流保持,可以進一步降低電能的消耗。[JP]
3 軟件低功耗設計
3.1 編譯低功耗優(yōu)化技術
編譯技術降低系統(tǒng)功耗是基于這樣的事實:對于實現(xiàn)同樣的功能,不同的軟件算法,消耗的時間不同,使用的指令不同,因而消耗的功率也不同。對于使用高級語言,由于是面向問題設計的,很難控制低功耗。但是,如果利用匯編語言開發(fā)系統(tǒng)(如對于小型的嵌入式系統(tǒng)開發(fā)),可以有意識地選擇消耗時間短的指令和設計消耗功率小的算法來降低系統(tǒng)的功耗。
3.2 硬件軟件化與軟件硬件化
通常的硬件電路一定消耗功率,基于此,可以減少系統(tǒng)的硬件電路,把數(shù)據(jù)處理功能用軟件實現(xiàn),如許多儀表中用到的對數(shù)放大電路、抗干擾電路,測量系統(tǒng)中用軟件濾波代替硬件濾波器等。
需要考慮,軟件處理需要時間,處理器也需要消耗功率,特別是在處理大量數(shù)據(jù)的時候,需要高性能的處理器,這可能會消耗大量的功率。因此,系統(tǒng)中某一功能用軟件實現(xiàn),還是用硬件實現(xiàn),需要綜合計算后進行設計。3.3 采用快速算法
數(shù)字信號處理中的運算,采用如FFT和快速卷積等,可以大量節(jié)省運算時間,從而減少功耗;在精度允許的情況下,使用簡單函數(shù)代替復雜函數(shù)作近似,也是減少功耗的一種方法。
3.4 軟件設計采用中斷驅動技術
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1007-9599 (2012) 21-0000-02
1 項目背景
越來越多的卷煙加工企業(yè)通過MES系統(tǒng)實現(xiàn)了對整個卷煙生產(chǎn)過程的優(yōu)化管理,并掌握了大量的生產(chǎn)過程數(shù)據(jù),特別是為保證產(chǎn)品質量所記錄下的水分、溫度、流量、質量檢驗等過程工藝數(shù)據(jù)。如何把整合了實時與核心業(yè)務流程并最大限度地利用生產(chǎn)資本的MES系統(tǒng)和SPC有效集成起來,不但同時收集實時生產(chǎn)數(shù)據(jù)和執(zhí)行實時統(tǒng)計分析,建立動態(tài)反饋和閉環(huán)控制流程,還可以為生產(chǎn)決策人員和管理人員提供定制的控制圖表以及提醒實時潛在的質量問題,成為了卷煙企業(yè)信息化項目實施過程中的一個重要課題。
2 設計思路
卷煙生產(chǎn)屬于流程性材料加工方式,如何才能科學地區(qū)分出生產(chǎn)過程中產(chǎn)品質量的偶然波動與異常波動,發(fā)現(xiàn)過程異常及時告警,并及時采取措施,消除和避免異常波動,使過程處于正常波動狀態(tài),恢復過程的穩(wěn)定,從而持續(xù)優(yōu)化和改進產(chǎn)品質量。要解決這個艱巨的挑戰(zhàn),可以通過建立結合工業(yè)技術、靈活的MES并集成在線統(tǒng)計過程控制系統(tǒng)(SPC)的制造基礎結構來實現(xiàn)。我們提出把SPC作為MES的一個功能模塊嵌入MES系統(tǒng),共享基礎數(shù)據(jù)和各業(yè)務數(shù)據(jù)表,從而實現(xiàn)嵌入式SPC系統(tǒng)與MES系統(tǒng)的真正有效集成。
3 業(yè)務需求
我們在MES系統(tǒng)整體功能設計時就提出要把數(shù)據(jù)的統(tǒng)計和深入分析放在同等重要的地位,將MES和SPC進行深度整合,MES通過自動采集或人工補充的方式對過程數(shù)據(jù)進行全面收集,嵌入式SPC實現(xiàn)對實時過程數(shù)據(jù)進行采集、分析,同時還應強調對質量檢驗結果、質量評價結果等事后數(shù)據(jù)進行分析,最終達到改進生產(chǎn)操作的目的。關鍵需求如下:
Abstract: based on embedded system design of the structure of the geographic information system, and puts forward the comprehensive GIS architecture using a variety of modern technology, they include GIS technology and embedded technology, and RS technology, GPS technology, mobile computing technology and communication technology, etc.
Keywords: geographic information systems; Embedded; Global positioning system; Spatial data
中圖分類號:S611文獻標識碼:A 文章編號:
1.引言
隨著GIS技術的不斷成熟和它給人們帶來的巨大便利,以及嵌入式設備性能的提高和普及,兩者的結合成為一種必然的發(fā)展趨勢。近年來,嵌入式GIS技術正成為GIS發(fā)展的熱點之一,它的應用包括了汽車導航、野外測繪、物流運輸、軍事指揮等眾多的領域。我國也已經(jīng)開發(fā)出了自己的嵌入式GIS產(chǎn)品,比如武漢中地軟件的MAPGIS-Embedded和北京超圖公司的eSuperMap等。本章提出了一種基于嵌入式設備的地理信息系統(tǒng)的完整的體系架構,對于架構中涉及到的技術以及每一個模塊都做了比較詳細的說明。同時需要指出的是:這個架構不僅具有一定的理論價值,還具有很強的現(xiàn)實意義。我們已經(jīng)按照此架構中提出的思想進行了代碼實現(xiàn),當然由于時間和精力的關系,只是實現(xiàn)了其中的一些基本的功能,但這卻是自主開發(fā)嵌入式地理信息系統(tǒng)的一次有意的嘗試,并具體介紹實現(xiàn)的過程和步驟,以及實現(xiàn)過程中一些難點、關鍵問題的解決。
2.嵌入式GIS體系架構
嵌入式地理信息系統(tǒng)的體系架構如圖1所示。從圖中可以看出,整個系統(tǒng)是基于C/S模式的,它由嵌入式設備、高性能計算機、全球定位系統(tǒng)(GPS)和空間數(shù)據(jù)庫四個部分組成。
嵌入式設備由嵌入式硬件系統(tǒng)和嵌入式軟件系統(tǒng)構成,其中嵌入式硬件系統(tǒng)要集成GPS定位信息的接收功能;在嵌入式硬件之上的一層是嵌入式操作系統(tǒng)(如ARM-Linux等),它是嵌入式軟、硬件之間的橋梁,主要負責文件管理、進程調度等功能;運行在嵌入式設備上的GIS軟件(也就是客戶端程序)包括地圖的顯示、縮放、漫游、緩沖分析、通訊等幾個模塊,通訊模塊可以通過無線網(wǎng)絡與高性能計算機(服務器)進行通信和數(shù)據(jù)傳輸。
高性能計算機(服務器)要實現(xiàn)最短路徑、最優(yōu)路徑的查詢等地理信息系統(tǒng)中比較復雜的功能,同時還要實現(xiàn)與客戶端進行通訊、文件格式的轉換,以及訪問數(shù)據(jù)庫服務器等功能。
對于系統(tǒng)中數(shù)據(jù)的存儲,我們采取的是客戶端-服務器兩級數(shù)據(jù)存儲模式,大部分的數(shù)據(jù)存放在服務器端(高性能計算機),客戶端(嵌入式設備)只保留少量常用的數(shù)據(jù);如果系統(tǒng)中的數(shù)據(jù)量過于龐大,甚至可以由一個具有海量存儲器的計算機專門來存儲服務器端的數(shù)據(jù),并向服務器提供訪問接口,這樣可以減輕服務器的負擔,提高整個系統(tǒng)的效率和處理數(shù)據(jù)的速度。在必要時,客戶端可以向服務器提出更新數(shù)據(jù)的請求,服務器在接到請求后把相應的數(shù)據(jù)文件回傳給客戶端。
圖1 基于嵌入式設備的GIS架構示意圖
對系統(tǒng)的功能模塊進行了劃分,把地圖顯示、圖層管理、緩沖分析、縮放和漫游等比較簡單,對硬件資源消耗小的應用放在客戶端,而把最優(yōu)路徑、最短路徑的分析等復雜的應用放在服務器端。這樣做的原因在于嵌入式硬件本身的資源非常有限,如存儲空間偏小、處理器的速度也不是十分理想等,所以它不可能發(fā)展較為復雜的GIS空間分析功能。當客戶端需要調用最短(優(yōu))路徑查詢等復雜的GIS分析功能時,就向服務器發(fā)出請求(其中包括客戶端當前的位置、目的地等參數(shù)),服務器根據(jù)客戶端傳遞的參數(shù),對數(shù)據(jù)庫進行一系列的查詢、檢索等操作后,將分析的結果回傳給客戶端,從而為客戶提供決策支持,同時也減輕了嵌入式設備的負擔,提高了它的工作效率。
3.全球定位系統(tǒng)及3S集成技術
3S技術為科學研究、政府管理、社會生產(chǎn)提供了新一代的觀測手段、描述語言和思維工具。3S的結合應用,取長補短,是一個自然的發(fā)展趨勢,三者之間的相互作用形成了“一個大腦,兩只眼睛”的框架,即RS和GPS向GIS提供或更新區(qū)域信息以及空間定位,GIS進行相應的空間分析(圖2),以從RS和GPS提供的浩如煙海的數(shù)據(jù)中提取有用信息,并進行綜合集成,使之成為決策的科學依據(jù)。RS、GIS、GPS集成的方式可以在不同的技術水平上實現(xiàn),最簡單的辦法是三種系統(tǒng)分開而由用戶綜合使用,進一步是三者有共同的界面,做到表面上無縫的集成,數(shù)據(jù)傳輸則在內(nèi)部通過特征碼相結合,最好的辦法是整體的集成,成為統(tǒng)一的系統(tǒng)。
圖2 3S的相互作用與集成
4.空間數(shù)據(jù)的無線傳輸
空間數(shù)據(jù)無線傳輸技術是完善嵌入式GIS 功能的重要技術之一。但是目前該技術的發(fā)展受到諸多因素的制約,下面就這些制約因素加以闡述和分析,并針對無線傳輸網(wǎng)絡提出相應的解決方案。雖然GPRS是作為現(xiàn)有GSM網(wǎng)絡向第三代移動通信演變的過渡技術,但是它相對于原來GSM的撥號方式的電路交換數(shù)據(jù)傳送方式,在許多方面都具有顯著的優(yōu)勢。正是由于GPRS具有以上的這些特點和優(yōu)勢,在我們設計的基于嵌入式設備的GIS系統(tǒng)架構中,采用了GPRS作為空間數(shù)據(jù)的無線傳輸網(wǎng)絡。
5.試驗結果
ECI GIS的開發(fā)嚴格遵循了軟件工程的思想,并且針對嵌入式軟件開發(fā)的特點,對軟、硬件平臺以及專業(yè)需求等因素也進行了綜合的分析和考慮。但由于時間、技術等方面的原因,我們的軟件只是實現(xiàn)了GIS中的一些基本功能。本節(jié)將重點向您介紹這些功能的實現(xiàn),即程序運行的結果。說明:地圖中的當前圖層為上海市區(qū)縣和主要河流。
圖3全圖顯示
圖4屬性數(shù)據(jù)庫的顯示
結束語
ECI GIS1.0是一個基于嵌入式設備的地理信息系統(tǒng)軟件,它經(jīng)過了架構的搭建、模塊設計、代碼實現(xiàn)、軟件移植和應用檢驗幾個階段,具備了地圖縮放、信息查詢等基本的功能。ECI GIS與其他的嵌入式地理信息系統(tǒng)相比,最大的特點就是它沒有借助任何商業(yè)的操作系統(tǒng)(如WinCE)和GIS系統(tǒng)軟件,實現(xiàn)過程中用到的Linux和GDAL函數(shù)庫的源代碼都是免費開放的。ECI GIS1.0是我們?yōu)殚_發(fā)出中國擁有自己完全版權的GIS軟件而進行的有意的嘗試和探索,這一點或許遠遠大于其在商業(yè)上的價值。
參考文獻:
[1] 龔健雅. 地理信息系統(tǒng)基礎[M]. 北京:科學出版社,2001.
[2] 張超,陳丙咸,鄔倫.地理信息系統(tǒng)[M]. 北京:高等教育出版社,1995.
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2013)32-7230-02
隨著電子信息技術的發(fā)展,計算機在不同領域中得到了廣泛的應用,人們根據(jù)不同領域的實際需求,針對性的開發(fā)了具有相應功能的軟件,從而提高實際的工作效率,但是在計算機出現(xiàn)的早期,受到其體積和性能上的限制,其應用的范圍很小,隨著晶體管和集成電路的出現(xiàn),計算機的體積和性能得到了極大的提升,從計算機的發(fā)展可以看出,每次技術的更新,都是為了減小其體積,同時提高其性能。計算機的出現(xiàn)是革命性的,由于其能夠自行的處理任務,如果應用在實際的工業(yè)生產(chǎn)中,就能夠實現(xiàn)生產(chǎn)的自動化,這也是近些年計算機應用發(fā)展的方向,但是通過實際的調查發(fā)現(xiàn),計算機在應用的過程中,雖然經(jīng)過了多年的發(fā)展,出現(xiàn)了筆記本電腦,在體積上得到了極大的控制,但是在工業(yè)控制領域中,這樣的體積依然很龐大,在這種背景下,人們發(fā)明了單片機這種微型計算機,并在工業(yè)控制中得到了廣泛的應用。
1 嵌入式架構簡述
1.1 嵌入式架構的概念
嵌入式架構是隨著計算機的發(fā)展,逐漸形成的一門學科,現(xiàn)在很多高校中,都開設了這門課程,為社會培養(yǎng)大量的相關人才,學生在畢業(yè)后,能夠掌握到充足的嵌入式架構知識,從而能進行計算機系統(tǒng)的設計,我國受到特殊的歷史因素影響,經(jīng)濟和科技發(fā)展的起步較晚,與西方發(fā)達國家相比,存在較大的差距,尤其是在電子信息領域。雖然近年來隨著國家的重視,出臺了很多優(yōu)惠的政策法規(guī),鼓勵和扶持我國相關產(chǎn)業(yè)的發(fā)展,經(jīng)過了多年的發(fā)展,現(xiàn)在我國嵌入式架構的研究,已經(jīng)得到了很大的提高,但是通過實際的調查發(fā)現(xiàn),嵌入式架構使用的單片機等設備,目前還都是國外的公司生產(chǎn)的,我國技術人員在完成系統(tǒng)的開發(fā)后,都需要采用國外的設備,由于我國一直受到西方國家的技術封鎖,很多先進的設備都無法進口,在很大程度上影響了我國嵌入式架構的發(fā)展。對于嵌入式架構的概念,國際電氣和電子工程師協(xié)會給出了具體的解釋,是控制、監(jiān)視等輔助設備工作的系統(tǒng),目前對于嵌入式架構的理解,主要基于計算機技術,一般情況下,可以把帶有控制程序的處理器,看成是一個嵌入式架構,在不同的時期,人們對于嵌入式架構概念的理解,也存在一定的差異,但是從根本上來說,都是為了更好的使用嵌入式系統(tǒng)。
1.2 嵌入式架構的特點
與傳統(tǒng)的計算機技術相比,嵌入式架構具有鮮明的特點,首先就是體積更小,在嵌入式架構出現(xiàn)的早期,主要是在計算機的基礎上,進行系統(tǒng)的開發(fā),但是隨著相關技術的發(fā)展,嵌入式架構自身有了很大的進步,尤其是單片機等微型計算機的出現(xiàn),使得其應用的范圍更加廣泛,從某種意義上來說,單片機的出現(xiàn),就是由于嵌入式架構應用的需要。其次嵌入式架構具有控制的特點,隨著電子信息化的發(fā)展,很多機械設備都采用了智能芯片,通過這些芯片的使用,可以寫入特定的控制程序,從而達到相應的控制目的,近幾年軟件技術有了很大的發(fā)展,尤其是在人工專家模塊出現(xiàn)后,計算機軟件可以實現(xiàn)一定的智能化,在遇到一些問題時,可以通過檢索以前的經(jīng)驗,對問題自行進行處理,如果將這個技術應用到嵌入式架構中,就可以實現(xiàn)工業(yè)生產(chǎn)的自動化控制。從根本上來說,工業(yè)的自動化控制技術,就是在單片機等微型計算機的基礎上發(fā)展起來的,而單片機的使用,大多都是在嵌入式架構,通過硬件和軟件的針對性設計,可以最大程度的提高單片機應用的效率。
2 單片機系統(tǒng)設計的現(xiàn)狀
2.1 單片機系統(tǒng)設計的發(fā)展
單片機的出現(xiàn),主要是由于實際應用的需要,傳統(tǒng)的計算機受到體積上的限制,雖然在很多領域中得到了應用,但是在實際的工業(yè)生產(chǎn)中,要想對生產(chǎn)過程中的每個環(huán)節(jié)進行控制,必須將所有的環(huán)節(jié)通過特定的方式連接起來,然后設置一個中央服務器,通過硬件和軟件等方式,對生產(chǎn)進行實時的控制,只有這樣才能夠最大程度提高生產(chǎn)的效率。由此可以看出,單片機系統(tǒng)的發(fā)展,可以分成硬件和軟件兩個部分,而這兩個部分都受到計算機技術的影響,尤其是軟件方面,在初期使用機器語言進行編程時,還沒有單片機的出現(xiàn),而匯編等低級語言使用,單片機程序的編寫,也采用這些低級語言,隨著計算機軟件技術的發(fā)展,逐漸的出現(xiàn)了C語言等高級語言,相應的單片機系統(tǒng)設計,也開始使用這些高級語言,極大的提高了軟件編寫的效率。單片機系統(tǒng)硬件的發(fā)展,由于其出現(xiàn)和發(fā)展都在西方發(fā)達國家,而且由于社會和經(jīng)濟的體制不同,這些國家對我國一直存在技術上的封鎖,因此我國很難接觸到先進的單片機系統(tǒng)知識,在很大程度上影響了我國單片機技術的發(fā)展,目前使用的單片機設備,都是國外公司生產(chǎn)的,而且一些最新的單片機,對我國還存在進口的限制。
2.2 單片機系統(tǒng)設計中存在的問題
單片機從出現(xiàn)開始,到現(xiàn)在已經(jīng)使用了多年,在應用的過程中,其自身的理論在不斷的完善,通過單片機系統(tǒng)的使用,可以輕松的實現(xiàn)工業(yè)生產(chǎn)的自動化,進而提高生產(chǎn)的效率,正是由于單片機系統(tǒng)的這個特點,使得每個企業(yè)都希望能夠通過這樣的方式,來提高自身的生產(chǎn)效率,但是在實際應用的過程中,不同公司加工的產(chǎn)品不同,生產(chǎn)設備也存在一定的差異,如果使用同樣的單片機系統(tǒng),顯然無法最大程度的提高生產(chǎn)效率。因此現(xiàn)在單片機系統(tǒng)的使用,都會根據(jù)實際的需求,對單片機系統(tǒng)的功能,進行針對性的設計,但是通過實際的調查發(fā)現(xiàn),目前單片機系統(tǒng)設計中,還存在著一些問題,使得設計的系統(tǒng)不是很完善,在實際使用的過程中,經(jīng)常會出現(xiàn)一些漏洞,影響產(chǎn)品的加工效率,由于單片機系統(tǒng)設計可以分成軟件和硬件兩個部分,因此對系統(tǒng)設計存在的問題,也可以從這兩個方面進行分析。首先就是硬件性能不合格,在設計完實際的電路后,對各個元器件的性能,都有具體的要求,如果這些器件的性能達不到相應的指標,那么電路顯然就無法正常的運行,其次就是軟件設計的不完善,由于軟件自身的特殊性,無法編寫出完美的程序,程序自身越復雜,存在的漏洞也就越多,如果在程序編寫完成之后,沒有經(jīng)過科學的測試,那么在應用時,就可能會出現(xiàn)問題。
3 基于嵌入式架構的單片機系統(tǒng)設計分析
3.1 基于嵌入式架構的單片機系統(tǒng)硬件設計
在單片機出現(xiàn)的早期,由于還沒有形成嵌入式架構的概念,因此在實際的系統(tǒng)設計中,而且單片機系統(tǒng)的使用,都是對現(xiàn)有的生產(chǎn)線進行改進,通過在生產(chǎn)設備上增加一些線路,然后用單片機對其進行控制,在這種模式下,硬件設備的選擇,主要是根據(jù)環(huán)境來進行,對硬件設備的體積要求比較嚴格。隨著硬件設備的發(fā)展,現(xiàn)在生產(chǎn)單片機的公司有很多,可以實現(xiàn)同樣功能的元器件有很多,而自動化技術的出現(xiàn),使得生產(chǎn)線在設計的過程中,會根據(jù)控制的需求,進行相應的變化,這種單片機系統(tǒng)使用方式上的轉變,極大的促進了其應用的發(fā)展,為了達到更高的控制效率,人們將單片機放到生產(chǎn)線的每個環(huán)節(jié)中,然后將這些單片機連接到一個服務器上,就能夠實現(xiàn)對生產(chǎn)的全面控制。現(xiàn)在單片機系統(tǒng)設計中,首先進行的就是硬件上的設計,通常情況下,會根據(jù)生產(chǎn)的實際情況,對控制的功能進行需求分析,單片機系統(tǒng)硬件的設計,會和生產(chǎn)線的硬件設計同步進行,如果控制系統(tǒng)的硬件出現(xiàn)問題,可以根據(jù)需要,對生產(chǎn)線進行一定的修改。
3.2 基于嵌入式架構的單片機系統(tǒng)軟件設計
嵌入式系統(tǒng)與傳統(tǒng)的應用方式相比,最明顯的特點就是多了輔助設備,如以往應用計算機的過程中,都是計算機的單獨使用,人們直接利用計算機來處理一些問題,或者利用計算機來控制某些設備的工作,沒有任何的輔助設備,而嵌入式架構下,需要借助單片機等設備,如一條生產(chǎn)線通常包括多個加工工藝,如果采用計算機的統(tǒng)一控制,就無法實現(xiàn)對每個環(huán)節(jié)的單獨控制,而利用單片機系統(tǒng),在每個加工環(huán)節(jié)中,都嵌入一個單片機,然后將這些單片機連接到一個計算機服務器中,就可以實現(xiàn)局部的控制。而要想完成這個過程,就要通過相應的軟件功能,對于同樣的單片機系統(tǒng),如果根據(jù)實際應用的需要,設計不同的程序,能夠實現(xiàn)不同的控制功能,由此可以看出,軟件設計是單片機系統(tǒng)工作的核心。
4 結束語
作為以計算機為基礎的技術,嵌入式架構的發(fā)展,很大程度上受到計算機技術的影響,如在計算機剛出現(xiàn)時,由于其性能比較,甚至還不如現(xiàn)在的電子計算器,因此實際的應用很少,只是在實驗室中進行科研使用,但是人們從計算機的特點能夠看出,隨著技術的進步,將來計算機一定會得到普及應用。在這種背景下,很多專家和學者對計算機進行了研究,通過大量的實踐,極大的推動了計算機的發(fā)展,于是計算機越來越多的用來處理實際問題,為了提高控制的效率,人們對程序進行了完善,經(jīng)過全文的分析可以知道,嵌入式架構和單片機的出現(xiàn),都是由于實際應用的需要,而單片機在實際應用的過程中,還存在很多問題,如果能夠采用嵌入式架構,那么就能夠極大的提高單片機系統(tǒng)的使用效果。
參考文獻:
[1] 金玉濤,馬軍勇.基于80C52的三相可控整流電路觸發(fā)脈沖的實現(xiàn)[J].河南教育學院學報:自然科學版,2007(3):37-39.
[2] 何兵.基于MCS-51單片機的步進電機正反轉控制實現(xiàn)[J].瀘州職業(yè)技術學院學報,2008(1):56-59.
中圖分類號:TP274 文獻標識碼:A 文章編號:1007-9416(2016)04-0000-00
網(wǎng)絡控制系統(tǒng)并不僅僅為一個進行數(shù)據(jù)傳輸?shù)耐ㄐ畔到y(tǒng),更是一個利用網(wǎng)絡來實現(xiàn)控制功能的自控系統(tǒng),在滿足數(shù)據(jù)傳輸?shù)幕A上,還需要通過所傳輸數(shù)據(jù)與指令,來完成各項計算、操作以及控制等功能。網(wǎng)絡控制系統(tǒng)設計具有較高的難度,而嵌入式網(wǎng)絡控制系統(tǒng)的設計,必須要明確系統(tǒng)設計需求,從整體上確定系統(tǒng)構架,然后以實現(xiàn)各項功能為目的完成設計。
1嵌入式Linux操作系統(tǒng)分析
對嵌入式Linux操作系統(tǒng)進行分析,可以確定其具有多項特點如具有高效可裁剪微小內(nèi)核、開放源代碼,且可支持多種硬件運行,具有優(yōu)秀的網(wǎng)絡功能,操作運行更安全可靠。Linux操作系統(tǒng)內(nèi)核最小可以達到134KB,運行時產(chǎn)生的消耗非常少,并且資源運用具有很高的可靠性與穩(wěn)定性。在實際應用中其可以支持多種CPU與硬件平臺運行,并且可以無故障運行多年,現(xiàn)在已經(jīng)被廣泛的應用到數(shù)據(jù)中心[1]。另外,嵌入式Linux操作系統(tǒng)在網(wǎng)絡應用方面具有良好的效果,可以向TCP/IP協(xié)議提供可靠的支持,以及可以支持以太網(wǎng)、令牌網(wǎng)、無線網(wǎng)絡以及光纖等。
2嵌入式網(wǎng)絡控制系統(tǒng)設計需求分析
2.1 服務器可行性
主要包括兩個方面,即應用可行性與技術可行性。隨著計算機網(wǎng)絡技術的快速發(fā)展,以太網(wǎng)現(xiàn)在已經(jīng)被廣泛的應用到生活工作中,嵌入式技術在網(wǎng)絡產(chǎn)品中的應用具有廣闊的發(fā)展前景。就嵌入式技術與以太網(wǎng)技術連接進行分析,勢必會推動嵌入式設備遠程控制與管理效果的發(fā)展。
2.2數(shù)據(jù)采集功能
嵌入式網(wǎng)絡控制服務器可以通過以太網(wǎng)來滿足現(xiàn)場數(shù)據(jù)采集的要求,以太網(wǎng)選擇用UDP協(xié)議,則應保證其能夠按照指定數(shù)據(jù)通信協(xié)議,對現(xiàn)場數(shù)據(jù)進行采集與分析,且還應實現(xiàn)與數(shù)據(jù)節(jié)點的連接,并保證通信鏈路的正常運行。另外,嵌入式網(wǎng)絡的設計,還應保證數(shù)據(jù)的有效性,對于未按照指定通信協(xié)議祖幀傳送的數(shù)據(jù),應將其丟棄。
2.3 數(shù)據(jù)存儲功能
應建立指定需求數(shù)據(jù)庫以及數(shù)據(jù)庫表,且此創(chuàng)建工作只有在嵌入式網(wǎng)絡控制服務器相關功能運行前完成,并確定數(shù)據(jù)庫能夠穩(wěn)定運行。嵌入式網(wǎng)絡控制系統(tǒng)數(shù)據(jù)存儲功能的實現(xiàn),還需要保證數(shù)據(jù)的完整性,確保收集到的數(shù)據(jù)不會被丟失。在對設備節(jié)點所發(fā)數(shù)據(jù)接收后,及時對數(shù)據(jù)進行存儲,并且要做好數(shù)據(jù)采集相關信息的記錄。
3嵌入式網(wǎng)絡控制系統(tǒng)設計方式
3.1 系統(tǒng)結構設計
嵌入式網(wǎng)絡控制系統(tǒng)的設計,其中服務器通過HTTP協(xié)議與Web瀏覽器實現(xiàn)信息交互,并提供設備控制頁面與數(shù)據(jù)查詢頁面。并且嵌入式網(wǎng)絡控制服務器還可以支持多個Web瀏覽器訪問與數(shù)據(jù)同步,并對系統(tǒng)用戶進行設限,提高系統(tǒng)運行安全性。系統(tǒng)控制服務器需要滿足四項功能,即實時采集網(wǎng)絡節(jié)點數(shù)據(jù)、遠程控制設備節(jié)點、Web瀏覽器用戶配置與動態(tài)采集和顯示以及數(shù)據(jù)庫存儲。為實現(xiàn)各項目功能,需要進行模塊設計,且利用多線程技術來對應各功能模塊,接受并處理各項業(yè)務,如圖1所示。
3.2 模塊功能設計
3.2.1主模塊設計
(1)數(shù)據(jù)變量初始化。執(zhí)行主函數(shù)時,需要對部分重要數(shù)據(jù)進行初始化處理,如服務端與網(wǎng)絡節(jié)點端套接字描述符、網(wǎng)絡地址結構等變量、程序運行狀態(tài)標志位等。(2)設備節(jié)點表緩存。設備節(jié)點表緩存為嵌入式網(wǎng)絡控制系統(tǒng)服務器中關鍵的全局變量,其中緩存主要存放設備節(jié)點實時采集的數(shù)據(jù)。(3)線程池初始化。能夠對線程池進行初始化處理,其中包括內(nèi)存設置、線程創(chuàng)建以及線程屬性設置等。
3.2.2網(wǎng)絡采集節(jié)點模塊
嵌入式網(wǎng)絡控制服務器與設備節(jié)點選擇利用UDP協(xié)議進行通信,因此在系統(tǒng)設計時,需要對線程建立UDP網(wǎng)絡,實現(xiàn)與各節(jié)點間的數(shù)據(jù)交換。
3.2.3通信模塊
積極嵌入式網(wǎng)絡控制服務器與Web界面通信模塊設計,兩部分主要通過Java Applet程序進行通信的線程,線程選擇用TCP協(xié)議進行通信,能夠提高程序運行的穩(wěn)定性。其中,利用socket()函數(shù)建立TCP流式套接字描述符,bind()函數(shù)進行網(wǎng)絡地址結構綁定,以及l(fā)isten()函數(shù)進行網(wǎng)絡監(jiān)聽。
4結語
嵌入式網(wǎng)絡控制系統(tǒng)的設計,需要明確系統(tǒng)各功能模塊,以滿足實際應用需求為目的,建立系統(tǒng)結構并完成對所有模塊的設計。嵌入式系統(tǒng)現(xiàn)在已經(jīng)有著廣泛的應用,在基于嵌入式技術進行網(wǎng)絡控制系統(tǒng)設計時,可以提高系統(tǒng)可靠性與適應性。
參考文獻
中圖分類號:TP273.5 文獻標識碼:A 文章編號:1674-7712 (2014) 12-0000-01
當前時代,科學技術快速發(fā)展,信息技術被應用于我們?nèi)粘I畹母鱾€方面。高科技為我們的生活帶來了無限的便利,目前采用高科技手段為人們提供一個安全的生活和工作環(huán)境。本文針對嵌入式系統(tǒng)在門禁卡的應用上進行研究,解決了傳統(tǒng)門禁卡很多的不便功能。為實現(xiàn)門禁卡自動、智能化管理提供建議,以此來對門禁卡功能與嵌入式系統(tǒng)軟件設計與實現(xiàn)相關問題進行研究[1]。
一、嵌入式門禁系統(tǒng)設計
(一)嵌入式系統(tǒng)設計介紹。隨著科學技術的快速發(fā)展,嵌入式門禁卡系統(tǒng)已經(jīng)逐漸進入人們的生活,逐漸由傳統(tǒng)的門禁卡系統(tǒng)轉變?yōu)楝F(xiàn)代的生物特征識別技術門禁卡系統(tǒng)。嵌入式系統(tǒng)的門禁卡主要分為了圖像采集、自動照明、語音提示、申請功能、無人監(jiān)測等具體功能實現(xiàn)[2]。其具體的架構如圖1所示。
圖1 門禁系統(tǒng)功能圖示
(二)系統(tǒng)硬件設計概述。如果要設計出完善的門禁系統(tǒng),不僅需要軟件系統(tǒng)的支持,還需要硬件支撐,否則整個軟件系統(tǒng)難以實現(xiàn)。嵌入式多功能門禁系統(tǒng)其本質由嵌入式技術與圖像處理技術融合應用。其中嵌入式的硬件支撐硬件結構主要有照明控制、網(wǎng)絡接口、攝像頭、按鍵、CF卡、音頻接口、LVDS以及DDR2等。
二、嵌入式系統(tǒng)在門禁卡中的實現(xiàn)
(一)圖像采集實現(xiàn)。量化后的數(shù)字圖像信號和連續(xù)信號取樣的數(shù)字圖像信號是數(shù)字圖像處理的對象,當這些最原始的信號經(jīng)過圖像處理后即可獲得可觀測的連續(xù)信號。對連續(xù)信號進行取樣其本質是將信號的空間離散化,而量化則是將離散后的圖像信號幅度上進行離散化,所以量化和取樣后的圖像信號應該是原始連續(xù)圖像信號。
對于視頻圖像的獲取方法通常有兩種,一是利用視頻捕捉卡中的SDK工具獲取,二是使用Video for Windows,這給視頻捕獲編程帶來了很大的福利,對視頻捕獲的靈活性有很大的提高。視頻數(shù)據(jù)的實時采集主要是調用AVICap32.dll來穿件一個AVICap窗口類,它給應用程序提供了一個簡單而方便的數(shù)據(jù)接口,使用戶能夠訪問音頻和視頻,并且還能在硬盤上對視頻捕獲進行控制,它在捕獲視頻的能力很強,可以直接訪問視頻緩沖區(qū),也不生成中間文件,視頻捕獲的速度快,及時性高,也可以將視頻保存在設置好的文件夾中,整個視頻捕捉過程都可以實現(xiàn)控制[3]。
(二)自動照明實現(xiàn)。整個照明系統(tǒng)主要分為了兩個部分,照明系統(tǒng)通過發(fā)送指令給單片機實現(xiàn)對整個電路進行調整。整個照明系統(tǒng)分為控制部分和圖像亮度檢測部分,照明系統(tǒng)中的圖像檢測與電路照明具有很強的聯(lián)系。嵌入式軟件系統(tǒng)進行照明攝像控制時,通過采集信息的亮度,而其亮度與圖像的象素有關,將圖像做為一個二維圖像,橫坐標表示圖像各個像素點的灰度級r;縱坐標則表示弧度制出現(xiàn)的概率Pr(r);那么對于某一個灰度值ri的象素個數(shù)為ni。則概率密度為:Pr(r)= ; =1。
(三)語音提示實現(xiàn)。該系統(tǒng)運用的是ALC655音頻解碼器,Mic用于連接麥克風,Line用于錄制聲源的聲音,Audio_Out用于揚聲器或者耳機。本系統(tǒng)主要根據(jù)不用的命令來實現(xiàn)功能,通過調用不同文件得到不同的效果,根據(jù)不同情況播放不同的提示音。系統(tǒng)中的MFC附帶的音頻播放組可以有效的提高開發(fā)是速度,通過媒體控制接口API實現(xiàn)停止功能MCI提供了控制媒體接口的能力,對波形音頻設備、CD/視頻播放設備等媒體進行控制。系統(tǒng)對音頻的播放采用的是DirectX,作為低級應用程序的編程接口,在開發(fā)上降低難度。對于聲音,主要的API是DirectSound,具備播放、處理混音、錄音等功能,Microsoft DirectSound API為聲音的捕獲、播放、混音的處理、錄音提供了鏈接,DirectSound可以給多媒體提供直接訪問聲音設備、低延遲混合、硬件加速。
(四)申請功能實現(xiàn)。所謂的申請來訪功能主要門禁卡在進行檢測的時候如果遇到不相匹配者,則需要進行申請之后才能夠進入。系統(tǒng)通過語音告知模塊的主人,采取系統(tǒng)中斷方式來進行受訪申請。受訪者來進行訪問申請時,需要按下按鈕然后系統(tǒng)給予語音提示,并且顯示出來訪者的面貌,以此來進行判斷,決定通過或者拒絕。嵌入式軟件系統(tǒng)在門禁卡的顯示上將來訪者的信息顯示在LVDS屏幕桑,然后通過系統(tǒng)對來訪人員進行判斷[4]。
(五)無人監(jiān)測功能實現(xiàn)。無人監(jiān)測功能則是當受訪者進行訪問時,遇到公司無人的時候,由門禁卡系統(tǒng)提示訪問者內(nèi)部無人,并且拍下來訪者的照片,發(fā)送到系統(tǒng)設定的郵箱之中。在此自動發(fā)送郵件的功能中,該系統(tǒng)主要采取以太網(wǎng)作為接口進行數(shù)據(jù)通訊,并且根據(jù)TCP/IP協(xié)議來發(fā)送報文,實現(xiàn)信息交換。
三、結束語
隨著科學技術的不斷發(fā)展,新型的軟件技術被應用到我們?nèi)粘5纳钪校疚闹饕槍η度胧较到y(tǒng)在門禁卡中的應用情況,以及在系統(tǒng)設計過程中所占據(jù)的地位進行研究。實現(xiàn)嵌入式軟件系統(tǒng)在門禁卡中的應用探索,主要針對門禁卡的各項功能的設計與實現(xiàn)進行了詳盡的介紹,希望為采用嵌入式方法進行門禁卡開發(fā)的企業(yè)提供借鑒。
參考文獻:
[1]周海龍.嵌入式門禁系統(tǒng)的設計與實現(xiàn)[D].西安電子科技大學,2012.
1.背景
如今嵌入式系統(tǒng)在日常生活中扮演著越來越重要的角色。從消費電子產(chǎn)品到航天工業(yè),從熱門的電子應用(如智能手機和平板電腦等)到相對不起眼的應用(如人造衛(wèi)星等),嵌入式系統(tǒng)直接或間接地影響人們生活的方方面面。嵌入式系統(tǒng)的巨大潛力使得教育工作者對它的討論從來沒有停止過。世界無數(shù)的教育工作者提出了大量新穎和具有創(chuàng)造性的方法和理論,以促進嵌入式系統(tǒng)教育水平的提高,他們大都贊同嵌入式系統(tǒng)具有與實際應用緊密聯(lián)系的顯著特點。
嵌入式系統(tǒng)應用在一個廣闊的領域,如簡單的微控制應用、控制系統(tǒng)、分布式嵌入式控制、片上系統(tǒng)、網(wǎng)絡、嵌入式PC、關鍵系統(tǒng)、機器人、計算機設備、無線數(shù)據(jù)系統(tǒng)和信號處理。同時,一些交叉領域知識對于嵌入式系統(tǒng)設計者也同樣重要,如安全、可靠性、節(jié)能、軟件/系統(tǒng)工程、實時計算和人機交互等。
對于想成為合格嵌入式系統(tǒng)設計者的學生來說,他們希望能夠親手接觸這些嵌入式應用,因此設計一個高效的實驗系統(tǒng)非常重要。實驗平臺應該能聯(lián)系抽象的理論知識和實際應用,以幫助學生領會嵌入式系統(tǒng)的知識奧秘。
2.嵌入式系統(tǒng)實驗教學的特點
嵌入式系統(tǒng)實驗教學與其他課程實驗教學有兩個方面的不同:軟硬件高度結合、知識和技術更新速度快。嵌入式系統(tǒng)實驗教學的特點如圖1所示。
嵌入式系統(tǒng)實驗教學的第一個特點是軟硬件高度結合。一個完整的嵌入式系統(tǒng)需要在軟硬件基礎之上工作。在嵌入式實驗教學中,任何一個環(huán)節(jié)的缺失或弱化都是錯誤的。我們過去就犯過這方面的錯誤。嵌入式系統(tǒng)是清華大學計算機科學與技術系大四本科生的一門專業(yè)必修課。學生希望在課程結束后對嵌入式系統(tǒng)有一個完整的認識,但是發(fā)現(xiàn)在學習完這個僅有2個學分的課程后,依然無法設計出一個軟硬件兼?zhèn)涞耐暾度胧较到y(tǒng)。因此,我們讓學生使用開源軟件工具設計諸如鼠標或鍵盤等設備的驅動程序,但是效果并不理想,岡為學生僅僅熟悉了他們所實驗的部分內(nèi)容,而這些內(nèi)容只是他們應該掌握內(nèi)容的一小部分,這不僅是由于實驗任務的限制,還因為學牛無法接觸硬件層面的操作,無法全面領會嵌入式系統(tǒng)。
嵌入式系統(tǒng)實驗教學的另一個特點是嵌入式系統(tǒng)知識和技術更新速度快。在第1節(jié)我們曾提到過,緊跟實際應用是嵌入式實驗教學的一個關鍵元素。由于嵌入式系統(tǒng)技術日新月異,嵌入式實驗課程講述的知識和技能以及嵌入式實驗設備和組件都必須不斷發(fā)展。我們在對清華大學計算機科學與技術系學生的調查問卷中發(fā)現(xiàn),對傳統(tǒng)嵌入式實驗平臺的主要批評是實驗設備和組件過于陳舊,實驗平臺與當前技術聯(lián)系不夠緊密,實驗內(nèi)容缺乏吸引力。
綜上所述,設計一個高效的嵌入式實驗平臺必須考慮軟硬件結合和嵌入式技術飛速發(fā)展這兩個因素。
3.當代學生的特點
除了嵌入式實驗課程本身,學生是不可忽略的另一個關鍵因素。學生是實驗的參與者,他們對實驗的感受影響著實驗課程教學的成敗,但是我們發(fā)現(xiàn)傳統(tǒng)的實驗方法令當代學生逐漸失去學習興趣,這主要是因為學生一代一代地不斷發(fā)展與進步,而傳統(tǒng)的實驗方法卻多年不變。
文獻[2]指出當代學生與過去的學生有所不同:缺乏鉆研精神、缺乏耐心和依賴于軟件。當代學生的特點如圖2所示。
當代學生的第1個特點是缺乏鉆研精神絕大多數(shù)學生成長于用戶至上主義日益流行的社會環(huán)境。相對于基礎原理,他們更關注功能;相對于架構,他們更關注表象。簡而言之,當代學生中很少有人理解嵌入式系統(tǒng)的基本原理,另一方面,傳統(tǒng)的實驗平臺專門為演示和驗證書本中講述的原理而設計,因此學生漸漸地無法將實際應用與特別設計的實驗相聯(lián)系,產(chǎn)生的問題是如果學生無法預見所學知識的未來應用前景,就會將關注點轉移到其他方面。由此可見,將實驗平臺與時興技術相結合非常重要。
當代學生的第2個特點是缺乏耐心。生活節(jié)奏的日益加快和互聯(lián)網(wǎng)絡的日益普及,使得當代學生漸漸缺乏耐心。他們習慣在實驗開始后急于見到結果,就好像點擊鼠標后立刻能在屏幕上看見反應,但是在傳統(tǒng)的教學方法中,教學總是從對課程的全面描述分析開始。實踐證明這種描述很必要,它可以幫助學生全面了解課程的知識結構,但是這些內(nèi)容有時會讓學生退卻,因為學生感覺課程非常抽象與枯燥。鑒于這些問題,新實驗平臺應該在嵌入式系統(tǒng)的第一堂課就引起學生的興趣,同時提供一個吸引人的“結果”。
當代學生的第3個特點是依賴于軟件。嵌入式系統(tǒng)的發(fā)展通常被認為是民眾賦予的。在某種程度上,這種發(fā)展是電子工程向更智能化發(fā)展的結果。然而,電子工程這種不可見的層面,通常被復雜的用戶界面和其他圖標所偽裝,使得大家將其歸功于計算機科學,而不是電子工程。許多大學并沒有意識到這個問題,而將大部分注意力放在嵌入式軟件設計,忽略硬件層次的介紹。這種在嵌入式系統(tǒng)教學中的錯誤關注導致出現(xiàn)“軟件比硬件更加重要”的錯誤認識。為了糾正這個偏見,我們應該重視硬件并將其引入嵌入式系統(tǒng)課程。
總之,為了設計一個高效的實驗平臺,當代學生的特點不容忽視。
4.設計嵌入式實驗平臺的原則
基于上述討論,我們提出嵌入式系統(tǒng)教學實驗平臺的幾項設計原則。
完整性:實驗平臺應該相對完整。學生不但能接觸軟件,而且能操作硬件。這個原則主要解決兩個問題:首先糾正學生偏重于軟件的錯誤;其次在第一節(jié)課就能吸引學生,告訴他們課程最后能夠建立一個基本的卻相對完整的系統(tǒng)。
開發(fā)性:實驗平臺應該能幫助學生自由地實現(xiàn)創(chuàng)新思想。實驗平臺在軟件和硬件上都應為學生預留足夠數(shù)量和種類的接口,使學生能夠以此為基礎構建自己的嵌入式系統(tǒng)。在實踐過程中,越來越多的基于實際應用的嵌入式系統(tǒng)由學生實現(xiàn),同時學生的創(chuàng)造熱情也被激發(fā)出來。
從教學的角度看,實驗平臺應包含以下特點。
可升級性:平臺的軟硬件應該能分別擴展和升級,而無需對整個平臺進行修改。如第2節(jié)所述,嵌入式系統(tǒng)技術升級速度快,尤其是硬件設備。為了滿足經(jīng)常升級的需要,可升級性原則應該被放在關鍵位置。
靈活性:實驗內(nèi)容應該能根據(jù)課程的要求而裁剪,以便于實驗平臺的廣泛推廣。大多數(shù)定制的實驗平臺在靈活性上有所欠缺,其實驗內(nèi)容無法增加或減少,而為了適應課程學時的變化不得不重新設計實驗。
為了達到上述目標,我們提出一個完整的概念模型。目標系統(tǒng)的概念模型如圖3所示。
這個概念模型由3個中間層和2個層組成。中間層包括主系統(tǒng)層、中間通道層和從系統(tǒng)層。層包括應用層和組件層。我們將解釋這個模型如何能實現(xiàn)前面提出的目標。
完整性:把中間3層看作一個整體,這個基本模型由一個典型嵌入式系統(tǒng)中的主要元素組成,從最頂層的應用層到最底層的功能組件層。學生可以接觸完整系統(tǒng)的每一個組件。
開放性:模型的最頂層和最底層向學生開放。實驗平臺的設計者將足夠多的軟硬件接口提供給學生,這些接口必須是完整的和用戶友好的。使用硬件接口,學生能夠通過連接所需的硬件模塊構建一個創(chuàng)新的嵌入式設備;使用軟件接口,學生可以方便地加載硬件模塊所需的軟件資源。
可升級性:實驗平臺設計應該模塊化和層次化,每一層為上一層提供上層接口,為下一層提供下層接口。每一層可獨立地進行擴展和升級,與相鄰層次的接口保持兼容。模型的中間層被設計為3層結構,這個靈感來自于Phidgets的設計,它能為實際設備的實現(xiàn)提供更多可能性。
靈活性:每個層次都能根據(jù)課程的重點而被加強或削弱,因此實驗內(nèi)容可根據(jù)課程要求而變化。實驗課可被安排在兩層或更多層之上。基礎實驗要求學生建立一個基本的嵌入式系統(tǒng),而在高級實驗中,學生能深入研究模型中的各個層,以實現(xiàn)創(chuàng)意設計。
1 引言
隨著經(jīng)濟的發(fā)展和城市化速度的加快,汽車的數(shù)量每天都在以指數(shù)倍數(shù)遞增,同時交通事故也在與日遞增。智能交通系統(tǒng)是解決這一問題的關鍵措施之一,智能交通系統(tǒng)涵蓋了交通信息服務、交通管理、公共交通、車輛控制、貨運管理、緊急救援等等一系列內(nèi)容。其中車牌識別系統(tǒng)是智能交通系統(tǒng)中一項很重要的內(nèi)容,對它的研究可以維護我國交通的順暢和安全,對于車輛的自動化管理具有很重大的意義。本文通過對車牌識別系統(tǒng)的闡述和分析,研究和實現(xiàn)了一種基于嵌入式的車牌識別系統(tǒng)。
2 車牌識別系統(tǒng)的現(xiàn)狀
由于車輛的劇增,車牌識別系統(tǒng)具有很大的實用價值并且具有很遠大的意義。從上個世紀八十年代開始,人們就對車牌識別系統(tǒng)進行和關注和研究,車牌識別系統(tǒng)最主要的內(nèi)容就是利用圖像處理技術對車牌的圖像進行識別和分析,提取出車牌的信息。現(xiàn)今,人們已經(jīng)利用不同的方法實現(xiàn)了車牌識別,并且取得了很大的成就,但是軟件實現(xiàn)的成本相對較高。本文將車牌識別和嵌入式系統(tǒng)結合在一起,能夠有效的節(jié)省設計的成本,提高系統(tǒng)的性能。
3 車牌識別系統(tǒng)的構成
3.1 車牌識別系統(tǒng)的圖像識別
一個完整的車牌識別系統(tǒng)必須包括五個部分,分別是獲取圖像、信息預處理、定位車牌、分割字符、字符識別。
在采集車牌信息時,必須采集到完整的車牌圖樣,我們可以使用手機、攝像頭、相機等等電子產(chǎn)品來收集車牌圖片。當有車輛經(jīng)過時,系統(tǒng)采集車輛的車牌信息并將車牌信息傳輸?shù)诫娔X端。
在采集到車牌的信息時,我們需要定位我們需要的那一部分車牌信息,對它進行分割和讀取。在這里,對車牌定位的精度要求是很高的,這也關乎我們后期對圖片的處理結果。
車牌包含的信息是多個字符,想要對車牌進行識別,首先我們需要將車牌的多個字符進行分割處理。
字符分割技術將車牌的多個字符分割為單一字符,我們利用識別技術對字符進行識別。主要的識別技術有神經(jīng)網(wǎng)絡法和模塊匹配法等。目前最重要的是必須提高系統(tǒng)的識別率。
3.2 車牌的底色檢測
車牌顏色不是單一的,所以在識別的過程中我們還需要對車牌的顏色予以區(qū)分。通過我們對車輛車牌的研究發(fā)現(xiàn),車牌的底色一般為藍色或者黃色,而車牌上字符的顏色一般為白色或者是黑色。我們根據(jù)RGB模型對車牌的色進行檢測,通過檢測區(qū)域的像素點與RGB模型的關系我們就可以區(qū)分出檢測區(qū)域的顏色。因為車牌底色和字符顏色所在區(qū)域的位置和比例是不一樣的,我們可以根據(jù)各個顏色面積和位置的不同區(qū)分出底色和字符的顏色。
3.3 車牌字符分割
車牌分割就是將一連串的字符分割成單獨的一個一個的字符。車牌字符的分割在車牌識別系統(tǒng)中占據(jù)了很重要的地位。
字符的邊框區(qū)域對字符識別存在很大的影響,所以在字符分割中需要將多余的區(qū)域分割出去。本文中采用了字符分割算法對車牌的字符進行分割。字符分割算法是通過對圖形的掃描確定進入到字符區(qū)域的第一個像素點的坐標和出去圖像區(qū)域的第一個像素點的坐標,以這兩點的坐標確定字符的大致位置以及字符的高度。
我們采取同樣的方法確定字符的左右坐標和寬度。在確定了字符的高度和寬度之后,對字符進行分割。
3.4 車牌字符識別
我國的車牌字符是由24個英文字母、10個阿拉伯數(shù)字和各地的省會簡稱組成的。同時每一類的字符在車牌上都對應著不同的位置。所以我們將字符分為漢字、字母和數(shù)字三類進行區(qū)分。字符識別的方法有很多,本文采用的識別方法是神經(jīng)網(wǎng)絡,通過構造一個三層的神經(jīng)網(wǎng)絡對分割的字符進行識別。字符識別中對特征值的選取是非常重要的,特征值選取的好壞直接關系到識別的準確度。
4 車牌識別系統(tǒng)的硬件結構
車牌識別系統(tǒng)的主要工作流程就是對獲取車牌圖像,通過嵌入式系統(tǒng)對車牌圖像進行預處理、對圖像進行分割和識別。為了完成整個系統(tǒng)流程,系統(tǒng)硬件結構包括以下模塊,攝像頭、CPU、RAM、LCD顯示屏、各種網(wǎng)絡接口等等。其中攝像頭是用來捕捉圖像的,CPU是用來處理圖像信息的,RAM是用來存儲信息的,LCD顯示屏是用來顯示我們捕捉到的車牌圖片信息的,各種網(wǎng)絡接口是用來實現(xiàn)程序下載、在線監(jiān)控等功能的。
5 總結
本文通過對車牌識別系統(tǒng)現(xiàn)狀的分析,發(fā)現(xiàn)現(xiàn)今車牌識別系統(tǒng)雖然發(fā)展較為成熟但是成本較為昂貴。所以本文在其基礎上提出了基于嵌入式的車牌識別系統(tǒng),此系統(tǒng)能夠提高識別系統(tǒng)的識別性能和降低設計的成本。然后,文章從車牌識別系統(tǒng)的圖像識別、底色檢測、字符分割、字符識別四個方面論述了車牌識別系統(tǒng)的結構。最后,文章對車牌識別系統(tǒng)的硬件結構進行了介紹和分析。通過實驗表明,本文采用的基于嵌入式的車牌識別系統(tǒng)設計安全可靠,在提高字符識別正確率的同時還能提高字符識別的速度。這一方法的實現(xiàn)對車牌識別系統(tǒng)的研究具有很重大的意義。
參考文獻
[1]張洪濤,鄭浩,葉聲華.基于目標邊緣的圖象二值化方法研究[J].理論與實踐,2002(04):3-5.
[2]趙雪春,戚飛虎.基于彩色分割的車輛牌照自動識別技術[J].上海交通大學學報,1998,32(10):4-9.
[3]楊明,劉強,尹忠科,等.基于輪廓追蹤的字符識別特征提取[J].計算機工程與應用.
[4]張引,潘云鶴.工程圖紙自動輸入字符識別的二維隱性馬爾可夫模型方法[J].計算機輔助設計與圖形學報,1999,11(05):403-406.