Calliope mini

Lärmanzeiger (komfortabel)

Ziel: Die RGB-LED soll in Abhängigkeit von der empfundenen Lautstärke bestimmte Farben anzeigen:

Die drei Farben lassen sich über zwei Farbwerte realisieren: Rot und Grün. Sind beide an, ergibt das Gelb. Damit ist der Grundgedanke klar: Ist es leise, leuchte nur die grüne LED. Wird es lauter, geht die grüne LED immer mehr aus und die rote LED immer mehr an. Die Farbwerte werden also in Abhängigkeit von der Lautstärke von 0 bis 255 (rot) und 255 bis 0 (grün) verändert.

Es werden drei Variable erzeugt: rot, grün und lautstärke. Alles läuft wieder in einer unendlichen Schleife.

Zu Beginn der Schleife wird die Lautstärke gelesen. Da die Lautstärke einen Wert von 0 bis 100 zurückliefert, wird er in einen Wert zwischen 0 und 255 umgerechnet.

Die Lautstärke und der Farbwert von rot sollen zueinander proportional sein. Damit ist der Proportionalitätsfaktor 2,55.

 

Calliope mini-Lärmanzeiger

Das Ergebnis dieses einfachen Programmes ist entäuschend. Die LED ändert ihre Farbe nicht entsprechend der gefühlten Lautstärke! Ursache ist nicht die Hard- und Software, sondern der Mensch. Die Intensität der Empfindung ist proportional dem Logarithmus der Stärke des ausgelösten Reizes. Webner-Fechner-Gesetz

Aus diesem Grund muss der Zahlenwert, der der Lautstärke entspricht, logarithmiert werden. Das liefert aber einen andern Zahlenwert für die Lautstärke, aus der dann der Farbwert berechnet wird.

Der dekadische Logarithmus des größten Lautstärkewertes (100) ist 2. Es werden also nur Zahlen zwischen 0 und 2 berechnet, die auf die Farbwerte von 0 bis 255 umgerechnet werden müssen. Der Umrechnungsfaktor ist damit nicht mehr 2,55, sondern 127.

Wenn das geändert wurde, läuft das Programm schon deutlich besser und das Ziel ist erreicht.

zurück