Melanjutkan tema mainan kendaraan segala medan dengan Arduino. Kami telah membuat kendaraan segala medan yang dikendalikan radio dengan Anda dari smartphone melalui Bluetooth. Sekarang kita akan membuat kendaraan segala medan yang mengemudi sendiri, menghindari rintangan, dan juga memberi sinyal dengan "lampu depan" tentang berbelok atau berhenti.
Itu perlu
- - Arduino UNO atau setara;
- - pencari jangkauan ultrasonik (modul ultrasonik) HC-SR04 atau yang serupa;
- - Driver motor L9110S atau analog;
- - platform terlacak untuk tangki Pololu Zumo atau sejenisnya;
- - sepotong fiberglass sesuai dengan ukuran papan Arduino atau pelindung untuk pembuatan prototipe;
- - 2 motor listrik yang cocok untuk sasis yang dipilih;
- - 2 LED putih (lampu depan), 2 LED merah (lampu belakang) dan 4 resistor 180-220 Ohm;
- - baterai (1 "mahkota" atau baterai 4-6 jari);
- - kabel penghubung;
- - besi solder;
- - komputer;
- - pengencang - 6-10 baut M2, 5, ring, mur untuk mereka.
instruksi
Langkah 1
Langkah pertama adalah merakit platform. Di salah satu artikel sebelumnya, kami melihat secara detail cara membuat sasis ATV mainan. Di sini, langkah-langkahnya akan persis sama. Karena itu, kami tidak akan membahas ini secara detail. Sasis yang dirakit untuk kendaraan segala medan dengan papan Arduino terpasang di atasnya ditunjukkan pada foto.
Langkah 2
Sekarang giliran elektronik. Mari kita lihat diagram koneksinya terlebih dahulu. Harap dicatat bahwa semua LED terhubung melalui resistor sekitar 200 ohm. Sonar terhubung ke dua pin digital arbitrer Arduino dan catu daya + 5V. Koneksi driver motor ke Arduino dan ke motor dapat dilihat pada diagram. Jika ada ambiguitas - baca artikel sebelumnya, di mana kami mempertimbangkan ini secara lebih rinci, atau ajukan pertanyaan di komentar.
Langkah 3
Mari kita merakit jantung dan otak kendaraan mainan segala medan kita sesuai dengan diagram di atas. Anda dapat memasang semuanya di papan sirkuit - ini jauh lebih nyaman untuk pemasangan dan kemungkinan modifikasi di masa mendatang. Dalam foto tersebut, komponen elektronik ditempatkan pada pelindung khusus untuk prototipe Arduino Uno. Sonar terlihat lurus ke depan kendaraan. LED belakang akan meniru lampu rem, LED depan, masing-masing - lampu depan.
Langkah 4
Saatnya menulis program kontrol untuk kendaraan segala medan kami. Kode sketsa (program untuk Arduino) ditunjukkan dalam ilustrasi.
Nuansa utama dalam sketsa ini adalah bekerja dengan sonar. Intinya adalah bahwa kami mengirim pulsa pendek - pemicu, mengukur waktu tunda pantulan - gema, dan menentukan jarak ke target dari waktu tunda. Jika jaraknya kurang dari yang ditentukan (dalam sketsa - 20 cm), maka kendaraan segala medan akan mengitarinya.
Kami mempertimbangkan algoritma kontrol motor di artikel sebelumnya. Saat berbelok, kendaraan segala medan akan menyalakan "sinyal belok", saat berhenti - lampu rem. Ketika hambatan terdeteksi, lampu depan akan menyala dan ATV akan mengelilinginya. Untuk membuat kendaraan segala medan lebih "cerdas", mari kita tentukan arah sewenang-wenang untuk menghindari rintangan.
Komentar dalam kode menjelaskan keseluruhan program secara lebih rinci.
Langkah 5
"Isi" sketsa ke Arduino (kami telah mempertimbangkan beberapa opsi di artikel sebelumnya tentang cara memuat program ke Arduino). Kami menghubungkan pelindung dengan komponen elektronik kendaraan segala medan ke papan Arduino. Kami menyajikan makanan. Dan kami melihat bagaimana kendaraan segala medan kami "hidup".