Server pilves: valmistume kÀivitamiseks

V postitus regattast Oleme maininud, et augustis ootab kĂ”iki huvilisi konkurs, mille auhinnad on ahvatlevad. On aeg tĂ”sta saladusetsoon varjust. Meil tekkis mĂ”te, et fraasi „server pilves“ vĂ”ib tĂ”epoolest mĂ”ista sĂ”na-sĂ”nalt. Miks mitte tĂ”eliselt saata töötav server taevasse, mida saab pingida? Alguses tundus idee hullumeelsena, aga pĂ€rast mitmeid arutelusid ja uute nurkade alt mĂ”tlemist leidsime siiski viisi, kuidas server linde tervitama saata. Ajalugu kirjutav kĂ€ivitamine toimub juba augusti lĂ”pus, kuid seni töötame projekti riistvara kallal. Üksikasjad allpool.

Server pilves: valmistume kÀivitamiseks

  1. Server pÔhineb Raspberry Pi 3-l

    Oleks huvitav ĂŒles tĂ”sta ĂŒheeaurus-server, kuid selle kaal + UPS-i kaal... KĂ”ike seda vajaks mĂ€rkimisvÀÀrset tĂ”stejĂ”udu. Ja miks, kui kompaktse Raspberry Pi 3 peal saab ĂŒles seada tĂ€iesti vÀÀrika serveri, mille arvutusvĂ”imsus on mitu sada korda suurem kui selles masinas, millega Tim Berners-Lee 1991. aastal lĂ”butses.

  2. KÀivitame serveri Ôhupallis

    Meil oli ideed tĂ”sta server heeliumiklassi, kuid siis server pingi vaid lĂŒhikest aega, enne kui pall suurel kĂ”rgusel harja lĂ”hkeb Ă”hukesest atmosfÀÀrist ja kogu konstruktsioon kukub maapinnale. Soovisime laiendada eetrisoleku "aken" kuni poolteist tundi. Sellest tulenevalt otsustasime kasutada Ă”hupalli. Lennu kestus on kaks tundi. Lisaks sellele, kuigi lend ei ole tĂ€ielikult juhitav, vĂ”ib korvis olla meie insener, kes suudab korraliku rikke korral kohapeal "lĂŒlitada sisse ja vĂ€lja".

  3. Transpordi vÔrguna kasutame mobiiltelefoni

    Kaasaegsed WiFi-antennid vĂ”ivad katta ĂŒsna suuri vahemaid, kuid selleks tuleks ehitada sidekompleks, mis on oma parameetritelt vaid veidi madalam kui sĂ”javĂ€e radari jaama. Ja 1,5-2 tunni side nimel ei ole mĂ”tet ehitada sellist sĂŒsteemi, sest Ă”hupalli lennu kĂ”rgusel peab mobiilside toimima stabiilselt.

PÀrast nende "postulaatide" formuleerimist lÔpetas projekt tunduda saavutatavana ja peagi hakkasime töötama samal ajal kÔigis kolmes suunas.

Esimese asjana pöördusime abi saamiseks nearspace.ru, kes on tohutul hulgal erinevaid seadmeid Ôhku lasknud (koos nende leidmise ja pÀÀstmisega).

SeejÀrel tÔime esile Raspberry Pi 3, mis toas juba vedeleb, ja hakkasime seda seadistama.

Server pilves: valmistume kÀivitamiseks
Ühendatud on kaamera:

Server pilves: valmistume kÀivitamiseks
Ja testisime seda meie „Semeniga”:

Server pilves: valmistume kÀivitamiseks
Semen on suurepĂ€rane mudel ja abiline — ei palu sĂŒĂŒa, ei hĂ€iri telefoni, on alati heas tujus ja naeratab laialt. Loomulikult pole meile lennuks vajalik sellsitoodet, kuid see loob meie kontoris Ă”ige Ă”hkkonna.

Projekti skeem hakkab vÀlja joonistuma:

Server pilves: valmistume kÀivitamiseks
Powerbank on maapealseks testimiseks, kÀivitamiseks on midagi usaldusvÀÀrsemat vajalik.

VÔib-olla huvitavaim seadeldis on plaat, mis kogub andmeid kÔikidest anduritest:

Server pilves: valmistume kÀivitamiseks
Inimesed nearspace.ru vaevasid end pikka aega erinevate analoogidega, kuni nad ise tegid pardaarvuti, sest usaldusvÀÀrsus on ĂŒlioluline — andmete telemeetriakogumine mÀÀrab kogu projekti saatuse. Pardaarvuti vastutab kĂ”ikide ĂŒhendatud anduritest saadud andmete vastuvĂ”tmise ja edastamise eest Raspberry Pi-le.

KĂ€ivitasime, seadistasime ja mĂ”ne nĂ€dala programmeerimise ja pĂŒhi bumbadega jĂ€tsime telemeetriate andmed ja Semjoni pildid laia nurga kaameraga:

Server pilves: valmistume kÀivitamiseks
Telemeetriate andmed edastatakse ĂŒhes real jĂ€rgmises vormingus:

Server pilves: valmistume kÀivitamiseks
SeejÀrel muundab see kood rea massiiviks ja kuvab andmed veebilehel:

$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);

MÔnede andmete kirjeldus:

  • N:2432; — andmepaketi number, mis suureneb alati
  • T:40m39s; — aeg alates lennukontrolleri sisselĂŒlitamisest
  • MP.Stage:0; — lennufaasi etapp (0 — maapinnal vĂ”i madalamal kui 1 km, 1 — tĂ”us, 2 — kĂ”rgusel pĂŒsimine, 3 — laskumine)
  • MP.Alt:54; — baromeetriline kĂ”rgus meetrites merepinnast — see peaks olema kuvatud
  • MP.VSpeed:0.0; — vertikaalne kiirus meetrites sekundis mediaanfiltriga
  • MP.AvgVSpeed:0.0; — vertikaalne kiirus meetrites sekundis keskmistava filtriga
  • Baro.Press:1006.49; — rĂ”hk baromeetri jĂ€rgi millibaardenes
  • Baro.Alt:54; — kĂ”rgus baromeetri jĂ€rgi
  • Baro.Temp:36.99; — baromeetri temperatuur
  • GPS.Coord:N56d43m23s,E37d55m68s; — hetked koordinaadid
  • GPS.Home:N56d43m23s,E37d55m68s; — stardikoha koordinaadid
  • GPS.Alt:165; — kĂ”rgus GPS-i jĂ€rgi meetrites
  • GPS.Dst:10; — kaugus stardikohast meetrites
  • DS.Temp:[fc]=34.56; — plaadi temperatuurandur

Kuidas vÀlja nÀevad vÀljundandmed:

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] => [fc] 33.56
       [Volt] => 5.19, 0.00,0.00,0.00,0.00,0.00,0.00,0.00 
)

Aga mis juhtub, kui mobiilside kaob? Meil on selleks juhuks teine kaart, modemisse sisestatakse kaks SIM-kaarti (ĂŒksikasjalikult):

Server pilves: valmistume kÀivitamiseks
See oskab automaatselt vahetada varukanalile, kui peamine Àkki lakab reageerimast.

Aga mis juhtub, kui mÔlemad mobiilivÔrgud muutuvad kÀttesaamatuks?

Server pilves: valmistume kÀivitamiseks(Poiss filmist «Eralash» nr 45 ei loe asjata «TÔenÀosusteooriat»)

Selle juhtumi jaoks on meil iseseisev GPS-jÀlgija, mis saadab signaali oma asukohast. Pange tÀhele, et see ei tee seda mobiilsideteenuse kaudu, mille kÀttesaadavust suurel vahemaa ei saa keegi garanteerida, vaid satelliidi kaudu.

Server pilves: valmistume kÀivitamiseks
Jah, GPS-jĂ€lgija on veidi suurem kui see, mille James Bond endasse sĂŒstis. Kuna meie konkurss sĂ”ltub lendava serveri koordinaatidest, on see osa pardalt saadud andmetest kĂ”ige olulisem. Kuid sellest rÀÀgime juba jĂ€rgmises postituses. Peagi, jĂ€lgige meie blogi!

Me usume ettevĂ”tte edu nii palju, et kuulutasime isegi vĂ€lja konkursi nende vahel, kes julgevad ennustada Ă”hupalli maandumise kohta. Üksikasjad meie uus postitus.

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster