2017年10月28日 星期六

mBot x App Inventor 2:IoT 應用(四)

簡介

IoT 應用來到第四集,之前數集都是用 mBlock 及 IoT Module 才能做到 IoT 連接。這次會介紹一個只需要藍牙版 mBot 和一部 Android 智能裝置就可以做到 IoT 連接的方法。

Makeblock 其中一間港澳認證教育夥伴(Certified Educational Partner)最近發佈了 App Inventor 2 的擴充功能,可以讓 Android 智能裝置先連接藍牙,再連接 IFTTT 或是 ThingSpeak。

基本的 mBot x App Inventor 2 連接

要使用 IoT 的擴充功能,先要準備一些簡單的 mBot 連接設計,詳情可參考這裡,或是下載這個範例檔

*** 2018 年 6 月 7 日更新 ***
Extension 下載:
因為舊有連結已經失效,因此可在下載壓縮檔(已包含 IFTTT 及 ThingSpeak 的 aix 檔)。

mBot x App Inventor 2 x IFTTT

如果需要使用 IFTTT,就需要使用 IFTTT 的擴充功能。

1. 先選擇 Import Extension:

2. 然後選擇 〝From my computer〞,並選擇剛下載的〝mbotAndSTEM_ifttt.aix〞。(2018 年 6 月 7 日更新)

3. 稍等一會,就會看到 IFTTT 的 Extension 成功加入:

4. 加入 IFTTT 的 Extension 到設計中,就可以在程式設計中看到 IFTTT 的 Extension 了:

mBot x App Inventor 2 x ThingSpeak

如果需要使用 ThingSpeak,就需要使用 ThingSpeak 的擴充功能。

1. 先選擇 Import Extension:

2. 然後選擇 〝From my computer〞,並選擇剛下載的〝mbotAndSTEM_ThingSpeak.aix〞。(2018 年 6 月 7 日更新)

3. 稍等一會,就會看到 ThingSpeak 的 Extension 成功加入:

4. 加入 ThingSpeak 的 Extension 到設計中,就可以在程式設計中看到 ThingSpeak 的 Extension 了:

總結

使用 App Inventor 2 的 Extensions 完成 IoT 連接,除了不需使用 IoT 模組外,還可以使用一些 mBot 現時不支援,而智能裝置有的功能,例如 GPS 等,但同樣有弊點,就是不能完全使用所有 mBot 的模組,例如 TFT 等。所以,只需按照自己需求合適選取就可以了。

2017年10月15日 星期日

mBlock 使用技巧:IoT 應用(三)

簡介

近日得知 Makeblock 其中一間港澳認證教育夥伴(Certified Educational Partner)亦發佈了一個名為〝ME IoT WiFi Module〞的擴展,功能更簡潔,但亦有需要注意的地方。

IoT的相關擴展

在 mBlock 3.4.11 之後版本的擴展管理器中,搜尋功能終於有搜尋能力,若果我們在擴展管理器中搜尋〝IoT〞,可以找到以下相關的擴展:


5 個擴展都是 Makeblock 港澳認證教育夥伴的作品,雖然功能性大致相同,但亦讓我們來比較一下每個的優劣處:

ME IoT WiFi Module

這個就是剛才說的那個新擴展,非常簡潔,只有 3 個積木,已經包含了 IFTTT 及 ThingSpeak 的功能。


但需注意的地方是,連接 WiFi 的積木固定了連接埠 1 - 4:


仔細看一下 Arduino C 的程式會發現,連接埠 1 - 4 已經指定了 mBot 的連接埠 1 - 4。即是說,如果你使用其他的板子,就會因為 RX 和 TX 的不同(詳細的 PIN 號參考這裡),而它不會因應板子的轉變而令連接埠有所不同,導致無法使用這個積木:


所以,這個擴展絕對適合使用 mBot ,且打算用 IoT 連接 IFTTT 或 ThingSpeak 的用家。如果你使用其他板子,就必須使用其他擴展。

其他擴展

其他的擴展都由另一間 Makeblock 港澳認證教育夥伴的發佈,如果你打算使用 Blynk,真的非常抱歉,你只有這個選擇。但若果你打算使用 IFTTT 或 ThingSpeak,你也可以考慮這個。

相對上面的擴展,這個擴展分開了 IFTTT 和 ThingSpeak的擴展,而且每個擴展的積木也不少:


但是它也有它的好處,它可以自由選擇接腳位,即是它並不限制板子的種類,你可以使用其他板子來使用 IoT 的功能:


更新(2017-10-16):

IoT_IFTTT 及 IoT_ThingSpeak 現已更新至 v1.3.0 及 v1.1.0,可於 Makeblock 四大主控板 (mCore、Orion、Auriga、MegaPi)上選擇連接埠,比舊版本更容易使用;另外也可自行選擇數位腳位(Digital PIN)或類比腳位(Analog PIN)。


收腳位(RX)和接腳位(TX)你當然可以參考的文章,也可以靠自己找出來,方法很簡單,而且已經寫在板子上:


每一個連接埠有幾個小字,都是這個連接埠不同的 PIN,其中最右面的就是收腳位(RX),在它旁邊的就是接腳位(TX)。所以 mCore 的連接埠 1 的 RX 和 TX 分別是 12 和 11,而連接埠 2 的 RX 和 TX 就是 10 和 9 了。

總結

如果你只有 mBot 或是教導學生使用,我會建議使用前者,十分方便簡單;但其他情況下,我會強烈建議使用後者。

2017年10月14日 星期六

mBot 入門教學:組裝 mBot 3D 教學

可能有些老師或是同學沒有平板電腦或是智能手機,特意將 Makeblock App 內的搭建的說明配以字幕,方便大家組裝 mBot。