Daftar Isi:

Robot Sumo Arduino: 5 Langkah
Robot Sumo Arduino: 5 Langkah

Video: Robot Sumo Arduino: 5 Langkah

Video: Robot Sumo Arduino: 5 Langkah
Video: Arduino robot sumo 2024, November
Anonim
Robot Sumo Arduino
Robot Sumo Arduino

Sebelum kita mulai

Apa itu robot sumo?

Ini adalah robot yang dikendalikan sendiri dengan dimensi dan fitur tertentu, ia juga dirancang dalam bentuk yang Bermusuhan yang memenuhi syarat untuk berpartisipasi dalam kontes dan kompetisi dengan robot lain.

Nama "sumo" berasal dari olahraga Jepang kuno, yaitu dua lawan bertarung di atas ring, masing-masing berusaha mendorong lawan yang lain keluar darinya, Dan inilah yang juga harus dilakukan robot dalam kompetisi robot sumo, di mana dua robot ditempatkan di ring dan saling berusaha mendorong lawannya.

Ide:

Membangun sebuah robot dengan spesifikasi tertentu dan sesuai dengan hukum persaingan itu (Sumo), robot ini harus berada dalam dimensi yang tepat untuk bertarung dan bertahan agar tidak dicoret dengan cara apapun.

Jadi mari kita lihat undang-undang persaingan robot Sumo:

Saya akan menjelaskan beberapa peran penting yang harus Anda pertimbangkan saat membangun SUMO Anda sendiri. Ini juga dapat membantu Anda Membayangkan dan berinovasi Ide Anda sendiri tanpa membahas detail yang mendalam.

1. Dimensi: Lebar Maks 20 cm, Panjang Maksimal 20 cm, Tinggi tidak ditentukan.

2. Bentuk: bentuk robot dapat berubah setelah memulai balapan, tetapi tanpa bagian yang tidak terpisahkan untuk tetap menjadi satu Obyek sentral.

3. Berat: tidak melebihi 3 kg.

4. Robot harus bisa mengendalikan diri.

Langkah 1: Komponen

Image
Image
Penggunaan untuk Setiap Komponen
Penggunaan untuk Setiap Komponen

1 Arduino Ano3

2 Motor DC

1 L298N Dual H Bridge untuk Arduino

1 sensor ultrasonik

2IR TCRT5000

1 Baterai 9v

Baterai AA 4 * 1,5 v buah + Rumah baterai

4 Roda Robot

kabel jumper

Langkah 2: Penggunaan untuk Setiap Komponen

Penggunaan untuk Setiap Komponen
Penggunaan untuk Setiap Komponen
Penggunaan untuk Setiap Komponen
Penggunaan untuk Setiap Komponen

Sekarang kita memiliki komponen yang diperlukan, jadi mari kita masuk ke detail untuk mengetahui apa yang digunakan untuk..

1- Arduino Ano3

Ini adalah papan utama yang mengontrol semua bagian dan menghubungkannya bersama-sama

2- Motor DC

Yang membantu robot untuk bermanuver dan bergerak di dalam ring PERSAINGAN

4- Jembatan H Ganda L298N untuk Arduino

Ini adalah panel kecil yang memberikan tegangan konstan ke motor, serta dukungan pelat Arduino dengan kontrol gerakan dan tegangan yang baik.

5- Sensor ultrasonik

Sensor ultrasonik digunakan untuk mencari lokasi robot lawan dan biasanya ditempatkan di bagian atas robot.

6- IR TCRT5000

Seperti yang telah kami sebutkan, cincin kontes dirancang dalam ukuran tertentu dan memiliki dua warna, isian hitam dan bingkai putih. Kontestan tidak boleh keluar. Oleh karena itu, kami menggunakan sensor IR untuk memastikan bahwa robot tidak akan keluar dari ring. Sensor ini memiliki kemampuan untuk membedakan warna cincin).

7- Baterai 9v

Ini mendukung papan utama (Arduino) dengan tegangan penting.

8- Baterai AA 4 * buah 1,5 v + Rumah baterai

Ini mendukung dua motor (Motor DC) dengan tegangan penting dan harus dipisahkan untuk memberikan kekuatan penuh untuk roda.

9- Kabel jumper

Langkah 3: Desain

Desain
Desain
Desain
Desain

Saya telah membuat dua desain robot sumo menggunakan Google 3D sketch-up karena saya suka membuat model kertas dari robot saya sebelum saya memotong bagian dari akrilik pada pemotong laser. Untuk memverifikasi bahwa semua bagian akan cocok satu sama lain dengan benar, penting agar model kertas dicetak dengan ukuran gambar yang tepat.

Dan saya mempertimbangkan untuk melakukan pengukuran khusus dengan undang-undang persaingan, jadi cobalah untuk berpikir dalam desain yang lebih kreatif dan buat model Anda sendiri.

Agar lebih peka terhadap berat robot di serahkan atau kemudian letakkan baterai di bagian depan robot dengan pelindung depan membentuk sudut 45 derajat terhadap bentuk robot.

Unduh desain 1 dari sini

Unduh desain 2 dari sini

