Orodha ya maudhui:
- Hatua ya 1: Kubuni Utendakazi wa Mradi
- Hatua ya 2: Sanidi na Mchoro wa Waya
- Hatua ya 3: Vipengele vya Upimaji na Msimbo wa Msingi
- Hatua ya 4: Upimaji wa MPU
- Hatua ya 5: Msimbo wa Mwisho
Video: Dira ya Dijiti na Kitafuta Kichwa: Hatua 6
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:48
Waandishi:
Cullan Whelan
Andrew Luft
Blake Johnson
Shukrani:
Chuo cha California Maritime
Evan Chang-Siu
Utangulizi:
Msingi wa mradi huu ni dira ya dijiti na ufuatiliaji wa kichwa. Hii inamwezesha mtumiaji kufuata kichwa kwa umbali mrefu kwa kutumia vifaa vya dijiti. Kwa kawaida kichwa ni pembe inayopimwa kulingana na saa kutoka kaskazini, ambayo inachukuliwa kama digrii sifuri, kama inavyoonyeshwa na dira. Kifaa kina kazi mbili kuu: ya kwanza inaonyesha kichwa cha sasa cha kifaa kwenye rejeleo la onyesho la dijiti, na ya pili ni uwezo wa kuingiza kichwa kilichoombwa na mtumiaji, ambacho kitaonyeshwa kwenye pete ya LED juu ya nyumba ya dira. Mtumiaji angerekebisha mwelekeo wa kifaa unaohusiana na mwangaza wa LED. Wakati mwelekeo wa kifaa unabadilishwa, LED itasafiri kwenda katikati ya LED, na hivyo kuonyesha kuwa kichwa sahihi kimeanzishwa.
Ugavi:
- Moduli ya GPS ya DIYmall 6M
- HiLetgo MPU9250 / 6500 9-Axis 9 DOF 16 Bit
- Adafruit NeoPixel Gonga 16
- MakerFocus 4pcs 3.7V Lithiamu inayoweza kubadilishwa Betri
- Bodi ya ELEGOO MEGA 2560 R3
- Adafruit Mini Lipo w / Mini-B USB Jack - USB LiIon / chaja ya LiPoly - v1
- 2.8 LCD ya TFT na Bodi ya Kuzuka kwa skrini ya kugusa w / Tundu la MicroSD
Hatua ya 1: Kubuni Utendakazi wa Mradi
Hatua ya kwanza ni kuelewa mantiki na utendaji wa mwisho wa utendaji. Mchoro huu wa mantiki unaonyesha majimbo matatu ya vifaa na hali mbili za sensa.
Hali 1: Inapakia Jimbo
Hali ya kupakia hutumiwa kuruhusu Arduino Mega kupata data kutoka kwa sensorer mbili wakati wa kuanza. Kifaa kitaonyesha upakiaji kwenye skrini, futa nambari zote kwenye skrini, na taa za LED kwenye pete ya NeoPixel zitawaka kwenye duara.
Hali 2: Njia ya Dira
Katika hali hii kifaa kitatenda kama dira ya dijiti. Pete ya NeoPixel itawaka ili kuonyesha mwelekeo wa Kaskazini kwa heshima na mwelekeo wa kifaa. Kichwa cha kweli cha kifaa pia kitaonyeshwa kwenye skrini ya LCD pamoja na Latitudo na Longitude ya kifaa. Pia itakuwa ndani ya jimbo hili kwamba mtumiaji ataweza kuingia kichwa cha mtumiaji kuonyeshwa katika Jimbo la 3.
Hali 3: Njia ya Kufuatilia Kichwa
Katika hali hii kifaa sasa kitasaidia mtumiaji kuanzishwa kwenye kichwa anachotaka. Kifaa sasa kitaonyesha vifaa vinavyoongoza na watumiaji wanaelekea kwenye skrini ya LCD pamoja na data ya latitudo na longitudo. Pete ya NeoPixel sasa itawaka ili kuonyesha watumiaji wanaoongoza kwa kuzingatia mwelekeo wa vifaa.
Ndani ya Jimbo 2 na Jimbo la 3 kuna hali mbili za sensorer majimbo haya ya sensa huruhusu kifaa kuvuta data kutoka kwa sensorer ambayo hutoa data sahihi zaidi kulingana na hali ya utendaji wa kifaa.
Hali ya sensorer 1: MPU
Ikiwa kifaa hakisogei data inayoongoza itatolewa kutoka kwa MPU kwani ndio data sahihi zaidi wakati kifaa hakijisogei.
Hali ya sensorer 2: GPS
Ikiwa kifaa kinasonga data inayoongoza itavutwa kutoka kwa Chip ya GPS kwani ndio data sahihi zaidi katika hali hii.
Kifaa kinaweza kubadilisha kati ya hizi kuwa hali za sensorer wakati wowote ili kuzingatia hali ya utumiaji wa kitengo kinachobadilika. Hii ni muhimu kwa utendaji wa kifaa kwani sensorer zote mbili zinazotumiwa kwenye kifaa zina hali ambazo zinaathiri usahihi wa data wanazotoa. Katika kesi ya MPU chip inaweza kuathiriwa kwa urahisi na uwanja wa kienyeji unaosababishwa na magari na vifaa vya ujenzi wa chuma kwenye majengo. Kwa hivyo chip ya GPS inatumiwa ambayo inaweza kutoa kichwa sahihi zaidi ambacho hakijafanywa na ushawishi sawa. Walakini, GPS inaweza tu kutoa data ya kichwa wakati inahamia kama inavyohesabu kuongoza kutumia mabadiliko katika data ya latitudo na longitudo. Kwa hivyo chips zinakamilishana na kwa kutumia hali mbili za sensorer hutoa utendaji sahihi zaidi na wa kuaminika wa kifaa.
Hatua ya 2: Sanidi na Mchoro wa Waya
Mradi hutumia na bodi ya Clone ya Arduino Mega sawa na bodi hapo juu. Vipengele vyote katika mradi vitaunganishwa na bodi hii. Hapo juu kuna michoro ya kina ya jinsi ya kuweka waya kwenye vifaa vya mradi huu. Vifungo havina mzunguko wa kina kwani hizi zinaweza kusanidiwa kwa njia nyingi. Katika mradi huu hutumia kontena la kubomoa 100K na kitufe rahisi kutuma ishara ya volt 3 kwa pini yake iliyowekwa.
Hatua ya 3: Vipengele vya Upimaji na Msimbo wa Msingi
Mradi utavuta data kutoka kwa chip ya MPU na GPS kama ilivyoelezewa hapo awali. Imeambatishwa ni nambari tatu zinazowezesha upimaji wa data kutoka kwa MPU, GPS, na MPU na skrini kudhibitisha utendaji wa sehemu hizo. Ni muhimu kupata vifaa katika hatua hii kwani nambari iko tofauti kwa kila chip na maswala yoyote yanaweza kushughulikiwa bila hofu ya kusababisha makosa yasiyotarajiwa katika nambari ya mwisho.
Maktaba zinazohitajika:
Adafruit_ILI9341_Albert.h
SPI.h
Matunda_GFX.h
Adafruit_ILI9341
Vidogo ++ h. H
Adafruit_NeoPixel.h
MPU9250.h
Zote hizi zinaweza kupatikana kwa kutafuta majina hapo juu. Sitatuma viungo kwani kuna nakala nyingi za maktaba hizi kutoka kwa vyanzo vingi na zinazingatia kiwango cha jamii cha kuunganisha tu kwa asili nitakuruhusu utafute hizi mwenyewe.
Hatua ya 4: Upimaji wa MPU
Kichwa kilichopatikana kupitia MPU katika Jimbo la 2 na Jimbo la 3 kiligawanywa katika mirobo minne. Hii ilikuwa muhimu kwa sababu njia yetu ya upimaji ilihitaji kupata kiwango cha chini na cha juu kutoka kwa sumaku kando ya shoka zake za x na y. Hii ilifanywa kwa kupokezana kifaa bila mpangilio juu ya shoka zake tatu, huru kutoka kwa uwanja wowote muhimu wa umeme isipokuwa ile ya Dunia. Kisha tukachukua maadili ya kiwango cha chini na cha juu kando ya mhimili wa x na y na tukaunganisha kwenye hesabu ya kuongeza ili kuzuia ukubwa kati ya maadili ya hasi moja na moja. Katika takwimu hapo juu, BigX na BigY ni maadili ya juu ya data ya magnetometer kando ya x na y-axis mtawaliwa, LittleX na LittleY ndio maadili ya chini ya data ya magnetometer kando ya x na y-axis mtawaliwa, IMU.getMagX_uT () na IMU..getMagY_uT () ni maadili yanayotolewa kutoka kwa sumaku ya sumaku wakati wowote kando ya x na y-axis mtawaliwa, na Mx na Yangu ndio maadili mapya yaliyopimwa kutumika kukokotoa kichwa.
Hatua ya 5: Msimbo wa Mwisho
Hatua ya mwisho ni kuunda nambari ya mwisho. Nimeambatanisha nakala ya nambari ya mwisho ya miradi. Ndani ya maelezo yamefanywa kusaidia kusafiri kwa nambari. Changamoto kubwa ya sehemu hii ilikuwa kupata quadrants kufanya kazi kwa usahihi. Utekelezaji wa quadrants umeonekana kuwa wa kuchosha zaidi na wenye mantiki kuliko tunavyoweza kutarajia. Hapo awali tulitekeleza arctan ya msingi (My / Mx) na kisha tukabadilishwa kutoka radian hadi digrii, kwani matokeo ya Arduino katika radians kwa chaguo-msingi. Walakini, quadrant pekee ambayo hii ilifanya kazi ilikuwa kutoka digrii 90 hadi digrii 180, ambayo ilitupa pato hasi na kuishia kuwa Quadrant III. Suluhisho la hii lilikuwa kuchukua thamani kamili, kwani bado iliongezeka kwa usahihi. Thamani hii iliondolewa kutoka 360 ili kuwasha NeoPixel LED sahihi katika jimbo la 2 na operesheni sawa ya hesabu ilitumika katika jimbo la 3 kulingana na ikiwa kichwa kilikuwa kikubwa au kidogo kuliko kichwa cha pembejeo cha mtumiaji, ambazo zote zinaweza kuonekana kwenye nambari hapo juu. Katika takwimu zilizo hapo juu, Kichwa kinalingana na taa ya NeoPixel ambayo itawashwa kulingana na tofauti kati ya kichwa cha kifaa na kupotoka kutoka kaskazini katika kesi ya jimbo la 2, na kutoka kwa kichwa cha mtumiaji. Katika kesi hii, digrii 90 hadi 180 inalingana na Quadrant III. Katika visa vyote viwili, tft.print husababisha skrini kusoma kifaa kinachoelekea kaskazini.
Kwa quadrants zingine tatu, utekelezaji wa arctan (My / Mx) ulisababisha ubadilishaji wa nyongeza wakati kifaa kilizungushwa, kwa mfano, pembe ya kichwa ingehesabu wakati ilipaswa kuhesabiwa na kinyume chake. Suluhisho la shida hii ilikuwa kupindua arctangent kwa aina ya arctan (Mx / My). Wakati hii ilitatua ubadilishaji wa nyongeza, haikutoa kichwa sahihi cha kifaa, ambayo ndio mahali ambapo quadrants ilianza. Kurekebisha rahisi kwa hii ilikuwa kuongeza mabadiliko kulingana na quadrant inayofanana. Hii inaweza kuonekana katika takwimu zifuatazo, ambazo ni vipande vya nambari kutoka Amerika 2 na 3 ya kila quadrant.
Taarifa ya kwanza ikiwa inafanywa ikiwa kichwa kilichohesabiwa na equation ya MPU ni kubwa kuliko kichwa cha mtumiaji. Chini ya hali hii kichwa cha pembejeo cha mtumiaji kinaongezwa kwenye kichwa cha kifaa na thamani inayolingana hutolewa kutoka 360. Ikiwa taarifa nyingine inafanywa, equation ya kichwa cha MPU hutolewa kutoka kwa kichwa cha pembejeo cha mtumiaji. Masharti haya yalitekelezwa ili sio tu kupata thamani sahihi ya NeoPixel, lakini ili kuepuka kupata thamani nje ya anuwai inayokubalika, ambayo ni kutoka digrii 0 hadi 359.
Ilipendekeza:
Dira ya Dira ya DIY: Hatua 14
Dira ya Dira ya DIY: Hi! Leo nitatengeneza Compass bot. Nilipata wazo hili kwa kufikiria juu ya jinsi ilivyo ngumu kuteka duara kamili bila sanduku la hesabu. Naam nimepata suluhisho lako? Kama unavyojua kuwa duara ni digrii 360, kwa hivyo bot hii inaweza kuchora sha
ESPcopter na Visuino - Badilisha Kichwa cha Dira kwa Angle ya 3D: Hatua 6
ESPcopter na Visuino - Badilisha Kichwa cha Dira kwa Angle ya 3D: ESPcopter sasa inasaidiwa kikamilifu na toleo la hivi karibuni la Visuino, na hii inafanya kuwa rahisi zaidi kupanga drone iliyopo! :-) Kwa msaada wake wa Visuino unaweza kudhibiti motors, LED, fanya kazi na Accelerometer, Gyr
Dira ya Dijiti Kutumia Arduino na HMC5883L Magnetometer: 6 Hatua
Dira ya Dijiti Kutumia Arduino na HMC5883L Magnetometer: Halo jamani, sensa hii inaweza kuonyesha eneo la Kaskazini, Kusini, Mashariki, na Magharibi, sisi wanadamu tunaweza pia kuitumia wakati inahitajika. Kwa hivyo. Katika nakala hii wacha tujaribu kuelewa jinsi sensa ya Magnetometer inafanya kazi na jinsi ya kuiunganisha na microcontro
Jinsi ya kutumia Moduli ya GY511 na Arduino [Fanya Dira ya Dijiti]: Hatua 11
Jinsi ya kutumia Moduli ya GY511 na Arduino [Tengeneza Dira ya Dijiti]: Muhtasari Katika miradi mingine ya elektroniki, tunahitaji kujua eneo la kijiografia wakati wowote na kufanya operesheni maalum ipasavyo. Katika mafunzo haya, utajifunza jinsi ya kutumia moduli ya dira ya LSM303DLHC GY-511 na Arduino kutengeneza compa za dijiti
Badili Kichwa kipya cha kichwa kuwa Kichwa cha kichwa cha kawaida (kisichoingiliana) Bila Kuharibu Kichwa cha kichwa .: Hatua 9
Badili kichwa chochote cha kichwa kuwa kichwa cha kawaida (kisichoingiliana) bila kuharibu kichwa cha kichwa. Hili ni wazo ambalo nilikuwa nalo nje ya bluu baada ya rafiki kunipa vichwa vya kichwa vilivyovunjika. Ni maikrofoni ya kawaida ambayo inaweza kushikamana na kichekesho karibu na vichwa vya sauti vyovyote (napenda hii kwa sababu ninaweza kucheza na vifaa vya sauti vya juu na pia