- Модул за вибрационен сензор SW-420
- Необходими компоненти
- Схема на веригата на сензора за вибрации Arduino
- Програмиране на сензор за вибрации Arduino Uno
- Тестване на веригата на сензора за вибрации Arduino
Има няколко критични машини или скъпи съоръжения, които претърпяват щети поради вибрации. В такъв случай се изисква вибрационен сензор, за да се установи дали машината или оборудването произвежда вибрации или не. Идентифицирането на обекта, който непрекъснато вибрира, не е сложна работа, ако се използва подходящият сензор за откриване на вибрациите. Има няколко вида вибрационни сензориналични на пазара, които могат да открият вибрациите чрез усещане на ускорение или скорост и биха могли да осигурят отличен резултат. Такива сензори обаче са твърде скъпи, когато се използва акселерометърът. Акселерометърът е много чувствителен и може да се използва за създаване на верига за детектор на земетресение. Но има няколко специализирани и евтини сензори също са на разположение за откриване само на вибрациите, един такъв сензор за вибрации е SW-420, който ще свържем с Arduino Uno.
Така че в този проект основен модул за вибрационен сензор е свързан с популярния Arduino UNO и всеки път, когато сензорът за вибрации открие някакви вибрации или дръпване, светодиодът ще започне да мига.
Модул за вибрационен сензор SW-420
Това е вибрационен модул SW-420, който може да работи от 3.3V до 5V. Сензорът използва компаратор LM393, за да открие вибрациите над праговата точка и да предостави цифрови данни, Logic Low или Logic High, 0 или 1. По време на нормална работа сензорът осигурява Logic Low и когато вибрацията бъде открита, сензорът осигурява Logic High. В модула има три периферни устройства, два светодиода, един за състоянието на захранването и друг за изхода на сензора. Освен това е наличен потенциометър, който може да се използва допълнително за управление на праговата точка на вибрацията. В този проект ще използваме 5V за захранване на модула.
Използвахме същия сензор в системата за предупреждение против кражба, използвайки микроконтролера ATmega8. Също така сензор за наклон може да се използва за откриване на внезапна авария.
Необходими компоненти
- Arduino UNO
- SW-420 Вибрационен сензорен модул
- 5 мм LED (всеки цвят)
- Джъмперни проводници (свързващи проводници)
- USB кабел за качване на програма
Схема на веригата на сензора за вибрации Arduino
Схемата за свързване на вибрационен сензор с Arduino uno е дадена по-долу.
Светодиодът е свързан в щифта D13. Модулът се захранва с помощта на наличния 5V щифт в Arduino. Заземяването и 5V щифтът се използват за захранване на Arduino, докато щифтът A5 се използва за получаване на данни от вибрационния сензор.
Веригата е конструирана там, където модулът SW-420 и светодиодът са свързани с Arduino Uno.
Програмиране на сензор за вибрации Arduino Uno
Програмирането на Arduino UNO за интерфейс на вибрационен сензор не изисква много усилия, тъй като само входният щифт трябва да се следи за да се направи заключение. В пълния код и работи видеото са приложени в края.
Първоначално са включени заглавните файлове. Включен е заглавката на arduino, тъй като този урок е написан в Eclipse IDE с разширение Arduino. Тази скица ще работи и за Arduino IDE и докато използвате тази скица в Arduino IDE, няма нужда да включвате заглавка.
#include
Тук са дефинирани два макроса за ВКЛ и ИЗКЛ.
#define ON 1 #define OFF 0
Изявлението по-долу се използва за интегриране на светодиодите и сензора за вибрации. Сензорът за вибрации е свързан към щифт A5. Използва се и вграденият светодиод, който е директно свързан в платката към щифт 13. 5 мм светодиод също е свързан към щифт 13.
/ * * Описание на щифта * / int vibration_Sensor = A5; int LED = 13;
Декларират се две цели числа, където ще се съхраняват настоящите изходни и предишни изходи на сензорите, които допълнително ще се използват за установяване дали вибрацията се случва или не.
/ * * Поток на програмата Описание * / int present_condition = 0; int previous_condition = 0;
Конфигуриран е същият щифт, който е деклариран като периферна връзка, посоката на щифтовете. Сензорният щифт като вход и светодиодният щифт като изход.
/ * * Настройка на режим на закрепване * / void setup () { pinMode (vibration_Sensor, INPUT); pinMode (LED, OUTPUT); }
Една функция е написана да мига два пъти led. Закъснението може да бъде конфигурирано чрез промяна на стойността на закъснението.
void led_blink (void) { digitalWrite (LED, ON); забавяне (250); digitalWrite (LED, OFF); забавяне (250); digitalWrite (LED, ON); забавяне (250); digitalWrite (LED, OFF); забавяне (250); }
Във функцията на цикъла се сравнява настоящото и предишното състояние. Ако тези две не са еднакви, светодиодите започват да мигат, докато и двете са еднакви. При стартиране двете променливи държат 0 и светодиодът остава изключен по време на старта на програмата. Когато има някакъв virbraion, променливата present_condition става 1 и led започва да мига. И отново, когато вибрациите спрат, двете променливи стават 0 и светодиодът спира да мига.
невалиден цикъл () { предишно_условие = настоящо_условие; настоящо_ условие = цифрово четене (A5); // Четене на цифрови данни от A5 Pin на Arduino. ако (предишно_ условие! = настоящо_състояние) { led_blink (); } else { digitalWrite (LED, OFF); } }
Това завършва програмирането на arduino UNO със сензор за вибрация. Последната стъпка ще бъде тестването на цялата настройка.
Тестване на веригата на сензора за вибрации Arduino
Веригата не изисква допълнителен макет. Той може просто да бъде тестван с помощта на Arduino UNO Board. Светодиодът се следи, когато сензорът за вибрации е ударен или ако той промени състоянието си. Светодиодът ще мига, свързан с Pin 13 на Arduino UNO, когато има някои вибрации. Ако сензорът за вибрации не работи, моля, проверете връзката и захранването. Избягвайте всякаква свободна връзка между сензора и микроконтролера.
Така че по този начин сензорът за вибрации може да бъде свързан с Arduino UNO. Ако имате някакви съмнения или предложения, можете да се свържете с нас чрез форум или да коментирате по-долу.