logo

Es soll eine Mobile Steuereinheit in Form eines Koffers gebaut werden, mit der man die Rakete über ein Kabel Starten kann. Außerdem soll die Kommunikation mit mehreren Außenstellen über 2 verschiedene Protokolle ermöglicht werden.

1. Systemarchitektur

system architecture

Number Description

1a

JSON Objekte sollten über LoRa als Plain Text gesendet werden.

source;description;value;unit;timestamp

1b

Es wird ein JSON Objekt mittels MQTT übertragen, in dem die Beschreibung, der Wert, die Einheit und der Zeitpunkt einer Messung gespeichert sind.


{
    "description": "temperature", (1)
    "value": "200", (2)
    "unit": "celsius",  (3)
    "timestamp": "2021-01-11T13:11:09.5Z4"  (4)
}
1 Eine Beschreibung was in dem Dataset zu finden ist
2 Der Wert
3 Die Einheit des Wertes
4 Der Zeitpunkt der Messung

2

Es wird ein JSON Objekt mittels LoRa übertragen, in dem die X-Position, Y-Position und der Wert des Schalters Übertragen wird. Weiters wird ein String gesendet in dem der aktuelle Usermode übertragen wird.

{
    "x-axis": 520, (1)
    "y-axis": 512, (2)
    "switch_value": 999 (3)
}
1 Die x-Position des Joysticks; ist bei ca. 512 wenn in der Mitte
2 Die Y-Position des Joysticks; ist bei ca. 512 wenn in der Mitte
3 Die Schalterposition, geht gegen 0, wenn der Schalter gedrückt wird

3

Es werden ein JSON Array von allen Starts und eines von allen DataSets zusmmen in einem JSON Object mittels MQTT übermittelt

{
  "starts": [
  {
    "id": 1,
    "comment": "first start",
    "startDate": "2021-01-11T13:11:09.5Z4",
    "endDate": "2021-01-11T13:12:37.5Z4"
  }
  ],
  "dataSets": [
  {
    "start_id": 1,
    "description": "temperature",
    "value": "200",
    "unit": "celsius",
    "timestamp": "2021-01-11T13:11:09.5Z4"
  }
  ]
}

4

Es werden mehrere JSON-Arrays übertragen um im Frontend die Graphen darstellen zu können.

  • Es werden alle Beschreibungen als Array übermittelt.

[
  "Temperatur",
  "Luftfeuchtigkeit"
]
  • Weiteres werden alle Timestamps für eine Beschreibung als Array übertragen.

[
  "2021-01-11T13:11:09.35",
  "2021-01-11T13:11:12.35",
  "2021-01-11T13:11:13.35",
  "2021-01-11T13:11:14.35",
  "2021-01-11T13:11:15.35"
]
  • Es wird die Zeit, in Sekunden die seit einem Start vergangen ist in einem JSON-Array übertragen.

[
  "2120863",
  "2120812",
  "2120842",
  "2120889",
  "2120921"
]
  • Es werden alle gespeicherten Werte für eine Beschreibung zurückgegeben.

[
  "1200",
  "1402",
  "1504",
  "1589",
  "1698"
]
  • Ein Endpoint gibt die Einheit für eine Beschreibung zurück.

"meter"

5

Es wird ein JSON Objekt über HTTP übertragen, in dem der Name, die Zeit für einen Countdown, der Zünder, der Widerstand und ob ein Joystick oder Videostreaming benutzt wird. Konfigurationen werden über das Frontend erstellt und dann in CSV-Files gespeichert.

{
    "name": "Default Configuration", (1)
    "countdown": 120, (2)
    "igniter": 4, (3)
    "resistance": 1.4, (4)
    "useJoyStick": false, (5)
    "useVideo": false (6)
}
1 Der Name der Konfiguration
2 Der Countdown bis zum Start in Sekunden
3 Die Anzahl der Zünder
4 Der Widerstand eines Zünders
5 Ob ein Joystick für, zum Beispiel: Eine Kamera oder die St euerung für die Rakete oder den Satelliten
6 Ob die Rakete oder der Satellite ein Video streamt

6

Die einzelnen Bilder werden als base64 String übergeben

2. Project Description

20/21 4ahitm/4ahif Instrumentenkoffer zum Abschuss einer Rakete für den Cansat Wettbewerb

3. Documents

4. Team

4.1. 4AHITM

  • 03 DF

  • 06 FS

4.2. 4AHIF

  • 17 PM

  • 10 HL

  • 14 KJ

5. External Project Repository