編者語:隨著Internet技術與信息家電、工業控制技術等的結合日益緊密,嵌入式設備與Internet的結合已成為大勢所趨。此時期新的微處理器層出不窮,要求嵌入式操作系統的設計更加便于移植,支持更多的微處理器。 嵌入式系統的開發需要強大的硬件開發工具和軟件支持包。通用計算機上使用的新技術、新觀念開始逐步移植到嵌入式系統中,如嵌入式數據庫、移動代理、實時CORBA等。各類嵌入式Linux操作系統在全球數以百萬計愛好者的合力開發下迅速發展,由于具有源代碼開放、系統內核小、執行效率高、網絡功能強,多媒體人機交互界面友好等特點,很適合信息家電等嵌入式系統的需要。
一、嵌入式系統的技術特點
早期的嵌入式系統設計方法,通常采用“硬件優先”原則,即在只粗略估計軟件任務需求的情況下,首先進行硬件設計與實現。然后,在此硬件平臺上再進行軟件設計。因而很難達到充分利用軟硬件資源,取得最佳性能的效果。同時,一旦需要對設計進行修改時,整個設計流程將重新進行,這對成本和設計周期的影響很大。這種傳統的設計方法只能改善軟件/硬件各自的性能,在有限的設計空間不可能對系統做出較好的性能綜合優化,在很大程度上依賴于設計者的經驗和反復實驗。
上世紀90年代以來,隨著電子系統功能的日益強大和微型化,硬件和軟件也不再是截然分開的兩個概念,而是緊密結合、相互影響的。因而出現了軟硬件協同(codesign)設計方法,即使用統一的方法和工具對軟件和硬件進行描述、綜合和驗證。在系統目標要求的指導下,通過綜合分析系統軟硬件功能及現有資源,協同設計軟硬件體系結構,以最大限度地挖掘系統軟硬件能力,避免由于獨立設計軟硬件體系結構而帶來的種種弊病,得到高性能低代價的優化設計方案。
二、嵌入式系統的發展趨勢
在網絡、通信、微電子發展的基礎上,以及勢不可擋的數字化信息產品的強大需求推動下,嵌入式技術具有廣闊的發展創新空間。
(1) 低功耗、高性能、高可靠性的系統需求對我國芯片設計是一個機遇。以嵌入式處理 器為領頭的國產CPU、片上系統(SoC)、片上網絡系統(NoC)將有很大的發展。
(2) Linux正逐漸成為嵌入式操作系統的主流;J2ME技術也將對嵌入式軟件的發展產生深遠影響。目前自由軟件技術備受青睞,并對軟件技術的發展產生了巨大的推動作用。嵌入式操作系統內核不僅需要具有微型化、高實時性等基本特征,還將向高可信性、自適應性、構件組件化方向發展;支撐開發環境將更加集成化、自動化、人性化;系統軟件對無線通信和能源管理的功能支持將日益重要。近幾年來,為使嵌入式設備更有效地支持Web服務而開發的操作系統不斷推出。這種操作系統在體系結構上采用面向構件、中間件技術,為應用軟件乃至硬件的動態加載提供支持,即所謂的"即插即用",在克服以往的嵌入式操作系統的局限性方面顯示出明顯的優勢。
(3) Java虛擬機與嵌入式Java將成為開發嵌入式系統的有力工具。嵌入式系統的多媒體化將變成現實。它在網絡環境中的應用已是不可抗拒的潮流,并將占領網絡接入設備的主導地位。
(4) 嵌入式系統與人工智能、模式識別技術的結合,將開發出各種更具人性化、智能化的實際系統。智能手機、數字電視,以及汽車電子的嵌入式應用,是這次機遇中的切入點。伴隨網絡技術、網格計算的發展,以嵌入式移動設備為中心的"無所不在的計算"將成為現實。
三、嵌入式系統在機器人技術中的應用
不論是在工業控制中,還是在商業領域里,機器人技術都得到了廣泛的應用。從用于生產加工的傳統工業機器人到豐富大眾生活的現代娛樂機器人,都與嵌入式系統密不可分。現有的大多數機器人,都采用單片機作為控制單元,以8位和16位最為常見,其處理速度較低,沒有操作系統,無法實現豐富的多任務功能,系統的潛力沒有得到充分的發掘和應用。
基于ARM9的機器人視覺系統的目標是在選定好的S3C2410平臺上移植并配置Linux操作系統,針對平臺和應用的特點,制作合適的文件系統,為機器人視覺系統構建穩定的軟硬件開發環境。其次編寫應用程序,通過S3C2410平臺,從USB攝像頭實時采集圖像,并利用這款嵌入式處理器的強大運算能力,對圖像進行后期的處理,完成目標識別與定位,作為機器人動作單元的輸入。最后針對機器人關節所使用的電機,編寫特定的設備驅動程序,保證操作系統可準確地控制機器人動作,響應視覺處理的結果,開發一套完整的"機器人視覺系統"。
1. 硬件平臺的選型和搭建
機器人系統如圖1所示。全身由24個舵機組成,控制24個關節。通過對舵機的控制,可實現機器人的動作。
(1) 視覺系統
采用USB攝像頭作為視覺采集器件。其優點是接口通用,驅動豐富,傳輸速率快。同時,Linux操作系統對于USB設備的支持較好,方便了應用程序的編寫和調試。網眼(WebEye)v2000攝像頭,采用