Forum: Mikrocontroller und Digitale Elektronik Schrittmotoren


von Simon Rej (Gast)


Lesenswert?

Hallo,

Ich habe mir zwei Schrittmotoren besorgt,die ich als Antrieb für einen 
kleinen Roboter verwenden möchte.

Gelenkt soll nur mit den Motoren werden.

Nun stehe ich aber vor dem Problem das, wenn ich beide Motoren parallel 
schalte kann ich damit nicht mehr lenken.
Wenn ich beide unabhängig voeinander ansteuere kann ich nicht mehr 
sichergehen das er auch gerade aus fährt. (meine damit wenn ich nicht 
beide Schalter exakt gleichzeitig betätige würde man im Kreis fahren)

Kann mir bei diesem Problem jemand helfen, oder hat jemand ähnliche 
Situation schon einmal gehabt und erfolgreich gelöst?

Es soll aber mit Schrittmotoren erfolgen, da ich diese ja besitze.

Danke im vorraus

MfG

Simon

von spess53 (Gast)


Lesenswert?

Hi

>Wenn ich beide unabhängig voeinander ansteuere kann ich nicht mehr
>sichergehen das er auch gerade aus fährt.

Warum nicht? Wenn die Ansteuerung beide Motoren und die Durchmesser der 
Räder identisch sind.

Wenn nicht: Stichwort Odometer.

MfG Spess

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Simon Rej schrieb:
> Nun stehe ich aber vor dem Problem das, wenn ich beide Motoren parallel
> schalte kann ich damit nicht mehr lenken.
> Wenn ich beide unabhängig voeinander ansteuere kann ich nicht mehr
> sichergehen das er auch gerade aus fährt. (meine damit wenn ich nicht
> beide Schalter exakt gleichzeitig betätige würde man im Kreis fahren)

 Wo siehst du da einen Problem ?
 Beide Motoren am selben Port ist doch exakt gleichzeitig, oder ?
 Und selbst wenn das nicht der Fall ist, 1 Takt (62.5ns) macht bei
 Steppern uberhaupt keinen Unterschied.

von Simon Rej (Gast)


Lesenswert?

spess53 schrieb:
> Warum nicht? Wenn die Ansteuerung beide Motoren und die Durchmesser der
> Räder identisch sind.
>
> Wenn nicht: Stichwort Odometer.

Prinzipiell schon, aber wenn ich die Steuerung so auslege das jeder 
Motoren einen eigenen Schalter besitzt muss ich beide Schalter 
gleichzeitig drücken, was nicht immer passiert bzw. möglich ist.

Was ist ein Odometer?

von Noch einer (Gast)


Lesenswert?

Gibt zwei Möglichkeiten.

Du nimmst noch ein Programm dazwischen, das als Eingang Ein/Aus und 
Lenkung hat. Daraus berechnet dann dein Programm die Schritte für die 
beiden Motoren.

Oder du übst so lange, bis du wie ein Baggerfahrer mit den beiden Hebeln 
gerade aus fahren kannst.

von Simon Rej (Gast)


Lesenswert?

Marc V. schrieb:
> Wo siehst du da einen Problem ?
>  Beide Motoren am selben Port ist doch exakt gleichzeitig, oder ?
>  Und selbst wenn das nicht der Fall ist, 1 Takt (62.5ns) macht bei
>  Steppern uberhaupt keinen Unterschied.

Da ich ja nicht beide Motoren auf den selben Port hängen kann ist es 
schon ein Problem.
Wenn ich beide auf den selben Port hänge dann kann ich nicht 
gleichzeitig den einen nach links und den anderen nach rechts laufen 
lassen.

von Irgendwer (Gast)


Lesenswert?

Simon Rej schrieb:
> Prinzipiell schon, aber wenn ich die Steuerung so auslege das jeder
> Motoren einen eigenen Schalter besitzt muss ich beide Schalter
> gleichzeitig drücken, was nicht immer passiert bzw. möglich ist.

Dann baue halt noch einen dritten Schalter ein der beide synchron 
betätigt.

von Zu(Höhrer) (Gast)


Lesenswert?

Simon Rej schrieb:

> Wenn ich beide auf den selben Port hänge dann kann ich nicht
> gleichzeitig den einen nach links und den anderen nach rechts laufen
> lassen.

Wenn ich richtig mitgelesen habe, dann handelt es sich um EINEN Robi und 
dessen Steuerung mit nach links-rechts-geradeaus.
Und nun möchtest du auch eine "Grätsche" fahren lassen???
Oder soll das ein "Panzerfahr-Robi" werden?
MfG Udo

von Simon Rej (Gast)


Lesenswert?

Dann habe ich aber insgesamt

Zu(Höhrer) schrieb:
> Wenn ich richtig mitgelesen habe, dann handelt es sich um EINEN Robi und
> dessen Steuerung mit nach links-rechts-geradeaus.
> Und nun möchtest du auch eine "Grätsche" fahren lassen???
> Oder soll das ein "Panzerfahr-Robi" werden?
> MfG Udo

Ja er soll auch noch springen und eislaufen können.^^

Nein mit gleichzeitig links und rechts fahren meinte ich das er sich um 
seine z-Achse dreht.

von MaWin (Gast)


Lesenswert?

Simon Rej schrieb:
> Es soll aber mit Schrittmotoren erfolgen, da ich diese ja besitze.

Du bist ein Held.

Ist dir auch mal in den Sinn gekommen, daß es auf der Welt nicht nur ein 
Modell gibt ?

WELCHEN !

Dann auch was zum Roboter, klingt für mich als ob der 2 Räder und ein 
Stützrad hat. Was wiegt er inklusive Akkus, wie gross sind die Räder, 
welche Übersetzung hat das Getriebe, welches Gelände soll er befahren 
können (meist ja nur die Ebene, maximal auf Teppich).

Wenn man das weiss, kann man wenigstens ausrechnen, welches Drehmoment 
und welche Drehzahl die Motoren bringen sollen.

Schrittmotore drehen sich exakt, d.h. wenn man beide elektrisch gleich 
ansteuert, machen sie beide dieselbe Anzahl von Umdrehungen. Damit fährt 
aber so ein Tonnenroboter noch lange nicht geradeaus, weil gleich 
schnell drehende Räder auf unterschiedlichem Untergrund unterschiedlich 
wegrutschen und dann neigt diese billige Konstruktion zum wegdrehen.

Es hilft also überhaupt nicht, die Räder gleich schnell drehen zu 
lassen, zumindest wenn Teppich und nicht nur Linoleum im Spiel ist, 
sondern man braucht eine Richtungskontrolle. Kompass funktioniert im 
Haus nicht, Sonnenstand auch nicht, bleibt nur Video.

DA beginnt das Problem. Deine Motoren sind dagegen unproblematisch.

von Zu(Höhrer) (Gast)


Lesenswert?

Habe ich doch geschrieben: Panzerfahrzeug! Kann sich um seine Z-Achse 
drehen!
MfG Udo

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Simon Rej schrieb:
> Wenn ich beide auf den selben Port hänge dann kann ich nicht
> gleichzeitig den einen nach links und den anderen nach rechts laufen
> lassen

 Sagt wer ?

 Das geht sehr wohl, bitte Gehirn einschalten...

von Forist (Gast)


Lesenswert?

spess53 schrieb:
> Wenn nicht: Stichwort Odometer.

