Wave Generator
This small basic wave generator uses a scotch yoke mechanism to convert the rotational movement of a step motor into a linear up and down motion which together with a dipper can be used to generate waves in a container. For some frequencies the generated waves can either resonate to create standing waves or interfere to cancel each other and keep a flat surface.
Downloads
Supplies
- A 3D-printer
- A step motor (design is made for a NEMA17 bit)
- A suitable step motor driver
- 12V power supply with 0.6 A- 2.5 A
- Arduino w/ basic cables
3D Printing
Print these out using supports and layer heights of 0.1-0.12 mm and assemble the parts as seen in the picture.
Attach the Motor
Attach the step motor to the insert of the wheel. Note that the slanted side of the motor bit needs to align with the slanted side in the insert which is visible (points to the right side of the 2). It is also recommended to use zip ties to secure the motor to the base of the generator.
Connect the Motor to the Driver
Hook up the motor cables to the motor driver. The one used in our project is the HY-DIV268N-5A but I would strongly recommend to use another motor driver as this one uses counterfeit parts and breaks easily. Connect the 3rd and 6th pins of the chosen NEMA17 motor to the A+ and A- ports of the motor driver (polarity doesn't matter) and Connect the 1st and 4th pins to the B+ and B-.
Connect the Driver to the Arduino
Now connect the following ports to the Arduino:
- DIR+ to D9
- PUL+ to D8
- Ground DIR- and PUL- to the Arduino
And upload the given code to the Arduino. To change the RPM of the motor you need to adjust the pulse width in microseconds.
Downloads
Connect the Driver to the Power Supply
Now connect the driver to the power supply and watch the polarity. For the motor driver used in the project it is not recommended to use more than 2.5 A and use 12-24 V as the counterfeit components easily break.
Fill With Water and Enjoy
Fill the container with water up until 5cm. The water level should not rise above the plane of the dipper. In the Arduino code you can set the pulse width in microseconds which corresponds to the rpm of the motor depending on what motor driver you use. The rpm is also dependent on the microsteps you select with the motor driver. To create standing waves in the container used you need one of the following frequencies:
- 1.60 Hz
- 2.68 Hz
- 3.40 Hz
- 3.95 Hz
Now watch as the wave generator creates waves. Be aware that the resonance has the potential to overflow the container. Enjoy!