Witam,
zakładam, że wykonywanie elementu jest pokazywane przez załączenie jakiegoś bitu - niech będzie to MB0 (jeśli "1" to element jest wykonywany). Będzie on załączał T0 o nastawie załóżmy 60 sekund (maksymalny czas planowany). Będziemy mieli tabelę o np. 3 kolumnach: 1) numer seryjny - np. MI0, 2) czas wykonania elementu [10ms] - MI1, 3) różnica czasu między zakładanym a fizycznym - MI5.
Po zakończeniu wykonywania - detekcja zbocza opadającego MB0 wykonają się po kolei:
1) zczytanie czasu, który upłynął z T0 [1=10ms] do rejestru MI4
2) odjęcie czasu 6000 (=60s, bo taka nastawa czasu) od MI4 daje nam czas wykonania danego elementu MI1 w jednostce czasu 1=10ms.
3) odjęcie czasu MI1 od zakładanego MI3 (wpisywanego przez operatora z wyświetlacza) daje nam różnicę czasu MI5 w 1=10ms.
4) zapis numeru seryjnego, MI1 oraz MI5 do tabeli.
5) zwiększenie nr seryjnego o wartość 1 (inkrementacja).
6) dodanie czasu wykonania elementu MI1 do rejestru ML0,
7) zwiększenie numeru rzędu tabeli o 1, do której zapisujemy nasze wartości
8) przepisanie MI1 do MI9 w celu pokazywania MI9 jako trendu,
9) podzielenie ML0 przez rząd tabeli (=ile próbek zostało wykonanych) w celu uzyskania średniego czasu wykonania jednego elementu MI8, do pokazywania na wykresie.
Poniższy obrazek pokazuje to graficznie:
Tabelę stworzyłem na 1000 rzędów (nie wiem czy to wystarczy) oraz odświeżanie trendów ustawiłem na np. 10s.