當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于WinCE的高速工業(yè)繡花機(jī)人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn)

摘要:為了提高工作效率和舒適性,提出基于WinCE的高速工業(yè)繡花機(jī)系統(tǒng)人機(jī)界面的設(shè)計(jì)及實(shí)現(xiàn)方法。采用WinCE作為軟件操作平臺,分析了WinCE的GWES圖形用戶界面和消息映射機(jī)制的具體實(shí)現(xiàn),著重論述了主刺繡界面、參數(shù)設(shè)置界面和磁盤管理界面的設(shè)計(jì)過程與實(shí)現(xiàn)方法。設(shè)計(jì)結(jié)果表明:該方法整體性能穩(wěn)定,系統(tǒng)運(yùn)行效率高,人機(jī)界面的設(shè)計(jì)更友好、更人性化。
關(guān)鍵詞:高速工業(yè)繡花機(jī);人機(jī)界面;WinCE;GWES

0 引言
    高速工業(yè)繡花機(jī)是機(jī)電一體化結(jié)合較為完美、自動化程度較高的繡花專用設(shè)備,它能使傳統(tǒng)的手工繡花得到高速度、高效率、高可靠性的實(shí)現(xiàn),并且還能實(shí)現(xiàn)手工繡花無法達(dá)到的“多層次、多功能、統(tǒng)一性和完美性”的要求。人機(jī)界面是高速工業(yè)繡花機(jī)與用戶打交道的窗口,一個好的人機(jī)界面可以提高用戶的工作效率和舒適性。
    隨著WinCE嵌入式操作系統(tǒng)的不斷完善,給高品質(zhì)、高效率、與PC機(jī)類似的人機(jī)界面提供了可能。在此提出一種基于WinCE 5.O的高速工業(yè)繡花機(jī)人機(jī)界面的設(shè)計(jì)方法,并重點(diǎn)給出了主刺繡界面、參數(shù)設(shè)置界面和磁盤管理界面的設(shè)計(jì)過程和方法。

1 WinCE系統(tǒng)分析
    Windows CE是一個搶先式多任務(wù)的32位的嵌入式操作系統(tǒng),它的圖形用戶界面相當(dāng)出色,開發(fā)人員可以利用豐富靈活的控件庫在Windo-ws CE環(huán)境下為嵌入式應(yīng)用建立各種專門的圖形用戶界面。WindowsCE提供了符合Windows平臺標(biāo)準(zhǔn)的開發(fā)環(huán)境,它實(shí)現(xiàn)了Win32 API函數(shù)的一個子集,覆蓋了大部分的Win32功能。
    圖形窗口和事件系統(tǒng)模塊(graphical windowing and event system,GWES)是用戶、用戶應(yīng)用程序和操作系統(tǒng)之間的圖形化用戶接口。  GWES將控制選擇轉(zhuǎn)換為消息,傳送信息給應(yīng)用程序和操作系統(tǒng)來處理用戶輸入。GWES通過創(chuàng)建和管理在顯示設(shè)備和打印機(jī)上顯示的窗口、圖形和文本處理輸出。GWES的核心是窗口。所有應(yīng)用程序(即使是為缺小圖形顯示器的設(shè)備創(chuàng)建的那些應(yīng)用)需要窗口以便從操作系統(tǒng)接收信息。GWES為需要圖形顯示器的設(shè)備提供控制、菜單、對話框和資源。它還提供控制文本和圖形顯示的GDI。
    在運(yùn)行的Windows CE操作系統(tǒng)中,圖形窗口和事件系統(tǒng)模塊體現(xiàn)為Gwes.exe進(jìn)程。GWES模塊主要由3種類型的組件構(gòu)成:支持圖形驅(qū)動的GDI組件;支持窗口控件的USER組件;支持其他窗口和圖形功能的一般GWES組件。

2 人機(jī)界面設(shè)計(jì)原理
2.1 功能結(jié)構(gòu)
    在高速工業(yè)繡花機(jī)控制系統(tǒng)人機(jī)界面的顯示和控制中,采用液晶屏和觸摸屏相結(jié)合的方式。利用液晶屏實(shí)現(xiàn)各種信息的顯示、菜單操作、圖形顯示及觸摸屏控制,為高速工業(yè)繡花機(jī)控制系統(tǒng)提供良好的人機(jī)界面。高速工業(yè)繡花機(jī)控制系統(tǒng)人機(jī)界面主要包括主刺繡界面、參數(shù)設(shè)置界面、磁盤管理界面、花樣管理界面和輔助刺繡界面。
    主刺繡界面主要顯示所刺繡花樣、花樣名、花樣號、花樣針數(shù)、花樣顏色數(shù)、花樣位置、當(dāng)前刺繡針數(shù)等刺繡花樣的各種信息、繡作過程中的各種狀態(tài)顯示和一些基本的操作功能。機(jī)器操作人員通過該界面能夠準(zhǔn)確了解機(jī)器運(yùn)行過程中的各種基本信息和進(jìn)行一些相關(guān)的操作,并且也能夠?qū)Ω鞣N即將出現(xiàn)的情況做出及時的判斷。另外主刺繡界面上還有進(jìn)入?yún)?shù)設(shè)置界面、磁盤管理界面、花樣管理界面和輔助刺繡界面的按鈕。
    參數(shù)設(shè)置界面主要是用于對機(jī)器所需刺繡的各種相關(guān)參數(shù)進(jìn)行設(shè)置。它包括的功能有通用參數(shù)設(shè)置、機(jī)器參數(shù)設(shè)置、剪線參數(shù)設(shè)置、刺繡速度參數(shù)設(shè)置、斷線參數(shù)設(shè)置、輔助刺繡參數(shù)設(shè)置、換色參數(shù)設(shè)置和統(tǒng)計(jì)信息顯示。
    磁盤管理界面主要用于將花樣文件輸入到機(jī)器內(nèi)存的操作,在磁盤管理界面中,用戶可以把USB設(shè)備上的花樣文件輸入到機(jī)器的內(nèi)存中,也可以把機(jī)器內(nèi)存中的花樣文件輸出到USB設(shè)備上??梢詫Υ疟P中花樣進(jìn)行預(yù)覽。磁盤管理界面包含的功能有花樣文件的輸入、選中花樣文件預(yù)覽、選中全部花樣文件、取消全部選中花樣文件、停止花樣文件的輸入、磁盤花樣文件的排序與查看、花樣縮略圖的保存和進(jìn)入內(nèi)存管理界面等。
    花樣管理界面主要用于從內(nèi)存中選擇刺繡花樣文件、對內(nèi)存中花樣文件進(jìn)行各種相關(guān)設(shè)置和變換以及所有生成花樣文件的操作。它包括的功能有輸出花樣文件到磁盤、選中花樣文件的預(yù)覽、選中內(nèi)存中單個花樣文件、花樣文件編輯、全部選中內(nèi)存中花樣文件、取消全部選中內(nèi)存花樣文件、刪除選中花樣文件、內(nèi)存花樣文件的排序與查看和選中當(dāng)前刺繡花樣進(jìn)入主刺繡界面等。輔助刺繡界面主要用于完成一些輔助性刺繡功能。它包括恢復(fù)刺繡花樣的起繡點(diǎn)、機(jī)器沿刺繡花樣周邊刺繡、設(shè)置另外起點(diǎn)和機(jī)器繡作十字等功能。
2.2 功能模塊相互關(guān)系
    人機(jī)界面各功能模塊的具體功能都是在主刺繡界面得以實(shí)現(xiàn)。各功能與主刺繡界面交互關(guān)系如圖1所示。從模塊交互關(guān)系中可以看出,主刺繡界面是整個人機(jī)界面的基礎(chǔ),所有的其他界面都是圍繞著主刺繡界面在展開。

[!--empirenews.page--]

3 人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn)
    人機(jī)界面的軟件開發(fā)環(huán)境采用微軟提供的軟件開發(fā)平臺eVC++4.0,硬件平臺采用三星公司的ARM9芯片S3C2440。模擬器由該硬件平臺的BSP經(jīng)過Platform Builder4.2軟件定制而成,在應(yīng)用程序的開發(fā)過程中可以脫離硬件平臺而在開發(fā)主機(jī)上直接使用模擬器進(jìn)行程序調(diào)試運(yùn)行,避免由于經(jīng)常調(diào)試運(yùn)行的原因造成每次都必須下載到硬件平臺。在eVC++4.O中使用單文檔的形式進(jìn)行人機(jī)界面應(yīng)用程序的開發(fā),創(chuàng)建
