Shapes of Constant Width
I’d got my hands on a set of these shapes at a Festival of the Spoken Nerd (FOTSN) show in Nottingham.
I’ve simplified Wikipedia’s explanation of what these things are:
“A shape of constant width is a shape whose width (defined as the perpendicular distance between two parallel lines each touching shape’s boundary) is the same regardless of the rotation of the shape.”
Or you can watch the maths gear video about then:
This means that if you roll these shapes between two rulers, the rules will stay the same distance apart. Magic!
The shapes I got were laser-cut plywood. I’d been toying with the idea of mounting them in a display to show off their movement between two surfaces, but actually they sat unloved in a pile of other stuff for ages.
Then, last August I took a trip to the Edinburgh Fringe, where FOTSN were on. I took the opportunity to get the shapes signed by Matt Parker, Helen Arney and Steve Mould. I dashed off to Edinburgh Hackspace afterwards to get the FOSTN logo laser-etched onto the remaining shape. After this, they could stay unloved no longer.
Here’s a video of the stand I built. You can read a bit more about it below the video.
My initial idea was to replicate the linear “between two rulers” motion, but I pretty soon changed to a circular design, where a central drive wheel would move the pieces round in a track, just by friction between the surfaces. Observe this rubbish exploded view:
The stand holds the motor and any control electronics. A living hinge is a nice way to get it standing up. I had to divide the stand with a fancy wavy line (not a sine wave, that was a silly thing not to think of) into two to fit each piece into the laser.
The retaining ring is glued to the stand. The centre rotating piece was cut to allow for a rubber band to go around it to try and get good grip between the wheel and the shapes.
Everything was designed in Inkscape.
I was hoping that the shapes would rotate without needing holding in from the front, but they kept popping out from between the ring and drive wheel, so I had to add a front retaining piece to the design.
I didn’t just want to cut a boring circle of perspex, so keeping with the maths theme I thought about some sort of grid or spiral.
I settled on the following shape, with was constructed out of overlaid golden spirals:
This was made by:
1. Generating a golden spiral.
2. Copying and rotating it twice.
3. Copying the result, mirroring it and overlaying on the original.
4. Thickening and outlining the paths to allow for cutting.
5. Adding a small circle to the centre and adding the retaining ring.
6. Adding a 3mm centre hole for motor shaft and 3mm screw holes around the edge.
I think it looks quite nice.
Due to the tolerances of the design, and probably in no small part to my own ineptness, the shapes move too freely in some places and stick in others. I solved this by adding some foam to the outside edge of the track, which takes up these non-uniformities.
I also had to add some extra pieces to the cover to stop the shapes being pushed upwards and getting stuck.
THEN I had to drill out the centre of the motor shaft and epoxy in a screw and washer to finally stop everything going wrong.
Motor and Drive Electronics
The best speed for rotation seemed to be about 10rpm, so I got a 12V 10rpm motor off eBay for about £10. In basic tests, it actually drives the shapes round comfortably at about 6V.
During initial testing, the shapes occasionally stuck, causing a pile-up and the motor stalling. I thought I might have to design some kind of stall sensing and recovery circuit, but luckily with the changes to stop them sticking, and sanding down the edges of the shapes, that wasn’t necessary. I just added a PWM speed control with an Arduino Nano. The Arduino also reverses the direction of rotation every 30 seconds, in the hope that this might average out and long-term drift of the shapes relative to each other.
I might experiment with side-lighting the perspex in the future, maybe just a single LED at the bottom of the piece to draw attention to it.