Мазмуну:

Баш айлануучу ийнелик: 11 кадам
Баш айлануучу ийнелик: 11 кадам

Video: Баш айлануучу ийнелик: 11 кадам

Video: Баш айлануучу ийнелик: 11 кадам
Video: Бит кайдан пайда болот? - BBC Kyrgyz 2024, Ноябрь
Anonim
Баш айланткан ийнелик
Баш айланткан ийнелик

Мен ийнеликти жасадым. Ийнелик башын жаңсоо сенсору жана серво мотору менен айлантат.

компоненттери

  • Arduino UNO
  • Seeed Grove - Жест
  • FS90R Micro Үзгүлтүксүз айлануу сервери

1 -кадам: Конституция

Конституция
Конституция

Бармактын кыймылын сенсор менен аныктоо жана Arduino менен 360 ° тынымсыз айлануу сервосунун айлануу багытын көзөмөлдөө.

2 -кадам: Ийнеликти түзүңүз - Баш 1 -

Ийнеликти түзүңүз - Баш 1
Ийнеликти түзүңүз - Баш 1

Башы 12 мм узундуктагы M8 бурама менен жасалган. Серво менен башты айландырууда таякты белгиленген бурчта токтотуу үчүн зымды тиешелүү узундукка кесип, бурамага кошуп койгула.

3 -кадам: Ийнеликти түзүңүз - Баш 2 -

Ийнеликти түзүңүз - Баш 2
Ийнеликти түзүңүз - Баш 2

Көздөр жана ооз жаркыраган зергер мөөрү менен жасалган. Мен оозума калем менен жазам.

4 -кадам: Ийнеликти түзүңүз - 3 -баш -

Ийнеликти түзүңүз - Баш 3
Ийнеликти түзүңүз - Баш 3

Баш менен көкүрөктүн ортосундагы байланыш (серво) гайкадан турат. Сервого бекитилген мамыктарды жана жаңгактарды заматта жабышчаак кылып бекиткиле.

5 -кадам: Ийнеликти түзүңүз - Дене 1 -

Ийнеликти түзүңүз - Дене 1
Ийнеликти түзүңүз - Дене 1

Ийнеликтин көкүрөгүнө сервомотор жасаңыз. 60 мм узундуктагы M6 бурамасы карын катары жабыштырылган.

6 -кадам: Ийнеликти түзүңүз - Дене 2 -

Ийнеликти түзүңүз - Дене 2
Ийнеликти түзүңүз - Дене 2

Мурунураак жасалган гайкаларды сервого бурап, бляшкалардын жүнүн зымдын буту менен байлаңыз.

7 -кадам: Ийнеликти түзүңүз - Дене 3 -

Ийнеликти түзүңүз - Дене 3
Ийнеликти түзүңүз - Дене 3

Башты алмаштыруу тилкесине илинип калышы үчүн, сервого коюу зым тагыңыз. Мен ичке зымдын бутун ушул калың зымга (дат баспас болоттон жасалган) ширетем.

8 -кадам: Ийнеликти түзүңүз - Дене 4 -

Ийнеликти түзүңүз - Дене 4
Ийнеликти түзүңүз - Дене 4

Башты гайкага сайыңыз жана ийнелик аяктады. Сервону жандырыңыз жана аны буруңуз.

9-кадам: 360 градустук үзгүлтүксүз айлануу сервиси

Бул servo башында Arduino IDEге кирген Servo китепканасы менен иштейт, бирок кадимки servo мотордон бир аз айырмаланат.

  • 90 градус кирүү менен Servo stop
  • Сааттын жебеси боюнча 0ден 89 градуска чейин буруңуз. Айлануу ылдамдыгы 90 градустан алда канча жогорулайт.
  • 91ден 180 градуска чейин киргизүү менен сааттын жебесине каршы буруңуз. Айлануу ылдамдыгы 90 градустан алда канча жогорулайт.

10 -кадам: Arduino коду

Серво жана жаңсоо сенсорун Arduino UNOго туташтырыңыз.

Жаңсоо сенсорунун китепканасы төмөнкүлөрдү колдонот.https://github.com/Seed-Studio/Gesture_PAJ7620

Мен paj7620_9gestures.ino кодунун үлгүсүн карадым.

Бул жаңсоо манжанын саат жебеси менен сааттын жебесине каршы багытын тааныды.

Ардуинонун санарип 8 пини GNDге туташкан, андыктан серво сааттын жебесине каршы акырын айланат, ошондо баш винти гайкага айланат.

Arduino санарип 8 пин ачык ачык кадимки иштөөнү коёт, жана жаңсоо сенсорун аныктоо башталат. Манжа кыймылынын айлануусун аныктайт жана сервого ылайык кыймылдайт.

#include #include "paj7620.h" #include Servo myservo; // сервону көзөмөлдөө үчүн servo объектисин түзүү

void setup () {uint8_t error = 0; Serial.begin (9600); myservo.attach (A0); // pinMode (8, INPUT_PULLUP) servo объектисине пин 9дагы сервону тиркейт; ката = paj7620Init (); // баштоо Paj7620 регистрлери if (ката) {Serial.print ("INIT ERROR, CODE:"); Serial.println (ката); } else {Serial.println ("INIT OK"); } Serial.println ("Жандооңузду киргизиңиз: / n"); }

void loop () {uint8_t data = 0, data1 = 0, ката; if (digitalRead (8) == LOW) {myservo.write (90 + 15); } else {error = paj7620ReadReg (0x43, 1, & data); // Жаңсоо натыйжасы үчүн Bank_0_Reg_0x43/0x44 дегенди окуңуз. if (! error) {switch (data) {case GES_CLOCKWISE_FLAG: Serial.println ("Сааттын жебеси боюнча"); myservo.write (90 - 20); кечигүү (800); тыныгуу; case GES_COUNT_CLOCKWISE_FLAG: Serial.println ("сааттын жебесине каршы"); myservo.write (90 + 20); кечигүү (800); тыныгуу; демейки: myservo.write (90); тыныгуу; }}}}

11 -кадам: операция

Операция
Операция

Менде башым ийилген ийнелик бар эле!

Сунушталууда: