Release Notes for RobotStudio SDK 2023.1
General
The release name is RobotStudio SDK 2023.1 and the build number is 23.1.10349.0. The build date is May 22, 2023.
New Functionality
Add API for stitching faces
Two new Body.Stitch() method overloads were added which stitches faces by closing gaps smaller than a specific threshold.
Add API for combining bodies
Added the method Body.Combine() for combining two given bodies into one without performing boolean logic.
Per instance SmartComponent code behind
It is now possible to specify that the code-behind class for a SmartComponent should be instantiated once for each SmartComponent instance, instead of as a singleton that is shared between all instances. This makes it easier to store states in the code-behind.
This behavior is enabled by setting SmartComponent.PerInstanceCodeBehind to true, either in code:
smartComponent.PerInstanceCodeBehind = true;
or in rsxml:
<SmartComponent xmlns="urn:abb-robotics-robotstudio-graphiccomponent" icon="MyComponent.png"
codeBehind="MyNamespace.MyComponent,MyComponent.dll" perInstanceCodeBehind="true" canBeSimulated="true"> Project templates for Visual Studio 2022
Project templates for Visual Studio 2022 have been added.
Support for non-started Virtual Controllers
Added support for managing references to virtual controllers on disk via VirtualControllerReference and ControllerManager.VirtualControllerReferences.
These APIs do not require the virtual controllers to be started. The objects in the collection will be added to the Controller browser in the RobotStudio UI, and the selected virtual controller reference can be retrieved by ControllerManager.SelectedVirtualController.
Corrections
| PDD | |
|---|---|
| 15280 | RS SDK - Addin template debug path Corrected the path to RobotStudio.exe for debugging in the add-in project templates. |
| Simulator.PauseAsync() and ResumeAsync() unexpected behavior Fixed a bug in Simulator.PauseAsync() that could cause the returned Task to complete before the simulation was actually paused. Calling Simulator.ResumeAsync() at this stage could result in unexpected behavior. |
API changes from RobotStudio SDK 2022.3
Added Types
| Namespace | Type | Description |
|---|---|---|
| ABB.Robotics.RobotStudio.Controllers | VirtualControllerReference | Represents a virtual controller on disk. |
| VirtualControllerReferenceCollection | A collection of VirtualControllerReference objects. | |
| VirtualControllerReferenceEventArgs | Provides data for the VirtualControllerAdded and VirtualControllerRemoved events. |
Added Members
ABB.Robotics.RobotStudio
| Type | Member | Description |
|---|---|---|
| DataRecorderBase | Started | Raised when recording has started. |
| Stopped | Raised when recording has stopped. |
ABB.Robotics.RobotStudio.Controllers
| Type | Member | Description |
|---|---|---|
| ControllerManager | SelectedVirtualController | Returns the currently selected virtual controller object, if a single one is selected. |
| VirtualControllerAdded | Raised when a virtual controller is added. | |
| VirtualControllerReferences | Returns a collection of virtual controllers on disk currently referenced by RobotStudio. | |
| VirtualControllerRemoved | Raised when a virtual controller is removed. |
ABB.Robotics.RobotStudio.Stations
| Type | Member | Description |
|---|---|---|
| Body | Combine(Body) | Combines two given bodies into one body without performing boolean logic. |
| Stitch(IEnumerable<Body>) | Stitches the input bodies by closing gaps between faces smaller than a specific threshold. The threshold is | |
| Stitch(IEnumerable<Body>, double) | Stitches the input bodies by closing gaps between faces smaller than maxStitchTolerance. | |
| KinematicsFlags | ElbowWristOffset | The wrist has an offset. E.g. GoFa |
| Mesh | GetCollisionGeometryAsync(bool, int, CancellationToken) | Returns a MeshPart that encapsulates the mesh, consisting of convex MeshBody objects. |
| RsIrc5Controller | StartAsync(VirtualControllerRestartMode, IEnumerable<Mechanism>, bool, bool) | Starts or restarts the Virtual Controller. |
| SmartComponent | PerInstanceCodeBehind | Gets or sets a value that specifies if the SmartComponentCodeBehind class |
ABB.Robotics.RobotStudio.Stations.Forms
| Type | Member | Description |
|---|---|---|
| GraphicControl | ExamineBox(BoundingBox, float) | Zooms in on a bounding box. |
| ExamineBox(BoundingBox, Vector3, float) | Zooms in on a bounding box. |
ABB.Robotics.RobotStudio.UI
| Type | Member | Description |
|---|---|---|
| WpfTreeNode | IsHovered | Gets or sets if this node is hovered in the tree view. |
| IsSelectable | Gets or sets if this node can be selected by the user. | |
| WpfTreeView | Refresh(bool, bool) | Refreshes the contents of the tree view. |
Obsolete Types and Members
| Namespace | Type | Member |
|---|---|---|
| ABB.Robotics.RobotStudio.Stations.Forms | ToolControlManager | CreateToolHost(string) |
| FindToolHost(string) | ||
| RegisterToolCommand(string, Control) |