Daftar Isi:

Robot Berjalan Sendiri: 7 Langkah
Robot Berjalan Sendiri: 7 Langkah

Video: Robot Berjalan Sendiri: 7 Langkah

Video: Robot Berjalan Sendiri: 7 Langkah
Video: ROBOT INI HARGANYA BIKIN DOMPET MENANGIS, TAPI FITURNYA BIKIN SENYUM-SENYUM :)) 2024, November
Anonim
Robot Berjalan Sendiri
Robot Berjalan Sendiri

Apa yang saya buat?

● Bot yang dapat dilatih untuk berjalan (bergerak maju) di permukaan yang berbeda. Bot menggambarkan makhluk sederhana dengan 4 kaki 'tanpa lutut' yang berjuang untuk bergerak maju. Ia tahu ia dapat mengarahkan masing-masing kaki dengan 3 cara yang mungkin saja. Sekarang ia harus memikirkan langkah-langkah terbaik yang dapat diambil untuk terus bergerak. Karena pergerakannya juga bergantung pada gesekan dengan permukaan, kami percaya bahwa untuk setiap permukaan berbeda yang dilaluinya, akan ada serangkaian langkah yang berbeda (tidak harus unik tetapi kemungkinan besar serupa) untuk memaksimalkan upayanya untuk bergerak maju.

Untuk apa itu digunakan?

● Paling baik digunakan untuk memvisualisasikan pola berjalan untuk AI ROBOT.

Langkah 1: Diagram Alir

Diagram Alur
Diagram Alur

Berikut rincian dari seluruh proyek. Secara garis besar proyek ini dalam 2 bagian elektronik dengan struktur mekanik robot dan yang lainnya adalah algoritma yang berjalan di atas pc dan kode yang berjalan di atas arduino.

Langkah 2: KOMPONEN UTAMA TERLIBAT:

Elektronik

ArduinoUNO(!)

Sensor ultrasonik

Motor servo

Modul Bluetooth

Pengkodean

Arduino IDE

Terterm

Buku Catatan Jupyter

algoritma pembelajaran Q

Langkah 3: MODUL V1:

MODUL V1
MODUL V1

Pembelajaran Penguatan: Menggunakan ANN (Artificial Neural Network) kami berencana untuk melatih robot kami dan kami menemukan dua metode yang mungkin.

Batasan: Setiap kaki (motor servo) dibatasi hanya untuk mengambil 3 kemungkinan posisi 60, 90 & 120 derajat. Asumsi: Kami menganggap bahwa gerakan bot akan membentuk 4 status (keadaan adalah orientasi tertentu dari keempat servos), yaitu akan ada 4 status berbeda dari robot yang akan kami pertimbangkan sebagai 4 langkah masing-masing memberi kami satu siklus gerakan, dalam mana bot akan bergerak agak jauh ke depan. Siklus ini akan diulang tanpa batas untuk menjaga bot tetap bergerak.

Tapi satu-satunya masalah adalah jumlah iterasi yang harus dinilai - Kami memiliki 3 kemungkinan orientasi untuk setiap motor dan ada 4 motor yang berbeda sehingga 3^4=81 status di mana robot dapat eksis dalam satu langkah atau status. Kita harus mengambil 4 langkah berbeda untuk menyelesaikan satu gerakan kompleks, yang berarti 81^4 = 43, 046, 721 kombinasi yang mungkin diperiksa untuk efisiensi maksimum untuk satu siklus gerakan. Misalkan dibutuhkan 5 detik untuk melatih satu negara bagian, dibutuhkan 6.8250 tahun untuk menyelesaikan pelatihan!

Langkah 4: MODUL V2:

Algoritma Q-learning

Algoritme pembelajaran penguatan awal dikembangkan untuk melatih hal-hal yang memiliki keadaan terbatas dan menemukan jalur terpendek. sumber:

Matematika Algoritma: Ada 81 kemungkinan status untuk setiap langkah yang dapat dilakukan bot, kami menamai status ini sebagai angka dari 1 hingga 81 dan sekarang yang ingin kami ketahui adalah nilai transisi, artinya perubahan posisi robot (jarak dipindahkan) saat berpindah dari keadaan acak s1 ke keadaan lain s2 (s1, s2 dari 81 keadaan tersebut). Kita dapat melihatnya sebagai matriks yang memiliki 81 baris dan 81 kolom di mana suatu elemen matriks akan sama dengan nilai jarak perpindahannya sesuai dengan nomor baris dan kolomnya. Nilai-nilai ini bisa positif atau negatif tergantung pada tindakan robot di dunia nyata. Sekarang kita akan menemukan loop tertutup dari keadaan di mana jarak yang ditempuh selalu positif, Kita akan mengevaluasi nilai matriks 81x81 yaitu 81^2=6561, sekarang jika kita mengambil 5 detik untuk mendapatkan nilai ini disimpan dalam matriks maka akan mengambil 9.1125 jam hanya untuk membuat seluruh matriks dan kemudian loop langkah-langkah untuk memaksimalkan efisiensi bergerak dapat ditemukan dengan mudah.

Langkah 5: MASALAH YANG TERLIBAT -

  1. Untuk beberapa keadaan gerakan bot sangat tidak merata dan mempengaruhi nilai sensor ultrasonik, bot akan memiringkan dan mengambil jarak dari dinding yang jauh.
  2. Masalah pemutusan dari laptop dan restart arduino membuatnya berlatih dari nilai 0 sangat menjengkelkan.
  3. Menonton kereta robot selama 5 jam terus menerus sangat melelahkan.

Langkah 6: MODUL A1 dan A2:

  • Bagian mekanis termasuk papan sasis dengan empat servo terpasang padanya. Kami menggunakan stik es krim untuk membuat kaki.
  • Tugas prinsip kami - untuk melacak jarak bot dari posisi awalnya.
  • Pendekatan pertama kami adalah menggunakan sensor gyro dan menggunakan percepatan bot saat bergerak untuk mengekstrak kecepatannya dan selanjutnya posisinya.
  • Masalah - Ternyata terlalu rumit untuk diterapkan! Alternatif - Kami membatasi pergerakan bot hanya 1 dimensi dan menggunakan sensor ultrasonik untuk mengukur jarak dari dinding lurus di depan.
  • Modul HC05-Bluetooth digunakan selama periode pelatihan untuk mengirimkan tingkat transisi jarak antara dua langkah ke PC dan di sana data disimpan dalam matriks.

Langkah 7: Tautkan ke Video:

Tautan ke Video
Tautan ke Video

Langkah kecil:

Tembakan pelatihan:

Hampir lurus:

Video robot menari:

Video Akhir0:

Direkomendasikan: