IO-Link Collector
Podłącz swoje inteligentne czujniki IO-Link i uzyskaj nazwane, przeskalowane wartości inżynierskie z zerową konfiguracją na czujnik. Połącz swoje mastery IO-Link — oraz stojące za nimi czujniki i siłowniki — i przesyłaj ich dane procesowe prosto do bazy danych floty. Wszystko konfigurowane jest w przeglądarce: bez kodowania, bez ponownego wdrażania, bez przestojów.
Aplikacja działa przez trzy transporty, wybierane per master: HTTP/REST (API ifm IoT Core, neutralny dla producentów standard IO-Link Community JSON, który implementują mastery Balluff, oraz ogólny konfigurowalny dialekt REST dla wszystkiego innego), OPC UA (np. OPC UA IO-Link Companion Spec) oraz MQTT (np. Pepperl+Fuchs). Transporty OPC UA i MQTT są oparte na subskrypcji — wartości są wypychane w miarę ich zmiany. Niezależnie od transportu, podłączone czujniki są dekodowane automatycznie z ich IODD — surowe dane procesowe stają się nazwanymi, przeskalowanymi wartościami inżynierskimi bez konfiguracji na czujnik.
Dlaczego ta aplikacja
Automatyczne wykrywanie czujników. Skieruj aplikację na master IO-Link, a sonduje ona każdy port, wykrywając, które czujniki są podłączone, oraz odczytując ich identyfikator urządzenia, identyfikator producenta i nazwę produktu. Każdy podłączony port staje się automatycznie datapointem.
Automatyczne dekodowanie IODD — nazwane, przeskalowane wartości bez mapowania. Tak działa aplikacja od razu po wyjęciu z pudełka. Rozpoznaje każdy podłączony czujnik i samodzielnie przekształca jego surowe dane procesowe w gotowe wartości inżynierskie — wyszukując oficjalny IODD czujnika (IO-Link Device Description) w publicznym IODD Finder, bez konta i bez klucza API, oraz dekodując każdą wartość z poprawną nazwą, skalowaniem i jednostką. Podłącz czujnik, a jego temperatura w °C, ciśnienie w bar czy odległość w mm po prostu się pojawią. Dla bram offline lub odizolowanych można wkleić IODD do wbudowanego katalogu, a ten sam dekoder go używa (wklejony IODD zawsze wygrywa nad pobranym).
Świadomość hot-plug. Wymień czujnik, odłącz jeden lub dodaj nowy, a aplikacja zauważy to automatycznie — ponownie wykryje master i zaktualizuje katalog datapointów bez restartu.
Przechowuj tylko to, co ważne. Wstrzymuj poszczególne datapointy lub włącz zapis przy zmianie, dzięki czemu wartość jest rejestrowana tylko wtedy, gdy faktycznie się zmienia — chroniąc Twoją bazę danych przed rozdęciem przez zaszumione lub szybko cyklujące sygnały.
Obsługiwane mastery, transporty i czujniki
Całe wykrywanie, hot-plug oraz dekodowanie IODD/danych procesowych jest wspólne dla każdego transportu; ustawienie Master Type wybiera jedynie jak aplikacja dociera do danego mastera.
Transporty
| Master Type | Transport | API / źródło |
|---|---|---|
ifm | HTTP / REST (poll) | ifm IoT Core REST (getdatamulti) — mastery ifm serii AL i kompatybilne |
iolink_json (domyślny) | HTTP / REST (poll) | Standard IO-Link Community „JSON for IO-Link” (/iolink/v1/...) |
balluff | HTTP / REST (poll) | Mastery Balluff — implementują standard JSON for IO-Link |
generic | HTTP / REST (poll) | Konfigurowalny REST per port — dowolny master udostępniający adresy URL HTTP |
opcua | OPC UA (subskrypcja/push) | Serwery OPC UA udostępniające dane IO-Link, np. OPC UA IO-Link Companion Spec |
mqtt | MQTT (subskrypcja/push) | Mastery/bramy publikujące do brokera, np. Pepperl+Fuchs ICE2/ICE3 |
Mastery Turck (TBEN / FEN) udostępniają IO-Link przez Modbus/TCP i fieldbus, a nie przez którykolwiek z tych transportów — dla nich użyj Modbus Collector.
Producenci masterów
- ifm — IoT Core REST (AL13xx / AL19xx / AL11xx i kompatybilne); wszystkie porty odczytywane w jednym wsadowym żądaniu na cykl.
- Balluff — BNI (bieżący firmware) i CMTK, przez standard JSON-for-IO-Link.
- Pepperl+Fuchs — ICE2 / ICE3, przez MQTT (lub OPC UA).
- Dowolny master, który implementuje standard IO-Link Community JSON, udostępnia serwer OPC UA, publikuje do MQTT lub oferuje adresy URL REST per port (
generic).
Czujniki IO-Link i dekodowanie danych procesowych
- Automatyczne wykrywanie per port: identyfikator urządzenia, identyfikator producenta, nazwa produktu.
- Wykrywanie hot-plug z automatycznym ponownym wykrywaniem — bez restartu.
- Automatyczne dekodowanie IODD — bezkluczowe automatyczne pobieranie z IODD Finder plus katalog ręcznego wklejania IODD (wklejony IODD wygrywa nad pobranym).
- Ręczne nadpisanie specyfikacji dekodowania YAML, per port.
- Typy dekodowania:
UINT8/16/32,INT8/16/32,FLOAT32,BOOL. - Dekodowanie z wyrównaniem do bajtów i pól bitowych — np. wartość mierzona plus bity statusu spakowane w jedno słowo danych procesowych (w stylu IODD).
- Liniowe skalowanie per wartość (
value = raw × scale + bias) i jednostki inżynierskie. - Przekazywanie surowych danych procesowych (hex), gdy dekodowanie nie jest skonfigurowane.
Bezpieczeństwo i uwierzytelnianie
- OPC UA — polityka bezpieczeństwa (
None,Basic256Sha256,Basic256,Basic128Rsa15), tryb bezpieczeństwa (None,Sign,SignAndEncrypt) oraz certyfikat klienta + klucz prywatny. - MQTT — TLS, z opcjonalnym certyfikatem CA.
- Nazwa użytkownika / hasło dla OPC UA i MQTT.
Co otrzymujesz
Zainstaluj aplikację w swoim projekcie i przypisz jej brzegowe komputery (bramy). Następnie otwórz tablicę aplikacji, przejdź do widoku ustawień i dodaj połączenie z masterem: wybierz bramę, wybierz typ mastera (domyślnie iolink_json), wprowadź adres mastera (URL REST jak 192.168.0.10, punkt końcowy opc.tcp://… lub broker mqtt://… w zależności od typu) i ustaw interwał zbierania. Podłączone czujniki są dekodowane automatycznie z ich IODD.
Od tego momentu aplikacja zbiera dane z mastera — odpytując mastery HTTP w skonfigurowanym interwale lub odbierając wypchnięte aktualizacje przez OPC UA / MQTT — i przechowuje każdą wartość w tabeli measurements Twojej bazy danych floty. Każdy odczyt niesie status połączenia portu (plus jakość OPC UA i znacznik czasu źródła lub temat źródłowy MQTT, tam gdzie są dostępne); zapisywany jest jeden wiersz na master na cykl, a stan online/offline każdego mastera na żywo śledzony jest w tabeli assetstatus. Zebrane odczyty są domyślnie przechowywane przez 3 miesiące (z możliwością dostosowania).
Ręczna specyfikacja dekodowania (zapasowa)
Dekodowanie jest automatyczne przez IODD, więc jest to rzadko potrzebne — sięgaj po nie tylko wtedy, gdy czujnik nie ma opublikowanego IODD lub potrzebujesz niestandardowego układu. Umieść tablicę YAML w polu Datapoints mastera; każdy wpis mapuje część danych procesowych portu na nazwaną, przeskalowaną wartość.
- label: Temperature
port: 1
offset: 0 # byte offset into the port's process data
length: 2 # number of bytes
type: INT16 # UINT8/16/32, INT8/16/32, FLOAT32, BOOL
scale: 0.1 # value = raw × scale + bias
unit: degCPole bitowe — dla czujnika, który pakuje wartość i bity statusu w jedno słowo danych procesowych (bity liczone od LSB, w stylu IODD), np. czujnik odległości ifm O5D:
- label: Distance
port: 1
type: UINT
bit_offset: 4
bit_length: 12
scale: 10
unit: mm
- label: OUT1
port: 1
type: BOOL
bit_offset: 0Wspólne funkcje kolektora
Jak każdy kolektor IronFlock, IO-Link Collector jest konfigurowany w całości w przeglądarce — dodawaj, edytuj i wstrzymuj połączenia z masterami w wbudowanej tablicy aplikacji bez plików parametrów i bez restartów; formularz pokazuje tylko pola istotne dla wybranego transportu, a do każdej bramy możesz podłączyć nieograniczoną liczbę masterów, swobodnie mieszając producentów i transporty. Jest niezawodny na krawędzi: każdy master jest zbierany w izolacji (jeden niedostępny master nigdy nie wstrzymuje pozostałych), a jeśli brama straci połączenie z platformą, aplikacja kontynuuje odczyt i buforuje lokalnie, a następnie przekazuje wszystko w kolejności przez wydajne wsadowe nadrabianie zaległości przy ponownym połączeniu (rozmiar bufora konfigurowalny per brama, z opcjonalnym trybem tylko-do-przodu). I możesz wypróbować to bez sprzętu: przełącz dowolny master w tryb demo, a aplikacja generuje realistyczne dane czujników (temperatura, ciśnienie, przepływ, przełącznik), dzięki czemu możesz poznać pełne doświadczenie zanim podłączysz prawdziwy sprzęt.
Buduj na swoich danych
Dołączona tablica aplikacji daje natychmiastowy przegląd napływających danych. Dla dostosowanych prezentacji buduj niestandardowe panele, które wyświetlają Twoje pomiary IO-Link obok danych z innych aplikacji, odpytuj je przez Data Backend i użyj aplikacji Alarmy do monitorowania zebranych wartości w czasie rzeczywistym z powiadomieniami SMS lub e-mail. Aby uruchomić urządzenia i zainstalować aplikację, zobacz Zarządzanie urządzeniami i Zarządzanie aplikacjami.