Mündəricat:

Çəkmə qolu: 5 addım
Çəkmə qolu: 5 addım

Video: Çəkmə qolu: 5 addım

Video: Çəkmə qolu: 5 addım
Video: orik qaqa cellnen gorusdü 2024, Noyabr
Anonim
Çəkmə Kolu
Çəkmə Kolu

Salam! Bir məktəb layihəsi üçün bir joystick və iki servo ilə idarə olunan Bob Ross rəsm qolu düzəltdim. Əlbəttə ki, qolu istədiyin kimi bəzəyə bilərsən, amma mən ondan Bob Ross düzəltməyi seçdim. Bu layihədə riyaziyyat kitabxanasından istifadə edirəm, buna görə də x və y mövqeyini daxil etdikdə, riyaziyyat kitabxanası bu x, y mövqeyinə çatmaq üçün hansı bucaqda olması lazım olduğunu hesablayır. Bu təlimatda bunu necə etdiyimi izah edəcəyəm.

Addım 1: Təchizat

İlk addım, bu layihə üçün lazım olan bütün təchizatların olduğundan əmin olmaqdır. İstifadə etdiyim şeylər bunlardır:

- Arduino uno

- 2 dəfə 180 dərəcə Mikro Servo

- 1x Joystick

- Çörək lövhəsi

- Tellər

- Qadın - kişi telləri

- Baxışlar

- 13 sm taxta çubuqlar

- Karton

- Ani yapışqan

- Clothespin

Addım 2: Kolun qurulması

Qol qurmaq
Qol qurmaq

İndi qolu quracağıq. Güclü çubuqların, tercihen güclü və yüngül olduğundan əmin olun. Torpağa yapışdırdığınız bir çubuq lazımdır. Sonra ilk servonun üst hissəsini ən sonunda əlavə edin və tireraps ilə möhkəm bağlayın. Sonra ona bir pervane bağlayın və sabitləyin. İndi növbəti çubuğunuzu pervaneye yapışdırın. Növbəti servo və növbəti çubuqla eyni şeyi etməlisiniz. İkinci servonun ikinci çubuğun üstünə qoyulmasını seçə bilərsiniz və ya altına yapışdıra bilərsiniz. Dibinə yapışdırmaq qolu daha sabit edir. İndi paltar sancağınızı üçüncü çubuğun sonuna bağlaya bilərsiniz, çubuğun üstünə və ya yanına qoya bilərsiniz. Əlimdəki qələmi asanlıqla dəyişə biləcəyim üçün paltar çubuğu seçirəm və olduqca möhkəmdir. Hər şeyi tyraps ilə bağlayın və hər şeyin sabit olduğundan əmin olun, bu çox vacibdir.

Addım 3: Telləri bağlayın

Telləri birləşdirmək
Telləri birləşdirmək
Telləri birləşdirmək
Telləri birləşdirmək

Üçüncü addım servoları bağlamaqdır. Hələlik bir Arduino uno və terminal bloklarından istifadə edirik. Servo üç rəngli teldən ibarətdir: sarı, qırmızı və qəhvəyi.

Terminal blokunu arduinoya bağlamaq üçün bir teli terminal blokundakı bir çuxura, digər ucunu isə GND -yə qoyduq. Eyni şeyi ikinci bir tellə edirik, ancaq yanındakı deliklərdən birinə qoyuruq və ucunu arduino 5V -ə qoyuruq.

Servo 1 tellərini necə bağlamaq olar:

Sarı -> Rəqəmsal 7

Qırmızı -> 5v/+ terminal blokunda

Qəhvəyi -> GND/ - terminal blokunda

Servo 2 tellərini necə bağlamaq olar:

Sarı -> Rəqəmsal 4

Qırmızı -> 5v/+ terminal blokunda

Qəhvəyi -> GND/ - terminal blokunda

İndi joysticki bağlayacağıq. İşdə necə edildiyi budur:

GND -> arduinoda GND

+ 5V -> 5v/+ terminal blokunda

URX -> A0

URY -> A1

Addım 4: Kodlaşdırma

İndi qolun özünü hazırlamağı bitirdik, kodlamağa başlaya bilərik. Əvvəlcə math.h və Servo.h kitabxanalarını açın və ya quraşdırın.

Qolun uzunluğunu təyin etməlisiniz. Son iki çubuğu ölçün və eyni uzunluqda olduğundan əmin olun. İndi qolu aşağıdakı kodla təyin edə bilərsiniz:

// şamandıra dərəcəsi radTodegree = 180 /PI;

#define ARMLENGTH 130 // qolun uzunluğu mm

Sonra servonun, joystickin və qolun hərəkət sürətini təyin edirsiniz. Əvvəlcə qolunuzu sındırmadan aça biləcəyiniz üçün hərəkət sürətini əvvəlcə aşağı saxlayın.

Bundan sonra boş bir döngə yaratdım. Dəyəri qolun uzunluğuna dəyişdim, mənim vəziyyətimdə hər bir hissə 130 mm -dir. Bu yolla, servoların aldığı girişi oxumaq daha asandır.

// leest x en y as van joystickvoid loop () {joyVa1 = analogRead (joyX); joyVa1 = xəritə (joyVa1, 0, 1023, -sərhədlər, sərhədlər); // 0-1023 nömrəli yük maşını verilişi -130 -130 if (abs (joyVa1)> 30) {

Qolun istədiyimdən daha çox getmədiyinə əmin olmaq üçün bir məhdudiyyət əlavə etdim. Bağlar qolun uzunluğu ilə eynidir.

posX = məhdudlaşdırmaq (posX, -bağlar, sərhədlər);

Giriş mövqeyini serial monitoruna göndərdim. Bu, qolun necə hərəkət etdiyini anlamağa kömək edir və ortaya çıxdıqda problemlərin həllini tapmağa kömək edir.

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

}

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

Bundan sonra, servonun açılarını hesablamaq üçün bir kod var. Kodun bu hissəsi tomasdecamino tərəfindən hazırlanmışdır. Zəhmət olmasa hər şeyi görmək üçün tam kodu yükləyin. İndi qolu hərəkət etdirmək üçün joystickdən istifadə edə bilərsiniz! MoveSpeed və məhdudlaşdırmaq kimi istədiyiniz şeyi düzəldə bilərsiniz.

Addım 5: qolu bəzəmək

Qol bəzəmək
Qol bəzəmək
Qol bəzəmək
Qol bəzəmək
Qol bəzəmək
Qol bəzəmək
Qol bəzəmək
Qol bəzəmək

İndi qolunuza bədən vermək vaxtıdır! Əsasən istədiyiniz hər şeyi edə bilərsiniz. Bundan Bob Ross yaratmağa qərar verdim. Əllərindən biri boya palitrası, digəri isə çəkmə qoludur. Əvvəlcə hər şeyin uyğun olacağından əmin olmaq üçün normal 80 qramlıq kağızdan bir prototip hazırladım. Bədəni, boyunu, qolunu və başını qalın kartondan düzəldib dərhal yapışqanla yapışdırdım. Sonra yunu qıvrılmış saçlara bənzətmək üçün lağ etdim və yerinə yapışdırdım. Sonra layihəmi ələ keçirmək üçün bir bluza kəsdim və mismarladım, qollarını açdım və içinə cırtdan qoydum ki, altında bir şey düzəltmək məcburiyyətindəsinizsə bədəni asanlıqla geyinib soyunum. Nəhayət, bütün layihəni sabitləşdirmədən tellərin keçə bilməsi üçün bədənə bir deşik açdım.

İndi layihənizin əlinə bir qələm tutub ona bir kağız parçası verə və çəkə bilərsiniz!

Tövsiyə: