Forum: Mikrocontroller und Digitale Elektronik Arduino Nano, Transistor oder Potenziometer problem


von Nick M. (sziege)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

Ich habe einen Potenziometer zusammen mit einem Arduino nano und 
Transistoren benutzt, um LED streifen zu Steuern. Durch Taster kann ich 
dann genau sagen, welchen LED streifen ich jetzt wie steuern möchte. Das 
Problem nun ist aber, dass wenn ich den Poti nahe zu 0 ohm drehe, die 
anderen LED Streifen zufällig mit angehen und dann entweder schnell 
blinken oder ich diese mitdimmen kann, ohne den Taster betätigt zu 
haben.
Ich weiß, dass die Verdrahtung soweit stimmt, da ich alles durchgemessen 
habe und direkt an die 12V angeschlossen habe(was funktionierte).

Ich habe ebenfalls einen "TestSketch" geschrieben, bei dem ich die LED 
über den PC angesteuert habe ohne den Potenziometer zu benutzen, worauf 
sich alle LED streifen genau so verhielten, wie ich es in dem Testsketch 
angegeben habe.
Außerdem weiß ich, dass das Programm funktioniert, da ich mir ein Modell 
vorgebaut habe, um zu schauen, ob die Schaltung, welche ich gebaut habe 
überhaupt realisierbar ist. Eben auf diesem Modell funktioniert alles 
wie es sollte(es besteht anstatt aus LED streifen aus einzelnen LEDs, 
wobei jede LED einen Streifen darstellen soll.

Da ich mich wenig mit Transistoren auskenne, könnte ich jetzt eben nur 
eine vermutung abgeben, dass es an den Transistoren liegt oder eben an 
dem Poti.

Meine Bauteile:
Microcontroller: Arduino nano ATmega328P
Netzteil: von 230V auf 12V 10A
Transistor: 5x TIP120 NPN TO-220
Potenziometer:1x 10 KiloOhm
Taster: 7x

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Nick M. schrieb:
> Potenziometer

ich bin erstaunt: Ich hätte meine linke Socke drauf verwettet, das es 
sowas nur bei Dr. Müller oder Beate Uhse gibt.

Laut Wikipedia ist das aber wohl so in Ordnung:

"Ein Potentiometer (kurz Poti, nach neuer deutscher Rechtschreibung auch 
Potenziometer) ist ein elektrisches Widerstandsbauelement,..."

von Walter K. (walter_k488)


Lesenswert?

Nick M. schrieb:
> Ich habe einen Potenziometer

wenn Du damit ein Problem hast - dann probier mal Potenzmittel!

ansonsten bitte: Poti oder Potentiometer oder veränderbarer Widerstand

: Bearbeitet durch User
von bb (Gast)


Lesenswert?

1. Einen Kondensator parallel zum Poti anschließen.
2. Ein anderes Poti verwenden.
3. Ist das Poti richtig angeschlossen?
Bitte Spannungen am Poti beim Drehen nachmessen!

von Benni (Gast)


Lesenswert?

Walter K. schrieb:
> Nick M. schrieb:
>> Ich habe einen Potenziometer
>
> wenn Du damit ein Problem hast - dann probier mal Potenzmittel!
>
> ansonsten bitte: Poti oder Potentiometer oder veränderbarer Widerstand

Walter -> 
Rechtschreibung:https://www.duden.de/rechtschreibung/Potenziometer

von bb (Gast)


Lesenswert?

... und unbedingt Pullup-Widerstände an den Tasteneingängen aktivieren!

von Walter K. (walter_k488)


Lesenswert?

Benni schrieb:
> Walter ->
> Rechtschreibung:https://www.duden.de/rechtschreibung/Potenziometer

ach du sch....

ich bestreue mein Haupt mit Asche ..und werde nie wieder böse Kommentare 
wegen Rechtschreibung machen ;-)

von Nick M. (sziege)


Lesenswert?

> 1. Einen Kondensator parallel zum Poti anschließen.
> 2. Ein anderes Poti verwenden.
> 3. Ist das Poti richtig angeschlossen?
> Bitte Spannungen am Poti beim Drehen nachmessen!



Das mit dem Kondesator muss ich unbedingt noch ausprobieren! danke für 
die idee!
Ansonsten habe ich bereits mehrere potis verwendet, es ist richtig 
angeschlossen und die spannung passt soweit auch!

von Nick M. (sziege)


Lesenswert?

bb schrieb:
> ... und unbedingt Pullup-Widerstände an den Tasteneingängen aktivieren!

werde ich noch machen, danke! hätte ich vergessen!

von bb (Gast)


Lesenswert?

Normalerweise benötigen die Tasten auch eine Entprellung, das hängt von 
ihrer Verwendung ab.
Entweder per Software oder ersatzweise durch einen Kondensator (100nF) 
parallel zur Taste.

bb

von my2ct (Gast)


Lesenswert?

Benni schrieb:
> Walter ->
> Rechtschreibung:https://www.duden.de/rechtschreibung/Potenziometer

Das Ding mit der neuen deutschen Rechtschreibung war wahrlich kein 
Meisterwerk und hat die Duden-Redaktion viel Akzeptanz gekostet.

von Stefan F. (Gast)


Lesenswert?

Ich vermute einen Fehler im nicht gezeigten Programm.

Die Transistoren lassen sich so tadellos ansteuern, und die analogen 
Eingänge sind für Spannungen von 0 bis VCC gedacht. Das passt schon 
alles.

Ein bissche mehr Bauteile zum Absichern gegen elektromagnetische 
Störungen wäre ganz Nett, ist aber zur Zeit sicher nicht dein Problem.

von flitz (Gast)


Lesenswert?

Nick M. schrieb:
> Hallo zusammen,
>
> Ich habe einen Potenziometer zusammen....

> Außerdem weiß ich, dass das Programm funktioniert, da ich mir ein Modell
> vorgebaut habe, um zu schauen, ob die Schaltung, welche ich gebaut habe
> überhaupt realisierbar ist. Eben auf diesem Modell funktioniert alles
> wie es sollte(es besteht anstatt aus LED streifen aus einzelnen LEDs,
> wobei jede LED einen Streifen darstellen soll.
>
> Da ich mich wenig mit Transistoren auskenne, könnte ich jetzt eben nur
> eine vermutung abgeben, dass es an den Transistoren liegt oder eben an
> dem Poti.
>
> Meine Bauteile:
> Microcontroller: Arduino nano ATmega328P
> Netzteil: von 230V auf 12V 10A
> Transistor: 5x TIP120 NPN TO-220
> Potenziometer:1x 10 KiloOhm
> Taster: 7x

Fehlt da noch noch etwas?

von flitz (Gast)


Lesenswert?

Nick M. schrieb:
> Hallo zusammen,
>
> Ich habe einen Potenziometer zusammen....

> Außerdem weiß ich, dass das Programm funktioniert,....
>
> Da ich mich wenig mit Transistoren auskenne, könnte ich jetzt eben nur
> eine vermutung abgeben, dass es an den Transistoren liegt oder eben an
> dem Poti.
>
> Meine Bauteile:
> Microcontroller: Arduino nano ATmega328P
> Netzteil: von 230V auf 12V 10A
> Transistor: 5x TIP120 NPN TO-220
> Potenziometer:1x 10 KiloOhm
> Taster: 7x

Fehlt da noch noch etwas?

von Feuer Wehr (Gast)


Lesenswert?

flitz schrieb:
> Fehlt da noch noch etwas?

LEDs mit 12V zu beaufschlagen bedeuted Magischen Rauch erzeugen.

von Flitz (Gast)


Lesenswert?

Tatütata.

von derda (Gast)


Lesenswert?

Feuer Wehr schrieb:
> flitz schrieb:
>> Fehlt da noch noch etwas?
>
> LEDs mit 12V zu beaufschlagen bedeuted Magischen Rauch erzeugen.

du lesen mußt LED-Streifen er betreibt

von Feuer Wehr (Gast)


Lesenswert?

derda schrieb:
> du lesen mußt LED-Streifen er betreibt

Nick M. schrieb:
> es besteht anstatt aus LED streifen aus einzelnen LEDs,
> wobei jede LED einen Streifen darstellen soll.

Die bis Dato unklare Beschaltung bestimmt ob und wieviel
Magischer Rauch aufsteigt.

Es ist einfach immer wieder schön Schaltpläne durch Prosa
zu ersetzen.

von Esmu P. (Firma: privat) (max707)


Lesenswert?

Feuerwehr hält Brandwache. :)

von Nick M. (sziege)


Lesenswert?

Stefanus F. schrieb:
> Ich vermute einen Fehler im nicht gezeigten Programm.


Nein, im programm liegt es sicher nicht.. wie gesagt ich habe es an 
einem Modell getestet, bei dem die LEDs natürlich MIT Vorwiderstand 
funktioniert haben.

Ich habe heute den Masse Draht, welcher von den Tastern aus kam mal 
weggenommen und bemerkt, dass alles funktionierte. Also schloss ich 
andere Taster an und siehe da, es funktionierte. ;) nun weiß ich 
immerhin, dass ich ein Problem mit den Tastern habe, jedoch noch nicht 
was genau falsch ist. Ich habe das mit den Pullup widerständen noch 
nicht ausprobiert, was ich jetzt als nächstes noch tun werde um zu 
sehen, ob das hilft.

Was mir nun auch noch eingefallen ist, die Taster sind aus Metall und 
auch nicht geerdet. Sie waren auch ziemlich billig und irgendwie lässt 
mich nun der Gedanke nichtmehr los, dass eine fehlende Erdung die 
ursache sein könnte. kann dies Möglich sein?

von Grundi Grundlage (Gast)


Lesenswert?

Hallo

Pullup oder auch Pulldownwiderstände sind notwendig.
Erstere kannst du beim Arduino oder eigentlich den ATMega328 durch 
Softwareanweisungen aktivieren - aber die dann umkehrte Logik beachten 
ein nicht gedrückter Taster gibt high Pegel (+5V) zurück und ein 
gedrückter low Pegel (0V).
Oder du baust halt Pullupwiderstände ein (wie und welche Werte kannst du 
via Googeln herausfinden) und hast eine "normale" Logik.

Es ist auch empfehlenswert sich über Tasterprellen zu informieren und 
dieses vorzugsweise durch geeignete Programmierung oder auch 
Hardwaremässig (benötigt aber Platz und verursacht -sehr geringe- 
Zusatzkosten)zu eliminieren.

Ja, ein Taster sauber und sicher auszuwerten ist nicht so trivial wie es 
sich viele erst mal vorstellen.


Aus eigenen Interesse solltest du dir auch unbedingt Hardwaregrundlagen 
aneignen und zwar ganz unabhängig von der Programmierung und 
Programmsprachen.

Das mag je nach persönlicher Begabung, Interessen und Vorbildung erst 
mal nicht so einfach sein und man benötigt einige Zeit bevor es "Klick" 
im Kopf macht und man auf einmal die Prinzipien und Vorgänge versteht 
und dann auch alles sehr viel schneller und einfacher erlernen und vor 
allen verinnerlichen kann.

Scheinbar hängt es auch davon ab von "woher man gekommen ist" - für mich 
war es z.B. erst gar nicht so einfach in die Programmierung ein zu 
steigen ich musste erst mal viel lesen und ausprobieren bis es bei mir 
"Klick" gemacht hatte - danach ging und geht es allerdings wesentlich 
besser mit den lernen und verstehen.
Hingegen ist Hardware "nie" ein Problem für mich gewesen, was wohl auch 
daran liegt das ich schon als Kind mit der Elektronik angefangen habe 
und Verstärker, Blinkschaltungen, Logikschaltungen usw. teilweise nur 
mit einzelnen Transistoren und / oder mit "einfachen" ICs aufgebaut habe 
welche nur die Grundfunktionen zur Verfügung stellen.
Damit hatte ich mir wohl ein rein "physikalisch - technisches" Denken 
und Verstehen angewöhnt und die kleinen "gemeinen" Fallstricke der 
realen E-Technik kennen und vor allem nicht nur theoretisch verstehen 
gelernt - sozusagen ein Bauchgefühl dafür bekommen.
Die eigentliche Idee und das Konzept das hinter Programmieren allgemein 
steht war mir allerdings total unbekannt und ich hatte überhaupt kein 
Gefühl dafür - am nächsten und von der Idee am verständlichsten war mir 
da sogar das Konzept was in der absoluten Frühzeit des Programmieren 
angewendet wurde (noch vor Assembler) - halt alles extrem Hardware 
nah...
Bis ich endlich wirklich verstanden hatte was Programmieren, vor allem 
im µC-Bereich, heute ist war schon ein längerer Weg - vor allem weil 
gefühlt 95% aller Arduinoliteratur und Tutorials aber auch allgemeinere 
µC Lehrgänge (auch, oder besonders das Foreninterne AVR Tutorial) sich 
sehr stark auf die (für mich sehr leicht zu verstehende) Hardware 
konzentrieren und / oder automatisch ein generelles 
Programmierverständnis (Denkweise und ein Bauchgefühl dafür) 
voraussetzen, oder im schlechtesten Fall nur blindes Copy and Paste mit 
Anpassung von verschiedenen Werten anbieten ohne das man die Chance hat 
wirklich zu verstehen was da wirklich Programm technisch abläuft (und 
somit stark dran schuld ist das Arduino als Gesamtsystem von vielen 
"echten" µC Programmieren sehr kritisch bewertet wird).


Wenn man nun aus der "Programmierecke" her kommt, vor allem falls man 
schon als Kind damit aufgewachsen ist, kann ich mir gut vorstellen das 
man aber ähnliche Probleme hat eine Verbindung mit der Hardwarewelt auf 
zu bauen und wirklich zu verstehen (verinnerlichen, ein Bauchgefühl 
bekommen...)
was dort abläuft.
Wenn es dann einmal "Klick" gemacht hat dann ist auch der 
"Programmierer" in der Hardwarewelt richtig angekommen und kann endlich 
"richtig" lernen und vor allem wirklich verstehen.

Grund Grundlage

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.