Server in den Clouds: Vorbereitung zum Start

In einem Beitrag über die Regatta haben wir erwähnt, dass im August ein Wettbewerb mit Preisen auf alle Händler wartet. Es ist Zeit, den Schleier der Geheimhaltung zu zerreißen. Irgendwie kamen wir auf die Idee, dass der Ausdruck "Server in den Wolken" wörtlich verstanden werden kann. Und lassen Sie uns wirklich einen funktionierenden Server in den Himmel starten, den Sie anpingen können! Zuerst sah die Idee verrückt aus, aber als wir sie so verdrehten und in jeder Hinsicht diskutierten, hatten wir immer noch eine Möglichkeit, den Server zu den Vögeln zu schicken. Bereits Ende August wird ein richtungsweisender Start stattfinden, aber wir arbeiten derzeit an der Hardware des Projekts. Details unter dem Schnitt.


  1. Der Server basiert auf dem Raspberry Pi 3

    Es wäre interessant, einen Server mit einem Server in die Luft zu bringen, aber sein Gewicht + das Gewicht der USV ... Für all dies wäre eine beträchtliche Hubkraft erforderlich. Ja, und warum, wenn Sie auf der Basis des kompakten Raspberry Pi 3 einen sehr anständigen Server bereitstellen können, dessen Rechenleistung mehrere hundert Mal größer ist als die Maschine, auf der Tim Berners-Lee 1991 Spaß hatte.
  2. Wir werden den Server in einer Sprechblase starten

    Wir hatten Ideen, den Server auf einer Heliumsonde anzuheben, aber dann pingte der Server eine Weile nicht, bevor der Ball in großer Höhe in einer verdünnten Atmosphäre platzte und die gesamte Struktur zu Boden fiel. Ich wollte das „Fenster“ der Sendezeit auf eineinhalb Stunden erweitern. Und dann entschieden sie sich für einen Ballon. Die Flugdauer beträgt zwei Stunden. Obwohl der Flug nicht vollständig steuerbar ist, befindet sich möglicherweise unser Ingenieur im Warenkorb, der ihn im Falle einer Fehlfunktion direkt vor Ort schnell ein- und ausschalten kann.
  3. Wir werden die zellulare Kommunikation als Transportnetz nutzen

    Moderne WiFi-Antennen können ziemlich große Entfernungen "durchdringen", aber dafür wäre es notwendig, einen Kommunikationskomplex zu bauen, dessen Parameter einer militärischen Radarstation nicht unterlegen sind. Und für 1,5 bis 2 Stunden Kommunikation ist es nicht sinnvoll, ein solches System aufzubauen, da die zellulare Kommunikation auf dem Höhepunkt des Ballonfluges stabil funktionieren sollte.

Nach der Formulierung dieser "Postulate" schien das Projekt nicht mehr praktikabel zu sein, und bald begannen wir sofort, in allen drei Bereichen zu arbeiten.

Zunächst baten sie die Jungs von Nearspace.ru um Hilfe, die beim Start eines Eisenstücks einen Hund aßen (mit anschließender Suche und Rettung).

Dann nahmen sie den Raspberry Pi 3 heraus, der im Nachttisch unseres Administrators lag, und begannen, ihn zu konfigurieren.


Angeschlossene Kamera:


Und wir haben es auf unserem "Seed" getestet:


Semyon ist als Model und Assistent sehr praktisch - fragt nicht nach Essen, lässt sich nicht vom Telefon ablenken, ist immer gut gelaunt und hat ein breites Lächeln im Helm. Natürlich brauchen wir keinen solchen Raumanzug für den Flug, aber die Atmosphäre im Büro schafft den richtigen.

Der Umriss des Projekts lautet wie folgt:


Powerbank wird für Bodentests verwendet. Um zu beginnen, benötigen Sie etwas Zuverlässigeres.

Die vielleicht interessanteste Hardware ist die Karte zum Empfangen von Daten von allen Sensoren:


Die Jungs von Nearspace.ru litten lange Zeit unter verschiedenen Analoga und bauten dann selbst einen Bordcomputer, da Zuverlässigkeit entscheidend ist. Das Schicksal des gesamten Projekts hängt von Telemetriedaten ab. Der Bordcomputer ist dafür verantwortlich, Daten von allen angeschlossenen Sensoren zu empfangen und an den Raspberry Pi zu übertragen.

Sie haben es gestartet, eingerichtet und nach einigen Wochen Programmieren und Kniebeugen mit Tamburinen haben wir es geschafft, Telemetriedaten und Fotos von Seeds von einer Weitwinkelkamera zu erhalten:


Telemetriedaten werden in einer Zeile in folgender Form übertragen:


Anschließend konvertiert dieser Code die Zeichenfolge in ein Array und zeigt die Daten auf der Site an:

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

Beschreibung einiger Daten:

  • N: 2432; - Datenpaketnummer, immer größer
  • T: 40 m39 s; - Zeit ab dem Moment, in dem der Flugregler eingeschaltet wird
  • MP.Stage: 0; - Flugbühne (0 - am Boden oder unter 1 km, 1 - Anstieg, 2 - Schwebeflug in der Höhe, 3 - Abstieg)
  • MP.Alt: 54; - Luftdruckhöhe in Metern über dem Meeresspiegel - sollte angezeigt werden
  • MP.VSpeed: 0.0; - vertikale Geschwindigkeit in Metern pro Sekunde mit einem Medianfilter
  • MP.AvgVSpeed: 0,0; - vertikale Geschwindigkeit in Metern pro Sekunde mit Mittelungsfilter
  • Baro.Press:1006.49; - Barometerdruck in Millibar
  • Baro.Alt: 54; - Barometerhöhe
  • Baro.Temp: 36,99; - Temperatur des Barometers selbst
  • GPS.Coord: N56d43m23s, E37d55m68s; - aktuelle Koordinaten
  • GPS.Home: N56d43m23s, E37d55m68s; - Koordinaten des Startpunktes
  • GPS.Alt: 165; - GPS-Höhe in Metern
  • GPS.Dst: 10; - Entfernung vom Startpunkt in Metern
  • DS.Temp: [fc] = 34,56; - Temperatursensor auf der Platine

Wie die Ausgabe aussieht:

 Array ( [N] => 647 [] => 10m55 [MP_Stage] => 0 [MP_Alt] => 49 [MP_VSpeed) => 0.0 [MP_AvgVSpeed] => 0.0 [Baro rss] => 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 ) 

Was aber, wenn die Mobilfunkverbindung „ausfällt“? Für diesen Fall haben wir eine zweite Karte, zwei SIM-Karten werden in das Modem eingelegt (in einem Steckplatz der Reihe nach):


Er kann automatisch zum Ersatzkanal wechseln, wenn der Hauptkanal plötzlich nicht mehr reagiert.

Und was passiert, wenn beide Mobilfunknetze nicht mehr verfügbar sind?

(Der Junge aus der Ausgabe von "Jumble" Nr. 45 liest die "Theorie der Wahrscheinlichkeit" nicht umsonst)

In diesem Fall haben wir einen unabhängigen GPS-Tracker, der ein Signal über seinen Standort sendet. Bitte beachten Sie, dass er dies nicht über ein Mobilfunknetz tut, dessen Verfügbarkeit über große Entfernungen von niemandem garantiert wird, sondern über einen Satelliten.


Ja, der GPS-Tracker ist etwas größer als der, den James Bond unter die Haut implantiert hat. Da unser Wettbewerb von den Koordinaten des Flugservers abhängt, ist dieser Teil der vom Board empfangenen Daten der wichtigste. Aber darüber werden wir im nächsten Beitrag sprechen. Sehr bald folgen Sie unserem Blog!

Wir glauben so sehr an den Erfolg des gesamten Unternehmens, dass sie sogar einen Wettbewerb für diejenigen angekündigt haben, die plötzlich den Ort der Balllandung erraten möchten. Details in unserem neuen Beitrag .

Source: https://habr.com/ru/post/de420451/


All Articles