Custom PCB erzeugt in einen Kurzen in einem ATMEGA328P

Hi ho,

ich bin relativ neu in dem ganzen Thema und habe innerhalb kürzester Zeit eine steile Lernkurve (auch dank des Forums) hingelegt. Doch leider hocke ich seit 3 Monaten über einem Problem und finde keine Lösung.

Folgendes Setup:

Ich habe mir auf dem Breadboard ein Konzept für eine sich selbst gießende Pflanze gebaut. Feuchtigkeitssensor, Wasserpumpe, Ultraschall für den Wasserstandsanzeiger. Das Konzept funktioniert, also wollte ich den nächsten Schritt gehen und habe mir ein PCB entworfen, der genau dem Breadboard-Aufbau gleicht. Entworfen, in China bestellt, Bauteile aufgelötet und jetzt kommt das Problem:

Wenn ich Pin A1 hoch ziehe und damit den Transistor (testweise auch Mosfet) schalten möchte, bekommt der PIN / Atmega einen Kurzen und nichts geht mehr.

Ich bin ein wenig am verzweifeln.

Was ich zwischenzeitlich schon versucht habe:

  1. Transistor mit einem Mosfet ausgetauscht
  2. Jede Menge Elkos verlötet, da ich dachte das ein eventueller Stromabfall dazu führt das etwas schief läuft
  3. eine Diode zwischen Pin und Transistor/Mosfet
  4. mit einer Dekade ausprobiert ob ein Vorwiderstand zum Motor Besserung bringt

Der letzte Punkt hat zwischenzeitlich ganz kurz funktioniert, bis ich am nächsten Morgen bei meiner Tochter angeben wollte, wo es dann nicht mehr lief.

Die Pumpe ist eine 6V Aquarium-Pumpe und mit einem 36Ohm-Vorwiderstand funktionierte es am Abend. Jetzt nicht mehr :frowning:

Hat jemand eine Idee was mein Problem sein könnte?

Es würde mich freuen wenn jemand einen Tipp hat, den ich aus Unwissenheit noch nicht versucht habe.

Viele Grüße und vielen Dank
Jan

Du brauchst für den NPN-Transistor einen Basiswiderstand.

Warum postest du kein komplettes Schaltbild ?
So muss man sich alles zusammen suchen.

Du solltest mehrere Abblockkondensatoren einsetzen.
Der 1 MOhm am Quarz ist überflüssig.
Es fehlt ein Widerstand 10 k gegen VCC am Resetpin.

Hi,

ich hab eben einen 220Ohm Widerstand zwischen Transistor und Pin gelötet, selbes Ergebnis.

Ich hab Angst das mir das Schaltbild zerrissen wird :slight_smile:

Thx

falsanu:
Hi,

ich hab eben einen 220Ohm Widerstand zwischen Transistor und Pin gelötet, selbes Ergebnis.

Ich hab Angst das mir das Schaltbild zerrissen wird :slight_smile:

Thx

Wir zerreißen nichts, wir kritisieren nur.

Wie sollen wir helfen, wenn wir keine vollständigen Infos bekommen.

Der Widerstand am Transistor fehlt noch, der muss rein.

Und wie ist das zu verstehen?

Wenn ich Pin A1 hoch ziehe und damit den Transistor (testweise auch Mosfet) schalten möchte, bekommt der PIN / Atmega einen Kurzen und nichts geht mehr.

Den Widerstand zwischen Reset und VCC löte ich gleich noch an.

Wenn ich Pin A1 hoch ziehe und damit den Transistor (testweise auch Mosfet) schalten möchte, bekommt der PIN / Atmega einen Kurzen und nichts geht mehr.

Also in meinem Programm schalte ich A1, nun geht ganz kurz die LED an und der Motor zuckt und dann liefern mir sowohl der Ultraschallsensor, als auch der Feuchtigkeitssensor nur noch identische Daten.

Ich habe bereits einen Kondensator 300µF zwischen Ground und VCC am USB-Port gebaut. Meinst Du das mit Abblockkondensator?

Den Widerstand am Quarz hab ich schon entfernt.

falsanu:
Den Widerstand zwischen Reset und VCC löte ich gleich noch an.

Also in meinem Programm schalte ich A1, nun geht ganz kurz die LED an und der Motor zuckt und dann liefern mir sowohl der Ultraschallsensor, als auch der Feuchtigkeitssensor nur noch identische Daten.

Hast du den Ausgang auch richtig im Sketch definiert ?

Ich habe bereits einen Kondensator 300µF zwischen Ground und VCC am USB-Port gebaut. Meinst Du das mit Abblockkondensator?

Abblockkondensatoren sind 100nF keramische Kondensatoren und sollen digitale Störimpulse unterdrücken.
Diese gehören mindestens an jeden VCC-Pin eines IC.

Und die Freilaufdiode an der Pumpe ist auch dran ?

Abblockkondensatoren sind 100nF keramische Kondensatoren und sollen digitale Störimpulse unterdrücken.
Diese gehören mindestens an jeden VCC-Pin eines IC.

Ich hab wie auf dem Schaltbild einen 100nF Kondensator zwischen Ground und VCC

Ich hab die Software mit Johnny Five geschrieben und setze da den Pin high() -> JavaScript Robotics: Pin API (Johnny-Five)

Wenn ich die Pumpe nicht dran hab, dann leuchtet die LED auch wunderbar. Ich würde daher davon ausgehen das es irgendetwas mit der Pumpe zu tun hat.

Die Freilaufdiode ist auch dran

falsanu:
Ich hab wie auf dem Schaltbild einen 100nF Kondensator zwischen Ground und VCC

Wie schon geschrieben, reicht selten. Immer mehr nehmen.
Sieh dir mal kommerzielle Schaltungen an, auch den originalen Uno.

Ich hab die Software mit Johnny Five geschrieben und setze da den Pin high() -> http://johnny-five.io/api/pin

Kenne ich nicht.
Der Ausgang muss auch al digitaler Pin und Ausgang definiert werden. Was Jonny da macht, weis ich nicht.

Wenn ich die Pumpe nicht dran hab, dann leuchtet die LED auch wunderbar. Ich würde daher davon ausgehen das es irgendetwas mit der Pumpe zu tun hat.

Dann reicht offensichtlich der Strom nicht und die Spannung bricht zusammen.
Hast du die 5 Volt mal gemessen ?

Sieh dir mal kommerzielle Schaltungen an, auch den originalen Uno.

In der kommerziellen Schaltung ist noch ein 100nF-Kondensator zwischen Aref und GND, den kann ich ja auch mal noch dran hauen.

Der Ausgang muss auch al digitaler Pin und Ausgang definiert werden.

Ist soweit korrekt eingestellt.

Dann reicht offensichtlich der Strom nicht und die Spannung bricht zusammen.
Hast du die 5 Volt mal gemessen ?

Ich hab eben mal den Strom an den Pins die zur Pumpe führen gemessen und da liegen dann 5,04 Volt an.

falsanu:
In der kommerziellen Schaltung ist noch ein 100nF-Kondensator zwischen Aref und GND, den kann ich ja auch mal noch dran hauen.
Ist soweit korrekt eingestellt.

Dann zeig doch mal den Sketch.

Ich hab eben mal den Strom an den Pins die zur Pumpe führen gemessen und da liegen dann 5,04 Volt an.

Da bringst du was durcheinander. 5,04 Volt ist Spannung, kein Strom.

Und du must die Spannung bei last messen.

Es gibt nur wenig Möglichkeiten.

  1. Der Sketch ist falsch
  2. Die Pumpe ist defekt.
  3. Die Freilaufdiode ist defekt oder falsch rum drin.

Dann zeig doch mal den Sketch.

Was meinst du mit Sketch? Den Quellcode?

Und du must die Spannung bei last messen.

Wenn ich die Spannung bei Last messen möchte, kommt mein Multimeter nicht hinterher, da der Atmel einen Kurzen bekommt und dann keine Spannung mehr liefert. Es blitzt kurz die LED und die Pumpe dreht sich eine zehntel Sekunde, auf dem Multimeter steht kurz 0,13 und dann wieder 0.00.

Es gibt nur wenig Möglichkeiten.

  1. Der Sketch ist falsch
  2. Die Pumpe ist defekt.
  3. Die Freilaufdiode ist defekt oder falsch rum drin.
  1. wenn der Sketch der Code ist, dann bin ich relativ sicher das der richtig ist, da er auf den Breadboard-Varianten ja funktioniert.
  2. Hatte ich auch schon überlegt, kann ich das irgendwie testen? Denn wenn ich einfach so 5 Volt dran halte dann dreht sie sich.
  3. Freilaufdiode ist richtig rum drin. Ich kann bestimmt irgendwie messen ob die defekt is, oder? Ich such mal im Netz...

Vielen Dank auf jeden Fall schon mal, ich werd mich weiter auf die Suche machen. Falls Dir noch was einfallen sollte wäre es grandios :slight_smile:

Den Kondensator zwischen AREF und GND hab ich jetzt auch mal noch angelötet...

falsanu:
.....
Vielen Dank auf jeden Fall schon mal, ich werd mich weiter auf die Suche machen. Falls Dir noch was einfallen sollte wäre es grandios :slight_smile:

Ja, die Pumpe zieht zu viel Strom für deine Schaltung.

Abend,
Ich könnte jetzt natürlich komplett daneben liegen, aber je nachdem wie der Upload Tool der chinesischen Seite funktioniert, könnte es sein das dir ein paar GNDs fehlen. Das würde ich noch durchmessen oder ggf hier ein Bild der un/bestückten Platine noch hochladen eventuell lässt sich da optisch noch was erkennen.

HotSystems:
Ja, die Pumpe zieht zu viel Strom für deine Schaltung.

Das hätte ich jetzt auch vermutet. Kann dein Mosfet soviel Strom treiben? Evtl mit dem Mosfet ein Relais schalten, welches dann den Motor schaltet.. aber auch hier - Achtung wegen der Induktivität

Wie ist deine Spannungsversorgung aufgebaut? Buck Converter?
Fragen über Fragen :slight_smile:

Hallo,

die Daten der Pumpe, speziell Leistungsaufnahme und Anlaufstrom und die Daten des Netzteil dürften hier das einzig wichtige sein. Das verrät der TO aber nicht.
Das Fehlerbild sieht für mich eindeutig aus: Pumpe wird eingeschaltet, Spannung bricht zusammen und der AVR macht Chaos. Die Punpe wird ja eine Typenbezeichnung, technische Daten usw. haben, verrate uns die doch bitte.

Gruß aus Berlin
Michael

FegoFeri:
Abend,
Ich könnte jetzt natürlich komplett daneben liegen, aber je nachdem wie der Upload Tool der chinesischen Seite funktioniert, könnte es sein das dir ein paar GNDs fehlen. Das würde ich noch durchmessen oder ggf hier ein Bild der un/bestückten Platine noch hochladen eventuell lässt sich da optisch noch was erkennen.

Wenn ich das ganze ohne den Atmel teste, dann funktioniert die Pumpe problemlos.

maker_berni:
Das hätte ich jetzt auch vermutet. Kann dein Mosfet soviel Strom treiben? Evtl mit dem Mosfet ein Relais schalten, welches dann den Motor schaltet.. aber auch hier - Achtung wegen der Induktivität

Mein Mosfet ist ein BS 170 (MOSFET, N-CH, 60V, 0,5A, 0,35W, TO-92).

maker_berni:
Wie ist deine Spannungsversorgung aufgebaut? Buck Converter?
Fragen über Fragen :slight_smile:

Meine Spannungsversorgung läuft über ein USB-Port an dem nur Strom und Masse angeschlossen ist. Der versorgt (entweder über eine Powerbank oder direkt in der Steckdose) die Platine mit Strom. Direkt hinter dem USB-Port sitzt der 100nF Kondensator und von dort geht Power direkt zur Pumpe. Der Transistor (vom ATMEL geschaltet) schaltet Ground durch.

Fehlen jetzt noch die Daten der Pumpe, wie von mehreren auch angemerkt wurde.

In Post #15 kannst du nachlesen, warum das Problem (Pumpe/Controller) besteht.
Das die Pumpe ohne den Controller funktioniert, glauben wir.
Aber mit Controller hast du eben dein Problem.

amithlon:
Das Fehlerbild sieht für mich eindeutig aus: Pumpe wird eingeschaltet, Spannung bricht zusammen und der AVR macht Chaos. Die Punpe wird ja eine Typenbezeichnung, technische Daten usw. haben, verrate uns die doch bitte.

argh, ich denke hier genau liegt mein Hund begraben. Ich hab halt irgendwelche 6V-Pumpen auf eBay geklickt und da gab es weder Typenbeschreibung noch technische Daten. Ich hab eben mal geschaut ob ich eine alternative finde und habe folgende technische Daten für eine Pumpe gefunden, die aussieht wie meine...

Voltage range (V): DC2.5-6v
Operating current (MA):130-220MA
Head (CM): 40-110
Flow(L/H):80-120
Power (W): 0.4-1.5

Der Anlaufstrom der Pumpe wird deutlich höher sein.
Da du nicht die Daten deiner Pumpe postest, ist eine Aussage schwer.
Du solltest nochmal den Strom der Pumpe messen.

Oder dein Netzteil tauschen.