Synchronizowanie czasu kontrolera PACSystems do urządzeń HMI SYNCHRONIZOWANIE CZASU KONTROLERA DO OPROGRAMOWANIA INTOUCH, PANELU OPERATORSKIEGO QUICKPANEL+ LUB ASTRAADA HMI Informacje ogólne Kontrolery PACSystems mają wbudowany zegar kalendarzowy jako układ elektroniczny działający niezależnie od głównego procesora. Aby mógł pracować również po wyłączeniu zasilania kontrolera, należy zapewnić mu podtrzymanie bateryjne lub akumulatorowe (zależnie od użytej jednostki centralnej). W niniejszym informatorze opisano gotowe bloki funkcyjne służące do odczytu i zapisu zegara, które formatem danych zostały dopasowane do paneli operatorskich serii ASTRAADA HMI. Mogą być z powodzeniem stosowane również do współpracy z oprogramowaniem InTouch lub panelami serii Quickpanel+. Odczyt zegara z kontrolera PACSystems Blok funkcyjny CLK_READ realizuje cykliczny odczyt zegara co 1 sekundę. Każdy odczyt zakończony powodzeniem sygnalizowany jest impulsem na wyjściu OK tego bloku. Odczytana data i czas dostępne są na dwa sposoby: 1. Jako blok siedmiu rejestrów, formatem dostosowany do paneli ASTRAADA HMI. 2. Alternatywnie jako siedem osobnych wyjść do wykorzystania w programie (np. załączania lub wyłączania urządzeń o określonej porze). Opis wejść bloku funkcyjnego Enable BOOL Sygnał załączający blok do działania. Załączenie tego wejścia na stałe spowoduje odczyt zegara co 1 sekundę. Jest to jedyne wejście tego bloku funkcyjnego. Opis wyjść bloku funkcyjnego OK BOOL Sygnał potwierdzający poprawny odczyt zegara. Generowany jest w takt odczytu, a więc co 1 sekundę. Jest to górne wyjście bloku funkcyjnego. blk Tablica 7 rejestrów INT Siedem rejestrów zawierających datę i czas wg formatu podanego w dalszej części opracowania. 1
SEC INT Odczytana sekunda MIN INT Odczytana minuta HR INT Odczytana godzina DAY INT Odczytany dzień miesiąca MON INT Odczytany miesiąc YR INT Odczytany rok DW INT Odczytany dzień tygodnia Format danych oraz kolejność są dopasowane do panelu ASTRAADA HMI. W panelu należy wybrać 7 binary words jako format dla Time/date Data Type. Blok odczytuje czas co 1 sekundę. Wyjście bloku funkcyjnego blk jest przeznaczone do odczytu przez panel ASTRAADA HMI. Do tego wyjścia należy podłączyć zmienną tablicową składającą się z siedmiu rejestrów INT. Ich znaczenie jest następujące: Numer rejestru Opis Rejestr[0] sekunda Rejestr[1] minuta Rejestr[2] godzina Rejestr[3] dzień Rejestr[4] miesiąc Rejestr[5] rok Rejestr[6] dzień tygodnia (0-niedziela, 1-poniedziałek, 2-wtorek, itd.). Blok ma również dodatkowe wyjścia do opcjonalnego wykorzystania. Są to osobne wyjścia zawierające informacje o czasie: SEC, MIN, HR, DAY, MON, YR, DW. Można je używać np. do budowania logiki w programie sterującym. Poprawne odczytanie zegara sterownika sygnalizowane jest impulsem na wyjściu tego bloku. Jest to impuls co sekundę, z racji tego, że zegar jest odczytywany co 1 sekundę. Format roku w grupie rejestrów blk jest 4-cyfrowy (np. 2017), a na wyjściu YR jest 2-cyfrowy (np. 17). 2
Ustawianie zegara w PACSystems Blok funkcyjny CLK_WRITE ustawia czas w kontrolerze w trzech przypadkach: 1. Automatycznie - o godzinie 3:00:01. Blok śledzi czas otrzymywany na wejście blk (czas może pochodzić z panelu ASTRAADA HMI, panelu Quickpanel+ lub z oprogramowania InTouch). W momencie stwierdzenia, że otrzymany czas zawiera godzinę 3:00:01, blok wykona zapis takiej nastawy do zegara kontrolera PACSystems. Czas zostanie zapisany włącznie z datą, która znajduje się aktualnie w rejestrach wejścia blk. 2. Na żądanie - zboczem narastającym na wejściu set. Powoduje to ustawienie zegara nastawami wg danych dostarczonych na wejście blk. 3. Na żądanie - zboczem narastającym na wejściu H3. Powoduje to ustawienie godziny 3:00:01. W tym przypadku należy wcześniej na wejście blk wprowadzić żądaną datę (ręcznie lub z ostatniego odczytu funkcją CLK_READ). W tym sposobie ustawiania zegara wystarczy jeden bit, dlatego używany jest on wtedy, gdy ilość danych wymienianych z kontrolerem ma być zminimalizowana (np. aby oszczędzać ilość licencjonowanych zmiennych w wizualizacji). Opis wejść bloku funkcyjnego Enable BOOL Sygnał załączający blok do działania. Załączenie tego wejścia spowoduje uaktywnienie mechanizmu śledzenia godziny 3:00:00 na wejściu blk oraz gotowość na zadziałanie wejść set i H3. Jest to górne wejście bloku funkcyjnego. Opis wyjść bloku funkcyjnego OK BOOL Sygnał potwierdzający poprawny zapis zegara. Generowany jest w momencie zapisu, który, zgodnie z wcześniejszym opisem, jest możliwy na 3 sposoby. Jest to górne wyjście bloku funkcyjnego. Jeżeli wprowadzony czas lub data nie będą poprawne (np. miesiąc 13), to operacja zapisu zegara zostanie anulowana, a na wyjściu OK nie będzie sygnału potwierdzającego wykonanie operacji zapisu. blk Tablica 7 rejestrów INT Siedem rejestrów zawierających datę i czas wg formatu podanego w dalszej części opracowania. set BOOL Wejście wyzwalające zapis zegara na żądanie. Zapisywane są wtedy nastawy przygotowane na wejściu blk. H3 BOOL Wejście wyzwalające zapis zegara na żądanie. Zapisywana jest godzina 3:00:01 i data. Datę należy przygotować wcześniej na wejściu blk. SEC INT Sekunda z momentu ostatniego zapisu czasu i daty 3
MIN INT Minuta z momentu ostatniego zapisu czasu i daty HR INT Godzina z momentu ostatniego zapisu czasu i daty DAY INT Dzień miesiąca z momentu ostatniego zapisu czasu i daty MON INT Miesiąc z momentu ostatniego zapisu czasu i daty YR INT Rok z momentu ostatniego zapisu czasu i daty (informację tą można traktować jako potwierdzenie zapisu) DW INT Dzień tygodnia z momentu ostatniego zapisu czasu i daty Format danych przygotowanych na wejście blk winien być następujący: Numer rejestru Opis Rejestr[0] sekunda Rejestr[1] minuta Rejestr[2] godzina Rejestr[3] dzień miesiąca Rejestr[4] miesiąc Rejestr[5] rok Rejestr[6] dzień tygodnia (0-niedziela, 1-poniedziałek, 2-wtorek, itd.). Format ten jest dopasowany do panelu ASTRAADA HMI. W panelu należy wybrać 7 binary words jako format dla Time/date Data Type. W przypadku poprawnego ustawienia zegara w kontrolerze PACSystems (a więc m.in. po spełnieniu warunku podania poprawnego czasu i daty na wejście blk), blok funkcyjny potwierdza ten fakt impulsem na wyjściu OK. W takiej sytuacji na wyjścia bloku kopiowane są data i czas ostatnio ustawione w sterowniku: SEC sekunda z momentu ostatniej nastawy czasu, MIN minuta z momentu ostatniej nastawy czasu, HR godzina z momentu ostatniej nastawy czasu, DAY dzień miesiąca z momentu ostatniej nastawy czasu, MON miesiąc z momentu ostatniej nastawy czasu, YR rok z momentu ostatniej nastawy czasu, DW dzień tygodnia ostatniej nastawy czasu. 4
W firmie ASTOR dostępne są przykładowe projekty zawierające wywołanie opisywanych bloków funkcyjnych oraz biblioteki z tymi blokami. 5