朱迪 方榮杰 尹導(dǎo) 付婉婷 黃映雪






摘? 要:針對(duì)目前蜜蜂養(yǎng)殖安防市場(chǎng)設(shè)備較為空缺,以及設(shè)備功能簡(jiǎn)單、耗電量大導(dǎo)致設(shè)備續(xù)航短等缺點(diǎn),提出了在高性能處理器STM32中加入NB-IOT實(shí)現(xiàn)網(wǎng)絡(luò)功能并實(shí)現(xiàn)新型的蜂箱防盜定位追蹤。該設(shè)備借助微動(dòng)傳感器實(shí)現(xiàn)了STM32可從低功耗模式被喚醒;結(jié)合GPS全球定位系統(tǒng)可將設(shè)備坐標(biāo)位置通過(guò)NB-IOT發(fā)送到云平臺(tái),實(shí)現(xiàn)蜂巢防盜追蹤,從而進(jìn)一步提升戶(hù)外養(yǎng)殖蜜蜂的安全性。
關(guān)鍵詞:STM32;GPS全球定位系統(tǒng);NB-IOT;單片機(jī)
中圖分類(lèi)號(hào):TP368? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2022)04-0193-03
Research on Beehive Anti-theft Positioning and Tracking System Based on STM32
ZHU Di, FANG Rongjie, YIN Dao, FU Wanting, HUANG Yingxue
(School of Information Technology, Minzu Normal University of Xingyi, Xingyi? 562400, China)
Abstract: In view of the shortage of equipment in the current bee breeding security market and the shortcomings of simple equipment functions, short equipment life caused by large power consumption, it is proposed to add NB-IOT to the high-performance processor STM32 to realize the network function and realize the new beehive anti-theft positioning and tracking. The device realizes that STM32 can be awakened from low-power mode with the help of micro motion sensor; combined with the GPS global positioning system, the coordinate position of the equipment can be sent to the cloud platform through NB-IOT to realize the honeycomb anti-theft tracking, so as to further improve the safety of outdoor bee breeding.
Keywords: STM32; GPS global positioning system; NB-IOT; Single-Chip Microcomputer
0? 引? 言
近年來(lái),在貴州這樣一個(gè)典型的發(fā)展中地區(qū),無(wú)論哪一個(gè)方面都在迅速的發(fā)展。其中因?yàn)樽匀簧鷳B(tài)環(huán)境較好,種植業(yè)和畜牧業(yè)得到迅速發(fā)展。貴州分布廣袤的原始森林中有大量野生蜜蜂活躍,該類(lèi)野生蜜蜂能通過(guò)人工技術(shù)招納于養(yǎng)蜂木箱中進(jìn)行家養(yǎng),其所釀蜂蜜營(yíng)養(yǎng)價(jià)值豐富、藥用價(jià)值高、價(jià)格100~200元/斤、市場(chǎng)需求量巨大,常處于供不應(yīng)求狀態(tài)。
蜜蜂養(yǎng)殖過(guò)程中有許多的不定因素,比如受蜜蜂群體活動(dòng)半徑內(nèi)的花草植被數(shù)量影響,花粉產(chǎn)量直接影響了蜜蜂數(shù)量和蜂蜜產(chǎn)量。由此,將集中家養(yǎng)的蜜蜂分散到野外散養(yǎng)不失為一個(gè)很好的解決辦法。但萬(wàn)事都有一定的弊端,蜜蜂野外散養(yǎng)解決了蜜蜂產(chǎn)量受自然環(huán)境限制的部分問(wèn)題,但也給蜜蜂養(yǎng)殖帶來(lái)了養(yǎng)殖管理、蜂蜜安全及防盜的問(wèn)題。
為了改善野外養(yǎng)殖蜜蜂的困難,本項(xiàng)目以STM32為主控芯片,以GPS定位模塊、震動(dòng)傳感器和NB-IOT模塊實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)傳輸,設(shè)計(jì)完成一套功耗低、感應(yīng)喚醒、自動(dòng)定位的防盜系統(tǒng)。
1? 總體設(shè)計(jì)
隨著NB-IOT通信技術(shù)在IOT領(lǐng)域的發(fā)展和興起,該技術(shù)的低功耗廣域網(wǎng)(LPWAN)也逐漸被熟知。NB-IOT支持待機(jī)時(shí)間長(zhǎng)、對(duì)網(wǎng)絡(luò)鏈接要求更高效,因此在實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)倪^(guò)程中更加的穩(wěn)定,且NB-IOT具有覆蓋廣、速率快、成本低、功耗低等特點(diǎn)。該系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)采用迭代—遞增模型來(lái)完成,使用迭代—遞增模型的優(yōu)點(diǎn)在于可以將系統(tǒng)分模塊化進(jìn)行設(shè)計(jì)和實(shí)現(xiàn)。迭代和增量開(kāi)發(fā)方法的基本特征是迭代地進(jìn)行開(kāi)發(fā)、增量地產(chǎn)生成果以及持續(xù)地交付[1]。
通過(guò)理解應(yīng)用域,也就是該系統(tǒng)所應(yīng)用的特定環(huán)境,來(lái)建立一個(gè)業(yè)務(wù)模型確定系統(tǒng)使用者的需求。該系統(tǒng)采用迭代—遞增模型進(jìn)行開(kāi)發(fā),所以該部分主要考慮軟件模塊。
本項(xiàng)目將以STM32為主控芯片,以NB-IOT模塊實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)傳輸,以GPS定位模塊和震動(dòng)感應(yīng)傳感器模塊等器件設(shè)計(jì)完成一套功耗低、感應(yīng)防盜、自動(dòng)定位追蹤等系統(tǒng),以解決野生蜜蜂分散養(yǎng)殖防盜問(wèn)題。依據(jù)應(yīng)用域確定軟件模塊的術(shù)語(yǔ)表,術(shù)語(yǔ)表如表1所示。
2? 業(yè)務(wù)模型
建立業(yè)務(wù)模型,獲得應(yīng)用域中各種行為和過(guò)程的理解,便可以提取出需求。根據(jù)應(yīng)用域中提取出來(lái)的需求建立用例圖,用例圖如圖1所示。該用例圖的用例描述如表2所示。
通過(guò)用例圖和用例描述可以明確系統(tǒng)的需求,并且對(duì)需求進(jìn)行了模塊化處理,對(duì)各個(gè)模塊單獨(dú)進(jìn)行完善和處理,可以使各模塊高內(nèi)聚低耦合,這樣可以有效防止因?yàn)閱为?dú)一個(gè)模塊出錯(cuò)而需要修改多個(gè)模塊的問(wèn)題發(fā)生。
3? 硬件設(shè)計(jì)與選型
3.1? 主控模塊
STM32已經(jīng)被廣泛應(yīng)用于數(shù)據(jù)收集、導(dǎo)航定位、智能控制等領(lǐng)域。相比較于C51系列單片機(jī),STM32性能更強(qiáng),ARM內(nèi)核的芯片功耗及成本都更低。在本設(shè)計(jì)中需要使用到STM32的低功耗模式,STM32有三種低功耗模式,包括只關(guān)閉CPU時(shí)鐘、不關(guān)閉ADC和其他時(shí)鐘的睡眠模式、所有時(shí)鐘均關(guān)閉等,但電壓調(diào)節(jié)器為低功耗模式的停止模式以及全部時(shí)鐘及電壓調(diào)節(jié)器都關(guān)閉的待機(jī)模式,其中停止模式和待機(jī)模式的功耗較低,分別為20 μA左右以及2 μA左右,相較于待機(jī)模式只能用特定的引腳喚醒,停止模式則可以通過(guò)外部中斷來(lái)進(jìn)行喚醒,所以說(shuō)停止模式更方便也更契合本設(shè)計(jì)。STM32F030采用ARM?Cortex?-M0內(nèi)核,運(yùn)算速度高達(dá)48 MHz。STM32F030 MCU圖2是STM32系列中價(jià)格最低的產(chǎn)品,具有全套外設(shè),例如高速12位ADC、先進(jìn)且靈活的定時(shí)器、日歷RTC和通信接口(例如I2C、USART、SPI)。
3.2? GPS定位模塊
ATGM336H模塊是基于中科微第四代低功耗GNSS SOC單芯片—AT6558,支持多種衛(wèi)星導(dǎo)航系統(tǒng),包括中國(guó)的BDS(北斗衛(wèi)星導(dǎo)航系統(tǒng))、美國(guó)的GPS、俄羅斯的GLONASS等。AT6558是一款真正意義的六合一多模衛(wèi)星導(dǎo)航定位芯片,包含32個(gè)跟蹤通道,可以同時(shí)接收六個(gè)衛(wèi)星導(dǎo)航系統(tǒng)的GNSS信號(hào),并且實(shí)現(xiàn)聯(lián)合定位、導(dǎo)航與授時(shí)。ATGM336H模塊具有高靈敏度、低功耗、低成本等優(yōu)勢(shì),其冷啟動(dòng)捕獲靈敏度為-148 dBm,跟蹤靈敏度為-162 dBm,定位精度為2.5米(CEP50),適用于車(chē)載導(dǎo)航、手持定位、可穿戴設(shè)備[2]。
3.3? 震動(dòng)傳感器
SW-420震動(dòng)傳感器采用LM393輸出,信號(hào)干凈、波形好、驅(qū)動(dòng)能力強(qiáng)。工作電壓寬泛3.3 V~5 V均可使用,不震動(dòng)時(shí)開(kāi)關(guān)閉合輸出低電平,震動(dòng)時(shí)輸出高電平,適用于震動(dòng)觸發(fā)作用。
3.4? NB-IOT模塊
NB-IoT無(wú)線(xiàn)通信模塊主要用于數(shù)據(jù)節(jié)點(diǎn)和云平臺(tái)的信息交互,采用移遠(yuǎn)科技的BC26模塊。BC26模塊支持TCP、UDP和COAP協(xié)議,同時(shí)可支持中國(guó)移動(dòng)OneNET/Andlink、中國(guó)電信IoT/AEP以及阿里云IoT等物聯(lián)網(wǎng)云平臺(tái),為客戶(hù)的應(yīng)用提供極大的便利。其供電電壓為2.1 V~3.6 V,模塊與主控MCU通信采用UART接口或SPI接口[3-5]。阿里云平臺(tái)顯示效果如圖3所示。
4? 代碼實(shí)現(xiàn)
用戶(hù)使用一個(gè)系統(tǒng)首先是通過(guò)軟件的,使用軟件的優(yōu)勢(shì)是不需要去了解系統(tǒng)的底層結(jié)構(gòu)和邏輯,并且用戶(hù)可以快速上手該系統(tǒng)來(lái)滿(mǎn)足用戶(hù)的需求。STM32低功耗模塊部分代碼為:
MX_GPIO_Init();
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_RESET);
__HAL_RCC_PWR_CLK_ENABLE();
if (__HAL_PWR_GET_FLAG(PWR_FLAG_SB) == SET)
{__HAL_PWR_CLEAR_FLAG(PWR_FLAG_SB);}
HAL_Delay(30000);
HAL_PWR_DisableWakeUpPin(PWR_WAKEUP_PIN1);
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);
HAL_PWR_EnterSTANDBYMode();
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_SET);
GPS的驅(qū)動(dòng)部分代碼如下:
if ((subStringNext = strstr(subString, “,”)) != NULL)
{
charusefullBuffer[2];
switch(i)
{
case1:memcpy(Save_Data.UTCTime, subString, subStringNext - subString);break;? //獲取UTC時(shí)間
case2:memcpy(usefullBuffer, subString, subStringNext - subString);break;? //獲取UTC時(shí)間
case3:memcpy(Save_Data.latitude, subString, subStringNext - subString);break; //獲取緯度信息
case4:memcpy(Save_Data.N_S, subString, subStringNext - subString);break;? //獲取N/S
case5:memcpy(Save_Data.longitude, subString, subStringNext - subString);break; //獲取經(jīng)度信息
case6:memcpy(Save_Data.E_W, subString, subStringNext - subString);break;? //獲取E/W
5? 結(jié)? 論
本文的設(shè)計(jì)基于STM32的蜂箱防盜定位追蹤系統(tǒng),以STM32為主控制器,利用采集GPS定位數(shù)據(jù)、震動(dòng)感應(yīng)傳感器喚醒等功能解決蜂箱防盜的難題。收集到的數(shù)據(jù)經(jīng)NB-IOT通信模塊上傳到云平臺(tái),實(shí)現(xiàn)蜂箱的移動(dòng)感知、報(bào)警、蜂箱位置可視化追蹤。該設(shè)計(jì)從低成本、低功耗、性能穩(wěn)定以及可視化追蹤位置等方面相較于傳統(tǒng)養(yǎng)殖防盜措施有較大的優(yōu)勢(shì),為傳統(tǒng)野生蜂的養(yǎng)殖防盜問(wèn)題提供了較好的解決方案。
參考文獻(xiàn):
[1] 蔡競(jìng)暉.在IT項(xiàng)目中采用迭代方法實(shí)行項(xiàng)目管理的實(shí)踐和研究 [D].廈門(mén):廈門(mén)大學(xué),2008.
[2] 白書(shū)華.基于一種單片機(jī)的GPS定位控制系統(tǒng)的設(shè)計(jì)與分析 [J].電子測(cè)試,2016(9):24+26.
[3] 潘磊磊,張桂青,田崇翼,等.基于NB-IOT的農(nóng)業(yè)環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì) [J].電子設(shè)計(jì)工程,2019,27(1):25-30+36.
[4] 何燦隆,沈明霞,劉龍申,等.基于NB-IoT的溫室溫度智能調(diào)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].華南農(nóng)業(yè)大學(xué)學(xué)報(bào),2018,39(2):117-124.
[5] 聶琿,陳海峰,周豪.基于NB-IoT的環(huán)境監(jiān)測(cè)系統(tǒng) [J].實(shí)驗(yàn)技術(shù)與管理,2020,37(5):89-93+110.
作者簡(jiǎn)介:朱迪(1999.05—),男,漢族,貴州威寧人,本科在讀,研究方向:?jiǎn)纹瑱C(jī);方榮杰(1998.04—),男,苗族,貴州凱里人,本科在讀,研究方向:?jiǎn)纹瑱C(jī);尹導(dǎo)(2001.08—),男,漢族,云南師宗人,本科在讀,研究方向:?jiǎn)纹瑱C(jī);付婉婷(2000.06—),女,苗族,貴州貴陽(yáng)人,本科在讀,研究方向:?jiǎn)纹瑱C(jī);黃映雪(1998.11—),女,穿青人,貴州畢節(jié)人,本科在讀,研究方向:?jiǎn)纹瑱C(jī)。