Entwicklung eines Telemetrie-Systems

Entwicklung eines Telemetrie-Systems

Diplomand: Christoph Burner, November 2006

Um den in der WE 4 entwickelten Robotern die Möglichkeit der Kommunikation zu geben, d. h. ihnen den Austausch von Telemetriedaten bzw. Befehlen zu ermöglichen, wurde die Aufgabenstellung entwickelt, eine drahtlose Verbindung zwischen ihnen herzustellen.Die Aufgabenstellung umfasste die Untersuchung der Funkübertragung mit Hilfe eines Funkmoduls der englischen Firma LPRS. Zu Beginn der Arbeit sollte die Übertragung der Befehlssätze an das Funkmodul erfolgen. Im zweiten Teil der Diplomarbeit wurde ein Übertragungsprotokoll zur Kommunikation implementiert, dass sowohl die Sender- als auch die Empfangsseite umfasst. So sollte nach Abschuss der Diplomarbeit der Datenaustausch zwischen den einzelnen Robotern möglich sein. Der Datenaustausch findet zwischen zwei Robotern statt. Sollen mehrere Roboter angesprochen werden, so muss die Übertragung sequentiell durchgeführt werden. Die Arbeit versteht sich als Grundlagenarbeit, auf deren Basis weitere Diplomarbeiten aufbauen können.

Realisierung

In der Diplomarbeit kommt ein System von Phytec, das Phycore XC161CJ-16, zum Einsatz. Dieses System arbeitet mit dem XC161CJ-Prozessor von Infineon. Dieser 16-Bit-Prozessor gehört zur C166 V2-Familie. Beim Funkmodul handelt es sich um den Easy-Radio Transceiver ER400TRS, das in einem Frequenzband von 433 - 434 MHz arbeitet. Das Funkmodul wird jeweils mit der asynchronenen Schnittstelle des Mikrocontrollers gesteuert. Zur Veranschaulichung wurde ein 4 x 20 Zeichen LC-Display verwendet. Im ersten Teil wurden Funktionen in der Programmiersprache C entwickelt, die zur übermittlung von Befehlen an das Easy-Radio Funkmodul benötigt wurden. Diese Befehle waren z. B. das Ändern von Kanälen bzw. das Ändern der Sendeleistung. Im Zweiten Teil der Arbeit wurde die Sende- und Empfangsroutine entwickelt. Diese Routine umfasste ein Sende- und ein Empfangstelegramm. Mit dem Sendetelegramm können maximal 175 Bytes an Daten übertragen werden. Das Empfangstelegramm dient zum Quittieren des Sendetelegramms. Bei beiden Telegrammen wurde ein Prüfsummenbyte, als jeweils letztes Zeichen, eingefügt. Mit Hilfe der Prüfsumme kann das System auf Übertragungsfehler kontrolliert werden. Die Sende- und Empfangsroutine wird mittels einer State Machine gesteuert. Statuszustände, wie z. B. Fehler, können dem Anwender durch Flags angezeigt werden.

Ausblick

Da das entwickelte System nur als erste Stufe für weitere Arbeiten zu sehen ist, bestehen noch eine Vielzahl an Möglichkeiten, es weiter auszubauen. So kann zum Beispiel der Telegrammtyp genutzt werden, um gezielt dem Empfänger Anweisungen zu geben. Dies könnte zum Beispiel eine Aufforderung zum Kanalwechsel oder das Ändern der Sendeleistung sein. Es könnte aber auch entwickelt werden, wie das System auf auftretende Fehler reagiert. Bisher wird der Anwender nur mit Flags darauf hingewiesen. So könnte eine Routine geschrieben werden, die automatisch bei einem Übertragungsfehler erneut das Sendetelegramm absetzt. Es wäre aber auch denkbar, bei einem falschen Empfangstelegramm den Empfänger darauf hinzuweisen, nur dieses erneut abzusetzen. Eine weitere Möglichkeit ergibt sich, wenn es nicht möglich ist, eine Kommunikation mit einem weiteren Teilnehmer aufzubauen. Hier könnte der Sender angewiesen werden, erneut zu versuchen, eine Kommunikation aufzubauen. Ergänzend dazu würde auch eine Übertragung eines Kommandos sehr sinnvoll sein, dass den Empfänger zwingt, seine Empfangsspeicher zu leeren. Somit könnte ein anschließender Datenaustausch sichergestellt werden.

Christoph Burner, November 2006

Telemetrie Bild01

Telemetrie Bild02

Telemetrie Bild03

Telemetrie Bild04