Zastąp RSLogix 500 SCP w Studio 5000: AOI + skalowanie modułu
Zastąp instrukcję RSLogix 500 SCP w Studio 5000 Logix Designer. Porównaj skalowanie jednostek inżynieryjnych modułu I/O 1756, pobieranie AOI i niestandardowe...
Instrukcja SCP (Scale with Parameters) jest znana każdemu programiście RSLogix 500. Studio 5000 Logix Designer nie udostępnia gotowej instrukcji SCP na pasku narzędzi instrukcji. Tę samą mapę liniową trzeba odtworzyć za pomocą skalowania do jednostek inżynierskich modułu, przykładowego AOI Scale firmy Rockwell albo lokalnej sekwencji AOI/CPT w projekcie. Zakłady, które po prostu pozostawiają surowe wartości zliczeń bez skalowania do czasu „później”, odkrywają, że później tagi PID, HMI i rejestratora danych nie są zgodne pod względem jednostek inżynierskich.
Y = ((X − Xmin) ÷ (Xmax − Xmin)) × (Ymax − Ymin) + Ymin — a wynik należy ograniczyć tak, jak robiła to instrukcja SCP.
Zachowanie ograniczania wartości
Instrukcja SCP w RSLogix 500 utrzymuje wyniki na poziomie Ymin/Ymax, gdy surowe wejście wykracza poza skonfigurowany zakres. Każdy zamiennik w Logix musi działać tak samo, w przeciwnym razie usterki czujników będą wprowadzać do układu sterowania wartości spoza zakresu. Należy stosować obliczenia REAL od początku do końca; dzielenie całkowitoliczbowe obcina rozdzielczość poniżej najmłodszego bitu, której potrzebują pętle PID.
Rozwiązanie 1: jednostki inżynierskie modułu
W przypadku stałych zakresów przetworników włącz jednostki inżynierskie na kanale analogowym (1756-IF8/IF16, 1769-IF4/IF8, 5069-IF8 i podobnych). Wprowadź dolną/górną wartość sygnału oraz dolną/górną wartość inżynierską, pobierz konfigurację do sterownika i korzystaj bezpośrednio ze skalowanego tagu REAL. Nie są potrzebne żadne obliczenia w drabince. Ograniczenie: zakres jest stały od momentu pobrania konfiguracji — zmiana zakresu z poziomu HMI w czasie pracy wymaga AOI.
| Rodzina modułów | Skalowanie EU | Uwagi |
|---|---|---|
| 1756-IF8 / IF16 | Dla każdego kanału | Preferowane rozwiązanie w ControlLogix |
| 1769-IF4 / IF8 | Dla każdego kanału | CompactLogix |
| 5069-IF8 | Dla każdego kanału | Studio 5000 v28+ |
Rozwiązanie 2: import SCL_AOI
Pobierz przykładowe AOI Scale (Answer ID 52412 / pakiety klasy SCL_AOI.L5X), zaimportuj je w sekcji Add-On Instructions i umieść instrukcję w szczeblu. Przypisz parametry Input, InputMin/Max, ScaledMin/Max oraz ScaledValue. Ponieważ parametry są tagami, pulpity HMI mogą zmieniać zakresy online — jest to częste wymaganie w terenie, gdy zakresy zbiorników zmienia się bez pobierania nowej konfiguracji.
Rozwiązanie 3: własne AOI lub ST
IF (InMax - InMin) = 0.0 THEN ScaledValue := OutMin; ELSE ScaledValue := ((InputValue - InMin) / (InMax - InMin)) * (OutMax - OutMin) + OutMin; IF ScaledValue > OutMax THEN ScaledValue := OutMax; ELSIF ScaledValue < OutMin THEN ScaledValue := OutMin; END_IF; END_IF;
Odpowiedniki w drabince wykorzystują instrukcje SUB/DIV/MUL/ADD oraz gałęzie ograniczające GRT/LES. Należy zabezpieczyć dzielenie przez zero, gdy InMax jest równe InMin. Udostępnij InMin/InMax/OutMin/OutMax z zewnętrznym dostępem do odczytu/zapisu, aby HMI mogło zatwierdzać zmiany.
Mapowanie parametrów z SCP
| SCP w RSLogix 500 | AOI w Studio 5000 |
|---|---|
| Input (INT/DINT) | Input (preferowany REAL) |
| InputMin / InputMax | InMin / InMax |
| ScaledMin / ScaledMax | OutMin / OutMax |
| Wbudowane ograniczanie | Jawna logika ograniczania |
Procedura zmiany zakresu w czasie pracy z poziomu HMI
Gdy operatorzy muszą zmieniać zakresy inżynierskie bez pobierania nowej konfiguracji, przypisz numeryczne pola wejściowe do tagów InMin, InMax, OutMin i OutMax AOI, a zapis uzależnij od chwilowego bitu potwierdzenia. Fizycznie realistyczne limity HMI (na przykład surowe zliczenia 0–32767 oraz jednostki inżynierskie mieszczące się w zakresie możliwości przetwornika) zapobiegają przypadkowym wpisom odwracającym zakres. Udokumentuj domyślne zakresy fabryczne na pulpicie operatorskim, aby błędną zmianę można było cofnąć bez otwierania Studio 5000. Jeśli zamiast AOI użyto skalowania EU modułu, zaplanuj kontrolowane pobranie nowej konfiguracji za każdym razem, gdy trzeba zmienić zakres inżynierski — w większości modułów nie ma bezpiecznej możliwości zmiany tych właściwości kanału online.
Kontrole podczas uruchomienia
Wymuś wartość Input na poziomie minimum, w połowie zakresu i maksimum; potwierdź ScaledValue. Wymuś wartość powyżej Xmax i potwierdź ograniczenie do górnej granicy. Przetestuj odwrotne zakresy inżynierskie (OutMin > OutMax), jeśli korzystała z nich starsza instrukcja SCP. Na ekranach HMI służących do zmiany zakresu wymagaj InMax > InMin oraz chwilowego zatwierdzenia, aby częściowe edycje nie pozostawiły mianownika równego zero. Migrację szczebli SCP należy przeprowadzać z zastosowaniem takiej samej kontroli zmian jak w przypadku innych konwersji sterowników PLC i PAC Logix.
O autorze
Mark Townsend | Starszy inżynier automatyki – systemy Allen-Bradley
Mark Townsend jest starszym inżynierem automatyki z ponad 18-letnim doświadczeniem w pracy z platformami Allen-Bradley, obejmującym ControlLogix, CompactLogix i starsze sterowniki SLC-500. Na co dzień zajmuje się programowaniem logiki w RSLogix / Studio 5000 oraz uruchamianiem interfejsów HMI FactoryTalk View w starzejących się i mieszanych środowiskach.