Hallo Leute,
detektieren. So klingt sowas:
Da das ein akkubetriebenes Embedded Projekt ist, steht mir da nicht viel
vg, Wolfgang
Hallo Leute,
detektieren. So klingt sowas:
Da das ein akkubetriebenes Embedded Projekt ist, steht mir da nicht viel
vg, Wolfgang
-- From-address is spam trap Use: wolfgang (dot) mahringer (at) sbg (dot) at
Am 31.10.2014 14:10, schrieb Wolfgang Mahringer:
Man muss ja keine komplette DFT rechnen. Es reicht ja, nur die gesuchte(n) Frequenz(en) zu testen.
Stefan
Mit einem 8-bit uC der Geschwindigkeitsklasse Goggomobil fallen mir nur zwei Moeglichkeiten ein.
a. Wave Digital Filter. Wurde mal in den ganz alten MSP430 gemacht und es gibt auch noch rudimentaere Antleitungen dazu. Aber Du muesstest Dich tiefer in diese Theorie einarbeiten (Werke von Prof.Fettweis), Software Support gibt es m.W. nur antiquarisch unter DOS, ich habe das alte Programm von Prof.Mildenberger hier.
b. Zero Crosser. Das geht aber nur, wenn das Signal nicht voellig im Rauschen liegt. Der Comparator, den so gut wie jeder uC hat, fischt die Nulldurchgaenge heraus. Einer der Timer im uC bestimmt daraus die aktuelle Frequenz, das Ergebnis holt man nach jedem Nulldurchgang aus dessen Capture-Compare Register. Anschliessend laesst man ein langsame FFT (einstelliger Hertz-Bereich) drueberlaufen, das schafft selbst ein Methusalem unter den uC ohne grossen Stromverbrauch. Damit detektiert man nicht den Ton selbst, sondern das "iiieeeeeoooouu", also die Veraenderung des Tons. Etwas eklig ist hier, dass die CC-Register Daten nicht in festen Zeitabstaenden anfallen. Doch was waere ein Ingenieurleben ohne solche prickelnden Details? Den Output des CC-Registers sollte man auch ein wenig tiefpass-filtern, ehe das in die langsame FFT geht.
Korrelation ist eine weitere Moegliochkeit, aber ich nehme an, es gibt kein externes RAM. Die einfacheren 8-bit uC haben meist weniger als 1k und das reicht dafuer nicht.
-- Gruesse, Joerg http://www.analogconsultants.com/
Hi Stefan,
Am 31.10.2014 14:29, schrieb Stefan:
nicht harmonisch zueinander sind, und dann die zeitliche Reihenfolge der Peaks zueinander auswerten.
Es ist genau dieser Ton wie gepostet, untere und obere Frequenz ist
vg, Wolfgang
-- From-address is spam trap Use: wolfgang (dot) mahringer (at) sbg (dot) at
Am 31.10.2014 14:55, schrieb Joerg:
Hm, kingt interessant...aber einen Forschungsauftrag kriege ich wohl nicht bezahlt *g*
Das ist schon allein wegen dem Rauschen und variabler Amplitude nicht "sicher" genug.
Stimmt, an Korrelation hab ich gar nicht gedacht...werd ich auch mal durchrechnen.
vg, Wolfgang
-- From-address is spam trap Use: wolfgang (dot) mahringer (at) sbg (dot) at
Am 31.10.2014 15:35, schrieb Wolfgang Mahringer:
multipliziert, also abwechselnd 1 und -1 (oder auch 1 und 0) im Abstand
schnell zu rechnen sein.
Stefan
Sieh Dir mal die aeltesten DTMF Dekoder Software Beispiele fuer MSP430 an, da haettest Du die Wave Digital Filter schonmal beinahe fertig aufgezeigt. Das koennte man so abaendern, dass keine Tonpaare mehr rausgefiltert werden, sondern nur jeweils einer. Dann mehrere Filter nebeneinander laufen lassen und so machen, wie in Deiner Antwort an Stefan: Sehen, wenn der Ton der Reihe nach durch die Filter klingelt.
Variable Amplitude macht nichts, Rauschen schon. Doch das ganze ist empfindlicher als man denkt. Wir haben frueher Blutflussmessgeraete (Ultraschall-Doppler) so gebaut und die zeigten noch brauchbar an, wenn man sich ueber Kopfhoerer schon ziemlich anstrengen musste. Heute wird das nicht mehr gemacht, aber eher weil ein DSP kaum noch was kostet.
Ist aehnlich wie mit Audion-Empfaengern. Da hat mal jemand gesagt, das sei zwar billig, aber alles vorsintflutlich. Hinterher stellte sich heraus, dass das Audion nur wenige dB hinterher hinkte.
Koennte man z.B. mit in der Mittenfrequenz mitlaufendem Filter machen. Wenn der Ton rasch erkannt werden muss oder nicht lange anliegt, mehrere gestaffelte Filter. Das Eingangssignal peu a peu verzoegern und sehen, ob der "Chirp" irgendwann mit dem mitlaufenden Filter korrelliert.
Alternativ extern oder ueber Timer den gleichen Alarmton erzeugen, diesen gestaffelt zeitversetzen, und korrelieren. Wenn der uC arg langsam ist, vorher auf I/Q Baseband heruntermischen, damit vom uC nur noch die Tonaenderung ausgewertet werden muss.
We are here to serve :-)
-- Gruesse, Joerg http://www.analogconsultants.com/
Wolfgang Mahringer schrieb:
Ich werfe mal den in die Runde, damit habe ich schon einmal Tondetektion auf einem uC gemacht.
Christian
-- Christian Zietz - CHZ-Soft - czietz (at) gmx.net WWW: http://www.chzsoft.de/
Am 2014-10-31 um 15:54 schrieb Stefan:
Besser evt. gleich mit der 4 fachen gesuchten Frequenz abtasten und dann die Werte wie folgt summieren:
(y[i]-y([i+2])^2+(y[i+1]+y[i+3])^2
Signal y[i]=A*sin(i*Pi/2+phi) genau A^2 ergibt.
Wenn man nur mit der doppelten Frequenz abtastet, spielt die Phasenlage von Signal und Abtastung ein Rolle, beim obigen Ansatz nicht.
Jetzt noch ein bisschen tiefpas-filtern und fertig.
Bernd
/ English: Transmitter Modulation of radio beacon of distress on 121,5 MHz (243 MHz)
die Frequenz wegen Bauteilstreuung, Tempco danebenliegt.
/ Amplitude modulation emitted on this frequency corresponds to a / sweeping of more than 700 Hz between 300 Hz and 1 600 Hz
Das akustische Beispiel ist eine Rampe glaube ich.
machbar. Man hat aber anfangs trotzdem das Problem die Frequenz per
Goerzel wurde schon genannt:
MfG JRD
Hatte ich auch erst gedacht. Geht, aber da der Chirp beinahe ueber den ganzen Frequenzbereich laeuft, bringt das vermutlich nicht viel MIPS-Ersparnis.
Beim Mischen kann sie nicht danebenliegen, sofern der LO Frequenz aus dem uC kommt.
Koennte man per SW-PLL machen. Die Sample Rate durchfahren, bis der uC etwas hoert. Dann versuchen, auf den Ton zu rasten. Wenn das Feedback-Sgnal dieser PLL so aussieht wie der "Norm-Chirp" des Alarmtons, haette man den Alarm gefunden.
Das waere eine gute Idee, wenn bei diesem Projekt ein Cypress PSoC eingesetzt werden kann, denn die haben mehrere S/C Blocks mit auf dem Chip. Sie sind jedoch nicht gerade sparsam im Stromverbrauch.
-- Gruesse, Joerg http://www.analogconsultants.com/
Hi Christian,
Am 31.10.2014 16:01, schrieb Christian Zietz:
Sieht interessant aus, danke!
vg, Wolfgang
-- From-address is spam trap Use: wolfgang (dot) mahringer (at) sbg (dot) at
Es gab auch schon FM-Demodulatoren von Modems als analoge PLLs.
der VCO beobachten ob Rampen kommen.
MfG JRD
Am 31.10.2014 16:15, schrieb Bernd Nebendahl:
stimmt, ist lange her ;-)
ack
"Sender" passiv war:
Damit wohl von dem Siemens System zur Identifikation von Eisenbahnwaggons abgeleitet.
MfG JRD
das Signal kommt. Bei einem Timeout sprint man einfach wieder auf den Anfangston. Wenn man dann den letzten Ton erreicht hat, hat man gewonnen.
Stefan
In den alten Ausgaben der MC aus dem Franzis-Verlag hatte Herwig Feichtinger das 'Hobby', per Kreuz- oder Auto-Korrellation diverse Tonfolgen zu erkennen. Auf einem 6502 oder gar 6504. Im EMUF-Sonderheft war auch ein 'Europieps'- Dekodierer geplant, der auf "Empfehlung der Bundespost" nicht gedruckt wur- de.
Leider scheint es -im Gegensatz zur CT und der BYTE- keine maschinenlesbare Version solcher alten Artikel.
Gruss, Holger
Frequenz verfolgen kann.
Hier ist gezeigt
Wert.
Klassische Application Note zum Thema, aber nicht mit dieser Anwendung:
Frequenzen im Audiobereich detektiert wurden habe Hersteller wie CML in ihren ICs Einzelbitkorrelatoren verwendet. Der Ton lag aber 70 ...
100msec fest an.Bewegungsgeschwindigkeit ( Einschwingzeit ) noch hat.
experimentell Daten gewinnt die "echtes" Eingangssignal darstellen bevor man sich zusehr auf Auswertung festlegt.
MfG JRD
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.