Anda juga dapat Mengunduh template model Kertas

Buka file PDF dengan Adobe Acrobat Reader (perangkat lunak yang direkomendasikan)

Langkah 4: Mainkan Strategi

Image
Image
Strategi bermain
Strategi bermain

Seperti yang kami sebutkan sebelumnya bahwa robot harus memiliki kemampuannya sendiri untuk mengendalikan dirinya sendiri, sehingga memberi kita kemampuan untuk memprogramnya dalam lebih dari satu cara, itu tergantung pada bagaimana Anda ingin robot bermain di atas ring seperti halnya lawan mana pun. benar-benar ingin memenangkan permainan.

Strategi bermain (1):

· Kami akan membuat robot di sekelilingnya secara terus menerus.

· Robot selalu mengukur jarak secara terus menerus selama rotasi.

· Jika jarak lawan yang diukur lebih rendah dari (10cm misalnya), berarti lawan berada di depan robot kita secara langsung.

· Robot harus berhenti berputar dan kemudian memulai serangan (bergerak maju dengan kekuatan penuh dengan cepat).

· Robot harus selalu mengambil pembacaan dari sensor IR untuk memastikan bahwa kita tidak melewati batas cincin.

· Jika Baca IR terdapat warna putih, maka robot harus langsung bergerak berlawanan arah dengan sensor (contoh: Jika sensor depan yang memberi indikasi warna putih robot bergerak mundur)!

Strategi bermain (2):

· Pada saat start robot mengukur jarak di depan.

· Robot bergerak mundur dengan jarak terukur yang sama.

· Robot berhenti berputar dan kemudian mulai menyerang secara tiba-tiba (bergerak maju dengan kekuatan penuh).

· Dalam kasus menempel lawan robot harus berputar 45 derajat sementara untuk bertahan hidup sendiri jika jatuh dari ring.

· Robot harus selalu mengambil pembacaan dari sensor IR untuk memastikan bahwa kita tidak melewati batas ring.

· Jika Baca IR terdapat warna putih, maka robot harus langsung bergerak berlawanan arah dengan sensor (contoh: Jika sensor depan yang memberi indikasi warna putih robot bergerak mundur)!

Langkah 5: Pemrograman

Pemrograman
Pemrograman

silakan periksa sirkuit dan kode

* Pembaruan 2019-03-26

Unduh perpustakaan Ultrasonic dari sini terlebih dahulu dan instal:

github.com/ErickSimoes/Ultrasonic/blob/mas…

/*

oleh ahmed azouz

www.instructables.com/id/How-to-Make-Ardu…

Unduh lib dari sini terlebih dahulu

github.com/ErickSimoes/Ultrasonic/blob/ma…

*/

#sertakan Ultrasonic.h

Ultrasonik ultrasonik (4, 3);

const int IN1=5;

const int IN2=6; const int IN3=9; const int IN4=10; #define IR_sensor_front A0 // sensor depan #define IR_sensor_back A1 // jarak int senson belakang;

batalkan pengaturan()

{ Serial.begin(9600); penundaan (5000); // sesuai dengan peran sumo compat } void loop() { int IR_front = analogRead(IR_sensor_front); int IR_back = analogRead(IR_sensor_back); jarak = ultrasonik.baca(); PUTAR (200); // mulai menghafal jika (jarak < 20){ Stop(); while (jarak 650 || IR_back > 650) { break;} delay(10); } if (IR_front < 650) // < 650 berarti garis putih { Stop(); penundaan (50); Mundur (255); penundaan (500); } if (IR_back < 650) // { Stop(); penundaan (50); MAJU(255); penundaan (500); } /* ----------- debugging ---------------- Serial.print(ultrasonik. Ranging(CM)); Serial.println("cm"); Serial.println("IR depan:"); Serial.println(IR_depan); Serial.println("IR kembali:"); Serial.println(IR_back); */

} //--------------------------------------------

void FORWARD (int Speed){ //Bila kita ingin membiarkan Motor Untuk maju, // batalkan saja bagian ini pada bagian loop. analogWrite(IN1, Kecepatan); analogWrite(IN2, 0); analogWrite(IN3, 0); analogWrite(IN4, Kecepatan); }//--------------------------------------------- void BACKWARD (int Speed){ //Bila kita ingin membiarkan Motor Untuk maju, // batalkan saja bagian ini pada bagian loop. analogWrite(IN1, 0); analogWrite(IN2, Kecepatan); analogWrite(IN3, Kecepatan); analogWrite(IN4, 0); }//--------------------------------------------- void ROTATE (int Speed) { //Bila kita ingin membiarkan Motor Berputar, // batalkan saja bagian ini pada bagian loop. analogWrite(IN1, Kecepatan); analogWrite(IN2, 0); analogWrite(IN3, Kecepatan); analogWrite(IN4, 0); }//-------------------------------------------- batal Berhenti(){ //Saat kita ingin Motor Untuk berhenti, // batalkan saja bagian ini pada bagian loop. analogWrite(IN1, 0); analogWrite(IN2, 0); analogWrite(IN3, 0); analogWrite(IN4, 0); }

Direkomendasikan: