當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]一種嵌入式數(shù)據(jù)終端的設計方案與實現(xiàn)

摘要:以MES 在制造業(yè)的應用為背景,針對企業(yè)車間的數(shù)據(jù)類型、數(shù)據(jù)采集手段、數(shù)據(jù) 下達與顯示方式在各種行業(yè)千差萬別的實際情況,提出了一種所有功能透明、受控于上位機 的基于S3C44B0 的嵌入式智能交互終端的數(shù)據(jù)采集方案。此方案能解決數(shù)據(jù)采集終端在不同 行業(yè)間推廣過程中的通用性問題,縮短系統(tǒng)的開發(fā)周期,日常維護和升級都非常方便。詳細 地給出了交互系統(tǒng)的總體模型,嵌入式智能數(shù)據(jù)交互終端的硬件平臺、軟件框架與設計流程。

1、引言

傳統(tǒng)的 ERP 等信息管理系統(tǒng)在制造業(yè)企業(yè)內(nèi)發(fā)揮了重要的作用,但這些系統(tǒng)還未能延伸 到車間過程管理的環(huán)節(jié),使車間過程管理自動化、信息化、智能化?,F(xiàn)在新興的MES 系統(tǒng)為 解決以上的問題,通常在車間借用各種數(shù)據(jù)交互終端。數(shù)據(jù)交互終端負責采集和處理最原始 數(shù)據(jù)并將其傳送到工作站,同時接收工作站下達的操作命令[1]。但是,傳統(tǒng)的數(shù)據(jù)交互終端 把業(yè)務流程及數(shù)據(jù)采集項定制設計成程序固化在終端內(nèi),當業(yè)務流程發(fā)生變化或在不同行業(yè) 中應用時,就需要花費大量時間修改終端程序與上位機應用程序。例如在一個系統(tǒng)中有N 臺終端要實現(xiàn)不同的業(yè)務,就要設計N 套終端程序,使得終端程序的版本很多,很明顯不能 適應現(xiàn)代企業(yè)的快速變化,也不利于行業(yè)間的推廣。本文提出一種新的設計方案,引入業(yè)務 功能配置引擎與業(yè)務解析引擎。其中業(yè)務功能配置引擎為上位機應用程序核心,業(yè)務解析引 擎集成于數(shù)據(jù)交互終端。這樣,當業(yè)務或行業(yè)變化時,只需改變上位機的業(yè)務配置引擎的配 置信息而無需改變終端程序。采用這樣的設計方案可以加快系統(tǒng)開發(fā)進度,以及系統(tǒng)在各種 行業(yè)中的推廣。

2、嵌入式智能數(shù)據(jù)交互終端硬件平臺

硬件平臺采用Samsung S3C44B0 處理器,該處理器采用的ARM7TDMI 結構,最高頻率 66MHz[2]。本平臺以此處理器為核心,添加諸多外圍模塊,其硬件平臺框圖如圖1 所示。

 

 

鍵盤,RFID 與液晶屏為終端的人機交互平臺;系統(tǒng)的核心模塊通過系統(tǒng)總線與處理器 連接;外接豐富的RAM 與ROM 資源可以提高系統(tǒng)軟件設計的靈活性;以太網(wǎng)作為主要通訊接 口,使得系統(tǒng)通訊更加標準化,保證了通訊的速度與可靠性。在本系統(tǒng)中,除處理器、SDRAM、FlashRom 為主板固定模塊,其它外圍均采用可拔插的設計原理,這樣當需求改變時,只需 插上或拔下需要的外圍模塊即可,這樣的設計思想增加了終端的靈活性并縮短開發(fā)周期。

3、軟件設計的思想與實現(xiàn)

3.1 智能數(shù)據(jù)交互系統(tǒng)的整體模型及工作原理

在講述數(shù)據(jù)交互終端的軟件實現(xiàn)前,首先介紹系統(tǒng)的整體結構以及其工作原理。圖2 是MES 系統(tǒng)中的底層數(shù)據(jù)交互的總體模型。數(shù)據(jù)交互系統(tǒng)的上位機主要由業(yè)務需求模塊、業(yè) 務配置引擎、數(shù)據(jù)解析引擎、引擎配置信息與底層通訊模塊組成。系統(tǒng)從上層管理系統(tǒng)中獲 取業(yè)務需求,業(yè)務配置引擎讀取引擎配置信息,生成業(yè)務事件鏈,通過通訊模塊根據(jù)工位地 址發(fā)送到相應數(shù)據(jù)交互終端,相反收到采集數(shù)據(jù)包時,數(shù)據(jù)解析引擎解析數(shù)據(jù)交互終端采集 到的數(shù)據(jù),最后交由業(yè)務需求模塊反饋回上層管理程序。數(shù)據(jù)交互終端軟件主要由底層通訊 模塊、業(yè)務解析引擎、終端表現(xiàn)層與外設驅動與響應模塊組成。終端通訊層接收到上位機的 數(shù)據(jù)包校驗正確后交由業(yè)務解析引擎。解析引擎根據(jù)引擎協(xié)議解析出業(yè)務事件鏈后,通過終 端表現(xiàn)層,并等待數(shù)據(jù)采集,采集完成后交由采集生成引擎,生成固定格式數(shù)據(jù)再返回上位 機,從而形成數(shù)據(jù)交互的閉環(huán)。

