http://plischka.at/Funk_XBEE.html
Gruß Richard
http://plischka.at/Funk_XBEE.html
Gruß Richard
Bei den meisten anderen Teams habe ich die bluetoothmodule btm122 bzw. 222 gesehen. Die kann man einfach als Kabelersaz fuer den UART konfigurieren (also so als ob sie ueber die serielle schnittstelle mit kabeln verbunden werden). Preislich sind die auch ganz in Ordnung, kosten so um die 10 euro...
Es gibt auch noch andere varianten zb mit USB oder i2c
Hallo Richard,
Vielen Dank, die Seite kannte ich schon. Auch wenn es so scheinen mag, dass ich zu faul bin zum Datenblätter studieren bzw. Literatur aneignen, so ist dem nicht so. Hätte ich entsprechendes zu meinen Fragen gefunden, würde ich nicht fragen.
Hallo Chypylon,
Kennt man sich? Von welchem Team bist?
Edit: Das Bluetoothmodul ist Class 1. Hat es da Probleme mit den Regularien bei euch gegeben?
Frage a) hat sich mittlerweile erledigt, Series 1 können auch konfiguriert werden. Frage b) hat sich auch erübrigt. Der Rest ist mir noch nicht klar.
Mit freundlichen Grüßen skg-rob
Geändert von skg-rob (25.09.2011 um 15:46 Uhr)
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Ich bin bei den Androids aber ich glaube wir kennen uns nur vom sehen her (in singapur und istanbul).
Wir haben die Module bis jetzt noch nicht verwendet aber das btm112 hat class 2, was ja in den Regeln ausdrücklich erlaubt ist. Eine Übersicht über die ganzen Module gibts übrigens hier
Hallo Valen,
Vielen Dank! Das hat mir über so manches Aufschluss gegeben. Ich hätte jetz nur noch eine kleine Frage: Wenn ich von R1 an R2 was senden will, kann ich dann meine Daten einfach über das übliche UART Kommando senden oder muss ich dazu den XBee vorher ansprechen? Bekomme ich sozusagen etwas mit von den Funkmodulen?
Dann noch zu UART: Ich bin dann auf 9 bit beschränkt? Das wird ganz schön schwierig wenn ich alle Daten in ein Sendekommando packen will :/ Wie kann ich dann eigentlich Werte über 512 übertragen? Oder habe ich da etwas falsch verstanden?
Hallo Chypsylon,
Vielen Dank für die Liste. (Btw. ich wollte dich auf Twitter endlich mal adden aber ich kann gerade keine requests akzeptieren).
Mit freundlichen Grüßen skg-rob
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Es gibt 2 arten von Daten-übertrage. Die sogenannte 'Transparante Modus', und die API Modus. Bei die erste gehen die UART-daten gleich von UART-Eingang zum Funkstelle, oder von Funkstelle zu UART-ausgang. (oder bleiben solange im Daten-puffer bis der Funkstelle wieder bereit ist, weil nicht gleichzeitig senden und empfangen kann) Dazu muss R1 ERST in seinen DL und DH register die Adresse von R2 eingestellt haben. Dass muss er im Command-modus tun. Wieder zuruck im Transparante Modus kann er senden so lange als er möchtest. Den Daten-puffer ist aber nicht so riesig und du sollst es nicht voll laufen lassen sonnst gehen die Daten verloren. R2 wird kein Ahnung haben ob die Daten von R1 kommen, oder vielleicht von R3, R4 usw.
Bei die API Modus werden alle Kommandos und Daten zwischen MCU/PC und XBee in API Paketen erfasst. Das Kopf-teil enthält Start-byte, Paket-lange, Paket-art, Paket-ID, gefolgt durch Kommando Art und Kommando Parameter/Data. Es endet mit ein Checksumme zur Fehlererkennung. Auch den XBee sendet sein Status zurück als API Paketen. Diese enthält dann auch die Adresse von den XBee das die Daten gesendet hat. Also kann man die Daten von mehrere Robotern auseinander halten. Kostet aber etwas mehr Programm-aufwand.
Wieso 9 bit? Alle UART Daten sind 8 Bit groß. Dein 9-te Bit ist vielleicht das Parität bit oder ein extra Stop-bit. Das ist aber nicht notwendig, kann jedenfalls kein Daten-bit enthalten, und ist nur zur Bit-fehler Erkennung und (2te Stopbit zur) Baudtakt-fehler Ausgleichung. Werten großer als 255 (also mehr als 8 bit lang) muss du aufteilen in Bytes in dein Programm, und dann wieder zusammen rechnen in den andere Robotern. Das geht so bei fast alle Kommunikationsarten die auf Bytes orientiert sind. I2C ebenso.Dann noch zu UART: Ich bin dann auf 9 Bit beschränkt? Das wird ganz schön schwierig wenn ich alle Daten in ein Sendekommando packen will :/ Wie kann ich dann eigentlich Werte über 512 übertragen? Oder habe ich da etwas falsch verstanden?
Geändert von Valen (25.09.2011 um 20:18 Uhr)
Hallo Valen,
Vielen Dank, sehr anschaulich erklärt! Leider bin ich was Protokolle angeht zu verwöhnt, I²C macht mein Board automatisch, ich habe da noch nie viel tiefer programmiert als was ich dann im täglichen Gebrauch nutze.
Nach dem was ich gelesen habe, wird für mich Series 1 ausreichend sein und der Transparente Modus dürfte auch ausreichend sein, da ich nur zwei Roboter habe.
Vielen Dank für die Hilfe! Mit freundlichen Grüßen skg-rob
Diese Signatur wurde unter der GPL veröffentlicht.
Klau was aus meiner Signatur und du bist tot!
www.twitter.com/skgrobotics
Lesezeichen