PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ultraschallmodem mit AVR



Minifriese
03.03.2005, 10:12
Moin moin!

Ich hab neulich im Internet einen Bericht gefunden, wonach jemand mit einem AVR eine Art Modem gebaut hat, und zwar ueber Ultraschall. Zum Senden wird ueber die Fast-PWM-Funktion ein 40kHz-Signal auf einen Ultraschall-Schwinger gegeben und je nachdem, welcher Wert (1 oder 0) gerade gesendet werden soll, wird die Frequenz leicht angepasst. Das nennt sich dann Frequency shift modulation (FSM).

Was mich jetzt interessiert, ist eigentlich mehr der Empfangsteil. Der wurde in dem Bericht leider nicht so genau beschrieben, nur dass das Signal, was vom Empfangs-Schwinger kommt, verstaerkt wird und dann bei den Nulldurchgaengen auf 1 oder 0 getriggert wird. Das dabei entstehende Binaersignal wird dann wieder vom AVR verarbeitet. Und zwar durch Messung der Frequenz, um die Bits wieder zu entschluesseln. Die Synchronisierung muss ich nochmal anschauen...

Leider hab ich von Analogtechnik nur wenig Ahnung. Weiss jemand eine Schaltung, mit der man so ein empfangenes Signal (zum Beispiel von einem R292-Schwinger, den hab ich gerade hier liegen...) auf einen definierten Pegel, z.B. 5V oder 2,5V Spitze-Spitze verstaerkt? Oder vielleicht sogar, wie man das dann in ein Binaersignal umwandelt, also eine Triggerschaltung?

Das senden sollte nicht so kritisch sein, der AVR gibt zwar ein Rechtecksignal raus (soweit bin schon :-) ) und keinen Sinus, aber der Schwinger braucht ja bloss mit der richtigen Frequenz angeregt zu werden und schwingt dann selbst in Sinusform. Einzige Frage dazu waere: Die Schaltzeichen fuer die Ultraschall-Schwinger sehen bei mir genauso aus wie fuer einen Kondensator. Wenn sich die Teile auch so verhalten, wuerde ja ein 40kHz-Signal von dem Teil fast kurzgeschlossen. Muss man da noch einen Widerstand zwischen AVR-Pin und Schwinger schalten?

Hat vielleicht sonst jemand schon mal sowas gebaut, gesehen oder benutzt und kann Erfahrungen veroeffentlichen?

Nils

