Przejdź do treści

BoxID

Przegląd

Ostrzeżenie

Instrukcja ma zastosowanie wyłącznie od wersji oprogramowania v0.07 wzwyż. Firma Inveo nie gwarantuje zgodności informacji zawartych w niniejszym dokumencie z wcześniejszymi wersjami oprogramowania.

Przeznaczenie urządzenia

BoxID LCD (z wyświetlaczem ciekłokrystalicznym) oraz BoxID LED (z diodami LED) to nowoczesne czytniki RFID, zaprojektowane z myślą o szerokim spektrum zastosowań w branżach takich jak przemysł, usługi, handel i logistyka. Dzięki wszechstronnej funkcjonalności urządzenia sprawdzą się jako narzędzia logowania do maszyn, kontrolery dostępu do pomieszczeń (np. magazynów), elementy systemu lojalnościowego czy rejestratory czasu pracy.

Wyposażony w wbudowaną pamięć, BoxID pozwala na przechowywanie zapisanych logów, co umożliwia jego działanie w trybie autonomicznym, bez potrzeby korzystania z zewnętrznego serwera. Obudowa o klasie szczelności IP65 zapewnia niezawodność urządzenia nawet w trudnych warunkach zewnętrznych, pod warunkiem prawidłowego wykonania przepustu kablowego.

Urządzenie wspiera integrację z różnymi systemami dzięki obsłudze protokołów Modbus TCP/RTU oraz HTTP (client/server). Posiada liczne wejścia i wyjścia, które umożliwiają sterowanie elementami czytnika, takimi jak wyświetlacz, buzer czy dodatkowe wejścia/wyjścia. Zasilanie może być realizowane z różnych źródeł, w tym opcjonalnie poprzez PoE (Power over Ethernet), co czyni BoxID elastycznym i łatwo adaptowalnym do specyficznych wymagań użytkownika oraz warunków instalacyjnych.

Changelog

1.1 24 czerwca 2025

  • Wersja oprogramowania v0.07
    • Dodano opis BoxID LCD

1.0 10 marca 2025

  • Wersja oprogramowania v0.06
Spis treści

Budowa urządzenia

Dane techniczne

Kategoria Szczegóły
Zasilanie 10–24VDC przez złącze rozłączne 3,5mm
PoE: 33–57V PoE IEEE 802.3af
Pobór mocy Max 2,5W (~200mA @12V)
Transpondery BoxID posiada wersje:

LF: Wersja niskiej częstotliwości, obsługująca transpondery 125kHz: Unique, Hitag 1/2/S (wybór standardu dostępny na stronie www).
HF: Wersja wysokiej częstotliwości dedykowana dla transponderów 13,56MHz: Mifare Classic, ICODE, iClass (obsługuje tylko identyfikator CSN).
HF Seos: Specjalna wersja HF z pełną obsługą transponderów iClass oraz funkcjami standardowej wersji HF.

Dodatkowo dla BoxID LED, dostępne są warianty:
LF Indala: Przeznaczona wyłącznie do obsługi transponderów LF Indala.
LF HF LEGIC: Wersja obsługująca wyłącznie system LEGIC.

Wbudowana pamięć: 5000 tagów, 30 000 zdarzeń
Wejścia - Liczba wejść: 2
- Typ wejścia: zwierne (NO)
Wyjścia - Liczba wyjść: 2
- Typ wyjścia: przekaźnikowe NO,
- Maksymalne obciążenie: 1A @ 30V DC
Komunikacja - Port Ethernet 10/100Mbps, RJ45
- Port RS485, Modbus RTU
- Wi-Fi (opcja)
Klasa obudowy IP65

Ze względu na różnorodność instalacji oraz zróżnicowane potrzeby instalatorów urządzenie nie posiada żadnych otworów montażowych w obudowie. Otwory należy wykonać we własnym zakresie w tylnej części obudowy, w dowolnym miejscu – nie ma to wpływu na zachowanie gwarancji. Należy pamiętać o zastosowaniu odpowiedniego przepustu kablowego w celu zachowania szczelności.

Wymiary

Opis złącz

  1. LAN – Gniazdo podłączenia sieci LAN,
  2. RS485 – Złącze RS485 dla protokołu Modbus RTU, posiada dodatkowo wyprowadzone napięcie do zasilania zewnętrznych czytników, np. Inveo Exter,
  3. Reset – Zworka RESET. Zwarcie pinów na czas pomiędzy 10-15 sekund powoduje powrót urządzenia do nastaw fabrycznych,
  4. Gniazdo baterii,
  5. RelayMode – Zworki do ustawiania trybu pracy przekaźnika. W pozycji 1-2 wyjście przekaźnikowe NO, w pozycji 2-3 wyjście PWR napięcie podawane jest z wejścia zasilania (12-24V DC),
  6. OUT1 – Złącze przekaźnika nr 1,
  7. OUT2 – Złącze przekaźnika nr 2,
  8. IN1 – Wejście ogólnego przeznaczenia,
  9. IN2 – Wejście ogólnego przeznaczenia,
  10. +12V- – Wejście zasilania 12-24V DC.

Wyjścia OUT1 i OUT2 mogą działać w dwóch trybach:

  • Tryb PWR – Zworki konfiguracyjne ustawione w pozycji 2-3 (patrz rysunek poniżej). W trybie tym po aktywacji przekaźnika na wyjściu pojawi się napięcie zasilania czytnika np. 12V DC. Jeśli czytnik będzie zasilany z 24V DC to pojawi się napięcie 24V DC.

Ostrzeżenie

Jeżeli czytnik zasilany jest przez PoE 802.3af i nie ma podłączonego zasilania przez wejście zasilania to napięcie do wyjść OUT0 i OUT1 nie będzie dostarczane.

  • Tryb Normally Open – Zworki ustawione w pozycji 1-2 (patrz rysunek poniżej). W trybie tym wymagane jest podłączenie zewnętrznego źródła zasilania.

Złącze M12

Urządzenie BoxID może być opcjonalnie wyposażone w złącze M12 (męskie; 4 PIN; standard okablowania D), wbudowane w obudowę modułu. Złącze M12 to standard przemysłowy, który cechuje się wyjątkową odpornością na:

  • wilgoć,
  • kurz,
  • wibracje.

Korzyści z zastosowania złącza M12:

  • Bezpieczeństwo połączeń: Stabilna transmisja danych nawet w trudnych warunkach pracy,
  • Szybkość i solidność: Łatwe i szybkie podłączanie do innych systemów,
  • Standaryzacja: Ułatwia integrację z istniejącą infrastrukturą przemysłową,
  • Elastyczność zastosowań: Pozwala na szeroki zakres adaptacji urządzenia w różnych środowiskach.

Informacja

Zastosowanie złącza M12 w urządzeniu BoxID zwiększa niezawodność oraz elastyczność instalacyjną, czyniąc je idealnym rozwiązaniem dla przemysłu i zaawansowanych systemów komunikacji.

Schemat połączeń

Kanały komunikacji i cechy ogólne

Widok ogólny modułu BoxID LCD

Widok ogólny modułu BoxID LED

Urządzenie BoxID umożliwia komunikację zarówno przez sieć LAN (WLAN), jak i interfejs RS485, oferując szeroki wybór protokołów komunikacyjnych, które pozwalają na zdalne monitorowanie statusu i zarządzanie urządzeniem:

  • Wbudowany serwer WWW, dostępny z poziomu standardowej przeglądarki internetowej,
  • HTTP/HTTPS w trybie serwera,
  • HTTP/HTTPS w trybie klienta,
  • Modbus TCP,
  • Modbus RTU (przez RS485 lub opcjonalnie RS232),
  • MQTT/MQTTS w trybie klienta.
  • E-mail

Informacja

Urządzenie wspiera zaawansowane funkcje bezpieczeństwa, takie jak szyfrowanie SSL, HTTPS, weryfikację certyfikatów oraz możliwość wysyłania wiadomości e-mail.

Wersje urządzenia

Dostępne są dwie wersje BoxID:

  • Model z wyświetlaczem LCD,
  • Model z diodami LED.

Oba modele standardowo sygnalizują stan zasilania oraz odczyt karty, a użytkownik może zarządzać dodatkowymi funkcjami, takimi jak:

  • sygnalizator dźwiękowy,
  • wyświetlacz LCD,
  • diody LED.

Konfiguracja sieciowa

Ostrzeżenie

Przy pierwszym uruchomieniu, konieczne jest skonfigurowanie urządzenia. Można to zrobić na dwa sposoby. Najprostszą metodą jest skorzystanie z programu Inveo Discoverer

Zmiana podstawowych ustawień sieci - program Discoverer

  1. Pobierz i zainstaluj program Discoverer.

  2. Po zainstalowaniu i uruchomieniu aplikacji:

    • Wybierz odpowiedni interfejs sieciowy z listy dostępnych opcji. (Najlepiej skorzystać z opcji broadcast)
    • Kliknij przycisk Discover Devices, aby wyszukać wszystkie urządzenia firmy Inveo dostępne w sieci.
  3. Gdy lista urządzeń zostanie wyświetlona, kliknij prawym przyciskiem myszy na wybrane urządzenie i otwórz okno edycji ustawień sieciowych.

Ostrzeżenie

W przypadku wyłączonej opcji Remote Config (domyślnie włączona) konieczne jest skonfigurowanie urządzenia, poprzez wbudowany serwer WWW. Operacja ta wymaga zmiany podsieci komputera.

Wskazówka

Ustawienie Remote Config można edytować z poziomu serwera WWW w zakładce Administration. Wystarczy zaznaczyć/odznaczyć opcję Enable remote config. Po dokonaniu zmian należy je zatwierdzić przyciskiem Save.

Zmiana podsieci komputera do konfiguracji

Przy konfiguracji urządzenia z pominięciem aplikacji Discoverer należy najpierw zmienić adres podsieci komputera podłączonego do tej samej sieci.

Aby przejść do konfiguracji sieci komputera, wykonaj jedną z poniższych czynności:

  • Naciśnij Win + R, wpisz ncpa.cpl, a następnie naciśnij Enter.
  • Alternatywnie przejdź do:
    Start → Panel Sterowania → Sieć i Internet → Centrum sieci i udostępniania → Zmień ustawienia karty sieciowej.

Następnie:
1. Wybierz połączenie sieciowe.
2. Kliknij je prawym przyciskiem myszy i wybierz Właściwości.
3. Po wybraniu tej opcji pojawi się ekran konfiguracji połączenia sieciowego.

Następnie należy wybrać ustawienie Protokół internetowy w wersji 4 (TCP/IPv4) i wpisać następujące parametry:

Infromacja

Po zaakceptowaniu ustawień przyciskiem OK należy uruchomić przeglądarkę internetową i wpisać adres: 192.168.111.15. (Domyślny użytkownik i hasło: admin/admin).

Konfiguracja ustawień sieci LAN oraz Wi-Fi

W zakładce Administration / Network jest możliwość zmiany parametrów sieci LAN (oraz WLAN – jeśli dostępne).

W przypadku zaznaczenia opcji DHCP, moduł będzie próbował pobrać adres IP, maskę podsieci, bramę sieciową oraz adresy serwerów DNS automatycznie z serwera DHCP. W takiej sytuacji pola IP Address, IP Mask, Gateway, DNS1, DNS2 pozostają nieaktywne.

Jeżeli serwer DHCP nie jest dostępny, urządzenie ustawi własne wartości dla tych parametrów z wyszarzonych pól.

Do konfiguracji sieciowej służą następujące pola:

  • DHCP – Włączenie lub wyłączenie automatycznego pobierania adresu IP,
  • IP – Adres IP modułu (ustawiany ręcznie w przypadku braku DHCP),
  • Netmask – Maska podsieci IP,
  • Gateway – Brama sieciowa,
  • DNS1, DNS2 – Adresy serwerów DNS,
  • Encryption – Sposób szyfrowania,
  • SSID – Nazwa rozgłoszeniowa sieci bezprzewodowej,
  • Password – Hasło do sieci bezprzewodowej.

Wskazówka

Po dokonaniu zmian należy kliknąć przycisk Save.

Sprawdzanie stanu sieci

Informacja

Urządzenie umożliwia kontrolę aktualnych ustawień sieci LAN oraz WLAN. W zakładce Administration / Network należy najechać kursorem na niebieską ikonę "i". Podczas korzystania DHCP ikona informacji będzie pokazywała dane pobrane z serwera DHCP

Sekcja ta zawiera następujące informacje:

  • IP – Aktualny adres IP,
  • Mask – Maska sieci,
  • Gateway – Brama sieci,
  • DNS1, DNS2 – Adresy serwerów DNS,
  • SSID – Nazwa rozgłoszeniowa sieci WLAN, do której urządzenie jest podłączone,
  • RSSI – Moc sygnału Wi-Fi wyrażona w dBm. Wartość -110 oznacza brak sygnału.

Konfiguracja urządzenia

Strona tytułowa urządzenia, dostępna za pośrednictwem przeglądarki internetowej, stanowi główny interfejs użytkownika, zapewniając szybki dostęp do najważniejszych informacji o bieżącym stanie urządzenia. Domyślnie jest ona dostępna pod adresem IP: 192.168.111.15, jednak użytkownik ma możliwość zmiany tego adresu w ustawieniach sieciowych urządzenia.

W górnej części strony znajduje się pasek informacyjny, dostarczający kluczowych danych o urządzeniu, takich jak model, adres IP, unikalna nazwa nadana przez użytkownika, numer wersji oprogramowania i adres MAC.

Status urządzenia

Na stronie tytułowej wyświetlane są szczegółowe informacje, takie jak:

  • Status wejść i wyjść,
  • Parametry operacyjne urządzenia.

Tabela Status:

  • Input #0 – Wyświetla aktualny stan pierwszego wejścia binarnego,
  • Input #1 – Wyświetla aktualny stan drugiego wejścia binarnego,
  • Output #0 – Informuje o bieżącym stanie wyjścia przekaźnikowego nr 0,
  • Output #1 – Informuje o bieżącym stanie wyjścia przekaźnikowego nr 1,
  • Last read UID – Pokazuje identyfikator ostatniego odczytanego tagu RFID w formacie heksadecymalnym (HEX),
  • Number of read UIDs – Wyświetla liczbę tagów RFID, które zostały odczytane od momentu ostatniego restartu urządzenia,
  • Last card action – Ostatnia akcja,
  • Uptime – Czas pracy.

Ostrzeżenie

W zależności od modelu, funkcje mogą się różnić – niektóre z nich dostępne są tylko w wybranych wersjach urządzenia.

Informacja

Dzięki wbudowanemu serwerowi WWW, użytkownik może uzyskać dostęp do strony tytułowej z dowolnego miejsca w sieci lokalnej, co ułatwia zarządzanie i konfigurację urządzenia.

Administration

Zakładka Administration w interfejsie użytkownika urządzenia umożliwia zarządzanie kluczowymi ustawieniami systemowymi. Zakładka podzielona jest podzielona na kilka podzakładek, z których każda oferuje dedykowane funkcje, co ułatwia nawigację i szybki dostęp do poszczególnych opcji. Dzięki temu użytkownik może w prosty i intuicyjny sposób dostosować urządzenie do swoich potrzeb.

Zmiana nazwy oraz hasła

W sekcji Access, znajdującej się w zakładce Administration, użytkownik może:

  • W polu Module Name nadać unikalną nazwę dla urządzenia, co ułatwia identyfikację i zarządzanie wieloma urządzeniami w sieci,
  • Skorzystać z opcji Enable Remote Config, która umożliwia zdalną konfigurację urządzenia.

Użytkownik ma również możliwość zmiany hasła dostępu do urządzenia. W tym celu należy:

  1. W polu Current Password wpisać aktualne hasło,
  2. W polach New Password oraz Re-type Password wprowadzić nowe hasło,
  3. Kliknąć przycisk Save, aby zapisać zmiany.

Ustawienia czasu

W sekcji Time znajdują się opcje konfiguracji daty i godziny. Urządzenie jest wyposażone w zegar czasu rzeczywistego z funkcją podtrzymania bateryjnego, co zapewnia poprawne odmierzanie czasu nawet w przypadku przerwy w dostawie energii elektrycznej.

W tabeli SNTP configuration można określić serwer z którego moduł będzie pobierał aktualną godzinę.

  • SNTP – Włączenie klienta SNTP,
  • Server – Adres IP lub nazwa domenowa serwera SNTP,
  • Poll time – Częstotliwość odpytywania serwera czasu.

Opcja Daylight saving umożliwia automatyczne przełączanie między czasem letnim a zimowym, a opcja Time zone umożliwia wybór strefy czasowej.

Przycisk Update Time synchronizuje czas wewnętrznego zegara urządzenia z aktualnym czasem ustawionym na komputerze.

Diagnostyka, zdarzenia

Moduł oferuje zaawansowane opcje diagnostyczne, które pozwalają na logowanie danych oraz wysyłanie ich na serwer Syslog. Ustawienia dostępne są w zakładce System Events.

Tabela Log Events to flash settings pozwala na skonfigurowanie zdarzeń, które mają być logowane do pamięci flash:

  • Flash logs enable – Włączenie logowania zdarzeń do pamięci flash,
  • Cards event logs – Ustawienie logowania zdarzeń przyłożenia karty – niezależnie od logowania do pamięci kart,
  • IO logs – Ustawienie logowania zmian stanów wejść i wyjść,
  • Log system events – Ustawienie logowania zdarzeń systemowych tj.: włączenie modułu, zmiany ustawień czasu, reset, restart oraz zmiany konfiguracji,
  • Log network events – Ustawienie logowania zdarzeń sieciowych np.: nawiązanie połączenia Wi-Fi.

Informacja

Wszystkie dane można odczytać w zakładce System/Internal logs

Dodawanie licencji

Pole License update w zakładce Update służy do dodania nowej lub aktualizacji obecnej licencji.

I/O Settings

Zakładka I/O Settings umożliwia konfigurację funkcji związanych z wejściami i wyjściami urządzenia. Czytnik wyposażony jest w dwa wyjścia przekaźnikowe oraz dwa wejścia cyfrowe bezpotencjałowe. Użytkownik ma możliwość dostosowania działania przekaźników i konfiguracji wejść zgodnie z potrzebami.

Ustawienia wyjść przekaźnikowych

  • Out mode – Tryb działania wyjścia przekaźnikowego:
    • None – Programowe wyłączenie sterowania przekaźnikiem. Przekaźnik nie jest aktywowany,
    • Off – Trwałe wyłączenie przekaźnika,
    • On – Trwałe włączenie przekaźnika,
    • Toggle – Zmiana stanu przekaźnika na przeciwny (włączenie, jeśli był wyłączony, lub wyłączenie, jeśli był włączony),
    • On period – Włączenie przekaźnika na czas określony w polu Out Time,
    • On long period – Włączenie przekaźnika na czas określony w polu Out Time Long.
  • Out Time – Czas załączenia przekaźnika dla trybu On Period. Użytkownik może wprowadzić wartość w jednostkach 0,1 sekundy, przez co przekaźnik będzie aktywny przez określony czas,
  • Out Time Long – Czas załączenia przekaźnika dla trybu On long period. Użytkownik może wprowadzić wartość w jednostkach 0,1 sekundy, przez co przekaźnik będzie aktywny przez określony czas,
  • Out Invert – Programowa zmiana stanu przekaźnika – domyślnie ustawiony na NO (normalnie otwarty); zaznaczenie opcji Invert zmienia go na NC (normalnie zamknięty).

Ustawienia wejść cyfrowych

  • Input – Określa akcję, która zostanie podjęta w przypadku aktywacji wejścia:
    • None – Brak akcji,
    • Trigger output #0 – Wysterowanie wyjścia przekaźnikowego nr 0,
    • Trigger output #1 – Wysterowanie wyjścia przekaźnikowego nr 1.
  • Input invert – Programowa zmiana domyślnego stanu wejścia,
  • Input filter – Pozwala ustawić czas (w ms), przez który urządzenie ignoruje krótkotrwałe zmiany sygnału wejściowego, traktując je jako zakłócenia. Wartość 0 wyłącza filtrację, co oznacza brak opóźnień.

Wyświetlacz LCD

Dla czytnika w wersji z wyświetlaczem jest dostępna konfiguracja domyślnego tekstu LCD oraz reakcji na przyłożenie karty. Ustawienia tekstu wyświetlacza dla stanu standby, dostępne są w zakładce LCD.

  • LCD Backlight – Czas podświetlenia ekranu (-1 oznacza, że wyświetlacz będzie zawsze podświetlony),
  • Clock – Opcja włączenia zegara w pierwszej linii wyświetlacza,
  • LCD Text – Tekst wyświetlacza dla stanu bezczynności, użytkownik może skorzystać z listy zmiennych po aktywowaniu funkcji Show help.

Zmienne predefiniowane

Użytkownik ma dostęp do zestawu zmiennych predefiniowanych, które mogą być używane w konfiguracji tekstu wyświetlacza i innych funkcji:

Zmienna Opis
%time% Aktualny czas z urządzenia
%date% Aktualna data z urządzenia
%timedate% Aktualna data i czas z urządzenia w formacie RRRR-MM-DD GG:MM:SS
%ts% Aktualny timestamp z urządzenia
%mod_name% Nazwa urządzenia zdefiniowana przez użytkownika
%mod_model% Model urządzenia
%eip% Ethernet – adres IP
%emac% Ethernet – adres MAC
%wip% Wi-Fi – adres IP
%wmac% Wi-Fi – adres MAC
%last_sntp% Timestamp ostatniej aktualizacji czasu z serwera SNTP
%uid% Ostatni odczytany numer UID (po konwersji)
%usr_name1% Pole Name #1 z bazy kart (puste, jeśli brak wpisu)
%usr_name2% Pole Name #2 z bazy kart (puste, jeśli brak wpisu)
%usr_id% Numer ID z bazy kart, wartość -1, jeśli brak wpisu
%userdb_ver% Wersja bazy danych użytkowników
%presence% Obecność karty w polu odczytu
%curid% UID karty obecnej w polu odczytu (po konwersji)
%txt0% Zmienna dynamiczna do zastosowań specjalnych nr 0
%txt1% Zmienna dynamiczna do zastosowań specjalnych nr 1
%txt2% Zmienna dynamiczna do zastosowań specjalnych nr 2
%txt3% Zmienna dynamiczna do zastosowań specjalnych nr 3
%enter_state% Stan przycisków funkcyjnych
%enter_inout% Tekst wyświetlany przy wyborze wejścia/wyjścia
%enter_privwork% Tekst wyświetlany przy wyborze służbowe/prywatne
%btn% Ostatni przyciśnięty przycisk
%json_cardlogs% 24 najstarsze rekordy logu kart
%n_logs% Liczba logów w pamięci czytnika
%ts_on% Timestamp zdarzenia On Card
%ts_hold% Timestamp zdarzenia Card Hold
%ts_remove% Timestamp zdarzenia Card Remove
%ts_last% Timestamp ostatniego przyłożenia karty
%data% Zawartość odczytanego bloku przy załączonej opcji odczytu bloków
%fuid% Fabryczne UID aktualnie zbliżonej karty
%data_valid% Poprawność odczytanych danych – ustawi 0 w sytuacji problemu z odczytem bloku
%in0% Stan wejścia nr 0
%in1% Stan wejścia nr 1
%cnt0% Wartość licznika wejścia nr 0
%cnt1% Wartość licznika wejścia nr 1
%out0% Stan wyjścia nr 0
%out1% Stan wyjścia nr 1

RFID Settings

Zakładka umożliwia użytkownikowi wybór standardu RFID, dostosowanie parametrów odczytu tagów, NFC oraz czytnika zewnętrznego.

Setup – wybór standardu RFID

  • RFID standard – Standard odczytu tagów RFID. Dla wersji HF dostępne są następujące opcje:
    • Mifare
    • ICODE
    • iClass – CSN only
  • Card log – Globalne załączenie/wyłączenie logowania zdarzeń kart,
  • Swap UID – Zamiana bajtów w UID,
  • Action Hold time – Czas (w sekundach) obecności karty w polu odczytu, po którym zostanie wywołana akcja Action hold card,
  • Remove card timeout – Czas (w jednostkach 0,1 sekundy) nieobecności karty w polu odczytu, po którym zostanie wywołana akcja Action remove card

Card data – Tylko dla wersji HF przy wyborze standardu Mifare

  • Card data – Załączenie/wyłączenie opcji zapisywania/odczytu danych karty Mifare,
  • Block – Numer bloku, który ma zostać odczytany,
  • Auth key A/B – Wybór klucza autoryzacyjnego (domyślnie A),
  • Key – Klucz uwierzytelnienia w formacie HEX – klucz zostaje zapisany w bezpiecznej pamięci (tylko do zapisu). Należy wpisywać tylko jeżeli jest wymagana zmiana. Klucz domyślny 6xff (FFFFFFFFFFFF),
  • Allow UID without card data – Nadpisywanie danych karty mimo braku jej wcześniejszego odczytu (przy załączonej funkcji NFC zawsze włączone),
  • Override UID – Nadpisanie identyfikatora karty przez odczytane dane,
  • Override UID offset – Znak, od którego rozpoczyna się odczyt danych,
  • Override UID len – Długość ciągu danych, który ma zostać odczytany.

NFC – Tylko dla wersji HF przy wyborze standardu Mifare

Czytnik ma możliwość przypisania smartfona z zainstalowaną aplikacją Inveo NFC iTag jako kartę RFID, umożliwiając użytkownikom dostęp do np. pomieszczenia bez konieczności posiadania dodatkowych kart lub breloków RFID.

  • Enable NFC – Załączenie funkcji odczytu kart emulowanych przez smartfony,
  • Read mode – Wybór trybu odczytu danych:
    • HEX
    • Plain text

External reader – Konfiguracja czytnika zewnętrznego

W zakładce External reader configuration możesz skonfigurować obsługę zewnętrznego czytnika RFID oraz określić, w jaki sposób urządzenie ma reagować na zdarzenia pochodzące z tego czytnika.

RFID external – Pozwala wybrać typ obsługiwanego zewnętrznego czytnika RFID. Po wybraniu jednej z tych opcji urządzenie może się zrestartować, aby aktywować/wyłączyć obsługę nowego czytnika.

  • Disabled

Wyłącza obsługę zewnętrznego czytnika RFID.

  • Promag
Promag Kolor przewodu BoxID/Clocker
+ zasilania czerwony +5V
Tx zielony A
- zasilania czarny G

  • Inveo IND
Inveo IND BoxID/Clocker
A A
B B
G G

  • Inveo Exter
Exter Kolor przewodu BoxID/Clocker
+ zasilania czerwony +5V
Tx żółty A
Rx biały B
- zasilania brązowy G

Przewód zielony służy do wchodzenia w tryb bootloadera na wypadek zmiany oprogramowania. Przewód ten należy odpowiednio zaizolować i pozostawić niepodłączony.

Log flag

Ta opcja pozwala dodać dodatkową flagę do zdarzenia w logu, gdy karta zostanie odczytana przez zewnętrzny czytnik. Dostępne wartości:

  • No change: Brak dodatkowej flagi – log pozostaje niezmieniony w porównaniu do standardowych wpisów,
  • Enter Work: Dodaje informację, że zdarzenie dotyczy wejścia w "tryb pracy" (np. rozpoczęcie zmiany lub wejście do strefy roboczej),
  • Exit Work: Oznacza wyjście z "trybu pracy" (np. zakończenie zmiany, opuszczenie strefy roboczej),
  • Enter Priv: Oznacza, że użytkownik opuszcza miejsce pracy w celach prywatnych (np. na wizytę u lekarza) – czas ten nie jest wliczany do czasu pracy,
  • Exit Priv: Informuje, że użytkownik kończy okres prywatny i powraca do pracy – czas spędzony w trybie prywatnym nie jest wliczany do czasu pracy.

Wskazówka

Dzięki tym flagom możesz w logach rozróżniać rodzaj zdarzeń (np. wejście do pracy, wyjście z pracy, przerwa prywatna), co ułatwia analizę i raportowanie.

Log

  • On/Off: Włącza lub wyłącza rejestrowanie (logowanie) zdarzeń z zewnętrznego czytnika RFID.

Ostrzeżenie

Aby logi były zapisywane, musi być włączone także globalne logowanie w urządzeniu (usługa card log w zakładce RFID Settings/Setup). Jeśli globalne logowanie jest wyłączone, to nawet aktywacje tej opcji nie spowoduje zapisywania zdarzeń.

IO

  • On/Off: Gdy włączone, urządzenie będzie reagować na zdarzenia z zewnętrznego czytnika tak samo jak na zdarzenia z wbudowanego czytnika – np. za pomocą diod, buzzer’a czy wyświetlacza LCD.

Informacja

Jeśli IO jest wyłączone, urządzenie nie będzie emitować żadnych sygnałów związanych z kartą odczytaną przez czytnik zewnętrzny (ale może nadal rejestrować zdarzenia, jeśli Log jest włączony).

Request

  • On/Off: Gdy włączone, urządzenie będzie wysyłać zapytania (requests) do serwera przy każdym zdarzeniu z karty odczytanej przez czytnik zewnętrzny, podobnie jak w przypadku kart odczytywanych na wbudowanym czytniku. Pozwala to na integrację z systemami zdalnymi (np. kontrola dostępu, rejestracja czasu pracy) w taki sam sposób, jak przy użyciu wbudowanego czytnika RFID.

Card Actions

Sekcja Card Actions pozwala na konfigurację reakcji czytnika na przyłożenie tagu RFID.

On-new

Sekcja Card action on server request pozwala zdefiniować zachowanie czytnika w momencie oczekiwania na odpowiedź z serwera oraz w momencie uzyskania odpowiedzi.

  • HTTP Request – Włączenie usługi On-new card:
    • HTTP Method – Metoda HTTP używana do komunikacji: GET, POST, PUT, DELETE,
    • Content type – Nagłówek określający typ przesyłanych danych (np. text/plain, json, xml, form),
    • HTTP request – Pole wprowadzenia treści żądania HTTP.
  • MQTT – Włączenie usługi MQTT:
    • Publish Topic – Temat (topic), na który zostanie wysłane powiadomienie po odczytaniu karty,
    • MQTT payload – Treść powiadomienia wysyłana do brokera MQTT.
  • Wait for server response – Jeśli opcja jest włączona, czytnik czeka na odpowiedź serwera i wykonuje zwrócone polecenia (sterowanie LED, LCD, sygnalizatorem dźwiękowym oraz I/O). W przeciwnym razie sprawdza bazę kart i wykonuje odpowiednią akcję:
    • Connection fail action – Ustawienie wykonywania akcji known/unknown w sytuacji braku połączenia z serwerem,
    • Action by HTTP status code – Ustawienie wykonywania akcji known/unknown w zależności od kodu odpowiedzi HTTP serwera,
    • LCD Text – Wiadomość, która będzie wyświetlana na wyświetlaczu LCD podczas oczekiwania na odpowiedź serwera,
    • Sound – sygnał dźwiękowy:
      • None – Brak,
      • Accept – Dźwięk akceptacji tagu,
      • Reject – Dźwięk odrzucenia tagu,
      • Tick – Krótki sygnał dźwiękowy.
    • Output #0 – Wysterowanie wyjścia przekaźnikowego nr 0:
      • None – Pomiń,
      • Off – Wyłącz wyjście przekaźnikowe,
      • On – Włącz wyjście przekaźnikowe,
      • Toggle – Zmień stan wyjścia na przeciwny,
      • Period – Włącz wyjście przekaźnikowe na czas Out #0 Time zdefiniowany w zakładce I/O Settings,
      • Long Period – Włącz wyjście przekaźnikowe na czas Out #0 Time Long zdefiniowany w zakładce I/O Settings,
      • User Period – Włącz wyjście przekaźnikowe na czas Output #0 User period.
    • Output #1 – Wysterowanie wyjścia przekaźnikowego nr 1 – Ustawienia analogiczne jak dla wyjścia nr 0,
    • LCD backlight – Podświetlenie wyświetlacza:
      • None – Pomiń,
      • Off – Wyłącz podświetlenie wyświetlacza,
      • On – Włącz podświetlenie wyświetlacza,
      • Toggle – Zmień stan podświetlenia na przeciwny,
      • Period – Włącz podświetlenie na czas LCD Backlight zdefiniowany w zakładce I/O Settings,
      • Long Period – Włącz wyjście przekaźnikowe na czas Out Time Long zdefiniowany w zakładce I/O Settings,
      • Blink – Czasowe mruganie podświetleniem.
    • LCD Text Timeout – Czas wyświetlania tekstu na wyświetlaczu:
      • 0 – Nie wyświetlaj tekstu,
      • -1 – Wyświetlaj tekst ciągle, do momentu kolejnego wywołania komunikatu,
      • inna wartość – Czas wyświetlania komunikatu na wyświetlaczu wyrażony w sekundach.

Wskazówka

Po dokonaniu zmian, należy je zapisać przyciskiem Save

