- Modul senzora vibracija SW-420
- Komponente potrebne
- Shema kruga senzora vibracija Arduino
- Programiranje Arduino Uno senzora vibracije
- Ispitivanje kruga senzora vibracije Arduino
Postoji nekoliko kritičnih strojeva ili skupe opreme koji trpe štetu zbog vibracija. U takvom je slučaju potreban senzor vibracija da bi se utvrdilo proizvodi li stroj ili oprema vibracije ili ne. Prepoznavanje predmeta koji neprekidno vibrira nije težak posao ako se za otkrivanje vibracija koristi odgovarajući senzor. Postoji nekoliko vrsta senzora vibracijadostupan na tržištu koji može detektirati vibracije osjećajući ubrzanje ili brzinu i mogao bi pružiti izvrsne rezultate. Međutim, takvi su senzori preskupi tamo gdje se koristi akcelerometar. Akcelerometar je vrlo osjetljiv i može se koristiti za izradu kruga detektora potresa. No, malo je namjenskih, a dostupni su i jeftini senzori koji mogu detektirati samo vibracije, jedan takav senzor vibracija je SW-420 s kojim ćemo povezati Arduino Uno.
Dakle, u ovom projektu osnovni modul senzora vibracija povezan je s popularnim Arduino UNO-om i kad god senzor vibracije detektira bilo kakvu vibraciju ili trzaj, LED će početi treptati.
Modul senzora vibracija SW-420

Ovo je SW-420 modul za vibracije, koji može raditi od 3,3 V do 5 V. Senzor koristi komparator LM393 za otkrivanje vibracija preko točke praga i pružanje digitalnih podataka, Logic Low ili Logic High, 0 ili 1. Tijekom normalnog rada senzor daje Logic Low, a kada se detektira vibracija, senzor daje Logic High. U modulu su dostupne tri periferne jedinice, dvije LED diode, jedna za stanje napajanja, a druga za izlaz senzora. Uz to je dostupan potenciometar koji se dalje može koristiti za kontrolu praga točke vibracije. U ovom projektu koristit ćemo 5V za napajanje modula.
Isti smo senzor koristili u Anti-Theft Alert Systemu koristeći ATmega8 mikrokontroler. Također se senzor nagiba može koristiti za otkrivanje iznenadne nesreće.
Komponente potrebne
- Arduino UNO
- SW-420 modul osjetnika vibracije
- 5 mm LED (bilo koja boja)
- Jumper žice (spojne žice)
- USB kabel za prijenos programa
Shema kruga senzora vibracija Arduino
Shema povezivanja senzora vibracije s Arduino uno data je u nastavku.

LED je spojen u D13 pinu. Modul se napaja pomoću dostupnog 5V pina u Arduinu. Uzemljenje i 5V pin koriste se za napajanje Arduina, dok se A5 pin koristi za dobivanje podataka od senzora vibracija.
Krug je konstruiran tamo gdje su SW-420 modul i LED povezani s Arduino Uno.

Programiranje Arduino Uno senzora vibracije
Programiranje Arduino UNO-a za povezivanje senzora vibracija ne zahtijeva mnogo napora jer samo ulazni pin treba nadgledati kako bi se donio zaključak. Kompletan kod i radi videa su priključeni na kraju.
U početku su uključene datoteke zaglavlja. Arduino zaglavlje je uključeno jer je ovaj vodič napisan u Eclipse IDE-u s Arduino nastavkom. Ova skica također će raditi za Arduino IDE i dok koristite ovu skicu u Arduino IDE-u, nema potrebe za uključivanjem zaglavlja.
#include
Ovdje su definirane dvije makronaredbe za UKLJUČENO i ISKLJUČENO.
#define ON 1 #define OFF 0
Izjava u nastavku koristi se za integriranje LED-a i senzora vibracija. Osjetnik vibracija spojen je na pin A5. Također se koristi ugrađena LED dioda koja je izravno spojena na ploči s iglom 13. 5 mm LED također je povezana s iglom 13.
/ * * Opis pina * / int vibration_Sensor = A5; int LED = 13;
Deklariraju se dva cijela broja gdje će se pohraniti prisutni izlazni i prethodni izlazni senzori koji će se dalje koristiti za otkrivanje događaju li se vibracije ili ne.
/ * * Protok programa Opis * / int present_condition = 0; int prethodni_uvjet = 0;
Konfiguriran je isti pin koji je proglašen perifernom vezom, smjer pinova. Osjetnik senzora kao ulaz i LED pin kao izlaz.
/ * * Postavljanje načina pin-a * / void setup () { pinMode (vibration_Sensor, INPUT); pinMode (LED, IZLAZ); }
Jedna je funkcija napisana da dva puta trepće led. Kašnjenje se može konfigurirati mijenjanjem vrijednosti kašnjenja.
void led_blink (void) { digitalWrite (LED, UKLJUČENO); kašnjenje (250); digitalWrite (LED, ISKLJUČENO); kašnjenje (250); digitalWrite (LED, UKLJUČENO); kašnjenje (250); digitalWrite (LED, ISKLJUČENO); kašnjenje (250); }
U funkciji petlje uspoređuje se sadašnje i prethodno stanje. Ako ovo dvoje nije isto, LED diode počinju treptati dok oba ne budu ista. U početku dvije varijable drže 0, a led ostaje isključen tijekom početka programa. Kada postoji neki virbraion, varijabla present_condition postaje 1 i led počinje treptati. I opet kad vibracije prestanu, obje varijable postaju 0 i LED prestaje treptati.
void loop () { prethodno_uvjet = sadašnje_ stanje; prisutan_uvjet = digitalRead (A5); // Čitanje digitalnih podataka s A5 pina Arduina. if (prethodni_uvjet! = sadašnji_uvjet) { led_blink (); } else { digitalWrite (LED, ISKLJUČENO); } }
Ovim se završava programiranje arduina UNO sa senzorom vibracija. Posljednji korak bit će testiranje cijele postavke.
Ispitivanje kruga senzora vibracije Arduino
Sklop ne zahtijeva dodatnu ploču. Može se jednostavno testirati pomoću Arduino UNO ploče. LED se prati kada se pogodi senzor vibracije ili ako promijeni svoje stanje. LED će treptati povezan na pin 13 Arduino UNO-a kad postoje neke vibracije. Ako senzor vibracija ne radi, provjerite vezu i napajanje. Izbjegavajte labavu vezu između senzora i mikrokontrolera.

Dakle, ovako se senzor vibracije može povezati s Arduino UNO. Ako imate bilo kakvih sumnji ili prijedloga, možete nas kontaktirati putem foruma ili također možete komentirati u nastavku.
