
HOME ASSISTANT — ЧАСТ 7
⛈️ Бурята още не е дошла. Home Assistant вече знае.
В предишните части постепенно направихме Home Assistant доста по-различно нещо от приложение за лампички.
Започнахме с:
💡 управление на устройства;
🤖 автоматизации;
🏠 LOCAL control;
⚡ работа при отпадане на ток;
👁️ наблюдение на къщата;
⚙️ автоматична реакция.
В Част 6 вече стигнахме до:
👁️ ЗАСЕЧИ → 🧠 ПОТВЪРДИ → ⚙️ РЕАГИРАЙ → 🔄 ПРОВЕРИ
Само че досега почти всичко, което наблюдавахме, беше вътре в къщата.
Днес ще отворим прозореца.
Образно казано.
Ако навън има гръмотевична буря, по-добре не го правете буквално. 😂
Защото Home Assistant може да следи не само:
„Какво се случва с къщата ми?“
а и:
🌍 „КАКВО СЕ СЛУЧВА ОКОЛО НЕЯ?“
⚡ ДА ЗАПОЧНЕМ С МЪЛНИИТЕ
Това е една от интеграциите, които лично много харесвам.
И причината не е, че е някаква жизненоважна survival технология.
А защото много добре показва идеята, която развиваме през цялата серия.
Представете си:
Седите си вкъщи.
Навън е облачно.
Няма дъжд.
Не чувате гръмотевици.
Но Home Assistant вече вижда:
⚡ Lightning strike — 46 km
След малко:
⚡ 38 km
После:
⚡ 29 km
После:
⚡ 21 km
Хммм.
😏
Вече имаме информация, която сетивата ни още не са ни дали.
🌩️ BLITZORTUNG
За тази цел има един много интересен проект:
Blitzortung.org
Това е глобална доброволна мрежа за локализиране на мълнии в реално време.
Хиляди станции приемат електромагнитните сигнали от мълниите и данните се използват за изчисляване на приблизителното място на разряда.
За Home Assistant има community custom integration — Blitzortung.org Lightning Detector, достъпна през HACS. Към момента тя може да предоставя distance и azimuth за близки разряди, брояч на мълниите и geo_location entities, които могат да се покажат върху карта. Авторът посочва средно закъснение от няколко секунди.
Тоест Home Assistant може да получи нещо от типа:
⚡ DISTANCE: 27.4 km
🧭 AZIMUTH: 246°
⚡ STRIKES: 18
И оттук вече можем да започнем да си играем. 😁
📍 КОЛКО БЛИЗО?
Интеграцията позволява да зададем район около избрана позиция.
Това може да бъде:
🏠 позицията на Home Assistant; (Къщата, Вилата или каквото си изберете)
📍 друга фиксирана позиция; (Летище, Пристанище, Остров …)
или дори person, device_tracker или zone, така че центърът да се променя заедно с избраната entity. Настройват се и detection radius, времевият прозорец и максималният брой следени разряди.
Последното е особено интересно.
Защото теоретично monitoring-ът може да не бъде вързан само за:
КЪЩАТА.
Може да бъде вързан и за:
ЧОВЕКА.
🏕️ И ТУК НЕЩАТА СТАВАТ ОЩЕ ПО-ИНТЕРЕСНИ
Представете си, че не сме вкъщи.
На къмпинг сме.
В планината.
На курс.
Или просто някъде навън.
Ако location entity се движи с нас, Blitzortung integration може да използва неговите координати като център на наблюдението. Авторът уточнява, че позицията се обновява, когато движението премине определен праг спрямо зададения radius.
Тоест вече имаме идея за:
⚡ ПЕРСОНАЛЕН LIGHTNING MONITOR.
Не казвам:
„Home Assistant ще ви пази от мълнии.“
Това би било глупаво.
Но може да ни даде още един информационен слой.
А това вече е полезно.
🗺️ И МОЖЕМ ДА ГИ ВИДИМ НА КАРТАТА
Blitzortung integration може да създава geo_location entities за регистрираните разряди.
А Home Assistant има цял geo_location модел именно за реални събития с географско положение.
Тези entities имат координати и могат да бъдат визуализирани на карта, а разстоянието им спрямо Home Assistant може да се използва при filtering и automations.
Така вместо:
⚡ 27 km
можем да имаме:
🗺️ карта;
🏠 нашата позиция;
⚡ последните разряди около нас.
И картината вече става много по-разбираема.
🚨 ДОБРЕ. А МОЖЕМ ЛИ ДА ПРАВИМ ПРЕДУПРЕЖДЕНИЯ?
Технически — да.
Например аз бих могъл да си направя собствена логика от типа:
🟢 над 40 km
INFO
Някъде в района има гръмотевична активност.
🟡 под 30 km
PAY ATTENTION
Вече си струва да погледна ситуацията.
🟠 под 20 km
WARNING
Активността е достатъчно близо, за да ми стане интересна.
🔴 под 10 km
CRITICAL ATTENTION
Вече определено искам да знам.
Но тук има едно огромно:
⚠️ ВНИМАНИЕ.
Това са примерни лични automation thresholds, не официални метеорологични граници и не safety стандарт.
⚠️ BLITZORTUNG НЕ Е ОФИЦИАЛНА СИСТЕМА ЗА ПРЕДУПРЕЖДЕНИЕ
Това е важно.
Самият Blitzortung изрично казва, че проектът не е официален орган за данни за мълнии и гръмотевични бури. Данните са за частна/развлекателна употреба и не трябва да се използват като storm-warning система или за risk analysis на защитата на оборудване.
Тоест:
НЕ СИ ПРАВИМ „СОБСТВЕН НИМХ“ В HOME ASSISTANT. 😂
Blitzortung е прекрасен допълнителен информационен слой.
Но когато има официално предупреждение от компетентните служби:
то е с по-висок приоритет.
🧠 И ОЩЕ ЕДНА МНОГО ВАЖНА РАЗЛИКА
Представете си:
⚡ 42 km
⚡ 35 km
⚡ 28 km
⚡ 19 km
Много е изкушаващо да кажем:
„БУРЯТА ИДВА КЪМ МЕН!“
Не непременно.
Това са отделни електрически разряди.
Не проследяваме задължително една и съща буреносна клетка.
Бурята може да се развива.
Да се разпада.
Да образува нови клетки.
Разрядите могат да се появяват на различни места.
Следователно:
намаляващото разстояние до последните мълнии е интересен сигнал…
но не е достатъчно само по себе си, за да твърдим траекторията на бурята.
И това е много важен принцип.
ДАННИ ≠ АВТОМАТИЧНО ЗАКЛЮЧЕНИЕ.
📈 ОБАЧЕ АКТИВНОСТТА СЪЩО Е ИНТЕРЕСНА
Представете си две ситуации.
СИТУАЦИЯ А
За 30 минути:
⚡ един разряд на 35 km.
И толкова.
СИТУАЦИЯ Б
За същото време:
⚡ 35 km
⚡ 32 km
⚡ 29 km
⚡ 31 km
⚡ 27 km
⚡ 25 km
⚡ 23 km
⚡ 26 km
⚡ 21 km…
Втората определено заслужава повече внимание.
Не защото Home Assistant вече е направил метеорологична прогноза.
А защото:
ИМА ПОВЕЧЕ ИНФОРМАЦИЯ, КОЯТО СИ СТРУВА ДА ПОГЛЕДНЕМ.
🔔 И ТУК СЕ ВРЪЩАМЕ КЪМ ALERT FATIGUE
Ако Home Assistant ми праща:
⚡ Lightning strike 98 km
⚡ Lightning strike 96 km
⚡ Lightning strike 101 km
⚡ Lightning strike 94 km
⚡ Lightning strike 99 km
…
след десет минути ще направя най-разумното нещо:
ще хвърля телефона през прозореца. 😂
Следователно пак трябва да мислим.
Не:
STRIKE → NOTIFICATION.
А:
ДАННИ → КОНТЕКСТ → НИВО → ИЗВЕСТИЕ.
🚦 МОЖЕМ ДА НАПРАВИМ LIGHTNING STATUS
Вместо 300 notifications:
⚡ LIGHTNING
🟢 CLEAR
Няма интересна активност в избрания radius.
🟡 ACTIVITY DETECTED
Има регистрирани разряди в по-широката зона.
🟠 NEARBY
Има близка активност, която заслужава внимание.
🔴 CLOSE
Има регистрирани разряди в зададения от нас близък radius.
И notification изпращаме само когато:
НИВОТО СЕ ПРОМЕНИ.
Това вече ми харесва много повече.
⏱️ А ПОСЛЕ ТРЯБВА ДА СЕ ВЪРНЕМ КЪМ NORMAL
Бурята минава.
Последният разряд е бил преди 45 минути.
Няма нови.
Какво правим?
Не искаме dashboard-ът още три дни да показва:
🔴 АПОКАЛИПСИС. 😂
Следователно трябва да имаме и логика за:
CLEAR.
Например:
няма нови разряди в зададената зона за определен период → връщаме състоянието към NORMAL.
Точният период е част от нашия дизайн, а не универсално правило.
🌧️ НО МЪЛНИИТЕ СА САМО ЕДИН ИЗТОЧНИК
Ето къде Home Assistant става наистина интересен.
Можем да комбинираме:
⚡ lightning activity;
🌧️ precipitation;
🌬️ wind;
🌡️ temperature;
☁️ weather forecast;
🚨 официални предупреждения.
Например официалната Open-Meteo integration в Home Assistant предоставя текущи условия и прогнози за избрана локация и не изисква акаунт или API key; Home Assistant има и други weather integrations.
Тогава вместо да гледаме само един sensor…
започваме да изграждаме:
🧠 КОНТЕКСТ.
🚨 А ОФИЦИАЛНИТЕ ПРЕДУПРЕЖДЕНИЯ?
Тук имаме още един интересен слой.
Home Assistant има integration за MeteoAlarm, която получава метеорологични предупреждения в Европа от EUMETNET/MeteoAlarm. Тя предоставя информация като event, urgency, severity, certainty, начало, край, headline и описание на предупреждението.
Тоест можем да имаме нещо от типа:
⚠️ WEATHER WARNING
Severity: Orange
Event: Thunderstorm
Effective: …
Expires: …
И Home Assistant може да реагира при появата на такова предупреждение.
Само че има една особеност: официалната Home Assistant документация в момента маркира MeteoAlarm integration като Legacy integration и Cloud Polling. Това не означава „не я използвайте“, но е добра причина да проверяваме текущото ѝ състояние, преди да изградим критична логика около нея.
🧠 И СЕГА МОЖЕМ ДА ИМАМЕ ДВА РАЗЛИЧНИ ТИПА ИНФОРМАЦИЯ
⚡ OBSERVED DATA
Реално регистрирани мълнии около нас.
и:
🚨 OFFICIAL WARNING
Официално предупреждение за нашия район.
Това не са едно и също.
И аз бих ги държал отделно.
Например:
⛈️ WEATHER STATUS
Official warning: 🟠 ORANGE
Lightning: 🔴 CLOSE
Rain: 🌧️ ACTIVE
Wind: 34 km/h
Ето това вече е dashboard, който ми казва нещо.
🌍 И МОЖЕМ ДА ОТИДЕМ ОЩЕ ПО-ДАЛЕЧ
Home Assistant има geo_location building block именно за реални събития около дадена позиция — например метеорологични събития, пожари или земетресения. Тези събития могат да се показват на карта и да задействат automation, когато попаднат в определена зона.
Сред поддържаните източници в документацията са например:
🌍 GDACS;
🌎 USGS Earthquake Hazards;
🔥 някои регионални fire feeds;
🗺️ GeoJSON feeds.
И изведнъж идеята става много по-голяма от:
„Ще вали ли утре?“
🌍 GDACS Е ДОБЪР ПРИМЕР
Home Assistant има официална integration за Global Disaster Alert and Coordination System — GDACS.
Тя може да получава информация за големи:
🏜️ суши;
🌍 земетресения;
🌊 наводнения;
🌀 тропически циклони;
🌊 цунами;
🌋 вулканична активност.
Събитията могат да бъдат филтрирани по разстояние спрямо избрана позиция и автоматично да се появяват и изчезват като entities. Според текущата документация feed-ът се обновява през пет минути.
Не всички от тези събития са особено актуални за България.
😂
Но концепцията е важната.
📍 ЗОНИТЕ ПРОМЕНЯТ ИГРАТА
Представете си:
🏠 HOME
Имаме radius около дома.
Когато определено geo_location събитие влезе в него:
automation.
Home Assistant официално поддържа geo_location trigger за появяване или изчезване на такива entities от зона.
Тоест логиката може да бъде:
КОГАТО:
интересуващо ни събитие попадне в нашата monitoring zone
АКО:
отговаря на определени критерии
НАПРАВИ:
уведоми ме.
Вече не наблюдаваме sensor в кухнята.
Наблюдаваме:
ПРОСТРАНСТВОТО ОКОЛО НАС.
🗺️ И ТОВА МОЖЕ ДА ВЛЕЗЕ В НАШИЯ SHTF DASHBOARD
Спомняте ли си dashboard-а от Част 5?
Имахме:
⚡ POWER
💧 WATER
🌫️ AIR
🧊 FOOD
🌐 COMMS
Сега можем да добавим:
🌍 EVENTS
Например:
⛈️ WEATHER
🟢 NORMAL
⚡ LIGHTNING
🟡 ACTIVITY — nearest 37 km
🚨 OFFICIAL WARNINGS
🟢 NONE
🌍 GEO EVENTS
🟢 NONE NEARBY
И отново:
не искам 47 карти.
Искам един поглед.
👁️ НОРМАЛНОТО МОЖЕ ДА СИ МЪЛЧИ
Това вече трябва да ни е познато.
Не искам Home Assistant всяка сутрин да ми казва:
„Добро утро, Duvi. Няма земетресение.“
Благодаря. 😂
Искам:
🟢 NORMAL
да бъде скучно.
Но когато:
нещо се промени…
ТОГАВА МЕ ИНТЕРЕСУВА.
⚠️ ИМА ОБАЧЕ ЕДИН МНОГО ВАЖЕН ПРОБЛЕМ
Колкото повече външни източници добавяме…
толкова повече зависимости добавяме.
Blitzortung?
🌐 външна услуга.
Weather provider?
🌐 външна услуга.
MeteoAlarm?
🌐 външна услуга.
GDACS?
🌐 външна услуга.
Тоест:
HOME ASSISTANT МОЖЕ ДА Е LOCAL…
но данните, които използва, не са задължително local.
Това е абсолютно същият урок от Част 3.
🌐 INTERNET ПАДА
Какво остава?
Вашите:
💧 локални leak sensors;
🌡️ локални temperature sensors;
⚡ UPS;
🏠 Zigbee;
🔌 local devices;
могат да продължат да работят.
Но:
⚡ Blitzortung;
🚨 MeteoAlarm;
🌍 GDACS;
☁️ online weather forecast;
може да спрат да се обновяват.
Следователно dashboard-ът не трябва да казва:
🟢 НЯМА ОПАСНОСТ.
ако истината е:
❓ НЯМАМ ДАННИ.
Това е огромна разлика.
❓ UNKNOWN ≠ SAFE
Това си заслужава собствен надпис на стената.
😂
UNKNOWN ≠ SAFE.
Ако последната информация от weather service е отпреди три часа…
това не означава:
„Времето е прекрасно.“
Означава:
„Не знам.“
Добрата monitoring система трябва да различава:
🟢 NORMAL
от:
⚪ UNKNOWN / DATA UNAVAILABLE.
🧠 И ТОВА Е СЪЩНОСТТА НА ЦЯЛАТА СЕРИЯ
Не се опитваме да построим:
магическа къща, която предвижда бъдещето.
Опитваме се да подобрим:
ВЪЗПРИЕМАНЕТО НА ОБСТАНОВКАТА.
В Част 5 къщата започна да гледа навътре.
В Част 6 започна да реагира.
А сега започва да гледа:
🌍 НАВЪН.
И внезапно Home Assistant може да се превърне от:
„Smart Home“
в нещо много по-интересно:
🧠 INFORMATION HUB.
🏠 И ТУК ВЕЧЕ СЕ ПОЯВЯВА МОЯ SHTF DASHBOARD
Не dashboard с красиви графики.
А екран, който за пет секунди ми казва:
🏠 HOUSE
🟢 NORMAL
⚡ POWER
🟢 GRID ONLINE
🟢 UPS READY
💧 WATER
🟢 CLEAR
🌫️ AIR
🟢 NORMAL
🧊 FOOD
🟢 NORMAL
🌐 COMMS
🟢 LAN
🟢 INTERNET
⛈️ WEATHER
🟡 ACTIVITY NEARBY
⚡ LIGHTNING
Nearest strike: 28 km
🚨 WARNINGS
🟢 NONE
🌍 EVENTS
🟢 NONE NEARBY
И ако нещо стане червено…
тогава вече искам подробностите.
⚡ И ТОВА Е САМО НАЧАЛОТО
Защото сега вече имаме:
🏠 информация от дома;
🌍 информация отвън;
📍 местоположение;
🌐 комуникации;
⚡ резервно захранване;
🤖 automations;
📱 notifications.
И знаете какво липсва?
Всичко това да бъде събрано на едно място.
Не 17 dashboard-а.
Не 84 entities.
Не графики, които изглеждат сякаш управляваме АЕЦ „Козлодуй“. 😂
А:
ЕДИН SHTF DASHBOARD.
👉 В ЧАСТ 8:
🖥️ SHTF DASHBOARD — КАКВО ВСЪЩНОСТ ТРЯБВА ДА ВИЖДАМ?
Ще съберем всичко от серията досега.
⚡ POWER
💧 WATER
🌫️ AIR
🧊 FOOD
🌐 COMMS
⛈️ WEATHER
⚡ LIGHTNING
🌍 EVENTS
🏠 HOUSE
И ще се опитаме да направим не най-красивия dashboard…
а най-полезния.
Такъв, който не ни кара да анализираме 200 числа.
А ни казва:
„ВСИЧКО Е НОРМАЛНО.“
или:
„ХЕЙ. ПОГЛЕДНИ ТОВА.“
Защото крайната цел никога не е била:
повече sensors.
повече automations.
повече gear.
Целта е:
ПО-ДОБРА ИНФОРМАЦИЯ → ПО-ДОБРИ РЕШЕНИЯ.
👁️ ВЪЗПРИЕМИ.
🧠 ОЦЕНИ.
🎯 ПРИОРИТИЗИРАЙ.
⚙️ ДЕЙСТВАЙ.
🔄 ПРЕОЦЕНИ.
🧩 АДАПТИРАЙ СЕ.
И пак отначало. 😁
SHTF.BG
Оцелявай умно, а не трудно.



