Najnowsze artykuły
Technologie RFID i EPC | RFID Middleware – wprowadzenie
363
post-template-default,single,single-post,postid-363,single-format-standard,ajax_fade,page_not_loaded,smooth_scroll,,qode-theme-ver-1.4.1,wpb-js-composer js-comp-ver-4.3.4,vc_responsive

RFID Middleware – wprowadzenie

RFID Middleware – wprowadzenie

20:54 19 Marzec w Middleware

Niniejszy artykuł ma na celu przedstawienie czytelnikom informacji na temat oprogramowania Middleware wykorzystywanego w technologii Rfid. Opisano w nim funkcję, sposób działania, przykłady wykorzystania oraz przedstawiono głównych producentów omawianego oprogramowania.

 

1. Czym jest Middleware?

Middleware jest to oprogramowanie (czasami rónież sprzęt) komputerowy, którego zadaniem jest łączenie ze sobą dwóch lub więcej aplikacji. Jego celem jest „odcięcie” interfejsów łączonych aplikacji. Dla przykladu wyobraźmy sobie następującą sytuację: z bazy danych korzysta wiele różnych aplikacji klienckich. Zmieniając typ bazy danych na inny zmieniamy również jej intefejs a co za tym idzie zmuszeni jesteśmy do zmian we wszystkich aplikacjach klienckich. Pojęcie middleware zostało wymyślone właśnie po to by zapobiec tego typu sytuacjom. Tutaj aplikacje klienkie interferują nie bezpośrednio z bazą danych lecz konkretnym middleware. Middleware zaś wymienia informację z bazą danych. W przypadku zmian w bazie danych wymagane jest tyko uaktualnienie interfejsu pomiędzy nią a middleware oraz uaktualnienie konwersji danych odbywającą się w middleware. Mamy to doczynienia z tzw. architekturą trójwarstwową, czyli modyfikacją architekturą typu klient-serwer w której za interfejs użytkownika odpowiada właśnie middleware (dodatkowa warstwa).

Z powyższego przykładu możemy wywnioskować, że koniecznością jest dostarczenie dla programistów tworzących aplikacje klienckie API (ang. Application Programming Interface) dla danego middleware. Powinno ono pozostać na przestrzeni czasu niezmienne w jak największym stopniu.

Możemy również wywnioskować, że pojęcie middleware jest silnie związane z sieciami telekomunikacyjnymi (sieci komputerowe, publiczne komutowane sieci telefoniczne, itd.) – aplikacje klienckie oraz serwery do których mają one dostęp poprzez middleware są rozproszone w sieci. Nasuwa się tutaj myśl, że skoro mamy już „łącznik” pomiędzy klientem i serwerem możemy ten fakt wykorzystać do zabezpieczenia naszego serwera przed różnego typu atakami takimi jak na przykład „SQL injection”. Właśnie bezpieczeństwo jest jednym z głównych powodów dla którego middleware ma szerokie zastosowanie przy technologii RFID.

 

 

rysunek 1.
Źródło: http://dyfuzja-wiedzy.ae.wroc.pl

 

2. Potrzeba middleware przy technologiach RFID

Robiąc analogie systemu RFID do systemu trójwarstwowego to czytniki to nasze aplikacje klienckie. To czytniki na podstawie danych odczytanych z tagów pobierają lub zapisują informację do bazy danych. Middleware w systemach RFID powinno spełniać następujące wymagania:

  • Rozpowszechniane danych – informacje odczytane przez czytniki często są wymagane przez wiele aplikacji (serwerów). Powinno tu nastąpić rozróżnienie aplikacji pod względem czasu reakcji na zdarzenie jaki jest wymagany. Dla przykładu aplikacje sterujące fizycznym urządzeniem (np. otwarcie drzwi) powinny otrzymywać dane w pierwszej kolejności. Aplikacje służące tylko do archiwizowania przepływu znaczników w bazie danych mogą dostać informacje w dalszej kolejności,
  • Odczyt i zapis tagów – niektóre tagi posiadają dodatkową pamięć w której możliwe jest przechowywanie dodatkowych informacji (nie tylko identyfikator jak jest to w przypadku najprostszych znaczników). Middleware powinno zapewniać możliwość zapisu i odczytu właśnie z tej dodatkowej pamięci,
  • Zapewnić interfejs czytników – oznacza to dostarczenie sterowników dla jak najszerszego rodzaju czytników tak, aby w przyszłości system mógł być unowocześniany nowocześniejszym sprzętem. Przy stosowaniu różnych czytników potrzebna jest również odpowiednia translacja danych odczytywanych na zunifikowany format,
  • Filtrowanie danych – agregacja i filtrowanie odczytywanych danych tak, aby w jak największym stopniu zminimalizować przepływ danych do serwera. Nie wszystkie aplikacje potrzebują wszystkich danych odczytanych z danego znacznika,
  • Koordynacja czytników – rozpoznawanie przemieszczania się znaczników. W momencie gdy znacznik zaczyna być „widoczny” w zasięgu innego czytnika taka informacja powinna być przekazana do serwera,
  • Monitorowanie systemu – monitorowanie znaczników i czytników w czasie rzeczywistym,
  • Kwestie bezpieczeństwa – zapobieganie różnego rodzaju atakom (np. SQL injection, przepełnienie bufora),
  • Polityka prywatności – w dzisiejszym świecie, kiedy technologia RFID staje się coraz bardziej popularna system RFID powinien posiadać jasno określoną politykę odnośnie tego, w jaki sposób dane są odczytywane, przechowywane i wykorzystywane. Powinno też być jasno określone gdzie i jakiego typu znaczniki RFID można umieszczać.

3. Projektowanie RFID middleware

Zostanie tutaj przedstawiony projekt RFID tak, aby wypełnić wymagania wymienione w poprzedniej sekcji. Jak efektywnie wykorzystać ograniczone pasmo dostępne dla systemu RFID tak, aby spełnić potrzeby systemy jeżeli chodzi o filtrowanie i agregację (zbieranie) danych. Zostaną przedstawione specyficzne modele agregacji i filtrowania tak aby zapobiec „powodzi” danych związaną z elementarnym wykrywaniem znaczników.

 

3.1 Filtrowanie i Agregacja danych

Możemy wyróżnić dwa zasadnicze typy filtrowania danych:

  • Filtrowanie czytników – aplikacja jest w stanie specyfikować danymi z których czytników jest obecnie zainteresowana,
  • Filtrowanie identyfikatorów i/lub danych – już na poziomie middleware informację o nieinteresujących znacznikach są odrzuca i nie poddawane dalszej obróbce.

Oraz cztery typy agregacji danych:

  • Wejść i wyjść – odnotowane zostaje zarówno wejście w zakres czytnika jak i wyjście z niego. Pozwala to na lepsze oszacowanie ścieżki i czasu poruszania się przedmiotu,
  • Ilościowa – czasami aplikacji może wymagać tylko informację o ilości przedmiotów danego typu pomijając informacje o każdym z nich z osobna,
  • Mijania – kiedy oznakowany obiekt mija bramkę aplikacja dostaje informację o przejściu przez bramkę, pomija się informacje o czasach pojawienia się i zniknięcia w zakresie czytnika. Stosuje się raczej czytniki o nie dużym zasięgu,
  • Wirtualne czytniki – kiedy aplikacja nie rozróżnia czytników pomiędzy sobą, zsumowana przestrzeń „widzenia” czytników jest postrzegana przez aplikację jako jedność.

Powyższe agregacje stosuje się aby uzyskać bardziej znaczące informacje takie jak na przykład pierwsze pojawienie się w zakresie czytnika lub jego późniejsze zniknięcie.

Oba zadania filtrowania i agregacji wykonywane są na poziomie sprzętu i oprogramowania middleware.


3.2 Przesyłanie wiadomości

Dla rozmaitego zbioru aplikacji, które korzystają z przechwyconych danych RFID oraz przy czytnikach posiadających ograniczenia sieciowe właściwym jest middleware bazujące na zdarzeniach. Czytniki RFID generują zdarzenia dostarczając je do systemu przesyłania (ang. Messaging Server) wiadomości. Dalej system przesyłania wiadomości staje się odpowiedzialny za rozesłanie wiadomości do zamierzonych odbiorców (aplikacji końcowych, baz danych). W koncepcji subskrybent/wydawca czytniki nie muszą „pamiętać” które aplikacje potrzebują danych informacji. W ten sam sposób aplikacja nie musi posiadać bezpośredniej komunikacji z poszczególnymi czytnikami. Informuje ona tylko Messaging Server o tym, jakie informacje są przez nią wymagane i to właśnie tutaj odbywa się omówione wcześniej filtrowanie.

Dodatkowo możemy spotkać się z tzw. Subscription feedback mechanizm. Podczas gdy rozłączenie mechanizmów zdarzeń czytników od zdarzeń aplikacji końcowych jest pożądane stosuję się czasami metody pozwalające poinformować już same czytniki czy dana aplikacja zainteresowana jest konkretnymi danymi (lub konkretnym czytnikiem). Pozwala to na wstępną filtrację już na poziomie samych czytników (na przykład poprzez wyłączenie niepożądanych czytników lub zwiększenie częstotliwości próbkowania). W przypadku braku takiego mechanizmu i czytniki są niezależne od potrzeb aplikacji może ucierpieć jakość otrzymywanych danych. Może zdarzyć się na przykład sytuacja, kiedy źle skonfigurowany czytnik będzie odczytywał wszystkie tagi lecz przy małej częstotliwości próbkowanie będzie omijał szybko poruszające się obiekty które być może są w centrum zainteresowania aplikacji. Innymi słowy jest to mechanizm pozwalający aplikacji poprzez middleware kontrolować konkretne czytniki.

 

Główni producenci middleware

rysunek 2.
Źródło: http://dyfuzja-wiedzy.ae.wroc.pl

 

Przykłady komercyjnych dostawców oprogramowania middleware.

 

Do łączenia systemów IT z urządzeniami auto ID, zarówno terminalami mobilnymi, jak i urządzeniami peryferyjnymi.

 

 

 

W skrócie:

  • Udostępnia logikę biznesową systemów klasy ERP, MRP II oraz SCM (w tym WMS) na urządzeniach przenośnych (on/off-line),
  • Integruje urządzenia mobilne i peryferyjne z systemami nadrzędnymi oraz zarządza nimi pod kątem spójności konfiguracji i oprogramowania,
  • Zarządza komunikacją przy założeniu dowolności doboru medium i protokołu,
  • Zbiera i udostępnia bardzo szczegółowe dane dotyczące operacji na urządzeniach powiązanych z obsługiwanym procesem logistycznym,
  • Wykorzystuje zarówno kody kreskowe jak i RFID, Agilero™ integruje urządzenia mobilne i auto ID niezależnie od typu i marki.

Cały opis znajduje się tutaj.

 

Wykorzystywane przez BNC sp. z o.o. systemy MIDDLEWARE składają się z trzech niezależnych modułów:

 

  • Moduł importu, który odpowiada za połączenia z systemami źródłowymi, import danych oraz rozpoznawanie zmian w systemach źródłowych,
  • Moduł translacji, który odpowiada za przetłumaczenie danych z postaci źródłowej do zadanej postaci docelowej (z zastosowaniem prostych operacji na danych oraz łączeniem danych z wielu źródeł),
  • Moduł edycji, który umożliwia modyfikację pojedynczych rekordów przez użytkownika oraz import i eksport danych do plików arkuszy kalkulacyjnych i tekstowych.

Cały opis znajduje się tutaj.


4. Zapis i odczyt z tagów RFID

RFID middleware powinno umożliwić zapis do tagów RFID równie prostym jak zapis na dysk twardy komputera. Do zapisu w Tagach RFID służy serwis zwany virtual tag memory sernice (VTMS). Oddziela on aplikację od poszczególnych pamięci w RFID (różne rozmiary pamięci, różne organizacja pamięci, ograniczony zakres praw do zapisu). Aplikacja po prostu dostarcza do serwisu dane do zapisu wraz z zakresem tagów do których informacja powinna być zapisana. Jeżeli operacja zapisu się powiedzie serwis potwierdza to do aplikacji i tworzy kopię zapasową danych w pamięci wirtualnej. Jeżeli później aplikacja chce odczytać dane z tagów które są poza zakresem serwis może odczytać je właśnie z kopii bezpieczeństwa. Jeżeli zapis do tagów nie powiedzie się (np. chwilowy brak zasilania czytników) dane zostaną zapisane do VTMS ze statusem „otwarte” co oznacza że serwis ponowi próbę zapisu w przyszłości. Jeżeli w znacznikach nie ma odpowiedniej ilości wolnego miejsca dane zostaną również zapisane do pamięci wirtualnej, o fakcie tym zostanie poinformowana aplikacja. Można skonfigurować system tak aby przy dostępności danego znacznika w polu czytnika odczyt następował z jego pamięci wirtualne w serwisie VTMS. Pozwala to na przyspieszenie całej operacji.

 

 


Źródło:

„RFID middleware design – addressing application requirements and RFID constraints” – Christian Floerkemeier and Matthias Lampe

Data dostępności: 20.02.2009r.

http://www.logismarket.pl/logisys/middleware/920517045-894608923-p.html

Data dostępności: 20.02.2009r.

http://www.bnc.pl/middleware_pl_more.asp

 

Oceń ten artykuł