吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一次學會使用Adafruit IO平臺!

jf_cVC5iyAO ? 來源:易心Microbit編程 ? 作者:易心Microbit編程 ? 2022-11-22 16:16 ? 次閱讀

Adafruit IO 是一個免費/付費的IoT 平臺,提供數據云端化、圖像化的服務整合,Adafruit IO 可以讓用戶自由定義云端的資料內容;

Protocol 除了支持MQTT(S)、HTTP(S)、WebSocket 外,也提供多樣化的API供使用者使用,

大部分程序語言都可以透過HTTP 或MQTT 協議對Adafruit IO 存取。

接下來就要開始帶大家一步步操作,內容包含以下七個部分:

1. 注冊Adafruit IO賬號

2. 建立Group

3. 建立Feed

4. 建立Dashboard

5. 取得Username & AIOKey

6. 軟件安裝

7. 程序設計(IoT范例)

一、注冊Adafruit IO 賬號

首先至Adafruit IO官網注冊頁面,注冊免費賬號。

免費及付費賬號所支持的功能差異請參見下表,一般小型項目使用免費賬號即可;有更多需求的伙伴可以自行評估是否升級,以$10 USD/月或$99 USD/年的方式去付費使用。

a31a6010-6717-11ed-8abf-dac502259ad0.jpg

二、建立Group

Group(群組)主要用來集中管理Feed(傳感器節點),可將一個Group當作一臺裝置看待(如下圖所示的Device 1號、Device 2號),裝置內便能建立各自的傳感器,好處是可以更集中管理或存取每個裝置內的傳感器。

a338a188-6717-11ed-8abf-dac502259ad0.png

請參考下圖建立Group。

a360eb0c-6717-11ed-8abf-dac502259ad0.gif

三、建立Feed

Feed(節點)是用來存放感測數據及觀看歷史數據的地方:下圖紅框區域會呈現歷史數據折線圖;藍框由左至右分別表示「新增一筆資料」、「下載所有數據」、「過濾及塞選數據」;下方綠框會顯示歷史數據;右側紫色框內除了顯示Feed基本數據的「Feed Info」外,更可針對此Feed新增更多設定。

a39aa20c-6717-11ed-8abf-dac502259ad0.png

點入Feed Info后可見,畫面如下圖所示,紅框內容為預設提供的API,若是使用MQTT 協議可以直接復制MQTT by key這行內容,作為MQTT 要Subscribe(訂閱)或Publish(發布)的Topic(主題),詳細HTTP 的API可以參考官網提供的API Documentation。

a3c52aae-6717-11ed-8abf-dac502259ad0.png

請參考下圖建立Feed。

a3e695d6-6717-11ed-8abf-dac502259ad0.jpg

四、建立Dashboard

Dashboard 即儀表板,以圖型方式呈現數值,默認提供多種圖表供選擇,包含開關、滑桿、調色盤、圖片、折線圖等等,使用這些圖表相互搭配可以很容易的建構出網頁版的監測站,比起其他平臺省去不少建置費用及時間成本!

a4782cda-6717-11ed-8abf-dac502259ad0.png

在建立Dashboard 的時候預設有多種block可以選擇。

a4d877e8-6717-11ed-8abf-dac502259ad0.png

選擇Dashboard 時需要選取對應的數據源(即Feed),并針對細節做顯示設置:例如Gauge可以設定標題、數值顯示的范圍、線寬粗細等等,可依照使用需求去設定調整。

a4fd955a-6717-11ed-8abf-dac502259ad0.png

請參考下圖建立Dashboard。

a511ceee-6717-11ed-8abf-dac502259ad0.gif

五、取得Username & AIO key

在對Adafruit IO 數據操作時都需要經過驗證,使用MQTT、HTTP時都需提供賬號及AIO Key才可存取Adafruit IO,以下將介紹如何取得賬號密碼。

進入Adafruit IO官網,點選紅框「My Key」跳出賬號密碼。

https://io.adafruit.com/

a555bfe6-6717-11ed-8abf-dac502259ad0.png

下圖藍框為Username,紅框是系統產生的AIO Key,若密碼意外泄漏,也可透過右邊綠色框內的「REGENERATE KEY」按鈕重新產生新的密碼。這里有一點要特別注意,Adafruit IO會定時檢查Github上公開的code,看有沒有人不小心把密碼放上去,若是被掃描到的話,Adafruit IO 相當地貼心,會自動幫你重新產生新的key,不過還是請大家要小心,密碼不要亂放唷!

a57a69cc-6717-11ed-8abf-dac502259ad0.png

六、軟件安裝

(一)軟件下載與擴充

撰寫程序時我們是采用與Scratch類似的Blockly 來編寫程序,所以需要下載LinkIt 7697專用的程序撰寫編輯器BlocklyDuino v3。

https://github.com/MediaTek-Labs/BlocklyDuino-for-LinkIt/releases/tag/3.0.312b

目前該程序只支持Windows的操作系統,請依照自己的版本將下載下來的壓縮文件解壓縮。

a5998492-6717-11ed-8abf-dac502259ad0.png

因為該編輯器是免安裝的版本,對于路徑相當要求,解壓縮后的文件夾不能放置在任何有中文檔名的文件夾內,否則上傳程序時可能會產生錯誤。

除了編輯器外,我們還需要下載兼容BlocklyDuino的鏈接庫CIRCUS Pi KIT,因為原先的BlocklyDuino內并沒有Adafruit IO相關的程序積木,所以需要用戶自行擴充。

https://github.com/iCShopMgr/CIRCUS_Pi_KIT

a5cab26a-6717-11ed-8abf-dac502259ad0.png

如上圖所示,點選擴充程序CIRCUS Pi KIT鏈接后,找到「0622擴充程序.zip」這個選項并點選。文件名的0622是發布爾日期,若有新的版本日期會不同。

依照下圖所示,點選「Download」的選項下載擴充程序到自己的計算機,下載完成后請解壓縮。

a5e33a74-6717-11ed-8abf-dac502259ad0.png

截至目前為止我們應該獲得了兩個文件夾,分別是程序編輯器「BlocklyDuino」以及「0622擴充程序」。接下來請將「0622擴充程序」文件夾內的兩個檔案復制起來,并在BlocklyDuino文件夾內貼上并取代。

a6066eb8-6717-11ed-8abf-dac502259ad0.png

(二)安裝驅動程序

請下載并安裝「CP2102N 驅動程序」,以便PC能連接到您的LinkIt 7697。

點選頁面內「DOWNLOADS」的選項,并依照您操作系統的版本,下載對應的驅動程序并安裝。

a6339438-6717-11ed-8abf-dac502259ad0.png

將上述步驟做完就完成軟件的準備啰~現在開啟軟件檢查看看有沒有擴充程序吧!打開BlocklyDuino文件夾,并點選「BlocklyDuino.exe」,如下圖所示,檢查看看有沒有「Adafruit IO」的選項。

a6562cf0-6717-11ed-8abf-dac502259ad0.png

七、程序設計(IoT 范例)

本次使用Linkit7697做為IoT 裝置硬件,開發環境使用BlocklyDuino,示范如何與Adafruit IO溝通,將數據發送至Adafruit IO、透過Adafruit IO Dashboard網頁控制Linkit7697 LED亮滅。

(一)程序撰寫

依照下圖所示拉入積木程序代碼,請自行修改WiFi ID、WiFi密碼、Adafruit IO Username、AIO Key;DeviceID 可以自定義,在云端平臺會作為Group 名稱,并且積木程序將會使用DeviceID 作為MQTT ID,所以每個裝置請使用不同的DeviceID,重復使用將會剔除ID 相同者聯機。

a6806646-6717-11ed-8abf-dac502259ad0.png

程序說明

1. 設定并聯機到WiFi聯機,請自行修改WiFiID、密碼。

2. 設定并聯機到Adafruit IO,請自行修改AdafruitIO Username、AIO Key。

3. 在Loop函式中持續同步AdafruitIO狀態以檢查傳感器數據是否更新。

4. 使用計時的方式取代Delay,每10秒將目前的開機毫秒數更新到云端。

5. 設定當云端傳感器led更新時判斷內容并控制內建LED亮滅。

完整Adafruit IO范例程序

https://github.com/iCShopMgr/CIRCUS_Pi_KIT/blob/main/Example/AdafruitIO%E7%AF%84%E4%BE%8B%E7%A8%8B%E5%BC%8F.zip

(二)Adafruit IO設定

在Adafruit IO中可以透過首次發布新資料時自動建立Feed,建議大家可以自行建立所有的Feed,以確保資料發布成功。

下圖為建立一個名為「icshop」的群組,「led」、「time」Feed。

a6ae10b4-6717-11ed-8abf-dac502259ad0.png

下圖為建立一個名為「icshop」的Dashboard。

a6d063bc-6717-11ed-8abf-dac502259ad0.png

在「icshop」Dashboard內點選紅框「Create New Block」新增圖塊。

a6f4858a-6717-11ed-8abf-dac502259ad0.png

選擇「Stream」圖塊。

a723e4f6-6717-11ed-8abf-dac502259ad0.png

數據源選擇icshop「time」。

a74ba4c8-6717-11ed-8abf-dac502259ad0.png

設定Stream Block Title,可自定義。

a7733d1c-6717-11ed-8abf-dac502259ad0.png

新增「Toggle」圖塊。

a79a7fe4-6717-11ed-8abf-dac502259ad0.png

數據源選擇icshop「led」。

a7bc4e62-6717-11ed-8abf-dac502259ad0.png

設定Toggle Block Title(可自定義),可設定發送的文字內容,默認為「ON」、「OFF」。

a7ddc83a-6717-11ed-8abf-dac502259ad0.png

完成后如下圖所示。

a800bd22-6717-11ed-8abf-dac502259ad0.png

Linkit7697 將會每10秒發送一次開機時間到AdafruitIO,并且使用者可透過網頁開關控制Linkit7697 LED亮滅,如下圖所示。

a81fa552-6717-11ed-8abf-dac502259ad0.jpg

關閉LED

a843ddbe-6717-11ed-8abf-dac502259ad0.jpg

開啟LED

八、結語

Adafruit IO 支持MQTT(S)、HTTP(S)、WebSocket,所以不管用什么語言都很容易上手;再加上相當直覺的網頁操作接口、簡潔好上手的Dashboard、完整的官方API,更重要的是有免費版本可以使用;我們也針對 Adafruit IO 制作了積木程序,對于初學者使用上會更加容易,不妨現在就一起使用 LinkIt 7697 操作看看吧!

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2553

    文章

    51390

    瀏覽量

    756569
  • IO
    IO
    +關注

    關注

    0

    文章

    461

    瀏覽量

    39368
  • IOT
    IOT
    +關注

    關注

    187

    文章

    4230

    瀏覽量

    197596
  • MQTT
    +關注

    關注

    5

    文章

    653

    瀏覽量

    22691

原文標題:一次學會使用Adafruit IO 平臺!

