engiAI

  • Wymagania
Windows 10/11 x64. Analiza procesora i karty graficznej – wersje RTX 50+.

⬇ engiAI.rar (900 MB)

⬇ engiAI-ZONA-PARA-PL.pdf (5.4 MB)

⬇ engiAI-doc-new-PL.pdf (12 MB)

SICK IDS Camera Manager ⬇ ids-software-suite-win-4.96.1.zip (184 MB)

SICK IDS Camera Manager - link 2

Rejestracja

Złożyć wniosek o dostęp do engiAI

EngiAI (engiAI Ethernet System) – program do wizji komputerowej dla kontroli jakości i odrzucania produktów na liniach produkcyjnych. Napisany w C# (.NET 9, WinForms), kompilowany w jeden, samodzielny plik wykonywalny (AOT) działający w systemie Windows x64.

  • Co robi
Urządzenia do montażu kamer: przemysłowe Hikrobot (SDK), USB/DirectShow, IDS uEye, a także kamery Androidowe za pomocą OpenCV. Możliwość jednoczesnego użycia kilku kamer.

Inspekcja wspomagana przez sztuczną inteligencję: Sieci neuronowe YOLO (ONNX Runtime / GPU-CUDA lub CPU) rozpoznają obiekty i wady w czasie rzeczywistym.

Obszary ROI (Region of Interest): – konfigurowalne obszary kontroli z przypisanymi klasami i regułami, nazwane obszary, katalog.

Wyłącznik (Rejector): zgodnie z analizą, system generuje sygnał na wyjście, który wyłącza urządzenie (resetuje błąd), wraz z konfiguracją pinów i weryfikacją za pomocą testera.

Źródła sygnału: rejestracja kadru na podstawie zewnętrznego sygnału (wejścia cyfrowe, enkoder).

Trening modeli: zestawy danych, dane syntetyczne (obroty/odbicie/jasność), trening YOLO11 bezpośrednio w oprogramowaniu.

Magazyn: lokalna baza SQLite (rejectors.db) – modele, strefy, rejestr zdarzeń, stan kamer.

  • Uzyskanie licencji
Jedna instalacja: tryb (testowy / licencja / zakaz)

Bez licencji – tryb testowy na 20 minut; z licencją – działanie bez ograniczeń.

Zwiąż z sprzętem, kontrola wszystkich uruchomionych instancji.

engiAI Ethernet System
STREFA-PARA – wizualna inspekcja płyt i montaży

Interfejs engiAI nie ma wersji polskiej — korzystaj z wersji angielskiej. W tej instrukcji nazwy przycisków i pól przetłumaczono na polski; w programie szukaj ich angielskich odpowiedników.

Kluczowym elementem inspekcji jest podział na strefy: STREFA-PARA. Na płytce wyróżniane są strefy – każda z nich reprezentuje element, który należy sprawdzić. Każdy model posiada zestaw klas "norma / anomalia" dla każdej strefy i analizuje tylko w obrębie tego zestawu. W przykładzie z instrukcji mamy dwie strefy: kondensator C30 i most BR1; w rzeczywistej płytce może być ich setki, a metoda jest ta sama.
Dane syntetyczne – automatyczne przesunięcie elementu względem podstawy. Program pobiera element wraz z obszarem płytki wokół niego (linie, ścieżki, kolor podstawy), zmniejsza obszar do rozmiaru elementu i przesuwa lub obracając go. Tworzenie próbek do nauki zajmuje tylko dwa kliknięcia, bez konieczności posiadania pojedynczej płytki z wadą.
Instrukcja obsługi: jak podłączyć kamerę, zdefiniować obszary, ustawić obszar wyrównania, rejestrować normy i anomalie, wytrenować model, uruchomić inspekcję i połączyć ją z urządzeniami: dźwiękowymi alarmami, dyskretnymi wyjściami kamer SICK i HIKROBOT oraz przesyłanymi przez TCP danymi do robota lub sterownika PLC.
Krok 1Aparat
Krok 2Sieć stref
Krok 3Normy i odchylenia
Krok 4Szkolenie
Krok 5Kontrola
Krok 6Wyjścia i TCP
Wszystkie zrzuty ekranu zostały wykonane z działającej aplikacji: moduł vtlift, kamera USB 3264×2448, model model_4 dla dwóch stref 256×256 (kondensator C30 i most BR1), wytrenowana w skali szarości. Aplikacja współpracuje z kamerami HIKROBOT (GigE i USB3), SICK picoCam (uEye), kamerami USB/internetowymi oraz kamerami IP w protokole RTSP. Wersja 3 – wrzesień 2026.

Zawartość

  1. 1. Dlaczego algorytm engiAI i metoda STREFA-PARA są skuteczne?
  2. 1.1. Co daje ta metoda w porównaniu z klasyfikacją całego obrazu
  3. 1.2. Szybkość: Sztuczna inteligencja analizuje tylko wybrane fragmenty.
  4. 1.3. Jaką dokładność można się spodziewać: obliczamy na podstawie parametrów naszej kamery
  5. 1.4. Szybki start: ustawienia skonfigurowane, obszary i model zaledwie kilkoma kliknięciami
  6. 2. Opanowanie interfejsu programu w ciągu jednej minuty
  7. 3. Kamery: podłączenie i konfiguracja
  8. 3.1. Jakie kamery są obsługiwane?
  9. 3.2. Okno kamery: dodaj, zresetuj, usuń
  10. 3.3. Sekcja "Aparat" dla urządzeń HIKROBOT i SICK
  11. 3.4. Karta "Aparat" dla kamery USB/webowej
  12. 3.5. Zapisane ustawienia kamery (zestawy)
  13. 3.6. Sieć GigE i ponowne podłączenie
  14. 4. Model STREFA-PARA: od siatki do wytrenowanej modelu
  15. 4.1. Jak działa ten system: jedna konfiguracja, oddzielny klas dla każdej strefy
  16. 4.2. Stworzyć model
  17. 4.3. Zaznaczenie obszarów w płatności
  18. 4.4. Zdefiniować wzorzec: obszar wyrównywania
  19. 4.5. Obrazowanie w oparciu o strefy: norma i jej dane syntetyczne
  20. 4.6. Dane syntetyczne: uszkodzenie wymaga dwóch kliknięć: element przesuwa się razem z podstawą.
  21. 4.7. Anomalie w obszarach: okno ustawień
  22. 4.8. Szablon z obszarami: elementy lutownicze i narzędzie do zaznaczania obszaru
  23. 4.9. Trenowanie modelu
  24. 5. Kontrola
  25. 5.1. Wybrać model i zweryfikować obszary
  26. 5.2. Granica rozpoznawania obszaru
  27. 5.3. Elastyczny pas: możliwość pracy w dowolnej pozycji
  28. 5.4. Jakiego sygnału należy analizować?
  29. 5.5. Strefy oznaczone kolorem żółtym: wyłącz strefę za pomocą kliknięcia
  30. 5.6. Co można zobaczyć na ekranie i w konsoli
  31. 6. Czujniki: zewnętrzny czujnik na wejściu kamery
  32. 7. Wyjścia: turbina, dyskretne wyjścia kamer oraz TCP
  33. 7.1. Przewodnik: Wyjścia – kontakty i testowanie miernikiem
  34. 7.2. Okno wyjściowe: zasada dotycząca obszaru
  35. 7.3. Wysyłanie pakietu TCP do urządzenia PLC lub sterownika
  36. 7.4. Wyjście z kamery o stałej wartości
  37. 7.5. Ostrzeżenia dźwiękowe: możliwość ustawienia własnego dźwięku dla każdej strefy.
  38. 7.6. Rejestr zdarzeń i baza danych
  39. 8. Inne tryby i zadania
  40. 9. Ustawienia, konsola, wymagania i licencja
  41. 10. Krótka lista kontrolna i diagnozowanie usterek

Jak korzystać z instrukcji. Sekcja 1 wyjaśnia, dlaczego ten metoda jest potrzebna i jaki rezultat można oczekiwać. Sekcje 3–5 to proces od pustego programu do działającej inspekcji, należy je wykonywać w kolejności. Sekcje 6–7 dotyczą podłączenia czujników, wyjść i TCP. Sekcje 8–10 dotyczą pozostałych funkcji, ustawień i listy kontrolnej.

1. Dlaczego algorytm engiAI i metoda STREFA-PARA?

engiAI Ethernet System – oprogramowanie do wizualnej inspekcji linii produkcyjnych. Pobiera obraz z kamery przemysłowej lub zwykłej, dzieli go na strefy, a następnie sprawdza każdą z nich przy użyciu wytrenowanej sieci neuronowej. Wynik jest przekształcany w akcję, np. sygnał na wyjście kamery, wiadomość TCP dla robota lub PLC, lub zapis w dzienniku. Metoda STREFA-PARA została opracowana dla produktów, w których „prawidłowe” ustawienie występuje w każdym miejscu: płytki drukowane, montaż, zestawy części w szufladzie, opakowania z rozmieszczeniem elementów.

1 Model
Dla wszystkich obszarów płyty, zamiast setek oddzielnych modeli
2 Obszary
W przykładzie instrukcji: kondensator C30 i most BR1. Na płycie może być ich setki
≈5 px
Przesunięcie elementu, na które ustawiona jest granica "norma / awaria"
2 Kliknięcia
Od obrazu do normy i syntetycznej awarii w celu nauki

1.1. Co daje ta metoda w porównaniu z klasyfikacją całego obrazu

Standardowe podejście to jedna model, która rozróżnia dwa klasy: „normalny” i „anomalny” dla całego obrazu lub dla określonych obszarów. Na płytce, takie podejście nie działa: pusty obszar pod mostem BR1 w obszarze 2 – to błąd, a taki sam pusty obszar w innym miejscu płytki – to norma. Jedna para klas nie jest w stanie tego wyrazić. Drugi ekstrem – oddzielny model dla każdej części – wymagałoby dziesiątek treningów i dziesiątek plików w pamięci.

STREFA-PARA rozwiązuje to w następujący sposób: istnieje jeden model, a liczba klas jest równa liczbie stref. `Strefa` – prostokąt otaczający jeden element. `Klasa` – folder zawierający obrazy, na których sieć uczy się. Każda strefa ma swoją parę: `zone_001` (norma strefy 1, w przykładzie – kondensator C30) i `zone_001_anomaly` (błąd strefy 1); `zone_002` i `zone_002_anomaly` – most BR1. Podczas sprawdzania strefy 1, program analizuje tylko jej parę, odpowiedzi dotyczące strefy 2 nie są brane pod uwagę. Klasy błędów są opcjonalne: błąd zmienia wygląd strefy, a pewność co do „normy” spada samoistnie; jednak przy użyciu danych syntetycznych (sekcja 4.6) można je utworzyć w jednym kliknięciu i zauważalnie zwiększyć niezawodność.

Zdjęcie z przykładu: dwie strefy – most BR1 po prawej stronie i kondensator C30 po lewej stronie, obie oznaczone kolorem zielonym i etykietą „normal”. Niebieskie linie oznaczają obszar wyrównywania, a niebieskie kropki to punkty odniesienia, w oparciu o które płytka jest wykrywana na zdjęciu.
Zdjęcie z przykładu: dwie strefy – most BR1 po prawej stronie i kondensator C30 po lewej stronie, obie oznaczone kolorem zielonym i etykietą „normal”. Niebieskie linie oznaczają obszar wyrównywania, a niebieskie kropki to punkty odniesienia, w oparciu o które płytka jest wykrywana na zdjęciu.
Decyzja w obrębie pary Podczas sprawdzania obszaru 17, z dostępnych opcji sieciowych brane są pod uwagę tylko dwie: "norma obszaru 17" i "anomalia obszaru 17". Pozostałe setki klas nie biorą udziału w procesie decyzyjnym, dlatego podobne, sąsiadujące obszary nie wpływają na wynik.
Nieakceptowane są takie wynikiJeśli w danym obszarze, obejmującym kilka klas, odsetek połączeń z siecią wynosi mniej niż 10%, obszar ten jest uznawany za "nieakceptowalny": oznacza to, że mamy do czynienia z inną stacją lub przesuniętą siecią. Takie obszary są traktowane jako błąd, a nie jako "wysokowprawdopodobny scenariusz".
Wada jest proporcjonalna do obszaru Rozmiar i położenie syntetycznych wad są określane w ułamkach rozmiaru obszaru. Przesunięcie elementu o pół milimetra na całym kadrze o rozdzielczości 8 megapikseli jest niezauważalne, natomiast w obszarze o wymiarach 128x128 pikseli, to odpowiada 5-6 pikselom – co jest zauważalną wartością.
Pełna rozdzielczość Fragment o wymiarach 108–137 px jest przesyłany do sieci w formacie 128×128, bez znaczącego skalowania. Cały kadr musiałby zostać zmniejszony do tych samych 128 px, co spowodowałoby utratę szczegółów w dziesiątki razy.
Granica docelowa "norma / defekt" Dane syntetyczne: norma generuje zakres od 0 do 2 pikseli, a dane syntetyczne dotyczące defektu – przesunięcie od 5 pikseli. Sieć uczy się właśnie tej granicy, a nie przypadkowych różnic w oświetleniu.
Określony celKażda strefa posiada stały adres (model, tabela, komórka) oraz nazwę. Można przypisać do każdej strefy własne reguły, takie jak: dźwiękowe powiadomienie, wysyłanie wiadomości TCP z numerem strefy lub wyjście z kamery.
Możliwość ustawiania płyty w dowolnej pozycjiOperator zaznacza na obrazie obszar, w którym płyta powinna być wyrównana – czyli obszar z elementami. Na podstawie tych punktów odniesienia, każdy obraz jest dopasowywany do wzorca, a obszary kontrolne znajdują się na nowej płycie, nawet jeśli została umieszczona w nieprawidłowej pozycji lub obrócona o 180 stopni (sekcja 4.4).
Defekt związany z płytą Defekt syntetyczny – nie chodzi o pomalowane plamę, ale o przesunięty lub obrócony element w połączeniu z fragmentem płytki. Model uczy się związku „element – płytka”, a nie koloru plamy. Wykonuje się to w dwóch krokach (sekcja 4.6).
Informacje o anomalnych obiektach są przekazywane stopniowo Klasy wad są dodawane tylko w miejscach, gdzie faktycznie występują: połączenia lutowane, brakujące elementy, przesunięcia, zarysowania. Model jest dalej trenowany, a sieć pozostaje bez zmian.

1.2. Prędkość: System AI analizuje tylko wybrane fragmenty

Sieć neuronowa nigdy nie otrzymuje całego obrazu. Dla każdej strefy wycina się tylko jej prostokąt, a wybór strefy odbywa się na podstawie dwóch klas. Strefy z jednego obrazu są traktowane równolegle (do czterech wątków), a wynik z wszystkich stref jest wyświetlany na ekranie jako jeden pakiet, a nie dla każdej strefy oddzielnie.

  • Tempo analizy jest określone przez czas. Suwak "Analizy na sekundę (AI)" na karcie "Camera" oznacza dokładnie N analiz na sekundę, a nie "co N-ty kadr". Maksymalna wartość to częstotliwość kamery i czas wnioskowania.
  • Domyślnie używany jest GPU. Wykonywanie obliczeń odbywa się za pomocą ONNX Runtime z CUDA; jeśli nie ma dostępnej karty graficznej NVIDIA, program automatycznie przełącza się na procesor i informuje o tym w statusie (GPU (CUDA) lub CPU).
  • Bazy danych bez zbędnych danych. Przypisanie pamięci do konkretnych fragmentów odbywa się raz na strumień i jest wykorzystywane ponownie; czas analizy jest stały, niezależnie od klatki.
  • Model dostosowany do konkretnego zadania. W przypadku STREFA-PARA, program automatycznie ustawia rozmiar wejściowy na 128 pikseli oraz wykorzystuje sieć YOLO11 o rozmiarze „s”: obszar wycięty praktycznie nie ulega skalowaniu, a sieć ma wystarczającą pojemność do rozpoznawania setek par klas.
  • Automatyzacja linii produkcyjnych pozwala zaoszczędzić na zasobach ludzkich. Pracownik przechodzi do kolejnego etapu, gdy tylko jest to konieczne, a nie w oparciu o okres poszukiwania komponentów; komponenty są wyszukiwane i dopasowywane raz, a następnie obszary są przycinane.
  • Wyświetlanie obrazu nie zakłóca analizy. Obraz jest odtwarzany nie częściej niż 25 razy na sekundę i tylko na podstawie nowego kadru z kamery. Rozmiar obrazu jest zmniejszany do rozmiaru płyty, a log jest zapisywany w pliku przez działanie w tle. Interfejs pozostaje responsywny, nawet przy obrazach o rozdzielczości 8 megapikseli i setkach obszarów.

W wierszu stanu nad wideo wyświetlane są rzeczywiste wartości: klatek na sekundę oraz milisekundy ostatniej analizy, a także wydajność – liczba analiz przeprowadzonych w ciągu jednej sekundy.

1.3. Jaką dokładność można oczekiwać: zależnie od kamery

Program nie gwarantuje „0,5 mm” niezależnie od kamery i obiektywu. Wrażliwość na przesunięcie zależy od tego, ile pikseli przypada na jeden milimetr elementu, oraz od granicy, której nauczyła się model. Obliczenia są wykonywane w dwóch liniach:

px/mm = szerokość klatki w pikselach podzielona przez szerokość pola widzenia w milimetrach
Minimalna zauważalna zmiana wynosi około 5 pikseli podzielone przez współczynnik konwersji pikseli na milimetry (px/mm)

Wartość 5 px – dolna granica syntetycznego przesunięcia w zalecowanych ustawieniach dla anomalii (zakres norma wynosi 0–2 px). Domyślne ustawienia są oparte na wartości 11 px/mm: przy takim skalowaniu 0,5 mm to 5–6 px, co stanowi cel ustalony podczas projektowania. Podstaw swoje wartości:

Aparat (szerokość kadru)Pole widzenia: 100 mm200 mm300 mm400 mm
3264 px (8 MP, jak na zdjęciach)0,03 mm/px → przesunięcie ≈ 0,15 mm0,06 → ≈ 0,3 mm0,09 → ≈ 0,45 mm0,12 → ≈ 0,6 mm
2448 pikseli (HIKROBOT, 5 megapikseli)0,04 → ≈ 0,2 mm0,08 → ≈ 0,4 mm0,12 → ≈ 0,6 mm0,16 → ≈ 0,8 mm
1920 px (SICK picoCam, HIKROBOT, 2 megapiksele)0,05 → ≈ 0,25 mm0,10 → ≈ 0,5 mm0,16 → ≈ 0,8 mm0,21 → ≈ 1,0 mm
Ważne. Jest to metoda oceny, która sprawdza, czy element przesunął się w wyniku nagłego zmiany kadru i stabilnego oświetlenia. Aby zweryfikować rzeczywisty zakres, użyj przycisku „STREFA-PARA: obszar ↔ model” oraz progu rozpoznawania (sekcja 5.2): każdy obszar ma swoje specyficzne wartości, a więc i różny poziom pewności. Im mniejsze pole widzenia i im więcej pikseli ma kamera, tym mniejszy błąd, który model będzie w stanie wykryć.

1.4. Szybkie uruchomienie: ustawienia zostały dobrane, obszary i model w kilka kliknięć

Metoda została zaprojektowana tak, aby technolog bez doświadczenia w uczeniu maszynowym mógł uzyskać działający model w ciągu jednego dnia. Wszystko, co można było wcześniej dobrać, jest już dostępne i przechowywane w bazie programu:

  • Obliczanie obszarów na minutę. W edytorze ROI, przeciągnij ramkę wokół elementu i podaj wymiar obszaru (np. 256 pikseli). Jeśli masz wiele elementów, które są ułożone równo, przeciągnij ramkę po całej płycie – program automatycznie obliczy wiersze i kolumny siatki.
  • Dane syntetyczne: ustawienia domyślne i ustawienia dla wad. Przyciski "Domyślne", "Przesunięcie elementów" i "Kolor i faktura" przełączają gotowe profile. Liczba plików, liczba klatek z kamery oraz przewidywany czas wyświetlane są przed naciśnięciem przycisku "Zapisz".
  • Parametry uczenia są ustawiane automatycznie. Po pierwszym zdjęciu, program ustawia następujące parametry: rozmiar obrazu 128, rozmiar modelu "s", liczba epok 50, rozmiar partii 64. Podczas uczenia wyłącza augmentacje, które są sprzeczne z klasami anomalii.
  • Ustawienia kamery można zmieniać za pomocą przycisków. Funkcja „Automatyczna kalibracja dla sztucznej inteligencji (na klatkę)” automatycznie dobiera czas naświetlania, wzmocnienie, balans kolorów i temperaturę barwową; dla kamer USB dostępne są opcje „Automatyczne dopasowanie do formatu” oraz „Zablokowanie parametrów”.
  • Zestawy ustawień aparatu. Wybrane ustawienia są zapisywane pod określonym nazewnictwem i można je wybrać z listy. Aparat natychmiast je przyjmuje i zapisuje w swojej pamięci.
  • Wynik: jeden plik w formacie ONNX. Trenowana model jest automatycznie eksportowana i natychmiast przypisywana do inspekcji, bez konieczności podejmowania dodatkowych działań.

Cały proces: podłączenie kamery → stworzenie modelu → oznaczanie obszarów → ustalenie obszaru wyrównania → „Zdjęcia obszarów” na kilku sprawnych płytach → „Anomalie obszarów” → Trenowanie modelu AI → zakładka „Inspekcja”. Następnie należy przypisać dźwięk, wyjścia i TCP do poszczególnych obszarów. Potrzebne elementy: komputer z Windows 10/11 (dla szybkiej inspekcji – karta graficzna NVIDIA), kamera, jedna sprawna płyta i jedno połączenie internetowe do zainstalowania środowiska uczenia. Nie są potrzebne uszkodzone płyty.

2. Interfejs programu w ciągu jednej minuty

Główna okno podzielone jest na dwie części. Po lewej stronie znajduje się nagrywane wideo z kamer oraz pasek stanu. Po prawej stronie znajduje się panel z zakładkami, w którym znajduje się cała kontrola. Granica między częściami można przeciągać; rozmiar, położenie wszystkich okien oraz układ programu są zapamiętane w bazie programu.

Główna okno: po lewej stronie obraz z żywej płyty z dwiema strefami (oba zielone – „normal”), po prawej stronie zakładka „Inspekcja” z modelem model_4\best.onnx. Proces produkcji jest włączony, a wskaźnik „norma · 112 punktów” jest aktywny.
Główna okno: po lewej stronie obraz z żywej płyty z dwiema strefami (oba zielone – „normal”), po prawej stronie zakładka „Inspekcja” z modelem model_4\best.onnx. Proces produkcji jest włączony, a wskaźnik „norma · 112 punktów” jest aktywny.

Przyciski nad wideo

PrzyciskCo otwiera
UKRYJ WIDEOUsuwa obraz z ekranu. Analiza trwa, oszczędzane jest tylko rysowanie.
WYJŚCIAOkno pomocnicze: dane kontaktowe dla dyskretnych kamer HIKROBOT i SICK, testowanie, podłączenie obciążenia (sekcja 7.1).
KAMERYOkno „Ustawienia podłączonych kamer”: dodawanie, ponowne podłączenie, usuwanie kamer oraz przegląd wszystkich parametrów odczytanych z sprzętu (sekcja 3.2).
WYCZYNIADŁAPodłączenie zewnętrznego czujnika do wejścia cyfrowego kamery, wraz z schematem i rozmieszczeniem (sekcja 6).
MODELY OGÓLNENazwane zestawy „kamera → model”, przypisywane całemu stanowisku jednym wyborem (sekcja 8).
Układ (kolumny)Liczba płytek kamer, które mają być wyświetlane w rzędzie; „■” – tryb pojedynczej kamery (wybrana kamera powiększona), „Auto” – liczba bazowa, „⛶” – kamery na cały ekran (wyjście Esc).
Wyświetlanie obszarów zainteresowania (ROI)Czy należy rysować siatkę stref na obrazie?

Paski po prawej stronie

PasekCel
CameraParametry wybranej kamery: czas naświetlania, wzmocnienie, kolor, rozdzielczość, automatyczna konfiguracja dla sztucznej inteligencji, zbiory zapisanych ustawień, prędkość analizy. W tym miejscu nie ma już ustawień dla sztucznej inteligencji – znajdują się one tylko na pasku "Inspekcja".
OUTPUTSystem sterowania: zasady dla stref – przesyłanie danych TCP do robota/PLC, cyfrowe wyjścia kamery i dźwiękowe powiadomienia, rejestr zdarzeń, baza danych.
AI ModelTworzenie modelu: folder, klasy, siatka stref, zdjęcia stref, anomalie stref, schemat płyty, ustawienia i uruchamianie uczenia.
InspectPasek roboczy: który model przeprowadza inspekcję, sprawdzanie stref i próg, ciągły strumień, na jakim sygnale nagrywać klatkę, sloty dla wielokrotnej inspekcji.
SettingsJęzyk interfejsu (14 języków), zakup licencji, zapisywanie i ładowanie ustawień, nagrywanie wideo.
ConsoleLogowanie zdarzeń: podłączenie kamer, przebieg szkolenia, uruchomienie silników, ostrzeżenia. Na ekranie wyświetlane są 800–1000 ostatnich wpisów, a cała historia zapisywana jest w plikach logs\engiai-*.log.

Pasek stanu

Obok przycisków wyświetlane jest aktualne stanie kamery: `LIVE (Android): 3264×2448 [HD USB Camera] – typ, rozdzielczość i nazwa; `AI: WAITING lub `AI: GPU (CUDA) – na czym model dokonuje analizy i ile milisekund zajmuje ostatni pomiar; `Net: całkowity … aktywny … Mbit/s – obciążenie sieci przez kamery GigE (zielony do 40% przepustowości, pomarańczowy do 70%, a następnie czerwony). Pas `Exp Load` pokazuje, jaką część czasu ekspozycji zajmuje czas naświetlania: jeśli jest ustawiony na prawo, kamera nie będzie w stanie utrzymać deklarowanej częstotliwości.

Każda kamera ma własny panel z nazwą, statusem "NA ŻYWO | AI: WŁ." oraz przyciskiem ponownego połączenia. Kliknięcie prawym przyciskiem myszy na kadrze otwiera menu obszaru, a przytrzymanie prawego przycisku myszy podczas przeciągania umożliwia panoramowanie powiększonego kadru.

3. Kamery: podłączenie i konfiguracja

3.1. Jakie kamery są obsługiwane

TypSposób podłączeniaCo można skonfigurować w programie
HIKROBOT MV-CS
(GigE, USB3)
Natywny SDK MVS. Dostęp jest możliwy tylko za pomocą numeru seryjnego, kolejność wpisywania nie ma znaczenia.Czas naświetlania od 6 µs, wzmocnienie w dB, FPS, rozdzielczość (AOI), poziom czerni 0…4095, wszystkie funkcje GenICam (tryby automatyczne, gamma, ostrość, balans bieli R/G/B, przesunięcie cyfrowe, obrót, pakiety GigE). Parametry zapisywane są w UserSet1 kamery. Wejście Line 0, wyjście Line 1, GPIO Line 2.
SICK picoCam
(IDS uEye, GigE)
Sterownik uEye. Kamera powinna być widoczna w IDS Camera Manager ze statusem „prawidłowo skonfigurowana”. Numer seryjny jest sprawdzany z kamerą, ponieważ DeviceID w uEye zmienia się przy każdym uruchomieniu.Jasność, wzmocnienie: 0…100, liczba klatek na sekundę (FPS), rozdzielczość, poziom czerni: 0…255, taktowanie pikseli, wzmocnienie sygnału, sprzętowe wzmocnienia kanałów R/G/B, sprzętowa krzywa gamma, układ Bayera. Parametry są zapisywane w pamięci kamery. Wejście triggera na fototranzystorze, wyjście lampy błyskowej (150 mA).
Kamera internetowa USB
(w liście – Android)
DirectShow przez OpenCV, różnią się przez moniker, dlatego dwie identyczne kamery nie są mylone.Rozdzielczość do 8K, FPS, wszystkie właściwości sterownika: jasność, kontrast, nasycenie, odcień, ostrość, gamma, wzmocnienie, czas naświetlania (z automatyką), ogniskowa (z automatyką), balans bieli (z automatyką), kompensacja oświetlenia i inne. Dostępne są tylko wejścia i wyjścia TCP.
IP-kamera RTSPAdres w formacie `rtsp://admin:hasło@192.168.1.64:554/…` należy wprowadzić ręcznie.Czas naświetlania, wzmocnienie, rozdzielczość i FPS są ustawiane w interfejsie webowym samej kamery. W programie: strefy, model i TCP.

Nie ma ścisłych ograniczeń dotyczących liczby kamer: płytki układane są w siatce w dowolnej liczbie; w rzeczywistych systemach jednocześnie działało 8 i 9 kamer. Każda kamera posiada własne modele, strefy, próg i tempo analizy.

3.2. Okno KAMERY: dodaj, podłącz, usuń

1
Kliknij KAMERY nad filmem. Otworzy się okno „USTAWIENIA PODŁĄCZONYCH KAMER” na cały ekran (aby zamknąć, naciśnij klawisz Esc).
2
Naciśnij + Dodaj kamery. Program zapyta zarówno sieć, jak i USB i wyświetli wszystkie znalezione urządzenia w jednym oknie: Hikrobot … SN: … IP: …, SICK … SN: … DeviceID: …, Android …. Kamery SICK są skanowane do 4 sekund, ponieważ urządzenie GigE nie pojawia się od razu w sterowniku. Zajęte lub nieprawidłowo skonfigurowane kamery SICK są oznaczone symbolem ⚠ wraz z przyczyną.
3
Zaznacz odpowiednie kamery i kliknij "Dodaj". Dodawaj kamery IP za pomocą przycisku "+", a kamery RTSP za pomocą linku.... Podczas łączenia się kamer, wyświetlany jest ekran początkowy z przyciskiem "Pomiń kamerę".
4
Kamera pojawi się w liście w wierszu o nazwie `Nazwa | Typ | Numer seryjny | Online lub Offline | AI: Włączone | Wyświetlacz: Włączony, a jej obraz – w lewym górnym rogu głównego okna.

Opcje znajdujące się pod listą dotyczą wybranej kamery: Włącz kamera (w przeciwnym razie kamera zostanie odłączona od urządzenia i zniknie z ekranu), Wyświetl wideo/obszary (wyświetlane jest tylko obraz, analiza działa zawsze), Włącz sztuczną inteligencję dla wybranej kamery. Przycisk Ponowne połączenie powoduje całkowite odłączenie i ponowne połączenie, co skutkuje ponownym uruchomieniem strumienia danych i przeładowaniem modeli.

Prawa część okna wyświetla wszystkie parametry kamery, odczytane z urządzenia podczas połączenia, wraz z grupami i jednostkami miary: "Wyświetl parametry", "Odczytaj ponownie z kamery", "Skopiuj do schowka". Jest to tylko widok: aby zmienić parametry, należy przejść do zakładki "Kamera".

Ważne. Kamera HIKROBOT działająca w standardzie GigE zapewnia unikalne połączenie. Po awaryjnym zamknięciu programu, kamera pozostaje zajęta do momentu, aż zostanie potwierdzony sygnał "heartbeat"; program czeka do 25 sekund (10 prób) i wyświetla komunikat "kamera jest zajęta przez inny proces". W przypadku firmy SICK, jeśli adres IP jest nieprawidłowy, program próbuje go automatycznie naprawić, jeśli adres ten nie pochodzi z podsieci adaptera.

3.3. Zakładka "Camera" dla urządzeń HIKROBOT i SICK.

Zakładka współpracuje z kamerą, której pole jest oznaczone niebieską ramką. Program nie zapisuje żadnych danych w kamerze podczas połączenia: kamera jest źródłem danych, a suwaki dostosowują się do jej wartości. Ustawienia można zapisać tylko świadomie, używając przycisku "Zapisz parametry".

1
Na dole, w odpowiednich polach, wprowadź Szerokość (W) i Wysokość (H) kadru (lub wybierz ustawienie z dostępnej listy, zawierającej tylko rozmiary obsługiwane przez tę kamerę) i naciśnij ZAMIEŃ. Zazwyczaj wybiera się pełny rozmiar kadru. Rozmiar jest zaokrąglany w dół, zgodnie z rozdzielczością kamery.
2
Naciśnij Automatyczna konfiguracja dla sztucznej inteligencji (na podstawie kadru). Program dobiera czas naświetlania (priorytet) i poziom ekspozycji (nie więcej niż 40), aby 99,5% wartości jasności znalazło się w zakresie 220…248, bez zbytniego oświetlenia, a następnie ustawia krzywą tonalną na 1,50, nasycenie na 115% i automatyczny balans bieli. Opcja "automatycznie" włącza tryb ciągły: program sprawdza i dostosowuje ustawienia co 3 sekundy, jeśli zmieni się oświetlenie.
3
W razie potrzeby, ustaw ręcznie: Ekspozycję (przesuwny regulator w mikrosekundach, podana wartość w ms, do 1 sekundy), Wzmocnienie, FPS, Poziom czerni. Dla firm SICK dodatkowo: Częstotliwość zegara pikseli (określa maksymalną wartość FPS i minimalny czas ekspozycji), Wzmocnienie, Zakres kolorów, Balans kolorów (czerwony/zielony/niebieski).
4
Naciśnij Zapisz ustawienia: plik camera_params\<SN>.ini oraz dane w pamięci kamery – UserSet1 dla HIKROBOT (z domyślnymi ustawieniami), EEPROM dla SICK. Wynik jest wyświetlany na przycisku («✔ Zapisano»). Dla HIKROBOT dostępna jest opcja Automatyczne zapisywanie w kamerze (UserSet1) po 5 sekundach od zmiany.

Blok «Hikrobot: ustawienia kamery (GenICam)»

Wyświetlane są tylko wartości, które kamera przekazuje. Wiersze: Automatyczna ekspozycja (Wyłączona / Raz / Ciągła), Automatyczne wzmocnienie, Zakres i tryb zakresu, Ostrość, Ton, Intensywność, Automatyczny balans bieli, Balans bieli dla poszczególnych kanałów, Cyfrowy przesunięcie, Poziom czerni włączony, Ograniczenie FPS włączone, Obrót w poziomie i pionie, GigE: rozmiar pakietu, GigE: opóźnienie między pakietami, GigE: limit przepustowości, Zdjęcie testowe. Przycisk Odczytaj parametry z kamery modyfikuje tabelę.

Blok „BARWA OBRAZU”

Rozkładka Bayera (Auto / BGGR / RGGB / GRBG / GBRG), nasycenie 0…200 %, Gamma 0,30…3,00, kontrast 50…200 %, przycisk resetu. Obróbka programowa jest stosowana do wszystkich elementów kadru: wyświetlanie, nagrywanie, wnioskowanie oraz zdjęcia do celów szkoleniowych, dlatego obraz podczas szkolenia i inspekcji jest identyczny. Dla urządzeń HIKROBOT rozkładka jest pobierana z formatu pikseli kamery, a dla kolorowych czujników SICK – z czujnika i jest doprecyzowywana na podstawie pierwszego kadru.

ParametrCo robiNa co wpływa
Analiz w sekundę (AI)górna granica tempa inspekcji, 1…200mniejsza wartość – mniejsza obciążenie karty graficznej; nie zależy od podłączenia kamery
Próg AInie ustawiany na karcie „Camera”próg rozpoznawania strefy – tylko na karcie „Inspect” (sekcja 5.2), jeden dla każdej kamery
Exposureczas ekspozycjiKrótko mówiąc: należy zmniejszyć ilość smarowania ruchomych elementów; brak smarowania jest niedopuszczalny.
Gain / Gain boostWzmocnienie sygnału matrycyZwiększa jasność, ale wprowadza szum.
Pixel clock (SICK)Częstotliwość taktowania czujnikaZmienia zakres FPS i czasu ekspozycji, które są odczytywane.
FPSCzęstotliwość klatek w trybie wolnymNie jest używana w trybie wyzwalania.
Szerokość / WysokośćRozmiar klatki (AOI)Mniejsza klatka oznacza wyższą częstotliwość i mniejszy ruch.
Ważne. Podczas tworzenia zestawu danych do treningu, należy zachować te same warunki, w jakich będzie działała linia: to samo oświetlenie, ta sama prędkość, to samo ustawienie kamery. Po zmianie ustawień, program przypomina w konsoli, że model należy ponownie wytrenować na nowych kadrach.

3.4. Kartka "Camera" dla kamery USB/webkamery

Dla kamer USB, kartka wyświetla blok "Kamera USB: rozdzielczość, FPS i właściwości". Właściwości sterownika, które kamera nie przekazuje, nie są wyświetlane; granice klatek są ustawiane przez program, ponieważ DirectShow nie informuje o zakresach.

1
Zastosowanie i Zastosuj. Przycisk Sprawdź pozwala wybrać standardowe rozdzielczości, od VGA do 8K, a następnie wyświetla tylko te, które zostały zaakceptowane przez kamerę. W linii "Rozdzielczość kamery" wyświetlane jest rzeczywiste rozdzielczości i liczbę klatek na sekundę (FPS).
2
Ustaw automatyczną ekspozycję, autofokus i automatyczną balancję bieli, a następnie naciśnij przycisk "Zablokuj ustawienia (wyłącz automatyczny tryb i zapisz aktualne wartości)". W ten sposób automatyczny tryb zostanie wyłączony, a program automatycznie dobierze odpowiedni czas naświetlania, aby uzyskać ten sam poziom jasności (w trybie automatycznym sterownik przekazuje ostatnio ustawiony, a nie automatycznie dobrany, czas naświetlania). Wartości i format są zapisywane w bazie danych i przywracane przy każdym kolejnym podłączeniu tego aparatu.
3
Sekwencja Pod kontrolą sztucznej inteligencji: Automatyczny dobór w oparciu o kształty (20–60 sekund, zmiana czasu i kontrastu na podstawie rzeczywistych zdjęć, kryterium – wyraźne kontury bez efektu prześwietlenia), Kształty, bez kolorów, Kształty, miękkie, Przywróć, Typowe.
4
Wartości wpisywane w polach są natychmiast zapisywane w kamerze, bez potrzeby wciśnięcia klawisza Enter, a następnie są automatycznie zapisywane w bazie danych. Przycisk "Odczytać właściwości z kamery" potwierdza, że kamera faktycznie zarejestrowała dane.
Wskazówka. Dla sztucznej inteligencji lepiej jest usuwać kolor nie poprzez regulację nasycenia kamery, a za pomocą ogólnej opcji "Uczyć w odcieniach szarości (ustawienie globalne modelu)" znajdującej się na karcie "Camera" (na karcie "Model AI" nazywa się ona "Uczyć w szarościach"): w ten sposób zarówno zdjęcia używane do treningu, jak i obrazy wyświetlane do inspekcji będą w odcieniach szarości, a kamera nadal będzie przekazywać kolor do operatora. Model z przykładu został wytrenowany w odcieniach szarości.

3.5. Zachowane ustawienia kamery (zestawy)

Blok "Zapisane ustawienia kamery" jest wyświetlany dla urządzeń USB, SICK i HIKROBOT. Po dołączeniu odpowiednich parametrów do urządzenia, zapisz je pod nazwą. Aby użyć zestawu ustawień dla innej płyty lub innego oświetlenia, wystarczy wybrać odpowiedni zestaw z listy.

  • Zapisz jako… – odczytuje aktualne ustawienia z kamery i pyta o nazwę. Jeśli nazwa jest już zajęta, proponuje ją zmienić.
  • Wybór zestawu w liście natychmiast zapisuje parametry w kamerę i zatwierdza je: dla USB – w bazie danych, dla SICK i HIKROBOT – w pliku parametrów oraz w pamięci kamery (UserSet1 / EEPROM). Następnie panel odczytuje wartości z urządzenia i wyświetla, ile parametrów zostało zaakceptowanych, a ile odrzucono.
  • Ponowne zapisanie nadpisuje wybrane ustawienia aktualnymi wartościami, Zmiana nazwy i Usuwanie dotyczą tylko wpisów w bazie danych, a ustawienia w kamerze pozostają bez zmian.

Co zawiera zestaw: dla urządzeń USB – rozdzielczość, liczba klatek na sekundę (FPS), właściwości sterownika i tryby automatyczne; dla urządzeń SICK – wzmocnienie, czas naświetlania, FPS, poziom czerni, taktowanie pikseli, wzmocnienie sygnału, balans bieli R/G/B, krzywa gamma sprzętowa i kolor programowalny; dla HIKROBOT – wzmocnienie, czas naświetlania, FPS, poziom czerni oraz wszystkie węzły GenICam. Rozmiar klatki dla kamer przemysłowych nie jest zawarty w zestawie; jego zmiana powoduje ponowne uruchomienie systemu. Zestawy są uniwersalne dla wszystkich kamer tego samego typu, dlatego na stanowisku z identycznymi kamerami, jeden zestaw jest przypisany do każdej z nich.

3.6. Sieć GigE i ponowne podłączenie

  • Rozmiar pakietu GigE HIKROBOT jest automatycznie ustawiany na optymalny podczas otwierania; można go również ręcznie dostosować w bloku GenICam. Duże klatki (8164–9000) zmniejszają obciążenie, a w przypadku klatek z przerywanym strumieniem, ustaw wartość 1500 i zwiększaj opóźnienie między pakietami.
  • Linia Net oblicza obciążenie generowane przez każdą kamerę, bazując na własnych danych (rozmiar przesyłanych obrazów × częstotliwość), a następnie porównuje to z rzeczywistym ruchem sieciowym. Znaczne rozbieżności wskazują na utratę obrazów lub obecność niepożądanego ruchu. Warto zauważyć, że w tym obliczeniu nie uwzględniono wirtualnych adapterów i filtrów NDIS (np. GigEVision, uEye, Npcap).
  • Jeśli kamera jest widoczna, ale obraz nie jest przesyłany, naciśnij przycisk "Połącz ponownie" (w oknie kamery lub na kafelku). Zazwyczaj przyczyną jest ograniczenie przepustowości sieci lub portu USB.
  • SICK picoCam traci ustawienia po zamknięciu zasobu; jeśli w samej kamerze nie ma pliku z parametrami, program stosuje plik i proponuje, aby użytkownik kliknął "Zapisz ustawienia", aby zapisać je w kamerze.

4. Model STREFA-PARA: od siatki do wytrenowanej modelu

4.1. Jak działa metoda: jeden model, klasa dla każdej strefy

Model STREFA-PARA to standardowa sieć klasyfikacyjna YOLO11, która posiada tyle klas, ile obszarów, plus opcjonalne klasy anomalii. Klasa to folder wewnątrz folderów `train` i `val`. Program automatycznie tworzy wszystkie foldery; nie trzeba tworzyć ich ręcznie. Przykład struktury folderu modelu po treningu wygląda następująco:

Katalog model_4: zdjęcia treningowe i walidacyjne, data.json: obszary, live_template: schemat płyty, board.json: próg, best.onnx: wytrenowana sieć.
Katalog model_4: zdjęcia treningowe i walidacyjne, data.json: obszary, live_template: schemat płyty, board.json: próg, best.onnx: wytrenowana sieć.
model_4\ train\ Zdjęcia do celów szkoleniowych zone_001\ Norma dla strefy 1 (C30): real_... z kamery, syn_... dane syntetyczne zone_001_anomaly\ Wada strefy 1: syn_…_combo1_d, _rotate1 … zone_002\ Norma strefy 2 (BR1) zone_002_anomaly\ Wada strefy 2 val\ Zbiór danych do weryfikacji: te same cztery foldery, które zostaną automatycznie wypełnione data.json Obszary: tabele, współrzędne, rozmiar, kolor, włączone/wyłączone; klasy; sloty live_template.png / .txt wzór płytki: klatka, obszar wyrównania, czerwone (wykluczone) obszary live_template_zones.png Szablon z naniesionymi obszarami i numerami board.json Próg rozpoznawania obszaru: { "threshold": 0.50 } train_gray.txt Cecha "skala odcieni szarości" best.onnx Wytrenowany model – to on jest przydzielany do inspekcji runs\ diag\ *.cache służbowe: przebieg szkolenia, zdjęcia do analizy, pamięć podręczna szkolenia
train: dwie foldery dla każdej strefy – norma i anomalia.
train: dwie foldery dla każdej strefy – norma i anomalia.
val: ta sama struktura, program automatycznie ją wypełnia podczas nagrywania.
val: ta sama struktura, program automatycznie ją wypełnia podczas nagrywania.

Pliki real_…jpg – to prawdziwe fragmenty z kamery (są zapisywane zarówno w train, jak i w val), syn_…jpg – to dane syntetyczne, edit_…jpg – to zdjęcia z edytora obszaru. W przykładzie, po zrobieniu zdjęć kilku płyt: zone_001 – 502 pliki w train i 111 w val, zone_001_anomaly – 680 i 144, zone_002 – 813 i 181, zone_002_anomaly – 340 i 60.

Jedno miejsce przechowywania. Cała struktura modelu – obszary inspekcji, obszar wyrównywania, klasy i sloty – znajduje się wyłącznie w folderze modelu: data.json i live_template.txt. W bazie programu nie ma już oddzielnych obszarów, dlatego w zakładkach „AI Model” i „Inspect” w edytorze ROI wyświetlane są te same obszary, a cały folder modelu można skopiować na inny komputer, bez utraty żadnych danych. Stare modele są automatycznie przenoszone do pliku podczas pierwszego otwarcia.

Program automatycznie rozpoznaje model jako „płatę” na podstawie obecności klas, takich jak `zone_NNN`. Numer klasy odpowiada jednemu z numerów obszarów w siatce (od 1 do N). W związku z tym, kluczowe zasady tego algorytmu to:

Ważne. Strefy są częścią modelu. Po zakończeniu tworzenia klas, nie można ich modyfikować (dodawać, usuwać, przestawiać tabele): numery stref będą niekompatybilne z klasami, a takie strefy otrzymają oznaczenie NO_ZONE_CLASS. Jeśli strefy wymagają zmiany, należy utworzyć nowy model.

4.2. Utworzenie modelu

1
Otwórz zakładkę "Model AI" i kliknij "Utwórz nową model AI".
2
Wskaż folder nadrzędny oraz nazwę modelu (program proponuje domyślne model_N). Domyślny zestaw klas zawiera normal i anomaly; dla STREFA-PARA nie są one potrzebne – klasy obszarów zostaną utworzone automatycznie podczas pierwszego skanowania obszarów. Możesz je usunąć lub pozostawić puste: przed treningiem program zaproponuje usunięcie pustych klas.
3
Kliknij Utwórz model. Na dysku pojawią się foldery train i val, a model będzie dostępny do edycji (nie będzie automatycznie ładowany). Jeśli model już istnieje, wybierz Wybierz folder modelu.

4.3. Oznaczenie stref na płytce

1
Umieść poprawną płytę dokładnie w tym miejscu, w którym będzie się znajdować na linii. Naciśnij przycisk ROI → dodaj do klasy (model uczenia).
2
W oknie dialogowym "Zachowanie ROI w klasie" wybierz dowolną klasę (do oznaczania to nie ma znaczenia) lub wpisz nową nazwę i kliknij OK + otwórz ROI. Później, w tym samym miejscu, będą widoczne wszystkie klasy obszarów, pogrupowane według wzorca zone_###: kliknięcie w grupę powoduje jej zaznaczenie, a drugie kliknięcie usuwa zaznaczenie; przycisk Usuń grupę usuwa całą grupę wraz z obrazami.
3
Zostanie otwarte okno „Wybór obszaru ROI”. Przeciągnij za pomocą lewego przycisku obszar wokół elementu. Pojawi się pole Rozmiar obszaru, px: wpisz rozmiar (zazwyczaj przybliżony do wielokrotnika 32, np. 256) i naciśnij Enter – obszar stanie się równym kwadratem z oznaczonym rozmiarem. Powtórz to dla każdego elementu, który chcesz sprawdzić. W przykładzie mamy dwa obszary: wokół komór C30 i wokół komór BR1.
4
Jeśli istnieje wiele szczegółów i są one rozmieszczone równo, wygodniej jest użyć siatki: wystarczy przesunąć ramkę po całej powierzchni i wprowadzić wymiary obszaru – program wyświetli, ile wierszy i kolumn udało się uzyskać. Alternatywnie, można ustawić w bloku `Siatka obszarów` liczbę wierszy, kolumn, szerokość i wysokość komórek, a następnie kliknąć `Utwórz siatkę`. Siatkę można również przeciągnąć za pomocą myszy, aby dokładnie dopasować ją do danego przedmiotu.
5
Prawa strona wyświetla każdą strefę z jej wymiarami i zaznaczoną opcją „aktywna”. Strefa, która nie jest aktywna, nie generuje żadnej klasy, a całkowicie ukryta tabela nie bierze udziału w inspekcji. Przycisk Wszystkie strefy ✓ / ✗, Kolor, Usuń, Usuń WSZYSTKIE strefy. Zamknięcie okna przy użyciu klawisza Enter – strefy zostaną zapisane w data.json i pojawią się na ekranie w kolorze żółtym.
Wynik oznaczania w zakładce AI Model: dwie żółte strefy na żywym obrazie – BR1 na górnym prawym i C30 na dolnym lewym. Po prawej znajdują się przyciski modelu STREFA-PARA, znacznik „Zablokowanie stref w produkcie za pomocą oznaczeń” oraz ustawienia uczenia.
Wynik oznaczania w zakładce AI Model: dwie żółte strefy na żywym obrazie – BR1 na górnym prawym i C30 na dolnym lewym. Po prawej znajdują się przyciski modelu STREFA-PARA, znacznik „Zablokowanie stref w produkcie za pomocą oznaczeń” oraz ustawienia uczenia.
Wskazówka. Komponent powinien zajmować znaczną część obszaru, a wokół powinny pozostać ścieżki, oznaczenia i miejsca montażowe. To właśnie to "podłoże" jest następnie wykorzystywane do tworzenia syntetycznych danych (sekcja 4.6). Dla płyt z komponentami 0603–1206, przy rozdzielczości 11 px/mm, dobrze sprawdza się wartość 128 px; dla kondensatorów, mostów i złączy – 192–256 px, jak w przykładzie. Wartość "rozmiaru wejścia" (Image Size) powinna być następnie ustawiona na wartość zbliżoną do rozmiaru obszaru.

Żółte strefy: usunięcie strefy z danych syntetycznych jednym kliknięciem.

Na zakładce "Model AI", kliknij lewym przyciskiem myszy na istniejący obszar bezpośrednio na wideo: obszar ten zmieni kolor na czerwony i nie będzie uwzględniany w analizie obszarowej ani w wykrywaniu anomalii. Ponowne kliknięcie przywraca mu pierwotny stan. Liczniki plików w oknach "dane syntetyczne" są aktualizowane natychmiast, a napis "wyłącz. N" nad klatką wskazuje, ile obszarów jest wyłączonych. Lista czerwonych obszarów jest przechowywana dla każdej kamery i modelu; na zakładce "Inspektuj" ten sam obszar pozostaje w normalnym stanie (tam znajdują się własne, żółte obszary – rozdział 5.5).

4.4. Zablokowanie wzoru: obszar wyrównania

Obszary inspekcji są definiowane w odniesieniu do jednego położenia płytki. Aby na linii można było umieścić inną płytkę z przesunięciem i obrotem, program zapamiętuje wzorzec: klatkę referencyjną i obszar wyrównania – fragment płytki z elementami, za pomocą którego produkt jest lokalizowany w każdej kolejnej klatce. Po znalezieniu obszaru, program przenosi obszary inspekcji na nową płytkę. W ten sposób działa proces obrazowania, przetwarzania danych i inspekcji.

Dwa różne prostokąty. Obszary kontroli to obszary, które model sprawdza (zielone). Obszar wyrównania to obszar, w którym szuka się komponentu (pomarańczowy obrys). Punkty odniesienia nigdy nie powinny znajdować się w obszarach kontroli: jeśli komponent byłby szukany bezpośrednio w kondensatorze, przesunięty kondensator "pociągnąłby" za sobą również obszar kontroli, a błąd stałby się niewidoczny. Dlatego w obszarze wyrównania należy używać sitodruku, otworów, ścieżek i mikroobwodów, ale nie należy używać stołu i taśmy.
1
Na zakładce "Model AI" zaznacz opcję "Zablokuj obszary w odniesieniu do znaczników" i ustaw wartość "czas wyszukiwania, ms" (domyślnie 100). Umieść płytkę pod kamerą i naciśnij przycisk "Zablokuj wzorzec".
2
Powstanie okno „Obszar dopasowywania: gdzie szukać komponentów” z dynamicznym widokiem i zielonymi obszarami „Inspekcja”. Przeciągnij ramkę lewym przyciskiem, aby zaznaczyć obszar płyty z komponentami. Na prawej stronie od razu zobaczysz „Punkty odniesienia: N · Dopasowanie: precyzyjne / perspektywiczne”: powinno być ich setki, a jeśli „mały obszar – powiększ go”. Nowa ramka zastępuje starą, a przycisk prawa usuwa ją.
3
Naciśnij ✔ Wyszukaj obszar na podstawie zaznaczonego obszaru. Druga przycisk ✔ Wyszukaj obszar na podstawie obszarów "inspekcja" wybiera obszar, który jest zaznaczony w polu – tylko wtedy, gdy w pobliżu nie ma nic innego. Jeśli opcja Pytaj o obszar wyrównania za każdym razem jest wyłączona, następna operacja powtórzy poprzedni obszar bez okna.
4
Program wyświetla „wzorzec zarejestrowany: Złącze N, 1 punkt, punkty K” oraz zapisuje live_template.png i live_template.txt (ramka, obszar, obszary czerwone). Pole „Pokazuj obszary robienia zdjęć na ramce” rysuje znalezione obszary na nagraniu, a punkty odniesienia, na podstawie których dokonano pomiaru, są oznaczane niebieskimi punktami – dzięki nim można zobaczyć, na czym program „bazuje”.
Okno obszaru wyrównania: pomarańczowy obrys – fragment płytki z elementami (3000 punktów odniesienia), zielone – strefy inspekcji C30 i BR1, które nie znajdują się w obrysie.
Okno obszaru wyrównania: pomarańczowy obrys – fragment płytki z elementami (3000 punktów odniesienia), zielone – strefy inspekcji C30 i BR1, które nie znajdują się w obrysie.
Obraz po ustawieniu: obszary zostały zidentyfikowane i oznaczone, "normal" oznacza obszar, granice obszaru wyrównania oznaczone są liniami, a punkty oznaczają dopasowane punkty odniesienia na płytach (które nie znajdują się w obszarze wyrównania).
Obraz po ustawieniu: obszary zostały zidentyfikowane i oznaczone, "normal" oznacza obszar, granice obszaru wyrównania oznaczone są liniami, a punkty oznaczają dopasowane punkty odniesienia na płytach (które nie znajdują się w obszarze wyrównania).
Model dopasowywaniaKiedy stosować
Automatycznie (zalecane)Płyta jest dopasowywana w sposób sztywny (przesunięcie, obrót, skalowanie); perspektywa jest łączona tylko wtedy, gdy znacznie lepiej dopasowuje się. Dokładność w małym obszarze wyrównania to 1–2 px.
SztywnoAparat jest ustawiony prosto, a płyta leży płasko. Najbardziej stabilny wariant, gdy obszar wyrównania jest mały.
PerspektywnieAparat jest ustawiony pod kątem lub płyta jest nachylona. Wymagana jest duża obszar z punktami na całej szerokości, w przeciwnym razie występuje problem z homografią.

Przycisk "wzorzec z obszarami" otwiera zapisany wzorzec z siatką i numerami obszarów (sekcja 4.8). Znaleziona płytka jest sprawdzana pod kątem zgodności z oczekiwanymi parametrami: powierzchnia w zakresie od 0,5 do 2 powierzchni wzorca, obecność wypukłego czworoboku, punkty odniesienia powinny zajmować co najmniej jedną czwartą obszaru wzdłuż każdej osi – w przeciwnym razie wynik jest odrzucany, a w konsoli wyświetlany jest komunikat "płytka nie została znaleziona".

Ważne. Wcześniej, gdy na obrazie było niewiele obszarów, które "wychodziły poza granice", to wynikało z tego, że płat był szacowany na podstawie poszczególnych obszarów. Teraz, po wprowadzeniu obszaru wyrównania, liczba obszarów na płytce wzrosła z 46–51 do 106–112, co stanowi 134.

4.5. Zdjęcie obszarowe: norma i jej dane syntetyczne

Przycisk STREFA-PARA: zdjęcie w strefach ma na celu: podział obrazu na strefy, umieszczenie wycinki każdej strefy w odpowiedniej kategorii zone_NNN oraz dodanie danych syntetycznych, które reprezentują zakres zdjęć, a nie błąd: płyta została umieszczona nie idealnie, światło jest nieco inne, a czujnik generuje szum.

"STREFA-PARA: zdjęcie w oknach podzielonym na strefy": liczba wariantów, zdjęcia w oknach podzielonych na strefy w czasie, udział w val, przesunięcie/obrót/zmiana skali okna w oknach podzielonych na strefy względem całego kadru, ustawienia oświetlenia i szumu, podsumowujący licznik plików. Okno można rozciągnąć za pomocą myszy.
"STREFA-PARA: zdjęcie w oknach podzielonym na strefy": liczba wariantów, zdjęcia w oknach podzielonych na strefy w czasie, udział w val, przesunięcie/obrót/zmiana skali okna w oknach podzielonych na strefy względem całego kadru, ustawienia oświetlenia i szumu, podsumowujący licznik plików. Okno można rozciągnąć za pomocą myszy.
UstawieniaCo robi i jakie ustawienia są domyślne
Warianty dla każdej strefyIle wariantów utworzyć dla jednej wycinki. Zalecane: 20, 0 – tylko wzorzec, maksymalnie 500.
Zdjęcia w oknach podzielonych na strefy w czasie: każdy wariant z nowego kadru z kameryWłączone, okres 800–1200 ms (nie mniej niż czas naświetlania). Każdy wariant pochodzi z nowego, rzeczywistego kadru: rzeczywisty szum czujnika, wibracje i migotanie światła zamiast narysowanych.
Każdy wariant również w val z prawdopodobieństwem, %20 %. Wzorzec zawsze trafia do val: w Ultralytics każdy klas musi być w obu folderach.
Trenowanie w skali szarościOgólny wzór: kolor jest usuwany z norm, anomalii i inspekcji. Nie można mieszać plików o różnych kolorach i szarych w jednej ustawieniu; program ostrzega.
Przesunięcie, px · w którym kierunkuOkno obszaru przesunięcia przesuwa się wzdłuż całego kadru o 0…2 px w zaznaczonych kierunkach (← → ↑ ↓); brakujący fragment pobierany jest z sąsiedniej powierzchni płytki, a otwór pozostaje równy. Opcja „wszystkie kierunki” pozwala na ustawienie wartości dla każdego kierunku w oddzielnym pliku, a opcja „jedna losowa” – w jednym pliku.
Obrót, ° · w którym kierunkuDomyślnie wyłączone: na płycie, zdefiniowanej w obszarze wyrównania, obrotu nie ma, a włączenie rozmywa granicę z wadą. "w lewo / w prawo", "wszystkie kierunki / losowy" – tak jak w przypadku przesunięcia.
Skala, % · zmniejszenie / powiększenieDomyślnie wyłączone. Dwie zaznaczone opcje: zmniejszenie (<100) i zwiększenie (>100, obszar działania obejmuje sąsiednie klatki). Każda zaznaczona opcja odpowiada oddzielnemu plikowi.
Jasność / Kontrast / GamaLosowa wartość z zakresu dla każdego wariantu: jasność 88…112, kontrast 88…112 %, gama 98…102 % (na zdjęciu); w profilu "Przesunięcie elementów" światło jest szersze, aby nie stało się znakiem.
Szum (sigma) / RozmycieRozdzielczość czujnika 3…8 poziomów, lekki efekt rozmycia 0,4…0,8 px.
Kolumna "ogólna"Z zaznaczoną opcją, element wchodzi do ogólnego pliku wraz z pozostałymi; bez niej tworzy oddzielny plik "wzorzec + tylko ten element". Im więcej elementów, tym więcej plików dla danego wariantu.
1
Naciśnij STREFA-PARA: zdjęcie według stref. W dolnej części okna dialogu, system automatycznie oblicza: „Na wersję: 1 plik. Na strefę: 21 w train, ≈5 w val. Łącznie: ≈ 52 plików. Zdjęć z aparatu: 20, ≈16 szt.” (dla dwóch stref).
2
Wybierz profil: Domyślny (zmiana 0–2 px, jasność ±5, kontrast 95–105 %), Przesunięcie elementów (zmiana 0–1 px, jasność -10…10) lub Kolor i odcień (zmiana 0–2 px, jasność ±2, kontrast i gama wyłączone, aby odcień pozostał cechą).
3
Naciśnij Usuń. Proces generowania odbywa się w tle, z oknem postępu "Strefa 1/2 · 26 plików · Kadr 4/20" oraz przyciskiem anulowania. Po zakończeniu: "Gotowe: 2 strefy → klasy zone_001…zone_002, 52 plików". Program automatycznie ustawia parametry uczenia: Rozmiar obrazu 128, Rozmiar modelu s, Epoki 50, Partia 64 (sekcja 4.9).
4
Powtórz zdjęcie za pomocą tego samego przycisku na kilku różnych, sprawnych płytach. Dla pewnej, wysokiej jakości wersji, należy mieć co najmniej 80 plików na klasę, a przede wszystkim kilka rzeczywistych egzemplarzy (5–10 płyt), a nie pojedynczy obraz z setką wariantów.
train\zone_001 – norma C30 w obwodzie: real_… z kamery i syn_…_n1…n20 z sufiksami przesunięcia (shiftd, shiftl, shiftr, shiftu). Napis jest zawsze umieszczony w odpowiednim miejscu względem podstawy.
train\zone_001 – norma C30 w obwodzie: real_… z kamery i syn_…_n1…n20 z sufiksami przesunięcia (shiftd, shiftl, shiftr, shiftu). Napis jest zawsze umieszczony w odpowiednim miejscu względem podstawy.
trainzone_002 – norma BR1: real_… z trzema warstwami i wariantami z lekkim obrotem (rotl, rotr) oraz przesunięciem.
trainzone_002 – norma BR1: real_… z trzema warstwami i wariantami z lekkim obrotem (rotl, rotr) oraz przesunięciem.

4.6. Dane syntetyczne: przesunięcie elementu wraz z podstawą w dwa kliknięcia

Dane syntetyczne są generowane na podstawie obserwacji. Model uczy się szczególnie dobrze, gdy zamiast narysowanego plamki, prezentuje mu sam element do inspekcji, wraz z elementami płyty wokół niego: czyli linie z nadruku, ścieżki, kolor i fakturę podłoża. Program zmniejsza obszar do rozmiaru elementu, a następnie przesuwa lub obraca ten obszar, wypełniając krawędzie sąsiednimi pikselami z obrazu. W rezultacie element znajduje się nie w swoim pierwotnym miejscu względem podłoża: dokładnie tak, jak widzi kontroler podczas rzeczywistej inspekcji, z rzeczywistym szumem czujnika, rzeczywistym światłem i rzeczywistą płytą.

Norma i anomalia w tej samej strefie różnią się jedynie położeniem elementu względem podstawy. Wszystko inne jest identyczne, dlatego sieć uczy się powiązań "element ↔ płytka", a nie odcieni plamy czy oświetlenia.

Dwa kliknięcia:

1
STREFA-PARA: zdjęcie w oparciu o strefy → Wygenerować. Wycinki normy dla każdej strefy z 20 różnymi ustawieniami (przesunięcie okna 0–2 px, jasność, szum) są umieszczane w klasach zone_NNN.
2
STREFA-PARA: anomalie obszarów → Utworzyć. Domyślne ustawienia obejmują już oba rodzaje przesunięcia: przesunięcie obszaru o 5–12 px we wszystkich kierunkach oraz obrót obszaru elementu (70% obszaru, okrąg) o 15–180°. Pliki są umieszczane w klasach zone_NNN_anomaly.

Nie ma potrzeby dokonywania dalszych ustawień: nie trzeba rysować schematów, ani szukać wadliwych płyt. Następnie: TRENING MODELU AI.

Przed i po: co program osiąga

PRZED: obraz sprawnej płyty. Obie strefy są zielone – „normalne”.
PRZED: obraz sprawnej płyty. Obie strefy są zielone – „normalne”.
PO: w te same strefy umieszczone są dane syntetyczne z folderów z błędami – C30 przesunięte w prawo i w dół, BR1 obrócone. Obie strefy są czerwone – „błąd”. Płyta będzie wyglądać również w przypadku rzeczywistego błędu na linii.
PO: w te same strefy umieszczone są dane syntetyczne z folderów z błędami – C30 przesunięte w prawo i w dół, BR1 obrócone. Obie strefy są czerwone – „błąd”. Płyta będzie wyglądać również w przypadku rzeczywistego błędu na linii.
Duży, strefa 1 (C30): z lewej strony – norma z kamery, z prawej – dane syntetyczne – element wraz z podstawą przesunięte w dół i w prawo, krawędź wypełniona przez elementy z obrazu.
Duży, strefa 1 (C30): z lewej strony – norma z kamery, z prawej – dane syntetyczne – element wraz z podstawą przesunięte w dół i w prawo, krawędź wypełniona przez elementy z obrazu.
Duży, strefa 2 (BR1): z prawej strony – obszar elementu obrócony o 180° – platformy są na miejscu, obudowa patrzy w nieprawidłowy kierunek.
Duży, strefa 2 (BR1): z prawej strony – obszar elementu obrócony o 180° – platformy są na miejscu, obudowa patrzy w nieprawidłowy kierunek.

Katalogi anomalii, takie, jakie widzi użytkownik

Porównaj z katalogami "norma" z sekcji 4.5: różnica dotyczy jedynie położenia elementu względem podstawy.

„train\zone_001_anomaly” – błąd w C30. W każdej kopii t000, t001… znajdują się dziewięć plików: combo1_d, _dl, _dr, _l, _r, _u, _ul, _ur – obszar przesunięty o 5–12 px w ośmiu kierunkach (d = w dół, u = w górę, l = w lewo, r = w prawo), rotate1 – obszar kondensatora obracany.
„train\zone_001_anomaly” – błąd w C30. W każdej kopii t000, t001… znajdują się dziewięć plików: combo1_d, _dl, _dr, _l, _r, _u, _ul, _ur – obszar przesunięty o 5–12 px w ośmiu kierunkach (d = w dół, u = w górę, l = w lewo, r = w prawo), rotate1 – obszar kondensatora obracany.
„train\zone_002_anomaly – uszkodzony BR1: obudowa została umieszczona na każdej ze ośmien stron i obracana pod różnym kątem. Tekstura płyty i styków jest oryginalna.
„train\zone_002_anomaly – uszkodzony BR1: obudowa została umieszczona na każdej ze ośmien stron i obracana pod różnym kątem. Tekstura płyty i styków jest oryginalna.
Jak czytać nazwy plików. syn_<data>_t003_combo1_dr.jpg – kopia 3, plik ogólny, przesunięcie w dół (d = down, r = right, u = up, l = left); …_rotate1.jpg – obrót obszaru elementu; …_scale1_dn/_up – skalowanie w górę lub w dół; …_tl/_c/_br – lokalizacja obszaru (kąt, środek). Nazwa zawsze wskazuje, jaki konkretny błąd występuje w pliku, a zbędne elementy usuwa się przyciskem „Usuń dane syntetyczne klasy (trening + walidacja)” w oknie obszarów.

Oznaczanie elementów: dlaczego "gruba" kreska i jak to ustawić

Na elementach znajdują się oznaczenia – napisy i linie o grubości 1–2 px. Oznaczenia różnią się w zależności od partii: inny font, napis na kondensatorze jest skierowany w inną stronę, a część symboli jest zamazana. Jeśli uszkodzenie, takie jak "zarys", zostanie narysowane cienką linią, system nie będzie w stanie odróżnić go od linii oznaczenia i od szumu czujnika, co doprowadzi do odrzucenia sprawnych płyt z innej partii elementów.

Dane syntetyczne STREFA-PARA rozwiązują to z obu stron. Po pierwsze, głównym problemem jest przesunięcie elementu, które przenosi oznaczenie razem z obudową, więc oznaczenie nie staje się cechą: wygląda tak samo zarówno w normie, jak i w przypadku awarii. Po drugie, domyślnie narysowana linia / ryska jest gruba (⅛ obszaru, nie mniej niż 3 px) i wyraźnie nie przypomina kreski oznaczenia. Grubość jest teraz określana jawnie: pole Grubość linii, px (0 = automatycznie) wpływa na linię i krzyżyk.

Narysowane defekty (prostokąt, okrąg, linia, „usunięty element”, rozmyte plamki i inne) są zgrupowane w składanym bloku Sztuczne defekty na obszarze wyciętego elementu. Domyślnie jest on wyłączony i złożony: głównym defektem na płytce jest przesunięcie. Włącz go, gdy potrzebujesz: obszar zalany, nadmiarowa kropla, zamazana etykieta.

Parametry figurCo określa
Wymiar: od … do, % od obszaru / pxWymiar lub długość figury. W procentach – od mniejszej strony obszaru (w odniesieniu do dowolnego obszaru); w px – identyczny dla wszystkich obszarów, wygodne, gdy znany jest wymiar rzeczywistego uszkodzenia w pikselach.
Kolorowaniepełne / obramowanie / mieszane (obramowanie również "grube").
Grubość linii, pxLinia / kreska i krzyżyk. 0 – automatyczne (grube). Dla oznaczania elementów nie należy używać wartości poniżej 3 px.
Gdzie występuje uszkodzeniew centrum, po lewej, po prawej, od góry, od dołu — gdzie umieścić figurę (z niewielkim, losowym rozmieszczeniem). Opcja „wszystkie pozycje” — dla każdego zaznaczonego miejsca w oddzielnym pliku; „jedna losowa” — jeden plik, losowe miejsce spośród zaznaczonych. Licznik plików w dolnej części okna automatycznie to uwzględnia.
Kolory figur: 5 slotówPięć slotów zamiast listy nazw. Pole zaznaczone – slot jest aktywny, kolor wybierany losowo spośród zaznaczonych (±12 w kanale, aby nie był jednolity). Przycisk z próbką – wybór koloru z palety, 💧 pipeta – kliknięcie na obraz z kamery (kółko – zoom, przycisk z prawej – panorama) i wybór koloru z rzeczywistego elementu lub płytki. Domyślnie włączone są dwa sloty – ciemny i jasny, pozostałe trzy są wyłączone.
Kolumna "ogólna"Oznaczony typ uszkodzenia trafia do wspólnego pliku wraz z innymi „ogólnymi” (np. rysy na powierzchni przesuniętego elementu). Bez zaznaczenia – oddzielny plik „norma + tylko to uszkodzenie”. Typ z „wszystkimi pozycjami” zawsze jest oddzielny.

4.7. Anomalia obszarów: okno ustawień

Przycisk STREFA-PARA: anomalie obszarów tworzy klasy zone_NNN_anomaly na podstawie wycięć z normy. Obszary obejmują wszystkie, z wyjątkiem czerwonych (wyłączonych poprzez kliknięcie w obraz w AI Model, sekcja 4.3). Klasy anomalii nie są potrzebne wszędzie: dodawaj je do obszarów, w których faktycznie występują wady, a pozostałe obszary model sprawdzi na podstawie rozpoznawania.

Okno „STREFA-PARA: anomalia obszarów”: kopiowanie uszkodzenia na górze; składana grupa narysowanych figur z parametrami, lokalizacją i paletą; przesuwanie, obracanie i skalowanie obszaru z kształtem obszaru i skalą ±%; podobszary; oświetlenie na obszarze uszkodzenia; zdjęcia w czasie i val.
Okno „STREFA-PARA: anomalia obszarów”: kopiowanie uszkodzenia na górze; składana grupa narysowanych figur z parametrami, lokalizacją i paletą; przesuwanie, obracanie i skalowanie obszaru z kształtem obszaru i skalą ±%; podobszary; oświetlenie na obszarze uszkodzenia; zdjęcia w czasie i val. Okno rozciąga się za pomocą myszy.
UstawieniaCo robi
Kopiowanie uszkodzeniaJedna wartość dla wszystkich rodzajów: ile kopii z nowymi losowymi parametrami należy utworzyć dla każdego zaznaczonego rodzaju (domyślnie 10).
▸ Defekty powierzchni po wycięciuDomyślna grupa: prostokąt, małe prostokąty, okrąg, elipsa, trójkąt, ósemka, linia/ślad, krzyż, `usunięty element`, rozmyte plamka, plamka redukcyjna, fragment z innej strefy. Parametry kształtów, lokalizacja i paleta – sekcja 4.6.
Przesunięcie, px · gdzie · kształtGłówny problem z płytą. Obszar (okrąg lub kwadrat) przesuwa się o 5–12 pikseli w określone kierunki: ← → ↑ ↓ oraz dwie przekątne ⤡ ⤢. `skala w pionie / w poziomie, ±%` – rozmiar obszaru w stosunku do obszaru: 0 – cały obszar, -30 – obszar o 30% mniejszy (przesuwa się tylko element, podstawa pozostaje), +30 – obszar większy niż obszar (obejmuje sąsiednie elementy z obrazu). `wszystkie kierunki` – dla każdego kierunku, w pliku.
Obrót, ° · kształtObszar (okrąg lub kwadrat, ten sam skala ±%) obraca się pod losowym kątem w obu kierunkach.
Skala, % · zmniejszenie / powiększenieOkno obszaru jako defekt: zmniejszenie o 60–85 % lub zwiększenie o 120–160 %. Każdy zaznaczony bok – oddzielny plik. Zazwyczaj wyłączone.
„ogólne” dla przesunięcia i obrotuJeśli oba pola są zaznaczone, oznacza to, że jedna część znajduje się w jednym pliku: przesunięcie i obrót są stosowane w jednym przekształceniu (nie sekwencyjnie, ponieważ powodowałoby to "zamieszanie"), a skala i kształt obszaru są wspólne i określone w ustawieniach przesunięcia.
▸ PodobszaryObszar dzieli się na 2, 4 lub 9 części, a wewnątrz każdej obraca się lub przesuwa się swój obszar; opcja „oddzielny obraz dla każdego podobszaru” daje jeden plik na część. Potrzebne dla dużych obszarów z wieloma elementami.
Oświetlenie i szum na każdym pliku z defektemWłączone i ustawione na norma: defekt powinien się różnić geometrią, a nie oświetleniem.
Zdjęcia w czasie / w valKażda kopia z nowego kadru z kamery (800 ms), 20 % w val, pierwszy plik klasy w val zawsze.
1
Naciśnij STREFA-PARA: anomalie stref. Wynik jest ustalony z góry: „Strefa: 2 · na kopię: 2 pliki · na strefę: 20 · łącznie ≈ 40 (+ część w val)”. W przypadku przesunięcia plików na kopię, liczba wynosi dziewięć, tak jak w wyżej wymienionych folderach.
2
Wybierz profil: Domyślny (zmiana obszaru o 5–12 px + obrót obszaru, kształtów i podobszarów, elementy są ukryte i wyłączone), Zmiana pozycji elementów (tylko zmiana pozycji o 4–12 px, światło w kolorze standardowym) lub Kolor i kształt (kształty, "usunięcie elementu", kolory z palety, bez zmiany pozycji). Oprogramowanie natychmiast zapamiętuje wprowadzone zmiany przy każdym kliknięciu.
3
Naciśnij Utwórz. Klasy zone_NNN_anomaly pojawią się w drzewie modelu. Dodaj rzeczywiste wady z linii do tych samych klas za pomocą ROI → dodaj do klasy.
Ważne. Dolna granica syntetycznego przesunięcia (5 px) znajduje się bezpośrednio nad zakresem wartości "norma" (0–2 px). Nie należy rozszerzać zakresu "normy" do 5 px ani zawężać anomalii do 2 px: granica zniknie, a model będzie się nieprawidłowo zachowywał na rzeczywistych płytach. Jeśli potrzebujesz innej czułości, zmień obie granice w sposób spójny i przelicz je na milimetry (sekcja 1.3).

4.8. wzorzec z obszarami: płytki lutownicze i edytor obszaru

Przycisk «wzorzec ze strefami» otwiera zapisany wzorzec płyty z siatką. W tym miejscu dane syntetyczne są tworzone bez użycia kamery: koło – zoom, prawy przycisk – panorama, lewy przycisk – wybór obszarów (Ctrl – dodawanie, przeciąganie – za pomocą ramki, Ctrl+A – wszystko), podwójne kliknięcie – edytor obszaru.

  • Sztyfty lutownicze dla wybranych obszarów… – okno „Sztyfty lutownicze: zwarzenie między ścieżkami”. Program automatycznie identyfikuje ścieżki w danym obszarze (w oparciu o próg Ots, jasne pasy o szerokości ≥ 2 px), umieszczając kroplę lutu w szczelinie między sąsiednimi ścieżkami, o kolorze ścieżek, z ciemnym obramowaniem i odbiciem. Ustawienia: między pionowymi lub poziomymi ścieżkami, sztyftów na zdjęciach 1…3, rozmiar 8…18 % obszaru, zdjęć dla danego obszaru (5), gdzie umieścić – w anomali lub w normie, oświetlenie powierzchni, w „val” – nowe zdjęcie z innym oświetleniem lub dokładna kopia.
  • Narzędzie do edycji obszaru:: Pędzel, Pipeta, Kolorowe plamki, Kopiowanie obszaru, Wklejanie, Stempel, Obszar płyt; paleta „lutownica / powierzchnia”, „płytka”, „cień / maska”, biała, czarna; pole „Kopiuj” i przycisk Utwórz obraz. Dzięki temu można zaznaczyć błąd, który jeszcze nie wystąpił na linii: wypełnioną powierzchnię, zbędny element, brakujące oznaczenie.

Pliki edytora otrzymują nazwy `edit_…` i są umieszczane w klasie obszaru lub w jego anomali. Na zakładce "Inspekcja" to samo okno jest dostępne tylko do przeglądania.

4.9. Trenowanie modelu

Grupa "Ustawienia uczenia" na karcie "Model AI" jest automatycznie wypełniana po pierwszym wykonaniu rozpoznawania obszarów: Rozmiar obrazu 128, Rozmiar modelu s, Liczba epok 50, Rozmiar partii 64. Są to wartości dla obszarów o wymiarach 108–137 pikseli. Dla obszarów o wymiarach 256 pikseli, jak w przykładzie, ustaw rozmiar obrazu na 192 lub 256 – wtedy wycinanie obrazu jest minimalne (na zrzucie ekranu głównego okna ustawiono 100 epok i rozmiar obrazu 192). Sprawdź wartości i kliknij URUCHOM UCZNIENIE MODELU AI.

ParametrCo oznaczaJak wybrać
Epochsile razy model przeanalizuje cały zestaw50 dla płyty domyślne; 100–150, jeśli jest wiele klas anomalii
Batch Sizeile obrazów w jednym kroku64; w przypadku braku pamięci wideo, zmniejsz
Image Sizedo jakiego rozmiaru są przycinane, wielokrotność 32przybliżony rozmiar obszaru: 128 dla obszaru 108–137 px; 192–256 dla obszarów 256 px, jak w przykładzie
Model Sizen / s / m / l / xs — optymalne dla setek par klas; n — niewystarczająca pojemność, m i więcej — wolniejsze
Devicena czym się uczyć0 (GPU) z kartą graficzną NVIDIA; bez CUDA, program automatycznie przełączy obliczenia na procesor.
Workersprocesów przygotowania danych12 domyślne dla procesora wielordzeniowego
1
Przed uruchomieniem program sprawdza zestaw: proponuje usunięcie pustych klas, zbędnych folderów w "val" oraz pobranie "val", gdy jest pusty. Podczas pierwszego uruchomienia instaluje środowisko do nauki (Python 3, pakiety ultralytics, onnx, onnxslim, onnxruntime) – wymagane jest połączenie internetowe i kilka minut.
2
Dla modelu STREFA-PARA nauka odbywa się bez "erasing", "flip", "crop" i "randaugment": te augmentacje są sprzeczne z klasami anomalii (odwrócona strefa to już inna strefa). W konsoli wyświetlana jest odpowiednia linia.
3
Przycisk zmienia kolor na czerwony, gdy wyświetla się komunikat "STOP AI MODEL", a obracające się koło po prawej stronie pokazuje procent postępów w każdej epoce. Postęp uczenia się można obserwować w konsoli. Na karcie graficznej, dla dwóch obszarów i 100 epok, proces ten trwa około 10–15 minut.
4
Po zakończeniu działania, program eksportuje best.onnx do głównego folderu modelu i natychmiast przypisuje go do "inspekcja". Przycisk Eksport ONNX powtarza proces eksportu bez potrzeby ponownego trenowania modelu.
Rada. Dodatkowe szkolenie modelu po dodaniu nowej wagi lub nowej platformy odbywa się przy użyciu tego samego przycisku: zestaw danych jest uzupełniany, a następnie uruchamiane jest szkolenie modelu AI best.onnx Zostaje przepisane. Podczas tego procesu nie należy dotykać siatki.

5. inspekcja

Cała praca wykonywana jest na zakładce "Inspektor". Model został już wytrenowany; pozostaje sprawdzić obszary, ustawić próg, wybrać źródło tempa i, jeśli płyta jest rozpoznawana w dowolnej pozycji, włączyć funkcję "żywego przetwarzania".

Sekcja „Inspekcja” w działaniu: model model_4\best.onnx, linia „Klasy inspekcyjne: PŁYTA – strefa 2, 2 klasy anomalii. Strefa N rozwiązana w parze zone_N / zone_N_anomaly, próg 50%, aktywne pasy z interwałem 2000 ms i wskaźnikiem „norma · 112 punktów”
Funkcja „Inspekcja” w działaniu: model model_4\best.onnx, linia „Klasy inspekcji: PŁYTA – strefa 2, 2 klasy anomalii. Strefa N rozwiązana w parze zone_N / zone_N_anomaly, próg 50 %, żyjący pasek z interwałem 2000 ms i wskaźnikiem „norma · 112 punktów”, poniżej źródło tempa i opcje „GPU”, „Analiza szarości”. Na obrazie obie strefy są zielone – „normal”.

5.1. Wybrać model i sprawdzić strefy

1
Jeśli model nie został przypisany, kliknij przycisk "WYBIERZ MODEL .ONNX DLA inspekcji" i wskaż best.onnx w folderze z modelami. Wiersz "Klasy inspekcji" wyświetli wszystkie dostępne klasy; nazwy są pobierane bezpośrednio z pliku ONNX, dzięki czemu numery wyjść są zawsze zgodne z nazwami.
2
Naciśnij STREFA-PARA: obszary ↔ model (sprawdź, próg)Okno wyświetla: "Liczba stref: 2 / Klasy" zone_NNN W modelu: 2, liczba klas anomalii: 2. "Każdy obszar siatki ma przypisaną własną klasę." Ostrzeżenia "Obszary bez klasy w modelu" lub "Klasy bez obszaru w siatce" oznaczają, że siatka została zmieniona po procesie uczenia.
3
WYŁĄCZENIE ANALIZY Z WYKORZYSTANIEM SI tymczasowo wyłącza analizę na tym urządzeniu, bez usuwania ustawień (każde urządzenie ma własny flagę); USUŃ MODEL usuwa model i sloty całkowicie.

5.2. Próg rozpoznawania strefy

Dla każdej strefy sieć podaje prawdopodobieństwa wszystkich klas, ale decyzja jest podejmowana tylko w ramach pary. Współczynnik «uznania» (w jakim stopniu para zajęła wyjście sieci – pełne uznanie przy 10% i więcej) obliczany jest jako: norma q = p(zone_N) / (p(zone_N) + p(zone_N_anomaly)). Ostateczna ocena (od 0 do 100%) jest porównywana z progiem: powyżej – normal, poniżej – anomaly.

Domyślny próg wynosi 50 %, jest przechowywany w `board.json` obok modelu i jest stosowany od razu, bez konieczności ponownego uruchamiania. Wartości poniżej 50 % powodują, że granica przechodzi w stronę normy: 25 % → odcięcie na poziomie 6 %, 10 % → 0,4 %, 1 % → prawie cała obszar jest zielony; 99 % pozwala na przechodzenie tylko w pewnych obszarach. Taki zakres jest potrzebny, aby operator mógł odróżnić różnicę między 5 % a 99 %, a nie tylko obszary oznaczone na czerwono.

Rada. Ustaw granice na dziesięciu sprawdzonych płyt: podnosz je, aż wszystkie obszary będą oznaczone zielonym kolorem, a następnie sprawdź na płytach, na których znane są usterki. Program co 10 sekund wyświetla w konsoli linię „[OBSZAR-NUMER] … normal N, anomalia M, próg 0,50; najgorsze wartości: z17:0,31 …” – dzięki temu można zobaczyć, które obszary są najbliżej progu.

5.3. Aktywny przepływ: wykrywanie w dowolnej pozycji

„Gałko Żywy pas: wyszukiwanie płyty w dowolnej pozycji obejmuje wyszukiwanie płyty na podstawie obszaru wyrównania przed każdym badaniem: obraz jest dopasowywany do wzoru, obszary są wycinane z dopasowanego obrazu, a na wideo rysowane są granice obszaru wyrównania i obszarów (zielone – norma, czerwone – anomalia). Pole okres, ms określa, jak często należy szukać płyty (domyślnie 1000, na zdjęciu 2000). Wskaźnik obok: zielony „norma · N punktów”, czerwony „ANOMALIA · N punktów”, pomarańczowy „płyta nie została znaleziona” lub „brak wzoru – zablokuj”. Decyzja jest podejmowana na podstawie jednego badania, bez gromadzenia wyników.

szablon i obszar wyrównania są ustawiane tą samą przyciskem Zarejestruj szablon, jak podczas nagrywania (sekcja 4.4); szablon z obszarami umożliwia jego wyświetlenie. Na nagraniu widać granice obszaru wyrównania oraz niebieskie punkty odniesienia, względem których dopasowano płytę. Obszary, które po wyrównaniu wychodzą poza krawędzie kadru, są pomijane z oznaczeniem SKIP.

5.4. Na jakim sygnale analizować

Źródło tempa zawsze jedno: podczas dodawania nowego, program usuwa poprzedni.

MetodaJak włączyćKiedy stosować
Przy użyciu kameryOpcja „Przy użyciu kamery”Ciągły monitoring; prędkość ograniczona za pomocą suwka „Analiz na sekundę” w zakładce „Kamera”
Przy użyciu timeraOpcja „Przy użyciu timera” i interwał w milisekundachRegularny monitoring, np. raz na sekundę
Przy użyciu wyzwalaczaWybierz połączenie z listy „Wyzwalacz” i poziom „analiza przy + na wejściu” lub „przy -”System z czujnikiem na wejściu kamery: kadr jest robiony w momencie przybycia produktu – najdokładniejszy sposób (sekcja 6)
GPUOpcja „GPU”domyślnie włączone; przełączanie resetuje model
Analiza szarościodznaczona opcja „Analiza szarości”automatycznie włączona dla modeli wytrenowanych w szarości; wycinki są konwertowane na szarość przed wnioskowaniem

5.5. Strefy żółte: wyłączanie za pomocą kliknięcia

Na linii, w niektórych obszarach, konieczne może być tymczasowe wyłączenie kontroli: element nie został zainstalowany w tej partii, obszar został zablokowany za pomocą specjalnego urządzenia, trwają prace konfiguracyjne. W tym celu nie trzeba modyfikować siatki ani modelu; obszary są wyłączane bezpośrednio w oknie wideo, tylko na zakładce "Inspeckcja".

1
Kliknij lewym przyciskiem w obszarze na kamerze: obszar stanie się żółty i zostanie wyłączony z analizy. Ponowne kliknięcie włączy go ponownie.
2
Grupa stref: przytrzymaj lewy przycisk i przeciągnij ramkę po płacie. Wszystkie strefy, które znajdują się w ramce, są wyłączane; jeśli wszystkie już były żółte, ramka je ponownie włącza. Działa również podczas powiększania za pomocą kółka.
3
Lista stref żółtych jest przechowywana w bazie danych dla każdej kamery i modelu, i przetrwa restart programu oraz ponowne podłączenie kamery. W konsoli wyświetlana jest linia „[Strefy] … wyłączone strefy: N”.

Funkcjonalność żółtych stref, które są wyłączone po kliknięciu, jest kontrolowana przez ogólny przełącznik: "Żółte (wyłączone przez kliknięcie) strefy są wyłączone" w zakładce "Dźwięk" (domyślnie włączone):

Pole wyboruZachowanie stref żółtych
Włączone (domyślnie)Strefa nie jest analizowana w ogóle: wycinek nie jest wysyłany do sieci, znacznik OFF, brak dźwięku, żaden ruch TCP, ani wyjście kamery. W działającym systemie strefa żółta nie wpływa na decyzję „norma / anomalia”.
WyłączoneŻółta ramka pozostaje jedynie jako oznaczenie: obszar jest analizowany i działa jak zwykły. Jest to wygodne, aby oznaczyć obszary do sprawdzenia, bez wyłączania kontroli.
Wskazówka. Nie należy usuwać reguł dotyczących odrzutników w obszarach oznaczonych kolorem żółtym: po włączeniu, reguły nie będą miały żadnego wpływu, a po wyłączeniu obszar od razu zacznie działać zgodnie z regułami.

5.6. Co można zobaczyć na ekranie i w konsoli:

  • Wynik dla danej strefy został zdefiniowany; ramka – kolor odpowiadający kolorowi stref, a w przypadku aktywacji – czerwona. Gdy liczba stref przekracza 50, pewne wartości są wyświetlane tylko w zielonej ramce, a pozostałe strefy z niepewnymi wartościami – w ramkach z różnymi kolorami. Duża liczba podpisów na każdym obrazku utrudniała odczytanie i obciążała proces rysowania. Strefy oznaczone kolorem żółtym można wyłączyć, klikając (sekcja 5.5).
  • Panel „Analiza w oparciu o wyzwalacz” na dole zakładki wyświetla każdą akcję w formie: [hh:mm:ss.mmm] Kamera wejściowa + WYZWALACZ 4 ms | Sztuczna inteligencja 12 ms #57 oraz wynik dla każdej strefy. Dane z tych wierszy nie są zapisywane w bazie.
  • Kliknięcie prawym przyciskiem w obszarze na wideo: „Klasa wykrywania w tym obszarze → zmienić nazwę na „…”” zmienia nazwę odpowiedzi modelu dla tego obszaru (nie modyfikuje modelu, ale system i dziennik zobaczą nową nazwę); w tym miejscu również znajduje się opcja „Ustawić system dla tego obszaru” oraz licznik reguł.
  • Opcja "Zapisz zdjęcia": Inspekcja i folder: Zdjęcia z zaznaczonymi obszarami są zapisywane jako pliki inspect_….jpg. Ustawienia mogą się różnić w zależności od kamery.
  • Co 10 minut, do podfoldera diag są zapisywane klatki z obrazu z linii produkcyjnej oraz lista obszarów, a także przechowywane są ostatnie 20 zdjęć – w celu analizy spornych przypadków bez konieczności powiększania folderu.

6. Wyzwalacze: zewnętrzny czujnik na wejściu kamery:

Główny tryb dla taśmy: kamera rejestruje kadr w oparciu o sygnał elektryczny czujnika na swoim stałym wejściu. Jest to najbardziej precyzyjny moment rejestracji: produkt zawsze znajduje się w tym samym miejscu kadru, a analiza odbywa się tylko raz dla danego produktu. Oprogramowanie TRIGERY zbiera połączenie „czujnik → kamera” i tworzy schemat połączenia dla wybranego złącza.

Moduł TRI-GGER dla HIKROBOT (6 pin): czujnik PNP, sygnał na pin 2, wspólny pin 5, schemat połączeń.
Moduł TRI-GGER dla HIKROBOT (6 pin): czujnik PNP, sygnał na pin 2, wspólny pin 5, schemat połączeń.
Podobnie jest w przypadku SICK picoCam (6 pin): sygnał na pinie 4 (Trigger +), wspólny pin 3 (Trigger −).
Podobnie jest w przypadku SICK picoCam (6 pin): sygnał na pinie 4 (Trigger +), wspólny pin 3 (Trigger −).
1
Naciśnij PRZYCISK nad wideo. Wybierz Sprzęt do detekcji (np. czujnik optyczny BAOLSEN QAF-Q2P, 4 przewody; każdy czujnik z wyjściem PNP lub NPN można podłączyć w ten sam sposób), Złącze kamery (HIKROBOT 6 pin lub SICK picoCam 6 pin), Kamera (jaką konkretnie) oraz Typ wyjścia czujnika: PNP – sygnał przełącza "plus" (standardowy przypadek), NPN – sygnał przełącza "minus", wymagany rezystor 1–4,7 kΩ zasilany z 24 V.
2
Zmontuj schemat zgodnie z rysunkiem: zasilanie czujnika i kamery z jednego zasilania 24 V, przewód sygnałowy czujnika do wejścia kamery, przewód zwrotny z wejścia do 0 V. Biały przewód czujnika – drugi wyjście, nie podłącza się go.
3
Naciśnij Utwórz połączenie. Połączenie zostaje zapisane w bazie; identyczne połączenia nie są powielane. Przycisk Usuń połączenie usuwa wybrane.
4
Na zakładce Inspekcja wybierz odpowiednią opcję z listy Wyzwalaacz oraz ustawienie: „Analiza + przy wejściu” (obraz po pojawieniu się napięcia 24 V) lub „Analiza - przy wejściu”. Program przełącza kamerę w tryb wyzwalania: w przypadku HIKROBOT ustawia TriggerMode = On, TriggerSource = Line0, a w przypadku SICK zatrzymuje chwytak, ustawia tryb i rozpoczyna proces od nowa. Obrazek obok pokazuje poziom napięcia przy wejściu.

Rozpinanie złączy:

PinHIKROBOT MV-CS, 6 pinSICK picoCam, 6 pin
1DC_PWR – zasilanie kamery: 9–24 VGND – uziemienie kamery
2OPTO_IN — Wejście Line 0 (+), sygnał wyzwalającyVCC – zasilanie kamery 12–24 V
3GPIO – Linia 2, wejście lub wyjścieWejście trójnika — (-) – optoizolator
4OPTO_OUT – wyjście linii 1 (+)Wejście trójnika + — (+) – wejście optoizolatora
5OPTO_GND – ogólny optopar, przewód zwrotnyFlash + – dyskretny wyjście (+)
6GND – uziemienie kameryFlash – dyskretny wyjście (-)
Ważne. Złącza "dad" na kamerze i "mom" na kablu są odwrócone względem siebie. Jedynym punktem odniesienia jest klucz (duży otwór w obudowie); w przypadku firmy SICK znajduje się on między stykami 1 i 6, a po odwróceniu idzie w prawo. Należy odczytywać styki z tej strony, którą trzymasz w ręku. Błąd w podłączeniu oznacza uszkodzony zasilanie: obok znajdują się zasilanie i wyjście. Sprawdź prawidłowość połączenia, wykonując test.
Wskazówki. Zapisuj sygnał z "plusu", a nie z "minusu": w rzeczywistym układzie, rozpiętość czasu kadru w odniesieniu do "plusu" wynosiła 4,2 ms, a w odniesieniu do "minusu" – 40,7 ms. Sprawdzenie czujnika: połączenie brązowe i niebieskie zawsze daje 24 V, co oznacza zasilanie; sygnał należy obserwować pomiędzy brązowym i niebieskim, przechodząc przez diodę. Jeśli sygnał się nie zmienia, należy podłączyć rezystor o wartości 2–10 kΩ pomiędzy brązowym a niebieskim przewodem; połączenie 24 V i 0 V oznacza wtedy układ NPN.

7. Wyjścia: turbina, wyjścia cyfrowe kamer i TCP

Czujnik przekształca wynik inspekcji w działanie. Reguła jest tworzona dla konkretnej strefy (lub dla wszystkich stref w modelu, klasie lub oznaczonych strefach) i aktywuje się, gdy model wykryje w danej strefie określony typ. Działania obejmują: wysłanie pakietu TCP do robota lub PLC, przełączenie wyjścia cyfrowego kamery oraz wydanie sygnału dźwiękowego dla operatora. Każde aktywowanie jest zapisywane w dzienniku.

7.1. Przewodnik WYJŚCIA: kontakty i testowanie miernikiem

Przycisk WYJŚCIA na ekranie wideo otwiera okno pomocy, które nie wprowadza żadnych ustawień. Pokazuje ono, na których zaciskach znajduje się wyjście, jak sprawdzić je za pomocą miernika bez zasilania oraz jak podłączyć obciążenie.

HIKROBOT – wyjście z linii 1 (dzięki fotopowtarzaczowi) na pinach 4 (+) i 5 (−), maksymalny prąd 25 mA.
HIKROBOT – wyjście z linii 1 (dzięki fotopowtarzaczowi) na pinach 4 (+) i 5 (−), maksymalny prąd 25 mA.
SICK picoCam – dioda (optoizolator) na pinach 5 (+) i 6 (−), z ciągłym poborem prądu 150 mA.
SICK picoCam – dioda (optoizolator) na pinach 5 (+) i 6 (−), z ciągłym poborem prądu 150 mA.
  • Wyjście – „suchy kontakt” optopary: nie generuje napięcia, tylko zamyka obwód. Wymaga zewnętrznego źródła zasilania.
  • Testowanie miernikiem w trybie Ω: wyjście WYŁĄCZONE – przerwa (OL), WYŁĄCZONE – setki omów. Buzzer jest cichy w obu przypadkach, sprawdź wartości. Jeśli nic się nie zmienia – odwróć elektrody, optopa jest polarna.
  • Napięcie: +24 V → żarówka → pin "+", pin "-" → GND. Dla urządzenia HIKROBOT o poborze 25 mA – maksymalny dopuszczalny prąd to 27 mA, należy zmniejszyć zasilanie lub zastosować dodatkowe przekaźnik. Dla czujnika SICK, zasilanie 20–30 mA można podłączyć bezpośrednio.

7.2. Okno OUTPUT: zasada dla strefy

Przycisk OUTPUT na prawym panelu (lub kliknięcie prawym przyciskiem w danej strefie → „Utwórz strefę dla tej lokalizacji”) otwiera okno „OUTPUT – Przesyłanie danych TCP i wyjścia cyfrowe kamer”. Po lewej stronie znajduje się drzewo Kamery → modele AI → klasy → strefy z zaznaczonymi strefami; po prawej stronie znajdują się zakładki Reguły strefy, Log zdarzeń, Baza danych.

Okno OUTPUT: drzewo stref po lewej stronie, lista zasad strefy, grupa „Zasada” i zakład TCP z ustawieniami.
Okno OUTPUT: drzewo stref po lewej stronie, lista zasad strefy, grupa „Zasada” i zakład TCP z ustawieniami.
1
Wybierz obszar na drzewie (nawiązany tytuł po prawej stronie pokaże ścieżkę: Kamera USB HD → model_5 → 1 → Obszar 1 (T1.C1)). Kliknij + Nowy TCP, + Nowy dyskretny lub + Nowy dźwięk.
2
W grupie „Reguła” wybierz „Klasę sztucznej inteligencji, w której ma działać (dla STREFA-PARA to „anomalia” lub „normal; * – dowolna klasa), zaznacz opcję „Włączone, oraz, w razie potrzeby, „Powtarzać, aż klasa będzie trwała” z określoną częstotliwością powtarzania i „Potwierdzenie zmiany klasy, ms” (domyślnie 1500: nowa klasa musi pozostać aktywna przez ten czas, aby zmiana została uznana).
3
Wypełnij zakładkę TCP (sekcja 7.3), Wyjście kamery (sekcja 7.4) lub Dźwięk (sekcja 7.5).
4
Sprawdź łańcuch bez czekania: `Sprawdź to regułę` (wysyła paczkę lub generuje sygnał wyjściowy), `Symuluj działanie strefy` (przetwarza wszystkie reguły strefy za pomocą testu, z filtrowaniem szumów i rejestrem).
5
Kliknij Utwórz dla 1 strefy. Jeśli zaznaczone są kilka stref, przycisk zmienia się na Utwórz dla N stref; w przypadku węzła modelu – „Zapisz dla całej modelu”, a w przypadku węzła klasy – „Zapisz dla klasy”. Na dole: Włącz / Wyłącz / Usuń dla zaznaczonych.

Jedna strefa może zawierać wiele reguł TCP (różne odbiorniki), ale maksymalnie jedną regułę wyjściową dla danej strefy oraz maksymalnie jeden dźwięk dla danej strefy. Reguła jest przechowywana w bazie i działa w ramach strumienia wnioskowania: reguły są przechowywane w pamięci, a wyszukiwanie w obrębie strefy odbywa się w każdym kadrze. Połączenia z kamerą i SDK są obsługiwane przez oddzielny strumień, który zapewnia, że analiza nie będzie zależała od sieci.

7.3. Pakiety TCP dla robota lub PLC

Program działa jako klient TCP: łączy się z adresem IP i portem odbiorcy, utrzymuje połączenie otwarte i wykorzystuje je ponownie. W przypadku przerwania połączenia, program podejmuje jedną próbę ponownego połączenia i ponownej transmisji. Dane są przesyłane w kodowaniu UTF-8, z dodaniem znaków CR+LF na końcu.

PoleCel
Czas oczekiwania na połączenie, msDomyślne: 1000, 100…10000.
Czas oczekiwania na wysłanie reguły, msMinimalny czas przerwy między automatycznymi wysyłkami reguł; 0 – bez przerwy. Nawet zmiana klasy wymaga tej przerwy.
PolecenieSłowo jest tłumaczone dosłownie: «up» – „up” jako nazwa paczki. Potrzebny jest „klasa-kąt” – dodaj podstęp: «J6 {class}» → «J6 235». Jeśli jest puste, to używany jest szablon „Dane”.
Twoje daneLosowy tekst, który zastępuje `{data}`.
DaneSzablon przesyłki. Puste = «numer i nazwa strefy» ({zoneId} {zone}). Kliknięcie w pole do wpisania dodaje go, a ponowne kliknięcie usuwa; „Wszystkie pola” tworzy ustrukturyzowany szablon.
ZamianaZnaczenieZamianaZnaczenie
{zoneId}numer strefy (1, 2, 3…){camera}nazwa kamery
{zone}Nazwa obszaru (można edytować w bazie danych){model}nazwa modelu sztucznej inteligencji
{class}klasa, którą zobaczyła modelka{time}czas: godzina:minuty:sekundy.milisekundy
{conf}pewność, % (kropka jako separator){date}Data: GG-MM-DD
{data}tekst z „Moje dane”

Przykład ustrukturyzowanego szablonu: `zoneId={zoneId};zone={zone};class={class};conf={conf};camera={camera};model={model};time={time};date={date};data={data}. Liczby zawsze w niezmiennym formacie, aby uniknąć problemów podczas analizy danych w PLC.

  • Sprawdzenie połączenia jedynie otwiera gniazdo i informuje, czy połączenie zostało nawiązane, czy też nie ma odpowiedzi w ciągu N ms.
  • Wyślij test – faktycznie wysyła ciąg znaków; wynik jest wyświetlany obok przycisku, a nie w osobnym oknie.
  • Automatyczne wysyłanie wiadomości. W przypadku braku zaznaczenia opcji „powtarzać”, wiadomość jest wysyłana tylko przy zmianie klasy i jest wysyłana ponownie, aż odbiorca odpowie w formacie ok <wiadomość>. W przypadku zaznaczenia opcji „powtarzać” – wiadomość jest wysyłana w określonych odstępach czasu, dopóki klasa jest aktywna.
  • „Ostatnia próba wygrywa”: jeśli model miał już kilka wyników, gdy operator był zajęty, zostanie wykonana ostatnia próba. Kolejka jest ograniczona do 512 zadań.

