Съдържание:
- Стъпка 1: Проблеми за преодоляване
- Стъпка 2: Компонентите, изграждането и начина на работа
- Стъпка 3: Софтуерът
Видео: InfoBell: 3 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
Прекарвам много време в малката си работилница в края на градината си.
В работилницата си имам безжичен звънец на вратата с повторител. Качвам се малко, така че може да ми отнеме около 30 секунди, за да стигна до входната врата, ако някой позвъни. Докато стигна там, доставчикът вече чука на вратите на съседите, за да остави пратка и да получи подпис.
Моят InfoBell казва на обаждащите се, че ще бъда с тях в рамките на 30 секунди (конфигурира се от потребителя) или ги уведомява дали съм ангажиран/излязъл по друг начин!
Исках звънецът на вратата да работи с батерии и да е напълно самостоятелен. Показваните съобщения трябваше да бъдат конфигурирани от потребителя и изключително лесни за промяна от съобщението IN към OUT.
Използвам bluetooth с приложение за Android на MIT App inventor за програмиране на съобщенията.
Бутоните за инициализиране на Bluetooth съобщенията и задаване на IN / OUT съобщения се намират в долната част на устройството. Необходимата функция се избира чрез натискане на съответния бутон и натискане на бутона на звънеца на главната врата.
Тези бутони са активни само когато вратата е отворена! Дали вратата е отворена или затворена се определя от използването на цифров компас (QMC5883) и известна тригонометрия. Трябва да призная, че трябваше да използвам Google за помощ тук, тъй като мина доста време (около 46 години), откакто седях в класната стая!
Можех трудно да кодирам показанията от QMC5883, но реших, че ако някой реши да направи този проект, шансовете вратата им да е изправена в същата посока като моята бяха сравнително малки!
Единственият бутон, който е активен, ако вратата е затворена, е този, който задава информацията за „вратата затворена“.
Стъпка 1: Проблеми за преодоляване
Имах три трудности.
Първият беше синхронизиране на действителното натискане на звънеца и бутона за инициализиране на arduino и дисплея.
Опитах много методи за 2 превключвателя и микро превключватели, но те бяха ненадеждни, така че в крайна сметка избрах DP реле.
Следващият проблем беше със самия безжичен звънец на вратата. Той работеше добре, без да има гръб на 3D отпечатаната кутия, но не искаше да сътрудничи, когато беше инсталиран на входната врата! Моето решение беше да има част от задния капак с дебелина около 1 мм - това свърши работа!
Последният проблем, който трябва да се преодолее, беше да се притиснат всички компоненти в кутия с разумен размер!
Стъпка 2: Компонентите, изграждането и начина на работа
За такова просто устройство използвах следното !!
3D печатна кутия и бутон
1 x SSD1306 OLED дисплей
1 x QMC5883
1 x Bluetooth щит
1 x двуполюсно реле
1 x реле за самозаключване
5 x тактилен превключвател за монтаж на печатни платки
2 x 3v батерии
1 x оригинален звънец на вратата
1 x диод
1 x pnp транзистор
Трябваше да „гнездя птици“по окабеляването, за да се уверя, че има достатъчно място, за да притисна всички компоненти в кутията - това не е най -чистият проект, който някога съм правил!
Използвах 2 x 3v батерии с диод, за да пусна малко захранването.
Оригиналният звънец на вратата идва с 12v батерия.
Когато бутонът на звънеца на вратата е натиснат, контактите на релето се затварят и управляват оригиналния звънец на вратата, като едновременно настройват самозаключващото се реле, което подава 5v към Arduino, Bluetooth щит и QMC5883.
Когато Arduino свърши работата си, щифт 12 е пулсирал ниско, което нулира релето за блокиране (чрез транзистор), което премахва захранването.
Когато устройството за първи път е прикрепено към затворената врата, бутонът, свързан към щифт 4 на Arduino, се натиска, докато бутонът на звънеца е натиснат. Това захранва Arduino и чете ориентацията на QMC5883 и съхранява стойността в eeprom. Вижте страницата със софтуера и скицата на Arduino за това как работи.
Другите 3 бутона сега ще работят само когато вратата не е в това положение, т.е.затворена.
За да настроите съобщенията и таймера за обратно броене, бутонът, свързан към щифт 7, се натиска, докато се натиска основният бутон И вратата е отворена, това инициира рутината за bluetooth. Настройките се въвеждат чрез приложението Mit App Inventer. Приложението записва подробностите автоматично и съхранява детайлите в eeprom на Arduino.
За да зададете съобщение IN / OUT, бутоните, свързани към щифтове 5 или 6 на Arduino, се натискат, докато е натиснат бутонът на главния звънец И вратата е отворена.
В зависимост от това кой бутон е натиснат, адресът на eeprom 0 се задава или нулира. Има ограничение за количеството четене/запис, което Arduino eeprom ще понесе. Според повечето препратки лимитът е около 100 000, което означава, че ако eeprom се записва до 4 пъти на ден, трябва да минат около 55 години преди да възникнат проблеми.
Стъпка 3: Софтуерът
Софтуерът за скицата на Ardiuno е доста добре документиран по моите стандарти!
За да сте сигурни, че в eeprom има разумни данни, разкомментирайте следното и компилирайте.
След компилацията, приложете отново маркерите за коментари и компилирайте отново.
EEPROM.begin (); /*
outone = "0";
outtwo = "1";
outthree = "2";
outfour = "3)";
inone = "0";
intwo = "1";
inthree = 10;
*/
Когато завършеният проект е монтиран на вратата, със затворена врата, натиснете и задръжте бутона, свързан към щифт 4 на Arduino, и натиснете звънеца. Съобщение ще потвърди действието ви.
Това съхранява стойностите, прочетени от цифровия компас в eeprom на Arduino.
Функцията 'diffy' определя дали вратата е отворена или затворена.
void diffy (int froma, int toa)
{
int diff;
diff = froma - toa;
diff = (diff+180)%360;
ако (разлика <= 0)
{
разлика+= 180;
}
иначе
{
разница -= 180;
}
След това заредете Bluetooth. APK на мобилен телефон. При отворена врата натиснете и задръжте бутона, свързан към щифт 7 на Arduino, и натиснете звънеца. Устройството ще се включи в режим Bluetooth. Сдвоете BT модула с телефона си, попълнете необходимата информация и я изпратете до звънеца на вратата.
Звънецът на вратата ще остане включен, докато не получи известна информация от телефона.
Когато информацията бъде изпратена до звънеца на вратата, приложението ще запази информацията. Така че, ако искате да правите каквито и да е промени, не е нужно да въвеждате повторно целия текст.
APK файлът може да бъде намерен на следния адрес.
ai2.appinventor.mit.edu/#5902371463495680
От съображения за сигурност телефонът ви трябва да поиска да потвърдите, че искате да инсталирате това приложение. На телефона ми има настройка, наречена „Инсталиране на неизвестни приложения“.
Препоръчано:
Първи стъпки с безжични сензори за температура и вибрации на дълги разстояния: 7 стъпки
Първи стъпки с безжични сензори за температура и вибрации на дълги разстояния: Понякога вибрациите са причина за сериозни проблеми в много приложения. От валове и лагери на машината до работа на твърдия диск, вибрациите причиняват повреда на машината, ранна подмяна, ниска производителност и нанасят сериозен удар върху точността. Мониторинг
Първи стъпки с STM32f767zi Cube IDE и качване на персонализирана скица: 3 стъпки
Първи стъпки с STM32f767zi Cube IDE и качване на персонализирана скица: КУПЕТЕ (щракнете върху теста, за да закупите/посетете уеб страницата) STM32F767ZISUPPORTED SOFTWARE · STM32CUBE IDE · KEIL MDK ARM µVISION · EWARM IAR EMBEDDED WORKBENCH използва се за програмиране на STM микроконтролери
Как да направите 4G LTE двойна BiQuade антена Лесни стъпки: 3 стъпки
Как да направя 4G LTE двойна BiQuade антена лесни стъпки: През повечето време, с което се сблъсквах, нямам добра сила на сигнала за ежедневните ми работи. Така. Търся и опитвам различни видове антени, но не работи. След загубено време намерих антена, която се надявам да направя и изпробвам, защото тя не градивен принцип
Дизайн на играта с бързо движение в 5 стъпки: 5 стъпки
Дизайн на игра с Flick в 5 стъпки: Flick е наистина прост начин да направите игра, особено нещо като пъзел, визуален роман или приключенска игра
Система за предупреждение за паркиране на автомобил Arduino - Стъпки по стъпка: 4 стъпки
Система за предупреждение за паркиране на автомобил Arduino | Стъпки по стъпка: В този проект ще проектирам обикновена верига за сензори за паркиране на автомобил Arduino, използвайки Arduino UNO и HC-SR04 ултразвуков сензор. Тази базирана на Arduino система за предупреждение за автомобил за заден ход може да се използва за автономна навигация, измерване на роботи и други обхвати