在我國飼養寵物的人越來越多,但忙碌于工作、生活等原因沒有更多的時間,以更好照顧管理寵物,因此對飼養寵物工具的要求也越來越高。目前在市場上寵物喂食系統部分是人工喂養,多半是半自動喂養,產品比較單一,在一定程度上無法滿足人們的智能化需求。
針對目前市場的需求,整合市場上單一產品的優點,本文基于機智云平臺技術設計了一款智能寵物管理系統。本系統以 Cortex-M4 為內核的 STM32F429 芯片為核心,通過機智云整合單片機、WiFi 物聯網實現對寵物智能喂養與管理的功能。
機智云平臺技術在我國飼養寵物的人越來越多,但忙碌于工作、生活等原因沒有更多的時間,以更好照顧管理寵物,因此對飼養寵物工具的要求也越來越高。目前在市場上寵物喂食系統部分是人工喂養,多半是半自動喂養,產品比較單一,在一定程度上無法滿足人們的智能化需求。
針對目前市場的需求,整合市場上單一產品的優點,本文基于機智云平臺技術設計了一款智能寵物管理系統。本系統以 Cortex-M4 為內核的 STM32F429 芯片為核心,通過機智云整合單片機、WiFi 物聯網實現對寵物智能喂養與管理的功能。
機智云平臺技術
從 2014 年推出的機智云,為開發者提供物聯網云平臺、硬件通信、終端 APP 一體化產品服務和云服務,為有物聯網管理需求的客戶提供連接、運營管理、數據分析等服務。用戶可以自定義統計分析,對機智云 SDK 進行二次開發,使智能硬件設備接入機智云后的功能更加完善,更加便于管理。
機智云的功能可以概括為連接硬件設備,存儲分析數據并保證數據的安全性,通過唯一的標識碼鏈接主控設備后控制設備。物聯網的價值源于萬物互聯的“智能化”,機智云為企業提供智能硬件自助開發工具及物聯網行業解決方案。機智云開發系統示意圖如圖1所示。
寵物管理系統總體設計
寵物管理系統由硬件系統、軟件系統組成。硬件系統包括主控模塊、電機模塊、液晶屏顯示操作模塊、傳感器模塊、電源模塊和攝像頭模塊。軟件系統首先要開發環境搭建,完成MDK 軟件安裝、USB 串口驅動安裝、ST-LINK安裝,采用 C++/C 語言和單片機 C51 等語言來編寫模塊化程序。
軟件系統主要實現機智云物聯網功能,并在手機開發相應 APP系統。機智云物聯網系統一方面遠程控制移動終端,利用網絡和底層控制相關功能,實物搭建完畢和下載好程序,上傳好數據,就可以通過液晶屏、自動檢測、手機 APP 進行發送指令;另一方面把數據上傳到機智云端,機智云的服務器就會對收到的數據進行處理和分析,將結果上傳到控制終端,并在終端中顯示,這種形式克服了時間和區域問題,能精確地了解寵物的活動狀況。系統設計如圖2所示。
硬件系統設計
本文的控制系統以Cortex-M4 為內核的 STM32F429 芯片為控制核心,通過溫濕度傳感器對寵物屋的空氣溫度、濕度實現實時監測 ;利用嵌入式與物聯網技術,通過溫濕度傳感器和激光傳感器的應用,并借助 Andriod APP 終端實現對寵物的遠程觀察。該系統可以實時監測相關參數,并以此判斷當前的物理環境狀況,自動調節溫度、濕度以及投放食物量等相關操作。
主控模塊使用了STM32F429 芯 片、CH340G 芯片、AT24C02 芯片;電機模塊使用了微型130小電機來控制風扇轉動,使用立式的型號為ZGA37RH 電機控制喂食的閥門和清理糞便;液晶顯示屏模塊用于顯示溫濕度和激光測量距離實物的高度等;傳感器模塊由溫度傳感器、濕度傳感器組成;電源模塊有兩種供電模式,USB 供電模式和電池供電模式;攝像頭模塊用于觀察寵物的活動狀況。
? WiFi 通信模塊
WiFi 聯網屬于辦公和家庭使用的短距離無線技術,具有速度快、可靠性高等特點。本系統選用的 ESP8266 WiFi 模塊芯片是一款串口轉無線芯片模塊,內部自帶固件,用戶操作簡單,無需編寫時序信號。
? 傳感器模塊
溫濕度傳感器模塊包括溫濕度顯示、自動調節溫濕度、人工調節溫濕度等,有三大執行元件,DTH11 溫濕度傳感器、5V 電熱片和 5V/1A 直流小電機 ZGA37RH。本設計中,當DTH11 溫濕度傳感器給主控系統傳輸的數據高于設定值時,主控系統發送一個信號使直流小電機開始工作降溫;當數據低于設定值時,主控系統發送一個信號使電熱片工作升溫。
? 供電模式選擇
為了防止電熱片與直流小電動機啟動和關閉時,電流過大影響芯片和溫濕度傳感器,系統采用分開供電模式 。
DTH11 的電源來自于主控板 STM32F429IGT 開發板的電源端口,而電熱片和直流小電動機的電源直接采用 18650 鋰電池來供電。電熱片和直流小電動機均采用PWM 脈沖信號控制,但不是直接使用 PWM 脈沖信號控制,而是使用兩個小繼電器單獨控制電熱片和直流小電動機。主控模塊用 PWM脈沖信號來控制繼電器,從而間接控制電熱 片和直流小電動機的啟動和關閉。采用繼電器來控制的方案是經過綜合考慮的,不僅經濟、安全,且使用簡單。
軟件系統設計
整個軟件系統設計是基于 μC/OS- Ⅲ 操作系統和STemWin圖形界面系統進行設計。首先對 μC/OS-Ⅲ 操作系統和 STemWin 圖形系統移植;接著編寫各個模塊的驅動代碼,為每個模塊開啟相應的任務,分配好棧和優先級,同時利用仿真器制作相應的按鈕控件,并在 Visual C++ 6.0上進行測試 ;最后將測試好的控件代碼移植到工程中,這樣就可以通過μC/OS-Ⅲ對圖形界面的相關控件任務進行調用并顯示,根據寵物家園的硬件系統進行模塊化編寫,而程序使用 IAR 軟件進行編寫。
? 機智云物聯網
在該系統應用的物聯網技術是市面上的智能喂食系統版和集合版,把單一的寵物喂食系統的優點結合起來,設計一個更加完美和符合市場需求的產品,即原來產品的升級版,以實現對寵物遠程實時監控的功能。寵物管理系統遠程實時監控主要功能有兩點,包括用戶手機 APP軟件與喂養裝置和清理糞便裝置進行通信;在安卓 APP上隨時都可以觀察寵物的活動狀態。
物聯網網絡架構分為應用層、網絡層、感知層。通過上面分析,通信模塊主要是基于 IEEE 802.11 協議的 WiFi 低功耗SoC廣域網,工作在 2.4 GHz/5 GHz頻段,可以借助于互聯網、云概念和智能終端,更加方便地對任何物體進行連接。
物聯網對所連接的設備的通信協議要求有以下三點:
* 聯網的每一物件均可尋址;
* 聯網的每一物件可通信;
* 聯網的每一物件可控制。
為滿足以上要求,該系統采用 WiFi聯網的方式, 使硬件系統成為可通信可控制的網絡體。機智云物聯網網絡架構如圖3所示。
? 手機APP開發
本系統所用遠程控制的客戶端是基于機智云開發的安卓APP控制。根據機智云部署步驟和調試步驟,在機智云平臺開發 SoC 模式,創建安卓APP的操作步驟如圖4所示,成功地把硬件系統接入到機智云服務。
在創建機智云服務之前需要先下載機智云安卓 APP 開源框架, 并準備好 Eclipse 開源框架編譯環境。導入項目到 Eclipse 工程后,根據開源框架包結構的說明,修改 UIConfig.json 文件,在這里可以配置工程的配置信息。正確填寫機智云的 Product Key,APP ID,APP Secret 后,工程就可以部署運行。云端會自動生成一個仿真設備,可模擬真實設備上報數據的行為。
在實體設備還未開發完成的情況下,開發者可以利用機智云提供的虛擬設備工具進行 APP 調試,測試遠程控制設備的功能。其中,在 WiFi 鏈接模式時,當 WiFi 通信在無優先級或者 BT/ZB 優先級較高的情況下,可以人為中斷 WiFi 工作,只需通過 GPIO 口來區分各個通信的優先級。利用聯網的 IP 地址與安卓 APP 連接,通過該端口發送參數信息,并通過 APP 界面顯示。
要實現機智云 APP 與硬件設備聯調,首先要使手機和硬件設備連接到同一個網絡上,通過網絡向服務器發出請求,并且獲得相應的信息。信息的傳遞是雙向的, 機智云 APP 可以控制硬件設備,若手動操作硬件設備,APP 界面上相應的數據也會變化。該系統相應的安卓 APP 界面如圖5所示。
系統測試
系統測試過程如下:
1)首先在機智云平臺上的開發者中心打開開發完成的 Android APP—寵物管理系統,依次點擊“在線調試設備”“啟動虛擬設備”。在頁面上有生成已開發的寵物管理系統的二維碼,手機下載機智云,進入機智云 APP 掃描二維碼進行綁定。進行電腦模擬虛擬設備控制和手機 APP 操作 按鈕進行測試。在模擬設備和手機 APP 上操作有數據并且在仿真軟件無誤顯示的話,證明在線測試成功。
2)把手機 APP 與實物進行連接,寵物家園系統處于啟動狀態,在手機終端 APP 添加實物設備。進行一鍵配置時,嘗試多次配置并失敗。排查網絡問題,隨后分別連接 WiFi 和 4G 網絡進行配置,配置并沒成功。最后更換安卓手機后,配置成功,開始進行遠程控制各個模塊。
3)遠程控制時發現手機 APP 中顯示溫濕度與硬件設備液晶顯示屏上數值不對應,手機 APP 中需要延時很長時間,數值才更新,并且多個按鈕沒有添加松手檢測,以至于要一直按著按鈕才能使其工作。
4)排查代碼的不嚴謹而導致的延時問題,經過優化代碼后,調試成功。其中,進行 APP 調試時開發 APP 是難點;個人對 Java 語言不太熟悉的情況下,應用 WiFi 連接設備和 APP 的連接調試,花費不少時間。
系統總結
為了方便人們更好地管理寵物,設計基于 STM32 和機智云平臺進行二次開發的智能寵物管理系統。該系統整合 WiFi 聯網模塊和傳感器技術,實現隨時隨地遠程觀察寵物狀況、控制管理寵物喂食以及清理等服務,從根本上解決由于時間距離關系不能更好地照顧寵物的需求。機智云開發平臺操作簡單方便,兼容性好,系統安全性能高。
從 2014 年推出的機智云,為開發者提供物聯網云平臺、硬件通信、終端 APP 一體化產品服務和云服務,為有物聯網管理需求的客戶提供連接、運營管理、數據分析等服務。用戶可以自定義統計分析,對機智云 SDK 進行二次開發,使智能硬件設備接入機智云后的功能更加完善,更加便于管理。
機智云的功能可以概括為連接硬件設備,存儲分析數據并保證數據的安全性,通過唯一的標識碼鏈接主控設備后控制設備。物聯網的價值源于萬物互聯的“智能化”,機智云為企業提供智能硬件自助開發工具及物聯網行業解決方案。機智云開發系統示意圖如圖1所示。
寵物管理系統總體設計
寵物管理系統由硬件系統、軟件系統組成。硬件系統包括主控模塊、電機模塊、液晶屏顯示操作模塊、傳感器模塊、電源模塊和攝像頭模塊。軟件系統首先要開發環境搭建,完成MDK 軟件安裝、USB 串口驅動安裝、ST-LINK安裝,采用 C++/C 語言和單片機 C51 等語言來編寫模塊化程序。
軟件系統主要實現機智云物聯網功能,并在手機開發相應 APP系統。機智云物聯網系統一方面遠程控制移動終端,利用網絡和底層控制相關功能,實物搭建完畢和下載好程序,上傳好數據,就可以通過液晶屏、自動檢測、手機 APP 進行發送指令;另一方面把數據上傳到機智云端,機智云的服務器就會對收到的數據進行處理和分析,將結果上傳到控制終端,并在終端中顯示,這種形式克服了時間和區域問題,能精確地了解寵物的活動狀況。系統設計如圖2所示。
硬件系統設計
本文的控制系統以Cortex-M4 為內核的 STM32F429 芯片為控制核心,通過溫濕度傳感器對寵物屋的空氣溫度、濕度實現實時監測 ;利用嵌入式與物聯網技術,通過溫濕度傳感器和激光傳感器的應用,并借助 Andriod APP 終端實現對寵物的遠程觀察。該系統可以實時監測相關參數,并以此判斷當前的物理環境狀況,自動調節溫度、濕度以及投放食物量等相關操作。
主控模塊使用了STM32F429 芯 片、CH340G 芯片、AT24C02 芯片;電機模塊使用了微型130小電機來控制風扇轉動,使用立式的型號為ZGA37RH 電機控制喂食的閥門和清理糞便;液晶顯示屏模塊用于顯示溫濕度和激光測量距離實物的高度等;傳感器模塊由溫度傳感器、濕度傳感器組成;電源模塊有兩種供電模式,USB 供電模式和電池供電模式;攝像頭模塊用于觀察寵物的活動狀況。
? WiFi 通信模塊
WiFi 聯網屬于辦公和家庭使用的短距離無線技術,具有速度快、可靠性高等特點。本系統選用的 ESP8266 WiFi 模塊芯片是一款串口轉無線芯片模塊,內部自帶固件,用戶操作簡單,無需編寫時序信號。
? 傳感器模塊
溫濕度傳感器模塊包括溫濕度顯示、自動調節溫濕度、人工調節溫濕度等,有三大執行元件,DTH11 溫濕度傳感器、5V 電熱片和 5V/1A 直流小電機 ZGA37RH。本設計中,當DTH11 溫濕度傳感器給主控系統傳輸的數據高于設定值時,主控系統發送一個信號使直流小電機開始工作降溫;當數據低于設定值時,主控系統發送一個信號使電熱片工作升溫。
? 供電模式選擇
為了防止電熱片與直流小電動機啟動和關閉時,電流過大影響芯片和溫濕度傳感器,系統采用分開供電模式 。
DTH11 的電源來自于主控板 STM32F429IGT 開發板的電源端口,而電熱片和直流小電動機的電源直接采用 18650 鋰電池來供電。電熱片和直流小電動機均采用PWM 脈沖信號控制,但不是直接使用 PWM 脈沖信號控制,而是使用兩個小繼電器單獨控制電熱片和直流小電動機。主控模塊用 PWM脈沖信號來控制繼電器,從而間接控制電熱 片和直流小電動機的啟動和關閉。采用繼電器來控制的方案是經過綜合考慮的,不僅經濟、安全,且使用簡單。
軟件系統設計
整個軟件系統設計是基于 μC/OS- Ⅲ 操作系統和STemWin圖形界面系統進行設計。首先對 μC/OS-Ⅲ 操作系統和 STemWin 圖形系統移植;接著編寫各個模塊的驅動代碼,為每個模塊開啟相應的任務,分配好棧和優先級,同時利用仿真器制作相應的按鈕控件,并在 Visual C++ 6.0上進行測試 ;最后將測試好的控件代碼移植到工程中,這樣就可以通過μC/OS-Ⅲ對圖形界面的相關控件任務進行調用并顯示,根據寵物家園的硬件系統進行模塊化編寫,而程序使用 IAR 軟件進行編寫。
? 機智云物聯網
在該系統應用的物聯網技術是市面上的智能喂食系統版和集合版,把單一的寵物喂食系統的優點結合起來,設計一個更加完美和符合市場需求的產品,即原來產品的升級版,以實現對寵物遠程實時監控的功能。寵物管理系統遠程實時監控主要功能有兩點,包括用戶手機 APP軟件與喂養裝置和清理糞便裝置進行通信;在安卓 APP上隨時都可以觀察寵物的活動狀態。
物聯網網絡架構分為應用層、網絡層、感知層。通過上面分析,通信模塊主要是基于 IEEE 802.11 協議的 WiFi 低功耗SoC廣域網,工作在 2.4 GHz/5 GHz頻段,可以借助于互聯網、云概念和智能終端,更加方便地對任何物體進行連接。
物聯網對所連接的設備的通信協議要求有以下三點:
* 聯網的每一物件均可尋址;
* 聯網的每一物件可通信;
* 聯網的每一物件可控制。
為滿足以上要求,該系統采用 WiFi聯網的方式, 使硬件系統成為可通信可控制的網絡體。機智云物聯網網絡架構如圖3所示。
? 手機APP開發
本系統所用遠程控制的客戶端是基于機智云開發的安卓APP控制。根據機智云部署步驟和調試步驟,在機智云平臺開發 SoC 模式,創建安卓APP的操作步驟如圖4所示,成功地把硬件系統接入到機智云服務。
在創建機智云服務之前需要先下載機智云安卓 APP 開源框架, 并準備好 Eclipse 開源框架編譯環境。導入項目到 Eclipse 工程后,根據開源框架包結構的說明,修改 UIConfig.json 文件,在這里可以配置工程的配置信息。正確填寫機智云的 Product Key,APP ID,APP Secret 后,工程就可以部署運行。云端會自動生成一個仿真設備,可模擬真實設備上報數據的行為。
在實體設備還未開發完成的情況下,開發者可以利用機智云提供的虛擬設備工具進行 APP 調試,測試遠程控制設備的功能。其中,在 WiFi 鏈接模式時,當 WiFi 通信在無優先級或者 BT/ZB 優先級較高的情況下,可以人為中斷 WiFi 工作,只需通過 GPIO 口來區分各個通信的優先級。利用聯網的 IP 地址與安卓 APP 連接,通過該端口發送參數信息,并通過 APP 界面顯示。
要實現機智云 APP 與硬件設備聯調,首先要使手機和硬件設備連接到同一個網絡上,通過網絡向服務器發出請求,并且獲得相應的信息。信息的傳遞是雙向的, 機智云 APP 可以控制硬件設備,若手動操作硬件設備,APP 界面上相應的數據也會變化。該系統相應的安卓 APP 界面如圖5所示。
系統測試
系統測試過程如下:
1)首先在機智云平臺上的開發者中心打開開發完成的 Android APP—寵物管理系統,依次點擊“在線調試設備”“啟動虛擬設備”。在頁面上有生成已開發的寵物管理系統的二維碼,手機下載機智云,進入機智云 APP 掃描二維碼進行綁定。進行電腦模擬虛擬設備控制和手機 APP 操作 按鈕進行測試。在模擬設備和手機 APP 上操作有數據并且在仿真軟件無誤顯示的話,證明在線測試成功。
2)把手機 APP 與實物進行連接,寵物家園系統處于啟動狀態,在手機終端 APP 添加實物設備。進行一鍵配置時,嘗試多次配置并失敗。排查網絡問題,隨后分別連接 WiFi 和 4G 網絡進行配置,配置并沒成功。最后更換安卓手機后,配置成功,開始進行遠程控制各個模塊。
3)遠程控制時發現手機 APP 中顯示溫濕度與硬件設備液晶顯示屏上數值不對應,手機 APP 中需要延時很長時間,數值才更新,并且多個按鈕沒有添加松手檢測,以至于要一直按著按鈕才能使其工作。
4)排查代碼的不嚴謹而導致的延時問題,經過優化代碼后,調試成功。其中,進行 APP 調試時開發 APP 是難點;個人對 Java 語言不太熟悉的情況下,應用 WiFi 連接設備和 APP 的連接調試,花費不少時間。
系統總結
為了方便人們更好地管理寵物,設計基于 STM32 和機智云平臺進行二次開發的智能寵物管理系統。該系統整合 WiFi 聯網模塊和傳感器技術,實現隨時隨地遠程觀察寵物狀況、控制管理寵物喂食以及清理等服務,從根本上解決由于時間距離關系不能更好地照顧寵物的需求。機智云開發平臺操作簡單方便,兼容性好,系統安全性能高。
-
物聯網
+關注
關注
2909文章
44713瀏覽量
374279 -
APP
+關注
關注
33文章
1574瀏覽量
72557 -
機智云
+關注
關注
2文章
590瀏覽量
26433
發布評論請先 登錄
相關推薦
評論