2017年11月11日 星期六

Makeblock應用:水溫指標屏

前言

近日和朋友談起學生將 mBot 應用在創客(Maker)方面時的問題,很多人都無法破除「mBot 是一輛車」的看法,很設計都是讓 mBot 保持在一輛車的狀態。對我而言,「mBot 是一部有車身的電腦」,因此,只要把 mBot 的車身拆走,它就是一部電腦了。

適逢近日我在準備小學五年級的 STEM 課堂,他們在學完電的課題後,要設計一個能解決日常生活的裝置。縱然大部份的設計都未能成功,但不少的設計都令我十分驚嘆,畢竟他們不是從小就被訓練創意思維。

其中一組的設計令我印象深刻,他們的設計原文是:

「有時開了煤氣爐後,洗手盆的水喉會發熱,所以我們想做一個發光器。當水喉擰得太過時(太熱),就會開紅燈;當太凍時就會亮綠燈。」


當時我看到覺得非常有趣,但由於硬件的配套不足,而未能成功,實在可惜。但我認為 Makeblock 正好可以作為一個平台,讓學生完成他們的設計。因此,我仿效了這個設計,將設計放在 mBot 上實體化。

設計


設計以簡單為主,模組只用上了數字板和防水溫度感應器。程式設計亦十分簡單,只是將水溫顯示在數字板上,然後根據水溫顯示轉換 LED 燈的顏色,溫度越高越紅,越低越藍。

測試

測試一開始,我先將水瓶注入熱水,水溫迅速由室溫的攝氏25度跳升到攝氏60度,LED 燈亦由藍色轉為紫色。相信大家都知道水的沸點是攝氏100度,而溶點是攝氏0度,因此我們不會看到絕對的藍色或是紅色。



在後期,我逐漸加入冰塊令水溫快速下降,到最後水溫降至攝氏13度,LED 燈亦變回藍色。


總結及延伸

在發展創意思維方面,Makeblock 真的提供了一個很好的平台,讓學生將自己的設計實體化。簡單的組裝,簡單的程式設計,就已經將複雜的硬件配置問題解決了,絕對能在 STEM 發展上幫上忙。

將這個設計延伸下去,其實可以做到很多事情,我舉其中兩個例子:

  1. 按照當時天氣的溫度,調較出適合的洗手溫度;夏天出冷水,冬天出熱水。
  2. 加入可控制的功能,讓用家可以調較出想要的水溫,確保嬰孩在洗澡時的溫度保持在合適溫度。
謹記,mBot 不僅是一輛車,適當地運用,它絕對能做到你想做的事。

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。


2017年10月5日 星期四

mBot x STEM:mBot 水平儀

簡介

我們很多時候看到有一些運用了手提電話內的陀螺儀應用的水平儀,這次我們也會使用 Me 陀螺儀(Me 3-Axis Accelerometer and Gyro Sensor)配合 mCore 造出一個水平儀。

Me 陀螺儀(Me 3-Axis Accelerometer and Gyro Sensor)

首先,我們了解一下 Me 陀螺儀的功能,它是一款理想的機器人運動檢測、姿態檢測模組。包含 3 軸加速度計、3 軸角速度感測器與運動處理器,並提供 I2C 介面通信。

Me 陀螺儀能夠在 X、Y、Z 軸測量加速度的變化,通過感知特定方向的慣性力總量,加速計可以測量出加速度和重力;三軸加速計意味著它能夠檢測到三維空間中的運動或重力引力。加速計可以測量重力(引力)g,如果模組靜止而沒有任何動作,地球引力對其施加的力大約為 1g;如果模組豎直放置,會檢測到 Y 軸上施加的力約為 1g。如果模組以一定角度放置,會檢測到 1g 的力會分佈在不同的軸上。