文章出處:【微信號:易心Microbit編程,微信公眾號:易心Microbit編程】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    學會使用示波器

    學會使用示波器
    發表于 08-10 22:47

    5分鐘學會使用CPLD教程

    5分鐘學會使用CPLD教程
    發表于 08-19 11:03

    學會使用A4988驅動電機有什么幫助

    初識Arduino,有什么錯漏的地方請指正.學會使用A4988驅動電機對于DIY3D打印機,雕刻機很有幫助。6線般是兩組,先用萬用表接其中根線,然后一次點其他線,凡是不同的都是另外
    發表于 07-08 08:29

    為什么IO一次讀時可能讀不到

    需要讀的IO一次讀時可能讀不到,要第二才可以,在需要進睡眠的時候注意單片機計時標記最好使用加,不要用減,否則可能會減不到0,加volatile也不行仿真時加volatile可以看變量,否則未調用
    發表于 07-16 06:36

    使用Platform.ioAdafruit Feather Huzzah上傳時遇到的問題求解

    我正在使用 Platform.ioAdafruit Feather Huzzah。我能夠上傳到這個板大約天。 現在我在上傳時遇到問題。 它是這樣的: 構建良好,上傳良好......藍燈閃爍了
    發表于 06-09 07:53

    循環充放電一次就是少一次壽命嗎?

    循環充放電一次就是少一次壽命嗎?     循環就是使用,我們是在使用電池,關心的是使
    發表于 11-11 13:59 ?866次閱讀

    電池循環充放電一次就是少一次壽命嗎?

    電池循環充放電一次就是少一次壽命嗎? 循環就是使用,我們是在使用電池,關心的是使用的時間,為了衡量充電電池
    發表于 09-06 11:05 ?3607次閱讀

    帶有Adafruit_IO的氣象站監視器源碼

    帶有Adafruit_IO的氣象站監視器源碼下載。
    發表于 05-08 10:50 ?9次下載

    使用Adafruit IO作為MQTT控制Raspberry Pi GPIO的AC設備

    在本教程中,我們將使用 Adafruit IO 作為 MQTT 代理來控制連接到 Raspberry Pi GPIO 的 AC 設備。
    的頭像 發表于 09-01 16:30 ?2684次閱讀
    使用<b class='flag-5'>Adafruit</b> <b class='flag-5'>IO</b>作為MQTT控制Raspberry Pi GPIO的AC設備

    電氣一次識圖基礎

    電氣一次識圖基礎
    的頭像 發表于 11-12 11:24 ?2153次閱讀

    使用Google Assistant和Adafruit IO實現家庭自動化

    電子發燒友網站提供《使用Google Assistant和Adafruit IO實現家庭自動化.zip》資料免費下載
    發表于 12-05 09:57 ?0次下載
    使用Google Assistant和<b class='flag-5'>Adafruit</b> <b class='flag-5'>IO</b>實現家庭自動化

    帶有Adafruit IO的太陽能氣象站

    電子發燒友網站提供《帶有Adafruit IO的太陽能氣象站.zip》資料免費下載
    發表于 12-14 11:25 ?0次下載
    帶有<b class='flag-5'>Adafruit</b> <b class='flag-5'>IO</b>的太陽能氣象站

    用于將數據從Google表單自動發布到Adafruit IO的Python腳本

    電子發燒友網站提供《用于將數據從Google表單自動發布到Adafruit IO的Python腳本.zip》資料免費下載
    發表于 06-16 15:47 ?0次下載
    用于將數據從Google表單自動發布到<b class='flag-5'>Adafruit</b> <b class='flag-5'>IO</b>的Python腳本

    使用Adafruit IO的無線警鈴

    電子發燒友網站提供《使用Adafruit IO的無線警鈴.zip》資料免費下載
    發表于 07-05 14:44 ?0次下載
    使用<b class='flag-5'>Adafruit</b> <b class='flag-5'>IO</b>的無線警鈴

    學會使用Channel Analysis

    電子發燒友網站提供《學會使用Channel Analysis.rar》資料免費下載
    發表于 11-21 10:43 ?1次下載
    <b class='flag-5'>一</b>步<b class='flag-5'>一</b>步<b class='flag-5'>學會使</b>用Channel Analysis
    百家乐官网真钱送彩金| 百家乐网络赌场| 大发888的比赛怎么报名| 百家乐官网双面数字筹码| 澳门百家乐规律星期娱乐城博彩| 洛南县| 百家乐试玩全讯网2| 在线博彩| 波音百家乐现金网投注平台排名导航 | A8百家乐官网娱乐平台| 大发888游戏大厅下载| 澳门百家乐官网现场真人版| 金博士百家乐的玩法技巧和规则| 彩会百家乐官网游戏| 百家乐是娱乐场| 视频百家乐官网赌法| 大发888 casino| 百家乐官网娱乐网真钱游戏 | 百家乐官网高级技巧| 大发888下载17| 好运来百家乐官网的玩法技巧和规则 | 百家乐官网下注法| 奔驰娱乐城开户| 百家乐从哪而来| 仪征市| 永利百家乐的玩法技巧和规则| 百家乐官网海滨网现场| 衢州星空棋牌下载| 利高百家乐娱乐城| 新民市| 大三元百家乐的玩法技巧和规则 | 网上百家乐危险| 网上百家乐官网危险| 澳门赌百家乐的玩法技巧和规则| 百家乐官网网上真钱娱乐平台| 百家乐玩法介| 怎么赌百家乐官网能赢| 香港六合彩报| 澳门百家乐送彩金| 缅甸百家乐官网龙虎斗| 巴登娱乐城真人娱乐|