Управление на 2 сервомотора с помощта на аналогов джойстик .: 5 стъпки (със снимки)
Управление на 2 сервомотора с помощта на аналогов джойстик .: 5 стъпки (със снимки)
Anonim
Image
Image
Събиране на части
Събиране на части

Здравейте момчета, това е първият ми инструктаж и в този пост споделям как да използвам аналогов джойстик за управление на сервомоторите с помощта на Arduino UNO. Ще се опитам да го обясня възможно най -просто, надявам се да ви хареса.

Стъпка 1: Събиране на части

Събиране на части
Събиране на части
Събиране на части
Събиране на части
  1. 1 x Arduino UNO. (Amazon САЩ / Amazon ЕС / Banggood)
  2. 2 x серво. (Amazon САЩ / Amazon ЕС / Banggood)
  3. 1 x аналогов джойстик. (Amazon САЩ / Amazon ЕС / Banggood)
  4. 1 x Платка. (Amazon САЩ / Amazon ЕС / Banggood)

Можете да използвате всеки аналогов джойстик, който се предлага на пазара, който вече има етикети на щифтовете, така че е лесно да ги използвате. Използвах спасена част от стар PS2 контролер, който има 2 джойстика.

Стъпка 2: Подготовка на аналоговия джойстик

Подготовка на аналоговия джойстик
Подготовка на аналоговия джойстик
Подготовка на аналоговия джойстик
Подготовка на аналоговия джойстик
Подготовка на аналоговия джойстик
Подготовка на аналоговия джойстик

Можете да използвате този, който се предлага на пазара, който има етикетирани щифтове и е лесен за използване, или можете да спестите няколко долара и да спасите стари от контролери за игри, които имат 2 вътре в тях. Споделих снимките на този, който имам и също така съм обозначил щифтовете, които разбрах, като върнах следата от мед на печатната платка, тук се използват по два гювеча във всеки джойстик, един за ос x, а друг за ос y, използваме средните клеми на тези саксии за управление на сервомоторите. другите два щифта са захранващи и заземяващи щифтове, където прилагаме 5 волта и заземяване. щифтовете, които не са обозначени в ъгъла, са щифтовете за бутони, които не са необходими на този проект. по принцип всички пръчки имат една и съща конфигурация. Сега, след като сте измислили щифтове от вашите пръчки можем да преминем към следващата стъпка, която е свързването на веригата.

Стъпка 3: Серво

Сервомоторите
Сервомоторите
Сервомоторите
Сервомоторите

Сервомоторите са двигатели с редуктор, които са бавни, но имат висок въртящ момент и се въртят само до 180 °. Нормалното серво има 3 пина: 1. Жълто/оранжево, което е сигнален щифт и се свързва с PWM щифтове на Arduino. Червено, което е захранващият щифт, където предоставяме +5v, който е свързан към +5v на Arduino. Кафяв/черен, който е заземен щифт и аз бях свързан към GND щифт на Arduino или -ve терминал на батерията. В този проект използваме 2 Servos, един свързан към пин №. 3 и други към щифт №. 5. Използвах микро 9g серво, но всеки ще работи.

Стъпка 4: Осъществяване на връзки

Осъществяване на връзки
Осъществяване на връзки
Осъществяване на връзки
Осъществяване на връзки

Следвайте електрическата схема, за да направите свързването на сервомоторите. Червеният проводник преминава към 5v, а кафявият проводник отива към GND сигнален щифт на едно серво отива към 3, а другото серво отива към 5 от Arduino. След това свържете аналоговия джойстик, той има + и - клеми, които отиват съответно на 5v и GND. пинът на оста X отива към A0 или Analog 0 пина на Arduino и оста Y отива към A1 или Analog 1 pin. След това ще качим кода.

Стъпка 5: Писане и качване на код

Код за писане и качване
Код за писане и качване

Кодът е прост и подобен на примера на Knob за серво библиотеката в Arduino IDE.#IncludeServo servo1; Servo servo2; int xaxis = 0; int yaxis = 1; int val; void setup () {servo1.attach (3); servo2.attach (5);} void loop () {val = analogRead (xaxis); val = map (val, 0, 1023, 0, 180); servo1.write (val); val = analogRead (yaxis); val = map (VAL, 0, 1023, 0, 180); сървърите, използващи джойстика. другият джойстик може да контролира още 2 серво. просто трябва да свържете сервомоторите към PWM щифтове на Arduino и да промените кода. Кодът е лесен за промяна и всеки с основни познания за Arduino може да го направи. Надяваме се, че проектът ви харесва и ако имате въпроси, не се колебайте да попитате. Благодаря Вие.

Препоръчано: