Karta Wago 750-496 měří proud v rozsahu 0…20 mA nebo 4…20 mA. V prototypu je nastavena transformace s výstupem 0…20 000 (uA). Většinou by ovšem bylo vhodnější škálovat výstup už ve fyzikálních jednotkách, v nichž měří připojené čidlo, tedy kPa, bar, % rH, Pa a podobně. Transformace Linear with shift není příliš obvyklá, a proto si ukážeme, jak s ní pracovat a jak nastavit její koeficienty pro libovolný měřicí rozsah připojeného čidla.
V Domat IDE vypadá pro 0…20 mA výchozí nastavení transformace takto:
Parametr Shift neznamená přičtení hodnoty před vstupem do funkce „Kx + Q“, ale bitový posun vstupního wordu. V dokumentaci - katalogovém listu Wago ke kartě - najdeme totiž tyto údaje:
Z šestnáctibitového wordu jsou první tři bity (sloupec XFÜ) použity jako stavové a analogová hodnota je obsažena až v nejvyšších 13 bitech (sloupec Binary). Její rozsah je tedy 0…4095.
Šestnáctibitové slovo načtené po interní sběrnici Kbus je tedy v transformaci v Domat IDE nejdříve posunuto doprava o tři bity (celočíselně vyděleno osmi), což je zmíněný Shift, a pak teprve lineárně škálováno z 0…4095 na 0…20000 (uA), a to násobením konstantou 4,8828:
4095 * 4,8828 = 19 995 (zaokrouhlíme na 20 000) uA, neboli 20 mA.
V případě, že na vstup je připojeno čidlo s rozsahem 0…X, např. 0…200 kPa, musíme upravit konstantu K, a to takto:
K = X / 4095
a tedy pro čidlo 0…200 kPa bude K = 200 / 4095 = 0,04884.
Shift zůstane roven 3 a Q = 0, protože 0 mA = 0 kPa.
Zde je výpočet stejný, jen nesmíme zapomenout nastavit rozsah měření na kartě na 4…20 mA.
Karta potom poskytuje vstupní hodnoty 4…20 mA naškálované na rozsah 0…32760, viz opět dokumentace ke kartě:
Po již známém posunu o tři bity doprava – odstranění stavových bitů – dostaneme rozsah 0…4095 a opět platí výše uvedené. Například u čidla 0…1000 Pa jsou koeficienty následující:
Shift = 3
K = 1000 / 4095 = 0,2442
Q = 0
Zajímavější situace ovšem nastává v případě, že měřená hodnota nezačíná nulou, např. u diferenčních čidel tlaku Premasgard 2121, která mohou být nastavena na symetrický rozsah:
V tom případě je signál (po tříbitovém posunu) 0…4095, který vstupuje do transformace Kx + Q, nutné škálovat na rozsah např. -500…500 Pa. Jak to zařídit?
Je nutné vyřešit soustavu dvou rovnic. Do y = Kx + Q postupně dosadíme oba koncové body:
-500 = K*0 + Q
500 = K*4095 + Q
Po odečtení:
-1000 = - K*4095 a tedy K = -1000 / -4095 = 0,2442
Vypočtené K dosadíme do druhé rovnice a získáme
500 = 0,2442 * 4095 + Q
Q = 500 – 0,2442 * 4095 = 500 – 1000 = -500
Podobně postupujeme i u nesymetrických rozsahů. Pokud bychom chtěli vztah zobecnit a měřený rozsah nazveme Min…Max, platí pro oba typy signálu (0…20 mA i 4…20 mA, jen nesmíme zapomenout nastavit správnou hodnotu v parametru karty Vstupní rozsah - proud):
K = (Max – Min)/4095
Q = Max – 4095*K
A to je celé.