Moin,
ich habe ein Problem mit den Motoranschlüssen des Calliope 3. Mit Versorgung aus der 3V Batterie oder aus USB laufen die Motoren problemlos. Wenn ich extern 9V an VM+ anschließe, geht (fast) gar nichts mehr. Die Motoren lassen sich mit dem vorherigen Programm nicht mehr einschalten oder steuern. Nur wenn ich bei Versorgung mit 3V und laufenden Motoren die 9V zuschalte, laufen diese mit 9V.
VM+ und GND sind richtig angeschlossen, auch wird der Calliope über die 9V versorgt und arbeitet einwandfrei. Nur die Motoren machen Probleme.
Hi,
danke für die Anfrage und die genaue Problembeschreibung
Vor allem dies hier:
Nur wenn ich bei Versorgung mit 3V und laufenden Motoren die 9V zuschalte, laufen diese mit 9V.
klingt danach, als gäbe es ein Problem mit dem Anlaufstrom des Motors. Der Motortreiber geht bei einem Überstrom (1,6-3,5A) in einen Sicherheitszustand, in welchem er beide Ausgänge abschaltet. Bei einer Spannung von 9V und dem Anlaufen größeren Motoren können solche Strome für sehr kurze Zeit schnell erzeugt werden. Mit der Spannung von 3V konnte er anscheinend langsam anlaufen, sodass der hohe Anlaufstrom nicht auftrat.
Ich habe 2 Vorschläge:
Softwareseitig über ein langsames Anlaufen. Hier ist wahrscheinlich eine Anpassung der PWM Frequenz notwendig. Das folgende Makecode Programm zeigt ein Beispiel: Motor_Anlauf Die PWM Frequenz wird hier von den Standard 50Hz auf 20kHz (entspricht 50mikrosekunden Pulseweite) gesetzt. Die PWM Frequenz kann bei Makecode leider nur global gesetzt werden, falls Servomotoren in dem gleichen Projekt eingesetzt würden, kann es hier zu Problemen kommen.
Hardwareseitig über einen Vorwiderstand, dieser muss eine große Leistung unterstützen, da er die ganze Zeit den Motorstrom führt. Ohne den Motor zu kennen wären 1Ohm und 25W zum Beispiel ein Start Werden zum Ausprobieren.
Danke, das war die Lösung des Problems. Ich hatte mir den Baustein DRV8833 zwar genau angesehen, aber nicht auf die Überstromsteuerung geachtet. Dabei kommen bei den kleinen Lego-Motoren schnell höhere Anlaufströme vor.
Die Softwarelösung habe ich nicht ausprobiert, wie will ich meinem Enkel die zusätzlichen Blöcke in Makecode erklären?
Ich habe einfach mal je einen 4,7 Ohm Widerstand mit jedem Motor in Reihe geschaltet, jetzt läuft das Ganze bei Speisung von 9 V über VM+.
Im Dauerbetrieb stören die Widerstände kaum, da ich ohnehin keine großen Drehzahlen brauche.
Auch die Erwärmung ist sehr gering, ich habe im Dauerbetrieb einen Motorstrom von 125 mA gemessen, das entspricht einer Leistung am Vorwiderstand von 70 mW.
Also nochmal Danke für den Tip mit dem Anlaufstrom!