Paradoksalus programavimas: zonos

Posted: 2015-11-29 in Darbeliai
Žymos:,

Kadangi cacos komentatoriai padėjo išspręsti problemą su signalizacijos pulteliu, tai tuoj pat jį pakeitęs į suderinamą K641+ ėmiausi maigyti Paradox EVO192 centralę ir periferiją. Kai kuo iš tų smagumų pasidalinsiu su jumis.

Šiaip mano turima centralė yra tikrai nagla. Kai kur tokios centralės prižiūri pramoninius pastatus — galimybių ir plečiamumo per akis. Dabar turbūt kyla klausimas, ar man tokios super duper signalizacijos pačiam reikia… o ką aš žinau, tiesą sakant. Kai nuėjęs į vieną firmikę paklausinėjau apie signalizacijas ir išreiškiau savo fantazijas, parekomendavo Paradoxą. Na, vien dėl to, kad sistemą lengva plėsti ir sąlyginai lengva programuoti. Daug kas joje yra „user friendly“.

Tiesa, kai įsigijau tinklo modulį, tai tikėjausi, kad jo Web sąsaja leis man viską pelyte ir susikonfigūruoti. Va čia klydau. Web sąsaja yra tik pasižiūrėjimui ir elementoriškiems veiksmams: priduoti signalizaciją, atjungti, susikonfigūruoti el. pašto adresus visokiems raportėliams siųsti ir panašiai. Tiesa, tas modulis turi atskirą „Application“ prievadą, per kurį teoriškai galima pasiekti viską, ką moka centralė. Bet tam reikia programos kompiuteryje ir, aišku, Windows. Paradoxo rekomenduojama WinLoad kažkokia persenus ir moka šnekėtis su centrale tik per modemus (kamon…), o kita, kiek šiuolaikiškesnė, BabyWare, manęs dar iki galo „nepasiekė“.

Ką gi, kaip sakydavo vienas mano buvęs šefas, „one problem at a time“. Pradedam nuo pačių paprasčiausių dalykų. Su Paradox svarbu žinoti, kad ši sistema palaiko daug vartotojų. EVO192 — tūkstantį. Jo jo, tūkstantį atskirų sistemos vartotojų, beprotybė stačiai 🙂 Pats pirmasis, arba „nulinis“, yra „Installer“. Na, toks kaip ir root vartotojas, superadminas. Jis gali viską. Taigi pirmiausia atsisėdau „rūkyti“ K641 mygtukyno ir EVO programavimo lakštų bei aiškintis, kaip to instaliatoriaus slaptažodį pasikeisti. Toliau vartotojas su numeriuku 1 yra „Master“. Nu toks irgi kaip ir naglas vartotojas, bet jis gali viską valdyti, tačiau negali programuoti. Čia esminis skirtumas. Superadminas (instaliatorius) gali viską programuoti ir sujunginėti (iš ten ir pavadinimas), o masteris gali valdyti visas zonas, sritis ir kitus vartotojus. Šitam koduką irgi reikia pasikeisti, nes standartinis yra 123456.

Toliau, reikia apsispręsti, ar bus naudojami 4 ar 6 skaičių „slaptažodžiai“. Gali būti ir kintamo ilgio, bet tada po kodo surinkimo reikia „enter“ paspausti. Tiek to, man bus gerai 6 skaičiukai.

Taigi čia tokie pirmieji bandymai. Programavimą darau per klaviatūrą, nors tai ir nešiuolaikiška. Bet aš programuotojas, prie panašių dalykų pripratęs. Juo labiau, kad nesudėtinga ten viskas. Su BabyWare „damušu“ tai, kas per klaviatūrą nesigauna arba labai painu baksnot. Taip jau yr, kai kas paprasčiau per klaviatūrą, kai kas — per kompiuterį.

Programavimas vykdomas paprastai. Klaviatūroje nuspaudžiamas 0 ir laukiama. Tada prašo instaliatoriaus kodo, o po jo reikia įvesti programuojamo skyriaus koduką. Na, sakykim, zonų konfigūravimas vykdomas surinkus 0400, o paskui jau toliau rankiojant zonų numeriukus.

EVO sistema yra ganėtinai išmani. Ji turi taip vadinamą COMBUS magistralę, per kurią sujungiami „nedurni“ sistemos komponentai. T.y. per tuos pačius du duomenų laidus galima sujungti kelis pultelius, magistralę palaikančius daviklius, plėtimo modulius ir taip toliau. Pati centralė dar turi ir aštuonis „paprastų“, laidinių zonų elektrodus. Prie jų jungiami „neišmanūs“ davikliai, kurie suveikdami tiesiog kažkokį kontaktą įjungia/išjungia. Dėl kainos ir dėl to, kad turim namuose gyvūną, pasiėmiau „paprastus“ daviklius. Zonų mano būsimam name bus keturios, taip pat gaisrinė zona ir lauko. Taigi iš viso šeši vienetai. Daviklių, tiesa, daugiau, bet kabinsiu juos po du ant vieno laido su įgalinta ATZ funkcija (apie tai toliau).

Kaip jungti „paprastus“ daviklius, man buvo atradimas. Na, pirmiausia atkreipkite dėmesį, kad iki šiol su signalizacijomis nebuvau susidūręs išskyrus kodukų rankiojimą 😀 O gudrybių yra visokių, pasirodo.

Pirmas dalykas, būna dvejopų tipų daviklių (arba kartais abiejų vienu metu, bet skiriasi kontaktai). Vieni būna „normally open“, kiti — „normally closed“. Tai reiškia, kad kai daviklis nesuveikęs, jo kontaktai būna arba atviri, arba uždari. Mano davikliai — uždaro tipo, „N.C.“. Kitas dalykas — visi judesio davikliai (nebent kokie nors labai seni) turi taip vadinamą „tamper switch“ — jungtukėlį, kuris išsijungia nuėmus daviklio dangtelį. Vadinamieji „antisabotažiniai mygtukai“.

Antras dalykas, ties kontaktais visur rekomenduojama naudoti rezistorius. Na, sakykim, jei daviklis yra „N.C.“, tai prie šitų kontaktų reikia ne tik laidelius prijungti, bet ir 1 kΩ rezistorių. Taigi, kai daviklis suveiks ir „atsidarys“, per grandinę vis tiek tekės srovė. Centralė supras, kad tai — normalus suveikimas. Tuo tarpu nuosekliai prijungus dar ir tamperį centralei bus aišku, kad jei grandinė visai pertraukta — įvyko arba tamperio suveikimas, arba nutrūko laidas. Galima rezistorių ir ant tamperio uždėti, tai tada bus visai „gudri“ sistema, žinanti ir apie tamperio suveikimą atskirai, ir apie laido nutrūkimą.

Na, jei daryčiau signalizaciją kur nors pramoniniame pastate, tikrai visus daviklius dėliočiau ir su tamperio, ir su linijos, ir su laido gedimo nustatymu. Tuo tarpu namuose nusprendžiau daryti kelias nuoseklias linijas su rezistoriais ir tamperiais (tamperiai tik dėl visa ko, nelabai tikiu namuose vykdomais sabotažiniais daviklių ardymais). Taigi vieno daviklio schema tokia:

Judesio daviklio jungimas su tamperiu ir eol rezistoriumi | Darau, blė

Iš pradžių galvojau, kad va šitaip sujungsiu kai kur po tris daviklius nuosekliai ir bus „viena zona“. Bet paskui pagalvojau… na, kaip ir nesvarbu, kuris daviklis iš trijų suveikė svetainėje, sakykim. Bet ūkinėje dalyje, kur yra trys patalpos, gal būtų ir gerai žinoti atskirai kiekvieno daviklio įvykius.

Su EVO galima į vieną įvadą prijungti du daviklius su skirtingų reikšmių rezistoriais ir taip gauti dvi zonas ant vieno laido:

Dviguba Paradox ATZ zona ant vieno laido su tamperiais | Darau, blė

Su šiuo praplėtimu dešimt daviklių sujungsiu penkiais laidais. Vienuoliktąjį durų pypsiuką galėsiu prijungti prie klaviatūros, ji turi vieną zonos įvadą ir vieną programuojamą išvadą. Gaisriniams davikliams panaudosiu PGM1 įvadą (nes jis turi tokią funkciją) ir dar liks trys įvadai, kurių vieną ar du vėliau panaudosiu perimetrui. Ką gi, regis, pavyks išsisukti be plečiamųjų modulių 🙂

Tiesa, kad jau daryt, tai daryt iki galo. Prie aukščiau pateiktos schemos galima dar pridėti bendrą 1kΩ varžą, t.y. viename daviklyje apie 500Ω ir kitame — tada dar ir laido pažeidimas centralei matomas. Užtrumpinimas, nutraukimas ar dangtelio nuėmimas. Gal ir nebūtina name, bet jei jau yra tokia funkcija, tai reik išnaudot iki galo:

Dviguba Paradox ATZ zona ant vieno laido su tamperiais ir laido gedimo aptikimu | Darau, blė

Na, su davikliais jau viskas aišku. Pasidariau bandymuką ant stalo, pradžiai be EOL rezistorių ir be tamperių:

DSC-LC100PI judesio davikliai sujungti į dvi ATZ zonas vienu laidu | Darau, blė

Siurprizų nėra, atskiros zonos veikia.

ATZ, t.y. dvi zonas su vienu laidu, reikia centralėje įjungti atskirai, 3033 skyrelyje, „System options“. ATZ įgalinimas yra 8. Čia, spėju, centralės „prote“ vieno baito atskiri bitukai — daug tokių nuostatų visur yra:

3033 System Options Paradox EVO centralėje, ATZ įjungimas | Darau, blė

Tada padvigubėja zonų įvesčių. Fizinės įvestys, kaip minėjau, yra aštuonios. Įjungus atsiranda dar 9-16 įvestys. Pirma įvestis tuo pačiu yra ir devinta, antra — dešimta ir t.t. Zonų konfigūravimo skyrelyje nurodome, kurios įvestys joms priskiriamos.

Vienas niuansas su zonomis. Visada verta gerai pagalvoti, kaip jos bus išdėliotos ir atitinkamai priskirti numeriukus. Sakykim, verta atskirti gyvenamąją erdvę nuo ūkinės skaičiukų intervalais. Pavyzdžiui, 1-4 zona yra gyvenamosios, o 5-8 — ūkinės. Tas svarbu, jei žadate naudoti programuojamas išvestis — jas konfigūruojant galima nurodyti zonų skaičiukų intervalus „nuo-iki“.

Kodėl aš čia apie tai užsiminiau. Nagi yra paprastas signalizacijos panaudos atvejis — cirkuliacinės linijos palaikymas. Cirkuliacinė linija, grubiai tariant, palaiko karštą vandenį vamzdžiuose, kad atsidarę čiaupą karšto vandens sulauktumėte tuoj pat, o ne už pusės minutės. Tam yra reikalingas siurbliukas, tačiau jo neverta laikyti įjungto visą parą. Girdėjau, kad kai kurie žmonės nusiperka paprastą mechaninį laikmatį ir ant jo nustato valandas, kada jie daugiausiai būna namie ir tada cirkuliacija veikia. Bet galima tą patį padaryti gudriau: su signalizacijos judesio davikliais ir uždelsimu. Sakykim, jei kas nors namie sujudėjo, programuojamoji įvestis įsijungia ir 10 minučių laiko siurbliuką įjungtą. Kai namie yra žmonių, tikrai tikėtina, kad jie į judesio daviklio zoną pateks dažniau, nei 10 minučių (asmeninė patirtis). Tuo tarpu, jei išeinate į garažą pasikrapštyti prie mašinos, cirkuliacija gali būti ir išjungta, t.y. centralė nereaguos į ūkinės zonos daviklius ir programuojamos išvesties neįjungs.

Paradox zonos dar gali būti įvairių tipų. Aš jų ten visų nežinau ir neatsimenu, bet, grubiai yra du esminiai tipai: „priduodamos“ zonos, kai signalizacija įjungta ir visą parą dirbančios — nepriklausomai nuo „pridavimo“. Ištisai prijungtos zonos gali būti, pavyzdžiui, dūminė/gaisrinė, vandens nutekėjimo, šalčio (pvz. šaldytuvas sudurniavo ar rūsys peršalo) ir dar kažkokios ten. Aš iš šitų greičiausiai turėsiu tik gaisrinę. Na, sabotažinio mygtuko gal nereikės namie 🙂

Lyg ir tiek. Parašysiu gal kitą kartą apie particijas, IP ir GSM modulius bei kam verta turėti atskirus signalizacijos „vartotojus“. Tikrai negalima signalizacijos junginėjimui naudoti „masterio“, geriau vieną kitą „durną“ vartotoją pridėti.

Apie zonų programavimą labai gerai yra čia, kas suprantate rusiškai:

Be abejo, lauksiu komentarų iš patyrusių signalizatorščikų 🙂 Mielai priimsiu visokius patarimus ir kitus hakus.

Advertisements
Komentarai
  1. boincakismet parašė:

    O ar įmanoma zonų pavadinimus iš Master susivesti? Nes pas mane patingėjo padaryti, kai dirbo Installeriai, jų kodų ir manualo neturiu, o labai jau durna išeinant iš namų matyti Zone 9 open ir bandyti atspėti, kas ten…

    • Darau, Blė parašė:

      Manau, kad ne, reik installerio. Siūlau pabandyti tą patį Master kodą arba defaultinį 000000, jei installeriai kreivarankiai 🙂

  2. Romas parašė:

    Šiaip iš patirties galiu pasakyti, jog jei tik kokiais nors būdais įmanoma – visada reikia daryti kiekvieną daviklį kaip atskirą zoną. Pvz viena zona – trys davikliai, na ir prasideda džiaugsmai – retkarčiais ta zona sudirba. Kuriame daviklyje voriuko ieškoti? Arba kurio laidus pelė pagraužė? Ir šiaip, pvz kambaryje trys langų atidarymo ir du judesio davikliai sujungti į vieną zoną. Ką daryti ir ką žiūrėti atvažiavusiai saugos tarnybai?

  3. Andrius parašė:

    Sveiki. Būtinai junkit kiekvieną jutiklį į atskirą zoną, naudokit ATZ, jungimas automatiškai bus NCDOEL tipo, t.y. sistema matys viasas galimas šleifo būsenas. Jutikliuose skyles patarčiau gręžt grąžteliu ir tik tokias, kokių reikia, nes kitu atveju vorų veisyklų kampuos pristatysit 🙂 LC100PI tamper switch’ą iškart palenkt kad geriau prisipaustų- gamykliškai ant ribos būna, jautrumo nustatymo potenciką tarp 1-2 val. palieku, dabar pareina sumažintu jautrumu, ko anksčiau nebuvo (per vidurį – ties 12val. stovėdavo). Balansinių rezistorių kojas apkarpykit – nekultūringai atrodo tokios ilgos 😉 Pradedu manyt, kad tamstai ir Spectros būtų į valias 🙂

    • Darau, Blė parašė:

      Ačiū, labai mėgstu tokius komentarus 🙂

      Jo, apkarpysiu rezistorius būtinai, sulituosiu laidukus, kembriku aptrauksiu. Sau gi darau. Įleistus laidus užklijuosiu, nerizikuosiu net ir skyles taikydamas.

  4. Andrius parašė:

    Na, aš į absoliučią tiesą nepretenduoju, mat šioj srity įpratimas dirbti ir išmonė daug reiškia, kiekvienas meistrelis savitą braižą turi… Šiaip teisingai viską darant lituoti jutiklio viduje esančių laidų man dažniausiai neprireikia, viskas po varžtais susijungia nebent kabelis išsišakoja ar pan…Sujungimai, žinoma, lituojami ir termokembriku aptraukiami. Paprastai per jutiklius “šokinėjama” paliekant optimalaus ilgio kilpas kiekvienam jų, ir komutuojant perkerpamos tik tos gyslos, kurias reikia kirpt – susitaupo DAUG laiko 😉

  5. Zygimantas parašė:

    Sveiki, keliu gyslu laido reikia judesio davikliui isvedzioti ir ar yra kas susidure. kad pvz uzprogramuoti centrale taip kad kiekviena nakti tarkime isijungtu signalizacija tam trikose zonose, tarkime garaze ir ryte automatiskai atsijungtu.

    • Darau, Blė parašė:

      Judesio davikliams paprastai reikia keturių gyslų: du laideliai maitinimui ir du signalizavimui. Dėl automatinio įjungimo tai priklauso nuo centralės. Paradox EVO ir Magellan šitą tikrai moka, o apie kitas nežinau. Nors įtariu, kad tai gan įprasta funkcija.

Parašykite komentarą

Įveskite savo duomenis žemiau arba prisijunkite per socialinį tinklą:

WordPress.com Logo

Jūs komentuojate naudodamiesi savo WordPress.com paskyra. Atsijungti / Keisti )

Twitter picture

Jūs komentuojate naudodamiesi savo Twitter paskyra. Atsijungti / Keisti )

Facebook photo

Jūs komentuojate naudodamiesi savo Facebook paskyra. Atsijungti / Keisti )

Google+ photo

Jūs komentuojate naudodamiesi savo Google+ paskyra. Atsijungti / Keisti )

Connecting to %s