湯致遠(yuǎn) 沈亮 余子龍 張玲 吳有龍
摘 要:為了更好地智能化管理寵物和尋找丟失的寵物,本系統(tǒng)采用Python、Java、北斗定位、無線網(wǎng)絡(luò)通信等相關(guān)技術(shù),可以實(shí)時獲取寵物的位置信息;基于樹莓派設(shè)計(jì)出了一種基于北斗定位的智能寵物防丟器,實(shí)現(xiàn)了電子圍欄管理、實(shí)時查看寵物位置信息以及寵物丟失后導(dǎo)航尋回的功能。
關(guān)鍵詞:北斗定位;防丟失;智能穿戴設(shè)備;樹莓派;無線通信;物聯(lián)網(wǎng)
中圖分類號:TP79;TN927文獻(xiàn)標(biāo)識碼:A文章編號:2095-1302(2020)11-00-02
0 引 言
隨著社會經(jīng)濟(jì)的快速發(fā)展,人民生活水平逐步提高,家養(yǎng)貓、狗等寵物已經(jīng)成為了一些家庭成員中的重要組成。而且隨著人工智能、大數(shù)據(jù)和物聯(lián)網(wǎng)等技術(shù)的飛速發(fā)展,智能穿戴設(shè)備也在迅速的更新?lián)Q代,如運(yùn)動手環(huán)、手表以及智能眼鏡等。但是在目前市場上,寵物所用的智能可穿戴設(shè)備還屬于新興事物[1]。
文獻(xiàn)[2]所提出的方案系統(tǒng)在設(shè)計(jì)時,使用了GPS導(dǎo)航和藍(lán)牙連接手機(jī)客戶端來實(shí)現(xiàn)對寵物的位置和健康狀況管理;文獻(xiàn)[3]中提到的系統(tǒng)使用MQTT協(xié)議上傳位置信息,可遠(yuǎn)程查詢寵物的位置信息。然而,隨著我國北斗衛(wèi)星導(dǎo)航系統(tǒng)的全球覆蓋,基于北斗的各種研究也在迅猛發(fā)展[4]?;谏鲜鲅芯?,本文在兼顧遠(yuǎn)程數(shù)據(jù)傳輸和客戶端交互的基礎(chǔ)上,添加了電子圍欄、POI搜索、北斗定位以及使用最為廣泛的4G傳輸,實(shí)現(xiàn)了在寵物丟失之前就能提前預(yù)警,以及在寵物尋回后能夠及時就醫(yī)等功能。
1 系統(tǒng)設(shè)計(jì)
該系統(tǒng)由硬件、軟件和云服務(wù)器三部分組成。硬件部分是載有北斗和4G模塊的樹莓派,可采集數(shù)據(jù)并傳輸信號至云端服務(wù)器;軟件部分主要通過與服務(wù)器端的通信獲取硬件所在的實(shí)時位置信息,并結(jié)合軟件實(shí)現(xiàn)電子圍欄、實(shí)時位置顯示、導(dǎo)航和興趣點(diǎn)搜索功能;云服務(wù)器部分主要實(shí)現(xiàn)位置信息和用戶賬號密碼的存取。系統(tǒng)通過北斗與GPS雙模芯片獲取樹莓派的實(shí)時位置信息,通過華為4G模塊訪問網(wǎng)絡(luò),阿里云服務(wù)器數(shù)據(jù)庫通過Socket通信獲取和發(fā)送位置信息,以及發(fā)送用于校驗(yàn)的用戶名密碼,最后經(jīng)由高德API技術(shù)顯示在Android客戶端的地圖頁面上。用戶可以通過登錄Android客戶端訪問數(shù)據(jù)庫,查詢相關(guān)信息以及進(jìn)行后續(xù)的導(dǎo)航操作。
基于北斗的智能寵物防丟器整體結(jié)構(gòu)如圖1所示。本系統(tǒng)使用MySQL作為存儲和管理數(shù)據(jù)的數(shù)據(jù)庫,阿里云服務(wù)器的Ubuntu系統(tǒng)作為搭載整個服務(wù)器的系統(tǒng),通過PyCharm完成后臺服務(wù)器以及樹莓派的控制編碼編寫,通過Android Studio完成安卓客戶端的后臺控制代碼以及前段頁面代碼的編寫。
2 相關(guān)技術(shù)
2.1 北斗定位技術(shù)
北斗衛(wèi)星導(dǎo)航系統(tǒng)是我國自主研發(fā)的全球衛(wèi)星導(dǎo)航系統(tǒng),也是繼GPS、GLONASS之后第三個成熟的衛(wèi)星導(dǎo)航系統(tǒng)。北斗衛(wèi)星定位系統(tǒng)通過混合星座的布局,優(yōu)化了亞太上方的星座結(jié)構(gòu),使得亞太地區(qū)的導(dǎo)航信號更強(qiáng)、定位精度更高[5-6]。
2.2 安卓應(yīng)用開發(fā)及發(fā)布
安卓是一種基于Linux內(nèi)核的自由及開放源代碼的操作系統(tǒng),主要用于移動設(shè)備,比如智能手機(jī)和平板電腦。它由Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)[7]。本系統(tǒng)使用Android Studio進(jìn)行開發(fā),系統(tǒng)語言基于Java,布局語言基于XML。Android Studio是谷歌開發(fā)的Android集成開發(fā)工具,用于開發(fā)和調(diào)試,代碼完成后可直接打包生成安裝文件通過各種渠道發(fā)布。
2.3 數(shù)據(jù)庫與數(shù)據(jù)庫服務(wù)
數(shù)據(jù)庫允許用戶通過簡單的命令“增刪改查”想要存儲的信息,并且可以通過開放的系統(tǒng)端口進(jìn)行遠(yuǎn)程連接[8]。數(shù)據(jù)庫分為關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫。本系統(tǒng)使用的MySQL數(shù)據(jù)庫即為使用最廣泛的關(guān)系型數(shù)據(jù)庫[9],能存儲定位經(jīng)緯度信息。此外,它在連接安卓客戶端時能在查找后返回實(shí)時經(jīng)緯度數(shù)據(jù),使用高德API顯示在手機(jī)上,從而使定位和后期處理變得更加方便。
2.4 網(wǎng)絡(luò)通信技術(shù)
網(wǎng)絡(luò)通信通過互聯(lián)網(wǎng)將多臺設(shè)備連接在一起,以達(dá)到數(shù)據(jù)共享的目的[10]。該系統(tǒng)使用套接字通信,即Socket通信,本質(zhì)是基于TCP/IP的通信方式[11]。
3 軟件功能闡述
用戶打開安卓客戶端后,輸入用戶名、密碼,如果校驗(yàn)通過則會跳轉(zhuǎn)到模式選擇。目前模式選擇頁面可選的模式有電子圍欄和直接導(dǎo)航兩種。
(1)選擇電子圍欄,輸入期望的距離閾值,確定并且開啟電子圍欄。超過閾值則會在安卓系統(tǒng)的通知中心推送一條通知示警,此時跳轉(zhuǎn)到直接導(dǎo)航模式。
(2)選擇直接導(dǎo)航模式,則會跳轉(zhuǎn)到經(jīng)緯度確認(rèn)頁面,點(diǎn)擊刷新位置后會顯示目前硬件端所在經(jīng)緯度以及軟件端所處經(jīng)緯度。如果到達(dá)目的地發(fā)現(xiàn)寵物發(fā)生意外,可以點(diǎn)擊當(dāng)前頁面最上方的按鈕跳轉(zhuǎn)到周邊興趣點(diǎn)搜索。興趣點(diǎn)搜索界面如圖2所示。
興趣點(diǎn)搜索關(guān)鍵詞為確定的關(guān)鍵詞“寵物”,距離為2 km。點(diǎn)擊興趣點(diǎn)搜索后,客戶端上的地圖控件將標(biāo)注硬件端附近2 km內(nèi)的寵物醫(yī)院,點(diǎn)擊可以看見其詳細(xì)地址以及距離。點(diǎn)擊詳情即可跳轉(zhuǎn)到如圖3所示的路徑規(guī)劃界面。
由于2 km范圍比較大,導(dǎo)航頁面會提供兩種選擇,分別是步行導(dǎo)航和駕車導(dǎo)航。選擇任意一種導(dǎo)航模式都會有路線預(yù)覽,并且有取消和開始導(dǎo)航按鈕。點(diǎn)擊取消則復(fù)位,點(diǎn)擊確認(rèn)則跳轉(zhuǎn)到導(dǎo)航詳情頁。
4 硬件設(shè)計(jì)
本系統(tǒng)硬件核心使用樹莓派4B。樹莓派4B是一款基于ARM架構(gòu)的微型電腦主板,MicroSD卡為內(nèi)存硬盤,可以外接鼠標(biāo)、鍵盤、移動硬盤、網(wǎng)線等;可以安裝Linux、Debian系統(tǒng),支持Python、Java、C/C++等語言編程開發(fā)。其尺寸較信用卡稍大,功耗極小,具備所有PC的基本功能[12]。樹莓派實(shí)物以及電路連接如圖4所示。
硬件系統(tǒng)工作流程如圖5所示。各模塊上電工作,樹莓派在后臺以秒為單位循環(huán)執(zhí)行程序指令。該程序主要實(shí)現(xiàn)的是解碼北斗芯片傳回的數(shù)據(jù),并且截取出經(jīng)緯度信息,通過4G上傳至云服務(wù)器數(shù)據(jù)庫。
5 結(jié) 語
本系統(tǒng)設(shè)計(jì)了基于北斗的智能寵物防丟器,主要實(shí)現(xiàn)了在移動端設(shè)置電子圍欄,實(shí)時監(jiān)控寵物位置,及寵物丟失后導(dǎo)航尋回并在寵物尋回時導(dǎo)航尋找附近寵物醫(yī)院等功能。小微化的硬件系統(tǒng)實(shí)現(xiàn)了穿戴設(shè)備的方便易攜,安卓客戶端實(shí)現(xiàn)了對寵物位置的管理和監(jiān)控,高速網(wǎng)絡(luò)連接也可以實(shí)現(xiàn)管理和監(jiān)控的強(qiáng)時效性。本系統(tǒng)相比于傳統(tǒng)的寵物防丟手段得到顯著優(yōu)化,提高了系統(tǒng)性能與檢測效率。
參考文獻(xiàn)
[1]孫芷鈺,劉瑋. 寵物出行智能產(chǎn)品設(shè)計(jì)研究[J]. 藝術(shù)科技,2019,32(5):215-216.
[2]胡月文.智能寵物脖環(huán)設(shè)計(jì)與應(yīng)用[J].電聲技術(shù),2019,43(9):58-59.
[3]林志舟,任凱,葉傲斌.基于MQTT的智能寵物追蹤系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2020,29(2):124-128.
[4]陳誕瑋,謝柳青,姜玉龍,等.基于北斗定位的智能藥箱[J].物聯(lián)網(wǎng)技術(shù),2019,9(9):94-96.
[5]陸明泉,姚錚,張嘉怡,等. 北斗衛(wèi)星導(dǎo)航系統(tǒng)信號設(shè)計(jì)的進(jìn)展及發(fā)展趨勢[J].衛(wèi)星應(yīng)用,2015,6(12):27-31.
[6]左朝陽,吳玉彬,陳坡. 北斗衛(wèi)星導(dǎo)航系統(tǒng)在亞太地區(qū)的服務(wù)性能評估[J]. 航天控制,2019,37(3):73-79 .
[7]張得震.基于現(xiàn)代安卓系統(tǒng)的開發(fā)、技術(shù)創(chuàng)新及市場化發(fā)展研究[J].數(shù)字技術(shù)與應(yīng)用,2020,38(1):200.
[8]余祖玉,劉國童,姚超,等.數(shù)據(jù)庫系統(tǒng)筑起網(wǎng)絡(luò)安全護(hù)城河[J].科學(xué)技術(shù)創(chuàng)新,2019,23(33):62-63.
[9]肖宇.關(guān)系型與非關(guān)系型數(shù)據(jù)庫融合的數(shù)據(jù)庫課程建設(shè)[J].福建電腦,2019,35(12):111-112.
[10]李曉平.數(shù)據(jù)庫下的網(wǎng)絡(luò)通信信息管理系統(tǒng)分析[J].電腦知識與技術(shù),2020,16(6):14-15.
[11]張曉娜,常樂冉,吳煒,等.Linux系統(tǒng)下Socket通信的實(shí)現(xiàn)[J].電聲技術(shù),2020,44(1):87-89.
[12] NADAF R A,HATTURE S K,CHALLIGIDAD P S,et al. Smart mirror using raspberry pi for human monitoring and home security [M]. advanced informatics for computing research,2019.