Elektronika

Většina schemat na této stránce je ke stažení v sekci Dovnload včetně návrhu desek, rozložení součástek a výpisu HEX.

Napájení

Připojení k PC

Seriový port

Paralelní port

USB port

Modul pro řízení jednoho motoru

Jedna deska elektroniky pro čtyři motory

Chlazení drátu

Výhled do budoucna

 

První verze mé elektroniky byly postaveny na mikrokontroléru PIC 16F84, připojovaly se k seriovému portu a integrovaly dohromady všechno na jednu desku. Toto řešení je sice "nejúspornější", protože velkou část součástek lze nahradit softwarem mikrokontroléru, ale je málo pružné, protože neumožňuje vývoj. Vzhledem k tomu, že existuje také spousta jiných řešení, přešel jsem časem na modulární řešení celé elektroniky.

Základem jsou tři moduly:

  • napájení
  • obvod zajišťující komunikaci s portem PC
  • obvod zajišťuijící řízení krokovým motorků a výkonová část

 

Základem elektroniky je osmibitová sběrnice, která řídí čtyři krokové motory. Každý motor je řízen dvěma signály: Clk a Dir

Řídící obvod pro jeden motor:

Clk - určuje jeden krok motoru (clock)

Dir - určuje směr rotace (direction)

Ze strany PC je možné se k této osmibitové sběrnici připojit přes seriový, paralelní nebo USB port. Seriový a paralelní port vyžadují převodník, paralelní port má přímo osm datových linek.

Ze strany motorů je nutné dva signály pro každý motor převést na čtyři signály pro čtyři vinutí každého motoru, které jsou spínány přes čtyři výkonové tranzistory. Toto řízení každého jednotlivého motoru lze realizovat:

  • speciálním obvodem, kdy budeme potřebovat na čtyři motory čtyři desky řízení
  • jedinou deskou elektroniky se dvěma 16F88 a šestnácti výkonovými tranzistory, která navíc umožňuje regulovat žhavení drátu a nastavovat některé další funkce - viz dále

    Celé řešení lze tedy schematicky popsat takto:

port PC = > převodník na 8 datových linek = > spínání 4 krokových motorů

Napájecí zdroj

Pro PIC je nutné napětí +5,0 V a pokud chceme použít dva páry krokových motorků a nemáme čtyři stejné, pak je výhodný zdroj s třemi napětími. Já jsem to řešil skládačkou, kde lze při potřebě pouze dvou napětí poslední díl vypustit.

 

zvětšit

Připojení k PC

Elektroniku lze připojovat před paralelní, seriový nebo USB port, při připojení přes seriový nebo USB port si musíme postavit převodník z daného portu na osm datových linek.

Naprostá většina konstrukcí na webu připojuje zřejmě proto elektroniku přes paralelní port. Vzhledem k možnostem, které se ale nabízejí při realizaci jednotlivých způsobů připojení, se mi jako optimální jeví připojení přes seriový port, i kdyby to mělo být s použitím USB-COM převodníku.

Seriový port

Pro připojení elektroniky k seriovému portu je určen seriově - paralelní převodník, jehož základem je obvod 16F88, který realizuje převod UART - osm datových linek. Převodník přijímá data prostřednictvím asynchronního přenosu a převádí je na 8 datových linek. Dvě LED na výstupu indikují stav obvodu:

  • zelená LED1 svítí a červená LED2 nesvítí - obvod je zapnut , data nepřicházejí
  • červená LED2 bliká a zelená LED1 svítí - bliknutí odpovídá přijatému bytu , který je přenesen na výstup
  • červená LED2 bliká a zelená LED1 nesvítí - chyba při přenosu dat, nutný reset obvodu (tlačítkem)

 

zvětšit

Tento modul lze připojit buď k standardnímu seriovému portu (COM1, COM2) nebo virtuálnímu seriovému portu realizovanému prostřednictvím USB-COM převodníku (COM4, COM6).

USB-COM převodník je speciální obvod, který se dá sehnat obvykle jako kabel s USB konektorem na jednom konci a DB-9 konektorem na druhém, kde je zároveň v krytu konektoru daný obvod-převodník (může to být třeba FT232BM). Hotový kabel se dá koupit bez problémů.

Paralelní port

Paralelní port poskytuje (mimo jiné) rovnou 8 datových linek, takže zde odpadá modul pro převod dat z PC na 8 datových linek. Přitom další linky lze užít pro spínání bloku motorů jako celku nebo pro spínání žhavení drátu. Nevýhodou je to, že Win XP neumožňují přímý přístup na port, ale přístupovat lze pouze přes drivery. U Windows 95/98 se používá speciální knihovna. Údajně existují knihovny umožňující přístup i u Win XP, ty jsem zatím nezkoušel.

Elektronika pro paralelní port je dobře popsána na stránkách Alana Maczáka.

USB port

Připojení k USB portu je možné realizovat několika k tomu určenými obvody, já používám FT 232BM. Tento obvod je určen jako převodník USB - COM port, ovšem ve speciálním modu ("bit-bang") poskytuje 8 datových linek. Stavbu tohoto převodníku výrazně zjednoduší stavebnice KTE 667, při jejímž osazování zapojíme pouze FT232BM a výstupy z něj přivedeme před 10k odpory přímo na piny konektoru paralelního portu. (schéma, deska stavebnice)

zvětšit

 

 

Modul pro řízení jednoho motoru