On-known

Zakładka pozwala zdefiniować reakcje czytnika na przyłożenie karty zapisanej w pamięci urządzenia.

  • Log event – Włącza rejestracje zdarzeń przyłożenia karty, gdy akcja przypisana do karty jest znana i została wcześniej zdefiniowana w systemie,
  • LCD text – Wiadomość wyświetlana na wyświetlaczu w momencie rozpoznania karty RFID,
  • Sound – Sygnał dźwiękowy:
    • None – Brak,
    • Accept – Dźwięk akceptacji tagu,
    • Reject – Dźwięk odrzucenia tagu,
    • Tick – Krótki sygnał dźwiękowy.
  • Output #0 – Wysterowanie wyjścia przekaźnikowego nr 0:
    • None – Pomiń,
    • Off – Wyłącz wyjście przekaźnikowe,
    • On – Włącz wyjście przekaźnikowe,
    • Toggle – Zmień stan wyjścia na przeciwny,
    • Period – Włącz wyjście przekaźnikowe na czas Out #0 Time zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out #0 Time Long zdefiniowany w zakładce I/O Settings,
    • User Period – Włącz wyjście przekaźnikowe na czas Output #0 User period.
  • Output #1 – Wysterowanie wyjścia przekaźnikowego nr 1 – Ustawienia analogiczne jak dla wyjścia nr 0,
  • LCD backlight – Podświetlenie wyświetlacza:
    • None – Pomiń,
    • Off – Wyłącz podświetlenie wyświetlacza,
    • On – Włącz podświetlenie wyświetlacza,
    • Toggle – Zmień stan podświetlenia na przeciwny,
    • Period – Włącz podświetlenie na czas Lcd Backlight zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out Time Long zdefiniowany w zakładce I/O Settings,
    • Blink – Czasowe mruganie podświetleniem.
  • LCD Text Timeout – Czas wyświetlania tekstu na wyświetlaczu:
    • 0 – Nie wyświetlaj tekstu,
    • -1 – Wyświetlaj tekst ciągle, do momentu kolejnego wywołania komunikatu,
    • inna wartość – Czas wyświetlania komunikatu na wyświetlaczu wyrażony w sekundach.
  • LED period – Czas świecenia zielonej diody LED (BoxID LED).

On-unknown

Zakładka umożliwia zdefiniowanie reakcji czytnika na przyłożenie karty, która nie została zapisana lub jest dezaktywowana w pamięci urządzenia.

  • Log event – Włącza rejestracje zdarzeń przyłożenia nieznanej karty,
  • LCD text – Wiadomość wyświetlana na wyświetlaczu w momencie nierozpoznania karty RFID,
  • Sound – Sygnał dźwiękowy:
    • None – Brak,
    • Accept – Dźwięk akceptacji tagu,
    • Reject – Dźwięk odrzucenia tagu,
    • Tick – Krótki sygnał dźwiękowy.
  • Output #0 – Wysterowanie wyjścia przekaźnikowego nr 0:
    • None – Pomiń,
    • Off – Wyłącz wyjście przekaźnikowe,
    • On – Włącz wyjście przekaźnikowe,
    • Toggle – Zmień stan wyjścia na przeciwny,
    • Period – Włącz wyjście przekaźnikowe na czas Out #0 Time zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out #0 Time Long zdefiniowany w zakładce I/O Settings,
    • User Period – Włącz wyjście przekaźnikowe na czas Output #0 User period.
  • Output #1 – Wysterowanie wyjścia przekaźnikowego nr 1 – Ustawienia analogiczne jak dla wyjścia nr 0,
  • LCD backlight – Podświetlenie wyświetlacza:
    • None – Pomiń,
    • Off – Wyłącz podświetlenie wyświetlacza,
    • On – Włącz podświetlenie wyświetlacza,
    • Toggle – Zmień stan podświetlenia na przeciwny,
    • Period – Włącz podświetlenie na czas Lcd Backlight zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out Time Long zdefiniowany w zakładce I/O Settings,
    • Blink – Czasowe mruganie podświetleniem.
  • LCD Text Timeout – Czas wyświetlania tekstu na wyświetlaczu:
    • 0 – Nie wyświetlaj tekstu,
    • -1 – Wyświetlaj tekst ciągle, do momentu kolejnego wywołania komunikatu,
    • inna wartość – Czas wyświetlania komunikatu na wyświetlaczu wyrażony w sekundach.
  • LED period – Czas świecenia czerwonej diody LED (BoxID LED).

On-hold

Zakładka umożliwia zdefiniowanie reakcji czytnika na przytrzymanie karty w polu odczytu przez czas określony w parametrze Action Hold time (domyślnie 5 sekund). Czas ten można skonfigurować w sekcji RFID Settings.

  • Log event – Włączenie logowania zdarzenia w przypadku przytrzymania tagu RFID w zasięgu czytnika,
  • LCD text – Wiadomość wyświetlana na wyświetlaczu, jeżeli karta znajdzie się w zasięgu czytnika przez czas zdefiniowany w polu Action Hold time,
  • Sound – Sygnał dźwiękowy:
    • None – Brak,
    • Accept – Dźwięk akceptacji tagu,
    • Reject – Dźwięk odrzucenia tagu,
    • Tick – Krótki sygnał dźwiękowy.
  • Output #0 – Wysterowanie wyjścia przekaźnikowego nr 0:
    • None – Pomiń,
    • Off – Wyłącz wyjście przekaźnikowe,
    • On – Włącz wyjście przekaźnikowe,
    • Toggle – Zmień stan wyjścia na przeciwny,
    • Period – Włącz wyjście przekaźnikowe na czas Out #0 Time zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out #0 Time Long zdefiniowany w zakładce I/O Settings,
    • User Period – Włącz wyjście przekaźnikowe na czas Output #0 User period.
  • Output #1 – Wysterowanie wyjścia przekaźnikowego nr 1 – Ustawienia analogiczne jak dla wyjścia nr 0,
  • LCD backlight – Podświetlenie wyświetlacza:
    • None – Pomiń,
    • Off – Wyłącz podświetlenie wyświetlacza,
    • On – Włącz podświetlenie wyświetlacza,
    • Toggle – Zmień stan podświetlenia na przeciwny,
    • Period – Włącz podświetlenie na czas Lcd Backlight zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out Time Long zdefiniowany w zakładce I/O Settings,
    • Blink – Czasowe mruganie podświetleniem.
  • LCD Text Timeout – Czas wyświetlania tekstu na wyświetlaczu:
    • 0 – Nie wyświetlaj tekstu,
    • -1 – Wyświetlaj tekst ciągle, do momentu kolejnego wywołania komunikatu,
    • inna wartość – Czas wyświetlania komunikatu na wyświetlaczu wyrażony w sekundach.
  • HTTP Request – Załączenie opcji wysyłania żądania HTTP:
    • HTTP Method – Metoda HTTP używana do komunikacji: GET, POST, PUT, DELETE,
    • Content type – Nagłówek określający typ przesyłanych danych (np. text/plain, json, xml, form),
    • HTTP request – Pole wprowadzenia treści żądania HTTP.
  • MQTT – Włączenie usługi MQTT,
    • Publish Topic – Temat (topic), na który zostanie wysłane powiadomienie,
    • MQTT payload – Treść powiadomienia wysyłana do brokera MQTT.

On-remove

Zakładka umożliwia zdefiniowanie reakcji czytnika w momencie usunięcia karty z pola zasięgu odczytu.

  • Log event – Włączenie logowania zdarzenia w przypadku zabrania tagu RFID z zasięgu czytnika.
  • LCD text – Wiadomość wyświetlana na wyświetlaczu, jeżeli karta zostanie zabrana z zasięgu czytnika,
  • Sound – Sygnał dźwiękowy:
    • None – Brak,
    • Accept – Dźwięk akceptacji tagu,
    • Reject – Dźwięk odrzucenia tagu,
    • Tick – Krótki sygnał dźwiękowy.
  • Output #0 – Wysterowanie wyjścia przekaźnikowego nr 0:
    • None – Pomiń,
    • Off – Wyłącz wyjście przekaźnikowe,
    • On – Włącz wyjście przekaźnikowe,
    • Toggle – Zmień stan wyjścia na przeciwny,
    • Period – Włącz wyjście przekaźnikowe na czas Out #0 Time zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz wyjście przekaźnikowe na czas Out #0 Time Long zdefiniowany w zakładce I/O Settings,
    • User Period – Włącz wyjście przekaźnikowe na czas Output #0 User period.
  • Output #1 – Wysterowanie wyjścia przekaźnikowego nr 1 – Ustawienia analogiczne jak dla wyjścia nr 0,
  • LCD backlight – Podświetlenie wyświetlacza:
    • None – Pomiń,
    • Off – Wyłącz podświetlenie wyświetlacza,
    • On – Włącz podświetlenie wyświetlacza,
    • Toggle – Zmień stan podświetlenia na przeciwny,
    • Period – Włącz podświetlenie na czas Lcd Backlight zdefiniowany w zakładce I/O Settings,
    • Long Period – Włącz podświetlenie na czas Out Time Long zdefiniowany w zakładce I/O Settings,
    • Blink – Czasowe mruganie podświetleniem.
  • LCD Text Timeout – Czas wyświetlania tekstu na wyświetlaczu:
    • 0 – Nie wyświetlaj tekstu,
    • -1 – Wyświetlaj tekst ciągle, do momentu kolejnego wywołania komunikatu,
    • inna wartość – Czas wyświetlania komunikatu na wyświetlaczu wyrażony w sekundach.
  • HTTP Request – Załączenie opcji wysyłania żądania HTTP:
    • HTTP Method – Metoda HTTP używana do komunikacji: GET, POST, PUT, DELETE,
    • Content type – Nagłówek określający typ przesyłanych danych (np. text/plain, json, xml, form),
    • HTTP request – Pole wprowadzenia treści żądania HTTP.
  • MQTT – Włączenie usługi MQTT,
    • Publish Topic – Temat (topic), na który zostanie wysłane powiadomienie,
    • MQTT payload – Treść powiadomienia wysyłana do brokera MQTT.

Zarządzanie kartami i zdarzeniami

Card database

Czytnik RFID wyposażony jest w wbudowaną pamięć, która pozwala na zarządzanie kartami RFID. Użytkownik ma możliwość dodawania kart do pamięci czytnika zarówno ręcznie, jak i poprzez wgranie odpowiedniego pliku CSV. Reakcja urządzenia na przyłożenie tagu RFID może zależeć od tego, czy karta znajduje się w pamięci czytnika.

Zakładka Card Database w interfejsie użytkownika umożliwia manualne dodawanie, edytowanie oraz usuwanie tagów RFID do/z pamięci urządzenia.

By dodać nowego użytkownika należy wcisnąć +, a następnie uzupełnić tabelę Card service.

  • Enable card – Aktywacja tagu RFID w pamięci czytnika – wyłączenie tej opcji spowoduje pomijanie tagu w czasie przeszukiwania pamięci,
  • Name #1 – Imię użytkownika,
  • Name #2 – Nazwisko użytkownika,
  • Card UID – Numer UID odczytanego tagu RFID,
  • Get last read UID – Funkcja pobiera ostatnio odczytany tag RFID,
  • Save – Dodanie rekordu do tymczasowej listy tagów RFID.

System umożliwia przypisanie do jednego użytkownika wielu kart RFID. Dzięki temu użytkownik może korzystać z kilku różnych kart zamiast jednej.

Aby dodać dodatkowe karty:

  1. Przejdź do listy użytkowników i znajdź użytkownika, do którego chcesz dodać kolejne karty,
  2. Kliknij ikonę + obok głównej karty (parent),
  3. Wprowadź dane nowej karty i zatwierdź dodanie.

Efekt końcowy:

Wskazówka

Przycisk Save powoduje utworzenie tymczasowej listy tagów RFID, która nie jest natychmiastowo zapisywana w pamięci nieulotnej. W przypadku dodania tagu lub edycji rekordu, na górze strony pojawia się komunikat o konieczności zapisania zmian przyciskiem "Save here!", aby zapisać wszystkie ustawienia w pamięci nieulotnej.

Informacja

Karty są oznaczone kolorami w zależności od ich statusu:
- Ciemnozielony – Karty główne (rodzic),
- Jasnozielony – Karty podrzędne (dziecko),
- Szary – Karty dezaktywowane.

Baza tagów RFID z pliku CSV

Informacja

Na dole strony Card Database znajdują się opcje umożliwiające pobranie aktualnej bazy kart oraz wgranie jej do pamięci czytnika.

Pobieranie i wgrywanie pliku CSV:

  • Link w sekcji Download Card CSV File umożliwia pobranie pliku CSV zawierającego wszystkie tagi RFID aktualnie zapisane w pamięci wewnętrznej czytnika,
  • Aby wgrać bazę kart RFID do urządzenia, należy upewnić się, że struktura pliku CSV jest zgodna z wzorcem (CSV Example File).

Plik tagów RFID (cards.csv):

Pierwszy wiersz zawiera nagłówek (ignorowany w czasie wgrywania pliku):

  • uid – ID tagu RFID,
  • name1 – Pole name1 z bazy kart,
  • name2 – Pole name2 z bazy kart,
  • idx – Indeks kolejności w systemie,
  • parent – Identyfikator karty nadrzędnej (parent) lub wartość -1, jeśli karta jest główną (nie jest powiązana z inną kartą jako podrzędna),
  • flag – Wartość pola active z bazy kart.

Wewnętrzna baza kart RFID po wgraniu powyższego pliku CSV (cards.csv):

Wskazówka

Szary kolor w polu IDx oznacza, że karta jest dezaktywowana

Ostrzeżenie

Limit rozmiaru: Maksymalny rozmiar wgrywanego pliku to 200 kB, co odpowiada około 5000 użytkownikom.

Baza tagów RFID w postaci plików JSON oraz XML

Wewnętrzna baza kart może być pobrana w postaci pliku JSON lub XML. Aby uzyskać dostęp do tych plików, należy odwołać się do poniższych zasobów:

  • data/card.json – W celu pobrania pliku kart w formacie JSON,
  • data/card.xml – W celu pobrania pliku kart w formacie XML.

Plik JSON
{"card":[
{"uid":"23456678",
"name1":"Julia",
"name2":"Smith",
"idx":"1",
"parent":"-1",
"flag":"1"}
,
{"uid":"12345678",
"name1":"Jack",
"name2":"Smith",
"idx":"2",
"parent":"-1",
"flag":"0"}
,
{"uid":"23456678",
"name1":"Andrew",
"name2":"Smith",
"idx":"3",
"parent":"-1",
"flag":"1"}
,
{"uid":"22345678",
"name1":"Saul",
"name2":"Smith",
"idx":"4",
"parent":"-1",
"flag":"0"}
]}
Plik XML
<card>
    <entry>
    <uid>23456678</uid>
    <name1>Julia</name1>
    <name2>Smith</name2>
    <idx>1</idx>
    <parent>-1</parent>
    <flag>1</flag>
    </entry>
    <entry>
    <uid>12345678</uid>
    <name1>Jack</name1>
    <name2>Smith</name2>
    <idx>2</idx>
    <parent>-1</parent>
    <flag>0</flag>
    </entry>
    <entry>
    <uid>23456678</uid>
    <name1>Andrew</name1>
    <name2>Smith</name2>
    <idx>3</idx>
    <parent>-1</parent>
    <flag>1</flag>
    </entry>
    <entry>
    <uid>22345678</uid>
    <name1>Saul</name1>
    <name2>Smith</name2>
    <idx>4</idx>
    <parent>-1</parent>
    <flag>0</flag>
    </entry>
</card>
  • uid – ID tagu RFID,
  • name1 – Pole name1 z bazy kart,
  • name2 – Pole name2 z bazy kart,
  • idx – Unikalne ID użytkownika,
  • flag – Wartość pola "active" z bazy kart.

Logowanie zdarzeń

Urządzenie może rejestrować zdarzenia związane z przyłożeniem, przytrzymaniem lub usunięciem karty z zasięgu odczytu czytnika. Dziennik zdarzeń jest dostępny przez:

  • Stronę www,
  • W formacie CSV,
  • W formacie XML,
  • W formacie JSON.

Wskazówka

Włączenie obsługi logowania zdarzeń jest dostępne w zakładce RFID Settings/Setup.

Rodzaje logowanych zdarzeń:

  • Action Known Card – Zbliżenie karty RFID zapisanej w pamięci czytnika,
  • Action Unknown Card – Zbliżenie karty RFID niezapisanej lub dezaktywowanej w pamięci czytnika,
  • Action Hold Card – Przytrzymanie karty RFID w zasięgu czytnika na minimum Action Hold Time,
  • Action Remove Card – Usunięcie karty RFID poza zasięg czytnika,
  • HTTP/MQTT Communication – Korzystanie i sterowanie przez protokoły komunikacyjne (HTTP, MQTT), opcjonalnie po włączeniu opcji Wait for Server Reply.

Podgląd zdarzeń przez stronę WWW – Zakładka Card Logs

Nr kolumny Opis
1 Liczba porządkowa
2 Data i godzina wystąpienia zarejestrowanego zdarzenia
3 Flaga akcji - znaczenie w zależności od wartości:

1 – odbicie tagu RFID przy sterowaniu przez protokół (HTTP/...).
2 – akcja dla karty zapisanej w pamięci urządzenia.
4 – akcja dla karty nieznanej/nieaktywnej.
8 – akcja dla funkcji hold card.
16 – akcja dla funkcji remove card
4 Wartość mode – zsumowana wartość dec zdarzeń – patrz tabela niżej
5 Numer ID użytkownika w pamięci kart. Wartość „-1” oznacza kartę nieznaną lub nieaktywną
6 UID odczytanego tagu RFID
7 Złączona wartość pól Name oraz Surname z pamięci kart
8 Zsumowana wartość dec flag wejścia:

0d1, 0x1 - ENTER_FLAG_PRIVATE - prywatne,
0d2, 0x1 - ENTER_FLAG_WORK - służbowe,
0d4, 0x4 - ENTER_FLAG_IN - wejście,
0d8, 0x8 - ENTER_FLAG_OUT - wyjście,
0d16, 0x10 - ENTER_FLAG_EXT - przyłożenie karty do zewnętrznego czytnika,
0d32, 0x20 - ENTER_FLAG_KBD - rekord wpisany z klawiatury (Tylko Clocker CL-30)

Wartość mode jest sumą wartości przypisanej do aktualnego stanu wyjścia / wejścia:

Stan wejścia/wyjścia Opis binarnie dec hex
LOG_OUT0 Aktualny stan wyjścia 0 0100 0000 0000 1024 400
LOG_OUT1 Aktualny stan wyjścia 1 1000 0000 0000 2048 800
LOG_IN0 Aktualny stan wejścia 0 01 0000 0000 0000 4096 1000
LOG_IN1 Aktualny stan wejścia 1 10 0000 0000 0000 8192 2000

Informacja

Usunięcie logów jest możliwe poprzez kliknięcie przycisku Remove logs.

Podgląd zdarzeń przez plik CSV, XML lub JSON

Informacja

Logi mogą zostać pobrane w postaci plików CSV, XML lub JSON, których struktura jest nieco bardziej rozbudowana w porównaniu do podglądu na stronie WWW.

Struktura logów dla pliku CSV – dostęp przez zasób http://IP_urządzenia/data/log.csv

timestamp;time;date;action;user_id;uid;name1;name2;enter
1742904651;12:10:51;25.03.2025;2;2;D57E2014;Jan;Kowalski;1024
1742904652;12:10:52;25.03.2025;2;1;31C19E1B;Jane;Smith;1024
1742904654;12:10:54;25.03.2025;2;0;61F3911B;John;Smith;1024
Struktura logów dla pliku XML – dostęp przez zasób http:/IP_urządzenia/data/log/xml
<logs>
    <entry>
        <action>2</action>
        <timestamp>1742904651</timestamp>
        <time>12:10:51</time>
        <date>2025-03-25</date>
        <userId>2</userId>
        <uid>D57E2014</uid>
        <name1>Jan</name1>
        <name2>Kowalski</name2>
        <mode>1024</mode>
    </entry>
    <entry>
        <action>2</action>
        <timestamp>1742904652</timestamp>
        <time>12:10:52</time>
        <date>2025-03-25</date>
        <userId>1</userId>
        <uid>31C19E1B</uid>
        <name1>Jane</name1>
        <name2>Smith</name2>
        <mode>1024</mode>
    </entry>
    <entry>
        <action>2</action>
        <timestamp>1742904654</timestamp>
        <time>12:10:54</time>
        <date>2025-03-25</date>
        <userId>0</userId>
        <uid>61F3911B</uid>
        <name1>John</name1>
        <name2>Smith</name2>
        <mode>1024</mode>
    </entry>
</logs>
Struktura logów dla pliku JSON – dostęp przez zasób http:IP_urządzenia/data/log/json
{
"logs": [
    {
    "action": 2,
    "mode": 1024,
    "ts": 1742904651,
    "time": "12:10:51",
    "date": "2025-03-25",
    "userId": 2,
    "uid": "D57E2014",
    "name1": "Jan",
    "name2": "Kowalski"
    },
    {
    "action": 2,
    "mode": 1024,
    "ts": 1742904652,
    "time": "12:10:52",
    "date": "2025-03-25",
    "userId": 1,
    "uid": "31C19E1B",
    "name1": "Jane",
    "name2": "Smith"
    },
    {
    "action": 2,
    "mode": 1024,
    "ts": 1742904654,
    "time": "12:10:54",
    "date": "2025-03-25",
    "userId": 0,
    "uid": "61F3911B",
    "name1": "John",
    "name2": "Smith"
    }
]
}

Informacja

Usunięcie logów jest możliwe poprzez kliknięcie przycisku Remove logs.

Protokoły komunikacyjne

Urządzenie obsługuje różne protokoły komunikacyjne, które można dostosować do indywidualnych potrzeb. Konfiguracja ustawień jest dostępna na stronie Services.

Web – HTTP/HTTPS Server

Czytnik można skonfigurować jako serwer HTTP lub HTTPS. W tym trybie zewnętrzny klient (np. komputer) łączy się z czytnikiem i zarządza nim za pomocą żądań HTTP/HTTPS (metodą GET).
Klient regularnie pobiera plik status.xml lub status.json, który zawiera informacje o stanie urządzenia, takie jak:

  • UID karty,
  • Adres MAC czytnika,
  • Stan wejść i wyjść.

Po odczytaniu i zdekodowaniu tych danych, klient może przesłać do czytnika komendy, które wywołają odpowiednie reakcje, takie jak:

  • Sygnalizacja dźwiękowa (np. akceptacja/odrzucenie karty),
  • Wyświetlenie tekstu na ekranie,
  • Miganie diod,
  • Zwolnienie blokady drzwi.

  • HTTP port – Ustawienie portu dla serwera HTTP oraz dostępu do strony www urządzenia,
  • HTTPS port – Ustawienie portu dla serwera HTTPS i strony www (wymaga włączenia szyfrowania SSL/TLS),
  • SSL/TLS – Włączenie obsługi szyfrowanego połączenia HTTPS,
  • SSL Key file (pem) – Wskazanie pliku klucza SSL (w formacie pem),
  • Certificate file (pem) – Wskazanie pliku certyfikatu (w formacie pem).

HTTP GET – Status

Aby uzyskać aktualny stan modułu, należy odwołać się do zasobu pod adresem adresIP/data/status.xml lub adresIP/data/status.json.

W odpowiedzi zostanie wyświetlony zasób w formacie XML lub JSON, który zawiera podstawowe informacje o czytniku, takie jak:

Przykładowa odpowiedź w formacie XML
<status>
    <model>BoxID LCD HF</model>
    <name/>
    <mac>00:00:00:00:00:00</mac>
    <id/>
    <newId>0</newId>
    <rfid_enable>1</rfid_enable>
    <cnt>0</cnt>
    <n_logs>3</n_logs>
    <in0>0</in0>
    <in1>0</in1>
    <cnt0>0</cnt0>
    <cnt1>0</cnt1>
    <out0>0</out0>
    <out1>0</out1>
    <custom>0</custom>
    <fw>0.07</fw>
    <userdb_dirty>0</userdb_dirty>
    <time>06:19:38</time>
    <date>25-06-2025</date>
</status>
Przykładowa odpowiedź w formacie JSON
{
"model": "BoxID LCD HF",
"name": "",
"mac": "00:00:00:00:00:00",
"id": "",
"newId": 0,
"rfid_enable": 1,
"cnt": 0,
"n_logs": 3,
"in0": 0,
"in1": 0,
"cnt0": 0,
"cnt1": 0,
"out0": 0,
"out1": 0,
"custom": 0,
"fw": "0.07",
"userdb_dirty": 0,
"time": "06:19:38",
"date": "25-06-2025"
}
Tag Opis
model Model urządzenia
name Nazwa modułu nadana przez użytkownika
mac Adres MAC urządzenia
id ID ostatniego odczytanego tagu RFID
newId Flaga informująca o odczycie nowego tagu – flaga odczytu
rfid_enable Status anteny RFID
cnt Liczba odczytów tagów RFID od ostatniego restartu urządzenia
n_logs Aktualna liczba logów w pamięci urządzenia
in0 Aktualny stan wejścia nr 0
in1 Aktualny stan wejścia nr 1
cnt0 Aktualna wartość licznika dla wejścia nr 0
cnt1 Aktualna wartość licznika dla wejścia nr 1
out0 Aktualny stan wyjścia przekaźnikowego nr 0
out1 Aktualny stan wyjścia przekaźnikowego nr 1
custom Oznaczenie wersji specjalnej urządzenia
fw Wersja oprogramowania urządzenia
userdb_dirty Flaga informująca o obecności rekordów użytkowników w pamięci RAM, ale ich braku w pamięci nieulotnej
time Aktualna godzina w urządzeniu
date Aktualna data w urządzeniu

HTTP GET – Sterowanie

Wskazówki

1. Wszystkie komendy HTTP GET mają odwzorowanie w znacznikach XML/JSON dla usługi HTTP Client.
2. Kolejne komendy w http GET należy rozdzielać znakiem &.

Ostrzeżenie

Należy zwrócić szczególną uwagę na poprawną kolejność wysyłania komend. Przykładowo: wysłanie komendy lcd_text[0-3], a następnie lcd_clr spowoduje wyczyszczenie wyświetlacza, a w konsekwencji niewyświetlenie tekstu zdefiniowanego w lcd_text[0-3]. Prawidłowa kolejność: lcd_clr, następnie lcd_text[0-3].

Wszystkie komendy dotyczące IO zaczynają się od /io?.

Komenda Wartość Opis
out_run INTEGER Załączenie wyjścia wg zdefiniowanych parametrów domyślnych
out_on INTEGER Załączenie wyjścia. np. "out_on":1 aktywuje wyjście nr 1
out_off INTEGER Wyłączenie wyjścia
lcd_clr INTEGER Czyszczenie LCD
lcd_text0 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 1.
Jeżeli w ramce nie zdefiniowano lcd_text_timeout, to ustawienie ustawi je na 5s. Przykład: "lcd_text0":"test" wyświetli test w pierwszej linijce wyświetlacza
lcd_text1 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 2
lcd_text2 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 3
lcd_text3 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 4
lcd_text_timeout INTEGER Wyświetlanie tekstu przez zdefiniowany czas
lcd_wrap STRING Przepisanie tekstu na LCD z zawijaniem
lcd_nowrap STRING Przepisanie tekstu na LCD bez zawijania
lcd_word STRING Przepisanie tekstu na LCD z zawijaniem, dzielone na całe wyrazy
lcd_clock 0 | 1 Wyświetl lub ukryj zegar, nie nadpisuje ustawienia na stronie
txt0 STRING W BoxID/Clocker: Zmienna wewnętrzna do zastosowań specjalistycznych
txt1 STRING j.w.
txt2 STRING j.w.
txt3 STRING j.w.
buzz INTEGER Emisja dźwięku: 1 – accept, 2 – reject, 3 - krótki sygnał
np. "buzz":2 odtworzy dźwięk odrzucenia karty
ledr STRING Czerwona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledr":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
ledg STRING Zielona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledg":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
bl INTEGER Sterowanie podświetleniem LCD – analogicznie jak dla diod LED.
np. "bl":5,5,5 załączy podświetlenie na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie
userdb_ver STRING Umożliwia odczytanie wersji bazy kart przechowywanej w pamięci RAM (gdy baza jest wysyłana do czytnika przez HTTP Client). Jeśli baza kart jest aktualizowana dynamicznie lub uzależniona od pewnych warunków, ta komenda pozwala monitorować jej wersję i sprawdzić, czy zaszły zmiany
userdb_store INTEGER Przepisanie kart z RAM do FLASH. (1)

Operację tę należy wykonywać dopiero po zakończeniu wszystkich modyfikacji użytkownika i jak najrzadziej. Należy pamiętać, że gwarantowana liczba zapisów do pamięci wynosi 10 000 cykli
cardlog_remove_n INTEGER Usunięcie x ostatnich logów kart
cardlog_remove_all 0 | 1 Usunięcie wszystkich logów kart
enter_state INTEGER Ustawienie trybu wejścia-wyjścia.
FLAG_PRIVATE (0x01): Włącza tryb prywatny, co oznacza, że zdarzenie jest traktowane jako prywatne (np. wyjście na wizytę lekarską, nie liczone do czasu pracy).
FLAG_WORK (0x02): Ustawia tryb służbowy, wskazując, że zdarzenie dotyczy aktywności zawodowej.
FLAG_IN (0x04): Określa tryb wejścia – rejestruje moment wejścia.
FLAG_OUT (0x08): Określa tryb wyjścia – rejestruje moment wyjścia.

Przykład zastosowania: Ustawienie "wejścia prywatnego" ma wartość 5, co wynika z połączenia FLAG_PRIVATE (0x01) oraz FLAG_IN (0x04). (tylko BoxID)
rfid_en INTEGER Załączenie (1) lub wyłączenie (0) czytania kart

Przykład

Miganie czerwonej diody LED 10 razy 1s/1s, wyświetlenie w 3 linijce wyświetlacza LCD tekstu demo: http://adres_ip/io?ledr=1,1,10&lcd_text2=demo

HTTP GET – Obsługa bazy kart RFID

Wskazówka

Czytnik po restarcie zasilania przepisuje karty z pamięci FLASH do RAM.

Ostrzeżenie

Po zakończeniu edycji wszystkich kart należy zapisać dane do pamięci flash. Zapis do pamięci flash powinien być wykonywany jak najrzadziej.

Wszystkie komendy dotyczące DB zaczynają się od /db?

Komenda Wartość Opis
add uid;name1;name2;idx;parent;flag Dodanie wpisu karty w formacie CSV. Dane muszą być URL encoded.
- Jeśli idx=-1, zostanie wyszukana pusta lokalizacja.
- Jeśli idx≠-1, zostanie nadpisana istniejąca lokalizacja wskazana przez idx.
- parent wskazuje na istniejący wpis, tworząc powiązanie; jeśli nie używany, należy ustawić na -1
- flag=1 oznacza, że karta jest aktywna
store 1 Zapis kart z pamięci RAM do flash
remove_all 1 Usunięcie wszystkich kart z RAM
remove idx Usunięcie wskazanej karty z RAM
reload 1 Inicjalizacja RAM kartami z flash
get_by_uid uid Zwraca indeks karty o wskazanym uid.
Jeśli karta nie istnieje, zwraca -1

Przykład

Dodanie na pozycję 10 rekordu aktywnej karty Jan Kowalski, UID 1234567890, bez Parent: http://adres_ip/db?add=1234567890;Jan;Kowalskii;10;-1;1

HTTP Client

W trybie HTTP Client moduł działa podobnie do przeglądarki internetowej. Oznacza to, że inicjuje połączenie z serwerem, wysyłając żądania i oczekując odpowiedzi.

Główne cechy trybu:

  • Automatyczne wysyłanie danych: Po odczytaniu tagu RFID moduł automatycznie łączy się z serwerem i przesyła informacje o odczytanym tagu,
  • Odbieranie komend z serwera: Serwer może przesyłać polecenia sterujące modułem, takie jak włączanie diod LED, generowanie sygnałów dźwiękowych czy wyświetlanie tekstu na ekranie LCD,
  • Łatwa integracja: Tryb umożliwia prostą integrację z różnymi technologiami serwerowymi, takimi jak PHP, Node.js czy MySQL.

Zalety:

  • Natychmiastowa komunikacja: Moduł automatycznie inicjuje połączenie po odczytaniu karty, umożliwiając szybkie przesyłanie danych do serwera,
  • Elastyczne sterowanie: Serwer może sterować różnymi elementami modułu w odpowiedzi na przesłane komendy.

Konfiguracja HTTP Client

  • HTTP Client – Załączenie usługi HTTP Client,
  • Server – Adres IP serwera, z którym moduł nawiązuje połączenie,
  • HTTP port – Port, na którym serwer nasłuchuje (domyślnie 80 dla HTTP lub 443 dla HTTPS),
  • Connection timeout – Czas (w ms) oczekiwania na odpowiedź serwera,
  • HTTP Method – Metoda HTTP używana do komunikacji: GET, POST, PUT, DELETE,
  • Content type – Nagłówek określający typ przesyłanych danych (np. text/plain, json, xml, form),
  • Resource – Ścieżka do zasobu na serwerze, z którym komunikuje się moduł,
  • User – Nazwa użytkownika (w przypadku uwierzytelniania serwera),
  • Password – Hasło użytkownika (w przypadku uwierzytelniania serwera),
  • HTTP ping request interval – Częstotliwość odpytywania serwera (0 - wyłączone),
  • HTTP ping request – Składnia żądania odpytywania serwera (poll request).

  • Enable HTTP card logs – Załączenie funkcji wysyłania logów kart do serwera. Jeżeli log jest pusty, nie będzie on wysyłany do serwera,
  • HTTP card logs interval – Częstotliwość wysyłania logów (w minutach),
  • HTTP card log request – Składnia żądania. Zmienna logów kart musi być zawarta w żądaniu wysyłanym do serwera.

Informacja

W sekcji SSL Client Certificate można przesłać wszystkie niezbędne pliki certyfikatów wymagane do ustanowienia szyfrowanego połączenia.

  • SSL/TLS – Włączenie szyfrowania połączenia za pomocą protokołów SSL/TLS,
  • SSL certificate mode – Tryb obsługi certyfikatów:
    • Use Certificate Bundle – Użycie wbudowanego zestawu certyfikatów,
    • Use Uploaded Certificate – Użycie przesłanego zestawu certyfikatów,
    • Disable SSL verification – Wyłączenie weryfikacji SSL.
  • Skip cert CN check – Pominięcie sprawdzania zgodności pola CN (Common Name) w certyfikacie serwera,
  • Use Client certificate – Włączenie użycia certyfikatu klienta w celu uwierzytelniania po stronie serwera,
  • Client key password – Hasło zabezpieczające klucz klienta.

HTTP Client – Poll request

Czytnik może okresowo wysyłać do serwera żądania typu poll w celu sprawdzenia statusu lub utrzymania połączenia. Treść takiego żądania definiuje się w polu HTTP Ping Request na stronie Services / HTTP Client.
Żądanie może zawierać zarówno statyczny tekst, jak i zmienne predefiniowane, co pozwala na dynamiczne dostosowanie jego treści.

Przykład: Wysyłanie żądania "poll" do zasobu /resource co 6 sekund:

  • GET request z wykorzystaniem zmiennych predefiniowanych

ip=%eip%&name=%mod_name%&in1=%in1%

Dane odebrane po stronie serwera:

GET /resource?ip=192.168.0.176&name=T&in1=1 HTTP/1.1
User-Agent: BoxID
Host: 192.168.0.90
Content-Length: 0

Informacja

Serwer może odesłać dane w postaci pliku JSON (XML):

HTTP/1.1 200 OK
Content-Length: 33
Content-Type: application/json
{"lcd_text1":"Place an RFID tag"}
  • POST request z wykorzystaniem zmiennych predefiniowanych:
ip=%eip%
name=%mod_name%
in1=%in1%

Dane odebrane po stronie serwera:

OST / HTTP/1.1
User-Agent: BoxID
Host: 192.168.0.90
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
ip=192.168.0.176
name=T
in1=0

Informacja

Serwer może odesłać dane w postaci pliku JSON (XML):

HTTP/1.1 200 OK
Content-Length: 14
Content-Type: application/xml
<buzz>3</buzz>

HTTP Client – Żądanie zdarzenia Card Action

Przyłożenie tagu RFID do czytnika może wywołać wysłanie żądania HTTP na skonfigurowany serwer.

Strona Card Actions umożliwia konfigurację trzech wyzwalaczy wysyłania żądań HTTP:

  • On-new – Wysyłanie żądania po każdorazowym przyłożeniu karty RFID do czytnika,
  • On-hold – Wysyłanie żądania, jeśli karta znajduje się w polu czytnika przez co najmniej 5 sekund (domyślnie czas oczekiwania hold time wynosi 5 sekund),
  • On-remove – Wysyłanie żądania w momencie oddalenia tagu RFID od czytnika.

Informacja

Każdy z powyższych scenariuszy działa niezależnie, co pozwala użytkownikowi wybrać, które zdarzenia mają wyzwalać wysyłanie żądań HTTP. Dodatkowo użytkownik może indywidualnie skonfigurować treść żądania, jego typ oraz metodę dla każdego wyzwalacza.

Użytkownik konfiguruje treść żądania, jego typ oraz metodę dla każdego wyzwalacza oddzielnie.

Parametry konfiguracji żądań HTTP:

  • HTTP Request – Włączenie usługi HTTP Request,
  • HTTP method – Metoda HTTP używana do komunikacji: GET, POST, PUT, DELETE,
  • Content type – Typ nagłówka (np. text/plain, json, xml, form),
  • HTTP request – Treść żądania HTTP. Użytkownik definiuje pełną treść żądania, dostosowując je do wymagań serwera (np. dynamiczne dane, zmienne predefiniowane).

Przykład 1

Dla danych z zrzutu ekranu i wyzwalacza On new card action:

  • HTTP Client request

mac=%emac%&ip=%eip%&id=%uid%

Po przyłożeniu karty dane odebrane po stronie serwera będą wyglądały następująco:

GET /?mac=00:00:00:00:00:00&ip=192.168.0.176&id=12005CB99F HTTP/1.1
User-Agent: BoxID
Host: 192.168.0.90
Content-Type: text/plain
Content-Length: 0

Serwer może odesłać dane w postaci pliku JSON (XML):

HTTP/1.1 200 OK
Content-Length: 41
Content-Type: application/json
{
"lcd_text1":"Welcome!",
"buzz":"3"
}

HTTP Client – Sterowanie

Wskazówki

1. Sterowanie modułem w trybie HTTP Client jest możliwe po włączeniu usługi HTTP Client w zakładce Services. 2. Wszystkie komendy HTTP GET mają odwzorowanie w znacznikach XML/JSON dla usługi HTTP Client.

Ostrzeżenie

Należy zwrócić szczególną uwagę na poprawną kolejność wysyłania komend. Przykładowo: wysłanie komendy lcd_text[0-3], a następnie lcd_clr spowoduje wyczyszczenie wyświetlacza, a w konsekwencji niewyświetlenie tekstu zdefiniowanego w lcd_text[0-3]. Prawidłowa kolejność: lcd_clr, następnie lcd_text[0-3].

Komenda Wartość Opis
out_run INTEGER Załączenie wyjścia wg zdefiniowanych parametrów domyślnych
out_on INTEGER Załączenie wyjścia. np. "out_on":1 aktywuje wyjście nr 1
out_off INTEGER Wyłączenie wyjścia
lcd_clr INTEGER Czyszczenie LCD
lcd_text0 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 1.
Jeżeli w ramce nie zdefiniowano lcd_text_timeout, to ustawienie ustawi je na 5s. Przykład: "lcd_text0":"test" wyświetli test w pierwszej linijce wyświetlacza
lcd_text1 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 2
lcd_text2 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 3
lcd_text3 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 4
lcd_text_timeout INTEGER Wyświetlanie tekstu przez zdefiniowany czas
lcd_wrap STRING Przepisanie tekstu na LCD z zawijaniem
lcd_nowrap STRING Przepisanie tekstu na LCD bez zawijania
lcd_word STRING Przepisanie tekstu na LCD z zawijaniem, dzielone na całe wyrazy
lcd_clock 0 | 1 Wyświetl lub ukryj zegar, nie nadpisuje ustawienia na stronie
txt0 STRING W BoxID/Clocker: Zmienna wewnętrzna do zastosowań specjalistycznych
txt1 STRING j.w.
txt2 STRING j.w.
txt3 STRING j.w.
buzz INTEGER Emisja dźwięku: 1 – accept, 2 – reject, 3 - krótki sygnał
np. "buzz":2 odtworzy dźwięk odrzucenia karty
ledr STRING Czerwona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledr":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
ledg STRING Zielona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledg":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
bl INTEGER Sterowanie podświetleniem LCD – analogicznie jak dla diod LED.
np. "bl":5,5,5 załączy podświetlenie na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie
addUser [{
uid: STRING,
name1: STRING
name2: STRING
idx: INTEGER
flag: INTEGER
parent: INTEGER
},
...
]
Dodanie wpisu karty do pamięci RAM w formacie JSON.
- Jeżeli idx=-1, zostanie wyszukana pusta lokalizacja.
- Jeśli idx≠-1, zostanie nadpisana istniejąca lokalizacja wskazana przez idx.
flag=1 oznacza, że karta jest aktywna.
parent tworzy powiązanie z kartą o podanym idx, -1 jeśli nie używany (domyślnie).
Zmienne idx, flag oraz parent nie są wymagane, należy wysyłać je tylko przy zmianie parametrów
renewUser [{
uid: STRING,
name1: STRING
name2: STRING
idx: INTEGER
flag: INTEGER
parent: INTEGER
},
...
]
Nadpisanie całej bazy kart do pamięci RAM w formacie JSON.
- Jeżeli idx=-1, rekord zostanie dodany do pierwszej wolnej pozycji w pamięci.
- Jeśli idx≠-1, karta zostanie dodana do pozycji określonej w idx.
flag=1 oznacza, że karta jest aktywna.
parent tworzy powiązanie z kartą o podanym idx, -1 jeśli nie używany (domyślnie).
Zmienne idx, flag oraz parent nie są wymagane, należy wysyłać je tylko przy zmianie parametrów
userdb_ver STRING Umożliwia odczytanie wersji bazy kart przechowywanej w pamięci RAM (gdy baza jest wysyłana do czytnika przez HTTP Client). Jeśli baza kart jest aktualizowana dynamicznie lub uzależniona od pewnych warunków, ta komenda pozwala monitorować jej wersję i sprawdzić, czy zaszły zmiany
userdb_store INTEGER Przepisanie kart z RAM do FLASH. (1)

Operację tę należy wykonywać dopiero po zakończeniu wszystkich modyfikacji użytkownika i jak najrzadziej. Należy pamiętać, że gwarantowana liczba zapisów do pamięci wynosi 10 000 cykli
cardlog_remove_n INTEGER Usunięcie x ostatnich logów kart
cardlog_remove_all 0 | 1 Usunięcie wszystkich logów kart
enter_state INTEGER Ustawienie trybu wejścia-wyjścia.
FLAG_PRIVATE (0x01): Włącza tryb prywatny, co oznacza, że zdarzenie jest traktowane jako prywatne (np. wyjście na wizytę lekarską, nie liczone do czasu pracy).
FLAG_WORK (0x02): Ustawia tryb służbowy, wskazując, że zdarzenie dotyczy aktywności zawodowej.
FLAG_IN (0x04): Określa tryb wejścia – rejestruje moment wejścia.
FLAG_OUT (0x08): Określa tryb wyjścia – rejestruje moment wyjścia.

Przykład zastosowania: Ustawienie "wejścia prywatnego" ma wartość 5, co wynika z połączenia FLAG_PRIVATE (0x01) oraz FLAG_IN (0x04). (tylko BoxID)
rfid_en INTEGER Załączenie (1) lub wyłączenie (0) czytania kart

Przykład odpowiedzi na nadpisanie bazy użytkowników

{
userdb_ver: 'test',
renewUser: [
    {
    uid: '12345678',
    name1: 'John',
    name2: 'Smith',
    idx: -1,
    flag: 1,
    parent: -1
    },
    {
    uid: 'ABCDEF01',
    name1: 'Jan',
    name2: 'Kowalski',
    idx: -1,
    flag: 1,
    parent: -1
    }
]
}
Powyższa odpowiedź spowoduje nadpisanie kart w pamięci RAM. Aby zapisać dane do pamięci nieulotnej, skorzystaj z tagu userdb_store:1.

Przykład obsługi serwera php

<?php
if( $_GET["id"] ) // receive id and MAC - $_GET["mac"]
{
$who=$_GET["id"];
// check id in DB and do some action
echo "<root>";
echo "<buzz>1</buzz>"; // sound signal
echo "<text>Card ID: $who</text>" // message ID on LCD
echo "<open1>1</open1>"; // door open
echo "</root>";
}
else // no id – poll request
{
echo "<text> Place an RFID tag</text>"; //standby text
}

MQTT Client

Urządzenie obsługuje protokół MQTT, który pozwala na wymianę danych w architekturze publikacji/subskrypcji. Ustawienia można skonfigurować w zakładce Services, w sekcji MQTT Client.

  • MQTT Client – Włączenie usługi MQTT,
  • Broker – Adres IP lub domena brokera MQTT,
  • Port – Port, na którym nasłuchuje serwer MQTT (domyślnie: 1883),
  • QoS – Poziom jakości usługi (Quality of Service), obsługiwany przez urządzenie:
    • QoS 0 – At most once (co najwyżej raz),
    • QoS 1 – At least once (co najmniej raz),
    • QoS 2 – Exactly once (dokładnie raz).
  • Subscribe Topic – Topic (temat), z którego urządzenie odbiera dane,
  • Client ID – Identyfikator klienta MQTT,
  • User – Nazwa użytkownika (w przypadku wymaganej autoryzacji),
  • Password – Hasło użytkownika (w przypadku wymaganej autoryzacji),
  • Publish Topic – Topic (temat), na który urządzenie wysyła dane,
  • MQTT ping payload interval – Odstęp między kolejnymi żądaniami ping,
  • MQTT ping payload – Składnia żądania ping,
  • Send test message – Przycisk wysyłania wiadomości testowej. Na topic "validation" zostanie wysłana wiadomość z zawartością "1".

Sekcja MQTT Last Will and Testament (LWT) służy do konfiguracji mechanizmu powiadamiania brokerów MQTT o nieoczekiwanym rozłączeniu urządzenia.

  • LWT – Włącza lub wyłącza funkcję Last Will and Testament. Gdy opcja jest aktywna, broker MQTT otrzyma ustawioną wcześniej wiadomość w przypadku utraty połączenia przez urządzenie,
  • QoS (Quality of Service) – Określa poziom jakości usług dla wiadomości LWT:
    • QoS 0 – Wiadomość jest wysyłana raz, bez potwierdzenia dostarczenia,
    • QoS 1 – Wiadomość jest wysyłana do skutku, dopóki broker nie potwierdzi odbioru,
    • QoS 2 – Wiadomość jest wysyłana i potwierdzana w sposób gwarantujący jednokrotne dostarczenie.
  • LWT retain – Jeśli włączone, wiadomość LWT zostanie zapisana na brokerze i będzie dostępna dla nowych subskrybentów tematu,
  • LWT Topic – Definiuje temat MQTT, w którym zostanie opublikowana wiadomość LWT,
  • Przykładowo: /device/MAC_address/lwt.
  • LWT Message – Treść wiadomości, którą broker opublikuje, gdy urządzenie nieoczekiwanie utraci połączenie,
  • Może to być np. offline lub inny komunikat określający status urządzenia.

Publish topic

Po skonfigurowaniu protokołu MQTT należy określić wyzwalacze, które będą powodować wysyłanie danych na zdefiniowany temat (Publish Topic). Podobnie jak w przypadku protokołu HTTP Client, dostępne są trzy wyzwalacze:

  • On-new – Wysyłanie wiadomości MQTT po każdorazowym przyłożeniu karty RFID do czytnika,
  • On-hold – Wysyłanie wiadomości MQTT, jeśli karta pozostaje w polu czytnika przez co najmniej 5 sekund (domyślny czas hold time),
  • On-remove – Wysyłanie wiadomości MQTT w momencie oddalenia tagu RFID od czytnika.

Każdy z wyzwalaczy działa niezależnie, co pozwala na dostosowanie ich działania do własnych potrzeb. Użytkownik może wybrać, które zdarzenia mają wywoływać wysyłanie wiadomości MQTT.

Dla treści publish topic:

uid=%uid%&name1=%usr_name1%&name2=%usr_name2%

Dane widoczne po stronie serwera:

uid=87878A4C&name1=John&name2=Smith

Subscribe topic

Urządzenie może być sterowane za pomocą protokołu MQTT. Aby to umożliwić, należy skonfigurować temat subskrypcji (Subscribe Topic), z którego urządzenie będzie odbierać komendy sterujące. W tym celu należy wprowadzić odpowiednie ustawienia brokera MQTT na stronie Services / MQTT Client oraz zdefiniować Subscribe Topic.

Ostrzeżenie

Należy zwrócić szczególną uwagę na poprawną kolejność wysyłania komend. Przykładowo: wysłanie komendy lcd_text[0-3], a następnie lcd_clr spowoduje wyczyszczenie wyświetlacza, a w konsekwencji niewyświetlenie tekstu zdefiniowanego w lcd_text[0-3]. Prawidłowa kolejność: lcd_clr, następnie lcd_text[0-3].

Komenda Wartość Opis
out_run INTEGER Załączenie wyjścia wg zdefiniowanych parametrów domyślnych
out_on INTEGER Załączenie wyjścia. np. "out_on":1 aktywuje wyjście nr 1
out_off INTEGER Wyłączenie wyjścia
lcd_clr INTEGER Czyszczenie LCD
lcd_text0 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 1.
Jeżeli w ramce nie zdefiniowano lcd_text_timeout, to ustawienie ustawi je na 5s. Przykład: "lcd_text0":"test" wyświetli test w pierwszej linijce wyświetlacza
lcd_text1 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 2
lcd_text2 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 3
lcd_text3 STRING Przepisanie jednej linijki tekstu na LCD. Linia nr 4
lcd_text_timeout INTEGER Wyświetlanie tekstu przez zdefiniowany czas
lcd_wrap STRING Przepisanie tekstu na LCD z zawijaniem
lcd_nowrap STRING Przepisanie tekstu na LCD bez zawijania
lcd_word STRING Przepisanie tekstu na LCD z zawijaniem, dzielone na całe wyrazy
lcd_clock 0 | 1 Wyświetl lub ukryj zegar, nie nadpisuje ustawienia na stronie
txt0 STRING W BoxID/Clocker: Zmienna wewnętrzna do zastosowań specjalistycznych
txt1 STRING j.w.
txt2 STRING j.w.
txt3 STRING j.w.
buzz INTEGER Emisja dźwięku: 1 – accept, 2 – reject, 3 - krótki sygnał
np. "buzz":2 odtworzy dźwięk odrzucenia karty
ledr STRING Czerwona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledr":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
ledg STRING Zielona dioda LED: on - włącz, off - wyłącz, int, int, int - TimeOn*0,1s, TimeOff*0,1s, CNT=-1 - powtarzanie bez końca
np. "ledg":5,5,5 załączy diodę na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie. (tylko BoxID LED)
bl INTEGER Sterowanie podświetleniem LCD – analogicznie jak dla diod LED.
np. "bl":5,5,5 załączy podświetlenie na 0,5s, wyłączy na 0,5s i powtórzy całą sekwencję pięciokrotnie
userdb_ver STRING Umożliwia odczytanie wersji bazy kart przechowywanej w pamięci RAM (gdy baza jest wysyłana do czytnika przez HTTP Client). Jeśli baza kart jest aktualizowana dynamicznie lub uzależniona od pewnych warunków, ta komenda pozwala monitorować jej wersję i sprawdzić, czy zaszły zmiany
userdb_store INTEGER Przepisanie kart z RAM do FLASH. (1)

Operację tę należy wykonywać dopiero po zakończeniu wszystkich modyfikacji użytkownika i jak najrzadziej. Należy pamiętać, że gwarantowana liczba zapisów do pamięci wynosi 10 000 cykli
cardlog_remove_n INTEGER Usunięcie x ostatnich logów kart
cardlog_remove_all 0 | 1 Usunięcie wszystkich logów kart (1)
enter_state INTEGER Ustawienie trybu wejścia-wyjścia.
FLAG_PRIVATE (0x01): Włącza tryb prywatny, co oznacza, że zdarzenie jest traktowane jako prywatne (np. wyjście na wizytę lekarską, nie liczone do czasu pracy).
FLAG_WORK (0x02): Ustawia tryb służbowy, wskazując, że zdarzenie dotyczy aktywności zawodowej.
FLAG_IN (0x04): Określa tryb wejścia – rejestruje moment wejścia.
FLAG_OUT (0x08): Określa tryb wyjścia – rejestruje moment wyjścia.

Przykład zastosowania: Ustawienie "wejścia prywatnego" ma wartość 5, co wynika z połączenia FLAG_PRIVATE (0x01) oraz FLAG_IN (0x04). (tylko BoxID)
rfid_en INTEGER Załączenie (1) lub wyłączenie (0) czytania kart

Przykładowa konfiguracja:

Informacja

Urządzenie wysyła dane na temat: reader/prod2/sec1, Odbiera wiadomości z tematu: reader/prod2/sec1/c.

Wskazówka

Urządzenie obsługuje wszystkie komendy dostępne w protokole HTTP. Komendy są rozdzielane znakiem &.

Przykładowa wiadomość wysłana na temat reader/prod2/sec1/c:

lcd_text1= Place an RFID tag&buzz=3

Urządzenie wyświetli komunikat Place an RFID tag w drugiej linii ekranu LCD oraz wyemituje krótki sygnał dźwiękowy (beep). Możliwe jest użycie tego samego tematu dla publikacji i subskrypcji, co pozwala na natychmiastowe sterowanie urządzeniem w momencie wysłania danych na Publish Topic.

Takie rozwiązanie umożliwia sterowanie urządzeniem bezpośrednio po wyzwoleniu wysyłania danych na Publish Topic.

  • SSL/TLS – Włączenie szyfrowania połączeń z wykorzystaniem protokołów SSL/TLS,
  • SSL certificate mode – Tryb obsługi certyfikatów:
    • Use Certificate Bundle – Użycie wbudowanego zestawu certyfikatów,
    • Use Uploaded Certificate – Użycie przesłanego zestawu certyfikatów,
    • Disable SSL verification – Wyłączenie weryfikacji SSL.
  • Skip cert CN check – Pominięcie weryfikacji pola Common Name (CN) w certyfikacie. Przydatne w środowiskach testowych lub niestandardowych,
  • Use Client certificate – Włączenie korzystania z certyfikatu klienta w celu autoryzacji po stronie serwera,
  • Client key password – Hasło do klucza klienta (jeśli wymagane).

  • LWT – Włączenie funkcji Last Will and Testament, pozwalającej urządzeniu poinformować brokera MQTT o swoim stanie w przypadku utraty połączenia,
  • QoS – Poziom Quality of Service dla wiadomości LWT:
    • QoS 0 – Co najwyżej raz, brak gwarancji dostarczenia,
    • QoS 1 – Co najmniej raz, wiadomość może zostać dostarczona wielokrotnie,
    • QoS 2 – Dokładnie raz, najbezpieczniejszy poziom, ale bardziej obciążający.
  • LWT retain – Ustawienie opcji retain dla wiadomości LWT (przechowanie ostatniego stanu dla nowych subskrybentów),
  • LWT Topic – Topic (temat), na który urządzenie wysyła wiadomość LWT. Na przykład: /device/MAC_address/lwt,
  • LWT Message – Treść wiadomości wysyłanej jako LWT, np. Device offline.

  • SSL server root certificate – Mżliwość wgrania certyfikatu root serwera w celu weryfikacji połączeń szyfrowanych,
  • Client certificate – Wgranie certyfikatu klienta, wykorzystywanego do autoryzacji urządzenia wobec brokera MQTT,
  • Client key – Możliwość wgrania klucza prywatnego dla certyfikatu klienta.

E-mail

Urządzenie obsługuje funkcję wysyłania szyfrowanych wiadomości e-mail, którą można skonfigurować w zakładce Services.

  • E-mail – Aktywacja usługi SMTP,
  • Server – Adres serwera SMTP,
  • Port – Port serwera SMTP, na którym odbierane są wiadomości,
  • SSL/TLS – Konfiguracja szyfrowania:
    • Off – Brak szyfrowania, połączenie nieszyfrowane,
    • SSL/TLS – Szyfrowanie z użyciem SSL/TLS,
    • STARTTLS – Umożliwia użycie STARTTLS w trakcie połączenia.
  • User – Nazwa użytkownika używana do uwierzytelniania w serwerze SMTP,
  • Authorization – Wybór trybu autoryzacji: brak lub hasło,
  • Password – Hasło używane do uwierzytelniania w serwerze SMTP,
  • From – Pole „Od” widoczne w nagłówku wiadomości e-mail,
  • Subject – Temat wiadomości e-mail, a także nazwa pliku załącznika (np. logów),
  • Recipients – Lista odbiorców wiadomości (adresy e-mail oddzielone przecinkami),
  • Sending logs periodically – Rozszerzenie pliku logów wysyłanego jako załącznik:
    • Disable – Wysyłanie plików logów wyłączone,
    • CSV,
    • XML,
    • JSON,
    • Text.
  • Erase logs after send – Opcja usunięcia logów po ich pomyślnym wysłaniu,
  • Time of sending logs – Harmonogram wysyłania logów w formacie CRON:
    • Składnia: sekundy, minuty, godziny, dzień miesiąca, miesiąc, dzień tygodnia.

Przykład

0 0 0 ? * * – codziennie o północy

  • Debug – Tryb debugowania pozwalający na diagnozowanie błędów konfiguracji SMTP.

Testowanie konfiguracji

Po wprowadzeniu ustawień użytkownik może przetestować konfigurację za pomocą przycisku Send a test e-mail. Urządzenie spróbuje wysłać wiadomość testową, która powinna natychmiast dotrzeć do odbiorcy. W przypadku nieotrzymania wiadomości warto sprawdzić folder SPAM.

Rozwiązywanie problemów

Jeśli występują problemy z wysyłaniem wiadomości, można włączyć tryb Debug w celu diagnozowania błędów:

  1. Otwórz stronę debugowania w nowej karcie przeglądarki, wpisując:
    http://<IP urządzenia>/protect/dmesg.html
    lub kliknij przycisk Open debugger here! na stronie konfiguracji,
  2. Naciśnij przycisk Send a test e-mail,
  3. Szczegóły dotyczące problemów z wysyłaniem wiadomości pojawią się w oknie debugera. Analiza tych informacji pozwoli na zidentyfikowanie i rozwiązanie problemu.

Modbus TCP/RTU

Urządzenie wspiera protokół Modbus TCP oraz Modbus RTU. Konfiguracja połączenia jest dostępna na stronie w zakładce Services / Modbus.

  • Modbus TCP – Aktywacja usługi Modbus TCP,
    • TCP port – Port dla protokołu Modbus TCP (domyślnie 502),
  • Modbus RTU – Aktywacja usługi Modbus RTU,
    • PDU – Adres Modbus urządzenia,
    • RTU Baudrate – Szybkość transmisji danych. Dostępne wartości:
      • 1200
      • 2400
      • 4800
      • 9600
      • 19200
      • 38400
      • 57600
      • 115200
    • RTU Parity – Ustawienie parzystości:
      • None
      • Odd
      • Even
    • RTU Stop bit – Liczba bitów stopu:
      • 1
      • 2
  • Card action – Reakcja czytnika po przyłożeniu karty:
    • Control by modbus – Sterowanie czytnikiem wyłącznie przez Modbus,
    • Reader card's action – Reakcja zgodna z ustawieniami z zakładki Card Action.
  • Log Card Action – Logowanie zdarzeń podczas poprawnego połączenia z masterem (tylko dla ustawienia Card Action → Reader card action):
    • As card action (if set) – Logowanie zgodne z ustawieniami Card Action,
    • Omit log action – Pominięcie ustawień logowania dla Card Action.
  • Block RFID read – Blokowanie odczytu kolejnego tagu:
    • Block – Po odczytaniu tagu w rejestrze Holding Register 1 zapisywana jest wartość 1. Odczyt kolejnego transpondera możliwy po zresetowaniu flagi odczytu (zapis 0 do Holding Register 1),
    • Continuous – Automatyczne kasowanie flagi odczytu, umożliwiające natychmiastowy odczyt kolejnych tagów RFID.
  • Safe mode – Reakcja czytnika w przypadku zerwania połączenia Modbus:
    • Disable,
    • No action – Brak reakcji czytnika na zbliżenie tagu,
    • Standalone (Reader Card Action) – Przejście do trybu autonomicznego.
  • Safe Timeout – Czas, po którym czytnik przejdzie do trybu Safe mode.

Urządzenie obsługuje następujące funkcje Modbus:

  • 0x01 Read Coils
  • 0x03 Read Holding Register
  • 0x05 Write Single Coil
  • 0x06 Write Single Register
  • 0x0F Write Multiple Coils
  • 0x10 Write Multiple Registers

Adresacja Holding Registers

Adres R/W Opis
1 R/W Flaga odczytu
Odczyt: 1 – odczytano nowy transponder
Zapis: 0 – zerowanie flagi odczytu
2 R ID_LEN
3 R ID karty/UID/CSN [0]
4 R ID karty/UID/CSN [1]
5 R ID karty/UID/CSN [2]
6 R ID karty/UID/CSN [3]
7 R ID karty/UID/CSN [4]
8 R ID karty/UID/CSN [5]
9 R ID karty/UID/CSN [6]
10 R ID karty/UID/CSN [7]
11 R ID karty/UID/CSN [8]
12 R ID karty/UID/CSN [9]
13 R Rezerwowy
14 R User ID – Wartość 65535 oznacza tag nieznany
20 R/W Sterowanie wyjściem #0 wg ustawień z zakładki I/O Settings
21 W Sterowanie wyjściem #0 w trybie bistabilnym
22 W Załączenie wyjścia #0 na podany jako parametr czas (value * 0.1 sec)
23 W Czas blink_on (value * 0.1 sec)
24 W Czas blink_off (value * 0.1 sec)
25 W Sterowanie wyjściem #0 w trybie migania (czasy ustawiane są w rej. 23/24)
26 R/W Sterowanie wyjściem #1 wg ustawień z zakładki I/O Settings
27 W Sterowanie wyjściem #1 w trybie bistabilnym
28 W Załączenie wyjścia #1 na podany jako parametr czas (value * 0.1 sec)
29 W Czas blink_on (value * 0.1 sec)
30 W Czas blink_off (value * 0.1 sec)
31 W Sterowanie wyjściem #1 w trybie migania (czasy ustawiane są w rej. 29/30)

Logi

Adres R/W Opis
1200 R/W Liczba logów [MSB], wysłanie 0 powoduje skasowanie wszystkich logów
1201 R Liczba logów [LSB]
1202 R Wybrany log [MSB]
1203 R Wybrany log [LSB] (numeracja logów rozpoczyna się od 0)
1204 W Usunięcie najstarszych logów w liczbie przekazanej jako parametr
1205 R Timestamp [MSB]
1206 R Timestamp [LSB]
1207 R Rezerwowy
1208 R Źródło logu (czytnik główny, czytnik zewnętrzny)
1209 R Akcja
1210 R idx – Wartość FFFF oznacza nieznaną kartę/tag RFID
1211 R UID – Kod jest zapisany w ASCII
...1231 R Ostatni rejestr z ewentualnymi danymi

Wyświetlacz

Adres R/W Opis
2000 R/W LCD Mode:
0 – praca autonomiczna
-1 – sterowanie przez Modbus
Wartość od 1 do 65534 – czas wyświetlania tekstu wyrażony w sekundach. Po upłynięciu czasu, wyświetlacz przejdzie w tryb pracy autonomicznej
2001 R/W LCD TIME, jeżeli LCD Mode=1:
0 – nie pokazuj czasu na LCD
1 – pokaż czas na LCD
2002 R/W LCD Clear: 1 – kasowanie zawartości LCD
2003 W Podświetlenie wyświetlacza:
0 – wyłącz podświetlenie
1 – włącz podświetlenie
>1 – czas podświetlenia (value * 0.1 sec)
2010-2029 W Pierwsza linia wyświetlacza LCD – kodowanie UTF-8 (np. a = 85C4)
2030-2049 W Druga linia wyświetlacza LCD – kodowanie UTF-8
2050-2069 W Trzecia linia wyświetlacza LCD – kodowanie UTF-8
2070-2089 W Czwarta linia wyświetlacza LCD – kodowanie UTF-8

Adresacja Single Coil

Adres R/W Opis
1 R/W Sterowanie wyjściem #0 wg ustawień z zakładki I/O Settings
2 R/W Sterowanie wyjściem #1 wg ustawień z zakładki I/O Settings
3 R Stan cewki wyjścia #0
4 R Stan cewki wyjścia #1
11 R Stan wejścia #0
12 R Stan wejścia #1
13 R/W Sterowanie czerwoną diodą LED
14 R/W Sterowanie zieloną diodą LED
15 W Sterowanie generatorem dźwięku – dźwięk ACCEPT
16 W Sterowanie generatorem dźwięku – dźwięk REJECT
17 Rezerwowy
18 R/W Reset status
Odczyt:
1 – nastąpił restart czytnika (np. przez brak zasilania)

