|
Kategorie: Diplomové, bakalářské práce |
Tento dokument chci!
Cílem této práce bylo navrhnout a vytvořit regulátor otáček pro jednosměrné řízení bezkomutátorových střídavých motorů (BLDC) používaných v leteckém modelářství. Celé zapojení je ovládáno mikroprocesorem Atmel AVR. Jako pohonná jednotka promotor je použita akumulátorová sada typu Li–pol. Regulátor je vybaven obvodem BEC pro napájení přijímače a umožňuje monitorování odebíraného proudu a napětí na pohonném akumulátoru. Změřená data je možné uploadovat do PC, kde je možné jepomocí programu Regulátor PC zobrazit v grafické podobě.
Pro větší přehlednost jsou funkce rozděleny tak, jak jsou uloženy
v jednotlivých modulech. Po
připojení napájecího napětí automaticky spuštěna výchozí funkce main běh
programu pokračuje tak, jak naznačeno vývojovém diagramu obr.38
V následujícím seznamu uveden výčet některých důležitých funkcí, které
regulátor využívá.c
• Set_start_state funkce sloužící nastavení rotoru motoru do
počáteční známe pozice
• start_sequence startovací sekvence
• Run_ON zajišťuje vlastní komutace vinutí motoru
Modul memcontroller. Provede nastavení I/O
portů, povolí přerušení, čítač/časovač0, inicializuje A/D převodník, USART a
paměť EEPROM pro ukládání změřených dat.
• PORT_Init inicializace vstupně/výstupních portů.c
• main výchozí funkce programu.h. Následuje odskok hlavní smyčky programu, kde
dojde zacyklení.c, němuž přísluší regulator.
Modul regulator.1 Běh hlavního programu
Jádro programu uloženo modulu regulator.1. Zavolá funkce motor_start která
zajistí počáteční roztočení motoru. Nemá vstupní ani návratovou hodnotu.
.
• INTERRUPTS_Init inicializace přerušení
• ADC_Init inicializace převodníku
• USART_Init inicializace jednotky USART
• memcontroller_init inicializace paměti EEPROM
• motor_start funkce sloužící počátečnímu roztočení motoru
• set_speed stěžejní funkce celého programu, nastavuje rychlost otáčení
motoru
Modul commutation.
• TIMER0_Init inicializace časovače0.1.
Po prvotní inicializaci periferií dojde zacyklení nekonečné smyčce,
ze které volána funkce pro nastavování rychlosti motoru set_speed( ).
Nejprve jsou inicializovány jednotlivé použité periferie. 3.c
• memcontroller_writei uloží změřená data EEPROM
• memcontroller_readi přečte data EEPROM
• find_end( najde poslední záznam paměti
• memcontroller_getCount( vrací počet prvků zapsaných paměti
3