




已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1 基于嵌入式 1. 引言 目簡要介紹 本項目采用嵌入式 術(shù),結(jié)合 信技術(shù)和 解密技術(shù),實現(xiàn)一個遠程車輛稽查手持終端和相應(yīng)的企業(yè)級服務(wù)器。該系統(tǒng)具有車輛稽查所需要的常用操作和數(shù)據(jù)庫,并具有高安全性和全網(wǎng)監(jiān)控的功能。 目提出的背景和意義 目前,我國的公路基礎(chǔ)建設(shè)已進入快速發(fā)展階段,公路里程有了大幅度的提高,汽車已經(jīng)逐漸進入家庭,在路車輛不斷增加。據(jù)不完全統(tǒng)計,每年全國漏征養(yǎng)路費高達人民幣30國家造成了巨大的經(jīng)濟 損失。同時汽車的盜搶、丟失、違章等事件越來越多,需要交通征費稽查部門、公安交警部門上路檢查的時間大大增加 。因此 ,在路面進行移動車輛稽查顯得越發(fā)重要 。 在城市車輛稽查中,通常有以下三種方法: 第一種是通過單純的人力進行路面攔截的車輛稽查。這種方法只能檢查車輛駕駛員當(dāng)時是否違反交通法則、駕駛員是否有相應(yīng)的駕駛照、駕照是否過期失效或者是車輛是否超載違規(guī)、年審失效等基本信息,而關(guān)于車輛以前違規(guī)次數(shù)、車輛欠費情況等現(xiàn)場不能取得的重要信息往往無能為力。甚至有時候駕駛員無證駕駛,也可以推搪說成是忘記帶駕駛證了,這給交通部 門工作帶來很大的干擾。 第二種是采用筆記本電腦,通過查詢筆記本電腦存儲的車輛信息和駕駛員信息數(shù)據(jù)庫而進行的車輛稽查。這種方法首先最大的缺點是數(shù)據(jù)庫不能夠?qū)崟r同步,并且需要經(jīng)常更新和維護數(shù)據(jù)庫,給工作人員帶來很大麻煩。其次是攜帶不方便,浪費資源。因為筆記本只用來查詢,而不能集工作人員手機功能與一身,并且投資巨大,浪費財政。 第三種是采用便攜式智能車輛稽查系統(tǒng),該系統(tǒng)由筆記本電腦、攝像機、支架、 000/作系統(tǒng)、相關(guān)的識別軟件構(gòu)成,可以安放在收費站上面,也可以安放在車輛上面,具有實時捕捉圖 像、自動識別車牌號,并且檢查車輛是否欠費或者來歷不明并且進行報警。該系統(tǒng)是目前最為先進的車輛稽查系統(tǒng),能夠大大提高工作人員的工作效率。主要 2 名稱 缺點 純?nèi)斯ぢ访婊?方便 筆記本路面稽查 用麻煩 智能稽查系統(tǒng) 方便 表 1種稽查方法的優(yōu)缺點比較 缺點是費用高,每套系統(tǒng)要 5 到 6 萬人民幣,并且在不能代替一切的車輛稽查,比如查詢不能通過攝像頭拍到的車輛或者是查詢泊車是否超時等,均無能為力。 三種方法的優(yōu)缺點比較如下表所示: 基于嵌入式 車輛稽查系統(tǒng)可以有效解決上述問題,用戶只要一個手持終端,就可以進行路面車輛的輕松稽查,方便快捷,并且可以和數(shù)據(jù)庫實時同步。該系統(tǒng)成本低廉、功耗低、集合了開源 有推廣使用價值和借鑒意義。 色和創(chuàng)新點 雖然嵌入式 不是一個新鮮的話題,但是本系統(tǒng)在設(shè)計的時候充分考慮到了用戶成本、系統(tǒng)穩(wěn)定性、用戶的需要等內(nèi)容,使得本系統(tǒng)具有以下特色和創(chuàng)新點。 充分采用開源技術(shù)。終端大部分技術(shù)均采用了開源技術(shù),包括引導(dǎo)程序、 形界面開發(fā)框架,服務(wù)器也采用了開源的 為服務(wù)器。 成本低廉。由于采用了開發(fā)技術(shù),可以減少成本,而終端的設(shè)計本身就是立足在高性價比的 片上,而上網(wǎng)是采用 網(wǎng),可以減少大部分的通信費用。 高安全性。采用 密算法實現(xiàn)服務(wù)器和終端的安全通信,并且用戶需要認(rèn)證才可以接入數(shù)據(jù)庫。 集中控制。終端采用 術(shù),使得服務(wù)器可以監(jiān)控所有終端的狀態(tài)、位置。 3 系統(tǒng)的可維護性和升級。大部分嵌入式系統(tǒng)在完成產(chǎn)品推出后,系統(tǒng)就難以升級,而本系統(tǒng)由于有強大的 為操作系統(tǒng),可以不斷地添加外部設(shè)備,充分利用開源技術(shù),并且可以保持與時俱進,進行產(chǎn)品的升級。由于采用了中央數(shù)據(jù)庫,從而可以保證系統(tǒng)的可維護性。 用戶界面友好。大部分嵌入式設(shè)備的圖形界面均相當(dāng)簡單,主要是滿足了不同的需求,而本系統(tǒng)采用的圖形界面框架,可以設(shè)計出和 相似的圖形界面,相比其他嵌入式產(chǎn)品來說,友好的圖形界面是一大特色。 可規(guī)模生產(chǎn),具有產(chǎn)業(yè)價值。嵌入式系統(tǒng)的一大特點就是用戶量大,同樣,本系統(tǒng)一旦設(shè)計完成通過調(diào)試,可以大規(guī)模生產(chǎn),并做為推廣之用。 自主知識產(chǎn)權(quán)。 2 任務(wù)概述 標(biāo) 本系統(tǒng)的目標(biāo)是實現(xiàn)一個基于嵌入式 術(shù)、 術(shù)、 術(shù)、加解密技術(shù)的手持終端設(shè)備和基于 服務(wù)器系統(tǒng)。系統(tǒng)采用 C/S 模型,可以解決路面車輛信息的查詢和數(shù)據(jù)庫更新、撥打電話等功能,并具有高安全性和全網(wǎng)監(jiān)控、全球?qū)Ш焦δ堋?戶特點 本系統(tǒng)面向的用戶屬于交通稽查部門或者交警相關(guān)部門人員。這些人員對計算機的熟悉程度較低,因此系統(tǒng)應(yīng)該具有友好的使用界面和穩(wěn)定性。對于服務(wù)器可以由相關(guān)專業(yè)人員維護。 統(tǒng)特點 1終端性價比高。因為采用了 片和 作系統(tǒng),在提高終端性能的同時降低價格。并且 網(wǎng)費用低,永遠在線,按流量計費也進一步降低了費用,解決了費用問題。 2終端功能多。該系統(tǒng)集成查詢、撥打電話、發(fā)送短消息功能于一身,并且提供了一個 面,可以獲得很多的桌面應(yīng)用軟件,比如上網(wǎng)、文本編輯器等。在后續(xù) 的開發(fā)中,可以加上無線局域網(wǎng)、藍牙功能,與小型打印機相連,實現(xiàn)增開罰單、繳費開單等 4 功能。 3終端攜帶方便。本系統(tǒng)體積小,可以隨身攜帶,可以當(dāng)做通用的智能手機那樣使用,因此適合街道交通警察查詢車輛情況。 4. 高安全性。服務(wù)器和終端的通訊是加密的,可以保證通信的安全。用戶登錄采用認(rèn)證系統(tǒng),可以保護本地數(shù)據(jù)庫。服務(wù)器可以監(jiān)控所有終端的狀態(tài)信息。 3 需求分析 能需求 系統(tǒng)的功能結(jié)構(gòu)圖如圖 2示。 能需求 終端響應(yīng)時間: 3 天 可靠性: 365 天 撥打電話 基于嵌入式 輛稽查系統(tǒng) 手持終端設(shè) 備 服務(wù)器 圖形界面 車輛查詢 數(shù)據(jù)庫更新 圖形界面 數(shù)據(jù)庫管理 終端管理 圖 3統(tǒng)功能結(jié)構(gòu)圖 航 全網(wǎng)監(jiān)控 5 服務(wù)器可支持終端: 500 臺 本需求 終端單價: ,*9 間: 式; 定位狀 態(tài): A=有效定位, V=無效定位; 緯度 式; 緯度半球 N (北半球)或 S (南半球); 經(jīng)度 式; 經(jīng)度半球 E (東經(jīng))或 W (西經(jīng)); 地面速率; 地面航向; 期, 日月年)格式; 磁偏角; 端軟件設(shè)計 終端軟件由引導(dǎo)程序、操作系統(tǒng)、應(yīng)用程序組成。而應(yīng)用程序借助操作系統(tǒng),實現(xiàn)了車輛查詢、更新、撥打電話、加解密、圖形界面顯示等功能。三者關(guān)系如下: 端引導(dǎo)程序 是在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序。 通過這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀導(dǎo)程序 作系統(tǒng)內(nèi)核 圖 5終端軟件組成 終端硬件 基于 架的圖形界面 航 查詢車輛信息息 撥打電話、發(fā)送 短信 10 態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。 對于嵌入式系統(tǒng)來說,常用的 可以自己開發(fā)制作 了減少軟件開發(fā)周期,應(yīng)該選擇開放的 過修改部分代碼進行移植。 是德國 組開發(fā)的用于多種嵌入式 序,它可以運行在基于 多種嵌入式開發(fā)板上。由于其開源性,并且可移植的平臺多、功能豐富、穩(wěn)定性好,本系統(tǒng)使用 為啟動引導(dǎo)程序。 作系統(tǒng) 隨著消費類電子產(chǎn)品的快速發(fā)展,嵌入式操作系統(tǒng)得到了廣泛的應(yīng)用。目前,主流的嵌入式操作系統(tǒng)有 E、 S 。本系統(tǒng)采用嵌入式 軟件開發(fā)平臺,采用了 襲了主流 絕大部分特性,是 一個完全免費的、開放源代碼的系統(tǒng),用戶可以根據(jù)用戶自己的不同要求對操作系統(tǒng)進行裁減,以節(jié)省不必要的開銷。另外, 統(tǒng)開發(fā)資源豐富,擁有豐富的驅(qū)動程序、應(yīng)用程序和開發(fā)工具,能夠根據(jù)用戶的需要,移植到嵌入式 統(tǒng)中。 開源的操作系統(tǒng)和驅(qū)動程序,為終端的開發(fā)縮短了周期。 用程序 應(yīng)用程序采用 C 和 C混合編程。主要完成系統(tǒng)的大部分功能,利用 統(tǒng)調(diào)用,可以直接通過串口和 信,從而完成無線上網(wǎng)、全球?qū)Ш降裙δ?,利用能,還可以實現(xiàn)撥打電話、發(fā)送短息等等。利用 架 ,可以編寫圖形界面,將有關(guān)數(shù)據(jù)以圖形界面顯示出來。 應(yīng)用程序與服務(wù)器的數(shù)據(jù)需要經(jīng)過加解密,因此需要借助加解密算法進行數(shù)據(jù)的封轉(zhuǎn),和服務(wù)器的通信需要遵循一定的協(xié)議,這個協(xié)議是架設(shè)在 議之上的應(yīng)用層協(xié)議,是本系統(tǒng)專有的。 應(yīng)用程序模塊圖如圖 5示。注意如果需要和服務(wù)器通信的數(shù)據(jù)一般需要加解密,而數(shù)據(jù)如果本地使用,則不需要加解密。 11 基于 架的圖形界面 航 解密引擎 用戶登陸認(rèn)證 查詢車輛信息 開罰單單 打電話、發(fā)信 息 口 ) 圖 5用程序軟件構(gòu)成 用函數(shù) 圖形界面 圖形界面采用 一個為嵌入式設(shè)備上的圖形用戶接口和應(yīng)用開發(fā)而定做的 C+開發(fā)包,它通常可以運行在多種不同的處理器平臺上。運行 要求一個較小的存儲空間和內(nèi)存。 以運行在不同的處理器上部署的 統(tǒng)。 圖形界面采用 架開發(fā),而有關(guān)的 航功能、查詢車輛功能、開罰單功能、打電話、發(fā)信息等終端功能依賴函數(shù)實現(xiàn),屬于面向?qū)ο蠛兔嫦蜻^程混合編程。 這些封轉(zhuǎn)好的函數(shù)如下表所示: 12 函數(shù)原型 功能描述 功能:用戶登錄 參數(shù) : 放密碼 返回值:成功返回 0,失敗返回 誤原因存放在 功能:查詢車輛 參數(shù): 放查洵得到的數(shù)據(jù), 長度 返回值:成功返回 0,失敗返回 誤原因存放在 功能:更新數(shù)據(jù)庫車輛信息,供開罰單使用 參數(shù): 定要更新的條目, 返回值:成功返回 0,失敗返回 誤原因存放在 功能 :取得 參數(shù): 放 返回值:成功返回 0,失敗返回 誤原因存放在 功能 :撥打電話 參數(shù): 返回值:無 功能 :發(fā)送短消息 參數(shù): 放要發(fā)送的信息, 返回值:無 功能:發(fā)送 參數(shù): 放 返回值:成功返回 0,失敗返回 誤原因存放在 * 功能 :取得其他終端的信息 參數(shù): 返回值:無 13 加解密引擎 加解密算法采用標(biāo)準(zhǔn) 法,分別在服務(wù)器和終端實現(xiàn)。密鑰管理采用數(shù)據(jù)庫表進行管理 ,和對應(yīng)的終端表連接起來。保證每個終端的加解密信息均不一樣。密鑰預(yù)先寫入到終端里面,并且不可改變,由數(shù)據(jù)庫統(tǒng)一維護。 加解密只需要三條函數(shù) 功能 :取得密鑰信息 參數(shù): 返回值:無 功能:加密數(shù)據(jù) 參數(shù): 返回值:無 功能:解密數(shù)據(jù) 參數(shù): 返回值:無 用函數(shù) 除了 統(tǒng)自帶的 ,本系統(tǒng)為了操作的方便,將許多功能性的操作集成在一起,設(shè)計了一些供上層使用的函數(shù),比如操 作串口函數(shù),與 信函數(shù),與 這里列舉了一些做為代表。 與 信的列表如下: 函數(shù)原型 功能描述 功能:初始化串口為波特率 115200, 1個停止位,無奇偶校驗和流控 參數(shù):無 返回值:成功返回 0,失敗返回 -1 功能:打開串口 參數(shù):無 返回值:成功返回 0,失敗返回 14 功能:往 參數(shù): 指針 返回值:成功返回 0,失敗返回 -1 功能:讀取串口傳送過來的字符,并使其以 0結(jié)束 參數(shù): 指向一定數(shù)量的字符串緩沖區(qū) 返回值:成功返回 0,失敗返回 -1 功能:比較 參數(shù):指向需要比較的字符串 返回值:有返回 0,沒有返回 -1 功能:檢測 參數(shù): 向 返回值:成功返回 0,失敗返回 -1 功能:往 送字符串 數(shù): 向發(fā)送的字符串 返回值:成功返回 0,失敗返回 -1 功能:讀取 參數(shù): 向存儲緩沖區(qū) 返回值:成功返回 0,失敗返回 -1 功能:停止 參數(shù):無 返回值:成功返回 0,失敗返回 -1 ip,功能:建立 參數(shù): 向端口字符串 返回值:成功返回 0,失敗返回 -1 功能:關(guān)閉 參數(shù):無 返回值:無 功能:發(fā)送短信息 參數(shù): 向手機號碼字符串, 返回值:成功返回 0,失敗返回 -1 功能:檢查是否登陸到服務(wù)器 參數(shù): 指向 15 返回值:成功返回 0,失敗返回 要說明 在 文件里面,還有關(guān)于操作串口的 義, 核沒有實現(xiàn)他們,主要是庫函數(shù)通過調(diào)用 數(shù)來實現(xiàn)各種串口操作的。本系統(tǒng)開發(fā)的時候會用到這些函數(shù),這些函數(shù)是定義在 件里面。如下: / 返回 指 構(gòu)中的接收 波特率。 / 返回 指 構(gòu)中的發(fā)送波特率。 / 將 指 構(gòu)中的接收波特率設(shè)置為 / 將 指 構(gòu)中的發(fā)送波特率設(shè)置為 / 等待 指對象已寫輸出數(shù)據(jù)被傳送出去。 / 掛起 /重啟 指對象數(shù)據(jù)的接收和發(fā)送。 / 丟棄 定對象所有已寫但還沒傳送以及所有已收到但還沒有讀取的數(shù)據(jù)。 / 獲取與句柄 應(yīng)對象的參數(shù),并將其保存在 指的地方。 / 如果終端使用異步串行數(shù)據(jù)傳輸,則在一定時間內(nèi)連續(xù)傳輸一系列 0 值比特位。 / 使用 構(gòu)指針 指的數(shù)據(jù),設(shè)置與終端相關(guān)的參數(shù)。 /* * 和 用這些符號常數(shù) */ # / 掛起輸出 。 # / 重啟被掛起的輸出。 # / 系統(tǒng)傳輸一個 符,使設(shè)備停止向系統(tǒng)傳輸數(shù)據(jù)。 # / 系統(tǒng)傳輸一個 符,使設(shè)備開始向系統(tǒng)傳輸數(shù)據(jù)。 16 /* * 和 用這些符號常數(shù) */ # / 清接收到的數(shù)據(jù)但不讀。 # / 清已寫的數(shù)據(jù)但不傳送。 # / 清接收到的數(shù)據(jù)但不讀。清已寫的數(shù)據(jù)但不傳送。 /* * 使用這些符號常數(shù) */ # / 改變立即發(fā)生。 # / 改變在所有已寫的輸出被傳輸之后發(fā)生。 # / 改變在所有已寫的輸出被傳輸之后并且在所有接收到但 / 還沒有讀取的數(shù)據(jù)被丟棄之后發(fā)生。 除了以上需要使用到的 外,我們要需要通用的 、 、 、 端和服務(wù)器通信協(xié)議 通過定義雙方通信協(xié)議,可以大大簡化操作,減少雙方依賴性,達到通用接口的目的。對于服務(wù)器來說,只需要在 次處理通信協(xié)議就好了,按照協(xié)議規(guī)定的內(nèi)容進行處理即可。首先,從 得 據(jù),然后讀取前 4 字節(jié),取得數(shù)據(jù)長度,再進行解密,得出原本信息,之后根據(jù)條目數(shù)和條目內(nèi)容分別進行操作即可。這些協(xié)議最后要經(jīng)過加解密才可以發(fā)送。 看下圖。 條目數(shù) (2B) B) 度( 2B) B) 度( 2B) 容 已加密信息 容 長度( 4B) 據(jù) 部 17 這些 分別有其標(biāo)識符,標(biāo)識符由兩位構(gòu)成,第一位表示操作類別,第二位表示具體操作。歸納如下: 標(biāo)識符 宏定義 含義 00 陸 01 戶名 02 碼 10 陸結(jié)果 11 限不足 12 陸成功 20 詢 21 牌號 22 份證 23 照 30 詢結(jié)果 31 效車牌號 32 詢得出汽車內(nèi)容 40 新 41 新數(shù)據(jù)庫 1 新數(shù)據(jù)庫 50 新結(jié)果 51 新成功 18 60 據(jù) 61 度 62 度 70 他終端信息 71 端用戶 72 碼 73 置 80 終端信息 81 端標(biāo)志符號 下面是個例子,講述登陸過程如何封轉(zhuǎn)成協(xié)議包,并進行加密和發(fā)送的,其他協(xié)議過程類似。 登陸過程,首先將數(shù)據(jù)封轉(zhuǎn)成如下形式, 1 表示條目數(shù)為 1, 00 表示 作, 17表示后面的數(shù)據(jù)有 17B, 01 表示 4 表示長度,即 02 表示 5 表示密碼長度為 5。 最后將總共長達 23B 的數(shù)據(jù)進行加密,注意 法是 8B 加密的,所以需要填充到24B,然后進行加密,加密后得出下面的的數(shù)據(jù)。 最后將這些數(shù)據(jù)發(fā)送到服務(wù)器即可。服務(wù)器首先讀取前面 4 字節(jié),得出數(shù)據(jù)長達 24B,然后將 24B 解密,然后分別解析里面的內(nèi)容。比如,讀取前面兩個字節(jié),得出條目數(shù)為 1,那么只需要進行一次循環(huán)即可,然后讀取前面兩個字節(jié),得出 00,即 么按照處理。接著讀 取 容為 17 字節(jié),那么解析前面 2 個字節(jié),得出 據(jù)長度信息,提取用戶名出來,指針跳到下個 始出,即到了 始處,1 00 17 4 01 2 5 12345 24B 的加密信息 24 19 依次解析,直到 17 字節(jié)解析完。 端圖形界面外觀 ( 1)點擊功能,查詢車輛信息,輸入車牌號即可查詢車輛,需要登陸后才可以操作。如圖 5 ( 2)查詢車輛返回結(jié)果顯示,其中部分內(nèi)容通過滾動條可以顯示。如圖 5 圖 5終端登陸服務(wù)器 圖 5終端登陸服務(wù)器 20 6. 服務(wù)器設(shè)計 程語言和開發(fā)平臺 由 司于 1995 年 5 月推出的 序設(shè)計語言(以下簡稱言)和 臺的總稱。 臺由 擬機( 用編程接口( 稱 成。 用 編程 接口為 作系統(tǒng) 的標(biāo)準(zhǔn)接口。在硬件或操作系統(tǒng)平臺上安裝一個 臺之后, 用程序就可運行?,F(xiàn)在 臺已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。這樣 可以在各種系統(tǒng)中運行。 為三個體系 : 臺標(biāo)準(zhǔn)版 ), 臺企業(yè)版 ), 臺微型版 )。 我們使用的是 系。 優(yōu)秀特性有: 面向?qū)ο?、分布式、安全健壯、高度可移植性、體系結(jié)構(gòu)獨立、多線程等等,而且有良好的圖形界面和數(shù)據(jù)庫 口支持,這是我為什么選擇 言的主要原因。 一個全功能的開放源碼 的 以幫助開發(fā)人員編寫、編譯、調(diào)試和部署 用,并將版本控制和 輯融入其眾多功能之中。 它 由 司在 2000年創(chuàng)立,是開放源運動以及開發(fā)人員和客戶社區(qū)的家園。 前可以在 S X 平臺上進行開發(fā),并在 用許可 )范圍內(nèi)使用。 支持 平臺標(biāo)準(zhǔn)版 (用的創(chuàng)建、采用 2 層 及用于 2 層 用的 軟件的核心組的創(chuàng)建。此外, 新 版 還預(yù)裝了兩個 務(wù)器,即 而免除了繁瑣的配置和安裝過程。所有這些都為 發(fā)人員創(chuàng)造了一個可擴展的開放源多平臺的 支持他們在各自所選擇的環(huán)境中從事開發(fā)工作,如 基于 方便性和優(yōu)良特性,我們選定了它作為開發(fā)的平臺。 據(jù)庫無疑是目前最為強大的關(guān)系數(shù)據(jù)庫管理系統(tǒng) (一。近年來,數(shù)據(jù)庫領(lǐng)域幾乎總是處于領(lǐng)先地位。 產(chǎn)品非常優(yōu)秀,使用過 據(jù)庫的人對它的穩(wěn)定性、可靠性都會留下深刻的印象。 持很好,自 以后,只要 現(xiàn)新的版本,都會有相應(yīng)的 臺下的版本。 在以后的版本上,加了對 擬機,可以運行 序?qū)崿F(xiàn)對數(shù)據(jù)庫的配置管理、網(wǎng)絡(luò)連接、安 21 裝和卸載等操作。 目標(biāo)定位于高端工作站以及作為服務(wù)器的小型計算機 。 用服務(wù)器 102證的、最輕、最快、最具伸縮性的應(yīng)用服務(wù)器,提供了企業(yè)門戶軟件、無線支持、高速緩存、輕量級 擎、商 務(wù)智能、快速應(yīng)用開發(fā)、應(yīng)用與業(yè)務(wù)集成、 務(wù)等多種應(yīng)用開發(fā)功能,形成完整的電子商務(wù)應(yīng)用開發(fā)和部署環(huán)境。使用了 用服務(wù)器 10g 的用戶可以通過升級軟件來取代升級硬件,大大的節(jié)省了基礎(chǔ)設(shè)施的成本花費。 基于 先的技術(shù)、穩(wěn)定的性能、強大的 持,本系統(tǒng)選用了 據(jù)庫。 據(jù)庫連接)是一種用于執(zhí)行 句的 以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用 言編寫的類和接口組成。工具 /數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的 此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純 寫數(shù)據(jù)庫應(yīng)用程序 。 編程方法比較簡單,主要是分為裝載驅(qū)動、建立連接、建立 行查詢操作、返回結(jié)果集等。在此總結(jié)了本系統(tǒng)使用到的 和接口函數(shù)。 類名 主要成員函數(shù) 作用 取得數(shù)據(jù)庫連接 創(chuàng)建一個 執(zhí)行給定的 動到 獲取當(dāng)前行中某列值 表 6口類 22 據(jù)庫設(shè)計 我們的數(shù)據(jù)庫設(shè)計方法采用了 E R 圖方法,省略了復(fù)雜的需求分析,直接根據(jù)資料劃出 ,并且進行視圖集成,然后將 往關(guān)系模型轉(zhuǎn)化,轉(zhuǎn)化成 5 張表和一張視圖。最后使用 言進行數(shù)據(jù)庫錄入和采用 程對數(shù)據(jù)庫進行操作。 在本系統(tǒng)數(shù)據(jù)庫中,總共用到了駕駛員信息表、車輛信息表、駕照表、欠費信息單、用戶表共 5 張表,考慮到安全性和方便性,我們將上述前四個表集成一個視圖。這些表在一定程度上滿足了稽查的需求。以后根據(jù)實際情況還可以添加擴展。我們主要介紹前 4 張表的 和對應(yīng)的表信息。 車輛稽查系統(tǒng)數(shù)據(jù)庫 見圖 6 可以看出,駕駛員與駕照的關(guān)系是 1 比 1,而一個駕駛員可以擁有多于一 輛車,而一兩車的欠費信息可以有多個。按照關(guān)系型數(shù)據(jù)庫設(shè)計的原則,可以將 1 比 1,或者 1 比 此,我們得出了關(guān)系型數(shù)據(jù)庫需要的四張表。見表6666 23 1 N 1 1 駕駛員 出生日 期 身份證號 姓名 性別 住址 擁有 駕照 駕照編號 發(fā)證日期 有效日期 生效日期 發(fā)證機關(guān) 準(zhǔn)駕車型 擁有 車輛 車型 顏色 車牌號 購買地點 購買日期 欠費 欠費單 欠費日期 欠費原因 費用 欠費單 N 圖 6車輛稽查系統(tǒng)數(shù)據(jù)庫 24 表 6字段 類型 是否主鍵 是否外鍵 描述 8) 是 否 身份證號碼 0) 否 是 駕駛員駕照編號 0) 否 否 姓名 2) 否 否 性別 否 出生日期 0) 否 否 住址 表 6 字段 類型 是否主鍵 是否外鍵 描述 0) 是 否 駕駛員駕照編號 0) 否 否 準(zhǔn)駕車型 否 生效日期 否 有效日期 否 發(fā)證日期 0), 否 否 發(fā)證機關(guān) 表 6 字段 類型 是否主鍵 是否外鍵 描述 0) 是 否 車牌號 8) 否 是,參照 主 ) 否 否 車型 0) 否 否 車體顏色 0) 否 否 年檢 0) 否 否 年稅 否 購買日期 表 6 字段 類型 是否主鍵 是否外鍵 描述 0) 是 否 欠費單編號 00) 否 否 欠費原因 否 欠費日期 0) 否 否 欠費多少 25 服務(wù)器軟件詳細(xì)設(shè)計 服務(wù)器軟件的處理流程如圖 6。最底層是數(shù)據(jù)庫 高層是圖形界面層和面向終端的 接。之所以在最高層有兩個方向,是因為一方面服務(wù)器要處理來自 接,執(zhí)行數(shù)據(jù)庫查詢操作,而另一方面還需要提供本地的圖形界面可以對數(shù)據(jù)庫進行管理操作和對終端進行管理操作。 調(diào)用業(yè)務(wù)邏輯層,這一層是用于處理必要的信息轉(zhuǎn)化工作的,比如編碼轉(zhuǎn)換、加解密等功能,而將 傳來的字節(jié)轉(zhuǎn)化為 碼等。業(yè)務(wù)邏輯層最后通過調(diào)用數(shù)據(jù)庫訪問層執(zhí)行最后的數(shù)據(jù)庫連接、查詢、更新等操作。 業(yè)務(wù)邏輯層 數(shù)據(jù)庫引擎 圖形界面 數(shù)據(jù)庫 圖 6服務(wù)器軟件的處理流程 外界信息 終端信息緩沖器 日志記錄 日志記錄 數(shù)據(jù)庫視圖 數(shù)據(jù)庫操作 網(wǎng)監(jiān)控 26 主要是建立一個總服務(wù)器監(jiān)聽線程,然后對每個連接創(chuàng)建一個子服務(wù)器線程,處理與客戶端有關(guān)的 接,并且從 得的字節(jié)輸入到業(yè)務(wù)邏輯層,并把業(yè)務(wù)邏輯層送出來的數(shù)據(jù)回送給客戶端。說到底,這一層主要是完成數(shù)據(jù)的傳送和接收。如圖 6 業(yè)務(wù)邏輯層主要是一個中間轉(zhuǎn)換過程,主要為 服務(wù)。這一層必須先通過 后根據(jù)需要將解密后的信息轉(zhuǎn)化為 用的字符集,比如符集。最后將數(shù)據(jù)包發(fā)送給數(shù)據(jù)包處理器進行相應(yīng)的處理。有關(guān)數(shù)據(jù)包的格式我們在前面介 紹終端設(shè)計的時候說明了。在處理數(shù)據(jù)包過程中,需要訪問數(shù)據(jù)庫時候,就通過數(shù)據(jù)庫引擎進行數(shù)據(jù)庫訪問操作。 如圖 6示。 業(yè)務(wù)邏輯層 接收客戶端信息 返回服務(wù)器信息 接請求 接 服務(wù)器監(jiān)聽線程 服務(wù)線程 n 創(chuàng)建 圖 6 27 數(shù)據(jù)訪問層主要承擔(dān)所有的數(shù)據(jù)庫訪問操作,采用的技術(shù)主要是 術(shù),但提供了更大的封裝,并且它也提供了數(shù)據(jù)庫連接池可以處理多個連接的取得和釋放,使得效率更高。在數(shù)據(jù)庫訪問層中,起主要作用的是查詢控制器,它提供的大多數(shù)成員函數(shù)是訪問數(shù)據(jù)庫經(jīng)常需要用到的,包括查詢、更新、刪除操作等。 線程 n 線程 1 數(shù)據(jù)包處理器 數(shù)據(jù)庫引擎或 終端緩沖區(qū) 圖 6業(yè)務(wù)邏輯層 加解密引擎 編碼轉(zhuǎn)換器 查詢控制器 數(shù)據(jù)庫連接池 數(shù)據(jù)庫 請求連接 歸還連接 返回連接 建立連接 銷毀連接 返回連接 令 令執(zhí)行結(jié)果 圖 6數(shù)據(jù)庫訪問層 28 據(jù)包處理流程 數(shù)據(jù)包處理過程如下: 標(biāo)準(zhǔn)數(shù)據(jù)包 讀取條目數(shù) 條目數(shù) 1? 取操作類別 根據(jù)相應(yīng)的操作類別處理 執(zhí)行完畢 圖 6數(shù)據(jù)包處理流程 29 接口設(shè)計 按照代碼所屬的層次、所屬的包我們將使用到的各個自定義的類和相關(guān)的功能羅列出來。核心代碼的分析主要是分析關(guān)鍵的類的實現(xiàn)代碼。有關(guān)圖形界面的因為大部分代碼是自動生成的,而我們要做的只是添加相關(guān)的事件處理函數(shù),所以圖形界面的分析就省略了。 表 6系統(tǒng)所定義的類 所屬層次 所屬包 包含的類 類功能 服務(wù)器監(jiān)聽類,主程序入口 子服務(wù)線程類,線程入口 子服務(wù)器,處理與終端的 一切事宜 業(yè)務(wù)邏輯層 管理用戶登陸 用于信息組裝和轉(zhuǎn)換 編碼轉(zhuǎn)換類 與 接口類 加解密類 數(shù)據(jù)包處理器 數(shù)據(jù)庫訪問層 口 數(shù)據(jù)庫連接池操作接口 數(shù)據(jù)庫連接池操作類 據(jù)庫連接池管理類 存儲用戶表信息 存儲車輛、駕駛員信息 查詢控制器 圖形界面層 全網(wǎng)監(jiān)控 用于維護終端信息的緩沖區(qū) 用戶維護登陸用戶的 戶名、位置、手機號碼、終端標(biāo)識符等。并寫入文件,以作為日志記錄 30 面設(shè)計 界面設(shè)計應(yīng)該包含統(tǒng)一的數(shù)據(jù)庫查詢操作、管理全網(wǎng)終端的 志記錄、幫助菜單等等。下面是界面的一部分。 圖 6服務(wù)器圖形界面 31 7. 外觀設(shè)計 圖 7終端外觀設(shè)計 32 8. 可行性分析 本系統(tǒng)是一個基于嵌入式 術(shù)和無線通信技術(shù)的車輛稽查系統(tǒng),分為服務(wù)器和終端兩部分。本系統(tǒng)基于 C/S 模型,利用定制好的通信協(xié)議可以實現(xiàn)服務(wù)器和終端的通信。系統(tǒng)設(shè)計到 術(shù)、 術(shù)、數(shù)據(jù)庫技術(shù)、 作系統(tǒng)技術(shù)等一系列 技術(shù),技術(shù)難度高,系統(tǒng)復(fù)雜。然而,本系統(tǒng)可行性依然很高。 一、系統(tǒng)的設(shè)計良好。服務(wù)器和終端采用了明確定義好的通信協(xié)議,減少雙方互相依賴的關(guān)系,并且使得系統(tǒng)有良好的擴
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆四川省雙流藝體中學(xué)高一化學(xué)第二學(xué)期期末學(xué)業(yè)水平測試試題含解析
- 2025屆云南省曲靖市羅平縣一中化學(xué)高二下期末監(jiān)測模擬試題含解析
- 山西省孝義市2025屆化學(xué)高二下期末聯(lián)考模擬試題含解析
- 2025屆上海市上海交大附中高一化學(xué)第二學(xué)期期末復(fù)習(xí)檢測試題含解析
- 2025屆山東省蓬萊第二中學(xué)化學(xué)高二下期末學(xué)業(yè)質(zhì)量監(jiān)測試題含解析
- 吉林省舒蘭一中2025屆化學(xué)高一下期末復(fù)習(xí)檢測模擬試題含解析
- 湖北省當(dāng)陽市第二高級中學(xué)2025屆高一下化學(xué)期末達標(biāo)檢測試題含解析
- 福建泉州市2025年高二下化學(xué)期末達標(biāo)檢測試題含解析
- 機耕道路維護管理辦法
- 內(nèi)部成員沖突管理辦法
- 老舊住宅小區(qū)綜合整治裝飾裝修工程施工方案
- 小兒腸梗阻護理課件
- 2024-2025學(xué)年譯林版新七年級英語上冊Unit2《Hobbies》單元卷(含答案解析)
- 遼寧省大連市甘井子區(qū)2023-2024學(xué)年七年級下學(xué)期期末生物學(xué)試題(原卷版)
- 5國家機構(gòu)有哪些 第一課時(教學(xué)設(shè)計)部編版道德與法治六年級上冊
- AQ/T 1118-2021 礦山救援培訓(xùn)大綱及考核規(guī)范(正式版)
- 2024屆甘南市語文八年級第二學(xué)期期末聯(lián)考試題含解析
- 無人機航空測繪與后期制作 課件 第十二課時 現(xiàn)場飛行流程
- 2024年梅州市大埔縣重點中學(xué)小升初語文入學(xué)考試卷含答案
- 2022-2023學(xué)年北京市東城區(qū)高二(下)期末化學(xué)試卷(含解析)
- 防溺水老師培訓(xùn)課件
評論
0/150
提交評論