From 613d58838244e75ecf6010f3b48a9711b8163503 Mon Sep 17 00:00:00 2001 From: Arne Peters Date: Fri, 26 Jul 2019 14:24:07 +0200 Subject: [PATCH 1/3] simplified media flange button integration --- .../camp/kuka/ros/app/ROSBaseApplication.java | 9 +++--- .../tum/in/camp/kuka/ros/iiwaPublisher.java | 31 +++++++++++-------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java index 685f4220..43004e20 100644 --- a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java +++ b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java @@ -50,6 +50,7 @@ import com.kuka.roboticsAPI.deviceModel.LBR; import com.kuka.roboticsAPI.geometricModel.ObjectFrame; import com.kuka.roboticsAPI.geometricModel.Tool; +import com.kuka.roboticsAPI.ioModel.AbstractIOGroup; import com.kuka.roboticsAPI.motionModel.controlModeModel.JointImpedanceControlMode; import com.kuka.roboticsAPI.motionModel.controlModeModel.PositionControlMode; import com.kuka.roboticsAPI.uiModel.userKeys.IUserKey; @@ -103,9 +104,9 @@ public abstract class ROSBaseApplication extends RoboticsAPIApplication { // ROS Nodes. protected Configuration configuration = null; - // MEDIAFLANGEIO - // @Inject - // protected MediaFlangeIOGroup mediaFlange; + // MediaFlangeIO group. Replace this with the line below to activate ROS publisher for media flange button status + AbstractIOGroup mediaFlange = null; + // @Inject protected MediaFlangeIOGroup mediaFlange; // MEDIAFLANGEIO protected iiwaPublisher publisher = null; PublisherThread publisherThread = null; @@ -164,7 +165,7 @@ public void initialize() { // Standard configuration. configuration = new Configuration(getApplicationData()); - publisher = new iiwaPublisher(robot, configuration.getRobotName(), configuration.getTimeProvider()); + publisher = new iiwaPublisher(robot, configuration.getRobotName(), configuration.getTimeProvider(), mediaFlange); actionServer = new iiwaActionServer(robot, configuration); // ROS initialization. diff --git a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/iiwaPublisher.java b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/iiwaPublisher.java index 43960b35..1da59e2b 100644 --- a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/iiwaPublisher.java +++ b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/iiwaPublisher.java @@ -34,6 +34,7 @@ // import com.kuka.generated.ioAccess.MediaFlangeIOGroup; // MEDIAFLANGEIO import com.kuka.roboticsAPI.deviceModel.LBR; import com.kuka.roboticsAPI.geometricModel.ObjectFrame; +import com.kuka.roboticsAPI.ioModel.AbstractIOGroup; /** * This class implements a ROS Node that publishes the current state of the robot.
@@ -60,11 +61,13 @@ public class iiwaPublisher extends AbstractNodeMain { // DestinationReachedFlag publisher private Publisher destinationReachedPublisher; // Publishes the status of the Media Flange button. - // private Publisher mediaFlangeButtonPublisher; // MEDIAFLANGEIO + private Publisher mediaFlangeButtonPublisher; // Name to use to build the name of the ROS topics private String robotName = "iiwa"; private LBR robot; + + AbstractIOGroup mediaFlange; // Object to easily build iiwa_msgs from the current robot state private MessageGenerator helper; @@ -82,7 +85,7 @@ public class iiwaPublisher extends AbstractNodeMain { private iiwa_msgs.JointVelocity jv; private std_msgs.Time t; - // private std_msgs.Bool flangeButton; // MEDIAFLANGEIO + private std_msgs.Bool flangeButton; /** * Create a ROS node with publishers for a robot state.
@@ -91,9 +94,10 @@ public class iiwaPublisher extends AbstractNodeMain { * @param robotName : name of the robot, topics will be created accordingly : /state/ (e.g. MyIIWA/state/CartesianPosition) */ - public iiwaPublisher(LBR robot, String robotName, TimeProvider timeProvider) { + public iiwaPublisher(LBR robot, String robotName, TimeProvider timeProvider, AbstractIOGroup mediaFlange) { this.robot = robot; this.robotName = robotName; + this.mediaFlange = mediaFlange; helper = new MessageGenerator(robotName, timeProvider); cp = helper.buildMessage(iiwa_msgs.CartesianPose._TYPE); @@ -105,7 +109,7 @@ public iiwaPublisher(LBR robot, String robotName, TimeProvider timeProvider) { jv = helper.buildMessage(iiwa_msgs.JointVelocity._TYPE); js = helper.buildMessage(sensor_msgs.JointState._TYPE); t = helper.buildMessage(std_msgs.Time._TYPE); - // flangeButton = helper.buildMessage(std_msgs.Bool._TYPE); // MEDIAFLANGEIO + flangeButton = helper.buildMessage(std_msgs.Bool._TYPE); } /** @@ -163,8 +167,9 @@ public void onStart(final ConnectedNode connectedNode) { destinationReachedPublisher = connectedNode.newPublisher(robotName + "/state/DestinationReached", std_msgs.Time._TYPE); - // mediaFlangeButtonPublisher = connectedNode.newPublisher(robotName + "/state/MFButtonState", - // std_msgs.Bool._TYPE); // MEDIAFLANGEIO + if (mediaFlange != null) { + mediaFlangeButtonPublisher = connectedNode.newPublisher(robotName + "/state/MFButtonState", std_msgs.Bool._TYPE); + } } /** @@ -191,7 +196,7 @@ public void publishCurrentState() throws InterruptedException { * @param frame : the Cartesian information published will be relative to this frame * @throws InterruptedException */ - public void publishCurrentState(ObjectFrame frame/* , MediaFlangeIOGroup mediaFlange */) throws InterruptedException { // MEDIAFLANGEIO + public void publishCurrentState(ObjectFrame frame) throws InterruptedException { if (cartesianPosePublisher.getNumberOfSubscribers() > 0) { helper.getCurrentCartesianPose(cp, robot, frame); helper.incrementSeqNumber(cp.getPoseStamped().getHeader()); @@ -233,12 +238,12 @@ public void publishCurrentState(ObjectFrame frame/* , MediaFlangeIOGroup mediaFl helper.incrementSeqNumber(js.getHeader()); jointStatesPublisher.publish(js); } - - // Uncomment if using a Media Flange IO. // MEDIAFLANGEIO - // if (mediaFlange != null && mediaFlangeButtonPublisher.getNumberOfSubscribers() > 0) { - // flangeButton.setData(mediaFlange.getUserButton()); - // mediaFlangeButtonPublisher.publish(flangeButton); - // } + + if (mediaFlange != null && mediaFlangeButtonPublisher.getNumberOfSubscribers() > 0) { + // Uncomment if using a Media Flange IO. + // flangeButton.setData(((MediaFlangeIOGroup)mediaFlange).getUserButton()); // MEDIAFLANGEIO + mediaFlangeButtonPublisher.publish(flangeButton); + } } /** From 8d4750699ca7e229bf01d5cb5d22214aecaf2698 Mon Sep 17 00:00:00 2001 From: Arne Peters Date: Fri, 26 Jul 2019 14:49:10 +0200 Subject: [PATCH 2/3] applied autoformatting --- .../src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java index 14e4364c..b9d50c54 100644 --- a/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java +++ b/iiwa_ros_java/src/de/tum/in/camp/kuka/ros/app/ROSBaseApplication.java @@ -109,7 +109,8 @@ public abstract class ROSBaseApplication extends RoboticsAPIApplication { protected AddressGenerator addressGenerator = new AddressGenerator(); - // MediaFlangeIO group. Replace this with the line below to activate ROS publisher for media flange button status + // MediaFlangeIO group. Replace this with the line below to activate ROS publisher for media flange button + // status AbstractIOGroup mediaFlange = null; // @Inject protected MediaFlangeIOGroup mediaFlange; // MEDIAFLANGEIO From 35241f61a95d948331d9c2e9d1d91659b8076e09 Mon Sep 17 00:00:00 2001 From: Arne Peters Date: Thu, 12 Sep 2019 17:35:05 +0200 Subject: [PATCH 3/3] updated rosjava_actionlib to fixes crashes related to multithreading --- .../ROSJavaLib/rosjava_actionlib-0.4.4.jar | Bin 28154 -> 0 bytes .../ROSJavaLib/rosjava_actionlib-0.4.5.jar | Bin 0 -> 36780 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.4.jar create mode 100644 iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.5.jar diff --git a/iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.4.jar b/iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.4.jar deleted file mode 100644 index b6453b9cfd37325bbb71dc065fc38eef7194bc9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28154 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 LoMRr0e_Z`PNCO~Q diff --git a/iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.5.jar b/iiwa_ros_java/ROSJavaLib/rosjava_actionlib-0.4.5.jar new file mode 100644 index 0000000000000000000000000000000000000000..d02fa17188711e68f1b3ecd07f53a8c4d7bc4a8c GIT binary patch literal 36780 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