Forum: Analoge Elektronik und Schaltungstechnik Eigenen Motorcontroller für brushed Motor?


von Thomas B. (thomas_b618)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe für meine Nerf Minigun 
(https://www.youtube.com/watch?v=VMngCFPhtd4 ) eine eigene (& meine 
erste) Platine entwickelt. Eigentlich sollte sie nur ein paar 
Kleinigkeit machen, aber der feature-creep war unaufhaltsam....

Aktuell habe ich einen IRL3803SPbF N-LL-Mosfet, der den ESC (Motor 
controller für den brushless motor) mit Strom versorgt (ich will den ESC 
bei Bedarf an oder ausschalten können). Der Rest meiner Platine sollte 
irrelevant für dieses Thema sein.

Ich überlege jetzt ein HW-Kit meiner Nerf Minigun mit brushed Motor zu 
machen (da viel günstiger). Und das am besten ohne separaten ESC, 
sondern die Platine versorgt direkt den Motor, in PWM Taktung (nen 
Arduino ist schon auf der Platine, der sollte für die Regellogik 
ausreichen).

Nun die zentrale Frage: wieviel müsste ich auf meiner Platine noch 
ändern, um das umzusetzen? Ist das viel?

Ich würde denken, dass ich wohl noch folgendes bräuchte:
* nen anderen Mosfet brauche, der den brushed Motor besser mit PWM 
takten kann?
* evtl. noch nen treiber oder so, der vom Arduino angesteuert wird und 
den Mosfet schnell "flutet" oder wie das heisst
* und dann noch ein paar Kondensatorchen ;)

Bin ich da zu naiv?

Leider bin ich noch dabei, einen brushed Motor auszuwählen, daher lässt 
sich jetzt wohl noch nicht final Mosfets, Kondensatoren etc. bestimmen, 
richtig?

Vielen Dank!

: Verschoben durch Moderator
von F. (radarange)


Lesenswert?

Du wirst um ein komplettes Redesign nicht herumkommen. Die 
Motorsteuerung ist jetzt nicht so wahnsinnig einfach, der Atmega328 
sollte entsprechende Peripherie dafür haben, die kostet aber Timer, 
gegebenenfalls gibt das dann Probleme mit dem restlichen Arduino-Code.
Kannst du nicht deinen zugekauften Brushless-ESC durch einen anderen ESC 
ersetzen, der deine zukünftigen Motoren direkt ansteuern kann?
Die Frage, die du verfolgst, ist aber ein wenig schräg. Sofern es sich 
nicht um eine Massenproduktion handelt, sind die Kostenunterschiede 
zwischen tatsächlich ähnlich leistungsfähigen Motoren nicht so relevant. 
So wahnsinnig komplex und langlebig wird deine Anwendung schon nicht 
sein, dass hierfür besonders leistungsstarke und tolle Motoren zum 
Einsatz kommen müssen.

von Crazy Harry (crazy_h)


Lesenswert?

Sorry OT: Was fliegt denn da vorne raus? Dartpfeile?

von Thomas B. (thomas_b618)


Lesenswert?

genau, da kommen darts raus.

Hmm, ich hoffe das habe ich nur schlecht erklärt, ich versuche es 
nochmal ohne das drum rum:

ich habe eine Custom-Platine mit nem Arduino Nano Every drauf und ich 
möchte mit dieser Platine nen brushed Motor steuern.

Aktuell tut der Arduino bereits den ESC über nen 1khz Signal ansteuern, 
ich denke es ist kein Problem, den output auf ein X khz PWM Signal zu 
ändern.

Ich versuche einen extra brushed-ESC zu vermeiden, um Kosten zu sparen 
(ich will hunderte der HW-Kits verkaufen).

Ich war davon ausgegangen, wenn ich mir n paar Mosfets, Transistoren, 
Kondensatoren auf die Platine mache, ich mir den externen ESC sparen 
kann und somit deutlich Geld & Aufwand spare (weniger löten etc. pro 
HW-kit).

Die Frage ist, ob ich mir das zu einfach vorstelle (und ob da überhaupt 
so ein großes Einsparpotential ist..).

Ist meine Frage weiterhin schräg? :-)

: Bearbeitet durch User
von Axel R. (axlr)


Lesenswert?

Man kann aber nichts verkaufen, wenn man keine Ahnung hat. Schon 
garnicht "hunderte Kits".

von F. (radarange)


Lesenswert?

Thomas B. schrieb:
> ich habe eine Custom-Platine mit nem Arduino Nano Every drauf und ich
> möchte mit dieser Platine nen brushed Motor steuern.

So weit, so gut. Was heißt "steuern" in diesem Fall? Geschwindigkeit, 
Richtung, mit Rückmeldung? Wie sieht das Bremsverhalten aus? Soll der 
Motor  aktiv stoppen oder auslaufen?

> Aktuell tut der Arduino bereits den ESC über nen 1khz Signal ansteuern,
> ich denke es ist kein Problem, den output auf ein X khz PWM Signal zu
> ändern.

Das sollte funktionieren, damit kannst du jetzt aber den Motor 
ungeregelt in eine Richtung drehen lassen und er wird nach dem 
Hochdrehen langsam auslaufen. Für mehr brauchst du mehr Ausgänge und 
mehr Software.

> Ich versuche einen extra brushed-ESC zu vermeiden, um Kosten zu sparen
> (ich will hunderte der HW-Kits verkaufen).

Au weia. Wir sehen jetzt mal ganz gezielt von regulatorischen 
Anforderungen ab, über die du dich selber informieren darfst. Bei dieser 
Stückzahl würde ich nicht bei so einem komplexen Teil wie der 
Motorsteuerung sparen, sondern vielleicht deinen Microcontroller durch 
etwas ersetzen, das der Aufgabe angemessen ist. Dadurch lassen sich bei 
deinem projektierten Volumen tausende Euro an Kosten sparen.

> Ich war davon ausgegangen, wenn ich mir n paar Mosfets, Transistoren,
> Kondensatoren auf die Platine mache, ich mir den externen ESC sparen
> kann und somit deutlich Geld & Aufwand spare (weniger löten etc. pro
> HW-kit).

Du verkennst die Realität der Fertigung. Es gibt Motorsteuerungs-ICs, 
dann pack da einen auf deine Platine. Sowas selber irgendwie 
hinzubasteln aus diskreten Komponenten mit einer recht einfachen 
Vorstellung davon, was das bei der Microcontroller-Programmierung nach 
sich zieht, halte ich für wenig zielführend.

> Die Frage ist, ob ich mir das zu einfach vorstelle (und ob da überhaupt
> so ein großes Einsparpotential ist..).

Da du nicht damit rausrücken magst, was deine Kostenverteilung ist, 
welche Komponenten du einsetzt und ja nicht einmal weißt, wieviel 
weniger ein geeigneter bürstenbehafteter Motor kostet, ist es sehr 
schwierig, das zu bewerten.
Du kennst dich aus, also musst du auch wissen, ob es einfach ist. Wenn 
du das nicht weißt, hast du nicht genug recherchiert. Ich rate mal, dass 
du einen zu starken Motor benutzt, weil der bei den niedrigen 
Drehzahlen, die du brauchst, ein ausreichendes Drehmoment hat. Richtige 
Konstruktionen verwenden kostengünstige Motoren und ein entsprechendes 
Getriebe, ich glaube nicht, dass du für deinen Motor plus ESC mehr als 
10 Euro ausgeben musst. Wahrscheinlich kriegt man das auch weiter 
gedrückt. Selbstverständlich kann man da durch einen kleinen 
bürstenbehafteten Motor noch mehr sparen, der muss ja nicht elektronisch 
kommutiert werden, nur hast du dann eben ein komplettes Redesign deiner 
Schaltung und nicht einfach nur irgendwelche Transistoren und 
Kondensatoren auf die Platine klatschen. Der ESC kümmert sich um sehr 
vieles, das musst du dann eben übernehmen.

> Ist meine Frage weiterhin schräg? :-)

Ein wenig, ja.

von Michael B. (laberkopp)


Lesenswert?

Thomas B. schrieb:
> Nun die zentrale Frage: wieviel müsste ich auf meiner Platine noch
> ändern, um das umzusetzen?

Nichts.

Der Motor kommt zwischen V_LIPO und ESC_NEGATIVE und du brauchst 
ESC2_Pin3_SIGNAL und ESC2_Pin4_AUX nicht mehr, die sowieso ein grober 
Fehler waren, Steuereingänge an ein Modul dessen Masseverbindung 
unterbrochen waren können bis zur Zerstörung des uC führen.

An den Motor kommt noch eine Freilaufdiode.


ABER: Dann tut deine Schaltung auch nicht viel. Sie kompensiert nicht 
die sinkende Akkuspannung und damit sinkende Drehzahl des Motors, sie 
überprüft nicht die Stromaufnahme und damit eventuelles blockieren, und 
sie kann ihn natürlich nicht rückwärts drehen lassen.

Da du das kommerziell vertreibst und der Motor wohl den Dart 
beschleunigt, musst du technisch sicherstellen, dass die maximale 
Geschossenergie, was bei gegebenem Pfeilgewicht das Tempo bedeutet also 
die Motordrehzahl, auch im Fehlerfall nicht überschritten werden kann. 
Das könnte man natürlich einhalten wenn der Motor auch bei vollem Akku 
nicht schneller drehen kann, würde bei nachlassendem Alku aber absinken 
was man wohl nicht will

: Bearbeitet durch User
von Martin D. (martin_d69) Benutzerseite


Lesenswert?

Hallo Thomas,

nette Idee aber vergiss es. Du wirst keine risikobeurteilung schreiben 
können, die das sicher erklärt! Du gillst nach Veröffentlichung des 
Produktes (Vorschau aus neuer MVO) als Markteinführer. Da empfehle ich 
definitiv Fortbildung um die gesetzliche Lage kennenzulernen.

Die ATSAM Hardware hat mehrere Hardware pwm Channel, auch PIC18F5xxx 
glaube ich hat Hardware PSMC oder auch BLDC womit sowas ohne CPU Last 
laufen würde.

Arduino kannst zwar als bootloader nutzen, ist allerdings zu Mainstream 
um solche Hardware frei zu konfigurieren.

Kleiner Tipp: baue es für dich selbst, wie es deine Fähigkeiten 
zulassen, die Vermarktung lass sein!

Gruß Martin

von Thomas B. (thomas_b618)


Lesenswert?

F. schrieb:
> Thomas B. schrieb:
>> ich habe eine Custom-Platine mit nem Arduino Nano Every drauf und ich
>> möchte mit dieser Platine nen brushed Motor steuern.
>
> So weit, so gut. Was heißt "steuern" in diesem Fall? Geschwindigkeit,
> Richtung, mit Rückmeldung? Wie sieht das Bremsverhalten aus? Soll der
> Motor  aktiv stoppen oder auslaufen?
Der Motor läuft nur in eine Richtung, ein bremsen ist nicht nötig (also 
keine H-Schaltung nötig).

>
>> Aktuell tut der Arduino bereits den ESC über nen 1khz Signal ansteuern,
>> ich denke es ist kein Problem, den output auf ein X khz PWM Signal zu
>> ändern.
>
> Das sollte funktionieren, damit kannst du jetzt aber den Motor
> ungeregelt in eine Richtung drehen lassen und er wird nach dem
> Hochdrehen langsam auslaufen. Für mehr brauchst du mehr Ausgänge und
> mehr Software.
Ja, das Thema mit der konstanten Drehgeschwindigkeit, das Erkennen eines 
blockierten Motors etc. ist hier nicht abgedeckt und hatte ich zuletzt 
vernachlässigt. Ich habe noch die Möglichkeit, einen Hall-Sensor 
anzuschliessen, darüber könnte ich ja die Regelung und die Erkennung, ob 
der Motor andreht/dreht, machen - ich habe für die aktuelle 
ESC+BLDC-Variante bereits eine Drehzahlregelung die ausreichend gut 
funktioniert (in der ESC+BLDC-Variante ist zwar noch der ESC mit seinem 
eigenen Regler dazwischen..., aber nen brushed motor ohne extra ESC 
selber zu regeln ist doch kein Hexenwerk? :-))

>
>> Ich versuche einen extra brushed-ESC zu vermeiden, um Kosten zu sparen
>> (ich will hunderte der HW-Kits verkaufen).
>
> Au weia. Wir sehen jetzt mal ganz gezielt von regulatorischen
> Anforderungen ab, über die du dich selber informieren darfst. Bei dieser
> Stückzahl würde ich nicht bei so einem komplexen Teil wie der
> Motorsteuerung sparen, sondern vielleicht deinen Microcontroller durch
> etwas ersetzen, das der Aufgabe angemessen ist. Dadurch lassen sich bei
> deinem projektierten Volumen tausende Euro an Kosten sparen.
>
Hmm, ja, der Arduino ist sicher eher für allgemeines, einfaches 
rumbasteln gemacht und mit 15€ nicht besonders günstig. Aber wenn ich 
den Microcontroller wechsel, muss ich alle Features neu implementieren 
oder integrieren (e.g. LCD) und die PCB auf den neuen MC anpassen (also 
zeug wie quartz raus suchen und drauf packen).
>> Ich war davon ausgegangen, wenn ich mir n paar Mosfets, Transistoren,
>> Kondensatoren auf die Platine mache, ich mir den externen ESC sparen
>> kann und somit deutlich Geld & Aufwand spare (weniger löten etc. pro
>> HW-kit).
>
> Du verkennst die Realität der Fertigung. Es gibt Motorsteuerungs-ICs,
> dann pack da einen auf deine Platine. Sowas selber irgendwie
> hinzubasteln aus diskreten Komponenten mit einer recht einfachen
> Vorstellung davon, was das bei der Microcontroller-Programmierung nach
> sich zieht, halte ich für wenig zielführend.
Gibt es denn eine Seite/Tutorial, was aufzeigt, was dort zu machen ist? 
Ich sehe (abgesehen von Drehzahlregelung, Blockieren des Motors und 
evtl. allgemeines überhitzen) keine Todos auf Programmierungsseite - ich 
dachte eher, dass die Elektronik das nervige ist.
>
>> Die Frage ist, ob ich mir das zu einfach vorstelle (und ob da überhaupt
>> so ein großes Einsparpotential ist..).
>
> Da du nicht damit rausrücken magst, was deine Kostenverteilung ist,
> welche Komponenten du einsetzt und ja nicht einmal weißt, wieviel
> weniger ein geeigneter bürstenbehafteter Motor kostet, ist es sehr
> schwierig, das zu bewerten.
> Du kennst dich aus, also musst du auch wissen, ob es einfach ist. Wenn
> du das nicht weißt, hast du nicht genug recherchiert. Ich rate mal, dass
> du einen zu starken Motor benutzt, weil der bei den niedrigen
> Drehzahlen, die du brauchst, ein ausreichendes Drehmoment hat. Richtige
> Konstruktionen verwenden kostengünstige Motoren und ein entsprechendes
> Getriebe, ich glaube nicht, dass du für deinen Motor plus ESC mehr als
> 10 Euro ausgeben musst. Wahrscheinlich kriegt man das auch weiter
> gedrückt. Selbstverständlich kann man da durch einen kleinen
> bürstenbehafteten Motor noch mehr sparen, der muss ja nicht elektronisch
> kommutiert werden, nur hast du dann eben ein komplettes Redesign deiner
> Schaltung und nicht einfach nur irgendwelche Transistoren und
> Kondensatoren auf die Platine klatschen. Der ESC kümmert sich um sehr
> vieles, das musst du dann eben übernehmen.

Bei den 10€ für Motor+ESC, denkst du da an BLDC oder brushed?
Also der Motor muss bei 3000RPM ca. 70 Watt Leistung bringen. Ich könnte 
dort auch nochmal eine Übersetzung von 1:4 davor schalten. Ich dachte, 
dass bei BLDC es deutlich teurer wird (mind. 50€?), und bei brushed ist 
man vielleicht bei 5€ für den Motor, günstige ESCs (unter 15€) habe ich 
nicht gefunden. Hast du da ein Beispiel für einen günstigen 
Motorcontroller (den ich auf die PCB setzen kann oder der als separate 
PCB kommt)?

>
>> Ist meine Frage weiterhin schräg? :-)
>
> Ein wenig, ja.
schade.
Hmm, vielleicht wäre es auch sinnvoll, dass ich das Thema outsource, an 
jemanden der sich auskennt? Das würde mir viel Zeit sparen - denn die 
Platine+Motor sind aus meiner Sicht nur vielleicht 10% des 
Wertes/Arbeitsleistung des gesamten HW-Kits (zum HW-Kit würden noch 50+ 
anderen Zukaufteile (Kugellager etc) kommen und vor allem noch die 
Druckdateien dazu gehören. Der Blaster als ganzes ist das interessante, 
nicht wie der Motor angesteuert wird).

von Thomas B. (thomas_b618)


Lesenswert?

> die sowieso ein grober
> Fehler waren, Steuereingänge an ein Modul dessen Masseverbindung
> unterbrochen waren können bis zur Zerstörung des uC führen.

Das stimmt. der Fehler ist mir leider zu spät aufgefallen und das ist 
der eigentliche Grund, warum ich die Platine nochmal überarbeite...

> Da du das kommerziell vertreibst und der Motor wohl den Dart
> beschleunigt, musst du technisch sicherstellen, dass die maximale
> Geschossenergie, was bei gegebenem Pfeilgewicht das Tempo bedeutet also
> die Motordrehzahl, auch im Fehlerfall nicht überschritten werden kann.

Der Motor dreht nur die Hauptwelle, die Darts werden anhand eines 
Plunger-Systems beschleunigt, also anhand von Luftdruck der über eine 
Feder erzeugt wird - daher ist die Geschwindigkeit der Darts konstant 
und unabhängig von der Drehzahl des Motors (ich bin sogar unter 0,3J 
also alles easy)

von Thomas B. (thomas_b618)


Lesenswert?

Martin D. schrieb:
> nette Idee aber vergiss es. Du wirst keine risikobeurteilung schreiben
> können, die das sicher erklärt! Du gillst nach Veröffentlichung des
> Produktes (Vorschau aus neuer MVO) als Markteinführer. Da empfehle ich
> definitiv Fortbildung um die gesetzliche Lage kennenzulernen.
>
> Arduino kannst zwar als bootloader nutzen, ist allerdings zu Mainstream
> um solche Hardware frei zu konfigurieren.

Danke Martin,

das CE etc. Thema ist auch noch offen.

Aber was spricht konkret gegen den Arduino?

von F. (radarange)


Lesenswert?

Du musst dich halt entscheiden, was du willst.
Willst du eine kostenoptimierte Massenproduktion, dann musst du den 
Aufwand in die Entwicklung stecken, um die Kosten pro Teil zu reduzieren 
und damit deine Marge zu erhöhen. Wenn du den Aufwand nicht willst, dann 
musst du das, wie du bereits richtig erkannt hast, outsourcen. Da wird 
sich halt aber auch niemand ohne gut ausgearbeitete Spezifikation und 
genauem Wissen, was du willst, herantrauen, das noch für einen 
dreistelligen Betrag zu machen. Nicht, weil die Elektronik sonderlich 
kompliziert wäre, sondern, weil es vieler Absprachen bedarf, die Zeit 
kosten und damit bezahlt werden wollen. Du schreckst halt schon davor 
zurück, dein 15-Euro-Microcontroller-Board durch den Microcontroller 
direkt auf deiner Platine zu ersetzen, da wird der Rest auch nicht 
durchdacht genug sein, dass dein Projekt die Anforderungen erfüllt, um 
in Verkehr gebracht zu werden. Ein paar Aspekte wurden ja bereits 
angesprochen.
Willst du wenig Arbeit und niemanden bezahlen, dann musst du auf 
verfügbare  Module zurückgreifen. Das machst du ja bereits, stellst nun 
aber fest, dass das sehr teuer wird.
Ich kann verstehen, dass du die Elektronik nicht als wichtig ansiehst, 
aber bei großartigen Vorstellungen von hunderten verkauften Einheiten 
musst du damit rechnen, dass Leute mal nachfragen. Ja, was du machen 
willst, ist nicht "schwierig" in dem Sinne, dass es eine besonders 
ausgeklügelte Schaltung bräuchte. Aber es ist schwierig in dem Sinne, 
dass es ein Integrationsproblem ist, da deine Komponenten richtig 
zusammenarbeiten müssen. Spielzeughersteller kriegen das problemlos hin, 
auch kleine Akkuschrauber haben Motoren in den Leistungsklassen, wie du 
dir sie vorstellst. Technisch ist das kein Problem, aber sowas kostet 
Entwicklungsressourcen. Nichts für ungut, aber wenn du schon keine Lust 
hast, dich von deinem Microcontroller-Board zu lösen, weil es zu viel 
Aufwand ist, dann kannst du den Einsatz einer selbstgebastelten 
Motorsteuerung völlig vergessen. Die bekommt durch unzureichendes Layout 
sofort Temperaturprobleme.
Aber probier's gern mal aus, so eine Platine kostet ja kaum was, das 
sollte das Entwicklungsbudget hergeben: Einen ordentlichen FET, ggf. 
noch einen Gate-Treiber (braucht man aber nicht, du willst es ja billig 
haben), Freilaufdiode, Low-ESR-100µF-Kondensator ganz nah an der 
Spannungsversorgung des Microcontrollers. Nach Möglichkeit mit der 
PWM-Frequenz so weit wie möglich runtergehen, die Mechanik ist träge, 
kann das also verkraften. Und dann eben schauen, ob's funktioniert. Dann 
kannst du glücklich sein und nur hoffen, dass keiner der hunderten 
Käufer deines (Waffen?-)Bausatzes oder ein Mitbewerber auf die Idee 
kommt, dich zu verpetzen.

von Martin D. (martin_d69) Benutzerseite


Lesenswert?

Thomas B. schrieb:
> Aber was spricht konkret gegen den Arduino?

Ich habe mal einen arduino mit 3x BLDC und jeweils hall feedback 
realisiert. Leider ist es so, dass dazu teilweise das Pin- und 
Peripherie- Mapping geändert werden musste.
Dies ist je nachdem was man vor hat ein sehr komplexes Vorhaben. 
Natürlich kann Software das auch, ist nur nicht sicher! Denn wenn eine 
Instruktion unterbricht wegen Z.b. interrupt, ist das timing im Eimer! 
Kann unter Umständen zu hohen back-emf Spannungen kommen. CPU sollte 
immer frei laufen können und pwm usw. Auf unabhängigen Hardware Level!

Daher mein Tipp: MPLAB und passende MCU. Brauchst lediglich einen 
programmieradapter im Gegensatz zum arduino. Dafür bekommst du volle 
Kontrolle ohne Einschränkungen.

von Thomas B. (thomas_b618)


Lesenswert?

Hmm, ihr habt Recht, das mit dem brushed Motor ist nicht so mal nebenbei 
getan.

Ich werde daher das Thema erstmal pausieren und es dann später evtl. 
ordentlich angehen - mit nem Profi der mich bei der Komponentenauswahl 
unterstützt usw.

Danke für eure Hilfe

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Martin D. schrieb:
> Da empfehle ich
> definitiv Fortbildung um die gesetzliche Lage kennenzulernen.

Ja das wäre zwingend notwendig.

Das war er bauen will ist eine automatik-Waffe.

von Axel R. (axlr)


Lesenswert?

Mampf F. schrieb:
> Das war er bauen will ist eine automatik-Waffe.

.. die SchaumstoffPfeile "verschiesst". Nu mach mal halblang ;)

von Thomas B. (thomas_b618)


Lesenswert?

Es ist keine Schusswaffe gem. WaffG, da die Geschossenergie unter 0,5 
Joule ist (bei meinem Blaster ist sie sogar unter 0,3 Joule): 
https://www.gesetze-im-internet.de/waffg_2002/anlage_2.html

Also so wie bei allen im Spielwarengeschäft erhältlichen Nerf Blaster, 
mein Blaster schiesst halt nur besonders viele Darts ab...

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.