|
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ě.
tohoto důvodu bylo zavedeno průměrování.
1) Vyrovnání rotoru rotor motoru nastaven počáteční známé pozice.
Další stavy komutace odvíjí této pozice.
Celý proces vystihuje vývojový diagram obr.
To zajišťuje funkce motor_start Nastartování motoru probíhá několika krocích.
ISR INT0_vect )
{
#ifdef USE_AVERAGE_IMP_LENGTH //zapne průměrování imp_length
static int buf[10];
static unsigned int buf_id 0;
static unsigned int buf_size ARRAY_SIZE(buf);
#endif
if((PIND 0b00000100) //pokud log. uplynutí impulsu dojde
opět vyvolání přerušení, tentokrát však důvodu příchodu sestupné hrany.
Tak vždy změřeno hodnot, kterých následně vypočten aritmetický průměr. (přišla náběžná
hrana) vynuluj časovač
TCNT0 0;
}
else {
#ifdef USE_AVERAGE_IMP_LENGTH
if(buf_id buf_size) {
int sum 0;
int i;
for(i=0; i<buf_size; i++) {
sum buf[i];
}
imp_length sum buf_size; //počítá průměr imp_length
buf_id 0;
}
buf[buf_id++] TCNT0;
#else
imp_length TCNT0; //pokud log. Předchozí
podmínka již neplatí proměnné imp_length uloží hodnota registru TCNT0,
která přímo úměrná délce trvání řídícího impulsu. podstatě jedná pole hodnot komutačních časů, které
se postupně snižují.40
kde skončil před skokem obslužné rutiny. Perioda přetečení časovače0 nastavena
při frekvenci interního oscilátoru 8MHz přibližně 8ms. Může dojít situaci, při
nastavení plynové páky vysílači určité poloze dochází při vyhodnocování impulsu
k přeskokům mezi dvěma hodnotami.1. Výsledkem spolehlivé roztočení motoru do
požadovaných minimálních otáček
.
2) Provedení startovací sekvence provedeno několik prvních komutací dle
startovací sekvence.2.3 Rozběh motoru
Po připojení napájení nutné nejprve motor roztočit určitých minimálních otáček. 3.0 ulož imp_length
obsah časovače
#endif
}
}
3