Overview
Hello Everyone,
Using the National Instruments myRIO and LabVIEW, I have worked on a project to demonstrate the concept of Persistance of Vision. The idea was to be able to display text in air whilst waving the myRIO using a single column of 8 LEDS mounted on a stripboard as opposed to displaying text on screens / matrix displays. This works on the theory of Persistence Of Vision which is explained in futher detail below.
*The following images of the project were taken when the project was modified to have a series of patterns/graphics displayed. The user could cycle through the different images by pressing the "button0" on the myRIO. The code was built into a RT EXE which was deployed onto the myRIO and ran on startup.
Description
"Persistence of vision is the theory where an afterimage is thought to persist for approximately one twenty-fifth of a second on the retina."
-Wikipedia
The human eye remembers the image it previously saw and then tries to match it up with the current image. This causes the visual appearance of continuous motion. The concept of persistence of vision exists all around us. Very simple examples that use this include:
This concept was implemented in my project by asking a user to enter a word on the front panel, that they would like to display. This "word" is a simple string control that is then broken down into individual letters in the block diagram. Each letter is then associated with a 8x6 boolean array which in effect divides each letter into 6 columns. The columns are then sent to the DIO lines of the myRIO with a calculated delay.
Currently the delay is hardcoded and was calculated using trial and error to get high accuracy and clear visibility.Ideally, I would like to use the data from the accelerometer within the myRIO to get a timescale from the waving motion and use that to calculate the delay automatically I.e.: The faster you wave, the smaller the delay between each column.
Steps to Execute Code
After connecting the power supply and computer USB to the myRIO and establishing a proper connection with the myRIO, follow the steps below:
Requirements
Software
- LabVIEW 2014
- myRIO toolkit 2014
Hardware
- Stripboard
- 8x Green LEDs
- 8x 270 ohms Resistors
- Octal buffer / Line Driver (SN74HC244 - Texas Instruments)*
* The octal buffer/line driver was used to drive the LEDs using the current from the 5V rail ( ~100mA). The DIO lines on the myRIO provide ~20mA. The LEDs require slightly higher current in order to be bright. With this octal buffer, you can control the LEDs using the DIO lines but use the current from the 5V rail.
Video
A Bit About The Developer
My name is Shazil Muhammad, a student at the University of Manchester studying Mechatronic Engineering. I am currently doing a placement year at National Instruments,as an Intern in the Applications Engineering Department. Engaging myself in the project has not only strenghtened my technical ability when it comes to coding in LabVIEW but has also made me learn so many new skills that I will definitely take back and implement in my final year.
This is a great project. Well done!
Thanks a lot. Really appreciate it