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
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 :)
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
Tatsache, war mit unbekannt :) Das macht die ganze Aufgabe zwar trivial, aber schneller und effektiver ists auf jeden Fall.
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 !
habe da grad noch was gefunden... könnte dass ein atmega8 sein ? http://home.arcor.de/output/web/dekoder2.jpg
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)
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
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
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 ?
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.
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...
@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.)
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
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ß
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
@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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.