3.2 終端引擎的實現(xiàn)原理

以上為系統(tǒng)的工作原理,下文接著對數(shù)據(jù)交互終端業(yè)務解析引擎與數(shù)據(jù)采集引擎的實現(xiàn) 做詳細的介紹。實現(xiàn)的功能主要就是:液晶顯示與外設控制。液晶如何顯示,顯示那些內(nèi)容, 外設如何控制,在沒經(jīng)過業(yè)務解析引擎前終端都是保持著上次狀態(tài),經(jīng)過解析后才知道應該 實現(xiàn)那些東西,如何去實現(xiàn)。解析引擎就是根據(jù)特定協(xié)議將一段數(shù)據(jù)轉化為邏輯控制功能的 庫。也就是通過一種協(xié)議把終端的業(yè)務邏輯交給了功能強大的PC 機去處理。終端工作只是 每次邏輯計算后的表現(xiàn)。要實現(xiàn)以上的功能,就必須有一套完整的功能協(xié)議棧,設計協(xié)議棧 之前,首先將終端的功能進行模塊劃分,這里以通訊模塊往后進行劃分,主要有:鍵盤控制、 液晶顯示、外設采集器控制。每個模塊繼續(xù)細化,盡可能表現(xiàn)各個模塊的可能會出現(xiàn)的狀態(tài)。 再次,功能協(xié)議的實現(xiàn),協(xié)議由協(xié)議關鍵字與控制內(nèi)容組成,比如關鍵字A 代表終端硬件模 塊A,關鍵字A 后面的內(nèi)容表示上位機要求模塊A 要實現(xiàn)的功能,模塊A 功能繼續(xù)細化。如 表1 給出了部分功能協(xié)議組成。終端的響應上位機的業(yè)務狀態(tài)主要由兩個狀態(tài)量控制,在程 序上我們定義為兩個全局變量,分別用來表示下位機當前屬于哪個業(yè)務功能與所屬該功能的 步驟,在程序上定義為ID 與STEP,上位機系統(tǒng)已經(jīng)把ID 與SteP 的邏輯流程設計好,例如 在某個ID 與STEP 狀態(tài)時,終端屏幕上顯示是工藝完成情況,并要求用戶通過各種采集外設 進行數(shù)據(jù)采集,提交上位機。每次上位機發(fā)送下來的數(shù)據(jù)都是以ID+STEP+模塊A 控制字 +模塊A 控制數(shù)據(jù)+模塊B 控制字+模塊B 控制數(shù)據(jù)+…。同時設置觸發(fā)模塊的NEXT_ID與NEXT_STEP。當相應觸發(fā)發(fā)生時,上位機可以根據(jù)NEXT_ID 與NEXT_STEP 向終端發(fā)送下個 業(yè)務流程與其步驟。比喻上位機是一個龐大的中央處理器,控制著業(yè)務流程的整個邏輯計算 與數(shù)據(jù)的組織,車間的所有終端就更像一個輸入輸出設備圍繞著這個中央處理器。我們知道 計算ID×STEP 個邏輯需要一定的CPU 時間,如果將這個工作交給上位機(CPU 達到G 級的 處理器)去完成,處理能力有限的終端就可以去處理更多的其他采集工作。同時,ID×STEP 個業(yè)務界面需要消耗很多的 RAM 與ROM 資源,如果把這些界面固化與終端內(nèi)部,將大大增 加了終端的硬件成本。而且當需求改變時,必須花大量的工作去更改每個終端的程序與數(shù)據(jù)。 如果把以上工作交給上位機處理,可以在很小的硬件資源中實現(xiàn)ID×STEP 個功能間的相互 跳轉,而且當業(yè)務改變時,只需要改變上位機的邏輯關系與數(shù)據(jù),而無需改變終端內(nèi)部的應 用程序。表一給出了協(xié)議的部分組成。[!--empirenews.page--]

 

 

 

 

與解析引擎相似,數(shù)據(jù)采集引擎把采集到的數(shù)據(jù)根據(jù)一定的協(xié)議格式設置好,通過通訊 層把數(shù)據(jù)發(fā)送給上位機,上位機根據(jù)數(shù)據(jù)采集解析協(xié)議把采集數(shù)據(jù)分類解析。從而達到終端 的功能邏輯、人機交互、外設控制,數(shù)據(jù)處理完全由上位機控制的目的。

3.3 終端的軟件實現(xiàn)流程

應用程序的具體實現(xiàn)流程如圖3 所示。

 

 

上文已經(jīng)介紹了變量ID、STEP, ID 表示大的功能節(jié)點,STEP 表示相應功能點(ID) 下的操作步驟,如果定義為字節(jié)變量,兩個字節(jié)總共可以表示256*256=65536 個功能,完全 可以滿足一般數(shù)據(jù)采集終端的需求;RTN 是終端的狀態(tài)機變量,終端程序通過設置一個工作 狀態(tài)變量RTN 來控制系統(tǒng)的工作狀態(tài)。

(1) RTN=0 表示,所有的工作就緒,可以接受上位機的業(yè)務請求。

(2) RTN=1 表示,終端已正確接收到了上位機的業(yè)務請求。對應流程,在這個過程中, 終端要做的事情就是設置上位機的業(yè)務請求。首先,分析當前請求的ID 與STEP,應用程序 實現(xiàn)不同功能間的跳轉主要由功能節(jié)點ID 與STEP 決定,例如:當前ID=3,STEP=4,表明終 端當前在業(yè)務流程的第三個功能的第四個步驟,如果ID 為特殊功能程序更新,可以實現(xiàn)終 端程序的遠程更新。其次,如果ID 不是特殊請求,進行功能協(xié)議分析。設置好終端當前功 能步驟的業(yè)務請求后,將該數(shù)據(jù)結構傳入事件響應。業(yè)務響應根據(jù)業(yè)務要求將功能劃分成不 同子模塊,調(diào)用解析引擎庫相應的子事件處理函數(shù)。在子事件處理函數(shù)中調(diào)用板級驅動處理 函數(shù),實現(xiàn)具體的硬件功能。設置完上位機業(yè)務功能請求后RTN 置為2。

(3) RTN=2 表示終端已處理好接收到的信息,并根據(jù)具體業(yè)務要求,實現(xiàn)了界面顯示, 按鍵權限的設置,按鍵轉向的設置(按鍵轉向是指:按某個按鍵后,上位機根據(jù)當前按下的 按鍵,把相應的功能點下達到終端,實現(xiàn)功能跳轉),刷卡轉向功能設置,A/D 采集設置等, 此時一直等待數(shù)據(jù)采集、按鍵動作或刷卡動作等觸發(fā),采集動作完成后,通過數(shù)據(jù)采集引擎 規(guī)劃好采集到的數(shù)據(jù),提交上位機,同時RTN 置零完成一次功能請求到響應,重新回到空閑 狀態(tài)等待上位機詢問。

采用以上的軟件設計方案,可以在很小的硬件資源下實現(xiàn)ID×STEP 個功能的相互跳轉, 而且當業(yè)務改變時,只需要配置上位機的邏輯關系與數(shù)據(jù),而無需改變終端內(nèi)部的應用程序。 實際應用中,終端程序只需一套,上位機只要根據(jù)終端的地址就可以決定該終端的功能流程。

4、結束語

本文的創(chuàng)新點:提出了一種有別于傳統(tǒng)設計方案的嵌入式智能數(shù)據(jù)交互終端的設計方 案,該方案可以解決在業(yè)務需求改變的情況下無需改變數(shù)據(jù)采集終端的內(nèi)部程序,從而在一 定程度上解決了數(shù)據(jù)采集終端在不同行業(yè)推廣過程中的通用性問題,縮短了整個系統(tǒng)的開發(fā) 周期,也給系統(tǒng)的維護和升級帶來了很大的方便。同時本文提出的終端程序設計框架還可以 在有限硬件資源的情況上實現(xiàn)256*256 個業(yè)務功能界面的相互跳轉。

該嵌入式智能數(shù)據(jù)交互終端系統(tǒng)已在廣東省某大型企業(yè)試運行后,運行效果良好,現(xiàn)已 大批量投入使用,企業(yè)對該系統(tǒng)的日常維護和業(yè)務升級都非常方便,相比于該企業(yè)原先把業(yè) 務流程及數(shù)據(jù)采集項定制成程序固化在終端內(nèi)的傳統(tǒng)設計方案,新方案大大降低了企業(yè)在業(yè) 務升級和業(yè)務流程發(fā)生變化時,要頻繁修改終端或終端程序與上位機應用程序所帶來的生產(chǎn) 成本,每年直接經(jīng)濟效益至少20 萬元以上,而且還提高了企業(yè)勞動效率。

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

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

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

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

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

關鍵字: 汽車 人工智能 智能驅動 BSP

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

關鍵字: 亞馬遜 解密 控制平面 BSP

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

關鍵字: 騰訊 編碼器 CPU

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

關鍵字: 華為 12nm EDA 半導體

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

關鍵字: 華為 12nm 手機 衛(wèi)星通信

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

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

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

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

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

關鍵字: BSP 信息技術
關閉
關閉