Vorschubregelung beim Schleifen

  • Servus.
    Ich bin nicht allzu oft hier zugegen und weiß deshalb nicht ob es ein ähnliches Thema schon gab, aus diesem Grund starte ich einfach mal ein neues.


    Also kommen wir zur Thematik. Ich möchte mit einem ABB-Roboter und einem Asynchronmotor mit Schleifscheibe als Endeffektor ein Gußteil entgraten. Der Drehstrommotor wird über einen Frequenzumrichter betrieben. Ein wesentliches Problem dabei ist die undefinierte Größe und Form des Grates. Ausgleichen möchte ich dies über eine Regelung der Vorschubgeschwindigkeit des Roboters, damit dieser sich an die jeweilige Menge des Grates anpasst. Jetzt stellt sich für mich natürlich die Frage ob es überhaupt realisierbar ist und welche Komponenten ich am besten verwende, d.h. welcher FU und natürlich welche Größe des Motors ich mir zur Regelung abgreife.
    Hat jemand so etwas schon realisiert oder kann mir nen Link zu dem Thema schicken? Ich bin für jede Hilfe dankbar.


    Gruss M.

  • ANZEIGE
  • Von ABB gibt es für solche Anwendungen eineeigene Softwareoption, heißt glaube ich Force Control. Damit kann bei größerem Widerstand die Geschwindigkeit des Roboters reduziert werden oder man erlaubt dem Roboter auszuweichen. Habs allerdings noch nie selbst probiert.
    Wir haben sowas auch mal mit einem Kuka gemacht und die geschwindigkeit für den worst Case ausgelegt (also recht langsam). Geht natürlich nur wenn man Zeit hat.
    Ich könnte mir vorstellen, dass man auch über einen SpeedRefresh was machen könnte, allerdings musst Du ja irgendwie die Kraft bestimmen, die auf Dein Werkzeug wirkt.
    Ist auf jeden Fall nicht trivial und erfordert viel ausprobieren.


    Gruß
    Stromer

  • ForceControl (wenn wir jetzt das gleiche Dings meinen) enthält auch eine Hardware (die Kraftmeßdose am Flansch) und funktioniert suboptimal, wenn der Roboter ein rotierendes Werkzeug führt. Genau für so eine Anwendung hat man das bei uns mal ausprobiert - es erwies sich leider in der Praxis als untauglich. Der Robbi fuhr sonstwo hin.


    Den Ansatz von Michatronik, die Leistungsaufnahme des Motors als Stellgröße zu verwenden, finde ich deutlich erfolgversprechender.

  • Ich hatte kürzlich Kontakt zu einer Firma die Roboterzellen, unter anderem auch zum Entgraten baut, und dabei ABB-Roboter verwendet. Die haben es auch mit Force Control ausprobiert allerdings mit mäßigem Erfolg. Es ist, genau wie Programmiersklave schon sagte, durch die Schwingungen der Schleifvorrichtung kaum möglich vernünftige Werte von der Kraftmessdose abzugreifen und nach ca. 6-9 Monaten ist der Sensor ganz hinüber. Somit bleibt mir eigentlich nur noch die Regelung des Vorschubs über die Leistungsaufnahme des Motors oder eben eine andere Größe des Motors die sich einigermaßen proportional mit dem Moment ändert. Im Netz und in der Literatur hab ich bislang aber leider nichts zu dem Thema gefunden.

  • Proportional ist ja so 'ne Sache... Leistung ist Drehzahl*Drehmoment, wenn der Asynchronmotor mit 'nem FU Drehzahlstabil gehalten wird, sollten da schon abgreifbare Werte rauskommen. Moderne FUs lassen sich ja ohne Ende parametrieren, auch die wichtigsten Daten sind oft genug analog auslesbar oder sogar über Profibus etc..
    Notfalls muss man sich im Roboterprogramm eine mathematische Funktion programmieren, die Nichtlinearitäten rauskompensiert - wenigstens ungefähr. Habe ich mal gemacht, um den Durchmesser einer großen Polierscheibe während des Polierens rauszufinden bzw. den Arbeitspunkt hinterherzuschieben.


    Viel interessanter fände ich die Strategie, wie nachher der Regelparameter in das laufende Program einfließen soll. Eine Hintergrundtask könnte ja zyklisch die Werte prüfen und irgendwas berechnen, aber wie bremst man den Vorschub? Eigentlich ja sogar rückwirkend, dem besch. Satzvorlauf bei ABB sei dank... VelSet geht nur in Bewegungstasks, und mit Interrupts könnte man die Bewegung stoppen und neu ansetzen, aber nicht kontinuierlich ändern. Oder man programmiert offline sehr viele, dicht beieinanderliegende Punkte und holt sich die Geschwindigkeit für den nächsten Punkt aus einer Variablen... der Bediener wird sich bedanken, wenn er mal was nachteachen will.


    Vielleicht meinen wir bezgl. des ForceControl-Experiments dieselbe Firma und denselben Versuch :pfeif:

  • Das Force Control nur suboptimal funktioniert hab ich zugegebener Maßen auch schon mal gehört. :roll:


    Um während einer bereits angefangenen Bewegung die Geschwindigkeit zu verringern gibts soweit ich weiß nur den SpeedRefresh. Der kann z.B. über einen IRQ aufgerufen werden. Bliebe auszuprobieren, wie gut das funktioniert.
    Die Lösung mit den vielen Punkten würde zwar auch funktionieren aber wie Programmiersklave schon sagt, ist es wenig praktikabel.


    Bei einem Motor ist der Strom proportional zum Moment. Daraus ließe sich sicherlich was basteln.


    Gruß
    Stromer

  • Hallo Zusammen,


    Force Controll ist eigentlich zum interpolieren zwischen zwei Punkten gedacht.
    Für diesen speziellen Fall fällt mir die Option Torque Search ein.
    Kraftaufnahme wird über die einzelnen Motorenparameter gemessen. :zwink:


    MFG
    CSH

  • Besten Dank erstmal für die Ratschläge. Werd mir zuerst mal eine vernünfige Antriebsspindel besorgen und einen passenden FU und dann probieren was man beim Schleifen so an Werten aus dem ASM rausholen kann. Anschließend wird man weiter sehen. :zwink:

  • Liebe Leute,


    wir haben bereits an die 90 Force Control Systeme integriert und sie funktionieren sehr gut. Es ist nur eine komplett andere Herangehensweise und etwas Erfahrung mit dem System dafür nötig. Die Verwendung des Motorstroms ist auch bei dem FC System möglich - der Vorteil ist, dass das Analogsignal direkt auf einen A/D Wandler am Achsrechner geführt wird und damit die Reaktionszeit nur rund 5ms beträgt - was deutlich schneller ist als andere PC gestützte Systeme. Bei Fragen zu Details bitte einfach bei mir melden.


    rainer.krappinger@at.abb.com


    GLG
    Rainer

  • Da ich das Thema eröffnet habe will ich es auch abschließen.
    Hab meine Diplomarbeit nun mit dem schon angesprochenen Inhalt mit Erfolg hinter mich gebracht. Also mit der S4Cplus lässt sich eine Geschwindigkeitsänderung während einer Verfahrbewegung nicht durchführen. Die neue Geschwindigkeit wird erst bei erreichen des nächsten Zielpunktes aktiv. Bei der IRC5 gibts wie oben schon gesagt wurde den Befehl Speedrefresh. Damit kann die Vorschubgeschwindigkeit während einer Verfahrbewegung geändert werden. Allerdings mit einer Verzögerungszeit von 300ms-500ms. Eindeutig zu viel für meine Anwendung. Ich hab dann neben der Untersuchung von verschiedenen Komponenten auf Eignung für so eine Kraftregelung auch noch eine Versuchsreihe mit der Roboterapplikation Force Control durchgeführt und in meine Arbeit rein gebracht. Ich kann das System nur weiterempfehlen. In diesem Sinne erkläre ich den Thread für beendet. :danke:

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden