This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| et:examples:motor:dc [2015/03/03 20:18] – raivo.sell | et:examples:motor:dc [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ~~PB~~ | + | < |
| ====== Alalisvoolumootor ====== | ====== Alalisvoolumootor ====== | ||
| Line 20: | Line 20: | ||
| H-sillas tüürivad mootori pöörlemiseks vajalikku voolu neli transistori (või nende gruppi). H-silla elektriskeem meenutab H-tähte - sellest ka nimi. H-silla eripära seisneb mootorile mõlemat pidi polaarsuse rakendamise võimaluses. Kõrvaloleval pildil on toodud H-silla põhimõtteskeem lülitite näitel. Kui selles skeemis sulgeda kaks diagonaalis asetsevat lülitit, hakkab mootor tööle. Mootori pöörlemissuund sõltub aga sellest, kummas diagonaalis lülitid suletakse. Reaalses H-sillas on lülitite asemel muidugi transistorid, | H-sillas tüürivad mootori pöörlemiseks vajalikku voolu neli transistori (või nende gruppi). H-silla elektriskeem meenutab H-tähte - sellest ka nimi. H-silla eripära seisneb mootorile mõlemat pidi polaarsuse rakendamise võimaluses. Kõrvaloleval pildil on toodud H-silla põhimõtteskeem lülitite näitel. Kui selles skeemis sulgeda kaks diagonaalis asetsevat lülitit, hakkab mootor tööle. Mootori pöörlemissuund sõltub aga sellest, kummas diagonaalis lülitid suletakse. Reaalses H-sillas on lülitite asemel muidugi transistorid, | ||
| - | |||
| - | H-sillaga saab peale pöörlemissuuna muuta ka mootori pöörlemiskiirust - selleks tuleb transistore pulsilaiusmodulatsiooniga (PWM) pidevalt avada ja sulgeda, nii et summaarne mootorile antav energia on midagi seismise ja täisvõimsuse vahepealset. Avatud aega kogu PWM perioodist nimetatakse ka töötsükliks (inglise keeles //duty cycle//), mida tähistatakse protsentidega. 0% tähendab, et transistor on pidevalt suletud, ehk ei juhi voolu, 100% tähendab, et transistor on pidevalt avatud, ehk juhib voolu. PWM sagedus peab olema piisavalt kõrge, et vältida mootorivõlli vibreerimist. Madalal sagedusel tekitab mootor lisaks ka müra ja seepärast kasutatakse enamasti üle 20 kHz moduleerimissagedust. Samas kannatab väga suurtel sagedustel H-silla efektiivsus. Mootorivõlli vibreerimist vähendavad ka rootori inerts ja mootori mähiste induktiivsus. | ||
| [{{ : | [{{ : | ||
| - | Väiksemate voolude juhtimiseks leiab H-sildu integreeritud komponendina ehk ajurina, suuremate voolude jaoks kasutatakse spetsiaalseid võimsustransistore (//Power MOSFET//). H-silda koos sinna kuuluva elektroonikaga nimetatakse ka mootorikontrolleriks. | + | H-sillaga saab peale pöörlemissuuna muuta ka mootori pöörlemiskiirust. |
| - | Kuigi alalisvoolumootori kiirust on lihtne juhtida, siis puudub garantii, et soovitud kiirus siiski saavutatakse. Tegelik kiirus sõltub paljudest faktoritest, | + | Kuigi alalisvoolumootori kiirust on lihtne juhtida, siis puudub garantii, et soovitud kiirus siiski saavutatakse. Tegelik kiirus sõltub paljudest faktoritest, |
| Alalisvoolu mootorit saab juhtida nii analoog kui digitaal signaalidega. | Alalisvoolu mootorit saab juhtida nii analoog kui digitaal signaalidega. | ||
| Line 39: | Line 37: | ||
| Robootikas juhitakse alalisvoolumootoreid mikrokontrolleritega ning kuna need on digitaalsed seadmed, siis on mõistlik ka mootoreid digitaalselt juhtida. See saavutatakse pulsilaiusmodulatsiooni (inglise keeles //Pulse With Modulation//, | Robootikas juhitakse alalisvoolumootoreid mikrokontrolleritega ning kuna need on digitaalsed seadmed, siis on mõistlik ka mootoreid digitaalselt juhtida. See saavutatakse pulsilaiusmodulatsiooni (inglise keeles //Pulse With Modulation//, | ||
| - | Digitaalsel juhtimisel on võrreldes analoogjuhtimisega mitmed eelised. Peamine eelis mikrokontrolleriga juhitavate süsteemide puhul on see, et vaja on vaid ühte digitaalväljundit ning puudub | + | Digitaalsel juhtimisel on võrreldes analoogjuhtimisega mitmed eelised. Peamine eelis mikrokontrolleriga juhitavate süsteemide puhul on see, et vaja on vaid ühte digitaalväljundit ning puudub |
| Lihtsustatud juhtimisskeem on näidatud kõrvalasuval joonisel. | Lihtsustatud juhtimisskeem on näidatud kõrvalasuval joonisel. | ||
| Juhtpinge Vc tuleb mikrokontrolleri väljundviigult ning lülitab transistori Q sisse-välja umbes 20 kHz sagedusel. Kui transistor Q on sisse lülitatud, liigub kogu vool I läbi mootori M. Sellisel juhul käitub transistor kui suletud lüliti ja pingelang Vq on 0-i lähedane ning mootorile jääb kogu sisendpinge Vdd. | Juhtpinge Vc tuleb mikrokontrolleri väljundviigult ning lülitab transistori Q sisse-välja umbes 20 kHz sagedusel. Kui transistor Q on sisse lülitatud, liigub kogu vool I läbi mootori M. Sellisel juhul käitub transistor kui suletud lüliti ja pingelang Vq on 0-i lähedane ning mootorile jääb kogu sisendpinge Vdd. | ||
| - | ~~PB~~ | + | < |
| Transistori läbiva koguvõimsuse saab arvutada valemiga: | Transistori läbiva koguvõimsuse saab arvutada valemiga: | ||
| Line 58: | Line 56: | ||
| ===== Praktika ===== | ===== Praktika ===== | ||
| - | Kodulaboris kasutatakse alalisvoolumootorite juhtimiseks kombineeritud kiipi, mis sisaldab endas kahte integreeritud H-silda ja kaitsedioode. Mootorit juhitakse kolme digitaalse signaaliga, millest üks on üldine tööd lubav signaal (inglise keeles // | + | Kodulaboris kasutatakse alalisvoolumootorite juhtimiseks kombineeritud kiipi, mis sisaldab endas kahte integreeritud H-silda ja kaitsedioode. Mootorit juhitakse kolme digitaalse signaaliga, millest üks on üldine tööd lubav signaal (inglise keeles // |
| Kodulabori Kombomoodulil on võimalus kuni nelja alalisvoolumootori ühendamiseks. Sisuliselt on iga mootori jaoks H-sild, mida juhitakse kahe mikrokontrolleri digitaalse väljundviiguga, | Kodulabori Kombomoodulil on võimalus kuni nelja alalisvoolumootori ühendamiseks. Sisuliselt on iga mootori jaoks H-sild, mida juhitakse kahe mikrokontrolleri digitaalse väljundviiguga, | ||
| Line 71: | Line 69: | ||
| Iga mootorit, mis on ühendatud H-silla külge juhitakse kahe mikrokontrolleri digitaalväljundiga. Mootori kiirust juhitakse taimeritega, | Iga mootorit, mis on ühendatud H-silla külge juhitakse kahe mikrokontrolleri digitaalväljundiga. Mootori kiirust juhitakse taimeritega, | ||
| - | ~~PB~~ | + | < |
| <code c> | <code c> | ||
| // Mootorite ühendusviigud | // Mootorite ühendusviigud | ||
| Line 140: | Line 138: | ||
| <code c> | <code c> | ||
| // Kodulabori mootori juhtimise näidisprogramm | // Kodulabori mootori juhtimise näidisprogramm | ||
| - | #include < | ||
| #include < | #include < | ||
| #include < | #include < | ||
| Line 164: | Line 161: | ||
| while (1) | while (1) | ||
| { | { | ||
| - | // Potentsiomeetri 4 keskmise lugemi võtmine ja salvestamine muutujasse | + | // Potentsiomeetri 4 keskmise lugemi võtmine ja salvestamine muutujasse |
| - | speed = adc_get_average_value(15, 4); | + | |
| - | // Kuna potentsiomeetri väärtus on 12-bitine kuid DC mootori | + | // Kodulabor II |
| - | // funktsioon on 8-bitine, tuleb ADC väärtus muundada 8-bitiseks | + | // Kuna potentsiomeetri väärtus on 10-bitine kuid DC mootori |
| - | // jagades ADC väärtus kaheksaga või nihutades bitinihutustehtega | + | // funktsioon on 8-bitine, tuleb ADC väärtus muundada 8-bitiseks |
| - | // ADC väärtust paremale | + | // jagades ADC väärtus neljaga või nihutades bitinihutustehtega |
| - | | + | // ADC väärtust paremale 2 kohta (>>2) |
| + | // speed = adc_get_average_value(3, 4)/4; | ||
| + | |||
| + | // Kodulabor III | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | speed = adc_get_average_value(15, | ||
| + | |||
| + | //DC mootori juhtimine saadud potentsiomeetri väärtuse kaudu | ||
| + | | ||
| | | ||
| } | } | ||
| } | } | ||
| </ | </ | ||