Sky Server: Getting Ready for Launch

I innlegg om regatta Vi nevnte at alle Habr-brukere kan se frem til en konkurranse med premier i august. NÄ er det pÄ tide Ä avslÞre hemmelighetene. Vi fikk en tanke om at uttrykket «server i skyene» kan forstÄs bokstavelig. Hva om vi faktisk sender en fungerende server opp i luften som kan pinges? I begynnelsen virket ideen sprÞ, men etter Ä ha vridd og vendt pÄ den, diskutert den i det uendelige, kom vi likevel opp med en mÄte Ä sende serveren opp mot fuglene. Den epokegjÞrende lanseringen vil finne sted mot slutten av august, mens vi nÄ jobber med den tekniske delen av prosjektet. Detaljer nedenfor.

Sky Server: Getting Ready for Launch

  1. Serveren blir basert pÄ Raspberry Pi 3

    Det ville vÊrt interessant Ä lÞfte en 1U-server i luften, men vekten + vekten av UPS-en
 For alt dette ville en betydelig lÞftekraft vÊrt nÞdvendig. Og hvorfor gjÞre det, nÄr vi kan sette opp en ganske anstendig server basert pÄ den kompakte Raspberry Pi 3, som har regnekraft flere hundre ganger stÞrre enn den maskinen Tim Berners-Lee lekte med i 1991.

  2. Serveren skal sendes opp med en luftballong

    Vi hadde ideer om Ä lÞfte serveren pÄ en heliumsonde, men da ville serveren bare bli pinget i kort tid fÞr ballongen sprakk i hÞyden i tynnere atmosfÊre, og hele konstruksjonen ville falle til bakken. Vi Þnsket Ä utvide «vinduet» for sending til halvannen time. Derfor bestemte vi oss for Ä bruke en luftballong. Flytiden er to timer. I tillegg, selv om flyvningen ikke er helt styrt, kan vÄr ingeniÞr vÊre i kurven, og dersom det oppstÄr problemer, kan han raskt, pÄ stedet, «slÄ den pÄ og av».

  3. Vi vil bruke mobilnettverket som transportnett.

    Moderne WiFi-antenner kan nĂ„ ganske langt, men for dette mĂ„tte vi bygge et kommunikasjonsanlegg som knapt ville gi etter for militĂŠre radarsystemer. Det gir ikke mening Ă„ bygge et slikt system for 1,5–2 timers kommunikasjon, ettersom mobilnettverket mĂ„ fungere stabilt pĂ„ hĂžyden der ballonflyvningen skjer.

Etter Ä ha formulert disse «postulatene» sluttet prosjektet Ä virke umulig, og snart begynte vi Ä jobbe med alle tre retningene samtidig.

FÞrst kontaktet vi folkene fra nearspace.ru, som har stor erfaring med Ä sende diverse utstyr opp i luften (med pÄfÞlgende leting og redning).

Deretter tok vi frem Raspberry Pi 3 som lÄ i adminens skuff, og begynte Ä konfigurere den.

Sky Server: Getting Ready for Launch
Vi koblet til kameraet:

Sky Server: Getting Ready for Launch
Og testet det pÄ vÄr "Semyon":

Sky Server: Getting Ready for Launch
Semyon er veldig praktisk som modell og assistent - han ber ikke om mat, blir ikke distrahert av telefoner, er alltid i godt humÞr og med et bredt smil over hele hjelmen. SelvfÞlgelig trenger vi ikke en slik romdrakt for flygningen, men den skaper riktig atmosfÊre pÄ kontoret.

Prosjektplanen ser ut som fĂžlger:

Sky Server: Getting Ready for Launch
Powerbank brukes til bakken testing; for oppstart trenger vi noe mer pÄlitelig.

Den mest interessante maskinvaren er kortet for Ă„ hente data fra alle sensorer:

Sky Server: Getting Ready for Launch
Guttene fra nearspace.ru slitt lenge med forskjellige alternativer, men sÄ laget de selv en omborddatamaskin, fordi pÄlitelighet er av avgjÞrende betydning; suksessen til hele prosjektet avhenger av telemetridataene. Omborddatamaskinen ansvarer for Ä motta data fra alle tilkoblede sensorer og sender dem til Raspberry Pi.

Vi startet opp, konfigurerte, og etter bare et par uker med programmering og bĂžnner fikk vi telemetridataene og bilder av Semyon med det vidvinklede kameraet:

Sky Server: Getting Ready for Launch
Telemetridataene sendes som en enkelt streng i fĂžlgende format:

Sky Server: Getting Ready for Launch
Deretter konverterer denne koden strengen til et array og viser dataene pÄ nettsiden:

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

Beskrivelse av noen av dataene:

  • N:2432; — pakke nummer, som alltid Ăžker
  • T:40m39s; — tiden siden oppstart av flykontrolleren
  • MP.Stage:0; — flygningstrinn (0 — pĂ„ bakken eller under 1 km, 1 — oppstigning, 2 — svevende i hĂžyden, 3 — nedstigning)
  • MP.Alt:54; — barometrisk hĂžyde i meter over havnivĂ„ — dette bĂžr vises
  • MP.VSpeed:0.0; — vertikal fart i meter per sekund med medianfilter
  • MP.AvgVSpeed:0.0; — vertikal fart i meter per sekund med gjennomsnittsfilter
  • Baro.Press:1006.49; — trykk mĂ„lt av barometeret i millibar
  • Baro.Alt:54; — hĂžyde og barometer
  • Baro.Temp:36.99; — temperatur pĂ„ selve barometeret
  • GPS.Coord:N56d43m23s,E37d55m68s; — nĂ„vĂŠrende koordinater
  • GPS.Home:N56d43m23s,E37d55m68s; — koordinatene for startpunktet
  • GPS.Alt:165; — hĂžyde mĂ„lt av GPS i meter
  • GPS.Dst:10; — avstanden fra startpunktet i meter
  • DS.Temp:[fc]=34.56; — temperatursensor pĂ„ kortet

Slik ser de utdataene ut:

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 
)

Hva skal man gjÞre hvis mobilnettet "faller ut"? I sÄ fall har vi et sekundÊrt kort som har plass til to SIM-kort (byttet ut i ett spor):

Sky Server: Getting Ready for Launch
Den kan automatisk bytte til reservekanalen hvis hovedkanalen plutselig slutter Ă„ svare.

Hva skjer hvis begge mobilnettene blir utilgjengelige?

Sky Server: Getting Ready for Launch(Gutten fra utgivelsen "Yeralash" nr. 45 leser ikke uten grunn "Sannsynlighetsteori")

I sÄ fall vil vi ha en uavhengig GPS-tracker som sender signal om sin posisjon. VÊr oppmerksom pÄ at dette skjer ikke via mobilnett, hvis tilgjengelighet ikke er garantert over lange avstander, men via satellitt.

Sky Server: Getting Ready for Launch
Ja, GPS-trackeren er noe stÞrre enn den som ble implantert under huden pÄ James Bond. Siden vÄr konkurranse avhenger av koordinatene til den flygende serveren, vil denne delen av dataene som hentes fra bordet vÊre den viktigste. Men vi kommer til Ä fortelle mer om dette i neste innlegg. Hold Þye med bloggen vÄr!

Vi tror sÄ sterkt pÄ suksessen til hele prosjektet at vi til og med har kunngjort en konkurranse for dem som vil prÞve Ä gjette hvor ballen vil lande. Detaljer i vÄr et nytt innlegg.

Kilde: habr.com

KjĂžp pĂ„litelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere đŸ”„ KjĂžp pĂ„litelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster