Мазмұны:

Сурет салу: 5 қадам
Сурет салу: 5 қадам
Anonim
Сурет салу қолы
Сурет салу қолы

Сәлеметсіз бе! Мектептегі жоба үшін мен джойстик пен екі серво басқарылатын Боб Росстың сурет салатын қолын жасадым. Әрине, сіз қолды қалағаныңызша безендіре аласыз, бірақ мен одан Боб Росс жасауды шештім. Бұл жобада мен математикалық кітапхананы қолданамын, сондықтан біз x және y позицияларын енгізгенде, математикалық кітапхана x, y позициясына жету үшін олардың қандай бұрышта болуы керектігін есептейді. Бұл нұсқаулықта мен мұны қалай істегенімді түсіндіремін.

1 -қадам: Жабдықтар

Бірінші қадам - бұл жобаға қажетті құралдардың бар екеніне көз жеткізу. Бұл мен қолданған заттар:

- Ардуино

- 2 рет 180 градусқа микросерво

- 1 джойстик

- Нан тақтасы

- Сымдар

- Әйел - ер сымдар

- Көріністер

- 13 см ағаш таяқшалар

- Картон

- Жылдам желім

- Киім ілмегі

2 -қадам: қолды салу

Қол жасау
Қол жасау

Біз енді қолды саламыз. Сізде күшті таяқшалар бар екеніне көз жеткізіңіз, жақсырақ күшті және жеңіл. Сізге бір таяқша қажет, ол жерге бекітіледі. Содан кейін оның үстіне бірінші серво қосыңыз, соңында оны шпагатпен мықтап бекітіңіз. Содан кейін оған бұранданы бекітіп, бекітіңіз. Енді сіз келесі таяқшаны пропеллерге бекітіңіз. Келесі серво мен келесі таяқшамен де дәл солай істеу керек. Сіз екінші сервоны екінші таяқшаның үстіне қоюды таңдай аласыз немесе оны түбіне бекітесіз. Оны түбіне бекіту қолды орнықты етеді. Енді сіз ілгекті үшінші таяқшаның соңына бекітіп, таяқшаның үстіне немесе оның жанына қоюға болады. Мен қолыма қарындашты оңай ауыстыру үшін киім ілгішін таңдаймын, ол өте берік. Барлығын тыраппен бекітіңіз және бәрі орнықты екеніне көз жеткізіңіз, бұл өте маңызды.

3 -қадам: сымдарды қосу

Сымдарды қосу
Сымдарды қосу
Сымдарды қосу
Сымдарды қосу

Үшінші қадам - серверлерді қосу. Әзірге біз Arduino uno мен терминалды блоктарды қолданамыз. Серво үш түсті сымнан тұрады: сары, қызыл және қоңыр.

Терминал блогын arduino -ға қосу үшін біз бір сымды терминал блогындағы тесікке, ал екінші ұшын GND -ге саламыз. Біз екінші сыммен де солай жасаймыз, бірақ біз оны жанындағы тесіктердің біріне салып, соңын ардуиноның 5В кернеуіне саламыз.

Серво 1 сымдарын қалай бекіту керек:

Сары -> Сандық 7

Қызыл -> 5в/+ терминал блогында

Қоңыр -> GND/ - терминал блогында

Серво 2 сымдарын қалай бекіту керек:

Сары -> Сандық 4

Қызыл -> 5в/+ терминал блогында

Қоңыр -> GND/ - терминал блогында

Енді біз джойстикті қосамыз. Міне, бұл қалай жүзеге асады:

GND -> arduino ішіндегі GND

+ 5В -> 5в/+ терминал блогында

URX -> A0

URY -> A1

4 -қадам: кодтау

Енді біз қолды жасауды аяқтадық, біз кодтауды бастай аламыз. Ең алдымен, math.h және Servo.h кітапханаларын ашыңыз немесе орнатыңыз.

Қолдың ұзындығын анықтау керек. Соңғы екі таяқшаны өлшеп, олардың ұзындығы бірдей екеніне көз жеткізіңіз. Енді сіз қолды келесі кодпен анықтай аласыз:

// radTodegree = 180 /PI өзгермелі бағалар;

#define ARMLENGTH 130 // қолдың ұзындығы мм

Содан кейін сіз серво, джойстик пен қозғалыс жылдамдығын анықтайсыз. Қозғалыс жылдамдығын алдымен төмен ұстаңыз, осылайша оны қолыңызды сындырмай -ақ бұруға болады.

Осыдан кейін мен бос цикл жасадым. Мен мәнді қолдың ұзындығына өзгерттім, менің жағдайда әр бөлігі 130 мм. Осылайша, серво қабылдайтын кірісті оқу оңайырақ болады.

// leest x en y as van van joystickvoid loop () {joyVa1 = analogRead (joyX); joyVa1 = карта (joyVa1, 0, 1023, -байланысты, шектер); // vertaalt de val van 0-1023 nar -130 -130 if (abs (joyVa1)> 30) {

Мен қолым қалағаннан әрі кетпеуін қамтамасыз ету үшін шектеу қойдым. Байланыстар қолдың ұзындығымен бірдей.

posX = шектеу (posX, -байланыстар, шектер);

Мен кіріс орнын сериялық мониторға жібердім. Бұл қолдың қалай әрекет ететінін түсінуге көмектеседі және егер олар туындаса, оларды шешуге көмектеседі.

// Print postitievoid PrintPosition () {if (Serial.available ()> 0) {posX = Serial.parseInt (); posY = Serial.parseInt ();

}

// Serial.print (posX); Serial.print («,»); Serial.println (posY); }

Осыдан кейін сервистің бұрыштарын есептейтін код бар. Кодтың бұл бөлігін tomasdecamino жасаған. Барлығын көру үшін толық кодты жүктеңіз. Енді қолды жылжыту үшін джойстикті қолдануға болады! MoveSpeed және constraine сияқты қалаған нәрселерді өңдеуге болады.

5 -қадам: қолды безендіру

Қолды безендіру
Қолды безендіру
Қолды безендіру
Қолды безендіру
Қолды безендіру
Қолды безендіру
Қолды безендіру
Қолды безендіру

Енді қолыңызға дене беру уақыты келді! Сіз негізінен қалаған нәрсені жасай аласыз. Мен одан Боб Росс жасауға шешім қабылдадым. Оның бір қолында бояу палитрасы, екіншісінде сурет салатын білек. Алдымен бәрі сәйкес келетініне көз жеткізу үшін қалыпты 80 грамм қағаздан прототип жасадым. Мен денені, мойынды, қолды және басты қалың картоннан жасап, оны тез желіммен жапсырдым. Содан кейін мен жүнді қылшық шашқа ұқсайтындай етіп мазақтап, орнына жапсырдым. Содан кейін мен блузканы кесіп, шегелеп алдым, мен жеңді ашып, оған велкро кигіздім, осылайша астыңда бірдеңені өңдеу қажет болса, денені оңай киіндіріп, шешіндіре аламын. Ақырында, мен сымдардың бүкіл жобаның тұрақтылығын бұзбай өтуі үшін денеге тесік жасадым.

Енді сіз қарындашты жобаңыздың қолына салып, оған қағаз бере аласыз және сурет сала аласыз!

Ұсынылған: