LED Matrix mit Uhrzeit, Temperatur, Luftfeuchtigkeit und LDR zur Helligkeitsregelung

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • LED Matrix mit Uhrzeit, Temperatur, Luftfeuchtigkeit und LDR zur Helligkeitsregelung

      Hallo !
      Hiermit stelle ich mein erstes Projekt hier vor.

      Ich weiß, das meine Programmierung nicht optimal ist und würde mich auch über Vorschläge freuen wie ich manches besser / anders gestalten kann.
      Ich möchte auch gleich hier darauf hinweisen das ich einiges von dem Code aus anderen Projekten geklaut habe, z.B. von tschoetsch die LED Matrix ansteuerung. Diese hab ich nur etwas angepasst. Danke an ihn an dieser Stelle ! ;)

      Mein Vorhaben sieht folgendermaßen aus:
      Eine große gut lesbare Uhr mit Temperatur Anzeige und Luftfeuchtigkeitsanzeige für die Werkstatt. (Relativ große Werkstatt mit Hebebühne etc.) Daher man soll es auch aus einiger Entfernung gut ablesen können.

      Was ich nicht will: Irgendwelche Lauftexte etc. es soll immer alles gleichzeitig angezeigt werden.

      Daher hab ich mich für MAX7219 Module aus China entschieden, diese sind groß genug. Leider hab ich aktuell nur 4 Module da, somit kann ich nicht alles gleichzeitig anzeigen und muss noch auf die anderen Module warten.

      Als RTC habe ich ein DS3231 Modul genommen, da ich mit den ds1307 Modulen schlechte Erfahrungen gemacht habe (Sehr ungenau), ich hoffe die DS3231 sind hier besser, das ist mein erstes Projekt bei dem ich so eins verwende.

      Als Temperatur und Luftfeuchtigkeitsfühler hab ich ein Si7021 Modul mit integriertem Pegelwandler ausgewählt.

      Der LDR ist aus der Bastelkiste, und ist so angeschlossen: +5V - 56kOhm - ADC Pin A.0 - LDR - GND
      Bei Helligkeit ist der Widerstand ca. 2kOhm bei Dunkelheit ca 50kOhm, diese Werte muss ich noch anpassen.

      Die Zeit Einstellung sollte möglichst einfach funktionieren. deswegen hat mein Projekt nur 3 Taster. Mit dem 1ten werden die Stunden um 1 hochgestellt, mit dem 2ten die Minuten, und mit dem 3ten werden die Sekunden genullt.

      Die Anzeige soll in etwa so aussehen: "12:05 12°C 54%" auf Sekunden und Kommastellen verzichte ich bewusst um nicht allzuviele Module verwenden zu müssen. Ausserdem sind beide für diese anzeige Irrelevant.

      Ich habe schnell festgestellt das die MAX7219 Module ordentlich Strom ziehen auf höchster Helligkeits einstellung. Deswegen auch die automatische Regelung per LDR. Ich habe gemessen das 4 Module bei alle Dots eingeschaltet und auf voller Helligkeit 1,2 A bei 5V brauchen. Das sind immerhin 6 Watt. Bei normalem Anzeigetext und höchster Helligkeit sind wir bei 0,45 A = 2,25 Watt, bei niedrigster Helligkeit bei 0,05A = 0,25 Watt. Wenn keiner in der Werkstatt ist (Licht aus) soll natürlich nicht unnötig Energie verbraten werden. Ausserdem werden die Module auch relativ warm.

      Dieses Projekt ist noch nicht fertig, aktuell auch nur auf dem Experimentierboard aufgebaut. Als µC habe ich eigentlich einen Atmega328 geplant, der Atmega644 ist nur der auf meinen Board. Ein Layout auf Lochraster wird noch folgen.

      Über Verbesserungsvorschläge und Feedback freue ich mich!

      Mein Code im Anhang, da er zu lange ist um ihn hier posten zu können ;)





      Mfg
      Files