Po co zbierać dane · tor pomiarowy · sygnały 4–20 mA · przetwornik A/C · próbkowanie · tagi, zapis i ilość danych
Zarządzanie i inżynieria produkcji · IV rok · specjalność: Inżynier procesu · studia niestacjonarne · mgr inż. M. Okarmus
Raport papierowy a dane z maszyny. Piramida automatyki: od czujnika do ERP.
Czujnik → sygnał 4–20 mA → przetwornik A/C → liczba → jednostki. Skalowanie.
Jak często mierzyć? Aliasing. Stany maszyny i liczniki sztuk.
Protokoły, tag, zapis cykliczny i z martwą strefą, ilość danych, historian. Projekt listy tagów.
16:30–16:45 przerwa
Jutro (niedziela, 15:00–18:15): od danych do decyzji — OEE, energia na sztukę, jakość danych, projektowanie dashboardów, alarmy i karta kontrolna.
Karta zadań: rozwiązujecie ją przy slajdach „Zadania dla Was”, poprawiacie po omówieniu i oddajecie podpisaną na koniec zajęć (potwierdza obecność i aktywność). Ocena z ćwiczeń = projekt grupowy: dashboard (jutro, na koniec ćwiczeń 2); warunek: karty oddane.
Ta sama zmiana (8 h). Operator zapisuje postoje „dłuższe” — krótkie zatrzymania (mikropostoje) giną, a to one często zabierają najwięcej czasu.
Dane z maszyny są pełne, dokładne co do sekundy i bez wysiłku operatora. Decyzje (inwestycja, zmiana organizacji pracy) opierają się wtedy na faktach, a nie na wrażeniu.
Im wyżej, tym dane są bardziej zagregowane i rzadsze (ms → sekundy → zmiany → miesiące). Akwizycja danych to „podnoszenie” danych z poziomów 0–1 do 2–3.
Wnioski zapisujemy na tablicy: jakie decyzje można by podejmować lepiej, gdyby dane były automatyczne?
Na każdym etapie może pojawić się błąd: zły czujnik, przerwa w przewodzie, złe skalowanie, zła strefa czasowa. Dlatego trzeba znać całą drogę.
x = xmin + (I − 4) / 16 · (xmax − xmin)
I = 4 + 16 · (x − xmin) / (xmax − xmin)
16 = 20 − 4 mA (szerokość zakresu sygnału). Dla 0–10 V: x = xmin + U/10 · (xmax − xmin).
Czujnik poziomu 0–3 m, 4–20 mA. Odczyt: 14 mA. Jaki jest poziom?
(14 − 4)/16 = 0,625 → 0,625 · 3 m = 1,875 m
Przetwornik temperatury 0–200 °C, 4–20 mA. Jaki prąd przy 80 °C? A przy przerwie w przewodzie?
80/200 = 0,4 → I = 4 + 0,4 · 16 = 10,4 mA; przerwa: ok. 0 mA (alarm)
Przepływomierz 0–50 m³/h, sygnał 0–10 V. Odczyt 3,2 V. Jaki przepływ? Ile m³ w ciągu zmiany (8 h), jeśli jest stały?
3,2/10 · 50 = 16 m³/h; 16 · 8 = 128 m³
poziomy = 2n
krok = zakres / 2n
Zakres 0–150 °C, n = bit:
poziomów:
krok:
Moduły wejść analogowych w sterownikach mają zwykle 12–16 bitów. Wtedy krok jest mniejszy niż błąd samego czujnika — o dokładności decyduje czujnik, nie przetwornik.
Moduł wejść (jak Siemens S7) zamienia 4–20 mA na liczbę 0–27 648. Przetwornik ciśnienia 0–10 bar. Sterownik odczytał 13 824, a potem 20 736. Jakie to ciśnienia?
13 824 / 27 648 = 0,5 → 5 bar; 20 736 / 27 648 = 0,75 → 7,5 bar
Ile wynosi krok pomiaru temperatury 0–150 °C dla przetwornika 8-bitowego, a ile dla 12-bitowego?
8 bit: 150/256 ≈ 0,59 °C; 12 bit: 150/4096 ≈ 0,037 °C
Wagę 0–60 kg podłączono przez przetwornik 10-bitowy. Czy da się ważyć porcje z dokładnością do 10 g?
krok = 60 kg / 1024 ≈ 58,6 g > 10 g — nie; potrzeba co najmniej 13 bitów (60 kg / 8192 ≈ 7,3 g)
Twierdzenie o próbkowaniu (Nyquista–Shannona): trzeba próbkować co najmniej 2 razy szybciej niż najszybsza zmiana sygnału.
fp > 2 · fmax
W praktyce przemysłowej próbkuje się 5–10 razy szybciej niż najszybsza interesująca zmiana.
| wielkość | jak szybko się zmienia | typowy interwał |
|---|---|---|
| temperatura pieca, zbiornika | minuty | 1–10 s |
| ciśnienie, przepływ w instalacji | sekundy | 0,1–1 s |
| moc, energia (licznik) | sekundy / rozliczeniowo | 1 s – 15 min |
| stan maszyny (praca/postój) | zdarzenie | przy zmianie |
| licznik sztuk | zdarzenie (np. co 0,5 s) | licznik w PLC, odczyt co 1–60 s |
| drgania łożyska (diagnostyka) | setki–tysiące Hz | kilka–kilkadziesiąt kHz, osobny system |
a) Interesuje nas składowa drgań silnika o częstotliwości 200 Hz. Z jaką minimalną częstotliwością trzeba próbkować? Jaką przyjąć w praktyce?
teoretycznie > 400 Hz; w praktyce 1–2 kHz (5–10 ×)
b) Temperatura zbiornika zmienia się najszybciej o 1 °C na minutę, interesuje nas dokładność 0,5 °C. Jak często zapisywać?
0,5 °C zmienia się w 30 s → zapis co ok. 10–30 s wystarczy (co 1 s to marnowanie miejsca)
W ciągu 5 s przejechało sztuk:
System policzył (zielone):
Rozwiązanie: licznik w sterowniku (zlicza każdy impuls), a system nadrzędny odczytuje tylko stan licznika, np. co 10 s. Podobnie stany maszyny: sterownik zapamiętuje zmianę z dokładnym czasem.
| praca | awaria | przezbrojenie | → stan |
|---|
Sterownik ma sygnały (bity). Stan maszyny wyznacza się z nich regułą — ustala to technolog razem z automatykiem.
Maszyna ma sygnały: praca (1 = wrzeciono się kręci), awaria (1 = aktywny alarm krytyczny), przezbrojenie (1 = operator wybrał tryb przezbrojenia na panelu), brak materiału (1 = pusty podajnik).
a) Jakie stany maszyny chcielibyście rozróżnić w raporcie?
b) Co, jeśli jednocześnie jest „awaria” i „brak materiału”? Który stan wygrywa i dlaczego?
stany: praca, awaria, przezbrojenie, brak materiału (postój organizacyjny), postój niezidentyfikowany; priorytet zwykle: awaria > przezbrojenie > brak materiału > postój — bo awaria wymaga reakcji utrzymania ruchu
| protokół | jak działa | gdzie spotkacie | uwagi |
|---|---|---|---|
| Modbus (RTU, TCP) | system pyta urządzenie o rejestry (liczby) pod adresami | liczniki energii, falowniki, starsze sterowniki | prosty, popularny; same liczby — trzeba wiedzieć, co oznacza rejestr |
| OPC UA | urządzenie udostępnia uporządkowany model danych (nazwy, jednostki, typy) | nowe sterowniki i maszyny, SCADA, MES | standard Przemysłu 4.0, wbudowane bezpieczeństwo |
| MQTT | urządzenie publikuje wiadomości do pośrednika (brokera), odbiorcy je subskrybują | IIoT, czujniki bezprzewodowe, chmura | lekki; wysyła tylko zmiany |
| protokoły producentów (S7, EtherNet/IP…) | komunikacja z konkretnymi sterownikami | linie produkcyjne | wymagają sterowników komunikacyjnych w SCADA |
Inżynier procesu nie programuje komunikacji, ale musi umieć zapytać integratora: skąd biorą się dane, jak często, w jakich jednostkach i co się dzieje, gdy połączenie zniknie.
| nazwa (tag) | wartość | jednostka | znacznik czasu | jakość |
|---|---|---|---|---|
| Zaklad1.L2.Piec01.Temp | 85,3 | °C | 2026-10-17 15:02:11.250 | Good |
| Zaklad1.L2.Piec01.Temp | 0,0 | °C | 2026-10-17 15:02:12.250 | Bad (błąd czujnika) |
| Zaklad1.L2.Pak01.LicznikSzt | 15 482 | szt. | 2026-10-17 15:02:10.000 | Good |
| Zaklad1.L2.Pak01.Stan | 2 | (kod: 2 = awaria) | 2026-10-17 14:58:41.120 | Good |
Spójna konwencja: zakład.linia.maszyna.wielkość — inaczej po roku nikt nie wie, co oznacza „AI_17”.
Kiedy zmierzono (nie: kiedy zapisano). Jedna strefa czasowa, uwaga na zmianę czasu letni/zimowy.
Czy wartości można ufać. Rekordy „Bad” nie powinny trafiać do raportów i średnich.
Zapisanych punktów: z 600
Największy błąd odtworzenia:
| liczba maszyn | |
| tagów na maszynę | |
| interwał zapisu [s] | |
| bajtów na rekord | |
| martwa strefa — zapisujemy % próbek |
16 B ≈ czas (8 B) + wartość (4 B) + jakość i identyfikator tagu (4 B).
rekordów na dobę:
na dobę:
na rok:
Kliknij wiersz raportu → po prawej: z jakiego tagu, ile rekordów i jak policzono.
| tag w historianie | |
| rekordów w zmianie | |
| reguła (agregacja) |
Historian = przemysłowa baza szeregów czasowych (np. AVEVA PI, Ignition, InfluxDB). Przechowuje surowe rekordy latami i liczy z nich agregaty dla dowolnego okresu: różnicę licznika, czas w stanie, min / średnią / max.
| stan (praca, awaria…) | przy zmianie |
| licznik (sztuki, kWh) | cyklicznie, co 10–60 s |
| analog (°C, bar…) | martwa strefa: większa niż szum, mniejsza niż istotna zmiana |
| pytanie | tag | typ | zapis | decyzja |
|---|---|---|---|---|
| ile? | Wtr01.LicznikDobre | licznik, szt. | co 10 s | czy zlecenie zdąży na czas |
| ile? | Wtr01.CzasCyklu | analog, s | ± 0,2 s | czy maszyna zwalnia |
| dlaczego stoi? | Wtr01.Stan | stan (kod) | przy zmianie | które postoje usuwać najpierw |
| czy dobrze? | Wtr01.LicznikBraki | licznik, szt. | co 10 s | kiedy zatrzymać i sprawdzić formę |
| czy dobrze? | Wtr01.TempForma | analog, °C | ± 1 °C | przyczyna braków |
| ile zużywa? | Wtr01.Energia | licznik, kWh | co 1 min | koszt energii na sztukę |
Tag, przy którym nie umiecie wpisać decyzji, prawdopodobnie jest zbędny — kosztuje, a nic nie wnosi.
czujnik → 4–20 mA → A/C → liczba → skalowanie → tag
x = xmin + (I − 4)/16 · (xmax − xmin)
krok = zakres / 2n
fp > 2 · fmax (w praktyce 5–10 ×)
impulsy zliczamy w sterowniku, nie przez odpytywanie
stan maszyny = reguła z priorytetami
nazwa · wartość · jednostka · czas · jakość
cyklicznie / przy zmianie / martwa strefa
dane = tagi × próbki × bajty
Jutro: od danych do decyzji — OEE, jakość danych, dashboardy.