
Динг-донг! Сигуран сам да имате класично звоно на вратима код куће које ради свој посао, али га не чујемо увек: можда смо у углу, усисавамо пуном снагом, носимо слушалице или смо једноставно окружени толико буке да пропустимо обавештење достављача. Идеја да се то звоно претвори у паметно звоно које вас обавештава на телефону (и на сату, ако га носите) је сјајан план да се осигурате да никада више не пропустите испоруке или посетиоце.
Штавише, неки људи желе да иду корак даље и захтевају да звоно на вратима репродукује своју традиционалну мелодију звона, упали ЛЕД индикатор и, идеално, пошаље СМС поруку када неко притисне дугме. Ово поставља нека разумна питања: да ли треба користити два микроконтролера повезана путем Wi-Fi-ја (на пример, два ESP32) или се одлучити за нешто једноставније попут радио-фреквентне везе? Да ли треба користити постојеће звоно на вратима са његовим напајањем од 230V или направити потпуно ново? У наредним пасусима објаснићу различите приступе, компоненте, безбедну монтажу и предложено софтверско решење користећи MQTT, OpenHAB и Pushbullet , тако да пројекат буде углађен, атрактиван и функционалан, а да вас не преоптерети.
Архитектура: од два микроконтролера до РФ-а, преко WiFi-ја
Када се разматра дизајн, прво што пада на памет је коришћење два микроконтролера на истој кућној мрежи: један модул унутра, један споља, који комуницира путем Wi-Fi-ја. Ради, да, али може бити мало претерано и скупо ако користите два ESP32 само за звоно на вратима. Прави циљ је веома једноставан: спољно дугме које покреће унутрашњу логику, која затим обрађује све остало (звук, ЛЕД диоду, мобилна обавештења, чак и СМС).
Лакша алтернатива је постављање једноставног радио-фреквентног предајника и пријемника између спољашњег дугмета и унутрашњег микроконтролера. Предност је у томе што страни дугмета није потребан комплетан микроконтролер: са јефтиним РФ модулом , батеријом и добро дизајнираним колом, шаљете сигнал када се притисне. Унутар куће, микроконтролер са Wi-Fi мрежом прима упозорење од РФ пријемника и обавља остало: емитовање звука „динг-донг“, активирање ЛЕД диоде, слање обавештења и, по жељи, покретање СМС поруке путем спољашње услуге.
Ако више волите да задржите постојеће ожичење и користите звоно на вратима од 230 V , постоји још један одличан приступ: детекција присуства напона када звони. Ова детекција, изведена са галванском изолацијом, напаја логику Wi-Fi микроконтролера који емитује догађај и упозорава вас. На овај начин, не замењујете звоно на вратима , већ га једноставно побољшавате.
За кориснике који оклевају око „уради сам“ пројеката, постоји и могућност куповине све-у-једном система. На тржишту су доступни бежични паметни видео интерфони са IP65 заштитом и 1080P камерама, који функционишу као видео звона и системи за двосмерни разговор. Неке продавнице чак укључују контроле „Дели“ на страници производа, а многе нуде обрасце „Да ли сте видели нижу цену?“ где се од вас тражи да назначите да ли је производ био у физичкој продавници , регион и друге детаље како би се утврдило да ли могу да парирају цени. Укратко, постоје веома комплетна комерцијална решења , али ако волите да се петљате, „уради сам“ решење ће бити јефтиније и прилагодљивије.
Безбедно детектовање 230V: оптокаплер у помоћ
Многа конвенционална звона на вратима се напајају напоном од 230 V само док неко притиска дугме. Кључ за безбедно „слушање“ овог догађаја је потпуно изоловање напајања од логичког кола. Ту долазе до изражаја оптокаплери : уређаји који преносе сигнал путем светлости између два одвојена кола, осигуравајући да не постоји директна електрична веза између мреже и ваше електронике од 3,3 V.
Да бисте олакшали ствари, можете купити готову штампану плочу која детектује 230V и обезбеђује безбедан излаз за ваш микроконтролер. Ове плоче обично укључују оптокаплер и одговарајући отпорник, штитећи ваш MCU. То је брзо и робусно решење ако не желите да га дизајнирате од нуле. Ако уживате у склапању, друга опција је да сами реплицирате то коло са неколико лако доступних компоненти , одржавајући принцип физичког одвајања напајања и логике.
Обратите пажњу на ожичење и размак: препоручљиво је оставити доста простора на плочи између шине од 230 V и напајања микроконтролера. Ако радите на перфорираној плочи, обезбедите довољно простора и, ако је могуће, затворите све у добро дизајнирано кућиште како бисте спречили нежељени контакт. Оптокаплери, по својој природи, додају слој мира који вам омогућава да мирно спавате.
Још једна важна компонента је напајање: микроконтролер који ћемо користити ради на 3,3 V. Ако немате доступно напајање од 3,3 V, можете смањити напон са 5 V помоћу регулатора LM317T , правилно га подешавајући да бисте добили стабилних 3,3 V. Ова комбинација (напајање од 5 V + регулатор) је веома честа у „уради сам“ пројектима; јефтина је и ефикасна.
Практични хардвер: ESP-01, 3D кућиште и каблови
Да би се систему додала WiFi конекција, класична и добро позната опција је ESP-01 . Мали је, приступачан, једноставан за програмирање и, пре свега, сасвим адекватан за звоно на вратима . У поређењу са ESP32, који је звер за веће пројекте, ESP-01 више него покрива читање догађаја, мрежно повезивање, MQTT објављивање и покретање обавештења.
Приликом физичке монтаже, може бити корисно све сместити у кутију штампану 3Д штампачем ради компактног и безбедног постављања. Када комбинујете штампану плочу ESP-01 и плочу за напајање (плус слот за терминални блок), цела ствар се понекад готово савршено уклапа у простор традиционалног звона на вратима. Ово вам омогућава да поставите електронику близу самог звона и задржите изглед и осећај свог дома без икаквих ружних справа.
Ожичење је такође важно. Препоручљиво је повезати фазну жицу звона на вратима , фазну жицу за електронику (која мора бити одвојена како би микрофон увек имао напајање, чак и ако звоно није притиснуто) и неутралне жице на јасно означени терминални блок. На овај начин можете детектовати када напајање стиже до звона на вратима и истовремено одржавати паметни систем онлајн како би слао догађаје и обавештења. Запамтите правила: све на свом месту и са физичким одвајањем између напајања и логике.
За ентузијасте „уради сам“ пројектовања, склапање кола на перфорираној плочи одлично функционише, све док одржавате безбедну удаљеност. Неки обећавају да ће једног дана прећи на прилагођене штампане плоче, али у међувремену, добро направљена перфорирана плоча је одлична . Ако желите да документујете дизајн, можете сачувати шему у свом омиљеном алату (на пример, EAGLE датотеци), што знатно олакшава дељење и преглед.
Софтвер и обавештења: прекиди, MQTT, OpenHAB и Pushbullet
Пређимо на „мозак“. У одељку фирмвера за ESP-01, ефикасан начин за детекцију догађаја је коришћење прекида изазваног ивицом . Практичан детаљ: дефинишите пин 3 (RX пин серијског порта) као пин за прекид, тако да када детектор (или оптички сензор) указује на присуство напона, покреће се рутина која обележава стање зујалице.
Типична конфигурација у многим примерима користи линију као што је: `attachInterrupt(digitalPinToInterrupt(sensePin), onDoorbellStateChange, FALLING); `. Рутина, украшена са `ICACHE_RAM_ATTR` на ESP8266/ESP-01 фирмверу, може изгледати отприлике овако: `void ICACHE_RAM_ATTR onDoorbellStateChange() { lastTrueState = millis(); doorbellState = true; }` . Ово штеди време окидача и поставља стање „неко је звонио“ на „true“.
У главној петљи, након разумног временског периода, заставица се ресетује како би се дозволила нова обавештења. Ово укључује проверу времена као што је `if (doorbellState && (now – lastTrueState) > 5000) { doorbellState = false; isStateSent = false; }` . Ово осигурава да ако је прошло 5 секунди од последњег позива, догађај се сматра затвореним и обавештења се могу поново послати ако неко притисне дугме. Ово спречава спам обавештења од једног дугог притиска или одбијања.
За интеграцију са кућном аутоматизацијом и стандардима паметних кућа , MQTT је невероватно згодан. Можете подесити свог брокера и интегрисати га у OpenHAB , где ћете креирати „Ствар“ и њену одговарајућу „Ставку“ која представља стање звона на вратима (на пример, ИСКЉУЧЕНО/УКЉУЧЕНО). Одатле конфигуришете обавештења помоћу жељене услуге: Pushbullet је класик, а упозорење покрећете правилом које се активира када се ставка промени из ИСКЉУЧЕНО у УКЉУЧЕНО.
Скелет тог правила у OpenHAB-у би могао да изгледа овако: `rule "RuleName" when Item ItemName changed from OFF to ON then val actions = getActions("pushbullet", "ItemNamePushbulletBot") if (actions !== null) { actions.sendPushbulletNote("Главно звоно", "Главно звоно", "Неко је на главним вратима") } end` . Једноставније речено: чим се Item укључи, шаљете поруку својим уређајима. Ако вам је потребан SMS, можете заменити `Pushbullet` SMS услугом или gateway-ом који има доступно повезивање на вашој платформи за кућну аутоматизацију.
За оне који више воле да не дирају оригинално звоно и желе да га виде на свом мобилном телефону, имајте на уму да на тржишту постоје бежична видео звона са 1080P камерама и IP65 степеном заштите. Она нуде уграђену функционалност визуелног интерфона, а у многим продавницама чак укључују и дугмад „ Дели “ на страници производа и популарни образац „Да ли сте пронашли нижу цену?“ како би одржали конкурентне цене; могу чак питати да ли сте га видели у физичкој продавници и вашој покрајини како би проценили захтев. Она су погодна алтернатива , иако њихова цена обично није упоредива са добро изведеном „уради сам“ инсталацијом.
Још један практичан софтверски савет: уређај треба да одржава стабилну Wi-Fi везу и да се аутоматски поново повеже са MQTT брокером ако до прекида везе. ESP-ови обично укључују рутину „поновно повезивање ако нема везе“ и користе тајмер како би спречили да се бесконачно заглављује покушавајући да се поново повеже. Софтверски чувар може вас спасити од више од једног проблема из стварног света.
За ЛЕД индикатор, можете подесити да трепери синхронизовано са догађајем (на пример, 5 секунди након што је позив покренут), а затим се искључи. За суптилнији додир, користите PWM постепено трептање да бисте назначили „позив у току“ и кратко стално светло за „позив је забележен“. Ови визуелни знакови, иако нису неопходни, корисни су када немате телефон при руци.
За оне који размишљају о слању СМС порука, имајте на уму да постоје сервиси и АПИ-ји који вам омогућавају слање порука једноставним ХТТП позивом са вашег МЦУ-а или, још боље, са вашег сервера за кућну аутоматизацију . Ово последње смањује оптерећење микроконтролера и централизује логику (на пример, слање СМС порука само ако је кућа у режиму „одсутан“). Штавише, СМС поруке обично наплаћују сваки пренос, па је добра идеја имплементирати једноставно правило против спама како би се спречило слање више од једне поруке сваких X минута.
Узгред, ако све интегришете са OpenHAB-ом (или сличним платформама), одвојићете „откривање и објављивање“ (MCU) од „аутоматизације и обавештавања“ (сервер). Ова подела одговорности олакшава одржавање система: микроконтролер се фокусира на један задатак, док флексибилнији сервер обрађује обавештења, филтере, правила и историјске евиденције позива .
Када се ожичење заврши и тестира на столу, време је за инсталацију: можда ћете морати да провучете нову жицу до звона на вратима како бисте обезбедили континуирано напајање паметног уређаја. У многим домовима, постојећи цевовод то омогућава, захтевајући само мање подешавање најближе разводне кутије. Кључно је радити безбедно: искључите напајање, идентификујте проводнике , проверите прописе и ако имате било какве сумње, позовите стручњака.
Ако сматрате да вам нешто додатно недостаје, следећи корак би могао бити мерење колико пута је звоно на вратима притиснуто (основна телеметрија), коришћење PIR сензора покрета , излагање метрика вашем систему (на пример, путем MQTT-а бази података временских серија) или чак снимање снимка IP камером када се звоно на вратима активира. То није стриктно део основног пројекта, али аутоматизација доноси ове предности.
Што се тиче завршне обраде, покушајте да осигурате да је кућиште штампано 3Д штампачем добро вентилирано како се регулатор (ако користите LM317T) не би прегрејао. Мали хладњак и остављање простора између компоненти ће помоћи. Поред тога, обележавање унутрашњих „фаза звоњења“, „фаза напајања“ и „нула“ ће олакшати будуће ревизије или проширења, спречавајући нагађања када се вратите на пројекат месецима касније.
Враћајући се на почетну дебату (два микроконтролера наспрам РФ), ако сте забринути због потрошње енергије на спољном дугмету и желите да ствари што више поједноставите , комбинација РФ + унутрашњи микроконтролер је победник: спољни предајник може бити минималан и мале снаге, а све држите „спремно“ унутра, са стабилним напајањем. Ако више волите да избегнете радио везу и већ имате ожичење до звона на вратима , детекција од 230V са оптокаплером и једним микроконтролером је једноставна, робусна и чиста.
Коначно, неколико најбољих пракси: документујте шему (чак и ако је то само фотографија прототипа са напоменама), отпремите код у своје спремиште и додајте README датотеку са распоредом пинова. Мали детаљи попут назнаке да се пин 3 (RX) користи као прекид спречиће проблеме ако неко, или чак ви, одлучи да активира серијски порт без провере. А ако делите пројекат, још боље : други ће моћи да га реплицирају, побољшају или вам дају идеје.
Јасно је да постоји решење и за произвођача који жели да задржи свој „динг-донг“ и прима упозорења, и за оне који преферирају комплетан комерцијални систем са камером и IP65 сертификатом. Ако сте расположени за „уради сам“ систем , комбинација безбедног детектора, ESP-01, напајања од 3,3 V са LM317T, 3D кућишта, прекида на ивици, MQTT-а, OpenHAB-а и Pushbullet-а ће вам пружити поуздано, прошириво и, пре свега, прилагођено паметно звоно на вратима, са могућношћу додавања SMS-а или било ког другог канала без потребе за поновном изградњом система.




