Forum: Mikrocontroller und Digitale Elektronik Audio Übertragung?


von reloni (Gast)


Lesenswert?

Hallo,
Ich möchte gerne die marode Klingel/Türsprechanlage in einen Hausbus
integrieren.
Mit der Klingel und Türöffnerfunktion sehe ich keine Probleme.
Das Problem ist die digitalisierung hinter dem Mikrofon , die synchrone
übertragung über einen Bus (COM oder CAN) und die Wiedergabe über
Lautsprecher(zu einen späteren Zeitpunkt evtl. VOIP anbindung)  Die
Tonqualität hat hier keine großen Ansprüche (Man sollte es verstehen
können).
Hat jemand dazu Ideen oder Projektverweise?

Gruß
reinhard

von bone (Gast)


Lesenswert?

meins wissens nach wurden damals in den analogen telefonnetzen maximale
frepuenzen von 4 kHz übertragen...

nach dem nyquist-abtasttheorem müsstest du nun das signal 8000 mal in
einer sekunde wandeln...

da haustür und wohnungstür mehr als  5m entfernt sein dürften, ist wohl
COM (du meinst damit wohl RS232) bei der benötigten
übertragungsgeschwindigkeit von min 115200 baud eher nich zu
realisieren...

CAN erlaubt bei 1Mbit/sec 40m...

wie weit ist die tür zu tür verbindung??? (in etwa, aber grosszügig
geschätzt)

von reloni (Gast)


Lesenswert?

Das Problem ist die Hinterhausanbindung so ca 50m luftlinie (WLAN macht
jedenfalls Probleme! ;-))

reinhard

von Casandro (Gast)


Lesenswert?

Also 8000 mal pro Sekunde sollte man da schon abtasten. Aber es gibt
relativ einfache Algorithmen wie ADPCM, mit denen Du dann auf so 4 Bit
pro Sample runterkommst. Dazu sampelst Du dein Signal mit, zum
Beispiel, 10 Bit (oder mehr).

Dann brauchst Du mehrere Variablen. In eine schreibst Du dein aktuelles
Sample rein. Eine andere enthält einen "Referenzwert", das ist der
Wert, den auch der Empfänger gerade ausgibt.
Nun bildest Du immer die Differenz zwischen beiden Werten und
verschiebst den um x Stellen nach rechts, so dass Du x Stellen an
Genauigkeit verliehrst. Du schneidest dann den Wert auf einen
Wertebereich, zum Beispiel -8...+7 zu, und überträgst diesen Wert mit
beispielsweise 4 Bit. Du schiebst dann den Wert wieder zurück, und
addierst ihn zum Referenzwert. Musst Du zuschneiden, so erhöhst Du den
Wert von x um eins, so dass größere Zahlen dargestellt werden können.
Ist der Wert klein (z.Bsp -4...+3), so kannst Du x erniedrigen.

Beim Empfänger machst Du im Grunde genommen das selbe. Du hast einen
Referenzwert, und Du nimmst den übertragenen Wert, verschiebst den, und
addierst Den zu deinem Referenzwert, mit dem "x" verfährst Du genauso
wie vorher.

Natürlich musst Du beide Geräte irgendwann mal synkronisieren, das
sollte aber beispielsweise beim Klingeln möglich sein.

Zur Übertragung würde ich Dir vielleich eine symetrische Strecke
empfehlen. Du kannst beispielsweie über 2 CMOS-Inverter (sockeln, wenn
möglich) 2 Leitungen machen, die immer gegenseitiges Potential haben.
CMOS deswegen, weil man da einen schönen Verstärker hat. Dann hast Du
ein schönes symetrisches Signal. Am anderen Ende kannst Du dann
beispielsweise einen Optokoppler anschließen, der Dir daraus dann ein
asymetrisches Signal für deinen RS232 macht.
Ich glaube aber nicht, dass Du mit den nötigen 32kBits/sec Probleme
haben wirst.

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.