- Motor DC Tanpa Biji untuk Mobil RC
- Bahan yang Dibutuhkan
- Joystick RF untuk mobil RC menggunakan Arduino
- Diagram Sirkuit Mobil Arduino RC
- Fabrikasi PCB untuk Arduino RC Car
- Merakit PCB
- Roda Pencetakan 3D dan Pemasangan Motor
- Memprogram Arduino
- Pengerjaan Mobil RC Arduino
Mobil RC selalu menyenangkan untuk dimainkan, saya pribadi penggemar berat Mobil yang dikendalikan dari jarak jauh ini dan telah (masih melakukannya) dengan mereka secara ekstensif. Sebagian besar mobil ini saat ini memberikan torsi yang sangat besar untuk menghadapi medan yang kasar, tetapi ada sesuatu yang selalu tertinggal, Kecepatannya !!.. Jadi, dalam proyek ini, kami akan membangun jenis mobil RC yang sama sekali berbeda menggunakan Arduino, yang utama Tujuan dari mobil ini adalah untuk mencapai kecepatan maksimum, oleh karena itu saya memutuskan untuk mencoba motor DC tanpa biji untuk sebuah mobil RC. Motor ini biasanya digunakan di drone dan memiliki rating 39000 RPM yang seharusnya lebih dari cukup untuk memuaskan dahaga kecepatan kita. Mobil akan didukung dengan baterai lithium kecil dan dapat dikontrol dari jarak jauh menggunakan modul RF nRF24L01. Atau, jika Anda mencari sesuatu yang sederhana, Anda juga dapat memeriksa proyek Robot RF Sederhana dan Mobil Bluetooth Raspberry Pi ini.
Motor DC Tanpa Biji untuk Mobil RC
The tanpa biji motor DC yang digunakan dalam proyek ini ditunjukkan pada gambar di bawah. Anda dapat menemukannya dengan mudah karena banyak digunakan di mini drone. Cari saja 8520 Magnetic Micro Coreless Motor dan Anda akan menemukannya.
Sekarang, ada beberapa kelemahan menggunakan motor DC untuk mobil RC. Hal pertama adalah mereka memberikan torsi awal yang sangat rendah sehingga mobil RC kita harus seringan mungkin. Inilah mengapa saya memutuskan untuk membangun seluruh mobil di atas PCB menggunakan komponen SMD dan mengurangi ukuran papan sebanyak mungkin. Masalah kedua adalah kecepatannya yang tinggi, 39000 RPM (RPM poros) sulit ditangani, sehingga diperlukan rangkaian kontrol kecepatan pada sisi Arduino, yang kami bangun menggunakan MOSFET. Hal ketiga adalah motor ini akan didukung oleh baterai lithium-polymer tunggal dengan tegangan operasi antara 3.6V hingga 4.2V, jadi kita harus mendesain sirkuit kita untuk beroperasi pada 3.3V. Inilah mengapa kami telah menggunakan Arduino Pro mini 3.3Vsebagai otak dari mobil RC kami. Dengan menyelesaikan masalah ini, mari kita lihat bahan yang dibutuhkan untuk membangun proyek ini.
Bahan yang Dibutuhkan
- 3.3V Arduino Pro Mini
- Arduino Nano
- NRF24L01 - 2 lembar
- Modul Joystick
- SI2302 MOSFET
- 1N5819 Dioda
- Motor BLDC Tanpa Biji
- AMS1117-3.3V
- Baterai Lithium Polymer
- Resistor, Kapasitor,
- Menghubungkan kabel
Joystick RF untuk mobil RC menggunakan Arduino
Seperti yang disebutkan sebelumnya, mobil RC akan dikendalikan dari jarak jauh menggunakan RF Joystick. Joystick ini juga akan dibangun menggunakan Arduino bersama dengan modul RF nRF24L01, kami juga telah menggunakan modul Joystick untuk mengontrol RC kami ke arah yang diperlukan. Jika Anda benar-benar baru mengenal kedua modul ini, Anda dapat mempertimbangkan untuk membaca artikel Interfacing Arduino dengan nRF24L01 dan Interfacing Joystick dengan Arduino untuk mempelajari cara kerjanya dan cara menggunakannya. Untuk membuat Arduino RF Remote Joystick Anda, Anda dapat mengikuti Diagram Sirkuit di bawah ini.
Sirkuit RF Joystick dapat diberi daya menggunakan port USB papan nano. Modul nRF24L01 hanya beroperasi pada 3.3V, oleh karena itu kami telah menggunakan pin 3.3V pada Arduino. Saya telah membangun sirkuit pada papan tempat memotong roti dan tampilannya seperti di bawah ini, Anda juga dapat membuat PCB untuk ini jika diperlukan.
Rangkaian Arduino Code for RF Joystick ini cukup sederhana, kita harus membaca nilai X dan nilai Y dari Joystick kita dan mengirimkannya ke mobil RC melalui nRF24L01. Program lengkap untuk sirkuit ini dapat ditemukan di bagian bawah halaman ini. Kami tidak akan membahas penjelasannya karena kami telah membahasnya di tautan proyek interfacing yang dibagikan di atas.
Diagram Sirkuit Mobil Arduino RC
Diagram rangkaian lengkap untuk Mobil Arduino yang dikendalikan Jarak Jauh kami ditunjukkan di bawah ini. Diagram sirkuit juga menyertakan opsi untuk menambahkan dua modul IR TCRT5000 ke mobil kami. Hal ini direncanakan agar mobil RC kita dapat bekerja sebagai robot line following sehingga dapat bekerja sendiri tanpa dikontrol secara eksternal. Namun, demi proyek ini kami tidak akan berkonsentrasi padanya, nantikan tutorial proyek lainnya di mana kami akan mencoba membangun "Robot Pengikut Garis Tercepat". Saya telah menggabungkan kedua sirkuit pada satu PCB untuk memudahkan pembangunan, Anda dapat mengabaikan sensor IR dan bagian Op-amp untuk proyek ini.
</s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> </s> orang </s>Mobil RC akan didukung oleh Baterai Lipo yang terhubung ke terminal P1. The AMS117-3.3V digunakan untuk mengatur 3.3V untuk nRF24L01 kami dan kami pro-mini-papan. Kami juga dapat menyalakan papan Arduino langsung pada pin mentah tetapi regulator tegangan 3.3V on-board pada pro mini tidak akan dapat memasok arus yang cukup ke modul RF kami, oleh karena itu kami telah menggunakan regulator tegangan eksternal.
Untuk menggerakkan dua motor BLDC kami, kami telah menggunakan dua MOSFET SI2302. Penting untuk memastikan bahwa MOSFET ini dapat digerakkan oleh 3.3V. Jika Anda tidak dapat menemukan nomor bagian yang sama persis, Anda dapat mencari MOSFET yang setara dengan karakteristik transfer di bawah ini
Motor dapat mengkonsumsi arus puncak setinggi 7A (kontinyu diuji menjadi 3A dengan beban), maka arus drain MOSFET harus 7A atau lebih dan harus menyala sepenuhnya pada 3.3V. Seperti yang Anda lihat di sini, MOSFET yang kami pilih dapat menyediakan 10A bahkan pada 2.25V jadi ini adalah pilihan yang ideal.
Fabrikasi PCB untuk Arduino RC Car
Bagian yang menyenangkan dengan membangun proyek ini adalah Pengembangan PCB. PCB di sini tidak hanya membentuk sirkuit tetapi juga bertindak sebagai Sasis untuk Mobil kami, jadi kami merencanakan bentuk tampilan mobil untuknya dengan opsi untuk memasang motor dengan mudah. Anda juga dapat mencoba mendesain PCB Anda sendiri menggunakan rangkaian di atas atau Anda dapat menggunakan desain PCB saya yang terlihat seperti ini di bawah ini setelah selesai.
Seperti yang Anda lihat, saya telah merancang PCB untuk dengan mudah memasang baterai, motor, dan komponen lainnya. Anda dapat mengunduh file Gerber untuk PCB ini dari tautan. Setelah Anda siap dengan file Gerber, saatnya membuatnya dibuat. Untuk mendapatkan PCB Anda dengan mudah dilakukan dengan PCBGOGO ikuti langkah-langkah di bawah ini
Langkah 1: Masuk ke www.pcbgogo.com, daftar jika ini adalah pertama kalinya Anda. Kemudian, pada tab Prototipe PCB masukkan dimensi PCB Anda, jumlah lapisan dan jumlah PCB yang Anda butuhkan. PCB saya berukuran 80cm × 80cm jadi tabnya terlihat seperti di bawah ini.
Langkah 2: Lanjutkan dengan mengklik tombol Kutip Sekarang . Anda akan dibawa ke halaman di mana untuk mengatur beberapa parameter tambahan jika diperlukan seperti material yang digunakan jarak trek dll. Tetapi sebagian besar nilai default akan berfungsi dengan baik. Satu-satunya hal yang harus kita pertimbangkan di sini adalah harga dan waktu. Seperti yang Anda lihat, Build Time hanya 2-3 hari dan biayanya hanya $ 5 untuk PSB kami. Anda kemudian dapat memilih metode pengiriman yang disukai berdasarkan kebutuhan Anda.
Langkah 3: Langkah terakhir adalah mengunggah file Gerber dan melanjutkan pembayaran. Untuk memastikan prosesnya lancar, PCBGOGO memverifikasi apakah file Gerber Anda valid sebelum melanjutkan pembayaran. Dengan cara ini Anda dapat memastikan bahwa PCB Anda ramah fabrikasi dan akan menghubungi Anda sesuai komitmen.
Merakit PCB
Setelah papan dipesan, itu sampai kepada saya setelah beberapa hari melalui kurir dalam kotak berlabel rapi yang dikemas dengan baik dan seperti biasa kualitas PCB luar biasa. Saya membagikan beberapa gambar papan di bawah ini untuk Anda nilai.
Saya menyalakan batang solder saya dan mulai memasang Papan. Karena Footprints, pad, vias, dan silkscreen sempurna dengan bentuk dan ukuran yang tepat, saya tidak mengalami masalah saat merakit board. Papan itu sudah siap hanya dalam 10 menit dari saat kotak dibongkar.
Beberapa gambar papan setelah penyolderan ditunjukkan di bawah ini.
Roda Pencetakan 3D dan Pemasangan Motor
Seperti yang mungkin Anda perhatikan pada gambar di atas, kita perlu melakukan 3D pada dudukan motor dan roda untuk robot. Jika Anda telah menggunakan file PCB Gerber kami yang dibagikan di atas, maka Anda sebaiknya menggunakan model 3D dengan mengunduhnya dari tautan haliverse ini.
Saya telah menggunakan Cura untuk mengiris model saya dan mencetaknya menggunakan Tevo Terantuala tanpa penyangga dan pengisian 0% untuk mengurangi bobot. Anda dapat mengubah pengaturan yang sesuai untuk printer kami. Karena motor berputar sangat cepat, saya merasa sulit untuk mendesain roda yang pas dan kencang ke poros motor. Karenanya saya memutuskan untuk menggunakan bilah drone di dalam roda seperti yang Anda lihat di bawah
Saya menemukan ini lebih dapat diandalkan dan kokoh, namun, bereksperimenlah dengan desain roda yang berbeda dan beri tahu saya di bagian komentar apa yang berhasil untuk Anda.
Memprogram Arduino
Program lengkap (baik Arduino nano dan pro mini) untuk proyek ini dapat ditemukan di bagian bawah halaman ini. Penjelasan program RC Anda adalah sebagai berikut
Kami memulai program dengan memasukkan file header yang diperlukan. Perhatikan bahwa, modul nRF24l01 membutuhkan perpustakaan untuk ditambahkan ke Arduino IDE Anda, Anda dapat mengunduh Perpustakaan RF24 dari Github menggunakan tautan ini. Selain itu, kami telah menetapkan kecepatan minimum dan kecepatan maksimum untuk robot kami. Kisaran minimum dan maksimum masing-masing adalah 0 hingga 1024.
#define min_speed 200 #define max_speed 800 #include
Kemudian di dalam fungsi pengaturan, kami menginisialisasi modul nRF24L01 kami. Kami telah menggunakan 115 band karena tidak mengalami kepadatan dan telah mengatur modul untuk beroperasi dengan daya rendah, Anda juga dapat bermain-main dengan pengaturan ini.
void setup () {Serial.begin (9600); myRadio.begin (); myRadio.setChannel (115); // 115 band di atas sinyal WIFI myRadio.setPALevel (RF24_PA_MIN); // MIN power low rage myRadio.setDataRate (RF24_250KBPS); // Kecepatan minimum}
Selanjutnya di fungsi loop utama, kami hanya akan menjalankan fungsi ReadData yang dengannya kami akan terus membaca nilai yang dikirim dari modul joystick Transmitter kami. Perhatikan bahwa alamat pipa yang disebutkan dalam program harus sama dengan yang disebutkan dalam program pemancar. Kami juga telah mencetak nilai yang kami terima untuk tujuan debugging. Setelah nilai berhasil dibaca kita akan menjalankan fungsi Control Car untuk mengontrol mobil RC kita berdasarkan nilai yang diterima dari
modul Rf.
void ReadData () {myRadio.openReadingPipe (1, 0xF0F0F0F0AA); // Pipa mana yang akan dibaca, 40 bit Address myRadio.startListening (); // Hentikan Transmint dan mulai Reveicing if (myRadio.available ()) {while (myRadio.available ()) {myRadio.read (& data, sizeof (data)); } Serial.print ("\ nDiterima:"); Serial.println (data.msg); diterima = data.msg; Control_Car (); }}
Di dalam fungsi Control Car, kita akan mengontrol motor yang terhubung ke pin PWM menggunakan fungsi tulis analog. Dalam program pemancar kami, kami telah mengubah nilai Analog dari pin A0 dan A1 Nano menjadi 1 hingga 10, 11 hingga 20, 21 hingga 30 dan 31 hingga 40 untuk mengendalikan mobil di depan, mundur, kiri dan kanan masing-masing. Program di bawah ini digunakan untuk mengontrol robot ke arah depan
if (diterima> = 1 && diterima <= 10) // Maju {int PWM_Value = peta (diterima, 1, 10, min_speed, max_speed); analogWrite (R_MR, PWM_Value); analogWrite (L_MR, PWM_Value); }
Demikian pula, kita juga dapat menulis tiga fungsi lagi untuk kontrol mundur, kiri, dan kanan seperti yang ditunjukkan di bawah ini.
if (diterima> = 11 && diterima <= 20) // Istirahat {int PWM_Value = peta (diterima, 11, 20, min_speed, max_speed); analogWrite (R_MR, 0); analogWrite (L_MR, 0); } jika (diterima> = 21 && diterima <= 30) // Belok kiri {int PWM_Value = peta (diterima, 21, 30, min_speed, max_speed); analogWrite (R_MR, PWM_Value); analogWrite (L_MR, 0); } if (diterima> = 31 && diterima <= 40) // Belok Kanan {int PWM_Value = map (diterima, 31, 40, min_speed, max_speed); analogWrite (R_MR, 0); analogWrite (L_MR, PWM_Value); }
Pengerjaan Mobil RC Arduino
Setelah Anda selesai dengan kodenya, unggah ke pro-mini-board Anda. Lepaskan baterai dan papan Anda melalui modul FTDI untuk pengujian. Luncurkan kode Anda, buka baterai serial dan Anda akan menerima nilai dari modul Joystick pemancar Anda. Hubungkan baterai Anda dan motor Anda juga harus mulai berputar.
Pekerjaan lengkap proyek dapat ditemukan dalam video yang ditautkan di bagian bawah halaman ini. Jika Anda memiliki pertanyaan, tinggalkan di bagian komentar. Anda juga dapat menggunakan forum kami untuk mendapatkan jawaban cepat atas pertanyaan teknis lainnya.