Përmbajtje:

Arduino Drone Me GPS: 16 hapa
Arduino Drone Me GPS: 16 hapa

Video: Arduino Drone Me GPS: 16 hapa

Video: Arduino Drone Me GPS: 16 hapa
Video: යකෝ පැන්නා නේද කන්දෙන් පල්ලට මේකී 😬😮😳 2024, Nëntor
Anonim
Dron Arduino me GPS
Dron Arduino me GPS

Ne u përpoqëm të ndërtonim një dron quadcopter me shikim të parë (FPV) të kontrolluar dhe të stabilizuar, të pajisur me GPS me Arduino me kthimin në shtëpi, të shkonim në koordinim dhe të mbanim funksionet GPS. Ne supozuam me naivitet se kombinimi i programeve ekzistuese Arduino dhe instalimet elektrike për një kuadopter pa GPS me ato të një sistemi transmetimi GPS do të ishte relativisht i drejtpërdrejtë dhe se mund të kalonim shpejt në detyrat më komplekse të programimit. Sidoqoftë, një shumë befasuese duhej të ndryshonte në mënyrë që të ndërthurnin këto dy projekte, dhe kështu ne përfunduam duke bërë një kuadopter FPV të mundësuar nga GPS, pa asnjë funksion të shtuar.

Ne kemi përfshirë udhëzime se si të përsërisim produktin tonë nëse jeni të kënaqur me kuadopterin më të kufizuar.

Ne gjithashtu kemi përfshirë të gjitha hapat që kemi ndërmarrë në rrugën drejt një kuadopteri më autonom. Nëse ndiheni rehat duke gërmuar thellë në Arduino ose tashmë keni shumë përvojë në Arduino dhe dëshironi të merrni pikën tonë të ndaljes si një pikë kërcimi për eksplorimin tuaj, atëherë ky udhëzues është gjithashtu për ju.

Ky është një projekt i mrekullueshëm për të mësuar diçka rreth ndërtimit dhe kodimit për Arduino pa marrë parasysh sa përvojë keni. Gjithashtu, me shpresë do të largoheni me një dron.

Konfigurimi është si më poshtë:

Në listën e materialeve, pjesët pa yll kërkohen për të dy golat.

Pjesët me një yll kërkohen vetëm për projektin e papërfunduar të një kuadopteri më autonom.

Pjesët me dy yje kërkohen vetëm për kuadopterin më të kufizuar.

Hapat e zakonshëm për të dy projektet nuk kanë shënues pas titullit

Hapat e kërkuar vetëm për kuadopterin më të kufizuar jo-autonom kanë "(Uno)" pas titullit.

Hapat e kërkuar vetëm për kuadopterin autonom në progres kanë "(Mega)" pas titullit.

Për të ndërtuar kuadratin me bazë Uno, ndiqni hapat me radhë, duke kapërcyer çdo hap me "(Mega)" pas titullit.

Për të punuar në kuadratin e bazuar në Mega, ndiqni hapat me radhë, duke kapërcyer çdo hap me "(Uno)" pas titullit.

Hapi 1: Mblidhni materiale

Përbërësit:

1) Një kornizë kuadopter (korniza e saktë ka të ngjarë të mos ketë rëndësi) (15 dollarë)

2) Katër motorë 2830, 900kV pa furça (ose të ngjashme), dhe katër pako shtesë për montim (4x $ 6 + 4x $ 4 = 40 dollarë gjithsej)

3) Katër ESC 20A UBEC (4x 10 dollarë = 40 dollarë gjithsej)

4) Një tabelë e shpërndarjes së energjisë (me lidhje XT-60) (20 dollarë)

5) Një bateri 3s, 3000-5000mAh LiPo me lidhje XT-60 (3000mAh korrespondon me afërsisht 20 minuta kohë fluturimi) ($ 25)

6) Shumë shtytës (këto prishen shumë) (10 dollarë)

7) Një Arduino Mega 2560* (40 dollarë)

8) Një Arduino Uno R3 (20 dollarë)

9) Një Arduino Uno R3 ** (20 dollarë)

10) Një Arduino Ultimate GPS Shield (nuk keni nevojë për mburojë, por përdorimi i një GPS të ndryshëm do të kërkojë instalime elektrike të ndryshme) (45 dollarë)

11) Dy transmetues pa tela HC-12 (2x 5 dollarë = 10 dollarë)

12) Një MPU- 6050, 6DOF (shkalla e lirisë) gyro/akselerometër (5 dollarë)

13) Një Turnigy 9x 2.4GHz, çift transmetues/marrës 9 kanal (70 dollarë)

14) Tituj femra Arduino (të grumbulluara) (20 dollarë)

15) Ngarkuesi i Bilancit të Baterisë LiPo (dhe përshtatës DC 12V, nuk përfshihet) (20 dollarë)

17) Kabllo përshtatës USB A në B mashkull në mashkull (5 dollarë)

17) Shirit ngjitës

18) Tkurret tubi

Pajisjet:

1) Një hekur bashkues

2) Saldator

3) Epoksi plastike

4) Çakmak

5) Zhveshës me tela

6) Një grup çelësash Allen

Komponentët opsionalë për transmetimin e videos në kohë reale FPV (shikimi i personit të parë):

1) Një kamerë e vogël FPV (kjo lidhet me atë mjaft të lirë dhe me cilësi të keqe që kemi përdorur, mund të zëvendësoni një më të mirë) (20 dollarë)

2) Çift transmetues/marrës video 5.6GHz (832 modele të përdorura) (30 dollarë)

3) 500mAh, 3s (11.1V) LiPo bateri (7 dollarë) (ne e përdorëm me një prizë bananeje, por ne rekomandojmë në retrospektivë që të përdorni baterinë e lidhur, pasi ajo ka një lidhës të pajtueshëm me transmetuesin TS832, dhe kështu nuk ka t kërkojnë bashkim).

4) 2 bateri LiPo 1000 mAh 2s (7.4V), ose të ngjashme (5 dollarë). Numri i mAh nuk është kritik për aq kohë sa është më shumë se 1000mAh ose më shumë. E njëjta deklaratë si më sipër vlen për llojin e prizës për njërën nga dy bateritë. Tjetri do të përdoret për të fuqizuar monitorin, kështu që do të duhet të lidhni pa marrë parasysh çfarë. Ndoshta është më mirë të marrësh një me një prizë XT-60 për këtë (kjo është ajo që ne bëmë). Një lidhje për atë lloj është këtu: 1000mAh 2s (7.4V) LiPo me prizë XT-60

5) Monitor LCD (opsional) (15 dollarë). Ju gjithashtu mund të përdorni një përshtatës AV-USB dhe një program kopjimi DVD në mënyrë që të shihni drejtpërdrejt në një kompjuter portativ. Kjo gjithashtu jep mundësinë e regjistrimit të videove dhe fotografive, në vend që t'i shikoni ato në kohë reale.

6) Nëse keni blerë bateri me priza të ndryshme nga ato të lidhura, mund t'ju nevojiten përshtatës të përshtatshëm. Pavarësisht, merrni një përshtatës që korrespondon me prizën e baterisë që fuqizon monitorin. Këtu keni ku të merrni përshtatës XT-60

* = vetëm për projekt më të avancuar

** = vetëm për projekt më themelor

Kostot:

Nëse filloni nga e para (por me një hekur bashkues, etj …), nuk ka sistem FPV: 37 370 dollarë

Nëse tashmë keni një transmetues/marrës RC, ngarkues baterie LiPo dhe bateri LiPo: 260 dollarë

Kostoja e sistemit FPV: 80 dollarë

Hapi 2: Mblidhni kornizën

Mblidhni Kornizën
Mblidhni Kornizën
Mblidhni Kornizën
Mblidhni Kornizën
Mblidhni Kornizën
Mblidhni Kornizën

Ky hap është mjaft i drejtpërdrejtë, veçanërisht nëse përdorni të njëjtën kornizë të paracaktuar që kemi përdorur. Thjesht përdorni vidhat e përfshira dhe vendosni kornizën së bashku siç tregohet, duke përdorur një pikëllim allen ose kaçavidë të përshtatshme për kornizën tuaj. Sigurohuni që krahët me të njëjtën ngjyrë janë ngjitur me njëri -tjetrin (si në këtë foto), në mënyrë që droni të ketë një përparësi dhe prapa të qartë. Më tej, sigurohuni që pjesa e gjatë e pllakës së poshtme të ngjitet në mes krahëve me ngjyrë të kundërt. Kjo bëhet e rëndësishme më vonë.

Hapi 3: Mount Motors dhe Connect Escs

Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs
Mount Motors dhe Connect Escs

Tani që korniza është mbledhur, nxirrni katër motorët dhe katër pajisje shtesë. Ju mund të përdorni ose vida të përfshira në pajisjet e montimit, ose vida të mbetura nga korniza e kuadopterit për të vidhosur motorët dhe montuesit në vend. Nëse blini bazat me të cilat jemi lidhur, do të merrni dy përbërës shtesë, të paraqitur në foton më sipër. Ne kemi pasur performancë të mirë motorike pa këto pjesë, kështu që i lamë ato për të zvogëluar peshën.

Pasi motorët të jenë të dehur në vend, epoksoni bordin e shpërndarjes së energjisë (PDB) në vend në pjesën e sipërme të pllakës së kornizës kuadopter. Sigurohuni që ta orientoni atë në mënyrë që lidhësi i baterisë të tregojë në mes krahëve me ngjyra të ndryshme (paralel me një nga pjesët e gjata të pllakës së poshtme), si në foton e mësipërme.

Ju gjithashtu duhet të keni katër kone helikë me fije femra. Lërini mënjanë këto tani për tani.

Tani nxirrni ESC -të tuaja. Njëra anë do të ketë dy tela që dalin prej saj, një e kuqe dhe një e zezë. Për secilën nga katër ESC -të, futni telin e kuq në lidhësin pozitiv në PDB dhe të zezën në negativin. Vini re se nëse përdorni një PDB tjetër, ky hap mund të kërkojë bashkim. Tani lidhni secilën nga tre telat që dalin nga secili motor. Në këtë pikë, nuk ka rëndësi se cilin tel ESC e lidhni me cilin tel motorik (përderisa jeni duke lidhur të gjitha telat e një ESC me të njëjtin motor!) Ju do të korrigjoni çdo polaritet të kundërt më vonë. Nuk është e rrezikshme nëse telat përmbysen; rezulton vetëm në rrotullimin e motorit mbrapsht.

Hapi 4: Përgatitni Arduino dhe Shield

Përgatitni Arduino dhe Shield
Përgatitni Arduino dhe Shield
Përgatitni Arduino dhe Shield
Përgatitni Arduino dhe Shield

Një shënim para se të filloni

Së pari, ju mund të zgjidhni të bashkoni të gjitha telat së bashku drejtpërdrejt. Sidoqoftë, ne e gjetëm të paçmueshme të përdorim tituj pin sepse ato ofrojnë shumë fleksibilitet për zgjidhjen e problemeve dhe përshtatjen e projektit. Ajo që vijon është një përshkrim i asaj që kemi bërë (dhe rekomandojmë që të tjerët të bëjnë).

Përgatitni Arduino dhe mburojë

Hiqni Arduino Mega-n tuaj (ose një Uno nëse bëni kuadratin jo-autonom), mburojën GPS dhe titujt e grumbulluar. Ngjiteni skajin mashkullor të kokave të grumbulluara në vend në mburojën GPS, në rreshtat e kunjave paralel me kunjat e para-ngjitur, siç tregohet në imazhin e mësipërm. Gjithashtu ngjiteni në tituj të grumbulluar në rreshtin e pin të etiketuar 3V, CD,… RX. Përdorni një prestar teli për të hequr gjatësinë e tepërt në kunjat që dalin nga fundi. Vendosni titujt meshkuj me majat e përkulura në të gjitha këto tituj të grumbulluar. Këto janë ato që do t'i lidhni telat për pjesën tjetër të përbërësve.

Bashkojeni mburojën GPS në krye, duke u siguruar që kunjat të përputhen me ato në Arduino (Mega ose Uno). Vini re se nëse përdorni Mega, shumë nga Arduino do të ekspozohen akoma pasi ta vendosni mburojën në vend.

Vendosni shirit elektrik në pjesën e poshtme të Arduino, duke mbuluar të gjitha lidhësit e kunjave të ekspozuar, për të parandaluar ndonjë qark të shkurtër pasi Arduino qëndron në PDB.

Hapi 5: Komponentët me tela së bashku dhe vendosni baterinë (Uno)

Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)
Wire Together Components and Place Battery (Uno)

Skema e mësipërme është pothuajse identike me atë të bërë nga Joop Brooking pasi ne e bazuam shumë modelin tonë nga ai i tij.

*Vini re se kjo skematike po supozon një mburojë GPS të montuar siç duhet, dhe kështu GPS nuk shfaqet në këtë skemë.

Skema e mësipërme është përgatitur duke përdorur softuerin Fritzing, i cili rekomandohet shumë veçanërisht për skemat që përfshijnë Arduino. Ne kryesisht përdorëm pjesë gjenerike të cilat mund të redaktohen në mënyrë fleksibile, pasi pjesët tona në përgjithësi nuk ishin në bibliotekën e pjesëve të përfshira të Fritzing.

-Sigurohuni që çelësi në mburojën GPS të kalojë në "Shkrim i drejtpërdrejtë".

-Tani lidhni të gjithë përbërësit sipas skemës së mësipërme (përveç baterisë!) (Shënim i rëndësishëm në telat e të dhënave GPS më poshtë).

-Vini re se ju tashmë i keni lidhur ESC -të me motorët dhe PDB -në, kështu që kjo pjesë e skemës është përfunduar.

-Për më tepër, vini re se të dhënat GPS (telat e verdhë) dalin nga kunjat 0 dhe 1 në Arduino (jo kunjat e veçanta Tx dhe Rx në GPS). Kjo ndodh sepse e konfiguruar në "Shkrim i drejtpërdrejtë" (shiko më poshtë), GPS del drejtpërdrejt në portat serike të harduerit në uno (kunjat 0 dhe 1). Kjo është treguar më qartë në foton e dytë më sipër të instalimeve elektrike të plota.

-Kur lidhni marrësin RC, referojuni figurës së mësipërme. Vini re se telat e të dhënave shkojnë në rreshtin e sipërm, ndërsa Vin dhe Gnd janë në rreshtat e dytë dhe të tretë, përkatësisht (dhe në kolonën e dytë të këmbëve më të largëta).

-Për të bërë instalime elektrike për marrësin HC-12, marrësin RC dhe 5Vout nga PDB në Vin të Arduino kemi përdorur tituj të grumbulluar, ndërsa për xhiro i kemi lidhur telat drejtpërdrejt në tabelë dhe duke përdorur tuba për zvogëlimin e nxehtësisë rreth lidhës Ju mund të zgjidhni të bëni ose për ndonjërin prej përbërësve, megjithatë bashkimi direkt me xhiro rekomandohet pasi kursen hapësirë gjë që e bën më të lehtë montimin e pjesës së vogël. Përdorimi i titujve është një sasi e vogël më shumë punë përpara, por siguron më shumë fleksibilitet. Saldimi i telave është një lidhje më e sigurt afatgjatë, por do të thotë se përdorimi i këtij komponenti në një projekt tjetër është më i vështirë. Vini re se nëse keni përdorur tituj në mburojën GPS, ju ende keni një sasi të mirë fleksibiliteti pavarësisht se çfarë bëni. Në mënyrë thelbësore, sigurohuni që telat e të dhënave GPS në kunjat 0 dhe 1 në GPS të jenë të lehta për t'u hequr dhe zëvendësuar.

Në fund të projektit tonë, ne nuk ishim në gjendje të hartonim një metodë të mirë për bashkimin e të gjithë përbërësve tanë në kornizë. Për shkak të presionit kohor të klasës sonë, zgjidhjet tona në përgjithësi rrotulloheshin rreth shiritit të shkumëzuar të dyanshëm, shirit ngjitës, shirit elektrik dhe lidhëse zip. Ne ju rekomandojmë shumë që të kaloni më shumë kohë në hartimin e strukturave të qëndrueshme të montimit nëse planifikoni që ky të jetë një projekt afatgjatë. Me gjithë sa u tha, nëse thjesht doni të bëni një prototip të shpejtë, atëherë ndjehuni të lirë të ndiqni në procesin tonë. Sidoqoftë, sigurohuni që xhiro të jetë montuar mirë. Kjo është mënyra e vetme që Arduino e di se çfarë po bën kuadopteri, kështu që nëse lëviz gjatë fluturimit do të keni probleme.

Me gjithçka të lidhur dhe të vendosur, merrni baterinë LiPo dhe rrëshqiteni atë midis pllakave të sipërme dhe të poshtme të kornizës. Sigurohuni që lidhësi i tij të tregojë të njëjtin drejtim si lidhësi i PDB -së, dhe që ato në fakt mund të lidhen. Ne përdorëm shirit ngjitës për të mbajtur baterinë në vend (kaseta velcro gjithashtu funksionon, por është më e bezdisshme sesa shiriti ngjitës). Shirit ngjitës funksionon mirë sepse dikush mund ta zëvendësojë me lehtësi baterinë ose ta heqë atë për karikim. Sidoqoftë, duhet të jeni të sigurtë që e fikni baterinë fort, pasi bateria lëviz gjatë fluturimit, kjo mund të prishë seriozisht ekuilibrin e dronit. Mos e lidhni akoma baterinë me PDB.

Hapi 6: Përbërësit me tela së bashku dhe vendosni baterinë (Mega)

Wire Together Components and Place Battery (Mega)
Wire Together Components and Place Battery (Mega)
Wire Together Components and Place Battery (Mega)
Wire Together Components and Place Battery (Mega)
Wire Together Components and Place Battery (Mega)
Wire Together Components and Place Battery (Mega)

Skema e mësipërme është përgatitur duke përdorur softuerin Fritzing, i cili rekomandohet shumë veçanërisht për skemat që përfshijnë arduino. Ne kryesisht përdorëm pjesë gjenerike, pasi pjesët tona në përgjithësi nuk ishin në bibliotekën e pjesëve të përfshira nga Fritzing.

-Vini re se kjo skematike po supozon një mburojë GPS të montuar siç duhet, dhe kështu GPS nuk shfaqet në këtë skemë.

-Flidhni çelësin në Mega 2560 në "Soft Serial".

-Tani lidhni të gjithë përbërësit sipas skemës së mësipërme (përveç baterisë!)

-Vini re se ju tashmë i keni lidhur ESC -të me motorët dhe PDB -në, kështu që kjo pjesë e skemës është përfunduar.

-Kabllot kërcyes nga Pin 8 në Rx dhe Pin 7 në Tx janë atje sepse (ndryshe nga Uno, për të cilin është bërë kjo mburojë), mega-s i mungon një marrës-transmetues asinkron universal universal (UART) në kunjat 7 dhe 8, dhe kështu ne duhet të përdorim kunjat serike të harduerit. Ka më shumë arsye që ne kemi nevojë për kunja seriale të harduerit, të diskutuara më vonë.

-Kur lidhni marrësin RC, referojuni figurës së mësipërme. Vini re se telat e të dhënave shkojnë në rreshtin e sipërm, ndërsa Vin dhe Gnd janë në rreshtat e dytë dhe të tretë, përkatësisht (dhe në kolonën e dytë të këmbëve më të largëta).

-Për të bërë instalime elektrike për transmetuesin HC-12, marrësin RC dhe 5Vout nga PDB në Vin të Arduino kemi përdorur tituj të grumbulluar, ndërsa për xhiro i kemi lidhur telat drejtpërdrejt dhe duke përdorur tuba për zvogëlimin e nxehtësisë rreth saldimit. Ju mund të zgjidhni të bëni ose për ndonjë nga përbërësit. Përdorimi i titujve është një sasi e vogël më shumë punë përpara, por siguron më shumë fleksibilitet. Saldimi i telave është një lidhje më e sigurt afatgjatë, por do të thotë se përdorimi i këtij komponenti në një projekt tjetër është më i vështirë. Vini re se nëse keni përdorur tituj në mburojën GPS, ju ende keni një sasi të mirë fleksibiliteti pavarësisht se çfarë bëni.

Në fund të projektit tonë, ne nuk ishim në gjendje të hartonim një metodë të mirë për bashkimin e të gjithë përbërësve tanë në kornizë. Për shkak të presionit të kohës në klasën tonë, zgjidhjet tona në përgjithësi silleshin rreth shiritit të shkumëzuar të dyanshëm, shiritit, shiritit elektrik dhe lidhëseve me zinxhir. Ne ju rekomandojmë shumë që të kaloni më shumë kohë në hartimin e strukturave të qëndrueshme të montimit nëse planifikoni që ky të jetë një projekt afatgjatë. Me gjithë sa u tha, nëse thjesht doni të bëni një prototip të shpejtë, mos ngurroni të ndiqni në procesin tonë. Sidoqoftë, sigurohuni që xhiro të jetë montuar mirë. Kjo është mënyra e vetme që Arduino e di se çfarë po bën kuadopteri, kështu që nëse lëviz gjatë fluturimit do të keni probleme.

Me gjithçka të lidhur dhe të vendosur, merrni baterinë LiPo dhe rrëshqiteni atë midis pllakave të sipërme dhe të poshtme të kornizës. Sigurohuni që lidhësi i tij të tregojë të njëjtin drejtim me lidhësin e PDB -së, dhe që ato në fakt mund të lidhen. Ne përdorëm shirit ngjitës për të mbajtur baterinë në vend (kaseta velcro gjithashtu funksionon, por është më e bezdisshme sesa shiriti ngjitës). Kaseta ngjitëse funksionon mirë sepse dikush lehtë mund ta zëvendësojë baterinë ose ta heqë atë për karikim. Sidoqoftë, duhet të jeni të sigurtë që e fikni baterinë fort, pasi bateria lëviz gjatë fluturimit, kjo mund të prishë seriozisht ekuilibrin e dronit. Mos e lidhni akoma baterinë me PDB.

Hapi 7: Lidheni Marrësin

Marrësi i Lidhur
Marrësi i Lidhur
Marrësi i Lidhur
Marrësi i Lidhur

Merrni marrësin RC dhe lidheni atë përkohësisht me një furnizim me energji 5V (ose duke e ndezur Arduino me USB ose 9V, ose me një furnizim me energji të veçantë. Mos e lidhni LiPo me Arduino akoma). Merrni kunjin lidhës që erdhi me marrësin RC dhe vendoseni në kunjat BIND në marrës. Përndryshe, shkurtoni kunjat e sipërme dhe të poshtme në kolonën BIND siç tregohet në foton më sipër. Një dritë e kuqe duhet të pulsojë shpejt mbi marrësin. Tani merrni kontrolluesin dhe shtypni butonin në anën e pasme ndërsa është i fikur, siç tregohet më sipër. Me butonin e shtypur, ndizni kontrolluesin. Tani drita e ndezur në marrës duhet të bëhet e fortë. Marrësi është i lidhur. Hiqeni kabllon lidhës. Nëse po përdorni një furnizim me energji të ndryshme, rilidhni marrësin me 5V jashtë Arduino.

Hapi 8: (Opsionale) Teli së bashku dhe montoni sistemin e kamerës FPV

(Opsionale) Tela së bashku dhe montoni sistemin e kamerës FPV
(Opsionale) Tela së bashku dhe montoni sistemin e kamerës FPV
(Opsionale) Tela së bashku dhe montoni sistemin e kamerës FPV
(Opsionale) Tela së bashku dhe montoni sistemin e kamerës FPV

Së pari, lidhni së bashku përshtatësin XT-60 me telat e energjisë dhe tokëzimit në monitor. Këto mund të ndryshojnë nga monitori në monitor, por fuqia pothuajse gjithmonë do të jetë e kuqe, toka pothuajse gjithmonë e zezë. Tani futeni përshtatësin me tela të ngjitur në LiPo tuaj 1000mAh me prizën XT-60. Monitori duhet të ndizet me një sfond blu (zakonisht) blu. Ky është hapi më i vështirë!

Tani vidhosni antenat në marrësin dhe transmetuesin tuaj.

Lidhni Lipo -n tuaj të vogël 500mAh me transmetuesin. Kunja më e djathtë (menjëherë nën antenë) është e tokëzuar (V_) e baterisë, kunja tjetër në të majtë është V+. Ata vijnë tre telat që shkojnë tek kamera. Kamera juaj duhet të vijë me një prizë tre-në-një që përshtatet në transmetuesin. Sigurohuni që keni tela të verdhë të të dhënave në mes. Nëse keni përdorur bateritë me të cilat jemi lidhur me priza të destinuara për këtë, ky hap nuk duhet të kërkojë asnjë bashkim.

Së fundi, lidhni baterinë tuaj tjetër 1000mAh me telin e daljes DC që erdhi me marrësin tuaj dhe, nga ana tjetër, futeni atë në portën DC në marrësin tuaj. Së fundi, lidhni skajin e zi të kabllit AVin që erdhi me marrësin tuaj në portën AVin në marrësin tuaj, dhe fundi tjetër (i verdhë, femër) në skajin e verdhë mashkullor të kabllit AVin të monitorit tuaj.

Në këtë pikë, ju duhet të jeni në gjendje të shihni një pamje të kamerës në monitor. Nëse nuk mundeni, sigurohuni që marrësi dhe transmetuesi të jenë të dy të ndezur (duhet të shihni numrat në ekranet e tyre të vegjël) dhe se ata janë në të njëjtin kanal (ne kemi përdorur kanalin 11 për të dy dhe kemi pasur sukses të mirë). Më tej, mund t'ju duhet të ndryshoni kanalin në monitor.

Montoni përbërësit në kornizë.

Pasi të keni konfiguruar duke punuar, shkëputni bateritë nga priza derisa të jeni gati për të fluturuar.

Hapi 9: Vendosni Pritjen e të Dhënave GPS

Vendosni marrjen e të dhënave GPS
Vendosni marrjen e të dhënave GPS
Vendosni marrjen e të dhënave GPS
Vendosni marrjen e të dhënave GPS

Lidhni Arduino-n tuaj të dytë me transmetuesin tuaj të dytë HC-12 siç tregohet në skemën e mësipërme, duke pasur parasysh se konfigurimi do të mundësohet vetëm siç shfaqet nëse lidhet me një kompjuter. Shkarkoni kodin e dhënë të transmetuesit, hapni monitorin tuaj serik në 9600 baud.

Nëse përdorni konfigurimin më themelor, duhet të filloni të merrni fjali GPS nëse mburoja juaj GPS është e fuqizuar dhe e lidhur mirë me transmetuesin tjetër HC-12 (dhe nëse çelësi i mburojës është në "Shkrimi i drejtpërdrejtë").

Me Mega, sigurohuni që kaloni të jetë në "Soft Serial".

Hapi 10: Kryeni kodin e konfigurimit (Uno)

Ky kod është identik me atë të përdorur nga Joop Brokking në tutorialin e tij me kuadratin Arduino, dhe ai meriton të gjitha meritat për shkrimin e tij.

Me baterinë e shkëputur, përdorni kordonin USB për të lidhur kompjuterin tuaj me Arduino dhe ngarkoni Kodin e Konfigurimit të bashkangjitur. Ndizni transmetuesin tuaj RC. Hapni monitorin tuaj serik në 57600 baud dhe ndiqni udhëzimet.

Gabimet e zakonshme:

Nëse kodi nuk arrin të ngarkohet, sigurohuni që kunjat 0 dhe 1 të jenë të shkyçur në mburojën UNO/GPS. Ky është i njëjti port harduer që pajisja përdor për të komunikuar me kompjuterin, kështu që duhet të jetë falas.

Nëse kodi kalon një sërë hapash njëherësh, kontrolloni që çelësi juaj GPS është në "Shkrimi i drejtpërdrejtë".

Nëse asnjë marrës nuk zbulohet, sigurohuni që të ketë një dritë të kuqe të fortë (por të zbehtë) në marrësin tuaj kur transmetuesi është i ndezur. Nëse është kështu, kontrolloni instalimet elektrike.

Nëse asnjë xhiro nuk zbulohet, kjo mund të jetë sepse xhiro është dëmtuar ose nëse keni një lloj xhiro të ndryshëm nga ai për të cilin është krijuar kodi.

Hapi 11: Kryeni Kodin e Konfigurimit (Mega)

Ky kod është identik me atë të përdorur nga Joop Brokking në tutorialin e tij me kuadratin Arduino, dhe ai meriton të gjitha meritat për shkrimin e tij. Ne thjesht përshtatëm instalimet elektrike për Mega në mënyrë që hyrjet e marrësit të korrespondonin me kunjat e sakta të ndërrimit të ndërrimit të kunjave.

Me baterinë e shkëputur, përdorni kordonin USB për të lidhur kompjuterin tuaj me Arduino dhe ngarkoni Kodin e Konfigurimit të bashkangjitur. Hapni monitorin tuaj serik në 57600 baud dhe ndiqni udhëzimet.

Hapi 12: Kalibroni ESC -të (Uno)

Edhe një herë, ky kod është identik me kodin e Joop Brokking. Të gjitha modifikimet u bënë në përpjekje për të integruar GPS dhe Arduino dhe mund të gjenden më vonë, në përshkrimin e konstruksionit të kuadopterit më të avancuar.

Ngarko kodin e bashkangjitur të kalibrimit ESC. Në monitorin serik, shkruani shkronjën 'r' dhe shtypni return. Ju duhet të filloni të shihni vlerat e kontrolluesit RC në kohë reale të listuara. Verifikoni që ato ndryshojnë nga 1000 në 2000 në ekstremet e mbytjes, rrokullisjes, lartësisë dhe zhurmës. Pastaj shkruani 'a' dhe shtypni return. Lëreni kalibrimin xhiro të shkojë dhe më pas verifikoni që xhiro regjistron lëvizjen e kuadratit. Tani ngrini arduino -n nga kompjuteri, shtyni gazin deri në kontrollues dhe lidhni baterinë. ESC -të duhet të qarkullojnë me tone të ndryshme biip (por kjo mund të jetë e ndryshme në varësi të ESC dhe firmware -it të saj). Shtyjeni gazin deri në fund. ESC -të duhet të lëshojnë bip më të ulët, pastaj të heshtin. Shkëputeni baterinë.

Opsionale, në këtë pikë mund të përdorni konet që erdhën me paketat tuaja shtesë të montimit të motorit për të vidhosur fort helikat. Pastaj futni numrat 1 - 4 në monitorin serik për të ndezur motorët 1 - 4 respektivisht, në fuqinë më të ulët. Programi do të regjistrojë sasinë e lëkundjes për shkak të çekuilibrit të pajisjeve. Mund të përpiqeni ta rregulloni këtë duke shtuar sasi të vogla të shiritit të skotës në njërën anë ose në anën tjetër të veglave. Ne zbuluam se mund të bënim një fluturim të shkëlqyeshëm pa këtë hap, por ndoshta pak më pak me efikasitet dhe më zë të lartë sesa kishim balancuar pajisjet.

Hapi 13: Kalibroni ESC -të (Mega)

Ky kod është shumë i ngjashëm me kodin e Brokking, megjithatë ne e përshtatëm atë (dhe instalimet elektrike përkatëse) për të punuar me Mega.

Ngarko kodin e bashkangjitur të kalibrimit ESC. Në monitorin serik, shkruani shkronjën 'r' dhe shtypni return. Ju duhet të filloni të shihni vlerat e kontrolluesit RC në kohë reale të listuara. Verifikoni që ato ndryshojnë nga 1000 në 2000 në ekstremet e mbytjes, rrokullisjes, lartësisë dhe zhurmës.

Pastaj shkruani 'a' dhe shtypni return. Lëreni kalibrimin xhiro të shkojë dhe më pas verifikoni që xhiro regjistron lëvizjen e kuadratit.

Tani ngrini arduino -n nga kompjuteri, shtyni gazin deri në kontrollues dhe lidhni baterinë. ESC -të duhet të lëshojnë tre bip të ulët të ndjekur nga një bip të lartë (por kjo mund të jetë e ndryshme në varësi të ESC dhe firmware -it të saj). Shtyjeni gazin deri në fund. Shkëputeni baterinë.

Ndryshimet që bëmë në këtë kod duhej të kalonin nga përdorimi i PORTD për kunjat ESC në përdorimin e PORTA dhe më pas ndryshimi i bajtëve të shkruar në këto porte në mënyrë që të aktivizojmë kunjat e duhur siç tregohet në skemën e instalimeve elektrike. Ky ndryshim ndodh sepse kunjat e regjistrit PORTD nuk janë në të njëjtin vend në Mega siç janë në Uno. Ne nuk kemi qenë në gjendje ta testojmë plotësisht këtë kod pasi po punonim me një Mega të vjetër jashtë markës që kishte dyqani i shkollës sonë. Kjo do të thoshte se për disa arsye jo të gjitha kunjat e regjistrit PORTA ishin në gjendje të aktivizonin ESC -të siç duhet. Ne gjithashtu kishim probleme me përdorimin e operatorit ose të barabartë (| =) në disa nga kodet tona të provës. Ne nuk jemi të sigurt pse kjo po shkaktonte probleme kur shkruanim byte për të vendosur tensionet e pinit ESC, kështu që ne modifikuam kodin e Brooking sa më pak të ishte e mundur. Ne mendojmë se ky kod është shumë afër funksionimit, por kilometrazhi juaj mund të ndryshojë.

Hapi 14: Shkoni në ajër !! (Uno)

Dhe përsëri, kjo pjesë e tretë e kodit gjenial është vepër e Joop Brokking. Ndryshimet në të tre këto tre pjesë të kodit janë të pranishme vetëm në përpjekjen tonë për integrimin e të dhënave GPS në Arduino.

Me shtytësit tuaj të vendosur fort në kornizë dhe të gjithë përbërësit të lidhur, të ngjitur ose të montuar ndryshe, ngarkoni kodin e kontrolluesit të fluturimit në Arduino tuaj, pastaj shkëputeni Arduino nga kompjuteri juaj.

Nxirrni kuadopterin tuaj jashtë, lidhni baterinë dhe ndizni transmetuesin tuaj. Opsionale, sillni me vete një laptop të lidhur me konfigurimin tuaj të marrjes GPS, si dhe konfigurimin dhe monitorin e marrjes së videove tuaja. Ngarkoni kodin e transmetuesit në Arduino -n tuaj tokësor, hapni monitorin tuaj serik në 9600 baud dhe shikoni të dhënat GPS të futen.

Tani jeni gati për të fluturuar. Shtyjeni gazin poshtë dhe tërhiqeni majtas për të armatosur kuadopterin, pastaj ngadalë ngrini gazin për të lëvizur. Filloni duke fluturuar ulët në tokë dhe mbi sipërfaqe të buta si bari derisa të ndiheni rehat.

Shikoni videon e futur ku ne fluturojmë me entuziazëm me dronin herën e parë që ishim në gjendje të merrnim dronin dhe GPS që punonin njëkohësisht.

Hapi 15: Shkoni në ajër !! (Mega)

Për shkak të lidhjes sonë me kodin e kalibrimit ESC për Mega, ne kurrë nuk ishim në gjendje të krijonim kodin e kontrolluesit të fluturimit për këtë tabelë. Nëse keni arritur në këtë pikë, atëherë unë imagjinoj që të paktën jeni ngatërruar me kodin e kalibrimit ESC për ta bërë atë të funksionojë për Mega. Prandaj, ka të ngjarë që do të duhet të bëni modifikime të ngjashme në kodin e kontrolluesit të fluturimit siç keni bërë në hapin e fundit. Nëse kodi ynë i kalibrimit ESC për Mega funksionon në mënyrë magjike pa ndonjë modifikim tjetër, atëherë ka vetëm disa gjëra që do t'ju duhet t'i bëni kodit të aksioneve për ta bërë atë të funksionojë për këtë hap. Së pari do të duhet të kaloni dhe zëvendësoni të gjitha rastet e PORTD me PORTA. Gjithashtu, mos harroni të ndryshoni DDRD në DDRA. Pastaj, do t'ju duhet të ndryshoni të gjithë bajtët që shkruhen në regjistrin PORTA në mënyrë që ata të aktivizojnë kunjat e duhur. Për ta bërë këtë, përdorni bajtin B11000011 për t'i vendosur kunjat në të lartë dhe B00111100 për t'i vendosur kunjat në të ulët. Fat i mirë, dhe ju lutemi na tregoni nëse fluturoni me sukses duke përdorur një Mega!

Hapi 16: Si arritëm atje ku jemi aktualisht me dizajnin Mega

Ky projekt ishte një përvojë e madhe mësimore për ne si fillestarë të Arduino dhe hobi elektronik. Prandaj, ne megjithëse do të përfshinim sagën e gjithçkaje që hasëm gjatë përpjekjes për të aktivizuar GPS kodin e Joop Brokking. Për shkak se kodi i Brokking është kaq i plotë dhe shumë më i ndërlikuar se gjithçka që po shkruanim, ne vendosëm ta modifikonim atë sa më pak të ishte e mundur. Ne u përpoqëm të merrnim mburojën GPS për të dërguar të dhëna në Arduino dhe pastaj Arduino të na dërgonte atë informacion përmes marrësit HC12 pa modifikuar kodin e fluturimit ose instalimet elektrike në asnjë mënyrë. Pasi shikuam skemat dhe instalimet elektrike të Arduino Uno për të kuptuar se cilat kunja ishin në dispozicion, ne ndryshuam kodin e marrësit GPS që po përdornim për të punuar rreth modelit ekzistues. Pastaj e testuam për t'u siguruar që gjithçka funksionoi. Në këtë pikë, gjërat dukeshin premtuese.

Hapi tjetër ishte integrimi i kodit që sapo kishim modifikuar dhe testuar me kontrolluesin e fluturimit të Brokking. Kjo nuk ishte shumë e vështirë, por shpejt hasëm në një gabim. Kontrolluesi i fluturimit i Brokking mbështetet në bibliotekat Arduino Wire dhe EEPROM ndërsa kodi ynë GPS përdorte bibliotekën Seriale të Softuerëve dhe bibliotekën Arduino GPS. Për shkak se Biblioteka Wire i referohet bibliotekës Seriale të Softuerit, ne hasëm në një gabim ku kodi nuk do të përpilohej sepse kishte "përkufizime të shumta për _vector 3_", çfarëdo që të thotë kjo. Pasi shikuam në Google dhe gërmuam nëpër biblioteka, përfundimisht kuptuam se ky konflikt bibliotekar e bëri të pamundur përdorimin e këtyre pjesëve të kodit së bashku. Pra, ne shkuam në kërkim të alternativave.

Ajo që kuptuam është se kombinimi i vetëm i bibliotekave që nuk na hodhën gabim ishte kalimi i bibliotekës standarde GPS në neoGPS dhe më pas përdorimi i AltSoftSerial në vend të Serialit të Softuerit. Ky kombinim funksionoi, megjithatë, AltSoftSerial mund të funksionojë vetëm me kunja specifike, të cilat nuk ishin të disponueshme në modelin tonë. Kjo është ajo që na çon në përdorimin e Mega. Arduino Megas kanë porte të shumta serike të harduerit, që do të thotë se ne mund ta anashkalojmë këtë konflikt të bibliotekës duke mos pasur nevojë të hapim fare portet serike të softuerit.

Sidoqoftë, kur filluam të përdorim Mega, shpejt kuptuam se konfigurimi i pin ishte i ndryshëm. Kunjat në Uno të cilat kanë ndërprerje janë të ndryshme në Mega. Në mënyrë të ngjashme, kunjat SDA dhe SCL ishin në vende të ndryshme. Pasi studiuam diagramet pin për secilin lloj Arduino dhe reflektuam regjistrat e thirrur në kod, ne ishim në gjendje të ekzekutonim kodin e konfigurimit të fluturimit vetëm me një ri-instalim minimal dhe pa ndryshime softuerike.

Kodi i kalibrimit ESC është vendi ku filluam të hasnim në probleme. Ne e prekëm këtë shkurtimisht më parë, por në thelb kodi përdor regjistra pin për të rregulluar kunjat e përdorura për të kontrolluar ESC -të. Kjo e bën kodin më të vështirë për t'u lexuar sesa përdorimi i funksionit standard pinMode (); megjithatë, e bën kodin të funksionojë më shpejt dhe të aktivizojë kunjat njëkohësisht. Kjo është e rëndësishme sepse kodi i fluturimit funksionon në një lak të caktuar me kohë. Për shkak të dallimeve të kunjave midis Arduinos, ne vendosëm të përdorim regjistrin portual A në Mega. Sidoqoftë, në testimin tonë, jo të gjitha kunjat na dhanë të njëjtin tension dalës kur u tha të punojmë shumë. Disa nga kunjat kishin një dalje prej rreth 4.90V dhe të tjerët na dhanë më afër 4.95V. Me sa duket ESC -të që kemi janë disi të vështira, dhe kështu ato do të funksiononin siç duhet vetëm kur përdorim kunjat me tension më të lartë. Kjo më pas na detyroi të ndryshojmë bajtët që shkruam për të regjistruar A në mënyrë që të flisnim me kunjat e sakta. Ka më shumë informacion në lidhje me këtë në seksionin e kalibrimit ESC.

Kjo është për aq sa kemi arritur në këtë pjesë të projektit. Kur shkuam për të testuar këtë kod kalibrimi të modifikuar ESC, diçka u shkurtua dhe ne humbëm komunikimin me Arduino -n tonë. Ne ishim jashtëzakonisht të hutuar nga kjo sepse nuk kishim ndryshuar asnjë prej instalimeve elektrike. Kjo na detyroi të tërhiqemi dhe të kuptojmë se kishim vetëm disa ditë për të marrë një dron fluturues pas javëve të përpjekjes për të përshtatur pjesët tona të papajtueshme së bashku. Kjo është arsyeja pse ne u tërhoqëm dhe krijuam projektin më të thjeshtë me Uno. Sidoqoftë, ne ende mendojmë se qasja jonë është afër punës me Mega me pak më shumë kohë.

Qëllimi ynë është që ky shpjegim i pengesave që hasëm të jetë i dobishëm për ju nëse jeni duke punuar në modifikimin e kodit të Brokking. Ne gjithashtu kurrë nuk kemi mundësinë të provojmë të kodojmë ndonjë veçori të kontrollit autonom bazuar në GPS. Kjo është diçka që do t'ju duhet të kuptoni pasi krijoni një dron pune me një Mega. Sidoqoftë, nga disa hulumtime paraprake të Google duket se zbatimi i një filtri Kalman mund të jetë mënyra më e qëndrueshme dhe e saktë për të përcaktuar pozicionin në fluturim. Ne ju sugjerojmë që të hulumtoni pak se si ky algoritëm optimizon vlerësimet e gjendjes. Për më tepër, fat të mirë dhe na tregoni nëse arrini më tej sesa ne ishim në gjendje!

Recommended: