Acoustic Levitator
Acoustic Levitator
Acoustic Levitator
by UpnaLab
Use acoustic waves to hold in mid-air samples such as water, ants or tiny electric components. This technology has been
previously restricted to a couple of research labs but now you can make it at your home.
If you want more background and details you can check our Open Access papers:
More details and supplementary information about this levitator
How Acoustic Tractor Beams Work
Acoustic Delay Lines for Compact Tractor beams
Do not forget to watch the attached video. The rst video is the instructions whereas the second one is a
fantastic video by Physics Girl explaining the physics behind it.
If you want to build other devices coming directly from the research lab subscribe or get in touch:Youtube:
https://www.youtube.com/user/asiermarzo
Twitter: @AsierMarzo
https://www.youtube.com/watch?v=ABjRnSYw-4k
Kit
Now you can get all the components in this kit:
https://www.makerfabs.com/index.php?route=product/product&product_id=508
https://www.tindie.com/products/Makerfabs/acoustic-levitator-kit/
https://www.robotshop.com/de/de/acoustic-levitator-kit.html
Individual components
We present a list of the necessary components. I have tried to place links for di erent countries. However, the same parts
can be found all around the world, some useful websites are http://www. ndchips.com/ http://www.dx.com/
http://www. ndchips.com/ http://www.lightinthebox.com/ http://www. ndchips.com/
72x 10mm 40kHz transducers. Manorshi provides MSO-P1040H07T at a very good price, minimum order
is 500 but they will ship with less at a higher price. Also Ningbo has good ones FBULS1007P-T
1x 3D-printed TinyLev support. (STL le provided in Step 2)
Necessary Tools
3D printer -> you can use an online service
Soldering Iron, Tin and Flux.
Hot-glue gun
Multimeter
Cable Peeler
Screwdriver and Pliers.
Drill
Oscilloscope with two probes (optional) -> you can get one for less than 50£ http://amzn.eu/5ey6ty2
3D print the base for the levitator. We used a 0.4mm nozzle and brim but no support. It should be possible to print it in
one piece. A 0.6mm nozzle also provides good results.
Included in this step, you have the rst version (v0 14 x 7.86 x 8.31cm). Or you can use the next version with some
reinforcement in the joints (v1 15.6 x 7.86 x 8.54cm).
You may also want to print the fantastic stand from Je Bearer
Or you can also use a full case to make more robust and look awesome. by Jakub_Nagy
Another cool case by INVESTEGATE
https://www.instructables.com/F78/ZW23/JKN8P8JS/F78ZW23JKN8P8JS.stl
View in 3D Download
https://www.instructables.com/F9J/3WN6/JKN8P8KG/F9J3WN6JKN8P8KG.stl
View in 3D Download
https://www.instructables.com/FDA/5SBH/JKN8P8KE/FDA5SBHJKN8P8KE.stl
You may need to use a le to clean the edges around the levitator and clean the sockets. A Dremel will do the job faster.
You may also want to drill a hole in the centre of each side, this will allow to insert a camera, a needle or evacuate liquids.
If you have a multimeter and some copper tape, this method is quite simple to perform.
DO NO TRUST THE POLARITY MARKINGS FROM THE MANUFACTURER!!!
The easiest way to mark the polarity is to use the Arduino itself. This method does not require an oscilloscope or to poke
the transducers inside.
Install the code from this section into the Arduino. Connect one wire to A0 and another wire to GND.
While the Arduino is connected to the PC, run the Serial Plotter (Tools->Serial Plotter) and be sure that the speed is set to
115200.
When a transducer is connected between A0 and GND the signal will do one of the following things:
Signal goes down or remains at 0. Then, mark the leg connected to GND.
Signal goes up or remains at 1023. Then, Mark the leg connected to A0.
It is important to not touch the transducers leg or the wires while doing that or the values will reset.
If it is still not possible to detect the polarity, poke the inside of the transducer with a thin wire and check if the spike goes
up or down (like in the obsolete method). Spike up -> mark A0 leg, spike down -> mark GND.
https://www.instructables.com/FFW/IH82/J98RXO3E/FFWIH82J98RXO3E.ino
The transducers have polarity and it is important to glue them in the base oriented with the same polarity. Do not trust
Acoustic Levitator: Page 11
the marks made by the manufacturer, they are not reliable at all. The easiest way is to connect a transducer to an
oscilloscope and poke the inside with a thin wire. If the spike goes up, mark the leg connected to the positive part of the
probe. If the spike goes down, mark the leg connected to ground. You can use two stripes of copper to make this process
faster. After all, you will need to mark 72 transducers.
Apply a little bit of hot glue on the side of the socket (if you apply glue near the holes for the legs, the legs will be covered
in glue when you push the transducers through), push the transducer in and apply some pressure with your ngers to
make it lay as at as possible in the socket.
It is very important that all the marked legs are pointing towards the centre of the device (where the hole is).
Wrap the exposed wire in six concentric rings around the legs of the transducers.
Now, we need to make the wires that connect the transducers to the driver board.
2 red wires and 2 black wires. They need to be around 1 meter. In one side there is only the tip exposed. On the other side
there are 3 segments exposed, in the video it is shown how this can be done.
The side with 3 segments will go into the transducers rings and the side with only the tip will go into the driver board.
Solder the long wires to the transducers. The side with the 3 segments exposed goes into the transducers, one segment
for each ring. Each side of the levitator has a black and a red wire. You can use ux and tweezers to facilitate the
soldering. Tin the other sides of the wires (the side that only has the tip exposed)
Upload the code provided in this step into the Arduino Nano.
https://www.instructables.com/FJ1/MSSN/J66Q8UBZ/FJ1MSSNJ66Q8UBZ.ino
Glue the Arduino Nano and the Driver into the base. It is important to use the positions and orientations of the gures.
You will need to solder the DC female connector to the Switch and leave two wires prepared to supply power to the
driver board.
When powered (always between 6V and 12V) the output signals of the driver (IN1&IN2 or IN3&IN4) should output a
40kHz square wave of twice the voltage provided to the circuit.
Test that there are no shortcuts between the red and black wires of the levitator.
Connect the levitator to the driver board and switch it on (always provide between 6V and 12V). For testing, 6V will be
enough.
You will need two probes with transducers connected (pay attention to connect the marked leg into the positive part of
the probe).
Transducers of the same array (side) should be in phase.
You can correct mistakes by cutting the exposed wire and bridging with wires.
Connecting the wires as shown in the right should provide optimum performance and minimum power consumption.
Otherwise, swap the red and black wire.
Apply some hot-glue to glue the wires to the levitator for mechanical support.
You can now glue the legs.
Provide up to 10V. You can use a tweezer to place the particles. Also a metallic grid or thin fabric (acoustically transparent)
will be useful since the particles can be placed there and then introduced into the levitator.
It is necessary to adjust the voltage to the type of liquid. Too high and the droplets will pop, too low and they will fall. For
water around 9V is enough and for alcohol around 8V.
It is important to place a thin fabric on the bottom to absorb falling droplets, they can damage the transducers.
Place a particle to have a guidance of where to inject the droplets.
A syringe with a bent needle and the tip removed is the best option.
If you want a more powerful levitator you can use the 16mm transducers. The process is exactly the same but you will
need to 3d-print the levitator base in 2 part and glue them together (one half is attached in this step). This levitator can
take up to 20V in the driver board (40Vpp) and levitate solids of up to 6g/cm3 but it is not as easy to use for liquids.
72x 16mm 40kHz transducers. Manorshi provides MSO-A1640H10
You can use instead 25kHz transducers, they are weaker but would allow to levitate larger objects. For that use the
simpli ed code attached, and modify it to match your frequency.
https://www.instructables.com/F33/JHPQ/J66Q97EF/F33JHPQJ66Q97EF.stl
Download
https://www.instructables.com/FW8/AD7J/JEIV6OGA/FW8AD7JJEIV6OGA.ino
If you want to use 16mm diameter transducers but BIGLev is too big, you can use MidLev. It uses 16mm diameter
transducers but it will t most of the printers.
View in 3D Download
https://www.instructables.com/F8H/G7VV/J6MGGHMI/F8HG7VVJ6MGGHMI.stl
A great design by Michael Harris using only 18 transducers, he mentions that it is cheap to buy them by packs of 20 in
ebay.
https://www.instructables.com/FR3/QOZ5/LCOTE4PQ/FR3QOZ5LCOTE4PQ.stl
View in 3D Download
https://www.instructables.com/FRK/Z308/LCOTE4RZ/FRKZ308LCOTE4RZ.stl
Hi, I found problems loading the program on the arduino; always gives me the same error: https://support.arduino.cc/hc/en-us/articles/4401874331410#avrdude-st
k500_recv-and-stk500_getsync.
I tried to follow the instructions on the arduino official site, but i didn't solve the problem.
Do you advise me to buy a new arduino? Has anyone had the same problem? If so, how did you solve it?
I hope someone will answer me asap, thank you very much!!!
Me too. Just started with it and it is quite annoying. Hope to receive an answer to resolve the
issue. For this just worked: If using the classic Nano, try selecting a different processor in Tools >
Processor.
Hello! Should there be an audible tone from the transducers? The transducers on one side of my
levitator emit a very high but certainly audible tone when connected to the driver, but the other
side does not. Which side do I need to troubleshoot?
edit: It works! However, still emits an audible (and quite unpleasant) sound...help is appreciated!
edit 2: Fixed! By touching each transducer when powered on, I found one that made the sound
stop when touched. A quick resolder did the trick!
have you connected D10 to D11?
Hello,
I see you've answered a lot of questions posted in the comments and I'm hoping that you can do
the same for this one.
I've spent the last week building the BIGlev (I accidentally got the 16 mm transducers so I had
to). I learned how to 3D print, followed all the steps, and attempted to test the driver and the
transducers using my Picoscope.
However, I cannot get objects to levitate. I've been using either tweezers or teabag material to
place them in the levitator. They *do* move around, and in fact, I can get a small piece of foam to
levitate, but only about 3/4 of an inch above the tea bag material I use to place it --- as soon as I
slowly remove the teabag (either straight down or to the side; very very slowly) the particle
shoots up higher in the air and then falls back to the ground. This was at around 9.4 volts I think,
but I know that the 16 mm transducers can take up to at least 20 V into the driver.
I double checked all the wiring twice for the arduino and the H-bridge, tested for shorts between
red and black wire, etc.
The only thing I can think of is that maybe one or two transducers weren't hot glued perfectly into
their holes on either the top or the bottom spheres? I didn't think a small margin of error there
would be an issue, as hot glue is really not a "precise" adhesive to me and it's hard to use it
uniformly as it dries/hardens so fast. A few transducers didn't sit evenly when I was assembling
so I very slowly etched away the hot glue and re-applied it. Theres still a couple that are slightly
loose, but i don't want to take apart the whole thing if this isn't the source.
I did order some polystyrene beads, hoping that their uniform shape compared to the material I'm
using will help. But seeing as people can levitate ants in the videos, I don't think that uniformity is
the issue.
Thank you very much for any help you can offer, I really want to wrap up this project
- Ben
Thanks for your explanation. Deviations on the emitters postion/angles are not that important. My
guess is polarity of the emitters, couple of questions to help you debug the problem:
Thanks so much for your helpful response and any further help you can offer.
I've uploaded images of my driving board and circuits. I had just neatened them up with a printed
stand I found, but took them off to take better photos.
I did mark the polarity using the arduino method, I was pretty careful and thorough and tried to
test each emitter twice / didn't use ones which had a vague direction on the serial plotter graph
I can use other fabric, but the particles do seem to be effected through the teabag material well
(jump around, fly off).
I was successfully able to get a very very small piece of foam to levitate yesterday, but couldn't
add more pieces of foam above / below and also since then am now unable to recreate that
effect.
I tried switching the red and black wires on the driver outputs per the instructions that talk about
maximizing efficiency of the circuit with the green check photo from your instructable.
I'm planning to rebuild the circuit while I wait for your reply / advice but I think everything is in the
right place. I think when I got it to levitate briefly I was using around 10 volts but didn't write it
down. I just got some polystyrene beads in the mail today, so maybe that will help to have a
uniform object?
I am interested to see if you have any further pointers, I could try to re-test the polarity of every
transducer? I did try to use my Picoscope to view the signal outputs of the emitters which in my
viewing program on my computer appeared to output a square wave like you say it should, but
the graph settings were a bit different than in your photos so i'm not positive
- Ben
10cm aprox. you can View the STL directly from instructables and use the ruler.
https://aip.scitation.org/doi/10.1063/1.4989995
Fun project and a cool little nerdy conversation piece. Added UV LEDs for effect.
Hi, It's very nice case for Levitator. Can you share stl files?
The holes in the back of the back plate are meant for momentary switches to adjust the height of
the levitated objects
https://www.amazon.com/gp/product/B07KX24WWS/ref=ppx_yo_dt_b_asin_title_o08_s00?
ie=UTF8&th=1
hai,Have a tutorial? I want to make it,this is so good
Hello, I am using ultraino to create my own ultrasonic levitator, but the model I built with 3DMAX
cannot be imported into ultraino. Can you tell me what the correct import process is like? Thank
you very much.
It would be easier if you use the xml format. Anyway, for importing you need to export into Obj
and have one face per emitter.
I am waiting for your reply
Hi! I'm very new to the world of experiments, but I've been able to follow every step up until the
testing the driver part. Could you please provide me with a more detailed guide from the "test the
Acoustic Levitator: Page 60
driver" step to the "test optimum resonance" step? (urgent) Thank u!
You can skip that part.
I'm looking to make this project with my son for a school science fair. One question (which was
partially answered by another comment) is whether there is a difference between using the
"transmitter" vs "receiver" transducers. On the EE StackExchange site, I found a specific answer:
"There is a difference in the impedance of the components at the exact frequency for which it was
designed. Low impedance on the transmitter allows it to be driven at high power, high
impedance on the receiver turns the received signals into a high voltage."
This explanation suggests that the levitator might work better if constructed entirely from
"transmitters". What do you think?
For a quick test I recommend building the quick one in step 26? Or perhaps adding a driver like in
the attached image. For those simple leviators (2 emitters) I desoldered the two from a HC-SR04
(heatgun works quite well), I did not "feel" any difference between the emitter or the receiver. HC-
SR04 were available for 1$.
Apologize for the language, you can pass the PDF through translate.
OK, thanks. I'll try it out. Maybe I'll build one with only transmitters and one with only receivers. I'll
let you know if I discover anything interesting.
(Don't worry about the language -- your English is better than my Spanish!)
I was thinking about the polarity problem you found with the transducers. I wonder if the receivers
are wired with opposite polarity to the transmitters.
I designed my own transducer fixture because the stl file was low resolution and I wanted to
change the geometry for my project. I made a custom heat sink with fans and machined the
enclosure on my home made CNC router. I 3D printed some other components and added some
custom features.
I just ordered and assembed the kit. I am not getting output at driver end.it seems arduino is not
programmed
Code ??
Thank you
Hi there, I have completed the experiment. I can levitate small pieces of paper.
But It is not levitating the liquid (water) drops. I even tried by increasing the voltage input from 9V
to 12V and then 18V. Could anyone please tell me what can be the reason? or what should I do?
That would be a great help !!
did you mark the polarity of the transducers? What happens with the droplet? It bursts? it just
drops? it does not deatach from the needle?
Thanks for replying!!
I did mark the polarity of all the transducers. The droplet (water) does not detach from the needle
60% of the time. And when it does, it drops.
What could be the problem?
have you tried with a bent needle with the tip removed? One way of measuring if the levitator
performs well is to put one of those silica transparent beads that come in a paper bag to keep
things dry (the smallest you can find), you would need around 9 to 13v to levitate it. Then once
that it is there, you can reduce the voltage until it drops. In a good levitator it will drop at 7v or
lower, if you need too much voltage then either some polarities are wrong, or they are not flat in
their sockets.
Hi there
I love the experiment, but i had a doubt
When you lift and descend the particles, are you variating the voltage provided to transducers, or
what is the explanation behind it? Thanks
Hi,
Hi my friends,
I am really gratefull to you to share your experience. I have a problem. I hope you can help me.
I used the program for 2 transducers with arduino mega. i connected the A0-A4 to the l298n but i
do not measure 6v. Rather, i measure 0.16 Volt. What could be the problem? I also loaded
tinylev.ino and made the connections but still i measure 0.17 V. Would you help me pls?
The sketch is prepared for Uno or Nano.
Thank you for reply. Do you have any information how to modify to Mega?