楊子煜 宋秀雙
教學背景
隨著物聯(lián)網(wǎng)技術越來越受到創(chuàng)客及中小學校的重視,更多的物聯(lián)網(wǎng)開發(fā)應用也應運而生。比起傳統(tǒng)的網(wǎng)絡上傳數(shù)據(jù)應用,物聯(lián)網(wǎng)技術應用具有全面感知、傳遞可靠、智能處理等特點,可將線下傳感器獲取的數(shù)據(jù)實時傳輸?shù)皆贫瞬⑦M行智能化處理及控制,是我國大力發(fā)展并具有美好前景的技術之一。本項目帶領學生設計制作了“物聯(lián)網(wǎng)云端計數(shù)器”,通過案例講解能夠充分發(fā)散學生思維并提升創(chuàng)造能力,為日后的互聯(lián)網(wǎng)通信技術學習打下堅實基礎。
教學目標
知識與技能
運用無線射頻技術,了解如何獲取多個簡單信號數(shù)據(jù),并將其通過ESP32 主板上傳保存到物聯(lián)網(wǎng)云端;學會多設備實時共享上傳和信息互通的功能。
過程與方法
以小組合作的方式,運用學過的物聯(lián)網(wǎng)知識與技能,開展物聯(lián)網(wǎng)云端項目的學習與探究。
情感態(tài)度與價值觀
通過較簡單的物聯(lián)網(wǎng)信息傳輸示例,為學生普及物聯(lián)網(wǎng)通訊知識,并激發(fā)學生的創(chuàng)造力,從而發(fā)掘物聯(lián)網(wǎng)傳輸?shù)臒o限可能,培養(yǎng)學生的創(chuàng)新精神。
教學重點與難點
教學重點
利用Arduino 軟件編寫程序控制ESP32 主控板通過Wi-Fi 連接物聯(lián)網(wǎng)。
教學難點
阿里云物聯(lián)網(wǎng)參數(shù)配置及WEB 人機交互頁面的制作。
教學實施
為便于學生理解,本課程僅設置2 個按鈕作為信號源,根據(jù)教學難度作適當調(diào)整,將信號源連接到射頻模塊發(fā)射端發(fā)射射頻信號后,由ESP32 主板作為主基站,連接射頻模塊接收端獲取信號并上傳到物聯(lián)網(wǎng),即可實現(xiàn)云端數(shù)據(jù)記錄。
材料準備
數(shù)字射頻無線開關套件(433 MHz)×1, 螢火蟲ESP32 主控板×1, 螢火蟲ESP32 擴展板×1,按鈕×2,3.7 V 鋰電池×1, 排線若干。
ESP32 主控板 為了降低實際操作難度,本課程采用ESP32 主控板(圖1),其使用簡單高效,可方便地通過Wi-Fi 連接到局域網(wǎng),傳輸速度也較快,是常用的物聯(lián)網(wǎng)項目主板。接線方面,使用擴展板引出主板IO 腳接線,學生也可以用公母頭杜邦線作代替。
射頻 本課程采用射頻傳輸簡單的信號(圖2),相比于傳統(tǒng)的藍牙信號,具有操作簡單、成本低、傳輸距離遠的特點,加上高度的集成化設計,可以實現(xiàn)單個發(fā)射端采集四路信號(按鈕的狀態(tài))的功能,便于在各種課堂環(huán)境下操作演示。
流程設計
如圖3 所示, 學生將通過單主機多分機的模式進行數(shù)據(jù)采集, 并上傳到云端記錄。
硬件制作
教師: 引導學生按照圖4(發(fā)射端接線方式)、圖5(接收端接線方式)所示接線,引腳編號可根據(jù)課程實際需求自行更換或添加。操作過程中可以一并介紹單片機基本概念和工作原理。
學生:結合課后演示,提升項目美觀程度,按鈕可以嵌入海綿或玩偶等,根據(jù)自身喜好制作。
教師:演示操作。
● 點按一下接收器的按鈕(按壓時間小于0.5 秒),按鈕旁邊的藍色指示燈亮起,此時進入等待配對狀態(tài)。
● 6 秒內(nèi)使發(fā)射器的任意一路持續(xù)發(fā)射信號,直到接收器的藍色指示燈閃爍3 次,此時配對成功。
● 藍色指示燈閃爍3 次,配對成功后會再次亮起,這時可進行下一個發(fā)射器的配對,如果沒有下一個要配對的發(fā)射器,等待6 秒后會自動退出配對模式。射頻模塊默認為點動模式。即接收端收到信號就輸出高電平,沒有收到信號為低電平。
軟件部分教師:本次課程使用阿里云物聯(lián)網(wǎng),演示具體的操作步驟,按照說明帶領學生操作。
學生:登錄DFRobot 社區(qū)查詢“阿里云教程”獲取詳細的圖文說明,結合教師演示,完成物聯(lián)網(wǎng)配置。
● 進入阿里云平臺,注冊并實名認證后進入企業(yè)物聯(lián)網(wǎng)平臺。
● 點擊進入“公共實例”并創(chuàng)建產(chǎn)品,設置產(chǎn)品名稱及參數(shù),選擇自定義產(chǎn)品,并設置Wi-Fi 連接及ICA 數(shù)據(jù)格式。
● 在創(chuàng)建好的產(chǎn)品中選擇功能定義并添加自定義功能,設置數(shù)據(jù)類型為int 讀寫類型,創(chuàng)建完成后將功能發(fā)布上線,并記錄功能標識符以便后續(xù)在代碼中進行更替。
● 同理,需要在“設備”中添加新的設備,并在設備證書中獲取設備名稱、密鑰等信息,用于之后的代碼改寫。
● 將設備上線后點擊“在線調(diào)試”,分別調(diào)節(jié)設備狀態(tài)為0 和1 并點擊設置,隨后即可在“Topic 類列表”中的“物模型通信Topic”獲取該設備的屬性上報和設置的Topic 類。
● Arduino 編程。打開示例代碼(https://mc.dfrobot.com.cn/thread-311485-1-1.html), 根據(jù)之前獲取的設備密鑰等信息,分別在示例代碼中修改Wi-Fi 名稱(SSID)、Wi-Fi 密碼、“ProductKey”“ClientId”“DeviceName””DeviceSecret”“Identifier”
的字符串內(nèi)容(圖6)。設置完基本參數(shù),需要根據(jù)硬件接線方式更改代碼中引用的引腳編號,將初始計數(shù)值設置為0,然后上傳到ESP32 主控板。
● 按照上述步驟上傳修改好的代碼后,就能基本實現(xiàn)本課程需要的功能,即按下按鈕后阿里云物聯(lián)網(wǎng)云端的相應數(shù)值就增加1。
實際操作前可先向?qū)W生介紹目前主流的物聯(lián)網(wǎng)平臺及其區(qū)別,包括但不限于阿里云、百度云及騰訊云等,可讓學生分組操作,每組4 人,分別設計不同的數(shù)據(jù)信號源用于上傳。
人機交互學生:點擊進入物聯(lián)網(wǎng)平臺,新建Web 應用,在菜單欄導入背景及文字卡片等,并將卡片數(shù)字與計數(shù)器數(shù)值綁定。此外,也可以自行DIY 一些組件豐富的Web 界面,提高交互性,設置完成后點擊發(fā)布,線下的計數(shù)可在設計好的云端界面直接顯示(圖7)。
教師:對學生的Web 界面及交互性能進行評分。
交流分享
教師邀請各小組學生代表上臺演示本組作品并介紹作品亮點,說一說亮點是如何實現(xiàn)的,講一講在制作過程中遇到的問題及解決方法。
教師對學生的演示進行點評,并進一步擴展,使用功能各異的多種傳感器采集數(shù)據(jù),對上傳到云端的數(shù)據(jù)進行邏輯判斷,通過發(fā)送短信或控制其他執(zhí)行器進行反饋操作。
教學反思
通過教師指導,該物聯(lián)網(wǎng)遠程計數(shù)器功能便可完整實現(xiàn),但該課程僅簡單為學生演示了物聯(lián)網(wǎng)技術的一角,還可在此基礎上進一步開發(fā),比如用于遠程監(jiān)測家中溫濕度數(shù)據(jù)、操控智能插座打開空調(diào)、遠程監(jiān)測某地水質(zhì)數(shù)據(jù)并及時自動發(fā)送報警信息等。雖然這些功能在市面上已經(jīng)有很多產(chǎn)品可以實現(xiàn),但依舊留下了非常多的創(chuàng)作空間,教師可引導學生開發(fā)更多或?qū)嵱没蚋挥袆?chuàng)造力的物聯(lián)網(wǎng)設備,并思考物聯(lián)網(wǎng)在日常生活中還有哪些妙用,從而舉一反三,鍛煉學生的思維發(fā)散能力。