Schaltplancheck: LED Beleuchtung mit TLE4242 und PCA9685

Hi,

ich habe mir eine neue LED Lampe geplant und würde euch mal bitten, drüber zu schauen.

Zunächst gibt es eine Steuerplatine (schemeCOntrol):

Die Stromversorgung kommt über FFC Kabel von der Hauptplatine. Dafür nutze ich einen 6poligen Connector

  • 2x 5V (sollte ja locker reichen)
  • GND
  • SCL/SDA für die Ansteuerung des PCAs => Die PullDownWiderstände habe ich auf der Steuerplatine, einfach weil die RTC ja auch über I2C läuft. Ist es nicht eh sinnvoll, die nahe am uC zu setzen?
  • A0 => den nutze ich um mehrer DS18B20 auszulesen (1wire)

AUßerdem zu erwähnen: Ich habe einen Button zwischen RX(uC) und TX(wifly) eingebaut, um den Strom unterbrechen zu können. Das mache ich aktuell auch schon so, wenn ich einen Sketch via FTDI hochlade. Sonst funktioniert das leider nicht. Das 328 hat ja nur einen Serial und mit den ganzen SOftwareSerials habe ich zumindes bei den XBees schlechte Erfahrungen gemacht. K.A. wie es bei dem WiFly aussieht aber mit der Lösung kann ich leben.

LED-Platine (SchemeLED)

  • 24V In
  • LM2594 um aus 24v 5v zu regeln: über den TI Benchmark habe ich mir die notwendigen Bauteile ausrechnen lassen , siehe Anhang (VOrgaben & 2594) Mir war es wichtig relativ kleine Bauteile zu haben, daher werden auch am EIngang 2 Elkos parallel geschaltet
  • PCA9685=> Steuerung 7 LED Treiber TLE4242, 2x5050SMD LED => Die widerstandswerte kann man leider schlecht erkennen. Vor den PWM EIngängen liegen 200 ohm, vor den RGB 90 bzw 135 ohm (ich glaube rot hat nen höheren Widerstand)
  • DipSchalter zur Kodierung der I2C Adresse (falls mal mehrere Platinen nebeneinander laufen)
  • BCP55 Transistor um 2x12V Lüfter (in Reihe) zu schalten
  • DS18B20 zur Temperaturmessung

Bitte nicht wundern, in der LED Schaltung gibt es einige 0ohm Widerstände, da es ein einseitiges Layout wird und man teilweise überbrücken muss. Außerdem sind dort nur 4 LEDs, es werden anschließend 2 Boards hintereinandergeschaltet, dann benötige ich ca 26Volt.

Bin gespannt, ob ihr Fehler findet bzw. was ihr generell anders machen würdet.

Besten Dank
Thorsten

vorgaben.PNG

Hallo,
“einfach weil die RTC ja auch über I2C”

wenn Du mehr als ein I2C-Slave betreibst, solltest Du Koppelkondensatoren dazu schalten.
Könn–te Ärger ersparen.
Gruß und Spaß
Andreas

Hallo Andreas,

wo und mit welcher Kapazität genau würde ich den schalten?
Direkt hinter SDA/SCL am Atmega?

VG

Ich dachte, I2C darf nur eine Maximale Leitungskapazität haben.

the I2C standard limits Cp to the maximum value of 400 pF

Wo sollen da extra Kondensatoren hin und warum ?

Hallo,
der I2C besteht aus:
+V
SDA
SCL
-V

An die +V Leitung für den I2C schließt Du zwei Pullupwiderstände an.
Der eine stellt eine Verbindung zu SDA her, der andere eine Verbindung zu SCL.

Nach jedem Slave einen Entkopplungskondensator (0,1µF) von +V nach -V.

Entkopplungskondensatoren und Serienwiderstände zum Schutz sind optional.
Mein I2C-Bus hat eine ziemlich genaue Länge von 3,80m mit 5 betriebenen Slave´s.
Dieser ist seid mehreren Monaten Fehlerfrei im 24Std Betrieb.
Du kannst machen was Du willst, ich gebe nur einen Rat aus der Praxis.
Gruß und Spaß
Andreas

Hi Andreas,

deswegen habe ich ja gefragt.
Beim DS3231 habe ich bereits einen 0.1uF eingezeichnet.
Beim PCA9685 habe ich einen 10uF Kondensator eingezeichnet. SOllte ich parallel dann noch den 0.1uF Kondensator einbauen?

BEsten Dank und Gruß
THorsten

OK, stimmt: I2C ist mehr als SCL und SDA Leitungen.
Und generell sind Kondensatoren zwischen Vcc und GND bei jedem IC nie verkehrt. Zumal wenn sie räumlich entfernt liegen.
Da kommen die schnelleren Keramik-Kondensatoren (üblicherweise 100 nF) hin.
Ein 10 µF Elko ist nicht verkehrt, ersetzt aber keinen Keramik-Kondensator.

Die Signal-Leitungen kriegen natürlich keine Kondensatoren verpasst, sondern werden nur mit Pullup-Widerstand hochgehalten.

Mein I2C-Bus hat eine ziemlich genaue Länge von 3,80m mit 5 betriebenen Slave´s.

Bei 100 kHz ?
Was für eine Verbindungsleitung nimmst du, Andreas ?

Hallo,
für die Koppelkondensatoren und Schutzwiderstände gibt es bestimmt Formel
und Richtlinien wie man der Sache "richtig" auf die Schliche kommt.

Das siehst Du ja schon hier. Du verwendest 10µF, ich 0,1µF und Michael 10nF.
Ich habe nach allen Slave´s 0,1µF. Wie sich der I2C bei gemischten Aufbau
verhält, kann ich nicht sagen.

Das sich Keramik-Kondensatoren zum entkoppeln besser eignen, steht außer Frage.
Meine Bastelkiste gab aber nichts anderes her.

Wenn sich in der WireLib keine "Bremse" befindet, dann nutze ich die default
Geschwindigkeit des Mega.
Als Steuerleitung verwende ich "Laapkabel STU=GART Unitronic LIYY 7 x 0,14"
Gruß und Spaß
Andreas
P.S. die fehlende "0" (null) von oben

Ich verwende übrigens 100 nF , was das gleiche wie 0,1 µF ist.

Nach meiner Einschätzung gibts da aber nicht wirklich viel zu berechnen.
Die Spannung Vcc sollte möglichst konstant bleiben. Dicke Elkos sind aber träge, daher packt man noch Keramik-Kondensatoren dazu. Die kann man preiswert bis 100 nF herstellen/bekommen, also nimmt man 100nF bzw 0,1µF.

Wenn dein 10µF Kondensator einen Frequenzgang wie ein Keramik-Kondensator hätte, umso besser.

( Auf älteren Platinen sieht man am Vdd Pin der ICs öfters 47 nF, das war wohl früher Stand der Technik. )