Wyszukiwanie wzorca

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
azjaart
Posty: 5
Rejestracja: 30 paź 2007 13:35
Lokalizacja: Katowice
Kontakt:

Wyszukiwanie wzorca

Post autor: azjaart »

Witam.

To jest mój pierwszy post na forum, do tej pory tylko czytałem (szukałem) ale nigdzie nie znalazłem odpowiedzi [tak mi się przynajmniej wydaje :) ] przydatnej do rozwiązania mojego problemu. Oczywiście wiem, że należy zamieścić jakiś wstępny kod do poprawki ale nie mam pojęcia jak sie do niego zabrać. proszę więc tylko o wskazówki, a nie o pokazanie rozwiązania, no chyba, ze ktoś posłuży się jakimś przykładem.
Do rzeczy.

Po RS czytam stan kilku, kilkunastu czujników. Każdy z czujników przyjmuje cztery stany, różne w zależności od typu czujnika np. brak transmisji, aktywny, nieaktywny, błąd.
Wizualizuje stany pracy poszczególnych czujników ale oprócz tego chcę pokazywać stany alarmowe. Jak to ma wyglądać.
Tworzę wzorce alarmów (każdy ma swoja nazwę np. Niedozwolone załączenie urządzenia takiego podczas pracy urządzenia takiego)), których może być kilka lub kilkanaście. Wzorce te mają być porównywane z aktualnym stanem czujników i w razie pokrywania sie wzorca ma zostać wygenerowany alarm w postaci: Nazwa alarmu (wzorca) oraz data czas wystąpienia. Jeśli aktualny stan czujników ulegnie zmianie i wzorzec przestanie odpowiadać stanowi aktualnemu wtedy do Nazwy alarmu oraz daty i czasu wystąpienia dopisywana jest data i czas zakończenia. Alarm pozostaje na liście, a następne pojawiają sie pod nim. Oczywiście możliwa jest taka sytuacja, ze w tym samym czasie będzie kilka aktywnych alarmów bowiem definiując alarm określamy, które czujniki są istotne dla danego alarmu.


Jak już na wstępie napisałem proszę jedynie o jakieś wskazówki.

Do dyspozycji mam LV8.5 Developer + MSSQL
Pozdrawiam
azjaart
sliski
Posty: 69
Rejestracja: 15 mar 2005 00:00
Lokalizacja: Rzeszów

Wyszukiwanie wzorca

Post autor: sliski »

Witam,

Rozumie ze we wzorcu tylko stan kilku czujnikow moze byc istotny a pozostalych dowolny.

1. Stan czujnikow - macierz 1D o rozmiarze rownym liczbie czujnikow. Komorka moze przyjac wartosci od 1 do 4.
2. Wzorce - macierz 2D. Jeden wiersz to jeden wzorzec. Szerokosc tyle ile czujnikow czyli to samo co 1D. Komorka moze przyjmowac wartosci od 0 do 4.
3. Kody bledow - macierz 1D wielkosc zalezna od ilosci zgodnych wzorcow.

Proponuje cale zadanie podzielic na moduly.
Modul rozpoznajacy wzorzec porownywalby macierz stanu czujnikow z kolejnymi wierszami macierzy wzorca. 0 we wzorcu maskowaloby czujniki nieistotne. Za wyjsciowe kody bledu ktore wypluwal by ten modul najprosciej przyjac numery wierszy wzorca z ktorymi jest zgodnosc.

Nastepny modul prowownywalby naplywajace do niego kody bledu porownywal je ze soba i generowal odpowiednie zdarzenie: wyswietlal na ekranie komunikat, logowal do pliku itp.

Pozdrawiam
Sliski
ODPOWIEDZ