黃雪穎,牛 丹,李 濤,李 凡,薛裕峰
(1.東南大學(xué)自動(dòng)化學(xué)院,江蘇 南京 210096)(2.“復(fù)雜工程系統(tǒng)測(cè)量與控制”教育部重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210096)(3.江蘇聚力智能機(jī)械股份有限公司,江蘇 蘇州 215212)
隨著我國(guó)經(jīng)濟(jì)的發(fā)展和居民生活水平的逐步提高,越來(lái)越多的家庭擁有私家車,汽車保有量迅速增加帶來(lái)的“停車難”問(wèn)題日益突出[1]。人類社會(huì)的不斷進(jìn)步使得城市的規(guī)模逐漸擴(kuò)大,然而城市人口數(shù)量的劇增使得人均生存空間越來(lái)越小。如何高效、合理利用有限空間解決“停車難”成了一個(gè)亟需解決的問(wèn)題。因此,庫(kù)容量大且占地面積小的立體車庫(kù)應(yīng)運(yùn)而生[2]。
目前,我國(guó)一些經(jīng)濟(jì)發(fā)達(dá)且人口密度較大的城市,如北京、上海,已經(jīng)開始大力發(fā)展具有諸多優(yōu)勢(shì)的立體車庫(kù)[3]。但當(dāng)前的立體車庫(kù)大多沒有聯(lián)網(wǎng),沒有把車庫(kù)的車位信息和運(yùn)行信息上傳服務(wù)器,因此車庫(kù)運(yùn)營(yíng)方難以遠(yuǎn)程控制、管理車庫(kù)[4],存車用戶也無(wú)法遠(yuǎn)程查詢和預(yù)約車位。隨著“互聯(lián)網(wǎng)+”概念的提出,研發(fā)一款集立體車庫(kù)管理和車位預(yù)定查詢等功能于一體的立體車庫(kù)停車系統(tǒng)就顯得十分必要。
國(guó)內(nèi)有不少學(xué)者對(duì)這一問(wèn)題進(jìn)行了大量的研究,張志田等[5]提出了一種采用手機(jī) APP預(yù)約取車的方式,減少了用戶的停車等待時(shí)長(zhǎng)。劉秀芝等[6]提出通過(guò)手機(jī)上的APP軟件進(jìn)行車輛存取,方便車主取車,大大縮短了存取車時(shí)間。豐宇等[7]設(shè)計(jì)了一個(gè)多口進(jìn)出貨物存放式立體車庫(kù),減少了存車和取車時(shí)的等待時(shí)間,符合現(xiàn)代人的生活節(jié)奏。 但是上述研究主要是優(yōu)化用戶的存取車操作,對(duì)用戶預(yù)約車位、導(dǎo)航以及在線支付停車費(fèi)用,管理員遠(yuǎn)程管理車庫(kù)等功能都未涉及。因此對(duì)基于手機(jī)客戶端,集立體車庫(kù)管理和車位預(yù)定、查詢等功能于一體的立體車庫(kù)停車系統(tǒng)進(jìn)行研究就顯得很迫切。本文基于Android操作系統(tǒng),提出的基于Android的立體車庫(kù)停車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),是對(duì)現(xiàn)有的基于互聯(lián)網(wǎng)的立體車庫(kù)系統(tǒng)的一種擴(kuò)展和補(bǔ)充,對(duì)業(yè)界具有一定的參考意義[8]。
Android是Google開發(fā)的基于Linux平臺(tái)的開源手機(jī)操作系統(tǒng),分為應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層以及Linux內(nèi)核層[9]。Android基于Linux內(nèi)核,其核心系統(tǒng)服務(wù)都依賴于Linux內(nèi)核[10]。
客戶端需要請(qǐng)求網(wǎng)絡(luò),與服務(wù)器端進(jìn)行交互從而獲取數(shù)據(jù)。OkHttp是一個(gè)處理網(wǎng)絡(luò)請(qǐng)求的輕量級(jí)框架,提供了get請(qǐng)求、post請(qǐng)求等功能。使用該框架可以快速實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的數(shù)據(jù)交互。
首先創(chuàng)建一個(gè)OkHttpClient對(duì)象,如果是post請(qǐng)求,需要構(gòu)建FormBody,傳入?yún)?shù);如果是get請(qǐng)求,不需要構(gòu)建FormBody。接著構(gòu)造Request對(duì)象,并將Request封裝為Call。最后,以異步的方式去執(zhí)行請(qǐng)求,等待任務(wù)執(zhí)行完成,在Callback中即可得到結(jié)果。重寫回調(diào)方法,對(duì)結(jié)果進(jìn)行處理即可。
處理好不同數(shù)據(jù)模型之間的關(guān)系,減少數(shù)據(jù)冗余,對(duì)提高數(shù)據(jù)庫(kù)系統(tǒng)性能十分重要[11]。 E-R圖就是描述現(xiàn)實(shí)世界關(guān)系概念模型的有效方法[12]。本系統(tǒng)數(shù)據(jù)庫(kù)E-R圖如圖1所示。

圖1 數(shù)據(jù)庫(kù)E-R圖
通過(guò)對(duì)系統(tǒng)功能需求進(jìn)行分析,將立體車庫(kù)停車系統(tǒng)細(xì)分為用戶系統(tǒng)和管理員系統(tǒng)。系統(tǒng)功能模塊圖如圖2所示。

圖2 功能模塊圖
用戶系統(tǒng)包括4個(gè)模塊:登錄注冊(cè)模塊、訂單詳情顯示模塊、預(yù)約模塊和在線支付模塊。
1)登錄注冊(cè)模塊。登錄注冊(cè)模塊主要實(shí)現(xiàn)注冊(cè)、登錄、找回密碼、注銷等功能。未注冊(cè)用戶可通過(guò)可用的手機(jī)號(hào)碼進(jìn)行注冊(cè),通過(guò)短信驗(yàn)證后,就可以設(shè)置密碼并輸入用戶信息。已注冊(cè)用戶正確輸入用戶名和密碼后就可以成功登錄該系統(tǒng)。已注冊(cè)用戶如果忘記密碼,可通過(guò)該模塊重新設(shè)置密碼。該功能模塊的流程圖如圖3所示,界面截圖如圖4所示。

圖3 登錄注冊(cè)模塊流程圖

圖4 用戶系統(tǒng)登錄界面
2)訂單詳情顯示模塊。訂單詳情顯示模塊主要的功能是顯示用戶當(dāng)前的訂單狀態(tài),讓用戶實(shí)現(xiàn)存取車操作。用戶在該模塊通過(guò)點(diǎn)擊相關(guān)按鈕,就可以快速便捷地實(shí)現(xiàn)存取車操作。該功能模塊的流程圖如圖5所示,界面截圖如圖6所示。
3)預(yù)約模塊。該模塊包括預(yù)約、查詢預(yù)約和取消預(yù)約功能。用戶成功登錄后可進(jìn)入主界面并定位到用戶當(dāng)前位置。主界面的開發(fā)是基于百度地圖開放的第三方SDK庫(kù),使用添加標(biāo)注的方法,將車庫(kù)以標(biāo)注的形式在地圖上顯示出來(lái),并給標(biāo)注添加點(diǎn)擊事件,用戶點(diǎn)擊標(biāo)注,就可以彈出相關(guān)的信息框,用以顯示車庫(kù)的具體信息,用戶點(diǎn)擊想預(yù)約的車庫(kù),就可以預(yù)約車位。同時(shí)用戶也可以查詢到當(dāng)前所有預(yù)約,并可取消預(yù)約。預(yù)約模塊的流程圖如圖7所示,界面截圖如圖8所示。

圖5 訂單詳情顯示模塊流程圖

圖6 用戶系統(tǒng)訂單詳情界面

圖7 預(yù)約模塊流程
4)在線支付模塊。該功能模塊通過(guò)調(diào)用微信和支付寶提供的SDK實(shí)現(xiàn)微信支付和支付寶支付,用戶可直接在線支付停車費(fèi)用,十分方便。
管理員系統(tǒng)主要包括4個(gè)模塊:登錄模塊、車位剩余情況顯示模塊、車庫(kù)運(yùn)行情況顯示模塊和所有訂單數(shù)據(jù)顯示模塊。
1)登錄模塊。該模塊主要實(shí)現(xiàn)登錄以及修改密碼等功能。管理員正確輸入用戶名和密碼后,就可以成功登錄管理員系統(tǒng)。管理員登錄后可以通過(guò)該功能模塊進(jìn)行密碼的修改。
2)車位剩余情況顯示模塊。該模塊的功能是在車位剩余情況界面下顯示各個(gè)車庫(kù)的車位使用情況,即通過(guò)適配器將車庫(kù)信息表中相應(yīng)字段的數(shù)據(jù)顯示在ListView界面組件上[13]。在適配器中先設(shè)置數(shù)據(jù)的布局格式,然后將相應(yīng)的組件實(shí)例化,并且設(shè)置數(shù)據(jù)表中的值,從而實(shí)現(xiàn)動(dòng)態(tài)地加載顯示數(shù)據(jù)的功能,界面截圖如圖9所示。

圖8 用戶系統(tǒng)預(yù)約界面 圖9 車位剩余情況界面
3)車庫(kù)運(yùn)行情況顯示模塊。通過(guò)該功能模塊,管理員可以查看車庫(kù)的運(yùn)行情況,如果發(fā)生故障,可以第一時(shí)間發(fā)現(xiàn)并做出反應(yīng),界面截圖如圖10所示。
4)所有訂單數(shù)據(jù)顯示模塊。通過(guò)該功能模塊,管理員可以查看該車庫(kù)的所有訂單信息,界面截圖如圖11所示。

圖10 車庫(kù)運(yùn)行情況界面 圖11 所有訂單信息界面
本文設(shè)計(jì)與實(shí)現(xiàn)了基于Android的立體車庫(kù)停車系統(tǒng),測(cè)試表明,該系統(tǒng)的整體性能較好、功能較完善。本文的創(chuàng)新點(diǎn)如下:1)通過(guò)調(diào)用百度地圖、支付寶以及微信等接口,實(shí)現(xiàn)了多個(gè)功能,為用戶和管理員提供了很大的便利。2)實(shí)現(xiàn)了基于Android的集用戶系統(tǒng)和管理員系統(tǒng)于一身的立體車庫(kù)停車系統(tǒng),對(duì)解決“停車難”、推進(jìn)立體車庫(kù)的大力發(fā)展可起到較大的推動(dòng)作用。