Dodanie nowego licznika i komunikacja PVD
Wstęp
Dokument opisuje mechanizm i sposób akwizycji danych z liczników energii elektrycznej. Wykorzystujemy do tego protokół energetyczny IEC-62056 oraz komunikację z licznikami energii za pomocą brzegowych urządzeń typu edge-computing wyposażonych w aplikację PVD.
Ten samouczek pokazuje kroki i sposób uzyskania efektu w postaci pobierania danych z zewnętrznego urządzenia do systemu. Za pomocą aplikacji PVD dedykowanej na systemy Windows/Linux ale też urządzenia typu embedded computing/edge computing mamy możliwość wdrożenia tego rozwiązania dla tego typu urządzeń ale również dla innych protokołów i typów urządzeń. Mechanizm pozostanie taki sam, zmieni się jedynie konfiguracja parametrów urządzeń oraz aplikacji PVD.
Dokumentacja aplikacji PVD znajduje się w sekcji instrukcji użytkownika. Zawiera ona wszystkie informacje niezbędne do uruchomienia i wdrożenia tej aplikacji na obsługiwanych architekturach. |
Zadanie: Do systemu akwizycji danych został podłączony nowy licznik energii elektrycznej. Jest to licznik tego samego typu, co już istniejące i został on podłączony do tej samej magistrali co kilka innych liczników. Komunikacja z urządzeniem za pomocą magistrali RS-485 oraz protokołu energetycznego IEC-62056. Należy podłączyć urządzenie do systemu tak aby w aplikacji pojawiły się pomiary tego urządzenia i można je było wykorzystać w analityce danych oraz w pracy systemu AMAGE.
Definicja licznika oraz projekt podłączenia
Licznik w tym przypadku to licznik firmy POZYTON o typu sEAB. Każdy licznik identyfikowalny jest za pomocą swojego numeru seryjnego. Na zdjęciu widzimy ten licznik. Zaznaczono typ urządzenia, dokładną konfigurację oraz numer seryjny urządzenia.

Licznik został wpięty w istniejącą infrastrukturę pomiarową. Licznik został zamontowany na tablicy licznikowej TL-4 oraz wpięty w magistralę RS-485 zgodnie ze schematem poniższym.

Z tego co widzimy został on podłączony obok liczników TL4-* i zgodnie z kolejną numeracją powinien otrzymać identyfikator TL4-P7. Potrzebujemy dodać taki licznik do systemu.
Dodanie licznika w systemie
Uruchamiamy aplikację AMAGE (logujemy się przez przeglądarkę internetową). Przechodzimy do widoku struktury zasobów. W tym przypadku wyświetlamy listę grup elementów i przechodzimy w tej strukturze do grupy liczników z tablicy TL4. Filtrujemy widok i otrzymujemy widok aktualnych liczników tam zamontowanych:

Na widoku, dialog filtrów został wyświetlony i zadokowany na stałe w widoku. Jak to zrobić opisano w głównej instrukcji użytkownika. Filtr dostępny jest w panelu wysuwanym z tekstem Filtr
|
Podglądając aktualny licznik, widzimy jego parametry podstawowe (numer seryjny, typ itp.) oraz parametry definiowalne dla typu specyficzne dla tego modelu licznika (sEAB produkcji POZYTON).

Przechodząc do widoku typu elementu definiującego ten zasób widzimy parametry, które posiadają wszystkie zasoby tego typu. Na rysunku zaznaczono widok dowolnego parametru (tryb edycji typu elementu) oraz właściwości danego parametru. W informacjach dodatkowych zawarto identyfikator parametru (0.8.0) odpowiadający kodowi zapytania dla protokołu IEC-62056.

Wracamy do listy zasobów i wybieramy dodanie nowego zasobu. Automatycznie zostana wybrana odpowiednia grupa elementów (liczniki na TL4). Wybieramy typ urządzenia - tutaj typ sEAB
.

Następnie definiujemy dane podstawowe licznika. Jego numer seryjny itp.

Dla porządku dodatkowo generujemy numer identyfikatora, który może nam posłużyć do wydruku etykiety z kodem QR/Datamatrix służący do szybkiej identyfikacji przez urządzenia mobilne.

Wydruk etykiet i ich personalizację opisano w osobnym dokumencie/samouczku dotyczącym etykiet i projektowania raportów. |
W wyniku tej akcji otrzymujemy nowy licznik energii elektrycznej dostępny w systemie. Posiada on wszystkie parametry, które pochodzą z danego typu elementów.

Teraz pozostaje nam skonfigurowanie aplikacji PVD, aby zaczęła odczytywać parametry tego licznika energii i przesyłała je do głównego systemu do odpowiednich parametrów widocznych w szczegółach danego urządzenia.
Konfiguracja komunikacji PVD
Do włączenia komunikacji w aplikacji PVD potrzebujemy mieć informacje co będziemy odczytywać (jakie urządzenie, jakie właściwości np. rejestry) oraz gdzie odczytane wartości będziemy zapisywać w głównym systemie.
W widoku szczegółów zasobu wybieramy akcję z menu kontekstowego dotyczącą wygenerowania mapowania parametrów w formacie JSON.

Wynikiem jest plik, który zawiera pary - nazwa parametru oraz kod UUID parametru. Kod UUID jest unikalnym identyfikatorem danego parametru. Jest globalnie (na całym Świecie) unikalnym kodem, co pozwala na jednoznaczność w określeniu tych wartości.

Posiadając już takie mapowanie przechodzimy do konfiguracji aplikacji PVD. Aplikacja ta posiada konfigurację tzw. dostawcy IEC-62056-21. Konfiguracja jest w formacie JSON i zawiera informacje o portach szeregowych do komunikacji z licznikami oraz parametry licznika.
W tym przypadku posiadamy już istniejącą konfigurację. Szukamy w takim razie w pliku istniejący już licznik TL4-P6. Widzimy jego konfigurację oraz wszystkie dane. Skorzystamy z tych danych aby skopiować i utworzyć nową konfigurację dla nowego licznika.

Szczegółowy opis konfiguracji z przykładami dostępny jest w instrukcji użytkownika aplikacji PVD. |
Aby wykorzystać już zdefiniowane dane, które pobraliśmy z systemu do formatu zgodnego z PVD musimy pozbyć się nazw własnych parametrów i zostawić w pierwszym elemencie każdej pary tylko identyfikator parametru zgodnie z protokołem IEC-62056-21.

Po szczegóły parametrów, ich własności oraz nazwy należy się odnieść do dokumentacji protokołu komunikacyjnego wybranego urządzenia. |
Tak utworzone mapowanie: <parametr IEC-62056-21> → <kod UUID parametru w systemie> wklejamy do mapowania licznika.
Zgodnie z projektem systemu do obwodu pomiarowego zastosowano przekładnik prądowy w zakresie 750/5A. Widoczne to jest w dokumentacji. Aby odpowiednio przeskalować pomiary licznika do wyników rzeczywistych (a nie mierzonych po stronie wtórnej przekładnika) musimy wymnożyć parametry liczbowe przez 150 (750/5). |
Dodatkowo w związku z tym określamy parametr multiplier
na 150. Pozostałe parametry zostają takie same. Otrzymujemy gotowe mapowanie licznika:

Mapowanie takie umieszczamy za licznikiem TL4-P6 w tej samej sekcji protokołu komunikacyjnego i portu (akurat w tym przypadku COM10).

Konfiguracja systemu jest gotowa do testowania i wdrożenia produkcyjnego. Niemniej, aby szybko sprawdzić tylko dany licznik wykonamy kilka modyfikacji (tymczasowych) pliku konfiguracji liczników i PVD.
Testowanie
Aby szybko przetestować komunikację z danym licznikiem zastosujemy małą modyfikację pliku konfiguracji. Robimy to dlatego, że na tej samej magistrali są podłączone inne liczniki a komunikacja po magistrali RS-485 jest sekwencyjna. Musielibyśmy czekać aż wszystkie pozostałe liczniki zostaną odczytana. Więc, w celu testów wyłączamy wszystkie inne magistrale oraz liczniki. Robimy to ustawiając flagi enabled
na false
.

Otrzymujemy gotowy plik do testowania - tylko jedna magistrala włączona i tylko jeden licznik (ten nasz, nowy licznik).
Przystępujemy do testów. Wyłączamy na urządzeniu brzegowym usługę PVD odpowiedzialną za komunikację z tymi licznikami.

Aplikacja PVD może na jednym komputerze brzegowym być uruchamiana wielokrotnie i każda z nich może zajmować się jednym z obszarów komunikacyjnych. |
Wykonujemy kopię aktualnej konfiguracji i zastępujemy ją przygotowaną konfiguracją testową. Prosimy zwrócić uwagę na odpowiednią ścieżkę dostawcy
dla danej instancji PVD.

Dodatkowo zmieniamy odbiorcę
danych. Domyślnie był to system AMAGE i jego interfejs REST, co widać w pliku core-config.json
. Tam mamy włączoną wtyczkę rest
.

Modyfikujemy to i zmieniamy odbiorcę na odbiorcę testowego c-example
. Pozwoli to na nie wysyłanie pomiarów do systemu AMAGE w przypadku poprawnej komunikacji. Czasami wymagana jest weryfikacja pomiarów, zobaczenie czy dobrze określiliśmy parametry i ewentualne skalowania. Zmieniony plik konfiguracji zawiera tylko odbiorcę, który będzie lokalnie w logu aplikacji zapisywał odczytane pomiary.

Pozostali odbiorcy są opisani w dokumentacji PVD. Na przykład eksport do formatu CSV (do wizualizacji/wykresów). Prosimy pamiętać, że odbiorców może być wielu włączonych (tak samo jak dostawców).
|
Uruchamiamy ponownie instancję PVD.

Przechodzimy do katalogu logów aplikacji PVD i weryfikujemy odpowiedni plik logów. Na ekranie widzimy poprawny odczyt z licznika o podanym numerze seryjnym oraz odczytane wartości.

Na ostatnim ekranie numer seryjny (S/N) nie odpowiada początkowemu numerowi z definicji w systemie AMAGE, gdyż licznik ten nie był w danym momencie jeszcze podłączony. Log pokazuje poprawną komunikację z innym licznikiem dla celów pokazowych. |
Podsumowanie
Na tym etapie mamy skonfigurowany licznik energii oraz wprowadzoną konfigurację i wykonane testy. Potwierdziliśmy poprawny odczyt danych z licznika. Ostatnim krokiem pozostaje wyłączenie PVD, zamiana konfiguracji dostawcy IEC na docelową (z włączonymi odpowiednimi licznikami), zmianę odbiorcy na docelowy interfejs REST AMAGE i ponowne uruchomienie PVD. Dane w systemie zostaną zaktualizowane i w historii parametrów danego urządzenia będzie można przeglądać zapisy historyczne.
Zadanie wykonane :)
Howto powstało na bazie wersji systemu 1.17.0.15 (08.2022) oraz przedstawia funkcje, które mogą nie być dostępne w Twoim systemie. Zapytaj AMAGE o udostępnienie tej funkcjonalności. |
Ze względu na ciągły rozwój systemu niektóre ekrany lub pliki konfiguracji mogą wyglądać nieznacznie inaczej, ale zachowają nadal pełną funkcjonalność tutaj opisaną. Nie wpływa to na zasadnicze funkcje opisywane w tym dokumencie. |