Pro řízení jednoho krokového motoru potřebujeme modul, který má na vstupu dva signály: hodinový vstup určující vždy jeden krok motoru (Clk - clock) a druhý vstup určující směr otáčení (Dir - direction). Na výstupu potřebujeme čtyři signály pro každou cívku motoru, kterými spínáme čtyři výkonové tranzistory.

Pro každý krokový motor potřebujeme jeden tento modul. Ten můžeme realizovat

- speciálním obvodem (toto řešení obvykle poskytuje navíc funkce jako microstepping - zvýší počet kroků na otáčku nebo napájení konstantním proudem - zvýší kroutivý moment).

- naprogramováním mikrokontroléru, nejlépe PIC 12C508 nebo 509 (firma Microchip)

- při použití 16F88 použijeme jeden mikrokontrolér na dva motory a můžeme pomocí softwaru implementovat další funkce: regulaci žhavení a řízení konstantním proudem.

 

Jedna deska elektroniky pro čtyři motory

zvětšit

Deska výkonové části elektroniky se skládá ze dvou identických zapojení. Základem jedné poloviny desky je PIC 16F88, který dekoduje 4 vstupní piny pro dva motory a spíná 2 x 4 výkonové FET tranzistory.

Na jeden z pinů každého mikrokontroléru je vyveden výstup interního modulu PWM modulace. První výstup spíná další výkonový FET tranzistor, který je použit k regulaci žhavení řezacího drátu. Týž výstup druhého mikrokontroléru je vyveden na konektor, kde může být použit libovolným způsobem, třeba ke spínání dalšího zařízení přes tranzistor, optocoupler nebo relé. Software mikrokontrolérů odpojuje cívky motorů, pokud po asi 2 sekundy nepřijde příkaz ke kroku, tuto funkci lze vyřadit příkazem z programu PC.

Vzhledem k předpokládanému dalšímu vývoji elektroniky umožňuje tato deska u PICu v dolní polovině schematu dvojí zapojení.

V současné verzi je použito zapojení vlevo.

 

Tato koncepce má na rozdíl od použití komerčních obvodů pro řízení krokových motorů zásadní výhodu: Software mikroprocesoru je napsán tak, že je schopen mezi normálními příkazy pro řízení krokových motorů (kombinace signálů Clk a Dir) odlišit ty, které mezi ně nepatří. Ty jsou použity pro modifikaci funkce mikrokontroléru. Díky tomu lze navíc:

  • užít výstup mikrokontroléru jako spínač výkonu
  • tento spínač přeměnit na PWM modulovaný signál (s frekvencí asi 20 Hz)
  • měnit střídu PWM modulace
  • měnit charakter spínání výkonových tranzistorů a tak měnit kroutivý moment motoru
  • a pokud mne zase něco napadne, tak to tam přidám

Tyto funkce jsou v současné době v programu mikrokontroléru implementovány. Předpokladem pro jejich užití je ale PC program, který je dokáže na sběrnici poslat. Bez programu, který umí tyto funkce využít, pracuje toto zapojení jako jakékoliv jiné zapojení využívající řízení pomocí signálů Clk a Dir.

Takhle vypadá prototyp desky této elektroniky, současná verze desky se odlišuje pouze umístěním konektoru pro připojení vstupních řídících signálů, které jsou v rovině desky.

Chlazení drátu

Elektronika použitá pro chlazení drátu je velmi jednoduchá. Pokud se rozhodneme použít ventilátor z PC, můžeme ji realizovat jako externí modul řízený druhou PWM modulací, která je vyvedena na desce hlavní elektroniky na konektor. Výstup PWM modulace spíná výkonový FET tranzistor, který přes omezovací odpor nabíjí vyhlazovací kondenzátor, ze kterého je odebírán proud pro napájení ventilátoru. (PWM modulace má kmitočet asi 20 Hz, kapacita kondenzátoru musí být proto přiměřeně velká. Navíc ventilátory procesoru PC mají malý proudový odběr.) Před celou sestavou je monolitický regulátor na 12 V, ten je pro případ, že potřebujeme upravit napájecí napětí pro ventilátor.

 

zvětšit

 

Výhled do budoucna

Rychlost točení motorů u elektroniky tohoto typu je dána rychlostí PC, tj. jak rychle je port schopen posílat data - pulzy Clk - na port a jak rychle je mezi tím schopen propočítávat data, která má poslat. Limitem je ale rychlost portu. Ke spočítání toho, který motor má dostat jaký příkaz při posunu, kdy pohyb po libovolné přímce je složen s diskrétních kroků, slouží Bresenhamův algoritmus (stejný je použit při kreslení přímky na obrazovku monitoru, který je také složen z diskrétních bodů). Ty programy, které musí točit motory rychleji než asi 1 otočku za sekundu (při 200 krocích na otáčku), jsou buď napsány v DOSu (který je na PC s Pentiem extrémně rychlý) nebo mají Bresenhamův algoritmus implementován v mikrokontroléru a tomu PC posílá pouze hodnoty souřadnic pro posun.

Další možností, jak celé zařízení vylepšit, je využít AD převodníky v 16F88 a do převodníku ze seriového portu naprogramovat zpětnovazební regulaci teptoly řezacího drátu.

Další vylepšení spočívá ve vytvoření chlazení té části řezacího drátu, která při řezání lichoběžníkových křídel opisuje kratší dráhu. Pokud je navrženo křídlo s velkým lichoběžníkem, bývá tato část značně propálena a prořez materiálu bývá tak velký, že lze obtížně vytvořit přesně požadované rozměry řezané části.

 

 

Main Page