999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

初嘗物聯網“掌控板遠控樹莓派LED燈陣”

2021-07-15 20:13:37牟曉東
電腦報 2021年19期
關鍵詞:動作

牟曉東

我們在開發開源硬件涉及到物聯網應用項目時,會用到一種為連接遠程設備提供實時可靠消息服務的MQTT(Message Queuing Telemetry Transport)協議,即“消息隊列遙測傳輸協議”。這是一種基于“客戶端-服務器”的“消息發布與訂閱”式即時通訊協議,開銷較小且占用的網絡帶寬也較低,非常適合進行物聯網創客項目的實施。比如我們來制作一個利用掌控板遠控樹莓派LED燈陣的項目,通過對掌控板的A、B鍵按下和搖晃掌控板三種動作,遠程觸發樹莓派上的LED燈陣發光、熄滅和流水閃爍效果。

1.在mPython X中為掌控板編程實現消息發送

將掌控板通過數據線與電腦USB接口連接,運行mPython X,登錄成功后進行程序的編寫。

首先設置網絡的連接,分別填寫好WiFi名稱和密碼;接著從“物聯網”-“MQTT”中選擇第一個MQTT模塊,客戶端“client_id”的內容設置為“luke007”,這是樹莓派的古德微機器人網站登錄賬號名稱;服務器“server”的內容設置為古德微機器人網站的“www.gdwrobot.top”;下方的“user”和“password”保持為空,“keepalive”也保持默認的“30”不變;然后添加一個“連接MQTT”模塊,作用是根據上方的參數設置模塊與對應的服務器進行MQTT連接;接著,使用“顯示”區域中的“OLED顯示清空”“OLED第1行顯示……”和“OLED顯示生效”三個模塊,控制掌控板的OLED顯示屏輸出提示信息:“MQTT連接成功!”(如圖1)。

以按下掌控板的A鍵為例,先從“事件”區域中選擇第一個“當按鍵A被按下時執行”,再從“MQTT”中選擇“發布……至主題……”,分別輸入“ON”(注意大寫)和“luke007/KeyA”,作為按鍵A被按下時觸發的第一個動作:向樹莓派賬號luke007發送主題為“KeyA”的消息,其值為“ON”;然后,添加一個0.5秒的等待語句。同理,再設置按鍵B被按下時觸發“發布‘ON至主題‘luke007/KeyB”;當掌控板檢測到“被搖晃”的動作發生時,觸發“發布‘ON至主題‘luke007/Shaking”(如圖2)。

2.在古德微機器人網站中為樹莓派編程實現消息接收

在瀏覽器中訪問古德微機器人網站,登錄賬號luke007后開始進行“積木”編程:

第一, 從左側“物聯網”-“常用”中選擇“設置物聯網服務器”,保持服務器“www.gdwrobot.top”和端口號“1883”默認不變,用戶名和密碼保持為空;接著使用一條輸出調試信息,內容為“開始監聽掌控板傳來的消息:”,作為程序運行的提示信息。

第二, 是三個監聽主題語句(無先后次序),監聽的主題為“KeyA”、“KeyB”和“Shaking”,分別對應掌控板的按鍵A、按鍵B和搖晃動作所觸發的消息主題。

第三, 從“線程”中添加三個子線程,同樣也是不分先后次序,線程函數名分別為“ListenKeyA”、“ListenKeyB”和“ListenShake”,分別對應監聽掌控板三個動作消息后進行調用對應同名的函數(如圖3)。

以函數“ListenKeyA”為例,外層的“如果……執行……”條件分支對“物聯網是否收到新數據”進行判斷,條件成立的話則對變量“A鍵”進行賦值,其值為“獲取主題‘KeyA的數據”;接著輸出調試信息“收到掌控板A鍵消息!”,表示已經收到了掌控板按鍵A的動作消息;然后再用內層“如果……執行……”條件分支對“‘A鍵的值是否為‘ON”進行判斷,條件成立,說明掌控板的A鍵已經被按下,于是調用“LED_ON”函數(如圖4),執行由5、6、12和16四支LED所組成的燈陣全部發光的動作(如圖5);最后的0.1秒等待語句,作用仍然是防止程序過多占用系統資源。

與此類似,函數“ListenKeyB”和“ListenShake”是用來監聽掌控板按鍵B是否被按下和整個掌控板是否被搖晃兩個動作的(如圖6),條件成立則分別調用“LED_OFF”和“LED_Water”函數,前者是熄滅LED燈陣,后者則是循環點亮和熄滅燈陣,效果類似于流水燈(如圖7)。

3.安裝并測試“掌控板遠控樹莓派LED燈陣”

返回mPython X界面,點擊“刷入運行”按鈕,將程序代碼寫入掌控板(稍候,右下角會有“刷入成功”、連接WiFi:“Connection WiFi……”的提示),掌控板顯示屏的第一行會顯示出“MQTT連接成功!”;在古德微機器人平臺先點擊“連接設備”,然后點擊“運行”按鈕,LOG調試信息區會顯示提示信息:“開始監聽掌控板傳來的消息:”。

此時,嘗試輕輕按下掌控板的A鍵,樹莓派的LED燈陣就會亮起(LOG調試信息提示:“收到掌控板A鍵消息!”);輕輕按下B鍵,樹莓派的LED燈陣就會熄滅(LOG調試信息提示:“收到掌控板B鍵消息!”);如果搖晃掌控板的話,樹莓派的LED燈陣就會出現流水燈效果(LOG調試信息提示:“收到掌控板晃動消息!”)。如果多次測試無問題,就說明我們實現了掌控板遠控樹莓派LED燈陣進行開、關燈和流水燈的目標(如圖8),大家不妨一試。

猜你喜歡
動作
動作不可少(下)
巧借動作寫友愛
下一個動作
動作描寫要具體
畫動作
讓動作“活”起來
動作描寫不可少
非同一般的吃飯動作
動作喜劇電影周
電影故事(2015年30期)2015-02-27 09:03:12
神奇的手
主站蜘蛛池模板: 五月婷婷丁香综合| 久久国产精品麻豆系列| 人妻一区二区三区无码精品一区| 一级毛片无毒不卡直接观看| 噜噜噜久久| 欧美在线一级片| 免费观看亚洲人成网站| 伊人精品成人久久综合| 在线播放真实国产乱子伦| 熟女成人国产精品视频| 国产成人精品午夜视频'| 夜夜操国产| 亚洲成人精品| 亚洲伦理一区二区| 国产二级毛片| 国模极品一区二区三区| 永久免费av网站可以直接看的 | 国产一级毛片网站| 国产精品美人久久久久久AV| 就去色综合| 天天色综网| 久久婷婷人人澡人人爱91| 免费A∨中文乱码专区| www.精品国产| 婷婷色一二三区波多野衣| 黄色国产在线| 欧美特级AAAAAA视频免费观看| 鲁鲁鲁爽爽爽在线视频观看 | 亚洲精品成人福利在线电影| 亚洲无码在线午夜电影| 亚洲欧洲日韩综合| 国产av无码日韩av无码网站| 亚洲精品午夜天堂网页| 欧美日韩在线第一页| 无码在线激情片| 欧美翘臀一区二区三区| 视频二区中文无码| 国产呦视频免费视频在线观看| 亚洲一级色| 成人在线不卡| 亚洲欧美国产视频| 国产又粗又猛又爽视频| 色视频国产| 国产精品hd在线播放| 永久成人无码激情视频免费| 99爱在线| 福利视频久久| 亚洲精品国产综合99久久夜夜嗨| 亚洲伊人天堂| 99视频在线免费| 国产成人一区| 日韩精品一区二区三区swag| 手机成人午夜在线视频| 亚洲国产系列| 免费毛片视频| av在线人妻熟妇| 久久精品国产国语对白| 国产喷水视频| 在线观看国产小视频| 婷婷综合色| 国产成人免费手机在线观看视频 | 久久精品只有这里有| 亚洲精品成人片在线播放| AV无码无在线观看免费| 久久人搡人人玩人妻精品一| 欧美性猛交xxxx乱大交极品| 成人噜噜噜视频在线观看| 国产91小视频| 国产精品亚洲精品爽爽| 日本在线视频免费| 狠狠v日韩v欧美v| 日韩免费毛片视频| 国产精品综合久久久 | 中文字幕天无码久久精品视频免费| 久久亚洲欧美综合| 婷婷综合在线观看丁香| 538国产在线| 亚洲 欧美 偷自乱 图片 | 成人av专区精品无码国产| 久久亚洲国产视频| 色婷婷狠狠干| 久久综合九色综合97网|