servus, ich möchte mir eine motorsteuerung (h brücke) mit fets aufbauen ich verwende dazu 2x den BUZ11 und 3x den IRF5305. gesteuert wird das ganze von einem attiny26. jeweils 2 der BUZ11 und der IRF5305 bilden die h brücke der 3te IRF5305 ist für die strombegrenzung gedacht. mit der schaltung im anhang werden die IRF5305 angesteuert. mit einem poti wird der maximal strom eingestellt und vom attiny26 gemessen zudem wird der fließende strom über einen shunt ebenfalls vom attiny26 gemessen der den strom dann über das tastverhältnis regelt. Versorgunsgspannung: 20V Maximalstrom: 4A PWM frequenz: ca 15kHz das problem ist jetz dass der IRF5305 bei 15kHz nicht mehr abschaltet. zu testzwecken habe ich die pwm frequenz reduziert ab ca. 500Hz schaltet der fet erst wieder. laut meinem oszi ist die positive flanke sehr steil allerdings braucht er zum abschalten (bei jeder frequenz) ca 50ms. Wie kann ich die negative flanke steiler bekommen? die schaltung habe ich aus folgendem beitrag hier wird geschrieben dass man mit dieser schaltung locker mit 100kHz schalten kann. Beitrag "Re: Wie Ugs (p-FET) sinnvoll begrenzen?" ich hoffe ich hab alles wichtige rein geschrieben danke schonmal für eure antworten mfg daniel
Hast du überhaupt einen lastwiderstand angeschlossen oder schaltet der Mosfet ins leere? Wenn nein, mach mal einen 100 Ohm Widerstand und dann mess nochmal.
danke erstmal für deine schnelle antwort du hattest recht der Fet schaltete ins leere mit widerstand funktionierts einwandfrei danke aber warum ist das so kannst mir das bitte noch erklären
Ich bin da nicht so der Experte. Ich vermute aber, dass du bei der Platine, den Bauteilen und den Leitungen gewisse parasitäre Kapazitäten hast. Und die brauchen eben eine gewisse Zeit um sich zu entladen. Wenn nun ein Lastwiderstand angeschlossen ist, geschieht dieser Enladevorgang schneller.
Münzi Münzi schrieb: > aber warum ist das so kannst mir das bitte noch erklären Du solltest dir selber eher mal erklären, warum du da (ohne diesen Lastwiderstand) 0V erwartest. Woher sollen die denn kommen, so ganz ohne Strompfad nach GND? Erst, wenn du die Low-side der H-Bücke auch anschaltest, gibt es einen definierten Pfad nach 0V. Das fehlt in der geposteten Schaltung aber noch komplett.
dass mit der flanke funktioniert wunderbar nur hab ich jetz schon wieder ein problem und zwar schafft es der controller nicht den motorstrom an den sollwert anzugleichen stattdessen wird das tastverhältnis immer kleiner macht dann einen sprung zu 100% (ich denk mal weil dann OCR1A wieder bei 255 anfängt) und wird dann wieder kleiner. es kann nur an meinem programm liegen aber ich steig grad einfach nimma durch (sitz jetz schon den ganzen tag dran). wär super wenn nochmal einer drüberschaun würd quellcode ist im anhang
Münzi Münzi schrieb: > quellcode ist im anhang Der Schaltplan dazu wäre auch nicht ohne... Wie sieht denn die Strommessung aus?
1 | : |
2 | ;Messwert einlesen |
3 | in r18, ADCL |
4 | in r18, ADCH |
5 | : |
6 | ;Messwert einlesen |
7 | in r19, ADCL |
8 | in r19, ADCH |
9 | |
10 | cp r19, r18 |
Naja...
nachdem ich nur mit 8 bit weiter rechnen will und ich ADLAR gesetzt habe fehlen mir nur die untersten 3 digit also spricht doch nichts dagegen dass ich das so einlese oder? nen schaltplan gibts dazu nicht das ganze wurde aus mehreren schaltplänen zusammengebaut (ich verwende keinen autorouter) aber ich hab mal das vorlaufige layout gepostet.(auf die polarität der freilaufdioden hab ich im layout nicht geachtet)
Hallo, auf jeden Fall fehlt da eine ordentliche Entkopplung der Stromversorgung des Microcontrollers. Spätestens dann, wenn "richtige" Lasten geschaltet werden, werden übelste Spikes auf der Versorgungsspannung auftreten. Zunächst sollte der Spannungsregler eingangs- und ausgangsseitig abgeblockt werden. Da ja die Versorgungsspannung recht hoch, aber die Stromaufnahme des Microcontrollers recht niedrig ist, sollte die Spannung am Besten sogar mit einem Vorwiderstand dem Microcontroller zugeführt werden. Die Masseführung ist in dem Layout erheblich verbesserungswürdig. Gruß Andreas Schweigstill
In der Tat. Die Versorgungs-Schleife Ub-GND bildet genau eine einlagige Spule um alles, was in der Mitte der Platine ist. Nicht sehr geschickt gemacht.
da hab ihr recht das werd ich noch ändern aber warum funktioniert das programm nicht ich find einfach meinen fehler nicht
Hi >da hab ihr recht das werd ich noch ändern aber warum funktioniert das >programm nicht ich find einfach meinen fehler nicht >;Strom messen >;ADC Init >ldi r16, 0b10100010 ;Interne Referenzspannung 2,56V, >Wert links bündig >out ADMUX, r16 >ldi r16, 0b11000111 >out ADCSRA, r16 >;Messwert einlesen >in r19, ADCL >in r19, ADCH Vielleicht solltest einfach warten bis der ADC mir der Messung fertig ist.
1 | .... |
2 | out ADCSRA, r16 |
3 | aaa: sbic ADCSRA,ADSC |
4 | rjmp aaa |
5 | in r19,ADCH |
6 | ... |
Und formatiere mal deinen Quellcode. So etwas tue ich mir normalerweise nicht an. MfG Spess
danke erstmal für deine antwort bei einer temperaturmessung hats auch ohne abfragen des ADSC bits funktioniert aber gut dass ich das so auch mal sehe ich hab das jetzt mal eingefügt aber der fehler bleibt trotzdem da ich denke nicht dass es am layout liegt der fehler müsste sein dass beim vergleichen von soll und istwert keine übereinstimmung auftritt und OCR1A immer weiter dekrementiert wird und nach null dann wieder mit 255 weiter macht. aber warum kommt es zu keiner übereinstimmung?
Das ist bestimmt das, was Lothar Miller weiter oben meinte: > cp r19, r18 > Naja... Man vergleicht eben nicht einfach auf Gleichheit, sondern eher auf kleiner (gleich) oder größer(gleich). Denn es muß bei Meßgrößen ja nicht vorkommen, daß x=y wird.
Ach verdammt - ich habe mit voll durchgesteuertem Q2 gerechnet ... 13.03V ... jopp ... Habe ich was gesagt? :-) Gruß Jobst
Münzi Münzi schrieb: > nen schaltplan gibts dazu nicht Hmmm... Mir würde da der Überblick fehlen (insbesondere auch auf die fehlenden Puffer- und Entkopplungskondensatoren am uC und am Spannungsregler). Münzi Münzi schrieb: > aber warum kommt es zu keiner übereinstimmung? Lass dir doch einfach die Messwerte mal ausgeben... Evtl. funktioniert auch einfach die Strommessung nicht wie vorgesehen. In einer Brücke ist das nämlich gar nicht so einfach. Aber wie gesagt: ohne Schaltplan... Spess53 schrieb: > Und formatiere mal deinen Quellcode. So etwas tue ich mir normalerweise > nicht an. Es würde evtl.sogar schon was bringen, den Quellcode nicht als .txt zu posten. Meine Assemblerdateien enden jedenfalls nicht auf .doc oder .txt. Im Anhang der ursprüngliche (noch fehlerhafte) Code mit der richtigen Endung.
ich hab jetzt nochmal ne nacht drüber geschlafen und bin drauf gekommen dass bei einer versorgungsspannung von 20V und einer 8 bit pwm jeder spannungsschritt 0,078V entspricht und darum der sollwert nie gleich dem istwert wird (wie jens schon geschrieben hat). nachdem der attiy aber keine 16bit pwm hat muss ich halt diese sollwert abweichung hinnehmen und meinen istwert nicht auf gleich abfragen oder hab ich schon wieder nen denkfehler drin. hab mir in der ausbildung mal sprintlayout angewöhnt und bisher hats immer gereicht hab aber in nem anderen thread von KiCad gelesen und werd das mal testen dann kann ich auch mal nen schaltplan posten und hab meine pläne nicht immer nur im kopf zudem werden dann auch die layouts besser hoff
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.