Forum: Mikrocontroller und Digitale Elektronik Projekt Adventskalender


von Giant (Gast)


Lesenswert?

Hallo alle zusammen,

Ich habe für dieses Weihnachten ei Projekt auf dem Tisch wo ich mal 
bitte eure Hilfe bräuchte.

Es geht um einen Adventskalender der aus 24 LEDs besteht . Jeden Tag 
soll automatisch ein weiteres Licht leuchten und das ohne das man es 
manuell einschalten muss.
Mein Problem besteht jetzt prinzipiell erst mal darin den geeigneten MC 
zu finden.

Habt ihr da einen guten Tipp für mich ?

: Verschoben durch Moderator
von Sowieso (Gast)


Lesenswert?

Aber klar....die uC vom Weihnachtsmann. Läuft 1a und aufgrund von den 
hohen Stückzahlen, die gefertigt werden, gibt's die auch zum 
Kampfpreis;-)

Schon ein bischen Gedanken über's System selbst gemacht? Der Hersteller 
ist geschmackssache. Das Konzept wäre hier wichtiger.

von Sowieso (Gast)


Lesenswert?

Kommt natürlich auch stark auf Deine Kenntnisse im Bereich der uC 
Programmierung und HW an.

von Sowieso (Gast)


Lesenswert?

Wie wär's mit einer fertigen Lösung ala Adruino oder sowas?

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Giant schrieb:
> Mein Problem besteht jetzt prinzipiell erst mal darin den geeigneten MC
> zu finden.

ich behaupte mal: Jeder auf dem Markt befindliche ist dazu geeignet.

von Frank L. (hermastersvoice)


Lesenswert?

einige 4017 hintereinandergeschaltet tuns auch. Taktgenerator dazu der 
jeden Tag einen Impuls abgibt und ggf ein paar Transistoren für die 
Ausgänge.

von Giant (Gast)


Lesenswert?

Meine Kenntnisse im Bereich uC sind glaube ich sehr gering . Ich hatte 
es mal in der Ausbildung aber die ist leider auch schon eine ganze Weile 
her. Und was man nicht anwendet vergisst man leider recht schnell 
wieder.

An eine fertige Lösung hab ich auch schon gedacht . Halten die denn was 
sie versprechen ?

Mein Konzept ist eigentlich einen Timer laufen zu lassen und aller 24h 
einen Zähler um eins nach oben zählen zu lassen so das ich aus dem 
binären Ausgängen mittels logischen Verknüpfungen die LED´s ansteuern 
kann.

von Defon (Gast)


Lesenswert?

Wegstaben V. schrieb:
> Giant schrieb:
>> Mein Problem besteht jetzt prinzipiell erst mal darin den geeigneten MC
>> zu finden.
>
> ich behaupte mal: Jeder auf dem Markt befindliche ist dazu geeignet.

Zeige doch bitte dem geneigten Auditorium deine Schaltung mit dem 
ATTiny4.

von X. X. (chrissu)


Lesenswert?

3x 8-bit Schieberegister hintereinander, und jeden Tag ne eins 
reinschieben...

Brauchst Du nicht mal Software...

Der Advent hat zum Glück genau 3 Byte :-)

von Giant (Gast)


Lesenswert?

Chriss X. schrieb:
> 3x 8-bit Schieberegister hintereinander, und jeden Tag ne eins
> reinschieben...
>
> Brauchst Du nicht mal Software...
>
> Der Advent hat zum Glück genau 3 Byte :-)

Danke für den Tipp ! Da hab ich wohl mal wieder zu Kompliziert gedacht 
...

von Giant (Gast)


Lesenswert?

Hast du zufällig auch noch so eine einfache Lösung für die tägliche 1 
ohne das ich einen Taster betätigen muss ?

von Steffen R. (steffen_rose)


Lesenswert?

Dran denken, dass man evtl. an einem beliebigen Tag beginnen kann. Wär 
ja ärgerlich, wenn man den 1. verpasst oder zwischendurch mal die 
Energie weg ist.

von Sowieso (Gast)


Lesenswert?

Chriss X. schrieb:
> 3x 8-bit Schieberegister hintereinander, und jeden Tag ne eins
> reinschieben...
>
> Brauchst Du nicht mal Software...
>
> Der Advent hat zum Glück genau 3 Byte :-)

Per Hand? Keine Ironie, wie iss'n das gedacht.

von Olaf (Gast)


Lesenswert?

Giant schrieb:
> Hast du zufällig auch noch so eine einfache Lösung für die tägliche 1

Und genau da liegt der Hase im Pfeffer. Ein NE555 oder ein 
Rechteckgenerator mit einer Frequenz von 1 Impuls pro Tag wäre zu 
ungenau (Temperatur , Spannung, Luftfeuchtigkeit). Da kommen schon 
einige Minuten Differenz pro Tag zusammen (z.B. 10 min / Tag x 24 Tage = 
240 min = 4 Stunden).

Ein Uhrwerk mit Weckfunktionsausgang um das Schieberegister zu füllen 
wäre genau.

Jeden Sonnenaufgang mit einem LDR erfassen (an bewölkten Tagen zu 
ungenau).

Einen 4,096 MHz Quarz mit einem CD4060 runterteilen und dann noch ein 
paar 4040 und 4017 dahinter (Aufwand ist höher als die 3 
Schieberegister).

von Börge (Gast)


Lesenswert?

Hier mal ein einfacher 24 std. Timer , den du dann ja mit dem oben 
erwähnten Schieberegister kombinieren kannst...

http://www.zen22142.zen.co.uk/ronj/24h.html

Gruss Börge

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Für Zeitsteuerungen verwendet man heutzutage am Besten einen µC der 
bereits eine RTC Uhr mit eingebaut hat und einen VBatt Eingang für 
Batterie hat. Damit läuft die Zeit auch bei Stromausfall weiter und die 
LED's sind alle wieder richtig gestellt.

Diverse Boards, bei dem gleich ein RTC mit angeschlossen ist gibt es 
fertig zu kaufen für kleines Geld. z.B. STM32F4DISCOVERY, da ist für 20 
Eur auch gleich der Debugger dabei.

Nun ist der STM32F4 schon ein recht dickes Teil mit umfangreichem 
Datenblatt, daher solltest Du eher nach einem einfacheren ausschau 
halten.

Auf www.olimex.com gibt es viele Demo-Boards, auch mit Demo-Software, 
nicht nur STM32.

Oder ein Arduino, dafür gibt es sicher auch ein RTC Shield, der die 
Uhrzeit hält.

von Horst (Gast)


Lesenswert?

Da ich den Kram Grad auf den Schreibtisch hab: ESP8266 und 24*WS2812. 
Per NTP die Zeit holen und [day]-LEDs leuten lassen.

Ey, ist Hobby und Weihnachten, da darf es Overkill sein.

von Michael B. (laberkopp)


Lesenswert?

Giant schrieb:
> Mein Problem besteht jetzt prinzipiell erst mal darin den geeigneten MC
> zu finden.

Im Prinzip geht jeder, vorzuziehen sind solche die zumindest 24 Ausgänge 
haben damit man LEDs direkt anschliessen kann,
aber auch mit 14 Ausgängen kann man 24 LEDs leuchten lassen (2-fach 
Multiplex) und mit 11 (3-fach Multiplex).
Selbst der auf 1/3 von 20mA (also 8mA) gesunkene Strom bei 3-fach 
Multiplex wird immer noch hell genug sein.

Du brauchst ein Netzteil, z.B. 5V, 0.5A reichen, und solltest einen uC 
verwenden, der mit einem Quartz betrieben wird für halbwegs genaue Zeit 
(da der Wechsel um Mitternacht stattfinden wird, interessiert das so 
genau eh niemanden).

Ein Arduino Uno wäre ok, das Programm ist einfachst:
1
unsigned long currentMillis,previousMillis,lastMillis; 
2
int i;
3
union
4
{
5
  long bits;
6
  unsigned char leds[4];
7
}
8
lights;
9
setup()
10
{
11
  DDRD=0xFF; 
12
  DDRB=0x07;
13
  lastMillis = previousMillis = millis(); 
14
  lights.bits=0xFFFFFE;
15
}
16
loop()
17
{
18
  currentMillis = millis();
19
  if(currentMillis != previousMillis ) // 1/1000 Sekunde
20
  {
21
     i=(i+1)%3;
22
     PORTB=1<<i;
23
     PORTD=lights.leds[i];
24
     previousMillis = currentMillis ;
25
     if(currentMillis-lastMillis>=86400000UL) // 1 Tag
26
     {
27
         lights.bits<<=1;
28
         lastMillis = currentMillis;
29
     }
30
  }
31
}
Aber das geht nicht nur mit einem Microcontroller, sondern auch mit 
normalen ICs: CD4017 kann 10 LEDs, 3 davon reichen, und man braucht nur 
noch einen Oszillator der einen Impuls pro Tag liefert, das könnte mit 
hinreichender Genauigkeit ein 12.8MHz Quartz an 2 CD4060 erbringen.

von Horst (Gast)


Lesenswert?

Giant schrieb:
> Jeden Tag
> soll automatisch ein weiteres Licht leuchten

Michael B. schrieb:
> CD4017 kann 10 LEDs, 3 davon reichen


Das zeig mal ohne Dioden im Wert eines Arduino

von Olaf (Gast)


Lesenswert?

Frank L. schrieb:
> einige 4017 hintereinandergeschaltet tuns auch.

Michael B. schrieb:
> CD4017 kann 10 LEDs, 3 davon reichen

Im Prinzip richtig, aber es leuchtet immer nur eine LED (am nächsten Tag 
leuchtet die Nächste und die Vorherige geht dann aus). Deswegen ist das 
Schieberegister neben dem µC schon der richtige Ansatz.

Michael B. schrieb:
> das könnte mit
> hinreichender Genauigkeit ein 12.8MHz Quartz an 2 CD4060 erbringen.

Falls kein 12,8 MHz Quarz zur Verfügung steht, kann auch jeder andere 
Quarz verwendet werden, wenn man zusätzlich noch einen CD4518 mit ein 
paar Drahtbrücken verwendet (programmierbarer Teiler, teilt auch durch 
ungerade Zahlen).

von A. S. (Gast)


Lesenswert?

Wenn Du ein µC-Projekt willst, dann mache es.

Egal ob Du Dir ein fertiges Board kaufst oder einen µC mit Uhrenquarz 
und 24(LEDs+Vorwiderstand) fliegend verdrahtest.

Suche Dir was aus, was genug Pins hat und wo Du den Einstieg wagen 
willst.

Tu es einfach. Gehe nicht über weitere Konzepte, Schaue nicht auf 3€ 
weniger und warte nicht auf den genialen Tip.

Sehe zu, dass Du irgendeine LED blinken lässt. Dann wirst Du innerhalb 
von 24h auch den Rest hinbekommen!

Wenn man möchte, dass jemandes Projekt stirbt, dann lässt man ihn 
darüber erzählen.


(und nach den 24h kannst Du bis Weihnachten die 1000 neuen Ideen 
umsetzen, die Dir dann in den Kopf kommen. Angefangen vom langsamen 
heller werden (durch PWM) der neuen LED bis übers blinken im Takt von 
Dschingle Bells)

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Und damit das Projekt noch richtig Spannend wird:

Dimme die LED's mit einer PWM.

Nachts ab x Uhr können die ruhig dunkler sein als am Tag.

: Bearbeitet durch User
von Harald W. (wilhelms)


Lesenswert?

Giant schrieb:

> Hast du zufällig auch noch so eine einfache Lösung für die tägliche 1
> ohne das ich einen Taster betätigen muss ?

Eine 24 Std-Steckerschaltuhr?

von Michael B. (laberkopp)


Lesenswert?

Olaf schrieb:
> Michael B. schrieb:
>> CD4017 kann 10 LEDs, 3 davon reichen
>
> Im Prinzip richtig, aber es leuchtet immer nur eine LED (am nächsten Tag
> leuchtet die Nächste und die Vorherige geht dann aus). Deswegen ist das
> Schieberegister neben dem µC schon der richtige Ansatz.

Stimmt.

von Giant (Gast)


Lesenswert?

Vielen Dank für die vielen hilfreichen Tipps! Ich werde es in Angriff 
nehmen ??

von Jobst M. (jobstens-de)


Lesenswert?

Horst schrieb:
> Ey, ist Hobby und Weihnachten, da darf es Overkill sein.

Okay ...

24 LEDs hängen an den Ausgängen von 24 Komparatoren, welche über einen 
langen, abgleichbaren Spannungsteiler die jeweilige Spannung mit der in 
einem großen Elko, welcher die ganze Zeit langsam geladen wird, 
vergleichen.

Alternative Zeitgeber:
- Rubidium getakteter Zähler mit DAC dahinter.
- Eimer auf Wage (DMS) in welchen langsam Wasser/Sand 
reinläuft/tropft/fließt

Oder ...

Ein Pic32MZ mit Crypto-Engine und zwei Kameramodulen. Die erste Kamera 
wird auf eine Uhr oder einen Baumschatten gerichtet und errechnet so die 
wahrscheinlichste Zeit für den Tageswechsel. Wenn dieser stattgefunden 
hat, erzeugt er so lange Zufallszahlen und gibt diese auf den LEDs aus, 
bis er mit dem zweiten Kameramodul feststellt, dass die richtigen LEDs 
leuchten.

...

Gruß
Jobst

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.