Forum: Mikrocontroller und Digitale Elektronik Anfängerproblem AVR Transistor bei Ausgang und Poti am Eingang


von Cupropituvanso D. (cupropituvanso_draco)


Lesenswert?

Guten Morgen

Ich habe zwei vollkommen unabhängige AVR Schaltungen. Die 
Grundbeschaltung der Atmega88PA ist identisch, hab ich aber grad nicht 
zur Hand. Beide GNDs beschalten, beide V (Vref nicht).

PWM Signale auf Treiberstufen auf Motoren funktioniert bei beiden 
Schaltungen Reibungslos.

Schaltung 1, Problem 1:

Ausgang PD4 (Pin6) über 10k aus Basis eines NPN Transistor.
Collector auf 12V
Emitter auf eine Lichtschranke (Versorgung) und die Masse der 12V 
Lichtschranke mit der AVR Schaltung verbunden.
0V und 5V auf PD4 funktioniert. Aber die Lichtschranke ist nur an wenn 
ich mim Multimeter an der Basis messe. Und ich hab am Emitter 6V und 2V 
gemessen.


Schaltung 2, Problem 2:

300k Poti auf Vref und GND, Schleifer auf Eingang.
Code vom GCC Tuturial, Interne Referenzspannung.
1V am Poti, 0V an Masse.
Wert des Eingangs (0-255?) auf Pulsweite 1:1.

Poti 0% Motor 0%
lineare Steigerung bis
Poti 33% Motor 100%
Poti 34% Motor 0%
lineare Steigerung bis
Poti 66% Motor 100%
Poti 67% Motor 0%
linerare Steigerung bis
Poti 100% Motor 100%

Die Tatsache das PWM 255 auch Stillstand bedeutet jetzt bitte mal 
ignorieren.

Wenn ich mit dem Multimeter den Schleifer messe habe ich linear 0-1V und 
linerae
0-100% Poti = 0-100% Motor
Egal in welcher %-Stellung ich bin, wenn ich ohne Multimeter arbeit hab 
ich 3 Sägezähne bei der Motorgeschwindigkeit, mit hab ich eines.


Hat jemand schonmal solche Phänomene erlebt?
Ist mein erstes Mal das ich Transistor und Poti benutz bei Ein und 
Ausgängen. Ich arbeite auch erst seit paar Wochen mit dem ganzen.

von Udo S. (urschmitt)


Lesenswert?

Cupropituvanso Draco schrieb:
> Ausgang PD4 (Pin6) über 10k aus Basis eines NPN Transistor.
> Collector auf 12V
> Emitter auf eine Lichtschranke (Versorgung) und die Masse der 12V
> Lichtschranke mit der AVR Schaltung verbunden.

Der Emitter eines NPN Transistor ist immer ca. 0,7V negativer als die 
Basis, sonst sperrt er.
Du musst entweder einen PNP mit Zusatzbechaltung nutzen, oder statt Plus 
der 12V die Masse zum Verbraucher schalten.
Außerdem sind 10k als Basisvorwiderstand für einen 
Standardkleinsignal-Schalttransistor eher zu hoch. Ich würde 1K - 2,2K 
nehmen.

von Karl H. (kbuchegg)


Lesenswert?

Cupropituvanso Draco schrieb:

> Schaltung 1, Problem 1:
>
> Ausgang PD4 (Pin6) über 10k aus Basis eines NPN Transistor.
> Collector auf 12V
> Emitter auf eine Lichtschranke (Versorgung) und die Masse der 12V
> Lichtschranke mit der AVR Schaltung verbunden.
> 0V und 5V auf PD4 funktioniert. Aber die Lichtschranke ist nur an wenn
> ich mim Multimeter an der Basis messe. Und ich hab am Emitter 6V und 2V
> gemessen.

Das du überhaupt 6V zusammenbringst.

Aber ansonsten ist das logisch.
Der Pegel am Emitter kann nie höher sein, als der Pegel an der Basis.

2 Möglichkeiten
entweder du drehst das ganze um und setzt die Lichtschranke über den NPN

                   --+---- +12V
                     |
                    LS
                     |
      ---- R ------ NPN
                     |
                  ---+-----

