機友分享 | 初級開發:基於機智雲物聯網平臺和ESP8266開發智能燈

[ 本文概述 ]

本案例爲機智雲平臺入門級基礎應用開發實例,開發者通過使用機智雲AIoT自助開發平臺和ESP8266,實現對傳統燈泡的遠程APP控制,本案例原理簡單、製作成本低,適合所有具備嵌入式基礎的開發者,尤其適合準備進入IoT的從業者、高校相關專業學生參考學習,掌握物聯網設備基礎開發邏輯。其他更多應用開發詳見官方案例教程。

機智雲物聯網平臺提供多種在線自動開發工具、多型號Gagent固件(Wi-Fi、GPRS、4G等主流聯網方式的固件)、多型號MCU代碼自動生成器(51、STM32、Arduino等)、開源跨平臺APP SDK(iOS、Android、APiCloud)、開源案例和在線教程,以及社區及FAE支持,幫助開發者0成本、快速實現IoT設備遠程控制、數據採集分析、設備及用戶管理等應用開發,詳見:www.gizwits.com機智雲物聯網平臺的開發者中心,club.gizwits.com 物聯網開發者社區。

[ 1、準備工作 ]

智能燈,是一個簡單常見的智能產品,硬件電路簡單,程序本身也不復雜;下面我們使用esp8266開發板和機智云云端,實現如何將一個傳統的燈泡,改造成可以遠程控制開關的智能燈。

1、準備工作

硬件:

(1)esp8266開發板

(2)usb線

軟件:

(1)esp8266開發環境 eclipse IDE

(2)Vmwave 虛擬機 linux

[ 2、開始開發 ]

2.1 註冊開發者賬號

機智雲開發者賬號,用於產品接入、設備管理、OTA服務、MCU開發等的功能使用。

註冊鏈接://dev.gizwits.com/zh-cn/developer/

2.2新建產品

註冊完成後,登陸至機智雲開發者中心後臺後,點擊開發者中心後臺右上角的“創建新產品”菜單,在跳轉頁面新建一個名爲“LED燈”的產品,選擇“Wi-Fi/移動網絡方案”方式接入,並完成產品創建。如下圖

2.3 新建數據點

本次的項目“LED燈”,它需要實現的功能是遠程開燈和關燈,那我們只需在雲端建立一個“布爾值”的數據點即可完成這件事,如下圖:

添加數據點完成之後,點擊“應用”,即可完成整個產品的數據點的新建工作。

2.4 雲端生成代碼

如圖,左邊菜單欄選擇MCU開發,需要填寫的Product Secret看下面

如圖,左邊菜單欄選擇基本信息,點擊顯示完整密鑰就行了

下載代碼包

2.5 修改代碼

在如下目錄導入rgb的.c和.h文件

在主函數下初始化rgb燈

設置回調函數

smartconfig 按鍵配網,長按和短按RGB顏色反饋

修改app/Gizwits/gizwits_product.c 下的 gizwitsEventProcess

在之前設置的數據點(EVENT_)對應的case下添加代碼

代碼修改就完成了

還有一些細節如聲明頭文件就不發出來了,各位自行添加

因爲電腦使用的x86編譯器生成的機器碼是無法在esp8266上運行的,需要交叉編譯工具鏈編譯,所以要在虛擬機LINUX系統上進行

具體操作參考機智雲的開發平臺搭建,這裏就不再贅述

http://docs.gizwits.com/zh-cn/deviceDev/WiFiSOC/GoKit3S%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91.html#GoKit3-S-%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E5%87%86%E5%A4%87

注意事項:

要使當前編譯的環境變量生效,執行source /etc/environment,這樣在當前命令行終端下該編輯的環境變量有效,換個命令行終端就無效了!當然更好的方式就是重啓系統了

檢查編譯器

1、cd ~

2、執行echo $PATH,查看當前環境變量,是否已經存在/opt/xtensa-lx106-elf/bin。

3、在命令行終端執行xtensa-lx106-elf-gcc -v,如可看到版本號,表示當前交叉編譯器安裝成功

如圖表示編譯完成

2.7 燒寫固件

下載燒寫軟件

https://www.espressif.com/sites/default/files/tools/flash_download_tools_v3.6.4.rar

esp_init_data_default.bin 0x3fc000

blank.bin 0x3fe000

boot_v1.6.bin 0x00000

user1.4096.new.6.bin 0x01000

開發板進入燒錄方式

如圖,開關撥到下載位置,開發板關閉

點擊燒錄軟件的開始按鈕後,給開發板上電

燒錄完畢後記得將開關撥回運行

bin 文件的燒錄地址看下面

2.8設備開始連接雲

下載配網APP

到這個網址去下載app用來給esp8266配網,ios還是安卓看個人手機

https://download.gizwits.com/zh-cn/p/98/99

登陸開發者賬號

軟件需要登陸的,就先前創建的賬號

設備配網

如下面幾個圖操作

至此,實現了手機遠程控制LED燈

剛開始會遇到各種各樣的問題

比如手機連不上開發板,檢查rgb燈是否變綠,家裏wifi是否正常,注意:5G wifi是無法連接上esp8266的

還有ununtu修改了環境變量後重啓顯示空白桌面的情況,要重新安裝gnome

等等等等。。

加油,共勉吧

相關推薦:

  • 27個免費視頻教你學安卓APP開發
  • 連載六部曲:機智雲Android開源之旅
  • Android自定義View系列(時間軸、桌面空間、刮刮樂)
  • ESP8266智能定時插座

掃一掃,開啓您的IoT開發之旅

智能淨水/ 智能照明/ 智慧家電互聯互通/ 智慧煙感/ 冷鏈運輸/ 智慧零售/ 工業互聯

文章由 物聯網平臺 機智雲 www.gizwits.com 整理髮布

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章