Jump to content
BulForum.com

Домашна автоматизация / Лабове


Recommended Posts

Нова тема в която да си споделяме какво правим  като домашна автоматизация.

 

Започвам с новото ми поливане :)

 

От към електроника е много базово. Взех си стандартни ел. вентили на 12V които исках да управлявам отдалечено, позволявайки ми да въртя водата през няколко отделни кръга, без да се занимавам сам да сменям кой кръг полива в момента. 

Pi Pico WH + релетата на SB Components (имат и единично такова, ползвам го за един отделен кръг), представляват "управлението", отстрани хванах произволно 12V захранване, чиито плюс прекъсвам с релетата и през тях отива към ел. вентилите, минуса си отива директно на тях.  

И всичко е разделено в няколко кутии. "Управлението" което са пикото + неговото си захранване + 12-те волта стои в една кутия която съм сложил в шахтата ми за дъждовна вода, а ел. вентилите стоят от вън в две отделни кутии. Имам снимка с единичната ми кутийка, че я сложил неделята, дори още не съм я поставил на стената на гаража https://photos.app.goo.gl/DMLcUE87Tyc8n7d77

Останалата част вече е софтуера. Самото Пико е максимално "базово" - връзва се към wifi мрежата, и в лууп проверява апи-то ми за желаният статус на всяко реле, както и за това колко време да чака м/у проверките. Евентуално трябва да добавя и функция за OTA ъпгрейд, но не ми се занимаваше при първата версия. 

Апи-то не е нищо специално, flask апп с postgre отзад за статусите, и графана с graphite отстрани за статистики.  Всичко работи като контейнерчета

Първоначално просто ги пусках регулярно - вечерта в 10 започвах и минавах през всеки кръг и сутринта в 5 същото. 

 

След това ми пристигнаха и сензорите за влага и тъй като са с Лора ми трябваше и  "гейт" - с тези загубих малко повече време защото имах проблеми с Ардуино ИДЕ-то, плюс че се бях заблудил за едни гейтчета тук и не си поръчах директно това от линка, но и кой ме кара да искам да препрограмирам самите сензори. Идват си готови, и дори това дребосъче което ползвам за гейт няма никакъв проблем да получава съобщения от другата страна на къщата ми. На батерии са, та мога да ги разположа навсякъде. Ако не се занимавате с тях - просто им се слагат батерии - тествате си гейта, че получава съобщенията и ги поставяте където си искате.

От към софтуер и тук е максимално базово - гейтчето приема съобщенията и ги препраща към АПИ-то ми. То разпознава отделните сензори по ИД-то им и записва актуалните данни в ДБ-то и също така ги праща в Graphite за Графаната да ми рисува картинки. 

И от тук нататък с инфото може да се правят произволни неща. За момента го държа семличко - ако е сух определеният кръг - разрешавам поливането, което продължава да се случва по старият план, но вече не вървят всички кръгове всеки път.  Но може и да е доста по-динамично.

 

И тъй като видях, че Мирката иска да си управлява бойлера - тези релета може да ти свършат работа. Смятам да използвам същото за термо помпата ми, но това го оставям за късната есен. Тъй като в момента имам термостати и т.н. във всяка стая, но само един напрактика управлява самата помпа (включи/изключи) .. Та смятам да го заменя с едно Пико което да следи по-добре температурите във всяка стая и на база това да решава дали термо помпата трябва да се изключи или включи. 

 

Edited by ARPAnet
Link to comment
Share on other sites

  • 4 weeks later...

Намерих нещо готино за което дори не се бях замислял ntfy.sh | Send push notifications to your phone via PUT/POST

Източника е ревюто на NetworkChuck. Туулчето работи идеално, и вече имам няколко неща за които получавам нотификации, вместо да ходя да ги проверявам.  

 

Link to comment
Share on other sites

Някой може ли да даде инсталация на Texas Instruments Flash Programmer 2?

https://www.ti.com/tool/download/FLASH-PROGRAMMER-2/1.8.2

Нещо не им харесвам и не ми дава да го сваля, а искам да си ъпдейтна софтуера на zegbee dongle-a.

Link to comment
Share on other sites

Да. И нито на пощата и дойде нещо за потвърждение на акаунта, нито нищо. И не дава да го дръпна.

Благодаря. За sonoff zigbee 3.0 usb dongle plus ми трябва. Малинката дойде, подкарах Home Assistant, сега да настроя адаптера, ще си настроя една отделна мрежа за тези неща, че да не се бъркат с домашната, пък и да изолирам по-лесно нищо да не излиза навън и ще почна малко по малко да експериментирам с някои джаджи.

Link to comment
Share on other sites

2 hours ago, netrootbg said:

Тези произвеждат нещо което ми грабна окото:

https://www.zimaboard.com/

Аха, миналата седмица си го поръчах и чакам всеки момент да пристигне. Ще пиша за впечатленията.

Link to comment
Share on other sites

14 hours ago, ARPAnet said:

Да и доста я похвалиха Зимаборда по ревютата

Много готина играчка

Ще видя после ревюто.

 

12 hours ago, Godfather said:

Аха, миналата седмица си го поръчах и чакам всеки момент да пристигне. Ще пиша за впечатленията.

Кой модел си поръча?

Ще изчакам да си кажеш впечатленията. Мисля да го ползвам за VPN и файлов сървър.

Link to comment
Share on other sites

4 minutes ago, Godfather said:

Поръчах 432 модела, който е с N3450 процесор и 4GB RAM, че базовия ми се видя слабичък. :)

Така като гледам е най - масовият модел. Гледам 832 аз, но не съм решил още. Нямам обаче много време. Скоро трябва да го забия вкъщи.

Link to comment
Share on other sites

Не се сдържах и си поръчах 832 модела. С отстъпките и всичко ми излезе точно 130 евро. Ще пиша когато пристигне. Разгледах им и тяхната версия на Линукс. Доста добре изглежда. Може би ще и дам шанс.

 

CasaOS - A simple, easy-to-use, elegant open-source personal cloud system

Link to comment
Share on other sites

Ще ме извинявате за лаишкия въпрос, но не съм хич наясно с Линукс и Докер.
Този ZimaBlade може да се използва като рутер, NAS, медиа сървър, ДНС Адблокер и др. по едно и също време, така ли? Или всяка една от тези функционалности иззема пълния ресурс на устройството и то не може да се ползва за друго.

Просто не ми е ясно дали PLEX сървърът (например) играе ролята на програма в една операционна система или на самостоятелна операционна система.

Link to comment
Share on other sites

4 minutes ago, w00x said:

Ще ме извинявате за лаишкия въпрос, но не съм хич наясно с Линукс и Докер.
Този ZimaBlade може да се използва като рутер, NAS, медиа сървър, ДНС Адблокер и др. по едно и също време, така ли? Или всяка една от тези функционалности иззема пълния ресурс на устройството и то не може да се ползва за друго.

Просто не ми е ясно дали PLEX сървърът (например) играе ролята на програма в една операционна система или на самостоятелна операционна система.

Нямаш проблеми да пуснеш всички тези неща на куп. Plex е програма, pi-hole е програма и т.н. При Докер е малко по - различно, но е почти същата концепция. Виж линка за тяхната OS който пуснах по - горе. Можеш да влезеш в демото.

Link to comment
Share on other sites

Да, разглеждах демото и добих представа, че са под формата на програми. Просто реших да попитам, в частност за тогава, когато се ползва И като рутер, тъй като PfSense си е операционна система един вид.

Link to comment
Share on other sites

3 minutes ago, w00x said:

Да, разглеждах демото и добих представа, че са под формата на програми. Просто реших да попитам, в частност за тогава, когато се ползва И като рутер, тъй като PfSense си е операционна система един вид.

Docker е вид виртуална машина.

Link to comment
Share on other sites

Pfsense-а си е ОС и с него ще загубиш част от гъвкавостта, все още не поддържат контейнери и виртуалки.

 

Но с борда който е с 2 порта + линукс може да си направиш рутера (все пак са няколко iptables правила) + dhcp. А като екстра си запазваш възможността да пускаш контейнери и т.н. за останалите функции като плекс, сторидж(самба/нфс), pihole и т.н.

Сега дали ще ползваш контейнери или просто ще си инсталираш съответните пакети е въпрос на личен избор. 

Link to comment
Share on other sites

Зависи от апп-а и от гледната точка

От теоретична гледна точка: Аппа си работи в основният ти ОС, няма особена изолация от него, зависим е и от други аппове които работят на същият ОС, споделят библиотеки, зависимости и т.н. Контейнера ти дава изолация от хоста/основният ОС. По принцип може да е базиран на друго дистро дори, има си отделни библиотеки/пакети които също са независими. В общият случай можеш да го свалиш и пребилднат с всичко необходимо вече в него. Бидейки изолиран от хоста ти дава и екстра доза безопасност - дори и някой да влезне в него, трудно се излиза към хоста. И решава един от основните проблеми- "работи на моята машина", защото сега "моята машина" може да бъде споделена с други, съответно го превръща в лесен начин за споделяне на софтуер. 

 

