====== Lineární interpolace ====== {{:cs:mervis-ide:35-help:b83.png}} ===== Název bloku ===== B83_LINEARINTERPOLATION ===== Volání v ST ===== PROGRAM TEST B83 VAR FB : LIB.CORE.V1_0.B83_LINEARINTERPOLATION; END_VAR FB(IN:=REAL1, XVALUES:=POLE,YVALUES:=POLE2,ENABLEVALUES:=POLE3,RECALCULATESLOPES:=BOOL1, ENABLEMIN:=TRUE,ENABLEMAX:=TRUE,XMIN:=0,XMAX:=50,OUT=>REAL2); END_PROGRAM ===== Knihovna ===== LIB\CORE ===== Verze ===== V1.0 ===== Popis ===== Blok převede vstupní signál na výstup pomocí interpolační přímky. ===== Vstupy ===== |Vstup |Typ |Význam |Výchozí hodnota | |IN |REAL |Vstupní signál |0 | |XVALUES |ARRAY[1..10] OF REAL|Pole souřadnic X 1-10 |[0,0,...,0] | |YVALUES |ARRAY[1..10] OF REAL|Pole souřadnic Y 1-10 |[0,0,...,0] | |ENABLEVALUES |ARRAY[1..10] OF BOOL|Pole povolení souřadnic |[False,...,False]| |ENABLEMIN |BOOL |Povolení minimálního alarmu |False | |ENABLEMAX |BOOL |Povolení maximálního alarmu |False | |XMIN |REAL |Mez alarmu min |0 | |XMAX |REAL |Mez alarmu max |0 | |RECALCULATESLOPES|BOOL |Náběžnou hranou dojde k přepočítání křivek a uplatnění nových hodnot XValues/YValues/EnableValues|False | ===== Výstupy ===== |Výstup |Typ |Význam | |OUT |REAL|Výstupní hodnota| |MINALARM|BOOL|Alarm minima | |MAXALARM|BOOL|Alarm maxima | ===== Funkce ===== Blok implementuje přenosovou funkci, která je tvořena souřadnicemi //xvalues// a //yvalues//, tyto souřadnice musí být povoleny //enablevalues//. Vstupní hodnotu lze omezit pomocí hodnot //xmin// a //xmax//, které musí být povoleny //enablemin// a //enablemax//. Výpočet přímky se provádí při inicializaci a při kalibraci, která nastane při náběžné hraně //recalculateslopes//. Za krajními body přímky pokračuje přímka se stejnou směrnicí jako navazující směr mezi dvěma krajními body. ===== Příklad použití ===== {{:cs:mervis-ide:35-help:b83_example.png}}