顯示具有 HW 標籤的文章。 顯示所有文章
顯示具有 HW 標籤的文章。 顯示所有文章

2017-06-05

Arduino, Vibration Sensor SW420


Example Code
int pin_LED = 13;
int pin_EP = 9;

void setup() {
    Serial.begin(9600);
    pinMode (pin_LED, OUTPUT);
    pinMode (pin_EP, INPUT); //set EP input for measurment
}

void loop() {
    long measurement = TP_init(); //Vibration sensor.
    delay(50); // default is 50
    Serial.print( "key U:" ); Serial.print( " [" ); Serial.print( measurement ); Serial.print( "] " );

    if (measurement > 500){
            digitalWrite(pin_LED, HIGH);
            Serial.print( "Vibration Level: Earthquake." );

    } else if (measurement > 100){
            digitalWrite(pin_LED, HIGH);
            Serial.print( "Vibration Level: Shake Tea." );
            digitalWrite(pin_LED, LOW);
    } else {
            digitalWrite(pin_LED, LOW);
            Serial.print( "Vibration Level: Very Quiet." );
    }
}

long TP_init(){
    delay(10); // default is 10
    long measurement=pulseIn (pin_EP, HIGH); //wait for the pin to get HIGH and returns measurement
    return measurement;
}

2016-12-15

Arduino, RGB sensor TCS34725.


Required library Adafruit_TCS34725.
Turn Off embedded LED, wired TCS34725 of LED pin to Arduino of GND pin.

2016-11-24

Arduino, Light Sensor.


#include

IRsend irsend;

void setup()
{
     Serial.begin(115200);
     pinMode (A0, INPUT);
     pinMode (13, OUTPUT);
}

void loop()
{
     while (Serial.available() == 0);

     int pr = analogRead(A0);
     int val = Serial.read();

     if (val == 81) {
             irsend.sendNEC( 0x1067A857, 32 );
             Serial.println( "NeoSaid: Received Q." );

     } else if (val == 87) {
             irsend.sendNEC( 0x1067A857, 32 );
             Serial.println( "NeoSaid: Received W." );

     } else if (val == 69) {
             Serial.println(pr);

             if (pr > 700) {
                     Serial.println( "NeoSaid: Light Up." );
             } else {
                     Serial.println( "NeoSaid: Light Down." );
             }

             Serial.println( "NeoSaid: Received E." );
     } else {
             Serial.println( "NeoSaid: Nothing found!!!" );
     }

     //Serial.println(val);
}

2016-11-01

Arduino, LED

int ledPin_Red = 12;
int ledPin_Green = 11;
int ledPin_Yellow = 10;

void setup()
{
  pinMode(ledPin_Red, OUTPUT);
  pinMode(ledPin_Green, OUTPUT);
  pinMode(ledPin_Yellow, OUTPUT);
}

void loop()
{
  digitalWrite(ledPin_Red, HIGH);
  delay(100);
  digitalWrite(ledPin_Green, HIGH);
  delay(100);
  digitalWrite(ledPin_Yellow, HIGH);
  delay(100);

  digitalWrite(ledPin_Red, LOW);
  delay(100);
  digitalWrite(ledPin_Green, LOW);
  delay(100);
  digitalWrite(ledPin_Yellow, LOW);
  delay(100);
}

2016-05-17

Copy IR signal through Audio Editor.

Audio wave editor: Audacity (freeware)

A. Record IR
Config: 選擇正確麥克風輸入 --> (Mono) Record --> 麥克風聲音調至最大 --> 採樣率拉高一點 (預設 384000 is OK).

B. 複製一段 IR signal 做為待會新的正弦波參考用.
Operation 1: 軌道 ==> 新增 ==> Mono track
Operation 2: 開啟新軌道後, 下拉左邊音訊軌道 ==> Format 32bits ==> Rate 76,000Hz

D. 新增軌道3, 複製軌道2過來, 選擇 "效果" ==> "倒轉" 產生一個波形與軌道2相反的正弦波.

 E. 合併兩個軌道 (2&3)
Operation: 於軌道2, 選擇 "音訊軌道" ==> "製作立體聲軌道"



2016-03-17

LIRC, IR Transmitter [ irsend ]

Schematic (with Raspberry Pi)

(yellow, 3.5mm middle) PIN 17 [3.3V] ==> + IR LED - ==> [GND] PIN 06 (black, 3.5mm peak)

# irsend SEND_ONCE SHM38K KEY_OK

IRSEND OPTION
-- Help
-h --help display usage summary
-v --version display version
-d --device use given lircd socket [/var/run/lirc/lircd]
-a --address host[:port] connect to lircd at this address
-# --count n send command n times

-- DIRECTIVE can be:
SEND_ONCE - send CODE [CODE...] once
SEND_START - start repeating [CODE]
SEND_STOP - stop repeating [CODE]
LIST - list configured remote items
SET_TRANSMITTERS - set transmitters NUM [NUM...]
SIMULATE - simulate IR event

2016-03-16

LIRC, IR key mapping & Learning

# irrecord –d /dev/lirc0 lircd.conf

Pi, IR Receiver


VCC3.3V (Pin-01) ------------- IR receiver ( from left Pin-03)
GROUND ----------------------- IR receiver ( from left Pin-02)
GPIO-18 (Pin-12) -------------- IR receiver ( from left Pin-01)

2014-12-04

2014-03-06