用搖桿做一個姿勢控制器——身體就是遙控器
你知道嗎?玩《蜘蛛人》的時候,往上推搖桿,蜘蛛人會跳。
那天晚上,阿哲往上推搖桿的時候,心裡想的卻是:
「如果家裡的燈也可以這樣動,應該很酷。」
燈,認識你的那一刻
他停下來了。
不是因為遊戲裡的什麼,是因為那個念頭——
「往上推,房間的燈也跟著亮?」
不是按開關。不是喊聲。是輕輕推一下搖桿,燈就懂了。
他後來說,那感覺像是「這房間突然認識我了」。
身體多了一個開關
做出來之後的生活是這樣的:
站在房間中央,把搖桿往上推——燈亮了。
往下推——暗下去。
往左,往右——顏色換一換。
不是遙控器。不是手機。是你的手。
做出這個,你需要什麼
- 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);
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);
}
複製,燒錄。就這幾行。
從這裡開始
- 露天拍賣搜尋:Arduino Nano、KY-023、WS2812B 30顆
- 今天下單,明天到貨
- 下載 Arduino IDE(免費,有中文介面)
- 複製上面的程式碼,燒進去
- 把燈條黏在牆上,試著推一下搖桿
你會看到燈跟著動。
那一刻,你就知道——
這房間,聽得懂你的話。
Top comments (0)