No matter how fine your fine motor skills may be, it’s really hard to manipulate anything on the stage of a microscope with any kind of accuracy. One jitter or caffeine-induced tremor means the feature of interest on the sample you’re looking at shoots off out of the field of view, and getting back to where you were is a tedious matter of trial and error.
Mechanical help on the microscope stage is nice, and electromechanical help is even better, but a DIY fully motorized microscope stage with complete motion control is the way to go for the serious microscopist on a budget. Granted, not too many people are in [fabiorinaldus]’ position of having a swell microscope like the Olympus IX50, and those that do probably work for an outfit that can afford all the bells and whistles. But this home-brew stage ticks off all the boxes on design and execution. The slide is moved across the stage in two dimensions with small NEMA-8 steppers and microstepping controllers connected to two linear drives that are almost completely 3D-printed. The final resolution on the drives is an insane 0.000027344 mm. An Arduino lives in the custom-built control box and a control pad with joystick, buttons, and an OLED display allow the stage to return to set positions of interest. It’s really quite a build.
If you’re building a CNC router, laser cutter, or even 3D printer, you’ll usually be looking at a dedicated controller. This board takes commands from a computer, often in the form of G-Code, and interprets that into movement commands to the connected stepper motors. Historically this has been something of a necessary evil, as there was really no way to directly control stepper motors with a computer fast enough to be useful. That may not be the case anymore.
Thanks to the Raspberry Pi (and similar boards), we now have Linux computers with plenty of GPIO pins. The only thing missing is the software to interpret the G-Code and command the steppers over GPIO, which thanks to [pantadeusz], we now have. Called raspigcd, this software interprets a subset of G-Code to provide real-time control over connected steppers fast enough to drive a small CNC router.
Of course, you can’t directly control a beefy stepper motor to the GPIO pins of a Pi. You’ll let out all the magic smoke. But you can wire it up directly to a stepper driver board. These little modules connect up to a dedicated power supply and handle the considerable current draw of the steppers, all you need to do is provide them the number of steps and direction of travel.
This method of direct control offers some very interesting possibilities for small, low-cost, CNC projects. Not only can you skip the control board, you could conceivably handle the machine’s user interface (either directly via a touch screen or over the network) on the same Pi.
We’ve seen attempts at creating all-in-one Linux stepper controllers in the past, but the fact that anyone with a Raspberry Pi 2 or 3 (the boards this software has currently been tested on) can get in on the action should really help spur along development. Has anyone used this?
At Hackaday, we really appreciate it when new projects build on projects we’ve featured in the past. It’s great to be able to track back and see what inspires people to pick up someone else’s work and bring it to the next level or take it down a totally new path.
This PCB brushless motor is a great example of the soft collaboration that makes the Hackaday community so powerful. [bobricius] says he was inspired by this tiny PCB BLDC when he came up with his design. His write-up is still sparse at this point, but it looks like his motor is going to be used to drive a small robot. As with his inspiration, this motor has the stator coils etched right into the base PCB. But there are some significant improvements, like increasing the stator coil count from six to eight, as well as increasing the overall size of the motor. [bobricius] has also done away with the 3D-printed rotor of the original, opting to fabricate his rotor from stacked PCBs with cutouts for 5-mm neodymium magnets. We like the idea of using the same material throughout the motor, and it also raises the potential for stacking a second stator on the other side of the rotor, which might help mechanically and electrically. Even still, the prototype seems to hold its own in the video below.
If you’ve ever experienced the heartbreak of finding a seed in your supposedly seedless navel orange, you’ll be glad to hear that with a little work, you can protect yourself with an optical computed tomography scanner to peer inside that slice before popping it into your mouth.
We have to admit to reading this one with a skeptical eye at first. It’s not that we doubt that a DIY CT scanner is possible; after all, we’ve seen examples at least a couple of times before. The prominent DSLR mounted to the scanning chamber betrays the use of visible light rather than X-rays in this scanner — but really, X-ray is just another wavelength of light. If you choose optically translucent test subjects, the principles are all the same. [Jbumstead]’s optical CT scanner is therefore limited to peeking inside things like slices of tomatoes or oranges to look at the internal structure, which it does with impressive resolution.
This scanner also has a decided advantage over X-ray CT scanners in that it can image the outside of an object in the visible spectrum, which makes it a handy 3D-scanner in addition to its use in diagnosing Gummi Bear diseases. In either transmissive or reflective mode, the DSLR is fitted with a telecentric lens and has its shutter synchronized to the stepper-driven specimen stage. Scan images are sent to Matlab for reconstruction of CT scans or to Photoscan for 3D scans.
The results are impressive, although it’s arguably more useful as a scanner. Looking to turn a 3D-scan into a 3D-print? Photogrammetry is where it’s at.
There are plenty of ways to make large alphanumeric displays that are readable at great distances. LED signboards come to mind, as do big flat-screen LCD displays. But such displays feel a little soulless, and nothing captures the atmosphere of a busy train station like an arrivals and departures board composed of hundreds of split-flap displays.
In a bid to make these noisy but intriguing displays practical for the home-gamer, [Scott Bezek] has spent the last couple of years on a simple, modular split-flap display unit, and from the look of the video below, it’s pretty close to ready. The build log details the design process, which started with OpenSCAD and took advantage of the parametric nature of the scripting language to support any number of characters, within reason. Costs are kept low with laser-cut MDF frames and running gear, and cheap steppers provide the motion. Character cards are just PVC ID badges with vinyl letters, and a simple opto-sensor prevents missed steps and incorrect characters. The modules can be chained together into multi-character displays, and the sound is satisfyingly flappy.
[Tobias Kuhn] had watched a YouTube video about a robot arm which used servo motors, and wanted to try making one himself. But he found it hard to get slow or smooth movements out of the servos. Even removing the microcontroller and trying to work with the servo’s driver-IC and potentiometer from an Arduino Nano didn’t get him satisfaction.
Then he found the very affordable 28BYJ-48 stepper motor. After some experimenting, he came up with a smooth moving robot arm with four steppers controlled from an Arduino Mega and A4988 stepper motor drivers. Rather than write a bunch of stepper motor code himself, he installed and ran a four-axis fork of grbl on the Arduino, turning it into a stepper motor controller. One minor hitch was that the A4988 motor drivers are for bipolar stepper motors but 28BYJ-48 steppers are unipolar. Luckily he knew of a very simple hack which our [Brian Benchoff] wrote about for turning a unipolar motor into a bipolar motor.
To tell the robot arm what to do, he built a replica arm with potentiometers in place of the stepper motors. As he manipulates the replica, the values of the potentiometers are read by a Raspberry Pi and some custom Python code which sends the appropriate G-code to the Arduino/grbl controlled robot arm. There’s a bit of a lag but when he moves the replica arm, the robot arm does the same move. See it in action in the video below.
We’ve all been there: faced with a tedious job that could be knocked out manually with a modest investment of time, we choose instead to overcomplicate the task and build something to do it for us. Such was the impetus behind this automated wire cutter, but in this case the ends justify the means.
That [Edward Carlson] managed to stretch a twenty-minute session with wire cutters and a tape measure into four days of building and tweaking this machine is pretty impressive. The build process was jump-started by modifying an off-the-shelf wire measuring machine, of the kind one finds in the electrical aisle of The Big Orange Store. Stripped of the original mechanical totalizer and with a stepper added to drive the friction wheels, the machine can now measure cable by counting steps. A high-torque servo drives a stout pair of cable shears through a nifty linkage, or the machine can just measure the length of cable without cutting. [Edward]’s solution in search of a problem ends up bringing extra value, so maybe the time spent was worth it after all.