Beruflich Dokumente
Kultur Dokumente
INTRODUCTION
This project takes the simple concepts of LED light in three dimensions. This visual LED cube
(3D LED light) consists of a 8x8x8 array of LEDs that is able to display low-resolution images.
The primary hardware design goal was to come up with a way to control all 512 LEDs using the
least amount of wires and components necessary but without sacrificing performance and
controllability of the cube. This project has no definitive endpoint. An endless number of
animations can be created. The LED cube is a viable commercial product with limitless potential
in design applications. Construct an 8x8x8 Single color LED Cube and light up LED Cube
The objective of the electronic hardware will be to have control of the 64 LEDs. In order
to minimize the number of traces from the LEDs, a unique wiring scheme was
implemented instead of each LED having its own power and ground.
The wiring scheme that will be implemented is in the following figure. All of the anodes
within each of the 16 columns (4 LEDs per column) are connected together and share
power. All of the cathodes within each of the 4 rows (16 LEDs per row) will be
connected together and share grounds. Total there will be 16 power columns and 4
ground rows. This scheme allows for control of each LED and reduces the amount of
connections from 128 (64 power, 64 grounds) to 20 connections (16 power, 4grounds).
NE555 TIMER- The 555 timer IC is an integrated circuit (chip) used in a variety of timer,
pulse generation, and oscillator applications. The 555 can be used to provide time delays, as
an oscillator, and as a flip-flop element. It will provide the clock pulses for the 4020 IC.
4020 IC- 4020IC is a 14 stage binary counter with a clock input buffer output the
counter 6+advances on the high to low transition of clock pulse. A feature of this device
is its high speed. It operates o0ver a recommended power supply of 3v to 5v .
CHAPTER 2
LITERATURE SURVEY
For the accomplishment of this project work, we have studied many articles, blogs and
papers on the related topics of the Arduino, shift register .Since we have interfaced the
Arduino board with shift register.
3D LED cube is a evolution from 2D display. Before this, 2D display is usually used in
many electronic devices to display something. After that, 3D takes a part on the
electronic technology world.
The first era of 3D LED cube is built the 8x8x8 pocket LED. It just use 512 LED to
shown some text display or interactive design. The cube's 3D with use 512 LEDs, the
design or text that display is not too clear. It runs using a PIC16F690 and a piece of
software written in VB.NET.
After that, 4x4x4 LED CUBE has been introduced. 64 LED s has been used to show the
3D view. Many type of controller can be used to develop this project. PCB is one of the
controller that been used. For example, Atmel Atmega16 microcontroller and AVR
microcontroller. Each LED can be addressed individually in software, enabling it to
display amazing 3d animations. On the programming side, many type of coding can be
built for this project such as FPGA, mat lab and c language.
Now 5x5x5 3D LED CUBE with 125 LED s has been choosing for this project. It has
two ways can be choose as controller for this projct. Whether by PIC16F877A or by
arduino controller board. Have a same concept, but with a different works. C language
with hex files will be use to run the program. The reason why will choose C language
because it related with microcontroller interfacing subject that had been taken for all
electric and electronic student in UniKL BMI. MATLAB IDE will be use as software to
run this program. This unique way of displaying messages is a very eye catching and
much more stand out compared to the two dimensional normal panel displays
CHAPTER 3
BASIC SYSTEM ORGANISATION
This project is being done to display the different patterns of an using shift register and
get the output on LED cube. We have used the Arduino Board interfaced with shift
register to do so. The objective of our project is:- Construct an 8x8x8 Single color Led
Cube and light up LED Cube in different patterens with auto and acoustic signal.
3.1 INTRODUCTION OF LED CUBE
A LED cube is like a LED screen, but it is special in that it has a third dimension, making it
3D. Think of it as many transparent low resolution displays. 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 trough it, and more spacing between the pixels is needed.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 are 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.
3.3Microcontroller 8051
Apart from 8051, 8052 and 8031 complete the 8051 family. The 8052 microcontroller has
256 bytes of RAM and 3 timers. Programs written for 8051 projects can be used for 8052 as
well. The 8031 has all features of 8051 except that it is ROM-less. An external ROM that is
as large as 64 k bytes can be programmed and added to this chip for execution. The main
disadvantage of adding external ROM is that 2 out of 4 ports are used up leaving less for I/O
operations.
The different types of memory used in 8051 are:
i. Internal RAM Located from address 0 to 0xff.
ii. Special Function Registers (SFR) Located from address 0x80 to 0Xff.
iii. Program Memory Located at address 0. Uses 16 bit Special Function Register DPTR, to
save the tables of constants.
iv. External Data Memory Located at address 0. Uses MOVX (Move External) to access the
external data memory.
8051s history dates back to when Intel Corporation first built the 8 bit microcontroller in
1981. This microcontroller was referred as system on a chip because it had 128 bytes of
RAM, 4 Kbytes of ROM, 2 Timers, 1 Serial port, and four ports on a single chip.
CHAPTER 4
SYSTEM BLOCK
4.1 MICROCONTROLLER 8051: The microcontroller can be classified can be broadly
into following components
Read Only Memory (ROM)
Read Only Memory (ROM) is a type of memory used to permanently save the program being
executed. The size of the program that can be written depends on the size of this memory.
ROM can be built in the microcontroller or added as an external chip, which depends on the
type of the microcontroller. Both options have some disadvantages. If ROM is added as an
external chip, the microcontroller is cheaper and the program can be considerably longer. At
the same time, a number of available pins is reduced as the microcontroller uses its own
input/output ports for connection to the chip. The internal ROM is usually smaller and more
expensive, but leaves more pins available for connecting to peripheral environment. The size
of ROM ranges from 512B to 64KB.
Random Access Memory (RAM)
Random Access Memory (RAM) is a type of memory used for temporary storing data and
intermediate results created and used during the operation of the microcontrollers. The
content of this memory is cleared once the power supply is off. For example, if the program
performes an addition, it is necessary to have a register standing for what in everyday life is
called the sum . For that purpose, one of the registers in RAM is called the "sum" and used
for storing results of addition. The size of RAM goes up to a few KBs.
Electrically Erasable Programmable ROM (EEPROM)
The EEPROM is a special type of memory not contained in all microcontrollers. Its contents
may be changed during program execution (similar to RAM ), but remains permanently saved
even after the loss of power (similar to ROM). It is often used to store values, created and
used during operation (such as calibration values, codes, values to count up to etc.), which
must be saved after turning the power supply off. A disadvantage of this memory is that the
process of programming is relatively slow. It is measured in miliseconds.
processing. One of the SFRs, called the Status Register, is closely related to the
accumulator, showing at any given time the "status" of a number stored in the
accumulator (the number is greater or less than zero etc.).
7A. The 74HC/HCT574 are octal D-type flip-flops featuring separate D-type inputs for each
flip-flop and non-inverting 3-state outputs for bus oriented applications. A clock (CP) and an
output enable (OE) input are common to all flip- flops. The 8 flip-flops will store the state of
their individual D-inputs that meet the set-up and hold time requirements on the LOW-toHIGH CP transition. When OE is LOW, the contents of the8 flip-flops are available at the
outputs. When OE is HIGH, the outputs go to the high impedance OFF-state. Operation of
the OE input does not affect the state of the flip-flops.
FEATURES
.Features
Features
12
CHAPTER 5
RESULT
13
CHAPTER 6
CONCLUSION AND FUTURE SCOPE
CONCLUSION:
This project is aimed at helping in displaying the different patterns using Arduino. As in our
project we have interfaced Arduino Board with shift register transistor and music chip IC.
The project clearly determines the features of LED CUBE.
FUTURE SCOPE:
This project focused primarily on the most efficient way to build an LED cube and to also
interface music with the cube. The cube was designed with simplicity in mind, so there is a
lot room for development of both the hardware and the software. This section outlines a few
of the possibilities for work on this as well as future LED cube projects.
In terms of hardware, this cube was built to simply function as a 8x8x8 matrix of LEDs.
While this build was stationary, rotational effects could be implemented using motors and
more loose fitted LEDs (in terms of wiring). Accelerometers could also be utilized in such
applications. Also, the only visual effects being generated by this LED cube are from the
LEDs themselves. Things such as one-way mirrors, lasers, light bulbs, smoke machines, and
even dry ice have all been suggested over the course of this year.
Improvement in software design is really where a lot of future work could be spent. While
this team focused purely on creating light shows for display and the ability to detect and play
an audio signal in real time, these are not the only possible ways in which to use the LED
cube. One aspect the team started to touch on near the end of the project was user
interactivity. Through the use of a serial monitor built in to the Arduino software, the
14
microcontroller can serially read in inputs from the keyboard and use these inputs to execute
specific code already uploaded to the Arduino. This was used to switch between the
animations and audio-visualization shows during the presentation, but the idea can be
expanded in other ways.
Programming user-interactive games. The low resolution of the cube has its limitations, but
games such as 3D Snake or 3D Pong would greatly expand the current functionality of the
LED cube into something more than just a light show.
The cube could also be used to simulate 3D models such as earthquakes, fluids, or cellular
automation. Again, however, the low resolution of the cube would not allow for models that
are extremely detailed and complex, so a larger single colours cube would most likely be a
better build if such applications were to be implemented.
Improvements could also be made on how the animations are coded and that also expand on
the idea of user interactivity. Simply put, this teams method for coding the cube may not
have been the most efficient or easiest way to achieve the light and music shows. While
explicitly writing the binary values into an array for each colour was very intuitive and
straightforward, it required a lot of abstract thinking to properly turn on and off each LED for
each desired image.
The most interesting solution to this problem, and a solution that opens up coding the cube to
everyone and not just programmers, is to create a graphic user interface, or GUI, to visually
program the cube. By having a model of the cube on a computer, the user would be able to
choose a colour and then click the LEDs that they wanted to turn on with that colour and then
save the image for use in the actual visual display. The user would then move on to
programming the next image until eventually they have a complete light show finished in a
fraction of the time it would take to program it individually. While it would take a very long
time to actually program the GUI to be streamlined and bug free, it would save a lot of time
in the long run. This type of interface would also eliminate the need for the common user to
have a substantial knowledge of programming.
15
REFERENCES
http://arduino.com/
http://www.instructable.com/LED-cube-8x8x8/
http://www.instructables.com/how-to-build-an-8x8x8-LED-cube-and-control-i-with/
16