當模組在三維空間中運動或振動時,Me 陀螺儀會在一個或多個軸上檢測到大於 1g 的力並測量出加速度,對加速度積分可以獲得速度和位移。當物體繞軸旋轉時會產生角速度,Me 陀螺儀能夠檢測 X、Y、Z 軸的角速度變化量;運動處理引擎通過 I2C 埠直接輸出資料,可以減輕週邊微處理器的工作負擔並且避免了繁瑣的濾波和資料融合。

因此,我們在應用時,只需要通常簡易的計算,就可以使用了。

Me 2.2吋 TFT 液晶屏(Me TFT LCD Screen – 2.2 Inch)

除了 Me 陀螺儀外,我也用了 Me 2.2吋 TFT 液晶屏來模擬水平儀上的水珠的走動。Me 2.2吋 TFT 液晶屏的螢幕解析度為 320 寬 x 240 高,和 mBlock 的背景舞台不同,Me 2.2吋 TFT 液晶屏的起始點(0, 0)在螢幕的左上方,而非在螢幕的正中央,因此我們待會需要做一些換算,才能正常顯示。

組裝


水平儀是一個可攜帶的裝置,因此我使用了鋰充電池取代 AA 電池,同時,我也使用了鋰充電池盒安裝在 mCore 的底部,也方便作為量度時的定點。另外,安裝 Me 陀螺儀時亦要注意水平地安裝,以減少量度時出現的誤差。另外,組裝時需注意 Me 陀螺儀的方向,箭咀指向的方向是代表該座標數值的減少,留意清楚才能配合在 Me 2.2吋 TFT 液晶屏的顯示。


連接埠方面,我使用了連接埠 1 連接 Me 2.2吋 TFT 液晶屏,而 Me 陀螺儀並無指定的連接埠,因此我選擇了連接埠 4。而為了方便使用,不宜使用太長的 RJ25 連接線。

編程

Me 陀螺儀會回傳 X、Y、Z 軸的角度,根據我的組裝,X、Y、Z 軸的改變會像這個情況:


X、Y 軸的回傳數值由 -90 至 90,而 Z 軸的回傳數值則由 -180 至 180,但由於我們只量度水平狀況,所以 Z 軸的數值我們並未有使用。

然後,我們需要按 X、Y 軸的數值換成螢幕上的寬和高:


很多學生雖然懂得乘法、除法、分數甚至比例,但都未能將 X、Y 軸的數值按比例地換成螢幕上的寬和高。X 軸的角度不斷增加時,寬的座標就會不斷減少;而 Y 軸的角度不斷增加時,高的座標就會不斷增加。

這時我們發現 Y 軸的變化是一個正比,會比較容易處理,我們可以將高的一半 120 分成 90 份,然後再乘以 Y 軸的角度,最後加上高的一半,即是 120,就能成功按照高的比例增加 y Y 座標的數值。由於 Y 軸的角度可以是負數,加上 120 後就會少於 120,符合正常的情況。mBlock 的積木就如下圖所示,其中的「Height-M」就是高的一半,而「Y-Angle」就是 Y 軸的角度:


而 X 軸的變化則是一個反比,和 Y 軸相同,我們先把寬的一半 160 分成 90 份,然後再乘以 X 軸的角度,但在最後,我們把它減去寬的一半。這個做法會首先將 X 軸的角度按寬的比例變化,然後減去寬的一半,就能讓它們將最少值減到 -320,最後只要取得座標的絕對值,讓負數變回正數,正數不變,就能取得正確的 X 座標。mBlock 的積木就如下圖所示,其中的「Width-M」就是寬的一半,而「X-Angle」就是 X 軸的角度:


完整的 mBlock 程式如下:


一開始我慣常把一些恆常數值放在變數,之後取得 Me 陀螺儀的 X、Y、Z 軸的角度,值得注意的地方是,使用 Me 陀螺儀的 mBlock 積木是不需要選擇連接埠的。之後我會清除 Me 2.2吋 TFT 液晶屏上的內容,我選擇在迴圈當中清除,是因為 Me 2.2吋 TFT 液晶屏的積木可以讓它不斷在 Me 2.2吋 TFT 液晶屏上增加內容,如果不在迴圈中清除,將會看見模擬水泡的殘影。

之後,繪畫了兩條紅線來定義正中央的位置,當模擬水泡在兩條紅線的交叉點時,代表水平儀在水平狀態,最後在計算出來的座標上畫上一個綠色圓點代表模擬水泡。我刻意在每次迴圈結束前,讓它等待 0.1 秒,讓它減慢畫面閃爍的頻率,亦不減慢畫面更新的速度。

測試結果


2017年10月3日 星期二

mBot 入門教學:mBot 第一次到手必需知道的事

簡介

近日有同事經學校買了 mBot,有些人是買來自己玩的,亦有買來教小朋友玩的,但同樣地她們都陷入迷惘,不知從何開始,所以今次我會分享一些第一次拿到 mBot 後你需要知道的事。

mBot 的組裝


  1. 不論你買的是藍牙版,或是 2.4G 版,盒內都會有一支螺絲批,這支螺絲批是雙用的,一面是十字批,主要用在組裝前期,用於固定摩打及車輪;另一面是六角批,組裝後期經常使用,安裝很多零件時都會用上,而且螺絲批的手感很好。
  2. 不論是 RJ25 連接線,或是電池盒線,我都會建議我的學生把它們擊繞在六角黃銅柱上,不單是因為外觀緣故,而且可以避色它們阻礙到 mBot 的運作。
  3. 包裝內有電池盒及充電池的盒子,表示你可以選擇使用 4 粒 AA 電池,或是使用 mBot 專用 3.75V 1800mAh Li-Polymer充電池。其實,如果你使用 USB 線連接電腦,是不可以不使用電池的。

原廠玩法

mBot 組裝後,已經有內置的原廠程式,即使不懂編程,亦可以體驗 mBot 的樂趣。你可以使用包裝內的紅外線遙控器(需要使用 CR2025 鈕型電池)。

遙控模式

按下紅外線遙控器上的〝A鍵〞,就可以啟動遙控模式,之後 mBot 上的 LED 會亮起白光。這時你可以用紅外線遙控器上的方向鍵控制 mBot 移動,亦可以用數字鍵改變 mBot 的速度,1 是最慢,9 是最快。


避障模式

按下紅外線遙控器上的〝B鍵〞,就可以啟動避障模式,之後 mBot 上的 LED 會亮起綠光。這時請確保你的 mBot 已放在地上,因為 mBot 會一直向前走,直至它遇到障礙物,它就會後退轉向,你也可以用手擋著超聲波感應器來模擬有障礙物。


巡線模式

按下紅外線遙控器上的〝C鍵〞,就可以啟動巡線模式,之後 mBot 上的 LED 會亮起藍光。這時 mBot 會沿著黑線走,你可以放它在隨盒附送的8字型地圖上,亦可以購買黑色電線膠紙,自己拼貼路線,也可以在電腦列印路線,但要注意黑線的粗幼,不宜少於 2cm 。


Makeblock App 控制

我們除了可以使用紅外線遙控器控制外,我們也可以使用 Makeblock App 中的「控制」做出相同效果。


除了紅外線遙控器和 Makeblock App,你也可以使用 mBot 上的按鈕轉換模式。原廠玩法除了可以讓你體驗 mBot 的樂趣,也可以讓你測試 mBot 的組裝是否正確,例如你發現 mBot 的前進變成了後退,可能是因為接線接錯了。

編程軟件

我們主要用三款編程軟件遊玩 mBot,分別是在流動裝置上使用的 mBlock App 及 Makeblock App,和在電腦上使用的 mBlock。

mBlock App(M部落)




M部落由一系列編程學習課程構成,最適合從未接觸或剛剛接觸編程的小朋友使用,創意性的將游戲融入其中,以“闖關挑戰”替代測試。無需老​​師,不用監督,學習編程就像玩遊戲,讓小朋友能夠沉浸在學習中而不自知。

Makeblock App





Makeblock App 不僅是一款機器人操控軟件,更是一款快速實現創意的工具。為 mBot 提供了 30+ 的預設控件,通過組合不同的控件,能夠創造出自己的專屬機器人。 Makeblock App 內所提供的圖形化編程語言,讓編寫機器人控製程序就像堆積木一般的簡單而有趣。

mBlock


mBlock 是一款最適合初學者的編程軟件,繼承了 Scratch 簡單、易用等特點,並融合了Arduino 強大的可拓展性。支持在線控制與程序上傳,只需輕輕拖拽 mBlock 語句,就像堆積木一樣簡單。同時能夠幫助初學者順利過渡到真正的編程語言。

電子模塊學習

購買一部 mBot,裡面已經包含了各種電子模塊,包括TT馬達、LED及蜂嗚器、光線感應器、超聲波感應器巡線感應器紅外線遙控等。小朋友可以逐步去嘗試,去優化自己的程式。

拓展玩法

當小朋友已經掌握 mBot 中的電子模塊,家長可以考慮購買一些擴展包,讓他們的 mBot 功能變得更強大。

六足連桿機器人擴展包(6-Legged Robot Pack)



6-Legged Robot Pack 是一款基於 mBot 設計的 3 合 1 搭建擴展包。用戶可以使用擴展包搭建至少三款不同型態:「六足甲蟲」、「螳螂」和「青蛙」,享受改裝 mBot 的過程。mBot 六足機器人令 mBot 不再只限於車的型態,而且可以仿生不同的動物昆蟲,玩起來更生動、有趣。六足甲蟲將原本使用滾輪前行的 mBot 轉為使用六足前行,神似地模擬甲蟲移動的模樣。螳螂在 mBot 原有的滾輪外再加上兩隻螳螂臂,令行走時更穩定。青蛙以跳躍方式行走,令 mBot 變得更活潑。

聲光互動擴展包(Interactive Light & Sound Pack)


與 6-Legged Robot Pack 相同,Interactive Light & Sound Pack 亦能讓 mBot 變成三個不同型態:Light Chasing Robot、Scorpion Robot、Intelligent Desk Light。


Light Chasing Robot 增加了兩個光敏感應器於 mBot 的左右兩側,令 mBot 能更敏銳地偵測光線的方向,猶如為 mBot 添上一對眼睛,準確地向著光源前進。


Scorpion Robot 將使用金屬零件組成的尾巴配合聲音感應器組裝在 mBot 的背面,不僅令 mBot 的外型變為蠍子型態,更可以透過拍擊手掌,令 Scorpion Robot 上的 RGB LED 燈任意轉變顏色,以及透過金屬尾巴利用重力使 mBot 前方的滾輪離地,為 mBot 增添動感!


Intelligent Desk Light 是先將 mBot 拆解並加入聲音感應器及 RGB LED 燈模組,重新組裝成檯燈的型態。Intelligent Desk Light 有兩種操控模式,包括觸控模式及聲控模式。觸控模式是通過用手指觸碰巡線感應器來調節 RGB LED 燈的光暗度;聲控模式則是運用聲音感應器來感應聲音的強度使 RGB LED 燈亮起。

動感小貓擴展包(Servo Pack)


Servo Pack 是一款基於 mBot 設計的一個搭建擴展包,專為那些喜歡讓東西移動起來的初學者們而設計。用戶可以使用擴展包在 mBot 小車上加上小舵機,增加 mBot 的功能及動感,搭建至少三款不同型態:「Dancing Cat」、「Head-Shaking Cat」和「Light-Emitting Cat」,更可透過改裝過程發展想像及創造力。Servo Pack 令 mBot 玩起來更多變化!Dancing Cat 增加了一雙能自由擺動的手,能隨音樂搖擺及跳舞,為 mBot 添上更多動感
。Head-Shaking Cat 是將超聲波感應器配合伺服摩打使用,令 Head-Shaking Cat 型態的 mBot 探測障礙的角度更廣,動作更靈活敏捷,加強 mBot 上的超聲波傳感器的作用
。Light-Emitting Cat 是將伺服摩打及 RGB LED 模組安裝於 mBot 背面,令 Head-Shaking Cat 增加集中的照明功能,於黑暗中亦能清楚看見周遭環境。

裝扮mBot

如果想讓 mBot 看起來更可愛,可以考慮為它裝扮一下。官方有一些表情卡片,或是我的 blog 也有一些,把它印在硬卡紙上就可以了。也有空白的,可以自由設計。

常見問題

mCore 主控板藍牙和 2.4G 都兼容嗎?

2.4G 模塊和藍牙模塊接口是一樣的,可以隨時切換,但是不能同時使用。

為什麼遙控 mBot 前進時,mBot 會偏向?

  1. RJ25 線或者電機線壓到了輪胎上,導致摩擦力增大,速度減慢。建議整理一下接線;
  2. 電量太低,更換新的 AA 電池或者為鋰電池充電。

為什麼控制 mBot 小車時,前進變成後退呢?

多數情況是因為電機接線接反了,將兩個電機接頭反過來接就可以啦。

mBot 可以用什麼軟件編程?

  1. 桌面設備可以使用 mBlock 和 Arduino 編程;
  2. 移動設備可以使用 Makeblock App 和 M部落 App 編程。

為什麼超聲波避障模式或巡線模式無法正常運作?

  1. 檢查電子模塊的接口是否正確接到控制板上,出廠程序中,超聲波感應器的默認接口為控制板 3 號接口;而巡線感應器的默認接口為控制板 2 號接口;
  2. 檢查電子模塊接線是否接好,是否有接鬆的情況;
  3. 檢查電子模塊上的紅燈是否常亮,不亮說明接線可能有問題;
  4. 出廠程序中,當mBot進入超聲波避障模式,控制板上的 LED 燈會發出綠光;當mBot進入巡線模式,控制板上的 LED 燈會發出藍光;如果顏色不對,說明沒有進入正確的模式。

為什麼用紅外遙控器控制不了 mBot?

  1. 檢查控制板中程序是否為出廠程序,如果不是,請重新燒錄程序;
  2. 檢查紅外遙控器中是否有電池;
  3. 出廠程序中,當mBot進入紅外線遙控模式,控制板上的彩燈會發出白光,如果顏色不對,說明沒有進入正確的模式。

mBot 用過一次 mBlock 編程後 ,為什麼不能像一開始那樣遙控器/手機 App 控制小車了?

mBlock 編程過後,原來的出廠程序就被覆蓋掉了,就不能使用遙控器或者 App 控制了。重新燒錄出廠程序後,即可恢復控制。

安裝固件和恢復出廠程序的區別?

安裝固件:是一個下載到 mBot 的控制板(mCore)上的一個引導程序,連線模式下編程時要確保控制板中最後下載的是這個固件,才能離線運作。如使用過 Arduino上傳程序,或點擊了「恢復出廠程序」,這個固件就會被覆蓋掉;

恢復出廠程序:是一個可以使用紅外遙控、手機連接藍牙 App 控制的程序。這是出廠默認安裝到 mBot 的控制板(mCore)的程序 如發現小車不能使用紅外或者 App 控制了,恢復出廠程序就可以了。

如何恢復mBot出廠程序?

第一步,打開 mBlock 軟件(如未安裝,下載地址:http://www.mblock.cc/download/);


第二步,接上 USB 數據線,並打開電源開關;
第三步,【控制板】→ 點擊勾選【mBot(mCore)】;


第四步,【連接】→ 選擇好對應的串口號;


第五步,【連接】→ 點擊【恢復出廠程序】 → 【mBot】;


第六步,等待上傳完成即可;
第七步,【連接】→ 點擊【更新韌體】,確保 mBot 保持在最新版本;


第八步,等待上傳完成即可;

為什麼接上USB線到控制板後,電腦還是檢測不到串口?

  1. 可能沒有安裝控制板驅動,可以在 mBlock 軟件上找到(安裝 Arduino 驅動),同時也可以在這裡下載;
  2. 可能控制板開關沒有打開,在使用 mBot V1.0 和 mBot V1.1 版本時,如果開關沒有打開,串口是檢測不了的(控制板開關上面有標明狀態);
  3. 如果嘗試過上面的方法後,還是無法檢測到串口,建議電腦換一個 USB 串口試試。

在電腦接上USB線後,我應該選擇哪一個序列埠?

在確保 mBot 的電源開啟後,只要選擇序列埠列表中最後一個就可以了。

我是使用最新版本的 Macbook ,而它只有 USB Type C 接口,我每次連接 mBot 後,Macbook 都會當機,有辦法解決嗎?

  1. 你需要下載一個新版本的 CH340 Driver
  2. 安裝後請重新開機;
  3. 然後每次需要連接 mBot 時,謹記先連接轉換器,再插入 USB 線;
  4. 再將 USB 線連接 mBot,再打開 mBot 的電源即可。
  5. 序列埠中選最後的「/dev/tty.wchusbserial14430」就可以。

mBot 鋰電池充電時有保護麼?

有的,鋰電池本身就有過流保護和過充保護等安全防護,可放心使用。

控制板接上鋰電池後怎麼充電呢?

控制板接上鋰電池後,再將控制板通過 USB 線連接到電腦就可以充電,無論開關是否打開,都可以進行充電。如果將開關關閉,充電效率最高。控制板的鋰電池插頭左邊紅燈亮,說明正在充電,右邊綠燈亮,說明電池充滿電。

2017年9月23日 星期六

Makeblock開箱:顏色辨識 Color Sensor

簡介

早前,有人嘗試利用光線感應器作顏色辨識之用,但是Makeblock HK即將推出真的 Color Sensor,可以用來將彩虹糖分顏色了!

Color Sensor 正面,需連接藍/白色的連接埠

Color Sensor 背面,有兩粒光度十足的LED

測試

第一次使用,先做一個簡單的〝Hello World〞測試一下性能。原本打算取代巡線感應器位置,但由於背面有很多SMC零件,不能再加裝輔助輪,所以唯有把它裝到車尾的位置。


Makeblock HK 已為 Color Sensor 提供擴展,用家只需到擴展器下載,即可使用。


擴展中只有兩個功能,分別是回傳檢測到的顏色的 R/G/B 值,及辨識檢測到的顏色是否某幾種指定顏色。


測試第一步會先測試檢測指定顏色的功能,我準備了七種顏色紙,並放在 Color Sensor 1.5厘米下看看它能否檢測正確。

被測試的七種顏色紙

測試結果反映,藍色的效果最好,檢測橙色也會被視為黃色,反而檢測黃色時被誤以為是白色,而如果把綠色紙放到超近距離,也能檢測到是綠色。

檢測藍色紙,結果是藍色

檢測橙色紙,結果是黃色

檢測黃色紙,結果是白色

出術地檢測綠色紙,結果也可以是綠色

第二步會測試回傳的 R/G/B 數值,再讓板載 LED 亮起相同的顏色。結果可以看看以下影片:


總結

第二次測試相比起第一次,效果變化更明顯。除了測試 A4 顏色紙之外,我亦有測試其他較大而且透光度低的物件,例如膠紙座、錢包等,效果亦比紙張好,證明透光度會成為設計中一個需考慮的因素。

紅色的膠紙座

藍色的錢包

黃色的文件夾

綠色的簿冊

另外,與 Color Sensor 的測試距離也是一個需考慮的因素,檢測位置的光暗會影響檢測結果,貼近 Color Sensor 檢測會有最少的多餘光線影響,距離太大則有過多光線,經過反覆嘗試,我認為檢測距離在 0.5 至 1.5 厘米之間,可以獲得較佳效果。

總括而言,如果想用 Color Sensor 幫你分彩虹糖顏色,必須反覆的測試,得出一個最好的檢測環境,方可免卻吃錯口味的煩惱!