Pozdrav, stanovnici naše stranice! Kad sam prevodio članak na pseudo-drveni LED sat, neki su čitatelji pomislili: je li moguće zamijeniti senzor vibracije potreban za prebacivanje načina rada sata, termometra i higrometra s domaćim? Naravno da možete, a autor Uputstva pod nadimkom ArifSae govori kako.
Majstor koristi oprugu s namotane žice kao pokretni element senzora. Osim bakrene, možete koristiti čeličnu oprugu, na primjer, od nalivpera s gumbom, ali je kruta, što će utjecati na parametre senzora.
Budući da je žica za namatanje lakirana, mora se ukloniti. Da biste to učinili, ArifSae primjenjuje brusni papir:
Umotavanje oduzete žice (usput, uzeto iz motora pokvarenog računalnog ventilatora) na čavlo:
I sakuplja takve stvari s opruge i otpornika od 220 Ohma na ploči tipa perfboard:
Ako je opruga bakrena, takav senzor vibracije treba postaviti strogo okomito, inače će se opruga naginjati i dodirnuti izlaz otpornika, čak i ako nema vibracije. Sa čeličnom oprugom senzor se može raditi u bilo kojem položaju.
Možete suzbiti odskok kontakata senzora i programsko i hardversko. Drugi vam omogućuje pojednostavljenje programa, dok je električni krug malo kompliciran. Jedan od krugova za hardversko suzbijanje odziva prikazan je na slici:
Takav krug također produljuje impuls uz vrlo kratak kontakt opruge s izlazom otpornika. To pomaže programu da prepozna okidač, čak i ako je napisan pomoću teških knjižnica i "usporava". Nećete se morati uplitati u upravljački program spomenutih pseudo-drvenih satova, a pomoću vlastito napravljenog senzora, načini će se mijenjati u ringu na isti način kao i kod onog spremnog.
Programer ima senzor vibracije spojen na analogni ulaz Težak, koji vam omogućuje čitanje stanja s naredbom digitalRead i naredbom analogRead. U drugom slučaju možete isključiti kondenzator, tada neće biti hardverskog suzbijanja brbljanja, a program će moći procijeniti intenzitet vibracije. Ispod su dva primjera skice korištenja odgovarajućih naredbi. Prvo:
int senzor = A5; // senzorski pin
int led = 13; // zadano led na arduino
poništavanje postave () {
pinMode (senzor, ULAZ);
pinMode (vodio, OUTPUT);
Serijski počet (9600);
}
void petlja () {
int napon = digitalno čitanje (senzor); // pročitajte ovdje senzor
Serijski.println (napon); // napon ispisa na serijski monitor na PC-u
kašnjenje (1000);
ako je (napon>> = 1) {// ako se opružni kontakti pri tresenju
digitalWrite (vodio, VISOK); // uključiti led da pokaže da se osjeti vibracija
kašnjenje (2000);
digitalWrite (led, LOW); // isključiti led sada
} // kraj ako je napon
} // krajnja petlja
A drugi:
int senzor = A5;
int led = A0;
void petlja () {
int sensorValue = analogRead (senzor);
napon plovka = sensorValue * (5.0 / 1023.0);
Serijski.println (napon); kašnjenje (200);
ako je (napon> gt = 0,5) {// ovdje postavite osjetljivost, povećajte napon 0,5 za manje osjetljive, smanjite za osjetljiviji
digitalWrite (vodio, VISOK);
kašnjenje (2000);
digitalWrite (led, LOW); }
}
Prednost vibracijskog senzora nad senzorom je mogućnost prebacivanja načina rada ne dodirivanjem određene točke na kućištu, već dodirivanjem bilo gdje. U drugoj metodi čitanja može se postići različita reakcija ovisno o intenzitetu točenja. Na primjer, kako bi način uključivanja prstena bio reverzibilan: sa slabim dodirom na jednoj strani, s jakim na drugoj.