Sadržaj:
- Korak 1: Šta će vam trebati
- Korak 2: Radio kontrole
- Korak 3: Fusualage i stabilizatori
- Korak 4: Krila
- Korak 5: Stavljanje svega zajedno
Video: Stvaranje Rc ravnine s 2 Arduina: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Napraviti avion zabavan je izazov. To postaje posebno izazovno kada umjesto arbuina koristite unaprijed izgrađeni kontroler i prijemnik.
U ovom tutorialu pokazat ću vam kako sam radio o radio -upravljanom avionu sa dva arduina.
Korak 1: Šta će vam trebati
Trebat će vam:
- Motor bez četkica
- Esc za motor
- 2 servo motora
- 1 arduino uno
- 1 arduino nano
- Propeler
- 2 nrf24l01 modula
- 2 10uf kondenzatora
- Tabla spužve
- Potenciometar
- Modul džojstika
- NiMH baterija od 3 amp 7,2 volta
Korak 2: Radio kontrole
Koristio sam nrf24l01 za kontrolu aviona. Domet ovog modula je 1 km. Možete vidjeti kako spojiti nrf24l01 na gornjoj shemi. Također morate lemiti kondenzator između mase i 3,3 volta kako biste uzeli u obzir potencijalne padove napona.
Sljedeći korak je unos podataka sa vašeg kontrolera. Koristio sam joystick za upravljanje kormilom i liftom i potenciometar za upravljanje motorom. Morate spojiti potenciometar na pin A0, ja sam spojio joystick na pin A1 i A2.
Sada moramo napraviti prijemnik. Koristio sam arduino nano za prijemnik jer je manji. Morate spojiti nrf24l01 i na ovaj adruino. Nakon toga morate spojiti servosisteme i esc (elektronički regulator brzine za motor) na arduino. Spojio sam se na servo na pin D4 i D5, esc je bio spojen na pin D9.
Ovo je kod koji sam koristio za odašiljač:
#include #include #include
Radio RF24 (7, 8);
const bajt adresa [6] = "00001";
void setup () {
radio.begin (); radio.openWritingPipe (adresa); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); radio.stopListening (); Serial.begin (9600); }
void loop () {{100} {101}
int s = analogRead (0); int x = analogRead (1); int y = analogRead (2); String str = String (s); str += '|' + Niz (x) + '|' + Niz (y); Serial.println (str); const char tekst [20]; str.toCharArray (tekst, 20); Serial.println (tekst); radio.write (& tekst, veličina (tekst)); kašnjenje (10);
}
i evo koda za prijemnik:
#include #include #include #include
Servo esc;
Servo sx; Servo sy; Radio RF24 (7, 8);
const bajt adresa [6] = "00001";
void setup () {
// ovdje postavite svoj kôd za postavljanje, da biste ga jednom pokrenuli: radio.begin (); radio.openReadingPipe (0, adresa); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); esc.attach (9); sx.attach (4); sy.attach (5); esc.writeMicroseconds (1000); // inicijalizira signal na 1000 radio.startListening (); Serial.begin (9600); }
void loop () {{100} {101}
char text [32] = ""; if (radio.available ()) {radio.read (& text, sizeof (text)); String transData = String (tekst); //Serial.println(getValue(transData, '|', 1));
int s = getValue (transData, '|', 0).toInt ();
s = karta (s, 0, 1023, 1000, 2000); // preslikavanje val na minimum i maksimum (Promijeni ako je potrebno) Serial.println (transData); esc.writeMicroseconds (s); // koristeći val kao signal za esc int sxVal = getValue (transData, '|', 1).toInt (); int syVal = getValue (transData, '|', 2).toInt ();
sx.write (mapa (sxVal, 0, 1023, 0, 180));
sy.write (mapa (syVal, 0, 1023, 0, 180));
}
}
String getValue (Podaci niza, separator znakova, int indeks)
{int found = 0; int strIndex = {0, -1}; int maxIndex = data.length ()-1;
for (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == separator || i == maxIndex) {found ++; strIndex [0] = strIndex [1] +1; strIndex [1] = (i == maxIndex)? i+1: i; }}
povratak pronađen> indeks? data.substring (strIndex [0], strIndex [1]): "";
}
Korak 3: Fusualage i stabilizatori
Sad kad ste postavili elektroniku, potreban vam je avion za umetanje elektronike. Koristio sam foamboard jer je lagan i relativno jak. Fusualge je samo rentang koji se tanji prema repu. Fusualge nije toliko važan za aerodinamiku. Najvažnije je da će se sve uklopiti u njega, a istovremeno ga držati što je moguće manjim i svjetlijim.
Horizontalni i vertikalni stabilizator je prilično jednostavan za izradu. Jedina važna stvar je da su vaši stabilizatori savršeno ravni. Stabalizatori su odgovorni za održavanje stabilnosti aviona. Kada vaši stabilizatori nisu ravni, vaš avion će biti nestabilan.
Korak 4: Krila
Krila su vjerojatno najvažnija stvar, morate stvoriti profil za generiranje dizanja. Na gornjoj slici možete vidjeti kako sam napravio svoj profil.
Najvažnije je da se težište aviona nalazi oko najviše točke zračnog profila. na ovaj način avion će biti stabilan.
Korak 5: Stavljanje svega zajedno
Sada kada smo završili sve dijelove, moramo sve spojiti.
Servo treba biti povezan sa stabilizatorima. to se može učiniti pomoću upravljačkih šipki (vidi gornju sliku)
Motor je potrebno staviti na komad pjene i zalijepiti ispred ravnine (ili upotrijebiti elastične trake kako biste ga mogli ukloniti po potrebi).
za postavljanje motora potreban vam je propeler, veličina ovog propelera ovisi o motoru. Izračunavanje optimalne veličine vrlo je komplicirano. Ali opće je pravilo da što je motor jači, to propeler može biti veći.
Za bateriju se preporučuje upotreba lipo baterija. međutim, ovim baterijama je potreban poseban punjač ako ne želite da eksplodiraju. Zato sam koristio nimh baterije, one su teže, ali lakše i jeftinije za upotrebu.
Preporučuje se:
Ponovna upotreba hladnjaka za računalo za stvaranje tranzistorskog hladnjaka: 7 koraka
Ponovna upotreba hladnjaka za računalo za stvaranje tranzistorskog hladnjaka: Prije nekog vremena kupio sam neke Raspberry Pi 3 da se igram. Kako dolaze bez hladnjaka, bio sam na tržištu za neke. Napravio sam brzo Google pretraživanje i naišao na ovaj Instructable (Raspberry Pi Heat Sink) - to je bilo nakon odbacivanja ideje o
Objektno orijentirano programiranje: Stvaranje objekata Učenje/Metoda poučavanja/tehnika korištenjem Shape Puncher -a: 5 koraka
Objektno orijentirano programiranje: Stvaranje objekata Učenje/Nastavna metoda/tehnika pomoću Shape Puncher-a: Metoda učenja/poučavanja za studente koji tek počinju s objektno orijentiranim programiranjem. Ovo je način da im se omogući vizualizacija i pregled procesa stvaranja objekata iz klasa.Dijelovi:1. EkTools 2-inčni veliki udarac; čvrsti oblici su najbolji.2. Komad papira ili c
Programiranje Arduina pomoću drugog Arduina za prikaz teksta koji se pomiče bez biblioteke: 5 koraka
Programiranje Arduina pomoću drugog Arduina za prikaz pomicanja teksta bez biblioteke: Sony Spresense ili Arduino Uno nisu toliko skupi i ne zahtijevaju puno energije. Međutim, ako vaš projekt ima ograničenje snage, prostora ili čak proračuna, razmislite o upotrebi Arduino Pro Mini. Za razliku od Arduino Pro Micro, Arduino Pro Mi
Infracrveni termometar na bazi Arduina - IR termometar na bazi Arduina: 4 koraka
Infracrveni termometar na bazi Arduina | Infracrveni termometar pomoću Arduina: Zdravo momci u ovim uputama napravit ćemo beskontaktni termometar pomoću arduina. Budući da je ponekad temperatura tekućine/krutine previsoka ili preniska, a onda je teško stupiti u kontakt s njom i pročitati je temperatura u tom prizoru
Napravite Rc brod od mrtve RC ravnine: 8 koraka
Napravite Rc brod od mrtvog RC aviona: ovo je moje super uputstvo koje će vam pokazati kako od starog usranog i olupljenog aviona s mnogih letova pretvoriti u novi hladni rc čamac koji može ići po ledenoj vodi i tvrdom drvu podovi me ne shvataju krivo, potrebno je vrijeme, ali može proći za par sati