Jste zde

LABJACK U3 – KROK ZA KROKEM II

Minulým dílem začal miniseriál o vyžití LABJACKu U3. Ukázali jsme si jakým způsobem měřit vstupní napětí, jak jej jednoduše zobrazit a také jak vytvořit graf zobrazující historii naměřených hodnot. Dnes si představíme možnosti analogového a digitálního výstupu.

labjack.jpg

Úvodem

LABJACK U3 disponuje dvěma analogovými výstupy (DAC0 a DAC1 – vyvedeny na svorkovnicích). Každý z těchto výstupů může být nastaven v rozsahu 0.04 – 4.95V s rozlišením 10b (U starších verzí 1.20/1.21 pak pouze s rozlišením 8b) Maximální výstupní napětí je v tomto případě limitováno napájecím napětí LABJACKU (5V z USB)

V základním režimu je možné pracovat pouze s výstupem DAC0. V tomto případě se nemění reference analogových vstupů. Chceme-li však používat i analogový výstup DAC1, přestane být u starších verzí HW (1.20/1.21) dostupná reference 1.44V a místo ní je použita reference z interního stabilizátoru 3.3V (nižší přesnost a stabilita). Pokud tedy chceme používat i analogový výstup DAC1, musíme s tímto omezením počítat. U nových verzí HW (od verze 1.30) toto již neplatí a použití DAC1 nemá vliv na reference analogových vstupů.

Analogové výstupy jsou odvozeny od referenčního napětí VREG a násobeny konstantou 1.5. Při referenčním napětí 3.3V tedy dostáváme maximální napětí 3.3 x 1.5 = 4.95V (jak již bylo uvedeno). Jakékoliv poklesy na referenčním napětí se tedy projeví také na výstupním napětí.

Výstup je úměrný PWM signálu zabudovaného časovače. Výchozí hodinová frekvence pro tento časovač je 48Mhz. Je nutné ale počítat s tím, že její snížení bude mít za následek zvýšení šumu ve výstupním signálu. Pro tyto případy je zabudována na výstupu dolní propust s útlumem 3dB/dek a zlomovou frekvencí 16Hz.

Využití DA výstupu

Je-li některý z DA připojen do obvodu, je nutné počítat s interním rezistorem o hodnotě 50 ohm a s následným úbytkem napětí odpovídajícímu protékajícímu proudu. Je tedy doporučováno nenapájet připojený obvod přímo z DA výstupu, ale použít operační zesilovač (například TLV246x – ti.com) v neinvertujícím zapojení. Mezi DA výstup a vstup operačního zesilovače by měl být zapojen jednoduchý RC filtr pro potlačení případného rušení. (Výrobce na svých stránkách nabízí hotový modul operačního zesilovače a filtru, včetně schémat)

Je-li požadováno zvýšení rozsahu výstupního napětí, je možné opět využít neinvertujícího zapojení operačního zesilovače, který bude buzen z DA výstupu. Operačním zesilovačem je také možné řešit bipolární analogový výstup. Příklad uvádí následující obrázek:

labjack_opamp.jpg

Digitální vstupy/výstupy

LABJACK U3 disponuje také digitálními vstupy/výstupy. Nejsou-li používány žádné analogové vstupy, může být těch digitálních až 20. Každá I/O linka může být konfigurována jako vstup nebo výstup nezávisle na ostatních. Výstupy pak mohou dosahovat referenčního napětí 3.3V a na vstupy je možno připojit také 5V logiku. Linky jsou číslovány podle následujícího pravidla:

0-7        FIO0 – FIO7
8-15      EIO0 -  EIO7
16-19    CIO0 - CIO7

FIO0 – FIO7 se nachází na svorkovnicích, EIO0 – EIO7 a CIO0 – CIO7 je možné nalézt na rozšiřujícím CAN konektoru. Všechny digitální linky obsahují ochranný sériový rezistor (přepětí, zkrat). Tento rezistor ovšem také samozřejmě limituje maximální výstupní proud.

Všechny linky jsou třístavové (vstup, výstup_LOW, výstup_HIGH). Jsou-li konfigurovány jako vstup, je automaticky připojen 100k pull-up (3.3V). Je-li konfigurován jako výstup (1), je nastaven do HIGH prostřednictvím sériového rezistoru. V opačném případě je rezistor připnut k digitální zemi. Stav po připnutí napájení je možné uživatelsky konfigurovat. Od výrobce jsou standardně všechny linky nastaveny jako vstupy.

Praktické zapojení

