From 09dbe010aed2a66c9565a1786059bfede60bb0a5 Mon Sep 17 00:00:00 2001 From: Thomas Timm Andersen Date: Fri, 30 Oct 2015 12:52:46 +0100 Subject: [PATCH] Optimized servoj function call for firmware version >= 3.1 --- src/ur_driver.cpp | 6 ++++-- src/ur_ros_wrapper.cpp | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/ur_driver.cpp b/src/ur_driver.cpp index d2252bf..70503e9 100644 --- a/src/ur_driver.cpp +++ b/src/ur_driver.cpp @@ -180,7 +180,10 @@ bool UrDriver::uploadProg() { cmd_str += "\t\t\t\tsync()\n"; cmd_str += "\t\t\telif state == SERVO_RUNNING:\n"; - sprintf(buf, "\t\t\t\tservoj(q, t=%.4f)\n", servoj_time_); + if (sec_interface_->robot_state_->getVersion() >= 3.1) + sprintf(buf, "\t\t\t\tservoj(q, t=%.4f, lookahead_time=0.03)\n", servoj_time_); + else + sprintf(buf, "\t\t\t\tservoj(q, t=%.4f)\n", servoj_time_); cmd_str += buf; cmd_str += "\t\t\telse:\n"; @@ -208,7 +211,6 @@ bool UrDriver::uploadProg() { cmd_str += "\t\t\tset_servo_setpoint(q)\n"; cmd_str += "\t\tend\n"; cmd_str += "\tend\n"; - cmd_str += "\tstopj(10)\n"; cmd_str += "\tsleep(.1)\n"; cmd_str += "\tsocket_close()\n"; cmd_str += "end\n"; diff --git a/src/ur_ros_wrapper.cpp b/src/ur_ros_wrapper.cpp index 514d8d9..54251d4 100644 --- a/src/ur_ros_wrapper.cpp +++ b/src/ur_ros_wrapper.cpp @@ -142,7 +142,7 @@ public: min_payload, max_payload); print_debug(buf); - double servoj_time = 0.08; + double servoj_time = 0.008; if (ros::param::get("~servoj_time", servoj_time)) { sprintf(buf, "Servoj_time set to: %f [sec]", servoj_time); print_debug(buf);