7.4. Dyskretyjne wyjście kamery

Karta „Wyjście kamery”: sposób wyjścia, linia, poziom, impuls, przyciski ręcznej weryfikacji. Kamery USB nie mają dyskretnych wyjść – dostępny jest tylko protokół TCP.
Karta „Wyjście kamery”: sposób wyjścia, linia, poziom, impuls, przyciski ręcznej weryfikacji. Kamery USB nie mają dyskretnych wyjść – dostępny jest tylko protokół TCP.
PoleCel
WyjścieMetoda: w przypadku SICK – Flash-pin (stały poziom) lub GPIO; w przypadku HIKROBOT – UserOutputValue lub LineInverter (strobo wyłączony). Modele MV-CS020/016-10GC z modułem UserOutput nie posiadają – program automatycznie wybierze LineInverter.
LiniaWejścia Flash / GPIO1…6 w SICK; Line1 (wyjście), Line2 (dwukierunkowe) w HIKROBOT; Line0 – tylko wejście.
Poziomtrue / false / off. „off” oznacza, że reguła jest aktywna, ale wyjście nie jest aktywowane.
Impuls, ms (0 – utrzymywanie)0 – poziom jest utrzymywany do zmiany klasy; w przeciwnym razie impuls wynosi 10…5000 ms z powrotem.

Przycisk Włącz wyjście, Wyłącz wyjście, Impuls sprawdzane są za pomocą testera lub lampy; Co potrafi kamera sprawdza wszystkie możliwości i generuje raport. Testy wykonywane ręcznie zapisywane są w tym samym dzienniku.

Kilka stref na jednym wyjściu. Jeśli na jeden pin przypisane są zasady kilku stref, wyjście traktuje się jako logiczne "I": HIGH tylko wtedy, gdy wszystkie strefy wysyłają sygnał HIGH, a jeśli przynajmniej jedna strefa wysyła sygnał LOW, wyjście przyjmuje wartość LOW. W logu to zapisuje się jako: "strefy na wyjściu N wymagają LOW k → HIGH/LOW". Dzięki temu jeden wyjście, składający się z setek stref na płytce, może reprezentować stan "produkt jest sprawny".
Ważne. W SICK, pin "flash" służy zarówno do wyjścia cyfrowego, jak i do podświetlania: jeśli podłączony jest do niego dioda LED, należy użyć GPIO. Zasady przeciwzakłóceniowe: domyślny czas to 500 ms (minimum 200 ms), a zdarzenia bez aktywności nie są zapisywane w logu.

7.5. Powiadomienie dźwiękowe: własny dźwięk dla każdej strefy

Trzeci typ reguły – dźwięk na komputerze z programem. Operator nie musi patrzeć na ekran: po sygnale słyszy, że dana strefa przekroczyła limit, a różne dźwięki w różnych strefach wskazują, gdzie dokładnie. Dźwięk jest dostępny dla wszystkich kamer, w tym USB i RTSP, które nie mają dyskretnych wyjść.

1
Wybierz obszar na drzewie i kliknij + Nowy dźwięk. W grupie "Reguła" podaj klasę (np. anomalia) i zaznacz opcję Włączony.
2
Na zakładce "Dźwięk" wybierz sygnał z listy. Dostępnych jest dziesięć wbudowanych sygnałów: krótki, podwójny, potrójny, niski i wysoki ton, rosnący i malejący, alarm-syrena, długi dźwięk, dzwonek. Przycisk "Odsłuchaj" odtwarza wybrany sygnał.
3
Twój dźwięk: naciśnij Załaduj swój plik… i wybierz format WAV, MP3 lub WMA. Plik jest kopiowany do folderu sounds\custom obok programu (pendrive można wyjąć) i pojawia się w liście z oznaczeniem „twój”. Przycisk Folder dźwięków otwiera ten folder: pliki można tam umieszczać bezpośrednio.
4
Ustaw Przerwę między dźwiękami, ms w zakresie od 1000 do 10000. W tym czasie, po wydaniu sygnału, dźwięk nie powtarza się, nawet jeśli klasa strefy uległa zmianie: po 10000 ms operator usłyszy nie więcej niż jeden sygnał co 10 sekund.
5
Kliknij Utwórz dla 1 strefy lub zaznacz strefy za pomocą znaczników i utwórz regułę dla wszystkich. Dla każdej strefy ustaw inny dźwięk – powtórz to dla innej strefy z innym sygnałem.
6
Pole zaznaczenia Żółte (zakryte po kliknięciu) obszary są wyciszone jest domyślnie zaznaczone: obszary, które zostały wyłączone poprzez kliknięcie w zakładce "Inspekcja" (sekcja 5.5), nie wydają dźwięku i nie aktywują TCP ani kamery w całej konfiguracji.
ZachowanieJak to działa
Bez zaznaczenia "powtarzać"Dźwięk pojawia się tylko raz po potwierdzeniu zmiany strefy (po "Potwierdzenie zmiany strefy"). Dopóki strefa pozostaje w danym stanie, panuje cisza.
Z zaznaczeniem "powtarzać, dopóki strefa pozostaje w danym stanie"Sygnale powtarza się co "Interwał powtarzania", ale nie częściej niż przerwa między dźwiękami, dopóki strefa pozostaje w określonym stanie.
Wiele stref w wadzie jednocześnieKażda strefa odtwarza swój dźwięk; sygnały różnych stref nie tłumią się wzajemnie, tłumi się tylko powtórzenie dźwięku jednej i tej samej strefy.
LogKażde odtwarzanie zapisywane jest w "Logu zdarzeń" w formie "Dźwięk «…»"; jeśli plik nie zostanie znaleziony lub urządzenie audio odmówi, wyświetlona zostanie linia z błędem, a program nadal będzie działał.
SprawdzenieSprawdzić tę regułę powoduje natychmiastowe odtwarzanie dźwięku; Symulować działanie strefy powoduje odtwarzanie dźwięku wraz z protokołem TCP i wyjściem przez kanał komunikacyjny.
Rada. Ustawiaj syrenę lub trójgłośnik na najważniejsze obszary (złącza, elementy elektryczne), a na pozostałe – krótkie sygnały. W ten sposób, jeden dźwięk oznacza, czy należy natychmiast pobiec w kierunku linii. Ustalanie dźwięku dla całej konfiguracji modelu odbywa się poprzez wybranie konkretnego elementu lub klasy w drzewie konfiguracji: jeden sygnał dla każdego elementu.

7.6. Log zdarzeń i baza danych

Sekcja Log zdarzeń wyświetla ostatnie 300 wpisów w formie: Godzina:Minuta:Sekunda.Ułamkowa ✔/✖ Kamera · Model · Klasa · Obszar → Działanie [komunikat] i jest aktualizowany na żywo. Przycisk Aktualizuj i Wyczyść log.

Karta „Baza danych”: gdzie przechowywane są dane, kopia i przywracanie bazy w jednym pliku.
Karta „Baza danych”: gdzie przechowywane są dane, kopia i przywracanie bazy w jednym pliku.

Karta „Baza danych”: program przechowuje wszystko w pliku SQLite rejectors.db obok pliku wykonywalnego – nie ma oddzielnej usługi, port nie jest aktywowany, nie trzeba instalować niczego. Tabele: settings (ustawienia), cameras (profile kamer), camera_models (modele na kamerach), zones (nazwy i geometria stref), rejectors (reguły), reject_log (dziennik), camera_param_files (kopie parametrów kamer), camera_presets (zestawy ustawień kamer). „Zapisz kopię bazy…” tworzy kompletny obraz bazy za pomocą polecenia VACUUM INTO bezpośrednio na działającej bazie; „Załaduj bazę z kopii…” odzyskuje bazę, zachowując wcześniej aktualną. Bazę można przeglądać w DBeaver, bez zamykania programu; nie należy do niej pisać z zewnątrz.

8. Inne tryby i zadania

Standardowe modele: normalny / anomali oraz dowolne klasy

Ten sam edytor ROI działa również w przypadku standardowej klasyfikacji: tabletki, nakrętki, etykiety, elementy w pojemniku. Klasy są definiowane w dialogu „Nowy model AI” (domyślnie normal i anomalia, nazwy w łacinie), a obszary są przypisywane do produktów. Przycisk Zrób zdjęcie z liczbą okręgów 1…50, seria Utwórz zdjęcia z kamery (kadr/ramka) lub z enkoder. Panel dane syntetyczne dla AI: precyzyjne kąty 90°/180°, pełny obrót 360° z krokiem i zakresem, lustro, „klasy w stopniach” (każdy kąt w oddzielny klasę – odrzutnik przesyła kąt przez TCP), zakresy jasności i kontrastu. Trenowanie – z pełnymi augmentacjami Ultralytics. Próg pewności dla takich modeli jest ustawiany w tym samym miejscu, co dla STREFA-PARA – na zakładce Inspect.

Inspekcja wielomodelowa (pasy 1–20)

Na jednej kamercie można umieścić do 20 modeli: Dodaj ONNX do slotu, a następnie ROI → Dodaj klasę do wybranego modelu – każdy model w slotcie ma własne oznaczone obszary, a wyniki wszystkich modeli są wyświetlane na jednym kadrze.

Dla układów STREFA-PARA zazwyczaj nie są potrzebne dodatkowe sloty. Jedna konfiguracja już obejmuje całą płytę: każda strefa ma swój własny zestaw klas, więc nie ma potrzeby łączenia podobnych klas, co wcześniej wymagało użycia kilku modeli. Typowa konfiguracja to jedna płytka STREFA-PARA, a sloty są puste.

Kiedy inspekcja wielomodelowa jest stosowana:

SytuacjaJak skonfigurować
Różne zadania na jednym obrazieSTREFA-PARA sprawdza układ i obecność elementów, a standardowy model w drugim pasie – oznaczenie, naklejkę, kolor portu lub kierunek klucza. Obszary drugiego modelu są ustawiane oddzielnie za pomocą „ROI → Dodaj klasę do wybranego modelu”.
Produkt bez stałej siatkiTabletki, nakładki, elementy w szufladzie: kilka klas wyglądu produktu w standardowych modelach. Podobne klasy są rozdzielane na różne pasy, aby nie zlewały się.
Dwie różne płyty na jednym obrazieDwie modele STREFA-PARA w różnych slotach, każdy z własnym wzorcem i własną siecią. Aktywny konwój działa z wzorcem głównego modelu.
Okres przejściowyStara, wytrenowana wersja pozostaje w slocie, aż nowa STREFA-PARA zacznie zbierać dane. Obie wersje są widoczne na jednym ekranie, a zasady działania są przenoszone w miarę zdobywania zaufania.

Granice, tempo analizy, żółte strefy i zasady dotyczące kamer działają dla wszystkich modeli. Przycisk USUŃ MODEL czyści i usuwa z wolnego slotu, dlatego prosi o potwierdzenie; Usuń wybrany usuwa jeden model ze slotu, a jego pliki i strefy pozostają w bazie.

Ogólne modele

Przycisk OGÓLNE MODELE zachowuje zestaw „kamera → model” pod nazwą: Utwórz z aktualnych modeli, Zastosuj do wszystkich kamer, Zaktualizuj z aktualnych, Zmień nazwę, Usuń zestaw. Przejście stanowiska z ośmiu kamer na inny produkt to jedna operacja. Usunięcie zestawu usuwa tylko grupowanie: foldery, ONNX, strefy i reguły pozostają. Strefy należą do pary „kamera + model”: jeden model dla ośmiu kamer – osiem niezależnych oznaczeń.

Enkoder i odrzutnik w konwój

Dla linii z enkoderem podłączonym do portu COM (115200, ESP32): podłączenie POŁĄCZ ENKODER, automatyczne połączenie, pozycja, krok zdjęcia i korekcja, USTAW ZERO + ZDJĘCIE. Zdjęcia do celów szkoleniowych i analizy mogą być wykonywane "z wykorzystaniem enkodera" – w takim przypadku klatki są równomiernie rozmieszczone wzdłuż trasy produktu. Stary system odrzutowy, z opóźnieniem i filtrem antyspamowym, wysyła polecenie REJECT do kontrolera enkodera.

Nagrywanie wideo i zdjęcia

Zakładka Ustawienia: ROZPOCZĄĆ NAGRYWANIE WIDEO z aktywnej kamery do pliku record_data_czas.avi (format MJPG, rzeczywista liczba klatek na sekundę kamery). Zdjęcia do treningu – real_….jpg, zdjęcia inspekcji – inspect_….jpg z zaznaczonymi obszarami.

9. Ustawienia, konsola, wymagania i licencja

Settings

  • ZAPISZ W PLIK / ZAŁADUJ Z PLIKU – wszystkie ustawienia (kamery, modele, reguły) w formacie JSON, co ułatwia ich odzyskanie przed ponownym zainstalowaniem lub przeniesieniem na inny komputer. Źródło informacji – baza danych, a plik JSON stanowi zabezpieczenie w przypadku jej niedostępności. Każda zmiana ustawień jest automatycznie zapisywana.
  • WŁĄCZ FUNKCJĘ "ZAPAMIETAJ" – to ustawienie jest trwale: usuwa konfigurację i ustawienie okien.
  • Język interfejsu – 14 języków; główne okno przełącza się natychmiast, a pozostałe okna – przy kolejnym otwarciu.
  • Pozycje, rozmiar i monitor wszystkich okien, pozycje separatorów – są przechowywane w bazie; po wyłączeniu monitora okno wraca do widocznej części ekranu.

Console

Pola "Kamery" i "Wyzwol" są domyślnie wyłączone, a ich aktywacja powoduje wyświetlanie odpowiednich komunikatów (w trybie wyzwalania, komunikaty kamery przechodzą do sekcji "Wyzwol"); wszystkie dane są zapisywane w plikach logs\engiai-*.log przed filtrowaniem. Konsola jest przeznaczona do pracy przez kilka tygodni bez interwencji: na ekranie wyświetlane są 800 wierszy, a po 1000 starych 200 jest usuwanych; nowe wiersze są zbierane w grupach, cztery razy na sekundę, a nie pojedynczo; funkcja automatycznego przewijania w dół jest włączona, aż do momentu, w którym użytkownik przewinie w górę; konsola nie wydaje dźwięku. Zmiany w klasach stref są zapisywane nie częściej niż 10 wierszy na sekundę (pozostałe są sumowane w liczniku), plik logu ma rozmiar 20 MB, pliki starsze niż 14 dni są usuwane podczas uruchamiania, a baza danych przechowuje ostatnie 20 000 wpisów. Nieobsługiwane błędy znajdują się w crash.log, przyczyny wymuszonych zakończeń znajdują się w runtime.log obok pliku exe. Jeśli coś nie działa prawidłowo, należy najpierw sprawdzić tutaj.

Wymagania

KomponentWymaganie
System operacyjnyWindows 10/11 x64.
Karta graficzna do inspekcjiNVIDIA z sterownikiem CUDA; biblioteki CUDA 13 i cuDNN 9 są dołączone do programu. W przypadku braku karty graficznej, inspekcja odbywa się automatycznie na procesorze.
SzkoleniePython 3 (z opcją "Dodaj python.exe do PATH" podczas instalacji) oraz pakiety ultralytics, onnx, onnxslim, onnxruntime – program automatycznie instaluje je podczas pierwszego treningu. Wymagana jest dostępność do Internetu. GPU do treningu jest wykrywane automatycznie przez PyTorch; bez CUDA, trening odbywa się na CPU, ale wyniki są takie same.
Kamery SICKSterownik IDS uEye; kamera powinna być widoczna w oprogramowaniu IDS Camera Manager.
Kamery HIKROBOTBiblioteka MVS SDK (dołączana z programem); dla GigE – karta sieciowa z obsługą dużych ramek.

Licencja i tryb demonstracyjny

Podczas uruchamiania, program kontaktuje się z serwerem licencji engi.live; przesyłane są tylko hasze identyfikujące sprzęt i wersję, bez numerów seryjnych i nazw użytkowników. Jeśli serwera nie ma, a licencja jest zcache'owana, program działa na podstawie cache'u (dla linii bez dostępu do internetu). W przypadku braku licencji, program uruchamia się w trybie testowym przez 20 minut: w tytule okna i w polu "AI" wyświetlany jest licznik "TEST MM:SS", a przycisk KUP na karcie "Ustawienia" otwiera stronę zakupu. W przypadku ważnej licencji, licznik nie jest wyświetlany.

10. Krótki list kontrolny i diagnozowanie usterek

Lista kontrolna od zera dla płyty

1
KAMERY → «+ Dodaj kamery» → zaznacz swoje kamery → Dodaj.
2
Karta "Camera": rozdzielczość → «Automatyczna konfiguracja dla AI (na podstawie kadru)» (lub «Zablokuj ustawienia» dla USB) → «Zapisz ustawienia» → «Zapisz jako…» – zestaw ustawień. Opcjonalnie: «Trenuj w skali szarości».
3
Model AI → «Utwórz nowy model AI» → nazwa.
4
«ROI → dodaj do klasy (modelu uczenia)» → obramowanie wokół każdego elementu → rozmiar obszaru (np. 256) → Enter. Dla setek identycznych elementów – obramowanie na całej płycie i siatka.
5
„Zaznaczyć obszary na elemencie za pomocą znaczników” → „Zaznaczyć wzorzec” → obrysować na zdjęciu obszar płyty z elementami (nie obszar kontroli) → „✔ Szukać obszarów w wyznaczonym obszarze”.
6
„STREFA-PARA: zdjęcie obszarów” → „Zrobić zdjęcie”. Powtórzyć na 3–5 prawidłowych płytach. Niepotrzebne obszary wyłączyć wcześniej, klikając na zdjęciu (czerwone).
7
„STREFA-PARA: anomalie obszarów” → „Utworzyć”: przesunięcie i obrót elementu wraz z podstawą są już włączone. W razie potrzeby, płytki lutownicze w „wzorzec z obszarami”.
8
Szkolenie modelu sztucznej inteligencji (rozmiar obrazu 128x128, mała złożoność, 50 epok) → poczekaj, aż proces zostanie ukończony w 100% → wartość best.onnx zostanie przypisana automatycznie.
9
Inspekcja → „STREFA-PARA: obszary ↔ model” → sprawdzić zgodność → próg. „Za pomocą kamery” lub wybrać wyzwalacz. Dla ruchomej płyty: „Żywy pas”.
10
OUTPUT → wybrać obszary → reguła dla klasy anomalii (dźwięk, TCP lub wyjście kamery) → „Emulować działanie obszaru” → „Utworzyć na N obszarach”.

Jeśli coś poszło nie tak:

ObjawCo sprawdzić
Kamery nie pojawiły się w liścieZasilanie i kabel; dla urządzeń SICK – IDS Camera Manager i adres IP z podsieci adaptera; dla urządzeń HIKROBOT po awaryjnym zamknięciu należy poczekać do 25 sekund i kliknąć "Ponowne połączenie".
Zdjęcie jest ciemne, szare lub mają nieprawidłowe koloryAparat → „Automatyczna konfiguracja dla sztucznej inteligencji”; dla kamer kolorowych SICK – układ Bayera i balans bieli; dla kamer USB – „Typowe”, a następnie „Zapisz ustawienia”
Obrazy są przerywane, ekran czerwonyGigE: rozmiar pakietu 1500 lub jumbo na karcie sieciowej, opóźnienie między pakietami; mniejsza liczba FPS lub mniej klatek; oddzielna karta sieciowa dla kamery
„Karta nie została znaleziona” / obraz nie został przechwyconyWzorzec nie został zidentyfikowany lub został uchwycony w innym świetle; zbyt mało punktów odniesienia – zwiększyć obszar dopasowania i uwzględnić szczegóły; obszar dotknął stół lub taśmę; wydłużyć okres wyszukiwania
Obszary przesuwają się na inną płytęPłytę szuka się na podstawie samych obszarów inspekcji: zidentyfikować wzorzec z obszarem dopasowania wzdłuż szczegółów płyty (sekcja 4.4); automatyczny model dopasowywania
Brakuje sprawnych płyt z innymi częściamiOznaczenia na obudowach są inne: dodać zdjęcia z tej serii; nie tworzyć syntetycznych rys, które mają być cieńsze niż 3 px (sekcja 4.6); sprawdzić, czy wadą jest przesunięcie, a nie zmiana koloru
Obszary oznaczone jako NO_ZONE_CLASSSiatka była zmieniana po treningu; przywrócić oryginalną siatkę lub utworzyć nową i ponownie zrobić zdjęcia
Wszystkie obszary są oznaczone na prawidłowej płycieInna płyta lub inne ustawienie bez działającego pasa; próg jest zbyt wysoki; zdjęcia zostały zrobione w innym świetle; mieszane pliki kolorowe i szare
Model nie wykrywa przesunięcia elementuPonownie obliczyć px/mm (sekcja 1.3): przy małym powiększeniu przesunięcie powinno być mniejsze niż 5 px; zmniejszyć pole widzenia lub użyć kamery o większej rozdzielczości; nie powiększać przesunięcia
Trening jest wolny lub bardzo wolnyUrządzenie = procesor, jeśli nie ma karty graficznej NVIDIA; zmniejszyć rozmiar partii danych; sprawdzić konsolę; upewnić się, że Python jest dodany do zmiennej środowiskowej PATH.
Funkcja inspekcji nie działaczy wybrano best.onnx; czy aktywny jest tryb automatyczny (poprzez kamerę / timer / czujnik); czy nie zaznaczono opcji "NIE UŻYWAĆ SI"); czy zaznaczona jest opcja "AI włączone" w ustawieniach kamery
Reguła dotycząca odrzutnika jest bezgłośnaCzy zostało naciśnięte "Utwórz w N strefach"; czy zaznaczona jest opcja "Włączone"; czy klasa reguły odpowiada odpowiedzi modelu (anomalia / normal); aby wyjść, poziom nie powinien być "off"; kamery USB nie mają wyjść, tylko TCP
Brak dźwięku.Reguła została utworzona i dodana; plik znajduje się w folderze "sounds" (lub "sounds\custom"); czy występuje pauza między dźwiękami? Dźwięk odtwarza się tylko przy zmianie klasy, gdy opcja "powtarzać" nie jest włączona; poziom głośności w Windows oraz urządzenie wyjściowe.
Paczka TCP jest wysyłana tylko raz.bez opcji "powtarzać", system oczekuje odpowiedzi "ok <numer przesyłki>" od odbiorcy; zaznacz opcję "powtarzać, dopóki klasa jest aktywna" lub skonfiguruj odpowiedź na urządzeniu PLC.

engiAI Ethernet System. Nazwy przycisków i pól są zgodne z tym, jak wyświetlane są w programie w Twoim języku (zdjęcia ekranu – z interfejsu w języku rosyjskim). Zdjęcia ekranu zostały wykonane na modelu "model_4" (dwie strefy 256×256: kondensator C30 i most BR1), kamerze USB 3264×2448, model został wytrenowany w skali szarości. Edycja 3, wrzesień 2026: przykład dla dwóch stref, tworzenie folderów modelu, obszar wyrównania, dane syntetyczne "element z podstawą" z obrazami "przed / po", paleta i grubość linii, czerwone strefy, konsola.