Po menším teoretickém úvodu se můžeme směle pustit do využití DA převodníků a digitální vstupně/výstupních linek. Začneme nejprve DA převodníkem

  1. Obsaďte si nový kanál a pojmenujte jej „Output
  2. Jako zařízení opět vybereme LabJack
  3. I/O type tentokrát nastavíme na D to A
  4. Kanál (Ch#) nastavíme na 0 (DAC0)
  5. Časování ani offset nemusíme vyplňovat
  6. Stejně tak nevyplňujeme ani další parametry

V tuto chvíli by měl být DA převodník připraven. Stačí připojit na svorkovnice LABJACKu voltmetr a do příkazového řádku okna Command/Alert zapsat hodnotu požadovaného napětí. Například: „Output = 1“. Na voltmetru by mělo postupně naskočit napětí blížící se jednomu voltu.

Příkazový řádek ale není jedinou možností jak ovládat stav výstupu. Je možné si pro tuto činnost nakonfigurovat ovládací prvky tak, jak jsme to udělali v úvodním díle pro AD převodník. Na stránce Page_0 si pro to vytvoříme následující pracovní plochu:

labjack_II_page0.jpg

  • Graf pro zobrazení průběhu nastaveného napětí
  • Variable Value pro přímé nastavení a zobrazení výstupního napětí
  • Tlačítko „<<“ pro snížení napětí o 1V
  • Tlačítko „<” pro snížení napětí o 0,1V
  • Tlačítko „>>“ pro zvýšení napětí o 1V
  • Tlačítko „>” pro zvýšení napětí o 0,1V

Graf jsme si nastavovali již minule, jediné dvě hodnoty, které budeme měnit bude v záložce Traces hodnota YValue, tu nastavíme na: Output. Druhou hodnotou bude měřítko (záložka Axes). U měřítka nastavíme maximum na 5V.

Prvek VariableValue jsme použili již minule. U něj si jako popisek (Caption) nastavíme: Output a do kolonky Expression zapíšeme Output[0]. Prvek nám tedy podobně jako minule u AD převodníku bude I v tomto případě ukazovat výstupní napětí DA převodníku. Natavíme si ale další parametery, a to v záložce Action. Položku Action nastavíme na Set to a položku Expression nastavíme na Ouput. Tímto úkonem jsme si zajistili, že pokud klikneme na prvek Variable value, můžeme si zapsat požadovanou hodnotu DA převodníku přímo:

labjack_VV_set.jpg

Zbývá nám už jen nastavit tlačítka. Po nastavení textového popisku v záložce Main přejdeme k nastavení funkce tlačítka (záložka Action). Položku Action zde nastavíme na Increment a Action channel na Output. Toto nastavení bude platit bez rozdílu pro všechna vložená tlačítka. Budou se však lišit položkou interval:

  • Pro tlačítko „<<“ bude interval -1
  • Pro tlačítko „>>“ bude interval +1
  • Pro tlačítko „<“ bude interval -0.1
  • Pro tlačítko „>“ bude interval +0.1

Hotovo… tedy analogová část

Vyzkoušíme si ještě digitální vstup a výstup. Přidáme další dva kanály:

  1. Rele, device type LabJack, I/O type Dig Out, CH# 1
  2. Input, device type Labjack, I/O type Dig In, CH#2

Nastavení digitálního výstupu lze opět provést přes příkaz v okně Command/Alert (Rele = 1, Rele = 0), my ale použijme ovládací prvky podle obrázku:

labjack_II_page01.jpg

Jedná se o prvky VariableValue. Nastavení vstupu by nemělo být po absolvování předchozí části pro nikoho problém. Nastavení prvku pro výstup se bude lišit o část v záložce Action:

labjack_vv_set2.jpg

Uvedené nastavení nám umožní měnit stav digitálního výstupu pouhým kliknutím na prvek VariableValue. Ve verzi express je VariableValue bohužel jeden z mála ovládacích prvků, kterým lze na uživatelské úrovni měnit úrovně portů nebo hodnoty pro převodníky. Další možností je použití objektu Descriptive Text. Ten se pro řízení digitálních výstupů hodí lépe. Umí také měnit barvu textu dle hodnoty zobrazené veličiny. Nastavení se provede jednoduše kliknutím na tlačítko Digital Out a výběrem správného kanálu.

labjack_dt_set.jpg

V placených verzích se ale už nachází více ovládacích prvků, které mají nejen větší možnosti co do funkčnosti, ale také i po vizuální stránce vydají lépe. Protože výrobce LabJacku poskytuje třídu pro platformu .NET vytvoříme si v průběhu seriálu vlastní program, který si už budeme moci ve všech ohledech upravit k obrazu svému. Tím bych dnešní díl ukončil. Příště budeme pokračovat využitím čítačů/časovačů a samozřejmě s tím související PWM.

Hodnocení článku: