Matematické instrukce
Matematické operace lze provádět jak s celočíselnými hodnotami, tak i s čísly s desetinnou čárkou někdy označovanými jako Floating-Point.
Podobně jako komparátory mají i tyto instrukce dva vstupy a jeden výstup. Výstup však není boolovský (tedy logická jednička nebo nula), ale odpovídá datovému typu, se kterým pracujeme. Matematické operace lze tedy provádět pouze mezi stejnými datovými typy.
Obr. 1: Ukázka instrukce součtu celočíselných hodnot
Mezi základní matematické operace patří:
-
součet ADD
-
rozdíl SUB
-
násobení MUL
-
dělení DIV
Příklad
V následujícím příkladu je úkolem sestavit program pro převod měřené teploty ve stupních Fahrenheita (°F) na stupně Celsia (°C). Nezbytná je znalost převodu mezi těmito jednotkami:
kde F je teplota ve stupních Fahrenheita.
-
Protože výsledek ve stupních Celsia může být desetinné číslo, bude pracovat s datovým typem REAL.
-
Nejprve tedy použijeme instrukci pro odečet SUB_R. Hodnotu ve stupních Fahrenheita zapíšeme jako konstantu na IN1 (při reálném měření teploty by zde byla proměnná se skutečně naměřenými údaji). Dále tuto hodnotu vynásobíme číslem 5 a následně vydělíme číslem 9. Výsledek zapíšeme do paměti VD300.
Obr. 2: Práce s matematickými instrukcemi
Jak ukazuje následující příklad, kromě základních matematických operací máme v současné době u PLC automatů k dispozici také množství numerických funkcí, jako je výpočet logaritmů, mocnin, trigonometrických funkcí aj.
Příklad
Na tomto příkladu si ukážeme převod získané hodnoty z úhlových stupňů na radiány a následný výpočet trigonometrické funkce sinus.
Na vstup instrukce MUL IN1 zapíšeme hodnotu úhlu ve stupních a na IN2 potom konstantu přepočtu na radiány.
Obr. 3: Práce s matematickými instrukcemi