作者/圖片:Ted Lee
俗話說,上天有「天眼」可以看盡人間禍福,8787 也有「長眼」能辦識各種顏色。今天要來透過 8787 內建的 AI 影像處理(image processing)功能應用實作,看看如何利用 8787 積木式開發工具 Pixetto Junior,以非接觸辨色的方式自動開燈。
材料準備

註:
- 另需準備測試用紅色外殼原子筆(或其他便於顏色識別物件)一支
- 如果讀者想將開發板換成 Uno 或其他 Arduino 版本,請務必將傳輸線做調當的調整(技術諮詢→Line:https://reurl.cc/Vadax6)
硬體連接
可以將 8787 視為一塊 Arduino 擴充板(extension board),以四線 2.0 mm 的 JST(Japan Solderless Terminal)PH 系列接頭和 Nano 連接,使用 UART(Universal Synchronous Asynchronous Receiver Transmitter)做為序列(serial)傳輸協定(protocol)。
將 Nano 插在麵包板上固定,以下列方式連接 Nano 和 8787:


Arduino Nano 和 8787 的連接方式
功能設計
這邊將介紹如何以 Pixetto 提供的 Junior 積木式開發工具啟動 8787 內建的顏色偵測功能作為電燈(以 Nano D13 腳板載的 SMD LED 示意)感應裝置。
1. 在 Function 區選用 Color Detection 並勾選 Colors 為 Red 後按下 Apply

2. 初始化(initialize)8787

3. 當 8787 偵測到物件時並判斷它為紅色時,則點亮(給高電位)D13 的板載 LED 0.5 秒,然後關閉(給高電位)

4. 燒錄程式(目前 Pixetto Junior 正在改版加入 Nano 的支援,我是以 Arduino IDE 燒錄程式碼,若讀者是以 Arduino Uno 串接 8787,則可在 Pixetto Junior 上直接上傳)

完整的程式碼
積木所對應的 Arduino 程式碼如下,其中 8787 的函式庫(libraries)可由此壓縮檔匯入(import):
#include <Arduino.h>
#include <SmartSensor.h>
SmartSensor ss(0,1);
void setup() {
ss.begin();
// D4: yellow (Tx)
// D5: white (Rx)
//
// D0 (Rx): yellow (Tx)
// D1 (Tx): white (Rx)
pinMode(13, OUTPUT);
}
void loop() {
if (ss.isDetected()) {
if (ss.getTypeID() == ss.COLOR_RED) {
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
}
}
}
成果展示
讀者可以參考VIA Pixetto 視覺感測器大開箱(unboxing):AI 開發工具(Development Kits)篇,使用 Pixetto Utility 工具先測試 8787 的辨色功能是否正常。
教學活動設計
- 以 Nano 串接可程式化的 WS2812B 燈條。準備紅、綠、藍三張色卡,當 8787「看到」什麼顏色,就讓燈條以此色點亮之
- 在 Nano 上加一繼電器(relay),使 8787 能用紅球與黑球來控制 110 V 小檯燈的開關
(本文經作者同意轉載自泰布布部落格、原文連結;責任編輯:賴佩萱)
- GenAI拆解學習:以「健康手環監測系統」示例 - 2025/10/23
- Claude生、Claude生:Claude生成各種Python視窗專案 - 2025/09/30
- GenAI生成多媒體播放器 - 2025/08/21
訂閱MakerPRO知識充電報
與40000位開發者一同掌握科技創新的技術資訊!


