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

RC Hovercraft berbasis Arduino DIY

Dalam tutorial ini kita akan belajar bagaimana membangun RC Hovercraft berbasis Arduino. Saya akan menunjukkan kepada Anda seluruh proses pembuatannya, mulai dari mendesain dan mencetak 3D komponen hovercraft, termasuk baling-baling, hingga menghubungkan komponen elektronik dan memprogram Arduino.

Anda dapat menonton video berikut atau membaca tutorial tertulis di bawah ini.

Ringkasan

Untuk mengontrol hovercraft, saya menggunakan RC Transmitter berbasis Arduino DIY yang saya buat di salah satu video saya sebelumnya. Saya mengatur joystick kanan untuk mengontrol motor servo untuk memposisikan kemudi di sisi belakang motor dorong, mengatur salah satu potensiometer untuk mengontrol baling-baling angkat yang sebenarnya terpasang pada motor DC brushless, dan mengatur joystick kiri untuk mengontrol propulsi. Jadi, mari kita lihat apa yang diperlukan untuk membuat hovercraft RC ini.

Model 3D Hovercraft

Pertama-tama, saya mendesain hovercraft menggunakan perangkat lunak pemodelan 3D.

Anda dapat menemukan dan mengunduh model 3D ini, serta menjelajahinya di browser Anda di Thangs.

Unduh model perakitan 3D di Thans.

File STL untuk Pencetakan 3D:

Prinsip Kerja Hovercraft

Prinsip kerja dasar hovercraft adalah bahwa pesawat diangkat oleh bantalan udara. Baling-baling pusat meniupkan udara ke bawah pesawat, yang mengembangkan rok yang terbuat dari bahan lembut.

Ketika tekanan udara di dalam rok cukup tinggi, pesawat akan terangkat. Udara yang disuplai terus-menerus keluar dari bagian tengah pesawat, antara rok dan tanah, yang menciptakan daya angkat tambahan dan juga mengurangi gesekan antara hovercraft dan tanah.

Setelah diangkat, dengan menggunakan baling-baling kedua, dorongan dihasilkan yang menggerakkan hovercraft ke depan.

Di sisi belakang baling-baling dorong terdapat satu set kemudi sederhana yang digunakan untuk mengarahkan hovercraft.

Pencetakan 3D

Namun demikian, setelah saya menyelesaikan desainnya, saya mulai dengan mencetak bagian-bagiannya secara 3D.

Lambung hovercraft adalah bagian terbesar untuk dicetak dan saya secara khusus mendesain agar sesuai dengan printer 3D Creality CR-10 saya, yang memiliki alas cetak 30x30cm.

Berikut tautan ke printer 3D ini jika Anda ingin memeriksanya.

Setelah pencetakan selesai, saatnya melakukan pembersihan. Bagian utama dari hovercraft atau kokpit adalah cetakan terpanjang yang membutuhkan waktu sekitar 18 jam untuk dicetak. Karena desainnya yang melengkung, dan karena saya ingin menjadi satu cetakan, ada banyak bahan pendukung yang digunakan untuk cetakan ini.

Namun, sangat mudah untuk menghapusnya dan potongan terakhir ternyata sempurna. Lambung hovercraft dicetak terbalik dan hanya sedikit material pendukung yang harus dilepas. Sebenarnya, saya harus melakukan beberapa penyesuaian pada cetakan ini dan memotong beberapa bahan dari rumah peniup pusat sehingga penahan rok dapat dipasang dengan benar.

Saya sudah memperbarui model 3D sehingga tidak akan mengalami masalah ini.

Beberapa bagian yang bulat agak kasar jadi saya menggunakan kertas pengirim sederhana untuk menghaluskannya.

Baling-baling tidak perlu dibersihkan dan bekerja cukup baik langsung dari printer 3D.

Melukis hovercraft

Ok langkah selanjutnya adalah mengecat bagian-bagian yang dicetak 3D. Saya tidak menggunakan primer apa pun sebelumnya tetapi langsung mengaplikasikan cat akrilik dalam bentuk cat semprot.

Saya menggunakan warna alis cokelat untuk lapisan pertama. Untuk beberapa bagian yang lebih kecil, yang sebenarnya hanya bagian penghias, saya menggunakan warna cokelat muda.

