Unlock new career opportunities and become data fluent today! Use my link bit.ly/3AWwoJg and check out the first chapter of any DataCamp course for FREE! If you enjoyed the video, please subscribe and check out some of my other cool projects!
This is really cool! I have a thought though. I wonder if it would be easier to control the fluid if you added a small amount of vegetable glycerin to the water. You have to be sure it will not react with the highlighter (which I doubt but safety is important with chemicals) I'm also unsure if it would gum up the pumps but there are other possibilities for thickeners.
It's amazing that you can replicate it but what I'd like to know ... how would you improve on the concept? I worked with a laser driven 2D waterfall concept (as a VJ, back in the 00's) and have since been wondering, as have many people, how a true 3D display in a large volume could be displayed. I'm a science enthusiast but I'm just that, just a fan. I do wonder, though; could laser interference be able to project voxels? Could you make a voxel by interfering laser bundles? Know what I mean?
Fluid mechanist here. I think you should look up how an inkjet printer works, because that would be a better design. Instead of trying to produce droplets on demand, just produce droplets consistently (like with a piddler design, that's how an inkjet printer does it). That's significantly easier. Then, you just need a fast baffle system to let droplets through to the display region or fall back on a collector pipe (not sure how easy that will be). This will make a binary image, line by line, which is kinda what you need for a display. The refresh rate will still be low, as that only depends on the fall time of the droplet; i.e. height and initial velocity. You can create higher speed jets (as long as the Reynolds number is below 2000 they will form laminar jets and repeatable droplets). Higher speed jets will allow for increased refresh rates. Anyways, that's my two cents!
This was interesting, I came across 2 types one that uses the heat or a resistor to expand the ink, and the second one uses piezo, the resistor looks way too complicated, I will try the piezo one, thanks
ruclips.net/video/-DckWNwE7R4/видео.html - A video from theengineerguy has a great video on this topic of droplets, piezoelectric or resistor type seems like what industry uses to create reliable droplets. I feel with more development with this project it can look much more impressive!
Have a box of PLA almost right parts. The box sits under the work bench I take my parts to in order to clean them up and inspect them. To think at one point I thought brim and support material would have filled that box faster than parts that failed in the design phase for whatever reason.
@@3DprintedLife Now that's what I call "dedication to design proof!" I actually keep many failures, even some spectacular ones, as reference for what went wrong. I'm guilty of attempting a few ill-advised "stupid printer tricks".
Try adding a cell phone vibrator to shake the valves. The vibration can decrease the surface tensions ability to stick to the surface. This would likely allow you to get better drop control. This video shows a setup were the water drops change from static to dynamic friction. The vibration would keep the system in dynamic friction and would liked remove many compensation needs.
Multiple drop timing can probably be solved by having multiple valves in a row, all connected to a single nozzle. Then you can step through the different valves for a single horizontal position and drop the water out the same singular nozzle.
a nozzle cut at an angle will help drops detach (like a needle). A demultiplexer using SPI would allow you to run up to 10mhz which is much faster than any solenoid. This would also take all the load off the mcu since it would only be sending out an SPI stream. I would precalculate the droplets using a script on the pc and only send a binary on/off to each nozzle. Run a row loop using a timer (at least 1/2 the max solenoid freq but less is better) (1 row = 1 "packet") nested in a frame loop (1 complete image worth of rows) on the controller and then you can send a very short row packet. 1010 would actuate nozzle 1 and 3 for instance. each packet is one row and if solenoid can do 6 drops per second your loop should have 3 steps just like Nyquest frequency on an Oscope. The frame loop can be used to control the UV leds and to group rows into images. You can either flash them 1 per row to animate drops or 1 per frame to animate an image. A demultiplexer using SPI would allow you to output rows up to 10mhz which is much faster than any solenoid. This would also take all the load off the mcu since it would only be sending out an SPI stream. As the loop runs it will take 1 row of pixels and send them to the demux over SPI. Once an entire image of rows has been sent the frame loop increments and sends the first row of the next image. By incrementing the row loop at 1/2 the speed of the solenoids, you can make sure the solenoids don't miss ant pixels if there are any mechanical timing issues.
Wow. That's a tremendous amount of work. I max out at like 18 hours for my circuit bending and building projects, after that I get distracted by a new idea. I definitely respect your dedication
You should add a flyback diode to each of the solenoids, as this will protect your transistors and decrease the time the solenoids return to idle state.
I think there's a better way than trying to create drops with valves. Instead create multiple streams of water falling down, with laminar flow. Then use flaps operated by solenoids to interrupt the streams. They wouldn't stop the flow, but they'd divert it into a trough to create gaps in the flow. It's kind of how those fountains work where you have water "worms" jumping from one place to another.
Need a valve that in the retract state draws fluid into a chamber through a one way valve(like a simple membrane valve), and 'sucks' a similar output valve closed. Then when it fires the fill valve is pushed closed and a measured volume of fluid is squeezed out of the output valve directly out of the nozzle. Sort of like how fog machine pumps work. suck, squirt, suck, squirt... Also, take some of those transistors and break out the LEDs into illumination planes. You can then follow a drop down with lights and once its far enough away, drip another drop into an illumination plane above it. Adding a small re-circulation pump would save having to fill the top hopper by hand, and allow it to empty into the lower catch pan afterwards avoiding spills. Add some reticulated open cell black foam or a honeycomb grating to avoid splash back too. There is a comment lower down about using tonic water that glows blueish, which might make for less pucker factor when dealing with the working fluid. Also also, bread boarding transistors is exactly the correct way to control coils. A true maker should not expect the MCU to do everything for them. And besides, coils have inductive kickback. Much easier to handle that with a proper control circuit off chip than find something with a snubber large enough for a range of applications inside the IC. Bread boards are nothing to be ashamed of or disappointed by. Anyone who says otherwise can come try to change my 15 years in theme park animatronics mind. But they might end up disappointed ;)
Each seperate route from the hopper through the pipe and out the nozzles will have different pressure drops. As fluids take the easiest route you will find some lines get more flow than others which can account for the differences in consistency. Adding a small manual valve after the hopper allows you to add a tiny bit of back pressure to equalise all lines.
Nice work! The industrial printer we use at work uses piezo actuators to emit dots of ink. The ink would drip from the nozzles, but something called a meniscus system holds the ink up. This is a vacuum used to hold the ink in a suspended position. Then the piezo has just enough force to push a droplet out. Your valve system is using a seal to hold and gravity to emit. Maybe you could modify your valve design to use the solenoid plunger to overcome a little vacuum. This way you might have a faster reaction time. The volume of the plunger can also be changed to adjust the drop size.
@@bltzcstrnx that can be compensated for with a 3D printed cap on the end of the injector that has an internal volume that catches the spray and displaces enough water to release a single drop, while at the same time priming the internal volume with another charge of water. This is more practical with automotive fuel injectors rather than conventional solenoids because they are designed to make precise volumes that can be designed for and adjusted through software.
@@danratsnapnames pressure can be achieved with a generic fuel pump and the addition of a minor amount of light oil would provide for the lubrication. However the potential issues from lack of lubrication of fuel injectors are not as much of a problem in this case as compared to their intended use. Now potentially he could avoid some or all of the stated issues by using some more obscure water injectors from steam assisted engines, but that brings up the cost point, where fuel injectors are common and fairly expensive while still being accurate and easily controllable through the same use of a microprocessor and power supply.
It is incredible how you fixed problems I honestly thought were way too finicky for a cheap/simple solution. Can't wait to see what the result is after a few more months of refinement!
Thanks, I'm excited for it too! I've been able to get way more consistent and clean drops during the tail end of my preliminary testing, I'm hoping after some more work I can achieve results that clean for all 8 (and eventually 64) valves!
It might be worth reaching out to thunderf00t about this project, he recently went through a whole ordeal to create a consistent microjet of water, whilst you are looking specifically for droplets, it might be that he could offer some insight into fluid dynamics that would help here, idk, this is a cool project anyways, can't wait to see a full volumetric version :P
Keep trying and never give up!!! You have a lot of potential, and once you learn what it takes to finally get your stroboscope display to actually work; you will have achieved something that will prove invaluable in the future... Awesome video-Thank you!
My Dad already solved this problem with a 3/5 Circled Plain on/off Valve except having it spin in a 360 Degree continuously moving motion. The water pulsed at a very hi rate but being motor driven, it didn't last long. What he used his water drop display for was to watch a projected VHS movie on a Non-Existant Screen - it Worked. Bestest Holloween Scary Movie Trick of the Year, I could watch that way of viewing a movie - for Hours.
I am designing an ultra high performance solenoid driver. It has boot strapping for 2x turn on voltage, peak and hold for low turn off energy, and a zenner diode for even faster turn offs. For solenoids this small you could even just use a boost converter and bump the turn on voltage way up.
I think you can also use electronic fuel injectors and a fuel pump so the stream can be pressurized and more precise thereby you can increase your refresh rate. You'll just need to refocuse your spray into a narrow stream by adding short unsharpened injecton needles at the tips
Silanized nozzle tips will allow for more predictable droplet detachment. Alternately, you can invert the process to create images using voids with interruptions in the stream. Distilled water will help the system last longer.
Few suggestions to make calibration of drops more consistent. 1.) You'll want some sort of pressure regulator for your water source to ensure you get consistent pressure. 2.) You'll also want to ensure your source provides enough hydraulic power. Meaning even though you have consistent pressure, you'll want to provide as much flow as well. There's two reasons for keeping both pressure and flow consistent. When you're calibrating droppers one at a time it doesn't take into account the fact that in the setup you may be running all the dropper simultaneously. Which will change your input pressure and flow for other nozzles. And as your reservoir depletes your input pressure will drop. Few cheap solutions.. Hook your water source to a water line in your house. Or make your water source bigger, like a home depot bucket (equivalent to using a bigger capacitor) For sealing, if you go with o-rings just make sure you're not over squeezing. A thou worth of squeeze is sufficient. Any more and you're over stressing and possibly warping your dropper assemblies thereby introducing a leak path.
Just had a quick idea and haven't checked if anyone else suggested it. What if you used some little speakers with plastic cones and a couple of check valves, reed type maybe to produce the drops. This should allow super fast drop and control of drop size. Make a little cavity and have the speaker pull a small amount of water into the cavity (cone in) and then shoot it out (cone out). You could try different voltages and polarities to modulate the drop size and timing. Thanks for the video.
As cool as it would be to have a fast refresh rate, which i suppose could be increased by making the drops higher velocity, I'm pretty sure the original commercial was just shot at a low frame rate and then sped up in post. More like stop motion rather than being done in real time.
Cool! Would make a brilliant spectrum analyser, make it music sensitive, convert it to 3d with more nozzles=more resolution! Even different colours could be possible with somekind of RGB mixing? The possibilities are endless.
It looks easy at the beginning. But it turns out a lot more difficult than ever expected. But at this time you realize, you already put a lot of money, time and work in the project, so you have to go on.
Might be worth adding pressure to the water feed so it’s more consistent. The mass of your water changes as you use up the water, hence the pressure will drop in a gravity feed (unless you keep it topped off).
Hell yeah dude so glad someone is working on future concepts like actual Holograms, amazing work man I've had similar ideas after seeing that Gatorade ad but you're out here doin the lords work boii keep it up 🔥🔥🔥
invert the display let the water run. this might be better.. also drill & tap the back of the solenoids and add hard stop limit the travel to a tight gap.. another option is use some fuel injectors.
I think, all of the selonoids may not be the same precision. You can use cheap gasoline enjectors and you should use a pump and common rail to maintain exactly the same pressure.
@@MetalheadAndNerd From my research, they certainly do, but I believe that is because it is pressurized due to using an orifice nozzle which I am assuming can be removed.
@@MetalheadAndNerd with high pressure, yes they produce mist. If nozlle replaced with tall needle type one and the pressure is calibrated for lower level they do not produce fine mist.
No sure if it's been mentioned elsewhere, but Mineral Oil could be another suitable fluid for this project I've also seen similar setups (although less technical) that used fishing line to guide the droplets down. Also, a recirculation pump to send the fluid back to the beginning could be handy for longer runtimes/continuous use
You may add a water pump for more speedy water out for more frame per second. And upgrade your lighting system for faster, colorful and filled projection on water drop
For your exit tube you should look into Thunderf00t's videos about a glass blowing kit for metallic water production. The nozzle he produces from a syringe is capable of dispensing incredibly tiny droplets. Equivalent nozzles from lab suppliers are extremely costly so his trick to produce them while it seems to take a little practice is kind of remarkable for how simple it is.
You should definitely use a webcam (or some other method) to be able to automatically calibrate each solenoid. You could also extend it to measure variation of solenoids which could help automate your testing of new valves you design.
The difference between a solenoid and a pump is very small. A single sheet of flexible material with a couple of cuts to make the valves and diaphragm would give you a fixed volume (one drop) and remove feed pressure problems. Also, if you use a bridge driver you can close the valve faster. When I looked at doing this it was a long long time ago and I used counter chips and loaded each with their time and simply gated them to count exactly synchronous instead of software switching them (run time was an issue back then)
You are speaking like not producing a custom PCB for prototyping is a shame. It is not! Every professional hw developer does it like that. Great video! Greets from an hw-engineer.
Instead of making valves spit water to make pixels, try making them constantly send a stream of water, and close them briefly when you need a pixel. Basically, inverting your idea may help with consistency.
Check out PCbarnun’s video. Kind of takes the same concept, but instead of timing the droplets for each frame the droplets are consistent and he uses a projector to color each droplet as it falls.
You might make nozzles similar to ink jets. Instead of heat vaporizing solvent, you could make miniature diaphragm pumps. The actuator could be similar to aquarium fish tank pumps. Or if you wanted to go ultra precise you could have an inkjet style head that uses a triggered spark gap to generate the “bubble”.
Great work, thanks for sharing. If the drops are not identical in size, it could be that they will fall at different speeds due to the air resistance, which would again give deteriorate the final picture. That can be tested. An amendment could be either to evacuate most of the air (requires a chamber) or easier, to create a laminar flow of air in the direction of the water falling. Maybe this could be achieved with a large fan overhead?
That is true, but for these distances and variations in drop size, that effect would add just a few mm of error so probably not worth trying to correct unless the dispensing is absolutely perfectly consistent. But at that point all the drops would probably be the same size anyway!
Very cool. Have you considered putting a laser under each channel and flash it instead of using a strobe. With a prism mixer you could do RGB dots. You can measure drop position (instant when it leaves the nozzle at least) instead of controlling the droppers as precisely. You might even be able to just have a single solenoid or a speaker. You will have to worry about what happens when the drop hits the laser at the bottom. Also the drop velocity will be a problem you may have to take some measures to deal with. It may have to be very tall to get the drops up to terminal velocity or use air to accelerate the drops or even do it in a partial vacuum with oil. It would be a tradeoff between plumbing and mecatronic vs optics.
Offload the processing to a PC or a raspberry pi. You can then transfer timing data on the serial port and make the Arduino (or whatever uController) handle the valve. The other way would be to get a powerful uController like the esp32. You could make that processing task run on one core and then the timing critical control on the other core. In any case, nice work!
(Español) Mis felicitaciones por el empeño invertido en el proyecto, espero consigas mejorar el prototipo y conseguir tu objetivo. Mucha suerte y éxito con ello. (English) My congratulations for the effort invested in the project, I hope you can improve the prototype and achieve your goal. Good luck and success with it.
Back EMF diodes for coil circuits i.c.w. transistors are not optional but necessary! Not only does back EMF destroy your transistors but most importantly in your situation eliminating it with a propper diode will fluently flow the water drops! Creating a real smiley :)
One of the coolest stroboscopic effects I have seen recently was from Childish Gambinos performance on SNL of "This is America" this was an in camera trick of course timing the lasers with the frame rate but it was still incredible.
Pretty neat....yea, I think you need a much smaller valve...those must be super slow, and not accurate... someone mentioned 'fuel injectors'...some variation of that might be responsive enough.... those use high pressure too... just a thought...
This reminds me of makin a holograph projection. It requires a projector. It requires a projection screen. Possibly projection could be in "mid air" by oscillating the air molecules to such a state they reflect the projection
I have a suggestion. Do it the "klipper" way. I suspect you are familiar with klipper controller software for 3d printers. Don't send the unadjusted signal to the controller. Send the final adjusted/calibrated signal. That way you can preprocess your file and change the calibration externally. Sure you will have to maintain your calibration externally as well. But It sounds more flexible to me.
Would be a cool future project to build a automatic back scratcher, would probably be able to use similar motors and methods to your other videos to make it
I would trigger those solenoids a little more definitively with a mosfet. Small logic level mosfets should give a rather sharp rising edge id also ditch freewheeling diodes for a snubbing circuit so they release faster and give you a bit more consistency
Kinda feel like this would be better and easier using Silica bead. You can get really small ones which are used for Wells, Roadway reflection( mixes with paints) and other things and a sieve to make sure they are all the same size all you need is a proper opening and a rotating stopper. Matter fact, Vibrating plate to drop rows would work even better, Row of beads would automatically form as they are all the same size then all you need is quick open controllable gate and someething to keep the hopper full. Water just has far to many issues for something like this.
you can also solve the multiple drop issue with addressable led strips instead of on/off strips.. you can even change colors. but not sure if the UV will work out though.. just a thought..
Good job!!! As always XD. I thought that if instead of dropping the drop of water you shot it you would have a more linear acceleration. This being that the drop has less time to accelerate. However the firmware must be much faster. To shoot the drop you can do as a mini syringe always with solenoids, in my opinion it would be much better.
half-passing projection screen, polarized so that polarized light stays holographically only on the half-passing surface, but you can see the background, like in sunglasses, dlp
if you have dark on the sunglasses behind, you get a mirror, if you put bright light on the back of the sunglasses, you see the background clearly, plus whatever is projected on the polarized sunglasses projector screen
If you ever plan on making a newer version, have a look at the micro valves from Fritz Gyger AG. They are the some of the fastest and most accurate ones out there.
Realy cool project! I had a look at your code on github. To get a higher framerate you should read the entire animation into memory at startup instead of reading 1 frame at a time over the serial port. You should also preprocess all of the kinematics either on the PC or at startup time, so that you're not doing any kinematic calculations while displaying the animation. Let me know if you need a hand with this, I'd be happy to help. Keen to see where this goes!
I considered that, but ended up streaming each frame as my mcu only has 192k of RAM, and once I go to 64 valves it would not take too long of a routine to eat up the memory. Streaming each frame is more complex but less limiting. Plus it would let me stream real time patterns, like if I used a depth camera and wanted to display what it was scanning in real time. Pre-processing the kinematics is definitely a good idea though haha
@@3DprintedLife OK, fair enough! It kills me that this project is so amazing and yet is hamstrung to 3 fps because of delays in serial communication :). 192K is a lot of RAM to play with! Arduinos only have 2K. I'm confident we could find a way to fit animations on the order of 100-200 frames in RAM, even with 64 valves. Beyond that, we could come up with a "raw" serial protocol so that it just reads bytes from serial and sticks them in memory without having to do any parsing, which would speed things up a lot. Basically offloading as much processing as possible onto the PC so that the microcontroller can spend all of its time driving the solenoid valves. Do you know what baud rate it's running at? You might get a substantial improvement just from increasing the baud rate!
You said you're processing the csv and using the kinematic equations to determine the valve timing. Why not pre-process the input file into a stream of valve timing sequences that are buffered? Perhaps the latency difference is negligible, but it's not 0, and it would be relatively easy to do. Additionally, it's probably worth representing the user defined input files as a collection of bitmaps(array of pixel values) rather than heights of drops from nozzles.
that looks so cool. good luck with that massive 3d one. also doesn't the feather support wifi so you could do a local host and get it to download the csv and then run it off local memory maybe allowing it to be faster? and i dont know if its different for solenoids but i dont know if you need a 'flyback' diode when dealing with inductive loads like that. like to clarify im really not an expert. Best of luck for the next one!
hey, have you thought about using a solenoid pump? you can pulse them to pump a specific amount of fluid , they use those in coffee machines for example
Huh that's a good idea, it may take a little more tuning but that would eliminate the performance variation with back-pressure that I have now. Just a matter of keeping the price down, since my next version is going 3D and will have 64 of these valves!
Unlock new career opportunities and become data fluent today! Use my link bit.ly/3AWwoJg and check out the first chapter of any DataCamp course for FREE!
If you enjoyed the video, please subscribe and check out some of my other cool projects!
This is really cool. Thank you for making my day!!!
you should ty this with pinch valves... made a shot dispensing water cooler with them
Please install fly back diodes for your solenoids, or else you might damage you transistors, or more ....
This is really cool! I have a thought though.
I wonder if it would be easier to control the fluid if you added a small amount of vegetable glycerin to the water.
You have to be sure it will not react with the highlighter (which I doubt but safety is important with chemicals)
I'm also unsure if it would gum up the pumps but there are other possibilities for thickeners.
It's amazing that you can replicate it but what I'd like to know ... how would you improve on the concept? I worked with a laser driven 2D waterfall concept (as a VJ, back in the 00's) and have since been wondering, as have many people, how a true 3D display in a large volume could be displayed.
I'm a science enthusiast but I'm just that, just a fan.
I do wonder, though; could laser interference be able to project voxels?
Could you make a voxel by interfering laser bundles? Know what I mean?
Fluid mechanist here. I think you should look up how an inkjet printer works, because that would be a better design. Instead of trying to produce droplets on demand, just produce droplets consistently (like with a piddler design, that's how an inkjet printer does it).
That's significantly easier. Then, you just need a fast baffle system to let droplets through to the display region or fall back on a collector pipe (not sure how easy that will be). This will make a binary image, line by line, which is kinda what you need for a display.
The refresh rate will still be low, as that only depends on the fall time of the droplet; i.e. height and initial velocity. You can create higher speed jets (as long as the Reynolds number is below 2000 they will form laminar jets and repeatable droplets). Higher speed jets will allow for increased refresh rates.
Anyways, that's my two cents!
This was interesting, I came across 2 types one that uses the heat or a resistor to expand the ink, and the second one uses piezo, the resistor looks way too complicated, I will try the piezo one, thanks
ruclips.net/video/-DckWNwE7R4/видео.html - A video from theengineerguy has a great video on this topic of droplets, piezoelectric or resistor type seems like what industry uses to create reliable droplets. I feel with more development with this project it can look much more impressive!
but then how would you light the needed points?
a wise 2 cents equal 4cents at least
@@2wen98Same way as is already being done, this is talking about how to produce the falling drops, the rest of the system can still work the same.
So that's why I had trouble getting a couple of those solenoid valves for my next project...
I'll trade, one solenoid for one piece of soggy toast
That one there was a violation and personally I wouldn't have it
same here joel
"this line contains the valve index"
My brain picturing a VR headset in the line of text
Same thought
Hah, my ears perked up when I heard this and then found your comment
Now I don’t feel so bad about having dozens of “almost right” prototype iterations lying around.
I know what you mean man lmao.
You should see my bag full of trash solenoid heads. There must be at least 100...and I don't know why I kept them all!
Have a box of PLA almost right parts. The box sits under the work bench I take my parts to in order to clean them up and inspect them. To think at one point I thought brim and support material would have filled that box faster than parts that failed in the design phase for whatever reason.
@@eideticex I hope you know you can easily recycle ♻️ them and make PLA filament again.
@@3DprintedLife Now that's what I call "dedication to design proof!"
I actually keep many failures, even some spectacular ones, as reference for what went wrong. I'm guilty of attempting a few ill-advised "stupid printer tricks".
Try adding a cell phone vibrator to shake the valves. The vibration can decrease the surface tensions ability to stick to the surface. This would likely allow you to get better drop control. This video shows a setup were the water drops change from static to dynamic friction. The vibration would keep the system in dynamic friction and would liked remove many compensation needs.
Multiple drop timing can probably be solved by having multiple valves in a row, all connected to a single nozzle. Then you can step through the different valves for a single horizontal position and drop the water out the same singular nozzle.
a nozzle cut at an angle will help drops detach (like a needle). A demultiplexer using SPI would allow you to run up to 10mhz which is much faster than any solenoid. This would also take all the load off the mcu since it would only be sending out an SPI stream.
I would precalculate the droplets using a script on the pc and only send a binary on/off to each nozzle. Run a row loop using a timer (at least 1/2 the max solenoid freq but less is better) (1 row = 1 "packet") nested in a frame loop (1 complete image worth of rows) on the controller and then you can send a very short row packet. 1010 would actuate nozzle 1 and 3 for instance. each packet is one row and if solenoid can do 6 drops per second your loop should have 3 steps just like Nyquest frequency on an Oscope.
The frame loop can be used to control the UV leds and to group rows into images. You can either flash them 1 per row to animate drops or 1 per frame to animate an image.
A demultiplexer using SPI would allow you to output rows up to 10mhz which is much faster than any solenoid. This would also take all the load off the mcu since it would only be sending out an SPI stream. As the loop runs it will take 1 row of pixels and send them to the demux over SPI. Once an entire image of rows has been sent the frame loop increments and sends the first row of the next image. By incrementing the row loop at 1/2 the speed of the solenoids, you can make sure the solenoids don't miss ant pixels if there are any mechanical timing issues.
Brilliant.
@@AlexKivikoski lol I just realised when I moved the first sentence of the last paragraph it got duplicated. I hope this helps though.
Wow. That's a tremendous amount of work. I max out at like 18 hours for my circuit bending and building projects, after that I get distracted by a new idea. I definitely respect your dedication
I always appreciate it when people show just how hard these things can be and they really do take time and patience.
absolutely love your tenacity and willingness to scrap old work in favor of a better/simpler solution
You should add a flyback diode to each of the solenoids, as this will protect your transistors and decrease the time the solenoids return to idle state.
Would slow down the closing of the solenoids though.
A small LED beamer that shines light exactly where the drops are could help with higher framerates
They could use those hand fulls of transistors and break out the LEDs to make illumination planes or regions by lighting individual LEDs or pairs.
but then whats the point of water drops?
I suggest trying o-rings to seal the luer lock and investigate different needle lengths.
I think there's a better way than trying to create drops with valves. Instead create multiple streams of water falling down, with laminar flow. Then use flaps operated by solenoids to interrupt the streams. They wouldn't stop the flow, but they'd divert it into a trough to create gaps in the flow.
It's kind of how those fountains work where you have water "worms" jumping from one place to another.
I really liked your sharing of the nozzle design modifications and performance tests. Amazing work!
Need a valve that in the retract state draws fluid into a chamber through a one way valve(like a simple membrane valve), and 'sucks' a similar output valve closed. Then when it fires the fill valve is pushed closed and a measured volume of fluid is squeezed out of the output valve directly out of the nozzle. Sort of like how fog machine pumps work. suck, squirt, suck, squirt...
Also, take some of those transistors and break out the LEDs into illumination planes. You can then follow a drop down with lights and once its far enough away, drip another drop into an illumination plane above it. Adding a small re-circulation pump would save having to fill the top hopper by hand, and allow it to empty into the lower catch pan afterwards avoiding spills. Add some reticulated open cell black foam or a honeycomb grating to avoid splash back too. There is a comment lower down about using tonic water that glows blueish, which might make for less pucker factor when dealing with the working fluid.
Also also, bread boarding transistors is exactly the correct way to control coils. A true maker should not expect the MCU to do everything for them. And besides, coils have inductive kickback. Much easier to handle that with a proper control circuit off chip than find something with a snubber large enough for a range of applications inside the IC. Bread boards are nothing to be ashamed of or disappointed by. Anyone who says otherwise can come try to change my 15 years in theme park animatronics mind. But they might end up disappointed ;)
Each seperate route from the hopper through the pipe and out the nozzles will have different pressure drops. As fluids take the easiest route you will find some lines get more flow than others which can account for the differences in consistency. Adding a small manual valve after the hopper allows you to add a tiny bit of back pressure to equalise all lines.
Nice work!
The industrial printer we use at work uses piezo actuators to emit dots of ink. The ink would drip from the nozzles, but something called a meniscus system holds the ink up. This is a vacuum used to hold the ink in a suspended position. Then the piezo has just enough force to push a droplet out.
Your valve system is using a seal to hold and gravity to emit. Maybe you could modify your valve design to use the solenoid plunger to overcome a little vacuum. This way you might have a faster reaction time. The volume of the plunger can also be changed to adjust the drop size.
Automotive fuel injectors might be a better option than the solenoid valves.
Automotive fuel injector sprays instead of drops.
@@bltzcstrnx that can be compensated for with a 3D printed cap on the end of the injector that has an internal volume that catches the spray and displaces enough water to release a single drop, while at the same time priming the internal volume with another charge of water. This is more practical with automotive fuel injectors rather than conventional solenoids because they are designed to make precise volumes that can be designed for and adjusted through software.
automotive fuel injectors also needs allot of pressure to operate and lubrication. fuel is not water. and fuel is lubricated and water is a solvent.
@@danratsnapnames pressure can be achieved with a generic fuel pump and the addition of a minor amount of light oil would provide for the lubrication. However the potential issues from lack of lubrication of fuel injectors are not as much of a problem in this case as compared to their intended use. Now potentially he could avoid some or all of the stated issues by using some more obscure water injectors from steam assisted engines, but that brings up the cost point, where fuel injectors are common and fairly expensive while still being accurate and easily controllable through the same use of a microprocessor and power supply.
@@danratsnapnames ethanol fuel injectors don't need the lubrication.
Thank you for documenting and sharing your unfinished build. I'm impressed by how many iterations youhave gone through, very interesting watch.
Excellent engineering!
Thank ya!
Exactly! And that's why I subscribed :)
It is incredible how you fixed problems I honestly thought were way too finicky for a cheap/simple solution. Can't wait to see what the result is after a few more months of refinement!
Thanks, I'm excited for it too! I've been able to get way more consistent and clean drops during the tail end of my preliminary testing, I'm hoping after some more work I can achieve results that clean for all 8 (and eventually 64) valves!
It might be worth reaching out to thunderf00t about this project, he recently went through a whole ordeal to create a consistent microjet of water, whilst you are looking specifically for droplets, it might be that he could offer some insight into fluid dynamics that would help here, idk, this is a cool project anyways, can't wait to see a full volumetric version :P
Keep trying and never give up!!! You have a lot of potential, and once you learn what it takes to finally get your stroboscope display to actually work; you will have achieved something that will prove invaluable in the future... Awesome video-Thank you!
My Dad already solved this problem with a 3/5 Circled Plain on/off Valve except having it spin in a 360 Degree continuously moving motion.
The water pulsed at a very hi rate but being motor driven, it didn't last long.
What he used his water drop display for was to watch a projected VHS movie on a Non-Existant Screen - it Worked. Bestest Holloween Scary Movie Trick of the Year, I could watch that way of viewing a movie - for Hours.
I think you could just use a reamer on your 3D prints to get a smooth and consistent exit tube. Awesome project! :)
Awesome work! That's real dedication getting those nozzles right. Well done
I am designing an ultra high performance solenoid driver. It has boot strapping for 2x turn on voltage, peak and hold for low turn off energy, and a zenner diode for even faster turn offs. For solenoids this small you could even just use a boost converter and bump the turn on voltage way up.
This is really cool. I can see a lot of promise in this kind of display. Can't wait to see the next one
Really does motivate me for my projects, reminds me that every cool project has hours of failure and troubleshooting, thank you
This man is a legend! He made science fiction dreams a reality!
I think you can also use electronic fuel injectors and a fuel pump so the stream can be pressurized and more precise thereby you can increase your refresh rate. You'll just need to refocuse your spray into a narrow stream by adding short unsharpened injecton needles at the tips
It's nice to see a true representation of success, it takes hundreds of failures first!
your channel is amazing!!! it should have at list two million subs , keep up the good work and youll probably become a massive youtuber in no time!
Great to see your engineering progress over the years since the 2Up days. I always look forward to glimpses of your latest projects.
I've definitely learned a ton since then, though there are still a few people out there running a 3uP! Not sure how 😁
Silanized nozzle tips will allow for more predictable droplet detachment. Alternately, you can invert the process to create images using voids with interruptions in the stream. Distilled water will help the system last longer.
Few suggestions to make calibration of drops more consistent.
1.) You'll want some sort of pressure regulator for your water source to ensure you get consistent pressure.
2.) You'll also want to ensure your source provides enough hydraulic power. Meaning even though you have consistent pressure, you'll want to provide as much flow as well.
There's two reasons for keeping both pressure and flow consistent. When you're calibrating droppers one at a time it doesn't take into account the fact that in the setup you may be running all the dropper simultaneously. Which will change your input pressure and flow for other nozzles. And as your reservoir depletes your input pressure will drop.
Few cheap solutions.. Hook your water source to a water line in your house. Or make your water source bigger, like a home depot bucket (equivalent to using a bigger capacitor)
For sealing, if you go with o-rings just make sure you're not over squeezing. A thou worth of squeeze is sufficient. Any more and you're over stressing and possibly warping your dropper assemblies thereby introducing a leak path.
Just had a quick idea and haven't checked if anyone else suggested it.
What if you used some little speakers with plastic cones and a couple of check valves, reed type maybe to produce the drops.
This should allow super fast drop and control of drop size.
Make a little cavity and have the speaker pull a small amount of water into the cavity (cone in) and then shoot it out (cone out).
You could try different voltages and polarities to modulate the drop size and timing.
Thanks for the video.
Dude what a cool project. Love the fluorescent water and the blacklight .
Looks like lasers
I can just imagine that feeling when I show up with my fancy automated volcano to the science fair, and then you show up. :)
As cool as it would be to have a fast refresh rate, which i suppose could be increased by making the drops higher velocity, I'm pretty sure the original commercial was just shot at a low frame rate and then sped up in post. More like stop motion rather than being done in real time.
Cool! Would make a brilliant spectrum analyser, make it music sensitive, convert it to 3d with more nozzles=more resolution! Even different colours could be possible with somekind of RGB mixing?
The possibilities are endless.
It’s so cool you engineered and build this!
Two words for you: Fuel injectors.
Delighted you are having so much fun!
It looks easy at the beginning. But it turns out a lot more difficult than ever expected. But at this time you realize, you already put a lot of money, time and work in the project, so you have to go on.
Might be worth adding pressure to the water feed so it’s more consistent. The mass of your water changes as you use up the water, hence the pressure will drop in a gravity feed (unless you keep it topped off).
Your vids are always top quality 😄
Hell yeah dude so glad someone is working on future concepts like actual Holograms, amazing work man I've had similar ideas after seeing that Gatorade ad but you're out here doin the lords work boii keep it up 🔥🔥🔥
invert the display let the water run. this might be better..
also drill & tap the back of the solenoids and add hard stop limit the travel to a tight gap..
another option is use some fuel injectors.
I think, all of the selonoids may not be the same precision. You can use cheap gasoline enjectors and you should use a pump and common rail to maintain exactly the same pressure.
Fuel injectors are really noisy and irritating
Don't they produce a fine mist?
@@MetalheadAndNerd From my research, they certainly do, but I believe that is because it is pressurized due to using an orifice nozzle which I am assuming can be removed.
@@MetalheadAndNerd with high pressure, yes they produce mist. If nozlle replaced with tall needle type one and the pressure is calibrated for lower level they do not produce fine mist.
No sure if it's been mentioned elsewhere, but Mineral Oil could be another suitable fluid for this project
I've also seen similar setups (although less technical) that used fishing line to guide the droplets down.
Also, a recirculation pump to send the fluid back to the beginning could be handy for longer runtimes/continuous use
You may add a water pump for more speedy water out for more frame per second. And upgrade your lighting system for faster, colorful and filled projection on water drop
For your exit tube you should look into Thunderf00t's videos about a glass blowing kit for metallic water production. The nozzle he produces from a syringe is capable of dispensing incredibly tiny droplets. Equivalent nozzles from lab suppliers are extremely costly so his trick to produce them while it seems to take a little practice is kind of remarkable for how simple it is.
You should definitely use a webcam (or some other method) to be able to automatically calibrate each solenoid. You could also extend it to measure variation of solenoids which could help automate your testing of new valves you design.
the external webcam for calibration seems like a great idea.
The difference between a solenoid and a pump is very small.
A single sheet of flexible material with a couple of cuts to make the valves and diaphragm would give you a fixed volume (one drop) and remove feed pressure problems.
Also, if you use a bridge driver you can close the valve faster.
When I looked at doing this it was a long long time ago and I used counter chips and loaded each with their time and simply gated them to count exactly synchronous instead of software switching them (run time was an issue back then)
You are speaking like not producing a custom PCB for prototyping is a shame. It is not! Every professional hw developer does it like that.
Great video!
Greets from an hw-engineer.
That is true, from breadboard concept design, if everything works well, it is worthy to be made into PCB.
Instead of making valves spit water to make pixels, try making them constantly send a stream of water, and close them briefly when you need a pixel. Basically, inverting your idea may help with consistency.
Check out PCbarnun’s video. Kind of takes the same concept, but instead of timing the droplets for each frame the droplets are consistent and he uses a projector to color each droplet as it falls.
Really nice project, looking forward to v2!
Very cool! Interesting to see the solution in the advertisement scaled down.
You might make nozzles similar to ink jets. Instead of heat vaporizing solvent, you could make miniature diaphragm pumps. The actuator could be similar to aquarium fish tank pumps. Or if you wanted to go ultra precise you could have an inkjet style head that uses a triggered spark gap to generate the “bubble”.
I love to see a follow-up on this project :D
very good idea, nice attempt, do not give up
Great work, thanks for sharing.
If the drops are not identical in size, it could be that they will fall at different speeds due to the air resistance, which would again give deteriorate the final picture. That can be tested. An amendment could be either to evacuate most of the air (requires a chamber) or easier, to create a laminar flow of air in the direction of the water falling. Maybe this could be achieved with a large fan overhead?
That is true, but for these distances and variations in drop size, that effect would add just a few mm of error so probably not worth trying to correct unless the dispensing is absolutely perfectly consistent. But at that point all the drops would probably be the same size anyway!
Very cool. Have you considered putting a laser under each channel and flash it instead of using a strobe. With a prism mixer you could do RGB dots. You can measure drop position (instant when it leaves the nozzle at least) instead of controlling the droppers as precisely. You might even be able to just have a single solenoid or a speaker. You will have to worry about what happens when the drop hits the laser at the bottom. Also the drop velocity will be a problem you may have to take some measures to deal with. It may have to be very tall to get the drops up to terminal velocity or use air to accelerate the drops or even do it in a partial vacuum with oil. It would be a tradeoff between plumbing and mecatronic vs optics.
Offload the processing to a PC or a raspberry pi. You can then transfer timing data on the serial port and make the Arduino (or whatever uController) handle the valve.
The other way would be to get a powerful uController like the esp32. You could make that processing task run on one core and then the timing critical control on the other core.
In any case, nice work!
(Español)
Mis felicitaciones por el empeño invertido en el proyecto, espero consigas mejorar el prototipo y conseguir tu objetivo. Mucha suerte y éxito con ello.
(English)
My congratulations for the effort invested in the project, I hope you can improve the prototype and achieve your goal. Good luck and success with it.
This channel is extremely awesome
Glad you think so!
Don't forget to put a diode for each solenoid to prevent back emf voltage destroying your precious circuitry :)
Good call I won't forget a flyback diode on the full pcb!
Back EMF diodes for coil circuits i.c.w. transistors are not optional but necessary!
Not only does back EMF destroy your transistors but most importantly in your situation eliminating it with a propper diode will fluently flow the water drops!
Creating a real smiley :)
Use a piezoelectric actuator to squeeze water out of a tiny nozzle, similar to how inkjet printers work.
I think this will do the trick and what was used from the original gatorade commercial.
I fully agree with this comment. This was my first thought as well, but I figured I'd check to see if others had the same idea before posting.
One of the coolest stroboscopic effects I have seen recently was from Childish Gambinos performance on SNL of "This is America" this was an in camera trick of course timing the lasers with the frame rate but it was still incredible.
VERY cool project dude!
Very inspirational
Heck yeah, cool original inspiration and cool recreation.
Pretty neat....yea, I think you need a much smaller valve...those must be super slow, and not accurate... someone mentioned 'fuel injectors'...some variation of that might be responsive enough.... those use high pressure too... just a thought...
This reminds me of makin a holograph projection. It requires a projector. It requires a projection screen. Possibly projection could be in "mid air" by oscillating the air molecules to such a state they reflect the projection
Great video. And you also accidentally discovered how Mountain Dew is made. :D
I have a suggestion. Do it the "klipper" way. I suspect you are familiar with klipper controller software for 3d printers. Don't send the unadjusted signal to the controller. Send the final adjusted/calibrated signal. That way you can preprocess your file and change the calibration externally. Sure you will have to maintain your calibration externally as well. But It sounds more flexible to me.
it'd be so cool to make a 2d pendulum wave equivalent with this sort of tech! that'd be awesome
Would be a cool future project to build a automatic back scratcher, would probably be able to use similar motors and methods to your other videos to make it
I would trigger those solenoids a little more definitively with a mosfet. Small logic level mosfets should give a rather sharp rising edge
id also ditch freewheeling diodes for a snubbing circuit so they release faster and give you a bit more consistency
Can't wait to see the next video! Subbed!
Kinda feel like this would be better and easier using Silica bead. You can get really small ones which are used for Wells, Roadway reflection( mixes with paints) and other things and a sieve to make sure they are all the same size all you need is a proper opening and a rotating stopper. Matter fact, Vibrating plate to drop rows would work even better, Row of beads would automatically form as they are all the same size then all you need is quick open controllable gate and someething to keep the hopper full. Water just has far to many issues for something like this.
Love it!
Maybe switch to a custom binary format vs ascii for data transfer. Hope you share future updates!
you can also solve the multiple drop issue with addressable led strips instead of on/off strips.. you can even change colors. but not sure if the UV will work out though.. just a thought..
Good job!!! As always XD. I thought that if instead of dropping the drop of water you shot it you would have a more linear acceleration. This being that the drop has less time to accelerate. However the firmware must be much faster. To shoot the drop you can do as a mini syringe always with solenoids, in my opinion it would be much better.
You have my respect, keep doin your thing man!
Will do!
Dude that is SO cool
half-passing projection screen, polarized so that polarized light stays holographically only on the half-passing surface, but you can see the background, like in sunglasses, dlp
if you have dark on the sunglasses behind, you get a mirror, if you put bright light on the back of the sunglasses, you see the background clearly, plus whatever is projected on the polarized sunglasses projector screen
why dont you just use steam smoke
magnetic spring, opposite polarities against each other
3d printed magnet piston maglev air shocks, for cars and bikes
how about guitar strings vibrating
Adding a little softer resin like Seriya Tech Tenacious would prevent breakage on the nozzles.
If you ever plan on making a newer version, have a look at the micro valves from Fritz Gyger AG. They are the some of the fastest and most accurate ones out there.
Using surface tension to create a relaxed state.. I like it.
🤜🏼🤛🏼🇦🇺🍀🍀🍀🤓
You're a role model!
Realy cool project! I had a look at your code on github. To get a higher framerate you should read the entire animation into memory at startup instead of reading 1 frame at a time over the serial port. You should also preprocess all of the kinematics either on the PC or at startup time, so that you're not doing any kinematic calculations while displaying the animation. Let me know if you need a hand with this, I'd be happy to help. Keen to see where this goes!
I considered that, but ended up streaming each frame as my mcu only has 192k of RAM, and once I go to 64 valves it would not take too long of a routine to eat up the memory. Streaming each frame is more complex but less limiting. Plus it would let me stream real time patterns, like if I used a depth camera and wanted to display what it was scanning in real time. Pre-processing the kinematics is definitely a good idea though haha
@@3DprintedLife OK, fair enough! It kills me that this project is so amazing and yet is hamstrung to 3 fps because of delays in serial communication :). 192K is a lot of RAM to play with! Arduinos only have 2K. I'm confident we could find a way to fit animations on the order of 100-200 frames in RAM, even with 64 valves. Beyond that, we could come up with a "raw" serial protocol so that it just reads bytes from serial and sticks them in memory without having to do any parsing, which would speed things up a lot. Basically offloading as much processing as possible onto the PC so that the microcontroller can spend all of its time driving the solenoid valves. Do you know what baud rate it's running at? You might get a substantial improvement just from increasing the baud rate!
Can’t wait for the 3D version
You said you're processing the csv and using the kinematic equations to determine the valve timing. Why not pre-process the input file into a stream of valve timing sequences that are buffered? Perhaps the latency difference is negligible, but it's not 0, and it would be relatively easy to do. Additionally, it's probably worth representing the user defined input files as a collection of bitmaps(array of pixel values) rather than heights of drops from nozzles.
that looks so cool. good luck with that massive 3d one. also doesn't the feather support wifi so you could do a local host and get it to download the csv and then run it off local memory maybe allowing it to be faster? and i dont know if its different for solenoids but i dont know if you need a 'flyback' diode when dealing with inductive loads like that. like to clarify im really not an expert. Best of luck for the next one!
hey, have you thought about using a solenoid pump? you can pulse them to pump a specific amount of fluid , they use those in coffee machines for example
Huh that's a good idea, it may take a little more tuning but that would eliminate the performance variation with back-pressure that I have now. Just a matter of keeping the price down, since my next version is going 3D and will have 64 of these valves!