Isi kandungan:

Cat Ball Shooter: 9 Langkah (dengan Gambar)
Cat Ball Shooter: 9 Langkah (dengan Gambar)

Video: Cat Ball Shooter: 9 Langkah (dengan Gambar)

Video: Cat Ball Shooter: 9 Langkah (dengan Gambar)
Video: Melhor Que O Cheto 8 Ball Pool???? Será??? Esse Cara é Um Gênio rsrsrs 2024, November
Anonim
Penembak Bola Kucing
Penembak Bola Kucing

Bahan yang diperlukan

1 x Sensor RFID / jauh

1 x Arduino uno

2 x motor DC

1 x 180 servo

1 x 360 servo

pelbagai wayar

Kotak / bekas untuk membina projek

paip untuk mengumpan bola melalui

Langkah 1: Buat Litar untuk Menghidupkan Motor dan Jauh

Buat Litar untuk Menghidupkan Motor dan Jauh
Buat Litar untuk Menghidupkan Motor dan Jauh
Buat Litar untuk Menghidupkan Motor dan Jauh
Buat Litar untuk Menghidupkan Motor dan Jauh

Membina litar

bina litar di atas dan sambungkan ke pin yang sama untuk menggunakan kod yang sama tepat

Langkah 2: Buat Pangkalan untuk Dua Motor

Buat Pangkalan untuk Dua Motor
Buat Pangkalan untuk Dua Motor

anda perlu menggunakan papan busa untuk memotong segi empat tepat 4, 5 inci dengan 2 inci untuk sisi. kemudian potong kotak 2, 5 x 5 inci untuk digunakan sebagai bahagian atas dan bawah. seterusnya motor akan memerlukan tempat duduk sehingga potong 2 lubang yang berdiameter 23mm dan 39mm antara satu sama lain untuk memberi ruang kepada bola untuk ditembak. kemudian buat lubang atau lubang pasangan di petak bawah untuk membolehkan wayar dari motor menyambung ke litar.

Langkah 3: Tambahkan Servo ke Bahagian Bawah Motor

Tambahkan Servo ke Bahagian Bawah Motor
Tambahkan Servo ke Bahagian Bawah Motor

hati-hati lekatkan servo 180 atau 360 ke bahagian bawah (di tengah) petak. kita melakukan ini supaya kita dapat menukar arah secara manual dengan alat kawalan jauh atau secara rawak sehingga bola menembak ke arah yang berbeza

Langkah 4: Potong Lubang di dalam Bekas Besar

Potong Lubang di Bekas Besar
Potong Lubang di Bekas Besar
Potong Lubang di Bekas Besar
Potong Lubang di Bekas Besar
Potong Lubang di Bekas Besar
Potong Lubang di Bekas Besar

ambil bekas besar dan potong lubang di bahagian depan dan belakang, tidak semestinya tepat tetapi di bahagian depan seharusnya kita cukup besar seperti yang dilihat dalam gambar untuk membolehkan bola ditembak ke arah yang berbeza dengan servo bergerak. dan bahagian belakang bekas memotong lubang yang lebih kecil untuk membolehkan wayar keluar dan meletakkan bahagian litar di dalam atau menukar litar jika diperlukan. di bahagian depan gam servo ke penutup salah satu bekas dan kemudian ke pangkalan bekas untuk sokongan, lihat gambar kedua untuk rujukan

Langkah 5: Paip

Paip
Paip

buat atau beli paip pvc yang panjangnya 1 kaki, lebih baik dengan lekukan untuk membiarkan bola bergolek kemudian potong potongan 1.5 untuk membiarkan bola masuk

Langkah 6: The Hopper

The Hopper
The Hopper
The Hopper
The Hopper
The Hopper
The Hopper

potong 4 trapezoid yang sama, boleh menjadi pilihan tetapi saya mempunyai ketinggian 5 dan miring sedikit ketika dimasukkan ke paip, kemudian kepingan papan busa di bahagian bawah memotong lubang yang cukup besar untuk melewati bola ping pong. gam berikutnya bersama-sama membentuk hopping untuk semua bola masuk. kemudian kami akan merekatkannya ke bahagian atas paip di mana lubang dipotong

