Forum: Mikrocontroller und Digitale Elektronik Audio-Signale Auswerten


von Daniel L. (loosi)


Angehängte Dateien:

Lesenswert?

Einen wunderschönen guten morgen !

So, dann will ich mich erstmal vorstellen bevor ich euch mit meiner
ersten frage quäle :)

Ich bin 19 Jahre alt und komme aus Westheim im Wunderschönen
Sauerland.
2004 habe ich eine Ausbildung zum Elektroniker für betriebstechnik
angefangen die ich jedoch im November 2005 wieder abgebrochen habe da
ich nicht mit meinem Ausbilder klar gekommen bin. Wenn alles klappt
dann mache ich ab dem 1.8.2006 als Medientechniker weiter, dann auch
direkt im 2ten Lehrjahr. Hobbys sind eigentlich hauptsächlich das DRK,
Programmierung von Online Anwendungen und seit neuestem interessiere
ich mich auch für Mikrocontroller Programmierung :) Habe schon diverse
schaltungen zu stande bekommen (Frontblitzer für unsere
einsatzfahrzeuge etc.) und bin jetzt an etwas neuem. Wie das halt so
ist bin ich auch ein Funker :) Da wollte ich mal fragen, ob es nicht
möglich ist, mit einem Mikrocontroller Audio-Signale aus zu werten
(z.B. DTMF Töne). Da hätte ich dann nur 2 Fragen zu: Mit welchem MC
währ das möglich und wie kann ich die tonhöhen auswerten ? Klappt so
etwas mit dem Analogen eingang ? Habe mal ein Schema drangehangen wie
das ganze später mal aussehen soll.

Vielen dank schonmal !

Liebe grüße aus dem Sauerland
Der Loosi

von Alex (Gast)


Lesenswert?

1,6KHz sind für kleinere Controller evtl. schon etwas happig. Die 8
Frequenzen liegen auch alle relativ nahe beieinander. Um alle Töne zu
erkennen müsste man zunächst erkennen, dass überhaupt ein Signal da
ist. Dann müsste man x Werte aufzeichnen und könnte dann über eine FFT
die Frequenzen bestimmen. Alternativ könnte man auch 8 digitale Filter
implementieren, das sind jedoch alles keine Aufgaben, für die ein AVR
geeignet ist.

Die Auswertung müsste kontinuierlich erfolgen, was sich schon wieder
mit dem LCD beißen kann. Vielleicht kann man solche Filter auch analog
aufbauen, das ist jedoch nicht mein Gebiet :)

von Frank (Gast)


Lesenswert?

wozu das Rad neu erfinden? Für DTMF Töne gibts fertige Erkennerchips die
sich recht einfach an nen µC anhängen lassen. Für die paar Cent die so
ein Chip kostet würd ich nicht anfangen selbst was zu "erfinden".

bye

Frank

von Alex (Gast)


Lesenswert?

Tatsache, war mit unbekannt :)

Das macht die ganze Aufgabe zwar trivial, aber schneller und effektiver
ists auf jeden Fall.

von Daniel L. (loosi)


Lesenswert?

Ui, das ging aber schnell :)
Also das es Erkennerchips gibt wusste ich auch noch nicht, gut das du
das sagst, ich glaub das kann viel arbeit sparen :) ich werde mich
gleich mal bei google umschauen...
Besten Dank schonmal !

von Daniel L. (loosi)


Lesenswert?

habe da grad noch was gefunden...
könnte dass ein atmega8 sein ?
http://home.arcor.de/output/web/dekoder2.jpg

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

Die DTMF-Empfangschips heißen alle "8870"
Eine Software-Erkennung könnte auch noch klappen, mit dem
"Goertzel-Algorithmus", aber damit wird ein 8Bit-Mikrocontroller
schon schwer beschäftigt. Von Analog Devices gibts in Englisch  eine
60seitige Applikation, hier speziell mit Festkomma-DSP :
http://www.analog.com/UploadedFiles/Associatehttp://www.analog.com/UploadedFiles/Associated_Docs/201235776Chapter_14.pdf
(hoffentlich funktioniert diese lange Adresse)

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

nein natürlich nicht wenn ich beim copy&paste die Hälfte nicht lösche:
http://www.analog.com/UploadedFiles/Associated_Docs/201235776Chapter_14.pdf
so sollte es klappen, eine sehr ausführliche Übersicht zu DTMF

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

Datenblätter zu 8870 am einfachsten hier:
http://www.alldatasheet.com/view.jsp?Searchword=887
M8870, MT8870, MV8870 oder CM8870, ichz meine es gab auch noch GT8870
oder so ähnlich

von Daniel L. (loosi)


Lesenswert?

Ui, vielen dank für die vielen antworten :) Also das mit DTMF sollte
jetzt nur nen Beispiel sein, Eigentlich geht es um eine 5-Ton
Alarmierung nach ZVEI standart. Wenn der MC dann anspricht soll ein Tor
geöffnet werden, das Licht soll angehen und die BlueBox alarmiert werden
(SMS-Alarmierung weil man hier so super empfang mit den meldern hat)
Die Frequenzen sind dort wie folgt:
Ziffer    Frequenz/Hz
1     1060
2     1160
3     1270
4     1400
5     1530
6     1670
7     1830
8     2000
9     2200
0     2400
R     2600

jeder ton ertönt 70ms und danach der nächste bis alle 5 durch sind.
dafür gibts nich zufällig nen baustein oder so, oder ?

von AxelR. (Gast)


Lesenswert?

Hallo zusammen,
ich habe von Microchip eine Aplikation gelesen, ausgedruckt und
irgentwo verkramt, da wurde DTMF Auswertung mit einem kleinen PIC
gemacht. Da war der Algoritmus der Filterei genau erklärt.
Vlt. finde ich es noch - war auch hier aus dem Forum.

Viele Grüße
AxelR.

von Rahul (Gast)


Lesenswert?

Genau das Problem wurde hier letztens schon behandelt (=>Forensuche
konsultieren).
Diese Frequenzen herauszufinden sollte im Gegensatz zu DTMF einfacher
sein, da immer nur eine Ton-Frequenz übertragen wird - das läuft dann
auf eine Timer-Sache hinaus (Periodenlänge messen und mit den
Kehrwerten der ZVEI-Frequenzen vergleichen...

von Rahul (Gast)


Lesenswert?

@Axel: Meinst du vielleicht die hier:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en024294

(Link muss man sich vermutlich zusammenbasteln; es handelt sich um die
AN257 von Microchip.)

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Der Thread zum Thema 5-Ton-Folge war hier:
http://www.mikrocontroller.net/forum/read-1-344166.html#new
und Funk beim THW war bei mir auch mal ein Thema

von Gast ein andere (Gast)


Lesenswert?

Cypress hat 2 Aplication Notes für DTFM auf PSOC-Controlern (die haben
den Vorteil das man Filter etc. in den analogen building blocks
generieren kann) AN2122 und AN2247. Mit einem externen Decoder geht es
aber vielleicht doch einfacher.
Gruß

von Marco S. (masterof)


Lesenswert?

abo

von Daniel L. (loosi)


Lesenswert?

habe da grad noch was feines gefunden :) das müsste doch auch mit einem
atmega8 funktionieren, oder ?

http://home.arcor.de/output/elektronik/5ton-AVR.pdf

habe den link grad unter funkmeldesystem.de gefunden, nach nem halben
tag google´n ;)

Grüße

von Axel R. (Gast)


Lesenswert?

@Rahul,
nee der wars eigentlich nicht - komisch. Habe eben selbst nochmal
nachgesehen, muss ich mal in meiner Tasche nachsehen - irgentwo muss
der ja sein. Aber 1-Bit DFT ist doch prinzipiell schonmal keini
verkehrter Ansatz...

NB:
Mit dem 8870 lassen sich zwar sehr gut DTMF Frequenzen erkennen, aber
ob einzelne Töne auch gehen, kann ich nicht sagen.
Ich habe bei einem meiner angefangenen Projekte das Problem 1200 und
2200 Hz auseinenderzuhalten. Sind zwar nur 2 Frequenzen und nicht 11,
diese liegen aber nur einen Bruchteil der Zeit an, wie in og
Anwendung.
Dort wird der AnalogComparator verwendet und mit einem Timer die
Frequenz gemessen, wie weiter oben von Rahul schon vorgeschlagen

Gruß

AxelR.

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

Eine schöne Schritt-für-Schritt-Anleitung zum Goertzel-Algorithmus ist
hier:
http://www.embedded.com/story/OEG20020819S0057
Google findet mit "goertzel algorithm" noch einiges mehr.
Ein kleines IIR-Filter mit drei Koeffizienten. Wenn die Sollfrequenz im
Eingangssignal vorhanden ist, steigt eine Ergebnisvariable mit jeder
Schwingung an. Hier hat der Autor diesen Bandpasscharakter in Zahlen
dargestellt. Man muß nach einigen Schwingungen nur die Überschreitung
eines Schwellwerts feststellen.

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.