Server v oblacích: příprava ke spuštění

В příspěvek o regatě Zmínili jsme, že v srpnu proběhne soutěž o ceny pro všechny Habrazhitely. Nastal čas strhnout závoj tajemství. Nějak nás napadlo, že výraz „server v oblacích“ lze brát doslova. Pojďme vlastně spustit funkční server do nebe, který lze pingnout! Zpočátku to vypadalo šíleně, ale poté, co jsme to překroutili tak a tak a všelijak jsme o tom diskutovali, nakonec jsme přišli na způsob, jak poslat server směrem k ptákům. Na konci srpna proběhne epochální uvedení, ale zatím pracujeme na hardwarové části projektu. Detaily pod střihem.

Server v oblacích: příprava ke spuštění

  1. Server bude založen na Raspberry Pi 3

    Bylo by zajímavé zvednout do vzduchu jednojednotkový server, ale jeho hmotnost + hmotnost UPS... To vše by vyžadovalo značnou zvedací sílu. A proč, když na základě kompaktního Raspberry Pi 3 můžete nasadit docela slušný server, s výpočetním výkonem několikasetkrát větším než stroj, na kterém se v roce 1991 bavil Tim Berners-Lee.

  2. Spusťte server v horkovzdušném balónu

    Měli jsme nápady, jak zvednout server na sondě s héliem, ale pak server nebude dlouho pípat, než balón ve velké výšce v řídké atmosféře praskne a celá konstrukce spadne na zem. Chtěl jsem rozšířit „okno“ vysílacího času na jednu a půl hodiny. A pak se rozhodli použít balon. Doba letu je dvě hodiny. Navíc, přestože let není zcela ovladatelný, může být v koši náš inženýr, který v případě poruchy dokáže rychle, přímo na místě, „zapnout a vypnout“.

  3. Jako dopravní síť použijeme mobilní komunikaci

    Moderní WiFi antény dokážou „probodnout“ poměrně velké vzdálenosti, ale k tomu by bylo nutné vybudovat komunikační komplex, který by svými parametry nebyl o moc horší než vojenská radarová stanice. A kvůli 1,5-2 hodinám komunikace nemá smysl takový systém budovat, protože ve výšce balónu musí celulární komunikace fungovat stabilně.

Po zformulování těchto „postulátů“ se projekt již nezdál nerealizovatelný a brzy jsme začali pracovat ve všech třech směrech najednou.

Nejprve jsme se obrátili na kluky z nearspace.ru, který psa sežral při vypouštění všemožných kusů železa do vzduchu (s následným hledáním a záchranou).

Pak jsme vyndali Raspberry Pi 3, které leželo na nočním stolku našeho administrátora, a začali ho nastavovat.

Server v oblacích: příprava ke spuštění
Připojená kamera:

Server v oblacích: příprava ke spuštění
A testovali jsme to na našem „Semyonu“:

Server v oblacích: příprava ke spuštění
Semyon je velmi pohodlný jako model a asistent - nežádá o jídlo, není rušen telefonem, je vždy ve skvělé náladě a se širokým úsměvem z celé helmy. Na let samozřejmě takový skafandr nepotřebujeme, ale navodí v kanceláři tu správnou atmosféru.

Osnova projektu je následující:

Server v oblacích: příprava ke spuštění
Powerbanka se používá pro pozemní testování, pro spuštění je potřeba něco spolehlivějšího.

Asi nejzajímavějším hardwarem je deska pro příjem dat ze všech senzorů:

Server v oblacích: příprava ke spuštění
Kluci z nearspace.ru Dlouho jsme bojovali s různými analogy a pak jsme si sami vyrobili palubní počítač, protože spolehlivost je rozhodující, osud celého projektu závisí na telemetrických datech. Palubní počítač je zodpovědný za příjem dat ze všech připojených senzorů a jejich přenos do Raspberry Pi.

Spustili jsme to, nakonfigurovali a po pár týdnech programování a dřepů s tamburínami se nám podařilo získat telemetrická data a fotku Semyona z širokoúhlého fotoaparátu:

Server v oblacích: příprava ke spuštění
Telemetrická data se přenášejí na jednom řádku v následující podobě:

Server v oblacích: příprava ke spuštění
Tento kód pak převede řetězec na pole a odešle data na web:

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

Popis některých údajů:

  • N:2432; — počet datových paketů, stále rostoucí
  • T:40m39s; — čas od okamžiku zapnutí letového ovladače
  • MP.Stage:0; — etapa letu (0 — na zemi nebo pod 1 km, 1 — stoupání, 2 — visení ve výšce, 3 — klesání)
  • MP.Alt:54; — barometrická nadmořská výška v metrech od hladiny moře – měla by být zobrazena
  • MP.VSpeed:0.0; — vertikální rychlost v metrech za sekundu se středním filtrem
  • MP.AvgVSpeed:0.0; — vertikální rychlost v metrech za sekundu s průměrovacím filtrem
  • Baro.Press:1006.49; — barometrický tlak v milibarech
  • Baro.Alt:54; - nadmořská výška podle barometru
  • Baro.Tep:36.99; - teplota samotného barometru
  • GPS.Coord:N56d43m23s,E37d55m68s; — aktuální souřadnice
  • GPS.Home:N56d43m23s,E37d55m68s; — souřadnice výchozího bodu
  • GPS.Alt:165; — GPS nadmořská výška v metrech
  • GPS.Dst:10; — vzdálenost od výchozího bodu v metrech
  • DS.Temp:[fc]=34.56; - teplotní čidlo na desce

Jak vypadá výstup:

Array 
(
       [N] => 647
       [Т] => 10m55з
       [MP_Stage] => 0
       [MP_Alt] => 49
       [MP_VSpeed) => 0.0
       [MP_AvgVSpeed] => 0.0
       [Baro Рrеss] => 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с] ЗЗ.56
       [Volt] => 5.19, 0.00,0.00,0.00,0.00,0.00,0.00,0.00 
)

Co dělat, když mobilní komunikace „spadne“? Pro tento případ máme druhou kartu, do modemu jsou vloženy dvě SIM karty (po jednom slotu):

Server v oblacích: příprava ke spuštění
Může se automaticky přepnout na náhradní kanál, pokud hlavní náhle přestane reagovat.

Co se stane, když obě mobilní sítě přestanou být dostupné?

Server v oblacích: příprava ke spuštění(Chlapec z vydání "Yeralash" č. 45 Ne nadarmo čte „Teorie pravděpodobnosti“)

V tomto případě budeme mít nezávislý GPS tracker, který vysílá signál o své poloze. Upozorňujeme, že to nedělá přes celulární síť, jejíž dostupnost na velké vzdálenosti nikdo nezaručuje, ale přes satelit.

Server v oblacích: příprava ke spuštění
Ano, GPS tracker je poněkud větší než ten, který byl implantován pod kůži Jamese Bonda. Vzhledem k tomu, že naše konkurence závisí na souřadnicích létajícího serveru, bude tato část dat získaných z desky nejdůležitější. Ale o tom si povíme v příštím příspěvku. Již brzy, sledujte náš blog!

Věříme v úspěch celého podniku natolik, že jsme dokonce vyhlásili soutěž pro ty, kteří najednou chtějí uhodnout, kam míček dopadne. Podrobnosti v našem nový příspěvek.

Zdroj: www.habr.com

Přidat komentář