Forum: Mikrocontroller und Digitale Elektronik Einfaches Modem auf AVR-Basis für Audio-Kanal


von M@ni (Gast)


Lesenswert?

Hallo,

folgendes Problem:

Ich will über den vorhandenen, bisher ungenutzten Audio-Kanal einer 
Video-Funkstrecke Daten übertragen.

Hab schon viel gelesen und überall wird ein Modem-Chip vorgeschlagen. 
Aber irgendwie sind die entweder nicht mehr zu bekommen, oder aber nicht 
grade Preiswert.

Da ich zum filtern der Daten, was übertragen wird eh schon einen AVR 
habe, dachte ich mir, das der gleich die Modulation der Daten für den 
Audio-Kanal übernehmen kann. Auf der Empfängerseite dann das Gegenstück 
dazu, der mir die Daten dann wieder auf UART ausgibt oder nem LCD 
anzeigt.

Hat jemand sowas schonmal mit einem AVR gebastelt und kann mir da 
vielleit Tipps oder ein stück Quellcode (GCC) zur verfügung stellen..??

Vielen dank schonmal..

von Barny F. (barny)


Lesenswert?

Zum Senden wüsste man diese Projekte als Vormild verwenden können:
http://www.ulrichradig.de/home/index.php/avr/megalol
http://www.hanneslux.de/avr/divers/melody/melody01.html

Man muß halt die Spannung des Signals auf +/- 1V begrenzen.

Für den Empfänger bräuchte man dann einen bzw. 2  Bandpässe damit man 
die die high- und low Töne analysieren kann.

1 Bandpass wenn man Manchester codiert sendet, 2 wenn man mit 2-Tönen 
arbeitet (ein Ton für high, ein Ton für low) .

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ein ganz simples Verfahren wäre die Verwendung von DTMF. Damit lassen 
sich vier Bit gleichzeitig übertragen.

Die erzielbare Datenrate ist natürlich nur ein winziger Bruchteil der 
mit dem Audiokanal eigenlich möglichen, aber "richtige" 
Modem-Übertragungen benötigen für ihre Leitungsanpassung eine 
bidirektionale Übertragung.
Die ist bei einer TV-Funkstrecke nicht gegeben.

Wenn ein Stereosignal übertragen wird, dann können immerhin beide Kanäle 
mit je einem DTMF-Signal genutzt werden, was eine gleichzeitige 
Übertragung von 8 Bit zulässt.

von Michael U. (amiga)


Lesenswert?

Hallo,

wenn es nicht zu schnelle gehen muß: Ton mit 8 - ...kHz mit irgendwas 
(555, 74HC00, AVR o.ä.) erzeugen und mit TxD tasten.
Empfänger NE567 und Ausgang an RXD.

1200 Baud sollten so schon noch gehen.

Gruß aus Berlin
Michael

von Benedikt K. (benedikt)


Lesenswert?

Einen Manchester codierten Datenstrom mit wenigen kBit/s sollte man auch 
direkt übertragen können.

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

> Die ist bei einer TV-Funkstrecke nicht gegeben.

meines Erachtens schon (zumindest bei meiner):


Hinweg: von der FB an entfernter Stelle geht es zum TV-Gerät
Rückweg: vom TV-Gerät geht Audio + Video zur entfernten Stelle

von Barny F. (barny)


Lesenswert?

Wegstaben Verbuchsler schrieb:
>> Die ist bei einer TV-Funkstrecke nicht gegeben.
>
> meines Erachtens schon (zumindest bei meiner):
>
>
> Hinweg: von der FB an entfernter Stelle geht es zum TV-Gerät
> Rückweg: vom TV-Gerät geht Audio + Video zur entfernten Stelle

Da das Audio-Signal nicht verwendet wird, vermute ich mal dass es sich 
nicht um eine TV-Übertragung handelt.

M@ni will warscheinlich Statusdaten bei einem Überwachungssystem oder 
dergleichen mit übertragen.
Es könnte sich auch um eine Telemetrieübertragung von einem 
Modellflieger/Modellauto mit Onboardkamera handeln.

Wenn dies der Fall ist, könnte man auch über einen OSD-Chip nachdenken.

von M@ni (Gast)


Lesenswert?

Hallo nochmal.

Also Datenraten von 1200 Bit/s sollten ausreichen. Einblendung von Daten 
per OSD geht nicht. Die Daten sollen auf einem PC Aufgezeichnet werden 
und so. Auch reicht eine Einweg-Datenverbindung. Rückkanal ist nicht 
vorhanden.

An DTMF hab ich auch schon gedacht, aber ich denke mal das wird zu 
langsam. Es ist auch nur ein Mono-Kanal vorhanden.

von Ach (Gast)


Lesenswert?

FSK ist dein Freund.

von STK500-Besitzer (Gast)


Lesenswert?

>Einblendung von Daten per OSD geht nicht.

Es muss ja nicht im sichtbaren Bildbereich sein.
Videotext wird auch ausserhalb des sichtbaren Bildes übertragen 
(manchmal kann man die Bits doch am oberen Bildschirmrand sehen...).
Das erfordert allerdings etwas mehr Aufwand.

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

> An DTMF hab ich auch schon gedacht,
> aber ich denke mal das wird zu langsam.
> Es ist auch nur ein Mono-Kanal vorhanden.

wie wäre es mit einem RDS Modulator/Demodulator?   (gegebenenfalls 
Auto-FM-Transmitter schlachten?) macht knapp 1200 bit/sek

http://www.google.de/url?sa=t&source=web&ct=res&cd=3&url=http%3A%2F%2Fwww.ukwtv.de%2Fartikel%2Ftechnik%2FRDS-Grundlagen.pdf&ei=dQimSrHaMJvwmwOgypmeAw&usg=AFQjCNETDNwoJjsUpcZUbKUudCEqLl8faA


oder ausm Sperrmüll 2 alte Modems besorgen und ankoppeln. 1200/300 als 
langsame Übertragungsart sollte auch damit machbar sein

von Axel R. (Gast)


Lesenswert?

Sieh mal hier:
http://garydion.com/projects/whereavr/

N4TXI kodiert und dekodiert hier die GPS-Daten seines Empfängers und 
versendet und empfängt diese über den NF-Kanal seines Funkgerätes.

Der Quelltext ist online. Kannst Du Dir ja mal ansehen.
War jetzt nicht soo kompliziert. Statt der GPS-Daten nimmst Du diene 
eigenen und den Protokoll Overhead umgehst Du einfach und sendest die 
Daten direkt.

Gruß
Axelr.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> oder ausm Sperrmüll 2 alte Modems besorgen und ankoppeln. 1200/300 als
> langsame Übertragungsart sollte auch damit machbar sein

Modems überprüfen i.d.R., ob sie eine Gegenstelle erreichen können; 
d.h., sie kommunizieren bidirektional. Das ist hier nicht möglich, daher 
kann nur die Elektronik eines alten Akustikkopplers verwendet werden 
(bei den Dingern waren Sender und Empfänger noch weitestgehend 
funktional getrennt).

von Hendi (dg3hda) (Gast)


Lesenswert?

1200 bit/s ?

Lass dich doch von
http://de.wikipedia.org/wiki/Bell_202-Modem
inspirieren.

Wenn Du pro Bit mehrere Schwingungen akzeptierst, also höhere 
Tonfrequenzen bei niedrigerer Bitrate, kannst Du die Decodierung durch 
Interruptzählen schaffen, z.B. bei 50 Bit/s und 1000 + 2000 Hz oder so. 
Senden geht noch einfacher.


Gruß HD

von Route_66 (Gast)


Lesenswert?

Zu Zeiten der Heimcomputer hat man beträchtliche Datenmengen über 
Audioformate übertragen (d.h. auf Kassette gespeichert). In der Regel 
sind die Kodierung / Dekodierung in Software gemacht worden. Es gab auch 
ausgeklügelte Formate mit Blocknummerierung und sicherer Fehlererkennung 
über Prüfsummen, denn Magnetband ist fehlerträchtig.
Der Sinclair Spectrum z.B. erreichte durchschnittlich 1600 Bit/s. 
Durchschnittlich, weil ein Low-Bit nur halb so lang war wie ein 
High-Bit.
Der Spectrum hatte allerdings nur eine vergleichsweise einfache 
Fehlererkennung.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Hmm. Da fällt das herstellerübergreifende SuperTape-Format ein, das die 
c't in den 80ern veröffentlichte. Auch 'ne Idee.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.