Përmbajtje:

Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino: 9 hapa
Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino: 9 hapa

Video: Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino: 9 hapa

Video: Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino: 9 hapa
Video: Leap Motion SDK 2024, Nëntor
Anonim
Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino
Udhëzuesi që do të doja të kisha në ndërtimin e një droni Arduino

Ky dokument është një lloj dokumentacioni "Si të udhëzosh"?

Për të bërë këtë projekt doja të merrja një ide se çfarë është në të vërtetë një dron, në rastin tim një kuadopter, kështu që fillova të bëj disa kërkime. Shikova shumë video në YouTube, lexova një mori artikujsh dhe faqe të padukshme dhe kjo është ajo që mora.

Në thelb ju mund të ndani një dron në dy pjesë. Unë e quaj atë "Fizike" dhe "Kontrollues". Fiziku është në thelb gjithçka që ka të bëjë me mekanikën që e bën dronin të fluturojë. Këto janë gjëra si motori, korniza, bateria, helikat dhe çdo gjë tjetër që fizikisht i jep dronit aftësinë për të fluturuar.

Kontrolluesi është në thelb kontrolluesi i fluturimit. Ajo që kontrollon fiziken në mënyrë që droni të mund të fluturojë si një njësi e tërë pa rënë. Në thelb mikrokontrolluesi, softueri në të dhe sensorët që e ndihmojnë atë të triangulojë kushinetat e tij. Pra, në përgjithësi për të pasur një dron, më duhej një Kontrollues dhe një bandë pjesësh fizike që kontrolluesi të ‘kontrollonte’.

Furnizimet

Buxheti për projektin: 250 dollarë

Afati kohor: 2 javë

Gjërat për të blerë:

  • Korniza Fizike 20 dollarë
  • Blades $ 0 (Vjen me kornizë)
  • Paketa e baterisë 25 dollarë
  • ESC (Kontrollues elektronikë të shpejtësisë) $ 0 (Vjen me motorë)
  • Motorët 70 dollarë

Kontrolluesi i fluturimit

  • Arduino nano 20 dollarë
  • Kabllo USB Arduino 2 dollarë
  • Moduli Bluetooth (HC-05) 8 dollarë
  • Rezistorë 3mm LED dhe 330 Ohm dhe tela 13 dollarë
  • GY-87 (Përshpejtues, Xhiroskop) 5 dollarë
  • Bordi Prototip 10 dollarë
  • Tituj meshkuj dhe femra 5 dollarë

Tjetër

  • Komplet bashkimi 10 dollarë
  • Multimetër 20 dollarë

Doja të shijoja ndërtimin e këtij projekti si Inxhinier, kështu që bleva disa gjëra të tjera që nuk më duheshin.

Gjithsej: 208 dollarë

Hapi 1: Përvoja ime fillestare

Pasi bleva të gjithë komponentët e mi, i bashkova të gjitha dhe pastaj u përpoqa të lëshoja dronin, duke përdorur Multiwii (shkoni te softueri që përdorin shumë komunitete të dronëve DIY), megjithatë shpejt kuptova se nuk e kuptova plotësisht atë që po bënte sepse kishte shumë gabime dhe nuk kisha asnjë ide se si t'i rregulloja ato.

Pas kësaj vendosa ta ndaj dronin dhe ta kuptoj secilin komponent pjesë për pjesë dhe ta rindërtoj atë në një mënyrë që të kuptoj plotësisht gjithçka që po ndodhte.

Në pjesët në vijim do të kaloj procesin e bashkimit të enigmës së bashku. Para kësaj, le të marrim një përmbledhje të shpejtë.

Fizike

Për atë fizik, ne duhet të kemi: kornizën, helikat, baterinë dhe escs. Këto do të ishin mjaft të lehta për tu bashkuar. Për të kuptuar këto pjesë dhe cilat duhet të merrni mund të vizitoni këtë lidhje. Ai shpjegon atë që duhet të dini për blerjen e secilës prej pjesëve që kam renditur. Shikoni gjithashtu këtë video në Youtube. Do t'ju ndihmojë nëse jeni të mbërthyer duke i ndarë pjesët së bashku.

Hapi 2: Këshilla për ndarjen dhe rregullimin e pjesëve fizike

Këshilla për ndarjen dhe rregullimin e pjesëve fizike
Këshilla për ndarjen dhe rregullimin e pjesëve fizike

Propellers dhe Motors

  • Për të kontrolluar nëse helikat tuaja janë në orientimin e duhur (Përmbysur apo jo), kur i rrotulloni në drejtimin e treguar nga motorët (shumica e motorëve kanë shigjeta që tregojnë se si duhet të rrotullohen), duhet të ndjeni një fllad nën helikat dhe jo më lart Me
  • Vidhat në helikat e kundërta duhet të kenë të njëjtën ngjyrë.
  • Ngjyra e helikave ngjitur duhet të jetë e njëjtë.
  • Gjithashtu sigurohuni që i keni rregulluar motorët në atë mënyrë që të rrotullohen ashtu si në imazhin e mësipërm.
  • Nëse jeni duke u përpjekur të ktheni drejtimin e një motori, thjesht ndërroni telat në skajet e kundërta. Kjo do të ndryshojë drejtimin e motorit.

Bateria dhe Fuqia

  • Nëse për ndonjë arsye gjërat po ndezin dhe ju nuk mund ta kuptoni pse, ka shumë të ngjarë sepse keni shkëmbyer pozitive dhe negative.
  • Nëse nuk jeni të sigurt kur të ngarkoni bateritë tuaja, mund të përdorni një voltmetër për të kontrolluar tensionin. Nëse është më e ulët se sa specifikimet në bateri thonë, atëherë duhet të karikohet. Shikoni këtë lidhje për karikimin e baterive tuaja.
  • Shumica e baterive LIPO nuk vijnë me karikues baterish. Ju i blini ato veç e veç.

Hapi 3: Kontrolluesi Arduino

Kontrolluesi Arduino
Kontrolluesi Arduino

Kjo është pa dyshim pjesa më e vështirë e të gjithë këtij projekti. Veryshtë shumë e lehtë të hedhësh në erë komponentët dhe korrigjimi i gabimeve mund të jetë jashtëzakonisht zhgënjyes nëse nuk e dini se çfarë po bëni. Gjithashtu në këtë projekt kam kontrolluar dronin tim duke përdorur bluetooth dhe një aplikacion që do t'ju tregoj se si të ndërtoni. Kjo e bëri projektin veçanërisht më të vështirë sepse 99% e mësimeve atje përdorin kontrollorë radio (kjo nuk është një fakt lol), por mos u shqetësoni se kam kaluar zhgënjimin për ju.

Këshilla para se të filloni këtë udhëtim

  • Përdorni një tabelë para se të finalizoni pajisjen tuaj në një PCB. Kjo ju lejon të bëni ndryshime me lehtësi.
  • Nëse e keni testuar një komponent gjerësisht dhe nuk po funksionon, ndoshta nuk po funksionon!
  • Shikoni tensionet që mund të përballojë një pajisje para se ta lidhni!

    • Arduino mund të trajtojë 6 deri në 20V, por përpiquni ta mbyllni në 12V në mënyrë që të mos e hidhni në erë. Mund të lexoni më shumë rreth specifikimeve të tij këtu.
    • HC-05 mund të trajtojë deri në 5V, por disa kunja punojnë në 3.3V, prandaj kujdes për këtë. Ne do të flasim për të më vonë.
    • IMU (GY-521, MPU-6050) gjithashtu punon në 5V.
  • Ne do të përdorim RemoteXY për të ndërtuar aplikacionin tonë. Nëse doni ta ndërtoni atë në një pajisje iOS, duhet të përdorni një modul të ndryshëm bluetooth (The HM-10). Mund të mësoni më shumë për këtë në faqen e internetit të RemoteXY.

Shpresoj se i keni lexuar këshillat. Tani le të testojmë secilin komponent që do të jetë pjesë e kontrolluesit veç e veç.

Hapi 4: MPU-6050

MPU-6050
MPU-6050

Kjo pajisje ka një xhiroskop dhe një akselerometër, kështu që në thelb ju tregon nxitimin në një drejtim (X, Y, Z) dhe nxitimin këndor përgjatë atyre drejtimeve.

Për ta provuar këtë, ne mund të përdorim mësimin për këtë, mund ta përdorim këtë udhëzues në faqen e internetit të Arduino. Nëse funksionon, duhet të merrni një rrjedhë të vlerave të përshpejtuesit dhe xhiroskopit që ndryshojnë ndërsa anoni, rrotulloni dhe përshpejtoni konfigurimin. Gjithashtu, përpiquni të ndryshoni dhe manipuloni kodin në mënyrë që të dini se çfarë po ndodh.

Hapi 5: Moduli Bluetooth HC-05

Moduli Bluetooth HC-05
Moduli Bluetooth HC-05
Moduli Bluetooth HC-05
Moduli Bluetooth HC-05
Moduli Bluetooth HC-05
Moduli Bluetooth HC-05

Ju nuk keni pse ta bëni këtë pjesë, por është e rëndësishme të jeni në gjendje të shkoni në modalitetin AT (modaliteti i cilësimeve) pasi ka shumë të ngjarë që do të duhet të ndryshoni një nga cilësimet e modulit. Kjo ishte një nga pjesët më zhgënjyese të këtij projekti. Kam bërë kaq shumë kërkime për të kuptuar se si ta fus modulin tim në modalitetin AT, sepse pajisja ime nuk po i përgjigjej komandave të mia. M’u deshën 2 ditë për të arritur në përfundimin se moduli im ishte prishur. Unë porosita për një tjetër dhe funksionoi. Shikoni këtë tutorial për të hyrë në modalitetin AT.

HC-05 vjen në lloje të ndryshme, ka disa me butona dhe disa pa dhe të gjitha llojet e ndryshoreve të projektimit. Një nga këto që është konstante edhe pse është se ata të gjithë kanë një "Pin 34". Shikoni këtë tutorial.

Gjërat që duhet të dini

  • Për të kaluar në modalitetin AT, thjesht mbani 5V për të fiksuar 34 të modulit bluetooth para se të lidhni energjinë me të.
  • Lidhni një ndarës të mundshëm me kunjin RX të modulit pasi punon në 3.3V. Mund ta përdorni akoma në 5V, por mund të skuqet ai kunj nëse diçka nuk shkon.
  • Nëse përdorni Pin 34 (në vend të butonit ose ndonjë mënyrë tjetër që keni gjetur në internet), moduli do të vendosë normën e baud -it të bluetooth -it në 38400. Kjo është arsyeja pse në lidhjen për tutorialin e mësipërm ka një linjë në kodin që thotë:

BTSerial.begin (38400); // Shpejtësia e paracaktuar HC-05 në komandën AT më shumë

Nëse moduli ende nuk po përgjigjet me "OK", provoni të ndërroni kunjat tx dhe rx. Ajo duhet të jetë:

Bluetooth => Arduino

RXD => TX1

TDX => RX0

Nëse kjo ende nuk funksionon, zgjidhni ndryshoni kunjat në kod në kunjat e tjera Arduino. Testoni, nëse nuk funksionon ndërroni këmbët tx dhe rx, pastaj provoni përsëri

SoftwareSerial BTSerial (10, 11); // RX | TX

Ndryshoni vijën e mësipërme. Mund të provoni RX = 2, TX = 3 ose ndonjë kombinim tjetër të vlefshëm. Ju mund të shikoni numrat e kunjave Arduino në imazhin e mësipërm.

Hapi 6: Lidhja e pjesëve

Lidhja e Pjesëve
Lidhja e Pjesëve

Tani që jemi të sigurt se gjithçka funksionon, është koha të fillojmë t'i bashkojmë ato. Ju mund t'i lidhni pjesët ashtu siç tregohet në qark. E mora atë nga Electronoobs. Ai me të vërtetë më ndihmoi me këtë projekt. Shikoni versionin e tij të projektit këtu. Nëse jeni duke ndjekur këtë tutorial, nuk keni pse të shqetësoheni për lidhjet e marrësit: input_Yaw, input_Pitch, etj. E gjithë kjo do të trajtohet me bluetooth. Gjithashtu, lidhni bluetooth -in ashtu siç bëmë në seksionin e mëparshëm. Kunjat e mia tx dhe rx më krijuan pak telashe, kështu që unë përdorja Arduino -n:

RX si 2, dhe TX si 3, në vend të kunjave normalë. Tjetra, ne do të shkruajmë një aplikacion të thjeshtë që do të vazhdojmë ta përmirësojmë derisa të kemi produktin përfundimtar.

Hapi 7: Bukuria e RemoteXY

Bukuria e telekomandës
Bukuria e telekomandës

Për kohën më të gjatë po mendoja një mënyrë të thjeshtë për të ndërtuar një aplikacion të përdorshëm në distancë që do të më lejonte të kontrolloja dronin. Shumica e njerëzve përdorin MIT App Inventor, por UI nuk është aq e bukur sa do të doja dhe gjithashtu nuk jam një tifoz i programimit piktural. Mund ta kisha projektuar duke përdorur Android Studio, por kjo do të ishte shumë punë. Unë u emocionova jashtëzakonisht kur gjeta një mësim duke përdorur RemoteXY. Këtu është lidhja me faqen e internetit. Extremelyshtë jashtëzakonisht e lehtë për t'u përdorur dhe dokumentacioni është shumë i mirë. Ne do të krijojmë një UI të thjeshtë për dronin tonë. Ju mund ta personalizoni tuajin ashtu si ju pëlqen. Vetëm sigurohuni që e dini se çfarë po bëni. Ndiqni udhëzimet këtu.

Pasi ta keni bërë këtë, ne do të redaktojmë kodin në mënyrë që të mund të ndryshojmë mbytjen në helikopterin tonë. Shtoni linjat që kanë gjërat / **** që duhet të bëni dhe pse *** / në kodin tuaj.

Nëse nuk është duke u përpiluar, sigurohuni që keni shkarkuar bibliotekën. Hapni gjithashtu një skicë shembull dhe krahasoni atë që ka ajo që juaja nuk ka.

/////////////////////////////////////////////////// RemoteXY përfshijnë librari // /////////////////////////////////////////////

// RemoteXY zgjidhni mënyrën e lidhjes dhe përfshini bibliotekën

#përcakto REMOTEXY_MODE_HC05_SOFTSERIAL

#përfshi #përfshi #përfshi

// Cilësimet e lidhjes RemoteXY

#percakto REMOTEXY_SERIAL_RX 2 #percakto REMOTEXY_SERIAL_TX 3 #percakto REMOTEXY_SERIAL_SPEED 9600

// Helikat

Servo L_F_prop; Servo L_B_prop; Servo R_F_prop; Servo R_B_prop;

// Konfiguro RemoteXY

#pragma pack (shtytje, 1) uint8_t RemoteXY_CONF = {255, 3, 0, 0, 0, 61, 0, 8, 13, 0, 5, 0, 49, 15, 43, 43, 2, 26, 31, 4, 0, 12, 11, 8, 47, 2, 26, 129, 0, 11, 8, 11, 3, 17, 84, 104, 114, 111, 116, 116, 108, 101, 0, 129, 0, 66, 10, 7, 3, 17, 80, 105, 116, 99, 104, 0, 129, 0, 41, 34, 6, 3, 17, 82, 111, 108, 108, 0}; // kjo strukturë përcakton të gjitha ndryshoret e strukturës tuaj të ndërfaqes së kontrollit {

// ndryshore hyrëse

int8_t Xhojstik_x; // -100..100 pozicioni i xhojstikut të koordinuar int8_t Joystick_y; // -100..100 pozicioni i koordinatave të levës int8_t ThrottleSlider; // 0..100 pozicioni i rrëshqitësit

// ndryshore tjetër

uint8_t connect_flag; // = 1 nëse tela është e lidhur, tjetër = 0

} RemoteXY;

#pragma paketë (pop)

/////////////////////////////////////////////

// END RemoteXY përfshijnë // ///////////////////////////////////////// /

/********** Shtoni këtë rresht për të mbajtur vlerën e mbytjes **************/

int input_THROTTLE;

void setup () {

RemoteXY_Init ();

/********** Bashkangjitni motorët tek kunjat Ndryshoni vlerat që të përshtaten me tuajat **************/

L_F_prop.tash (4); // motori i përparmë i majtë

L_B_prop.tash (5); // motori i pasmë i majtë R_F_prop.attach (7); // motori i përparmë i djathtë R_B_prop.attach (6); // motori mbrapa i djathtë

/************* Parandalimi i hyrjes së esc në modalitetin e programimit ********************

L_F_prop.writeMikrosekonda (1000); L_B_prop.writeMikrosekonda (1000); R_F_prop.writeMikrosekonda (1000); R_B_prop.writeMikrosekonda (1000); vonesa (1000);

}

lak void () {

RemoteXY_Handler ();

/****** Hartoni vlerën e mbytjes që merrni nga aplikacioni në 1000 dhe 2000 të cilat janë vlerat që shumica e ESC -ve veprojnë në *********/

input_THROTTLE = hartë (RemoteXY. ThrottleSlider, 0, 100, 1000, 2000);

L_F_prop.writeMikrosekonda (input_THROTTLE);

L_B_prop.writeMikrosekonda (input_THROTTLE); R_F_prop.writeMikrosekonda (input_THROTTLE); R_B_prop.writeMikrosekonda (input_THROTTLE); }

Hapi 8: Testimi

Nëse keni bërë gjithçka siç duhet, duhet të jeni në gjendje të provoni helikopterin tuaj duke rrëshqitur mbytjen lart e poshtë. Sigurohuni që ta bëni këtë jashtë. Gjithashtu mos i mbani helikat ndezur sepse kjo do të bëjë që helikopteri të hidhet. Ne ende nuk e kemi shkruar kodin për ta balancuar atë, kështu që do të ishte një IDE E KEQ P TOR T T E TESTUAR KITHT PRO ME PROPELLERST! Unë e bëra këtë vetëm sepse jam.

Demonstrimi është vetëm për të treguar se ne duhet të jemi në gjendje të kontrollojmë mbytjen nga aplikacioni. Do të vini re se motorët po belbëzojnë. Kjo ndodh sepse ESC -të nuk janë kalibruar. Për ta bërë këtë, hidhini një sy udhëzimeve në këtë faqe Github. Lexoni udhëzimet, hapni skedarin ESC-Calibration.ino dhe ndiqni ato udhëzime. Nëse doni të kuptoni se çfarë po ndodh, shikoni këtë tutorial nga Electronoobs.

Ndërsa jeni duke ekzekutuar programin sigurohuni që të lidhni dronin me tela pasi do të kalojë në mbytje të plotë. Gjithashtu sigurohuni që helikat të mos jenë të ndezura. Unë e lashë timen vetëm sepse jam gjysmë i çmendur. MOS I LENI PROPELLT TUAJ !!! Ky demonstrim tregohet në videon e dytë.

Hapi 9: Unë jam duke punuar në Kodin. Do të Përfundojë Udhëzuesin në Pak Ditë

Thjesht doja të shtoja se nëse jeni duke përdorur këtë tutorial dhe po më prisni mua, unë jam ende duke punuar në të. Vetëm gjëra të tjera në jetën time kanë dalë në të cilat po punoj gjithashtu, por mos u shqetësoni do t'i postoj së shpejti. Le të themi më së voni deri më 10 gusht 2019.

Përditësimi i 10 gushtit: Nuk doja t'ju linte të varur. Fatkeqësisht, nuk kam pasur kohë për të punuar në projekt javën e kaluar. Kanë qenë shumë të zënë me gjëra të tjera. Unë nuk dua t'ju çoj tutje. Shpresoj se do të përfundoj udhëzimet në të ardhmen e afërt. Nëse keni ndonjë pyetje ose keni nevojë për ndihmë, mund të shtoni një koment më poshtë dhe unë do t'ju kthehem.

Recommended: