User Tools

Site Tools


Sidebar

Für Profis

Helpers

Tags


aok:erweiterungen:funkmodem

Funkmodem

Durch den Einsatz von Funkmodulen kann eine drahtlose Datenverbindung hergestellt werden. Damit lassen sich die aktuellen Debugwerte im Flug auswerten, Parameter ändern oder Kommandos an den Kopter schicken.

» :!: A C H T U N G :!: «
Beim Einsatz von Funkmodulen können Übertragungsfehler auftreten. So kann es trotz der vom Armokopter verwendeten Prüfsumme ab und an vorkommen, dass ein Wert falsch übertragen wird. Hiermit sei dringend angeraten bei Einsatz von Funkmodulen die Compare-Funktion sowohl beim Lesen also auch beim Schreiben von Parametern zu verwenden! Ebenso ist vom Firmwareupgrade mittels Funkmodem abzuraten, hat man Pech ist anschließend die BA-Reset Prozedur durchzuführen und der ARM mittels USB frisch zu bespielen.

Radiotronix Wi.232

Durch den Einsatz der Radiotronix Funkmodule Wi.232EUR-R kann eine drahtlose Datenverbindung mit 868MHz hergestellt werden. Seit neuem auch unter der Bezeichnung TRM-868 zu finden.

Ich habe mir einen kleinen USB-Versorgungsadapter (mit einem LM1117 wie am ARM-o-Kopter) gebastelt, damit das Modul und der RS232-TTL-Wandler am Notebook einfach mit 3,3V versorgt werden können. (Eleganter wäre hier natürlich ein FTDI-Chip…)

Wichtig ist außerdem noch, dass man folgende Verbindung am seriellen Kabel herstellt (nur beim Original-Tool):

Bei 9pol-Anschluß: RTS-CTS (Pins 7 und 8 brücken) sowie DTR-DSR (Pins 4 und 6 brücken)

Bei 25pol-Anschluß: RTS-CTS (Pins 4 und 5 brücken) sowie DTR-DSR (Pins 6, 8 und 20 brücken)

Ansonsten findet die Software das Modul nicht!!!

Vorsicht: Beim Einsatz des UM2102-Moduls (Chip Silabs CP2102) von ELV muss RTS und CTS verbunden werden. Wenn DTR und DSR ebenfalls verbunden werden, findet die Software das Modul nicht. Gleiches gilt vermutlich auch bei Boards mit FTDI-Chip.

Das Modul Wi.232EUR-R

400px-modul.jpg

Der Adapter zum Anschluss an das Notebook

400px-adapter.jpg

Das gesamte “Set”

400px-gesamt.jpg

Um ein Modul in den Auslieferungszustand zu versetzen, wird die Masseleitung an die einzelne Buchse angesteckt, bevor die Stromversorgung hergestellt wird.

Zur Änderung der Parameter, wird selbige Masseleitung erst nach Herstellung der Stromversorgung angesteckt.

Sobald das Modul somit im Programmiermodus ist, werden mit der Evaluationssoftware von Radiotronix die Parameter wie folgt eingestellt (andere Kanäle bzw. Netzwerk-Gruppen können nicht schaden - sonst kommen wir uns bei Treffen schnell mal in die Quere):


Statt das Original-Tool zu benutzen, hat uns StompSC ein kleines Tool geschrieben, bei dem man die Brücken im seriellen Kabel nicht mehr braucht! (Momentan noch Beta!!!)

http://www.armokopter.at/forum/viewtopic.php?f=2&t=314


Und weil es gerade Weihnachten wird und komischerweise Dirk's Tool und das Radiotronix Tool bei mir unter Win64 nicht mehr funktioniert haben (ich glaubte schon die Module sind über den Jordan…), habe ich kurzerhand noch ein Tool gebastelt, welches zwar nicht so komfortabel wie die anderen ist, aber meine Module wieder zum Leben erweckt hat… ;)

http://www.armokopter.at/forum/viewtopic.php?p=27245

Dieses Tool funktioniert ebenfalls OHNE RTS/CTS Spielereien…


wi.232eur-r.jpg

Die Konfigurationssoftware findet man im Support Bereich als Download auf der Seite des Herstellers.

http://www.radiotronix.com

Der exakte Link (möglicherweise nicht ewig gültig): http://www.radiotronix.com/support/downloads.asp?contentid=208

Wichtiger Hinweis!!!

Es gibt beim Einrichten einen geringfügigen Unterschied zwischen dem Kopter-seitigen Modul und dem für die USB Verbindung. Das Modul, dass mit dem zb. MK-USB Modul oder USB-to-TTL RS232 Converter-Modul verbunden werden soll, wird unter der Option “Network Mode Register” auf “Normal” gesetzt und das Arm-o-seitige Modul muss auf “Slave” gesetzt sein, damit die Wi.232 Verbindung korrekt arbeitet.

Digi XBee Module

Allgemein

Die XBee Module (Hersteller Digi) gibt es in unterschiedlichsten Ausprägungen: Series 1, Series 2, Series 2.5 unterscheiden sich teils im Chipsatz (1 > 2), teils nur in der Firmware (2 > 2.5). Je Serie gibt es unterschiedliche Modelle in Bezug auf die Sendefrequenzen und Sendeleistung (PRO/nicht PRO Varianten). Innerhalb dieser Modellunterschiede gibt es wiederum Module mit unterschiedlicher Sendeleistung und letztendlich sind noch verschiedene Hardwarevarianten welche sich durch die Bestückung der Antenne unterscheiden verfügbar (SMD/Chip-Antenna, UFL, Wire, RP-SMA).

Einen guten Überblick liefert die XBee-Kategorie bei SparkFun: http://www.sparkfun.com/categories/111

Allen Modulen gemein ist, das diese mehr oder wenig auf dem ZigBee (802.15.4) Protokoll basieren, zumindest bei der Series 2.5 wurde hier aber vom Standard ein wenig abgegangen.

Für unsere Zwecke einer seriellen Datenverbindung mit 38400bps macht dies jedoch keine Unterschiede.

Die folgende Konfigurationsanleitung wurde auf Grundlage der XBee PRO Series 2.5 Module erstellt.

Die Konfiguration erfolgt über die serielle Schnittstelle vom Modul, man kann einzelne AT-Kommandos eintippen, oder das Hersteller Tool X-CTU verwenden. Das Modul kann also mittels serieller Schnittstelle, USB-Adapter oder auch einem XBee-Trägermodul welches bereits den USB-Port bereitstellt, erfolgen.

Dabei ist zu beachten das die X-Bee Module mit 3.3V betrieben werden, die Eingänge am Modul allerdings auch 5V Pegel vertragen. Sollte man den Sparkfun “XBee Explorer Regulated” einsetzen ist Vorsicht angebracht: Auf diesem Modul befindet sich eine Schutzdiode welche den RX-Pegel des Moduls um 0,7 Volt senkt. Setzt man als USB-Adapter ein 3.3V Modell ein, kann dies aber bereits zu Problemen führen, daher ist es ratsam diese Diode mit einem Draht zu überbrücken. (Die Diode liegt neben Pin 4 & 5 der Stiftleiste).

Je nach Modultyp sollte man noch den Strombedarf beachten und überlegt werden über welchen 5V Regler das Modul gespeist wird, von einer Versorgung über den 3.3V Regler am Armo-Board wird vor allem bei den stärkeren Modulen abgeraten!

Konfiguration mittels X-CTU

Nachdem X-CTU gestartet wurde, wird am Karteireiter “PC Settings” der COM-Port ausgewählt, und die seriellen Parameter eingestellt:

Ein neues Modul ist erstmal auf 9600 Baud, 8 Datenbits, keine Parität sowie 1 Stoppbit eingestellt, Flow-Control wird nicht genutzt.

Mittels der Schaltfläche “Test/Query” wird nun geprüft ob das Tool eine Verbindung mit dem Modul herstellen kann. Beim Verbindungstest zeigt uns das Tool den “Modem Type” an, z.B. “XBP24-B”, dies Bitte notieren, wird bei der anschließenden Konfiguration benötigt.

Hat dies geklappt, kann mit der Konfiguration im Karteireiter Modem-Configuration fortgefahren werden. Hier sind nicht viele Dinge einzustellen, jedoch kommt es für eine fehlerfreie Kommunikation auf die Details an.

Zuerst sollten jedoch neue Firmwareversionen vom Web heruntergeladen werden → “Download new Versions” → Source “Web”… dies dauert erstmal ein wenig.

Anschließend wird im Bereich “Modem Parameters and Firmware” mittels “Read” die aktuelle Konfiguration eingelesen, damit befüllt sich der untere Bereich des Tools. Schwarz dargestellt Einträge sind read-only Einträge, alle anderen Werte können geändert werden. Dabei gilt: eine grüne Darstellung bedeuted das der aktuelle Wert den default-Einstellungen entspricht, Blau werden von den default-Werten abweichende Parameter dargestellt. Geänderte, aber noch nicht ans Modul übermittelte Werte bekommen ebenfalls eine eigene Farbe.

Vorweg: Im ZigBee Netz gibt es unterschiedliche Gerätefunktionen und damit verbundene Protokollversionen. Das Modul welches später am PC betrieben wird, bekommt die Funktion “ZNET 2.5 COORDINATOR AT”, das Kopter-seitige Modul wird ein “ZNET 2.5 ROUTER/END DEVICE AT”.

Jetzt wählt man unter Modem den vom Verbindungstest zuvor angezeigten Modem-Typ aus, unter Function Set den “ZNET 2.5 COORDINATOR AT” und unter Version - besonders wichtig! - die höchte Versionsnummer. Dies ist aktuell “1047”.

Am besten wird die Konfiguration jetzt 1x an das Modul übertragen (“Write”), dazu aber auch gleich die Firmware vom Modul aktualisiert (Checkbox “Always update Firmware”). Anschließend kann die Checkbox wieder deaktiviert werden, und die Konfiguration nochmals eingelesen werden. Damit werden bereits die, von der Firmware unterstützten Konfigurationsparameter dargestellt (und unter anderem auch die benötigte Seriennummer).

Als erstes notieren wir uns die Seriennummer dieses Moduls (SH/SL), diese ist später im 2ten Modul einzutragen (entspricht quasi dem Pairing bei Bluetooth).

Folgende Parameter sind einzustellen:

  • PAN-ID - kann beim default-Wert belassen werden, kann allerdings auch geändert werden. Ist die Netzwerk-ID, alle Module mit der gleichen ID können sich gegenseitig erkennen.
  • DH - Destination Address High - hier wird die SH - Serial Number High des 2. Moduls eingetragen (welche wir im ersten Schritt noch nicht kennen, wird also später eingetragen).
  • DL - Destination Address Low - hier wird die SL - Serial Number LOW des 2. Moduls eingetragen (welche wir im ersten Schritt noch nicht kennen, wird also später eingetragen).
  • NI - Node Identifier - nicht zwingend notwendig, hier könnte eine Modul-Kennung eingetragen werden - bei Verwendung in einem ZigBee Netz liese sich das Modul so einfacher erkennen
  • BD - Baud Rate - wird jetzt auf 9600 belassen!
  • RO - Packetization Timeout - auf 1 setzen
  • D7 - DIO7 Configuration - auf “0 - Disable” setzen

Anschließend kann die Konfiguration mittels “Write” im Modul gespeichert werden. (Wurde der Firmwareupgrade bereits zuvor durchgeführt ev. die Checkbox “Always Update Firmware” deaktivieren).

Mittels Read wird die Konfiguration wieder eingelesen und geprüft, und jetzt wird die Baudrate auf “5 - 38400” umgestellt und mittels Write wiederum ins Modul geschrieben.

Da die neue Konfiguration sofort wirksam wird, bekommen wir jetzt eine Fehlermeldung, denn das Tool ist noch immer auf 9600bps eingestellt. → Auf die Karteikarte “PC Settings”, Baudrate auf 38400 stellen, Test/Query und das Modul sollte wieder erkannt werden!

Jetzt wird das 2. Modul angeschlossen & analog zu den obigen Schritten verfahren, es gibt jedoch 3 Unterschiede:

  • Bei Function Set wird “ZNET 2.5 ROUTER/END DEVICE AT” ausgewählt
  • Bei “Version” gibt es nicht die beim Coordinator ausgewählte Versionsnummer 1047, stattdessen allerdings 1247. Hier scheint wichtig zu sein das die letzten 2 Ziffern auf beiden Modulen gleich sind. Entsprechend der Auswahl 1047 beim ersten Modul, wählen wir hier also 1247.
  • DH/DL: Hier werden die bereits bekannten SH/SL Werte vom 1. Modul eingetragen.

Nachdem die Konfiguration des 2. Moduls jetzt abgeschlossen ist, müssen wir noch das erste Modul anschließen und die jetzt bekannte SH/SL des 2. Moduls bei DH/DL im ersten Modul eintragen.

Anschließend sollte bereits ein “Range Test” mit beiden Modulen möglich sein. Dazu kann X-CTU auch 2x gestartet werden und über unterschiedliche COM-Ports auf beide Module gleichzeitig zugegriffen werden.

Konfiguration Armokopter / Debug Delay

Abschließend sollte in der Armokopter Konfiguration der Parameter “DEBUG_DELAY” auf 4 eingestellt werden.

433 MHz Module

Mit dem 433 MHz Funkmodul lassen sich, aufgrund der besseren Ausbreitungsbedingungen, bei Frequenzen gilt: um so tiefer desto besser, enorme Reichweiten erzielen.
Das XBee mit 100mW auf 2,4 GHz sieht verglichen mit einem 433 mit 10 mW, alt aus.
Das 433 MHz Modul gibt es mittlerweile von verschiedenen Anbieter.
Das PC seitige Modul ist mit einem USB Anschluss versehen und das Kopterseitige teilweis mit Kabel.
Die Farben der Drähte sind nicht logisch, kann aber am Hersteller liegen.
Hier waren sie so:
Tx = Rot
Rx = Schwarz
VCC = Gelb (5Volt)
Masse = Grün
Tx vom Modul kommt an Rx beim Arm-o

Die Module arbeiten ab Werk mit einer Baudrate von 57600 Baud, dass lässt sich aber leicht ändern.
Um die Baudrate zu ändern brauchen wir nur ein Programm, dieses gibt es als Freeware.rctimer_radio.rar


Ändern der Baudrate

Das PC-Modul kommt in einen USB Anschluss
Das Kopter-Modul muss nur mit Spannung versorgt werden, braucht also nicht mal am Kopter zu sein.
Nach dem starten des Programms sollten wir jetzt die Setting Seite sehen.
Jetzt den Port und die Baudrate 57600 auswählen und die Fläche „Load Settings“ drücken.
Nun erscheinen die Einstellungen von beiden Modulen.
Im Fenster “Baud” steht 57 dies ändern wir in 38 aber bei beiden !
Es ist Ratsam, im Fenster “Ned ID”, auch eine andere ID einzutragen, damit man sich beim Treffen nicht stört.
So jetzt noch auf die Fläche „Save Settings“ gedrückt und fertig.


FIXME: Wer will kann ja mal in Erfahrung bringen was man noch so einstellen kann und dies hier mitteilen.

aok/erweiterungen/funkmodem.txt · Last modified: 23.12.2013 02:29 by ufo-hans