Hi, ich habe ein kleines Problem und zwar versuche ich das Signal einer Ultraschallkapsel (Vss ca. 0,4V, die Frequenz liegt bei 39.06kHz und die Impedanz bei 39kHz bei etwa 10k) mit dem Analog Comparator des Atmega88 auf zero-crossings hin zu analysieren (Phasenverschiebung). Auf AIN0 habe ich eine Referenzspannung von 2,5V angelegt und mit dem negativen Pol der US-Kapsel verbunden. Das andere Ende der Kapsel hängt auf AIN1. Problem: Messe ich die Spannung über AIN0/AIN1 mit meinem Oszi, kann ich einen Gleichspannungsanteil von ca. 0,25V auf meinem Signal feststellen, was bedeutet dass die Spannung nie 0 wird und so der Comparator nie auslöst. Diese Gleichspannung scheint immer da zu sein, ohne die Kapsel (mit 'nackten' AINs) ist sie auch vorhanden. Ich habe den Code angehängt; sorry das ist ein Experiment daher ist der code nicht schön. Meine Frage ist jetzt: Habe ich im Datenblatt irgendwas übersehen - diese Spannung ist also 'normal' und ich bin einfach nur zu doof) oder stimmt sonst was nicht? (übrigens löst der Comparator-Interrupt ohne weiteres aus, wenn man nen Kurzschluss baut, so isses ned) Für 'hints' wäre ich echt dankbar ;)
Tobias Schlegel schrieb: > Meine Frage ist jetzt: Habe ich im Datenblatt irgendwas übersehen Schwer zu sagen, da niemand ausser dir weiss, welcher Ultraschallsensor das ist, und folglich nicht ins Datasheet reinsehen kann.
Wenn der Sensor Piezo-Charakteristik hat, dann ist er bzgl. Gleichstrom stromfrei, folglich fehlt AIN1 die Nullspannung und der Leckstrom bestimmt das gemessene Potential. Da könnte ein (wohl eher hochohmiger) Widerstand zwischen AINx helfen.
Whoops sorry die US-Kapseln hab ich vergessen; das ist in dem Fall ein Piezo-Wandler mit dem Aufdruck "400SR" - Reichelt Bestellnummer UST-40R (Receiver). Es handelt sich dabei tatsächlich um einen Piezo-Typ. Das mit dem Widerstand habe ich bereits erfolglos versucht, allerdings werde ich das morgen bei klarem Geist nochmal probieren; möglich dass andere Probleme einen Erfolg verhindert haben (hatte u.a. massive Probleme mit (HF-)Einstrahlung vom Sender und Kontaktprobleme) - Danke für den Tipp und die schnelle Hilfe!!
Ohne diesen (Last-)Widerstand wird das nix, und dessen Grössenordnung findet sich im Datasheet.
@hacky negativ, es ist keine Verstärkerschaltung vorhanden. Das ist auch ganz bewusst so gewählt. Mir ist schon klar, dass ein niederohmigerer (Verstärker-)Ausgang diese Probleme einfach wegbügeln würde aber in dem Fall wäre ein Verstärker etwas unpraktisch, da ich gedenke diesen (eigentlich zum Empfangen gedachten) Wandler auch zum Senden zu benutzen... @prx wunderherrlich! - ich versuchs mal - danke!
Nur ein Widerstand parallel zum Piezowandler könnte zu wenig wein, da damit zwar ein Driften der Differenz-, nicht aber der Gleichtaktspannung verhindert wird. In der linken Schaltung wird zusätzlich mit einem Spannungteiler die Gleichtaktspannung auf etwa die halbe Versorgungsspannung gelegt, so dass garantiert ist, dass der zulässige Eingangsspannungsbereich des Komparators auch unter ungünstigen Bedingungen nicht verlassen wird. Wenn die Signalamplitude kleiner als die Offsetspannung des Komparators (bis zu 40mV) ist, wirst du aber dennoch nichts detektieren können. Die Schaltung rechts enthält ein Trimmpoti, mit dem der Offset kompensiert werden kann. Evtl. musst du mit den Widerstandswerten noch etwas experi- mentieren. Wahrscheinlich kannst aber mit der einfachen Schaltung ohne Verstärker und Filter ohnehin nur starke Schallsignale zuverlässig detektieren, so die Offsetkompensation vielleicht überflüssig ist.
Hi yalu, meine Schaltung ist (momentan) genau die linke. Allerdings habe ich die Referenzspannung noch mit je 1µF Elkos und 100n Kerkos parallel zu den (10k) Teilerwiderständen entkoppelt. Dadurch habe jetzt ich einen Gleichspannunganteil von ca 2,5V. Der Parallel-Widerstand ist jetzt mit 39k dimensioniert. Funzt super. Wie gesagt die Amplitude liegt bei etwa 400mV VSS, also genug für den Comparator. Ich übertrage das Signal ja auch nur ca. 20cm über eine Messstrecke, das Signal ist am Empfänger also auch entsprechend stark. Das Setup funktioniert so recht gut, auch mit dem Input Capture. Jetzt wirds halt noch mit den Timings haarig... Die rechte Schaltung ist ne gute Idee. Das Problem ist dass die Referenzspannung gleichzeitig eine virtuelle Masse für den Sender darstellt (daher werde ich den Gleichspannungsanteil noch auf ca. 0,5V senken). Danke für eure echt super Hilfe!!
Tobias Schlegel schrieb: > Die rechte Schaltung ist ne gute Idee. Das Problem ist dass die > Referenzspannung gleichzeitig eine virtuelle Masse für den Sender > darstellt (daher werde ich den Gleichspannungsanteil noch auf ca. 0,5V > senken). Und ihn unsymmetrisch anfahren? Keine Ahnung ob der entstehende Gleichspannungsanteil gesund ist. Aber wenn es die um die Amplitude geht, dann geht das besser. Fahr den Transmitter komplementär an, beide Pins gegensinnig, z.B. mit beiden Ausgängen eines Timers.
Also das ist so. Ich plane ein Ultraschallanemometer (http://de.wikipedia.org/wiki/Anemometer) und dazu muss ich die Laufzeit eines US-Signals in 2 Richtungen (vorlaufend und rücklaufend) messen (und das dann nochmal 90° zur ersten Messrichtung versetzt). Dazu bräuchte ich aber immer einen Sender und einen Empfänger. Ich habe aber festgestellt, dass man mit den Receiver-Typen dieser Kapseln fast genauso gut "senden" kann wie mit den Transmitter-Typen. Also versuche ich gerade die Empfängerkapseln für beides zu verwenden und mir nebenher noch eine Rx/Tx Umschaltung zu ersparen... Im Moment siehts vielversprechend aus. Daher kann ich die "Sender" nur asymmetrisch anfahren da ich sonst eine analog-taugliche Rx/Tx Umschaltung bräuchte und zwar mit 4 Kanälen. Und das ist dann wenn ich sehe wie viele Überschwinger ich schon von den paar mm zwischen AVR-Pin und der Abschirmung des Koax habe der reinste Horror...
Tobias Schlegel schrieb: > Daher kann ich die "Sender" nur asymmetrisch anfahren da ich sonst eine > analog-taugliche Rx/Tx Umschaltung bräuchte und zwar mit 4 Kanälen. Kann ich nicht recht nachvollziehen. Wenn du den gleichen Sensor für beide Richtungen verwenden willst, dann kannst das doch völlig ohne Umschaltung tun. Im Idealfall nimmt man für den Transmitter ein OCxA/B Paar, das man direkt parallel zum AINx Paar anschliesst und im Empfangsfall auf Eingang konfiguriert und damit passiviert. Wenn man das Transmitter-Timing zu Fuss statt mit dem Timer macht, dann geht das auch mit den AINx-Pins selbst, auf Ausgang konfiguriert und komplementär angesteuert.
Liegt das Problem daran, dass du am gleichen Controller mehrere Receiver/Transmitter benötigst? Comparator gibt's doch nur einen, wie ist das gedacht?
PS: Ich seh grad, dass beim Mega88 AIN0 und OC0A sowieso schon auf den gleichen Pins liegen. Gibt einen Timer-basierenden Rx/Tx-Wandler mit 3 Pins und 10Vss Amplitude.
Richtig, das Problem ist dass ich 4 Wandler ansteuern muss. Und zwar muss immer einer senden und ein anderer empfangen. Ich gedachte dafür den MUX des ADC zu verwenden den man praktischerweise auf den AIN1 aufschalten kann. Senden erfolgt dann indem der Pin auf Ausgang geschaltet wird und per Soft-PWM ein 39kHz-Signal moduliert wird. - Also so ist das mal gedacht, getestet ist das noch nicht. Die "Masse" der Wandler geht auf die virtuelle Masse (+0,5V absolut). Und dann (mit 39k parallel) auf einen der 8 ADn-Eingänge. Dann kann ich da nach belieben umschalten. Sendeseitig liegt dann maximal +4,5V und minimal -0,5V an, was eine Vss von 5V gibt. Dirty ich weiß ;)
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.