Klopfregelung mit Arduino?
Klopfregelung mit Arduino?
Ich würde gerne eine einfache Schnittstelle bauen welche das Signal des Klopfsensors in ein 0-5V Analogsignal für die MS2 umwandelt. Es soll also erst mal nur die Amplitude der Frequenz in ein 0-5V Signal gewandelt werden. Eine Filterung würde ich später noch ergänzen. Hier am Board gibt es soweit ich mitbekommen habe ja einige fähige Leute und vielleicht kann jemand helfen oder hat sowas ja vielleicht sogar schon selbst gemacht.
Ich spiele seit Weihnachten mit einem Arduino R3 um mich in die Microcontroller Thematik einzuarbeiten.
Meinen bisherigen Erkenntnissen nach gibt es erst mal 2 Problemstellen die ich mit zusätzlicher Hardware lösen muss:
1. Das Arduino hat keinen "echten" analog Output und ich brauche zusätzlich noch ein I2C DAC. Ich habe schon erste Versuche gemacht den Knock Input der MS2 mit einem per PWM geregelten Analog Output des Arduino zu füttern, was aber nicht funktioniert hat. Ich gehe also davon aus dass ich einen "echten" analog Output ergänzen muss.
2. Um die Signale des Klopfsensors im Arduino verabeiten zu können benötige ich ein I2S Breakout Board an welches der Klopfsensor als "digital Microphon" angeschlossen wird.
Was die Codes betrifft habe ich schon einige gute Libraries gefunden die für die Aufgabe hilfreich wären aber erst mal muss die Hardware funktionieren.
Vielleicht kann jemand etwas dazu schreiben, ob ich mit meinen Feststellungen auf dem Holzweg bin, oder man das was ich möchte vielleicht sogar fertig kaufen kann.
Viele Grüße
Markus
Ich spiele seit Weihnachten mit einem Arduino R3 um mich in die Microcontroller Thematik einzuarbeiten.
Meinen bisherigen Erkenntnissen nach gibt es erst mal 2 Problemstellen die ich mit zusätzlicher Hardware lösen muss:
1. Das Arduino hat keinen "echten" analog Output und ich brauche zusätzlich noch ein I2C DAC. Ich habe schon erste Versuche gemacht den Knock Input der MS2 mit einem per PWM geregelten Analog Output des Arduino zu füttern, was aber nicht funktioniert hat. Ich gehe also davon aus dass ich einen "echten" analog Output ergänzen muss.
2. Um die Signale des Klopfsensors im Arduino verabeiten zu können benötige ich ein I2S Breakout Board an welches der Klopfsensor als "digital Microphon" angeschlossen wird.
Was die Codes betrifft habe ich schon einige gute Libraries gefunden die für die Aufgabe hilfreich wären aber erst mal muss die Hardware funktionieren.
Vielleicht kann jemand etwas dazu schreiben, ob ich mit meinen Feststellungen auf dem Holzweg bin, oder man das was ich möchte vielleicht sogar fertig kaufen kann.
Viele Grüße
Markus
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
-
- Beiträge: 94
- Registriert: Do Mai 26, 2016 8:59 pm
Re: Klopfregelung mit Arduino?
Ich weiß nicht was für einen ADC die MS2 für Knock verwendet, die "normalen" ADC lassen sich aber sehr wohl auch mit dem vorgefertigten AnalogOut (aka PWM+Kondensator) mit einem "Analog"signal füttern.
Re: Klopfregelung mit Arduino?
Die Variante mit Widerstand und Kondensator hatte ich noch nicht probiert, das stimmt. Was mir aber aufgefallen war ist, dass die AnalogOut Ausgangsspannung leider sehr stark vom Delay abhängt mit welcher der Loop durchläuft. Je weniger Delay desto niedriger wird die Spannung bei identischer PWM. Den Loop mit ner halben Sekunde Delay laufen zu lassen damit ich bei voller PWM die 5 Volt erreiche macht im Rahmen der Klopferkennung / Klopfregelung natürlich nicht viel Sinn. Ausser es gibt eine andere Variante die ich als Noob noch nicht kenneDennis_Zx7r hat geschrieben:Ich weiß nicht was für einen ADC die MS2 für Knock verwendet, die "normalen" ADC lassen sich aber sehr wohl auch mit dem vorgefertigten AnalogOut (aka PWM+Kondensator) mit einem "Analog"signal füttern.

