一種HCI自適應的解決辦法-技術方案_第1頁
一種HCI自適應的解決辦法-技術方案_第2頁
一種HCI自適應的解決辦法-技術方案_第3頁
一種HCI自適應的解決辦法-技術方案_第4頁
一種HCI自適應的解決辦法-技術方案_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

精品文檔-下載后可編輯一種HCI自適應的解決辦法-技術方案摘要:在嵌入式系統(tǒng)工程開發(fā)及現(xiàn)場施工實踐中,為了解決由于嵌入式系統(tǒng)資源退化引起的人機交互復雜性和不確定性問題,從可適應性角度討論,分析了嵌入式系統(tǒng)中人機交互界面(HCI)的可適應性需求,應該針對資源退化提供一種HCI自適應的解決辦法,故對于嵌入式設備交互特點進行了研究,詳細描述了嵌入式設備的HCI模型和內存結構的建立,并給出具有實踐意義的HCI可適應性策略,以一個工程實例進行了驗證。從實例可知,為嵌入式系統(tǒng)的項目開發(fā)提供了一種可行性解決方案。

嵌入式系統(tǒng)是以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適用于應用系統(tǒng)對功能,對可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng),其工程實踐正逐漸地引起研究人員的關注,在實際工程中有諸多因素需要考慮,比如微處理器的功耗,器件的可靠性,設備的抗惡劣環(huán)境能力,人機交互界面(HCI),現(xiàn)場通信等等問題。HCI是嵌入式系統(tǒng)工程中的一個重要課題。由于某些嵌入式系統(tǒng)研發(fā)的復雜性和工程實施中的不確定性,導致嵌入式系統(tǒng)HCI有僵化的趨勢,對此提出一種可適應性的解決思路是必要的。

1嵌入式工程的HCI

圖形用戶界面是當前用戶界面的主流。HCI是決定嵌入式計算機系統(tǒng)是否友好的一個重要因素。嵌入式系統(tǒng)人機交互功能主要靠輸入輸出的設備與相應的軟件協(xié)同來實現(xiàn)??晒┤藱C交互使用的設備主要有鍵盤、顯示以及各種模式識別設備等。嵌入式系統(tǒng)的人機交互因其特殊性而與PC有所區(qū)別,多數(shù)的嵌入式系統(tǒng)都是顯示屏幕與鍵盤,或者帶觸摸屏定位的設備組成。對用戶而言,需要用按鍵或觸摸屏的動作告知系統(tǒng)如何按照人的意圖去輸出,絕大多數(shù)嵌入式系統(tǒng)都有個HCI系統(tǒng)供用戶使用。問題是在工程中交互設計時,設計者往往會把交互界面和系統(tǒng)的資源聯(lián)系起來,使得界面的設計不獨立于系統(tǒng)資源。軟件設計勢必在很大程度上受限于硬件資源。實踐中,通常的做法是根據(jù)現(xiàn)有的硬件條件臨時組織一個數(shù)據(jù)結構,把一系列字符串值“串”起來,之間可以實現(xiàn)相互跳轉。一個交互節(jié)點的快照描述一般需要幾部分組成:1)狀態(tài)枚舉量;2)顯示常量狀態(tài)值;3)前趨狀態(tài);4)后繼狀態(tài)。還可能需要包含節(jié)點Id標識等其他的輔助信息。顯然,這是用一種靜態(tài)的方法來生成一個菜單對象,代碼易讀性強,但各個部分相互依賴,編碼和調試比較繁瑣,需要設計者對各部分都十分清楚。的問題是可擴展性受限,對后續(xù)規(guī)模的增加造成一定的影響。工程實踐中,用戶的需求及隱含需求往往是復雜和不確定的。

本文的研究目的是建立一套能夠適應應用復雜性和不確定性的實現(xiàn)方案,為后續(xù)嵌入式系統(tǒng)開發(fā)提供一個工程性的解決思路。

2可適應的嵌入式HCI

可適應的HCI是指可根據(jù)系統(tǒng)的計算環(huán)境或應用情境進行伴隨調節(jié)的界面??梢赃M一步區(qū)分為被動性適應和主動性適應(或自適應)。

可適應性HCI在嵌入式系統(tǒng)開發(fā)中有著越來越迫切的要求。通常該需求于2個方面,一個是用戶需求的變更;另一個是系統(tǒng)執(zhí)行中的應用環(huán)境變化。由這2種因素出發(fā),依據(jù)可適應性的行為模式,嵌入式HCI的可適應性從以下2個方面展開研究:

所謂靜態(tài)可適應性是指與系統(tǒng)靜態(tài)配置相關的可適應性,通常適應行為發(fā)生在2次系統(tǒng)啟動之間。這種適應的需求通常是外來的,比如用戶需求的修改,設計方案的變化。在工程中,常常出現(xiàn)迭代式的適應性修改,所以靜態(tài)可適應性也是一個很有現(xiàn)實意義的需求。這種可適應性的實現(xiàn)必須借助非易失性存儲器來進行,用來存儲變化后的定義及配置參數(shù),使得順利完成適應行為。

動態(tài)可適應性是指在系統(tǒng)運行過程中,可以依據(jù)環(huán)境的變化進行在線自適應修改,即普適環(huán)境下的修改。通常普適設備在使用環(huán)境中遷移,引起了環(huán)境參數(shù)的強制性變化,系統(tǒng)的HCI與環(huán)境就會產生矛盾,因此普適策略下的自適應調整是很有必要的。依據(jù)收集到的系統(tǒng)狀態(tài)信息,判斷是否HCI與系統(tǒng)配置同步,依靠算法實時糾正系統(tǒng)配置來實現(xiàn)自適應。普適環(huán)境下的自適應特點在于動態(tài)性,只有在出現(xiàn)矛盾的時候才做普適調整,在設計中必須對匹配性進行考慮。

3基于多重鏈表的嵌入式HCI

3.1模型建立

多重鏈表在組織順序型結構數(shù)據(jù)時具有較快的搜索速度,下面給出一個基于多重鏈表的模型,每個節(jié)點扇出為4,分別指向上層節(jié)點、下層節(jié)點及左、右的鄰居節(jié)點,扇入不限。每個節(jié)點與相鄰的節(jié)點之間都有雙向連接,并且每個節(jié)點均可帶子節(jié)點進行擴展。

模型從功能上講是個層次結構,從數(shù)據(jù)模型上看是網(wǎng)狀結構,允許有一個以上的節(jié)點無雙親,并且一個節(jié)點可以有多于一個的雙親。每層節(jié)點的數(shù)目不固定,可視實際情況而變化。每層都是一個閉環(huán)的雙向回路,可進行水平雙向遍歷。層與層之間由父節(jié)點與長子節(jié)點雙向連接。父層節(jié)點對子層節(jié)點是一對一聯(lián)系,由父節(jié)點進入子層時在長子節(jié)點駐足;子層節(jié)點對父節(jié)點是多對一聯(lián)系,意味著由每個子節(jié)點都可回溯至父節(jié)點。由父層切換至子層的每次遍歷必須經(jīng)過長子節(jié)點,然后可由長子節(jié)點依次進行水平循環(huán)遍歷,子層切換至父層則比較靈活,每個子節(jié)點均可到達其父節(jié)點。

3.2方案實現(xiàn)

3.2.1內存結構設計

節(jié)點應該具備4個域,除了標示身份外還至少應該具備指向上層父節(jié)點的指針域、指向下層子節(jié)點的指針域以及指向同層左、右兄弟的指針域。

圖1是一個簡單的HCI結構圖,從功能上看,它分為5層,層有5個節(jié)點項形成一個閉環(huán),第二層閉環(huán)是層個節(jié)點的子節(jié)點組,該子節(jié)點組的第二項又有子節(jié)點組。如此下去共有5層,處在位置的節(jié)點其父指針為空,位置的節(jié)點的兒子指針為空。

圖1一個簡單的HCI結構圖

3.2.2類設計

依據(jù)模型定義如圖2所示的類對象。左邊所示是個基本的菜單節(jié)點類,除了模型中提到的幾個節(jié)點指針,還增加了幾個相關的屬性域,Id用來標識節(jié)點身份,displayValue用來存儲菜單的顯示標題,布爾成員editable指明當前節(jié)點是否可編輯,另外還增加一個ptr_function域,用來指向一個功能函數(shù),該函數(shù)完成節(jié)點在接受確定消息后要做的工作。

圖2菜單結點的類定義和菜單代理類定義

在節(jié)點類中還定義了幾個成員方法,與私有屬性相關的命名符合OOP的命名規(guī)定,均使用Get—Set前綴規(guī)則。除針對幾個成員屬性的方法外,還引入了另外幾個成員方法,CoUp執(zhí)行向父節(jié)點的跳轉,CoDown執(zhí)行向長子節(jié)點的跳轉,CoLeft和GoRight負責向左右鄰居的跳轉。

從軟件設計獨立與資源來考慮,提出一個界面代理的概念,界面代理就是基于事件驅動,處在界面與環(huán)境之間一個中間對象。外界事件的消息均由代理來接收識別,并由它調用界面元素,對界面做出改變。圖2右邊上部所示的定義的是菜單代理類MenuManageAgent。該類對象用來作為菜單體系與外界交互的媒介物,它用來記錄菜單的頭指針,菜單體系的規(guī)模以及菜單的總體狀態(tài);初始化菜單結構,創(chuàng)建菜單系統(tǒng)并代表菜單接受外來的消息,并對消息加以識別和做出合理的響應。圖2右下是對外部消息的定義。消息的列表可以依據(jù)實際情況擴展和修正。

4嵌入式HCI的可適應性實現(xiàn)

靜態(tài)可適應的實現(xiàn)是基于用戶主觀意圖進行的。這個過程強調人機交互,因此用戶的工作內容很重要,一般也作為靜態(tài)可適應性實現(xiàn)的輸入?yún)?shù)。而實現(xiàn)的技術細節(jié)相對簡單。在算法設計上,該種可適應性實現(xiàn)工作重點仍然放在用戶交互內容的管理上,由用戶的“交互內容”綜合系統(tǒng)功能可以得到界面的“變更差”,進而推導出系統(tǒng)HCI的具體參數(shù)集的變化。

如圖3所示,設備在使用環(huán)境中的動態(tài)可適應以系統(tǒng)狀態(tài)檢測開始,這是一個周期性的行為,頻率依據(jù)系統(tǒng)在HCI上的實時性要求而定。系統(tǒng)狀態(tài)檢測應該包含幾部分的工作:1)應該有監(jiān)測環(huán)境參數(shù)的手段,比如傳感器、接入信號等;2)要依據(jù)特定的算法來測定這個矛盾,其中包括差異的獲取,尺度的制定。狀態(tài)檢測的結果是,是否有矛盾輸出,如果有矛盾出現(xiàn)的情況下,還需要做決策分析,其主要任務是基于系統(tǒng)現(xiàn)有條件是否可實現(xiàn)動態(tài)可適應,比如已經(jīng)達到了臨界狀態(tài)時,就喪失了這種可能性。所以這里涉及到對系統(tǒng)資源的管理調度。下一步就是在動態(tài)適應的情況下,采用動態(tài)適應策略對系統(tǒng)HCI給出合適的調整,從而達到普適環(huán)境下可動態(tài)適應的目的。

圖3動態(tài)自適應性算法流程

5工程應用

5.1工程介紹

我們在一個系列工程中采用了以下方案構造HCI的菜單體系。某公司研發(fā)一款嵌入式的數(shù)據(jù)采集產品,該產品的代碼與數(shù)據(jù)獨立存儲在兩個Flash芯片,通過采集外界的模擬量和數(shù)字量對其處理后進行輸出。產品的人機交互界面采用按鍵、LED數(shù)碼管,計算控制單元采用飛思卡爾半導體的微處理器ColdfireV2系列,該CPU基于變長RISC處理器,具有32位地址線和數(shù)據(jù)線以及集成的調試模塊,MAC/eMAC單元能提供高性能的品質。

嵌入式操作系統(tǒng)采用NucleusPLUS,NucleusPLUS實時操作系統(tǒng)是AcceleratedTechnology公司開發(fā)的嵌入式RTOS產品,只需性購買Licenses,就可以獲得操作系統(tǒng)的源碼。終是以C庫的形式提供給用戶,可以選擇所需要的部分鏈入到應用程序中。具有如下特性:

