Release note Software version 3.10.x.x
For CB-Series only
The latest software version is at the top of this article.
RELEASE NOTES 3.10.1 - 12/07-2019
Released Versions:
- UR Software: 3.10.1.7.6.190
- URSim 3.10.1.7.6.190
- URSim Virtual Machine 3.10.1.7.6.190
- Robot Image 3.10.1.7.6.190
Bug Fixes
PolyScope GUI:
- Palletizing wizard now creates unique waypoints for each pallet.
- Fixed an issue that prevented loading of certain programs with Timer node
RELEASE NOTES 3.10.0 - 05/06-2019
Released Versions:
- UR Software: 3.10.0.7.6.181
- URCap Software Platform
- URCap API 1.7.0
- URCap SDK 1.7.0
- URSim 3.10.0.76181
- URSim Virtual Machine 3.10.0.76181
- Robot Image 3.10.0.76181
- Support Log Reader 3.6.193
Summary of updated content regarding this release:
- User Manual
- Script Manual
- Offline Simulator
- Robot Image Software
- Robot Software
- Support Log Reader
Key Features
- Until I/O Input: New Until node can stop execution when an input reaches a certain level/value.
- URCap API: Added support for requesting exclusive control of the Tool I/O Interface and configuring the settings.
- URCap API: Added support for querying if specific capabilities are present on the underlying robot system.
- URCap API: Added support for "I/O Input" configurations of Until nodes.
PolyScope GUI
- Added new Until I/O Input node. Actions added under the Until node will run until an input reaches a certain level/value.
- In the SubProgram node changed the title of the checkbox "Show Subprogram Tree" to "Hide Subprogram Tree" and made it to be disabled by default.
URCap Software Platform
URCap API:
- Added support for "I/O Input" configurations of Until Nodes:
- URCaps can read and set "I/O Input" configurations of Until Nodes
- See the new 'create...InputConfig(...)' methods in the 'UntilNodeConfigFactory' interface and the new 'IOInputUntilNodeConfig' interface in the existing 'domain.program.nodes.builtin.configurations.untilnode' Java package.
- Added support for exclusive control over system resources:
- Introduced a framework where URCaps can obtain exclusive control of a system resource. A resource on the robot is defined as an entity that can be controlled. A resource can be unique, or a limited number of that resource type can be present on the robot, e.g. the Tool I/O Interface is a unique resource typically used by a device attached to the robot tool, such as a gripper.
- URCaps can request exclusive control of the Tool I/O Interface resource and exclusively configure the settings of this interface if the control request is granted to the URCap.
- The control is revoked when the end user reassigns the control (to a different URCap or himself), when a new installation is created, or a different installation is loaded, and when the robot is shutdown.
- See the new interfaces 'ControllableResourceModel' and 'ToolIOInterfaceController' in the new 'domain.resource' Java package.
- See the new "Resource Control" document in the SDK for more information.
Note
- After this software release, only the new API should be used to configure the Tool I/O Interface. Use of script functions configuring the settings is not allowed, e.g. 'set_tool_voltage(int)'. This also applies to the URCap that has the control of the Tool I/O Interface resource.
- The controlling URCap only have exclusive control over the configuration of the Tool I/O Interface, but not the actual values of the I/O signals in the robot tool. Any non-controlling URCap or the end user are free to modify the value of any of these I/Os.
- 'I/O' tab
- Added support for selecting who controls the tool output voltage setting of the Tool I/O Interface. Available options are the end user or any of the URCaps that has requested the control.
- While the control is assigned to a URCap, the tool output voltage and tool analog input domain settings cannot be modified in any way either by the end user or other URCaps.
- In the "Controlled by" drop-down box, control requests from URCaps are grouped by the URCap "owner" in terms of the name of the URCap and its developer.
- Added support for configuration of the Tool I/O Interface settings
- URCaps can read and configure all settings of the Tool I/O Interface including settings for
- Tool output voltage level
- Tool digital output pin modeSinking (NPN), Sourcing (PNP), Push / Pull, Dual Pin Power (e-Series only)
- Tool analog inputsTool Communication Interface (TCI) (e-Series only), Analog domain (Voltage/Current)
- URCaps can read and configure all settings of the Tool I/O Interface including settings for
- See new 'domain.resource.tooliointerface' Java package
Note
- Only the tool output voltage and tool analog input domain settings are available on CB3 robots.
- The tool output voltage and tool analog input domain settings can only be configured by the URCap controlling the Tool I/O Interface resource.
- When Tool I/O Interface settings are modified, an update (re-rendering and invocation of 'isDefined()' methods) of the Program Tree is automatically triggered. This ensures the correct "defined/undefined" state is reflected for any program node contribution with an implementation of the 'isDefined()' method that checks for a specific configuration of the Tool I/O Interface.
- Added support for querying if specific capabilities are present on the underlying robot system
- Introduced the concept of capabilities supported by the underlying robot/system. A capability is a hardware-based or software-based system feature which is not available on all robot systems/platforms, e.g. the Tool Communication Interface and tool digital output pin mode features are not available on CB3 robots.
- URCaps can query whether or not a specific capability (which is not guaranteed to be available on all systems) is supported by the underlying robot/system. Currently, such supported capabilities are the Tool Communication Interface and tool digital output pin mode functionality which is only available on the e-Series platform.
- Interfaces and methods that represent functionality that are not available on all systems are annotated with 'RequiredCapability'.
- See new 'domain.system.capability' Java package
Note: Attempting to use functionality which is not supported by the underlying robot system will throw a 'CapabilityNotSupportedException'. - See the new "Capabilities" document in the SDK for more information.
- Added support for checking if an I/O is resolvable/available
- URCaps can now check if an I/O is resolvable/available in PolyScope. An I/O can be unavailable if, e.g. a MODBUS I/O is not present in the loaded installation, the analog tool inputs are used as Tool Communication Interface (TCI) and the digital tool outputs are used for Dual Pin Power.
- See new 'isResolvable()' method in the 'IO' interface in the 'domain.io' Java package.
Note: Currently, all 'Register' types ('Boolean', 'IntegerRegister' and 'FloatRegister') are always resolvable. - Improved rendering support for MODBUS I/Os in the HTML-based drop-down box GUI element ('SelectDropDownList' interface). Now a selected MODBUS I/O, which became unresolved (e.g. because it was deleted/not present in the Installation), will be displayed as in PolyScope built-in program nodes (shown in italics with a yellow border).
- Made various updates and improvements to Javadoc.
URCap SDK:
- Created new or updated URCap samples:
- Added new 'Tool I/O Control Swing' URCap example demonstrating how to use the following new API features
- Requesting exclusive control of the Tool I/O Interface resource
- Reading and applying configurations of the Tool I/O Interface (resource)
- Checking if a specific system capability is available on the underlying robot system
- See section "10URCap examples overview" in the Swing-based URCap tutorial for more details about the new sample
- Changed the text of the top-most placeholder item in the variable selection drop-down box from "Select idle time summation variable"/"Select counting variable" to "<variable>" in the 'Idle Time'/'Idle Time Swing' URCap sample.
- Updated the 'Localization'/'Localization Swing' URCap sample with fully translated generated pop-up for Russian, Japanese, Chinese and Korean.
- Documentation
- New documents:
- Added document "Resource Control" which describes the new resource control framework (resource_control.pdf file). The document explains how to request exclusive control of a system resource as well as how to work with the resource once the control has been granted. The Tool I/O Interface resource is used as an example.
- Added document "Capabilities" which describes the concept of capabilities, that are not guaranteed to be supported by the underlying robot/system, and how to work with this new concept (capabilities.pdf file).
- URCap tutorial (Swing- and HTML-based):
- Added new section "8.4/8.5Updating the data model" containing the existing "Undo/redo Functionality" section and the new "8.5.1Restrictions" section describing restrictions for modifications to the data model.
Client interface and Dashboard
- Changes to primary/secondary, and real time client interfaces:
- Added reserved byte to Masterboard data sub package of Robot State Message.
- Added safety status value to real time interface. New value allows to differentiate between causes for a safeguard stop.
- Changes to RTDE interface:
- Updated documentation of elbow_velocity, and elbow_position output variables
- Added safety_status output variable
BUG FIXES
PolyScope GUI
- Fixed a bug where non-ascii characters in sub-program names would not run on the robot.
- Fixed a bug where in special cases it was possible to copy a Call Subprogram node into a Subprogram
- Fixed the issue where installing a large URCap did not enable the "Restart" button in the "URCaps" panel in the "Setup Robot" screen.
- Variable features no longer have the "_var" suffix
- Menu for selecting I/O output action made wider so entire description is visible.
- Fixed the issue where saving a program to USB storage device was not saving the installation file.
- Fixed the issue where saving a subprogram from within the main program, falsely indicated that main program has also been saved.
- Fixed the issue where Dashboard server gives incorrect programstate when a program is started using I/O Actions.
- Fixed the issue where a program involving waypoints failed to start sometimes when started using I/O Actions.
- Controller crashes generate flight report, helping troubleshooting and analysis.
- Added full copyright text on legal notice panel in about dialog
- Fixed the issue where automatic tracking of the command being executed (Blue arrow in Program tree) could not be enabled.
- Fixed the issue where user was not notified that the Conveyor Tracking Setup and any Conveyor tracking node using it became undefined after deleting a MODBUS register input signal.
- Fixed the issue in " I/O Setup " installation screen where the drop-down menu "I/O tab control" displayed an incorrect selection for the selected output.
- Fixed issue where configurable I/Os showing if the robot was emergency stopped would not correctly reflect the physical state of the output pins.
- Fixed PolyScope exception when loading and starting programs through dashboard server interface
URCap Software Platform
- Fixed the issue where calling the 'set(boolean)' method on the 'DigitalIO' interface for a digital tool output would falsely always return true even though the output was unavailable, because it was used for Dual Pin Power.
- Fixed the issue where copy/pasted URCap program node containing another URCap program node with locked child sequence of sub nodes would lose the lock of the sub nodes (i.e. it was possible to, e.g. add and remove child nodes).
- Fixed issue where storing a double value in the data model (using the 'set(String, double)' method in 'DataModel' interface) would not enable the unsaved changes indicator for programs and installations.
- Fixed issue where a "Program node changes denied" exception was thrown and the 'Pallet' node was inserted without any of its children when the 'Pallet' node was added to a sub-tree generated in the constructor of a program node contribution.
- URCap SDK:
- Fixed the issue where building a URCap using Java 6 failed due to a Maven build error. The 'newURCap.sh' script (for creating new empty URCap projects) is fixed in the URCap SDK and all existing URCap samples have been updated.
- Fixed issue in the program node from the 'Localization'/'Localization Time Swing' URCap sample where the information about the selected language and programming language was not fully translated for Hungarian, Romanian and Traditional Chinese.
- Fixed issue in the program node from the 'Localization'/'Localization Time Swing' URCap sample where the information about the selected language and programming language was falsely displayed as Chinese when the selected language was Traditional Chinese.
- Fixed issue in the program node from the HTML-based 'Localization' URCap sample where the top introduction text was truncated in Spanish, French, Swedish and Russian and the text in the "Units" drop-down box was truncated in Russian.
- Fixed issue where the 'install.sh' script would fail when installing on 32-bit Linux. If the dialog or/and sshpass Linux packages where not already installed on the system, the install script would furthermore not install these packages.
Controller
- Added a check to verify, in run-time, that the payload set for the mass is within the allowed boundaries when setting this parameter over the built-in functions "set_payload" and "set_payload_mass".
- Fixed a bug where the payload is not checked when robot enables Freedrive mode from a URProgram [Note that this is a breaking change. Programs that previously entered freedrive with a wrong payload or forced applied will now get a protective stop].
- Fixed a bug where the incorrect joint id is reported when there is a communication problem with, at least, one joint.
- Fixed issue with using multiple non-blocking popup commands
- Fixed issue where attempting to resume a program after powering off and powering on the robot would cause a protective stop.
- Fixed issue where executing a program containing a while loop inside an 'until expression' would result in incorrect behaviour.
- Improved handling of programs with computational heavy threads (such as infinite loops) that do not move the robot.
Dual Arm Calibration
- Fixed the issue where Dual Arm Calibration process would fail for a robot that was previously calibrated, but had at least one joint replaced since last calibration.
- Fixed the issue where the calibration log file may grow uncontrollably when executing the Dual Arm Calibration process.
Manuals
- Improved description of the built-in function "servoj" in the Script Manual.
NEWEst RELEASE NOTES:
previous RELEASE NOTES:
- 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