Forum: Mikrocontroller und Digitale Elektronik Einfache Schaltung funktioniert nicht


von hegi (Gast)


Angehängte Dateien:

Lesenswert?

Hallo

ich habe diese Schaltung gebaut und benutze folgendes bascom programm:

$regfile "m8def.dat"
$crystal = 1000000
Config Portd.0 = Output
Portd.0 = 1
Do

Toggle Portd.0

Waitms 5000

Loop


End

ich möchte nur den motor abwechselnd ein und ausschalten testweise. Aber 
es funktioniert nicht. Wenn ich den Mosfet rausmache und den motor 
direkt anschließe funktionert es auch nicht, obwohl ich zwischen d0 und 
gnd 4 volt messe . Kann mir jmd sagen warum ?

gruß

von Wurstwasser (Gast)


Lesenswert?

Die fehlen diverse Grundlagen. Mach dich erst einmal mit den hier im 
Forum angebotenen Grundlagen vertraut. Zu finden links oben.

von mr. mo (Gast)


Lesenswert?

Wenn das die komplette Schaltung ist, dann gibt es sehr viele 
Fehlerquellen ...

von Cyblord -. (cyblord)


Lesenswert?

Wenn das Mosfnet richtig angeschlossen ist, müsste es funktionieren. 
Aber das sieht man auf deinem ... äh.. Schaltplan nicht.
Zumindest die Hardware Seite, das Bascom geraffel sieht aber an sich 
auch richtig aus.

gruß cyblord

von hegi (Gast)


Lesenswert?

ja aber ohne mosfet läuft der motor ja auch nicht obwohl ich zwischen d0 
und gnd die vcc messen kann ?

von Cyblord -. (cyblord)


Lesenswert?

hegi schrieb:
> ja aber ohne mosfet läuft der motor ja auch nicht obwohl ich zwischen d0
> und gnd die vcc messen kann ?

Du kannst auch nicht ernshaft nen Motor direkt an den Portpin hängen.
Läuft der Motor denn überhauot? Also wenn du einfach direkt 4 Volt 
anlegst?

Danach kannst du das Gate vom Mosfet auch einfach mal manuell auf VCC 
legen und gucken ob der Motor anläuft.

gruß cyblord

von hegi (Gast)


Lesenswert?

das habe ich ja nur gemacht um zu testen ob es ohne den mosfet 
funktioniert.Das das nicht toll ist weiß ich auch.
Wenn ich beim motor direkt 4 V anlege läuft er

von hegi (Gast)


Lesenswert?

Am d0 liegen ja 4 volt an , das habe ich ja nachgemessen

von mr. mo (Gast)


Lesenswert?

Eine Frage vorher, hast du schon erfolgreich eine LED angesteuert? Also 
z.B. im 1s Rhytmus getoggelt?

von Cyblord -. (cyblord)


Lesenswert?

hegi schrieb:
> das habe ich ja nur gemacht um zu testen ob es ohne den mosfet
> funktioniert.Das das nicht toll ist weiß ich auch.

Ja na und was bringts? Die Ports liefern max. 20mA oder so, was soll 
sich da bei nem Motor groß tun, und am Ende ist dein µC kaputt.

Schau ob du dein Mosfet richtig beschaltet hast und/oder poste mal WIE.

Drain muss an den Motor,
Gate an den Controller.
Source an Masse.

Kontrollier das mal mit dem Datenblatt des Fets daneben.
Und wenn das so stimmt, lege das Gate auf VCC. Wenn der Motor dann nicht 
dreht brauchst du es mit dem Controller gar nicht erst zu versuchen.

von hegi (Gast)


Lesenswert?

also wenn ich am gate 4v anlege läuft der Motor.
Ich habe ihn auch wie oben beschrieben und dem datenblatt richtig 
angeschlossen.

ist dann der mosfet falsch ?

von Analogkäse (Gast)


Lesenswert?

cyblord ---- schrieb:
> Kontrollier das mal mit dem Datenblatt des Fets daneben.
> Und wenn das so stimmt, lege das Gate auf VCC. Wenn der Motor dann nicht
> dreht brauchst du es mit dem Controller gar nicht erst zu versuchen.
Das ist doch eine Totgeburt.

von Cyblord -. (cyblord)


Lesenswert?

hegi schrieb:
> also wenn ich am gate 4v anlege läuft der Motor.
> Ich habe ihn auch wie oben beschrieben und dem datenblatt richtig
> angeschlossen.
>
> ist dann der mosfet falsch ?

Ne der ist dann richtig.
Dein Controller macht Ärger.

Hast du Elkos an der Versorgungspannung nahe am Controller?
Woher kommt die Versorgung?
Schließe an D0 eine LED an und gucke ob diese sich korrekt verhält.

gruß cyblord

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> Wenn ich den Mosfet rausmache und den motor
> direkt anschließe funktionert es auch nicht, obwohl ich zwischen d0 und
> gnd 4 volt messe .

Hast Du den Motor dann auch an D0 und GND angeschlossen? In der 
Schaltung oben war er ja am MOSFET und +4V.
Dies nur zur Erklärung, warum Du eventuell +4V gemessen hast. Machen 
solltest Du es aber nicht, da Du damit den µC zerstören kannst.

Ansonsten könnte sein (teilweise wurde das schon gesagt):
- MOSFET richtig angeschlossen?
- Stützkondensator an Vcc?
- Freilaufdiode am Motor?
- Ziehwiderstand an Reset?
- Brown-out Detector (BOD) niedrig genug eingestellt?
- ???

Gruß Dietrich

von hegi (Gast)


Lesenswert?

ich habe bis jetzt noch keine Freilaufdiode oder Kondensator 
angeschlossen.
Und wenn ich am gate 4v anlege und der motor läuft ist der mosfet ja 
auch richtig angeschlossen oder sehe ich das falsch ?
und ohne diode und kondensator müsste es doch trotzdem laufen auch wenn 
das nicht optimal ist oder nicht ?

von Cyblord -. (cyblord)


Lesenswert?

Nein es läuft vorallem ohne Elkos NICHT. Der Controller macht dann 
dauernd resets wenn der Motor anlaufen soll.

Ohne Freilaufdioden wird es wahrscheinlich gehen, die Portpins der AVRs 
sind ziemlich robust. Aber optimal ist es nicht.
Ich tippe extrem auf die Elkos. Die sind gerade dann unverzichtbar wenn 
ein bisschen Last geschaltet werden soll. Ich würde 10µ oder sogar 100µF 
ranmachen.

Und ja das Mosfet ist wahrscheinlich korrekt angeschlossen.

gruß cyblord

von mr. mo (Gast)


Lesenswert?

hegi schrieb:
> Ich habe bis jetzt noch keine Freilaufdiode oder Kondensator
> angeschlossen.
> Und wenn ich am gate 4v anlege und der motor läuft ist der mosfet ja
> auch richtig angeschlossen oder sehe ich das falsch ?
> und ohne diode und kondensator müsste es doch trotzdem laufen auch wenn
> das nicht optimal ist oder nicht ?

Das ist so eine Sache. Sag uns doch mal zuerst woher du deine 4V 
bekommst. Ist das eine Batterie?

Die wichtigeste Frage ist erstmal, hast du einen Widerstand vom Reset 
Pin nach VCC gemacht? Ohne diesen arbeitet der Controller schonmal 
nicht.

Die Freilaufdiode ist nur dazu gedacht die Schaltung zu schützen. Aber 
kleine Keramikkondensatoren von 100nF zwischen VCC und GND am Controller 
sollten möglichst schonmal dran sein.

Was hast du mit den restlichen Pins des Controllers gemacht?

von hegi (Gast)


Lesenswert?

aso ok

aber der controller muss doch nur den mosfet schalten, dann hat doch der 
Controller nichts mit der last des motors zu tun oder doch ?

von Cyblord -. (cyblord)


Lesenswert?

mr. mo schrieb:

> Die wichtigeste Frage ist erstmal, hast du einen Widerstand vom Reset
> Pin nach VCC gemacht? Ohne diesen arbeitet der Controller schonmal
> nicht.
So ein Schwachsinn!

@hegi:
Durch das anlaufen des Motors wird aber Versorgungsspannung beeinflusst. 
Der Portpin selber muss nicht viel Strom liefern das stimmt. Aber es 
geht um eine saubere Versorgung. Probier es einfach aus.

Merk dir das Grundsätzlich. Ein Controller oder IC sollte immer einen 
kleinen Kondensator zwischen VCC und Masse haben. Immer.

von mr. mo (Gast)


Lesenswert?

cyblord ---- schrieb:
> mr. mo schrieb:
>
>> Die wichtigeste Frage ist erstmal, hast du einen Widerstand vom Reset
>> Pin nach VCC gemacht? Ohne diesen arbeitet der Controller schonmal
>> nicht.
> So ein Schwachsinn!

Nein kein Schwachsinn. Ist so eine typische Fehlerquelle. Entspricht 
meiner persönlichen Erfahrung. Schon alleine, wie oft ich den beim 
schnellen zusammenbau aufm Steckbrett vergessen habe und man erstmal 
5min sucht bis man checkt warum nichts funktioniert.

von hegi (Gast)


Lesenswert?

Die Spannung kommt von einer Batterie
Ich habe das mysmartcontrol mk2.
Ein resetschalter ist schon auf der board verbaut, daher gehe ich davon 
aus das auch ein widerstand drin ist oder nicht ?

an den restlichen pins ist nichts angeschlossen.

zu dem board habe ich noch ein extern power kit dazugeholt aber noch 
nicht verbaut :
http://shop.myavr.de/index.php?sp=article.sp.php&artID=100003

würde es funktionieren wenn ich die komponenten verbaue ?

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> und ohne diode und kondensator müsste es doch trotzdem laufen auch wenn
> das nicht optimal ist oder nicht ?

Ohne Diode könnte der FET kaputtgehen, ist aber z.Zt. vielleicht nicht 
so wichtig.
Aber ohne Kondensator kann folgendes passieren:
- Motor wird eingeschaltet
- +4V-Spannung bricht ein
- µC macht einen Reset
- Programm beginnt wieder von vorne

Also: bevor Du irgend etwas anderes probierst, 100nF direkt am µC und 
ein Elko (einige 100µF) an +4V.

Gruß Dietrich

von Cyblord -. (cyblord)


Lesenswert?

mr. mo schrieb:
> cyblord ---- schrieb:
>> mr. mo schrieb:
>>
>>> Die wichtigeste Frage ist erstmal, hast du einen Widerstand vom Reset
>>> Pin nach VCC gemacht? Ohne diesen arbeitet der Controller schonmal
>>> nicht.
>> So ein Schwachsinn!
>
> Nein kein Schwachsinn. Ist so eine typische Fehlerquelle. Entspricht
> meiner persönlichen Erfahrung. Schon alleine, wie oft ich den beim
> schnellen zusammenbau aufm Steckbrett vergessen habe und man erstmal
> 5min sucht bis man checkt warum nichts funktioniert.

Ist Schwachsinn und bleibt Schwachsinn. Der Atmega8 hat einen 
eingebauten Pullup auf Reset. Wie die meisten modernen oder weniger 
modernen AVRs.

gruß cyblord

von mr. mo (Gast)


Lesenswert?

hegi schrieb:
> Die Spannung kommt von einer Batterie
> Ich habe das mysmartcontrol mk2.
> Ein resetschalter ist schon auf der board verbaut, daher gehe ich davon
> aus das auch ein widerstand drin ist oder nicht ?
>
> an den restlichen pins ist nichts angeschlossen.
>
> zu dem board habe ich noch ein extern power kit dazugeholt aber noch
> nicht verbaut :
> http://shop.myavr.de/index.php?sp=article.sp.php&a...
>
> würde es funktionieren wenn ich die komponenten verbaue ?

Also wenn du ein Fertigsystem benutzt, dann ist von der Grundschaltung 
her alles in Ordnung.

Das Power Kit kannst du verbauen, muss du aber erstmal nicht. Wenn du es 
draufbauen solltest, dann denk dran das deine 4V Batterie dann nicht 
mehr reicht. Dann tuts besser eine 9V Block Batterie. Aber dann die 9V 
Batterie nur dann dran bauen, wenn du das Power Kit dran hast.

Ansonsten kann man Hardwaretechnisch nur noch fragen ob du die 
Möglichkeit hast noch einen Elko zum Puffern der Batterie dran zu 
machen.

von hegi (Gast)


Lesenswert?

ok soll ich dann einen 300µF zwischen Batterie und vcc am controller in 
reihe schalten und dann müsste es funktionieren ?

von Cyblord -. (cyblord)


Lesenswert?

Hm ja, vielleicht bricht die Batterie ja einfach ein....

Dass du eine fertige Platine benutzt hättest du auch mal sagen 
können....

von Karl H. (kbuchegg)


Lesenswert?

hegi schrieb:
> ok soll ich dann einen 300µF zwischen Batterie und vcc am controller in
> reihe schalten und dann müsste es funktionieren ?

Bei dir sind so viele Unbekannte, das man rätselraten muss.

Wo kommen die 4V her?
Was ist das für ein Motor?
Ist der FET richtig verschaltet?

von mr. mo (Gast)


Lesenswert?

cyblord ---- schrieb:
> Ist Schwachsinn und bleibt Schwachsinn. Der Atmega8 hat einen
> eingebauten Pullup auf Reset. Wie die meisten modernen oder weniger
> modernen AVRs.