1)快速響應時間:對臨界資源的檢測時間不依賴于占有該臨界資源的線程執(zhí)行時間長短,一旦低優(yōu)先級線程釋放掉臨界資源(不管其是否執(zhí)行完),高優(yōu)先級線程就會搶占運行。

2)模塊相互獨立:每個任務的執(zhí)行時間和其他任務的處理時間無關。

3)較高吞吐量:隨著任務數(shù)目的增多,任務的調度時間為常數(shù)。

4)具有可擴展性:利用現(xiàn)有系統(tǒng)調用的結合可得到新的系統(tǒng)調用。

5.2驗證過程

我們擬在這個項目開發(fā)中實現(xiàn)普適設備的嵌入式人機交互界面,在其中應用可適應性的思想。

首先是硬件設計,該產品設計了8個Ied數(shù)碼管,8個按鍵Key1~Key8。這部分設計的功用體現(xiàn)在兩個方面:

1)數(shù)據(jù)采集設備通過LED顯示采集的數(shù)據(jù)和處理結果;

2)用戶通過按鍵可以查看和設置設備的參數(shù)。

其次是一些必要的定義,對按鍵的功能通過項目組討論做了如表1的定義。

表1的定義給消息定義提供一個依據(jù)。按功能鍵送入一個OK消息,按取消鍵則發(fā)送了一個CANCEL消息,其他按鍵事件以此類推。于是我們便得到一個消息枚舉量的定義。

表1按鍵定義

界面狀態(tài)定義。把人機交互工作分為工作、驗證和設置狀態(tài)。每種狀態(tài)用一個MenuStatus枚舉常量表示,NORMAL表示工作狀態(tài),CHECKI-NG表示驗證狀態(tài),SETHNG表示設置狀態(tài)。正常工作時處于NORMAL狀態(tài),一旦按下功能鍵會進入菜單成為驗證或設置態(tài)。

交互行為定義如下:

1)常態(tài)時默認為各通道實時數(shù)據(jù)循環(huán)顯示,有報警時,可顯示報警標識;

2)默認常態(tài)下按功能鍵進入1層菜單,按上翻鍵、下翻鍵顯示1-、2-、3-、…、14-Reset;

3)狀態(tài)2-和狀態(tài)4-可用作擴展;

4)狀態(tài)3-時,按功能鍵進入日期時間設置菜單,按上翻鍵、下翻鍵顯示日期、時間,設置好后,按功能鍵確定退出;

5)狀態(tài)4-時,按功能鍵進入?yún)?shù)設置菜單,按上翻鍵、下翻鍵顯示4-1、4-2、4-3……、4-19,表示通道選擇;

狀態(tài)4-x時,按功能鍵進入x通道的參數(shù)設置菜單,按上翻鍵、下翻鍵顯示4-x-O、4-x-2、4-x-3、…、4-x-8時,按功能鍵進入x通道的y(0≤y≤8)參數(shù)設置菜單,按加1鍵、減1鍵和移位可以進行參數(shù)修改操作;修改好參數(shù)按功能鍵確定退出;

6)在任一狀態(tài)時,按Key7則返回上層;

7)在任一狀態(tài)時,按取消鍵可返回常態(tài)。

然后按照上面定義的交互行為,定義菜單節(jié)點的功能函數(shù)。在菜單的創(chuàng)建時把函數(shù)的指針賦值給節(jié)點。該模型同樣可以用于實現(xiàn)通過通信進行的交互。

上述HCI的實例,不但實現(xiàn)簡潔,開發(fā)效率高,而且是結構開放性的,便于界面規(guī)模的控制。

6結束語

通過工程實踐驗證,該基于可適應性考慮的嵌入式HCI方案有如下特點:

1)易于維護,在拓撲結構不變的情況下,隨按鍵或輸入的不同,數(shù)據(jù)結構易于加以修改。菜單節(jié)點可以隨實際項目需求增減成員,代理類也可隨實際需求修改。

2)開放性好,便于擴展。只要內存容量允許,菜單規(guī)模理論上不受限,并且增刪節(jié)點容易實現(xiàn)。菜單結構可

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論