Archiv verlassen und diese Seite im Standarddesign anzeigen : Aurel 434MHz Funkmodule ausreichend?
angahith
13.07.2011, 10:31
Hallo Leute.
Euer Forum hat mir schon mehrmals gute Dienste geleistet, aber heute muss ich selber mal eine Frage stellen.
Ich habe mir einen kleinen Roboter auf Basis eines AT89C51CC03, für meine Abschlussprüfung (Systeminformatiker) im September gebaut.
Motor Ansteuerung und Sensoren laufen auf meinem Bus-System auch schon einwandfrei. Der Kleine fährt ohne Probleme.
Jetzt kommt das Problem. Er braucht eine möglichst günstige Fernsteuerung durch einen zweiten Mikrocontroller der am PC hängt.
Weder ich, noch meine Ausbilder haben viel Erfahfung mit Funktechnik und ich konnte auch nicht viel in der Foren-Suche finden.
Im Endeffekt soll nur hin und wieder 1 Byte übertragen werden, welches dann vom Roboter ausgewertet wird. (Fahrtmodus, Geschwindigkeit, etc).
Mein Plan wäre nun das Byte über ein Schieberegister an einen Bus Port des Roboters zu senden und dann dort einen Interrupt auszulösen wenn es vollständig übertragen wurde, damit das Signal vom Bus gelesen und verarbeitet wird.
Es muss nur eine Funkstrecke von vielleicht 5 Metern ohne Hindernisse bewältigt werden.
Wären dafür die Aurel Module RX-4M50RR30SF (Empfänger, Datenblatt (http://www.aurelwireless.com/wp-content/uploads/user-manual/650200527G_um.pdf)) und TX-SAW433 (Sender, Datenblatt (http://www.aurelwireless.com/wp-content/uploads/user-manual/650200689G_um.pdf)) genug?
Vielen Dank!
Es muss nur eine Funkstrecke von vielleicht 5 Metern ohne Hindernisse bewältigt werden.
Wären dafür die Aurel Module RX-4M50RR30SF (Empfänger, Datenblatt (http://www.aurelwireless.com/wp-content/uploads/user-manual/650200527G_um.pdf)) und TX-SAW433 (Sender, Datenblatt (http://www.aurelwireless.com/wp-content/uploads/user-manual/650200689G_um.pdf)) genug?
Laut Datenblätter (DB) und mit dort empfohlenen Antennen (vor allem beim Sender) sollten sie um 300 m schaffen. :D
miicchhii
13.07.2011, 17:11
Weis jemand wonach das in Österreich geregelt ist, wann man eine Amateurfunklizenz braucht?434Mhz ist doch eine freie Frequenz, aber es gibt doch Einschränkungen bzgl. Reichweite oder Sendeleistung oder täusche ich mich?
Weis jemand wonach das in Österreich geregelt ist, wann man eine Amateurfunklizenz braucht?434Mhz ist doch eine freie Frequenz, aber es gibt doch Einschränkungen bzgl. Reichweite oder Sendeleistung oder täusche ich mich?
Schaue Dir auch einmal die BTM 222 www.kh-gps.de/ (http://www.kh-gps.de/)btm222.htm an, das kann mit jeden beliebigen Bluetooth Stick am PC "reden" und wird über rs232 (TTL Pegel) mit dem µC verbunden. Befehle können dann per Terminal oder selbst gestrickte Software vom PC gesendet werden. Natürlich muss auf dem µC ein entsprechendes Programm laufen welches bei eintreffen von Daten diese in einer IRQ abholt.Der Vorteil man braucht nur ein Gerät eine RS 232 TTL hat quasi jeder µC und viele PC/Laptop besitzen schon Bluetooth. Das BTM 222 gibt es schon für ~ 13 € und in etlichen Foren ist Hilfe zu finden. :-) Viele preisgünstige Funk Bausteine haben kein Protokoll, das muss man selber schreiben und dann wird es leicht schwierig. :-(
Gruß Richard
angahith
14.07.2011, 10:28
Okay, Ausbilder hat die Teile (und Antennen) bestellt und ich hab sie jetzt gerade vor mir liegen...
Jetzt hab ich aber ein Problem das ich garnicht beachtet habe.
Wie gesagt, ich muss ja nur 1 Byte übertragen (eigentlich sogar nur 4 bit) und wollte das per Schieberegister machen. Jetzt merke ich gerade, dass diese Sender/Empfänger (gegenüber den er400trs die wir vorher bestellt hatten, die aber nie geliefert wurden) überhaupt keinen Taktsignal Ausgang haben.
Wie mache ich das jetzt am dümmsten?
Ich wollte eigentlich nicht dauerhaft senden und die Schieberegister (wir haben hier 74597 und das Gegenstück 74598) brauchen ja schließlich auch einen Takt am Empfänger...
Irgendeine Idee?
Meine erster Einfall wäre jetzt nen relativ langsamen Quarz als Taktgeber an beide Register zu hängen und halt erstmal 0xFF oder sowas zu schicken, als Start signal und dann automatisch nach einem Byte wieder stoppen.
Gibt es da nicht ne bessere Möglichkeit?
Wie gesagt, sorry falls das dumme Fragen sind, aber ich hab eben noch absolut null Ahnung von Funktechnik...
Meine erster Einfall wäre jetzt nen relativ langsamen Quarz als Taktgeber an beide Register zu hängen und halt erstmal 0xFF oder sowas zu schicken, als Start signal und dann automatisch nach einem Byte wieder stoppen.
Das meinte ich mit einfache Module arbeiten ohne Protokoll. Das müsst Ihr jetzt halt selber "basteln" z.B. Mittels Start Bit, Daten Byte, Stopp Bit. und gemeinsam festgelegter Baudrate. Die Baudrate kann auch aus der Länge des Startbits ermittelt werden und dann halbiert (in der Mitte der Daten Bits) Abfragen eingesetzt werden. Eine serielle RS 232 Schnittelle arbeitet auch ohne eine Taktsignal übertragung mit Start Bit stopp Bit und festgelegter Baudrate. Wobei die Übertragung eines Daten Bytes 10 oder 11 Bit (bei 2 Stopp Bits) benötigt. So etwas kann man auch ohne schiebe Register
mit einem µC erschlagen in dem man einen Eingaspin per shift oder ror Befehl über carry ins Register schiebt.
Einfacher wäre so ein BTM 222 mit implementiertem Protokoll gewesen.......
Gruß Richard
angahith
14.07.2011, 14:25
Naja, das Besondere sollte eben sein dass es nicht einfach die serielle Schnittstelle verwendet oder so. (Wollte ich so)
Und dass zwei Mikrocontroller verwendet werden. bzw. es ist wichtig dass am PC direkt ein Mikrocontroller mit RS232 hängt, da wir auch noch eine GUI in C++ mit nem vorhandenen Script machen müssen.
Und ganz ehrlich gesagt, ich habe gerne ne kleine (oder auch große) Herrausforderung.
Also, maximale Signalfrequenz ist laut Datenblatt 4kHz
Mein derzeitiger Plan:
Auf beiden Seiten ein 32.768 kHz Quarz mit 4 Frequenzteilern (=2048 Hz)
Wenn ein Signal gesendet werden soll, schicke ich erstmal 0xFF rüber ans Schieberegister als "Startsignal".
Dies setzt ein RS Flipflop und 8 Takte später (also wenn das eigentliche Datenbyte komplett am Schieberegister anliegt) wird es von einem D-Latch übernommen und alles wieder in den Ausgangszustand gesetzt und ein Interrupt ausgelöst, damit der Controller das D-Latch ausliest. (Dafür nehm ich einfach nen counter)
Ich könnte natürlich einfach auch GALs nehmen, oder nochmal nen kleinen Controller dazwischen schalten, aber das Prinzip ist ja das Selbe.
Meinst du das klappt so?
Naja, das Besondere sollte eben sein dass es nicht einfach die serielle Schnittstelle verwendet oder so. (Wollte ich so)
Und dass zwei Mikrocontroller verwendet werden. bzw. es ist wichtig dass am PC direkt ein Mikrocontroller mit RS232 hängt, da wir auch noch eine GUI in C++ mit nem vorhandenen Script machen müssen.
Und ganz ehrlich gesagt, ich habe gerne ne kleine (oder auch große) Herrausforderung.
Also, maximale Signalfrequenz ist laut Datenblatt 4kHz
Mein derzeitiger Plan:
Auf beiden Seiten ein 32.768 kHz Quarz mit 4 Frequenzteilern (=2048 Hz)
Wenn ein Signal gesendet werden soll, schicke ich erstmal 0xFF rüber ans Schieberegister als "Startsignal".
Dies setzt ein RS Flipflop und 8 Takte später (also wenn das eigentliche Datenbyte komplett am Schieberegister anliegt) wird es von einem D-Latch übernommen und alles wieder in den Ausgangszustand gesetzt und ein Interrupt ausgelöst, damit der Controller das D-Latch ausliest. (Dafür nehm ich einfach nen counter)
Ich könnte natürlich einfach auch GALs nehmen, oder nochmal nen kleinen Controller dazwischen schalten, aber das Prinzip ist ja das Selbe.
Meinst du das klappt so?
Wie schon gesagt, ich habe mir eine Serielle Verbindung auch selber "gebaut" allerdings ohne Schiebe Register einfach z.B. PB.7 als RX und dann weiter geschoben bis 8 Bit eingelesen waren. Auf der Anderen Seite dann halt als TX....
Hat gut geklappt. :-)
Gruß Richard
angahith
29.07.2011, 08:46
Hiho, also ich hatte zwar zuerst mein eigenes Protokoll entwickelt, aber dann ein paar ICs gefunden, die mir die Arbeit und den Platz ersparen (HT600 und HT614).
Der Roboter fährt jetzt mit Funkfernsteuerung, aber die Verbindung ist zugegebenermaßen lausig. Die Hälfte der Zeit kommt das Signal nicht sauber genug zum dekodieren an und anstatt alle 100ms die Datenbits zu empfangen, ist es eher alle paar Sekunden.
Ich nehme an, dass es an den Antennen liegt. Wenn der Roboter um die Ecke fährt, kriegt er nämlich kein Signal mehr und auch im reinen Test der Funkmodule, konnte ich nur knapp 5 Meter vom Sender entfernt stehen um noch ein sauberes Testsignal zu bekommen.
Ich hatte die dazugehörigen Antennen hier bestellt:
http://www.conrad.de/ce/de/product/190035/ANTENNE-433MHZ-50OHM-FLEXIBEL-ANTT/2401020&ref=list
Könnt ihr mir da etwas besseres empfehlen, oder soll ich selber eine bauen oder so?
Hallo!
Es muss nur eine Funkstrecke von vielleicht 5 Metern ohne Hindernisse bewältigt werden.
Das hast du doch geschafft ... ;)
Ich nehme an, dass es an den Antennen liegt.
Ohne Begründung ? :confused:
angahith
29.07.2011, 17:17
Das hast du doch geschafft ... ;)
Schön wär's. :P
Die 5 Meter schaffte ich nur ganz knapp im reinen Test der Module. Also Prototypen-Board, Antenne direkt drauf gesteckt und 4kHz TTL Signal angelegt (Wie im Datenblatt als Test-Setup empfohlen).
Ohne Begründung ? :confused:
Wie gesagt, im Test Setup war da nunmal nichts, ausser Module, Antennen und noch der optionale Entstör-Widerstand (wobei laut Datenblatt -1db zur Filterung die Reichweite schon enorm beeinträchtigen).
Wir haben ausserdem EINEN einzigen Funker, der aber leider so gut wie nie da ist. (Eigentlich schon im Ruhestand) und er hat bereits gesagt er traut den Antennen nicht.
Passt denn die Antennen Länge 16,5 cm und ist die Ausrichtung der Sende sowie Empfangsantenne gleich? Das hat einen recht großen Einfluss auf die Empfangs Stärke. Bei 433 MHz wären Lamda 1/4 0,173210162m, 16,5 cm passt also ganz gut.
Gruß Richard
Sehr wichtig ist die Verbindung des Senderausgang mit der Antenne (Koaxkabel 50 Ohm ?) und vom Robi generierte Störungen (sowohl beim Sender als auch Empfänger besonders bei AM Modulation). ;)
Sehr wichtig ist die Verbindung des Senderausgang mit der Antenne (Koaxkabel 50 Ohm ?) und vom Robi generierte Störungen (sowohl beim Sender als auch Empfänger besonders bei AM Modulation). ;)
Wie hatten solche (die gleichen?) Module mit keramische SMD Antennen gleich neben dem Chip und Entfernungen von ca. 100...200m erreicht. Ich glaube die Dinger waren von Conrad. Ach ja natürlich muss die Antenne auch ein 50 Ohm Typ sein, klar.
Gruß Richard
angahith
29.07.2011, 19:00
Ja, hab natürlich ein 50 Ohm Koax Kabel genommen und auf die Ausrichtung geachtet.
(Beim Platinendesign habe ich extra darauf geachtet, dass nur der Dekoder Baustein nah am Modul ist und alle anderen Leitungen ein paar Zentimeter Abstand dazu haben)
Die Antennen, die ja angbelich extra dazu gehören sind gerade mal 9cm lang.
Eine hab ich gleich mal kaputt gemacht, beim Versuch die Gummitülle unten abzumachen um an die Anschlüsse zu kommen.
Statdessen ging der obere Teil der Antenne ab, also SEHR hochwertig verarbeitet. :P
Ja, hab natürlich ein 50 Ohm Koax Kabel genommen und auf die Ausrichtung geachtet.
(Beim Platinendesign habe ich extra darauf geachtet, dass nur der Dekoder Baustein nah am Modul ist und alle anderen Leitungen ein paar Zentimeter Abstand dazu haben)
Die Antennen, die ja angbelich extra dazu gehören sind gerade mal 9cm lang.
Eine hab ich gleich mal kaputt gemacht, beim Versuch die Gummitülle unten abzumachen um an die Anschlüsse zu kommen.
Statdessen ging der obere Teil der Antenne ab, also SEHR hochwertig verarbeitet. :P
Versuche es einmal (zum Testen) mit einen einfachen 0.6 mm Draht 16,5 bis 17,3 cm, mit 18 cm anfangen und Stück für Stück abkneifen. Das am besten die reckt an den entsprechenden Pin's anlöten. Eine Lamda 1/1 Antenne wäre 0,692 m also 69,2 cm lang (etwas unhandlich).
Funker stimmen ihre Antennen mit einem "Stehwellen" Messgerät ab in dem sie die Antennenlänge mittels einer Schraube variieren. Bei z.B.
W-Lan Richtantennen (Kaffeedosen) wird bei der Antennen Länge extrem genau auf Länge geachtet und sehr sauber rechtwinklig entgratet.
Gruß Richard
angahith
29.07.2011, 19:34
Tausend Dank!
Werde ich gleich am Montag ausprobieren!
(Dann mach ich auch mal Bilder)
angahith
01.08.2011, 11:39
Update!
Vielen, vielen Dank für die Hilfe!
Also, ich hab's jetzt mit nem dünnen Draht versucht (16,8cm momentan) und das Ergebnis ist ganz anders.
Ich komme gut 8 Meter durch nen PC und ne Wand.
Bei freier Sicht konnte ich das Maximum noch garnicht ermitteln weil es durch den ganzen Raum sauber ankam.
Also ist wohl relativ klar, dass die tollen Antennen (http://img.photobucket.com/albums/v227/angahito/P1040400.jpg) das Problem waren.
Falls Interesse besteht, hier ein paar Bilder:
http://img.photobucket.com/albums/v227/angahito/P1040397.jpg
http://img.photobucket.com/albums/v227/angahito/P1040399.jpg
Für euch Experten ist das natürlich nichts besonderes, aber ich bin trotzdem einigermaßen stolz darauf. XD
Vorallem wenn man bedenkt, dass mein Ausbilder mir nur die runde Metallplatte (und die Auflage dass man unserer PT-Core One Platine verwenden kann) gegeben hat und gesagt hat "mach mal!". XD
Hab mir eben das Mainboard Design ausgedacht (mit 2 analog ports an jedem slot, für interrupts) und die Platinen für Motorsteuerung und Sensorik/Funk erstellt.
Sehen noch etwas unsauber aus (erstens ist unsere Ätz-anlage nicht die Beste für feine Leiterbahnen und zweitens mussten noch einige Feinheiten verändert werden) aber für die Prüfung, lassen wir die Platinen nach meinem Design nochmal 2-lagig professionell machen. :D
Schön das es jetzt besser geworden ist. :-) Diese 50 Ohm Anpassung kommt ja auch durch die Antennen Länge siehe http://de.wikipedia.org/wiki/Stehwellenverh%C3%A4ltnis zustande und die Länge sollte so genau wie irgend möglich angepasst sein, zu lang oder zu kurz ist egal, in beiden Fällen löschen sich vor und Rücklaufende Welle teilweise aus wenn die Antennenlänge nicht ein ganzzahliges vielfaches der Frequenz beträgt.
Gruß Richard
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.