www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Funktionsgenerator Schaltung gesucht


Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich suche zur zeit nach einen Funktonsgenerator zum selbstbauen, am 
liebsten mit einem Atmel controller.

Der generator sollte Dreick, Sinus, Rechteck und Sägezahn können.

Und das am liebsten in DDS.

Mit einer mindest ausgangsfrequenz von 1Mhz natürlich von 1Hz weg.

Mit Display wäre gut.

So wie der von ELV mit 10Mhz.

Ich danke euch vielmals.


P.S. Ich habe den von Andreas s. schon gesehn der hat leider eine zu 
niedrige ausgangs frequenz.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>am liebsten mit einem Atmel controller.
>Mit einer mindest ausgangsfrequenz von 1Mhz natürlich von 1Hz weg.

Träum weiter.

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AD9833 +2.3 V to +5.5 V, Low Power (20 mW), Programmable Waveform 
Generator in 10-Pin µSOIC Package

AD5930 Programmable Frequency Sweep and Output Burst Waveform Generator
AD5932 Programmable Single-Scan Waveform Generator

sollte reichen ;)

viel spass beim basteln .. sowas werd ich mir auch noch bauen in 
nächster zeit.. aber ich bin mir noch nicht ganz sicher wie ich das 
analoge rund-herum baue... da gibt's zu viele nice-to-have.. ;)

Autor: Der Dude (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau. Das Signal erzeugen ist einfach. Aber es dann ordentlich von 0.1 
Hz...10 Mhz weiterzuverarbeiten (Amplitude, Offset etc) ist die 
eigentliche Herausforderung.

Autor: 6632 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einen BUF634 hintendran, der koennt zumindest 50 Ohm.

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ holger:

Ich meine ja zum steuern eines Signalgenerators soll der Atmega dienen.

@Düsentrieb:

Ich habe schon tage im Google gesucht leider nichts passendes gefunden.

Der von Jasper ist leider PC gesteuert und ich will ein eigenständiges 
gerät das ohne PC auskommt praktisch wäre natürlich wenn man es noch 
zusätzlich über PC steuern könnte.

@Gast:

Ich habe bei ELV schon nachgeschaut es ist auch ein Schaltplan vorhanden 
aber Leider keine Software. Und der Programmierte Prozessor kostet fast 
40€.

@Hans

Ich habe den Ad9833 schon lange im visier, der ist auch mein Faforit. 
Ich habe leider keine ahnung wie ich diesen so steuern kann mit einem 
Atmega.

@ Der Dude

Ich gebe dir recht das ist mein Problem das ansteuern.



Vieleicht hat jemand das ELV board und kann die Software aus dem uC 
copieren

Autor: 6632 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja. Steht doch im Datenblatt, was man dem 9833 reinschieben muss. Als 
standalone Geraet, braucht man noch einen Display und Eingabeelemente.

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der von Jasper ist leider PC gesteuert... na komm, da wirst du doch die 
paar änderungen in den code bekommen, um das - wie auch immer- zb mit 
ein paar tasten zu steuern
wenn du das nicht kannst, musst du zb das fertige kit von elv nehmen, 
nur dann muddu nich programmieren
oder warten, bis ich meinen baue, da nehm ich nen drehgeber zur eingabe 
+ lcd zum anzeigen

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Düsentrieb

hört sich gut an.

hast schon was dazu entwickelt????

würde mich evt. Revangieren. Bin recht gut im Layouten

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ei da schau her, erster Treffer bei Google

http://www.elektronik-kompendium.de/public/glahe/ad9833.htm

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kenn ich schon will am liebsten was mit Atmega oder Atiny

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe meine priorität geändert ab 100KHz reicht eigentlich

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aha, endlich von überzogenen Vorstellungen runter.
Hier ein FG, der nur einen 2313 braucht:

http://www.myplace.nu/avr/minidds/index.htm

Autor: Der Dude (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Link steht doch weiter oben schon.

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#thomas , mit nem zb mega48, bei 20mhz takt, 8clk für den dds loop --> 
max. 2 Msampels out, geht also locker > 200khz sinus(im prinzip bis 
1mhz)

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Viel drumherum für ein winziges Bauteil: Damit der DDS-Chip AD9833 im Labor 
sinnvolle Dienste leistet, ist einiges an Peripherie-Aufwand nötig.

gesehen? dazu rund ad9833 8,40€+porto

Autor: JÜrgen Grieshofer (Firma: 4CKnowLedge) (psicom) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie wär wenn jemand mal in die Codesammlung geht und DDS eingibt?

Kommen sogar ganze zwei Treffer!!! duckundwech

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich such doch nur nen schaltplan

Autor: funkenschlosser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hey geh ma auf die elktronikerseite.de da gibst pläne braucht sehr 
wenige bauteile und ich selbst habe ihn schon mal aufgebaut und benutzt 
kann mich nit beschweren

Autor: krys_derHardcoder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich meinen Elektronik Prof. zitieren darf:

Lieber was gescheit Analoges schaffen als digitalen "Müll"

[Nich unbedingt meine Meinung],

Aber einen einfacheren Funktionsgenerator
(bis ca  1 mhz) kriegt man imho auch analog hin , zumindest den recheck 
hab ich schon im Labor gebaut , den Rest hab ich mir für die ferien 
(Donnerstag  ist die Prüfungszeit zuende(wünscht mit glück bis dahin) 
)vorgenommen .
Kann ja den Baubericht ins Wiki stellen, wenn interesse besteht.

(Will aber eher auf einfacheit gehen , halt zum üben/basteln)
Na ja verbessern kann man immer ;-) ...

Autor: krys_derHardcoder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach so aufbau dann natürlich entweder mit OPs oder analog mit 
entsprechender Differentverstärkerschaltung.
[vielecht mit quarzstabilisierung ?]

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#thomas ,
>ab 100KHz reicht
meinste "bis" oder?

wenn du willst, bauen wir so n ding..

(meine teile reichelt kommen nächste woche,
bes. der dac0800 fehlt mir noch)

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Generator sollte mindestens 100Khz Schaffen ohne groß zu verzerren

Schreib mir mal ne E-mail oder hast du ICQ??????????ßü

Autor: Andrew_R (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, das ist gar kein Problem!

Ich habe gerade so´n Ding gebaut und verkaufe den Prototyp gerade bei 
EBAY
Artikelnummer 150212712072...

Gruß Andreas

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich noch mal eben...

Das Hauptproblem an der ganzen Sache ist das die Atmegas zwar super 
Pozessoren sind, aber für solche Awendungen eigentlich doch zu langsam 
sind.
Wenn man sich allerdings auf die reine Signalerzeugung ohne sonstige 
schnörkel im Programm konzentriert, schaffen die Dinger jeden 2. Takt 
eine Ausgangsänderung des Ports.
Der Atmega 8 verträgt ohne irgendwelche Probleme 40MHz !!!!! Takt.
Macht bei einer 8 bit breiten Signalform 78125 Hz Ausgangstakt.
Bei 7 bit 156250 Hz
Bei 6 bit 312500 Hz
Bei 5 bit 625000 Hz
Bei 4 bit 1250000 Hz

Und ab da machts dann keinen Sinn mehr.

Autor: Frank B_. (frank_b) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jeden 2. Takt ?

wie sieht denn da die Schleife aus ?

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#thomas ,
meld dich doch einfach im forum
http://damp.byethost33.com
an, machen wir ein thema "dds funtionsenerator" auf;
forum is praktischer, bilder usw...

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na ganz einfach!

Sinus:
Do
Portd = 0
Portd = 0
Portd = 0
Portd = 1
Portd = 1
Portd = 1
Portd = 2
Portd = 2
Portd = 3
Portd = 4
Portd = 5
Portd = 5
Portd = 6
Portd = 7
Portd = 9
Portd = 10
.
.
.
usw
.
.
.
Loop

In Bascom geschrieben

allerdings muss man bei dem Signal den letzten Wert leider weglassen,
da der Sprung ebenfalls 2 takte braucht.

Autor: Frank B_. (frank_b) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was anderes hätte mich auch gewundert :-)

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eben, und wenn man dann noch versucht ein Display zu versorgen
und die Geschwindigkeit mit dem Prozessor zu Steuern ist bei 5Khz
mit viel geruckel aber schluss!
Also der Atmega macht nur das Signal sonst nichts!
Takt von aussen einstellbar
Und ein 2.Atmega zur Frequenzmessung mit Display - fertig

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na, wer von euch hat da eben bei EBAY auf mein Schnuckelchen geboten???
:-)

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Normalerweiße sollte ein Atmega 32 es schon schaffen das display und die 
Frequenz zu steuern oder??? Bei 16Mhz geht schon was weiter.

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nö, geht definitiv nicht!
Das Signal ist bei 8 bit aufgelöst in 256 Spannungswerte.
Würde der Prozessor bei jedem Takt eine Ausgangsänderung schaffen,
Hättest du eine Ausgangsfrequenz von Eingangstakt / 256.
Er schafft aber nur jeden 2. Takt eine Ausgangsänderung.
Also: Eingangsfrequenz / 512 = Ausgangsfrequenz.
Macht bei 16 MHz Takt 31250 Hz!
Mehr geht nicht, völlig egal welchen Atmega du nimmst.
Und wenn du dann noch Takte für was anderes "vertrödelst" ist schluss 
mit lustig!!!
Zumal du Sprünge in dein Ausgangssignal bekommst.

Autor: xyz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  funkenschlosser

elektronikerseite.de geht nicht

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja...dds funktioniert etwas anders...
zb mega48, bei 20mhz takt, 8clk für den dds loop -->
max. 2 Msampels out, geht also locker > 200khz sinus
einstellungen natürlich nur per interrupt, der dds loop muss konstant 
laufen

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, wie schon erwähnt, ich verkaufe gerade bei Ebay so ein Gerät
 Artikelnummer: 150212712072
Im zweifelsfall würde ich auch die nakten Platinen verkaufen wenn jemand 
Intresse dran hat...
Oder euch die Schaltung zum nachbau erklären...

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
# Düsentrieb

mir ist schon klar wie DDS funktioniert.
Ausgehend von einem Sägezahnsignal, kann ich mit einem 8bit Prozessor 
256 Spannugswerte darstellen macht bei 20MHz Takt schon mal nur noch 
78125Hz
den muss ich aber noch durch 2 teilen weil ich nur bei jedem 2. Takt 
eine Ausgangsänderung der Ports realisieren kann! Macht dann nur noch 
39062.5Hz!
Mehr geht nicht!!!
DDS lebt davon Werte des Signals auszulassen um die frequenz zu ändern, 
was unweigerlich ein verstärkte Stufenbildung im Signal zur Folge hat 
die man dann wieder mit Filtern "beheben" muss.
Mein Ziel war es jedoch alle Spannungswerte auch rauszugeben, und auf 
eine Nachfilterung zu verzichten!
Filter mal bitte ein Dreiecksignal ohne die Spitzen zu verrunden!!!
Bei nur 16 Werten des Signals (also DDS) kriege ich bei einem Systemtakt 
von 40 MHz auch eine Ausgangsfrequenz von 1.25Mhz hin.

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
# Andreas im prinzip schon richtig, nur:
zb wenn du  normalen opamp ala tl072 als output verwendest, dann filtert 
der durch seine fgo "automatisch", dh bei zb 100khz sinus gehen bei 
meinem bsp , s.o. , etwa noch 20 sampels pro sinus-welle, dh du könntest 
"stufen" oder ecken im signal sehen - wenn der opamp die entsprechenden 
oberwellen > 1mhz auch zeigt - was er eben nicht macht, da seine fgo bei 
zb 500khz liegt; er verrundet also das signal...abgesehen davon, dass 
bei > 100khz leichte fehler bzgl oberwellen wohl keine rolle spielen. 
falls doch, muss natürlich ein anderer weg zur signalerzeugung verwendet 
werden, zb analoger dreieck/rechteck generator, damit kommst bis in den 
Mhz-bereich ohne probleme (ensprechende superschnelle opamps 
vorausgesetzt, zb Lm7121 )

Autor: willi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab ich hier irgendwas übersehen und werde gelüncht wenn ich MAX038 
sage?

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nee, du hast auf jeden fall gute chancen, als gewinner für "wer findet 
den teuersten chip" oder "was wird nicht mehr hergestellt" ...
maxim:
This product was manufactured for Maxim by an outside wafer foundry 
using a process that is no longer available.

Autor: Andreas Reinert (andrewr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, ich hab mein Programm noch mal überarbeitet und hole jetzt bis 
2,5MHZ
aus dem Schnuckelchen raus. Allerdings ist die Signalform dann nicht 
mehr
wirklich schön und muss auf jeden Fall durch einen Filter!

#Düsentrieb
So sieht´s aus...
Bei Sinus alles nicht so problematisch.
Aber wie schon gesagt, filter mal ein Dreieck ohne die Spitzen 
abzurunden...
Ich hab mir jetzt mal den LM318L besorgt. Dem Mistvieh muss ich nur noch
seine Eigenschwingungen abgewöhnen... ;-) ansonsten ist der ekelig 
schnell
und hat eine Anstiegsgeschwindigkeit um die 100V/mikrosekunde...

Autor: Thomas St. (Firma: RF-I) (rasieel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Düsentrieb

Hast du kontaktdaten?????

Kannst mir auch übers forum ne E-mail schreiben in höchst interresiert

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab dir auf
http://damp.byethost33.com/
geschrieben...
(hier kickt mich der login immer wieder raus...daher nur "gast", kann 
hier keine mail schreiben :-(

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.