了一個基于CFormView的單文當(dāng)應(yīng)用程序,再添加幾個窗體和與之對應(yīng)的基于CFormView的新視類,然后通過在CMainFrame類中添加控制代碼和菜單控制實(shí)現(xiàn)這兩個窗體的動態(tài)切換。這種方法避免了普通WINDOWS窗口界面上的多余的工具條、菜單、文本框等內(nèi)容,完全符合人機(jī)操作界面的要求。
3.1 應(yīng)用程序類
    應(yīng)用程序即高速工業(yè)繡花機(jī)人機(jī)界面的開發(fā),主要實(shí)現(xiàn)繡花機(jī)的各種動作和控制,以及用戶需求規(guī)定的各種必須的功能。根據(jù)人機(jī)界面軟件的特點(diǎn),結(jié)合面向?qū)ο蟪绦蛟O(shè)計(jì)的要求,以及MFC框架的特點(diǎn),繡花機(jī)人機(jī)界面采用文檔一視圖(Document-View)結(jié)構(gòu)結(jié)合對話框來實(shí)現(xiàn)。整個程序分成界面,數(shù)據(jù)處理,界面/數(shù)據(jù)輔助和核心框架等幾個大類。核心框架是MFC單文檔結(jié)構(gòu)應(yīng)用程序的基本核心,其中的文檔類是實(shí)現(xiàn)繡花機(jī)各種數(shù)據(jù)管理。界面類呈現(xiàn)給用戶供用戶操作或?yàn)g覽。界面/數(shù)據(jù)輔助是為了更好的呈現(xiàn)用戶界面和進(jìn)行數(shù)據(jù)處理設(shè)計(jì)的一些輔助類。各個部分的主要類和相互關(guān)系如圖2所示。


    根據(jù)高速工業(yè)繡花機(jī)人機(jī)界面的功能劃分,人機(jī)界面分成以下5部分:主刺繡界面模塊、參數(shù)設(shè)置界面模塊、花樣管理界面模塊、磁盤管理界面模塊、輔助刺繡界面模塊。
3.2 主刺繡模塊
    人機(jī)界面的應(yīng)用程序是根據(jù)面向?qū)ο蟮乃枷脒M(jìn)行編程的,在界面的開發(fā)過程中都是用類來包含各數(shù)據(jù)成員和成員函數(shù)。主刺繡界面作為開機(jī)后第一個出現(xiàn)的界面,使用一個繼承于CFormView類的類CEMBHIDView來包含主界面上的各個數(shù)據(jù)成員和成員函數(shù)。在設(shè)計(jì)中使用CEMBH-IDView∷OnCreate()函數(shù)來動態(tài)創(chuàng)建主界面上的各種功能按鈕。CEMBHIDView類的內(nèi)容如下:
    

[!--empirenews.page--]

    
    通過CEMBHIDView類和相應(yīng)的成員函數(shù)所實(shí)現(xiàn)的主刺繡界面如圖3所示。


3.3 參數(shù)設(shè)置模塊
    首先設(shè)計(jì)一個基于CDialog類的CParameter類來包含參數(shù)界面中所用到的數(shù)據(jù)成員和消息響應(yīng)函數(shù)。用戶通過對相的參數(shù)設(shè)置項(xiàng)進(jìn)行設(shè)置,等待窗口消息并調(diào)用響應(yīng)的窗口過程函數(shù)來進(jìn)行相應(yīng)的處理。由于參數(shù)設(shè)置界面所需設(shè)置的參數(shù)較多,在一個頁面難以排布下,因此,在本設(shè)計(jì)中采用TAB控件來進(jìn)行分頁設(shè)計(jì),其中用到了一個從CTabCtrl類繼承來的CTabSheet類來包含分頁操作所用到的數(shù)據(jù)成員和成員函數(shù),用于Tab Control的控件類。在類中有一個成員變量用來記錄各子對話框的指針CDialog*m_pPages[MAX-PAGE],MAXPAGE是該類所能加載的標(biāo)簽的最大值。CTabSheet類的內(nèi)容如下:

