Universal Robots - UR5 UR10 Programmierbeispiele

Zuviel Werbung?
-> Hier kostenlos registrieren
Also,
ab Softwareversion 3.3 (Gratis Update) ist Profinet Standardmäßig, wobei der UR hier als device und nicht als Steuerung fungiert.
Updatebar sind alle CB3.1 Varianten der UR, unabhängig von der Größe.

Das mit dem selbst durchfahren passiert nur bei Linearen bewegungen. Wenn man mit einem MoveJ Befehl fährt hat man da keine Probleme. Auch nicht mit Singularitäten.

Zu der eigentlich gestellten Frage zu den Konfigurierbaren Ein/Ausgängen: Schau im Handbuch mal bei den Sicherheitseinstellungen nach, dort sollten weitere Sicherheitstechnische möglichkeiten für die Config I/O´s sein.
Zudem können auch die Config I/O´s wenn diese nicht für Sicherheitstechnik gebraucht werden, auch als normale ein und ausgänge verwendet werden.

Zudem lieber Larry Laffer hat der UR Standardmäßig in seinem Schaltschrank 16 DI´s und 16 DO´s. Die von Ihnen beschriebene Variante ist ein CB2 Controller der seit Anfang letzem Jahr nicht mehr produziert wird.
 
Hi,

ich reaktiviere einfach mal diesen alten Thread, da er ziemlich genau mein Problem beschreibt. Sollte das nicht erwünscht sein, kann ich auch gerne einen neuen aufmachen.

Ich arbeite derzeit mit einem UR5e Roboter. Dieser soll Positionen abfahren, und dabei Ventile in ein Bohrloch drücken. Die Ventile wurden bereits auf dem Bohrloch platziert. Damit mir der UR5e keinen Sicherheitsstopp auslöst (Kraft am Greifer >=150 Newton) wäre es sinnvoll, die Bewegung, welche dafür sorgt, dass der Greifer das Ventil in die Vorrichtung drückt, mit einer maximalen Kraft zu begrenzen. Wenn diese erreicht ist, soll der Roboter dann wieder in die ursprüngliche Position zurück fahren.

Bis auf die else-Abzweigung und einem Größer-als-, anstatt eines Kleiner-als-Zeichens, hab ich alles genau so gemacht wie der User Trilex (-> Universal Robots - UR5 UR10 Programmierbeispiele)

Mein pseudocode sieht dann folgendermaßen aus (habe leider gerade keine Möglichkeit das URP-Programm hochzustellen):

bewege achse
wegepunkt1
if force() > 40
wegepunkt2

Nach meinem Verständnis müsste dies doch dafür sorgen, dass der Roboter die Fahrt zum wegepunkt1 abbricht, sobald er eine Kraft größer 40 Newton registriert und dann den wegepunkt2 abfährt. Den Haken bei Check Ausdruck kontinuierlich habe ich auch gesetzt. Der Roboter lässt sich aber nach wie vor nur durch den Sicherheitsstopp (Kraftaufbringung >150 Newton) von der Ausführung seines aktuellen Bewegungsbefehls abhalten.

Gibt es hier noch zusätzliche Einstellungen die man beachten muss?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Es ist eine Weile her, deswegen kann ich nicht großartig helfen. Am besten erstellst du einen Thread, in dem du den force() Wert alle 0,1 Sekunden in eine Variable schreibst. So kannst du die Werte im Betrieb beobachten. Es gab noch einen Befehl, mit dem du die force Werte für jede Richtung anzeigen lassen kannst. Den habe ich allerdings vergessen.
Grüße
 
Wenn ich mich richtig erinnere, ist die Kraftmessung plus minus 20 Newton genau. Es kommt darauf an, welches Model (UR3/5/10) Ihr im Einsatz habt, welche Roboter-Generation und wie die Gelenke stehen. Wenn der Roboter sehr "zusammengeklappt", "ausgefahren" oder mit zu hoher Geschwindigkeit fährt, klappt das Ganze nicht immer wie man es sich vorstellt. Deshalb erstmal schauen, was der Roboter für Werte ausspuckt. ;-) Der Roboter hat (Wissenstand 3 Jahre alt) keine eigenen Sensoren, sondern berechnet die Kraft anhand der Leistungsaufnahme der Gelenke. Wenn es genauer werden soll, muss man zum Kraftsensor greifen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,

Das was du hier gebaut hast macht folgendes: Roboter fährt auf Wegpunt1. Wenn die Kraft dann größer als 40N wird fährt er an den WP2 weiter.
Du müsstest einen Kraftbefehl verwenden und dort den WP einfügen den du mit der bestimmten Kraft anfahren willst. Also keine If-Bedingung sodern den Force Befehl den du bei "Assistenten" findest.


Aktuell ist die Einstellbare Kraft im ForceMode auf 100N beschränkt, sofern ich mich nicht ganz täusche.
Bei solchen Fragen einfach an den Support deines Lieferanten wenden. In Bayern, Sachsen und Thüringen ist das Jugard+Künstner. Von denen hast du ja schon einen Link oben reinkopiert. Die haben auf der Homepage eine Support-Mail-Adresse. Wenn du wo anders gekauft hast bitte dort melden. J+K hilft dir dann zwar auch, verrechnet aber logischerweise die Arbeitszeit.

Der Kraftsensor ist nur in den eSeries-Modellen verbaut. Das hängt jetzt davon ab welchen Typ du hast. Wenn du eine CB Variante hast stimmt das was "Trilex" vor mir geschrieben hat.

Viel Erfolg weiterhin.
 
Hi,

das mit dem IF geht auch. (Kann man ja auch bei zusätzlichen Sensoren nutzen)
Jetzt fällt mir aber auch erst der Fehler auf. Der Wegpunkt, der ggf. abgebrochen werden soll, muss ins If.

bewege achse
WP"vor eindrücken"
bewege linear
if force() < 40
WP "wegepunkt1"
endif
WP "nach eindrücken"

So fährt der Roboter zu Wegpunkt "vor eindrücken".
Dann fährt/drückt er Richtung "wegpunkt1", bis die kraft 40N erreicht.
Danach fährt er zu "nach eindrücken"

Ob der Assistent besser ist, weiß ich nicht, der war mir immer zu schlecht erklärt und hat bei uns nicht besser "funktioniert" als das If. (da lasse mich aber gerne verbessern)
Interessant, dass es jetzt Versionen mit Sensor gibt, die gab es zu meiner Zeit noch nicht.
 
Hey Trilex,

wenn du Probleme mit dem ForceMode hast würde ich dir ein CoreTraining empfehlen. Das gibt es auch bei der Firma die Julian1 oben schon erwähnt hatte. Da hab ich was auf der Homepage gesehen :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi MiLe,

ich hab das schon auf die Reihe bekommen, fand den Assistenten damals nur sehr schlecht gemacht. Ein Assistent sollte einem die Aufgabe erleichtern und selbsterklärend sein, das war er damals leider nicht. (Oder ich hab zu quer gedacht)
Dazu fand ich das If für so einfache Aufgaben voll ausreichend und schön übersichtlich.
Schulungen hab ich selbst gegeben. ;) Trotzdem danke für den Tipp!
Mittlerweile hab ich nichts mehr mit Robotern zu tun. Eigentlich schade, würde mir gerne mal ansehen, was sich alles getan hat.
Beste Grüße
...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Herzlichen Dank für eure Hilfe. Hat alles wunderbar funktioniert. In den e-Series UR-Robotern ist tatsächlich im Roboterkopf eine Sensorik verbaut. Mein Roboter stoppt jetzt, sobald eine bestimmte Kraft erreicht/überschritten worden ist, und fährt dann automatisch den nächsten Punkt an (in meinem Fall einfach wieder zurück). Der extra thread, wo dann die Kraftvariable abgefragt werden kann, ist auch sehr hilfreich.
 
Zuletzt bearbeitet:
Zurück
Oben