There are lots and lots of “POV” projects out there, where POV=persistence of vision. It’s typically a linear array of LEDs that are spun in a circle. The LEDs are flashed in a pattern that is synchronized to the rotation, and POV makes it appear as though the space is filled with LED pixels, rather than a rapidly moving single line of pixels.
I haven’t built one, but it strikes me as a good getting started project in embedded software. There is a real time aspect of synchronizing the code to the motion of the LED array, some calculating to be done to properly digitize and display the image, and when you’re done you have something that’ll impress the neighbors.
In the POV project that is the subject of this column, Chris used a muffin fan to spin the PCB containing the LEDs. According to Chris this is a good choice because the muffin fan electronics already have drivers and speed control incorporated. Makes sense to me, although I wasn’t aware that they had any kind of speed feedback. At any rate, this project also includes an infrared diode and phototransistor to detect the position of the PCB, so even if the motor speed varies the code can still stay sychronized, although a lower motor RPM will lessen the POV effect.
A PIC processor runs the show, using two octal latches to drive the LEDs. A PIC should be able to source enough current to light the LEDs, however, using the latches allows Chris to multiplex 16 LEDs onto 8 PIC outputs.
And that’s about it. There is a good detailed intro to how the latches work, and how the period of the rotation is divided up into 360 degree increments.
Changes and additions
This is a great project for someone getting started, and a few things occur to me to improve it. I’ve only looked at a handful of these, although there are lots of them on Instructables and other hobbyist WWW pages. If you look at the videos Chris provides you can see that the resolution of the display suffers towards the center of the circle. Smaller LEDs packed closer together towards the perimeter of the circle would help this. This project was intentionally built on perfboard, however, which limits the choice of LEDs.
Another idea I had is to double up the LEDs by making two lines of LEDs right next to each other. As the PCB rotates new values would be loaded into the leading line of LEDs as the contents of the leading LEDs is shifted to the trailing line. This would brighten the display and I think improve the POV effect. Alternatively the lines could be staggered along the radius which would increase the resolution of the display and eliminate the spaces between pixels.
And of course anything that looks good in monochromatic green would look even better in full color, so replace the green LEDs with RGB ones.
A final note. Whenever I see POV for some reason I think of POV Ray, an open source ray tracing software package that dates back to the 80s. It’s still around, and I took a look at it while writing this. There are some amazing images being produced with it, watch for them in a future column.
Design News Gadgeteer