- Необходим материал:
- Работна концепция за противопожарен робот:
- Електрическа схема:
- Програмиране на вашия Arduino:
- Работа на противопожарен робот:
Според Националното бюро за криминални регистри (NCRB) се изчислява, че повече от 1,2 милиона смъртни случая са причинени поради пожари в Индия от 2010-2014 г. Въпреки че има много предпазни мерки, взети при пожарни произшествия, тези природни / причинени от човека бедствия се случват от време на време. В случай на пожар, за да спасяваме хора и да гасим пожара, ние сме принудени да използваме човешки ресурси, които не са безопасни. С напредването на технологиите, особено в роботиката, е много възможно да заменим хората с роботи за борба с огъня. Това би подобрило ефективността на пожарникарите и би им попречило да рискуват човешки животи. Днес ще изградим противопожарен робот с помощта на Arduino, който автоматично ще усети огъня и ще стартира водната помпа
В този проект ще научим как да изградим обикновен робот с помощта на Arduino, който може да се движи към огъня и да изпомпва вода около него, за да потуши огъня. Това е много прост робот, който ще ни научи на основната концепция за роботиката; бихте могли да създадете по-сложни роботи, след като разберете следните основи. Така че нека да започнем…
Необходим материал:
- Arduino UNO
- Пожарен сензор или сензор за пламък (3 Nos)
- Серво мотор (SG90)
- L293D мотор драйвер модул
- Мини потопяема помпа DC
- Малка макет
- Роботно шаси с двигатели (2) и колела (2) (всякакъв тип)
- Малка кутия
- Свързващи проводници
Купете всички горепосочени необходими компоненти за пожарогасителния робот Arduino.
Работна концепция за противопожарен робот:
Основният мозък на този проект е Arduino, но за да усетим огън, използваме модула на пожарния сензор (сензор за пламък), който е показан по-долу.
Както можете да видите, тези сензори имат IR приемник (Фотодиод), който се използва за откриване на пожара. Как е възможно? Когато изгаря огън, той излъчва малко количество инфрачервена светлина, тази светлина ще бъде получена от IR приемника на сензорния модул. След това използваме Op-Amp, за да проверим за промяна в напрежението в IR приемника, така че ако бъде открит пожар, изходният щифт (DO) ще даде 0V (LOW) и ако не е пожар, изходният щифт ще бъде 5V (ВИСОКО).
И така, ние поставяме три такива сензора в три посоки на робота, за да усетим в коя посока гори огънят.
Ние откриваме посоката на огъня, за да можем да използваме двигателите, за да се движим близо до огъня, като движим нашите двигатели през модула L293D. Когато се намираме близо до пожар, трябва да го потушим с вода. С помощта на малък контейнер можем да носим вода, 5V помпа също се поставя в контейнера и целият контейнер се поставя върху серво мотор, така че да можем да контролираме посоката, в която трябва да се пръска водата. Нека да продължим с връзките сега
Електрическа схема:
Пълната електрическа схема за този противопожарен робот е дадена по-долу
Можете или да свържете всички показани връзки за качване на програмата, за да проверите работата, или можете да съберете напълно бота и след това да продължите с връзките. И двата начина връзките са много прости и трябва да можете да го направите правилно.
Въз основа на роботизираното шаси, което използвате, може да не можете да използвате същия тип контейнер, който използвам и аз. В този случай използвайте собствената си креативност, за да настроите помпената система. Кодът обаче ще остане същият. Използвах малка алуминиева кутия (кутия за готини напитки), за да настроя помпата вътре и излях вода вътре в нея. След това сглобих цялата кутия върху серво мотор, за да контролирам посоката на водата. Моят робот изглежда нещо подобно след сглобяването.
Както можете да видите, аз съм фиксирал серво ребрата към дъното на контейнера с помощта на лепило и съм фиксирал серво мотора с шаси с помощта на гайки и болтове. Можем просто да поставим контейнера върху двигателя и да задействаме помпата в него, за да изпомпва вода навън през тръбата. След това целият контейнер може да се завърти с помощта на серво за контрол на посоката на водата.
Програмиране на вашия Arduino:
След като сте готови с вашия хардуер, можете да качите кода на Arduino за някакво действие. В пълна програма се дава в края на тази страница. Обаче тук обясних няколко важни парчета.
Както знаем, пожарният датчик ще изведе HIGH, когато има пожар и ще изведе LOW, когато има пожар. Затова трябва да продължим да проверяваме тези сензори, ако е възникнал пожар. Ако няма пожар, ние молим двигателите да останат спрени, като направим всички щифтове високи, както е показано по-долу
if (digitalRead (Left_S) == 1 && digitalRead (Right_S) == 1 && digitalRead (Forward_S) == 1) // Ако пожар не е открит, всички сензори са нула {// Не премествайте робота digitalWrite (LM1, HIGH); digitalWrite (LM2, HIGH); digitalWrite (RM1, HIGH); digitalWrite (RM2, HIGH); }
По същия начин, ако има някакъв пожар, можем да помолим робота да се движи в тази посока чрез завъртане на съответния двигател. След като стигне до огъня, левият и десният сензор няма да открият пожара, тъй като ще стоят точно пред огъня. Сега използваме променливата, наречена „ пожар “, която ще изпълни функцията, за да спре огъня.
иначе if (digitalRead (Forward_S) == 0) // Ако огънят е право напред {// Преместете робота напред digitalWrite (LM1, HIGH); digitalWrite (LM2, LOW); digitalWrite (RM1, HIGH); digitalWrite (RM2, LOW); огън = вярно; }
След като променливата пожар стане вярна, пожарогасителният робот arduino код ще изпълни функцията put_off_fire, докато огънят не бъде прекратен. Това се прави с помощта на кода по-долу.
докато (огън == вярно) {put_off_fire (); }
Вътре в put_off_fire () просто трябва да спрем робота, като направим всички щифтове високи. След това включете помпата, за да изтласкате водата извън контейнера, докато това е направено, ние също можем да използваме серво мотора, за да завъртим контейнера, така че водата да се разделя равномерно. Това се прави с помощта на кода по-долу
void put_off_fire () {забавяне (500); digitalWrite (LM1, HIGH); digitalWrite (LM2, HIGH); digitalWrite (RM1, HIGH); digitalWrite (RM2, HIGH); digitalWrite (помпа, HIGH); забавяне (500); за (pos = 50; pos <= 130; pos + = 1) {myservo.write (pos); забавяне (10); } за (pos = 130; pos> = 50; pos - = 1) {myservo.write (pos); забавяне (10); } digitalWrite (помпа, LOW); myservo.write (90); огън = невярно; }
Работа на противопожарен робот:
Препоръчително е да проверите изхода на робота на стъпки, вместо да го пускате заедно за първи път. Можете да изградите робота до сервомотора и да проверите дали той е в състояние да следи огъня успешно. След това можете да проверите дали помпата и серво моторът работят правилно. След като всичко работи, както се очаква, можете да стартирате програмата по-долу и да се насладите на пълната работа на пожарникарския робот.
Пълната работа на робота може да бъде намерена на видеото, дадено по-долу. Максималното разстояние, до което може да бъде открит огънят, зависи от големината на огъня, за малка клечка кибрит разстоянието е относително по-малко. Можете също да използвате потенциометрите отгоре на модулите, за да контролирате чувствителността на робота. Използвал съм захранваща банка за захранване на робота, можете да използвате батерия или дори да я захранвате с 12V батерия.
Надявам се, че сте разбрали проекта и ще се радвате да изградите нещо подобно. Ако имате някакви проблеми с получаването на тази компилация, използвайте раздела за коментари по-долу, за да публикувате вашите желания или използвайте форумите за техническа помощ.
Разгледайте нашата секция „Роботика“, за да намерите още страхотни „Направи си сам“ роботи.