Most of us have probably seen a video of a sand drawing table at work, in which a steel ball — magnetically-coupled to a gantry under a layer of sand — lazily draws geometric patterns with utter precision and zen-like calmness. That’s all well and good, but [Mark Rehorst] thinks it can also be interesting to crank up the speed and watch the ball plow through sand just as physics intended. There’s a deeper reason [Mark] is working at this, however. Faster drawing leads to less crisp results, but by how much, exactly? To answer this, [Mark] simply ran his table (which is named The Spice Must Flow) at both fast and slow speeds and documented the results.
These two images show the difference between running the table at 100 mm/s versus 500 mm/s. The slower speed is noticeably crisper, but on the other hand the faster speed completed the pattern in about a fifth of the time. [Mark] says that as the ball aggressively accelerates to reach target speeds, more sand is thrown around over existing lines, which leads to a loss of detail.
Crisper detail, or a faster draw? Which is “better” depends on many things, but it’s pretty clear that [Mark]’s cat finds the fast version more exciting. You can see [Mark]’s table at high speed and the cat’s reaction in the video, embedded below.
Sand plotters are more or less alike in function, but under the table there are all kinds of different approaches. SandBot uses a SCARA-based arm, and you can see the entire mechanism under the table turn in this polar arrangement.
A high speed, high res video is here: https://www.youtube.com/watch?v=TfIEjEmIxBY&list=PLXhpuy8MGC9yrbIOfYheSZ1PJg6MrkSS_
The high speed and acceleration are made possible by using iHSV servomotors to drive the corexy mechanism that moves the magnet. The motors have built in drivers that accept step/direction/enable signals from a Duet WiFi 3D printer controller board. Patterns are generated using Sandify.
Are they real servo motor or just stepper with fancy closed-loop drivers?
you say that as if the two are mutually exclusive. if you add closed-loop to a Stepper, it becomes a stepper-driven servo. Most hobby servos are Spin-driven servos, using a ‘spin motor’ (basic DC brush motor) and precision stall-balance to hold position against a load
They are “real” AC servomotors, not closed loop steppers. https://www.aliexpress.com/i/32969352241.html
I found that NEMA-23 steppers were good up to about 500 mm/sec with 1k acceleration, but were noisy, even with 256:1 ustepping at that speed. I have pushed the table up to 2000 mm/sec with acceleration of 20k. I have no doubt it could go even faster, but my power supplies and drive pulley diameter are limiting the speed and acceleration right now. It’s throwing the sand around, so there’s not much point in going any faster unless you use the mechanism to draw using some other medium (light painting, air brush, etc.)
I’d be waiting for the ball bearing to go flying off into the distance moving at those speeds! You must have a really powerful magnet under the table!
There is a 1″ cube N52 neodymium magnet moving the ball. The bottom of the table is 1/2″ plywood- much thicker than needed- so the next version of the table will have a thinner bottom and an air gap between the magnet and the table to reduce noise. I did manage to throw the ball in a couple experiments when I had acceleration set to 30k, IRIC.
You can see the mechanism running without the table here: https://vimeo.com/422175403
Another test video is here: https://vimeo.com/423704831
I was looking at bigger ones, nema34, and they are not the same: iHSS instead of iHSV, so closed loop stepper.
iHSV are probably brushless DC motor construction, ie much faster speed.
Great work!
That’s great – thanks for sharing!
I wonder if the sand ever needs to be leveled out because there’s too much in one place?
Yes, after running the table for several hours, the ball tends to push the sand out to the edges of the table and it has to be redistributed. I’ve also found that one corner of the table tends to end up with less sand than the others- not sure why. It doesn’t seem to matter what speed/acceleration is used, at lower speeds it just takes a little longer to push the sand out to the edges of the table.
Nice work Mark; Really miss the old G+ group – glad to see some familiar names pop up around the net from time to time. ;)
I don’t have the space for it, but I’ve always wanted to make one of these sand tables… It’d be cool to do some kind of machine vision based ‘Zen Garden’ app which makes patterns based on the placement of objects on the table. 🤔
It would be nice to randomly place rocks in the sand and have the table generate the ripples that go around the rocks.
Yeah, that would be the ideal thing from the perspective of ‘coolness’ but it seems like it’d be the tougher needle to thread, technologically. And if it ‘crashed’ the magnet would lose the ball and require user intervention to reset it, which is why I kinda gave up on that as a possibility and started thinking about things *on* the table. Maybe even specific items, like draw patterns radiating out from drink coasters or something.
I should add here that the nice thing about the servomotors I used in this application is that there was no tuning of the drivers needed for the sand table. I got this performance using the factory default settings. The only thing you have to do that’s the least bit tricky is get step/direction/enable signals out of your controller board. The Duet boards make it easy by adding an expansion board for about $30 that provides buffered and level shifted signals that drive the servomotors. You configure the controller board to use full steps and set the microstepping by flipping dip switches on the motors. A couple minor controller board config changes and you’re done. The motors are NEMA-17 size, so your existing motor mounts will probably work.
The servomotors do require beefier power supply(s) than steppers because their drivers will throw as much current at the motor as it takes to keep up with the input signals. The motors I used are 78W units and I am using 150W and 200W power supplies, one for each motor. Acceleration is limited to about 20k mm/sec^2 because the power supplies keep shutting down if I set acceleration any higher.
Interesting… a litter box the cat can play in.
On, not in. The cat is standing on a clear polycarbonate cover.
B^)
I just watched a YouTuber make a table like this, one thing he found was the “crunchieness” of the sand. What sand did you use for your table?
I use Sodium Bicarbonate (baking soda) sand blasting medium. It’s pure white, doesn’t get sticky if it gets humid, doesn’t attract bugs or have any in it to start with. If it sits for a few weeks clumps start to form, but they are very weak and as soon as the ball hits them they fall apart back into dust.