聚豐項目 > AB32VG1開發板寵物遠程智能管理系統
隨著社會的發展和人民生活水平的不斷提高,也有著非常多的工作壓力。與人的交往也會有很多的壓力,于是,越來越多的人選擇養一只小寵物陪伴自己。但是目前,寵物不像人一樣,可以選擇搭建自己的舒適居住環境,在這種背景和情況下,做一個智能的寵物家居系統顯得非常有趣和有必要。 本項目基于中科藍訊(Bluetrum)AB32VG1開發板,結合rt-thread物聯網操作系統,同時外接ESP8266模塊,通過MQTT協議連接阿里云物聯網平臺。開發板上云后,就可以實時的上傳開發板采集到的傳感器數據,同時通過云平臺提供的web界面設計,可以展示出數據的值,也可以通過控件來完成對設備的控制,從而實現遠程監控的作用。
Bigmagic123
分享Bigmagic123
團隊成員
Bigmagic123 嵌入式軟件工程師
本項目采用AB32VG1開發板作為主要的控制中心,連接ESP8266模塊,整體的架構如下框圖所示:
本項目用到的AB32VG1開發板的硬件接口有:
1.兩路I2C,主要連接OLED和光照傳感器
2.兩路UART,一路用于外接下載和調試,另外一路用于連接8266模塊
3.GPIO控制,由于風扇,加熱片,加濕器都是5V供電,所以需要利用光耦隔離輸出
本模塊主要用到的外設:
1.ESP8266模塊
2.B-LUX-V20光照檢測模塊
3.SSD_1306 OLED模塊
4.風扇
5.加熱片
6.加濕器
7.DHT11
本項目利用了rt-thread的進行系統控制,利用一些rt-thread的軟件包進行物聯網上層驅動的開發工作。并且通過利用RT-ThreadStudio加快編譯開發AB32的環境,使得整體開發效率較高。
rt-thread提供了豐富的軟件包可以直接使用,其系統架構也是采用了系統與應用分層的設計思想,使得開發者不用關注底層架構的具體實現細節,包括也不需要特別對riscv架構有很深刻的理解也能夠快速上手。這對于嵌入式應用開發者來說非常的友好,在現在stm32漲價缺貨的情況下,也能夠很好的進行業務邏輯的設計。
軟件的設計流程如下:
本項目主要的難點在于物聯網云平臺與設備的連接問題,采用MQTT連接物聯網平臺,目前ESP8266已經做的非常的穩定了,且在阿里云物聯網平臺上也提供了相關的SDK配置的教程,可以連接上自己的服務器即可。由于ESP8266只有一個半串口,UART0可以收發,UART1只有TX,所以可以將ESP8266的串口打印映射到UART1,而將UART0作為與單片機通信的協議串口。這樣就能夠解決單片機與模塊之間的通信問題,接下來就是自定義協議,其通信協議的制定按照協議框架即可。
而在云端配置web時,阿里云平臺也可以利用阿里云IoT Studio進行控制和顯示界面設計,其直接可以調用內部接口,將數據進行控制和顯示,非常的方便。
而單片機則主要負責業務處理、協議解析、傳感器數據采集。在進行程序設計的時候,可以按照posix API接口進行設計,最后各種模塊之間各種獨立工作,完成整個項目設計。
ab32vg1代碼平臺:
https://gitee.com/bigmagic/ab32_smart
ESP8266代碼平臺
https://gitee.com/bigmagic/esp8266_mqtt_ab32
圖片效果