Ein Lauflicht im Wandel der Zeit
Meinrad Götz
Literatur: Lernpaket Mikrocontroller

Beim Durchstöbern alter Unterlagen bin ich auf eine alte Aufgabenstellung aus meiner Lehrzeit gestoßen, die mich auf einige Gedanke gebracht hat: „Bei einem Sommerfest soll auf die BAR durch einen beleuchteten Schriftzug hingewiesen werden, bei dem die drei Buchstaben nacheinander eingeschaltet werden. Nachdem der ganze Schriftzug leuchtet, soll dieser ausgeschaltet werden und der Vorgang von Neuem beginnen." Es folgten noch weitere Anweisungen, wie die Schaltung aufzubauen ist usw. Damals wurde die Schaltung mittels vier Zeitrelais (wenn ich mich noch richtig entsinne) auf einer Installationswand aufgebaut. Der Materialaufwand und der Platzbedarf war enorm, spielte damals aber nur eine untergeordnete Rolle, da hauptsächlich die fachgerechte Installation im Vordergrund stand.

Ganzen Artikel lesen...
Später viel mir diese Aufgabe wieder ein und ich suchte nach einer anderen Lösung ohne teure Zeitrelais. Da Mikrocontroller noch ein unbekanntes Wesen waren, wurde eine Schaltung mit Operationsverstärker aufgebaut. T1 bildet eine Konstantstromquelle über die der Kondensator C1 linear aufgeladen wird. Die Kondensatorspannung wird durch die Operationsverstärker I - IV, mit der durch die Widerstände R1 - R5 gewonnenen Referenzspannung, verglichen. Wird die Kondensatorspannung größer als die am jeweiligen Minus-Eingang des OP anliegende Spannung, so schalten die als Komparator geschalteten Operatationsverstärker ihren Ausgang auf High Pegel, wodurch der nachgeschaltete Transistor angesteuert wird und je ein Relais aktiviert wird. Wenn der Komparator IV schaltet, wird ein Monoflop, aufgebaut mit dem Timer NE555 gestartet, so dass sich Kondensator C1 über den Transistor T2 schnell entladen kann. Ist die Zeit des Monoflops abgelaufen, so beginnt der Vorgang erneut. Aus 4 Zeitrelais sind nur noch ein paar ICs geworden. Mit einem großzügigen Aufbau war alles auf einer Europakarte unterzubringen. Tatsächlich habe ich die Schaltung in der hintersten Bastelkiste noch gefunden.

Wie würde man diese Aufgabe aber heute lösen?

Kurz gesagt: Von den vier Zeitrelais über die Europakarte voller Analogelektronik ist ein ATtiny13 und ein einfaches, serielles Programm geworden. Ein Verzögerungsprogramm wird nacheinander aufgerufen, wobei dazwischen jeweils ein weiterer Ausgangsport aktiviert wird. Sollen die Zeiten oder die Abfolge verändert werden, so ist dies mit minimalem Softwareaufwand realisierbar. Mit der Hardwarelösung, ob nun Elektronisch oder Elektrisch, wäre der Aufwand um ein vielfaches höher.

;Lauflicht_BAR.asm,

(Lauflicht

mit

3

LEDs)

.include

"tn13def.inc"

.def


Delay1

=

r16

.def


Delay2

=

r17

.def


Delay3

=

r18

.def


LED

=

r19

rjmp

Anfang
Anfang:

ldi

r16,0b00000111

;Datenrichtung

PB0,

PB1,

PB2

out

ddrb,r16
Anfang1:

ldi

LED,0b00000001

;1.

LED

ein

(B)

out

portb,LED

rcall

Pause

ldi

LED,0b00000011

;1.

u.

2.

LED

ein

(BA)

out

portb,LED

rcall

Pause

ldi

LED,0b00000111

;1.

2.

u.

3.

LED

ein

(BAR)

out

portb,LED

rcall

Pause

ldi

LED,0b00000000

;Alle

LEDs

aus

out

portb,LED

rcall

Pause

rjmp

Anfang1
Pause:

ldi

Delay1,5
W0:

ldi

Delay2,250
W1:

ldi

Delay3,250
W2:

dec

Delay3

brne

W2

dec

Delay2

brne

W1

dec

Delay1

brne

W0

ret
Download: Lauflicht_Tiny13.zip (7 KB)

Lernen Sie die ganze Vielfalt vom Franzis Buch- und Softwareverlag kennen