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.
>am liebsten mit einem Atmel controller. >Mit einer mindest ausgangsfrequenz von 1Mhz natürlich von 1Hz weg. Träum weiter.
http://www.elv.de/output/controller.aspx?cid=74&rol_id=1&spr_id=1&detail=1&detail2=215&PAGE=1&SORT=1
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.. ;)
Genau. Das Signal erzeugen ist einfach. Aber es dann ordentlich von 0.1 Hz...10 Mhz weiterzuverarbeiten (Amplitude, Offset etc) ist die eigentliche Herausforderung.
@ 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
Naja. Steht doch im Datenblatt, was man dem 9833 reinschieben muss. Als standalone Geraet, braucht man noch einen Display und Eingabeelemente.
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
@ Düsentrieb hört sich gut an. hast schon was dazu entwickelt???? würde mich evt. Revangieren. Bin recht gut im Layouten
ei da schau her, erster Treffer bei Google http://www.elektronik-kompendium.de/public/glahe/ad9833.htm
Aha, endlich von überzogenen Vorstellungen runter. Hier ein FG, der nur einen 2313 braucht: http://www.myplace.nu/avr/minidds/index.htm
#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)
>>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
wie wär wenn jemand mal in die Codesammlung geht und DDS eingibt? Kommen sogar ganze zwei Treffer!!! duckundwech
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
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 ;-) ...
Ach so aufbau dann natürlich entweder mit OPs oder analog mit entsprechender Differentverstärkerschaltung. [vielecht mit quarzstabilisierung ?]
#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)
Der Generator sollte mindestens 100Khz Schaffen ohne groß zu verzerren Schreib mir mal ne E-mail oder hast du ICQ??????????ßü
Hallo, das ist gar kein Problem! Ich habe gerade so´n Ding gebaut und verkaufe den Prototyp gerade bei EBAY Artikelnummer 150212712072... Gruß Andreas
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.
#thomas , meld dich doch einfach im forum http://damp.byethost33.com an, machen wir ein thema "dds funtionsenerator" auf; forum is praktischer, bilder usw...
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.
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
Na, wer von euch hat da eben bei EBAY auf mein Schnuckelchen geboten??? :-)
Normalerweiße sollte ein Atmega 32 es schon schaffen das display und die Frequenz zu steuern oder??? Bei 16Mhz geht schon was weiter.
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.
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
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...
# 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.
# 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 )
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.
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...
@ Düsentrieb Hast du kontaktdaten????? Kannst mir auch übers forum ne E-mail schreiben in höchst interresiert
hab dir auf http://damp.byethost33.com/ geschrieben... (hier kickt mich der login immer wieder raus...daher nur "gast", kann hier keine mail schreiben :-(
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.