Langkah 7: Meletakkan Hopper, Paip dan Motor

Meletakkan Hopper, Paip dan Motor
Meletakkan Hopper, Paip dan Motor

anda ingin meletakkan paip di dalam bekas yang terletak tepat di tepi kotak putih yang dibuat untuk motor supaya bola keluar dan ditolak oleh roda. anda kini boleh melekatkan hopper ke bahagian atas paip

Langkah 8: Servo Akhir

Servo Akhir
Servo Akhir
Servo Akhir
Servo Akhir

servo ini dilekatkan pada bahagian bawah hopper / di mana paip yang saya potong supaya cukup melekat di mana bola ping tidak akan jatuh sehingga butang diklik dan servo bergerak

Langkah 9: Tambahkan Kod untuk Menguji Bahagian Kerja

Tambahkan Kod untuk Menguji Bahagian Kerja
Tambahkan Kod untuk Menguji Bahagian Kerja

// Pembaiki kucing

// import perpustakaan untuk menggunakan perintah di seluruh kod, misalnya, menyatakan pin sebagai servos dan menyiapkan IR IR #include #include

// menetapkan pemboleh ubah untuk menetapkan kelajuan untuk motor DC int on speed = 255; int lowspeed = 100; int offspeed = 0;

// memasang pin penerima inframerah dan dua pin motor int IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// menyatakan pemboleh ubah sebagai servo sehingga program mengetahui bahawa itu adalah servo untuk menggunakan perintah khusus Servo flap; Sudut servo;

// menyatakan pin IR untuk menerima input dari alat kawalan jauh // mendapat hasil dari IRrecv irrecv jauh (IR_Recv); keputusan decode_results;

batal persediaan () {

Serial.begin (9600); // memulakan komunikasi bersiri irrecv.enableIRIn (); // Memulakan penerima

flap.attach (7); // pasangkan flap servo ke pin 7 sehingga kita dapat menggunakannya kemudian di sudut program. lampirkan (4); // melampirkan sudut servo ke pin 4 sehingga kita dapat menggunakannya kemudian dalam program pinMode (motor1, OUTPUT); // tetapkan motor1 ke output supaya kita dapat mengirim kelajuan ketika butang ditekan pinMode (motor2, OUTPUT); // tetapkan motor2 ke output sehingga kita dapat mengirim kecepatan masuk ketika tombol ditekan

}

gelung kosong () {

flap.write (0); // tetapkan servo mengawal pengumpan bola ke 0 darjah untuk tidak membiarkan bola masuk

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

beralih (hasil. nilai) {

kes 0xFFA25D: // power analogWrite (motor1, onspeed); analogWrite (motor2, onspeed); kelewatan (7000); flap.write (90); kelewatan (500); flap.write (0); kelewatan (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed); rehat;

kes 0xFFE01F: // EQ

analogWrite (motor1, onspeed); analogWrite (motor2, kecepatan rendah); kelewatan (7000); flap.write (90); kelewatan (500); flap.write (0); kelewatan (2000); analogWrite (motor1, kelajuan tinggi); analogWrite (motor2, offspeed);

rehat;

kes 0xFF629D: // mod

analogWrite (motor1, kecepatan rendah); analogWrite (motor2, onspeed); kelewatan (7000); flap.write (90); kelewatan (500); flap.write (0); kelewatan (2000); analogWrite (motor1, kelajuan tinggi); analogWrite (motor2, offspeed);

rehat;

kes 0xFF30CF: // menetap 1, 90 darjah

angle.write (30);

rehat;

kes 0xFF18E7: // menetapkan 2, 0 darjah

angle.write (90);

rehat;

kes 0xFF7A85: // menetapkan 3, 180 darjah

angle.write (150);

rehat;

} } }

Disyorkan: