Hallo zusammen,
ich bin neu im Forum und hoffe hier hilfreiche Tipps & Tricks zu finden. Derzeit arbeite ich mit einem LBR iiwa und bin dabei mich in die Bedienung und Programmierung (Workbench/Java) einzuarbeiten. Ich habe bereits im Handbuch nachgeschlagen und mir einige Beispiele angeschaut, um Anregungen zu erhalten .
Gerne möchte ich folgenden Ablauf programmieren und suche hierfür noch nach einer Lösung:
Der Roboter soll eine Kollision (z. B. Berührung der Hand) erkennen und die anhalten. Anschließend soll die Anwendung durch Gesetensteuerung fortgesetzt werden.
Bisher habe ich folgendes versucht:
//Trigger
ICallbackAction ica = new ICallbackAction() {
@Override
public void onTriggerFired(IFiredTriggerInfo triggerInformation)
{
getLogger().info("TriggerTime: "+ triggerInformation.getTriggerTime().toString());
getLogger().info("TriggerCondition: "+ triggerInformation.getFiredCondition().toString());
getApplicationControl().pause();
};
}; //End ICallbackAction ica
//Bedingung für kartesische Kraft aus allen Richtungen (Frame unterhalb des Roboterflansches)
ForceCondition flangecollision = ForceCondition.createSpatialForceCondition(lbr.getFlange(), 15);
lbr.move(ptp(getApplicationData().getFrame("/Frame_Z2")).triggerWhen(flangecollision, ica));
Alles anzeigen
Bei Kollision wird die Methode triggerWhen() ausgelöst und es erfolgt ein Aufruf von onTriggerFired() und pause().
Das Problem hierbei ist, dass die Applikation pausiert wird und ein Fortsetzen der Bewegungsausführung nur über die Start-Taste am smartPAD möglich ist, nicht aber mit einer Geste (siehe Video 1). Zudem stellt sich die Frage, wie die Anwendung generell per Geste gestartet werden kann (siehe Video 2).
Siehe folgende Videos:
1) https://youtu.be/90sS-sxEZm8?t=2m45s ab Minute 2:45
2) https://youtu.be/sJBgEk96igk?t=20s ab Sekunde 20
Danke im Voraus!
Grüße
robotneuling