2012.01.16.
18:53

Írta: harsanyireka

Kopogás érzékelése piezoval

knock.jpg

 

 

"piezoelektromosság olyan elektromos jelenség, melynek során bizonyos anyagokon (kristálykerámia) összenyomás hatására elektromos feszültség keletkezik, illetve elektromos feszültség hatására alakváltozás jön létre." / bővebben: http://hu.wikipedia.org/wiki/Piezoelektromoss%C3%A1g

A piezo hangszórók csak megfelelő polaritással működnek, ez azt jelenti hogy meghatározott irányban kell hogy ármenjen rajta az áram, ezért a fekete vagy kék drótját a földbe még a pirosat az analóg pinbe kell kötni. Plusz 1MOhm-os ellenállást is használunk, ugyanebből a pinbe kell a másik Gnd (földelés) pinbe kötni, hogy megóvjuk az arduinot. (Piezo hangszoró 12V DC gerjesztő áramkörrel.)

Műanyag borítás nélkül is beszerezhető a piezo, fényes lemezeknek látszanak, könnyebb őket szenzorként használni, pl. lehet nyomogatni. Akkor működnek a legjobban ha az érzékelő felületük erősen neki van támasztva valaminek, vagy fel van ragasztva. Így néz ki: https://www.youtube.com/watch?v=Xuw9frP1GNo&feature=related
piezo.jpg 

Léteznek hajlékony piezo-film lapok, vagy kisebb elemek, ezekkel nagyobb felületen lehet érzékelni.

pizoelectricfilm.jpg

A lejebb található kódban, a piezóból érkező adatok egy általunk megadott küszöbértékhez vannak viszonyítva. Próbáld meg növelni vagy csökkenteni ezt az értéket, hogy  kihasználd a szenzorod teljes érzékanységi tartományát.

Arduino kód:

/* Knock Sensor - Kopogás szenzor

This sketch reads a piezo element to detect a knocking sound.
It reads an analog pin and compares the result to a set threshold.
If the result is greater than the threshold, it writes
"knock" to the serial port, and toggles the LED on pin 13.

The circuit:
* + connection of the piezo attached to analog in 0
* - connection of the piezo attached to ground
* 1-megohm resistor attached from analog in 0 to ground

http://www.arduino.cc/en/Tutorial/Knock

created 25 Mar 2007
by David Cuartielles <http://www.0j0.org>
modified 30 Aug 2011
by Tom Igoe

This example code is in the public domain.

*/


// defíniáljuk az állandókat, ezek nem változnak majd
const int ledPin = 13; // la 13 digit pinbe tegyünk LEDet
const int knockSensor = A0; // piezot az analog pin0-ba kötjük
const int threshold = 50; // 0-100-ig, az a küszöbérték amihez
// viszonyítjuk hogy a hang kopogás-e vagy sem
// ezt növeld vagy csökkentsd hogy működjön a szenzor

// ezek a változók:
// ez a változó tárolja a szenzor pin-jéből kiolvasott értéket:
int sensorReading = 0;
// ez a változó tárolja el a LED utolsó állását:
int ledState = LOW; 


void setup() {
pinMode(ledPin, OUTPUT); // deklaráljuk a ledPin-t OUTPUT-ként
Serial.begin(9600); // bekapcsoljuk a serial portot
}

void loop() {
// olvassuk ki és tároljuk el a szenzor értékét:
sensorReading = analogRead(knockSensor);

// ha a kiolvasott érték nagyobb mint a küszöb érték:
if (sensorReading >= threshold) {
// kapcsold át a ledPin állapotát
// ! boolean jelentése: nem
// ledÁllapota = nem ledÁllapottal, tehát az ellenkezőjével
ledState = !ledState;
// frissítsd a LEDpin értékét az aktuális állapotával:
digitalWrite(ledPin, ledState);
// a "Knock!" string-et küldd vissza a sz.gépnek:
// a string-et karakterek tárolására használjuk
Serial.println("Knock!");
}
delay(100);
// késleltetés, hogy elkerüljük a
// serial port buffer túlterhelését
}

 

Serial portot használunk. Ha a jobb felső sarokban megnyomod a Serial Monitor gombot, láthatod ahogy kiírja a "Knock!" stringet, amikor érzékeli a piezo szenzo a hangot.

forrás: http://www.arduino.cc/en/Tutorial/KnockSensor

http://arduino.cc/en/Tutorial/Knock

cc-by-sa3s.jpg

Szólj hozzá!

Címkék: leckék

A bejegyzés trackback címe:

https://harsanyireka.blog.hu/api/trackback/id/tr93545213

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása