Zwei 45kHz-Signale, 90° Phasenverschoben erzeugen

OP #5834870
Lesenswert?

Hallo,

Zur testweisen Ansteuerung verschiedener Piezo-Motoren benötige ich zwei 
90° phasenverschobene Signale. Um verschiedene Anregungen zu testen wäre 
es gut, sowohl die Phase als auch die Frequenz ändern zu können (Phase 
-90° - +90°; Frequenz um 45kHz, mindestens bis 55kHz, wenn es klappt 
auch gerne mehr).
Hatten zuerst einen Si5351 ausprobiert, leider sind die 45kHz viel zu 
langsam und die 90° Phasenverschiebung schafft er nicht.
Nachträglich noch mit Schaltungen herumhantieren wollten wir aus Gründen 
der Komplexität erstmal sparen - es muss doch auch irgendwie so klappen, 
mit so wenig Bauteilen wie möglich.

Gefunden hatte ich den AD9106 welcher das vermutlich löst, aber auch 
teuer ist und wahrscheinlich etwas "overkill"

https://www.analog.com/en/products/ad9106.html

Die momentan erstrebenswerteste Lösung scheinen zwei AD9837 zu sein

https://www.analog.com/en/products/ad9837.html

Laut diesem Forumsbeitrag scheint es für Sinüsse zu klappen und bei 
gewählter Mainclock sogar für andere Anregungsformen

https://ez.analog.com/dds/f/q-a/29541/dual-ad9837-and-phase-shifting


Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?

Viele Grüße
#5834884
Lesenswert?

Christoph S. schrieb:

> Zur testweisen Ansteuerung verschiedener Piezo-Motoren benötige ich zwei
> 90° phasenverschobene Signale.

Welche Art von Signalen? Sinus oder Rechteck?

Dieser Ansatz scheitert gern. Wenn gleich sicher immer eine pragmatische 
Lösung anstreben sollte, sind "mach mal schnell ohne 
Aufwand"-Sparlösungen oft eher schlecht.

> Gefunden hatte ich den AD9106 welcher das vermutlich löst, aber auch
> teuer ist und wahrscheinlich etwas "overkill"
>
> https://www.analog.com/en/products/ad9106.html

Stimmt, aber das ist der richtige Ansatz. Nämlich volldigital per DDS.

> Die momentan erstrebenswerteste Lösung scheinen zwei AD9837 zu sein
>
> https://www.analog.com/en/products/ad9837.html

Klappt nicht, denn die ICs können nicht synchronisiert werden.

> Laut diesem Forumsbeitrag scheint es für Sinüsse zu klappen und bei
> gewählter Mainclock sogar für andere Anregungsformen
>
> https://ez.analog.com/dds/f/q-a/29541/dual-ad9837-and-phase-shifting

Stimmt nicht, FSYNC ist nur für das SPI zuständig, nicht aber für den 
Phasenakku im IC.

> Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?

Such dir einen DDS-IC, der entweder 2 sychrone DDS eingebaut hat oder 
extern synchronisierbar ist. Der Rest ist eine triviale Ansteuerung mit 
Arduino & Co.
Gast #5834913
Lesenswert?

Falk B. schrieb:
> Ingo Less schrieb:
>> Christoph S. schrieb:
>>> Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?
>> Was spricht gegen einen Mikrocontroller?
>
> Der Entwicklungsaufwand. Der OP will nicht basteln sondern mit dem Ding
> andere Dinge testen.

Dann eben ein fertiger 2-Kanal Signalgenerator. Sowas gibts schon für 
unter EUR 100,-.
#5834914
Lesenswert?

Falk B. schrieb:
> 
https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-AD9106.html#eb-documentation
>
> $495 Dollar für das fertige Evalboard. Für einen Hobbybastler viel Geld,
> für einen Mitarbeiter in einer Firma oder Institut Peanuts.

Für ein 45-55 kHz Signal? Uff. Sowas schreibt man doch in 10 Minuten auf 
nem AVR oder Labview runter.
#5834923
Lesenswert?

M. K. schrieb:
> Falk B. schrieb:
>>
> 
https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-AD9106.html#eb-documentation
>>
>> $495 Dollar für das fertige Evalboard. Für einen Hobbybastler viel Geld,
>> für einen Mitarbeiter in einer Firma oder Institut Peanuts.
>
> Für ein 45-55 kHz Signal? Uff. Sowas schreibt man doch in 10 Minuten auf
> nem AVR oder Labview runter.

Du bist ein Schwätzer!
#5834924
Lesenswert?

hinz schrieb:
> Falk B. schrieb:
>> Ingo Less schrieb:
>>> Christoph S. schrieb:
>>>> Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?
>>> Was spricht gegen einen Mikrocontroller?
>>
>> Der Entwicklungsaufwand. Der OP will nicht basteln sondern mit dem Ding
>> andere Dinge testen.
>
> Dann eben ein fertiger 2-Kanal Signalgenerator. Sowas gibts schon für
> unter EUR 100,-.

Beispiel?
#5834925
Lesenswert?

Falk B. schrieb:
> M. K. schrieb:
>> Falk B. schrieb:
>>>
>>
> 
https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-AD9106.html#eb-documentation
>>>
>>> $495 Dollar für das fertige Evalboard. Für einen Hobbybastler viel Geld,
>>> für einen Mitarbeiter in einer Firma oder Institut Peanuts.
>>
>> Für ein 45-55 kHz Signal? Uff. Sowas schreibt man doch in 10 Minuten auf
>> nem AVR oder Labview runter.
>
> Du bist ein Schwätzer!

Na das sagt ja der Richtige ;)
Gast #5834926
Lesenswert?

Falk B. schrieb:
> hinz schrieb:
>> Falk B. schrieb:
>>> Ingo Less schrieb:
>>>> Christoph S. schrieb:
>>>>> Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?
>>>> Was spricht gegen einen Mikrocontroller?
>>>
>>> Der Entwicklungsaufwand. Der OP will nicht basteln sondern mit dem Ding
>>> andere Dinge testen.
>>
>> Dann eben ein fertiger 2-Kanal Signalgenerator. Sowas gibts schon für
>> unter EUR 100,-.
>
> Beispiel?

JDS2800, FY6800,...
#5834928
Lesenswert?

Falk B. schrieb:
> hinz schrieb:
>> Falk B. schrieb:
>>> Ingo Less schrieb:
>>>> Christoph S. schrieb:
>>>>> Ich frage, ob jemand weitere (vielleicht einfachere) Lösungen weiß?
>>>> Was spricht gegen einen Mikrocontroller?
>>>
>>> Der Entwicklungsaufwand. Der OP will nicht basteln sondern mit dem Ding
>>> andere Dinge testen.
>>
>> Dann eben ein fertiger 2-Kanal Signalgenerator. Sowas gibts schon für
>> unter EUR 100,-.
>
> Beispiel?

https://www.amazon.de/KKmoon-Generator%E3%80%901Hz-100-Frequenzmesser-Funktionsgeber-Funktionsgenerator/dp/B07593GDB7/ref=asc_df_B07593GDB7/?tag=googshopde-21&linkCode=df0&hvadid=309881833810&hvpos=1o3&hvnetw=g&hvrand=9397459452116812573&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9043980&hvtargid=pla-420895027614&psc=1&th=1&psc=1&tag=&ref=&adgrpid=60671381494&hvpone=&hvptwo=&hvadid=309881833810&hvpos=1o3&hvnetw=g&hvrand=9397459452116812573&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9043980&hvtargid=pla-420895027614

War nicht schwer zu finden gewesen.
#5834933
Lesenswert?

Gast #5834934
Lesenswert?

#5834954
Lesenswert?

Falk B. schrieb:
> Quatschkopf! Wenn hinz eine Behauptung aufstellt, muss ER sie beweisen,
> nicht ich. Er hat es, im Gegensatz zu dir!

Der Quatschkopf bist du. DU hast es mit deiner Frage nach den Beispielen 
angezweifelt, ganz offensichtlich völlig grundlos. hinz muss gar nix 
beweisen. Und welche Behauptung ich beweisen muss ist mir auch noch 
schleierhaft. Du schließt aber anscheinend viel zu oft von dir auf 
andere. Solltest du lassen, steht dir nicht.
#5835001
Lesenswert?

M. K. schrieb:

>> Quatschkopf! Wenn hinz eine Behauptung aufstellt, muss ER sie beweisen,
>> nicht ich. Er hat es, im Gegensatz zu dir!
>
> Der Quatschkopf bist du. DU hast es mit deiner Frage nach den Beispielen
> angezweifelt, ganz offensichtlich völlig grundlos.

Unsinn! Wenn jemand sagt, "es gibt einen 2-Kanal Funktionsgenerator" 
dann sollte er Beispiele nennen. Denn sonst ist es nix weiter als eine 
unbewiesene Behauptung, von denen es hier schon mehr als genug gibt.

> hinz muss gar nix
> beweisen.

Doch.

> Und welche Behauptung ich beweisen muss ist mir auch noch
> schleierhaft.

Schon wieder Alzheimer?

Beitrag "Re: Zwei 45kHz-Signale, 90° Phasenverschoben erzeugen"

"Für ein 45-55 kHz Signal? Uff. Sowas schreibt man doch in 10 Minuten 
auf
nem AVR oder Labview runter."

Na dann mal los, ich bin gespannt wie du Held das machst!

> Du schließt aber anscheinend viel zu oft von dir auf
> andere. Solltest du lassen, steht dir nicht.

Schätzer^3!
#5835006
Lesenswert?

wenn Rechtecksignale ausreichen , kann man mit zwei simple Flipflops die 
Phasen 0°,90° 180° und 270° erzeugen.

Die Eingangsfrequenz muss allerdings dann doppelt so hoch sein.

So hat man auch die I-Q Farbhilfsträger in einen Pal-Fernseher 
zurückgewonnen.

Bei sinusförmigen Signale geht das allerdings nicht mehr.

Ralph Berres
#5835019
Lesenswert?

Falk B. schrieb:
> Na dann mal los, ich bin gespannt wie du Held das machst!

Willste jetzt Code oder nur wie mans Grob macht?
Klar, die 10 Minuten waren übertrieben (das sollte eigentlich jedem klar 
sein) aber nen AVR, an den z.B. einen MCP4822 dran klöppeln mit 
formschicken LC-Filter und mit Hilfe von Timern und Co fein mit Werten 
beschicken -> kein Problem. Ich sag mal, rund ne Stunde braucht der 
Geübte hier für das Programm und vielleicht genauso lang für den Aufbau 
der Schaltung bzw. des Layout strickens.

Hier ein Einkanal-Beispiel mit einem Attiny2313: 
http://www.elektronik-labor.de/AVR/DDSGenerator.htm

War dir wahrscheinlich auch wieder nicht der Mühe wert nehme ich an.
#5835026
Lesenswert?

M. K. schrieb:
> Falk B. schrieb:
>> Na dann mal los, ich bin gespannt wie du Held das machst!
>
> Willste jetzt Code oder nur wie mans Grob macht?
> Klar, die 10 Minuten waren übertrieben (das sollte eigentlich jedem klar
> sein)

Ach, auf einmal? Schwätzer bleibt Schwätzer!

> aber nen AVR, an den z.B. einen MCP4822 dran klöppeln mit
> formschicken LC-Filter und mit Hilfe von Timern und Co fein mit Werten
> beschicken -> kein Problem. Ich sag mal, rund ne Stunde braucht der
> Geübte hier für das Programm und vielleicht genauso lang für den Aufbau
> der Schaltung bzw. des Layout strickens.
>
> Hier ein Einkanal-Beispiel mit einem Attiny2313:
> http://www.elektronik-labor.de/AVR/DDSGenerator.htm

Den Kram kenn ich und das alles aufzubauen dauert seine Zeit. Nein, 3h 
reichen nicht!
Gast #5835059
Lesenswert?

Natürlich denkt man im Digitalzeitalter immer gleich an DDS, aber könnte 
man die Signal nicht auch analog erzeugen? Ein Sinusgenerator (gibt es 
den XR2206 noch ?), anschliessend ein als Differenzierer beschalteter 
OpAmp für die 90° Phasenverschiebung.
Gast #5835100
Lesenswert?

Falk B. schrieb:
> Den Kram kenn ich und das alles aufzubauen dauert seine Zeit. Nein, 3h
> reichen nicht!

Und schon gleich dreimal nicht, wenn man das ganze noch irgendwie 
einstellbar machen will.
Dann muss nämlich noch ein Display und Taster dran (samt zu schreibender 
Software)
Oder eine Schnittstelle zum PC (samt nötiger Software auf µC und PC 
Seite)

Und schon wird aus den 10min ruckzuck ein Tag und mehr.

Das einzige, was man in 10min wirklich schaffen kann, ist bei Amazon auf 
"Bestellen" zu klicken und "bezahlen".
Und bei nem Preis von 80 Euro würde ich da nicht zögern. Klar ist, das 
kein Wunderwerk der Technik. Aber so gut wie ne selbstgestrickte 
AVR-Lösung wird es allemal sein.
Gast #5835513
Lesenswert?

Christoph S. schrieb:
> Zur testweisen Ansteuerung verschiedener Piezo-Motoren benötige ich zwei
> 90° phasenverschobene Signale.

Welcher Strom wird für die Ansteuerung benötigt?

Lösung wäre kleiner 300mA z.B.

vier Stück Si1551DL komplementär FET's bilden zwei Vollbrücken die an 
einem MSP430G2553 anschlossen sind. Die beiden Vollbrücken werden mit 
Pulsweitenmodulation gesteuert.

*Pulsweitenmudulation:* http://xdec.de/msp430-pwm/

*H-Brücke, 4-Quadrantensteller:* 
https://www.mikrocontroller.net/articles/Motoransteuerung_mit_PWM#H-Br.C3.BCcke.2C_4-Quadrantensteller

Materialkosten unter 10€
Gast #5835779
Lesenswert?

Christoph S. schrieb:
> Nachträglich noch mit Schaltungen herumhantieren wollten wir aus Gründen
> der Komplexität erstmal sparen - es muss doch auch irgendwie so klappen,
> mit so wenig Bauteilen wie möglich.

So läuft das nicht. Entweder du hast ein ganz gewöhnliches Meßproblem, 
für das es fertige Geräte gibt, die du bloß zu kaufen oder zu leihen 
brauchst, oder du mußt dir selbst etwas ausdenken und bauen. Oder: du 
beauftragst ein entsprechendes Ingenieurbüro, es für dich zu tun. Kostet 
auch Geld.

Wenn es ein wenig eckig sein darf, dann tut es ein billiger und passend 
verschalteter 74HC74, guck mal nach "tayloe mixer". Da hast du 4 Signale 
für die 4 Quadranten, kannst also den Sinus grob annähern:
i: + 0 - 0 + 0 - 0 ...
q: 0 + 0 - 0 + 0 - ...
Sowas durch jeweils einen dezenten Tiefpaß gejagt, sollte für einen 
Piezomotor ausreichend "sinusähnlich" aussehen.

W.S.
#5835843
Lesenswert?

Rudi D. schrieb:
> rulixa schrieb:
>> rulixa schrieb:
>>> Ich liebe diese 10' Leute.
>>> Wenns nur 10 min dauert, warum opferst Du nicht die 10 min?
>> Wäre doch was nützliches.
>
> Ich meine den Beitrag von sylaina

Und was genau bringt es dem TE wenn ich hier einen Mikrocontroller 
auspacke, daran einen MCP4822 anschließe und diesen mit einem 10 MHz SPI 
Takt ansteuere sodass er am Ausgang einen Sinus bringt. Oder noch 
besser: Direkt einen Mikrocontroller mit zwei DACs benutze?
Ich hab hier auch echt den Fehler gemacht, einfach irgend ne Zahl 
rauszuhauen in der Annahme, die Leute hier würden auch ihren Grips dabei 
benutzen. Die 10 Minuten werden hier von jedem Depp auf die Goldwaage 
gelegt.

Falk B. schrieb:
> Mein Gott, das Problem ist längst elegant gelöst, aber jede Menge Dödel
> meinen, noch ihre unbrauchbaren Kommentare abgeben zu müssen. Was für
> ein Geschwätz!

Och und dein Post ist kein Geschwätz? Der Trägt also voll was zum Thema 
bei, ja? Seh ich. Hat voll was mit Piezo, Motoren und Quadratursignalen 
zu tun.
Gast #5836012
Lesenswert?

eric schrieb:
> Mike schrieb:
>> könnte man die Signal nicht auch analog erzeugen?
>
> LM324:
> 2 gleiche Allpässe für je 45 grad +
> 1 begrenzenden Inverter ergeben halbwegs brauchbaren Sinus.
> Frequenzstabilität ist vielleicht nicht gerade die allerbeste.


Ist natürlich Unsinn, was ich da heut nacht schrieb.
Digital verdirbt anscheinend den Sinn für die reale analoge Welt.
Richtig ist:

LM324 o.ä.

2 Integratoren für je 90 grad Phasenverschiebung und
1 Inverter zur Rückkopplung

machen einen einfachen Sinus-Quadratur-Oszillator.
OP #5836024
Lesenswert?

Vielen Dank für die Anregungen und das Geplänkel.

Ein externer Funktionsgenerator steht zur Verfügung, kann aber später 
schlecht mit in das Motorgehäuse gepackt werden.

Den Takt direkt mit dem uC ausgeben funktioniert so bei uns leider 
nicht, da der verwendete Chip bei 16MHz eine Auflösung um die 250Hz 
darstellt, was zu wenig ist.

Nach Stöbern habe ich ein paar Application Notes von Analog gefunden, 
dass es mit zwei der DDS-Chips doch funktionieren müsste, diese zu 
synchronisieren.

https://www.analog.com/media/en/technical-documentation/application-notes/AN-587.pdf

https://www.analog.com/media/en/technical-documentation/application-notes/AN-605.pdf
#5836033
Lesenswert?

Christoph S. schrieb:
> Vielen Dank für die Anregungen und das Geplänkel.
>
> Ein externer Funktionsgenerator steht zur Verfügung, kann aber später
> schlecht mit in das Motorgehäuse gepackt werden.

Du hast ja nicht geschrieben, ob du das nur für einen Laboraufbau oder 
für ein Gerät in der Anwendung brauchst.

> Den Takt direkt mit dem uC ausgeben funktioniert so bei uns leider
> nicht, da der verwendete Chip bei 16MHz eine Auflösung um die 250Hz
> darstellt, was zu wenig ist.

???

> Nach Stöbern habe ich ein paar Application Notes von Analog gefunden,
> dass es mit zwei der DDS-Chips doch funktionieren müsste, diese zu
> synchronisieren.
>
> 
https://www.analog.com/media/en/technical-documentation/application-notes/AN-587.pdf

Klingt gut, auch wenn die ICs relativ alt sind.
OP #5836049
Lesenswert?

Falk B. schrieb:
> Klingt gut, auch wenn die ICs relativ alt sind.

Das müsste mit den AD9837 doch genauso klappen?

Falk B. schrieb:
> ???

Bei 45kHz Signal und 16MHz Takt muss alle 177.777777777 counts 
umgeschaltet werden (low <-> high). Zwischen 177, 178 und 179 counts 
liegen 250Hz.

m.n. schrieb:
> Es wäre hilfreich, wenn Du die benötigte Auflösung vielleicht jetzt
> schon verraten würdest?

Wir würden schon gerne ~1.5Hz erreichen, um den Piezo frequenzsteuern zu 
können.
#5836055
Lesenswert?

Christoph S. schrieb:

> Bei 45kHz Signal und 16MHz Takt muss alle 177.777777777 counts
> umgeschaltet werden (low <-> high). Zwischen 177, 178 und 179 counts
> liegen 250Hz.

Falsch. Die Frequenzauflösung einer DDS liegt bei F_Oszillator / 2^N

Wobei N die Bitbreite das Phasenakkus ist. Bei 50 MHz und 32 Bit sind 
das schlappe 11,6mHz (Millihertz!).

> Wir würden schon gerne ~1.5Hz erreichen, um den Piezo frequenzsteuern zu
> können.

Siehe oben.
Gast #5836158
Lesenswert?

Mike schrieb:
> könnte man die Signal nicht auch analog erzeugen?

Falk B. schrieb:
> eric schrieb:
>> 2 Integratoren für je 90 grad Phasenverschiebung und
>> 1 Inverter zur Rückkopplung
>> machen einen einfachen Sinus-Quadratur-Oszillator.

> Na dann mal viel Spaß bei der Frequenzeinstellung und Beibehaltung der
> Phasenlage.

Das Prinzip ist 50 Jahre alt (Tietze-Schenk 1974)
und die Stabilität bei NF 45 kHz meist kein wirkliches Problem.

> Ein Schaltungsprinzip ist noch LANGE keine praktisch nutzbare Anwendung!

Das ist ein billiger Allgemeinplatz.
Wenigstens ein bisschen Gehirnschmalz kann man in diesem Forum
von Fragenden und Antwortenden doch wohl erwarten.
Gast #5836304
Lesenswert?

Christoph S. schrieb:
> Das müsste mit den AD9837 doch genauso klappen?

ja, müsste schon gehen. Schau dir die Init-Sequenz in Fig. 23 des 
Datenblatts an. Du kannst zuerst beide DDS in den Reset setzen (also den 
Phasenakkumulator nullen). Dann die Frequenz- und Phasenregister auf den 
gewünschten Wert setzen. Und dann aus dem Reset rausgehen und beide 
loslaufen lassen.

Wenn du den letzten Schritt "gleichzeitig" machst (selbe FSYNC-Flanke) 
und wenn beide DDS aus der selben MCLK laufen, dann werden sie synchron 
laufen und die 90° Phasenverschiebung behalten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren