Hi,
ich habe derzeit Probleme mit der Ansteuerung der o.g. H Brücke.
(wird heiß)
Aber zuerst die Eckdaten:
Max PWM-Frequenz laut Datenblatt: 10kHz
Verwendeter µC: Atmega88
Takt: Interne 8MHz
Verwendeter OutputPin: PB2/OC1B
Prescaler: 1/8
Motoreckdaten: 03DCM454-24-5,4-3900-22 (drive-system.com) [24V max 8A]
Wenn ich >200/255 fahre, dann läuft der Motor entsprechen mit 80% stabil
und die H-Brücke bleibt kalt.
Reduziere ich das PWM auf 20/255 so wird die H-Brücke binnen 2 Sek heiß
(aufließgender Finger muss zurückgezogen werden ;)
Meine Vermutung:
Die Mosfets schalten zu oft(?)
Laut Berechnung ergibt sich jedoch 3906.250 Hz Grundfreqeunz.
Zur Kontrolle hier noch mal mein init():
//Timer 1 Compare Output mode einstellen: Pin geht auf high bei Compare match, auf low bei Überlauf.
15
TCCR1A|=(1<<COM1B1);//Nur Channel B
Ich habe absichtlich den Code beider Timer gepstet, falls Jemand einen
Seiteneffekt kennt/sieht.
Gibt es einen Fehler in meiner Berechnung?
Ist die berechnete PWM-Frequenz dennoch zu hoch? (obwohl <=10kHz)
Würde mich über jede Info sehr freuen.
Grüße Oekel
PS: Weil wir gerade beim VNH3SP30-E sind -->Datasheet Figure 33:
Einige schutzfunktionen können ja in Kombination von DIAG/ENA & einem
der Outputs ausgewertet werden. Da am Output bei mir an die 24V liegen
können, frage ich mich, ob dieser (*)10K Widerstand wirdklich das
einzige zwischen der Brücke und dem µC ist? Ich kann leider das
Sternchen* nirgends mehr im Datenblatt finden...
Achso und weiterhin: Mit MM/Oszi messen wie die PWM Frequenz ist, würde
deine Frage nach "schalten zu oft" direkt beantworten. Und der
Codeschnipsel ist ohne Fuses nutzlos.
Sascha schrieb:> Achso und weiterhin: Mit MM/Oszi messen wie die PWM Frequenz ist, würde> deine Frage nach "schalten zu oft" direkt beantworten.
Nach umstellen des Prescalers auf 1/1024 erhalten ich am Oscilloscope
eine Freqzenz von 30Hz. (Und der Chip wird nicht mehr heiß)
Was allerdings in keiner Weise meine theoretische Frage beantwortet.
Was ist zu niedrig, was ist zu hoch, um eine optimale Ausnutzung (wenig
Verlustleistung) zu erziehlen?
> Und der> Codeschnipsel ist ohne Fuses nutzlos.
Ich finde In den Fuses des Atmega88 EINE einzige relevante FUSE. Was
soll daher dieser Einwand? Dass ich mit dem internen 8Mhz arbeite sagte
ich ja bereits.
Sascha schrieb:> Mal EN/DIAG mit nem Widerstand an Vcc gehangen und geguckt ob das IC die> auf low zieht?
Werde ich nun mit dem neuen Takt testen. (Und später noch mal mit dem
schnelleren)
Ich wette du hast die Versorgung von der H-Gurke nicht richtig entstört
und damit scaltet der nicht schnell genug.
Post doch mal ein Bild von deinem Aufbau/Layout...
Bin vom Markt Bereich hier gelandet. Das müssten wir doch in der
Community schaffen wenn du die Schaltung zeigen kannst!
Vergleich mal deinen Aufbau mit einem Modul von Polulu, die laufen gut
(oder besorg dir sowas kurzfristig, könntest du evtl. bei TME bekommen,
und teste deinen Code gegen das geprüfte Modul).
Das Datenblatt ist nicht gerade ein Ruhmesblatt für ST...
Die Rise Time und wohl auch die Fall Time liegen bei 3µs bzw. 5µs
(jeweils Worst Case). Bei 24V/8A sind während des Schaltens die
Peak-Leistungen näherungsweise (1/2U)*(1/2)I, d.h. ca. 50W, je Leg. Für
beide zusammen also 100W. Für den gesamten Schaltvorgang nehme ich
i.d.R. die Hälfte dieses Werts als Mittel an, d.h. während des Schaltens
ist die H-Brücke mit 50W Verlustleistung dabei. Dieser Wert hat mit dem
Rds_on nichts zu tun und ergibt sich durch den linearen Betrieb während
des Schaltvorgangs.
Bei 4kHz hast du 4000*(3µs+5µs) = 32ms Schaltdauer je Sekunde. Das sind
also ca. 1,5W durch die Schaltverluste.
Die Rds_on-Verluste kommen noch dazu. 90mOhm für beide Legs und 8A geben
I^2*R = (8A)^2 * 90mOhm = 5,76W.
In der Summe also rund 7W. Da solltest du schon gut kühlen, sollte aber
lösbar sein.
Ein Gedanke kommt mir noch: ist sichergestellt, dass beim Umschalten
nicht zwischendurch beide Legs ausgeschaltet sind? Wenn das passiert,
hängt die Induktivität des Motors in der Luft, und die H-Brücke wird
vermutlich klammern, um die Spannung nicht ins Unendliche gehen zu
lassen. Und 8A wegzuklammern dürfte gut heizen.
Oszi mit vielen Kanälen tut wohl not...
Max
> Ein Gedanke kommt mir noch: ist sichergestellt, dass beim Umschalten> nicht zwischendurch beide Legs ausgeschaltet sind? Wenn das passiert,> hängt die Induktivität des Motors in der Luft, und die H-Brücke wird> vermutlich klammern, um die Spannung nicht ins Unendliche gehen zu> lassen. Und 8A wegzuklammern dürfte gut heizen.
Das ist ein sehr guter Hinweis, den ich nicht ausschließen möchte.
Hier mal alles, was ich so bereitstellen kann:
Die Bauteilnamen vom Schaltplan stimmen nicht mit denen in der 3D
Ansicht überein. Wo sind die beiden 100nF Kondensatoren C7/C9, welche
VCC des Treibers entkoppel sollen?
Poste mal ein Datenblatt oder einen direkten Link auf den Motor.
Da du anscheinend ein Oszi hast, sollte ein Leichtes sein, die
PWM-Frequenz mal direkt zu messen.
>Meine Vermutung:>Die Mosfets schalten zu oft(?)
Es kann aber auch sein, daß der IC in den "Linear current limiter"
Betrieb geht, warum auch immer.
Teste mal im Leerlauf, dann mit einem Leistungswiderstand, der auch etwa
den gleichen Nennstrom zieht wie dein Motor.
Falk B. schrieb:> Die Bauteilnamen vom Schaltplan stimmen nicht mit denen in der 3D
3D war wohl ein alter Export
> Poste mal ein Datenblatt oder einen direkten Link auf den Motor.
Zitat von MSW GmbH - R. Lindner:
"vielen Dank für Ihr Interesse an unseren Produkten.
Im Anhang finden Sie das gewünschte Datenblatt.
Leider können wir keine anderen Daten zur Verfügung
stellen."
> Da du anscheinend ein Oszi hast, sollte ein Leichtes sein, die> PWM-Frequenz mal direkt zu messen.
Gemessen habe ich diese und entspricht dem berechneten soll.
Grüße Oekel
Max G. schrieb:> Ein Gedanke kommt mir noch: ist sichergestellt, dass beim Umschalten> nicht zwischendurch beide Legs ausgeschaltet sind? Wenn das passiert,> hängt die Induktivität des Motors in der Luft, und die H-Brücke wird> vermutlich klammern, um die Spannung nicht ins Unendliche gehen zu> lassen. Und 8A wegzuklammern dürfte gut heizen.
Ich habe über diesen Part noch Mal nachgedacht. Wie man im Code sieht,
schicke ich permanent das PWM drauf.
Dann wird nur mittels A und B (jeh nach Richtungswunsch) der Motor
"hochgefahren". Also vereinfacht gedacht, ist NUR A oder B aktiv und das
Problem tritt dennoch auf.
Oder habe ich dich da nun falsch verstanden?
Hmmm. 20/255 sind ~8%, macht bei ~4kHz PWM ca. 20us Pulsbreite. Nicht
viel, sollte der Treiber aber noch schaffen. Man sollte auf jeden Fall
beachten, dass die INA/B Eingänge nur für relativ langsame
Schaltvorgänge gedacht sind, so im Bereich vom 1ms und mehr. Nur der
PWM-Eingang darf schnell wackeln. Alles andere blockt die Logik im Chip
ab.
Der Motor sieht OK aus, der hat keinerlei komische Schutzbeschaltung,
die vielleicht Probleme machen könnte.
Miss erstmal im Leerlauf am Ausgang und mit ohmscher Last, die kann auch
deutlich kleiner sein (weniger Leistung!). Möglicherweise hat dein
Treiber mit den 20us Pulsbreite ein Problem.
Vorsicht! Das funktioniert nur, wenn zwischendurch SICHER auf OFF
geschaltet wird. Aber du hast auch eine Funktion toggleDriveDirection()!
Da wird direkt umgeschaltet!
Besser so.
Falk B. schrieb:> Hmmm. 20/255 sind ~8%, macht bei ~4kHz PWM ca. 20us Pulsbreite. Nicht> viel, sollte der Treiber aber noch schaffen.
Diese Werte hast du dem Code entnommen?
> Man sollte auf jeden Fall> beachten, dass die INA/B Eingänge nur für relativ langsame> Schaltvorgänge gedacht sind, so im Bereich vom 1ms und mehr.
Wenn ich nicht irgendwo Mist gebaut habe, passiert dies sogar nur alle
30sec.
> void drive_update()...
Da könnte tatsächlich Mist passiert sein!?
> Nur der> PWM-Eingang darf schnell wackeln. Alles andere blockt die Logik im Chip> ab.
So hatte ich es auch verstanden.
>> Der Motor sieht OK aus, der hat keinerlei komische Schutzbeschaltung,> die vielleicht Probleme machen könnte.>> Miss erstmal im Leerlauf am Ausgang und mit ohmscher Last
Werde ich morgen nach der Arbeit in Angriff nehmen, derzeit dröhnt der
Kopf (shit Wetter)
Falk B. schrieb:> Außerdem solltest du ein wenig an deiner Projektstruktur arbeiten und
Dein Wort in Gottes Ohren. Werde ich mir zu Herzen nehmen, sobald der
Motor rennt.
@ D a v i d K. (oekel)
>> Hmmm. 20/255 sind ~8%, macht bei ~4kHz PWM ca. 20us Pulsbreite. Nicht>> viel, sollte der Treiber aber noch schaffen.>Diese Werte hast du dem Code entnommen?
Nö, deinem Beitrag.
>> Man sollte auf jeden Fall>> beachten, dass die INA/B Eingänge nur für relativ langsame>> Schaltvorgänge gedacht sind, so im Bereich vom 1ms und mehr.>Wenn ich nicht irgendwo Mist gebaut habe, passiert dies sogar nur alle>30sec.
Ja, wenn!!!
Ergo. Kommentier mal deinen ganzen Menukram aus und schreibe eine
EINFACHE, ÜBERSICHTLICHE Testfunktion, wo du sicher sein kannst, daß die
gewünschte PWM auch ausgegeben wird. Dann teste und MISS!!
Einfach die PWM schrittweise von 100% runter fahren, z.B. jede
Schrittweite für 5s halten.
D a v i d K. schrieb:> Dann wird nur mittels A und B (jeh nach Richtungswunsch) der Motor> "hochgefahren". Also vereinfacht gedacht, ist NUR A oder B aktiv und das> Problem tritt dennoch auf.
Sorry, habe ein paar Tage hier nicht reingeschaut.
Falks Ansatz ist völlig richtig. Software auf das absolute Minimum
begrenzen, ohmsche statt induktive Last. Dann kannst du über die Last
auch mal den Strom messen (praktischerweise über die Spannung über der
ohmschen Last).
Ich meinte in meinem letzten Post den Umschaltvorgang von A nach B. Das
müsste die H-Brücke zwar eigentlich selbst machen, aber ich habe das
Datenblatt nicht komplett gelesen.
Max
Leider muss ich gestehen, dass ich die Messerei nicht wirklich
verstanden habe. Die Widerstände brutzeln mir reihenweise ab, wenn ich
sie an den Ausgang hänge.
Das PWM am Mc-Ausgang sieht sauber aus, aber wenn ich das Oszi (keine
Ahnung ob man das darf) mit Mess und Referenz an den Ausgang hänge,
erhalte ich ziemliches Rauschen im unteren Bereich .
Ist das normal bzw irgendwie zu erklären?
Ich vermute ich brauche bereits an dieset Stelle eine Anleitung für
Dumme :(
(Noch verwende ich die Frequenz wie im Source Code, an höhere hab ich
mich noch nicht ran getraut)
Grüße Oekel
@D a v i d K. (oekel)
>Leider muss ich gestehen, dass ich die Messerei nicht wirklich>verstanden habe. Die Widerstände brutzeln mir reihenweise ab, wenn ich>sie an den Ausgang hänge.
???
Hast du die Verlustleistung beachtet? Einen 1/4W Widerstand mit 10 Ohm
kann man dort sicher nicht anschließen.
>Das PWM am Mc-Ausgang sieht sauber aus, aber wenn ich das Oszi (keine>Ahnung ob man das darf) mit Mess und Referenz an den Ausgang hänge,
Was meinst du damit? Masse und Signal jeweils an einen Treiberausgang?
NEIN! Auch wenn du anscheinend ein potentialfreies Oszi mit
Battiebetrieb hast. Miss die Ausgangsspannung der beiden Ausgänge jeweis
gegen Masse der Schaltung! Masse des Tastkopfes an Masse der Schaltung!
Was für einen Tastkopf hast du?
>Ist das normal bzw irgendwie zu erklären?
Sieht komisch aus. Die Spannung muss deutlich sauberer sein.
>(Noch verwende ich die Frequenz wie im Source Code, an höhere hab ich>mich noch nicht ran getraut)
Im 1. Bild sieht man einen kleinen 2ms Puls, der aber nicht bis runter
geht. Da ist was faul.
D a v i d K. schrieb:> Ist das normal bzw irgendwie zu erklären?
Jein, denn um das definitiv zu beantworten, müsste man die
Messbedingungen kennen. Ich vermute mal, dass wir hier in den Pulspausen
im wesentlichen die Generatorspannung eines ungebremsten
Gleichstrommotors sehen. Im theoretisch idealen Fall ist diese genauso
hoch wie die Versorgungsspannung. Daher die geringen Spannungseinbrüche.
Sie ist auch dafür verantwortlich, dass ein mechanisch unbelasteter
Motor weniger Strom zieht, als ein gebremster. Aufgrund der Vorgänge im
Motor können wir natürlich keine reine Gleichspannung erwarten. Der
Ansatz, einen Motor einfach nur als Induktivität zu betrachten, würde
hier zu kurz greifen.
Im dritten Bild sehen wir eine überlagerte 50-Hz-Schwingung (Netz). Wie
die da eingekoppelt wird, kann ich mir ohne weitere Info nicht erklären.
Eventuell auch über die schon angesprochene ungewöhnliche
Tastkopf-Referenzanbindung. Während der Pulsdauer ist die Versorgung ja
augenscheinlich recht stabil.
Kurzantwort: Aus diesen Bilder ist für mich kein Fehlverhalten der HW
oder SW erkennbar.
Ich habe da noch zwei/drei Fragen:
Die Fehlerbeschreibung vom 27.03.2016 22:16 passt nicht zu der im
Markt-Thread. Gibt es noch beide Fehlerbilder oder wurde das ältere
Problem gelöst? War der Motor hierbei gebremst, ungebremst, blockiert?
(Der Strom steigt linear mit dem Bremsmoment an!)
Über Kühlung wurde nur ansatzweise gesprochen. Wie ist der Treiber denn
zur Zeit gekühlt? Kühlkörper? Wärmeleitpaste, -kleber, -folie?
Viele Grüße
Voko
Hier kurz der miniCode, der gerade läuft:
#include "inits.h"
#include "properties.h"
#include "countdown.h"
uint8_t driveAbsolute = 0;
int main(void)
{
ioinit();
pwm_init();
timer2_init();
// Interrupts (IRQs) global erlauben
sei();
// Zeit vertrödeln bis sich die Spannung stabilisiert hat.
// In die Hauptschleife gehört 'wait' oder 'delay' nicht rein!
wait_10ms(1);
INA = 1;
INB = 0;
driveAbsolute = 255;
while (1)
{
;
}
}
ISR(TIMER0_OVF_vect)
{
if (count.ms10.menu == 0)
{
PORTD ^= (1<<PD6);
count.ms10.menu = 50;
}
if (count.sec.menu == 0)
{
driveAbsolute -= 5;
OCR1B = driveAbsolute;
count.sec.menu = 5;
}
}
Dazu im Anhang die Bilder bei "offenem" Ausgang und mit einem 1mOhm
Wiederstand. (Sorry hatte beim verbraten der anderen zuvor die Ringe
nicht geprüft; falsch einsortiert)
Was mich jetzt bei der Messungen mit dem 1MOhm Widerstand extrem
irritiert, ist dass die On-Zeit invertiert zu sein schein, oder täusche
ich mich da? Habe an die Fotos immer den Wert von OCR1B angegeben, der
zu dem Zeitpunkt gerade anlag.
Grüße Oekel
D a v i d K. schrieb:> On-Zeit invertiert
kommt daher, dass du ja quasi am Low-Side-FET misst.
Ansonsten ist es immer schwierig nachzuvollziehen, was du da eigentlich
misst. Eine genauere Beschreibung wäre hilfreich.
Kanal B hängt mit Faktor 1:10 am OutB nehme ich an!? Kanal A hängt wo?
Messen ganz ohne Widerstand macht m. E. keinen Sinn. Der 1MOhm deckt
ohnehin den unbelasteten Fall ab. Gut, man sieht hier, dass der
Low-Side-FET schaltet, wie er soll und dass es durch parasitäre
Induktivitäten und Kapazitäten Spannungsspitzen gibt. Bei 1MOhm wundert
mich das nicht.
Das Ersetzen des Motors durch eine ohmsche Last scheitert bei dir
vermutlich daran, dass du keine belastbaren Widerstände (ca. 100 bis 200
Watt) rumliegen hast. Notfalls könntest du es mit 12-V-Glühbirnen
versuchen, musst aber berücksichtigen, dass diese kalt einen deutlich
niedrigeren Widerstand haben. Zweimal 50 W in Serie wären ein erster
Ansatz. (Das sind dann zwar nur knapp 4 A, aber der Motor zieht im
Normalbetrieb auch nicht mehr. Außerdem wird der Anfangsstrom der
Glühbirnen da auch schon bedenklich hoch, doch der Treiber hat intern ja
wohl ausreichende Schutzbeschaltung beziehungsweise Reserven.)
Wirklich aussagefähig werden die Messungen mit derartigen Lasten erst
(und später auch mit Motor), wenn du die Ströme misst. Hierzu musst du
irgendwo einen Shunt (50 mOhm, 100 mOhm z. B.) in Serie zu deiner Last
schalten (fast besser zwischen Treiber-GND und GND oder Treiber-VCC und
VCC) um da mit dem Oszi messen zu können.
Ich würde dann später auch Messungen mit blockiertem Motor bei
verschiedenen PWM-Frequenzen bei gleichem Tastverhältnis sehen wollen.
Das Tastverhältnis darf aber nicht zu hoch sein, weil sonst die Gefahr
besteht, den Motor zu überhitzen. (Eine meiner Hypothesen ist, dass der
Motor selbst keine hohen Frequenzen mag.)
PS Bei 1/4 W kannst du bis 2 kOhm runter gehen. Vielleicht hast du ja
noch ein paar Hundert davon rumliegen …. Das gäbe dann auch eine
vergleichbare Last.
voko schrieb:> D a v i d K. schrieb:>> On-Zeit invertiert>> kommt daher, dass du ja quasi am Low-Side-FET misst.>> Ansonsten ist es immer schwierig nachzuvollziehen, was du da eigentlich> misst. Eine genauere Beschreibung wäre hilfreich.>> Kanal B hängt mit Faktor 1:10 am OutB nehme ich an!? Kanal A hängt wo?
Am OutA
> Low-Side-FET schaltet, wie er soll und dass es durch parasitäre> Induktivitäten und Kapazitäten Spannungsspitzen gibt. Bei 1MOhm wundert> mich das nicht.
Kann dir nicht folgen, ist das wichtig für später?
>> Das Ersetzen des Motors durch eine ohmsche Last scheitert bei dir> vermutlich daran, dass du keine belastbaren Widerstände (ca. 100 bis 200> Watt) rumliegen hast.
Jup, aber vielleicht kann der Nachbar ja aushelfen. Also 2 kOhm mit
100W?
> Notfalls könntest du es mit 12-V-Glühbirnen
Davon möchte ich Abstand nehmen.
> Hierzu musst du> irgendwo einen Shunt (50 mOhm, 100 mOhm z. B.) in Serie zu deiner Last> schalten
ok 50 mOhm fliegen aber auch nicht rum...
> (fast besser zwischen Treiber-GND und GND oder Treiber-VCC und> VCC) um da mit dem Oszi messen zu können.
Diese Verdrahtung verstehe ich vom Wortlaut garnicht.
> Eine meiner Hypothesen ist, dass der> Motor selbst keine hohen Frequenzen mag.
Und wozu würde das führen? Also rein technisch gesprochen. Induktionen,
die was machen?
voko schrieb:> PS Bei 1/4 W kannst du bis 2 kOhm runter gehen.
Diese Theorie verstehe ich nicht.
> Vielleicht hast du ja> noch ein paar Hundert davon rumliegen …. Das gäbe dann auch eine> vergleichbare Last.
Ja habe ich in der Tat. S.o. ich muss auf 100W kommen?
Grüße Oekel
D a v i d K. schrieb:> Jup, aber vielleicht kann der Nachbar ja aushelfen. Also 2 kOhm mit> 100W?
Nein, 3 Ohm oder mehr. Das hängt davon ab, welche Last du wirklich
dauerhaft betreiben willst. Die 2 kOhm bezogen sich auf die
Parallelschaltung von sehr vielen schwachen Widerständen. Kennst du das
Ohmsche Gesetz? Kannst du eine Parallelschaltung von Widerständen
berechnen?
Du musst dir auch klar darüber sein, welchen Strom der Treiber
eigentlich dauerhaft liefern SOLL. 8 A ist immerhin der Strom, den der
Motor (bei 24 V) erst dann zieht, wenn er bereits blockiert oder kurz
beim Anlauf. Da du sogar nur ca. 23 V am Motor hast sogar weniger.
Vielleicht ist es aber auch gar nicht erwünscht, dass der Motor
dauerhaft den vollen Strom bekommt, z. B. um ihn zu schonen. Der Treiber
hat immerhin einen thermischen Schutz eingebaut, der Motor nicht.
Willst du z. B. nur 5 A, dann nimm 4,7 Ohm zum Testen (23,5 V / 5 A)
beziehungsweise den nächstverfügbaren Wert.
>>> Notfalls könntest du es mit 12-V-Glühbirnen> Davon möchte ich Abstand nehmen.>>> Hierzu musst du>> irgendwo einen Shunt (50 mOhm, 100 mOhm z. B.) in Serie zu deiner Last>> schalten> ok 50 mOhm fliegen aber auch nicht rum...>>> (fast besser zwischen Treiber-GND und GND oder Treiber-VCC und>> VCC) um da mit dem Oszi messen zu können.> Diese Verdrahtung verstehe ich vom Wortlaut garnicht.
Ok, später dazu mehr. Bei ohmscher Last spielt das noch keine Rolle.
>> Eine meiner Hypothesen ist, dass der>> Motor selbst keine hohen Frequenzen mag.>> Und wozu würde das führen? Also rein technisch gesprochen. Induktionen,> die was machen?
Eisenverluste, Wirbelströme usw.. Das würde zumindest die schlechte
mechanische Motorleistung erklären. Da das aber alles nur eine vage
Hypothese ist und erst messtechnisch untermauert werden müsste, möchte
ich das jetzt nicht weiter ausführen. Zumindest habe ich nirgendwo
gelesen, was der Motor in dieser Hinsicht verträgt.
voko schrieb:> D a v i d K. schrieb:>> Jup, aber vielleicht kann der Nachbar ja aushelfen. Also 2 kOhm mit>> 100W?>> Nein, 3 Ohm oder mehr. Das hängt davon ab, welche Last du wirklich> dauerhaft betreiben willst. Die 2 kOhm bezogen sich auf die> Parallelschaltung von sehr vielen schwachen Widerständen. Kennst du das> Ohmsche Gesetz? Kannst du eine Parallelschaltung von Widerständen> berechnen?
Logisch also für 50W = 200*0,25W a 2kOhm --> 10 Ohm
>> Du musst dir auch klar darüber sein, welchen Strom der Treiber> eigentlich dauerhaft liefern SOLL.
Die max. Solldrehzal liegt bei diesem Motor bei ca 12,5V (das ist das
Ziel)
Das Netzteil liefert 24V;19V;16V;...
Wollte evtl. später auf eine niedrigere Eingangspannung gehen, um bei
gleichem Output eine schönere PWM Verteilung zu haben.
(Das einzige was mich gedanklich davon abhält ist W=U*I. Würde ich damit
den Chip nicht mehr belasten? Aber lasst uns erst Mal bei 24V bleiben,
damit testen und damit wir auch alle immer vom Gleichen Szenario
ausgehen)
> Der Treiber> hat immerhin einen thermischen Schutz eingebaut, der Motor nicht.
Kannst du das noch mal (später) mittels simpler Formel erläutern?
>> Willst du z. B. nur 5 A, dann nimm 4,7 Ohm zum Testen (23,5 V / 5 A)> beziehungsweise den nächstverfügbaren Wert.
ok
> Zumindest habe ich nirgendwo> gelesen, was der Motor in dieser Hinsicht verträgt.
Siehe 'bescheidenes' Datenblatt, muss ich mir wohl irgendwie
herleiten/messen.
Grüße Oekel
D a v i d K. schrieb:> voko schrieb:>> D a v i d K. schrieb:> Logisch also für 50W = 200*0,25W a 2kOhm --> 10 Ohm
Ich würde da ein paar mehr nehmen, da das doch einem relativ kleinem
Strom (2,3 A) und kleiner Motorleistung und -drehmoment entspricht, aber
wenn der Motor auch nicht stärker belastet wird ist es ok.
> Die max. Solldrehzal liegt bei diesem Motor bei ca 12,5V (das ist das> Ziel)
Das verstehe ich nicht. Die maximale Drehzahl wird bei gleichem
(Brems-)Drehmoment immer bei maximaler Spannung erreicht. Bei diesem
Motor also bei 36 V ca. 7000 rpm im Leerlauf. Die 16000 rpm im
Datenblatt beziehen sich auf einen anderen Motor. Welche Drehzahl
brauchst du? Bei welchem Drehmoment?
>> Der Treiber>> hat immerhin einen thermischen Schutz eingebaut, der Motor nicht.> Kannst du das noch mal (später) mittels simpler Formel erläutern?
Nein, das ist eine rein qualitative Betrachtung. Was der Motor im
Stillstand an Wärme abführen kann, steht nicht im Datenblatt. Ich hab ja
auch keine Ahnung, was der überhaupt antreibt und ob dieser Fall
überhaupt eintreten kann.
D a v i d K. schrieb:>> Zumindest habe ich nirgendwo>> gelesen, was der Motor in dieser Hinsicht verträgt.>> Siehe 'bescheidenes' Datenblatt, muss ich mir wohl irgendwie> herleiten/messen.
Ja, und zwar relativ einfach. Wir fangen bei kleiner PWM-Frequenz an und
steigern diese schrittweise bis die Leistung des Motors nachlässt. Dann
müssen wir nur noch mit dem Oszi messen, ob es am Motor oder am Treiber
liegt. Da kommt dann auch der oben genannte Shunt ins Spiel, um die
elektrische Leistung bestimmen zu können.
D a v i d K. schrieb:>> Kanal B hängt mit Faktor 1:10 am OutB nehme ich an!? Kanal A hängt wo?> Am OutA
Das verstehe ich nicht. Ich war bisher davon ausgegangen, dass OutA als
High Side konfiguriert ist und OutB als Low Side, wobei letztere durch
PWM geschaltet wird. Dann müssten an OutA 24 V minus ein wenig
Spannungsabfall zu messen sein. Das deckt sich also nicht mit den
Messungen. Da stimmt was nicht. Bitte sicherheitshalber mal INA und INB
sowie PWM aufnehmen und auch DIAG/EN A und B.
Dass PWM die Low Side und nicht die High Side schaltet, habe ich
übrigens nur den Bilder 5 und 6 im Datenblatt entnommen. In Bild 36
(oben) kann ich das nicht wiederfinden. So gesehen bin ich etwas
verwirrt. Das Blockschaltbild (Bild 1) ist auch nicht sehr
aufschlussreich, von Clamp A und B mal abgesehen.
Wenn ich jetzt die Schaltung vor mir hätte, würde ich die Ausgänge mal
einzeln jeweils gegen VCC und GND leicht belasten und oszillografieren
um zu sehen, ob die Abläufe tatsächlich so sind, wie angenommen. Ich
gehe davon aus, dass die durch PWM geschaltete Seite in den Pausen
jeweils hochohmig wird. Im Datenblatt finde ich das aber nicht explizit.
D a v i d K. schrieb:> Soll ich dir mal ein Exemplar zukommen lassen? (Habe mehr als genug> fertig bestückt)
Oje, dreimal dumm geposted und schon häng ich da mit drin ;-). Ich
schick dir später eine PN …
@ D a v i d K. (oekel)
Mach mal ein Bidl von deinem Testaufbau und dem Anschschluß des
Tastkopfes.
>Hier kurz der miniCode, der gerade läuft:
Schon mal ein guter Ansatz, daber dein Allegie gegen delay ist Unsinn.
Gerade zum Testen spielt das GAR KEINE Rolle. Da nutzt man die, um
einfach und schnell ein paar zeitliche Abläufe zu generieren, die ISR
nutzt man nur, wenn es von der Software unbedingt nötig ist. Da hat man
nämlich eine Fehlerquelle weniger.
1
ISR(TIMER0_OVF_vect)
2
{
3
if(count.ms10.menu==0)
4
{
5
PORTD^=(1<<PD6);
6
count.ms10.menu=50;
7
}
8
if(count.sec.menu==0)
9
{
10
driveAbsolute-=5;
11
OCR1B=driveAbsolute;
12
count.sec.menu=5;
13
}
14
}
Hier wird rein gar nichts runtergezählt, OCR1B wird nie verändert! Wie
war das mit den Fehlerquellen?
>Dazu im Anhang die Bilder bei "offenem" Ausgang und mit einem 1mOhm>Wiederstand.
Kaum. Das wäre ein MILLIOHM, das ist ein satter Kurzschluß.
>Was mich jetzt bei der Messungen mit dem 1MOhm Widerstand extrem
Das ist ein Unterschied! M und m!
>irritiert, ist dass die On-Zeit invertiert zu sein schein, oder täusche>ich mich da? Habe an die Fotos immer den Wert von OCR1B angegeben, der>zu dem Zeitpunkt gerade anlag.
Also an in Anbetracht deiner "Grundkenntnisse" ist es wohl besser, wenn
du eine Platine + Motor mir zuschickst. Dann kann ich deutlich schneller
und besser messen als per Forum. Wenn du Interesse hast, schick mir ne
PM.
Falk B. schrieb:> Also an in Anbetracht deiner "Grundkenntnisse" ist es wohl besser, wenn> du eine Platine + Motor mir zuschickst. Dann kann ich deutlich schneller> und besser messen als per Forum.
Das hatte ich ihm schon vor einer Woche angeboten, es kam aber überhaupt
keine Reaktion. Nicht einmal den angefragten Schaltplan hat er
herausgerückt.
Daß da 1 mOhm oder 1 MOhm verwendet werden, paßt voll ins Gesamtbild.
m.n. schrieb:> Das hatte ich ihm schon vor einer Woche angeboten, es kam aber überhaupt> keine Reaktion.
Ich bin leider noch nicht in der Position, dass ich mir im Arbeitsleben
die Freizeit nehmen kann, die ich gerne (für derartige Projekte) hätte.
Schön, dass du also von dir ausgegangen bist ;)
> Nicht einmal den angefragten Schaltplan hat er> herausgerückt.
So nicht korrekt, ich hatte ihn hier im Forum schnellstmöglich
bereitgestellt, da sich doch mehr als eine Handvoll hilfsbereiter
Menschen zu Wort gemeldet haben. (In der Form, dass man es doch sicher
hier am Schnellsten lösen könne)
> Daß da 1 mOhm oder 1 MOhm verwendet werden, paßt voll ins Gesamtbild.
Da hab ich hier auch schon schlimmere Tippfehler gesehen, aber ich denke
nicht das wir das nun hier breittreten müssen. Wenn doch Bedarf an
'dispute4fun' besteht, hast du ja meine Mail auf die ich dir bereits
geantwortet habe ;) Kann aber etwas dauern, denn ich bin wirklich im
Stress!
hochachtungsvoll Oekel
D a v i d K. schrieb:> Ich bin leider noch nicht in der Position, dass ich mir im Arbeitsleben> die Freizeit nehmen kann, die ich gerne (für derartige Projekte) hätte.> Schön, dass du also von dir ausgegangen bist ;)
Du bist ja drollig, um es mal positiv zu formulieren. Da fragst Du im
Forum 'Markt' nach Hilfe und bist völlig unfähig, auf Angebote zu
reagieren.
Kein Wunder, daß Du schon über längere Zeit nicht zu Potte kommst.
Ich hab mal ein wenig getestet. Mit 3900 Hz pfeift das Ding wie Sau,
auch mit 488 Hz ist es noch nicht wirklich gut. Ich hab mal die Software
auf Phase Correct PWM mit 8 Bit und Presclaer 256 geändert, da kommt man
bei 60 Hz raus, außerdem erreicht man dauerhaftes LOW und HIGH ohne
Handstände. Damit läuft der Motor ruhig und der Treiber bleibt auch bei
kleinen Tastverhältnissen eiskalt. Ich habe das Problem lokalisiert. Es
sind die Entstörkondensatoren im Motor! Der hat nämlich je einen
Kondensator von einigen Dutzend Nanofard zwischen jedem Anschluß und
Gehäuse. Damit werden die Störungen des Kollektors im Motor (der
Polwender) gedämpft. Dumm ist nur, daß die bei PWM immer hart umgeladen
werden. Macht man das mit zu hoher Frequenz, fließt ein sehr großer
Strom, der Treiber wird heiß und schaltet irgendwann mal ab. Das kann
ich hier sehr leicht mit PWM = 10 und 3900 Hz PWM-Frequenz nachstellen,
der Treiber wird in Sekunden sehr heiß, man kann ihn gerade noch
anfassen (bei 12V Versorgung).
Lange Rede, kurzer Sinn. Mit 60 Hz ist der Motor bestens angesteuert, er
pfeift nicht und dein Treiber wird nicht heiß, auch nicht bei kleinen
PWM-Werten. Unterhalb von 10% dreht sich bei dem Motor mit der Last aber
kaum was (bei 12V).
*Wenn man einen Motor mit PWM und hohen Frequenzen ansteuern will, darf
der KEINE Entstörkondensatoren eingebaut haben!*
Ein kleines Problem hab ich auch noch gefunden. Auf grund der
Ansteuerlogik im Treiber muss man zum Bremsen beide Eingänge auf 0
setzen aber PWM auf 100% (hier 255)!!! Denn nur so bremst man mit
maximaler Kraft (Motor kurzgeschlossen). Bei INA=0 und INB=0 und PWM=0
geht der Treiber in den Freilauf, sprich, die Augänge sind hochohmig
(tristate) und der Motor bremst nur durch die mechanische Reibung im
Lager. Das muss man in der Software berücksichtigen.
In ioinit() war auch noch ein kleiner Bug, dort hast du anstatt |= ein
paar mal = geschrieben, und damit die Einstellung von einigen Zeilen
vorher wieder überschrieben. Nur durch Zufall hat es funktioniert, weil
vorher dort sowieso nur Nullen reingeschrieben worden sind.
Im Moment kann ich nur mit 12V testen aber mit 24V wird es ähnlich sein.
Das kann ich aber erst nächste Woche machen.
Noch ein paar Anmerkungen.
- IC1/Pin10 (ENAB) ist an ADC7 angeschlossen. Das ist ein REINES
ADC-Eingangspin, das kann man nur über den ADC auslesen. Besser ist es,
das an PC3 anzuschließen, das ist noch frei und einfach als Digitalpin
lesbar.
- D1 und F1 scheinen mir für 8A Nennstrom "etwa" unterdimensioniert.
Wenn da WIRKLICH mal jemand was verpolt, brennt das weg. Außerdem hält
die Sicherung nie und nimmer 8A Dauerstrom aus.
- Bist du sicher, dass J2 sinnvoll angeschlossen ist? Wenn dort ein
Verbraucher ohne weitere Masseverbindung angeschlossen wird, schaltet
der niemals.
- Wenn gleich R1 den Strom durch die Klemmdioden auf ~2mA begrenzt, ist
es sinnvoll, noch einen Widerstand gegen GND dort anzuschalten, damit es
ein richtiger Spannungsteiler wird.
OK, heute hab ich das mal mit 24V getestet. Wie der OP schon bemerkte,
wird der IC bei PWM=10 und 3900Hz innerhalb von 2-3s sehr heiß. Bei 60
Hz ist das kein Problem, der IC wird nur lauwarm.
Servus,
also du hast jetzt den PWM pin auf high gesetzt und steuerst mit phase
correct an?!
Ansteuerung mit 60Hz scheint mir etwas wenig zu sein. Mithilfe eines
shunts würde ich den Rippel angucken.
Ein snubber könnte auch hier helfen.
mfg
@aSma>> (Gast)
>also du hast jetzt den PWM pin auf high gesetzt
Nö. Normale PWM
> und steuerst mit phase correct an?!
Ja.
>Ansteuerung mit 60Hz scheint mir etwas wenig zu sein.
Es reicht.
>Mithilfe eines shunts würde ich den Rippel angucken.
Der ist hoch, das ist klar, aber mit den fest eingebauten
Entstörkondensatoren geht es nicht anders.
>Ein snubber könnte auch hier helfen.
Nö.
Falk B. schrieb:> Nö. Normale PWM
Naja, laut Datenblatt schaltet man mit den PWM Pin die Low-Side Fets
frei.
Ich würde mal den PWM Pin auf high setzten und die beiden Eingänge
complementär oder mit phase correct ansteuern.
mfg
@aSma>> (Gast)
>> Nö. Normale PWM>Naja, laut Datenblatt schaltet man mit den PWM Pin die Low-Side Fets>frei.
Richtig.
>Ich würde mal den PWM Pin auf high setzten und die beiden Eingänge>complementär oder mit phase correct ansteuern.
Und ich würde, wenn ich du wäre, mal das Datenblatt lesen. Dann würde
ich (du) feststellen, daß die Steuereingänge INA und INB VERDAMMT
langsam reagieren und nur der PWM-Eingang ein schnelles Signal verträgt.
Warum auch immer die Entwickler das gemacht haben, es ist so.
Wahrscheinlich wollten sie die Bootstrapkondensatoren einsparen, wie sie
ein L620x hat. Ob DAS so sinnvoll war, zumal der IC 4 NC Pins hat?
aSma>> schrieb:> Ich würde mal den PWM Pin auf high setzten und die beiden Eingänge> complementär oder mit phase correct ansteuern.
Siehe Datenblatt, das ist so nicht vorgesehen und irgendwo hatte Jemand
auch eine Erklärung Parat, weswegen man dies NICHT anders tun sollte.
Ich bin jedenfalls heilfroh, dass die Hardware im groben und ganzen wie
bestückt funktioniert.
Werde die Verbesserungsvorschläge durchgehen und in kürze einbinden.
Vielen Dank Falk!!
Falk B. schrieb:> Und ich würde, wenn ich du wäre, mal das Datenblatt lesen. Dann würde> ich (du) feststellen, daß die Steuereingänge INA und INB VERDAMMT> langsam reagieren und nur der PWM-Eingang ein schnelles Signal verträgt.
Tatsache. Aber immer noch schneller als 60Hz :=).
"In normal operating conditions the DIAGX/ENX pin is considered as an
input pin by the device. This pin must be externally pulled high.
PWM pin usage: In all cases, a “0” on the PWM pin will turn off both
LSAand LSBswitches. When PWM rises back to “1”, LSAor LSB turn on again
depending on the input pin state."
Wenn man sich die "Waveforms in full bridge operation" (Figure 36.) ff.
anguckt, dann ändert sich OUTA/B nur wenn ENA/B in Verbindung mit InA/B
geändert wird.
Bei Änderung von PWM Pin bleibt OUTA/B gleich? Ist irgendwie dubios.
Falk B. schrieb:> Handstände. Damit läuft der Motor ruhig und der Treiber bleibt auch bei> kleinen Tastverhältnissen eiskalt. Ich habe das Problem lokalisiert. Es> sind die Entstörkondensatoren im Motor! Der hat nämlich je einen> Kondensator von einigen Dutzend Nanofard zwischen jedem Anschluß und> Gehäuse. Damit werden die Störungen des Kollektors im Motor (der> Polwender) gedämpft. Dumm ist nur, daß die bei PWM immer hart umgeladen> werden. Macht man das mit zu hoher Frequenz, fließt ein sehr großer
…
> *Wenn man einen Motor mit PWM und hohen Frequenzen ansteuern will, darf> der KEINE Entstörkondensatoren eingebaut haben!*
Herzlichen Glückwunsch zur erfolgreichen Fehlersuche. Zur Theorie möchte
ich noch etwas hinzufügen:
Ja, es liegt wie oben ja auch von mir schon vermutet an der zu hohen
Frequenz, aber nicht an den Entstörkondensatoren.
Die PWM kehrt ja die Spannung nicht um, sondern schaltet nur den
Low-Side-FET ab. Es entsteht also kein wechselstrommäßiger Kurzschluss,
wie von dir nahegelegt. Außerdem könnte man den Strom vernachlässigen.
Ich habe anhand deiner Angaben ca. 5 mA bei 3900 Hz berechnet. Auch wäre
dieser Effekt ja unabhängig vom Tastverhältnis.
Das Problem ist, dass der Motor (auch ohne Entstörkondensatoren) nicht
für diese Frequenzen ausgelegt ist. Man muss sich einmal fragen, warum
dieser Motor laut Datenblatt wesentlich langsamer dreht als die anderen
Motoren aus dieser Serie. Wenn er 4000 Hz gut verarbeiten würde, könnte
er ja auch so schnell drehen, wie die anderen.
Die maximale Drehzahl von 7000 rpm entspricht knapp 120 Hz. Das liegt in
der Größenordnung der von dir ermittelten 60 Hz PWM. Ich würde daher
vermuten, dass es mit 120 Hz PWM auch noch geht.
Da er aber bei 4000 Hz einen stark verminderten Wirkungsgrad hat, bleibt
er unter Last stehen. Bei einem stehenden Motor steigt immer der Strom
an und daher wird der Treiber heiß. Die zugeführte Leistung wird in der
Ankerwicklung und -eisen in Wärme umgesetzt.
Das würde auch erklären, warum der Effekt bei einem größeren
Tastverhältnis wie vom OP angegeben nicht eintritt. Dann dreht der Motor
nämlich noch.
Das wichtigste ist aber, dass dem OP geholfen werden konnte.
@ Volkmar P. (voko)
>Ja, es liegt wie oben ja auch von mir schon vermutet an der zu hohen>Frequenz, aber nicht an den Entstörkondensatoren.
Das glaube ich nicht so ohne weiteres.
>Die PWM kehrt ja die Spannung nicht um, sondern schaltet nur den>Low-Side-FET ab.
Ja.
>Es entsteht also kein wechselstrommäßiger Kurzschluss,>wie von dir nahegelegt.
Jain.
> Außerdem könnte man den Strom vernachlässigen.>Ich habe anhand deiner Angaben ca. 5 mA bei 3900 Hz berechnet. Auch wäre>dieser Effekt ja unabhängig vom Tastverhältnis.
Stimmt. Aber so einfach ist es nicht. Denn der IC hat eine lineare
Strombegrenzung. Nun kann es sein, daß die beim Schalten auf den
Kurzschluß (die Kondensatoren) anspricht und damit die Endstufe in den
Linearbetrieb geht. Außerdem hat der Treiber ein Problem mit derartig
kurzen Pulsen. Bei 1 MHz PWM-Takt und PWM = 10 sind das gerade mal 10us
Pulsbreite. Das schafft der Treiber gerade so.
>Das Problem ist, dass der Motor (auch ohne Entstörkondensatoren) nicht>für diese Frequenzen ausgelegt ist.
Mag sein, aber deswegen wird der Treiber nicht in SEKUNDEN schweineheiß,
schaon gar nicht bei so kurzen Pulsen.
>Die maximale Drehzahl von 7000 rpm entspricht knapp 120 Hz. Das liegt in>der Größenordnung der von dir ermittelten 60 Hz PWM. Ich würde daher>vermuten, dass es mit 120 Hz PWM auch noch geht.
Das tut es ja, wie ich bereits schrieb.
>Da er aber bei 4000 Hz einen stark verminderten Wirkungsgrad hat, bleibt>er unter Last stehen. Bei einem stehenden Motor steigt immer der Strom>an und daher wird der Treiber heiß. Die zugeführte Leistung wird in der>Ankerwicklung und -eisen in Wärme umgesetzt.
So einfach ist es nicht. Die Pulsbreite ist nur 10us. In der Zeit kann
der Strom einers normalen Motors ohne Entstörkondensatoren gar nicht so
schnell ansteigen, auch nicht bei stehendem/blockiertem Motor.
Da ich das Ding ja noch rumliegen habe, werde ich mal ein wenig mit dem
Oszi messen, wenn gleich die praktikable Lösung schon gefunden ist.
@ Falk B.
> @ Volkmar P. (voko)>>>Ja, es liegt wie oben ja auch von mir schon vermutet an der zu hohen>>Frequenz, aber nicht an den Entstörkondensatoren.>> Das glaube ich nicht so ohne weiteres.
Gut, es mag durchaus sein, dass die Entstörkondensatoren in dem Konzert
irgendwo mitspielen. Sie ALLEIN können es aufgrund der
Leistungsbetrachtung nicht sein. So meinte ich das.
>> Außerdem könnte man den Strom vernachlässigen.>>Ich habe anhand deiner Angaben ca. 5 mA bei 3900 Hz berechnet. Auch wäre>>dieser Effekt ja unabhängig vom Tastverhältnis.>> Stimmt. Aber so einfach ist es nicht. Denn der IC hat eine lineare> Strombegrenzung. Nun kann es sein, daß die beim Schalten auf den> Kurzschluß (die Kondensatoren) anspricht und damit die Endstufe in den> Linearbetrieb geht. Außerdem hat der Treiber ein Problem mit derartig> kurzen Pulsen. Bei 1 MHz PWM-Takt und PWM = 10 sind das gerade mal 10us> Pulsbreite. Das schafft der Treiber gerade so.
Auch ohne Linearbetrieb fließt der Ladestrom im ungünstigsten Moment,
wenn der FET noch relativ hochohmig ist. Daher sind wir uns durchaus
einig, dass die Kondensatoren die Situation für den Treiber nicht gerade
verbessern.
> So einfach ist es nicht. Die Pulsbreite ist nur 10us. In der Zeit kann> der Strom einers normalen Motors ohne Entstörkondensatoren gar nicht so> schnell ansteigen, auch nicht bei stehendem/blockiertem Motor.>> Da ich das Ding ja noch rumliegen habe, werde ich mal ein wenig mit dem> Oszi messen, wenn gleich die praktikable Lösung schon gefunden ist.
Wenn du die einfach bestimmen kannst, würde mich dabei einmal die
ungefähre Induktivität einer Ankerspule interessieren.
@ Falk B.
Falk B. schrieb:> Kondensator von einigen Dutzend Nanofard zwischen jedem Anschluß und> Gehäuse. Damit werden die Störungen des Kollektors im Motor (der
Ersetze "einige" durch 50 und es passt langsam alles zusammen. Ich habe
nämlich gerade 300 pF grob gemessen, d. h. 2x 600 pF in Serienschaltung.
Bei der Größe werden dann auch die Ströme so groß, dass sie den Treiber
aufheizen können. Eventuell kommt ja auch noch eine höherfrequente
Schwingung dazu.
Dennoch müssen sich die Kondensatoren über die Motorwicklung entladen
und da kommt dann meine Theorie ins Spiel. Bei laufendem Motor bleiben
die Kondensatoren teilweise geladen und dadurch wird der Effekt
wesentlich kleiner.
Der stehende Motor schwingt übrigens mit ca. 5 kHz. Somit ist die
Induktivität ca. 3,4 mH.
@ Volkmar P. (voko)
>Ersetze "einige" durch 50 und es passt langsam alles zusammen. Ich habe>nämlich gerade 300 pF grob gemessen, d. h. 2x 600 pF in Serienschaltung.
pF? Oder meinst du eher nF?
>Dennoch müssen sich die Kondensatoren über die Motorwicklung entladen>und da kommt dann meine Theorie ins Spiel. Bei laufendem Motor bleiben>die Kondensatoren teilweise geladen und dadurch wird der Effekt>wesentlich kleiner.
Ja.
>Der stehende Motor schwingt übrigens mit ca. 5 kHz. Somit ist die>Induktivität ca. 3,4 mH.
Kann sein.
Auch, wenn der Beitrag schon Jahre zurück liegt, ein Hinweis auf eine
mögliche Fehlinterpretation. In diesem Beitrag
<https://www.mikrocontroller.net/articles/Motoransteuerung_mit_PWM>
wird mit Link nach hier geäußert, dass die Entstörkondensatoren im Motor
die Ursache zu großer Erwärmung der H-Brücke sind. Meine Rechnung dazu
zur Diskussion:
Annahmen: 12V 4kHz-PWM 50nF (100mOhm Verlustwiderstände)
=> Ladezeit ~5*R*C=5*50nF*0.1Ohm=25ns => vollständige Ladung/Entladung
=> gespeicherte Energie eines C: (C/2*U²)=25nAs/V*144V²=3.6µWs
=> 8000 Auf-/Entladungen je Sekunde => max. 28.8mWs/s
=> wird in 3..4s heiß ??????????????
IMHO schrieb:> => wird in 3..4s heiß ??????????????
Also meiner wurde immer warm,, aber nie heiß im Sinne dass ich mich dran
verbrennen konnte. Vielmehr hatte der angeschlossene Motor kaum
Drehmoment, was für die angegebenen 30A (Verbrauch ca 3A) war das
letztendlich unbrauchbar.