[!--empirenews.page--]

    在CTabSheet類中用到AddPage方法,用于記錄子對話框的指針和所使用對話框資源的ID號。在使用AddPage加入了若干子對話框后,調(diào)用CTabSheet的Show方法來真正生成標(biāo)簽和子對話框。生成好標(biāo)簽和子對話框后,調(diào)用CTabSheet∷SetRect()函數(shù)來計(jì)算并調(diào)整屬性頁的大小。在單擊標(biāo)簽欄后,應(yīng)該是相應(yīng)的子對話框顯示,正在顯示的子對話框應(yīng)該隱藏。因此利用ClassWizard來處理WM_LBUTTONDOWN消息。這樣利用CTabSheet類就可以輕松地在對話框上放置自己的屬性頁了,并且控件都分散在各子對話框類中,符合對象封裝的思想。而且用這個方法來制作屬性頁就可以利用ClassWizard來輕松地生成消息映射處理Tab Control的消息了。使用這個類,可以將參數(shù)設(shè)置各頁面的封裝對象關(guān)聯(lián)起來,起到分頁顯示作用。每個頁面使用一個類來封裝數(shù)據(jù)成員和成員函數(shù)。應(yīng)用程序中操作的對象可以是連續(xù)的,即應(yīng)用程序退出時將用戶數(shù)據(jù)保存到磁盤上,在程序重新啟動時恢復(fù)它們,這個保存和恢復(fù)的過程稱為串行化。MFC中有一個特定類CSerialize,支持對象的串行化。并利用CArchive類對象作為執(zhí)行串行化對象和存儲介質(zhì)之間的中繼,執(zhí)行串行化的對象可以使用CArchive類對象進(jìn)行讀寫操作。參數(shù)設(shè)置界面中用到的全局變量包含在2個從CObject類派生的CDesignParams和CGlobalV中,使用這2個類中的重載成員函數(shù)CGlobalV∷Serialize(CAr-chive& ar)、CDesignParams∷Serialize(CArchive& ar)進(jìn)行實(shí)際的串行化操作。通過以上的串行化技術(shù)就可以保存參數(shù)設(shè)置中用戶設(shè)置的參數(shù),在程序退出時這些參數(shù)設(shè)置可以被存儲,程序啟動后被讀入。參數(shù)設(shè)置界面的實(shí)現(xiàn)如圖4所示。


3.4 磁盤管理模塊
    磁盤管理界面是使用一個CDiskManagement類來封裝花樣管理界面中用到的數(shù)據(jù)成員和成員函數(shù)。用戶通過觸摸屏進(jìn)行操作時,系統(tǒng)的消息循環(huán)隊(duì)列中會產(chǎn)生相應(yīng)的消息。根據(jù)消息中的窗口句柄,系統(tǒng)將消息發(fā)送到目標(biāo)窗口,并自動啟動相應(yīng)的窗口過程函數(shù)來響應(yīng)。當(dāng)用戶點(diǎn)擊“輸入花樣文件”按鈕,將調(diào)用花樣拷貝函數(shù)進(jìn)行花樣格式轉(zhuǎn)換、縮略圖的生成并保存到機(jī)器內(nèi)存。點(diǎn)擊其他的按鈕亦將產(chǎn)生相應(yīng)的功能操作。磁盤管理界面的實(shí)現(xiàn)如圖5所示。

4 測試與結(jié)論
    人機(jī)界面作為人與高速工業(yè)繡花機(jī)信息交互的樞紐,必須將機(jī)器信息實(shí)時、準(zhǔn)確而且容易識別的方式傳遞給機(jī)器操作人員,才能達(dá)到人與機(jī)器的最佳配合。而基于Windows CE操作系統(tǒng)制作的人機(jī)界面能夠很好地滿足這個要求并提供更美觀、更友好和人性化的界面,它將在嵌入式產(chǎn)品中應(yīng)用越來越廣泛。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