В
- Der Server wird auf Raspberry Pi 3 basieren
Es wäre interessant, einen Einzelserver in die Luft zu heben, aber sein Gewicht + das Gewicht der USV ... All dies würde eine beträchtliche Hebekraft erfordern. Und warum, wenn man auf der Basis eines kompakten Raspberry Pi 3 einen recht ordentlichen Server einsetzen kann, dessen Rechenleistung um ein Hundertfaches größer ist als die Maschine, auf der Tim Berners-Lee 1991 Spaß hatte.
- Lassen Sie uns den Server in einem Heißluftballon starten
Wir hatten die Idee, den Server auf einer Heliumsonde anzuheben, aber dann pingte der Server nicht lange, bis der Ballon in großer Höhe in einer verdünnten Atmosphäre platzte und die gesamte Struktur zu Boden fiel. Ich wollte das Sendezeitfenster auf eineinhalb Stunden erweitern. Und dann entschieden sie sich für einen Ballon. Die Flugdauer beträgt zwei Stunden. Darüber hinaus ist der Flug zwar nicht vollständig kontrollierbar, aber es kann sein, dass unser Ingenieur im Korb ist, der im Falle einer Störung schnell und direkt vor Ort „ein- und ausschalten“ kann.
- Wir werden die Mobilfunkkommunikation als Transportnetzwerk nutzen
Moderne WLAN-Antennen können ziemlich große Entfernungen „durchdringen“, dafür wäre jedoch der Bau eines Kommunikationskomplexes erforderlich, der in seinen Parametern einer militärischen Radarstation nicht viel nachsteht. Und für 1,5-2 Stunden Kommunikation macht es keinen Sinn, ein solches System aufzubauen, denn in der Höhe des Ballons muss die Mobilfunkkommunikation stabil funktionieren.
Nachdem wir diese „Postulate“ formuliert hatten, schien das Projekt nicht mehr undurchführbar zu sein, und bald begannen wir, in alle drei Richtungen gleichzeitig zu arbeiten.
Als erstes wandten wir uns an die Jungs von
Dann holten wir den Raspberry Pi 3 heraus, der im Nachttisch unseres Administrators lag, und begannen mit der Einrichtung.
Kamera angeschlossen:
Und wir haben es an unserem „Semyon“ getestet:
Semyon ist als Model und Assistent sehr praktisch – er fragt nicht nach Essen, lässt sich nicht vom Telefon ablenken, ist immer gut gelaunt und hat ein breites Lächeln auf dem ganzen Helm. Natürlich brauchen wir für den Flug keinen solchen Raumanzug, aber er sorgt für die richtige Atmosphäre im Büro.
Die Projektskizze lautet wie folgt:
Powerbank wird für Bodentests verwendet; für den Start wird etwas Zuverlässigeres benötigt.
Die vielleicht interessanteste Hardware ist eine Platine zum Empfangen der Daten aller Sensoren:
Jungs aus
Wir haben es gestartet, konfiguriert und nach ein paar Wochen Programmierung und Kniebeugen mit Tamburinen ist es uns gelungen, Telemetriedaten und ein Foto von Semyon von einer Weitwinkelkamera zu erhalten:
Telemetriedaten werden in einer Zeile in folgender Form übertragen:
Dieser Code wandelt dann die Zeichenfolge in ein Array um und gibt die Daten an die Site aus:
$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; — Anzahl der Datenpakete, ständig steigend
- T:40m39s; — Zeit ab dem Moment, in dem der Flugregler eingeschaltet wurde
- MP.Stage:0; – Flugphase (0 – am Boden oder unter 1 km, 1 – Aufstieg, 2 – Schweben in der Höhe, 3 – Sinkflug)
- MP.Alt:54; – barometrische Höhe in Metern über dem Meeresspiegel – sollte angezeigt werden
- MP.VGeschwindigkeit:0.0; — Vertikalgeschwindigkeit in Metern pro Sekunde mit Medianfilter
- MP.AvgVSpeed:0.0; — Vertikalgeschwindigkeit in Metern pro Sekunde mit Mittelungsfilter
- Baro.Press:1006.49; — Barometerdruck in Millibar
- Baro.Alt:54; - Höhe laut Barometer
- Baro.Temp:36.99; - Temperatur des Barometers selbst
- GPS-Koordinaten: N56d43m23s, E37d55m68s; — aktuelle Koordinaten
- GPS.Home:N56d43m23s,E37d55m68s; — Koordinaten des Startpunkts
- 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
So sieht die Ausgabe aus:
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
)
Was tun, wenn die Mobilfunkkommunikation „ausfällt“? Für diesen Fall haben wir eine zweite Karte; zwei SIM-Karten werden in das Modem eingelegt (ein Steckplatz nach dem anderen):
Es kann automatisch auf einen Ersatzkanal umgeschaltet werden, wenn der Hauptkanal plötzlich nicht mehr reagiert.
Was passiert, wenn beide Mobilfunknetze nicht verfügbar sind?
(Junge aus
In diesem Fall verfügen wir über einen unabhängigen GPS-Tracker, der ein Signal über seinen Standort sendet. Bitte beachten Sie, dass dies nicht über ein Mobilfunknetz geschieht, dessen Verfügbarkeit über große Entfernungen niemand garantiert, sondern über einen Satelliten.
Ja, der GPS-Tracker ist etwas größer als der, der James Bond unter die Haut implantiert wurde. Da unsere Konkurrenz von den Koordinaten des fliegenden Servers abhängt, wird dieser Teil der vom Board empfangenen Daten der wichtigste sein. Aber darüber werden wir im nächsten Beitrag sprechen. Bald verfügbar, folgen Sie unserem Blog!
Wir glauben so sehr an den Erfolg des gesamten Unternehmens, dass wir sogar einen Wettbewerb für diejenigen ausgeschrieben haben, die plötzlich raten wollen, wo der Ball landen wird. Details in unserem
Source: habr.com