作者/圖片:Ted Lee
本文將透過8787內建的AI影像處理(image processing)功能應用實作,設計一款隨時演奏一曲快樂頌提提神!(小提示:利用8787的模板匹配功能來演奏音樂曲目,例如:看到LV標誌播一曲快樂頌。)
材料清單
本次專案所需要的材料清單如下:
造形設計(機構)
請參考音箱(https://reurl.cc/exmDkR)或音樂盒(https://reurl.cc/9E54bX)的概念設計作品的外觀。記得將8787及其相關電路的尺寸考量進去。
功能設計(電路、程式)
先依照下表及接線圖接妥8787、Nano與蜂鳴器的連接線路。請留意,蜂鳴器需接在Nano的數位模擬類比之PWM(Pulse Width Modulation,脈衝寬度調變)腳位(pin)上,例如下表的~D9。
在Pixetto Utility 上選用形狀偵測功能,以此LV商標(https://reurl.cc/9E57nn)框選出即將要被識別的最小矩形後再將之套用至8787。可參考拙著《VIA Pixetto視覺感測器大開箱(unboxing):AI開發工具(Development Kits)篇》一文。
接著,在Pixetto Junior 上拉出下圖的積木程式。這個程式的邏輯是一開機後先讓蜂鳴器發出一頻率為100 Hz的聲音來做自我測試(self test)。
接著,若8787「看見」前述的LV商標後就播放音效(讀者可利用此簡譜 https://reurl.cc/7X37b5 修改成對應的音頻)。否則,就讓蜂鳴器靜音。其中,為了讓8787不致於很快速的重覆識別到LV商標,我們加上變數i以做為旗標(sentinel)控制。
積木程式自動生成的Arduino程式碼如下所示:
#include<Arduino.h> #include<SmartSensor.h> SmartSensor ss(0,1); int i; void setup() { ss.begin(); pinMode(9, OUTPUT); i = 0; // D4: yellow (Tx) // D5: white (Rx) // // D0 (Rx): yellow (Tx) // D1 (Tx): white (Rx) analogWrite(9, 100); delay(300); analogWrite(9, 0); } void loop() { if (ss.isDetected()) { if (ss.getTypeID() == 1) { i = i + 1; if (i == 1) { analogWrite(9, 330); delay(300); analogWrite(9, 277); delay(300); analogWrite(9, 262); delay(300); } } } else { i = 0; analogWrite(9, 0); delay(300); } }
本單元的操作影片
教學活動設計
將前述的LV商標換成Gucci後讓8787再重新識別看看。
(本文經作者同意轉載自泰布布部落格、原文連結;責任編輯:王姵文)
Related Posts
- 【一見你就閃】使用VIA Pixetto視覺感測器之人臉偵測功能 - 9 12 月, 2020
- 使用VIA Pixetto的特徵點偵測功能設計「幸運轉輪」 - 29 10 月, 2020
- 【創客入門】用Micro:bit設計一款心臟病遊戲 - 9 8 月, 2020
#include <Arduino.h>
#include <SmartSensor.h>