Forum: Mikrocontroller und Digitale Elektronik Arduino Controller für Bürsten Getriebemotor mit Encoder


von Kostas V. (kostas)


Lesenswert?

Hallo Zusammen,

für ein Roboter Arm Lern-Projekt würde ich gerne 4 12V DC Bürsten 
Getriebemotoren verbauen. Die Bezugsquelle des Motors ist 
https://www.robotshop.com/eu/en/12v-dc-motor-251rpm-encoder.html

Der Motor hat einen Hall Encoder.

Für Arduino finde ich Controller die 4 Motoren gleichzeitig ansteuern 
können allerdings für Schritt-Motoren bei CNC Projekten. Nach was müsste 
ich bitte suchen um einen passenden Controller zu finden für diese 
Motoren? Wird es auch Controller geben die den Encoder unterstützen oder 
müsste ich eher nach separate Bords dafür suchen? Die Leistung des 
Motors ist übrigens 12V 7A.

Auf der gleichen Seite habe ich einen single Motor-Driver gefunden der 
passen könnte. Allerdings hat er keinen Anschluss für den Encoder.
https://www.robotshop.com/eu/en/cytron-10a-dc-motor-driver-arduino-shield.html

Das Gebiet ist noch neu für mich. Wie ist das Konzept generell: Gibt es 
Controller mit integrierte oder aufsteckbare Motor-Driver haben?
Und wie ist es mit den Encoder, müssen diese auf dem Motor-Driver sein 
oder auf dem Controller?

Nach was müsste ich bitte suchen damit ich mich darüber belesen kann?


Gruß Kostas

von Bernd B. (berbog)


Lesenswert?


von Kostas V. (kostas)


Lesenswert?

Hallo Bernd,

vielen lieben Dank für die Links. Die werde ich mir durchlesen und 
sicherlich danach einen besseren Überblick bekommen was Sache ist. Nur 
als Hinweis, ich habe nicht vor die Boards selbst zu bauen da mir die 
entsprechenden Kenntnisse fehlen. Ich muss also auf fertige Module 
zurückgreifen.

Gruß KOstas

von Bernd B. (berbog)


Angehängte Dateien:

Lesenswert?

Hallo Kostas
Die wirst du günstig nicht finden.
Das sind dann Servo Leistungsteile für den Industriebereich wobei nicht 
mit den billigen Hall Encodern gearbeitet wird.
Diese geben dir im Betrieb eine durchgereichte aufgearbeitete Stellung 
des Rotors durch die du weiter verarbeiten musst und werden z.B.durch 
+-0-10V je nach Drehrichtung und Geschwindigkeit gesteuert.


PS Kennst du Linuxcnc?. Das kann wohl auch Roboter und 6 Achsen

: Bearbeitet durch User
von Kostas V. (kostas)


Angehängte Dateien:

Lesenswert?

Hallo Bernd,

oh, das hört sich nicht gut an. Sind Schrittmotoren besser geeignet? 
Zumindest habe ich dafür komplette Bausätze gesehen mit 4 Motoren. Die 
Motoren  passen allerdings von der Bauform nicht so gut für das Projekt.

https://de.banggood.com/TWO-TREES-CNC-Shield-+-UNO-R3-Board-+4x-A4988-Stepper-Motor-Driver-+4x-4401-Stepper-Motor-Kit-for-3D-Printer-p-1510212.html?utm_source=googleshopping&utm_medium=cpc_organic&gmcCountry=DE&utm_content=minha&utm_campaign=aceng-pmax-deg-de-pc&currency=EUR&cur_warehouse=CN&createTmp=1&utm_source=googleshopping&utm_medium=cpc_eu&utm_content=dcr&utm_campaign=aceng-ssc-deg-all-0928&ad_id=&gclid=CjwKCAjw_b6WBhAQEiwAp4HyIJhKzv8b8eh68PWkcyjAvLPvZqR0iTSugtNbaEAA1ZANZwMNodBujRoCFfoQAvD_BwE

[Edit]
Im Bild ist ein Roboterarm als open source Projekt mit 7 Achsen zu 
sehen. Auf dieser Basis möchte ich eine Version mit 4 Achsen 
konstruieren Die 4-Kantigen Schrittmotoren würden hierzu nicht passen, 
außer ich würde das Design komplett anders umsetzen.

Gruß Kostas

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

Kostas V. schrieb:
> Wie ist das Konzept generell: Gibt es
> Controller mit integrierte oder aufsteckbare Motor-Driver haben?
> Und wie ist es mit den Encoder, müssen diese auf dem Motor-Driver sein
> oder auf dem Controller?

Klar, in der Welt der Elektronik ist alles steckbar. Wie bei Lego. 
Aufstecken und loslegen. Und die lib zaubert sich her schreibt den 
ganzen Code für dich.
Und jetzt aufwachen. Ohne Skill gehts halt nicht.

von Kostas V. (kostas)


Lesenswert?

Hallo Cyblord,

ich kann absolut nachvollziehen was du meinst und du hast sicherlich 
recht.

Mein Schwerpunkt ist allerdings nicht die Steuerung sondern die 
Mechanik. Wenn ich allerdings einen passenden Bausatz finde mit Motoren 
die für mein Projekt geeignet sind und den Passenden Controller und 
Motortreiber für Arduino oder Rasperry Pi wäre das natürlich wirklich 
perfekt. Das alles im Hobby Bereich!

Gruß Kostas

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> Auf der gleichen Seite habe ich einen single Motor-Driver gefunden der
> passen könnte. Allerdings hat er keinen Anschluss für den Encoder.

Für den Encoder brauchst du nur zwei digitale Eingänge direkt am 
Mikrocontroller. Dein Händler hat im Angebot ein PDF verlinkt, wo er 
zeigt, wie man in anschließt: 
https://www.robotshop.com/media/files/pdf2/074-rb-dfr-444.pdf

Falls du noch nach anderen Motortreiber Ausschau halten möchtest, 
benutze alternativ zu "Motor Driver" auch das Suchwort "H-Brücke" bzw. 
H-Bridge". Manche enthalten Zähler mit "Direction" und Step" Eingängen, 
die wäre nicht geeignet. Du brauchst welche, die das Signal vom 
Mikrocontroller lediglich "dumm" verstärken und ansonsten 1:1 an den 
Motor weiter reichen.

Denke daran, dass der Motor beim Anlaufen die vollen 7A aufnimmt. Dein 
Treiber muss das zumindest für ein paar Sekunden aushalten.

von Cyblord -. (cyblord)


Lesenswert?

Kostas V. schrieb:

> ich kann absolut nachvollziehen was du meinst und du hast sicherlich
> recht.

Wahrscheinlich. Ich habe nämlich erschreckend oft recht. Ist ein Fluch.

> Mein Schwerpunkt ist allerdings nicht die Steuerung sondern die
> Mechanik.

Mag sein. Nur für einen Roboterarm, braucht man 3 Dinge: Mechanik, 
Elektronik und Software.
Und hat nur 1 von 3 wirds schwierig.

> Wenn ich allerdings einen passenden Bausatz finde mit Motoren
> die für mein Projekt geeignet sind und den Passenden Controller und
> Motortreiber für Arduino oder Rasperry Pi wäre das natürlich wirklich
> perfekt. Das alles im Hobby Bereich!

Ja WENN. Wenn meine Tante Eier hätte wäre sie mein Onkel.

von Kostas V. (kostas)


Lesenswert?

Hi Cyblord,

sorry, hätte ich natürlich deutlicher schreiben sollen.
Der Fokus liegt zunächst bei der Mechanik. Der Roboter wird Teil für 
Teil mit einem 3D-Drucker produziert. Alleine das ist schon eine 
Jahresaufgabe. Wenn ich die Motoren OHNE Steuerung also einfach über 
Schalter bediene ist das schon ausreichend. Die Idee dabei war, wenn ich 
gleich die richtige Motoren verbaue und ich jetzt schon den Controller 
und die Motortreiber habe, dann kann ich mich nach der Fertigstellung 
damit beschäftigen als Folgeaufgabe.

Gruß Kostas

von Kostas V. (kostas)


Lesenswert?

Hallo Stefan,

Mein Händler hat auch einen Motortreiber für Bürstenmotoren DC 12V 10A. 
Allerdings wird der Encoder nicht berücksichtigt. Vermutlich ist das 
auch nicht die Aufgabe vom Motor Treiber.
https://www.robotshop.com/eu/en/cytron-10a-dc-motor-driver-arduino-shield.html

Noch eines zum Verständnis: Ist meine Annahme richtig dass ein 
Motor-Controller welcher mehrere Motor-Driver unterstützt, auch die 
Aufgabe der Positionierung mittels Encoders übernimmt. Der Arduino 
übergibt die Position an den Cotroller und dieser fährt die einzelne 
Motoren an?

Gruß Kostas

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> Mein Händler hat auch einen Motortreiber für Bürstenmotoren DC 12V 10A.
> Allerdings wird der Encoder nicht berücksichtigt. Vermutlich ist das
> auch nicht die Aufgabe vom Motor Treiber.

Eben! Der Encoder wird vom Motortreiber nicht benötigt, deswegen hat er 
keine Anschlüsse dafür.

> Ist meine Annahme richtig dass ein Motor-Controller welcher
> mehrere Motor-Driver unterstützt, auch die
> Aufgabe der Positionierung mittels Encoders übernimmt.

Solche Motor-Treiber gibt es, aber das ist ein Sonderfall. Solche 
Produkte kann man nicht einfach so als universelles Shield entwickeln, 
weil sie mindestens an Motor, Getriebe und Last angepasst sein müssen.

Normalerweise ist die Positionierung die Aufgabe des Programmierers des 
Mikrocontrollers.

von Cyblord -. (cyblord)


Lesenswert?

Kostas V. schrieb:
> Noch eines zum Verständnis: Ist meine Annahme richtig dass ein
> Motor-Controller welcher mehrere Motor-Driver unterstützt, auch die
> Aufgabe der Positionierung mittels Encoders übernimmt. Der Arduino
> übergibt die Position an den Cotroller und dieser fährt die einzelne
> Motoren an?

Ein Motortreiber dreht erst mal nur den Motor. Aber natürlich gibt es 
auch Module welche direkt eine Position anfahren können. Oder 
festgelegte Drehzahlen. Die man z.B. per I2C übermittelt. Sowas hatte 
ich mal verbaut.
Du kannst dir da jede vorstellbare Abstufung kaufen.

Also was soll das hier? Wenn du Motor und Encoder hast, dann kümmer dich 
später darum wie du das ansteuerst.

von Kostas V. (kostas)


Lesenswert?

Hallo Zusammen,

ok, herzlichen Dank. Dann werde ich die herausgesuchten Getriebemotoren 
in das Design verbauen und mich später für die Ansteuerung kümmern.

Euch noch eine schöne Zeit.
Gruß Kostas

von m.n. (Gast)


Lesenswert?

Kostas V. schrieb:
> für ein Roboter Arm Lern-Projekt würde ich gerne 4 12V DC Bürsten
> Getriebemotoren verbauen.

Die Motore sind für Bewegung geeignet. Bei einem Roboterarm wird 
sicherlich auch Kraft im Stillstand benötigt. Da das Getriebe 
(vermutlich) nicht blockierend wirkt, wirst Du damit wahrscheinlich 
nicht glücklich.
Schrittmotore wären die einfachere Variante, BLDC wohl die beste und 
aufwendigste.
Wenn es also nur um die Mechanik geht, würde ich passende Schrittmotore 
verwenden.

Stefan ⛄ F. schrieb:
> Denke daran, dass der Motor beim Anlaufen die vollen 7A aufnimmt. Dein
> Treiber muss das zumindest für ein paar Sekunden aushalten.

Die maximalen Ströme vermeidet man, indem man PWM-gesteuerte Rampen 
verwendet; allein schon, um Ruckeln zu vermeiden.

von Kostas V. (kostas)


Lesenswert?

m.n. schrieb:
> Wenn es also nur um die Mechanik geht, würde ich passende Schrittmotore
> verwenden.

Danke für die Info.

Ich habe längst nach Schrittmotoren gesucht um im Kostenrahmen zu 
bleiben <100€/Motor, doch die sind alle ziemlich groß und schwer, 
zumindest habe ich keine andere gefunden. Die Motoren müssen auf den 
Gelenken sitzen. Dass Gewicht ist hierbei schon ein Thema.
Ich benötige eine langsame Bewegung ca. 50U/min mit einer gewissen Kraft 
von ca. 2-5Kg

Können Schrittmotoren bei langsamer Drehzahl auch diese Graft aufbringen 
oder sollte ich gleich nach Schrittmotoren mit Getriebe suchen? Auf 
jeden Fall gibt es deutlich mehr Controller für Schrittmotoren.

Schöne Grüße
  Kostas

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> oder sollte ich gleich nach Schrittmotoren mit Getriebe suchen?

Ohne Getriebe wird es mit keinem Motor funktionieren.

Ich frage mich gerade, ob du jemals etwas mit Motoren gebaut hast? Du 
scheinst von ihnen wundersame Leistungen zu erwarten.

von Kostas V. (kostas)


Angehängte Dateien:

Lesenswert?

Hallo Stefan,

vielen Dank für die Info. Ich werde nach Drehstrommotoren suchen mit 
Getriebe. Schneckenrad wäre am besten da es mechanisch blockierend 
wirken würde. Für dieses Projekt müsste es nicht einmal sein.

Ich glaube ich habe bei meinem ersten posting bereits erwähnt dass 
dieses Gebiet komplett neu ist für mich. Ich habe bis jetzt nur mit 
Drehstrommotoren die über FUs <-> Siemens Logo angesteuert werden 
Projekte umgesetzt.

Darum ging es mir, herauszufinden nach was ich suchen muss. Vielen Dank 
nochmals.

Gruß
  Kostas

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> Schneckenrad wäre am besten da es mechanisch blockierend
> wirken würde. Für dieses Projekt müsste es nicht einmal sein.

Bist du dir da ganz sicher?

Der Arm wird schon von seinem Eigengewicht herunter gezogen. Wer oder 
was wird dagegen arbeiten? Kann dein Motor im Stillstand die nötige 
mechanische Leistung abgeben, ohne dabei durch zu brennen?

von Cyblord -. (cyblord)


Lesenswert?

Stefan ⛄ F. schrieb:
> Kostas V. schrieb:
>> Schneckenrad wäre am besten da es mechanisch blockierend
>> wirken würde. Für dieses Projekt müsste es nicht einmal sein.
>
> Bist du dir da ganz sicher?

Es ist eine grundlegende Eigenschaft von Schneckengetrieben, dass sie 
nicht von der Gegenseite her bewegt werden können.

von Stefan F. (Gast)


Lesenswert?

Cyblord -. schrieb:
> Es ist eine grundlegende Eigenschaft von Schneckengetrieben, dass sie
> nicht von der Gegenseite her bewegt werden können.

Genau. Aber meint ja, keins zu brauchen.

von Kostas V. (kostas)


Lesenswert?

Hallo Zusammen,

Wenn ich passende Schrittmotoren mit Schneckengetriebe finden würde die 
auch noch bezahlbar sind also <=100€/Motor dann würde ich die verwenden. 
Alle "günstige" Schrittmotoren die ich bisher gefunden habe sind 
richtige Bomber. Deshalb habe ich gesagt, für dieses Projekt ist das 
nicht unbedingt notwendig da hier die Mechanik in Verbindung mit 
3D-Druck im Vordergrund steht. Wenn ich das Glück habe, passen Motoren 
zu finden, wäre das natürlich ein Traum da dieses Projekt einen weiteren 
Nutzen hätte. Dass es solche Motoren gibt ist mir schon klar. In jedem 
Diskettenlaufwerk steckt vermutlich so einer drin. Aber ich suche 
weiter.

Ich bestelle mir übrigens parallel ein Arduino CNC Bausatz bei dem die 
Motoren NUR auf dem Tisch platziert werden also ohne mechanische 
Komponenten um auch hier Erfahrungen zu sammeln.

Gruß
  Kostas

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> Alle "günstige" Schrittmotoren die ich bisher gefunden habe sind
> richtige Bomber. Deshalb habe ich gesagt, für dieses Projekt ist das
> nicht unbedingt notwendig

Was ist das denn für eine Logik? Weil dir die richtigen Bauteile zu 
teuer sind glaubst du, sie nicht zu brauchen. Ich hoffe, du machst das 
ganz für dich alleine und musst es niemals jemandem vorzeigen.

von Kostas V. (kostas)


Lesenswert?

Hallo Stefan,

ich mache das für mich und muss das niemandem Zeigen.

Ich kann für die Steuerung Komponenten von Backhoff für mehrere tausend 
Euro verwenden. Ist sicherlich auch ein guter Lerneffekt. Ich habe 
übrigens auch Projekte mit Backhoff Komponenten umgesetzt. :-) Aber 
irgendwo muss man schon eine Grenze setzen. Wie gesagt, ich habe bisher 
KEINE passende Motoren gefunden und das ich weiter suche. Das ist KEIN 
kommerzielles Projekt! Ich könnte auch Servomotoren aus dem Modelbau 
verwenden. Auch da bin ich auf der Suche.

Ich komme aus dem Maschinenbau(Ausbildung als Feinmechaniker) und 
Windows individuelle Softwareentwicklung (Beruflich seit über 30 
Jahren). Mir ist klar dass ich Schneckengetriebe brauche. Habe auch ein 
paar private Projekte mit µC umgesetzt. Mit Schrittmotoren, Arduino und 
co. hatte ich bisher keine Berührung. Von meinem Wissensstand her muss 
ich mich nicht verstecken. Ich habe auch kein Problem damit offen zu 
legen was ich nicht weiß. :-)

Manchmal wird man als Dummer Junge hingestellt wenn man sich in einem 
Bereich nicht auskennt. Damit kann ich bestens umgehen. :-)

Es gibt immer jemanden der sich in einem Thema besser auskennt als ich. 
Und es gibt Themen bei denen ich mich bessere auskenne, und egal wie 
viel Wissen man sich aneignet wird es immer so sein. :-)


Gruß
  Kostas

P.S. Dieser Thread ist mich mich sehr interessant. Ich weis jetzt in 
welcher Richtig ich suchen muss. Vielen Dank dafür.

von Stefan F. (Gast)


Lesenswert?

Kostas V. schrieb:
> Manchmal wird man als Dummer Junge hingestellt
> wenn man sich in einem Bereich nicht auskennt.

Für ein Projekt dieser Größe sollte man vorher schon Erfahrung mit 
einfacheren Aufbauten oder Bausätzen gemacht haben. Mache doch erst mal 
etwas kleineres!

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.