We’ve all heard the complaints from oldsters: “Cars used to be so simple that all you needed to fix them was a couple of wrenches and a rag. Now, you need a computer science degree to even pop the hood!” It’s true to some extent, but such complexity is the cost of progress in the name of safety and efficiency. And now it seems this complexity is coming way down-market, with this traction control system for a Power Wheels Lamborghini.
While not exactly an entry-level model from the Power Wheels line of toddler transportation, the pint-sized Lamborghini Aventador [Jason] bought for his son had a few issues. Straight from the factory, its 6-volt drivetrain was a little anemic, with little of the neck-snapping acceleration characteristic of an electric drive. [Jason] opted to replace the existing 6-volt drive with a 12-volt motor and battery while keeping the original 6-volt controller in place. The resulting rat’s nest of relays was unsightly but sufficient to see a four-fold increase in top speed.
With all that raw power sent to only one wheel, though, the Lambo was prone to spinouts. [Jason] countered this with a traction control system using optical encoders on each of the rear wheels. A NodeMCU senses speed differences between the wheels and controls the motor through an H-bridge to limit slipping. As a bonus, a smartphone app can connect to the Node for in-flight telemetry. Check out the build and the car being put through its paces by the young [Mr. Steal Your Girl] in the video below.
The Power Wheels platform is infinitely hackable – from repairs to restorations to enhancements of questionable sanity, it seems like there’s nothing you can’t do with these little electric vehicles.
Continue reading “Traction Control Gets More Power to the Road for Tot-Sized Lamborghini”
From Ferraris to F-16s, some things just look fast. This Rubik’s Cube solving robot not only looks fast, it is fast: it solved a standard cube in 380 milliseconds. Blink during the video below and you’ll miss it — even on the high-speed we had trouble keeping track of the number of moves this solution took. It looked like about 20.
Beating the previous robot record of 637 milliseconds is just the icing on the cake of a very cool build undertaken by [Ben Katz]. He and his collaborator [Jared] put together a robot with a decidedly industrial look — aluminum extrusion chassis, six pancake servo motors with high-precision optical encoders, and polycarbonate panels for explosion containment which proved handy during development. The motors had to be modified to allow the encoders to be attached to the rear, and custom motor controllers were fabricated. [Jared] came up with a unique board to synchronize the six motors and prevent collisions between faces. Machine vision is provided by just two PlayStation Eye cameras; mounted at opposite corners of the enclosure, each camera can see three faces at a time. They had a little trouble distinguishing the red from the orange, which was solved with a Sharpie.
[Ben] and [Jared] think they can shave a few milliseconds here and there with tweaks, but even as it is, this is a great lesson in optimization and integration. We’ve covered Rubik’s robots before, like this two-motor slow and steady design and this six-motor build that solves a cube in less than a second.
Continue reading “Rubik’s Robot So Fast It Looks Like a Glitch in the Matrix”
Forget sourcing parts for your next project from some fancy neighborhood hardware store. If you really want to show your hacker chops, be like [HomoFaciens] and try a Dumpster dive for parts for a CNC machine build.
OK, we exaggerate a little – but only a little. Apart from the control electronics, almost everything in [HomoFacien]’s build could be found by the curb on bulk-waste pickup day. Particle board from a cast-off piece of flat-pack furniture, motors and gears from an old printer, and bits of steel strapping are all that’s needed for the frame of a serviceable CNC machine. This machine is even junkier than [HomoFacien]’s earlier build, which had a lot more store-bought parts. But the videos below show pretty impressive performance nonetheless.
Sure, this is a giant leap backwards for the state of the art in DIY CNC builds. but that’s the point – to show what can be accomplished with almost nothing, and that imagination and perseverance are more important for acceptable results than an expensive BOM.
With that in mind, we’re throwing down the gauntlet: can anyone build a CNC machine from cardboard and paperclips?
Continue reading “Garbage can CNC Machine Build”
A vise, a hacksaw and file, some wrenches – the fanciest tools [HomoFaciens] uses while building his DIY hardware store CNC machine (YouTube link) are a drill press and some taps. And the bill of materials for this surprisingly precise build is similarly modest: the X- and Y-axes ride on cheap bearings that roll on steel tube stock and aluminum angles; drives are threaded rods with homemade encoders and powered by small brushed DC gear motors; and the base plate appears to be a scrap of ping-pong table. The whole thing is controlled by an Arduino and four H-bridges.
The first accuracy tests using a ball point pen for tooling are quite impressive. [HomoFaciens] was able to draw concentric circles eyeball-accurate to within a few tenths of a millimeter, and was able to show good repeatability in returning to a point from both directions on both the X- and Y-axis. After the pen tests, he shows off a couple of other hardware store tooling options for the Z-axis – a Proxxon rotary tool with a burr for engraving glass; a soldering iron for cutting styrofoam; and a mini-router that works well enough to cut some acrylic gears.
We’re impressed by this build, which demonstrates that you don’t need a fancy shop to build a CNC machine. If you’re getting the itch to jump into the shallow end of the CNC pool, check out some of the builds we’ve featured before, like this PVC CNC machine, or this $250 build.
One of the bigger problems with any CNC machine or 3D printer is the issue of missed steps when moving the toolhead. If a stepper motor misses a step, the entire layer of the print – and every layer thereafter – will be off by just a tiny bit. Miss a few more steps, and that print will eventually make its way into the garbage. [Misan] has the solution to this: closed loop control of DC motors for a 3D printer.
Most printer firmwares use an open loop control system for moving their motors around. Step a few times in one direction, and you know where the nozzle of a 3D printer will be. Missed steps confound the problem, and there’s no way for the firmware to know if the nozzle is where it should be at any one time.
[Misan]’s solution to this was a DC motor coupled to an optical encoder. Both the motor and the encoder are connected to an Arduino Pro Mini which receives step and direction commands from the printer controller. The controller takes care of telling the motor where to go, the Arduino takes care of making sure it gets there.
The entire build is heavily derived from ServoStrap, but [Misan] has a very cool demo of his hardware: during a print, he can force the X and Y axes to either side, and the Arduino in each motor will move the print head back to where it needs to be. You can check that out below.
Continue reading “Closed Loop Control For 3D Printers”
Optical encoders are nothing new; they can be found in everything from mice to printers. They’re great for allowing DC motors to know their exact position and even current direction. If this is sounding like old hat, it’s because we’ve shown you rotational versions before.
[Chris] uses the same concept, but produced a linear optical encoder instead of rotational. His setup is much like whats used in non stepper-motor CNC and RepRap mills, allowing ordinary DC motors to know their position within a plane. It’s a quick tutorial, but we liked the detail and it reminded us we need to finish that DC motor based mill thats still a pile of parts in the closet. Check out a video of [Chris’] in action after the break. Continue reading “Linear optical encoder”
[hw640] has put together a well written and detail packed explanation of how to interface with a digital rotary switch. These digital opto encoders have just two outputs with four possible logic levels (00, 10, 11, 01). The relative position of the switch is insignificant but the direction of rotation is what matters.
The short and dirty: Each of the switch’s 2 output pins is attached to a pin change interrupt on the microcontroller. Every time the switch moves it generates either a rising edge or a falling edge on one of the two pins; both edges cause an interrupt. By checking which pin caused the interrupt, then comparing the logic levels of the two pins after that interrupt, we can determine the direction the switch was rotated.
Although this explanation uses a PIC and code written in PicBasic Pro the concepts are discussed in the abstract and would easily be adapted to an AVR or another microcontroller of your choice.