Gottfreak
03.03.2005, 22:08
Zum Empfangsteil hab' ich auch keine Schaltung parat.
Was die Frage zum Senden angeht:
Dein Schwinger(im Prinzip ein Lautsprecher) hat durchaus eine Kapazität(und auch schon einen gewissen Innenwiderstand). Die Aussage, dass diese deine 40kHz fast kurzschliesst, ist so etwas pauschal(hängt schließlich von der Kapazität ab). Bei der "richtigen" Spannung(sollte eigentlich angegeben sein) und Frequenz fließt auch der "richtige" Strom. Ein Widerstand wäre eine Möglichkeit, die Sendeleistung zu verringern. Du kannst aber natürlich, wenn dein AVR-Port nicht genügend Strom liefern kann, das Signal auch verstärken(etwa mit 'nem Transistor) um die Sendeleistung voll auszunutzen.

Minifriese
04.03.2005, 09:07
Moin,

Dass der (Wechsel-)Strom bei Kondensatoren von der Frequenz und der Kapazitaet abhaengt, ist natuerlich richtig. Dummerweise habe ich meine Schwinger aus einer Platine ausgeloetet (war wohl mal ein binaerer Abstandswarner) und hab ueberhaupt keine Daten dazu. Google scheint auch kein Datenblatt zu kennen. Hast du Daten zu anderen Schwingern? Vielleicht sind die ja vergleichbar...

Was sind denn so die Grenzfrequenzen normaler Transistoren (z.B. BC547), kommt man da mit 40kHz schon dran?

Nils

Manf
04.03.2005, 09:20
Die 40kHz Kapsel ist meistens ähnlich zu der hier mit 2400pF.
Manfred


http://www.robot-electronics.co.uk/datasheets/t400s16.pdf

Minifriese
04.03.2005, 11:06
Super, danke! Die Kapsel ganz rechts auf dem Bild sieht exakt so aus wie meine, koennte die gleiche sein. Ich glaube auch, dieser Typ wurde fuer das Modem verwendet, die eine Graphik (Sensitivity/Sound pressure level) war naemlich mit in dem Bericht.
Werde mir da mal Gedanken machen, ob ich da irgendwas basteln und messen kann...

Nils

Gottfreak
04.03.2005, 11:25
Was sind denn so die Grenzfrequenzen normaler Transistoren (z.B. BC547), kommt man da mit 40kHz schon dran?

Ganz genau weis ich nicht, was die Datenblattangaben bedeuten, aber die Stromverstärkung ist beim BC547 noch bei 100MHZ positiv.
Ganz allgemein ist mir noch kein Transistor untergekommen, der bei weniger als einigen MHZ nennenswert einbricht(was nicht heissen muss, dass es keine solchen Transistoren gibt...).

Minifriese
04.03.2005, 11:49
Das stimmt mich froehlich, weil ich naemlich von der Sorte noch einige hier rumliegen hab. Ich werd das ganze mal mit 12V und dem BC547B versuchen, laut Datenblatt sind 20Vrms das Maximum, und die Kurven sind mit 10V aufgenommen, also sollte man mit 12V wohl was sehen...

Nils

Jan_Weber
06.03.2005, 13:34
Du musst das Empfängersignal nur möglichst hoch verstärken, wenn du ein Signal bis zum Clipping verstärkst, wird ein Rechteck draus - und das kannst du dann optimal mittels der Interrupt-Eingänge des AVRs ausmessen.

Aber was willst du mit einem Ultraschall-Modem? Die starke Richtwirkung des Schalls bei dieser Frequenz erfordert, dass du den Sender immer ziemlich genau auf den Empfänger ausrichtest.

Die ollen Germanium-Transistoren waren ganz schön lahm . . .

Jan

PicNick
06.03.2005, 13:49
@Jan: wenn ich mir das Bild vom Minifriesen ansehe, könnt ich mir vorstellen, wofür er das US-Modem braucht.

Minifriese
06.03.2005, 15:23
;-)
@PicNick: Gut geschaut... Ich hatte in der Tat gehofft, dass das mit der Richtwirkung unter Wasser nicht so viel ausmacht. Da wuerde ich natuerlich auch andere Schwinger nehmen, ich glaube, es gibt da fertige fuer Wasser(Echolot-)anwendungen. Die Idee ist die, dass ich so ne Art Boje bastel, die aus einem AVR besteht, der "oben" per TXR433 (von Conrad) mit mir bzw meinem Laptop spricht und "unten" das ganze per Ultraschall weitergibt. Man kann's ja mal probieren... Wenn's klappt, bau ich natuerlich drei oder mehr Bojen und versuch mich auch noch an der Positionsbestimmung per Triangulation. Aber nix ueberstuerzen, erstmal ist sowieso mein Urlaub vorbei, was bei mir heisst, dass ich wieder unterwegs bin und vorerst nur die Software machen kann.

Der Empfangsteil sieht uebrigens schon mal gar nicht schlecht aus, hab einen zweistufigen Transistorverstaerker gebastelt und mit 12V versorgt. Laut Oszi gibt das Teil ein wunderschoenes Sinussignal mit 8Vpp aus. Mich wundert bloss die Frequenz, das sind naemlich 235kHz, obwohl der Schwinger einen Resonanzfrequenz von etwa 40kHz haben soll. Ich vermute einfach mal, dass das eine Harmonische ist, auf der irgendeine Stoerung reinkommt, die dann verstaerkt wird. Wenn ich den Sender fertig habe (heute abend, toi toi toi) wird das Teil dann hoffentlich dessen 40kHz empfangen...