Syslog

Urządzenie ma możliwość przekazywania danych do serwera Syslog. Użytkownik może wybrać, jakie zdarzenia będą wysyłane.

  • Syslog – Włączenie klienta syslog,
  • Server – Adres serwera syslog,
  • Port – Numer portu, na który nasłuchuje serwer – domyślnie 514,
  • System events – Wysyłanie zdarzeń systemowych do serwera syslog,
  • System IO – Wysyłanie zdarzeń wejść i wyjść do serwera syslog.

Integracja ze sterownikami PLC

Po zakupieniu dodatkowej licencji, w zakładce Services / PLC istnieje możliwość integracji urządzeń BoxID oraz Clocker ze sterownikami PLC firm Siemens oraz Mitsubishi.

Procedura w kilku artykułach została opisana na naszym blogu.

Lua Scripts

Zakładka Lua Script umożliwia użytkownikowi definiowanie niestandardowych akcji i logiki sterowania kartami RFID przy użyciu języka skryptowego Lua.

Opis interfejsu

Główna sekcja zakładki zawiera edytor kodu, w którym można pisać i modyfikować skrypty Lua. Skrypty te pozwalają na dostosowanie działania urządzenia w zależności od różnych zdarzeń związanych z kartami RFID.

Przyciski sterujące

  • Reload workspace – Ponowne załadowanie edytora,
  • Load to module – Wczytanie kodu Lua do urządzenia (bez zapisu w pamięci trwałej),
  • Store in FLASH – Zapisanie kodu Lua w pamięci urządzenia (po restarcie skrypt pozostanie aktywny),
  • Clear console – Wyczyszczenie konsoli wyjściowej,
  • Restore code – Przywrócenie domyślnego kodu Lua.

Wskazówka

Na dole zakładki znajduje się opcja "Lua", która pozwala włączyć lub wyłączyć obsługę skryptów Lua w urządzeniu.

Dostępne funkcje systemowe

W urządzeniu można używać funkcji Lua do reagowania na różne zdarzenia.

Funkcje systemowe

  • start() – Funkcja wywoływana po uruchomieniu systemu,
  • timeout() – Funkcja wywoływana po upływie ustawionego czasu set_timeout(ms),
  • void set_timeout(ms) – Ustawia wewnętrzny timer i wywołuje funkcję timeout(),
  • void clear_timeout() – Kasuje i wyłącza timer.

Funkcje RFID

  • void rfid_detect() – Funkcja wywoływana, gdy system wykryje kartę RFID i odczyta jej UID,
  • void action_oncard() – Pierwsza funkcja wykonywana po wykryciu karty (przed sprawdzeniem bazy),
  • void action_known() – Funkcja wykonywana, gdy karta jest rozpoznana jako znana,
  • void action_unknown() – Funkcja wykonywana, gdy karta nie jest w bazie,
  • void action_hold() – Funkcja wywoływana, gdy karta pozostaje na czytniku przez dłuższy czas,
  • void action_remove() – Funkcja wywoływana, gdy karta zostanie usunięta z czytnika.

Biblioteki Lua

System oferuje kilka bibliotek umożliwiających interakcję z urządzeniem. Biblioteki card, mf, rfid, oraz dev są bibliotekami specyficznymi dla urządzeń Inveo, pozostałe biblioteki są bibliotekami standardowymi.

Biblioteka card

  • getFlag() – Pobiera flagi związane z bieżącą kartą UID,
  • getUserId() – Pobiera identyfikator użytkownika powiązany z bieżącą kartą.

Biblioteka mf (Mifare Classic)

  • auth_ee(key_no, block, ab) – Autoryzacja bloku Mifare Classic przy użyciu klucza z pamięci zabezpieczonej,
  • auth_key(key, block, ab) – Autoryzacja bloku Mifare Classic przy użyciu podanego klucza,
  • rd(block) – Odczyt bloku Mifare Classic,
  • wr(block, data) – Zapis bloku Mifare Classic (musi mieć 16 bajtów),
  • deauth() – Deautoryzacja.

Biblioteka rfid

  • getUidBin() – Pobiera UID jako dane binarne,
  • getUidBinLen() – Pobiera długość UID w formacie binarnym,
  • getUidAscii() – Pobiera UID jako tekst ASCII (HEX),
  • getUidAsciiLen() – Pobiera długość UID w formacie ASCII,
  • overwriteUidAscii(uid) – Nadpisuje UID używany przez system,
  • pause(time) – Zatrzymuje przetwarzanie RFID na podany czas (ms).

Biblioteka dev

  • out_on(channel) – Włącza wyjście na danym kanale,
  • out_off(channel) – Wyłącza wyjście na danym kanale,
  • out_single(channel, ton) – Ustawia pojedynczy impuls na wyjściu,
  • out_blink(channel, ton, toff, cnt) – Ustawia miganie wyjścia,
  • out_get(channel) – Zwraca stan wyjścia,
  • in_get(channel) – Zwraca stan wejścia,
  • in_get_cnt(channel) – Zwraca licznik wejścia,
  • buzz(sound) – Sterowanie brzęczykiem (sound: 0 – akceptacja, 1 – odrzucenie, 2 – impuls),
  • lcd_clear() – Czyści ekran LCD,
  • var_txt_set(idx, txt) – Ustawia tekst txt dla zmiennej dynamicznej o indeksie idx,
  • var_txt_get(idx) – Przywołuje zmienną dynamiczną o indeksie idx.

Biblioteka table

  • insert(t, [pos], value) – Wstawia element value do tablicy t. Jeżeli podano pos, wstawia element na danej pozycji, przesuwając pozostałe elementy,
  • remove(t, [pos]) – Usuwa element z pozycji pos w tablicy t. Jeżeli nie podano pos, usuwa ostatni dodany element,
  • sort(t, [, comp]) – Sortuje tablicę t rosnąco. Opcjonalnie można podać funkcję porównującą comp(a, b), która powinna zwrócić true, jeśli a powinno być przed b,
  • concat(t [, sep [, i [, j]]]) – Łączy elementy tablicy t w jeden ciąg, oddzielając je separatorem sep od indeksu i do j,
  • pack(...) – Zwraca tablicę zawierającą wszystkie argumenty przekazane do funkcji. Zapamiętuje liczbe argumentów jako pole n,
  • unpack(t [, i[, j]]) – Zwraca elementy tablicy t jako osobne wartości od indeksu i do j. Domyślnie i = 1, j = #t.

Biblioteka string

  • bytebyte(s [, i [, j]]) – Zwraca kod bajtowy znaków z s od pozycji i do j,
  • char(...) – Tworzy ciąg z podanych wartości,
  • len(s) – Zwraca długość łańcucha znaków,
  • lower(s) – Zwraca s z literami zamienionymi na małe,
  • upper(s) – Zwraca s z literami zamienionymi na wielkie,
  • sub(s, i [, j]) – Zwraca podciąg s od pozycji i do j,
  • rep(s, n) – Zwraca s powtórzone n razy,
  • reverse(s) – Zwraca odwrócony tekst s,
  • find(s, pattern [, i [, plain]]) – Szuka pattern w s, zwraca indeksy lub nil. Ustawienie plain=true szuka bez wzorców,
  • match(s, pattern [, i]) – Zwraca pierwsze dopasowanie wzorca,
  • gsub(s, pattern, repl [, n]) – Zastępuje pattern ciągiem repl maksymalnie n razy. Zwraca nowy ciąg i liczbę podmian.

Biblioteka os

  • time([table]) – Zwraca aktualny czas w formacie UNIX lub konwertuje table na liczbę sekund,
  • date([format [, time]]) – Zwraca datę/czas w postaci sformatowanego tekstu lub tabeli,
  • clock() – Zwraca czas procesora zużyty przez program,
  • difftime(t1, t2) – Zwraca różniczę w sekundach między t1 a t2,

Biblioteka math

  • abs(x) – Wartość bezwzględna x,
  • ceil(x) – Zaokrąglenie w górę do najbliższej liczby całkowitej,
  • floor(x) – Zaokrąglenie w dół,
  • fmod(x, y) – Reszta z dzielenia x przez y,
  • max(x, ...) – Największa z podanych liczb,
  • min(x, ...) – Najmniejsza z podanych liczb,
  • sqrt(x) – Pierwiastek kwadratowy z x,
  • exp(x) – Stała e do potęgi x,
  • log(x [, base]) – Logarytm naturalny ln(x) lub log_b(x) (jeżeli base podana),
  • pow(x, y) – Potęgowanie x^y,
  • modf(x) – Rozdziela x na część całkowitą i ułamkową int, frac,
  • random([m [, n]]) – Losowa liczba z zakresu 0-1,
  • randomseed(seed) – Ustawia ziarno generatora liczb losowych,
  • deg(x) – Zamienia radiany na stopnie,
  • rad(x) – Zamienia stopnie na radiany,
  • sin(x) – Sinus (x w radianach),
  • cos(x) – Cosinus (x w radianach),
  • tan(x) – Tangens (x w radianach),
  • asin(x) – Arcus sinus,
  • acos(x) – Arcus cosinus,
  • atan(x) – Arcus tangens,
  • atan2(y, x) – Arcus tangens y/x z uwzględnieniem ćwiartki.

Biblioteka utf8

  • len(s [, i [, j]]) – Zwraca liczbę znaków UTF-8 w podciągu s od i do j,
  • offset(s, n [, i]) – Zwraca bajtowy indeks w s początku n-tego znaku (jeśli n dodatnie) lub n-tego od końca (jeśli n ujemne),
  • codepoint(s [, i [, j]]) – Zwraca jeden lub więcej kodów punktów Unicode znaków z s między i a j,
  • char(...) – Tworzy ciąg UTF-8 z podanych kodów punktów Unicode,
  • codes(s) – Zwraca iterator, który zwraca kolejne bajtowe indeksy i kody punktów Unicode w s,
  • charpattern – Wzorzec Lua do dopasowania pojedynczego znaku UTF-8.

Biblioteka pack

  • pack – Pakuje dane do ciągu binarnego,
  • unpack – Odpakowuje dane z ciągu binarnego,
  • packsize – Zwraca rozmiar pakietu.

Komunikacja

E-mail

  • email(recipient, subject, text) – Wysyła e-mail,
    • recipient – Adres odbiorcy,
    • subject – Temat wiadomości,
    • text – Treść wiadomości.

HTTP

  • http_send(url, data, data_length, method, content_type) – Wysyła żądanie HTTP.
    • url – Adres, na który urządzenie wyśle żądanie. Wprowadzenie null wyśle żądanie na adres zdefiniowany w zakładce HTTP Client,
    • data – Dane, które mają zostać wysłane,
    • data_length – Długość danych,
    • method – Metoda HTTP:
      • 0 – GET,
      • 1 – POST,
      • 2 – PUT,
      • 3 – DELETE.
    • content_type:
      • 0 – PLAIN,
      • 1 – JSON,
      • 2 – XML.

MQTT

  • mqtt(topic, data, length) – Publikuje wiadomość MQTT.

Logowanie i debugowanie

  • log(message) – Zapisuje wiadomość do pamięci flash,
  • console(message) – Wyświetla komunikat w konsoli Lua.

HTTP Server – Obsługa zapytań

  • httpdscript(name, args) – Funkcja wywoływana, gdy zapytanie HTTP zaczyna się od /data/script/,
  • httpd_resp(text) – Ustawia odpowiedź HTTP.

Przykład

function httpdscript(name, arg)
    dev.console("name:"..name.." arg:"..arg)

    local v1,v2,v3 = arg:match("v1=(%d+)&v2=(%d+)&v3=(%d+)")
    dev.console("parsed arg:"..v1.." "..v2.." "..v3)

    if name == "test.json" then
        dev.httpd_resp('{"result":"OK"}')
    elseif name == "test.xml" then
        dev.httpd_resp('<AastraIPPhoneStatus Beep="yes"><Session/><Message type="alert" Color="darkgreen" Timeout="3">Drzwi otwarte</Message></AastraIPPhoneStatus>')
    else
        dev.httpd_resp("")
    end     
end

Przykłady zastosowania

Przykład 1: Kontrola dostępu do pomieszczeń

Cel: Otwieranie drzwi przy użyciu uprawnionych kart RFID.

Instrukcja wykonania:

1. Dodanie użytkowników i kart RFID

  • Przejdź do zakładki Card database w interfejsie urządzenia.
  • Kliknij "Add a new RFID card to database" i wprowadź nazwę użytkownika.
  • Przyłóż kartę RFID do czytnika – a następnie wybierz przycisk Get last read UID.
  • Zapisz zmiany. Powtórz dla każdego użytkownika.

2. Konfiguracja wyjścia przekaźnikowego

  • Przejdź do zakładki IO Settings.
  • W sekcji Out #0 Mode ustaw tryb On Period.
  • W sekcji Out #0 Time wprowadź czas aktywacji przekaźnika (np. 20 = 2 sekundy).
  • Zapisz zmiany.

3. Definiowanie reakcji na odczyt karty

  • Przejdź do zakładki Card actions.
  • W sekcji On-known (reakcja na rozpoznaną kartę) wybierz:

    • Sound: Accept (sygnał akceptacji),
    • Output #0: period (aktywowana na wcześniej ustawiony czas),
    • LCD text: "Dostęp przyznany",
    • LCD Text Timeout 5 sekund (Czas wyświetlania podanego tekstu).
    • Zapisz zmiany

4. Testowanie konfiguracji

  • Przyłóż wcześniej dodaną kartę RFID do czytnika.
  • Urządzenie powinno wydać sygnał dźwiękowy, wyświetlić komunikat "Dostęp przyznany" i aktywować przekaźnik na 2 sekundy.
  • Sprawdź, czy przekaźnik poprawnie steruje elektrozamkiem.

Efekt:
Gdy uprawniony użytkownik przyłoży kartę do czytnika, drzwi zostaną odblokowane na określony czas. Jeśli użyta karta nie znajduje się w bazie, dostęp zostanie odrzucony.

Przykład 2: Rejestracja czasu pracy

Cel: Użycie urządzenia do ewidencji wejść i wyjść pracowników za pomocą kart RFID.

Instrukcja wykonania:

1. Dodanie użytkowników i kart RFID

  • Przejdź do zakładki Card database w interfejsie urządzenia.
  • Kliknij "Add a new RFID card to database" i wprowadź nazwę użytkownika.
  • Przyłóż kartę RFID do czytnika – a następnie wybierz przycisk Get last read UID .
  • Zapisz zmiany. Powtórz dla każdego użytkownika.

2. Konfiguracja logowania zdarzeń

  • Przejdź do zakładki Card actions.
  • W sekcji On-known ustaw:
    • Sound: Accept (sygnał akceptacji),
    • LCD text: "Dzień dobry, [imię]!",
    • Log event: Enabled (włącza zapisywanie zdarzenia w systemie).
  • W sekcji On unknown ustaw:
  • Sound: Reject (sygnał odrzucenia),
  • LCD text: "Nieznana karta!".
  • Zapisz zmiany.

3. Wysyłanie danych do serwera

  • Przejdź do zakładki Services/MQTT i włącz wysyłanie zdarzeń przez MQTT.
  • Skonfiguruj adres serwera(Broker), do którego mają być przesyłane informacje o przyłożonych kartach.
  • W sekcji On-new dodaj wysyłanie informacji o użytkowniku, np.:
  • MQTT topic: rfid/logs
  • MQTT payload: {"user": "@last UID number", "time": " @current date and time"}

4. Testowanie konfiguracji

  • Przyłóż kartę RFID do czytnika.
  • Na ekranie powinien pojawić się komunikat powitalny, a zdarzenie zostanie zapisane w systemie.
  • Sprawdź, czy dane zostały poprawnie przesłane do serwera lub zapisane w logach urządzenia.

Efekt:
Każde użycie karty RFID jest rejestrowane i może być wykorzystane do ewidencji godzin pracy. Integracja z systemem HR lub ERP umożliwia automatyczne obliczanie czasu pracy i generowanie raportów.

Przykład 3: Automatyczne sterowanie oświetleniem

Cel: Użycie urządzenia do sterowania oświetleniem na podstawie autoryzacji kartą RFID.

Instrukcja wykonania:

1. Podłączenie urządzenia do systemu oświetlenia

  • Podłącz przekaźnik sterujący oświetleniem do wyjścia OUT1 lub OUT2 urządzenia.
  • Sprawdź, czy przekaźnik poprawnie włącza i wyłącza światło.

2. Ustawienia reakcji na kartę RFID

  • Przejdź do zakładki Card actions.
  • W sekcji On-known ustaw:

    • Sound: Accept (sygnał akceptacji),
    • LCD text: "Światło włączone",
    • Output #0: On Period (włączenie przekaźnika na określony czas),

  • W sekcji On-remove ustaw:
    • Sound: None,
    • LCD text: "Światło wyłączone",
    • Output #0: Off (wyłączenie przekaźnika po zabraniu karty).

  • Przejdź do zakładki I/O Settings.
  • W sekcji Channels ustaw:
    • Out #0 Time - np. 3000 (5 minut).
  • Zapisz zmiany.

3. Testowanie konfiguracji

  • Przyłóż kartę RFID do czytnika.
  • Światło powinno się włączyć na określony czas.
  • Po zabraniu karty światło powinno się wyłączyć (Jeśli skonfigurowano opcję On-remove).

Efekt:
System pozwala na automatyczne sterowanie oświetleniem np. w biurach, magazynach czy pomieszczeniach socjalnych. Oświetlenie jest aktywowane tylko wtedy, gdy jest potrzebne, co pozwala na oszczędność energii.

Przykład 4: Rejestracja prób dostępu nieautoryzowanych kart i wysyłanie zdarzeń do serwera Syslog

Cel:
Monitorowanie prób dostępu przy użyciu nieautoryzowanych kart RFID oraz automatyczne przesyłanie informacji o takich zdarzeniach do centralnego serwera Syslog.

Instrukcja wykonania:

1. Włączenie Syslog

  • Przejdź do zakładki Services/Syslog w interfejsie urządzenia.
  • W sekcji Syslog Settings:

    • Enable: Ustaw na ON, aby aktywować klienta syslog.
    • Server: Wprowadź adres IP lub nazwę hosta serwera syslog.
    • Port: Ustaw numer portu (domyślnie 514).
  • Zapisz zmiany.

2. Konfiguracja reakcji dla nieautoryzowanych kart

  • Przejdź do zakładki Card actions.
  • W sekcji On-unknown (akcja dla nieznanych kart) ustaw:

  • Sound: Reject – sygnał dźwiękowy odrzucenia karty.

  • LCD Text: "Nieautoryzowany dostęp" – komunikat wyświetlany na ekranie.
  • Log event: Upewnij się, że ta opcja jest włączona, aby zdarzenie było zapisywane w logach i wysyłane do serwera Syslog.

  • Zapisz zmiany.

3. Testowanie konfiguracji

  • Użyj karty RFID, która nie jest zapisana w bazie urządzenia. (nieautoryzowana).
  • Urządzenie powinno:
    • Odtworzyć sygnał dźwiękowy odrzucenia.
    • Wyświetlić komunikat "Nieautoryzowany dostęp!".
    • Zarejestrować zdarzenie lokalnie oraz przesłać je do skonfigurowanego serwera Syslog.

Efekt:
System automatycznie monitoruje i rejestruje próby dostępu przy użyciu nieautoryzowanych kart RFID, a wysłane zdarzenia do serwera Syslog umożliwiają centralne monitorowanie i szybką reakcję w przypadku wykrycia nieautoryzowanego dostępu.

Przykład 5: Podstawowy system kontroli dostępu z użyciem Lua script

Opis:
Poniższy skrypt demonstruje podstawową logikę kontroli dostępu przy użyciu funkcji urządzenia. Skrypt wykonuje następujące działania:

  • rfid_detect()
    Funkcja uruchamiana, gdy subsystem RFID wykryje kartę i odczyta jej UID. W tej funkcji można modyfikować odczytany UID lub po prostu logować informację o odczycie.

  • action_oncard()
    Funkcja wywoływana, gdy system rozpozna kartę. Tutaj następuje sprawdzenie, czy UID karty odpowiada uprawnionej karcie (przykładowo "12345678"). Jeśli tak, wywołana jest funkcja action_known(), w przeciwnym razie action_unknown().

  • action_known()
    Jeśli karta jest uprawniona, system przyznaje dostęp – wyświetla komunikat "Access Granted", aktywuje wyjście przekaźnikowe (np. otwiera drzwi), odtwarza sygnał akceptacji i ustawia timeout, po którym wyjście zostanie dezaktywowane.

  • action_unknown()
    Jeśli karta jest nieuprawniona, system odrzuca dostęp – wyświetla komunikat "Access Denied", odtwarza sygnał odrzucenia oraz blokuje próbę dostępu.

  • action_hold()
    Uruchamiana, gdy karta pozostaje przy czytniku przez zbyt długi czas. W rozszerzonej wersji:

    • Wyświetla komunikat "Card Hold Mode",
    • Migocze wyjście przekaźnikowe (kanał 0) – 3 cykle, 200 ms włączone, 200 ms wyłączone,
    • Loguje zdarzenie przedłużonego przytrzymania karty.
  • action_remove()
    Funkcja wywoływana, gdy karta zostaje usunięta z pola odczytu. Zwykle czyści wyświetlacz i loguje zdarzenie.

Instrukcja wykonania:

  1. Otwórz zakładkę Lua Scripts:
    Zaloguj się do interfejsu urządzenia i przejdź do zakładki Lua Scripts.

  2. Wklej skrypt:
    Skopiuj poniższy kod do edytora skryptów.

  3. Zapisz i wgraj:
    Zapisz zmiany i wgraj skrypt do urządzenia za pomocą przycisku. Load to module.

  4. Testowanie konfiguracji:
    Przyłóż kartę RFID do czytnika:

    • Jeśli UID karty wynosi "12345678", system przyzna dostęp, aktywując wyjście przekaźnikowe, wyświetlając komunikat "Access Granted" i odtwarzając sygnał akceptacji.
    • Dla innych UID system odrzuci dostęp, wyświetlając komunikat "Access Denied" i logując próbę dostępu.
    • Przytrzymanie karty wywoła funkcję action_hold(), a usunięcie karty – action_remove().
    • Przytrzymaj kartę przez dłuższy czas, aby wywołać funkcję action_hold(). Zobaczysz komunikat "Card Hold Mode", a wyjście przekaźnikowe będzie migotać.
    • Usunięcie karty spowoduje wywołanie funkcji action_remove(), która wyczyści wyświetlacz.

Ostrzeżenie

Pamiętaj, że przycisk Load to module ładuje skrypt jedynie do pamięci RAM. By zapisać zmiany na stałe po wgraniu ustawień do pamięci RAM należy wcisnąć przycisk Store in FLASH.

Skrypt Lua:

-- Basic functions that are always executed.
-- Important! Even if you do not use the function, do not delete it; just leave it empty.

-- Funkcja wywoływana, gdy subsystem RFID wykryje kartę i odczyta jej UID.
function rfid_detect()
    local uid = rfid.getUidAscii()  -- Odczytaj UID karty w formacie ASCII.
    dev.console("RFID detected, UID: " .. uid)
    -- Opcjonalnie możesz tutaj modyfikować UID, np. konwertować go do formatu dziesiętnego.
end

-- Funkcja wywoływana, gdy system rozpozna kartę.
function action_oncard()
    local uid = rfid.getUidAscii()
    dev.console("Card presented, UID: " .. uid)
    -- Sprawdzenie, czy karta jest uprawniona (przykładowy UID: "12345678")
    if uid == "12345678" then
        action_known()
    else
        action_unknown()
    end
end

-- Funkcja wywoływana, gdy karta jest rozpoznana jako uprawniona.
function action_known()
    dev.console("Known card. Access granted for UID: " .. rfid.getUidAscii())
    dev.lcd_clear()
    dev.lcd_text("Access Granted", 1)
    dev.out_on(0)          -- Aktywuj wyjście przekaźnikowe (np. otwórz drzwi)
    dev.buzz(0)            -- Odtwórz sygnał akceptacji (tone 0)
    dev.set_timeout(3000)  -- Ustaw timeout na 3000 ms (3 sekundy)
end

-- Funkcja wywoływana, gdy karta jest rozpoznana jako nieuprawniona.
function action_unknown()
    dev.console("Unknown card. Access denied for UID: " .. rfid.getUidAscii())
    dev.lcd_clear()
    dev.lcd_text("Access Denied", 1)
    dev.buzz(1)           -- Odtwórz sygnał odrzucenia (tone 1)
    dev.log("Unauthorized access attempt, UID: " .. rfid.getUidAscii())
end

-- Funkcja wywoływana, gdy karta pozostaje w polu odczytu przez dłuższy czas.
function action_hold()
    dev.console("Card held too long.")
    dev.lcd_clear()
    dev.lcd_text("Card Hold Mode", 1)
    -- Dodatkowa opcja: Miganie wyjścia przekaźnikowego (kanał 0)
    dev.out_blink(0, 200, 200, 3)  -- 3 cykle: 200 ms włączone, 200 ms wyłączone
    dev.log("Card held for extended period, UID: " .. rfid.getUidAscii())
end

-- Funkcja wywoływana, gdy karta zostaje usunięta z pola odczytu.
function action_remove()
    dev.console("Card removed.")
    dev.lcd_clear()
end

Przykład 6: Przesyłanie danych o urządzeniu przy użyciu protokołu HTTP

Cel: Przesyłanie danych w formie żądań HTTP: ping oraz informacji o przyłożeniu karty do czytnika i jej oddaleniu.

Instrukcja wykonania:

1. Ustawienie parametrów HTTP oraz dodanie składni żądania ping

  • Przejdź do zakładki Services / HTTPc,
  • Aktywuj opcję HTTP Client,
  • Wprowadź parametry serwera: adres IP w polu Server oraz Port,
  • Ustaw żądaną metodę w polu HTTP Method oraz format danych Content type (na potrzeby demonstracji będziemy korzystać z metody POST oraz formatu json),
  • W pole Resource wprowadź zasób, na który mają być wysyłane dane,
  • W zależności od potrzeb wprowadź nazwę użytkownika i hasło w pola User i Password,
  • Ustaw odstęp czasowy (w sekundach) między kolejnymi żądaniami ping - HTTP ping request interval
  • W pole HTTP ping request wprowadź wymaganą składnię żądania, np.:
{"Action":"ping",
"Model":"%mod_model%",
"DeviceName":"%mod_name%",
"DateTime":"%timedate%"}

Wskazówka

Po kliknięciu obszaru Show help, możliwy jest podgląd wprowadzonej składni:

  • W zależności od potrzeb ustaw parametry szyfrowania i/lub wprowadź wymagane certyfikaty,
  • Zapisz zmiany

2. Ustawienie akcji, które mają wysyłać żądania

  • Przejdź do zakładki Card actions, następnie wybierz wymaganą akcję (w tym przypadku On-new, informującą o przyłożeniu karty do czytnika),
  • Zaznacz opcję HTTP Request,
  • Wybierz metodę HTTP
  • Wybierz format danych
  • Wprowadź składnię żądania, np.:
{"Action":"newcard",
"Model":"%mod_model%",
"DeviceName":"%mod_name%",
"CardID":"%uid%",
"DateTime":"%timedate%"}
  • Zapisz zmiany

W zależności od potrzeb, w analogiczny sposób skonfiguruj inne akcje – On-hold lub On-remove:

3. Testowanie konfiguracji

  • W terminalu serwera HTTP zweryfikuj, czy urządzenie BoxID wysyła:
  • Żądania ping zgodnie z ustawionym interwałem,
  • Informacje o przyłożeniu karty RFID do pola odczytu,
  • Informacje o oddaleniu karty z pola odczytu.

Efekt:

Urządzenie wysyła co określony czas żądania ping do serwera HTTP, ponadto informuje go o fakcie przyłożenia/zabrania karty do/z pola odczytu oraz o dacie i godzinie zdarzenia.

Ustawienia fabryczne, backup

Przywracanie ustawień fabrycznych

Aby przywrócić ustawienia fabryczne urządzenia należy:

  • Włączyć urządzenie.
  • Zewrzeć zworkę RESET na czas pomiędzy 10 a 15 sekund.
  • W czasie trwania sygnału dźwiękowego należy zdjąć zworkę RESET.

Informacja

Domyślne ustawienia można przywrócić przez skorzystanie z wbudowanego serwera www. Użytkownik powinien przejść do zakładki Administration, następnie w zakładce Backup należy nacisnąć przycisk Reset to default, który znajduje się na samym dole strony.

Po wykonaniu powyższych czynności urządzenie ustawi następujące parametry:

  • Adres IP: 192.168.111.15
  • Maska IP: 255.255.255.0
  • Użytkownik: admin
  • Hasło: admin

Backup / Przywrócenie ustawień użytkownika

Wszystkie dane konfiguracyjne mogą zostać zapisane do pliku. Użytkownik może utworzyć/wczytać plik backup’u na stronie Administration / Backup.

Backup Utworzenie zapisu danych konfiguracyjnych wymaga hasła.

Wgranie backupu Wgranie zapasowych danych konfiguracyjnych wymaga hasła oraz wybrania pliku z komputera za pomocą przycisku Wybierz plik i wciśnij Upload.

Awaryjne przywracanie firmware

W celu przywrócenia firmware po wystąpieniu awarii należy:

  • Zewrzeć zworkę RESET.
  • Zasilić urządzenie i podłączyć do sieci LAN.

Po wykonaniu powyższych czynności urządzenie ustawi następujące parametry:

  • Adres IP: 192.168.111.15
  • Maska IP: 255.255.255.0

Wskazówka

Aby wejść na adres 192.168.111.15, adres IP komputera musi być w tej samej podsieci (przykładowy adres IP dla komputera: 192.168.111.1.)

Odwołując się do podanego adresu IP uzyskamy dostęp do bootloadera urządzenia.

W tym miejscu mamy możliwość wgrania firmware, resetu urządzenia do ustawień fabrycznych oraz jego restartu.

Gwarancja i odpowiedzialność producenta

Ostrzeżenie

Producent udziela dwuletniej gwarancji na urządzenie oraz zapewnia serwis pogwarancyjny przez okres 10 lat od daty wprowadzenia urządzenia na rynek. Gwarancja obejmuje wszystkie wady materiałowe i produkcyjne

Producent zobowiązuje się do przestrzegania umowy gwarancyjnej, jeżeli spełnione są następujące warunki:

  • Wszystkie naprawy, zmiany, rozszerzenia oraz kalibracje urządzenia wykonywane są przez producenta lub autoryzowany serwis,
  • Sieciowa instalacja zasilająca spełnia warunki obowiązujących w tym względzie norm,
  • Urządzenie obsługiwane jest zgodnie z zaleceniami przedstawionymi w niniejszej Instrukcji,
  • Urządzenie używane jest zgodnie z przeznaczeniem.

Producent nie ponosi żadnej odpowiedzialności za konsekwencje wynikłe z nieprawidłowej instalacji, niewłaściwego użytkowania urządzenia, nieprzestrzegania instrukcji obsługi oraz przeprowadzania napraw przez osoby nieposiadające uprawnień.

Ostrzeżenie

W urządzeniu nie ma żadnych części, które wolno użytkownikowi samodzielnie wymieniać.

Warunki przechowywania, pracy i transportu

Urządzenie powinno być przechowywane w pomieszczeniach zamkniętych, w których atmosfera jest wolna od par i środków żrących oraz:

  • Temperatura otoczenia od -30°C do +60°C,
  • Wilgotność od 25% do 90% (niedopuszczalne skroplenia),
  • Ciśnienie atmosferyczne 700 do 1060 hPa.

Urządzenie przeznaczone jest do pracy w następujących warunkach:

  • Temperatura otoczenia od -10°C do +55°C,
  • Wilgotność od 30% do 75%,
  • Ciśnienie atmosferyczne 700 do 1060 hPa.

Zalecane warunki transportu:

  • Temperatura otoczenia od -40°C do +85°C,
  • Wilgotność od 5% do 95%,
  • Ciśnienie atmosferyczne 700 do 1060 hPa.

Instalacja i użytkowanie urządzenia:

  • Moduł powinien być obsługiwany zgodnie z zaleceniami przedstawionymi w dalszej części instrukcji.

Utylizacja i likwidacja

W przypadku, kiedy niezbędna staje się likwidacja urządzenia (np. po upływie czasu jego użytkowania), należy zwrócić się do producenta lub przedstawiciela producenta, którzy zobowiązani są do właściwej reakcji, tzn. odbioru urządzenia od użytkownika. Użytkownik może się również zwrócić do firm zajmujących się utylizacją i/lub likwidacją urządzeń elektrycznych lub sprzętu komputerowego. W żadnym wypadku nie należy umieszczać urządzenia wraz z innymi odpadkami.