Seite 1 von 1

Ansteuerung der Encoder-Motoren

Verfasst: 14 Okt 2011, 22:20
von Kai P.
Liebe Community,
ich habe endlich wieder Zeit gefunden an meinen HRL weiter zu bauen und zu programmieren, jetzt bin ich an einem Punkt wo ich nicht weiter komme :D, also die Steuerung an sich in Kinder einfach aber... die ganze Lift-wagen läuft mittels einer Zahnstange und einem direkt angesetztem Encoder-Motor Resultat ist, das man SEHR flux am Ziel ist. Jedoch ist der Lift über einen Schneckenantrieb ohne Übersetzung gesteuert und brauch bei 30 cm Weg nach oben so seine Zeit :D jetzt wollte ich probieren, ob man Motor M1 und M2 nicht auf die Unterschiedlichen Distanzen auch synchron laufen lassen könnte da dies optisch sicher was her machen würde. Meine Frage ist nun wie ich DAS programmieren kann?! Bin offen für Lösungsvorschläge :)

Gruß,
Kai

Re: Ansteuerung der Encoder-Motoren

Verfasst: 15 Okt 2011, 11:15
von Masked
Hallo Kai,
falls du die Beispielprogramme hast, kannst du dich daran bedienen. Im Beispielprogramm zum Hochregallager und 3D-Robot aus Automation Robots werden die Motoren gleichzeitig angesteuert.
Irgendwo gabs die auch zum runterladen, ich finds nur grad nicht. Falls du sie nicht hast und sich hier niemand mit dem Link meldet, dann sag mir Bescheid, ich schick dir das Programm dann.

Grüße,
Martin

Re: Ansteuerung der Encoder-Motoren

Verfasst: 15 Okt 2011, 15:07
von Kai P.
Ja das hab ich ja schon alles durch ;) und läuft auch super nur eben das was mich reizt ist; das X und Y Achse Zeitgleich am Ziel sind, obwohl unterschiedliche Distanzen über wunden werden müssen :D sonst ist das ja eher sehr einfach ein HRL zu programmieren.

Gruß,
Kai

Re: Ansteuerung der Encoder-Motoren

Verfasst: 15 Okt 2011, 15:29
von Dirk Fox
Hallo Kai,
Kai P. hat geschrieben:jetzt wollte ich probieren, ob man Motor M1 und M2 nicht auf die Unterschiedlichen Distanzen auch synchron laufen lassen könnte da dies optisch sicher was her machen würde. Meine Frage ist nun wie ich DAS programmieren kann?!
soweit ich die Encoder-Motor-Steuerung verstanden habe, werden die Impulse synchronisiert - auf verschiedene Distanzen kommen daher beide Motoren nicht gleichzeitig an. Wenn Du mit dem "Synchron"-Befehl z.B. Motor 2 parallel zu Motor 1 schaltest, gilt m.W. die "Distanz"-Angabe, die Du bei Motor 1 eingestellt hast; sobald diese Position erreicht ist, bleiben beide Motoren stehen. Ich habe es eben einmal getestet: Der Zähler von Motor 2 stoppt dann aber etwas später (zählt ca. 5-7 Implse weiter), und die Abfrage "Position erreicht" wird nicht "1" - das klappt nur, wenn beide Motoren denselben "Distanz"-Befehl erhalten.

Allerdings kannst Du beide Motoren ohne Synchron-Befehl mit unterschiedlichen "Distanz"-Befehlen starten. Dazu den X- bzw. Y-Wert mit dem "Distanz"-Befehl an die Motoren 1 bzw. 2, dann beide Motoren nacheinander in die gewünschte Laufrichtung mit gleicher Tempo-Angabe starten. Anschließend warten, bis beide Motoren den Status "1" zurückliefern - z.B. mit dem "J"-Element und einem "AND"-Operator davor. Zwar kommt dann einer der Motoren zuerst am Ziel an, das Ergebnis sieht aber dennoch gut aus...

Beste Grüße,
Dirk

Re: Ansteuerung der Encoder-Motoren

Verfasst: 16 Okt 2011, 14:50
von vleeuwen
For real, resize and fast (x,y) (n dimension) positioning, stepper motors are more suitable.
See for example:
http://web.inter.nl.net/users/Ussel-Int ... oject.html

The encoder motor with the simple incremental encoder is not design for (x,y) positioning.
The encoder motor is usable for 1 dimension positioning or in combination with the extended motor control for distance control of a two wheel drive FT-bot.
In case speed is not the most important part of your design, it is possible to use two encoder motor.
You need to split up the curve into small (deltaX, deltaY) parts. The sum of all (deltaX’s, deltaY’s) is an approximation to your curve.
Two parallel work flows, one for the X-motor and one for the Y-motor take care of small movements as descript with the (deltaX, deltaY) parts. The two parallel work flows need to be synchronized after each displacement, (and not during the displacement).

Re: Ansteuerung der Encoder-Motoren

Verfasst: 19 Okt 2011, 19:29
von Kai P.
Oh, wow das ist dann doch eher nicht so leicht zu machen :| Aber vielen Dank für die aufürlichen Antworten!

Gruß,
Kai