目前,在以樹莓派、掌控板和Arduino為代表的開源硬件編程創(chuàng)客教育領(lǐng)域中,以“萬物互聯(lián)”為核心的物聯(lián)網(wǎng)(IoT:Internet of Things)應(yīng)用越來越廣泛。利用手機(jī)微信的物聯(lián)網(wǎng)小程序和在掌控板中進(jìn)行mPython X編程,我們可以快速進(jìn)行物聯(lián)網(wǎng)應(yīng)用案例的開發(fā),比如用手機(jī)微信遠(yuǎn)程操控掌控板的紅綠燈。
首先,在手機(jī)微信中搜索“掌控板物聯(lián)網(wǎng)”小程序,選擇“微信授權(quán)用戶信息”,當(dāng)提示“申請(qǐng)使用你的手機(jī)號(hào)碼”時(shí)點(diǎn)擊“允許”按鈕;接著,點(diǎn)擊“添加掌控板”按鈕,分別在“掌控板名稱”和“Mac地址”后面輸入自定義的掌控板名稱(比如“招遠(yuǎn)一中2號(hào)”)和掌控板正面的12位串碼(比如“3C6105186E4C”),完成后點(diǎn)擊下方的“添加”按鈕(如圖1)。
此時(shí),返回“我的掌控板”頁(yè)面,點(diǎn)擊剛剛添加的2號(hào)掌控板后面的“配置”按鈕,出現(xiàn)“我的應(yīng)用”;點(diǎn)擊“添加應(yīng)用”按鈕后會(huì)彈出小程序所支持的六種組件,包括開關(guān)、按鈕、滑塊、步進(jìn)器、輸入框和拆線圖;先輸入“掌控板紅綠燈”作為應(yīng)用名稱,然后通過“添加組件”來建立三個(gè)“開關(guān)”,分別命名為“紅燈”“綠燈”和“黃燈”,并且保持默認(rèn)的“關(guān)值:0、開值:1”不變,點(diǎn)擊“確定”按鈕完成手機(jī)微信端“掌控板物聯(lián)網(wǎng)”小程序的配置操作(如圖2)。
將掌控板通過數(shù)據(jù)線與電腦的USB接口連接,運(yùn)行mPython X,使用與微信所關(guān)聯(lián)的同一個(gè)手機(jī)號(hào)進(jìn)行用戶登錄,進(jìn)行程序的編寫。
首先從左側(cè)“WiFi”中拖動(dòng)“連接WiFi”模塊至中央編程區(qū),其中的“名稱”和“密碼”要對(duì)應(yīng)自己所在的無線網(wǎng)絡(luò)名稱和連接密碼;接著,再?gòu)摹拔锫?lián)網(wǎng)”-“微信小程序”中點(diǎn)擊選擇“小程序選擇掌控板應(yīng)用‘招遠(yuǎn)一中2號(hào)”模塊;然后從“OneNet”中點(diǎn)擊選擇“OneNet設(shè)置”模塊,包括服務(wù)器、設(shè)備ID、產(chǎn)品ID及產(chǎn)品APIKey的參數(shù)內(nèi)容都不必改動(dòng),系統(tǒng)已經(jīng)直接從微信小程序中自動(dòng)獲取到;接著,從“微信小程序”中點(diǎn)擊選擇“當(dāng)小程序收到_name和_value時(shí)”模塊,補(bǔ)充完整三分支選擇結(jié)構(gòu)——分別對(duì)應(yīng)“_name”值為“黃燈”“紅燈”和“綠燈”時(shí),執(zhí)行“設(shè)置所有RGB燈顏色為…”“等待5秒”和“關(guān)閉所有RGB燈”;最后,別忘記在循環(huán)結(jié)構(gòu)體的最后添加一條“等待0.2秒”語(yǔ)句模塊,防止占用過多系統(tǒng)資源造成死機(jī)(如圖3)。
值得一提的是,mPython X右側(cè)的編程區(qū)是對(duì)應(yīng)的Python代碼(圖4)。
點(diǎn)擊mPython X上方的“刷入運(yùn)行”按鈕,稍后就會(huì)看到界面右下角有“刷入成功”的提示,說明程序已經(jīng)寫入到掌控板中。再次打開手機(jī)微信的“掌控板物聯(lián)網(wǎng)”小程序,會(huì)看到對(duì)應(yīng)的掌控板“招遠(yuǎn)一中2號(hào)”后面出現(xiàn)“在線”字樣,說明掌控板與網(wǎng)絡(luò)是正常連接的;接著,點(diǎn)擊左下方的Mac地址區(qū)域(不要點(diǎn)擊后面的“配置”按鈕),會(huì)出現(xiàn)一個(gè)有三個(gè)開關(guān)的控制頁(yè)面,分別標(biāo)注為“黃燈”“紅燈”和“綠燈”,且都處于白色“斷開”狀態(tài);嘗試點(diǎn)擊“黃燈”開關(guān)(變?yōu)樗{(lán)色接通狀態(tài)),會(huì)有“已發(fā)送,值為:1”的提示出現(xiàn),此時(shí)掌控板正面中央的三個(gè)RGB燈就會(huì)發(fā)出黃光,5秒鐘后熄滅;如果再測(cè)試點(diǎn)擊“紅燈”或“綠燈”開關(guān),掌控板的RBG燈均會(huì)發(fā)出對(duì)應(yīng)的紅光和綠光(如圖5)。
借助手機(jī)微信端的“掌控板物聯(lián)網(wǎng)”進(jìn)行必要的配置工作,然后在mPython X中進(jìn)行編程,最終實(shí)現(xiàn)了手機(jī)微信遠(yuǎn)控紅綠燈的效果,大家不妨一試。