В
- De server zal gebaseerd zijn op Raspberry Pi 3
Het zou interessant zijn om een server uit één stuk de lucht in te tillen, maar het gewicht + het gewicht van de UPS... Dit alles zou aanzienlijke hefkracht vergen. En waarom, als je op basis van een compacte Raspberry Pi 3 een behoorlijk behoorlijke server kunt inzetten, met een rekenkracht die honderden keren groter is dan de machine waarop Tim Berners-Lee zich in 1991 vermaakte.
- Laten we de server lanceren in een heteluchtballon
We hadden ideeën om de server op een heliumsonde te tillen, maar dan pingde de server niet lang voordat de ballon op grote hoogte in een ijle atmosfeer barstte en het hele bouwwerk op de grond viel. Ik wilde het ‘zendtijdvenster’ uitbreiden naar anderhalf uur. En toen besloten ze een ballon te gebruiken. De vluchtduur bedraagt twee uur. Bovendien, ook al is de vlucht niet geheel controleerbaar, kan het zijn dat er onze engineer in de mand zit die, bij een storing, snel en ter plekke ‘de vlucht aan en uit kan zetten’.
- We zullen mobiele communicatie gebruiken als transportnetwerk
Moderne WiFi-antennes kunnen behoorlijk lange afstanden "doorboren", maar hiervoor zou het nodig zijn om een communicatiecomplex te bouwen dat qua parameters niet veel onderdoet voor een militair radarstation. En omwille van 1,5-2 uur communicatie heeft het geen zin om zo'n systeem te bouwen, omdat op de hoogte van de ballon de cellulaire communicatie stabiel moet werken.
Na het formuleren van deze ‘postulaten’ leek het project niet langer onuitvoerbaar, en al snel begonnen we in alle drie de richtingen tegelijk te werken.
Allereerst wendden we ons tot de jongens van
Vervolgens haalden we de Raspberry Pi 3 tevoorschijn, die op het nachtkastje van onze beheerder lag, en begonnen hem in te stellen.
De camera aangesloten:
En we hebben het getest op onze “Semyon”:
Semyon is erg handig als model en assistent - hij vraagt niet om eten, wordt niet afgeleid door de telefoon, is altijd in een goed humeur en met een brede glimlach vanuit zijn hele helm. Voor de vlucht hebben we zo’n ruimtepak uiteraard niet nodig, maar het zorgt wel voor de juiste sfeer op kantoor.
Het projectoverzicht is als volgt:
Powerbank wordt gebruikt voor grondtesten; voor de lancering is iets betrouwbaarders nodig.
Misschien wel het meest interessante stuk hardware is een bord voor het ontvangen van gegevens van alle sensoren:
Jongens van
We lanceerden het, configureerden het en na een paar weken programmeren en squats met tamboerijnen slaagden we erin telemetriegegevens en een foto van Semyon te verkrijgen van een groothoekcamera:
Telemetriegegevens worden in één regel in de volgende vorm verzonden:
Deze code converteert de string vervolgens naar een array en voert de gegevens uit naar de site:
$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);
Beschrijving van enkele gegevens:
- N:2432; — datapakketnummer, dat altijd toeneemt
- T:40m39s; — tijd vanaf het moment dat de vluchtcontroller werd ingeschakeld
- MP.Stage:0; — vluchtfase (0 — op de grond of minder dan 1 km, 1 — stijgen, 2 — zweven op hoogte, 3 — dalen)
- MP.Alt:54; — barometrische hoogte in meters vanaf zeeniveau — deze moet worden weergegeven
- MP.VSnelheid:0.0; — verticale snelheid in meter per seconde met mediaanfilter
- MP.AvgVSnelheid:0.0; — verticale snelheid in meter per seconde met middelingsfilter
- Baro.Pers: 1006.49; — barometerdruk in millibar
- Baro.Alt:54; - hoogte volgens barometer
- Barotemperatuur: 36.99; - temperatuur van de barometer zelf
- GPS.Coord:N56d43m23s,E37d55m68s; — huidige coördinaten
- GPS.Home:N56d43m23s,E37d55m68s; — coördinaten van het startpunt
- GPS.Alt:165; — GPS-hoogte in meters
- GPS.Dst:10; — afstand vanaf het startpunt in meters
- DS.Temp:[fc]=34.56; - temperatuursensor op het bord
Hoe de uitvoer eruit ziet:
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
)
Wat te doen als de mobiele communicatie “wegvalt”? Voor dit geval hebben we een tweede kaart; er worden twee simkaarten in de modem geplaatst (één slot tegelijk):
Het kan automatisch overschakelen naar een reservekanaal als het hoofdkanaal plotseling niet meer reageert.
Wat gebeurt er als beide mobiele netwerken niet meer beschikbaar zijn?
(Jongen uit
In dit geval hebben we een onafhankelijke GPS-tracker die een signaal verzendt over de locatie. Houd er rekening mee dat dit niet via een mobiel netwerk gebeurt, waarvan de beschikbaarheid over lange afstanden door niemand wordt gegarandeerd, maar via een satelliet.
Ja, de GPS-tracker is iets groter dan degene die onder de huid van James Bond werd geïmplanteerd. Omdat onze concurrentie afhangt van de coördinaten van de vliegende server, zal dit deel van de gegevens die van het bord worden ontvangen het belangrijkste zijn. Maar hierover zullen we het in het volgende bericht hebben. Binnenkort beschikbaar, volg onze blog!
We geloven zo sterk in het succes van de hele onderneming dat we zelfs een wedstrijd hebben aangekondigd voor degenen die plotseling willen raden waar de bal zal landen. Details in onze
Bron: www.habr.com