P dar prieš statant namą labai galvojo apie apšvietimo sistemą. Buvo iškeltos kelios pagrindinės sąlygos:
- Kad eitų valdyti iš telefono
- Kad būtų maksimaliai viskas dimeriuojama
- Dinamiškai priprogramuojami jungikliai
Ir iš tikrųjų padarius vieną atradimą, viskas gavosi net geriau, nei planavau. Todėl viską papasakosiu nuo pat pradžių.
Laidynas
Su šituo buvo nuspręsta: jokių lygiagrečių ar nuoseklių jungimų tarp šviestuvų nedarysiu. Teko prisimesti kokį 100 europinių ant papildomų laidų, bet visos lempelės gavo po atskirą laidą. Šitas pasirinkimas davė milžinišką laisvę, bet apie tai vėliau. Pirminė idėja buvo, kad visi laideliai ateitų į vieną vietą – garažą. Kai P pradėjo dėliotis, kad iki tolimiausių taškų reikia po 30m ir daugiau laido – atšoko fantazija. Išdalinau į 4 sujungimo taškus, kurie gražiai pasislepia ir nesimato.
Jungikliai gavo tiesiog papigiaiskus FTP (ne UTP) laidelius kuriuos paskui šlykštu prijunginėt. Apie tai jau buvau rašęs.
Jungikliai
Jungiklius pasirinkau skambučio tipo, ir dar tokius, kurie neturi padėties, (nes JUNG pasirodo gamina ir tokius, kurie yra skambučio tipo, bet keitinėja padėtį tarp įjungta ir išjungta). Jokių ten ratukų dimeriavimui nedariau. Tam idėja yra naudoti dvigubus paspaudimus, kurie paleidžia norimu stiprumu. Jei jau reik „super custom” – per telefoną galima pasireguliuot kaip reikia. Skambučio tipo todėl, kad nesvarbu iš kur junginėsi: ar iš telefono ar fiziniu jungikliu, niekad nesusimaišys padėtys. Taip pat paprasčiau su dvigubais paspaudimais.
Darbinė įtampa
Šitoj vietoj daug galvos skaudėjimo buvo. Su LED juostom tai kaip ir aišku viskas – 24V. Bet su šviestuvais nelabai, nes dauguma šviestuvų ir lempelių pamėgę 230V. Su 230V problema, kad kai pradedi svaigti apie dimeriavimą tai arba norimo šviestuvo nėra, arba kažkas kainuoja. Dar papildomas galvos skausmas kaip tuos dimerius valdyti. Pas mus gi beveik absoliučiai visur priglaistomi šviestuvėliai dviejų mažų taškų. Bet, net ir tuos gamintojai nurodo, kad lemputės tipas turėtų būti Gu10, ir tokius lizdus komplektuoja pakuotėj. O Gu10 reiškia 230V.
Laimėj tokio pat diametro lemputės eina ir Gu5.3 kurios yra 12V. Bet tada reikia ir naujus lizdus susiveikti. Kita problema, kad Lietuvoje gauti tokių lempelių ir dar dimeriuojamų irgi nėra paprasta. Tas pats 12V aišku ir nebaisiai sexy, nes nedraugauja su ilgais atstumais, arba reik dėti storus laidus. Vis gi pasiskaičiavau kad atstumai nėra dideli pas mane, lizdų iš kinų galima parsisiųsti, o lempelių iš vokiečių arba kinų gauti ir ne problema. Tai finale: 12V bendram apšvietimui, 24V LED juostom, o keli kabinami „liustrai” – kaip pasiseks. Nebus tragedijos jei bus ir nedimeriuojami.
Spalva
Kadangi pas mus visur dvigubi taškai lubose, idėja buvo turėti reguliuojamo šiltumo apšvietimą. Tai yra dėti vieną šiltą lemputę kitą šaltą. Bet D sakė nebesvaik – kaip čia atrodys. Tai oreintavausi tada į dienos šviesą, kažkas apie 4000K.
Su LED juostom truputį paprasčiau. Visos LED juostos pas mus reguliuojamo šiltumo, dar kitaip žinomos kaip CCT LED juostomis. Esmė ten labai paprasta – kas antras LED eina šiltas ir kas antras šaltas. Ir dimeriuojant šiltus/šaltus LED ant skirtingų kanalų galima išgauti norimą šiltumą 2700K-6000K ribose. Pasibandžiau kelias CCT juostas iš aliexpresso, bet pritrūko ryškumo, tad paėmiau Lietuvoje normalaus gamintojo berods iš luxon – tikrai ryškios.
Kontroleris
Čia ir buvo vieta kur teko sukti galvą. Tradiciniai dimeriai visai kainuoja. Reiktų pasukti galvą truputį kaip juos valdyti skaitmeniniu būdu. Tada prisiskaitęs darau ble blogo sugalvojau, kad reik savo gaminti. Susibraižiau savo kontrolerį. Susisiekiau su darau ble – pasidalino schemomis. Jų pagrindu saviškį pasitobulinau. Užsisakiau krūvą visokių elektronikos komponentų iš gerųjų kinų. Ir supratau – darau nesąmonę, nes pats buvau pasakęs, kad kuo mažiau home made dalykų… Motyvacija krito, vis dar bandžiau rasti kažkokį gatavą produktą, bet vis niekas netikdavo. Ir vieną dieną sukrito kortos taip, kad pakeičiau darbą. Ten buvo kolega kuris ir išmanų namą pasidaręs. Pas jį viskas buvo paleista ant keletos ESP32, bet apie apšvietimą pasakė magiškas raides – DMX. Ir tai niekaip nesusiję su reperiu DMX.
Kas tas DMX’as?
DMX arba tiksliau DMX512 yra standartizuotas protokolas, kuris plačiai paplitęs renginių apšvietimo įrangoje.
Trumpai ir ūkiškai – sistema susidaro:
- iš vienos DMX konsolės (kitaip dar DMX masteriu vadinama). DMX konsolė tradiciškai yra tas fizinis pultas su visokiai jungikliais ir slinktukais. Dar DMX konsolė gali būti ir per programą kompiuteryje su DMX <> USB converteriu. Arba paprastas arduino/ESP32/STM32/”you name it”.
- Krūvos DMX dekoderių kurie uždeginėja lemputes.
- Dar ten galima viską skirstyti į visokia visatas, bet čia nebesvarbi informacija.
Esminiai privalumai:
- Visi išėjimo kanalai suadresuoti. Maksimalus kanalų skaičius 512, jei pritrūksta galima statyti dar vieną master’į.
- Protokolas pastatytas ant RS-485 ir yra magistralės tipo, kas reiškia, kad ant vieno laido galima jungti kelis DMX dekoderius su skirtingais adresais, nuosekliai, lygiagrečiai, žiedu ar kaip tik norisi.
- Kiekvienam DMX dekoderiui galima nustatyti atskirą adresą arba naudoti tuos pačius.
- Norint kažką įjungti išsiunčiama komanda su adresu ir stiprumu nuo 0 iki 255 ir viskas, prie norimo adreso priprogramuotas išėjimas užsižiebia norimu stiprumu
Nors protokolas išrastas sceniniam apšvietimui, populiarėja ir pastatų apšvietime, ypač ofisų pastatuose kažkodėl.. Gerieji kinai prikepę DMX dekoderių, su kuriais galima valdyti 12V-24V apšvietimus, yra ir 220V dekoderių. Yra net rėlių blokų DMX protokolu veikiančių. Yra ir ne kinų produktų bet automatiškai ir kaina didesnė.
Keletas trūkumų:
- Protokolas yra vienkryptis, kas reiškia kad išsiuntus nurodymą uždegti švieselę neaišku ar dekoderis atsakė, ar uždegė šviesą. Taip pat neina patikrinti koks dabartinis statusas norimo kanalo DMX dekoderyje.
- Bent jau 12V-24V decoderiai nepasižymi dideliu galingumu kanalui: 1-3A, priklausomai nuo kainos ir gamintojo. Kartais galima rasti 5A.
P pasikinko DMX
Aklai pasirinkti nenorėjau tai atsisiunčiau vieną DMX decoderį 3 kanalų. Taip pat USB<>DMX, kad laptopą paversti masteriu ir pradėjau žaisti ant stalo. Viskas veikė ir patiko, tada pasileidau DMX masterį ant arduino. Ir prasidėjo sunkiausia šito projekto dalis, kažkaip susiarchitektūrinti bendrą sistemos vaizdą.
Vienas iš keturių sumontuotų valdymo taškų atrodo daugmaž taip:
- Galingesnis MeanWell 24V trafas (paturbinau aušinimą, nes originalus spiegia),
- DC – DC konverteris persimest iš 24V į 12V
- Du DMX dekoderiai. Kairys LED juostom (24V), dešinys lemputėms priglaistomuose šviestuvuose (12V)
- DS18B20 termometriukas – dėl visa ko.
Kas valdys DMX’ą?
Vienaip ar kitaip kai jau apsisprendžiau dėl Click PLC buvo aišku, kad reikės kažkokio keitiklio iš PLC į DMX. Mandresni PLC turi plėtinius ir DMX’ui, maniškis dėja ne. Teoriškai gal kažką būtų įmanoma suklepalinti ir su esamu RS-485 išėjimu ant PLC, bet pasirodė per daug sudėtinga. Iš pradžių bandžiau paieškoti gatavų produktų. Įmanoma kažką rasti, bet triženklė kainų kategorija. Tai nusprendžiau, kad pasigaminsiu pats. Tai visa idėja gavosi pasidaryti Modbus RTU <> DMX converterį. Schema nesudėtinga, bet programavimas peraugo į visai nemažą namų projektėlį. Teko normaliai prisiminti C/C++. Verta paminėti, kad reikalingas tik vienas toks keitiklis, kad valdytis visus namo DMX’us.
Kame sistemos kietumas?
Pagal tai kaip viską pavyko įgyvendinti, tai pavyko pasiekti norėtus tikslus:
- Beveik viskas dimeriuojama
- Visi jungikliai priprogramuojami kaip nori
- Keičiama LED juostų temperatūra
Papildomi neplanuoti funkcionalumai:
- Galima įjungti nors ir kiekvieną lemputę atskirai, iš to išeina kad galima name užkurti stroboskopinę diskoteką
- Visas apšvietimas įsijungia su „animacija”, t.y. dabar naudojam „fade in”/”fade out” gražius perėjimus įjungiant/išjungiant.
- Galima belenkaip kurti grupes programiškai, be jokių ten laidų perjunginėjimo, kartais vis dar pasitaiko, kad kažką pakeičiam.
Trūkumai
Sistema sukasi jau metus ir kažkokių didelių trūkumų nėra. Labiau programiniai bug’ai mano darytame ModbusRTU <> DMX konverteryje kuriuos jau daugiau mažiau išsigaudžiau.
Viena lengva problemėlė kuri nėra stipriai aktuali: skirtingos lemputės/LED juostos/arba patys DMX dekoderiai, skirtingai dimeriuoja. t.y. 50% norimo prašomo srauto suteiks skirtingą rezultatą su skirtingais komponentais. Kartais net tos pačios lempelės skirtingai žiba, ypatingai prie labai mažo slopinimo (10%) plika akimi matosi. Problema taisoma atsisakant tiesinio dimeriavimo, ir pritaikant tam tikras kreives.
Kam to reikia?
Turbūt perskaičius šį įrašą kažkam kils klausimas, o kam to reikia? Greičiausiai niekam, nes daugeliu atvejų tai „overkill’as”.
Bendras sistemos vaizdas
Praeitam įraše pradėjau piešti kaip maždaug atrodo sistema. Tai nuo to laiko kaip ir planavau, Odroidą pakeitė Raspberry pi 4 su 8GB RAM. Home Assistantui pasileist taip ir neradau laiko. Schema papildyta šios įrašo aktualijomis.
2022-11-25 - 0:08
Ne, dar ne kiečiausia 😉
Pas kiečiausią keičiasi pagrindinių lempų temperatūra.
Gerai kad DMX plinta ir LT – toks gana paprastas ir efektingas sprendimas, atrodo.
Telefoninis valdymas dar neveikia? Ar ne iš HomeAssistant valdosi? Ai… rašei, per PLC kažkaip. Na tada tai nėra labai paprasta… Lengviau su keliom ESP32 ir HomeAssistant…
Valdymo taškai gerai atrodo. Nors ventiliatorius .. Nelabai jie fengšui kambaryje. Anksčiau ar vėliau plerpti pradeda .. Matyt vertėjo pratampyti storą 12V magistralę į visus 4 taškus.
2022-11-25 - 10:18
Buvo variantas svarstytas dėti visas reguliuojamas lempeles, bet kai lempelių 96 visam name, tai net 10EUR už lemputę yra brangus malonumas. Plius 96 nauji WiFi prietaisai.
Na jau ankstesniuose įrašuose rašiau, kad telefoninis valdymas veikė pirmiau nei jungtukinis (nes jungtukų dar nebuvo). DMX’ai atsirado kartu kai įsikėlėm gyventi.
HomeAssistant nenaudoju. Ant OpenHAB viskas.
Jei jau kažką geba PLC valdyt, tai pridėti į OpenHAB ar HomeAssistant yra minutės ar dviejų darbas, kitaip tariant tas pats kaip bet kokį prietaisą pridėt naują į OpenHab.
Nelabai suprantu ESP32 naudojimo idėjos, tiksliau nesuprantu ką tai keičia. Bet jei Tavo idėja, kad OpenHab sujungt ESP32 per WiFi ir taip valdyt šviesas apeinant PLC, tai yra architektūriškai neteisinga ir dar iškart išdarkoma PDNamo pagrindinė idėja, kad jungikliai ir apšvietimas turi veikti be tinklo, WiFi ir tuo labiau be OpenHAB. Tą Modbus<>DMX konverterį reikia laikyt PLC praplėtimu, o ne kažkokiu atskiru kontroleriu kurį galima valdyt iš bet kur.
Apkritai manau labai svarbu turėti pagrindinę idėją/viziją ir architektūrą, pasižiūrėti kaip praktikoje daroma su rimtom sistemom ir to laikytis. Nes lipdant viską kaip lengviau ir be tvarkos, paskui tokia spagetti architektūra gaunasi kurią lengva padaryti bet sunku prižiūrėti ir debugginti.
Mano idėja yra, kurią ir jau buvau minėjęs, kad visos pagrindinės – gyvybinės namo funkcijos (apšvietimas, jungikliai) galėtų išgyventi be WiFi, LAN ir tuo labiau OpenHab/HomeAssistant tai aš to ir laikausi. Trumpai tariant man užtenka užmaitinti PLC ir bent vieną DMX maitinantį transformatorių, ir valdymas per sieninius jungtukus veikia. O ten veiks neveiks valdymas per telefoną, automatizacijos ir t.t. – yra antram plane. Pagrindinių funkcijų startavimo laikas <1s 🙂
Na ventiliatorius ne fengšui bet šito bent jau nesigirdi lyginant su stock. Šiaip ne viskas dar prarasta, galima ir su esamais laidais išsisukti. Garaže dėt 36V arba 48V trafus, o paskirtstymo dėžutėse DC > DC konverterius kurie ir be aušinimo išsiverčia ir kompaktiškesni.
2022-11-27 - 17:14
„spagetti architektūra” 🙂
Taip, visiems savadarbiams tai gręsia… nes tobulinimai nesibaigiantys.
Ir šiaip problema tokių sistemų jog niekas be tavęs nesutvarkys. Tai labai blogai. Vat nusprogs tavo DMX ir psio… Juk laidukai į jungtukus ploni – tiesiogiai nepajungsi. Na kaip suprantu galima visą gudrią elektroniką išmesti ir pastatyti tas gudrias lenkiškas lach rėles, bet apie jas retas elektrikas žino.
Na ne priekabiauju, tiesiog mintys balsu, kurios gal aktualios 😉
(pailgink Capcha laiką čia: kol rašomas komentaras ši pasensta ir komentaras taip pat miršta…)
2022-11-27 - 19:42
Gal ir gresia, bet čia labiau požiūrio reikalas ar darai kažką dėl to, ar ne ir ar laikaisi kažkokių taisyklių ar ne. Aš kai su tuo dirbu kasdien, tai man tiesiog nesigauna betkaip daryt.
Toks ir elektrikas jei nežino impulsinės/bistabilios relės kur net senukuose ar depo nusipirkt galima, nekalbant apie visokias elstilas 😀
Mano pasirinktos ypatingesnės tik veikimo principu, kad taupesnės, bet rezultate daro tą patį.
2022-12-22 - 8:28
Toks klausimas, o gal matavai kiek energijos suvalgo visa tai budėjimo rėžime?
2022-12-26 - 21:40
Sveikas,
Specialiai nebuvau matavęs. Bet dabar pamatavau komentaro proga. Matavau su kilpiniu uni-t ut213c prietaisu jei netyčia būtų įdomios specifikacijos ir minimalios ribos.
Tai šokinėjo tarp 0.00A ir 0.01A ant fazės ateinančios į visą mazgą kurį sudaro:
trafas HoneyWell 230V AC -> 24V DC, 2x DMX’ai, ir no name DC 24V step down converteris į DC 12V. Tai kaip ir 1W ar 2W klausimas. Kažkiek nuostolių ir į trafą/converius nueina.
Kitas dalykas budėjimo rėžime aš dažniausiai nepalieku įjungtų trafų (kas reiškia kad ir DMX išjungti būna) Stovi rėlės kurias valdo PLC su paprasta logika, kad jei kur nors yra šviesų poreikis ir tada pasileidžia trafas, tai 3 iš 4 zonų įsijungia kai yra poreikis tik. Bet yra toks minusas, kad atsiranda biškį vėlavimas ant pirmo įjungimo, kai reik trafą paleist. Gal čia trafas ne iš kart atiduoda įtampą, gal DMX’as ne iš kart priima komandas, nesiaiškinau labai.
Tai vieną zoną pasilikęs eksperimentavimui, kur jau iš openHAB bandau sužaist, kad trafus įjungtų pvz kai jau netoli namų esam. Ir laikyt išjungtus bent jau kai neesam namie arba miegam. Jei netyčia openHAB logika nesuveikė tai ant PLC yra įprogramuota, kad trafas vistiek pasileistų ant poreikio.
2022-12-27 - 10:45
Sveikas,
papasakok plačiau, koks ten device, tarp PLC ir DMX decoderių.
kažkaip man peršasi mintis, kad galėtų būt sprendimas ->
Ant raspberry/arduino pasikurt Modbus bus serverį, iš PLC siųsti žinutes į tą serverį, o iš avietės per USB dakeliauti iki DMX…bet čia toks jau irgi HOMEmade 🙂
Internetuose randu MODbus -> DMX konverterį, pinigais ~200eur..bet toks labiau širdžiai mielas sprendimas būtų 🙂
2022-12-27 - 13:32
Idėja pas mane paprasta:
Arduino nano stovi už smegenis ir du RS485 transceiveriai. Vienas skirtas su PLC bendraut per MODBUS RTU, kitas su DMX.
Arduino nano veikia kaip slave ir pollina iš PLC registrus per RS485 ir priklausomai pagal jų reikšmes siunčia komandas į DMX. Firmware mano rašyta tai įkelsiu sutvarkęs kodą.
Tavo variantas suveiktų irgi, gal truputį lengviau suprograminti būtų jei C/C++ kalba nelabai mėgstama, bet aš norėjau išvengti avietės:
Aš visą šviesų config’ą/map’ą laikau PLC registruose (sočiai ten jų) kurį vėliau nusiskaito Arduino Nano. O į PLC registrus configo sudėjimui pasidaręs python skriptą kuris konvertuoja configo YAML failą, tai net nereikia leist ClickPLC programinės įrangos jei reikia kažką pakeisti.