用搖桿做一個「姿勢控制器」——身體就是遙控器
你知道嗎?玩《蜘蛛人》的時候,往上推搖桿,蜘蛛人會跳。
但那天晚上,阿哲往上推搖桿的時候,心裡想的卻是:
「如果家裡的燈也可以這樣動,應該很酷。」
燈,認識你的那一刻
他停下來了。
不是因為遊戲裡的什麼,是因為那個念頭——
「往上推,房間的燈也跟著亮?」
不是按開關。不是喊聲。是輕輕推一下搖桿,燈就懂了。
他後來說,那感覺像是「這房間突然認識我了」。
不是房間真的認識他。是搖桿讓燈學會了聽他的話。
身體多了一個開關
做出來之後的生活是這樣的:
站在房間中央,把搖桿往上推——燈亮了。
往下推——暗下去。
往左,往右——顏色換一換。
不是遙控器。不是手機。是你的手。
「往上推」的時候,你在跟燈說:「這邊亮一點。」
「往下推」的時候,你在說:「暗下來。」
身體的動作,變成了房間的語言。
那個「燈跟著你動」的 moment
第一次真的發生,是深夜兩點。
他只是隨手推了一下——
燈跟著動了。
他沒有做任何複雜的事。只是推了一下。
那個 moment,他說像是「房間第一次回應他」。
不是「我會寫程式了」。是「這房間,好像聽得懂我說話」。
做出這個,你需要什麼
不貴。全部在露天拍賣可以買到。
- Arduino Nano(兼容版)—— NT$130
- KY-023 搖桿—— NT$55
- WS2812B 燈條(30顆)—— NT$120
- 麵包板 + 杜邦線—— NT$50
總共大約 NT$355。
今天下單,明天到貨。
為什麼是「姿勢」而不是「按鈕」
按鈕是確定的:按下去,A 或 B。
姿勢是不確定的:往上推多少,決定燈多亮。
這就是好玩的地方——
當燈的回應取決於你手的幅度,
你就會開始「玩」房間,
而不只是在「使用」它。
怎麼組裝
第一步:把東西攤開
拿出 Arduino(很小,一個火柴盒大小)。
拿出搖桿(有個小桿子可以前後左右推)。
拿出燈條(軟的,可以黏在牆上)。
放在桌上,看一分鐘。
這就是你的遙控器。只不過不是對著電視,是對著整個房間。
第二步:接線(只有6條)
搖桿 → Arduino
5V → 5V
GND → GND
X → A0
Y → A1
燈條 → Arduino
5V → 5V(有點亮就好,不用全插)
GND → GND
訊號線→ D6
就這樣。沒有別的了。
第三步:燒程式
#include <Adafruit_NeoPixel.h>
#define LED_PIN 6
#define NUM_PIXELS 30
Adafruit_NeoPixel strip(NUM_PIXELS, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
strip.begin();
strip.show();
}
void loop() {
int x = analogRead(A0); // 左右:控制顏色
int y = analogRead(A1); // 上下:控制亮度
// 往上推(A1讀值變小)= 變亮
uint8_t brightness = map(y, 0, 1023, 255, 0);
uint16_t hue = map(x, 0, 1023, 0, 65535);
uint32_t color = strip.ColorHSV(hue, 255, brightness);
for (int i = 0; i < NUM_PIXELS; i++) {
strip.setPixelColor(i, color);
}
strip.show();
delay(50);
}
複製,燒錄。就這幾行。
你可以延伸的方向
① 顏色開關
把 X 軸設定成「推到左邊 = 暖白光、右邊 = 彩虹」,不用慢慢調。
② 聲音控制
結合聲音感測器,喊「亮」——燈亮;喊「暗」——燈暗。
③ 鎖定功能
搖桿中央有個按鈕,按下去把當下顏色鎖住,燈就不動了。
從這裡開始
- 露天拍賣搜尋:Arduino Nano、KY-023、WS2812B 30顆
- 今天下單,明天到貨
- 下載 Arduino IDE(免費,有中文介面)
- 複製上面的程式碼,燒進去
- 把燈條黏在牆上,試著推一下搖桿
你會看到燈跟著動。
那一刻,你就知道——
這房間,聽得懂你的話。














