Hirdetés
- Luck Dragon: Óraátállítás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: MárkaLánc
- Luck Dragon: Asszociációs játék. :)
- Kempingezés és sátrazás
- Lalikiraly: Mercis kalandok - Huszonnyolcadik rész - Az újrakezdés
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Sapphi: StremHU | Source – Self-hostolható Stremio addon magyar trackerekhez
Új hozzászólás Aktív témák
-
moseras
tag
válasz
DP_Joci
#3602
üzenetére
Üdv!
(* deklarációk *)
FUNCTION_BLOCK Fb_AtlagoloSzuro
VAR_INPUT
rValue: REAL;
bBufferSize: BYTE := 10;
tPeriod: TIME := t#10s;
RESET: BOOL;
END_VAR
VAR_OUTPUT
rAverageValue: REAL;
END_VAR
VAR
Buffer: ARRAY[1..255] OF REAL;
tSampling: TIME;
FillTimer: TON;
I: WORD;
Tick: BOOL;
Init: BOOL := FALSE;
END_VAR
(* kód *)
tSampling := tPeriod / bBufferSize;
FillTimer(
IN := NOT Tick,
PT := tSampling,
Q => Tick
);
IF NOT init OR RESET OR bBufferSize = 0 THEN
Init := TRUE;
FOR I:= 1 TO bBufferSize DO
Buffer[I] := rValue;
END_FOR;
rAverageValue := rValue;
ELSIF Tick THEN
IF I >= bBufferSize THEN
I := 1;
ELSE
I := I + 1;
END_IF;
rAverageValue := rAverageValue + (rValue - Buffer[I]) / bBufferSize;
Buffer[I] := rValue;
END_IF;Az ötlet innen van: [oscat]
A FILTER_MAV_DW nevű blokkot módosítottam, úgy hogy REAL értékkel dolgozzon, továbbá, hogy időalapú legyen.
Ha működés közben módosítod a puffer méretét vagy a teljes periódusidőt, akkor teszteld le úgy is, mert arra nincs tesztelve !
Imi.
Új hozzászólás Aktív témák
- BESZÁMÍTÁS! Apple Macbook Air 15 2025 M4 24GB RAM 512GB SSD notebook garanciával hibátlan működéssel
- Azonnali készpénzes nVidia RTX 2000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- Beszámítás! Intel Core i7 4770K 4 mag 8 szál processzor garanciával hibátlan működéssel
- Honor Magic6 Lite / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- 27% GIGABYTE Z790 AORUS ELITE AX Alaplap bontatlan új !
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
