This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| et:arduino:motors:project2 [2017/05/11 07:59] – Somepub | et:arduino:motors:project2 [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ~~PB~~ | + | < |
| ====== Projekt 6 Servomootor UH anduriga | ====== Projekt 6 Servomootor UH anduriga | ||
| - | Selles projektis tuleb ühendada Arduino plaadiga potentsiomeeter ja servomootor ning teises näites lisaks | + | Selles projektis tuleb ühendada Arduino plaadiga potentsiomeeter ja servomootor ning teises näites lisaks |
| * Servomootor - D3 | * Servomootor - D3 | ||
| * Potentsiomeeter - A1 | * Potentsiomeeter - A1 | ||
| - | * Ultraheliandur | + | * Ultraheli kaugusandur |
| {{: | {{: | ||
| Line 12: | Line 12: | ||
| ===== Näide #6.1 Servomootor ja PWM signaal ===== | ===== Näide #6.1 Servomootor ja PWM signaal ===== | ||
| - | Antud näiteprogrammis kasutame mikro-servomootorit, | + | Antud näiteprogrammis kasutame mikro servomootorit, |
| Programmi töö kujutab endast servomootori juhtimiseks vajalike seadistuste tegemist ja seejärel potentsiomeetri asendi järgi selle hoova liigutamist. Arduino analoogsisendi väärtused on vahemikus 0-1023 aga servo juhtimise funktsioon nõuab väärtusi vahemikus 0-180. Üks võimalus on analoogsisendi tulemus jagada läbi sobiva arvuga, et saada maksimaalne tulemus 180. Praktilisem lahendus on kasutada Arduino //map// funktsiooni: | Programmi töö kujutab endast servomootori juhtimiseks vajalike seadistuste tegemist ja seejärel potentsiomeetri asendi järgi selle hoova liigutamist. Arduino analoogsisendi väärtused on vahemikus 0-1023 aga servo juhtimise funktsioon nõuab väärtusi vahemikus 0-180. Üks võimalus on analoogsisendi tulemus jagada läbi sobiva arvuga, et saada maksimaalne tulemus 180. Praktilisem lahendus on kasutada Arduino //map// funktsiooni: | ||
| Line 38: | Line 38: | ||
| void setup() | void setup() | ||
| { | { | ||
| - | // Servo objekti sidumine kindla viiguga | + | // Servo objekti sidumine kindla |
| mootor.attach(servo); | mootor.attach(servo); | ||
| } | } | ||
| Line 54: | Line 54: | ||
| </ | </ | ||
| - | ~~PB~~ | + | < |
| ===== Näide #6.2 Servomootor ja kaugusandur ===== | ===== Näide #6.2 Servomootor ja kaugusandur ===== | ||
| Järgnevas näites on pandud kokku kaugusanduri mõõtmise ja servo liigutamise funktsionaalsus. Tulemuseks on algeline radar, mis tuvastab iga 10 kraadise liikumise järel ees oleva objekti kauguse. Mõõtetulemused edastatakse jadapordi monitorile.\\ | Järgnevas näites on pandud kokku kaugusanduri mõõtmise ja servo liigutamise funktsionaalsus. Tulemuseks on algeline radar, mis tuvastab iga 10 kraadise liikumise järel ees oleva objekti kauguse. Mõõtetulemused edastatakse jadapordi monitorile.\\ | ||
| Line 71: | Line 71: | ||
| // Servo ja ultrahelianduri ühendusviikude määramine | // Servo ja ultrahelianduri ühendusviikude määramine | ||
| - | #define MOOTOR 3 | + | #define MOOTOR 3 |
| #define TRIG A3 | #define TRIG A3 | ||
| #define ECHO A4 | #define ECHO A4 | ||
| Line 78: | Line 78: | ||
| Servo sensM; | Servo sensM; | ||
| - | // Anduri objekti tekitamine nimega sonar | + | // Anduri objekti tekitamine nimega sonar |
| - | NewPing sonar(TRIG, ECHO, 200); | + | NewPing sonar(TRIG, ECHO, 200); |
| - | void setup() | + | void setup() |
| { | { | ||
| // Servo objekti ja ühendusviigu sidumine | // Servo objekti ja ühendusviigu sidumine | ||