Download Paper Title (use style: paper title)

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
IJMTES | International Journal of Modern Trends in Engineering and Science
ISSN: 2348-3121
512 LED THREE DIMENSIONAL DISPLAY & ITS
LATTICE AN ALYSIS USING A TMEGA 32A A
LOW POWER 8 BIT MICROCONTROLLER
Aruna Pant 1, Mukesh Kumar jha 2
1
(Electronics & Telecommunication Dept, COER Roorkee, Roorkee,India , [email protected])
(Electronics & Telecommunication Dept, COER Roorkee, Roorkee, India , [email protected])
______________________________________________________________________________________________________
2
Abstract—This paper Consist of Building 3 dimensional LED array that will be able to display Various graphics through the Concept of
persistence of Vision. The array will also be Sensitive to motion in three direction, allowing it to focus certain graphics to a targeted
audience through motion Detection. There will be Several options for Display Including no directional animations & Direction Focused
graphics. We will be Using Infrared Sensors to Design a Build a motion detection system that will fed into our Processor. The Processor
will, through Several Inputs, decide what Graphic to Present and Will Feed it to an FPGA.The FPGA will then Process the necessary data &
Output to the 512 LEDs to be used in the 3D array.
Keywords— Three Dimensional Array, 512 LEDs , LED Cube
_________________________________________________________________________________________________________________
1. INTRODUCTION
A LED cube is like a LED screen, but it is special in that it
has a third dimension, making it 3D. In normal displays it
is normal to try to stack the pixels as close as possible in
order to make it look better, but in a cube one must be able to
see through it, and more spacing between the pixels (actually
it's voxels since it is in 3d) is needed. The spacing is a tradeoff between how easy the layers behind it is seen, and voxel
fidelity. Since it is a lot more work making a LED cube than
a LED display, they are usually low resolution. A LED
display of 8x8 pixels is only 64 LEDs, but a LED cube in
8x8x8 is 512 LEDs, an order of magnitude harder to make!
This is the reason LED cubes are only made in low
resolution. A LED cube does not have to be symmetrical, it
is possible to make a 7x8x9, or even oddly shaped ones.
A. The Anatomy of a LED Cube
We are going to be talking about anodes, cathodes,
columns and layers, so let’s take a Moment to get familiar
with the anatomy of a LED cube.An LED has two legs. One
positive (the anode) and one negative (cathode). In order to
light up an LED, you have to run current from the positive to
the negative leg. (If I remember correctly the actual flow of
electrons is the other way around. But let's stick to the flow
of current which is from positive to negative for now).The
LED cube is made up of columns and layers. The cathode
legs of every LED in a layer are soldered together. All the
anode legs in one column are soldered together.Each of the
64 c ocolumns are connected to the controller board with a
separate w wir e. Each column can be controlled
individually.
Each of the layers are connected to a transistor that enables
the ctube to turn on and off the flow of current through each
layer. By oonly turning on the transistor for one layer,
current from the anode columns can only flow through that
layer. The transistors for the other layers are off, and the
image outputted on the 64 anode wires are only shown on the
Volume: 03 Issue: 10 2016
selected layer. To display the nnext layer, simply turn off the
transistor for the current layer, and ththe image on the 64
anode wires to the image for the next lllayer. Then turn on
the transistor for the next layer. Rinse and rrepeat very very
fast. The layers will be referred to as layers, c aathode layers
or ground layers.The columns will be referred to as
cColumns, anode columns or anodes.Each of the layers are
cconnected to a transistor that enables the cube to turn on
and off ttthe flow of current through each layer.By only
turning on the trtransistor for one layer, current from the
anode columns can only flflow through that layer. The
transistors for the other layers are ooff, aand the image
outputted on the 64 anode wires are only sshown on ttthe
selected layer.To display the next layer, simply tuturn off the
trtransistor for the current layer, change the image o on the
64 anode wires to the image for the next layer. Then turn on
ththe transistor for the next layer. Rinse and repeat very very
fast. Tthe layers will be referred to as layers, cathode layers
or ground l aayers.The columns will be referred to as
columns, anode columns a and anode.
B. Philosophy of Displaying Images
The display philosophy allows us to only light up one
layer of LED lights at a time, so in order to view the entire
cube of LEDs simultaneously, we rely on a phenomenon
known as Persistence of Vision. This is so we can scan
through all of the LEDs or layers of LEDs Without
necessarily having them all on at one time. If we can scan
through them fast enough,(typically 20 - 25 cycles per
second or 8 layers 25 times per second) then they will appear
to all be on at the same time In reality, because of the
structure of the code, the cycle time will vary so the image or
the current state of the image is represented by a 3
dimensional byte array. It is an array with the dimensions of
0 - 8 in all directions but realistically only 1 - 8 are used for
the current state of display. The 0 address is used for
manipulating row when we think about patterns and
algorithms. Just focus on the 1 - 8 for each axis for now. This
gives us 512 bytes of storage and each byte represents 0 -
www.ijmtes.com
97
IJMTES | International Journal of Modern Trends in Engineering and Science
255 grey scale value which then gets converted into a pulse
with modulated representation of intensity.
2. METHODOLOGY USED
A. Tmega 32 AVR Microcontroller
1. 1.The Atmel® ATmega32A is a low-power CMOS
8-bit microcontroller based on the AVR®
2. Enhanced RISC architecture. By
executing
powerful instructions in a single clock cycle, the
ATmega32A achieves throughputs close to 1 MIPS
per MHz
A. Features
High-performance, Low-power Atmel AVR 8-bit
Microcontroller.
Advanced RISC Architecture
– 32 × 8 General Purpose Working Registers
– Fully Static Operation
– Up to 16MIPS Throughput at 16MHz
High Endurance Non-volatile Memory segments
– 32Kbytes of In-System Self-programmable
program memory
– 1024Bytes EEPROM
Flash
B. Usage in LED Cube
ATmega32 acts as the brain of the whole system. The
output of ATmega 32 controls the LEDwith the help of N222
Transistor. In order to provide the clock frequency to
ATmega 32 we use a crystal of 14.67 MHz .The
microcontroller basically controls all the output functions of
the lads with the help of program fed into it. The AT mega
32 has four ports, out of which only one port is used to
control the cube display. This port is connected to latch
circuit. This latch circuit controls all 64 anodes .The
transistors are used at the O/P of the AT mega 32 in order to
decide the logic levels , if logic 0 is needed then the
transistor is OFF and if we need logic 1 then the transistors is
ON. The input of the latch circuit is coupled by the other
ports of microcontroller.
ISSN: 2348-3121
devices are used to interface with bus lines in a bus
organised system.These devices are positive edge triggered
flip-flops. Data at the D-inputs, meeting the set-up and hold
time requirement are transferred to the 0 output on positive
going transition of the clock input. When a high logic level is
applied to the output control input , all output go to a high
impedance state regardless of what signal are present at the
other input and the state of the storage element.
D. Working
To illuminate 8*8*8 LED cube, 512 pins connected
with 512 lads are to be controlled but this method is not
feasible at all. So to reduce the number of pins we divide the
whole cube In layers and columns. We have total of eight
layer. The cathode terminal of each LED on each column is
made common and a wire is taken to drive the cathodes of
layer .Similarly we have 64 columns and the anode of each
LED on each column is made common and a wire is taken
out to drive all the anodes in a column .
So now we have total 64 wires from column and 8 wires
from layers . Now to handle 64 wires we need 64 input pins
that is not physically feasible, so we require a latch circuit ,
and for this we are using 74HC574 latching IC . This is 20
pin IC in which 8 output pins and 8 are input pins , and a Vcc
, Ground, Clk and a output enable pin .
We are using 8 74HC574 ICs , all the inputs of these ICs are
made common and given to microcontroller and a total 64
outputs are used to control the 64 columns in LED cube .In
order to provide a synchronised clock to these ICs we are
using 74HC138 IC .
E. 74HC138 – (3-8 Decoder IC)
It is a 3-8 line decoder , that accepts three binary
weighted address inputs (A1, A2, A3) and when enabled ,
provides 8 mutually exclusive active low output is a 3-8 line
decoder , that accepts three binary weighted address inputs
(A1, A2, A3) and when enabled , provides 8 mutually
exclusive active
C. IC- 74HC574
It is a high speed octal D-type flip-flop which utilizes
advanced silicon gate p-well CMOS technology. These
Volume: 03 Issue: 10 2016
www.ijmtes.com
98
IJMTES | International Journal of Modern Trends in Engineering and Science
ISSN: 2348-3121
H. Circuit implemented on Development board with all
necessary components Soldered
F. 74HC138 – (3-8 DECODER IC) working
It is a 3-8 line decoder , that accepts three binary
weighted address inputs (A1, A2, A3) and when enabled ,
provides 8 mutually exclusive active low output .We are
using 8 74HC574 ICs , all the inputs of these ICs are made
common and given to microcontroller and a total 64 outputs
are used to control the 64 columns in LED cube .In order to
provide a synchronised clock to these ICs we are using
74HC138 IC.
G. Circuit Schematics of Latch Connection
I.
Volume: 03 Issue: 10 2016
ATmega 32 and other external devices schematics
www.ijmtes.com
99
IJMTES | International Journal of Modern Trends in Engineering and Science
J.
Circuit implemented in development board
ISSN: 2348-3121
L. ATmega 32
3. IMPLEMENTATION
K. Pin Configuration of DIP20 and SO20
The goal of this design is to be able to output and modify the
LED array fast enough to see a persistent image:
The first issue that must be dealt with is the physical
construction of the array. The array will be 8x8x8 LEDs,
accounting for a total of 512 devices. Due to lack of
accessibility we will have to make certain that each LED is
functional and stays so throughout the construction.
A study base and casing will also have to be provided for
the array, as the construction doesn’t allow for a large
amount of structural integrity. A wooden base and a
Plexiglas case is proposed to deal with this issue and to
protect the LED array from general jostling and movement.
Due to the very large number of LEDs that need to be used
at once, current considerations will have to be taken into
account, verifying that we have enough power to supply a
good level of luminescence so that we may not only turn on
all LEDs but also modify them through pulse width
modulation.
The microprocessor will be in charge of user inputs, motion
detection and general code development for the graphics. It
will process all inputs and verify what set of parameters need
to be outputted to the FPGA. It will also control the pulse
width modulation that will be used to modify the dimness of
the LEDs.
The FPGA will process the various inputted signals and
implement the digital hardware necessary to output the +64
signals required to functionally modify the LED array. Here
we are looking to make
the code as fast as possible, so as not to create a bottle neck
in our refresh rate.
Since each LED needs to be controlled individually, memory
issues will have to be considered when adding more graphic
options. Otherwise, we will have to find ways to streamline
Volume: 03 Issue: 10 2016
www.ijmtes.com
100
IJMTES | International Journal of Modern Trends in Engineering and Science
our code to allow for more variety without a significant
increase in the memory needed.
A. Concept/Technology Selection:
We have chosen the implementation of this Work
based on our teams experience and the simplest methods by
which we see to complete our goals. When constructing the
actual LED array we have chosen to construct the array in
columns, verifying that all LEDs function after every step.
Due to close proximity soldering there is a high chance that
some of them may burn out and we would like to catch this
early on. Once we have all columns completed.we will stack
them and fix the columns beside each other till they are fully
assembled in a cube form. We shall also place several strong
strands of wire to support the structure and increase its
integrity.
ISSN: 2348-3121
would be more eloquent and require a physically smaller
design. The best solution may be a combination of the two
systems to achieve a maximum number of graphics possible.
4. APPLICATION
3D Display Cube: A Next Generation Display
B. LED Columns , LED cube consists of many columns
Fig.9 An LED cube glowing and displaying patterns
Many aspects of contemporary work and recreation require
the effective visualisation of three dimensional data:
studying the structures and interactions of biochemicals,
designing a new space vehicle extracting a relationship from
multi-variable plots in the social sciences diagnosing a
patient's illness from non-invasive scans planning a new
sculpture or playing the latest computer gameConventional
methods for displaying 3D data exclusively involve flat (2D)
displays that give the illusion of depth.
5. POSSIBILITIES OF FUTURE EXPANSION
We have chosen to do the main processing in C through our
MSP430. Since both team members have significant
experience in coding this device and language it will help
develop more intelligent and succinct code. The digital
hardware that will be the basis for the LED driver will come
from an FPGA. This will allow us the benefit of speed to
update outputs as fast as needed as well as reducing our
design footprint. Though the PCB design may be more
difficult the result would be much more beneficial than using
several ICs, especially due to the large number of outputs we
require.There are two ways in which we can fashion the code
to control the LEDs. The first would be to preprogram
individual bits to be retrieved and outputted sequentially.
This is the brute force method but it may prove easier than
the others. The main issue however is memory allocation and
size, for multiple graphics or the addition of new ones we
will probably need to add external memory to process it. The
second method which is the one we will attempt is to make
code as intelligently as possible so that the designs can be
created and output directly from the microprocessor, without
other hardware required. This method maybe slower but it
Volume: 03 Issue: 10 2016
Low-level (as opposed to application-level) pulse width
modulation brightness control of the LEDs, with
corresponding intensity variations on the SVGA output.
Implementation of the Bresenham line drawing algorithm to
allow projection angles other than 45°. Display of 3D data
stored on a Compact Flash card - may be used as initial
conditions for cellular automata.
True 3D rendering (rather than orthographic projection) of
the cube on SVGA output,rotatable in real time by user.
Modification of the cube to increase resolution/enhance
visibility – use a larger lattice spacing or smaller LEDs
(ideally SMT, but this would require a new construction
technique)
6. CONCLUSION AND RESULT
Our cube performed reasonably well; we were able to
display a message on the cube that was readable if the room
was relatively dark and you were looking at it on axis. Our
light show also worked as expected and both the message
and the light show adjusted themselves when you turned to
cube sideways. If we were to redo our project we would have
www.ijmtes.com
101
IJMTES | International Journal of Modern Trends in Engineering and Science
ISSN: 2348-3121
designed a slightly different LED driver circuit that would be
able to supply enough current to power all 5 LED's at once
and also make each LED brighter. We might also consider
making some sort of plexiglass case to make the structure
stronger and more visually pleasing. Additionally we would
look into displaying some other interesting thing on our
cube.
7. ACKNOWLEDGEMENT
We are also thankful to entire faculty and staff members of
Electronics and Telecommunication Department who
devoted their valuable time and
helped us in all possible ways towards successful completion
of this work. We are greatly indebted to all our friends, who
have graciously applied themselves to the task of helping us
with ample morale support and valuable suggestions.
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
Actuality Systems, “Perspecta 3d display”, http://www.actualitysystems.com/
Shin-Mim Liu and Kaung-Chang Chou, “The Design and
Implementation of a Low Cost 360 Degree Color LED Display
System”, IEEE Transaction and Consumer Electronics, Volume 57,
No. 2, May 2011.
Chao – Huang Wei and Phuong –Nhung Bui “Implementing a web
based remote controlled system for Led dot matrix display
Felix 3D, “Felix 2”/”solidFELIX”, http://www.felix3d.com/
Network Wizards, “Cubatron”, http://nw.com/nw/projects/cubatron/
Todd
Holoubeck,
“LED
cube”,
http://www.toddholoubek.com/projects/ledpage/
ChrisLomont,
“LED
Cube”,
http://www.lomont.org/Projects/LEDCube/LEDCube.php
Wikipedia, “Persistence of Vision”, http://en.wikipedia.org/wiki/Per
Volume: 03 Issue: 10 2016
www.ijmtes.com
102