От гледна точка на "пускането":

Ако има готов пакет за ОС-а ти, инсталацията е директна (dnf install X) с някакъв добре документиран/лесен конфиг - инсталацията на пакет е по-лесна и по-бърза. Това е докато не се сблъскаш с някакви странни зависимости към странични библиотеки/пакети.

При по-комплексни сървиси които искат да инсталираш няколко неща и да ги накраш да си говорят (уеб+дб+кеш) примерно -> контейнерите ще са по-лесният път. В общият случай в документацията на пакета ще имат готов docker-compose файл примерно в който ще имаш описани всички контейнери които са необходими. Необходимият конфиг ще е също на едно място в compose-a. И с едита на един-два файла и 2-3 команди вдигаш целият сървис.

 

От гледна точка на повторяемост и ако не искаш да мислиш за зависимости, включително и в бъдещето - Контейнера е по-удобен и в първият случай. Релийзъра се грижи имиджа им да се билдва и да има всичко необходимо, за теб остава просто да го пуснеш от твоята страна и да му подадеш няколко вариабъла. 

Но в случая преминаваме и към software defined infrastructure в някаква степен, защото ако всичко което си инсталирал на този бокс е през контейнери - то ти имаш готовите и работещи дефиниции на всичките ти апове. Просто можеш да ги преместиш на друга машина заедно с дейта директорията/те и да ги вдигнеш/билднеш там, без да се чудиш как си инсталирал/конфигурирал всичко във времето

 

 

Link to comment
Share on other sites

Благодаря за обяснението. Значи наистина е като тип виртуална машина.

А от гледна точка на производителност? Това, че не е директно инсталирано, а се намира в изолиран контейнер, не го ли кара да работи по-бавно?

Контейнерите сам ли си ги правиш или ползваш готови, които зареждаш на твоята система? Зависим ли си от някой друг, който в един момент може да спре хостинг на тоя контейнер с всичките инструкции и дефиниции, или всичко може, веднъж заредено, да си работи и офлайн?

Link to comment
Share on other sites

Ползите от контейнерите са много - независимост, гъвкавост, по-голяма сигурност, знаеш че върви по един и същи начин навсякъде.

Имиджите са готови. Поне на разните основни програми. Ти само сваляш пускаш колкото контейнера (копия) искаш + някаква конфигурация ако има нужда.

Удобни са с това, че не са зависими от машината, на която ги пускаш. Имиджа съдържа в себе си всичко което му трябва да тръгне. От хостващата машина само се иска да може да запали контейнера - обикновено doсker. Така знаеш, че като седнеш на win( s WSL) debian, suse, ubuntu, mac и пуснеш контейнер на дадения софт ще работи по един и същи начин и не трябва да инсталираш нищо допълнително.

Вече и сам може да си компилираш имиджи - например аз си правих експерименти със сайтове. Правиш сайт, билдваш един имидж и може да хостваш сайта в контейнер. Като направиш промени, само билдваш новия имидж, рестартираш контейнера и си ти.

Пуснах в контейнер nginx reverse proxy + един контейнер за автоматично сертифициране на сайтовете с lets encrypt. Пускаш нов контейнер със сайт и домейн и то автоматично го хваща и сертифицира. Нищо не съм слагал на win-a, седи си чист. И хубавото е, че може да си пускаш всякакви сайтове с всякакви изисквания - както е решил дев-а, и не си тормозиш машината. Единия иска php 5, другия 7, един node.js 14/16/18 бази данни, и т..н и т.н

С контейнерите пускаш квото ти е кеф и не тормозиш основната ос с пакети, съвместимости и т.н

Аз в къщи на win-a си пускам така postgre база.

 

Гъвкаво е, че примерно пада ти сървъра. Ти ако имаш файловете за вдигането на сървисите - разните конфигурации, за секунди на втора машина може да ги вдигнеш. Или новата версия на софта изгърми, старта се вдига пак за сек - колкото да запали контейнер с имидж от предната версия.

По-сигурно, защото както писаха по-горе - то върви в нещо като мини виртуалка. Изолирано до голяма степен от реалната ОС, само някъв бъг би дал достъп до реалната машина.

 

Link to comment
Share on other sites

  • ARPAnet changed the title to Домашна автоматизация / Лабове

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...