Sonnenbrandwarner

von Johannes Schmitz
Der Tiny13 soll den Anwender warnen, wenn er insgesamt zwei Stunden lang die volle Sonne gesehen hat. Die rote LED2 ist der Lichtsensor und dient zugleich als Warnanzeige. Nach insgesamt 120 Minuten Sonnenschein gehen beide LEDs an. Höchste Zeit für etwas Schatten! Und ein kühles Bier.
Dass die rote LED auch als Lichtsensor taugt wurde ja schon gezeigt. Im Leerlauf nimmt die Fotospannung allerdings logarithmisch zu. Da ist es nicht ganz einfach, zwischen indirekter Beleuchtung und voller Sonne zu unterscheiden. Besser ist eine Messung des Fotostroms. Und dazu braucht man einen sehr hochohmigen Widerstand. Dieser kann programmiert werden! Wenn der AD-Wandler immer abwechselnd ADC2 (an GND geschaltet) und ADC3 (die LED-Spannung) misst, wird effektiv Ladung von ADC3 nach ADC2 übertragen. Der geschaltete Kondensator entspricht einem Widerstand. Wie groß der Widerstand ist bestimmt die Wartezeit (2 µs) zwischen den Messungen. Die LED wird also immer wieder etwas entladen. Nun braucht man schon volle Sonne, damit die Spannung etwa 1,1 V übersteigt. Die gemessene LED-Spannung wird übrigens einmal pro Sekunde seriell übertragen, was während der Entwicklung hilfreich war aber im tatsächlichen Einsatz nicht mehr gebraucht wird. Man sieht nur noch ein kurzes Blinken an der grünen LED, was den aktiven Betrieb anzeigt.
Sparrow APP

share.cheepit.net
Quelle: