Orodha ya maudhui:

☠WEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti: Hatua 7 (na Picha)
☠WEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti: Hatua 7 (na Picha)

Video: ☠WEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti: Hatua 7 (na Picha)

Video: ☠WEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti: Hatua 7 (na Picha)
Video: Голубая стрела (1958) фильм 2024, Novemba
Anonim
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti
EDWEEDINATOR☠ Sehemu ya 2: Urambazaji wa Satelaiti

Mfumo wa urambazaji wa Weedinator umezaliwa!

Roboti ya kilimo inayotembea ambayo inaweza kudhibitiwa na simu janja.

… Na badala ya kupitia tu mchakato wa kawaida wa jinsi imewekwa pamoja nilifikiri nitajaribu na kuelezea jinsi inavyofanya kazi - ni wazi sio KILA KITU bali bits muhimu zaidi na ya kupendeza. Tafadhali samahani pun, lakini ni jinsi data inavyotiririka kati ya moduli za kibinafsi ambazo ninavutia na kuvunjika kuwa dhehebu la chini kabisa tunaloishia na "bits" halisi - zero na zile. Ikiwa umewahi kuchanganyikiwa juu ya bits, ka, herufi na masharti basi sasa inaweza kuwa wakati wa kutokuwa na mchanganyiko? Nitajaribu pia kutafakari wazo dogo la kufikirika linaloitwa 'Kukosea Kosa'.

Mfumo yenyewe una:

  • GPS / GNSS: Ublox C94 M8M (Rover na Base)
  • 9DOF Razor IMU MO dira ya dijiti
  • Fona 800H 2G GPRS za rununu
  • Skrini ya TFT 2.2
  • Arduino 'Mwalimu'
  • Arduino 'Watumwa' anuwai.

Cha kushangaza ni kwamba Sat Navs nyingi hazina dira ya dijiti ambayo inamaanisha ikiwa umesimama, na umepotea, lazima utembee au uendeshe kwa mwelekeo wowote wa nasibu kabla ya kifaa kukuonyesha mwelekeo sahihi kutoka kwa satelaiti. Ukipotea kwenye msitu mnene au maegesho ya chini ya ardhi umejazwa!

Hatua ya 1: Jinsi inavyofanya kazi

Inavyofanya kazi
Inavyofanya kazi

Kwa sasa, kuratibu jozi rahisi zinapakiwa kutoka kwa simu janja au kompyuta, ambazo hupakuliwa na Weedinator. Hizi hufasiriwa kwa kichwa kwa digrii na umbali wa kusafiri kwa mm.

Mtaalam wa GPRS hutumiwa kupata hifadhidata mkondoni kupitia mtandao wa rununu wa 2G na kupokea na kusambaza kuratibu kwa Arduino Ngenxa ya Arduino Nano. Inastahili ni Mwalimu na inadhibiti safu ya Arduinos zingine kama Watumwa kupitia I2C na mabasi ya serial. Kutokana inaweza kuingiliana na data ya moja kwa moja kutoka Ublox na Razor na kuonyesha kichwa kilichohesabiwa na mmoja wa watumwa wa Arduino.

Mfuatiliaji wa satellite wa Ublox ni mjanja haswa kwani hutumia kughairi makosa kupata sahihisho sahihi - mkengeuko wa mwisho wa majina ya karibu 40mm. Moduli hiyo inaundwa na jozi zinazofanana, moja ambayo, 'rover', hutembea na Weedinator, na nyingine, 'msingi' imewekwa kwenye nguzo mahali pengine nje. Kufutwa kwa hitilafu kunapatikana kwa msingi kuwa na uwezo wa kufikia urekebishaji sahihi kabisa kwa kutumia sampuli nyingi kwa muda. Sampuli hizi zinahesabiwa kufidia mabadiliko ya hali ya anga. Ikiwa kifaa kilikuwa kinasonga, ni wazi hakingeweza kupata wastani wowote na itakuwa katika rehema kamili ya mazingira yanayobadilika. Walakini, ikiwa kifaa tuli na kinachosonga hufanya kazi pamoja, maadamu wanaweza kuwasiliana kati yao, wanaweza kupata faida ya wote wawili. Wakati wowote, kitengo cha msingi bado kina hitilafu lakini pia ina marekebisho sahihi sahihi hapo awali ili iweze kuhesabu kosa halisi kwa kutoa seti moja ya kuratibu kutoka kwa nyingine. Halafu hutuma hitilafu iliyohesabiwa kwa rover kupitia kiunga cha redio, ambayo huongeza kosa kwenye kuratibu zake mwenyewe na hey presto, tuna makosa ya kughairi! Kwa hali halisi, kufuta makosa hufanya tofauti kati ya mita 3 na 40mm kupotoka kabisa.

Mfumo kamili unaonekana kuwa mgumu, lakini kwa kweli ni rahisi kujenga, iwe huru juu ya uso usiofaa au kutumia PCB ambayo nimebuni, ambayo inaruhusu moduli zote kufungwa vizuri. Maendeleo ya baadaye yamejengwa kwenye PCB, ikiruhusu safu kubwa ya Arduinos kuingizwa kudhibiti motors kwa uendeshaji, mwendo wa mbele na mashine ya CNC kwenye bodi. Urambazaji pia utasaidiwa na angalau mfumo mmoja wa utambuzi wa kitu ukitumia kamera kugundua vitu vyenye rangi, kwa mfano mipira ya gofu ya umeme, ambayo imewekwa kwa uangalifu katika aina fulani ya gridi - Tazama nafasi hii!

Hatua ya 2: Vipengele

Vipengele
Vipengele
Vipengele
Vipengele
Vipengele
Vipengele
  • Ublox C94 M8M (Rover na Base) x 2 ya
  • 9DOF Razor IMU MO dira ya dijiti
  • Fona 800H 2G GPRS za rununu 1946
  • Arduino Kutokana
  • Arduino Nano x 2 ya
  • SparkFun Pro Micro
  • Adafruit 2.2 "TFT IL1940C 1480
  • PCB (angalia faili za Gerber zilizoambatanishwa) x 2 of
  • Vipinga vya 1206 SMD sifuri ohm x 12 ya
  • LED za 1206 x 24 ya

Faili ya PCB inafungua na programu ya 'Design Spark'.

Hatua ya 3: Wiring Up Moduli

Wiring Up Moduli
Wiring Up Moduli

Hii ndio sehemu rahisi - haswa rahisi na PCB ambayo nimepata - fuata tu mchoro hapo juu. Uangalifu unahitajika ili kuzuia wiring 3v moduli hadi 5v, hata kwenye safu za serial na I2C.

Hatua ya 4: Kanuni

Kanuni
Kanuni

Nambari nyingi zinajali kupata data kuzunguka kwa mfumo kwa utaratibu na mara nyingi kuna haja ya kubadilisha fomati za data kutoka kwa nambari hadi kuelea kwa kamba na wahusika, ambayo inaweza kutatanisha sana! Itifaki ya 'Serial' itashughulikia wahusika tu na wakati mimi2Itifaki ya C itashughulikia nambari ndogo sana, nimeona ni bora kuzigeuza kuwa wahusika na kisha kubadilisha kuwa nambari kwenye mwisho mwingine wa laini ya usafirishaji.

Mdhibiti wa Weedinator kimsingi ni mfumo wa 8 kidogo na Arduinos nyingi, au 'MCU's. Wakati biti 8 inaelezewa kama zero halisi na zile zinaweza kuonekana kama hii: B01100101 ambayo ingekuwa sawa:

(1x2) + (0x2)2+ (1x2)3+ (0x2)4+ (0x2)5+ (1x2)6+ (1x2)7+ (0x2)8 =

Thamani ya Nambari ya Nambari 128 64 32 16 8 4 2 1
Thamani ya Nambari ya Kibichi 0 1 1 0 0 1 0 1

= 101

Na kiwango cha juu kinachowezekana ni 255…. Kwa hivyo kiwango cha juu cha "byte" tunaweza kupitisha juu ya mimi2C ni 255, ambayo inazuia sana!

Kwenye Arduino tunaweza kusambaza hadi herufi 32 za ASCII, au ka, kwa wakati mmoja kutumia mimi2C, ambayo ni muhimu zaidi, na seti ya herufi inajumuisha nambari, herufi na herufi za kudhibiti katika muundo 7 kidogo kama ilivyo hapo chini:

Picha
Picha

Kwa bahati nzuri, mkusanyaji wa Arduino hufanya kazi yote ya ubadilishaji kutoka kwa mhusika kwenda kwa binary nyuma, lakini bado anatarajia aina sahihi ya tabia ya kupitisha data na haitakubali 'Kamba'.

Sasa ni wakati mambo yanaweza kuchanganyikiwa. Wahusika wanaweza kuonyeshwa kama herufi moja kwa kutumia ufafanuzi wa char au kama safu moja ya herufi 20 kwa kutumia char [20]. Kamba ya Arduino inafanana sana na safu ya wahusika na kwa kweli ni safu ya herufi ambazo mara nyingi hufasiriwa na ubongo wa mwanadamu kama 'maneno'.

// Hujenga tabia ya "umbali Tabia":

Kianzi cha kamba = ""; umbaliString = mwanzilishi + umbaliString; int n = umbaliString.length (); kwa (int aa = 0; aa <= n; aa ++) {umbaliSifa [aa] = umbaliString [aa]; }

