李飛翔 商枝江
摘要:針對(duì)方艙內(nèi)部的應(yīng)用環(huán)境,對(duì)方艙控制系統(tǒng)進(jìn)行分析和研究,提出一種低成本、易擴(kuò)展,適用于方艙應(yīng)用的控制系統(tǒng)?;谥悄苁謾C(jī)平臺(tái)或平板電腦設(shè)計(jì)了一套Android智能手機(jī)方艙控制系統(tǒng),利用Android提供的各種資源建立智能放艙控制終端軟件。該系統(tǒng)既可應(yīng)用于普通的方艙,也可用于應(yīng)急指揮方艙,實(shí)現(xiàn)了方艙內(nèi)部設(shè)備的遠(yuǎn)程控制和本地控制相結(jié)合。結(jié)果表明:該系統(tǒng)硬件設(shè)備符合國產(chǎn)化要求、成本低、易擴(kuò)展。
關(guān)鍵詞:Android;方艙;SfotAP;嵌入式系統(tǒng)
中圖分類號(hào):TP316;TP273 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2020)07-0164-03
0 引言
隨著5G通信技術(shù)的發(fā)展,各類移動(dòng)智能終端相繼問世,以Android平臺(tái)為代表的智能手機(jī)正伴隨著5G技術(shù)開始獲得人們的廣泛接受。移動(dòng)終端設(shè)備已經(jīng)跨越了僅僅將通信作為唯一目標(biāo)的模式,而形成具有廣泛應(yīng)用價(jià)值的控制、管理與計(jì)算的云服務(wù)平臺(tái)[1]。將智能手機(jī)與系統(tǒng)控制相結(jié)合,為實(shí)現(xiàn)便攜移動(dòng)的通信方式提供了支撐,本文實(shí)現(xiàn)了一種基于Android手機(jī)的無線遠(yuǎn)程控制系統(tǒng),系統(tǒng)中智能手機(jī)可利用WIFI與方艙內(nèi)各類設(shè)備進(jìn)行互聯(lián)控制。特別是物聯(lián)網(wǎng)(IOT)開發(fā)與應(yīng)用中得到廣泛的使用[2],將對(duì)方艙內(nèi)工作模式產(chǎn)生巨大的影響。
1 系統(tǒng)的總體設(shè)計(jì)
智能方艙控制系統(tǒng)主要包括Android客戶端和集中控制服務(wù)器兩部分,Android智能手機(jī)安裝控制程序以后,用戶就可以通過觸屏和各種設(shè)備進(jìn)行交互。ARM嵌入式服務(wù)系統(tǒng)負(fù)責(zé)將Android智能手機(jī)的操作指令轉(zhuǎn)發(fā)到方艙設(shè)備,并將方艙設(shè)備的各類狀態(tài)信息實(shí)時(shí)轉(zhuǎn)發(fā)到Android智能手機(jī)上。系統(tǒng)的總體網(wǎng)絡(luò)示意圖如圖1所示。
Android智能手機(jī)通過WIFI連接到方艙網(wǎng)絡(luò),ARM嵌入式系統(tǒng)具有無線AP功能,通過以太網(wǎng)連接到方艙網(wǎng)絡(luò)[3],通過IP接入器連接到方艙內(nèi)各個(gè)設(shè)備(攝像頭、視頻矩陣、液晶電視等),當(dāng)用戶在智能Android智能手機(jī)上進(jìn)行操作后,集中控制服務(wù)器接收到用戶的操作指令后,將操作指令通過AP轉(zhuǎn)發(fā)器發(fā)送到方艙內(nèi)相相關(guān)設(shè)備,方艙設(shè)備接收到用戶的操作指令,執(zhí)行指定功能,同時(shí)將設(shè)備的狀態(tài)信息返回到集中控制服務(wù)器的接受端,從而實(shí)現(xiàn)智能手機(jī)對(duì)方艙內(nèi)各種設(shè)備的指令控制[4-5]。
2 嵌入式模塊的設(shè)計(jì)
系統(tǒng)硬件平臺(tái)是基于ARM Mali-T860架構(gòu)的處理器瑞芯微RK3399,主頻達(dá)1.8GHz,具備多種數(shù)據(jù)通信接口,USB3.0,PCIE高性能設(shè)備接口,支持常用外接設(shè)備,接口豐富,性能穩(wěn)定。支持 Android、Linux、Ubuntu 等開源操作系統(tǒng),可以移植開源項(xiàng)目來實(shí)現(xiàn)方艙內(nèi)設(shè)備的控制功能。
2.1 嵌入式Linux移植
為了達(dá)到方艙的系統(tǒng)實(shí)時(shí)性的要求,針對(duì)RK3399開發(fā)平臺(tái),需要對(duì)Linux做一定的配置和裁剪,再安裝到RK339平臺(tái)中。開發(fā)板交叉編譯器的PC機(jī)上,對(duì)Linux源碼進(jìn)行修改配置,包括修改編譯文件和配置文件,選擇對(duì)艙內(nèi)各個(gè)設(shè)備驅(qū)動(dòng)。完成配置之后,內(nèi)核進(jìn)行重編譯,生成方艙定制的內(nèi)核鏡像。
2.2 無線網(wǎng)卡AP驅(qū)動(dòng)移植
系統(tǒng)所使用的RoHS GWF-3E無線網(wǎng)卡,驅(qū)動(dòng)分為STA驅(qū)動(dòng)和SoftAP驅(qū)動(dòng)兩種,STA驅(qū)動(dòng)支持無線網(wǎng)卡工作在STA模式下,而SoftAP的驅(qū)動(dòng)支持無線網(wǎng)卡工作在軟AP的模式下,可以將RK3399嵌入式服務(wù)器作為一個(gè)軟的接入點(diǎn),Android智能手機(jī)通過RK3399嵌入式服務(wù)器完成對(duì)方艙內(nèi)部各個(gè)設(shè)備的控制。
下面對(duì)SoftAP驅(qū)動(dòng)進(jìn)行移植:
(1)將RK3399_SoftAP_v2.4.0.1_DBA,dnsmasq- 2.65,wireless_tools.29三個(gè)文件放入/opt/wifiap/目錄;
(2)在RK3399_SoftAP_v2.4.0.1_DBA驅(qū)動(dòng)中,有MODULE、NETIF、UTIL三個(gè)文件,修改文件中的Makefile,內(nèi)容如下,修改完成后進(jìn)行編譯:
CROSS_COMPILE=arm-linux
(3)編譯通過后,將三個(gè)文件中分別生成的可加載模塊,RK3399ap.ko,rtutil3070ap.ko,rtnet3070ap.ko。通過USB接口將這三個(gè)模塊下載到S3C2440目標(biāo)板的/usr/lib/softap目錄下;
(4)拷貝dnsmasq到/usr/sbin,修改dnsmasq可執(zhí)行權(quán)限chmod+xdnsmasq;
(5)運(yùn)行腳本文件startSoftAp。腳本文件中包含的內(nèi)容如下:
dnsmasq -C/etc/softap/dnsmasq.conf ?//開啟dns和dhcpq服務(wù)
echo 1>/proc/sys/net/ipv4/ip_forward ? //開啟路由
(6)利用iwpriv配置SoftAP認(rèn)證信息。
Iwpriv ra0 set SSID = ControlerAP
3 智能方艙客戶端軟件設(shè)計(jì)
3.1 Android客戶端用戶界面
Android手機(jī)方艙控制程序主界面如圖2所示,圖中包含有攝像頭、空調(diào)、云臺(tái)、液晶電視、矩陣、系統(tǒng)設(shè)置,可以選擇要進(jìn)行控制的設(shè)備進(jìn)行操作[6]。
3.2 網(wǎng)絡(luò)通信
系統(tǒng)的通信網(wǎng)絡(luò)部分采用Client/Server的結(jié)構(gòu)來實(shí)現(xiàn),服務(wù)器與客戶端通過Socket進(jìn)行通信??蛻舳送ㄐ懦绦蛄鞒滩襟E如下:(1)初始化;(2)創(chuàng)建Socket長連接;(3)連接Server服務(wù)器;(4)發(fā)送控制指令;(5)結(jié)束。
為實(shí)現(xiàn)智能集控服務(wù)器與下車系統(tǒng)的手持端實(shí)現(xiàn)有效、完整、安全的通信,指定本協(xié)議規(guī)范。
通信協(xié)議規(guī)范如下:(1)所有的命令及數(shù)據(jù)報(bào)文均以ASCII形式傳送;(2)數(shù)據(jù)格式如表1。
通信協(xié)議操作指令格式的有關(guān)說明如下:1)01幀頭:0xCE;2)02請(qǐng)求位:請(qǐng)求ID;3)03手持終端地址:用于標(biāo)識(shí)當(dāng)前操作指令發(fā)送給與智能集控服務(wù)器相連接的任何類終端設(shè)備,以保持每個(gè)手持端的唯一性;如空調(diào)為0x01;4)04設(shè)備種類:用于標(biāo)示與智能集控服務(wù)器相連接的伺類設(shè)備;5)05設(shè)備地址:由設(shè)備廠商提供,用于區(qū)分同類的多個(gè)設(shè)備,保持其唯一性;6)06-08數(shù)據(jù)域1~數(shù)據(jù)域3:用于說明指令碼的操作參見具體設(shè)備協(xié)議,默認(rèn)設(shè)置均為0x00;如空調(diào)工作在制冷模式為0x03 0x00 0x00;7)09結(jié)束位:0x28。
控制空調(diào)工作在制冷模式的數(shù)據(jù)格式見表2。
3.3 數(shù)據(jù)庫
由于方艙中各個(gè)設(shè)備狀態(tài)的信息較少,采用Android平臺(tái)的SQLite數(shù)據(jù)庫。在系統(tǒng)設(shè)計(jì)中直接調(diào)用數(shù)據(jù)庫的API接口,即可實(shí)現(xiàn)數(shù)據(jù)的增刪查改等數(shù)據(jù)操作,具備易用性、可移植性、高效性和高可靠性。
數(shù)據(jù)庫主要存儲(chǔ)如下信息:方艙批號(hào),各個(gè)設(shè)備類型,設(shè)備的各類狀態(tài)信息。
4 結(jié)語
將編譯的手機(jī)應(yīng)用App軟件成功安裝,經(jīng)反復(fù)測試,通過方艙內(nèi)部通信網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)方艙內(nèi)設(shè)備的監(jiān)視和控制,實(shí)現(xiàn)集中控制和管理。
本控制系統(tǒng)采用智能終端控制方式+嵌入式服務(wù)器,這種方式采用的終端軟件具有易移植和通用性,市場的應(yīng)用價(jià)值較高,便于推廣,本系統(tǒng)所需硬件系統(tǒng)符合國產(chǎn)化要求。
參考文獻(xiàn)
[1] 王朝華,陳德艷,黃國宏,等.基于Android的智能家居系統(tǒng)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012,22(6):225-229.
[2] 于輝,蔣飛,趙克儉.物聯(lián)網(wǎng)軍事應(yīng)用分析[J].指揮信息系統(tǒng)與技術(shù),2011,2(5):6-10.
[3] 黃學(xué)沛,張燕.基于Android的多維級(jí)聯(lián)定位技術(shù)的研究與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2016(7):38-41.
[4] 李英民.指揮控制系統(tǒng)方艙噪聲分析及降噪設(shè)計(jì)[J].指揮信息系統(tǒng)與技術(shù),2010,3(4):77-80.
[5] 楊業(yè)令.基于物聯(lián)網(wǎng)的智慧家庭系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2013.
[6] 趙亮,張維.基于Android技術(shù)的界面設(shè)計(jì)與研究[J].電腦知識(shí)與技術(shù),2009,5(29):8183-8185.
數(shù)字技術(shù)與應(yīng)用2020年7期