Design+Document

3D LED displays are used as electronic art pieces to display messages and graphics and are a must have piece of DIY tech art. The larger the 3D display, the better resolution that can be obtained but the manufacturing process of a large LED cube can be very difficult and time consuming since every single LED has to be hand soldered. By implementing 3D LED displays in a modular approach, smaller LED cubes can be used as building blocks for bigger displays. A small LED cube is easier to implement and manufacture and simplifies the maintainability of the bigger display, where only small pieces need to be repaired or replaced.
 * PROBLEM DEFINITION **

Simplify the manufacturing process of a large LED cube by applying a modular design approach. Provide a seamless integration between each LED cube module. Each LED cube module should be capable of being configured on standalone or cooperative mode.
 * OBJECTIVES **


 * MARKETING REQUIREMENTS **
 * 1) Modules are easily configurable and reprogrammable
 * 2) System modules are compact in size
 * 3) Modules are sturdily built
 * 4) Low power consumption
 * 5) Utilize readily available parts


 * ENGINEERING REQUIREMENTS **
 * **Engineering **
 * Requirement ** || **Justification ** ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system must have a refresh rate of at least 1.6 KHz. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The eye is capable of retaining an image for 1/25 of a second. This frequency allows to refresh a 4x4x4 LED matrix once. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system must have an average power consumption of 5W per module. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">Less power consumption allows for a longer time of use. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;"> Each LED cube must be fully functional as master or slave. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;"> Each cube can be used to drive the other. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system must be manufactured on a circuit board with dimensions of no greater than 2" x 2". || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">LED cubes should not avoid blocking cubes behind or below. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The case of each LED cube must be made of a clear acrylic material. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;"> LED cubes must be stackable and should not block other cubes from being viewed. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system must be reprogrammable. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;"> System must be able to display any character or image programmed by the user. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system must have a USB port. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">For ease of connectivity with a PC. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The cost for developing the system should not exceed $350. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">$350 is the available budget for this design. ||
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The system will not expose humans to any toxic or radioactive materials. || <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The health and safety of anyone using the system is always being considered. ||


 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">CONSTRAINTS **
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">Microcontroller board and other PCBs must not occupy an area larger than 4 in <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%; vertical-align: super;">2
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">Modules must not have any parts that may obstruct from viewing through them


 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">CRITERIA **
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The dimensions of the system in inches (smaller is better)
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The amount of code/memory in bytes required to operate (smaller/more efficient is better)
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The weight of the system in pounds (lighter is better)
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 130%;">The amount of power required by the system to operate in watts (less is better)


 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">SYSTEM ARCHITECTURE **

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">The diagram shown in figure 1 shows the data flow between modules and the PC for user interface. As stated in the objectives section above, a much larger system can be implemented by configuring several LED cubes and have then interface with each other as shown. A centralized master module that directly interfaces with the PC would be in charge of managing data flow and control over the entire network.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">Figure 2 below shows a high level detail of the system within every single LED cube, while figure 3 shows some of the possible configurations with four LED cubes.



<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">To meet the previously specified requirements, the LED matrix and electrical components will <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> be in a plexiglass enclosure as the one shown in figure 4 below. The area that the PCBs will cover may <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> not be over 4 in <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%; vertical-align: super;">2 <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> to allow for maximum viewing through the cube from any direction.
 * <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">MECHANICAL DESIGN **

FIGURE 4 HERE

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">The electrical connections between the LED matrix and the PCB will be through jumper wires <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> as the ones shown bellow in figure 5.

FIGURE 5 HERE

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">**DESIGN DECISIONS**

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> __**Microcontroller**__

TABLE 1 HERE

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">The microcontrollers shown in table 1 above where considered for implementation of the <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> design. They all have similar characteristics and three of them are within the same price range but <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> ultimately the Teensy++ 2.0 with the AT90USB1286 was selected due to its dimensions, GPIO pins, <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> and cost.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">__**Power**__ <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> The distribution of power through the system is one of the main concerns and two options were <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> assessed. The first option was to distribute power from the master module to each slave module <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> through a wire interface; the other option is to provide each module with its own battery. The later <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> option was selected since the desired battery specification is readily available and this method allows <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> for a better implementation of a modular design since each cube will not require to be connected to any <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> power source.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> When selecting the correct battery, there are some requirements that need to be considered, <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> continuous current supply, and the charge/discharge time. The following equation can be used

EQUATION HERE

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">The system requires approximately 1A and to allow the system to work for one full hour would <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> require a battery with an amp-hour rating of 1000mAh.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">__**Communications Protocol**__ <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> Since the overall objective of this design is to implement modules that are self contained and <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> can easily interface with the adjacent modules, the following options were considered: a two wire <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> interface in a daisy chain configuration of the modules, RF communications, and IR communications.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">A two wire interface would require each module to be connected to the next and the master <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> would have to send instructions from one to the next module. RF communications while it is a more <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> efficient solution to interface the modules, it is a much more complex communication protocol. The <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> later was found to be a more suitable solution for this design, since IrDA transceivers can be easily <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> interfaced with the microcontroller, and it would allow to stack the modules in any desired <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> configuration as long as there are IrDA transceivers on adjacent sides of the modules.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">This option requires the use of an I2C bus interface to UART with IrDA support. Each cube <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> would require to have at least four IrDAs, preferably six of them. Since it is an I2C bus to UART <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> interface, it allows to have one single I2C port to communicate with several UART devices.

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">**TEST PLAN** <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> A first pass through the test plan will include the following test actions shown in table 2 below. <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> These test actions will only test the overall functionality of the system and check that requirements and <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> constraints are met.

TABLE 2 HERE

<span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">**BILL OF MATERIALS** <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> The following table includes a preliminary list of materials to be used durint the design <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;"> implementation.

<span style="font-family: Arial,Helvetica,sans-serif;">TABLE 3 HERE <span style="font-family: 'Times New Roman',Times,serif; font-size: 140%;">