-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: Erkennen, ob gesprochen wird

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672

    Erkennen, ob gesprochen wird

    Anzeige

    Hallo,

    ich habe zur Zeit viele verschiedene Probleme. Das liegt daran, das ich verschiedene Projekte angefangen habe und immer wenn ich bei einem Projekt hänge und nicht weiterkomme erst mal bei einem anderen Projekt versuche weiter zu kommen.

    Im aktuellen Fall möchte ich erkennen, ob in einem Raum ein Mensch spricht. Ich habe mir folgende Schaltung ausgedacht:

    Klicke auf die Grafik für eine größere Ansicht

Name:	Audio_detect.gif
Hits:	32
Größe:	8,9 KB
ID:	23962

    Es handelt sich dabei um ein Elektret-Mikrofon mit Verstärker inkl. Frequenzfilter und nachgeschaltetem Komperator. Den Verstärker mit Filter hatte ich bereits in einem anderen Projekt im Einsatz, bei dem ich via µC Sprach-Waves aufgezeichnet habe. Der Verstärker ist also erprobt und funktioniert.
    Hinzu gekommen ist die letzte Stufe (N1). Das Signal PWM_EDGE kommt vom µC, damit dieser seinen Schwellwert selbst einstellen kann. Die gemessene PWM-Spannung ist durch C7 genügend geglättet, das habe ich mit dem Oszi überprüft.
    Ich habe aber auch schon ein Poti an Pin 12 angeschlossen, mit dem ich die Schwellspannung fest einstellbar machen konnte, es gab beim Verhalten keinen Unterschied.

    Leider sind die Ergebnisse nicht zufriedenstellend, bzw nicht konstant. Wenn man den Schwellwert eingestellt hat funktioniert es ein paar Minuten, und dann wieder mal nicht. Das ganze scheint stark zu driften. Schlimm wird es, sobald ein Handy in die Nähe kommt, dann spinnt die Schaltung zeitweise komplett.

    Wie macht man sowas besser? Das Ziel ist es nur zu erkennen ob gesprochen wird oder nicht.

    Viele Grüße
    Andreas

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Kommt drauf an, was du im Programm machst, Taste doch das Signal ab, erstelle ein fft und schau dir den Betragsspektrum an, da sollte es eher stabil sein, bin grad auch an sowas drann, simuliere aber vorab erst in matlab.
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    Hallo Speedy,

    leider sind fft und Betragsspektrum für mich "böhmische Dörfer".

    Im Programm möchte ich nur darauf reagieren, wenn es Geräusche gibt. Man kann das Ziel grob als "Babyfon" definieren, nur das die Geräusche selbst gar nicht übertragen werden müssen.

    Viele Grüße
    Andreas

  4. #4
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Hallo!

    Zitat Zitat von Bumbum Beitrag anzeigen
    Wie macht man sowas besser? Das Ziel ist es nur zu erkennen ob gesprochen wird oder nicht.
    Ich würde es mit selektiven Verstärker (ca. 300 - 3000 Hz) mit automatischer Verstärkungregulation und Schmitttrigger am Ausgang realisieren.

    Übrigens, besser ist immer relativ.

    Man könnte sich fertige Schaltungen "VOX in TX" von Funkamateure anschauen (z.B.: http://service.alan-electronics.de/A...-Schaltung.pdf ), weil es zum Umschalten einer Antenne zwischen Sender und Emfänger benutzt wird, wenn ins Mikrophon gesprochen wird.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    Guten Morgen PICture,

    danke für die Tipps. Dein zweiter Vorschlag hört sich am Vernünftigsten an. Zum Thema "VOX in TX" habe ich leider nur zwei Treffer bei Google erhalten und diese haben nichts mit dem Thema zu tun, aber dein verlinkter Schaltplan hat das IC NJM2072 gezeigt, das laut Datenblatt genau das macht, was ich möchte. Sobald Sprache erkannt wird, wird ein Open Collector Ausgang geschaltet. --> Perfekt!
    Leider ist das IC nicht mehr erhältlich. Ich habe Reichelt, ELV, Conrad, Farnell, RS, Segor und Digi-Key abgeklappert. Nirgedwo ist das IC überhaupt im Programm. Einen Ersatztyp habe ich leider auch nicht gefunden. Kennt jemand eine Bezugsquelle oder einen Ersatztyp für dieses IC?

    In der Zwischenzeit beschäftige ich mich mal mit selektiven Verstärkern...

    Viele Grüße
    Andreas

  6. #6
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    Danke, auf die Idee "eBay" bin ich noch gar nicht gekommen. Ich bräuchte aber, wenn es damit funktioniert, mindestens 20 Stück. Somit fällt deine gute Idee leider ins Wasser.

    Mittlerweile habe ich noch den NJU1781 gefunden, den gibts aber auch nirgendwo.

    Und den BA335, da bin ich mir aber noch nicht 100%ig sicher, ob es damit funktioniert. Außerdem habe ich den bis jetzt auch nur bei ebay gefunden.

  8. #8
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Wie gesagt, wenn mans einfach machen will, Taste dein Signal ab und Rechne die energie aus und setz das in einem Filter, klappt sehr gut!!!

    Hier ist ein beispiel...

    vorausgesetzt du benutzt ein microcontroller und wenn du matlab hast, kannst du es schön simulieren.
    Oder solltest du die unterfunktionen kennen, oder nachschlagen wollen kommst du hiermit auch weiter.
    E = sum(abs(x).^2)
    Damit bekommst du die Energie und kannst dann die empfindlichkeit einstellen indem du ein ditigalen Filter nimmst!
    Geändert von Sp666dy (14.12.2012 um 15:31 Uhr)
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.08.2006
    Ort
    Würzburg, Germany
    Beiträge
    672
    Hallo Sp666dy,

    ich habe gerade noch mal das Datenblatt meines Controllers (ATmega162) durchforstet. Der hat leider keinen ADC. Würde es damit trotzdem gehen?

    Viele Grüße
    Andreas

  10. #10
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    ja ich glaube ein AD wandler IC würde da helfen, aber ich glaube schon das ein atmega16 ein ad wandler drin ist?

    Ne doch nicht, hasse recht.

    Wie weit bist du denn mit deinem MIC gebunden, muss es der sein? und wie viel erwartest du von dein IC, wenn du viel amchen willst, lohnt es sich ein MIC nur dafür zu benutzen ob ein signal rien kommt oder nicht. und dann vielleicht noch die zeitdauer des signal weiter zu geben.

    Gruß David
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

Seite 1 von 3 123 LetzteLetzte

Ähnliche Themen

  1. Spannungsregler wird heiß, wenn ISP angesteckt wird
    Von loukumas im Forum AVR Hardwarethemen
    Antworten: 5
    Letzter Beitrag: 11.02.2008, 17:53
  2. Kondensatorkapazität erkennen
    Von MischaMV im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 28.02.2006, 18:49
  3. Berührung erkennen ?
    Von ProgDom im Forum Sensoren / Sensorik
    Antworten: 9
    Letzter Beitrag: 15.08.2005, 22:30
  4. Antworten: 8
    Letzter Beitrag: 18.05.2005, 22:21
  5. Positionen erkennen
    Von elvisfan im Forum Sensoren / Sensorik
    Antworten: 3
    Letzter Beitrag: 25.08.2004, 20:08

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •