This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| et:competition:cart:guideline [2012/03/08 22:49] – illo | et:competition:cart:guideline [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| | | ||
| - | <note important> | ||
| ===== Akutrelli modifitseerimine ===== | ===== Akutrelli modifitseerimine ===== | ||
| Line 15: | Line 14: | ||
| ===== Akutrelli mootori juhtimise skeem ===== | ===== Akutrelli mootori juhtimise skeem ===== | ||
| - | [{{: | + | [{{: |
| ~~CL~~ | ~~CL~~ | ||
| Line 27: | Line 26: | ||
| **Võib kasutada ka mingit muud NPN transistori, | **Võib kasutada ka mingit muud NPN transistori, | ||
| - | Skeem töötab ka ilma " | + | Skeem töötab ka ilma " |
| - | [{{: | + | [{{: |
| ~~CL~~ | ~~CL~~ | ||
| Line 41: | Line 40: | ||
| * D - //drain// ehk neel | * D - //drain// ehk neel | ||
| * G - //gate// ehk pais | * G - //gate// ehk pais | ||
| - | Lättesse kaudu sisenevad | + | |
| + | Laengukandjad | ||
| + | ~~CL~~ | ||
| + | {{: | ||
| + | ~~CL~~ | ||
| + | |||
| + | Skeemi järgi tuleb ühendada läte (S) dioodi D2 +klemmiga | ||
| ===== Näite kood ===== | ===== Näite kood ===== | ||
| + | |||
| + | NB! Kood töötab õieti ainult kõige uuema teegi versiooniga. | ||
| + | Viimane tarvara teegi versioon on leitav [[et: | ||
| <code c> | <code c> | ||
| - | |||
| // | // | ||
| - | // | ||
| - | // | ||
| // Vajalik riistvara: | // Vajalik riistvara: | ||
| // 1. Üks akutrelli mootori juhtsskeem koos trelli mootoriga | // 1. Üks akutrelli mootori juhtsskeem koos trelli mootoriga | ||
| // 2. Kodulabori kontrollermoodul ATmega2561 | // 2. Kodulabori kontrollermoodul ATmega2561 | ||
| - | // 3. Kodulabori mootorite moodul või combo moodul | + | // 3. Kodulabori mootorite moodul või komboplaat |
| // 4. Kodulabori kasutajaliidese moodul | // 4. Kodulabori kasutajaliidese moodul | ||
| // | // | ||
| // Kirjeldus: | // Kirjeldus: | ||
| // Näide on mõeldud ühe akutrelli mootori kiiruse juhtimiseks | // Näide on mõeldud ühe akutrelli mootori kiiruse juhtimiseks | ||
| - | // koos mootori | + | // koos mootori |
| - | // nupp S2 vähendab | + | // nupp S2 vähendab |
| - | // ning lisaks kuvatakse LCD ekraanil tekst " | + | // ning S3 paneb mootori tööle poole kiirusega. |
| - | // Nupud S1 ja S2 vilgutavad ka vastavaid LED-e. | + | |
| - | // | + | |
| // | // | ||
| - | |||
| - | #include < | ||
| #include < | #include < | ||
| - | #include < | ||
| #include < | #include < | ||
| - | |||
| - | // LEDide viigud | ||
| - | pin led_yellow = PIN(C, 4); | ||
| - | pin led_green | ||
| - | |||
| // Nuppude viigud | // Nuppude viigud | ||
| pin button1 = PIN(C, 0); | pin button1 = PIN(C, 0); | ||
| pin button2 = PIN(C, 1); | pin button2 = PIN(C, 1); | ||
| + | pin button3 = PIN(C, 2); | ||
| int main(void) | int main(void) | ||
| { | { | ||
| unsigned char speed = 0; | unsigned char speed = 0; | ||
| - | signed char direction = -1; | + | signed char direction = 1; |
| - | + | ||
| - | // Seab LEDid töökorda | + | |
| - | pin_setup_output(led_green); | + | |
| - | pin_setup_output(led_yellow); | + | |
| // Seab nupud töökorda | // Seab nupud töökorda | ||
| pin_setup_input_with_pullup(button1); | pin_setup_input_with_pullup(button1); | ||
| pin_setup_input_with_pullup(button2); | pin_setup_input_with_pullup(button2); | ||
| + | pin_setup_input_with_pullup(button3); | ||
| - | // Lülitab LEDid välja | + | |
| - | pin_set(led_green); | + | |
| - | pin_set(led_yellow); | + | |
| - | + | ||
| - | // Ekraani seadistamine | + | |
| - | lcd_gfx_init(); | + | |
| - | + | ||
| - | // LCD ekraani puhastamine | + | |
| - | lcd_gfx_clear(); | + | |
| - | + | ||
| - | lcd_gfx_backlight(true); | + | |
| - | + | ||
| - | // Kursori (nähtamatu) ekraani keskele viimine | + | |
| - | lcd_gfx_goto_char_xy(3, | + | |
| - | + | ||
| - | // Teksti kuvamine | + | |
| - | lcd_gfx_write_string(" | + | |
| - | + | ||
| - | // Mootorite initsialiseerimine | + | |
| dcmotor_drive_pwm_init(0); | dcmotor_drive_pwm_init(0); | ||
| | | ||
| - | //*****Siin toimub kiiruste muutmine***** | ||
| while(1) | while(1) | ||
| { | { | ||
| Line 119: | Line 92: | ||
| if(!pin_get_debounced_value(button1)) | if(!pin_get_debounced_value(button1)) | ||
| { | { | ||
| - | // Suurendab kiirust | + | speed++; |
| - | if(speed < 0xFF) | + | |
| - | { | + | |
| - | speed++; | + | |
| - | } | + | |
| - | pin_clear(led_green); | + | |
| } | } | ||
| - | |||
| // Nupp S2 alla vajutatud, vähendame kiirust | // Nupp S2 alla vajutatud, vähendame kiirust | ||
| - | | + | |
| { | { | ||
| - | // Vähendab kiirust | + | speed--; |
| - | if(speed > 0x00) | + | } |
| - | { | + | //Nupp S3 seab kiiruse 50%-le |
| - | speed--; | + | |
| - | } | + | { |
| - | pin_clear(led_yellow); | + | speed=127; |
| } | } | ||
| - | // Mootoritele | + | // Mootorile |
| dcmotor_drive_pwm(0, | dcmotor_drive_pwm(0, | ||
| - | |||
| - | // | ||
| - | |||
| - | sw_delay_ms(2); | ||
| - | |||
| - | // LEDide kustutamine | ||
| - | pin_set(led_green); | ||
| - | pin_set(led_yellow); | ||
| - | |||
| } | } | ||
| } | } | ||
| + | </ | ||
| - | </ | + | Antud koodiga genereeritakse PWM signaal |
| - | Antud koodiga genereeritakse PWM signaal | + | |
| + | {{: | ||