Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Penembak Lego Otomatis

Komponen dan persediaan

Arduino UNO
Ini adalah papan yang saya gunakan untuk proyek ini. Namun, Arduino Uno juga akan berfungsi.
× 1
Motor servo mikro SG90
Ini adalah motor yang dibutuhkan untuk proyek.
× 4
Kabel jumper (generik)
× 1
Lego Star Wars Menembak Meriam
× 4
Breadboard (generik)
× 1

Alat dan mesin yang diperlukan

Tape, Listrik
Stape apapun baik-baik saja. Pastinya tidak harus pita listrik.

Aplikasi dan layanan online

Arduino IDE
Program yang menjalankan Kode Arduino di Perangkat Mac, Windows, dan Linux.

Tentang proyek ini

Proyek ini adalah tentang membuat Lego Cannons menembak secara otomatis. Saya suka bermain dengan lego, dan saya suka menggunakan Arduino, jadi saya memutuskan untuk melakukan proyek ini di waktu luang saya. Motor Servo, dengan klakson terpasang, berputar memukul tuas dan menembakkan meriam. Proyek pertama, kedua, atau ketiga yang bagus untuk pemula!

Ini adalah panduan langkah demi langkah tentang cara membuatnya.

Langkah 1:Perangkat Keras

Langkah 1 Bagian 1: Perangkat Keras Dasar

Mulailah dengan 5V ke baris bermuatan positif dan GRND ke baris bermuatan negatif. Ini akan terlihat seperti ini -

Langkah 1 Bagian 2:Menghubungkan Servo #1

Servo memiliki tiga kabel - yang oranye/kuning (sinyal) satu akan mengambil slot di DIGITAL (PWM~), yang merah (Daya) akan masuk ke VIN (yang merupakan pin apa pun di baris positif), dan yang lainnya kabel hitam/coklat (GRND) akan menuju ke baris bermuatan negatif yang terhubung ke pin GRND pada Uno. Pin Digital yang saya gunakan untuk servo pertama saya adalah 7. Berikut adalah bagaimana skema terlihat saat servo pertama terhubung -

Langkah 1 Bagian 3:Menghubungkan seluruh Servos

Setelah Anda menguasainya dengan servos, sisanya akan sangat mudah. Namun, satu hal yang perlu diperhatikan - Anda harus tetap konsisten dengan Pin Digital yang Anda lampirkan dengan servo Anda dalam kode.

Misalnya, kode (yang dapat ditemukan di bagian bawah halaman), menyatakan-

secondCannon.attach(8); 

Oleh karena itu, Servo kedua harus terhubung ke pin digital 8.

Dengan cara yang sama, Servo ketiga harus dipasang ke pin digital 6, dan Servo keempat harus dipasang ke pin digital kesembilan.

Namun, ini dapat diubah sehingga mereka berada dalam urutan apa pun yang Anda inginkan. Pastikan Anda mengubah perangkat keras dan perangkat lunak untuk konsistensi, jika tidak, kode tidak akan berfungsi.

Untuk menjalankan dengan kode yang disediakan di bagian bawah, beginilah tampilan skemanya-

Selamat! Anda telah secara resmi menyelesaikan bagian perangkat keras dari proyek ini.

Langkah 2:Perangkat Lunak

Sekarang, salin dan tempel kode di bagian bawah halaman ke sketsa Arduino, dan unggah. Pastikan Anda memiliki perpustakaan Servo sebelum mengunggah kode, jika tidak maka tidak akan berfungsi! Di bawah ini adalah panduan langkah demi langkah yang menjelaskan kode dan artinya saat menjalankan program.

#include  //Termasuk perpustakaan untuk ServosServo firstCannon; //Mendefinisikan Meriam Pertama sebagai ServoServo Meriam Kedua; //Mendefinisikan Meriam Kedua sebagai Meriam Ketiga ServoServo; //Mendefinisikan Meriam Ketiga sebagai Meriam keempat ServoServo; //Mendefinisikan Meriam Keempat sebagai Servo 

Kode ini mengatur Servo.h perpustakaan, yang akan memainkan peran mendasar dalam kode. Hal ini dapat ditunjukkan dengan baris berikut, menggunakan library untuk mendefinisikan empat meriam sebagai Servos, atau motor yang dapat diputar 180 derajat.

void setup() { //Setup code, atau kode yang hanya dijalankan sekali Serial.begin(9600); //Mulai komunikasi Serial Serial.println("Pertahankan Klon! Siapkan pertahanan!") //Mencetak sesuatu di Monitor Serial terlebih dahuluCannon.attach(7); //Lampirkan Pin Digital 7 ke Meriam Pertama cannon.attach(8); //Lampirkan Pin Digital 8 ke Meriam Kedua ThirdCannon.attach(6); //Lampirkan Pin Digital 6 ke Meriam Ketiga keempatCannon.attach(9); //Pasang Pin Digital 9 ke Meriam Keempat} 

pengaturan batal() kode digunakan di hampir semua proyek Arduino, dan ini adalah kode yang hanya dijalankan sekali. Dalam hal ini, kami memulai Komunikasi Serial baris baru pada 9600 baud. Kemudian, kami mencetak sesuatu di Serial Monitor. Untuk memprogram Servo, kita harus menghubungkan nama mereka dengan pin digital masing-masing. Ini adalah tujuan dari .attach() potongan kode.

void loop() { //Kode loop, atau kode yang dijalankan dalam jumlah tak terbatas Serial.println("Beginning firing sequence") //Mencetak sesuatu di Serial Monitor firstCannon.write(180); //Membelokkan servo pertama 180 derajat, memicu penundaan meriam pertama(100); //Tunggu 1/10 detik firstCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detikCannon.write(180); //Membelokkan servo kedua 180 derajat, memicu penundaan meriam kedua(100); //Menunggu 1/10 detikCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik thirdCannon.write(180); //Membelokkan servo ketiga 180 derajat, memicu penundaan meriam ketiga(100); //Menunggu 1/10 detik ketigaCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik keempatCannon.write(180); //Membelok 180 derajat keempat pertama, memicu penundaan meriam keempat(100); //Menunggu 1/10 detik keempatCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik Serial.println("Semua meriam ditembakkan"); Serial.println("Bersiap untuk memuat ulang"); penundaan (10000); Serial.println("Reload Selesai. Bersiap untuk menembak lagi")} 

Ini adalah bagian terakhir dari kode, menggunakan void loop() fungsi yang memungkinkan kode berikut dijalankan dalam jumlah tak terbatas. Kemudian, kami mencetak di Serial Monitor bahwa meriam akan ditembakkan. Servos untuk setiap meriam harus berputar 180 derajat, lalu berputar kembali ke posisi semula, satu per satu. Setelah itu, harus ada 10 detik (waktu reload) sampai proses berulang kembali.

Jika Anda memiliki masalah lain saat mengunggah kode, Anda dapat berkomentar di bagian komentar dan saya akan merespons secepatnya. Jika berhasil, lanjutkan ke langkah berikutnya.

Langkah 3:Instalasi

Langkah terakhir membutuhkan meriam lego dan beberapa pita biasa kuno. Meriam lego terlihat seperti ini -

Jalankan kodenya. Lihat ke arah mana servo berputar. Rekatkan servo ke meriam lego sehingga lintasannya mengarah pada jalur tabrakan dengan tuas di atas meriam pada gambar di atas.

Kerja bagus! Anda telah resmi menyelesaikan proyek ini. Seperti yang saya katakan, komentar di bagian bawah jika Anda memiliki pertanyaan.

Jika Anda menyukai proyek ini, lihat tautan ini -

https://create.arduino.cc/projecthub/342600/basketball-hoop-with-buzzer-using-an-arduino-693bad?ref=user&ref_id=1536504&offset=1

https://create.arduino.cc/projecthub/ShreyanR/soundbox-826a56

Kode

  • Kode Penembak Senjata Lego
Kode Penembak Senjata LegoC/C++
Rekatkan ini ke Arduino IDE
#include  //Termasuk perpustakaan untuk ServosServo firstCannon; //Mendefinisikan Meriam Pertama sebagai ServoServo Meriam Kedua; //Mendefinisikan Meriam Kedua sebagai Meriam Ketiga ServoServo; //Mendefinisikan Meriam Ketiga sebagai Meriam keempat ServoServo; //Mendefinisikan Meriam Keempat sebagai Servovoid setup() { //Setup code, atau kode yang hanya dijalankan sekali Serial.begin(9600); //Mulai komunikasi Serial Serial.println("Pertahankan Klon! Siapkan pertahanan!") //Cetak sesuatu di Serial Monitor terlebih dahuluCannon.attach(7); //Lampirkan Pin Digital 7 ke Meriam Pertama cannon.attach(8); //Lampirkan Pin Digital 8 ke Meriam Kedua ThirdCannon.attach(6); //Lampirkan Pin Digital 6 ke Meriam Ketiga keempatCannon.attach(9); //Lampirkan Pin Digital 9 ke Meriam Keempat}void loop() { //Kode loop, atau kode yang dijalankan dalam jumlah tak terbatas Serial.println("Memulai urutan penembakan") //Mencetak sesuatu di Serial Monitor terlebih dahulu Cannon. tulis(180); //Membelokkan servo pertama 180 derajat, memicu penundaan meriam pertama(100); //Tunggu 1/10 detik firstCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detikCannon.write(180); //Membelokkan servo kedua 180 derajat, memicu penundaan meriam kedua(100); //Menunggu 1/10 detikCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik thirdCannon.write(180); //Membelokkan servo ketiga 180 derajat, memicu penundaan meriam ketiga(100); //Menunggu 1/10 detik ketigaCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik keempatCannon.write(180); //Membelok 180 derajat keempat pertama, memicu penundaan meriam keempat(100); //Menunggu 1/10 detik keempatCannon.write(0); // Membelokkan Servo kembali ke posisi semula sebagai persiapan untuk penundaan pemuatan ulang (1000); //Tunggu 1 detik Serial.println("Semua meriam ditembakkan"); Serial.println("Bersiap untuk memuat ulang"); penundaan (10000); Serial.println("Reload Selesai. Bersiap untuk menembak lagi")}

Skema


Proses manufaktur

  1. Stape
  2. Pita Plastik
  3. Arduino Spybot
  4. FlickMote
  5. TV Buatan Sendiri B-Gone
  6. Jam Master
  7. Giant Animatronics Lego Minfig Operation Game
  8. Temukan Saya
  9. SunGlass-BOT [Sepasang Kacamata Hitam Otomatis]
  10. Arduino Power