Do Projektu iAutomatyka dołączyli:

Publikacja zgłoszona do 🎁 Konkursu iAutomatyka

Rejestracja, SCL, VBA – pomiary sygnałów szybkozmiennych w aplikacjach odlewniczych

738 wyświetleń, autor: mirase609.

Pomiary sygnałów analogowych, szybkozmiennych jeszcze nie tak dawno sprawiały spore trudności. Z takimi problemami spotykali się np. producenci maszyn odlewniczych. Proces odlewania ciśnieniowego polega na wtłoczeniu do zamkniętej formy wtryskowej ciekłego aluminium. Problem na pierwszy rzut oka łatwy do rozwiązania. Wchodząc nieco głębiej w tajniki sztuki odlewnictwa ciśnieniowego temat nieco się komplikuje. Choćby za sprawą tego, że wtłaczanie metalu do formy musi odbywać ze ściśle określoną prędkością, a w końcowej fazie, kiedy metal wypełnia już wszystkie wnęki formy, musi on być prasowany zadaną siłą. W opisywanym przypadku tłok wtryskowy porusza się z prędkością bliską 5m/s na drodze około 500mm. Ciśnienie wywierane przezeń na czoło metalu może dochodzić do 1000 bar. Prędkość, jak i ciśnienie zmienia się dynamicznie w trakcie wypełniania formy.

Poniżej film prezentującego schematycznie jak przebiega proces odlewania ciśnieniowego.

Z punktu widzenia technologii odlewania, konieczne jest zapewnienie powtarzalności procesu i rejestracja poszczególnych danych procesowych. Ze względu na szybkość zamian wartości konieczne jest ich próbkowanie z częstotliwościami ok 1kHz tak aby zarejestrowane dane w sposób realny odzwierciedlały obserwowany proces.

 W latach 90’ zeszłego stulecia popularne sterowniki oferowały przerwania cykliczne na poziomie 10ms.

Pomiar opisanych wartości w takich odstępach to zdecydowanie za mało, aby mówić o odwzorowaniu przebiegu wtrysku na wykresie. Dodatkowo, potrzeba wizualizowania przebiegu i zbierania danych z procesu zmuszała producentów do stosowania dodatkowych komputerów, bądź urządzeń dedykowanych do pomiarów, archiwizacji i prezentacji danych.

Poziom skomplikowania elektroniki z jakich zostały zbudowane systemy rejestracji, brak dokumentacji projektowej oraz części zamiennych używanych w tamtych latach zmusza dzisiejszych użytkowników maszyn do modernizacji takich systemów. Dodatkowo, wiele z nich oferuje eksport danych w postaci pliku, który może zostać odczytany dedykowanym oprogramowaniem przygotowanym do pracy z ówczesnym systemem operacyjnym, niekoniecznie dobrze działającym pod obecnym środowiskiem. Wspomnę tylko, że oryginalnym urządzeniem do przenoszenia danych była dyskietka 3.5”

Dla przypomnienia, tak wyglądała 😊

Aby sprostać wymaganiom klientów dotyczącym raportów z przebiegów produkcji koniecznością stało się  zaprojektowanie systemu, który ma zbierał dane z czujnika ciśnienia oraz przetwornika drogi z odpowiednią częstotliwością.

Kilka lat temu, uczestnicząc w targach Automaticon, wystawcy na stanowisku Siemens prezentowali o metodę akwizycji danych opartej o „oversampling” czyli zbieranie danych częściej, niż cykl programu PLC. Firma Siemens wypożyczyła mi wtedy niezbędny do tego celu sprzęt. Był to wtedy Open Controller, wyspa IM HF do ET 200SP i moduł AI HS z podstawką. Testy przebiegły pomyślnie. Dzięki oversamplingowi (który wymaga trybu IRT sieci PROFINET) można zbierać dane z częstotliwością większą niż jest wymagana dla tego projektu. Niestety projekt w tamtym momencie nie doczekał się realizacji.

Reklama: Przedsprzedaż trwa tylko kilka dni!

Kilka miesięcy temu temat został na nowo podniesiony, mając pewne pomysły na realizację podjąłem się zadania. Jednym z założeń, było wykonanie pomiarów i rejestracji o oparciu o czujniki już zainstalowane na maszynie. Pomiar ciśnienia zrealizowany był za pomocą czujnika analogowego, pomiar przesunięcia siłownika mierzony enkoderem liniowym.

Klocki układanki

Dzisiejsze jednostki PLC mogą pracować z przerwaniem cyklicznym nawet 1ms. Do tego projektu został wybrany CPU 1510SP F-1 PN oraz panel TP700 Comfort.

POMIAR CIŚNIENIA

Zidentyfikowałem czujnik ciśnienia zainstalowany na maszynie, jego zakres pomiarowy to 0-1000 bar, wg. schematu elektrycznego pracujące w dwu-przewodowej pętli prądowej 4…20mA. Czujnik zasilany jest z karty istniejącego systemu pomiarowego, więc kanał pomiarowy karty AI 2xU/I 2-,4-wire HS został podłączony szeregowo do istniejącego toru pomiarowego, konfigurując ten kanał karty jako pomiar czujnikiem 4 przewodowym.

Niestety, niezasilona karta AI stanowi przerwę dla toru pomiarowego. W przypadku awarii, bądź wyłączenia nowego systemu pomiarowego, również ten obecny nie będzie działał. Rozwiązaniem stał się przekaźnik sterowany z wyjścia cyfrowego, który otwiera przerwany obwód w przypadku braku działania sterownika PLC.

W bloku OB100 wykonywanym raz podczas uruchomienia sterownika na stan wysoki ustawiane jest wyjście które zasila cewkę stycznika. Na wizualizacji dodatkowo znajduje się przycisk który umożliwia ręczne sterowanie przekaźnikiem.

W sterowaniu maszyny występuje kilka charakterystycznych sygnałów które informują o aktualnym stanie pracy, sygnały te zostały wprowadzone na kartę wejść cyfrowych i opisane.

Program PLC analizuje sekwencje sygnałów z tych wejść i na tej podstawie generowany jest sygnał do startu jak i zatrzymania rejestracji, czy też ustalany jest moment w którym system ma wykonywać obliczenia i przygotowanie do kolejnej rejestracji.

POMIAR DROGI

Aktualna pozycja tłoka odczytywana jest za pomocą liniału pomiarowego. Nie potrafiłem znaleźć danych dotyczących sygnału zwracanego z czujnika. Ze schematu wynikało, że sygnał ten trafia na przetwornik, a później na wejście PLC sterownika S7-300. Spodziewałem się więc sygnału prostokątnego. Oscyloskop potwierdził moje przypuszczenia.

Wzorowy sygnał enkodera

Dobrałem więc kartę licznika TM Count 1x24V. W sterowniku skorzystałem z obiektu technologicznego jakim jest szybki licznik. Blok High_Speed_Counter po odpowiedniej konfiguracji pozwala na zwrócenie gotowej wartości z prędkości co okazało się bardzo przydatne, niestety w tym momencie nie znałem jeszcze wartości w mm jaka odpowiada jednemu impulsowi czujnika. Po podłączeniu i uruchomieniu karty okazało się, że wymiar z nowego systemu jest równy połowie faktycznego wymiaru. W bloku konfiguracji można wybrać czy wartość pomiarowa ma być zwiększana z każdym zboczem narastającym sygnału A (single), ze zboczem narastającym i opadającym (double) czy też ze zboczem narastającym i opadającym obydwu sygnałów (Quadruple). Ustawiając tryb na double, wartość licznika była odpowiednikiem realnie przebytej drogi w mm.

KONFIGURACJA PLC I HMI W TIA v16

Ponieważ nie musiałem korzystać z funkcji oversamplingu to konfiguracja sieci nie wymaga ustawiania trybu IRT ani wyznaczania topologii, sprowadza się w tym przypadku tylko do połączenia sterownika  i panelu w jedną sieć.

Program w PLC

Pierwszą trudnością programistyczną było zebranie danych, z 30 sekund pracy (taki zakładam maksymalny czas rejestracji parametrów wtrysku, aktualnie czas wynosi kilkanaście sekund) co 1 ms. Co jak łatwo policzyć daje 30 000 próbek. Dodatkowo, dla inżynierów procesu i do ewentualnego wykresu, ważne są 4 wartości: czas, droga, prędkość i ciśnienie co łącznie daje 120 000 próbek. Postanowiłem podzielić pomiary na 30 tablic w każdej po 1000 próbek wszystkich wartości. Tak powstała tablica zmiennych złożonych LAST_SHOT

Zapisywanie tablicy odbywa się w przerwaniu (1ms) i zorganizowane jest za pomocą pętli i indeksów i nie jest szczególnie skomplikowane, należy tylko pamiętać o dostępie bezpośrednim do wartości z wejścia (dopisek: za adresem) aby nie korzystać z wartości zapisanych w PII sterownika. Celowo został wybrany język SCL, który świetnie sprawdza się w przypadku pracy z pętlami i obliczeniami matematycznymi – te zostały wykorzystane do porównania i wyznaczenia wartości maksymalnej danej wielkości jaka miała zostać zapisana w raporcie.

Część programu w przerwaniu cyklicznym

Zapis wartości związanych z przesunięciem tłoka uproszczony jest dzięki wykorzystaniu wspomnianego wcześniej bloku HSC (High Speed Counter), który zwraca informacje o aktualnej prędkości i drodze tłoka.

Pewnie problemy nastręczyło jednie kasowanie całej tablicy – przygotowanie do kolejnego cyklu. Najprostszą metodą było wpisanie „0” do każdego kolejnego elementu. Jak się szybko okazało nie jest to możliwe za pomocą pętli. Pętle w programie wykonują się bowiem w całości w jednym cyklu procesora. Oznaczało to, że próbując pierwotnie zapisać w ciągu jednego cyklu PLC aż 12 000 zmiennych w bloku – skutkowało to zatrzymaniem sterownika ze względu na przekroczenie czasu maksymalnego cyklu (150ms). Z pomocą przyszedł blok FILL_BLK który pozwala wypełnić dowolną ilość elementów w danej tablicy określoną wartością w następujących po sobie cyklach, tak aby nie zatrzymać sterownika. Instrukcja ta jest wywoływana czterokrotnie, dla każdej z wartości z osobna.

Tu również wybrałem język SCL.

Reklama: Przedsprzedaż trwa tylko kilka dni!

Wyświetlanie i rejestracja danych – HMI

Jednym z pobocznych zadań było wyświetlenie wykresu zarejestrowanych wartości. Przydatna staje się tutaj funkcja wykresu danych zapisanych w DB sterownika. Instrukcjami języka SCL ograniczona została ilość próbek przesyłanych do wykresu na HMI z dwóch przyczyn. Po pierwsze w polu określającym ilość próbek do wyświetlenia na trendzie nie można wybrać więcej niż 999, po drugie, nawet jeśli oprogramowanie zaakceptowało by ilość większą niż 1000 to w poziomie mamy dla tego panelu dostępne zaledwie 800 pikseli. Kiedy generowane jest żądanie przygotowania danych, z całej tabeli z danymi pomiarowymi jest wybierane tylko tyle próbek, ile da się zmieścić na wykresie. Poniżej przykładowy wykres przebiegu zarejestrowanych wartości.

Oprócz wykresu ostatniego cyklu, operator do bieżącej analizy ma również dostępny raport parametrów z ostatnich cykli dzięki którym jest w stanie określić stabilność procesu.

Celem całego projektu było nie tylko zbieranie tych danych ale i możliwość ich łatwego wyeksportowania z systemu rejestrującego na inny nośnik. Służy temu okno „ZARZĄDZANIE DANYMI”.

Skrypty w HMI co pół sekundy sprawdzają czy w slocie SD znajduje się karta oraz czy została podłączona pamięć do portu USB. O obecności nośników informują zielone kontrolki. Funkcję tę, można również wywołać wybierając przycisk „ODŚWIEŻ STATUS”. Zgodnie z opisem na HMI pracują również przyciski KOPIUJ i WYCZYŚĆ. Przygotowaniem raportu zajmuje się skrypt. Na jego początku znajduje się zestaw instrukcji, które generują nazwę pliku w oparciu o aktualną datę, po wygenerowaniu tej nazwy sprawdzane jest czy taki plik istnieje, jeśli nie, jest tworzony. Jeżeli plik już istnieje, jest on otwierany i metodą dopisania kolejnego wiersza dołączane są dane z tagów powiązanych z PLC. Skrypt był pierwotnie przygotowany do zapisywania odrębnych plików dla każdej ze zmian roboczych danego dnia, natomiast w opisywanym przypadku plik zawierał około 300 rekordów więc pozostała wersja z tworzeniem nowego pliku przy pierwszym cyklu danego dnia. Na końcu plik jest zamykany, tak aby można go było eksportować na USB.

Podsumowanie

Połączenie wydajności nowych procesorów pozwalających obsługiwać przerwania co 1ms, wprowadzenie do języków programowania sterowników Siemens SCLa oraz możliwość implementacji skryptów VBA w panelu HMI daje możliwości stworzenia rejestratora wartości procesowej, z logowaniem oraz w razie potrzeby alarmowaniem w przypadku przekroczenia wartości krytycznych bez użycia dodatkowego sprzętu klasy PC. Pokazany system akwizycji i rejestracji danych może z powodzeniem być wykorzystany jako podstawa do budowy bardzo różnych aplikacji tego typu.

Artykuł został nagrodzony w Konkursie iAutomatyka – edycja Luty 2020. Nagrodę Sterownik PLC z wbudowanym wyświetlaczem HMI + zestaw gadżetów dostarcza ambasador konkursu, firma ELMARK.

Newsletter

Zapisz się i jako pierwszy otrzymuj nowości!

Zapoznałem się i akceptuję klauzulę informacyjną.
17 lutego 2020 / Kategoria: , , ,

Reklama

NAJNOWSZE PUBLIKACJE OD UŻYTKOWNIKÓW I FIRM

>KLIKNIJ<

TwinCAT 3 Lighting Solution: uniwersalne narzędzie do sterowania oświetleniem

TwinCAT 3 Lighting Solution: uniwersalne narzędzie do sterowania oświetleniem

>KLIKNIJ<

Pomóż zaprojektować respirator ostatniej szansy z drukarki 3D i ratuj życia

Pomóż zaprojektować respirator ostatniej szansy z drukarki 3D i ratuj życia

>KLIKNIJ<

KONKURS IAUTOMATYKA KWIECIEŃ 2020

KONKURS IAUTOMATYKA KWIECIEŃ 2020

>KLIKNIJ<

Miraizukuri, czyli budujemy przyszłość…

Miraizukuri, czyli budujemy przyszłość…

>KLIKNIJ<

Wysyłanie wiadomości email w sterowniku PLC | Kurs programowania PLC od podstaw | odc.19

Wysyłanie wiadomości email w sterowniku PLC | Kurs programowania PLC od podstaw | odc.19

>KLIKNIJ<

Rozwój automatyki przemysłowej w Polsce

Rozwój automatyki przemysłowej w Polsce

>KLIKNIJ<

Trzy w jednym: kompletny serwonapęd umożliwia rezygnację z szafy sterowniczej

Trzy w jednym: kompletny serwonapęd umożliwia rezygnację z szafy sterowniczej

>KLIKNIJ<

Regulator PID w środowisku Codesys

Regulator PID w środowisku Codesys

>KLIKNIJ<

Kopia zapasowa pamięci robota na przykładzie jednostki FANUC

Kopia zapasowa pamięci robota na przykładzie jednostki FANUC

>KLIKNIJ<

Jak w 3 krokach wdrożyć prosty system sterowania ogrzewaniem i oświetleniem hali produkcyjnej? Cz. 1

Jak w 3 krokach wdrożyć prosty system sterowania ogrzewaniem i oświetleniem hali produkcyjnej? Cz. 1

>KLIKNIJ<

Jednoparowy Ethernet – oszczędność czasu i środków finansowych

Jednoparowy Ethernet – oszczędność czasu i środków finansowych

>KLIKNIJ<

Jak powstają REGAŁY MAGAZYNOWE? – Fabryki w Polsce

Jak powstają REGAŁY MAGAZYNOWE? – Fabryki w Polsce

>KLIKNIJ<

Analiza metod pomiarowych urządzeń do magazynowania energii

Analiza metod pomiarowych urządzeń do magazynowania energii

>KLIKNIJ<

Komunikacja sterownika IFM z podwoziem – Protokół J1939

Komunikacja sterownika IFM z podwoziem – Protokół J1939

>KLIKNIJ<

WAGO i Docker – zastosowanie popularnych narzędzi IT na polu profesjonalnej automatyki przemysłowej

WAGO i Docker – zastosowanie popularnych narzędzi IT na polu profesjonalnej automatyki przemysłowej

>KLIKNIJ<

5 porad, jak odnieść sukces w branży automatyki przemysłowej na przykładzie firmy MPL Techma

5 porad, jak odnieść sukces w branży automatyki przemysłowej na przykładzie firmy MPL Techma

>KLIKNIJ<

Webinarium DrivePro® Remote Monitoring firmy Danfoss

Webinarium DrivePro® Remote Monitoring firmy Danfoss

>KLIKNIJ<

Znaczenie traceability (identyfikowalność) w erze gospodarki globalnej i Przemysłu 4.0

Znaczenie traceability (identyfikowalność) w erze gospodarki globalnej i Przemysłu 4.0

>KLIKNIJ<

Koncepcje programowania sekwencyjnego w sterownikach PLC

Koncepcje programowania sekwencyjnego w sterownikach PLC

>KLIKNIJ<

Jak działa myjnia przemysłowa? – Fabryki w Polsce EXTRA

Jak działa myjnia przemysłowa? – Fabryki w Polsce EXTRA





MOŻESZ SIĘ TYM ZAINTERESOWAĆ

  • Poniższy poradnik jest zbiorem schematów połączeń elektrycznych. W poradniku zapoznamy się z podstawami wprowadzenia do systemów przekaźnikowych, sekwencji przełączeń przekaźników, porównania systemów przekaźnikowych z systemami tradycyjnym...
  • Zaprojektowane, aby zwiększyć wydajność Sterowniki FX5U/FX5UC zapewniają rodzinie FX wyższą wydajność oraz dodają nowe cechy, które wyznaczają standardy w klasie kompaktowych sterowników PLC. Pozwala to użytkownikom na tworzenie bardziej zł...
  • EPLAN Electric P8 oferuje nieograniczone możliwości planowania projektu, tworzenia dokumentacji oraz zarządzania projektami automatyki. Zautomatyzowane tworzenie szczegółowych raportów opartych na schematach okablowania jest integralnym ele...
  • Systemy RFID są ekonomiczne, uniwersalne i zapewniają niezawodność procesów, np. w intralogistyce. Zadania związane z identyfikacją stały się teraz łatwiejsze, szczególnie gdy potrzebna jest duża liczba punktów identyfikacji, dzięki  głowic...
  • Seria FX-100 Czujniki z serii FX-100 to najlepsze rozwiązanie pod względem stosunku jakości do ceny. Wyposażone są w funkcje szybkiego uczenia, co pozwala użytkownikom w szybki i prosty sposób przystosować czujnik do pracy z nieskomplikowan...
  • 1,740 PLN
    Szkolenie prowadzimy w naszym Autoryzowanym Centrum Szkoleniowym w Warszawie przy ul. Bukowińskiej 22 (lok. 1B, wejście od ul. Pejzażowej). W czasie jego trwania kursanci mają do dyspozycji trzy stanowiska szkoleniowe wyposażone w roboty Un...
    Czas trwania: 2 dni
    Link: Terminy



KATEGORIE ARTYKUŁÓW
POLECANE ARTYKUŁY
Wydarzenia