Schaltungs Überprüfung?
Hallo Leute, ich hoffe auf jeden Fall, die Zeichnung anbei kann man gut erkennen. Bei Fragen melden Sie sich bitte gerne. Auf jeden Fall sieht man in der Zeichnung oben links die drei LEDs, die benutzt werden sollen. Jeweils links das Blaue mit einer blauen Farbe, 200 Ohmwiderstand, und die roten Kabel sollen die weiße Farbe darstellen. Auch mit den Stromquellen verbunden, wie man rechts sieht, und den Lüfter. Das große Ziel ist eigentlich, dass wenn Strom anliegt, die LEDs erstmal weiß leuchten. In dem Fall halt die orange Verbindung. Und wenn man dann den Lüfter einschalten will, in drei verschiedene Stufen. Der hat erstmal keine Widerstände der Lüfter, das ist erstmal jetzt unwichtig. Aber die LEDs einschalten will, über den WIP-Schalter, den man unten links sieht, mit 1A, 1, 1B, den man dann drücken kann. Das heißt, man drückt die nach links, 1A, alle drei blauen LEDs sind an. Man drückt die nochmal, zwei LEDs bleiben an. Man drückt die nochmal, eine LED ist an. Man drückt ihn nochmal, Lüfter aus. Die LEDs werden wieder weiß, weil Strom ist ja vorhanden. Heißt, die LEDs leuchten weiß. Das geht alles über ein Arduino. Ich kann anbei auch nochmal den Code hochladen. Natürlich sieht man auch einen Step-Down-Konverter, der von 24 Volt auf 5 Volt die Spannung runterregelt. Und einen Spannungssensor, damit der Arduino auch klar weiß, wann die LEDs leuchten und wann nicht. Der Transistor, wie man rechts sieht, im Bild der Runde kreis, mit Collector, Base und Emitter. Die Basis hat einen 100 Ohm Widerstand. Ich hoffe, man kann die Zeichnung erkennen. Leider funktioniert die bei mir zu Hause nicht. Ich weiß nicht, wo der Fehler liegt. Der Code klappt eigentlich, ich habe ihn geprüft. Es muss also irgendwo in der Schaltung liegen. Danke auf jeden Fall. Ich freue mich um Rückmeldungen und hilfreiches Feedback.
Teileliste: Chanzon 10mm RGB Multicolor LED, DUBEUYEW NanoBoard CH340, APKLVSR DC-DC 24V/5V Step Down, IRLZ44N Transitor, Hesch Wipptaster 16A 6Klemmer, DollaTek Spannungssensor Max 25V
TestCode(Der gerade auch auf dem Arduino ist):
// ----- PINDEFINITION -----
const int buttonPin = 13; // Taster
const int fanPin = 5; // MOSFET Lüfter
// LED-Pins
const int blueLEDs[3] = {7, 8, 9}; // Stufen 1-3
const int whiteLEDs[3] = {10, 11, 12}; // Strom an
void setup() {
Serial.begin(9600); // Serielle Verbindung starten
Serial.println("🔌 Test gestartet!");
pinMode(fanPin, OUTPUT);
for (int i = 0; i < 3; i++) {
pinMode(blueLEDs[i], OUTPUT);
pinMode(whiteLEDs[i], OUTPUT);
}
pinMode(buttonPin, INPUT_PULLUP); // Taster Eingang mit Pullup
}
void loop() {
Serial.println("💡 LEDs testen...");
for (int i = 0; i < 3; i++) {
digitalWrite(blueLEDs[i], HIGH);
digitalWrite(whiteLEDs[i], HIGH);
delay(500);
digitalWrite(blueLEDs[i], LOW);
digitalWrite(whiteLEDs[i], LOW);
delay(200);
}
Serial.println("🌀 Lüfter AN");
digitalWrite(fanPin, HIGH);
delay(2000);
Serial.println("🌀 Lüfter AUS");
digitalWrite(fanPin, LOW);
delay(1000);
Serial.println("🔄 Zyklus wiederholt sich...");
}
!!
Hier war der erste Code Versuch…
Ich habe das alles mit der Hilfe von ChatGPT gemacht also bin ich mir hier überhaupt nicht sicher ob dies überhaupt klappt…
// ----- PINDEFINITION -----
const int buttonForwardPin = 13; // Taster „vorne“
const int buttonBackPin = A1; // Taster „hinten“
const int fanPin = 5; // MOSFET Lüfter
// LED-Pins
const int blueLEDs[3] = {7, 8, 9}; // Stufen 1-3
const int whiteLEDs[3] = {10, 11, 12}; // Strom an
// Variablen
int fanLevel = 0; // 0 = aus, 1 = Stufe 1, 2 = Stufe 2, 3 = Stufe 3
void setup() {
// Pins als Ausgang definieren
pinMode(fanPin, OUTPUT);
for(int i=0; i<3; i++){
pinMode(blueLEDs[i], OUTPUT);
pinMode(whiteLEDs[i], OUTPUT);
}
// Taster als Eingang mit Pullup
pinMode(buttonForwardPin, INPUT_PULLUP);
pinMode(buttonBackPin, INPUT_PULLUP);
// Anfangszustand: Lüfter aus, alle weißen LEDs an
fanLevel = 0;
updateLEDs();
}
void loop() {
// Taster abfragen
if(digitalRead(buttonForwardPin) == LOW){
delay(200); // Entprellen
if(fanLevel < 3) fanLevel++;
else fanLevel = 0;
updateLEDs();
}
if(digitalRead(buttonBackPin) == LOW){
delay(200); // Entprellen
if(fanLevel > 0) fanLevel--;
else fanLevel = 3;
updateLEDs();
}
}
// ----- LED + Lüfter Logik -----
void updateLEDs(){
// Lüfter steuern
if(fanLevel == 0){
digitalWrite(fanPin, LOW);
} else {
digitalWrite(fanPin, HIGH);
}
// Blaue LEDs
for(int i=0; i<3; i++){
if(fanLevel > i){
digitalWrite(blueLEDs[i], HIGH);
} else {
digitalWrite(blueLEDs[i], LOW);
}
}
// Weiße LEDs (immer an, wenn Lüfter aus)
for(int i=0; i<3; i++){
if(fanLevel == 0){
digitalWrite(whiteLEDs[i], HIGH);
} else {
digitalWrite(whiteLEDs[i], LOW);
}
}
}
Zukünftige Plan ist es auch noch eine Heizung in den Kreislauf einzufügen und das der Lüfter auch drei stärken annehmen kann sowie die Heizung auch, dass alles über die selbe drei LEDs angezeigt wird. Gerne dafür auch Tipps und tricks…
Das ist alles sehr viel, aber ich hoffe mir kann jemand helfen:)
Danke schonmal im Voraus
