Struktura

Matematické instrukce

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

Zdroje

Obrázky

  • Pokud není uvedeno jinak, autorem obrázků je Ing. Miroslav Opl

Opakování

K čemu slouží matematické instrukce?

Co rozumíte pod pojmem "Floating-Point"?

Jaký datový typ byste použili pro zápis záporného výsledku s desetinnou čárkou?

Doplňující učivo

Programovací jazyky určené pro PLC automaty ne vždy nabízejí potřebný soubor matematických operací. Zápis se také v programu reléových schémat stává nepřehledný. Dále si tedy ukážeme formu zápisu matematických rovnic v grafickém prostředí LabVIEW od firmy National Instruments.

Za příklad si vezměme rovnici teplotní charakteristiky termistoru:

Obr. 4: Teplotní charakteristika termistoru

A1, B1, C1 a D1 jsou konstanty, pomocí nichž je vyjádřena charakteristika konkrétního termistoru. R25 je potom jeho odpor při teplotě 25°C.

Pro zápis rovnice slouží "okno" se vstupními hodnotami nalevo a výstupními napravo. Hodnotu odporu termočlánku R25 a přirozený logaritmus můžeme „vytknout“ před okno vzorce.

Obr. 5: Funkce „Formula Node“ v prostředí LabVIEW

Logolink