Upload
disha-karnataki
View
258
Download
4
Tags:
Embed Size (px)
Citation preview
PROJECT TITLE:
PERSISTENCE OF VISION DISPLAY
SUMMARY: WHEN SOMETHING HAPPENS AT A FASTER RATE EVERYTHING APPEARS TO BE
MERGED, LIKE WHEN A FAN IS ROTATING THEN ALL IT’S WINGS APPEAR AS ONE , AS WE
PEDAL MORE AND MORE THEN THE SPOKES OF THE BICYCLE APPEAR AS ONE,WHEN
DROP BY DROP WATER FLOWS AT FASTER RATE WE FEEL THE CONTINUOUS FLOW OF IT
ETC... THESE EVENTS ALL APPEAR CONTINUOUS TO HUMAN’S EYES THOUGH THEY TAKE
PLACE DISCRETLY AT SEPARATE TIME INTERVALS. THIS IS DUE TO CONCEPT OF
PERSISTENCE OF VISION. USING THIS IDEA I HAVE BUILT A MODEL WHICH IS CALLED AS
PERSISTENCE OF VISON DISPLAY. THIS SETUP CREATES A VISION(MAY ALSO BE CALLED
AS ILLUSION) USING JUST FEW LEDS WHICH IS SET UP ON A TABLE FAN AND HAS ONLY
8 LEDS MOUNTED ON IT. AND AS THE FAN ROTATES, THE WINGS(ON WHICH LEDS ARE
MOUNTED) START DISPLAYING AS PER THE PROGRAMING WRITTEN IN THE
MICROCONTROLLER 8051 WHICH IS USED. IT WILL DISPLAY LETTERS, WORDS, IMAGES
JUST USING 8 LEDS WITHOUT MAKING ANY CHANGES IN THE NUMBER OF LEDS AND
THE SETUP.
DESCRIPTION:
BLOCK DIAGRAM:
MICROCONTRO
LLER 8051
POWER SUPPLY
8 BLUE LEDS
TOGETHER MOUNTED ON TABLE FAN
DESCRIPTION:
THE OCCURRENCE OF DISCRETE EVENTS AS “ONE” IS CALLED AS “CONTINUOUS OR
PERSISTENCE”. WHEN ANY EVENT TAKES PLACE AT A RATE OF SAY LESS THAN 15MS
THEN, EVERY HAPPENING OF THE EVENT APPEARS CONTINUOUS THOUGH IN REALITY
IT IS NOT.THE MYSTERY BEHIND THIS IS THAT OUR BRAIN CANNOT DETECT SIGNALS
FASTER THAN 15MS SO ANY EVENTS HAPPENING WITH A TIME WHICH EVEN TAKES
LESS THAN 15MS IS PRESUMED AS ONE BY OUR BRAIN.USING THIS CONCEPT I HAVE
BUILT A MODEL ON A TABLE FAN FOR THIS PROJECT ANY ROTATING OBJECT CAN BE
TAKEN BUT, THE SPEED OF THE FAN IS SUPPOSED TO BE AROUND 1000RPM OR MORE
FOR THE VISION TO PREVAIL. ALSO 8 BLUE LEDS ARE USED WITH MICROCONTROLLER
8051 , IR LED SENSOR IS ALSO USED TO DETECT THE MOTION OF THE FAN AND A 9V
BATTERY TO POWER THE SETUP AND WHOLE THING MOUNTED ON A CARDBOARD
WHICH IS MOUNTED ON THE SHAFT OF THE TABLE FAN.
THERE IS AN IR PHOTODIODE CIRCUIT INTERFACED AT THE P3.3 PIN OF 8051
MICROCONTROLLER AND AN IR LED PLACED ON THE TABLE. AS THE FAN ROTATES IR
PHOTODIODE RECEIVED PULSES FORM THE IR LED PLACED ON THE TABLE AND THIS LED
ACTS AS A REFERENCE POINT FOR THE MICROCONTROLLER TO BEGIN IT’S DISPLAY.
SO IN THE PROGRAM THERE ARE TWO DELAYS GIVEN ONE IS OF 20MS AND ANOTHER OF
1.5MS.
THE ONE WITH 20MS IS TO BEGINE THE DISPLAY AT 1/4TH OF THE CIRCUMFERENCE AS
SHOWN BELOW:
Ir transmitter
placed on table
Ir photodiode along
with dev board
continuously rotating
Rotating
1/4th of the
circumference
Ir rays
AND 1.5MS IS THE TIME FOR WHICH LED WILL BE LIT UP AT A PARTICULAR POSITION
ON THE CIRCUMFERENCE.
CIRCUIT DIAGRAM:
CIRCUIT DISCRIPTION:
MICROCONTROLLER 8051:
FEATURES:
1) 8051 have 128 bytes of RAM
2) 8051 have 128 user defined flags
3) it consist of 16 bit address bus
4) it also consist of 3 internal and two external interrupts
5) less power usage in 8051 with respect to other micro-controller
6) it consist of 16-bit program counter and data pointer
7) 8051 can process 1 million one-cycle instructions per second
8) it also consist of 32 general purpose registers each of 8 bits
9) ROM on 8051 is 4 Kbytes in size
10) it also consist of Two 16 bit Timer/ Counter
PORT P1:8 LEDS ARE CONNECTED TO THIS PORT
8051
MICRO
CONTROLLER
8
L
E
D
S
P1.0
P1.1
P1,2
P1.3
P1.4
P1.5
P1.6
P1.7
CALCULATIONS:
THERE ARE THREE SPEEDS ON FAN:
1)480RPM 2)950RPM 3)1120RPM
SO I PROGRAMMED FOR 2)SPEED THAT IS 950RPM
i.e 63.15ms/rotation
pixel size:5*6
size of each led:5mm
distance of leds from centre of shaft is:15cm
so min time for which led remains in position on the circumference is:1.5ms
THE SETUP IS AS SHOWN:
Nuts placed to avoid
wobbling of the setup
Micro controller
8051
9v battery
connector
8leds (blue)
Ir transmitter
TABLE FAN SHAFT
Ir led
(transmitter)
Ic 7805
Ir receiver
Ir receiver
Ir
transmitter
Circuit dig of ir transmitter :
Circuit dig of ir receiver :
Here only one photdiode is connected to 8051
P3.3 pin
VIEW WHEN DISLAY IS DONE:
MANY SUCH DISPLAYS ARE MADE BUT THE CODE FOR “I LOVE ELECTRONICS” IS GIVEN
org 0030h
main:mov p1,#00h //leds connected to port p1
mov p3,#0ffh //p3.3 takes sensor ir photodiode as input as a refrence to start display
mov p1,#00h
mov tmod,#11h
up:
j1:jb p3.3,j1 //wait till refernce point is got and then start display
lcall delay1 //1.5ms(minmimum time for which an led remains in position on the circle)
lcall delay //20ms display should start at 1/4th distacnce on circle from the 1st sensor i/p.
mov p1,#4ch //letter s
lcall delay1
mov p1,#54h
lcall delay1
lcall delay1
mov p1,#64h
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#44h // letter c
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#44h // letter i
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#44h
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#7ch // letter n
lcall delay1
mov p1,#8h
lcall delay1
mov p1,#10h
lcall delay1
mov p1,#20h
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#7ch // letter o
lcall delay1
mov p1,#44h
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#74h // letter r
lcall delay1
mov p1,#58h
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#40h // letter t
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#40h
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#44h // letter c
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#54h // letter e
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#4h // letter l
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#54h // letter e
lcall delay1
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#18h //heart symbol
lcall delay1
mov p1,#24h
lcall delay1
mov p1,#22h //or 12h
lcall delay1
mov p1,#10h
lcall delay1
mov p1,#5h
lcall delay1
mov p1,#10h
lcall delay1
mov p1,#22h //or 12h
lcall delay1
mov p1,#24h
lcall delay1
mov p1,#18h
lcall delay1
mov p1,#00h
lcall delay1
lcall delay1
mov p1,#44h // letter i
lcall delay1
mov p1,#7ch
lcall delay1
mov p1,#44h
lcall delay1
mov p1,#00h
ljmp up
delay:
mov th0,#0b8h //20ms (to create a delay to start display from 1/4th
of the cicumference)
mov tl0,#015h
setb tr0
j:jnb tf0,j
clr tr0
clr tf0
ret
delay1: //1.5ms (already given under calculations subsection)
mov th0,#0feh
mov tl0,#0fh
setb tr0
b1:jnb tf0,b1
clr tr0
clr tf0
ret
delay12: //1.5ms
mov th0,#0ffh
mov tl0,#1fh
setb tr0 //this delay is only for v&w
cvb:jnb tf0,cvb
clr tr0
clr tf0
ret
end
PROGRAMING OVERVIEW :
1. SENSOR INPUT
2. PROGRAM EXECUTION
3. LED DISPLAYING
BEGINS
4. DISPLAYING LEDS AT
SPECIFIC TIME INTERVALS
5. IMAGE CREATION (VISION) &
BACK TO STEP1.
Video: