Surf’s Up, A Styrofoam Ball Rides The Waves To Create A Volumetric Display

We are big fans of POV displays, particularly ones that move into 3D. To do so, they need to move even faster than their 2D cousins. [danfoisy] built a volumetric display that doesn’t move LEDs or any other digital display through space, or project light onto a moving surface. All that moves here is a bead of styrofoam and does so at up to 1 meter per second. Having low mass certainly helps when trying to hit the brakes, but we’re getting ahead of ourselves.

danfoisy vdatp 3d simulation

[danfoisy] and son built an acoustic levitator kit from [PhysicsGirl] which inspired the youngster’s science fair project on sound. See the video by [PhysicsGirl] for an explanation of levitation in a standing wave. [danfoisy] happened upon a paper in the Journal Nature about a volumetric display that expanded this one-dimensional standing wave into three dimensions. The paper described using a phased array of ultrasonic transducers, each with a 40 kHz waveform.

After reading the paper and determining how to recreate the experiment, [danfoisy] built a 2D simulation and then another in 3D to validate the approach. We are impressed with the level of physics and programming on display, and that the same code carried through to the build.

[danfoisy] didn’t stop with the simulations, designing and building control boards for each 100 x 100 10 x 10 grid of transducers. Each grid is driven by 2 Intel Cyclone FPGAs and all are fed 3D shapes by a Raspberry Pi Zero W. The volume of the display is 100 mm x 100 mm x 145mm and the positioning of the foam ball is accurate down to .01 mm though currently there is considerable distortion in the positioning.

Check out the video after the break to see the process of simulating, designing, and testing the display. There are a number of tips along the way, including how to test for the polarity of the transducers and the use of a Python script to place the grids of transducers and drivers in KiCad.

danfoisy vdatp schematic  danfoisy vdatp board layout

But wait, there’s more. There are 3 watt RGB LEDs at each upper corner of the display volume with PWM control to illuminate the foam ball, adding 7-bits of color information to each voxel. The original paper used this same phased array for haptic feedback and audible sound, but [danfoisy] says implementation of that right now just won’t fly. All the board files and code are on GitHub, so let us know where you take this next.

22 thoughts on “Surf’s Up, A Styrofoam Ball Rides The Waves To Create A Volumetric Display

  1. This may not (yet) be the penultimate improvement of a ultrasonic “mover”, but it’s certainly on that path. Now I need to buy more transducers!

    Regarding the statement: “..accurate down to .01 mm though currently there is considerable distortion in the positioning.” The word accurate should be replaced with resolution, since you imply the accuracy is in fact less than 0.01 mm. It’s like thinking you can save a lot of money by buying something like a 12 bit ADC or DAC that has a linearity error of 4 LSB or more! (Of course, if it’s monotonic, like I suspect this device is, then that’s less bad than if it were non-monotonic). I had lots of arguments at work over this, especially when someone was going to build a 12 bit R-2R DAC using 1% resistors (the resolution of a 12 bit DAC is 1/4096, so figure it out), although, to be “fair”, most resistors match better than there tolerance with today’s manufacturing techniques (but not yet THAT good).

  2. I wonder if one could trap some excitable gas in the pressure zone, or send it “critical” per se, just dense enough to be excited by UV, microwaves, laser, or what have you. Be a lot less momentum to control than even the tiniest speck of styrofoam, and it might be stretched into actual strands etc. Hmmm.

    1. Now there’s a thought. I don’t know much about chemistry but I’d expect the sorts of pressures needed would be high enough that the sound would risk hearing damage, if you could pump out that much pressure from the transducers in the first place.

      If that could be overcome you could be ionizing a noble gas in that pressure zone using a scanning electron beam.

  3. What is the sound pressure level generated in the volume, and in the nearby space where a viewer is? You will need a ultrasonic microphone to measure this but its worth knowing.

  4. I found this to be really informative and I’m so impressed that you were able to build this system on your own! I did a project with a volumetric display where we integrated sensors like what you built from a company called Ultrahaptic. They had their own FPGAs on a custom board and algorithms to control them in software drivers on windows. You really can feel shapes – although it’s a particular sensation that is limited in range, fidelity and tone. Here is a link to the work we did:

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.