Untuk membuat hovercraft terlihat sedikit lebih keren, setelah lapisan pertama mengering, saya melanjutkan dengan menambahkan dua warna lagi ke bagian-bagiannya. Untuk tujuan itu, saya membuat beberapa pola acak pada selembar kertas sederhana, dan menggunakannya untuk membuat garis-garis dan bintik-bintik dengan warna berbeda. Saya menggunakan warna coklat dan hitam yang lebih terang untuk tujuan itu.

Merakit Arduino RC Hovercraft

Saya sangat menyukai bagian yang dihasilkan, jadi setelah mengering, saya melanjutkan dengan merakitnya.

Saya mulai dengan memasang motor servo yang mengontrol kemudi ke rumah peniup dorong. Saya mengamankan servo menggunakan dua baut dan mur M2.

Berikutnya adalah motor brushless. Model khusus yang saya miliki adalah D2830 yang memiliki diameter 28mm dan panjang 30mm, dan tentu saja casingnya dirancang khusus agar sesuai dengan motor ini.

Di sini saat memasukkan motor, pertama-tama saya harus melewati kabel melalui bukaan. Agak sempit, tapi masih bisa dilewati. Kemudian di sisi belakang, dengan menggunakan baut M3 saya mengamankan motor ke rumah.

Selanjutnya, saya dapat menggabungkan rumah dorong dengan badan utama hovercraft. Bagian ini memiliki bukaan sehingga servo dan kabel motor BLDC dapat melewatinya.

Dengan menggunakan empat baut M3, saya mengencangkannya dengan kuat.

Setelah saya selesai melakukannya, saya melanjutkan dengan memasang motor brushless kedua ke lambung hovercraft. Di sini sekali lagi saya menggunakan metode yang sama. Pertama, saya melewati kabel melalui bukaan dan kemudian di sisi belakang mengamankan motor menggunakan empat baut M3.

Diagram Sirkuit

Berikutnya adalah elektronik. Komponen elektronik akan ditempatkan di antara lambung dan badan utama hovercraft. Tapi sebelum kita melakukannya, mari kita lihat diagram sirkuit dan lihat bagaimana semuanya harus terhubung.

Jadi, otak dari hovercraft ini adalah papan Arduino. Dengan Arduino kita dapat dengan mudah mengontrol servo serta dua motor brushless menggunakan dua pengontrol kecepatan elektronik atau ESC. Untuk menyalakan motor BLDC, saya akan menggunakan baterai Li-Po 3S yang menyediakan sekitar 11V, dan untuk memberi daya pada Arduino, kita dapat menggunakan 5V teregulasi yang disediakan ESC melalui fitur Sirkuit Penghapus Baterai.

Untuk komunikasi nirkabel saya akan menggunakan modul transceiver NRF24L01 yang jika digunakan dengan antena yang diperkuat dapat memiliki jangkauan stabil hingga 700 meter di ruang terbuka. Pemancar RC yang akan saya gunakan untuk mengendalikan hovercraft, adalah salah satu yang saya buat di salah satu tutorial saya sebelumnya, sehingga Anda dapat memeriksanya jika Anda memerlukan detail lebih lanjut tentangnya. Ada juga tutorial rinci tentang modul NRF24l01, dan cara menggunakan motor brushless menggunakan Arduino. Namun demikian, prinsip kerja dasarnya adalah pemancar mengirimkan data Joystick atau potensiometer ke penerima yang mengontrol kecepatan motor brushless dan posisi servo.

Ada satu detail kecil lagi pada diagram sirkuit ini, dan itu adalah monitor baterai. Saya menambahkan pembagi tegangan sederhana yang terbuat dari dua resistor, yang terhubung langsung ke baterai, dan outputnya masuk ke input analog Arduino. Pembagi tegangan menurunkan 11 volt menjadi sekitar 4 volt yang kemudian dapat diterima oleh pin Arduino 5V. Dengan ini kita dapat memantau tegangan baterai, dan mengatur LED untuk menyala ketika, misalnya, tegangan baterai akan turun di bawah 11 volt.

Anda bisa mendapatkan komponen yang diperlukan untuk Tutorial Arduino ini dari link di bawah ini:

  • Modul Pemancar NRF24L01….
  • NRF24L01 + PA + LNA ………….….
  • Motor Tanpa Kuas ………………….……
  • ESC 30A ……………………………….…..
  • Baterai Li-Po ………………………………..
  • XT60 2 Wanita ke 1 Pria ……….
  • Konektor XT60 …………………………
  • Motor Servo ………………………………..
  • Dewan Arduino …………………………

Jadi, saya mulai menghubungkan komponen seperti yang dijelaskan. Untuk menghubungkan kedua ESC ke satu baterai, saya menggunakan splitter konektor baterai paralel, ketik XT60.

Untuk menambahkan sakelar daya ke proyek, saya menggunakan konektor XT60 lain, di mana saya memotong satu kabel dan menyolder sakelar sakelar di sana. Jadi, satu sisi menuju kabel pemisah Y dan sisi lainnya ke baterai.

Selanjutnya, saya menempatkan ESC ke dalam badan utama dan menjebaknya di antara itu dan lambung hovercraft. Kemudian dengan menggunakan empat baut M3 saya kencangkan kedua bagian tersebut menjadi satu. Dari bukaan bodi atas saya masukkan baterai ke area kokpit.

Selanjutnya, kita perlu menghubungkan komponen ke Arduino dan untuk itu saya menambahkan dua pin header ke Arduino yang akan berfungsi sebagai pin GND dan 5V.

Jadi, setelah saya menghubungkan semuanya ke Arduino, saya melewati antena NRF24L01, LED indikator, dan sakelar daya, melalui penutup atas kokpit.

Kemudian saya hanya perlu memasukkan semuanya ke dalam kokpit. Agak sempit di sini karena saya menggunakan Arduino UNO, dan mungkin saya seharusnya menggunakan dan Arduino Nano sebagai gantinya.

Namun, saya berhasil memasukkan semuanya, juga menempelkan bagian dekorasi kecil ke penutup dan kemudian hanya menjepitnya ke badan kokpit.

Saya melanjutkan dengan memasang sistem kemudi. Pertama, saya menghubungkan tautan kecil ke tanduk servo menggunakan baut M2 dan mur. Kemudian saya memasukkan kemudi pertama di tempatnya dan mengamankannya ke rumah dorong menggunakan kawat logam 2mm yang melewati tubuhnya sehingga kemudi dapat berputar di sekitarnya. Dengan cara yang sama saya memasang kemudi kedua.

Kemudi ini memiliki slot tambahan sehingga kita dapat menghubungkannya ke tautan yang sebelumnya dimasukkan ke servo. Sekali lagi, saya menggunakan baut dan mur M2 untuk mengamankannya. Dan akhirnya, saya menghubungkan kedua kemudi satu sama lain menggunakan tautan lain dan dengan itu sistem kemudi selesai.

Selanjutnya, saya akan menempelkan bagian dekorasi kecil ini di sisi hovercraft. Menggunakan bor, saya membuat lubang dan kemudian mengamankan bagian ke lambung menggunakan sekrup tunggal. Saya menempatkan bagian-bagian ini di kedua sisi dan menurut saya mereka cukup cocok dengan tampilan hovercraft secara keseluruhan.

Ok, selanjutnya saya lanjutkan dengan membuat rok untuk hovercraft ini. Anda bisa melihat di sini penahan rok memiliki lubang di sekelilingnya dan itu untuk menempelkannya ke lambung.

Ada juga slot untuk menempatkan mur dan dengan cara itu, kita akan dapat dengan mudah mengencangkan penahan rok ke lambung menggunakan baut M3. Setelah semua mur terpasang di tempatnya, saya melanjutkan dengan membuat rok yang menggunakan kantong plastik tempat sampah sederhana.

Jadi pertama-tama saya mengoleskan lem AC ke area tengah dudukan, dan menempelkannya ke kantong plastik. Lalu saya mengimbangi perimeter dudukan sekitar 6cm. Saya menandainya di beberapa titik dan kemudian menghubungkannya bersama-sama.

Menggunakan pisau utilitas, saya memotong kantong plastik dengan ukuran yang tepat. Kemudian saya membalik roknya, dan menambahkan beberapa tempat tambahan ke tas yang sebelumnya kami rekatkan menggunakan lem AC.

Selanjutnya bagian luar tas perlu direkatkan ke bagian atas dudukannya. Sekali lagi, saya menggunakan lem AC untuk tujuan itu dan dengan hati-hati mengamankan kantong plastiknya.

Setelah selesai dengan itu, beginilah tampilan roknya.

Selanjutnya, saya membuat lubang melalui kantong plastik tempat baut harus dilewati. Dudukan rok hanya 1mm lebih kecil dari lambung hovercraft, jadi jika digabungkan dengan kantong plastik akan pas dengan lambung kapal. Untuk mengamankan rok ke lambung, saya cukup mengencangkan baut M3 di sekeliling keseluruhan.

Ada satu hal lagi yang harus dilakukan pada roknya, yaitu memotong bagian tengah kantong plastik.

Jadi, dengan setengah dari udara ini akan langsung mengembang rok dan kemudian akan keluar melalui lubang ini, menciptakan gelembung udara tambahan di tengah.

Terakhir, yang harus dilakukan adalah memasang baling-baling ke motor tanpa sikat. Untuk itu, saya menggunakan collet yang disertakan dengan motor brushless. Ini adalah cara yang sangat sederhana dan efektif untuk mengencangkan baling-baling ke poros motor.

Namun, saya kehilangan collet untuk motor saya yang lain, jadi saya harus mencetak versi baling-baling yang berbeda untuk langsung masuk ke poros motor, yaitu 3.15mm. Hasil cetakannya sebenarnya cukup bagus, dipasang dan dipasang dengan sempurna ke motor bahkan tanpa menggunakan lem.

Dan selesai, hovercraft yang dikendalikan radio kami akhirnya selesai.

Namun, yang tersisa di video ini adalah melihat kode Arduino dan cara kerja program.

Kode Hovercraft RC Arduino

Berikut kode untuk proyek RC Hovercraft berbasis Arduino DIY ini:

/*
         Arduino based RC Hovercraft
   == Receiver Code - ESC and Servo Control =
  by Dejan, www.HowToMechatronics.com
  Library: TMRh20/RF24, https://github.com/tmrh20/RF24/
*/
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <Servo.h>

#define led 10

RF24 radio(8, 9);   // nRF24L01 (CE, CSN)
const byte address[6] = "00001";
unsigned long lastReceiveTime = 0;
unsigned long currentTime = 0;

Servo esc1;  // create servo object to control the ESC
Servo esc2;
Servo servo1;

int esc1Value, esc2Value, servo1Value;
// Max size of this struct is 32 bytes - NRF24L01 buffer limit
struct Data_Package {
  byte j1PotX;
  byte j1PotY;
  byte j1Button;
  byte j2PotX;
  byte j2PotY;
  byte j2Button;
  byte pot1;
  byte pot2;
  byte tSwitch1;
  byte tSwitch2;
  byte button1;
  byte button2;
  byte button3;
  byte button4;
};
Data_Package data; //Create a variable with the above structure
void setup() {
  Serial.begin(9600);
  radio.begin();
  radio.openReadingPipe(0, address);
  radio.setAutoAck(false);
  radio.setDataRate(RF24_250KBPS);
  radio.setPALevel(RF24_PA_LOW);
  radio.startListening(); //  Set the module as receiver
  resetData();
  esc1.attach(7);
  esc2.attach(6);
  servo1.attach(5);
  pinMode(led, OUTPUT);
}
void loop() {
  // Check whether we keep receving data, or we have a connection between the two modules
  currentTime = millis();
  if ( currentTime - lastReceiveTime > 1000 ) { // If current time is more then 1 second since we have recived the last data, that means we have lost connection
    resetData(); // If connection is lost, reset the data. It prevents unwanted behavior, for example if a drone jas a throttle up, if we lose connection it can keep flying away if we dont reset the function
  }
  // Check whether there is data to be received
  if (radio.available()) {
    radio.read(&data, sizeof(Data_Package)); // Read the whole data and store it into the 'data' structure
    lastReceiveTime = millis(); // At this moment we have received the data
  }
  // Controlling servos
  servo1Value = map(data.j2PotX, 0, 255, 0, 50);
  servo1.write(servo1Value);

  // Controlling brushless motor with ESC
  // Lift propeller
  esc1Value = map(data.pot1, 0, 255, 1000, 2000); // Map the receiving value form 0 to 255 to 0 1000 to 2000, values used for controlling ESCs
  esc1.writeMicroseconds(esc1Value); // Send the PWM control singal to the ESC
  
  // Thrust propeller
  esc2Value = constrain(data.j1PotY, 130, 255); // Joysticks stays in middle. So we only need values the upper values from 130 to 255
  esc2Value = map(esc2Value, 130, 255, 1000, 2000);
  esc2.writeMicroseconds(esc2Value);

  // Monitor the battery voltage
  int sensorValue = analogRead(A0);
  float voltage = sensorValue * (5.00 / 1023.00) * 3; // Convert the reading values from 5v to suitable 12V i
  Serial.println(voltage);
  // If voltage is below 11V turn on the LED
  if (voltage < 11) {
    digitalWrite(led, HIGH);
  }
  else {
    digitalWrite(led, LOW);
  }
}
void resetData() {
  // Reset the values when there is no radio connection - Set initial default values
  data.j1PotX = 127;
  data.j1PotY = 127;
  data.j2PotX = 127;
  data.j2PotY = 127;
  data.j1Button = 1;
  data.j2Button = 1;
  data.pot1 = 1;
  data.pot2 = 1;
  data.tSwitch1 = 1;
  data.tSwitch2 = 1;
  data.button1 = 1;
  data.button2 = 1;
  data.button3 = 1;
  data.button4 = 1;
}Code language: Arduino (arduino)

Deskripsi: Jadi pertama-tama kita perlu menyertakan perpustakaan RF24 untuk komunikasi radio serta perpustakaan servo untuk mengendalikan baik servo dan motor brushless. Kemudian kita perlu mendefinisikan radio dan objek servo, beberapa variabel yang dibutuhkan untuk program di bawah ini serta struktur variabel yang digunakan untuk menyimpan data yang masuk dari Pemancar RC DIY saya. Untuk detail lebih lanjut bagaimana komunikasi ini bekerja, saya sarankan untuk memeriksa tutorial khusus saya untuk itu.

Di bagian penyiapan, kita perlu menginisialisasi komunikasi radio serta menentukan pin yang terhubung dengan servo dan ESC.

Di bagian loop kita membaca data yang masuk dari pemancar dan menggunakan nilai tersebut untuk mengontrol servo dan motor brushless. Jadi, data masuk joystick yang bervariasi dari 0 hingga 255 diubah menjadi nilai dari 0 hingga 50 dan kami menggunakan nilai ini untuk mengontrol posisi servo.

Dengan metode yang sama kami mengontrol motor brushless menggunakan ESC. Data yang masuk dari 0 hingga 255 diubah menjadi nilai dari 1000 hingga 2000 dan menggunakan fungsi wirteMicroseconds() kami mengirimkan data ini ke ESC sebagai sinyal kontrol.

Untuk memantau tegangan baterai, kita membaca input analog yang berasal dari pembagi tegangan dan dengan beberapa matematika sederhana kita mengubah nilai input menjadi nilai sebenarnya dari tegangan baterai. Jika voltase baterai turun di bawah 11V, kami cukup menyalakan LED indikator.

Dan itu saja. Jika Anda memerlukan beberapa detail lebih lanjut, Anda dapat melihat tutorial lain yang disarankan sehingga Anda dapat sepenuhnya memahami cara kerja semuanya.

Saya harap Anda menikmati tutorial ini dan belajar sesuatu yang baru. Jangan ragu untuk mengajukan pertanyaan apa pun di bagian komentar di bawah dan periksa Koleksi Proyek Arduino saya.


Proses manufaktur

  1. DIY LUMAZOID Arduino Music Visualizer
  2. Voltmeter DIY Menggunakan Arduino dan Smartphone
  3. Pixie:Jam Tangan NeoPixel Berbasis Arduino
  4. Skateboard Realitas Virtual DIY
  5. Otomata Seluler berbasis Arduino dan OLED
  6. DIY Arduino RADIONICS Treatment MMachine
  7. Sistem Kehadiran Berbasis Arduino dan Google Spreadsheet
  8. Simulator Balap Gerak 2D DIY
  9. Smart Energy Monitor Berbasis Arduino
  10. Sistem Keamanan Berbasis Arduino