Das SPH0641LU4H-1 von Knowles ist ein für den Ultraschallbereich bis mind. 80 kHz spezifiertes Bottom-Port MEMS-Mikro mit PDM Ausgang. (http://www.knowles.com/eng/content/download/5990/105795/version/1/file/SPH0641LU4H-1.pdf) Ich denke an eine Anwendung für einen Fledermausdetektor. Mein Verständnisproblem: - 80 kHz --> Nyquist Frequenz = 160 kHz - obere Grenzfrequenz x64 --> Clock Rate = 10,24MHz Tatsächlich ist die Clockrate mit max. 4.8 MHz (Ultraschallbereich) spezifiert. Wie passen 80 kHz Bandbreite und 4,8 MHz Takt zusammen? Und welche effektive Auflösung bekomme ich der maximalen Clock-Rate? (Im Datenblatt nicht spezifiert) Oder versteckt sich das Geheimnis auf Seite 8 ("Interface Circuit") - zwei Mikrophone anschliessen und damit die effektive Clockrate verdoppeln (Datenübertragung erfolgt jeweils an der anderen Taktflanke). Gruß, Burkhard BTW: Die tatsächliche Mikrofonempfindlichkeit liegt wohl noch deutlich höher als 100 kHz; 80 kHz sind für einen Fledermausdetektor eigentlich zu wenig. Zur Zeit arbeite ich mit einem Mikrophon mit Analog-Ausgang und sample mit 1MS/s (die dann auf 500 kS/s dezimiert werden, um noch ein halbes Bit Auflösung rauszukitzeln).
Das ist misverständlich. Ist die Clockrate die PDM-Auflösung? Oder ist das eine fixe PWM? Eigentlich ist es so, daß die PDM mit einem freilaufenden Delta-Sigma erzeugt wird und dann gesampelt und dezimiert werden muss. Wenn diese aber diskret mit den 4 MHz korrelliert, ist die Auflösung limitert.
Was sind denn das für Mikrofone? die 80kHz können auch akustische Gründe haben. Bei den Frequenzen ergeben sich mit den üblichen Systemen ja gewaltige Beugungseffekte, weil die Wellenlängen im Bereich der Membranen liegen und da sehr krumme Freqeuzngänge zustandekommen.
Das Datenblatt ist im Thread-Opener verlinkt - gleich im ersten Absatz. Es ist sehr knapp formuliert - ich verstehe es so, dass mit jeder Taktflanke ein Bit auf die Datenleitung gelegt wird. Je nach (am Mikro fest) eingestellter Adresse entweder bei steigender oder fallender Flanke. PDM-Auflösung also maximal 4,8 MHz, bzw. 9,6 MHz bei zwei Mikros. Auf welchem Weg aus dem analogen das PDM-Signal erzeugt wird, bleibt hinter den knappen Formulierungen "PDM output" und "Polarity: Increasing sound pressure - Increasing density of 1’s" verborgen. Ich selbst habe bisher keine Erfahrung mit PDM-Mikros, tue mich daher schwer, die knappen Ausführungen zu interpretieren. Gruß, Burkhard
Das Datenblatt habe ich mir schon angesehen, aber allein mir fehlt der Glaube: Die Freifeldfrequenzkurve ist eine Spassamngabe und niemals so zu erwarten, schon gar nicht für beide Achsenwinkel (von wegen "OMNI"). Diese Mikros sind logischerweise ->Druckempfänger aber ein omnidirektionales Verhalten über den Frequenzgang im gesamten Raum ist bei Mikros eh illusorische. Eine seriöse Angabe wäre zumindest eine ungefähre off axis response. Egal ... Was das digitale timing angeht, ist es grundsätzlich einfach so, daß man mit höherem Takt die höhere Genauigkeit bekommt, also z.B. 10101010 für einen mittleren Pegel statt einfach nur 11001100 oder gar 11110000 bei geringeren Frequenzen. Die applizierte Frequenz scheint aber bei diesen Sensoren je nach Bereich noch den Modulator umzuschalten. Großartige Optionen scheinen dann für Ultraschall nicht zu bestehen, wie man sieht. Nimm halt irgendwas um 4MHz, was zum Systemtakt passt und sich leicht dezimieren lässt. Die effektive Auflösung gegenüber z.B. 192kHz Abtastfrequenz bei Audio, die 80kHz repräsentieren könnten und mit denen man das dezimierte Signal wenigstens weiterverarbeiten müsste, wäre mit einem sich ergebenden Faktor von rund 32 dann aber auch eher gering aufgelöst, dafür, dass es 1 Bit Audio ist. Das liefe aus meiner Sicht auf so 128 Taps hinaus zum dezimieren. Das bringt eine Qualität von gefühlt 30dB sfdr, was nicht so wirklich an die angebichen >60dB(A) SNR heranreicht, aber mehr ist wohl nicht drin. Höhere Filterausdehnung wird sehr schnell ineffektiv. Ich würde ein CIC mit einem FIR paaren. Ich würde mir aber von der Ultraschallqualität dieser Mikros also nicht allzuviel versprechen, zumal der maximale Schalldruck mit 120db (SPL nehme ich an) nicht 100% "fledermaustauglich" ist.
Danke Jürgen für die Erläuterungen. Klingt, als ob ich beim meinem bisherigen, analogen Ansatz bleiben sollte. Da habe ich das "Soundshaping" (regelbare Vorverstärkung, 12bit SAR ADC) zumindest selbst in der Hand - und dazu noch ein paar dB SPL mehr. Ironischerweise hatte ich mir gerade von einem Mikro mit digitalem Ausgang versprochen, Übersteuerungen - z.B. bei direktem Überflug - besser vermeiden zu können. Gruß, Burkhard
Hallo Burkhard, >>>>Klingt, als ob ich beim meinem bisherigen, analogen Ansatz bleiben sollte. <<<< Nee, nimm die. Knowles MEMS Micros habe ich auch schon ganze Weile zum Ultraschall Aufnehmen rumzuliegen ohne bisher dazu gekommen zu sein. Mit den Dingern Fledermäuse zu belauschen ist m.E. eine sehr gute Idee. Meine Meinung: Zu den geäußerten Bedenken: Knowles macht seit Jahrzenten super mics, deren Datenblätter sind vertrauenswürdig, das ist kein China startup. Die Frequenzgangskurven sind real, die zeigen für andere mics auch krummere Kurven! SPL: Weiß nicht, ob die relativ taub sind, müsste man nochmal schauen, glaub ich aber nicht. Knowles kommt von Hörgeräten, die Dinger müssen empfindlich funktionieren. PDM: 'pulse density modulation', ein einfacher Tießpass reicht eigentlich aus. Für 60 dB SNR muß man was Schlaueres machen, muss man sich bei sigma/Delta Wandlern abschauen. Wahrscheinlich sagt Knowles aber auch wie man ihre mics demodulieren soll. Muß man aber nochmal kucken. Will haben: Knowles mic an kleinem FPGA schiebt Fledermaus Daten in die USB Schnittstelle des Telephons, dort dann Frequenz/Zeit Diagramm. Hoffe, Du machst weiter und ich kann Deine Schaltung nachbauen. Cheers Detlef
PS: Gabs schon mal so ähnlich hier: Beitrag "FIR Filter Optimierung eines PDM Signals auf STM32F407 simuliert mit Matlab" Cheers Detlef
Ja das Thema gab es schon einmal und ich habe das damals auch mal mit verfolgt - sehe aber, dass es wohl nicht weiter ging. Hier nun meine 2 Cent zum Thema: Man kann so einen PDM-Datenstrom mit diversen mehr oder weniger schlauen Methoden dezimieren. Das Einfachste ist, einfach 1024 Samples aufzuintegrieren und das als Wert zu nehmen. Dann bekommt man ein auf 3kHz reduziertes Signal. Mehr gibt es wieder, wenn man das für überlappende Gruppen von Samples macht, also z.B. von 0 ... 1023 , 10... 1033, dann hat man die 100fache Auflösung. (Ungefähr). Wären dann 300kHz Bandbreite. Zum Schluss schneidet man die erzeugten Oberwellen einfach mit einem klassischen Tiefpass weg. Z.B. bei 100kHz. Das müsste dann für das Micro reichen.
Detlef _. schrieb: > Mit den Dingern > Fledermäuse zu belauschen ist m.E. eine sehr gute Idee. Wenn's reicht, denn die Tierchen nutzen Frequenzen bis fast zum Dreifachen dessen, was die Mikros können. > PDM: 'pulse density modulation', ein einfacher Tießpass reicht > eigentlich aus. Für 60 dB SNR muß man was Schlaueres machen, Die bekommt man bei der Konstellation der Frequenzen nicht hin. Ich betreibe z.B. meine simplen DA-Ausgänge bei den Eval boards mit z.B. 25MHz und erreiche bei einem "normalen" 2-stufigen Analogfilter gerade so eine erträgliche Audioqualität. Bei 1kHz sind das vielleicht 60dB THDN, darüber defintiv weniger: http://www.96khz.org/htm/virtualpldorgan01spartan3e.htm Mit z.B. 100 MHz in den neueren Versionen geht es jeweils um 10dB besser. Hier haben wir aber nur 1/25tel der Taktfrequenz, wollen jedoch 4x höherere Frequenzen abbilden. Keine Chance. > sich bei sigma/Delta Wandlern abschauen. Wahrscheinlich sagt Knowles > aber auch wie man ihre mics demodulieren soll. Muß man aber nochmal > kucken. Was man machen kann, ist die Entzerzerrung in die Filterung mit einbauen, aber dafür benötigt man genauere Infos über das Übertragungsverhalten,bzw man muss es ausmessen, weil ja auch das MEMS selber bereits eine Entzerrung Vorverzerrung vornimmt vornehmen kann. So oder so benötigt man schon einiges an Filterei. > Will haben: > Knowles mic an kleinem FPGA schiebt Fledermaus Daten in die USB > Schnittstelle des Telephons, dort dann Frequenz/Zeit Diagramm. Dann vielleicht so: Wandlung auf eine Audiofrequenz und Übertragung an einen USB-Chip. Das geht z.B. auch direkt mit Audio-Chips, die einen digitalen Eingang verarbeiten können und S/PDIF abgeben. Dann einfach einen externen Converter dranhängen. Im FPGA würde ich ausgehend von der S/PDIF Frequenz das Mic mit einem Drittel des Taktes versorgen und 32:3 dezimieren - und dann nochmal einen Faktor 2 per DDC über einen Tiefpass. Das ergibt (exakt) 192.000. Die 192k wären IMO die minimale Frequenz, mit der man die 80k noch halbwegs sauber abbilden könnte. Mit einem kleinen Converter bekommt man es auf einen Stereokanal mit 96kHz verteilt und kann es in zwei Bändern übertragen, wenn der Converter nur 96k kann. Diese Dinge gibt es in der Bucht zu unter 20 Euronen. Der S/PDIF Takt liesse sich bei Bedarf aus 25 MHz erzeugen, wie ich es schon mehrfach gepostet habe. Mit der Mimik liesse sich parallel und Synchron auch sicher ein FDTI chip betreiben.
Markus F. schrieb: > Das Einfachste ist, einfach 1024 Samples > aufzuintegrieren und das als Wert zu nehmen. Dann bekommt man ein auf > 3kHz reduziertes Signal. Mehr gibt es wieder, wenn man das für > überlappende Gruppen von Samples macht, also z.B. Das ist aber auch letzlich nichts anderes, als ein CIC-Filter nur eben mit anderen Eingangs- und Ausgangsfrequenzen. Da man das auch irgendwie verarbeiten können soll / wollen wird, wäre eine chip-kompatible Audiosamplefrequenz sicher hilfreich. Dann kann man es auch im PC leichter erfassen. >3kHz Es wären 3kHz, was die Grundwelle angeht, aber enthalten wäre noch deutlich mehr, da es ja eine Faltung mit einem Rechteck ist. Man kann natürlich nur mit einem FIR arbeiten und über eine entsprechende Anzahl von Samples ausdehnen.
Danke Euch für die Antworten und Hinweise. Im Augenblick sample ich die Daten von meinem analogen Mikrofon mit 1 MS/s und schreibe sie in den RAM meines Baseboards - das reicht für ca. 30 Sekunden bei zwei Kanälen. Für die zeitgedehnte Audioausgabe benutze ich den wunderbar flexiblen CS4344 - z.B. 50 kHz für 20fache Dehnung. Mit dieser Kombination bin ich von "Standard"-Audiofrequenzen unabhängig. Das sollte für die Analyse der Frequenzinformation auch gelten? Bei den digitalen PDM-Mikros schreckt mich der - für mich als DSP-Änfänger hohe - Einarbeitungsaufwand. FIR-Filter verstehe ich und mein Board bietet ausreichend Resourcen. Delta-Sigma dagegen will (noch?) nicht so recht in meinem Kopf. Was die Frequenzbereich betrifft - grundsätzlich können Fledermäuse bis 200 kHz erreichen - einige in Europa vorkommende Arten schaffen um die 140 kHz. Das mit einem MEMS zu erfassen ist wohl illusorisch. Allerdings liegen die meisten Ortungs-Rufe deutlich niedriger, ein Abendsegler tummelt sich bei 40 kHz abwärts, die Mückenfledermaus vielleicht bei 70 kHz abwärts, die häufige Zwergfledermaus etwas darunter. Die lautesten Arten schaffen wohl bis zu 140 dB(SPL), ob das auf die in Europa vertretenen Arten zutrifft weiss ich nicht, das Knowles-Mikro wäre am Anschlag, wenn z.B. ein Tier beim Überflug in unmittelbarer Nähe ruft. Das analoge Pendant bieten ca. 4 dB mehr. Gruß, Burkhard @Detlef - Datenausgabe per USB steht auf meiner Liste - allerdings bleibe ich (Hobbyprojekt) sicher noch eine Weile auf meinem Nexys4-Baseboard.
Welche analoge Mikro verwendest Du? Ich habe mal mit meinen Studiosachen gemessen: Ein Mikro schafft bis 50kHz - beim Wandler muss ich den AA-filter rausnehmen. Von der Dynamik in dem Bereich ist das aber so eine Sache. Zu dem Thema Sigma-Delta: In der Grafik oben habe ich einen solchen Ausgang mal simuliert und zwar für 80kHz optimiert (obere Grenzfrequenz). Die grüne Kurve ist das Ergebnis einer Aufaddition von 64 Werten. Wenn man das filtert und sampelt sollte es für einfache Zwecke reichen.
Nur weil im Excel keine Knicke sichtbar werden, heisst es nicht, dass das ein guter Sinus ist oder wird. Wir reden hier von einem 50:1 Verhältnis. Das wird bestenfalls 8-Bit Audio. Komplexere Signalformen möchte ich mir gar nicht vorstellen.
Jürgen S. schrieb: > Welche analoge Mikro verwendest Du? Ich habe mal mit meinen Studiosachen > gemessen: Ein Mikro schafft bis 50kHz - beim Wandler muss ich den > AA-filter rausnehmen. Von der Dynamik in dem Bereich ist das aber so > eine Sache. Ein "MoMiMic" (mit Vorverstärker) von Dodotronic: http://www.dodotronic.com/index.php/mini-microphone/?v=3a52f3c22ed6 Die Abbildung ist wohl älter, der Sensor auf meinem Exemplar ist ein MEMS, vermutlich ein SPH1611LR5H-1 von Knowles - aber das ist nur geraten. Nach Angaben des Herstellers soll die Grenzfrequenz oberhalb von 200 kHz liegen. * Vorteile: Spannungsversorgung und Signalbereich passen zum PModAD1 von Digilent - kann ohne weitere Anpassungen angeschlossen werden. * Nachteile: bei hoher Lautstärke kann das Signal den Eingangsbereich des ADC-Moduls kurzzeitig überschreiten (> Vdd / < 0 V) - clipped dann analog und digital. * Eine in unmittelbarer Nähe rufende Fledermaus bringt den Sensor an den Anschlag. Erst vor wenigen Tagen beobachtet - die Entfernung zum Tier betrug etwa 3 bis 4 Meter. * Der Hersteller verrät den Sensor nicht. Frequenzgang daher nicht genau bekannt. > > Zu dem Thema Sigma-Delta: > > In der Grafik oben habe ich einen solchen Ausgang mal simuliert und zwar > für 80kHz optimiert (obere Grenzfrequenz). > > Die grüne Kurve ist das Ergebnis einer Aufaddition von 64 Werten. Wenn > man das filtert und sampelt sollte es für einfache Zwecke reichen. Danke Jürgen. Viele Fledermausrufe sweepen über einen Bereich von z.B. 70 bis 30 kHz in ca. 10 ms - fällt so ein Signal noch unter "einfache Zwecke"? Ich habe beide Arten (analog und digital) Sensoren bestellt und um sie für meine Zecke auszutesten. Anschlusskabel: Die PDM-Variante erfordert eine an die 4.8 MHz Clk / Daten angepasste Kabelverbindung (ca. 50 cm) . Ich hatte zunächst an LWL-Kabel und Optokoppler gedacht - aber das Mikro toleriert max. 3 ns Rise/Fall Time - dafür wäre ein Optokoppler zu langsam (HFBR 5 MHz: ca. 15 ns). Ist es sinnvoll, die Flanke mit einem schnellen Schmitt-Trigger aufzumotzen (Jitter?) - oder lieber gleich zu SMA/RG58 mit passenden Treibern greifen? Gruß, Burkhard
>>>>>>>>>>
Anschlusskabel:
Die PDM-Variante erfordert eine an die 4.8 MHz Clk / Daten angepasste
Kabelverbindung (ca. 50 cm) . Ich hatte zunächst an LWL-Kabel und
Optokoppler gedacht - aber das Mikro toleriert max. 3 ns Rise/Fall Time
- dafür wäre ein Optokoppler zu langsam (HFBR 5 MHz: ca. 15 ns). Ist es
sinnvoll, die Flanke mit einem schnellen Schmitt-Trigger aufzumotzen
(Jitter?) - oder lieber gleich zu SMA/RG58 mit passenden Treibern
greifen?
Wie willst Du denn dei PDM Variante bespielen? 50cm bei 4.8MHz ist
schlecht, soviel treiben die mics nicht (wahrscheinlich), direkt ran an
das mic mit der Electronic, wie bei Deinem link.
Cheers
Detlef
Detlef _. schrieb: > direkt ran an das mic mit der Electronic, wie bei Deinem link. Du meinst, direkt ran an das Basisboard / PMod Port? Das wäre ungünstig, jeder Tastendruck, jedes Drehen am Volume etc. würde vom Mikro registriert werden. Irgendeine Distanz braucht es schon - die Spannungsversorgung müsste natürlich mitgeführt werden damit die Elektronik am Mic sitzt. Gruß, Burkhard
Solche Mikros stecken in den Geräten eigentlich auf einer eigenen Platine, die nicht in der Nähe der Hauptplatine positioniert ist. Der umgekehrte Weg wäre, die Taster und Schalter auszulagern.
Burkhard K. schrieb: > Viele Fledermausrufe sweepen über einen Bereich von z.B. > 70 bis 30 kHz in ca. 10 ms - fällt so ein Signal noch unter "einfache > Zwecke"? Wenn das Mikro es überträgt und die Samplerrate reicht, warum nicht? Du solltest eben die SV entsprechend auslegen.
Ich komme nochmals zurück auf diese Frage: Beitrag "Re: MEMS Ultraschallmikro mit PDM" Burkhard K. schrieb: > Es ist sehr knapp formuliert - ich verstehe es so, dass mit jeder > Taktflanke ein Bit auf die Datenleitung gelegt wird. Wie wird das praktisch erreicht, dass bei der PDM eine Frequenz vorgegeben werden kann? Soweit ich mich damit befasst habe, sind die Modulatoren in der Frequenz freilaufend und optimieren damit ihre Nulldurchgänge, haben also das geringste Störspetktrum! ?
Sehr wahrscheinlich wird es kein freilaufender oder nach einer Modulationsmethode arbeitende PWM- sondern eine mit vorzugebender Frequenz sein. Das interne Dezimationsfilter arbeitet sicher auf derselben Frequenz, womit es dann automatisch passt. Da der Filter hart an der fs hängt, kann er entsprechend optimiert sein. Außerdem dürfte der eigentliche Takt intern mit einer PLL hochgeschoben werden. Von einer ASIC-App habe ich ziemlich gut vor Augen, was da geht: 3Mit S/PDIF rein, intern auf dem 1024fachen für die lockin-PLL.
Wenn ich die Application Notes diverser Hersteller anschaue, dann laufen wohl alle gängigen MEMS PDM Mikros mit fester Clock, z.B.: * Audio Precision: http://users.ece.utexas.edu/~bevans/courses/rtdsp/lectures/10_Data_Conversion/AP_Understanding_PDM_Digital_Audio.pdf * Invensense: http://www.invensense.com/wp-content/uploads/2015/02/Analog-and-Digital-MEMS-Microphone-Design-Considerations.pdf
Klar, eine variable PDM löst zwar besser auf, müsste aber auch erst in irgendeiner Weise gefiltert werden und digital ist das nicht einfach, wenn die Frequenz zu hoch ist. Und nicht jeder will da mit einem FPGA dran, um ausreichend Taktreserve zu haben.
Burkhard K. schrieb: > SPH0641LU4H-1 von Knowles ist ein für den Ultraschallbereich bis > mind. 80 kHz spezifiertes Bottom-Port MEMS-Mikro Als aktuelles update zu dem Thema: Auch die konventionellen MEMS-Mikros, die für den Audiobereich spezifiziert sind, liefern teilweise bis ca. 40kHz relevanten Ultraschall. Der muss entsprechend gefiltert werden. Habe aktuell wieder eine solche Anwendung.
Hi, die Dinger kann man super an einen ST Cortex basteln. Mehrere wird schwierig. Beitrag "Hook up a MEMS microphone to the I2S of a Cortex M4" Cheers Detlef
Jürgen S. schrieb: > Auch die konventionellen MEMS-Mikros, die für den Audiobereich > spezifiziert sind, liefern teilweise bis ca. 40kHz relevanten > Ultraschall. Wie schon in meinem anderen Beitrag gesagt, PDM-MEMS für Ultraschall habe ich aufgegeben, weil es nicht weit genug reicht (80 kHz). Ich will nicht ausschliessen, dass auch andere (analoge) MEMS-Mikros geeignet sind, steht nur leider nicht in den Datenblättern. Das FG-23629 von Knowles dagegen ist bis 100 kHz beschrieben und reicht noch viel weiter; nur den Empfindlichkeitsabfall von -12 dB/Oktave muss ein Vorverstärker entsprechend ausgleichen. Eine entsprechende Schaltung lässt sich auch mit 3.3V gut betreiben. Ein wenig O.T.: Leider ist das FG-23629 inzwischen so gefragt, dass es erst ab 25 Euro über den Ladentisch geht.
Burkhard K. schrieb: > Wie schon in meinem anderen Beitrag gesagt, PDM-MEMS für Ultraschall > habe ich aufgegeben, Eigentlich schade, denn das Bild in dem von Detlef gelinkten Beitrag sieht doch sehr nach Fledermaus aus: https://www.mikrocontroller.net/attachment/330834/spectrum.jpg
Detlef _. schrieb: > die Dinger kann man super an einen ST Cortex basteln. Mehrere wird > schwierig. Kennt jemand eine Type die Ultraschall bis 175kHz kann und einen Prozessor, der bis zu 4 (oder 6) davon verarbeiten kann?
Robert K. schrieb: > Detlef _. schrieb: >> die Dinger kann man super an einen ST Cortex basteln. Mehrere wird >> schwierig. > > Kennt jemand eine Type die Ultraschall bis 175kHz kann Existiert wahrscheinlich nicht in breitbandiger Form. Schmalbandige Wandler für ca. 200kHz sind ganz gängig. > und einen Prozessor, der bis zu 4 (oder 6) davon verarbeiten kann? Das schafft nen Cortex M4 wahrscheinlich nicht, der bräuchte dann 4 SPI Schnittstellen. Hätte er die, müsste er ~20MBit/s wegschaufeln. Da braucht man was Kräftigeres, RPi zum Bleistift. Cheers Detlef
Robert K. schrieb: > und einen > Prozessor, der bis zu 4 (oder 6) davon verarbeiten kann? XMOS https://www.xmos.com/products/voice/micarray
:
Bearbeitet durch User
Die PDM- und PWM-Datenströme prozessiert man - besonders bei Sonderanwendungen - am besten mit einem kleinen FPGA, wenn man nicht schon die gesamte notwendige Signalaufbereitung damit macht. Dann kommt man mit einem kleineren Mikrocontroller aus und ist in der Wahl und der Konfiguration der Filter völlig frei. Was mit DSPs geht und mein manchen Prozessoren vorrealisiert ist, passt nicht und die SW ist immer irgendwie rechenzeitoptimiert und damit ein Kompromiss. Die Filter für Ultraschall müssen logischerweise entsprechend ausgelegt werden.
Joe F. schrieb: > Robert K. schrieb: >> und einen >> Prozessor, der bis zu 4 (oder 6) davon verarbeiten kann? > > XMOS > https://www.xmos.com/products/voice/micarray 249$ :(( Viel zu teuer. Cheers Detlef
Detlef _. schrieb: > 249$ :(( Viel zu teuer. Kennt jemand Alternativen? Es geht um die Erfassung von Störschall und die Analyse desselben. Der Störschall ist im Ultraschallbereich, teilweise jedenfalls. Bevor Rückfragen kommen: Kein Audio. Schallbasierte Messtechnik. Erfassung von Geschwindigkeit, Position und Annäherung. U.A. Schutzschaltung gegen Anstossen.
Hi, >> Alternativen Produktsuche bei ST liefert z.B. den STM32F411CC . Der hat 5 SPI und 5 I2S Schnittstellen. Hier Beitrag "Hook up a MEMS microphone to the I2S of a Cortex M4" hab ich mal gezeigt, wie man eine SPI Schnittstelle eines Cortex M4 zu I2S umlügt und ein MEMS Mic ranhängt. Bei dem obengenannten uC sind also sicher 5 und vielleicht 10 MEMS Mics anbaubar. Ansonsten schliesse ich mich meinem Vorredner an, mittleres CPLD oder allerkleinstes FPGA kann auch paar MEMS Mics bespassen. Weiterhin wäre es vermutlich möglich, direkt die MEMS über GPIOs einzulesen. Der Datenstrom kommt mit ca. 3MBit/s, mit der Frequenz kann ein Cortex mit 100MHz oder so ein Port schon lesen und dann muss er nur noch addieren. Oder man baut die 'add and dump' Dezimation diskret mit digitaler Logik auf. das sind auch nicht mehr als 5 ICs oder so. So schöne Dinge, so wenig Zeit. Cheers Detlef
Haben denn die MEMS-Mikrofone mehrheitlich eine I2C Schnittstelle? Die,
die ich so finde (und die beschafft wurden) haben einen direkten
digitalen Ausgang. Andere sind total analog.
Die digitalen senden auch 2 Kanäle mit PWM. Sind schon 6MHz. Wir hätten
auch mehrere.
Ich könnte einen Port mit bis zu 8 MEMS in einem Zyklus einlesen, z.B.
per Interrupt, müsste gehen, wenn die synchron sind.
>'add and dump' Dezimation
wie würde man die realisieren, angenommen der Controller schafft es?
Klaus L. schrieb: > Haben denn die MEMS-Mikrofone mehrheitlich eine I2C Schnittstelle? Die, > die ich so finde (und die beschafft wurden) haben einen direkten > digitalen Ausgang. Andere sind total analog. Ja, direkt digital. Die Schnittstelle heißt I2S, nicht I2C. Schlicht: Für jeden Takt gibts ein Bit auf der Datenleitung. > Die digitalen senden auch 2 Kanäle mit PWM. Sind schon 6MHz. Wir hätten > auch mehrere. Ah, kenn ich nicht. Hast Du einen link auf ein Datenblatt? > > Ich könnte einen Port mit bis zu 8 MEMS in einem Zyklus einlesen, z.B. > per Interrupt, müsste gehen, wenn die synchron sind. Ja, synchron sind die bei gleichem Takt. Ist aber sehr auf Kante genäht. 3Mio Interrupts pro sec bei 100MHz Takt ist schon sportlich, geht vllt. nicht. > >>'add and dump' Dezimation > wie würde man die realisieren, angenommen der Controller schafft es? Du willst z.B. von 3MHz auf 30kHz dezimieren, Faktor 100. Dann zählst Du, wieviele von den 100Bit gesetzt sind, fertig ist die Laube. Das läuft unter 'add and dump' oder 'CIC' , das ist ein 100er FIR Filter mit allen Koeffizienten 1 und einer folgenden Dezimation um 100. Schlichter hack, geht aber viel besser, ist aufwändig, hab ich hier mal probiert: Beitrag "FIR Filter Optimierung eines PDM Signals auf STM32F407 simuliert mit Matlab" Cheers Gute Nacht Detlef
>Dann zählst wieviele von den 100Bit gesetzt sind, fertig ist die Laube. Die 0er würde ich noch abziehen, damit es symmetrisch wird und einen echten Nullwert ergibt. Der CIC-Filter ist die bessere Version dieses MeanValues, aber für Audio auf Sample-Frequenz leider ebenso gut nutzbar, wie Putzlumpen beim Beseitigen von Hochwasser im Keller. Das geht nur bei hoher Überabtastung gut und wenn man die HF-Durchlässigkeit des CIC hernach, davor oder innendrin beseitig. Detlef _. schrieb: >> Die digitalen senden auch 2 Kanäle mit PWM. Sind schon 6MHz. Wir hätten >> auch mehrere. > > Ah, kenn ich nicht. Hast Du einen link auf ein Datenblatt? Die gehen bis 4MHz und verbinden zwei Mikrofone dadurch, dass sie auf beiden Taktflanken senden. Sozusagen DDR. Die beiden Mikros sind auf dem Datenausgang als "physical wired or" verdrahtet: https://www.cui.com/blog/analog-or-digital-how-to-choose-the-right-mems-microphone-interface
Jürgen S. schrieb: > Detlef _. schrieb: >>> Die digitalen senden auch 2 Kanäle mit PWM. Sind schon 6MHz. Wir hätten >>> auch mehrere. >> >> Ah, kenn ich nicht. Hast Du einen link auf ein Datenblatt? > Die gehen bis 4MHz und verbinden zwei Mikrofone dadurch, dass sie auf > beiden Taktflanken senden. Sozusagen DDR. Die beiden Mikros sind auf dem > Datenausgang als "physical wired or" verdrahtet: > > https://www.cui.com/blog/analog-or-digital-how-to- > choose-the-right-mems-microphone-interface Auf wählbaren Flanken senden können die Knowles Mics auch. Hatte Klaus L. so verstanden, dass er zwei Mics in einem Gehäuse hat. Cheers Detlef
Detlef _. schrieb: > Auf wählbaren Flanken senden können die Knowles Mics auch. Yepp. Dabei muss dann logischerweise beachtet werden, das auch alternativ auszuwerten. Die einschlägigen Chips machen das teilweise. >dass er zwei Mics in einem Gehäuse hat. Da ist mir keines bekannt. Ich sehe auch den Zweck nicht. Wenn man zwei nahe sitzende MICs braucht, wird man die eher selber räumlich optimiert setzen.
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.