Introduction: PomonAcoustic Levitator

We built an acoustic levitator using ultrasound transducers based on the Instructable by UpnaLab. Using 72 transducers in 2 parabolic arrays, we can levitate many polystyrene beads on acoustic nodes. The levitator only needs 12-20V voltage, and can be easily carried around. Acoustic levitation provides many entertaining and useful applications, including container-less transportation, pharmaceutics, nano-assemblies, and biological samples, as noted in this paper.

Supplies

Image from UpnaLab.

Individual Components

  • 8 packs of 10x 16mm 40kHz transducers: amazon link, $9.99 per pack
  • 1x L298N Dual Motor Drive Board: amazon link, $6.39
  • 1x 3D-printed levitator support
  • 1x Arduino Nano or other Arduino
  • 1x power switch
  • DC adaptor variable between 7V and 12V
  • DC female connector
  • Jumper wires
  • 12AWG black and red wire
  • 24AWG black and red wire
  • 24AWG exposed wire
  • Some Expanded Polystyrene beads to levitate (between 1mm and 3mm diameter)
  • An acoustically transparent material: A metallic grid, very thin fabric or teabag paper

Necessary Tools

  • 3D printer
  • Soldering Iron, Tin and Flux
  • superglue
  • Multimeter
  • Cable Peeler
  • Screwdriver and Pliers
  • Tweezers
  • Oscilloscope 
  • Dremel

Step 1: 3D Printing

Let's first 3D print the levitator base! You can find the .stl file underneath. The CAD model is for half of the levitator, and you can print it twice and glue them together to make the levitator base. Alternatively, if your 3D printer is large enough, you can duplicate the model in your CAD editing software and print the levitator as a whole. The model is from UpnaLab - BIGLev using 72 16mm transducers.

After printing the levitator base, clean the edges and the sockets. We needed to enlarge our 144 sockets using a Dremel, because the sockets in the CAD model did not exactly fit the transducer legs. Make sure to attach a small Dremel head and drill through each socket to enlarge it.

Step 2: Transducer Polarity

Mark the polarity of each transducer. The above video gives a simple guide on how to mark the polarity using a multimeter. This step is very important as this determines the phase for each transducer in the array, and we need all transducers to have the correct phase for the array to work properly and create a clean standing wave.

Do not trust the polarity markings from the manufacturer!

Step 3: Glue the Transducers

Use superglue or any kind of glue to attach 72 transducers onto the levitator base. Make sure that all marked legs of the transducers are pointing radially inwards, towards the center. This determines if each transducer in an array is in phase with one another.

Step 4: Wire and Solder

Use a bare wire to wire each array of transducers (36 of them) in 6 different rings. The first image from UpnaLab illustrates the wiring. The red rings connect to one leg of the transducers and the black rings connect to the other leg. Solder all the pins to the wires.

Step 5: Parallel Transducer Circuit

Prepare 4 long wires and solder them to the transducers according to the image above. Make sure to cut and expose 3 segments for each long wire, and solder those exposed segments to the pins. This makes the 36 transducers in an array all in parallel.

Step 6: Program the Arduino

We want the Arduino to output a 40kHz square wave signal, acting like a function generator. The driver board then draws current from the power supply and amplifies the signal. You can upload the .ino file below to the Arduino and use an oscilloscope to test if the output is a square wave. The code is from UpnaLab.

Step 7: Complete the Circuit

Please refer to the above diagram to connect the wires.

The driver board should get 12V from the power supply, and 5V from Arduino.

There should be four jumper wires from Arduino (A0, A1, A2, A3) to the inputs of the driver board (IN1, IN2, IN3, IN4) to amplify the square wave.

D10 and D11 should be connected to create synchronized signals from Arduino.

Step 8: Test Transducer Phases

Every transducer in the same array should be in phase with each other. The two arrays should have opposite phases.

Hold two receivers (microphones) with two channels on the oscilloscope. Put one receiver directly on top of one transmittor on the levitator, and the other receiver directly on top of another transmittor. The receiver signals on the oscilloscope should be in phase for every transducers in the same array. The two arrays should be 90° out of phase with each other.

If there is a transducer with the wrong phase, you can desolder its wires, take it out with pliers, reverse the direction, and re-solder it. The above image shows us desoldering one transducer and taking it out.

Step 9: Making the Case

Just for fun, you can make a case that houses your levitator. We measured the dimensions of the levitator, appropriately designed a clear, plastic casing in CAD software, and then laser printed the design. If designing your own case, make sure to leave a hole or opening in your case so the heat sink can dissipate heat into the environment.

Step 10: Levitate!!

Use a pair of tweezers to place Polystyrene beads roughly along the center axis of the levitator. You can now start levitating!

Step 11: Visualize the Nodes

By placing some sugar or garlic powder on black paper, you can visualize the nodes in the standing wave from the levitator. Try it out!