Hodometer (altgriechisch ὁδός hodós „Weg")

von Simon Rej (Gast)


Lesenswert?

Marc V. schrieb:
> Das geht sehr wohl, bitte Gehirn einschalten...

Warum habe ich wohl meine Frage gestellt!?

Ich war mir Unklar und werde dann gebeten mein Hirn einzuschalten?
Wenn ich wüsste was ich tun kann/muss dann wäre ich nicht hier.
Danke für die nette Antwort!

von Anton (Gast)


Lesenswert?

Simon,

wenn Du in das Thema "wie lasse ich ein Fahrzeug autonom lenken" 
einsteigen willst, dann musst Du Dich mit Regelung beschäftigen. Du 
musst messen, welchen Weg die linke und die rechte Seite des Fahrzeugs 
zurücklegt, musst feststellen, wie weit die Messwerte von den 
gewünschten Werten abweichen und dann die Drehgeschwindigkeit der 
Motoren anpassen.

Mit einem Kettenfahrzeug machst Du Dir den Einstieg schwieriger; 
leichter ist es mit etwas in der Art eines ASURO, also mit zwei 
Antriebsrädern und einem Stützrad. Da lassen sich die Wege einfach als 
Drehwinkel an den Rädern messen (wenn auch, bedingt durch den Schlupf 
mit einem gewissen Fehler).

Ciao, Anton

von Axel S. (a-za-z0-9)


Lesenswert?

Simon Rej schrieb:
> spess53 schrieb:
>> Warum nicht? Wenn die Ansteuerung beide Motoren und die Durchmesser der
>> Räder identisch sind.
>>
>
> Prinzipiell schon, aber wenn ich die Steuerung so auslege das jeder
> Motoren einen eigenen Schalter besitzt muss ich beide Schalter
> gleichzeitig drücken, was nicht immer passiert bzw. möglich ist.

Sag mal, kann es sein daß du keinen Schimmer hast was ein Schrittmotor 
ist? Ein Schrittmotor wird nicht über einen Schalter eingeschaltet. 
Und ganz sicher nicht von Hand. Der Punkt bei einem Schrittmotor ist, 
daß man ihn in einzelnen Schritten steuert. Daß man diese Schritte 
mitzählen kann und dadurch die Position des Motors auch ohne extra 
Sensor kennt.

Wenn dein Roboter von zwei Schrittmotoren angetrieben wird und du beide 
Motoren die gleiche Anzahl Schritte machen läßt, dann fährt er auch 
geradeaus. Vorausgesetzt natürlich, die Mechanik (Getriebe, Reifen) ist 
links und rechts gleich. Und wenn sie das nicht ist (wie beim Menschen, 
bei dem auch ein Bein länger ist als das andere) dann kann man das 
simpelst in Software korrigieren. Z.B. alle 100 Schritte einen 
zusätzlichen Schritt auf der "kürzeren" Seite einfügen.

von Simon Rej (Gast)


Lesenswert?

Axel S. schrieb:
> Sag mal, kann es sein daß du keinen Schimmer hast was ein Schrittmotor
> ist? Ein Schrittmotor wird nicht über einen Schalter eingeschaltet.
> Und ganz sicher nicht von Hand. Der Punkt bei einem Schrittmotor ist,
> daß man ihn in einzelnen Schritten steuert. Daß man diese Schritte
> mitzählen kann und dadurch die Position des Motors auch ohne extra
> Sensor kennt.
>
> Wenn dein Roboter von zwei Schrittmotoren angetrieben wird und du beide
> Motoren die gleiche Anzahl Schritte machen läßt, dann fährt er auch
> geradeaus. Vorausgesetzt natürlich, die Mechanik (Getriebe, Reifen) ist
> links und rechts gleich. Und wenn sie das nicht ist (wie beim Menschen,
> bei dem auch ein Bein länger ist als das andere) dann kann man das
> simpelst in Software korrigieren. Z.B. alle 100 Schritte einen
> zusätzlichen Schritt auf der "kürzeren" Seite einfügen.

Also würde das bedeuten das ich mit einem Schrittmotor nur einen 
automatisch Programmierten Betrieb verwenden kann?
Man kann doch mittels Schleife eine Bewegung durchgehend ausführen, und 
wenn man diesen Dauerbetrieb ab bzw abschalten will schaltet man einen 
Schalter dazwischen?
Oder liege ich mit dem Wissen falsch?

von Ulrich F. (Gast)


Lesenswert?

Simon Rej schrieb:
> schaltet man einen
> Schalter dazwischen?
Wo zwischen?

von Simon Rej (Gast)


Lesenswert?

Zwischen Motor und  µC

von Teo D. (teoderix)


Lesenswert?

Ach Leute, lest doch noch mal genau was der Herr TO geschrieben hat!

><((()^>

von Simon Rej (Gast)


Lesenswert?

Teo D. schrieb:
> Ach Leute, lest doch noch mal genau was der Herr TO geschrieben
> hat!
>
>><((()^>

Wer?

von Hubert G. (hubertg)


Lesenswert?

Meinst du nicht das es einfacher wäre wenn du dem µC sagst, das er keine 
Impulse mehr zum Schrittmotor schicken soll?
Du könntest dann dem µC auch sagen er soll die Impulse schneller oder 
langsamer schicken, das zu jedem Schrittmotor unterschiedlich schnell. 
Auf diese Weise kann man dann auch Kurven fahren.

von Simon Rej (Gast)


Lesenswert?

Hubert G. schrieb:
> Meinst du nicht das es einfacher wäre wenn du dem µC sagst, das er keine
> Impulse mehr zum Schrittmotor schicken soll?
> Du könntest dann dem µC auch sagen er soll die Impulse schneller oder
> langsamer schicken, das zu jedem Schrittmotor unterschiedlich schnell.
> Auf diese Weise kann man dann auch Kurven fahren.

Einfacher schon, nur wie kann man das Programm ,während es am µC drauf 
ist und läuft, ändern?
Ich kann ja nur vorher im Programm sagen was die Motoren machen sollen?

von Hubert G. (hubertg)


Lesenswert?

Wie stellst du dir vor das du den Schalter betätigst mit dem du die 
Motoren anhalten willst?

von Ulrich F. (Gast)


Lesenswert?

Simon Rej schrieb:
> Ich kann ja nur vorher im Programm sagen was die Motoren machen sollen?
Dein Programm kann auch an irgendwelchen Sensoren oder Funkmodulen 
horchen. Und somit in Erfahrung bringen, was es tun soll.

von Simon Rej (Gast)


Lesenswert?

Hubert G. schrieb:
> Wie stellst du dir vor das du den Schalter betätigst mit dem du die
> Motoren anhalten willst?

vorerst per Hand

von Ulrich F. (Gast)


Lesenswert?

Simon Rej schrieb:
> vorerst per Hand

Tipp:
Bringe erst mal einen Schrittmotor zum kontrollierten drehen!
Wenn du das geschafft hast, dann ist die Welt schon viel klarer und du 
hast dir viele Fragen selber beantwortet.

Vorher brauchen wir über die Unmöglichkeit/Sinnfreiheit von Schaltern 
zwischen Motor und µC nicht zu reden.

von Hubert G. (hubertg)


Lesenswert?

Dann legst du den Schalter an eine Pin des µC und sagst über diesen das 
der Timer stoppen soll. Mehr wird nicht gehen, es sei denn du machst dir 
Streifen auf den Boden und eine Erkennung dazu.

von Wolfgang (Gast)


Lesenswert?

Simon Rej schrieb:
> Zwischen Motor und  µC

Hast du mal die Zahl der Leitungen gezählt, die zum Schrittmotor führen? 
Wozu dann einen µC?

Du kannst den Schrittmotor natürlich auch über zwei Umschalter von Hand 
betreiben - immer schön in der richtigen Reihenfolge die beiden Schalter 
hin und her schalten, je nach gewünschter Drehrichtung.

von Ulrich F. (Gast)


Lesenswert?

Wolfgang schrieb:
> Du kannst den Schrittmotor natürlich auch über zwei Umschalter von Hand
> betreiben - immer schön in der richtigen Reihenfolge die beiden Schalter
> hin und her schalten, je nach gewünschter Drehrichtung.

Dann sind 20cm auf Teppichboden schon eine Abend füllende Geschichte.
Aber ja!
Das ist sicherlich lehrreich. Danach sitzt das Funktionsprinzip eines 
Schrittmotors.

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.