Isi kandungan:

Membuat Pesawat Rc Dengan 2 Arduino: 5 Langkah
Membuat Pesawat Rc Dengan 2 Arduino: 5 Langkah

Video: Membuat Pesawat Rc Dengan 2 Arduino: 5 Langkah

Video: Membuat Pesawat Rc Dengan 2 Arduino: 5 Langkah
Video: How To Make Simple RC Airplane For Simple Radio Control. DIY RC Aiplane & Arduino RC 2024, Julai
Anonim
Membuat Pesawat Rc Dengan 2 Arduino
Membuat Pesawat Rc Dengan 2 Arduino

Membuat kapal terbang adalah cabaran yang menyeronokkan. Ia menjadi sangat sukar apabila anda menggunakan arduino sebagai ganti pengawal dan penerima prebuild.

Dalam tutorail ini saya akan menunjukkan kepada anda bagaimana saya membuat kapal terbang yang dikendalikan radio dengan dua pesawat arduino.

Langkah 1: Apa yang Anda Perlu

Anda perlu:

- Motor tanpa berus

- Petunjuk untuk motor

- 2 servo

- 1 arduino uno

- 1 arduino nano

- Baling-baling

- 2 modul nrf24l01

- 2 kapasitor 10uf

- Papan busa

- Potensiometer

- Modul kayu bedik

- Bateri 3 amp 7.2 volt niMH

Langkah 2: Kawalan Radio

Radio Kawalan
Radio Kawalan
Radio Kawalan
Radio Kawalan

Saya menggunakan nrf24l01 untuk mengawal pesawat. Modul ini mempunyai jarak 1 km. Anda dapat melihat cara menyambungkan nrf24l01 dalam skema yang ditunjukkan di atas. Anda juga perlu memateri kapasitor antara tanah dan 3.3 volt untuk memperoleh kemungkinan penurunan voltan.

Langkah seterusnya adalah mendapatkan input dari pengawal anda. Saya menggunakan kayu bedik untuk kawalan kemudi dan lif dan potensiometer untuk kawalan motor. Anda mesti menyambungkan potensiometer ke pin A0, saya menyambungkan kayu bedik ke pin A1 dan A2.

Sekarang kita perlu membuat penerima. Saya menggunakan nano arduino untuk penerima kerana lebih kecil. Anda juga harus menyambungkan nrf24l01 ke adruino ini. Selepas itu anda perlu menyambungkan servo dan esc (pengawal kelajuan elektronik untuk motor) ke arduino. Saya menyambung ke servo ke pin D4 dan D5, esc dihubungkan ke pin D9.

Ini adalah kod yang saya gunakan untuk pemancar:

#sertakan #sertakan #sertakan

Radio RF24 (7, 8);

alamat bait const [6] = "00001";

batal persediaan () {

radio.begin (); radio.openWritingPipe (alamat); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); radio.stopListening (); Serial.begin (9600); }

gelung kosong () {

int s = analogRead (0); int x = analogRead (1); int y = analogRead (2); String str = String (s); str + = '|' + Rentetan (x) + '|' + Rentetan (y); Serial.println (str); teks const char [20]; str.toCharArray (teks, 20); Serial.println (teks); radio.write (& teks, sizeof (teks)); kelewatan (10);

}

dan inilah kod untuk penerima:

#sertakan #sertakan #sertakan #sertakan

Servo esc;

Servo sx; Servo sy; Radio RF24 (7, 8);

alamat bait const [6] = "00001";

batal persediaan () {

// letakkan kod persediaan anda di sini, untuk dijalankan sekali: radio.begin (); radio.openReadingPipe (0, alamat); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); esc.attach (9); sx.attach (4); sy.attach (5); esc.writeMikrodetik (1000); // memulakan isyarat ke 1000 radio.startListening (); Serial.begin (9600); }

gelung kosong () {

teks char [32] = ""; jika (radio.available ()) {radio.read (& text, sizeof (text)); Rentetan transData = Rentetan (teks); //Serial.println(getValue(transData, '|', 1));

int s = getValue (transData, '|', 0).toInt ();

s = peta (s, 0, 1023, 1000, 2000); // pemetaan val ke minimum dan maksimum (Tukar jika diperlukan) Serial.println (transData); esc.writeMikrodetik; // menggunakan val sebagai isyarat untuk esc int sxVal = getValue (transData, '|', 1).toInt (); int syVal = getValue (transData, '|', 2).toInt ();

sx.write (peta (sxVal, 0, 1023, 0, 180));

sy.write (peta (syVal, 0, 1023, 0, 180));

}

}

String getValue (String data, char separator, int index)

{int ditemui = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

untuk (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == pemisah || i == maxIndex) {found ++; strIndex [0] = strIndex [1] +1; strIndex [1] = (i == maxIndex)? i + 1: i; }}

pulangan dijumpai> indeks? data.substring (strIndex [0], strIndex [1]): "";

}

Langkah 3: Fusualage dan Stabalizers

Fusualage dan Stabalizers
Fusualage dan Stabalizers

Setelah elektronik anda siap, Anda memerlukan pesawat untuk memasukkan elektronik. Saya menggunakan papan kayu kerana ringan dan agak kuat. Fusualge hanyalah segi empat tepat yang semakin nipis ke arah ekor. Fusualge tidak begitu penting untuk aerodinamik. Perkara yang paling penting adalah bahawa segala-galanya akan muat di dalamnya dan juga menyimpannya sekecil dan ringan.

Stabalizer mendatar dan menegak mudah dibuat. Yang penting ialah stabalizer anda betul-betul lurus. Stabalizer bertanggungjawab untuk memastikan pesawat tetap stabil. Apabila penstabil anda tidak lurus, pesawat anda akan tidak stabil.

Langkah 4: Sayap

Sayap
Sayap

Sayap mungkin merupakan perkara yang paling mustahak, anda perlu membuat pelopor udara untuk menghasilkan lif. Dalam gambar di atas anda dapat melihat bagaimana saya membuat pesawat udara saya.

Perkara yang paling penting ialah pusat graviti pesawat berada di sekitar titik paling tinggi dari udara. dengan cara ini pesawat akan stabil.

Langkah 5: Menggabungkan Semuanya

Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya

Setelah semua bahagian selesai, Kita perlu menyatukan semuanya.

Keperluan servo dihubungkan dengan stablaizers. ini boleh dilakukan dengan batang kawalan (lihat gambar di atas)

Motor perlu diletakkan di atas sekeping busa dan dilekatkan di depan pesawat (atau gunakan tali elastik supaya anda dapat melepasnya bila perlu).

anda memerlukan baling-baling untuk memasang motor, ukuran baling-baling ini bergantung pada motor. Sangat rumit untuk mengira ukuran optimum. Tetapi peraturan umum adalah bahawa semakin kuat motor, semakin besar baling-baling.

Untuk bateri disyorkan untuk menggunakan bateri lipo. namun, bateri ini memerlukan pengecas khas jika anda tidak mahu ia meletup. Itulah sebabnya saya menggunakan bateri nimh, ini lebih berat tetapi lebih mudah dan lebih murah untuk digunakan.

Disyorkan: