13-14視力保健機

(2017/01/16)

前陣子利用超音波測距模組(HC-SR04)製作智慧型垃圾桶,想再多做一些應用,想了想發現可以製作[視力保健機],當小朋友看書的距離太近時,蜂鳴器就會嗶嗶叫來警示,光這樣可能太單薄了一些,所以又加入[光敏電阻]來測光,當光線太暗時,蜂鳴器就會嗶嗶叫來警示,最後再加入[傾斜開關],如果姿勢歪掉,也會嗶嗶叫來警示!先利用Transformer來測試,最後再用MotoBlockly來完成離線裝置!

題目一:視力保健機(Transformer版)

  • 說明:利用簡單的Arduino模組,如超音波測距模組(HC-SR04)來測看書距離;[光敏電阻]來測環境的亮度;[傾斜開關]來測頭部是否歪斜,利用上述模組來做一個視力保健機!

  • 所需材料:

    • Arduino控制板 X 1

    • 超音波距離感測器 HC-SR04 X 1

    • 光敏電阻模組 X 1

    • RGB三色LED燈 X 1

    • 無源蜂鳴器 X 1

    • 傾斜開關 X1 (含10K電阻(棕黑橙金)一個)

    • 小型麵包板 X 1

    • 9V電池及電池扣 X 1 (離線工作用)

    • 杜邦線

    • 簡易頭燈 X 1 (改裝成視力保健機)

    • 整理盒(Motoduino的盒子) X 1

  • 硬體部分:

  • 接線說明:

    • 啟動Transformer 2.0,並進入Scratch2.0

    • Scratch程式:(程式也很簡單,所以才說適合國小學生來做)

問題:

有關光敏電阻值究竟高於多少才算太暗,這要再經過實測才知道?

傾斜開關究竟要傾斜到多少才算姿勢不良,這也要去調整,然後再給予固定!

測試成功!

題目二:視力保健機(MotoBlockly版,離線版)

  • 硬體的部分同上

  • 進入Moto Blockly (檔案於附件,程式寫法同上)

  • Arduino程式

    • int ultrasonic_trig = 10;int ultrasonic_echo = A0;float ultrasonic_distance() { digitalWrite(ultrasonic_trig, LOW); digitalWrite(ultrasonic_echo, LOW); delayMicroseconds(5); digitalWrite(ultrasonic_trig, HIGH); delayMicroseconds(10); digitalWrite(ultrasonic_trig, LOW); unsigned long sonic_duration = pulseIn(ultrasonic_echo, HIGH); float distance_cm = (sonic_duration / 2.0) / 29.1; return distance_cm;}void setup(){ pinMode( ultrasonic_trig , OUTPUT); pinMode( ultrasonic_echo , INPUT); pinMode(2, OUTPUT); pinMode(13, OUTPUT); pinMode(4, OUTPUT); pinMode(7, INPUT); pinMode(3, OUTPUT);}void loop(){ if (ultrasonic_distance( ) <= 30 && ultrasonic_distance( ) >= 15) { digitalWrite(2,HIGH); tone(13,255,200); delay(200); digitalWrite(2,LOW); delay(200); } if (ultrasonic_distance( ) < 15) { digitalWrite(2,HIGH); tone(13,255,100); delay(100); digitalWrite(2,LOW); delay(100); } if (analogRead(A1) > 500) { digitalWrite(4,HIGH); tone(13,300,100); delay(100); digitalWrite(4,LOW); delay(100); } if (digitalRead(7) == 1) { digitalWrite(3,HIGH); tone(13,300,100); delay(100); digitalWrite(3,LOW); delay(100); } digitalWrite(2,LOW); digitalWrite(3,LOW); digitalWrite(4,LOW);}

  • 離線版完成圖

  • 實作相片

  • 測試成功