Forum: Mikrocontroller und Digitale Elektronik Suche Hilfe: (Fast) PWM für Frequenzen 20-40kHz


von Michael B. (planlessmichi)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

seit 3 Tagen sitze ich jetzt vor diesem - vermutlich lächerlichem - 
Projekt, aber ich komme nicht weiter. Inzwischen habe ich auch den Stand 
erreicht, wo ich etwas lese und 5 Minuten habe ich es schon wieder 
vergessen (Stack overflow :-)).
Ich will eigentlich "nur" eine Frequenz im Bereich von ca. 20kHz bis 
40kHz erzeugen und dann auf einem Piezo ausgeben (siehe Schaltplan).
Zuerst dachte ich mir, dass ich mit einer sehr hohen PWM und 
verschiedenen Duty-Cycles eine sinusähnliche Spannung erzeugen kann, 
damit die Rechteckflanken keine höhrbaren Oberwellen produzieren. Aber 
das scheint nicht zu gehen. Ich setze einen Tiny2313 ein, der bis 10MHz 
takten kann; da dachte ich mir: 500kHz PWM sollten doch locker machbar 
sein; dann habe ich zwar nur 20 Stufen, aber immerhin noch viel besser 
als eine; kleiner Kondensator zum Glätten und schon sollte das 
funktionieren...

Tja, und dann kam die Ernüchterung --> Vertiefen der theroetischen 
Materie... (kurzer Hinweis: Habe auf einem MC noch nie mit PWM 
gearbeitet) und was sehe ich da: EXTREM kompliziert. Geht ja schon damit 
los, dass es 16!! verschiedene PWM-Arten gibt.

So, wie ich das bisher verstanden habe, gibt es entweder die 
Möglichkeit, das Teil mit 8, 9 oder 10 Bits zu betreiben, wobei die 
Betriebsart dann aber immer so ist, dass der Zähler IMMER von 0 bis 2^x 
(x = 8, 9 oder 10) zählt und dann wieder runter auf 0. Somit habe ich 
aber im "schnellsten" Fall nur noch (10MHz / 255{8Bit)) / 2{hoch/runter) 
Perioden pro Sekunde; also knapp 19kHz; das es damit nicht möglich ist, 
einen Sinus von 40kHz zu bekommen ist jetzt auch mir klar.
Dann habe ich gesehen, dass man in diesem Fast-Mode diese TOP-Grenze 
einstellen kann (Modes 8 bis 15), davon die Schaltschwelle aber nur bei 
den 4 Modes 10, 11 und 14,15 einstellen kann. Dann heisst es aber , dass 
ich hier nur noch 4 Bit Auflösung habe... Das finde ich jetzt wieder 
etwas wenig...

Kurz: Ich verzweifle gerade und will die ganze Schaltung schon fast 
wieder zu den Akten legen... Aber einen Versuch (hier) will ich dann 
doch noch riskieren.

Wie macht man sowas am Besten? Die Schaltung oben ist inzwischen 
PWM-frei, weil ich's nicht umsetzen kann. Evtl. noch einen Widerstand 
zwischen BE und dann die Transistor nicht mehr als Schalter, sondern im 
linearen Bereich betreiben (dann aber eben mit PWM für passenden 
Basis-Ansteuerung; muss dann noch ein RC-Glied als Tiefpass in die 
Basisleitung); oder wie aktuell gezeichnet doch wieder mit Rechteck; 
aber selbst da komme ich nicht auf 40 KHz... Darf man eigentlich den 
TOP-Wert im Betrieb ändern? So wäre evtl. wenigstens das schlimme 
Rechteck mit 20-40kHz machbar...

Hat hier jemand eine Idee, wie ich das möglichst ohne hörbaren Ton 
umsetzen kann?

Vielen Dank und viele Grüße,
Michael

von spess53 (Gast)


Lesenswert?

Hi

>Ich will eigentlich "nur" eine Frequenz im Bereich von ca. 20kHz bis
>40kHz erzeugen und dann auf einem Piezo ausgeben (siehe Schaltplan).

>damit die Rechteckflanken keine höhrbaren Oberwellen produzieren.

Was soll über 20kHz hörbar sein?

Wenn du nur Rechteck erzeugen willst ist CTC dein Freund.

MfG Spess

von Michael B. (planlessmichi)


Lesenswert?

spess53 schrieb:
> Was soll über 20kHz hörbar sein?

Naja, wenn alles nach "Plan" läuft: Nichts; die Realität mit einfachem 
Rechteck sieht aber anders aus. Ich will jetzt auch gar nicht vom 
eigentlichen Thema abkommen, da gibt es hier schon hunderte Threads die 
bei diesem Thema ganz schnell die eigentliche Frage übersehen und in 
eine andere Richtung gehen. Nur kurz: Ich habe hier ein gekauftes Gerät, 
dass - sobald es am Strom hängt - Frequenzen von 18 - 34 kHz erzeugt 
(gemessen mit Oszi). Hier wird einfach nur ein Piezo mit Rechteck 
angesteuert. Sobald das Teil läuft, höre ich das aber trotzdem.
Aus diesem Grund bekam das Teil jetzt eine Lichtschranke, dass es nur 
dann angeht, wenn es nötig ist, und außerdem will ich es im Idealfall 
auch komplett "Oberwellenfrei" haben. Ich glaube nämlich nicht, dass ich 
diese "geplanten" Frequenzen höre, aber dennoch höre ich eindeutig ein 
helles Pfeifen, wenn das Teil an ist. Das will ich nicht und ich denke, 
meinen Nachbarn würde das auch nicht gefallen.

PWM wollte ich halt deswegen, weil ich eigentlich einen (relativ) 
schönen Sinus produzieren wollte... Und bei einem Teil, dass mit 
mehreren MHz arbeitet, hatte ich etwas blauäugig angenommen, dass 
"lächerliche" 40kHz ein Kinderspiel sind.

Bei diesem CTC... Kann ich da auch einfach die Frequenz ändern und wie 
schnell ist sowas machbar? Das Verhältnis High/Low sollte dann hier wohl 
immer 1:1 sein...

von Jens (Gast)


Lesenswert?

Michael B. schrieb:
> da gibt es hier schon hunderte Threads die
> bei diesem Thema ganz schnell die eigentliche Frage übersehen und in
> eine andere Richtung gehen.

Und das ist auch richtig, denn diese Geräte gehören verboten. Würde mein 
Nachbar auf die Idee kommen sowas in seinem Garten aufzubauen, würde ich 
mit allen rechtlichen Mitteln dagegen vorgehen.

von Geht's schon los :-) (Gast)


Lesenswert?

@Michael: Es geht schon los :-)
Aber tröste Dich: Solche Leute wie Jens... Ohne Worte :-)

@Jens:
Was ist Dir lieber: Eine tote Katze (ich vermute mal, es geht um diese 
Tiere) oder eine, die nicht das Grundstück des Nachbarn betritt? Der 
Threadersteller hat das Teil doch sogar mit einer Lichtschranke versehen 
und will auch für Menschen unhörbar bleiben (deswegen wohl überhaupt der 
ganze Aufwand). Geh lieber mal einen Schritt zur Seite: Ich glaube, Du 
hast schon einen Sonnenstich ;-)

@Michael:
Schau Dir das mal an:
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Uhr#Der_CTC-Modus_des_Timers

von Michael B. (planlessmichi)


Lesenswert?

Geht's schon los :-) schrieb:
> Schau Dir das mal an:

Danke, mache ich. Und ich wäre wirklich froh, wenn man sich wenigstens 
1x auf das eigentliche Thema konzentrieren könnte. Keiner weiß, wofür 
ich das benötige und welchen Zweck es hat trotzdem wird wieder wild 
spekuliert.

von Rolf Magnus (Gast)


Lesenswert?

Michael B. schrieb:

> So, wie ich das bisher verstanden habe, gibt es entweder die
> Möglichkeit, das Teil mit 8, 9 oder 10 Bits zu betreiben, wobei die
> Betriebsart dann aber immer so ist, dass der Zähler IMMER von 0 bis 2^x
> (x = 8, 9 oder 10) zählt und dann wieder runter auf 0.

Wenn er wieder runter zählt, ist es keine fast-PWM.

> Wie macht man sowas am Besten?

Man kann z.B. einen AVR mit PLL nehmen, die Timertakte bis 64 Mhz 
erzeugen kann und damit entsprechend schnelle PWM ermöglicht.

Michael B. schrieb:
> Aus diesem Grund bekam das Teil jetzt eine Lichtschranke, dass es nur
> dann angeht, wenn es nötig ist, und außerdem will ich es im Idealfall
> auch komplett "Oberwellenfrei" haben. Ich glaube nämlich nicht, dass ich
> diese "geplanten" Frequenzen höre,

20 kHz kann nicht jeder hören, aber manche schon.

> aber dennoch höre ich eindeutig ein helles Pfeifen, wenn das Teil an
> ist.

Du glaubst, daß du die 20 kHz nicht hörst, aber gleichzeitig 60 kHz mit 
weniger Pegel wahrnehmen kannst?
Oberwellen liegen - wie ja der Name schon andeutet - auf höhere 
Frequenzen (beim Rechteck ist die stärkste Oberwelle beim Dreifachen der 
Grundfrequenz). Deshalb würde ich mir von dieser Maßnahme keine 
erkennbare Besserung erhoffen.

Michael B. schrieb:
> Danke, mache ich. Und ich wäre wirklich froh, wenn man sich wenigstens
> 1x auf das eigentliche Thema konzentrieren könnte. Keiner weiß, wofür
> ich das benötige und welchen Zweck es hat trotzdem wird wieder wild
> spekuliert.

Tja, damit wirst du leben müssen, wenn du's nicht verrätst.

von Michael B. (planlessmichi)


Lesenswert?

Nun, ich bin jetzt kein Profi in Sachen Akkustik; ich habe jetzt einfach 
Oberwellen dazu gesagt, weil ich den Begriff irgendwie mit 
Rechtecksignalen in Verbindung gebracht habe und halt nicht glaube, dass 
ich 20kHz noch höre. Wenn es jetzt Oberwellen nur "oberhalb" der 
Grundfrequenz gibt (wodurch der Name ja dann auch richtig logisch wäre 
:-)), dann war das wohl der falsche Begriff. Sorry.
Hm... O.k., dass ich durch diesen ganzen Aufwand dann keine Verbesserung 
zu erwarten habe, ist jetzt schon etwas ernüchternd :-( Da hatte ich mir 
mehr Erfolg von versprochen.
Und wegen des Verratens: Wie gesagt, ich sitze seit mehreren Tagen an 
dem Thema und habe unzählige Threads in diversen Foren gelesen und da 
wurde wirklich immer sehr schnell das Thema gewechselt und so schwirren 
hunderte offene Fragen zum gleichen Thema rum (und leider keine einzige 
Antwort).
Ich möchte halt keine philosophischen Dinge besprechen, sondern suche 
nur nach einer technischen Lösung. Allerdings bei diesem 
Frequenzspektrum kann sich ja jeder denken, um was es geht. Nur möchte 
ich mich nicht rechtfertigen müssen, warum ich meinen eigenen Garten 
sauber halten möchte. Allein die bisherigen Überlegungen sollten einem 
schon verdeutlichen, dass ich wirklich niemanden stören möchte (weder 
Tier, noch Mensch). Sogesehen ist es sogar gut, dass ich die 
Originalschaltung gehört habe, weil das ja vermuten lässt, dass ich mehr 
höre als der Durchschnitt und wenn dann "meine" Schaltung "geräuschlos" 
funktioniert, dann sollte es niemanden stören. Ich erhoffe mir halt 
einfach eine Abschreckung, wenn - durch die Lichtschranke ausgelöst - 
dann plötzlich ein Pfeifen losgeht und das "Objekt" es mit seiner 
Anwensenheit in Verbindung bringt und fortan wegbleibt....

von Karl H. (kbuchegg)


Lesenswert?

Michael B. schrieb:

> Originalschaltung gehört habe, weil das ja vermuten lässt, dass ich mehr
> höre als der Durchschnitt

Glaub ich nicht.
18kHz könntest du noch hören, aber 34kHz sind weit ausserhalb unseres 
Hörbereichs.
Ich denke eher, dass da der Schallgeber nicht mehr mitmacht

von Michael B. (planlessmichi)


Lesenswert?

Gut, 34kHz glaube ich jetzt auch nicht. Das Teil wobbelt/sweept/... (wie 
sagt man dazu eigentlich wirklich?) einfach von 18-34kHz durch; davon 
höre ich aber nicht die ganze Zeit was. Ein Durchgang dauert so ca. vier 
Sekunden und ungefähr eine Sekunde davon höre ich es pfeifen.

Als Schallgeber ist eine ca.23mm (Durchmesser) große Piezoscheibe 
verbaut. Sind solche Frequenzen damit nicht erreichbar?

von Jens (Gast)


Lesenswert?

Geht's schon los :-) schrieb:
> Was ist Dir lieber: Eine tote Katze (ich vermute mal, es geht um diese
> Tiere) oder eine, die nicht das Grundstück des Nachbarn betritt?

Es geht hier gar nicht um Katzen sondern um Menschen. Die bekommen 
nämlich davon tierische Kopfschmerzen. Solche Ultraschallteile werden 
nämlich häufig mit Lautstärken von >100db betrieben, was ungefähr der 
Lautstärke eines Düsenflugzeuges entspricht. Nur sind die Betreiber 
dieser Teile leider fast imme der Meinung: Unhörbar = ohne 
physiologische Wirkung auf Menschen. Insbesondere bei Kindern, deren 
Gehör empfindlicher als bei Erwachsenen ist, kann so eine "Beschallung" 
zu ernsten Schäden führen. Aber auch bei Erwachsenen führt sowas zu 
Kofschmerzen und Übelkeit oder noch schlimmerem. Wenn der TS also keine 
Katzen mag, dann soll er sich was anderes ausdenken als die Nachbarn zu 
foltern.

von Michael B. (planlessmichi)


Lesenswert?

Nun, ich habe wirklich nichts gegen Katzen; nur sollen sie nicht meinen 
Garten ruinieren (und das Wort passt! Gras wird weiß/gelb; es stinkt und 
überall liegen diese Haufen rum). Schau mal, als Mensch bekommst Du 
dicke Strafzettel wenn Du z.B. im Wald urinierst und eine Katze darf 
frei überall hinmachen. Aber ich wäre wirklich froh, wenn dieser Thread 
nicht wieder in diese Richtung geht. Diese Diskussionen haben noch NIE 
zu einem Ergebnis geführt.
Jens, wenn Du mir eine andere Alternative sagen kannst, dann nur zu. Ich 
bin mit Sicherheit der letzte Mensch, der etwas gegen gute Ratschläge 
hat.
Was glaubst Du, warum ich wirklich diesen ganzen Aufwand betreibe? Die 
Lichtschranke ist neu hinzugekommen und die steilen Flanken möchte ich 
auch möglichst vermeiden.
Dadurch sollte in der Anfangszeit ein "sauberer" Sinus von vielleicht 
mal 10 - 20 Sekunden pro WOCHE möglich sein (denke an 1s Betrieb nach 
Auslösung). Das hält jeder Mensch aus. Und wenn ich nach z.B. einem 
Monat sehe, dass sich nichts ändert - es also keine Wirkung hat - dann 
kommt das Teil eh weg.

von Karl H. (kbuchegg)


Lesenswert?

Michael B. schrieb:
> Gut, 34kHz glaube ich jetzt auch nicht. Das Teil wobbelt/sweept/... (wie
> sagt man dazu eigentlich wirklich?) einfach von 18-34kHz durch; davon
> höre ich aber nicht die ganze Zeit was. Ein Durchgang dauert so ca. vier
> Sekunden und ungefähr eine Sekunde davon höre ich es pfeifen.

OK.
Und wie soll da ein Sinus jetzt etwas ändern?
19kHz sind 19kHz. Egal ob Sinus oder Rechteck. Der Sinus klingt nur ein 
wenig anders.

von Michael R. (mexman) Benutzerseite


Lesenswert?

Michael B. schrieb:
> Nun, ich habe wirklich nichts gegen Katzen;

Hallo Michael,

hier ein paar technische + ein paar O.T. Gedanken:

Zetztere zuerst:
Ich bin selber Katzenbesitzer und wollte vermeiden, dass meine Katzen 
ein Kakteenbeet im Wohnzimmer, gefuellt mit kleinen Steinchen - fast 
identisch mit dem Katzenklo ;-) - dieses als solches benutzen.
Experimentierte mit vielen Frequenzen und ebenfalls 
anwesenheitskontrolliert.

1. Wenn man die Piezo-Lautsprecher mit einigermassen Amplitude 
beschickt, zeigen diese irgendwelche Anschlagseffekte, die scheinbar 
subharmonich sind. D.h., was Du hoerst sind nicht die 18...34 kHz 
sondern 9..17kHz. Und das wird - wie schon erwaehnt wurde - nicht 
besser, wenn Du sinussteuerst.
Du kannst das dadurch ueberpruefen, dass Du einen zweiten Piezo als 
Mikrophon davorhaeltst und oszillografierst! Meine Elektretmikros gehen 
auch so weit und zeigen die Subharmonischen ganz gut.

2. Hast Du mit dem kaeuflichen Geraet irgendeinen abschreckenden Effekt 
erzielen koennen?
Vielleicht sind meine Katzen ja taub ;-)
Aber im Ernst: Einzigen abschreckenden Effekt konnte ich mit einem 
Hochtonlautsprecher erreichen, der mit einem hochgepassten Rauschsignal 
betrieben wurde, das in etwa einem Katzenfauchen aehnlich hoert.
Aber das ist dann auch fuer Mensch recht laut hoerbar (das war gut...so 
konnte ich nachts im Bett hoeren, wenn sich die Katzen verbotenerweise 
im Beet zu schaffen machten...)


Technisch ist natuerlich die Erzeugung einer frequenzveraenderlichen 
Recheckschwingung in diesem Frequenzbereich problemlos, aber Sinus.....
Das wuerde ich eher so angehen, einen Rechteck zu erzeugen und ein 
bischen RC tiefzupassen.
Wenn das am hoeheren Frequenzbereich zu sehr daempft, kannst Du ja ab 
25kHz den Tiefpass ueber einen Portpin wegschalten

Gruss

Michael


PS.: Ich bin da viel brutaler rangegangen....nicht mit 9V einpolig, 
sondern 18V im Gegentakt!

von Michael B. (planlessmichi)


Lesenswert?

@Michael Roek-ramirez:
Vielen Dank für die Zeilen :-) Das sind doch mal echte Infos und 
sachliche Aussagen. Bei dem Thema eine echte Seltenheit :-)

Das mit dem zweiten Piezo werde ich heute Abend mal ausprobieren. Danke 
für den Tipp. Allerdings habe ich nur noch 50mm-Scheiben... Ich hoffe, 
die sind dann nicht zu träge (im Vergleich zum 23mm-Erregerpiezo) und 
die Messungen sind aussagekräftig.

Mit dem gekauften Gerät hatte ich nur einen abschreckenden Effekt: 
Nämlich auf mich selbst. Ich hatte das Teil eingeschaltet und wirklich 
innerhalb von Sekunden ging es mir dann gar nicht mehr gut (Schwindel 
etc.). Ich habe es dann wieder ausgemacht und trotzdem hielt mein 
Zustand noch mehrere Stunden an. Katzen sind in den paar Sekunden 
natürlich nicht vor dem Teil rumgelaufen.

Dein Hochtonlautsprecher... War das ein besonderes Teil (teuer?) oder 
ein "normaler" Hochtöner?
Und dieses Rauschsignal... Wie hast Du das generiert? Digital abgespielt 
oder wie sah die Schaltung bei Dir aus (auch diese 
Anwesenheitskontrolle)?

Nochmals vielen Dank für die Tipps bisher :-) Bei der Spannnung bin ich 
halt etwas auf das Netzteil von der original Elektronik angewiesen...

Viele Grüße,
Michael

von Michael R. (mexman) Benutzerseite


Lesenswert?

Uebrigens: Es gibt auch irgendwelche Mittelchen und Sprays, die ein 
"Befall" durch Katzen vermeiden soll.
Die hatten bei mir ebenfalls keinerlei sinnfuehrende Wirkung!
Mein Katzen sind scheinbar resistent gegen alles...


Gruss

Michael

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
Noch kein Account? Hier anmelden.