吳逸豪, 何銘浩, 彭曉宏, 陳宇涵, 吳惠敏
(1.北京工業(yè)大學 信息學部,北京 100124; 2.北京工業(yè)大學 文法學部,北京 100124;3.北京兆維數(shù)碼科技有限公司,北京 100015)
如今世界上中大型城市的寵物管理問題上是一個困擾人們許久的問題。問題主要集中在寵物各類信息檔案登記不完善、寵物外出時常走失或被盜。目前,普遍的登記使用傳統(tǒng)的紙質(zhì)登記本進行寵物信息注冊、防疫登記等,這種方法較為原始且靈活性較差,可操作性不強,且易丟失。市面上的一種電子項圈可作為寵物行動軌跡跟蹤工具使用,但其無法存儲或直接顯示寵物的相應身份信息。在我國一些城市推廣的可植入電子芯片則普遍存在無法主動定位、射頻識別(radio frequency identification,RFID)標簽若無特定設備難以讀取信息、植入過程給寵物帶來痛苦等多方面問題。
為解決當前寵物管理上的上述難題,本文提出一種新型物聯(lián)網(wǎng)(Internet of Things,IoT)智慧項圈方案,使用定位、射頻、IoT等技術(shù),以此改善目前的狀況。
智能項圈包含如下主要功能:身份信息顯示、寵物信息登記和查詢、定位追蹤、項圈防盜。主控模塊采用STM32L151C6T6低功耗處理器,使用14500鋰電池進行供電。智能項圈在正常使用中,電子墨水屏可顯示自定義寵物信息,內(nèi)部的EEPROM可用來存儲身份以及防疫信息,并實時進行GPS軌跡跟蹤,并通過移遠窄帶(narrow band,NB)-IoT模塊將位置及軌跡信息上傳至服務器。整體系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
STM32L151C6T6屬于低壓低功耗芯片,電源電壓在1.65~3.6 V之間。本系統(tǒng)中電源模塊選擇SPX1117M3—3.3三端穩(wěn)壓器,提供3.3 V電壓輸出[1]。每個穩(wěn)壓管輸出端均設置大小兩個電容濾波。為防止穩(wěn)壓器承載功率過大,防止器件互相干擾,系統(tǒng)中設置了三個穩(wěn)壓器。其中一個專門為CPU提供電源,另外兩個為外圍模塊提供電源。
為滿足寵物項圈系統(tǒng)電池的需求,充電電路部分選取TP4056作為充電模塊芯片。該芯片可提供4.2 V的充電電壓,外部電源電壓輸入為-0.3~8 V[2]。電源接口使用USB Type-C端口,該端口可支持的充電功率更大,且順應時代潮流。當電池正在充電時,與電池相連的BAT管腳輸出4.2 V充電電壓,并提示核心模塊系統(tǒng)處于充電狀態(tài)。
GPS模塊選用U-blox公司的NEO—6芯片,其擁有高定位精度,高集成度和低功耗的特點。整體模塊以NEO—6模塊以及外圍電路構(gòu)成。天線部分是由無源天線通過AT2659射頻放大器接入NEO—6芯片。其電路如圖2所示。
圖2 GPS模塊電路
GPS模塊的作用是定位寵物的位置并通過IoT模塊向服務器上傳數(shù)據(jù),實現(xiàn)軌跡跟蹤的功能。此外,GPS模塊也可配合服務器端的相關(guān)設置實現(xiàn)電子圍欄的功能以限制寵物活動范圍。在系統(tǒng)進入丟失模式后,上傳位置信息的頻率會上升,以便于主人或公安機關(guān)的精準定位。
本系統(tǒng)中IoT部分選用NB-IoT通信標準。NB-IoT具有低延時、低功耗的特點,并支持在4G或5G網(wǎng)絡環(huán)境下應用,信息傳輸速度更快[3,4]。IoT模塊使用BC95模塊,具有性能高、功耗低的特點[5],非常適合在本場景下應用。IoT模塊主要由電源、天線、SIM卡、通信端口組成。其作用是將項圈所在寵物的位置信息等數(shù)據(jù)傳遞到云端服務器。此外,在寵物走失或被盜、項圈電量不足或項圈遭到強拆時,會向服務器發(fā)出報警信號。在手機、網(wǎng)頁等客戶端向項圈發(fā)出響鈴指令時,IoT模塊也會將此指令發(fā)送至單片機進行處理。IoT模塊電路原理圖如圖3所示。
圖3 IoT模塊電路
本設備配備了近場通信(near field communication,NFC)技術(shù),可使各種電子設備之間進行點對點通信[6]。其功耗低、成本低,使用智能手機即可快速便捷地讀寫信息。
NFC模塊的作用是使用無接觸的方法快速將寵物的身份等信息傳遞給終端設備。其模塊選擇意法半導體公司生產(chǎn)的M24LR64作為主控芯片。該芯片有線連接部分使用I2C通信,內(nèi)建8kB的EEPROM。具有三種工作模式:僅I2C、僅NFC、I2C與NFC。僅I2C模式時,單片機通過I2C總線對內(nèi)部的EEPROM進行數(shù)據(jù)訪問;僅NFC標簽模式時,外部設備通過射頻通信對內(nèi)部的EEPROM進行數(shù)據(jù)訪問,無需外部供電;在I2C與NFC模式時,外部設備與單片機均可對內(nèi)部的EEPROM進行訪問[7,8]。
數(shù)據(jù)儲存模塊用于儲存寵物的身份信息、防疫信息、主人的身份信息、系統(tǒng)日志等數(shù)據(jù),用于NFC、IoT模塊的快速數(shù)據(jù)訪問以及送顯等操作。在NFC模塊、IoT模塊、顯示模塊進行數(shù)據(jù)讀取時,單片機會直接訪問此存儲器。數(shù)據(jù)均以純文本格式儲存,存儲器選用24C64 EEPROM,其64 kB的容量對于純文本形式的數(shù)據(jù)存儲是非常充足的。
顯示屏幕使用一塊2.13寸122×250分辨率的電子墨水屏幕,放置于項圈上方,可用于顯示寵物身份信息、二維碼、主人信息等。與LCD、OLED等屏幕相比,電子墨水屏具有幾乎無功耗、即使斷電也可顯示等優(yōu)秀性能[9],且僅在屏幕刷新時耗電,其特性是傳統(tǒng)屏幕無法替代的。電子墨水屏顯示效果與普通紙張效果基本無差,可以替代傳統(tǒng)的寵物金屬銘牌或者不干膠貼紙,減少資源浪費[9]。
電子墨水屏使用SSD1608驅(qū)動模塊進行驅(qū)動。SSD1608是一塊CMOS有源矩陣雙穩(wěn)態(tài)顯示驅(qū)動控制器,具有240個源輸出、320個柵輸出、一個VCOM,最大支持分辨率為240×320。顯示驅(qū)動模塊與核心模塊之間連接使用24線的軟排線。
在本系統(tǒng)中,芯片與單片機的通信方式選用4線SPI通信方式,因此芯片上需要連接的端口:時鐘信號SCLK,讀寫控制R/W#,片選CS#,指令數(shù)據(jù)切換D/C#,將分別連接到單片機的IO口上。具體的SSD1608接線圖如圖4所示。
圖4 顯示模塊電路
防盜模塊由兩根漆包線構(gòu)成,每根線的其中一端串聯(lián)一個電阻接電源,另一端連接在單片機的IO口上,漆包線嵌入在可調(diào)節(jié)項圈綁帶的內(nèi)部。其防盜的功能是防止在失竊時項圈被強行拆下,在外出模式被強行取下或者被剪下時,漆包線斷開,單片機進入異常中斷處理、丟失模式,向服務器端發(fā)出報警信號。此時蜂鳴器不會發(fā)出報警聲音,以免驚動盜竊者,防止項圈遭到進一步破壞。整個防盜報警機制以靜默方式運行。
為了兼顧項圈松緊調(diào)節(jié)與防盜功能,項圈帶使用8孔尼龍扣進行鎖緊。在公頭和母頭中均嵌入金屬觸點,在佩戴時金屬觸點將被接通,單片機因此獲得高電平信號。項圈的3D模型圖如圖5所示。
圖5 項圈3D模型
寵物項圈核心控制芯片選用STM32L151C6T6芯片,該芯片使用采用64位的Cortex—M3內(nèi)核,具有高性能、低成本低功耗,抗干擾性能強,擁有豐富的輸入輸出端口,來滿足系統(tǒng)的需求[10,11]。核心模塊電路圖如圖6所示。在STM32系列單片機中,在滿足整體性能的前提下,可保證更長的續(xù)航時間。單片機內(nèi)部具有7通道的DMA通道,以DMA方式傳輸數(shù)據(jù)可以不經(jīng)過CPU,直接在存儲器與外部設備之間傳輸數(shù)據(jù),大大提高了數(shù)據(jù)傳輸速率,并降低了系統(tǒng)整體的功耗。芯片內(nèi)部具有一個4 kB的EEPROM,用于存儲系統(tǒng)日志等數(shù)據(jù)。
圖6 核心模塊電路
STM32L151C6T6芯片支持USB2.0傳輸,本系統(tǒng)中使用USB Type-C接口進行有線數(shù)據(jù)讀寫和充電。
核心模塊中包含一個報警電路,由S8050三極管、有源蜂鳴器組成[12]。其作用是發(fā)出聲音信號提示系統(tǒng)工作狀態(tài)。例如,寵物主人無法找到寵物時,可通過手機遙控項圈發(fā)出報警聲以便尋找。
寵物項圈系統(tǒng)軟件使用Keil平臺進行開發(fā)。Keil平臺包含代碼編輯、編譯、調(diào)試等功能,界面操作簡單,在嵌入式系統(tǒng)領(lǐng)域應用廣泛[13,14],可以滿足本系統(tǒng)的開發(fā)需要。軟件程序包含以下幾種模式:外出模式、居家模式、丟失模式。分為如下幾個子程序:中心控制程序、NB-IoT數(shù)據(jù)處理程序、NFC數(shù)據(jù)處理程序、USB數(shù)據(jù)處理程序、GPS定位程序、防盜程序、顯示驅(qū)動程序。
系統(tǒng)首次啟動時,需要進行設備ID注冊,通過USB連接到計算機上導入相應的身份信息,并分配設備號完成注冊。注冊過程中,墨水屏會實時顯示系統(tǒng)狀態(tài)以及進度。之后,便可通過IoT傳輸或者NFC修改屏顯信息和身份信息。
在正常使用時,系統(tǒng)初始化后會首先在墨水屏上刷新顯示信息,同時進行NB-IoT入網(wǎng)操作。若入網(wǎng)失敗,30 s后重試一次。入網(wǎng)成功后,GPS進行搜星、定位操作,每間隔30s向服務器上報一次位置信息。此時整個系統(tǒng)進入低功耗模式。若入網(wǎng)失敗,則進入離線工作模式,整個活動軌跡信息將被記錄在存儲模塊中。
相較于外出模式,居家模式關(guān)閉了防盜功能,并不即時上傳位置信息,若通過設置過的電子圍欄判斷離開家庭范圍,則恢復到外出模式。
丟失模式可通過觸發(fā)防盜模塊或手動開啟,設備將會向服務器發(fā)出警告和位置信息。即使設備被關(guān)閉,在重新啟動后便會繼續(xù)發(fā)出警告消息。
本系統(tǒng)具有完整的物聯(lián)網(wǎng)寵物項圈軟硬件系統(tǒng),在研發(fā)過程中對于整個系統(tǒng)的穩(wěn)定性、GPS定位情況、充電情況、NB-IoT數(shù)據(jù)上傳下載及入網(wǎng)情況等進行了測試。測試結(jié)果如表1所示。
表1 智能寵物項圈可靠性測試
測試結(jié)果表明,由于環(huán)境、建筑物遮擋等原因可能會導致小概率的GPS定位、NB-IoT入網(wǎng)失敗等情況。但在開闊地帶,整個系統(tǒng)各個模塊可靠性良好,軟件運行穩(wěn)定。經(jīng)過測試可得出結(jié)論,本文設計的智能寵物項圈符合最初的設計要求。
本文基于STM32單片機及NB-IoT,NFC等技術(shù)設計了智能寵物項圈,具有電子墨水屏信息顯示、軌跡跟蹤、防盜報警、信息存儲等功能。這只寵物項圈就像是寵物的一張電子身份證,可以更加完善城市的寵物管理制度,解決信息登記難、疫苗檔案管理難等問題,以推進寵物的無紙化管理,大大減少了工作難度。另外,其防盜定位系統(tǒng)可以減少主人及公安機關(guān)在尋找丟失寵物上的困擾。