(du schaltest also praktisch die Masse der LS zu bzw. weg)
oder du benutzt einen PNP. Aber selbst dann brauchst du einen 
Hochsetzsteller, also eine Kombination aus PNP und NPN, wenn du 12V 
schalten willst. 10k als Basiswiderstand sind über den Daumen etwas 
viel. Hast du den gerechnet oder geschätzt? Normalerweise hat man so um 
die 1k bei üblichen hF.


> 300k Poti

300k ist zu viel.
10k

von Udo S. (urschmitt)


Lesenswert?

Siehe auch (das ist ein Link: ) Transistor

von Karl H. (kbuchegg)


Lesenswert?

> Wert des Eingangs (0-255?)

kommt drauf an, wies programmiert ist. Aber normal sind 0 bis 1023.

> Poti 0% Motor 0%
> lineare Steigerung bis
> Poti 33% Motor 100%
> Poti 34% Motor 0%
> lineare Steigerung bis
> Poti 66% Motor 100%
> Poti 67% Motor 0%
> linerare Steigerung bis
> Poti 100% Motor 100%

Würde sich mit dem hier decken. Wenn du 10 Bit Werte einfach so auf 
einen 8 Bit Wert schreibst, wiederholt sich der Wertebereich. Allerdings 
4 mal und nicht 3 mal. Denn 4*256 ergibt 1024

Könnte also ein Programmfehler sein.

von nobi (Gast)


Lesenswert?

mach doch mal ne Skizze von dem Ganze:

zu 1: wenn Du am Emitter 6V hast, brauchst Du auf der Basis ca. 6.7Volt 
um den Transistor durchzuschalten ?
Du kannst natürlich dei Basis des Transistors über Pull Up mit VCC 
Versorgen, und dann mit den Atmel Ausgang zwischen TriState und Low das 
ganze Ein /Aus schalten, aber dazu wäre auch eineSkizze hilfreich

von Hubert G. (hubertg)


Lesenswert?

Zu 2:
Hast du einen 100n Kondensator an AREF?
Es ist bei dem hochohmigen Poti auch ein 10n Kondensator am ADC-Eingang 
notwendig.

von Cupropituvanso D. (cupropituvanso_draco)


Lesenswert?

Okay, dann werd ich die Schaltung umdrehen und die LS über den NPN 
geben.

Sowohl die 10k an Basis als auch das mindestens 100k Poti an Vref hab 
ich in nem Tuturial gelesen. Das Poti glaub ich sogar hier.

Ah natürlich die 8Bit und die 2Bit vom zweiten register :)
Okay, und durchs Messgerät hab ich die Werte beeinflusst, dabei hätten 
die 4 oder 3 Sägezähne eh gestimmt.

Zu 4 oder 3, hab das vom Büro aus jetz getippt ohne nochmal genau zu 
schaun, nur sinnbildlich und es hat gereicht :) Freitag schau ich mir 
das an.
Danke

PS: nein noch kein Kondi bei Vref. Und kann jetz die 300k lassen?

von Dietrich L. (dietrichl)


Lesenswert?

Cupropituvanso Draco schrieb:
> Ah natürlich die 8Bit und die 2Bit vom zweiten register :)

Du weißt, das man auch mit nur 8 Bits = 0...254 arbeiten kann?
Bei ADLAR = 1 ist das Ergebnis linksbündig und der 8-Bit-Wert steht im 
High-Byte-Register.

Gruß Dietrich

von Cupropituvanso D. (cupropituvanso_draco)


Lesenswert?

ne wusst ich nicht, ich hab das "W" benutzt

da ich im Endeffekt aber eh umrechenformeln geschrieben habe benutz ich 
jetzt

0-500 Poti = 250-0 PWM1
523 - 1023 = 0-250 PWM2

das kann ich leicht anpassen

und beim anderen ja da kann ich die if<120 und if>150 lassen und nur die 
oberen 8Bit benutzen. wenn das zu ungenau ist pass ichs halt an

danke für den Hinweis

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.