Release note Software version 3.13.x.x
For CB-series only
date created: April 8th, 2020
RELEASE NOTES 3.13.1 - 04/06/2020
Released Versions:
- UR Software Update: 3.13.1
- URSim Linux: 3.13.1
- URSim Virtual Machine: 3.13.1
- Robot Image: 3.13.1
?
Bug Fixes
Fixed issue where an unhandled 'ConcurrentModificationException' exception could a occur in a URCap if the URCap was accessing Features in the installation.
Fixed issue where?the first Point/Line Feature from the list in the Features installation screen was always used by Conveyor Tracking regardless of which Feature was original selected in the Installation.
Fixed issue where loading certain older installation files would fail if the installation contained installation variables that were used by the loaded program
Reduced distance for precise automatic move when using pose editor, and "move here" functionalities.
Fixed issue where robot would not stop movement after depressing "automove" button on the TP screen.
Support zip file can now be opened as compressed folder on Windows 10. Support files generated in older releases can still be opened with 3rd party applications (i.e. 7zip).
?
Controller
URCAP SOFTWARE PLATFORM
- URCap API:?
Fixed issue where a 'ConcurrentModificationException' exception could be thrown when features where retrieved by calling methods in the 'FeatureModel' interface.
?
?
RELEASE NOTES 3.13.0 - 09/04-2020
Released Versions:
- UR Software: 3.13.0.10253
- URCap Software Platform:?
- URCap API: 1.10.0
- URCap SDK: 1.10.0
- URSim: 3.13.0.10253
- URSim Virtual Machine: 3.13.0.10253 (internal version: 2.0.78)
- Robot Image: 3.13.0.10253 (internal version: 1.0.103)
- UR Firmware 3.12.7 (no change)
- Manual: 3.13.0?(internal version: 3.8.60)
- Support Log Reader:?3.8.65
- RTDE: 2.3.6 (internal version)
?
Summary of updated content regarding this release
Key Features:
- URCap API: Improved support for fixed position configuration of Waypoint nodes
?
Export of robot configuration for Technical Support
Introduced functionality where user can easily export data necessary for diagnosing issues with robot application.
Export button is available on the log tab. User access can be restricted by setting system password.
Single zip-compressed file will be created. File can be saved directly to USB flash drive.
File contains:
- all previous flight reports
- all programs, scripts, and installations
- entire robot log
- individual log files for all software components
- operating system log files, memory consumption, and available disk space
- configuration files
- calibration file
- robot arm statistics
- software metrics
?
PolyScope GUI
- All empty expression fields (which are part of the configuration of a program node) are now displayed with yellow background
- The text field in the Popup program node is displayed with yellow background if it is empty
- Optimized performance for programs and installations:
- Faster loading time for large programs
- Faster loading time for installations
- Reduced time spent creating or loading an installation when a large program is loaded
- More responsive controls when navigating a program, scrolling and expanding/collapsing nodes in a program tree when a large program is loaded
- Inserting new nodes in the program tree is faster
- Making modifications to the program when a large program is loaded, such as undoing/redoing, copy-pasting, etc. is optimized
?
?
URCap Software Platform
Compatibility Notice: Behavior change for valid TCP names in Screwdriver and Gripper driver contributions
This release will introduce a minor behavior change in the URCap API that might affect existing URCaps. The change will not break backwards compatibility of the API itself, but the behavior of one specific method will be affected, which can cause exceptions to be thrown in some cases. The behavior change will only affect Screwdriver and Gripper driver contributions.
Changes:
When TCPs are added through a Screwdriver or Gripper driver contribution (using the 'setTCP(String, Pose)' in the 'TCPConfiguration' interface) certain names will no longer be accepted. The following will be disallowed when specifying the name for a TCP and will throw an 'IllegalTCPNameException' exception:
- Any occurrences of hyphens (-)
- A name starting with a number or an underscore (_)
- Any occurrence of special characters, such as #, [, (, etc.
Previously, these cases were accepted, and the specified name was automatically corrected. This change is implemented to align the behavior with all other API functionality that allows for adding/contributing named entities to PolyScope (such as variables, features, etc.).
URCap API:
- Improved support for gripper driver contributions:
- Gripper program node and toolbar:
- The user can specify what the total payload should be set to after the execution of a grip or release action
- For a gripper supporting the Grip Detected or Release Detected feedback capability, the payload will be applied after successful grip/release detection in the Gripper program node
- The user-defined total payload value will be applied by PolyScope immediately after the script code for the gripper action has finished executing (or successful grip/release detection)
- Added integrated payload support:
- Note:
- Applying the new payload is not the responsibility of the gripper driver, since this is automatically handled by PolyScope
- To ensure that the new payload is properly applied by PolyScope, the generated script code for the gripper action must not finish earlier than when it is appropriate to apply the new payload value (i.e. when the object has been gripped or released). For more details, see the new section "3.2: Integrated Payload Support" and the updated section "3.3: Script Code Generation" in the "URCap Gripper Driver" SDK document.
- Added API support for querying the enablement state of the grip/release detection option in the Gripper program node when generating script code for grip and release actions (in calls to the 'generateGripActionScript(ScriptWriter, GripActionParameters)' and 'generateReleaseActionScript(ScriptWriter, ReleaseActionParameters)' methods in the 'GripperContribution' interface):
- If the grip detected feedback capability has been registered, URCaps can determine if the end user has enabled or disabled this functionality
- This functionality enables URCaps to generate different script code for?grip/release actions depending on the enablement state of grip/release detection. For more details, see the updated section "3.3: Script Code Generation" in the "URCap Gripper Driver" SDK document.
- See new method 'isGripDetectionEnabled()' in the 'GripActionParameters' interface
- See new method 'isReleaseDetectionEnabled()' in the 'ReleaseActionParameters' interface
- Improved Gripper node UI:
- Allowed the user to define two independent values for the parameter for?each registered capability (e.g. width capability), one value used for the grip action and one value used for the release action
- Removed the "Grip Now" and "Release Now" buttons
- For gripper contributions supporting the Grip Detected and/or Release Detected feedback capability, the Grip Detection (or Release Detection) option is now enabled by default when the user selects the Action in a new Gripper program node
- Increased the length of the sliders for adjusting capability parameters (e.g. width capability) in the Gripper program node
- Improved Gripper installation node:
- If a gripper contribution does not define a custom installation screen UI (for setting up the gripper), the installation node for the gripper will not be shown in the Installation
- Moved the location for the custom logo to the header of the Gripper installation node
- Added access to the TCP contributed by Screwdriver and Gripper driver contributions:
- A Gripper or Screwdriver contribution can access the actual TCP it has contributed to PolyScope
- See new 'getTCP()' method in the existing 'TCPConfiguration' interface (in the 'contribution.driver.general.tcp' Java package).
- Improved support for requesting the end user to define a position of the robot (using the Move tab):
- Introduced a new robot position callback which returns the TCP offset used when the user defined the robot position (together with the resulting pose and corresponding joint positions)
- See the new 'RobotPositionCallback2' interface and the new 'getUserDefinedRobotPosition(RobotPositionCallback2)' method in the existing 'UserInteraction' interface (in the 'domain.userinteraction' Java package).
- Deprecated the 'RobotPositionCallback' interface and the 'getUserDefinedRobotPosition(RobotPositionCallback)' method in the 'UserInteraction' interface.
- See the new 'PositionParameters' interface (in the new 'domain.value.robotposition' Java package)
- Improved support for configuration of waypoints:
- Added support for creating a fully defined fixed position configuration for a Waypoint Node by specifying a pose and corresponding joint positions and TCP offset (obtained using the new? robot position callback)
- See the new 'createFixedPositionConfig(PositionParameters, ...)' method in the existing 'WaypointNodeConfigFactory' interface (in the 'domain.program.nodes.builtin.configurations.waypointnode' Java package).
- Added default rendering support for unresolved PolyScope entities in Swing combo box widgets:
- A Swing combo box ('JComboBox' class) where the selected PolyScope entity is unresolved (e.g. because it was deleted/not present in the Installation) is automatically displayed as in built-in PolyScope program nodes (i.e. the entity name is italicized and the combo box is displayed with a yellow border).
- Supported PolyScope entity types:
- TCPs
- Features
- Variables (installation variables)
- I/Os
- Devices (such as grippers)
- Performance optimizations:
- The unpacking of resources when the 'installResource(URL)' method is called on the implementation of the 'DaemonContribution' interface during startup will only occur the very first time (after the URCap has been installed or updated)
- In previous versions, the daemon resources would be unpacked every time PolyScope started (which could be time consuming with large resources).
- Improved PolyScope startup time when a URCap with a daemon contribution is installed on the system:
- Reduced the number of calls to the 'isDefined()' method in implementations of the 'ProgramContribution' interface during rendering of the program tree and when the data model is updated.
- Reduced the time it takes to insert child nodes in sub-tree of a parent node, especially Waypoints nodes
- When a Java exception has occurred in the code of a URCap, a detailed explanation including URCap information and stack trace is now provided in the Log tab (as a tooltip)
URCap SDK:
- Updated the following Swing-based samples to use the new default rendering support for unresolved PolyScope entities in Swing combo boxes:
- Cycle Counter Swing
- Idle Time Swing
- Tool Changer Swing
- Updated the 'install.sh' script so that when executed, it will ask the user if the 'ant' Linux package should be installed, if that package is not installed on the system. The 'ant' tool is a prerequisite for the optional UR C/C++ cross-compiler toolchain.
- Updated the "URCap Gripper Driver" document (gripper_driver.pdf?file) with description of the new integrated payload support:
- Added new section "3.2: Integrated Payload Support"
- Updated section "3.3: Script Code Generation" with information about how the generated script code for gripper actions should behave after the introduction of integrated payload support to ensure an optimal user experience
?
Controller
Dashboard server
- Added command for triggering flight report
- Added command for generating Technical Support file
?
Manuals
- Added secondary programs description to URScript manual
?
Bug fixes
PolyScope GUI
- Fixed an issue where adding a second Seek-template in the Program Tree, resulted in linking of waypoints for Start and End Direction to the waypoints in the first template.
- Fixed memory and resource leak that caused "out of memory" or "slow UI" errors when program was started and stopped few thousand times with short intervals.
- Fixed issue in the "I/O Setup" installation screen where a value smaller than 0.1 (and larger than 0.02) could not be specified in the "High" and "Low" number fields when configuring a digital output to generate a continuous pulse.
- Fixed issue where undoing (or manually reverting) a change from a fixed Waypoint to a variable Waypoint would restore the original default name (assigned when the Waypoint node was inserted) instead of its user-defined name.
- Fixed issue where loading an installation?in some situations could change the name of fixed Waypoints in a loaded program containing variable Waypoints, if the Waypoint name was a default name (e.g., "Waypoint_1", "Waypoint_2").
- Fixed issue in the Features installation screen where the onscreen keyboard would not invalidate the entered input if the name of an existing Point feature was specified when renaming a Line or Plane feature.
- Fixed issue where loading a large program could take very long time if that program was already loaded
- Fixed unexpected exception when selecting File→Exit, or File→New program while program is running
- Fixed issue with unresponsive screen when program is loaded and started over 10000 times using dashboard server
- Changing Tool Output control source on I/O tab does not mark installation as modified.
- Fixed issue where saving a file on USB disk is not possible when folder contains sub-folders.
- Fixed unexpected exception when pressing Move Here button in programs with large number of waypoints defined.
- Fixed the following issues with?loading and saving programs in the Sub Program node:
- After the sub program was saved, it was not listed in the file chooser dialog (unless the "All Files" filter was selected) because the sub program was not saved as a .urp file
- The previous name of the Sub Program node was not "released" after loading a sub program (i.e. it was not possible assign other PolyScope entities or programs nodes that name)
- It was possible to save the sub program under a name already assigned to another PolyScope entity or program node
?
Polyscope Improvements for large programs
- Fixed long pause when selecting set or wait nodes on large programs.
- Fixed long pause after protective stop on some systems with large URCaps installed.
- Fixed long pause when accessing move node in programs with large number of waypoints defined.
?
Controller
- Improved behavior when resuming program. Controller will now evenly ramp up from zero velocity instead of always starting the resume process at maximum acceleration.
- Fixed issue where the setpoint would drift during conveyor tracking/path offsetting if controller executed a blended waypoint without any subsequent movement.
- Fixed issue where stopl/stopj could cause errors during conveyor tracking/path offsetting.
?
URCap Software Platform
- Fixed issue where inserting Waypoint nodes with default names (e.g., "Waypoint_1", "Waypoint_2") resulted in undesired linking of the inserted Waypoints when the language in PolyScope was one of several non-English languages.
- Fixed issue where it was possible to install two versions of the same URCap (same symbolic name) which would be active at the same time in PolyScope:
- Only the URCap with the highest version will be activated
- A dialog is displayed informing the user that the URCap is already installed in a different version and that only the newest will be activated
- When installing a URCap with a different version in the URCaps Settings screen the following will now occur:
- The inactive URCap (with the lowest version) is displayed with a gray icon and the version of the URCap is displayed in parentheses next to the URCap name (for both URCap versions).
- Fixed issue where a 'ClassCastException' exception would be thrown, if the sub-tree of a URCap program node contained a child node contributed by another URCap not installed on the robot and any of the following interactions occurred with that child node:
- Calling the 'canGetAs(Class)' method on the child node from the missing URCap (as an instance of the 'URCapProgramNode' interface)
- Using the program node visitor (i.e. the 'ProgramNodeVisitor' or 'URCapProgramNodeInterfaceVisitor' abstract class) to traverse the sub-tree containing the child node from the missing URCap
URSim
- Fixed "ConcurrentModificationException" that was showing on some Linux systems (i.e. Ubuntu 18.04) when starting up simulator.
?
?
NEWEst RELEASE NOTES:
previous RELEASE NOTES:
- Release Notes Software Version 3.12
- Release Notes Software Version 3.11
- Release Notes Software Version 3.10
- Release Notes Software Version 3.9
- Release Notes Software Version 3.8
- Release Notes Software Version 3.7
- Release Notes Software Version 3.6
- Release Notes Software Version 3.5
- Release Notes Software Version 3.4
- Release Notes Software Version 3.3
- Release Notes Software Version 3.2
- Release Notes Software Version 3.1
- Release Notes Software Version 3.0