Server në re: Po përgatitemi për lançim

Në posta për regatën Ne përmendëm se në gusht të gjithë përdoruesit e Habrash do të presin një konkurs me çmime. Ka ardhur koha për të hequr travet e fshehtësisë. Njëherë na erdhi ideja se fraza "server në retë" mund të kuptohet në kuptimin e vërtetë. Po pse të mos nisim një server që mund ta pingojmë vërtet në qiell? Në fillim idea dukej e çmendur, por pasi e përpunuam, e diskutuam në të gjitha mënyrat, ne përfundimisht gjetëm një mënyrë për ta dërguar serverin në takim me zogjtë. Në fund të gushtit do të ndodhi një lansim epokal, dhe për momentin po punojmë në anën teknike të projektit. Detajet janë më poshtë.

Server në re: Po përgatitemi për lançim

  1. Serveri do të bazohet në Raspberry Pi 3

    Do të ishte interesante të ngjitej një server një-junit në ajër, megjithatë pesha e tij + pesha e UPS... Kjo do të kërkonte një forcë të konsiderueshme ngjitëse. Dhe përse, nëse me një Raspberry Pi 3 kompakt mund të zhvillohet një server mjaft i mirë, me fuqi llogaritëse disa herë më shumë se makina mbi të cilën u argëtua Tim Berners-Lee në vitin 1991.

  2. Serveri do të nisë mbi një balonë ajri

    Kishim ide për ta ngritur serverin me një sondë heliumike, por në atë rast serveri do të pingonte për një kohë të shkurtër përpara se balona të çpërthehej në një lartësi të madhe në atmosferë të holluar dhe gjithë konstrukti do të binte në tokë. Do të doja të zgjeroja "dritaren" e kohezionit deri në një orë e gjysmë. Dhe atëherë vendosëm të përdornim një balonë ajri. Koha e fluturimit është dy orë. Për më tepër, fluturimi, ndonëse jo plotësisht të menaxhueshëm, megjithatë mund të ketë inxhinierin tonë në përbasket, i cili mund të aktivizojë ose çaktivizojë menjëherë në rast probleme.

  3. Për rrjetin e transportit do të përdorim lidhjen celulare

    Antena moderne WiFi mund të "kalojnë" distanca mjaft të mëdha, megjithatë për këtë do të duhej të ndërtohej një kompleks komunikimi që do të ishte pak a shumë i barabartë me tjerrje radarlokacioni ushtarak. Dhe për 1,5-2 orë lidhjeje nuk ka asnjë kuptim të ndërtohet një sistem të tillë, sepse në lartësitë e fluturimit të balonës, lidhja celulare duhet të funksionojë qëndrushëm.

Pas formulating këtyre "postulateve", projekti nuk dukej më si një ëndërr e pa realizueshme dhe së shpejti filluam të punojmë në të tre drejtimet njëkohësisht.

Së pari, iu drejtua ndihmës djemve nga nearspace.ru, të cilët kanë përvojë në lëshimin e çdo lloj pajisje në ajër (me gjetjen dhe shpëtimin e saj më pas).

Pastaj morëm një Raspberry Pi 3 që ishte duke pritur në tërësinë e administratorit tonë dhe filluam ta konfigurojmë atë.

Server në re: Po përgatitemi për lançim
Lidhëm kamerën:

Server në re: Po përgatitemi për lançim
Dhe e testuam në "Semyon":

Server në re: Po përgatitemi për lançim
Semyon Ă«shtĂ« shumĂ« i pĂ«rshtatshĂ«m si model dhe ndihmĂ«s — nuk kĂ«rkon ushqim, nuk shpĂ«rqendrohet nga telefoni, gjithmonĂ« Ă«shtĂ« nĂ« humor tĂ« shkĂ«lqyer dhe me njĂ« buzĂ«qeshje tĂ« gjerĂ« pĂ«r tĂ« gjithĂ« helmetĂ«n. Sigurisht, njĂ« skafandĂ«r i tillĂ« nuk do tĂ« na nevojitet pĂ«r fluturim, por krijon njĂ« atmosferĂ« tĂ« duhur nĂ« zyrĂ«.

Skema e projektit vizatohet si vijon:

Server në re: Po përgatitemi për lançim
Powerbank-u përdoret për testimin në tokë, për fillimin nevojitet diçka më të besueshme.

Më interesante, ndoshta, është karta për marrjen e të dhënave nga të gjithë sensorët:

Server në re: Po përgatitemi për lançim
Djemtë nga nearspace.ru kaluan shumë kohe duke u munduar me analogët e ndryshëm, e pastaj e bënë vetë kompjuterin e bordit, sepse besueshmëria është çelësi, nga të dhënat e telemetrisë varet fati i gjithë projektit. Kompjuterin e bordit është përgjegjës për marrjen e të dhënave nga të gjithë sensorët e lidhur dhe i dërgon ato në Raspberry Pi.

E thamë, e konfiguramë, dhe pas disa javësh programimi dhe përpjekjesh arritëm të merrnim të dhëna telemetrie dhe foto të Semyon-it me kamerën me kënd të gjerë:

Server në re: Po përgatitemi për lançim
Të dhënat e telemetrisë dërgohen në një rresht të tillë:

Server në re: Po përgatitemi për lançim
Pastaj ky kod e converton rreshtin në një masiv dhe e nxjerr të dhënat në faqe:

$str = 'N:647;T:10m55s;MP.Stage:0;MP.Alt:49;MP.VSpeed:0.0;MP.AvgVSpeed:0.0;Baro.Press:1007.06;Baro.Alt:50;Baro.Temp:35.93;GPS.Coord:N56d43m23s,E37d55m68s;GPS.Home:N56d43m23s,E37d55m68s;Dst:5;GPS.HSpeed:0;GPS.Course:357;GPS.Time:11h17m40s;GPS.Date:30.07.2018;DS.Temp:[fc]=33.56;Volt:5.19,0.00,0.00,0.00,0.00,0.00,0.00,0.00';
parse_str(strtr($str, [
	
':' => '=',
	
';' => '&'
]), $result);
print_r($result);

Përshkrimi i disa të dhënave:

  • N:2432; — numri i paketĂ«s sĂ« tĂ« dhĂ«nave, gjithmonĂ« rritet
  • T:40m39s; — koha nga momenti i ndizjes sĂ« kontrollorit tĂ« fluturimit
  • MP.Stage:0; — fase e fluturimit (0 — nĂ« tokĂ« ose nĂ«n 1 km, 1 — pĂ«rshpejtim, 2 — qĂ«ndrim nĂ« lartĂ«si, 3 — zbritje)
  • MP.Alt:54; — lartĂ«sia barometrike nĂ« metra mbi nivelin e detit — duhet tĂ« nxirret
  • MP.VSpeed:0.0; — shpejtĂ«sia vertikale nĂ« metra pĂ«r sekondĂ« me filtrin e medianĂ«s
  • MP.AvgVSpeed:0.0; — shpejtĂ«sia vertikale nĂ« metra pĂ«r sekondĂ« me filtrin mesatar
  • Baro.Press:1006.49; — presioni nga barometri nĂ« milibarĂ«
  • Baro.Alt:54; — lartĂ«sia nga barometri
  • Baro.Temp:36.99; — temperatura e vetĂ« barometrit
  • GPS.Coord:N56d43m23s,E37d55m68s; — koordinatat aktuale
  • GPS.Home:N56d43m23s,E37d55m68s; — koordinatat e pikĂ«s sĂ« nisjes
  • GPS.Alt:165; — lartĂ«sia sipas GPS nĂ« metra
  • GPS.Dst:10; — distanca nga pika e nisjes nĂ« metra
  • DS.Temp:[fc]=34.56; — sensor temperaturĂ« nĂ« bord

Si duket të dhënat e shtruara:

Array 
(
       [N] => 647
       [T] => 10m55s
       [MP_Stage] => 0
       [MP_Alt] => 49
       [MP_VSpeed] => 0.0
       [MP_AvgVSpeed] => 0.0
       [Baro_Press] => 1007.06
       [Baro_Alt] => 50
       [Baro_Temp] => 35.93
       [GPS_Coord] => N56d43m23s,E37d55m68s 
       [GPS_Home] => N56d43m23s,E37d55m68s 
       [Dst] => 5
       [GPS_HSpeed] => 0
       [GPS_Course] => 357
       [GPS_Time] => 11h17m40s
       [GPS_Date] => 30.07.2018
       [DS_Temp] => [fс] 33.56
       [Volt] => 5.19, 0.00,0.00,0.00,0.00,0.00,0.00,0.00 
)

ÇfarĂ« tĂ« bĂ«jmĂ« nĂ«se lidhja celulare "bie"? PĂ«r kĂ«tĂ« rast ne kemi njĂ« kartĂ« tĂ« dytĂ«, nĂ« modem futen dy SIM karta (nĂ« njĂ« slot me radhĂ«):

Server në re: Po përgatitemi për lançim
Ai mund të kalojë automatikisht në kanalin rezervë nëse kanali kryesor ndalon së përgjiguri.

ÇfarĂ« do tĂ« ndodhĂ« nĂ«se tĂ« dy rrjetet celulare nuk janĂ« tĂ« arritshme?

Server në re: Po përgatitemi për lançim(Djali nga numri i episodit "Eralash" nr. 45 nuk është se e lexon "Teorinë e probabiliteteve")

Për këtë rast do të kemi një GPS të pavarur, që dërgon sinjal për vendndodhjen e tij. Kushtojini vëmendje se ai e bën këtë jo përmes rrjetit celular, disponueshmëria e të cilit në distanca të mëdha nuk garanton askush, por me satelit.

Server në re: Po përgatitemi për lançim
Po, GPS-i është pak më i madh se ai që u implantua nën lëkurë për James Bondin. Ndërsa konkursi ynë varet nga koordinatat e serverit që fluturon, ky informacion do të jetë pjesa më e rëndësishme e të dhënave që marrim nga bordi. Por për këtë do të flasim në postimin e ardhshëm. Shpejt, qëndroni të lidhur me blogun tonë!

Ne besojmë në suksesin e gjithanshëm të ndërmarrjes aq shumë, saqë kemi shpallur një konkurs për ata që duan të parashikojnë vendin e uljes së kubit. Detajet në postin e ri.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster