Helix Display Brings Snake Into Three Dimensions

Any time anyone finds a cool way to display in 3D — is there an uncool way? — we’re on board. Instructables user [Gelstronic]’s method involves an array of spinning props to play the game Snake in 3D.

The helix display consists of twelve props, precisely spaced and angled using 3D-printed parts, each with twelve individually addressable LEDs. Four control groups of 36 LEDs are controlled by the P8XBlade2 propeller microcontroller, and the resultant 17280 voxels per rotation are plenty to produce an identifiable image.

In order to power the LEDs, [Gelstronic] used wireless charging coils normally used for cell phones, transferring 10 W of power to the helix array.  A brushless motor keeps things spinning, while an Arduino controls speed and position via an encoder. All the links to the code used are found on the project page, but we have the video of the display in action is after the break.

Continue reading “Helix Display Brings Snake Into Three Dimensions”

Arduino and Encoder form Precision Jig for Cutting and Drilling

“Measure twice, cut once” is great advice in every aspect of fabrication, but perhaps nowhere is it more important than when building a CNC machine. When precision is the name of the game, you need measuring tools that will give you repeatable results and preferably won’t cost a fortune. That’s the idea behind this Arduino-based measuring jig for fabricating parts for a CNC build.

When it comes to building on the cheap, nobody holds a candle to [HomoFaciens]. We’ve seen his garbage can CNC build and encoders from e-waste and tin cans, all of which gave surprisingly good results despite incorporating such compliant materials as particle board and scraps of plumber’s strapping. Looking to build a more robust machine, he finds himself in need of parts of consistent and accurate lengths, so he built this jig. A sled of particle board and a fence of angle aluminum position the square tube stock, and a roller with a paper encoder wheel bears on the tube under spring pressure. By counting pulses from the optical sensors, he’s able to precisely position the tube in the jig for cutting and drilling operations. See it in action in the video after the break.

If you’ve been following [HomoFaciens], you’ll no doubt see where he’s been going — build a low-end tool, use that to build a better one, and so on. We’re excited to see him moving into more robust materials, but we’ll miss the cardboard and paperclip builds.

Continue reading “Arduino and Encoder form Precision Jig for Cutting and Drilling”

Tightwad Hacks Label Printer, Beats Manufacturer at Own Game

Sometimes we hack for the thrill of making something new, and sometimes we hack to push back the dark veil of ignorance to shed fresh light on a problem. And sometimes, like when turning a used label printer into a point-of-sale receipt printer, we hack because we’re cheapskates.

We say that with the utmost respect and affection — there’s nothing to be ashamed of when your motive is strictly pecuniary. In [Dan Herlihy]’s case, hacking a cheap Brother label printer to use thermal paper meant saving $300 on a dedicated receipt printer. But it also meant beating Brother at their “Razor and Blades” business model that keeps you buying their expensive proprietary labels. A pattern of holes in the plastic label roll tells the printer what size labels are loaded, so [Dan] defeated that by breaking off a piece of the plastic and gluing it on the sensor. To convince the printer that plain thermal paper is label stock, he printed up a small strip of paper with the same pattern of black registration stripes that appear on the back of the labels. Pretty clever stuff, and it lets him print high-resolution receipts for his electronics shop on the seriously cheap.

[Dan]’s hack is simple, but may suffer from wear on the paper encoder strip. Perhaps this Brother hack using the gears as encoders will provide some inspiration for long-term fix.

Continue reading “Tightwad Hacks Label Printer, Beats Manufacturer at Own Game”

Fifty Shades of Gray Code

Some years back, a museum asked me to help them with an exhibit a contractor had built for them. It was a wheel like the one on Wheel of Fortune, but smaller and mounted on the wall instead of the floor. You would spin the wheel, it would stop on some item, and a computer would play a short video about the item. Physically and mechanically, it was a beautifully built exhibit. The electronics, though, left something to be desired.

In principle, this is pretty simple computer task. Measure the position of the wheel, and when it stops moving, play a video based on the position. The problem was the folks who created the artistic mechanics didn’t think hard about the electronics behind it. Sometimes–but not often–the wheel would play the wrong video. Sometimes it wouldn’t play at all.

The Prime Suspect

My immediate suspicion turned out to be correct. I took the wheel off its mount to discover copper foil tape on the back of it. Each pie wedge had foil in different areas and there were two brushes in each area. When the wheel stopped, two of the brushes would be shorted together and the rest were open. The way they detected that was bizarre, but that wasn’t the problem. (It involved a cannibalized PS/2 keyboard.)
Continue reading “Fifty Shades of Gray Code”

Use A Brushless Motor As A Rotary Encoder

The electric motor is the fundamental building block of almost all robotic projects but, without some form of feedback, it lacks the precise positional control required for the task. Small servos from the modelling world will often use a potentiometer to sense where they are on their travel, while more accomplished motors will employ some form of shaft encoder.

Commercial shaft encoders use magnets and Hall-effect sensors, or optical sensors and encoder discs. But these can be quite expensive, so [Hello1024] hacked together an alternative in an afternoon. It uses another motor as the encoder, taking advantage of the minute changes in inductance as the magnet passes each of its coils. It’s a technique that works better with cheaper motors, as their magnets are more imperfect than those on their expensive cousins.

The sensing is rather clever in its economy, sending a pulse to the motor through an off the shelf motor controller and measuring the time it takes to decay through the body diode of the driving MOSFET. It requires a calibration procedure before first use, and it is stressed that the whole thing is very much still in beta, but it’s a very impressive hack nevertheless. He’s posted a video demonstration which you can see below the break.

Continue reading “Use A Brushless Motor As A Rotary Encoder”

Encoders Spin Us Right Round

Rotary encoders are great devices. Monitoring just a few pins you can easily and quickly read in rotation and direction of a user input (as well as many other applications). But as with anything, there are caveats. I recently had the chance to dive into some of the benefits and drawbacks of rotary encoders and how to work with them.

I often work with students on different levels of electronic projects. One student project needed a rotary encoder. These come in mechanical and optical variants. In a way, they are very simple devices. In another way, they have some complex nuances. The target board was an ST Nucleo. This particular board has a small ARM processor and can use mbed environment for development and programming. The board itself can take Arduino daughter boards and have additional pins for ST morpho boards (whatever those are).

The mbed system is the ARM’s answer to Arduino. A web-based IDE lets you write C++ code with tons of support libraries. The board looks like a USB drive, so you download the program to this ersatz drive, and the board is programmed. I posted an intro to mbed awhile back with a similar board, so if you want a refresher on that, you might like to read that first.

Reading the Encoder

The encoder we had was on a little PCB that you get when you buy one of those Chinese Arduino 37 sensor kits. (By the way, if you are looking for documentation on those kinds of boards, look here.; in particular, this was a KY-040 module.) The board has power and ground pins, along with three pins. One of the pins is a switch closure to ground when you depress the shaft of the encoder. The other two encode the direction and speed of the shaft rotation. There are three pull-up resistors, one for each output.

I expected to explain how the device worked, and then assist in writing some code with a good example of having to debounce, use pin change interrupts, and obviously throw in some other arcane lore. Turns out that was wholly unnecessary. Well… sort of.

Continue reading “Encoders Spin Us Right Round”

This Old Mouse Keeps Track of Filament Usage

Keeping track of your 3D-printer filament use can be both eye-opening and depressing. Knowing exactly how much material goes into a project can help you make build-versus-buy decisions, but it can also prove gut-wrenching when you see how much you just spent on that failed print. Stock filament counters aren’t always very accurate, but you can roll your own filament counter from an old mouse.

[Bin Sun]’s build is based around an old ball-type PS/2 mouse, the kind with the nice optical encoders. Mice of this vintage are getting harder to come by these days, but chances are you’ve got one lying around in a junk bin or can scrounge one up from a thrift store. Stripped down to its guts and held in place by a 3D-printed bracket, the roller that used to sense ball rotation bears on the filament on its way to the extruder. An Arduino keeps track of the pulses and totalizes the amount of filament used; the counter handily subtracts from the totals when the filament is retracted.

Simple, useful, and cheap — the very definition of a hack. And even if you don’t have a 3D-printer to keep track of, harvesting encoders from old mice is a nice trick to file away for a rainy day. Or you might prefer to just build your own encoders for your next project.

Continue reading “This Old Mouse Keeps Track of Filament Usage”