PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Funkmodul



Roboter n00b
08.07.2006, 20:20
Hallo Forumsleser^^

Ich möchte mich jetzt auch mal in die Welt des Funks wagen, und mir deshalb ein Funkmodul zulegen, um meinem Roboter daten zu senden, und Daten zu empfangen. Ich bin jetzt natürlich auf das RNFunk gestossen, was zusammen mit easyRadio (und das ganze 2 mal) 120 € kosten würde. Ziemlich happig wie ich finde...
Frage 1. Wie einfach ist die Kommunikation über Funk generell? Oder wie einfach ist es, für den PC ein programm anzuzeigen, dass Sensordaten vom uC abfragen kann? Hab drum überhaupt keine Ahnung von PC programmen^^. Mit welcher Programmiersprache würde das am einfachsten gehen? VisualBasic oder so?

Frage 2: Ich denke, für einen Laien wie ich wäre RN Funk sicher geeignet, oder? Die frage ist nur, ob es auch eine geeignete günstigere Lösung gäbe!?

Frage 3: Wie viel Baud kann ich mit dem Modul pro Sekunde senden/empfanen?

Frage 4: Ich hab ein RN Control, an welches ich das Funkmodul anschliessen möchte (RS232). Daran will ich aber auch die CmuCam hängen... Wie löst man das Problem 2 Geräte, 1 Bus?

ich freu mich schonma auf die Antworten

gruss
serge

BASTIUniversal
09.07.2006, 10:21
Hi!
Funkmodule sind alle ziemlich teuer...es gibt auch sehr günstige darunter, aber da muss man sich selbst darum kümmern ob auch alle Daten korrekt angekommen sind.
Das muss man z.B. bei nem EasyRadio-Modul nicht (das wird auf das RN Funk Modul draufgesteckt).
Eine Möglichkeit wäre es, nur ein EasyRadio Modul zu kaufen (ohne das RN Funk Board) und sich das Board selbst zu machen.

Die ER-Modul können glaub ich bis zu 38,4kBaud (steht aber auch im Datenblatt).

2 Geräte an einen Bus...? Im Prinzip kein Problem, man muss nur dafür sorgen das nicht beide gleichzeitig Senden wollen und auch immer nur der Richtige die Befehle empfängt. Man muss also einen Vermittler dazwischen Schalten. Sollte auch machbar sein!

Noch zum PC-Programm...: Da du die Daten ja über RS232 empfängst ist die einfachste Möglichkeit die Daten anzuzeigen das Terminal Programm von Windows.
Da bekommst du dann alle Rohdaten, um die weiterverarbeitung musst du dir dann aber getrennt Sorgen machen.
Am besten ist sicher ein eigenens Programm...aber das kostet natürlich Zeit!

MfG

scales
09.07.2006, 11:09
1)am einfachsten wirds unter Windows wohl mit VisualBasic gehen, aber wirklich vernünftige Programme kann man damit nicht schreiben,
das ist eher für die Leute, die nur kurz möglichst schnell ein Programm haben wollen

wenn du mehr Zeit hast, und dich das wirklich interessiert nimm C, sonst VB

2) also ich würd dir auch empfehlen dir das Geld für die RN Funkmodule zu sparen,
die paar Teile kannst du dir auch schnell selbst zusammen löten

3) ich denke nicht dass es so wichtig ist dass du viel Baud hast,
38400 Baud wirst du wohl nicht so schnell brauchen

4) ich denke schon dass das ein Problem wird,
die Cam soll ja wahrscheinlich immer verarbeitet werden, genauso muss das Funkmodul immer auf Empfang sein

da sollteste lieber überlegen, wo man das Funkmodul alternativ anschliesen kann

Roboter n00b
09.07.2006, 11:24
ok, danke erstmal für eure Antworten :)

1. Das Programm werd ich dann mal in VB versuchen, mal schauen wie weit ich damit komm

2. Gut, die Funkmodule spar ich mir, aber soll ich jetzt einfach das Funkmodul selbst zusammenbauen, oder nach welchem Schaltplan soll ich bauen? (Hab mit sowas wie gesagt keine Ahnung)

3. Naja, wenn ich bilder von der CAM übertragen möchte schon :)

4. Die alternative wäre für das Funkmodul natürlich der I2C Bus, nur ist mir der noch ziemlich suspekt, da noch nie verwendet^^. Wo finde ich z.B einen schaltplan, der für ein Funkmodul über I2C konzipiert ist? Und wie ist es dann mit dem Programmieren selbst? Printbefehle gehen dann ja nicht mehr, oder?

vielen Dank schonmal für eure Antworten

gruss Serge

shaun
09.07.2006, 12:32
2. Du sollst kein Funkmodul selbst bauen, Sender und Empfänger solltest Du schon fertig kaufen, aber die gesamte Datenaufbereitung und Fehlerkorrektur sollst Du selbst implementieren, um Kosten zu sparen.

3. Die überträgst Du ja wohl kaum über den Steuerdatenkanal, es wäre etwas sinnfrei, einen Kanal mit Mbit/s-Kapazität zu "basteln" um darüber matschige Bilddaten und ab und zu mal einen Steuerbefehl zu schicken. Wenn Du nur eine Funkstrecke haben willst, bleibt wohl nur WLAN. Dann könntest Du auf dem Bot eine Webcam und zB. ein XPort-Modul als Übergang zum Controller an einen als Bridge geschalteten Accesspoint anschliessen - wird natürlich alles ziemlich groß und stromfressend. Du kannst natürlich auch versuchen, den Controller direkt mit Ethernet und TCP/IP auszustatten oder als Hardcorelösung das Betriebssystems des Accesspoints umschreiben und dessen Prozessor gleich als Systemcontroller mitbenutzen... Die einfache Lösung wäre aber wohl eine Funkstrecke im kbit/s-Bereich und eine 2,4GHz-Verbindung mit Standardmodulen für Video.

4. Wenn Du Dir einen print-Befehl selbst programmierst, warum nicht ;)
Nee im Ernst: I2C ist für die geräteinterne Kommunikation zwischen ICs entwickelt worden. Für eine Funkübertragung brauchst Du ein Signal, das den Anforderungen Deiner Übertragungsstrecke gerecht wird, im Allgemeinen nimmt man im unteren Bandbreitenbereich Manchester-Codierung, die verbraucht wenig Bandbreite und ist Gleichspannungsfrei - unter anderem, vor allem ist aber sichergestellt, dass Du nie Dauerträger sendest, weil jedes Bit einen Flankenwechsel beinhaltet. So macht die Empfänger-AGC nicht dicht und die RegTP keine großen Augen. Genau dieses ganze Zeug - serielle Rohdaten -> Funk -> serielle Rohdaten mit Fehlerkorrektur bzw -erkennung bekommst Du in einem der teuren Module dazu, mit Billigmodulen von funkmodul.de oder Conrad musst Du dafür selbst sorgen. Wenn es für irgendwas erforderlich ist, können die Controller, die die Signalverarbeitung besorgen, natürlich auch über I2C kommunizieren, aber das ist ein ganz anderer Level, I2C und Funk geht erstmal nicht zusammen.

Ich habe hier 433MHz-Module von funkmodul.de herumliegen, die eine unidirektionale Verbindung von einigen Slaves (sendend) mit einem Master inklusive Fehlererkennung und redundanter Übertragung machen sollen, bin aber noch nicht wirklich dazu gekommen. Implementiert werden sollen die Sender auf einem ATtiny26, der Empfänger auf einem ATmega64, weil ich Flash-Platz für die Auswertung und Darstellung auf dem LCD und Übertragung zum PC (USB) benötige. Demnächst werde ich die Platinen für die Prototypen ätzen lassen, dann sehe ich mal weiter.

BASTIUniversal
09.07.2006, 13:20
Also Bilder von der Cam Übertragen wird bei 38,4kBaud keinen Spass machen...wenn man von 176x255 Pixeln 8bit Graustufen ausgeht sind das ca. 44kByte.
38,4kBaud = 3,84kByte/s
44kB/3,84 = 11,5s pro Bild!

Ich kenn mich mit der Cam zwar nicht aus, aber ich denke das die Daten zur Verfolgung o.ä. auch kleiner rüber bringt.
In dem Fall kann man nen µC, der mit ausreichend UART's gesegnet worden ist ( :-) ), dazwischen Schalten um als Vermittler zu fungieren. Dann muss man das ganze nurnoch richtig Programmieren können.

Wenn Bilder zum PC blubbern sollen würd ich so ne kleine 2,4GHz (analog) Cam verwenden.

In jedem oben angesprochenen Fall sollte man aber schon ordentliche Kenntnisse in der Programmierung auf dem PC/µC haben!

Roboter n00b
09.07.2006, 13:22
Hi shaun
2. Jap, also ich kaufe mir 2 easyradiomodule, aber nach welchem Schaltplan soll ich nun die Dinger bauen, mit welchen ich die Module dann verbinden kann?

3. Ok, aber das mit dem AP usw. lass ich glaubs, dass wird mir zu kompliziert^^ . Es wäre sicher unsinnig, Bilder und Steuerbefehle gleichzeitig zu übermitteln, aber mann könnte sich ja auch eine entweder/oder lösung vorstellen. Also dass Sensorwerte standartmässig an den PC gesendet werden, und auf befehl das aktuelle bild der CmuCam.

4. Wäre es z.B denkar, dass ich den Mega32 (an welchem alle Sensoren und Motoren hängen) über RS 232 mit einem Funkmodul verbinde, und zudem ein Mega 8 oder so habe, welcher nur für die Cam zuständig ist? Dann könnte ich ja den Mega32 und den Mega8 über I2C miteinander komunizieren lassen, sodass beide (der Mega32 Sensordaten, und der Mega8 Bilderdaten) über das selbe Funkmodul daten versenden könnten?

gruss
Serge



Also Bilder von der Cam Übertragen wird bei 38,4kBaud keinen Spass machen...wenn man von 176x255 Pixeln 8bit Graustufen ausgeht sind das ca. 44kByte.
38,4kBaud = 3,84kByte/s
44kB/3,84 = 11,5s pro Bild!

Ich kenn mich mit der Cam zwar nicht aus, aber ich denke das die Daten zur Verfolgung o.ä. auch kleiner rüber bringt.
In dem Fall kann man nen µC, der mit ausreichend UART's gesegnet worden ist ( Freudig ), dazwischen Schalten um als Vermittler zu fungieren. Dann muss man das ganze nurnoch richtig Programmieren können.

Wenn Bilder zum PC blubbern sollen würd ich so ne kleine 2,4GHz (analog) Cam verwenden.

In jedem oben angesprochenen Fall sollte man aber schon ordentliche Kenntnisse in der Programmierung auf dem PC/µC haben!


Ok, dann lass ich die Bilderübertragung vorerst mal weg^^. Aber 2 uCs kann ich ja trotzdem verwenden, einer Für die Cam, und einer für die Sensorik und das Funkmodul