- Vibrationssensormodul SW-420
- Komponenter krävs
- Arduino Vibrationssensordiagram
- Arduino Uno Vibration Sensor Programming
- Testar Arduino Vibration Sensor Circuit
Det finns flera kritiska maskiner eller dyra utrustningar som skadas på grund av vibrationer. I ett sådant fall krävs en vibrationssensor för att ta reda på om maskinen eller utrustningen producerar vibrationer eller inte. Att identifiera föremålet som kontinuerligt vibrerar är inte ett knepigt jobb om rätt sensor används för att detektera vibrationerna. Det finns flera typer av vibrationssensorerfinns på marknaden som kan upptäcka vibrationer genom att känna av acceleration eller hastighet och kan ge utmärkt resultat. Sådana sensorer är dock för dyra där accelerometern används. Accelerometer är mycket känslig och kan användas för att göra jordbävningsdetektorkrets. Men det finns få dedikerade och billiga sensorer som också är tillgängliga för att detektera vibrationerna, en sådan vibrationssensor är SW-420 som vi ska ansluta till Arduino Uno.
Så i det här projektet har en grundläggande vibrationssensormodul gränssnitt med den populära Arduino UNO och när vibrationssensorn upptäcker vibrationer eller ryck börjar en LED blinka.
Vibrationssensormodul SW-420
Detta är en SW-420 vibrationsmodul som kan arbeta från 3,3V till 5V. Sensorn använder LM393-komparatorn för att detektera vibrationer över en tröskelpunkt och tillhandahålla digitala data, Logic Low eller Logic High, 0 eller 1. Under normal drift ger sensorn Logic Low och när vibrationen detekteras, ger sensorn Logic High. Det finns tre kringutrustning i modulen, två lysdioder, en för strömtillståndet och en annan för sensorns utgång. Dessutom finns en potentiometer tillgänglig som ytterligare kan användas för att kontrollera vibrationens tröskelpunkt. I detta projekt kommer vi att använda 5V för att driva modulen.
Vi använde samma sensor i stöldskyddssystem med ATmega8 Microcontroller. En lutningssensor kan också användas för att upptäcka plötslig olycka.
Komponenter krävs
- Arduino UNO
- SW-420 Vibrationssensormodul
- 5 mm LED (valfri färg)
- Jumper Wires (Hookup Wires)
- USB-kabel för uppladdningsprogram
Arduino Vibrationssensordiagram
Schemat för gränssnitt för vibrationssensor med Arduino uno ges nedan.
Lysdioden är ansluten i D13-stiftet. Modulen drivs med den tillgängliga 5V-stiftet i Arduino. Jorden och 5V-stiftet används för att driva upp Arduino medan A5-stiftet används för att hämta data från vibrationssensorn.
Kretsen är konstruerad där SW-420-modulen och lysdioden är anslutna till Arduino Uno.
Arduino Uno Vibration Sensor Programming
Programmering av Arduino UNO för gränssnittsvibrationssensor kräver inte mycket ansträngning eftersom endast ingångsstiftet bör övervakas för att göra slutsatser. Den kompletta koden och arbetsvideoen bifogas i slutet.
Ursprungligen ingår rubrikfilerna. Arduino-rubriken ingår eftersom denna handledning skrevs i Eclipse IDE med Arduino-tillägg. Denna skiss fungerar också för Arduino IDE och medan du använder denna skiss i Arduino IDE, finns det inget behov av att inkludera rubrik.
#omfatta
Här definieras två makron för PÅ och AV.
#define ON 1 #define OFF 0
Nedanstående uttalande används för att integrera lysdioderna och vibrationssensorn. Vibrationssensorn är ansluten till stift A5. Den inbyggda lysdioden används också som är direkt ansluten i kortet till stift 13. 5 mm lysdioden är också ansluten till stiftet 13.
/ * * Stiftbeskrivning * / int vibration_Sensor = A5; int LED = 13;
Två heltal deklareras där sensorerna presenterar utdata och tidigare utdata kommer att lagras, vilket ytterligare används för att detektera om vibrationerna sker eller inte.
/ * * Programflöde Beskrivning * / int present_condition = 0; int previous_condition = 0;
Samma stift som deklareras som den perifera anslutningen, stiftenas riktning är konfigurerad. Sensortappen som ingång och LED-stiftet som utgång.
/ * * Inställning av stiftläge * / tomrumsinställning () { pinMode (vibration_Sensor, INPUT); pinMode (LED, OUTPUT); }
En funktion skrivs för att blinka lysdioden två gånger. Fördröjningen kan konfigureras genom att chaga fördröjningsvärdet.
void led_blink (void) { digitalWrite (LED, ON); fördröjning (250); digitalWrite (LED, OFF); fördröjning (250); digitalWrite (LED, ON); fördröjning (250); digitalWrite (LED, OFF); fördröjning (250); }
I loopfunktionen jämförs nuvarande och tidigare tillstånd. Om dessa två inte är desamma börjar lamporna blinka tills båda är desamma. Vid start håller de två variablerna 0 och lysdioden förblir av under programstart. När det finns någon virbraion blir present_condition- variabeln 1 och ledningen börjar blinka. Och igen när vibrationerna upphör blir vaiables 0 och LED slutar blinka.
void loop () { previous_condition = present_condition; present_condition = digitalRead (A5); // Läser digitala data från A5-stiftet i Arduino. if (previous_condition! = present_condition) { led_blink (); } annat { digitalWrite (LED, OFF); } }
Detta avslutar programmeringen av arduino UNO med vibrationssensor. Det sista steget kommer att testa hela installationen.
Testar Arduino Vibration Sensor Circuit
Kretsen kräver inte ytterligare brödbräda. Det kan enkelt testas med Arduino UNO Board. LED-lampan övervakas när vibrationssensorn träffas eller om den ändrar sitt tillstånd. Lysdioden blinkar ansluten till stift 13 i Arduino UNO när det finns några vibrationer. Om vibrationssensorn inte fungerar, kontrollera anslutningen och strömmen. Undvik lös anslutning mellan sensor och mikrokontroller.
Så detta är hur en vibrationssensor kan gränssnitt med Arduino UNO. Om du har några tvivel eller förslag kan du nå oss via forumet eller så kan du också kommentera nedan.