@Jan: Die Idee mit dem hingetricksten Rechteck ist gar nicht schlecht. Muss mal schauen, ob ich das hinkriege. Wenn's um Analogschaltungen geht, rate ich immer bloss rum...
Was meinst du mit den Germanium-Transistoren? Ich hab jetzt BC238 eingebaut, und wie gesagt, es kommt zumindest schonmal ein Signal an.

Nils

Manf
06.03.2005, 15:42
Die Ultraschallkapseln haben verschiedene Resonanzen, aber Abstahlung (Wechselwirkung) im wesentlichen nur bei 40kHz.
Manfred
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=62747#62747
https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=427

Minifriese
06.03.2005, 20:55
Nabend,

Stand der Dinge in Sachen Ultraschall: Hab vorhin den Sendeteil gebaut. Dazu benutze ich einen ATmega8, auf dessen OC1-Pin ich per Fast-PWM ein 40kHz-Rechtecksignal erzeuge. Das wird dann mit einem Transistor (BC547B) verstaerkt, der an 12V haengt. Kollektor- und Basiswiderstand jeweils 1k. Direkt am Kollektor wird der Sende-Schwinger angeklemmt, der andere Pol an Masse.
Scheint ganz gut zu funktionieren, laut Oszi kommt zwar wie erwartet kein schoener Sinus raus, aber das was rauskommt, hat jedenfalls 40 kHz :-)
Der Empfaenger sieht das auch so und gibt an seinem Ausgang ebenfalls ein 40kHz-Signal aus. Hab natuerlich keine grossen Entfernungen getestet, aber quer uebern Schreibtisch ist schonmal kein Problem... Die Empfangsqualitaet haengt wie jemand schon erwaehnt hat stark von der Ausrichtung des Senders ab.

Der Empfangsverstaerker ist wohl etwas kraeftig ausgelegt und erzeigt keinen Sinus, sondern eher sowas wie ein Rechteck, weil er in beide Richtungen uebersteuert. Ungefaehr so wie Jan das oben vorgeschlagen hat.

Die Sache mit der Frequenzmodulation muss jetzt leider etwas warten, bis ich wieder Urlaub habe und zuhause bin. Jedenfalls die Hardware. Falls jemand in der Zwischenzeit weiterexperimentieren kann, bitte die Ergebnisse posten ;-)

Nils

Jan_Weber
06.03.2005, 20:59
Es soll doch auch gar kein Sinus rauskommen - Rechteck hat mehr Energiegehalt, das schlägt besser durch.

Jan

Gottfreak
07.03.2005, 14:39
Kollektor- und Basiswiderstand jeweils 1k. Direkt am Kollektor wird der Sende-Schwinger angeklemmt, der andere Pol an Masse.

Hast du nun einen Widerstand an den Kollektor angeschlossen oder nicht?
Würd' mich nämlich mal reizen, mit was für 'ner Leistung du sendest.

Minifriese
07.03.2005, 16:27
Tja, hab leider keinen Scanner... Also mal in Worten:

12V -> 1kOhm -> Kollektor und Schwinger(+)
AVR-Pin -> 1kOhm -> Basis
Emitter -> Masse
Schwinger(-) -> Masse

Kann man da was draus erkennen? Jedenfalls greift der Schwinger sein Signal direkt von Kollektor ab, der Kollektorwiderstand sitzt dann halt zwischen diesem Knoten und den 12V.
Was für ne Leistung sollte das geben? Einfach nur Strom mal Spannung geht doch bei kapazitiven Lasten nicht, oder?

Nils

Manf
07.03.2005, 16:52
Im Datenblatt ist die Abstrahlung auf der Basis einer Anregung von 10Vrms bei 40kHz angegeben.

Da die spezifizierte Anregung sinusförmig ist kann man von der Rechteckfunktion den spektralen Anteil bei 40kHz bestimmen.

Das ist ungefähr das gleiche wie die Amplitude (man kann aber auch das Signal mit der Sinunsfunktion falten, um die spektrale Komponente zu bestimmen.)
Manfred

Gottfreak
07.03.2005, 19:29
Was für ne Leistung sollte das geben? Einfach nur Strom mal Spannung geht doch bei kapazitiven Lasten nicht, oder?

Im Prinzip ist Strom*Spannung schon richtig. Bloß sind ja beide Größen nicht zeitlich konstant.
Wenn dein Rechtecksignal nicht einbricht, kriegst du eine Näherung indem du annimmst, dass die Kapazität des Schwingers(2400pF stand oben) mit der erregenden Frequenz(40kHz) umgeladen wird. Um daraus auszurechnen, wieviel Leistung tatsächlich aufgenommen wird, müsste man aber noch den Eingangswiderstand kennen(2400pF*40kHz*10V macht etwa 1mA, verbraucht werden dabei dann 10mW - wo auch immer die dann hingehen).
So genau hab' ich mich damit aber nicht beschäftig. Vielleicht weis ja jemand, welche Verluste bei Lautsprechern am meisten ins Gewicht fallen.

Manf
07.03.2005, 19:45
Das Wandlersystem (der Wandler) hat zwei Leistungen, die Eingangsleistung und die Ausgangsleistung.
Die Beziehung zwischen den beiden ist messbar, kaum ersthaft zu berechnen.
Im Datenblatt ist der Schalldruck (in Abstand, mit Richtcharakteristik) bei einer Anregung mit 10Vrms gegeben. Das ist es doch was die Ausgangsleistung beschreibt.
Manfred

Minifriese
08.03.2005, 07:01
Tja, da werd ich wohl auf empirische Ergebnisse warten müssen...
Übrigens ist das Signal durchaus etwas eingebrochen. Unbelastet gibt der Sendeverstärker ein ziemliches Rechteck ab, mit 12Vpp. Wenn der Schwinger dranhängt, brechen die hinteren Ecken der Rechtecke etwas ein. Hat mich etwas gewundert, weil ich bei einem Kondensator erwartet hätte, daß die vorderen Ecken einbrechen, bis der Kondensator halt umgeladen ist.

Nils

Manf
08.03.2005, 09:25
Eingangsleistung und die Ausgangsleistung. Die Beziehung zwischen den beiden ist messbar, kaum ersthaft zu berechnen.
Im Datenblatt ist der Schalldruck bei einer Anregung mit 10Vrms gegeben.
Tja, da werd ich wohl auf empirische Ergebnisse warten müssen...
Für die Übertragung in Luft sind die Werte im Datenblatt und ich habe sie auch bei der Berechnung der Übertragungsstrecke eingesetzt. Das Ergebnis ist nachvollziehbar.

Schwierig zu bestimmen ist die Ankoppelung der Wandler an das Meduim. Für Luft wie gesagt im Datenblatt, für Wasser vielleicht im Datenblatt für Kapseln die für die Ankoppelung an Wasser optimiert sind. Willst Du die Luft-Kapseln einfach im Wasser betreiben? Das wäre auch interessant. (So ganz teuer sind sie ja nicht.)
Manfred

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=60823#60823

Minifriese
08.03.2005, 12:17
Willst Du die Luft-Kapseln einfach im Wasser betreiben?


Gute Frage. Die Kapseln sind natürlich schön billig, aber ich vermute, daß das bloß normale "Luft"-Kapseln sind, die ne wasserdichte Hülle haben. Als Regenschutz zum Beispiel. Wenn man die Kapseln unter Wasser einsetzt, könnte ich mir vorstellen, daß das nicht so gut geht, weil ja innen drin Luft ist (vermutlich...). Damit hätte man eine Luft-Wasser-Grenzschicht, die das Signal dämpfen bzw reflektieren würde.
Für Unterwasser-Anwendungen müßte der Schwinger eigentlich von Wasser oder einem ähnlich dichten Medium umgeben sein, um die Energie direkt an dieses Medium abzugeben, oder? Dann könnten nämlich die Schallwellen die "Kapselgrenze" ohne Brechung, starke Reflexionen usw durchdringen. So stell ich mir das jedenfalls vor... Muß da noch mal googlen ;-)

Nils

teslanikola
14.03.2005, 15:14
BEi conrad gibts wasserdichte US-sender/empfänger

Minifriese
14.03.2005, 15:29
Jo, ich weiß. Genau die Kapseln hab ich in meinem letzten Beitrag gemeint. Schätze, das ist bloß ein Regenschutz oder sowas.
Nils

Gottfreak
14.03.2005, 21:21
Zur Reflexion beim Eintreten in's Wasser:
Ich hab' kürzlich in 'nem Physikbuch gelesen, dass Reflexion nur auftritt, wenn die Welle in ein Medium eintritt, in dem ihre Ausbreitungsgeschwindigkeit geringer ist. Schall dürfte also nur beim Austreten aus dem Wasser reflektiert werden.
Ich bin allerdings nicht sicher, ob das der Effekt ist, der hier eine Rolle spielt(ich hab' von Schall an sich nicht soviel Ahnung, in dem Buch[Dobrinski, Krakau, Vogel - Physik für Ingenieure] stand, dass es für jede Art von Welle gilt.).

Manf
14.03.2005, 22:22
Wenn die Dichte des Mediums stark unterschiedlich ist dann wird es schwierig mit der Kopplung. Es gibt dann die Möglichkeit, ähnlich wie bei der Antireflexbeschichtung von Brillen Übergangsschichten einzuführen, oder wenn das besser umsetzbar ist, die Anregung über einen Resonator anzukoppeln, der die reflektierte Energie immer wieder an die Grenzfläche bringt.

Wenn so ein Resonator nur von Grenzschichten umgeben ist, die die Leistung schlecht aufnehmen, dann schaukelt sich die Leistung etwas auf und gibt sie dann auf Grund der höheren Amplitude doch in vollem Umfang an das Medium ab.

Wie das konstrukiv am besten umgesetzt wird, ist noch zu bestimmen.
Manfred

Minifriese
15.03.2005, 07:19
Moin moin!

Daß das Problem nur in einer Richtung auftritt, wäre mir neu. Aber helfen würde mir das auch nicht, weil ich ja einen Sender und einen Empfänger brauche. Hatte aber noch keine Gelegenheit, dazu ausgiebig zu googeln, hab also auch noch keine Info, ob es spezielle Kapseln für Unterwasser-Anwendungen gibt, die das Problem auf die eine oder andere Art umgehen. Vielleicht besorge ich mir auch einfach mal die wasserdichten Kapseln von Conrad und probier's aus...
Nils

Jan_Weber
15.03.2005, 07:42
Zur Reflexion beim Eintreten in's Wasser:
Ich hab' kürzlich in 'nem Physikbuch gelesen, dass Reflexion nur auftritt, wenn die Welle in ein Medium eintritt, in dem ihre Ausbreitungsgeschwindigkeit geringer ist.

Das trifft so nur für elektromagnetische Wellen wie z. B. Licht zu.

Wenn eine Schallwelle aus einem niederdichten in ein Medium höherer Dichte übertritt, kommt es zu Verlusten. Das ist der Grund, warum Menschen und Tiere ein Trommelfell + Gehörknöchel haben. Diese bilden quasi ein "Untersetzungsgetriebe", welches den Luftschall so umsetzt, dass mit wenig Reflektionsverlusten die Flüssugkeit des Innenohrs angeregt werden kann.

Ideal wäre also für diese Anwendung ein Ultraschallgeber, dessen Kristall direkt im Wasser liegt. Eine andere Lösung gibt es hier wohl kaum.

Jan