Ja hatta, bis zu dem Zeitpunkt dachte ich auch der Threadstarter hat 
hier irgendwie einen Lochraster-/Steckbrettaufbau. Da machen die öfters 
mal Probleme. Mit ich glaube 50k oder sowas ist der interne Widerstand 
nur halt bisschen hochohmig und leicht reizbar.
Schon alleine da ein kleiner Motor noch verbaut ist und man da lieber 
noch sicher gehen sollte das an dieser Stelle schonmal keine Störungen 
auftreten können.

Wollte jetzt hier nicht als Klugscheisser oder sowas rüber kommen.

Der OP sollte uns lieber nochmal sagen ob er ein paar Elkos zur 
verfügung hat, ansonsten macht es Sinn das Power Kit mal drauf zu bauen. 
Natürlich auch nur dann wenn eine 9V Block Batterie vorhanden ist.

von Karl H. (kbuchegg)


Lesenswert?

Immer diese 9V Block Batterien. Die sind doch Müll und immer dann leer, 
wenn man sie braucht. Eine ordentliche Spannungsversorgung aus einer 
alten Wandwarze und das Thema kann ad acta gelegt werden.

von mr. mo (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Immer diese 9V Block Batterien. Die sind doch Müll und immer dann leer,
> wenn man sie braucht.

Stimmt!

Ich ergänze:
Ein Steckernetzteil auf min. 9V und richtig gepolt sollte es auch tun.

von he g. (hegi2k)


Lesenswert?

leider weiß ich auch nicht was das fuer ein motor ist . habe keine daten 
dazu gefunden.

aus dem power kit koennte ich zwei 200mikrofarad kondensatoren testweise 
verbauen .ansonsten wuerde ich morgen einen elko kaufen.

von Stefan W. (wswbln)


Lesenswert?

...vielleicht kann der liebe hegi ja mal ein/zwei/drei aussagefähige(s), 
aber nicht unnötig grosse(s) (siehe Dateiformate!) Foto(s) seines 
Aufbaus machen? Vielleicht löst das schon einige Fragen, die er sich so 
hartnäckig verweigert zu beantworten.

@hegi: Über das richtige Handling (speziell zum Thema ESD) von derlei 
MOSFETs weißt Du Bescheid? Nicht dass am Schluss der FET einen Schuss 
weg hat...


(PS: Lässt das "2k" in Deinem Nick auf das Geburtsjahr schliessen?)

von hegi (Gast)


Angehängte Dateien:

Lesenswert?

warum weigere ich mich denn ;-) ich habe doch alles beantwortet

und nein ich bin keine 12 jahre alt ... hegi war schon besetzt, deshalb.

eben habe ich testweise den das gate an + gehalten, dann ist der motor 
gelaufen. Wenn ich jetzt aber an - halte um zu entladen läuft der motor 
trotzdem weiter ? Aber wenn ich ihn mit der hand anhalte bleibt er 
stehen, sobald ich ein bisschen drehe läuft er weiter.
Und der mofet wird heiß

ist der defekt ?

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> eben habe ich testweise den das gate an + gehalten, dann ist der motor
> gelaufen.

Das ist gut und OK.

> Wenn ich jetzt aber an - halte um zu entladen läuft der motor
> trotzdem weiter ?

Was ist "an - halte"?
Wenn Du das Gate nur offen lässt, wird nichts "entladen" 
(Gate-Kapazität!). Die Spannung bleibt (unkontrolliert) und der FET 
bleibt durchgeschaltet.

> Aber wenn ich ihn mit der hand anhalte bleibt er
> stehen, sobald ich ein bisschen drehe läuft er weiter.

Wenn Du das Gate mit der Hand berührst, ändert sich die Ladung (und 
damit die Spannung). Je nach Potenzial, auf dem Du dich befindest, kann 
sich das Gate entladen oder aufladen. Der FET kann also mehr ober 
weniger durchschalten.

> Und der mofet wird heiß

Im analogen Bereich (weder ganz durchgeschaltet, noch ganz gesperrt) ist 
die Leistung am FET (P=U*I) größer und er kann warm werden. Und in 
diesem Bereich bist Du ja eventuell, wenn die Spannung am Gate so 
"herumhängt".

> ist der defekt ?

Vermutlich nicht.

Hinweis: So einfach mit dem Finger an das Gate fassen ist gefährlich. Je 
nachdem wie stark Du selber aufgeladen bist, kann der Entladestrom das 
Gate zerstören. Wenn Du schon anfassen willst, solltest Du Dich zuerst 
auf Schaltungspotenzial bringen => mit der anderen Hand GND anfassen!

Gruß Dietrich

von MaWin (Gast)


Lesenswert?

> ist der defekt ?

Vielleicht.

Auf deinem Photo sehe ich einen Akku aus 2 Zellen.

Wie kommst du auf 4 V ?

Im Datenblatt des IRLZ34 lese ich, daß er ab 4V sicher einschaltet, aber 
von weniger, z.B. was bei 3V ist, steht dort nichts. Falls dein Akku 
also nur 2.4V liefert, darfst du dich nicht wundern, du muß nicht mal 
der Prozessor funktionieren.

Obwohl man dich auf die Freilaufdiode hingeweisen hat, ist immer noch 
keine zu erkennen.

Und wenn man beim Aufbau die ineinandergesteckten Drähte sieht, wundert 
einen eigentlich gar nichts mehr, das ist doch der programmierte 
Wackelkontakt an jeder Verbindung.

von hegi (Gast)


Lesenswert?

> Wenn ich jetzt aber an - halte um zu entladen läuft der motor
> trotzdem weiter ?

Damit meinte ich wenn ich das gate auf GND schalte, passiert nichts. 
sollte sich dann nicht die spannung entladen und der motor aufhören sich 
zu drehen ?

> Aber wenn ich ihn mit der hand anhalte bleibt er
> stehen, sobald ich ein bisschen drehe läuft er weiter.

damit meinte ich wenn ich den Motor anhalte, bleibt er stehen. und wenn 
ich ihn ein klein wenig andrehe läuft er wieder normal.

also warum hört der motor nicht auf zu drehen wenn ich gate an gnd 
schalte ?

von hegi (Gast)


Lesenswert?

>Wie kommst du auf 4 V ?

ich habe mit einem multimeter nachgemessen

>Und wenn man beim Aufbau die ineinandergesteckten Drähte sieht, wundert
>einen eigentlich gar nichts mehr, das ist doch der programmierte
>Wackelkontakt an jeder Verbindung.

vorher hatte ich alles mit klemmen gemacht, aber da es nicht 
funktioniert hat und ich die ganze zeit am umstecken war habe ich es 
gelassen.

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> also warum hört der motor nicht auf zu drehen wenn ich gate an gnd
> schalte ?

Wenn das wirklich so ist, dann ist er kaputt - zumindest teilweise!
Vielleicht hast Du ihn durch das Anfassen am Gate geschädigt.

Gruß Dietrich

von hegi (Gast)


Lesenswert?

So hab den Mosfet getauscht und jetzt funktioniert es.

Vielen dank für eure hilfe ;-)

jetzt wollte ich noch den elko zwischen stecken, aber sobald ich den 
einstecke geht das licht kurz an und dann ist die Spannung weg , kann 
mir wer noch sagen wieso ?

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> jetzt wollte ich noch den elko zwischen stecken,

Wo "zwischen"? Der Elko soll parallel zur Spannungsquelle.

Gruß Dietrich

von hegi (Gast)


Lesenswert?

jetzt läufts richtig.

Und damit sich der mosfet nach dem abschalten entläd und der motor 
ausgeht muss ich noch einen widerstand einbauen oder ?

von MaWin (Gast)


Lesenswert?

> > Wie kommst du auf 4 V ?
> ich habe mit einem multimeter nachgemessen

Dein Akku ist leer.
Der hat dann wohl 4 Zellen NICd/NiMH.
Du solltest ihn mal aufladen.

Vermutlich 14 Stunden lang 250mA aus einem Labornetzteil reinschicken, 
während dessen die Spannung von 4V auf 5-6V stiegen wird.
Nennspannung wäre 4.8V.

von Dietrich L. (dietrichl)


Lesenswert?

hegi schrieb:
> Und damit sich der mosfet nach dem abschalten entläd und der motor
> ausgeht muss ich noch einen widerstand einbauen oder ?

Die Gate-Kapazität wird doch entladen, wenn der Ausgang des µC auf Low 
geht!
Lediglich beim Einschalten des µC bis zur Initialisierung durch das 
Programm sind die Ports Eingänge (=hochohmig). Da wäre ein Widerstand am 
Port-Ausgang gegen GND sinnvoll (10k...100k), um den Fet in dieser Zeit 
sicher zu sperren.
Eventuell ist auch ein Widerstand zwischen Port und Gate sinnvoll, um 
den Ladestrom zu begrenzen und den µC zu schonen. Aber das ist eine 
andere Geschichte (Schalthäufigkeit, Schaltgeschwindigkeit...).

Gruß Dietrich

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.