Stan modułów po włączeniu zasilania

HAPCAN installation tips and troubleshooting when assembling, commissioning and configuring devices.
Rozwiązywanie problemów z instalacją HAPCAN, budową, uruchamianiem i konfiguracją urządzeń.
Post Reply
m.n
Posts: 26
Joined: 12 Apr 2019, 07:07

Stan modułów po włączeniu zasilania

Post by m.n »

HAPCAN zintegrowany z jakimś zewnętrznym systemem. Stany modułów zsynchronizowane. Zanik zasilania, powrót zasilania – moduły ustawiają się w takich stanach, jakie sobie w nich zaprogramujemy, czyli mogą być inne, niż przed zanikiem zasilania. Np. przekaźnik był zamknięty, a po powrocie zasilania jest otwarty. System zewnętrzny nie otrzymuje informacji o zmianie stanu modułu, bo moduł go nie wysyła, więc widzi przekaźnik zamknięty, a w rzeczywistości jest otwarty.

Jak uzyskać – po włączeniu zasilania – zgodność stanów w systemie zewnętrznym z faktycznymi stanami modułów?
1. Po włączeniu zasilania sprowokować je wszystkie (na poziomie HAPCAN) do wysłania stanu? Raczej nie, bo to spowoduje zapchanie buforów odbiorczych.
2. Sprawdzać w zewnętrznym systemie moment włączenia zasilania i wtedy odpytać wszystkie moduły (po kolei, żeby nie zapchać buforów)? Niby zadziała, ale ciągłe sprawdzanie z zewnątrz zasilania to zbędny ruch na magistrali, a sprawdzać wypada często, żeby stan braku synchronizacji trwał jak najkrócej.
No i to odpytywanie wszystkich modułów może trwać długo przy dużej ich liczbie.
Jak to zrobić dobrze, pewnie i sprawnie?
· Mariusz ·
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Stan modułów po włączeniu zasilania

Post by Bartek »

To ja Ci mogę powiedzieć jak ja zrobiłem :). Zewnętrzny system u mnie to node-red. Jeśli zasilanie padnie to i node-red a ten przy włączeniu odpala procedurę odpytywania wszystkich urządzeń o ich stan. Procedura ta jest wywoływana również okresowo co 15 minut, każda grupa kolejno co sekundę.

Na poziomie hapcana to trzeba by zapewne jedno urządzenie customowe, które wysyłałoby zapytanie o status. Chociaż kiedyś był już poruszany temat raportowania stanu po uruchomieniu - ale to by się zakonczyło flodem, chyba żeby sprytnie wykorzystać id jako offset czasowy.

Tymczasem u mnie tak to działa kilkanaście miesięcy i problemów nie zauważyłem.

Można też zewrzeć jeden z przyciskow na stałe i reagować systemem zewnętrznym np na zdarzenie held 4s, co będzie oznaczało dla zewnętrznego systemu że moduł przyciskow się zrestartował.
m.n
Posts: 26
Joined: 12 Apr 2019, 07:07

Re: Stan modułów po włączeniu zasilania

Post by m.n »

Jak pada zasilanie HAPCAN-a, to nie musi oznaczać, że zewnętrzny system też pada. Ja czasem robię restart HAPCAN-a przez wyłączenie zasilania, bo programator coś nakombinuje z modułem LAN i tylko restart pomaga. Oczywiście tylko podczas „prac developerskich”, bo tak normalnie to wszystko jest stabilne i też działa u mnie kilka-prawie-naście miesięcy.

Przy takiej implementacji, jaką masz w node-red, użytkownik może przez 15 minut + (liczba grup) sekund mieć nieaktualne stany w programie w przypadku, gdy HAPCAN zaliczył restart, a program żyje. Mojemu użytkownikowi by to przeszkadzało. ;)

Na poziomie HAPCAN-a można by zrobić „inteligentne” odpytywanie, bez ryzyka flood-a, przy pomocy własnego modułu Hapcanuino. Wtedy odpytywanie z zewnątrz nie byłoby potrzebne, a masowa wysyłka stanów na magistralę byłaby tylko po włączeniu zasilania.

Zwarcie przycisku jest chyba najlepszym rozwiązaniem – czemu go nie zastosowałeś w node-red?
· Mariusz ·
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Stan modułów po włączeniu zasilania

Post by Bartek »

Bo jak patrzę na uptime moich modułów to jest liczony w miesiącach :). Hapcan się restartuje w zasadzie tylko jak prąd odetną - czyli tak raz na rok.
Ostatnio siedzę dużo w noderedzie więc ten jest restartowany kilkadziesiąt razy dziennie.
m.n
Posts: 26
Joined: 12 Apr 2019, 07:07

Re: Stan modułów po włączeniu zasilania

Post by m.n »

Nie trzeba wyłączać zasilania, niektóre czynności administracyjne na module HAPCAN też przywracają jego stan do domyślnego.
Masz rację, to są sytuacje sporadyczne, ale nie zniechęcisz mnie ;) do wymyślenia czegoś optymalnego.
· Mariusz ·
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Stan modułów po włączeniu zasilania

Post by Bartek »

Nie mam takiego zamiaru :). Sam się kiedyś zastanawiałem nad tym, ale teraz większość roboty robi software więc nieczęsto przeprogramowuje moduły.
Post Reply