智能畜牧開發(智能跟蹤)

最終產品:完成一個智能畜牧項圈,這個項圈可以實時跟蹤牛場上牛的運動狀態信息,並將信息實時上報到服務器。

 

一、硬件選型:BM503開發套件(M203C模組+nRF52832藍牙芯片)

硬件介紹:BM503開發套件由M203C模組和nRF52832藍牙芯片共同構成。

M203C模組 的功能:聯網、GPS定位、數據採集、模式切換等功能;

nRF52832 的功能:藍牙廣播掃描、控制外設、控制M203C開關機等功能。

æºè½çç§å¼åï¼æºè½è·è¸ªï¼

二、軟件開發介紹

開發工具:只需要一個c語言編輯器即可,如source insight。

編譯工具:安裝一個廠家給的arm-none-eabi後,使用cmd編譯即可。編譯命令:make clean ; make new。

注:有人可能會問能仿真嗎?能單步調試嗎?答案是:不能,但是可以通過添加打印信息的方式,接上串口查看日誌。源碼環境支持c語言的庫函數,硬件的串口引出來了,所以加日誌調試也很方便。

 

軟件功能

爲達到低功耗要求,M203C會在數據處理完成後進入休眠,由nRF52832將其斷電。M203C休眠前會給nRF52832發送休眠時間,在時間到達之後將之喚醒,重新供電。

這個是這個BM503開發套件的特色之處,兩個芯片通過串口連接,可以數據交互。M203C負責主要邏輯控制,nRF52832負責接收到M203C的指令進行工作,如軟件運行邏輯的切換、某個功能的開關等。此外,M203C發送休眠指令給nRF52832,nRF52832接收到休眠指令後,會給M203C進行斷電,在定時時間到達後或者其他異常中斷後給203C上電開機。這樣可以實現整個設備的低功耗需求。

M203C喚醒後會再重新處理數據並休眠,如此循環往復。

開機後,運行流程如下:

æºè½çç§å¼åï¼æºè½è·è¸ªï¼

此外,除去上述的邏輯功能,還有部分外設也參與工作,如掛載在nRF52832上的六軸傳感器,可以實時獲取運動姿態和步數檢測。nRF52832也會開啓藍牙廣播功能。另外M203C模組內部集成了定位芯片,調用源碼中的GPS接口函數就能定位,所以產品的定位功能不需要外掛定位芯片。

 

三、成品介紹

服務器:智雲服。(在智雲服端調試成功後,可以根據需要,修改爲阿里雲服務器)

智雲服提供了手機端和服務器端的雙重管理界面。手機端:微信小程序;服務器端:智雲服運營管理平臺。

手機端:微信小程序。

硬件設備實物:以BM503開發套件爲基礎的電路板一塊,不同外型的主板可以根據需求進行重新設計。

 

使用方法

1、開機等待設備聯網、連接智雲服mqtt服務器。

2、連網完成後,可以通過微信小程序下發指令或者通過智雲服給設備下發指令,設備可以實時接收到指令解析並處理。(如果設備休眠之後給設備發送指令,會在設備喚醒之後才接收並處理數據)

3、設備在處理完數據後,將數據上報到服務器後會進入休眠。在休眠時間到了之後,會再次喚醒。如果我設置的是1小時的間隔,意思是每隔1小時就會喚醒設備,處理完數據後,再進入休眠狀態。

æºè½çç§å¼åï¼æºè½è·è¸ªï¼

æºè½çç§å¼åï¼æºè½è·è¸ªï¼

æºè½çç§å¼åï¼æºè½è·è¸ªï¼

服務器方面的搭建,自己進入這個網站的開發者中心,按照步驟一步一步做就可以了。

 

四、詳細參數

1、功耗:休眠時,只跑藍牙單片機:100uA左右。

2、定位精度:天線和天空無遮擋,可以達到1-5米的定位精度

3、數據收發也都正常。

 

有問題可以私聊我。