Serveris mākoņos: gatavojamies palaiÅ”anai

Š’ ieraksts par regati Minējām, ka augustā bÅ«s konkurss ar balvām visiem Habrazhiteļiem. Ir pienācis laiks noraut noslēpuma plÄ«vuru. Kaut kā radās doma, ka frāzi ā€œserveris mākoņosā€ var uztvert burtiski. PalaidÄ«sim debesÄ«s strādājoÅ”u serveri, kuram var pieslēgt ping! Sākotnēji ideja likās traka, bet pagrozot to Å”urpu, visādi apspriežot, beidzot izdomājām, kā serveri sÅ«tÄ«t pretÄ« putniem. Augusta beigās notiks laikmetÄ«ga palaiÅ”ana, taču Å”obrÄ«d strādājam pie projekta aparatÅ«ras daļas. SÄ«kāka informācija zem griezuma.

Serveris mākoņos: gatavojamies palaiÅ”anai

  1. Servera pamatā būs Raspberry Pi 3

    BÅ«tu interesanti pacelt gaisā vienu vienÄ«bu serveri, bet tā svars + UPS svars... Tas viss prasÄ«tu ievērojamu celÅ”anas spēku. Un kāpēc, ja, pamatojoties uz kompakto Raspberry Pi 3, jÅ«s varat izvietot diezgan pienācÄ«gu serveri ar skaitļoÅ”anas jaudu, kas ir vairākus simtus reižu lielāka nekā maŔīnai, ar kuru Tims Berners-LÄ« izklaidējās 1991. gadā.

  2. Palaidīsim serveri gaisa balonā

    Mums bija idejas pacelt serveri uz hēlija zondes, bet tad serveris ilgi nepingotu, pirms balons lielā augstumā pārsprāgtu retā atmosfērā un visa konstrukcija nokristu zemē. Es gribēju paplaÅ”ināt raidlaika ā€œloguā€ lÄ«dz pusotrai stundai. Un tad viņi nolēma izmantot balonu. Lidojuma ilgums ir divas stundas. Turklāt, lai gan lidojums nav pilnÄ«bā vadāms, grozā var atrasties mÅ«su inženieris, kurÅ” darbÄ«bas traucējumu gadÄ«jumā var ātri, tieÅ”i uz vietas ā€œieslēgt un izslēgtā€.

  3. Kā transporta tīklu izmantosim mobilos sakarus

    MÅ«sdienu WiFi antenas var ā€œcaurdurtā€ diezgan lielus attālumus, taču Å”im nolÅ«kam bÅ«tu nepiecieÅ”ams izveidot sakaru kompleksu, kas pēc saviem parametriem daudz neatpaliek no militārās radaru stacijas. Un 1,5-2 stundu komunikācijas labad nav jēgas bÅ«vēt Ŕādu sistēmu, jo balona augstumā mobilajiem sakariem ir jādarbojas stabili.

Pēc Å”o ā€œpostulātuā€ formulÄ“Å”anas projekts vairs neŔķita nepraktisks, un drÄ«z vien sākām strādāt visos trÄ«s virzienos vienlaikus.

Vispirms mēs vērsāmies pie puiÅ”iem no nearspace.ru, kurÅ” apēda suni, palaižot gaisā visādus dzelzs gabalus (ar sekojoÅ”u meklÄ“Å”anu un glābÅ”anu).

Tad mēs izņēmām Raspberry Pi 3, kas gulēja mūsu administratora naktsgaldiņā, un sākām to uzstādīt.

Serveris mākoņos: gatavojamies palaiÅ”anai
Pievienota kamera:

Serveris mākoņos: gatavojamies palaiÅ”anai
Un mēs to pārbaudÄ«jām savā ā€œSemjonāā€:

Serveris mākoņos: gatavojamies palaiÅ”anai
Semjons ir ļoti ērts kā modele un asistents - viņŔ neprasa ēst, nenovērÅ” uzmanÄ«bu no telefona, vienmēr ir lieliskā noskaņojumā un ar platu smaidu no visas Ä·iveres. Protams, lidojumam Ŕāds skafandrs mums nav vajadzÄ«gs, taču tas rada pareizo atmosfēru birojā.

Projekta izklāsts ir Ŕāds:

Serveris mākoņos: gatavojamies palaiÅ”anai
Powerbank tiek izmantota testÄ“Å”anai uz zemes; palaiÅ”anai ir nepiecieÅ”ams kaut kas uzticamāks.

VarbÅ«t visinteresantākā aparatÅ«ra ir tāfele datu saņemÅ”anai no visiem sensoriem:

Serveris mākoņos: gatavojamies palaiÅ”anai
PuiÅ”i no nearspace.ru Mēs ilgi cÄ«nÄ«jāmies ar dažādiem analogiem, un tad paÅ”i izgatavojām borta datoru, jo uzticamÄ«bai ir izŔķiroÅ”a nozÄ«me, visa projekta liktenis ir atkarÄ«gs no telemetrijas datiem. Borta dators ir atbildÄ«gs par datu saņemÅ”anu no visiem pievienotajiem sensoriem un pārsÅ«tÄ«Å”anu uz Raspberry Pi.

Mēs to palaidām, konfigurējām, un pēc pāris nedēļu programmÄ“Å”anas un pietupieniem ar tamburÄ«nām mums izdevās iegÅ«t telemetrijas datus un Semjona fotoattēlu no platleņķa kameras:

Serveris mākoņos: gatavojamies palaiÅ”anai
Telemetrijas dati tiek pārsūtīti vienā rindā Ŕādā formā:

Serveris mākoņos: gatavojamies palaiÅ”anai
Pēc tam Å”is kods pārvērÅ” virkni masÄ«vā un izvada datus vietnei:

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

Dažu datu apraksts:

  • N:2432; ā€” datu pakeÅ”u skaits, kas vienmēr pieaug
  • T:40m39s; ā€” laiks no lidojuma dispečera ieslēgÅ”anas brīža
  • MP.Stage:0; ā€” lidojuma posms (0 ā€” uz zemes vai zemāk par 1 km, 1 ā€” pacelÅ”anās, 2 ā€” lidoÅ”ana augstumā, 3 ā€” nolaiÅ”anās)
  • MP.Alt:54; ā€” barometriskais augstums metros no jÅ«ras lÄ«meņa ā€” tas ir jāparāda
  • MP.VSātrums:0.0; ā€” vertikālais ātrums metros sekundē ar vidējo filtru
  • MP.AvgVSpeed:0.0; ā€” vertikālais ātrums metros sekundē ar vidējo filtru
  • Baro.Prese:1006.49; ā€” barometra spiediens milibāros
  • Baro.Alt:54; - augstums virs jÅ«ras lÄ«meņa pēc barometra
  • Baro.Temp:36.99; - paÅ”a barometra temperatÅ«ra
  • GPS.Coord:N56d43m23s,E37d55m68s; ā€” paÅ”reizējās koordinātas
  • GPS.Sākums:N56d43m23s,E37d55m68s; ā€” sākuma punkta koordinātas
  • GPS.Alt:165; ā€” GPS augstums metros
  • GPS.Dst:10; ā€” attālums no sākuma punkta metros
  • DS.Temp:[fc]=34.56; - temperatÅ«ras sensors uz tāfeles

Kā izskatās izvade:

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 
)

Ko darÄ«t, ja mobilā saziņa ā€œnokrÄ«tā€? Å im gadÄ«jumam mums ir otra karte; modemā ir ievietotas divas SIM kartes (vienā laikā pa vienam slotam):

Serveris mākoņos: gatavojamies palaiÅ”anai
Tas var automātiski pārslēgties uz rezerves kanālu, ja galvenais pēkŔņi pārstāj reaģēt.

Kas notiek, ja abi mobilie tīkli kļūst nepieejami?

Serveris mākoņos: gatavojamies palaiÅ”anai(Zēns no izdevums "Yeralash" Nr.45 Ne velti viņŔ lasa "VarbÅ«tÄ«bas teoriju").

Å ajā gadÄ«jumā mums bÅ«s neatkarÄ«gs GPS izsekotājs, kas sÅ«ta signālu par tā atraÅ”anās vietu. LÅ«dzu, ņemiet vērā, ka tas to dara nevis caur mobilo tÄ«klu, kura pieejamÄ«bu lielos attālumos neviens negarantē, bet gan caur satelÄ«tu.

Serveris mākoņos: gatavojamies palaiÅ”anai
Jā, GPS izsekotājs ir nedaudz lielāks nekā tas, kas tika implantēts zem Džeimsa Bonda ādas. Tā kā mÅ«su konkurence ir atkarÄ«ga no lidojoŔā servera koordinātām, Ŕī no dēļa saņemto datu daļa bÅ«s vissvarÄ«gākā. Bet par to mēs runāsim nākamajā ierakstā. DrÄ«zumā, sekojiet mÅ«su emuāram!

Mēs tik ļoti ticam visa uzņēmuma panākumiem, ka pat izsludinājām konkursu tiem, kas pēkŔņi vēlas uzminēt, kur bumba piezemēsies. SÄ«kāka informācija mÅ«su jauns ieraksts.

Avots: www.habr.com

Pievieno komentāru