Nambari iliyo hapo juu inaweza kubadilisha kamba ndefu ya herufi kuwa safu ya herufi ambazo zinaweza kupitishwa juu ya mimi2C au mfululizo.

Katika mwisho mwingine wa laini ya usambazaji, data inaweza kubadilishwa kuwa kamba kwa kutumia nambari ifuatayo:

umbaliString = umbaliString + c; // kamba = kamba + tabia

Safu ya herufi haiwezi kubadilishwa moja kwa moja kuwa nambari na inapaswa kuingia kwenye fomati ya kamba kwanza, lakini nambari ifuatayo itabadilika kutoka kwa kamba kuwa nambari kamili:

matokeo ya ndani = (umbaliString).toInt ();

umbali umbaliMetres = matokeo;

Sasa tuna nambari kamili ambayo tunaweza kutumia kufanya mahesabu. Kuelea (nambari zilizo na nukta ya desimali) zinahitaji kubadilishwa kuwa nambari katika hatua ya usafirishaji na kisha kugawanywa na 100 kwa sehemu mbili za desimali mfano:

umbali wa kuelea Metres = umbaliMm / 1000;

Mwishowe, kamba inaweza kuundwa kutoka kwa mchanganyiko wa herufi na nambari kwa mfano:

// Hapa ndipo data imejumuishwa kuwa tabia:

dataString = mwanzilishi + "BEAR" + kuzaa + "DIST" + zdistance; // Imedhibitishwa kwa wahusika 32 // Kamba = kamba + herufi + intereger + herufi + kamili.

Nambari iliyobaki ni vitu vya kawaida vya Arduino ambavyo vinaweza kupatikana katika mifano anuwai katika maktaba za Arduino. Angalia mifano ya >>>> Kamba na mfano wa maktaba ya 'waya'.

Hapa kuna mchakato mzima wa kupitisha na kupokea kuelea:

Badilisha kuelea ➜ Kamili ring Kamba ➜ Tabia safu….. halafu TUMA safu ya herufi kutoka kwa Mwalimu ➜➜

➜➜ PATA wahusika binafsi juu ya Mtumwa…. kisha ubadilishe Tabia, Kamba, Kamili ➜ Kuelea

Hatua ya 5: Hifadhidata na Ukurasa wa wavuti

Hifadhidata na Ukurasa wa wavuti
Hifadhidata na Ukurasa wa wavuti
Hifadhidata na Ukurasa wa wavuti
Hifadhidata na Ukurasa wa wavuti

Hapo juu imeonyeshwa muundo wa hifadhidata na faili za msimbo wa php na html zimeambatanishwa. Majina ya watumiaji, majina ya hifadhidata, majina ya meza na nywila zimefunikwa kwa usalama.

Hatua ya 6: Uchunguzi wa Urambazaji

Uchunguzi wa Navigation
Uchunguzi wa Navigation
Uchunguzi wa Navigation
Uchunguzi wa Navigation
Uchunguzi wa Navigation
Uchunguzi wa Navigation

Niliweza kumfunga datalogger kwenye bodi ya kudhibiti Weedinator kupitia I2C na kupata wazo la utendaji wa nafasi ya setilaiti ya Ublox M8M:

Kwenye 'Cold Start', iliyoonyeshwa na grafu ya kijani, moduli ilianza na makosa mengi, sawa kabisa na GPS ya kawaida, na polepole kosa lilipungua hadi, baada ya masaa 2, lilipata urekebishaji wa RTK kati ya rover na msingi (umeonyeshwa kama msalaba mwekundu). Katika kipindi hicho cha masaa 2, moduli ya msingi inaendelea kujenga na kusasisha thamani ya wastani ya latitudo na longitudo na baada ya muda uliopangwa tayari kuamua kuwa imepata urekebishaji mzuri. ambapo moduli ya msingi tayari imehesabu wastani mzuri. Grafu ya juu ni zaidi ya kipindi cha dakika 200 na mara kwa mara urekebishaji hupotea na rover hutuma ujumbe wa NMEA kwa Weedinator kuwa urekebishaji huo hauwezi kuaminika kwa muda.

Grafu ya chini ya bluu ni 'kuvuta' kwenye sanduku nyekundu kwenye grafu ya juu na inaonyesha picha nzuri ya mwakilishi wa utendaji wa Ublox, na kupotoka kabisa kwa 40 mm, ambayo ni zaidi ya kutosha kuongoza Weedinator kwenda kwake, lakini labda haitoshi kulima mchanga karibu na mimea ya kibinafsi?

Grafu ya tatu inaonyesha data iliyokusanywa na Rover na Base kwa umbali wa mita 100 - Hakuna kosa la ziada lililogunduliwa - umbali wa kujitenga haukufanya tofauti yoyote kwa usahihi.

Hatua ya 7: Mwisho

Ilipendekeza: