Go Down

Topic: 2 digit seven segment LED display  (Read 3433 times) previous topic - next topic

sevla747

I am currently in the planning stage of a project that includes a 2 digit seven segment LED display. I am interested in either using standard incandescent bulbs or LED's to form the display. I prefer to use incandescent to keep my project as close to authentic as possible but I can use LED's. I've recently purchased an Arduino Mega and (2) 8 channel SSR boards to use in the project. I planned on using one relay per segment. My idea is to have the LED's or incandescent bulbs randomly display pre-programmed numbers.

I've never worked with an Arduino before so I have no knowledge of connection and programming. I would greatly appreciate all the input and assistance I can get in putting this project together.


Pedro147

Before a mod tells you, if I were you I would delete two of the three cross posts you have put up and just leave this one  8)
http://www.pedroduino.com

PaulRB

Hi,

Quote
standard incandescent bulbs
Tell about these bulbs. What voltage and current do they need?

Paul

Paul__B

Before a mod tells you, if I were you I would delete two of the three cross posts you have put up and just leave this one.
You forget - he cannot delete original posts.  Apparently the mod did then.

Pedro147

http://www.pedroduino.com

sevla747

Here is a picture of what I'm trying to replicate. I'm scaling this scoreboard down to 80"X32" so I'd like the 2 digit display to be approx 8"x6". I could either use indicator bulbs or warm white LED's. I'm uncertain of bulb types and voltages that would work here. Would I have to run separate bulb strings for each segment or could I light each bulb independently? Of course being able to control them independently would make this more authentic in operation and may require more relays. Either or I believe this would require an outside power source independent of the MEGA.

As far as programming goes I would like it to display a different player number for about 20-30 mins and then alternate to another and so on.





 

PaulRB

#6
Feb 18, 2015, 09:04 pm Last Edit: Feb 18, 2015, 09:13 pm by PaulRB
Hi,

Yes you will absolutely need a separate power source, for leds or bulbs. Bulbs will require around 10 to 20 times more current than leds.

Not sure why you would want to control each bulb separately, unless to have chasing light patterns. If so, avoid relays, they will wear out too quickly.

Warm white leds would be the easiest soution. They come on adhesive strips and can be cut after every third led. You can drive them with 2 tpic6c595 chips.

For bulbs, I am no expert on how to drive them, but I would think about power-fets because of the current each segment would draw. However, as you already have the relay boards, those could be used.

Looking at the displays in your picture, I wonder if they are 7 segment. The bulbs in the corners would need to be lit if either of the segments adjoining are lit.

A Mega is overkill for this project. By all means use it during the prototype stage, but use an Uno or Nano 3 or attiny for the final circuit, depending how the design goes.

Paul

sevla747

Ok, so it would most likely be easier to use LED's in this project. To keep it as close to the original as possible I'd like to keep the LED count to 20 per digit. Would the UNO support this setup? I'm a definite newbie and was thinking I needed more outputs to control the display. If I group the LED digits, as shown in my attachment, can they operate directly off of the Arduino (Mega, Uno)?


CrossRoads

You can use shift registers to drive the digits. I see 13 things broken out, so 2 shift registers per digit.
Define a font for each digit, shift it out as 2 bytes for each digit.

Code: [Select]

int fontArray[] = {
0b0001111110111111, // 0, 1 = segment on xxxMLKJIHGFEDCBA
// etc for 1,2,3,4,5,6,7,8,9
};

To send it out:
digitalWrite (latchPin, LOW);
SPI.transfer(highByte(fontArray[digitToDisplay]);
SPI.transfer(lowByte(fontArray[digitToDisplay]);
digitalWrite (latchPin, HIGH);
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

sevla747

What type of shift registers would you recommend? I'd like to use the following LED's for the display.


QTY:40

Specifications:

    Color: Warm White
    Package: Round 10 mm
    Lens type: Diffused, milky-white translucent
    Viewing angle: 50 degrees
    Intensity: 3,000 mCd typ. at 20 mA
    DC forward current: 30 mA
    Forward voltage (typical): 2.7 V

Thank you for all the help
   

PaulRB

I suspect your SSR boards can only be used with AC power (because they contain photo-triacs?). So they won't be suitable for LEDs. They could be used with bulbs, but you would need to find a low-voltage AC-output power supply to run them.

With LEDs, you could use TPIC6B595, as I suggested earlier. These are high-current shift regsiters so you would not need extra transistors to drive the leds.

I think you might be able to avoid using 2 regsiters per digit, if you use some diodes on the 6 "corner" leds. You would need to use slightly different series resistors with those leds to maintain even brightness, accounting for the voltage drop of the diodes.

Paul__B

Not sure how visible those 1/10 watt LEDs are going to be in daylight.  You might be better to use 1 watt LEDs (which must be mounted on the back of a standard finned heatsink, preferably with a mini-fan) if you are seriously going to use this on an outdoor scoreboard.

If you are going to be running from 12V using a TPIC6B595, then your "middle" LED pairs can be in series, and you could indeed, activate the corner LEDs using diodes but that would require extra current from the drivers.

The TPIC6B595 is rated at 150 mA continuous (which might also be concluded to be close to an average current rating) so it cannot really supply the "corner" LEDs via diodes and in fact, with whatever configuration you use, you would really have to de-rate the LEDs to the 150 mA by choice of series resistor value (and not need the fan on the heatsink).

Nevertheless, LEDs driven at 150 mA should be quite effective.  You have the choice of using two TPIC6B595 to drive the 13 segments and multiplexing them with two high-side drivers to select each numeral alternately, or simply four TPIC6B595 controlling them continuously.  If you accept certain constraints on "corner" LEDs, you could reduce the number of "segments" to 12 and need only three TPIC6B595 to operate two digits.

I should point out by way of explanation that if you implement the "corner" LEDs as extra segments, they are not just driven as an "OR" of the adjacent segments, but used to improve the numeric font, "rounding" the numerals.

sevla747

Thank you for the help. I should've pointed out earlier that this will be used for indoor decoration only. My wife is a huge RedSox fan so I'm trying to bring a little bit of Fenway to the front room, hopefully in time for baseball season.

I like the idea of staying simple and using four registers (TPIC6B595). Does anyone know of an Uno shield like this for purchase?

PaulRB

Quote
staying simple and using four registers 
Simple would be 2 registers. Can you clarify what you meant?

Have a look here and get some advice from Crossroads:

http://www.crossroadsfencing.com/BobuinoRev17/

Look at the "12-digit, or 96 Bit, LED driver" and "32 N-channel MOSFET board with screw terminals".

Both are over-spec'ed for you needs. Maybe a proto-shield and solder your circuit up on that?


sevla747

#14
Feb 25, 2015, 05:49 pm Last Edit: Feb 25, 2015, 06:11 pm by sevla747
Sorry for being difficult here I've never worked with these components before. I'm definitely more of a builder than a designer.

I was just assuming that if each digit has 13 segments I would need 2 registers per digit. I was going to group the main 7 segments into 2 LED's per drain pin and have the 7 corner LED's run on separate individual drain pins. The display has 2 digits so 4 registers total, 2 per digit.

@Crossroads.....Would the MAX7219 breakout board work for this display?

Go Up