Viele Grüße
Markus
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
Re: Klopfregelung mit Arduino?
Hallo,
nur so als info im loop soll es gar kein delay geben. Das ist nicht sehr sauber. Versuche es über differenzbildung mittels millis().
Wie Dennis schrieb brauchst einen Lob Bass filter für den PWM Ausgang.
Ein Wald und Wiesen RC ist 3.9KOhm Widerstand mit 0.1µF Kondensator.
Gruß
nur so als info im loop soll es gar kein delay geben. Das ist nicht sehr sauber. Versuche es über differenzbildung mittels millis().
Wie Dennis schrieb brauchst einen Lob Bass filter für den PWM Ausgang.
Ein Wald und Wiesen RC ist 3.9KOhm Widerstand mit 0.1µF Kondensator.
Gruß
Wer aufhört besser zu werden hat aufgehört gut zu sein
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Re: Klopfregelung mit Arduino?
Genau solche Infos brauche ich, vielen Dank!Alfagta hat geschrieben:
nur so als info im loop soll es gar kein delay geben. Das ist nicht sehr sauber. Versuche es über differenzbildung mittels millis().
Wie Dennis schrieb brauchst einen Lob Bass filter für den PWM Ausgang.
Ein Wald und Wiesen RC ist 3.9KOhm Widerstand mit 0.1µF Kondensator.
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
Re: Klopfregelung mit Arduino?
Ich hatte meine Pläne jetzt auch mal in der Arduino Community dargestellt und dort waren sich die Leute schnell einig dass für das was ich vor habe ein normales Arduino R3 nicht ausreichen wird. Nach viel Input habe ich mir jetzt ein Teensy 3.2 und dazu gleich ein Teensy Audio Board bestellt. Das Bord hat einen Klinkenanschluss, d.h. man könnte dann auch gleich live das FFT gefiltere Signal mithören. Es gibt einige interessante Libraries wie z.B. Spectrum Analyzer und besagte FFT Filter und ich hoffe das mir dass das "coden" erleichtern wird.
Viele Grüße
Markus
Viele Grüße
Markus
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
Re: Klopfregelung mit Arduino?
Aufgrund welcher Parameter seit ihr drauf gekommen das der Atmega mit 16Mhz das nicht verarbeiten kann?
Gruß
Gruß
Wer aufhört besser zu werden hat aufgehört gut zu sein
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Re: Klopfregelung mit Arduino?
Hallo Alfa,Alfagta hat geschrieben:Aufgrund welcher Parameter seit ihr drauf gekommen das der Atmega mit 16Mhz das nicht verarbeiten kann?
es geht da wohl weniger um die Rechenleistung als um die einfache Tatsache dass das R3 keine I2S Schnittstelle hat.
Viele Grüße
Markus
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
-
- Beiträge: 83
- Registriert: Do Okt 08, 2015 11:11 pm
Re: Klopfregelung mit Arduino?
Die feinste Variante wäre wohl mit nem TPIC 8101
Den mittels Arduino oder ähnlichem auslesen
Den mittels Arduino oder ähnlichem auslesen
Re: Klopfregelung mit Arduino?
Du willst also den sensor direkt auswerten ohne jegliche Hardware die dafür gebaut wurde. Sprich den IC den Monkey anspricht.squenz hat geschrieben:Hallo Alfa,Alfagta hat geschrieben:Aufgrund welcher Parameter seit ihr drauf gekommen das der Atmega mit 16Mhz das nicht verarbeiten kann?
es geht da wohl weniger um die Rechenleistung als oum die einfache Tatsache dass das R3 keine I2S Schnittstelle hat.
Viele Grüße
Markus
Halte uns am laufenden.
Gruß
Wer aufhört besser zu werden hat aufgehört gut zu sein
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Alfa 156 GTA
Alfa 75 Race Car MS III
Alfa 164 V6 Turbo
Test MS II
Tunerstudio V3.0.60.61 Registered
MLog View V4.3.30 Registered
MLog View HD V4.3.30 Registered
Re: Klopfregelung mit Arduino?
Von dem TPIC 8101 hab ich zuvor leider noch nicht gehört. So wie ich das sehe bräuchte ich dann zusätzlich nochmal eine Experimentierplatine auf die ich den TPIC dann löten müsste. Auch SMD Bauteile löten ist für mich Neuland.Alfagta hat geschrieben: Du willst also den sensor direkt auswerten ohne jegliche Hardware die dafür gebaut wurde. Sprich den IC den Monkey anspricht.
Halte uns am laufenden.
Ich werde jetzt einfach mal etwas experimentieren mit den Bauteilen die kommen und den Sensor erst mal ohne dem TPIC auswerten. Ich hab ja bereits ein Phormula Knock KS4 im Einsatz das akutell den Job übernimmt, für ne Festinstallation hätte ich eben gerne was kleines und günstigeres

Viele Grüße
Markus
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
Re: Klopfregelung mit Arduino?
Von Bosch gibt es auch noch eine Chips... CC 151 usw. usf. 

Fiat Uno Racing, K16, UMC1, Gslender 3.2.1, LC-1, 355cc, Bluetooth
Re: Klopfregelung mit Arduino?
Hast du dafür Dokumentationen vorliegen?Acki hat geschrieben:Von Bosch gibt es auch noch eine Chips... CC 151 usw. usf.
Re: Klopfregelung mit Arduino?
Hier mal ein kurzes Video zum aktuellen Stand. Evtl. gehts also auch ohne dem TI oder Bosch Chip.
https://www.youtube.com/watch?v=iUw2kGNUIAs
https://www.youtube.com/watch?v=iUw2kGNUIAs
Toyota Starlet Daily - Microsquirt V3 mit MS2-Extra V3.4.2
Mazda RX-7 Turbo - Microtech LT-8s
Mazda RX-7 Turbo - Microtech LT-8s
Re: Klopfregelung mit Arduino?
Nur für den CC 195. Findet man über Google auch.tooly hat geschrieben:Hast du dafür Dokumentationen vorliegen?Acki hat geschrieben:Von Bosch gibt es auch noch eine Chips... CC 151 usw. usf.
Fiat Uno Racing, K16, UMC1, Gslender 3.2.1, LC-1, 355cc, Bluetooth