www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Audio-Signale Auswerten


Autor: Daniel Lo. (loosi)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 :)

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tatsache, war mit unbekannt :)

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

Autor: Daniel Lo. (loosi)
Datum:

Bewertung
0 lesenswert
nicht 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 !

Autor: Daniel Lo. (loosi)
Datum:

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

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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:...
(hoffentlich funktioniert diese lange Adresse)

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

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

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Daniel Lo. (loosi)
Datum:

Bewertung
0 lesenswert
nicht 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 ?

Autor: AxelR. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Axel: Meinst du vielleicht die hier:
http://www.microchip.com/stellent/idcplg?IdcServic...

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

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Gast ein andere (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
abo

Autor: Daniel Lo. (loosi)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Axel R. (axelr) Flattr this
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.