DIY Function/Waveform Generator
by GreatScottLab in Circuits > Arduino
76536 Views, 219 Favorites, 0 Comments
DIY Function/Waveform Generator
In this project we will have a short look at commercial function/waveform generators in order to determine what features are important for a DIY version. Afterwards I will then show you how to create a simple function generator, the analog and digital way. At the end I will then present you a DIY DDS function generator design which can (kind of) hold up to the commercial versions. Let's get started!
Watch the Video!
The video gives you all the information you need to create your own DDS function generator. During the next steps though, I will present you some additional information.
Order Your Components!
Here you can find a parts list with example seller (affiliate links):
Aliexpress:
1x 12V center tapped transformer: https://s.click.aliexpress.com/e/_dZzaRwR
1x IEC socket: https://s.click.aliexpress.com/e/_dYQWdHl
1x B40C2300 full bridge rectifier: https://s.click.aliexpress.com/e/_dUSXlfZ
1x LM7812 12V regulator: https://s.click.aliexpress.com/e/_d8GjYYf
1x LM7912 -12V regulator: https://s.click.aliexpress.com/e/_d6ueEfl
1x LM7805 5V regulator: https://s.click.aliexpress.com/e/_dWITJXp
1x Capacitor kit: https://s.click.aliexpress.com/e/_d8NcJ0L
1x Arduino Nano: https://s.click.aliexpress.com/e/_d85qR0x
1x Rotary Encoder: https://s.click.aliexpress.com/e/_dXKK3dV
1x AD9833 DDS IC: https://s.click.aliexpress.com/e/_dTc4NZH
1x I2C LCD: https://s.click.aliexpress.com/e/_d6HiiMB
1x TL071 OpAmp: https://s.click.aliexpress.com/e/_dXd3VYL
1x BNC connector: https://s.click.aliexpress.com/e/_dZ51v0F
1x 10k, 50k Potentiometer: https://s.click.aliexpress.com/e/_dU8s3rt
Ebay:
1x 12V center tapped transformer: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x IEC socket: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x B40C2300 full bridge rectifier: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x LM7812 12V regulator: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x LM7912 -12V regulator: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x LM7805 5V regulator: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Capacitor kit: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Arduino Nano: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Rotary Encoder: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x AD9833 DDS IC: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x I2C LCD: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x TL071 OpAmp: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x BNC connector: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x 10k, 50k Potentiometer: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
Amazon.de:
1x 12V center tapped transformer: -
1x IEC socket: https://amzn.to/2UDXsK1
1x B40C2300 full bridge rectifier: https://amzn.to/2HVn8wn
1x LM7812 12V regulator: https://amzn.to/34vhVoP
1x LM7912 -12V regulator: https://amzn.to/34vN9vQ
1x LM7805 5V regulator: https://amzn.to/2N1l4ag
1x Capacitor kit: https://amzn.to/34vpEmB
1x Arduino Nano: https://amzn.to/34yTMgX
1x Rotary Encoder: https://amzn.to/300YJMl
1x AD9833 DDS IC: https://amzn.to/2MZm7HP
1x I2C LCD: https://amzn.to/31bhEW8
1x TL071 OpAmp: https://amzn.to/2ZXTb53
1x BNC connector: https://amzn.to/314ktI9
1x 10k, 50k Potentiometer: https://amzn.to/2HOI34j
Build the Circuit!
Here you can find the schematic of the circuit as well as reference pictures of my finished perfboard construction. Feel free to use them.
Upload the Code!
Here you can find the code for this project. You need to upload it to the Arduino before your function generator can work successfully.
Big thanks once again to Cezar Chirila for his work. The code is pretty much made by him. Have a look at his article:
Downloads
3D Print a Housing!
Here you can find the .stl and .123dx files for my 3D printed housing. 3D print them and then mount all the components inside the main enclosure to complete your function generator build.
Success!
You did it! You just created your own function/waveform generator!
Feel free to check out my YouTube channel for more awesome projects:
http://www.youtube.com/user/greatscottlab
You can also follow me on Facebook, Twitter and Google+ for news about upcoming projects and behind the scenes information:
https://twitter.com/GreatScottLab