Mündəricat:

Pişik top atıcı: 9 addım (şəkillərlə)
Pişik top atıcı: 9 addım (şəkillərlə)

Video: Pişik top atıcı: 9 addım (şəkillərlə)

Video: Pişik top atıcı: 9 addım (şəkillərlə)
Video: Bakı metrosunda gənclərin elədiyi zarafat 2024, Noyabr
Anonim
Pişik Top Atıcı
Pişik Top Atıcı

Lazım olan materiallar

1 x RFID Sensor/ pult

1 x Arduino uno

2 x DC mühərrikləri

1 x 180 servo

1 x 360 servo

çoxlu tellər

Layihə qurmaq üçün qutu/konteyner

topu ötürmək üçün boru

Addım 1: Motorları və Uzaqdan Gücləndirmək üçün Dövrə Yarat

Motorları və Uzaqdan Gücləndirmək üçün Dövrə Yarat
Motorları və Uzaqdan Gücləndirmək üçün Dövrə Yarat
Motorları və Uzaqdan Gücləndirmək üçün Dövrə Yarat
Motorları və Uzaqdan Gücləndirmək üçün Dövrə Yarat

Dövrün qurulması

yuxarıdakı dövrə qurun və eyni kodu istifadə etmək üçün eyni pinlərə qoşulun

Addım 2: İki motor üçün baza yaradın

İki motor üçün baza yaradın
İki motor üçün baza yaradın

Kenarlar üçün 4, 5 düym x 2 düymlük düzbucaqlı kəsmək üçün köpük taxtasından istifadə etməlisiniz. sonra üst və alt olaraq istifadə etmək üçün 2, 5 x 5 düymlük kvadratları kəsin. Bundan sonra mühərriklərin oturacağı yerə ehtiyac olacaq, beləliklə topun vurulmasına yer vermək üçün diametri 23 mm və 39 mm olan 2 çuxur kəsin. sonra motorlardan gələn tellərin dövrəyə qoşulması üçün alt meydanda bir nöqtə və ya bir neçə deşik düzəldin.

Addım 3: Servo motorların altına əlavə edin

Mühərriklərin altına Servo əlavə edin
Mühərriklərin altına Servo əlavə edin

180 və ya 360 servonu kvadratın altına (ortada) diqqətlə yapışdırın. topu fərqli istiqamətlərə atmaq üçün uzaqdan idarəetmə vasitəsi ilə və ya təsadüfi olaraq istiqamətini əl ilə dəyişə biləcəyimiz üçün bunu edirik

Addım 4: Böyük konteynerdə deliklər kəsin

Böyük konteynerdə deliklər kəsin
Böyük konteynerdə deliklər kəsin
Böyük konteynerdə deliklər kəsin
Böyük konteynerdə deliklər kəsin
Böyük konteynerdə deliklər kəsin
Böyük konteynerdə deliklər kəsin

böyük konteyneri götürün və öndə və arxada bir çuxur kəsin, dəqiq olması lazım deyil, ancaq ön tərəfdə, servonun hərəkət etməsi ilə topun müxtəlif istiqamətlərdə vurulmasına imkan vermək üçün şəkildəki kimi olduqca böyük olmalıyıq. və konteynerin arxası tellərin çıxmasını təmin etmək və dövrə hissələrini yerləşdirmək və ya lazım olduqda dövrəni dəyişdirmək üçün daha kiçik bir çuxur kəsdi. qabaqda servo qablardan birinin qapağına yapışdırın və sonra dəstək üçün konteynerin əsasına yapışdırın, istinad üçün ikinci şəkilə baxın

Addım 5: Boru

Boru
Boru

1 fut uzunluğunda, tercihen topun yuvarlanmasını təmin etmək üçün əyri olan bir pvc boru düzəldin və ya alın, topun içəri girməsi üçün 1,5 düym kəsin.

Addım 6: Çömçə

Hopper
Hopper
Hopper
Hopper
Hopper
Hopper

4 bərabər trapezoid kəsin, seçim edə bilərsiniz, ancaq mənim boyum 5 hündür idi və boruya taxıldıqda bir az əyilmişdi, sonra altdakı köpük lövhəsi parçası stolüstü tennis topunun keçəcəyi qədər böyük bir çuxur kəsdi. sonra bütün topların oturması üçün bir atlama meydana gətirərək onları yapışdırın. sonra bunu çuxurun kəsildiyi borunun üstünə yapışdıracağıq.

Addım 7: Tankı, Boru və Motorları yerləşdirin

Çömçə, Boru və Motorların Yerləşdirilməsi
Çömçə, Boru və Motorların Yerləşdirilməsi

Borunu konteynerin içərisinə topların çıxması və təkərlər tərəfindən itələməsi üçün mühərriklər üçün hazırlanmış ağ qutunun kənarına yerləşdirmək istəyəcəksiniz. İndi borunun üstünə hoppana yapışdıra bilərsiniz

Addım 8: Son Servo

Son Servo
Son Servo
Son Servo
Son Servo

bu servo hoppanın dibinə yapışdırılır

Addım 9: İş hissələrini sınamaq üçün kod əlavə edin

İş hissələrini sınamaq üçün kod əlavə edin
İş hissələrini sınamaq üçün kod əlavə edin

// Pişik düzəldici

// kod boyunca əmrlərdən istifadə etmək üçün kitabxanaları idxal edin, məsələn, pinləri servo elan etmək və IR uzaqdan idarəetmə qurmaq #include #include

// DC mühərriklərinin sürətini təyin etmək üçün dəyişənlərin qurulması int onspeed = 255; int aşağı sürət = 100; int sürət = 0;

// infrared alıcı pininin və iki motor sancağının quraşdırılması int IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// dəyişənlərin servo olaraq elan edilməsi, proqramın xüsusi əmrlərdən istifadə etmək üçün servo olduğunu bilməsi üçün Servo flap; Servo açısı;

// uzaqdan girişləri almaq üçün IR pininin elan edilməsi // nəticələri uzaq IRrecv irrecv (IR_Recv) -dən alır; decode_results nəticələri;

boş quraşdırma () {

Serial.begin (9600); // seriyalı ünsiyyətə başlayır irrecv.enableIRIn (); // Alıcı işə salır

flap.attach (7); // servo qanadını pin 7 -yə bağlayır ki, daha sonra proqram bucağında istifadə edə bilək.attach (4); // servo bucağını pin 4 -ə bağlayır ki, sonra pinMode (motor1, ÇIXIŞ) proqramında istifadə edə bilək; // motor1 -i çıxışa təyin edin ki, düyməni basıldıqda sürətləri daxil edək pinMode (motor2, Çıxış); // motor2 -ni çıxışa təyin edin ki, düyməni basıldıqda sürətləri daxil edək

}

boşluq döngəsi () {

flap.write (0); // heç bir topun içəri keçməməsi üçün topu qidalandırıcıya nəzarət edən servonu 0 dərəcəyə qoyun

if (irrecv.decode (& results)) {long int decCode = results.value; Serial.println (decCode); irrecv. resume ();

keçid (results.value) {

halda 0xFFA25D: // güc analogWrite (motor1, sürət); analogWrite (motor2, sürət); gecikmə (7000); flap.write (90); gecikmə (500); flap.write (0); gecikmə (2000); analogWrite (motor1, sürətli); analogWrite (motor2, sürətli); fasilə;

halda 0xFFE01F: // EQ

analogWrite (motor1, sürət); analogWrite (motor2, aşağı sürət); gecikmə (7000); flap.write (90); gecikmə (500); flap.write (0); gecikmə (2000); analogWrite (motor1, sürətli); analogWrite (motor2, sürətli);

fasilə;

halda 0xFF629D: // rejimi

analogWrite (motor1, aşağı sürət); analogWrite (motor2, sürət); gecikmə (7000); flap.write (90); gecikmə (500); flap.write (0); gecikmə (2000); analogWrite (motor1, sürətli); analogWrite (motor2, sürətli);

fasilə;

halda 0xFF30CF: // 1, 90 dərəcə tənzimlənir

bucaq yazın (30);

fasilə;

halda 0xFF18E7: // 2, 0 dərəcə təyin

bucaq yazmaq (90);

fasilə;

halda 0xFF7A85: // 3, 180 dərəcə ayarlanır

bucaq yazmaq (150);

fasilə;

} } }

Tövsiyə: