PID Autotuner: strojenie regulatorów PID w instalacjach HVAC

Program mierzy odpowiedź obiektu, wylicza nastawy PID i zapisuje je do sterownika przez BACnet/IP, Saia Ether-S-Bus albo Modbus. Przed zapisem robi kopię poprzednich nastaw, a po zapisie je weryfikuje.

PID Autotuner w kroku „Dane”: wykres wartości zadanej, mierzonej i sygnału wyjściowego regulatora podczas testu skokowego
PID Autotuner w kroku „Dane”: wykres wartości zadanej, mierzonej i sygnału wyjściowego regulatora podczas testu skokowego.

Do czego służy PID Autotuner

Dla automatyków, którzy mają pętlę regulacji pracującą źle (kołysanie, powolne dochodzenie do wartości zadanej) i chcą policzyć nastawy z rzeczywistej odpowiedzi obiektu, a nie dobierać je metodą prób i błędów.

ChceszJak to robi program
Nastroić pętlę na podstawie testu skokowegoProgram sam zmienia wyjście regulatora o zadany skok, rejestruje odpowiedź i po teście przywraca poprzedni tryb i wyjście. Możesz ustawić limity wartości mierzonej, których przekroczenie przerywa test.
Wyznaczyć nastawy bez ruszania procesuDane do modelu można wziąć z widocznego zakresu trendu albo z zapisanego pliku CSV. Wtedy nic się nie porusza.
Porównać nastawy obecne z proponowanymiModel obiektu FOPDT lub IPDT z miarami dopasowania R² i NRMSE, nastawy obok siebie i symulowane porównanie odpowiedzi.
Dobrać charakter regulacjiMetody SIMC, Lambda i AMIGO, wariant PI albo PID i suwak od zachowawczego do agresywnego.
Bezpiecznie zapisać i w razie potrzeby cofnąćKopia poprzednich nastaw, odczyt kontrolny, automatyczne wycofanie przy niezgodności i przycisk „Przywróć poprzednie”.
Stroić sterownik Saia albo urządzenie ModbusTen sam proces przez Saia Ether-S-Bus i Modbus, z adresowaniem punktów opisanym poniżej.

Funkcje

Cztery kroki strojenia

Połączenie (protokół, punkty pętli, formularz parametrów sterownika, test połączenia), dane, propozycja i zapis. Program przechodzi do kolejnego kroku sam, gdy ma to, czego potrzebuje.

Narzędzia wokół strojenia

Przeglądarka BACnet (wykrywanie, drzewo obiektów, właściwości, zapis, COV, harmonogramy, kalendarze, eksport EDE, migawki), alarmy, trendy, edytor grafik, analiza oznaczeń ISO 81346, eksplorator pamięci Saia i dziennik diagnostyczny.

Adresowanie punktów

Punkty pętli podajesz zapisem zależnym od protokołu. W Modbus tabelę trzeba podać jawnie (hr, ir, co, di), bo po samym adresie nie da się odróżnić rejestru holding od input, a odczyt z niewłaściwej tabeli albo kończy się błędem, albo zwraca wiarygodną liczbę z zupełnie innego miejsca.

BACnet   AI:1   AV:3   AO:2   BV:4   LOOP:1/proportional-constant
Saia     R100   R100:FFP   R205:INT*0.1   F12
Modbus   hr:100:F32   hr:40:I16*0.1   co:12   ir:7:U32/CDAB   hr:7:F32@3

Bezpieczeństwo zapisu do urządzeń

Program zapisuje do automatyki budynkowej, dlatego te zabezpieczenia działają w całym programie i nie da się ich wyłączyć:

  • Każdy zapis wymaga potwierdzenia w oknie, które podaje, co i w którym sterowniku się zmienia.
  • Po zapisie wartość jest odczytywana z powrotem; przy niezgodności zapis nastaw PID jest automatycznie wycofywany.
  • Każdy zapis trafia do audit.log z czasem, użytkownikiem, sterownikiem, adresem i wartością.
  • Test skokowy przywraca poprzedni tryb i wyjście regulatora po zakończeniu, przerwaniu i błędzie.
  • Tryb tylko do odczytu blokuje każdy zapis już na poziomie transportu.
  • Wejścia BACnet, wejścia Saia oraz rejestry input i wejścia dyskretne Modbus są tylko do odczytu.

Przed uruchomieniem na prawdziwej instalacji. Test skokowy porusza rzeczywistym procesem. Uruchamiaj go tylko tam, gdzie instalacja może bezpiecznie pracować bez regulacji przez czas testu, i przed startem ustaw limity wartości mierzonej. Program nie powstrzyma też programu sterownika przed późniejszym nadpisaniem wartości, a okno potwierdzenia o tym informuje.

Instalacja i wymagania

Program działa na Windows x64. Środowisko .NET jest w pakiecie, więc nie trzeba instalować nic więcej. Przy pierwszym uruchomieniu system zapyta o dostęp do zapory (UDP 47808); zezwól dla sieci, w której są urządzenia. Cichą instalację wykonasz poleceniem msiexec /i <plik>.msi /qn.

Wersja przenośna niczego nie zapisuje w profilu użytkownika, dopóki obok programu leży plik portable.txt, więc działa z pendrive’a. Pakiety nie są jeszcze podpisane cyfrowo, więc Windows SmartScreen ostrzeże o nieznanym wydawcy. Interfejs jest po polsku, angielsku lub niemiecku, a F1 otwiera wbudowaną instrukcję.

Znane ograniczenia tej wersji

To wersja beta: kompletna na tyle, by używać jej na rzeczywistym sprzęcie, ale bez sezonu codziennej pracy za sobą.

  • Eksplorator Saia testowano na symulowanym PCD i obu formatach symboli PG5, jeszcze nie na fizycznym sterowniku.
  • Timerów, liczników, bloków DB i tekstów Saia nie da się odczytać. Kody poleceń S-Bus trzeba najpierw potwierdzić w dokumentacji, a nie zgadywać.
  • Punkty Modbus wpisuje się ręcznie; nie ma dla nich okna wyboru, jak dla BACnet i Saia.
  • Strojenie przez Modbus przetestowano na symulatorze slave, jeszcze nie na fizycznym urządzeniu.
  • Moduł grafik jest utrzymywany, ale nierozwijany, i nie obsługuje obrazu tła.

Najczęstsze pytania o PID Autotuner

Jak działa PID Autotuner?

Program zbiera odpowiedź obiektu na zmianę wyjścia regulatora (test skokowy, trend lub plik CSV), dopasowuje model FOPDT albo IPDT, wylicza nastawy wybraną metodą (SIMC, Lambda lub AMIGO) i po potwierdzeniu zapisuje je do sterownika z kopią poprzednich nastaw.

Czy test skokowy jest bezpieczny dla instalacji?

Test porusza rzeczywistym procesem, więc uruchamiaj go tylko tam, gdzie instalacja może bezpiecznie pracować bez regulacji przez czas testu, i ustaw limity wartości mierzonej przed startem. Program przywraca poprzedni tryb i wyjście regulatora po zakończeniu testu, po przerwaniu i po błędzie.

Jakie protokoły obsługuje strojenie?

BACnet/IP, Saia Ether-S-Bus i Modbus. Strojenie przez Modbus przetestowano end-to-end na symulatorze slave, a eksplorator Saia na symulowanym sterowniku PCD; testów na fizycznych urządzeniach tych dwóch ścieżek jeszcze nie ma.

Co się stanie, jeśli nowe nastawy będą złe?

Przed zapisem program robi kopię poprzednich nastaw, a po zapisie odczytuje je kontrolnie. Przy niezgodności automatycznie wycofuje zapis nastaw PID, a przycisk „Przywróć poprzednie” cofa je także po fakcie. Każdy zapis trafia do audit.log.

Czy mogę stroić bez poruszania procesu?

Tak. Model można wyznaczyć z widocznego zakresu trendu albo z zapisanego pliku CSV. Wtedy program niczego nie zmienia na wyjściu regulatora.

Czy program jest darmowy?

Tak, na licencji MIT. Działa na Windows x64, środowisko .NET jest w pakiecie. Dostępny jest instalator MSI i wersja przenośna ZIP.

Zgłaszanie błędów i licencja

Opisz, co zrobiono, co się stało i czego się spodziewano, i dołącz plik dziennika (moduł Log ma przycisk „Otwórz folder dziennika”). Nowe zgłoszenie na GitHubie albo wiadomość na [email protected].

Licencja MIT. Kod źródłowy znajduje się w prywatnym repozytorium, a wydane programy zawierają wyłącznie biblioteki na licencjach MIT. Oprogramowanie jest udostępniane bez jakiejkolwiek gwarancji; za instalację, do której je podłączasz, odpowiadasz Ty.