@wandelbots/nova-api 25.7.0-dev.2 → 25.7.0-dev.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. package/package.json +1 -1
  2. package/v2/api.d.ts +664 -597
  3. package/v2/api.js +1348 -1236
  4. package/v2/api.js.map +1 -1
  5. package/v2/api.ts +1423 -1290
package/v2/api.js CHANGED
@@ -21,7 +21,7 @@ export const AbbControllerKindEnum = {
21
21
  AbbController: 'AbbController'
22
22
  };
23
23
  /**
24
- * ## BEHAVIOR_AUTOMATIC This is the default behavior. The motion group instantly takes any commanded joint configuration as actual joint state. Configures the compliance of the virtual robot with the normal ControllerState cycle time. If set, the virtual robot will act like a physical one, e.g. with a cycle time of 8ms to respond to a new joint state command. ## BEHAVIOR_AUTOMATIC_NOT_COMPLY_WITH_CYCLETIME Configures the compliance of the virtual robot with the normal ControllerState cycle time. If set, the robot will respond as fast as possible, limited only by software execution speed. Because of that the execution of a movement requires less time than with BEHAVIOR_AUTOMATIC. ## BEHAVIOR_EXTERNAL_SOURCE The external client is the only source of actual joint state changes. This mode is used to enable third party software indicating the current joint state via [externalJointsStream](externalJointsStream).
24
+ * ## BEHAVIOR_AUTOMATIC This is the default behavior. The motion groups of the controller take commanded joint configuration as actual joint state. Configures the compliance of the virtual robot with the normal ControllerState cycle time. If set, the virtual robot will act like a physical one, e.g. with a cycle time of 8ms to respond to a new joint state command. ## BEHAVIOR_AUTOMATIC_NOT_COMPLY_WITH_CYCLETIME Configures the compliance of the virtual robot with the normal ControllerState cycle time. If set, the robot will respond as fast as possible, limited only by software execution speed. Because of that the execution of a movement requires less time than with BEHAVIOR_AUTOMATIC. ## BEHAVIOR_EXTERNAL_SOURCE The external client is the only source of actual joint state changes. This mode is used to enable third party software indicating the current joint state via [externalJointsStream](externalJointsStream).
25
25
  * @export
26
26
  * @enum {string}
27
27
  */
@@ -187,7 +187,7 @@ export const Manufacturer = {
187
187
  Yaskawa: 'yaskawa'
188
188
  };
189
189
  export const MovementErrorResponseKindEnum = {
190
- Error: 'ERROR'
190
+ MotionError: 'MOTION_ERROR'
191
191
  };
192
192
  /**
193
193
  * The operating state.
@@ -1777,6 +1777,45 @@ export const ControllerApiAxiosParamCreator = function (configuration) {
1777
1777
  options: localVarRequestOptions,
1778
1778
  };
1779
1779
  },
1780
+ /**
1781
+ * Get description of a configured robot controller including a list of connected motion group identifiers. Use [getMotionGroupDescription](getMotionGroupDescription) to get more information about the motion group.
1782
+ * @summary Description
1783
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
1784
+ * @param {string} controller Unique identifier to address a controller in the cell.
1785
+ * @param {*} [options] Override http request option.
1786
+ * @throws {RequiredError}
1787
+ */
1788
+ getControllerDescription: async (cell, controller, options = {}) => {
1789
+ // verify required parameter 'cell' is not null or undefined
1790
+ assertParamExists('getControllerDescription', 'cell', cell);
1791
+ // verify required parameter 'controller' is not null or undefined
1792
+ assertParamExists('getControllerDescription', 'controller', controller);
1793
+ const localVarPath = `/cells/{cell}/controllers/{controller}/description`
1794
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
1795
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
1796
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
1797
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
1798
+ let baseOptions;
1799
+ if (configuration) {
1800
+ baseOptions = configuration.baseOptions;
1801
+ }
1802
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
1803
+ const localVarHeaderParameter = {};
1804
+ const localVarQueryParameter = {};
1805
+ // authentication BasicAuth required
1806
+ // http basic authentication required
1807
+ setBasicAuthToObject(localVarRequestOptions, configuration);
1808
+ // authentication BearerAuth required
1809
+ // http bearer authentication required
1810
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
1811
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
1812
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1813
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
1814
+ return {
1815
+ url: toPathString(localVarUrlObj),
1816
+ options: localVarRequestOptions,
1817
+ };
1818
+ },
1780
1819
  /**
1781
1820
  * Request a coordinate system specification for a given identifier. Use parameter orientation_type to get the orientation part of the transformation offset of the coordinate system returned in the requested orientation notation. If parameter orientation_type is not set, the orientation part of the transformation offset of the coordinate system is returned in rotation vector notation. The coordinate systems from the robot controller are loaded when the motion group associated with the coordinate system is activated. With deactivation of the motion group, the associated coordinate systems are removed from NOVA. The unique identifier of the coordinate systems from the robot controllers are suffixed with \"On\" + the unique identifier of the robot controller.
1782
1821
  * @summary Coordinate System
@@ -2290,6 +2329,20 @@ export const ControllerApiFp = function (configuration) {
2290
2329
  const localVarOperationServerBasePath = operationServerMap['ControllerApi.deleteRobotController']?.[localVarOperationServerIndex]?.url;
2291
2330
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
2292
2331
  },
2332
+ /**
2333
+ * Get description of a configured robot controller including a list of connected motion group identifiers. Use [getMotionGroupDescription](getMotionGroupDescription) to get more information about the motion group.
2334
+ * @summary Description
2335
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
2336
+ * @param {string} controller Unique identifier to address a controller in the cell.
2337
+ * @param {*} [options] Override http request option.
2338
+ * @throws {RequiredError}
2339
+ */
2340
+ async getControllerDescription(cell, controller, options) {
2341
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getControllerDescription(cell, controller, options);
2342
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
2343
+ const localVarOperationServerBasePath = operationServerMap['ControllerApi.getControllerDescription']?.[localVarOperationServerIndex]?.url;
2344
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
2345
+ },
2293
2346
  /**
2294
2347
  * Request a coordinate system specification for a given identifier. Use parameter orientation_type to get the orientation part of the transformation offset of the coordinate system returned in the requested orientation notation. If parameter orientation_type is not set, the orientation part of the transformation offset of the coordinate system is returned in rotation vector notation. The coordinate systems from the robot controller are loaded when the motion group associated with the coordinate system is activated. With deactivation of the motion group, the associated coordinate systems are removed from NOVA. The unique identifier of the coordinate systems from the robot controllers are suffixed with \"On\" + the unique identifier of the robot controller.
2295
2348
  * @summary Coordinate System
@@ -2495,6 +2548,17 @@ export const ControllerApiFactory = function (configuration, basePath, axios) {
2495
2548
  deleteRobotController(cell, controller, completionTimeout, options) {
2496
2549
  return localVarFp.deleteRobotController(cell, controller, completionTimeout, options).then((request) => request(axios, basePath));
2497
2550
  },
2551
+ /**
2552
+ * Get description of a configured robot controller including a list of connected motion group identifiers. Use [getMotionGroupDescription](getMotionGroupDescription) to get more information about the motion group.
2553
+ * @summary Description
2554
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
2555
+ * @param {string} controller Unique identifier to address a controller in the cell.
2556
+ * @param {*} [options] Override http request option.
2557
+ * @throws {RequiredError}
2558
+ */
2559
+ getControllerDescription(cell, controller, options) {
2560
+ return localVarFp.getControllerDescription(cell, controller, options).then((request) => request(axios, basePath));
2561
+ },
2498
2562
  /**
2499
2563
  * Request a coordinate system specification for a given identifier. Use parameter orientation_type to get the orientation part of the transformation offset of the coordinate system returned in the requested orientation notation. If parameter orientation_type is not set, the orientation part of the transformation offset of the coordinate system is returned in rotation vector notation. The coordinate systems from the robot controller are loaded when the motion group associated with the coordinate system is activated. With deactivation of the motion group, the associated coordinate systems are removed from NOVA. The unique identifier of the coordinate systems from the robot controllers are suffixed with \"On\" + the unique identifier of the robot controller.
2500
2564
  * @summary Coordinate System
@@ -2670,6 +2734,18 @@ export class ControllerApi extends BaseAPI {
2670
2734
  deleteRobotController(cell, controller, completionTimeout, options) {
2671
2735
  return ControllerApiFp(this.configuration).deleteRobotController(cell, controller, completionTimeout, options).then((request) => request(this.axios, this.basePath));
2672
2736
  }
2737
+ /**
2738
+ * Get description of a configured robot controller including a list of connected motion group identifiers. Use [getMotionGroupDescription](getMotionGroupDescription) to get more information about the motion group.
2739
+ * @summary Description
2740
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
2741
+ * @param {string} controller Unique identifier to address a controller in the cell.
2742
+ * @param {*} [options] Override http request option.
2743
+ * @throws {RequiredError}
2744
+ * @memberof ControllerApi
2745
+ */
2746
+ getControllerDescription(cell, controller, options) {
2747
+ return ControllerApiFp(this.configuration).getControllerDescription(cell, controller, options).then((request) => request(this.axios, this.basePath));
2748
+ }
2673
2749
  /**
2674
2750
  * Request a coordinate system specification for a given identifier. Use parameter orientation_type to get the orientation part of the transformation offset of the coordinate system returned in the requested orientation notation. If parameter orientation_type is not set, the orientation part of the transformation offset of the coordinate system is returned in rotation vector notation. The coordinate systems from the robot controller are loaded when the motion group associated with the coordinate system is activated. With deactivation of the motion group, the associated coordinate systems are removed from NOVA. The unique identifier of the coordinate systems from the robot controllers are suffixed with \"On\" + the unique identifier of the robot controller.
2675
2751
  * @summary Coordinate System
@@ -3292,17 +3368,21 @@ export const JoggingApiAxiosParamCreator = function (configuration) {
3292
3368
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP (Tool Center Point). The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send InitializeJoggingRequest to configure the jogging. Sets robot controller mode to control mode. Sets rate and coordinate system for the jogging response. #### 2. Send JointVelocityRequest or TcpVelocityRequest to start the jogging motion. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with JointVelocityRequest or TcpVelocityRequest. - To stop the jogging motion, send zero velocities via either request. ### Responses - InitializeJoggingResponse is sent to signal the success or failure of the InitializeJoggingRequest. - Jogging responses are streamed continuously after an InitializeJoggingRequest is processed. Jogging responses contain the robot controller state and the state of the jogging control. - JoggingErrorResponse with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the JoggingResponse, verify that the robot control is in the desired state, e.g. standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops.
3293
3369
  * @summary Execute Jogging
3294
3370
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3371
+ * @param {string} controller Unique identifier to address a controller in the cell.
3295
3372
  * @param {ExecuteJoggingRequest} executeJoggingRequest
3296
3373
  * @param {*} [options] Override http request option.
3297
3374
  * @throws {RequiredError}
3298
3375
  */
3299
- executeJogging: async (cell, executeJoggingRequest, options = {}) => {
3376
+ executeJogging: async (cell, controller, executeJoggingRequest, options = {}) => {
3300
3377
  // verify required parameter 'cell' is not null or undefined
3301
3378
  assertParamExists('executeJogging', 'cell', cell);
3379
+ // verify required parameter 'controller' is not null or undefined
3380
+ assertParamExists('executeJogging', 'controller', controller);
3302
3381
  // verify required parameter 'executeJoggingRequest' is not null or undefined
3303
3382
  assertParamExists('executeJogging', 'executeJoggingRequest', executeJoggingRequest);
3304
- const localVarPath = `/cells/{cell}/execution/jogging`
3305
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
3383
+ const localVarPath = `/cells/{cell}/controllers/{controller}/execution/jogging`
3384
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
3385
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
3306
3386
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
3307
3387
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
3308
3388
  let baseOptions;
@@ -3341,12 +3421,13 @@ export const JoggingApiFp = function (configuration) {
3341
3421
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP (Tool Center Point). The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send InitializeJoggingRequest to configure the jogging. Sets robot controller mode to control mode. Sets rate and coordinate system for the jogging response. #### 2. Send JointVelocityRequest or TcpVelocityRequest to start the jogging motion. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with JointVelocityRequest or TcpVelocityRequest. - To stop the jogging motion, send zero velocities via either request. ### Responses - InitializeJoggingResponse is sent to signal the success or failure of the InitializeJoggingRequest. - Jogging responses are streamed continuously after an InitializeJoggingRequest is processed. Jogging responses contain the robot controller state and the state of the jogging control. - JoggingErrorResponse with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the JoggingResponse, verify that the robot control is in the desired state, e.g. standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops.
3342
3422
  * @summary Execute Jogging
3343
3423
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3424
+ * @param {string} controller Unique identifier to address a controller in the cell.
3344
3425
  * @param {ExecuteJoggingRequest} executeJoggingRequest
3345
3426
  * @param {*} [options] Override http request option.
3346
3427
  * @throws {RequiredError}
3347
3428
  */
3348
- async executeJogging(cell, executeJoggingRequest, options) {
3349
- const localVarAxiosArgs = await localVarAxiosParamCreator.executeJogging(cell, executeJoggingRequest, options);
3429
+ async executeJogging(cell, controller, executeJoggingRequest, options) {
3430
+ const localVarAxiosArgs = await localVarAxiosParamCreator.executeJogging(cell, controller, executeJoggingRequest, options);
3350
3431
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3351
3432
  const localVarOperationServerBasePath = operationServerMap['JoggingApi.executeJogging']?.[localVarOperationServerIndex]?.url;
3352
3433
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -3364,12 +3445,13 @@ export const JoggingApiFactory = function (configuration, basePath, axios) {
3364
3445
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP (Tool Center Point). The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send InitializeJoggingRequest to configure the jogging. Sets robot controller mode to control mode. Sets rate and coordinate system for the jogging response. #### 2. Send JointVelocityRequest or TcpVelocityRequest to start the jogging motion. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with JointVelocityRequest or TcpVelocityRequest. - To stop the jogging motion, send zero velocities via either request. ### Responses - InitializeJoggingResponse is sent to signal the success or failure of the InitializeJoggingRequest. - Jogging responses are streamed continuously after an InitializeJoggingRequest is processed. Jogging responses contain the robot controller state and the state of the jogging control. - JoggingErrorResponse with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the JoggingResponse, verify that the robot control is in the desired state, e.g. standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops.
3365
3446
  * @summary Execute Jogging
3366
3447
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3448
+ * @param {string} controller Unique identifier to address a controller in the cell.
3367
3449
  * @param {ExecuteJoggingRequest} executeJoggingRequest
3368
3450
  * @param {*} [options] Override http request option.
3369
3451
  * @throws {RequiredError}
3370
3452
  */
3371
- executeJogging(cell, executeJoggingRequest, options) {
3372
- return localVarFp.executeJogging(cell, executeJoggingRequest, options).then((request) => request(axios, basePath));
3453
+ executeJogging(cell, controller, executeJoggingRequest, options) {
3454
+ return localVarFp.executeJogging(cell, controller, executeJoggingRequest, options).then((request) => request(axios, basePath));
3373
3455
  },
3374
3456
  };
3375
3457
  };
@@ -3384,13 +3466,14 @@ export class JoggingApi extends BaseAPI {
3384
3466
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP (Tool Center Point). The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send InitializeJoggingRequest to configure the jogging. Sets robot controller mode to control mode. Sets rate and coordinate system for the jogging response. #### 2. Send JointVelocityRequest or TcpVelocityRequest to start the jogging motion. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with JointVelocityRequest or TcpVelocityRequest. - To stop the jogging motion, send zero velocities via either request. ### Responses - InitializeJoggingResponse is sent to signal the success or failure of the InitializeJoggingRequest. - Jogging responses are streamed continuously after an InitializeJoggingRequest is processed. Jogging responses contain the robot controller state and the state of the jogging control. - JoggingErrorResponse with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the JoggingResponse, verify that the robot control is in the desired state, e.g. standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops.
3385
3467
  * @summary Execute Jogging
3386
3468
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3469
+ * @param {string} controller Unique identifier to address a controller in the cell.
3387
3470
  * @param {ExecuteJoggingRequest} executeJoggingRequest
3388
3471
  * @param {*} [options] Override http request option.
3389
3472
  * @throws {RequiredError}
3390
3473
  * @memberof JoggingApi
3391
3474
  */
3392
- executeJogging(cell, executeJoggingRequest, options) {
3393
- return JoggingApiFp(this.configuration).executeJogging(cell, executeJoggingRequest, options).then((request) => request(this.axios, this.basePath));
3475
+ executeJogging(cell, controller, executeJoggingRequest, options) {
3476
+ return JoggingApiFp(this.configuration).executeJogging(cell, controller, executeJoggingRequest, options).then((request) => request(this.axios, this.basePath));
3394
3477
  }
3395
3478
  }
3396
3479
  /**
@@ -3802,18 +3885,22 @@ export const MotionGroupApiAxiosParamCreator = function (configuration) {
3802
3885
  * Returns the current state of the selected motion group including the current joint position, velocity, pose, and more.
3803
3886
  * @summary State
3804
3887
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3888
+ * @param {string} controller Unique identifier to address a controller in the cell.
3805
3889
  * @param {string} motionGroup The motion-group identifier.
3806
3890
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the responses should be converted. If not set, world coordinate system is used.
3807
3891
  * @param {*} [options] Override http request option.
3808
3892
  * @throws {RequiredError}
3809
3893
  */
3810
- getCurrentMotionGroupState: async (cell, motionGroup, responseCoordinateSystem, options = {}) => {
3894
+ getCurrentMotionGroupState: async (cell, controller, motionGroup, responseCoordinateSystem, options = {}) => {
3811
3895
  // verify required parameter 'cell' is not null or undefined
3812
3896
  assertParamExists('getCurrentMotionGroupState', 'cell', cell);
3897
+ // verify required parameter 'controller' is not null or undefined
3898
+ assertParamExists('getCurrentMotionGroupState', 'controller', controller);
3813
3899
  // verify required parameter 'motionGroup' is not null or undefined
3814
3900
  assertParamExists('getCurrentMotionGroupState', 'motionGroup', motionGroup);
3815
- const localVarPath = `/cells/{cell}/motion-groups/{motion-group}/state`
3901
+ const localVarPath = `/cells/{cell}/controllers/{controller}/motion-groups/{motion-group}/state`
3816
3902
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
3903
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
3817
3904
  .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
3818
3905
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
3819
3906
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -3845,17 +3932,21 @@ export const MotionGroupApiAxiosParamCreator = function (configuration) {
3845
3932
  * Get the set of parameters that describe the motion group and its configuration including safety zones, limits, etc. This data might change upon connection to the robot.
3846
3933
  * @summary Description
3847
3934
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3935
+ * @param {string} controller Unique identifier to address a controller in the cell.
3848
3936
  * @param {string} motionGroup The motion-group identifier.
3849
3937
  * @param {*} [options] Override http request option.
3850
3938
  * @throws {RequiredError}
3851
3939
  */
3852
- getMotionGroupDescription: async (cell, motionGroup, options = {}) => {
3940
+ getMotionGroupDescription: async (cell, controller, motionGroup, options = {}) => {
3853
3941
  // verify required parameter 'cell' is not null or undefined
3854
3942
  assertParamExists('getMotionGroupDescription', 'cell', cell);
3943
+ // verify required parameter 'controller' is not null or undefined
3944
+ assertParamExists('getMotionGroupDescription', 'controller', controller);
3855
3945
  // verify required parameter 'motionGroup' is not null or undefined
3856
3946
  assertParamExists('getMotionGroupDescription', 'motionGroup', motionGroup);
3857
- const localVarPath = `/cells/{cell}/motion-groups/{motion-group}/description`
3947
+ const localVarPath = `/cells/{cell}/controllers/{controller}/motion-groups/{motion-group}/description`
3858
3948
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
3949
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
3859
3950
  .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
3860
3951
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
3861
3952
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -3884,19 +3975,23 @@ export const MotionGroupApiAxiosParamCreator = function (configuration) {
3884
3975
  * <!-- theme: danger --> > Websocket endpoint Receive updates of the motion group state. The stream will be closed from the server if the controller is disconnected.
3885
3976
  * @summary Stream State
3886
3977
  * @param {string} cell Unique identifier addressing a cell in all API calls.
3978
+ * @param {string} controller Unique identifier to address a controller in the cell.
3887
3979
  * @param {string} motionGroup The motion-group identifier.
3888
3980
  * @param {number} [responseRate] Update rate for the response message in milliseconds (ms). Default is 200 ms. We recommend to use the step rate of the controller or a multiple of the step rate as NOVA updates the state in the controller\&#39;s step rate as well. Minimal response rate is the step rate of controller.
3889
3981
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the cartesian data of the responses should be converted. Default is the world coordinate system.
3890
3982
  * @param {*} [options] Override http request option.
3891
3983
  * @throws {RequiredError}
3892
3984
  */
3893
- streamMotionGroupState: async (cell, motionGroup, responseRate, responseCoordinateSystem, options = {}) => {
3985
+ streamMotionGroupState: async (cell, controller, motionGroup, responseRate, responseCoordinateSystem, options = {}) => {
3894
3986
  // verify required parameter 'cell' is not null or undefined
3895
3987
  assertParamExists('streamMotionGroupState', 'cell', cell);
3988
+ // verify required parameter 'controller' is not null or undefined
3989
+ assertParamExists('streamMotionGroupState', 'controller', controller);
3896
3990
  // verify required parameter 'motionGroup' is not null or undefined
3897
3991
  assertParamExists('streamMotionGroupState', 'motionGroup', motionGroup);
3898
- const localVarPath = `/cells/{cell}/motion-groups/{motion-group}/state-stream`
3992
+ const localVarPath = `/cells/{cell}/controllers/{controller}/motion-groups/{motion-group}/state-stream`
3899
3993
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
3994
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
3900
3995
  .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
3901
3996
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
3902
3997
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -3940,13 +4035,14 @@ export const MotionGroupApiFp = function (configuration) {
3940
4035
  * Returns the current state of the selected motion group including the current joint position, velocity, pose, and more.
3941
4036
  * @summary State
3942
4037
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4038
+ * @param {string} controller Unique identifier to address a controller in the cell.
3943
4039
  * @param {string} motionGroup The motion-group identifier.
3944
4040
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the responses should be converted. If not set, world coordinate system is used.
3945
4041
  * @param {*} [options] Override http request option.
3946
4042
  * @throws {RequiredError}
3947
4043
  */
3948
- async getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options) {
3949
- const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options);
4044
+ async getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options) {
4045
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options);
3950
4046
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3951
4047
  const localVarOperationServerBasePath = operationServerMap['MotionGroupApi.getCurrentMotionGroupState']?.[localVarOperationServerIndex]?.url;
3952
4048
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -3955,12 +4051,13 @@ export const MotionGroupApiFp = function (configuration) {
3955
4051
  * Get the set of parameters that describe the motion group and its configuration including safety zones, limits, etc. This data might change upon connection to the robot.
3956
4052
  * @summary Description
3957
4053
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4054
+ * @param {string} controller Unique identifier to address a controller in the cell.
3958
4055
  * @param {string} motionGroup The motion-group identifier.
3959
4056
  * @param {*} [options] Override http request option.
3960
4057
  * @throws {RequiredError}
3961
4058
  */
3962
- async getMotionGroupDescription(cell, motionGroup, options) {
3963
- const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroupDescription(cell, motionGroup, options);
4059
+ async getMotionGroupDescription(cell, controller, motionGroup, options) {
4060
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroupDescription(cell, controller, motionGroup, options);
3964
4061
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3965
4062
  const localVarOperationServerBasePath = operationServerMap['MotionGroupApi.getMotionGroupDescription']?.[localVarOperationServerIndex]?.url;
3966
4063
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -3969,14 +4066,15 @@ export const MotionGroupApiFp = function (configuration) {
3969
4066
  * <!-- theme: danger --> > Websocket endpoint Receive updates of the motion group state. The stream will be closed from the server if the controller is disconnected.
3970
4067
  * @summary Stream State
3971
4068
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4069
+ * @param {string} controller Unique identifier to address a controller in the cell.
3972
4070
  * @param {string} motionGroup The motion-group identifier.
3973
4071
  * @param {number} [responseRate] Update rate for the response message in milliseconds (ms). Default is 200 ms. We recommend to use the step rate of the controller or a multiple of the step rate as NOVA updates the state in the controller\&#39;s step rate as well. Minimal response rate is the step rate of controller.
3974
4072
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the cartesian data of the responses should be converted. Default is the world coordinate system.
3975
4073
  * @param {*} [options] Override http request option.
3976
4074
  * @throws {RequiredError}
3977
4075
  */
3978
- async streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options) {
3979
- const localVarAxiosArgs = await localVarAxiosParamCreator.streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options);
4076
+ async streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options) {
4077
+ const localVarAxiosArgs = await localVarAxiosParamCreator.streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options);
3980
4078
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
3981
4079
  const localVarOperationServerBasePath = operationServerMap['MotionGroupApi.streamMotionGroupState']?.[localVarOperationServerIndex]?.url;
3982
4080
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -3994,37 +4092,40 @@ export const MotionGroupApiFactory = function (configuration, basePath, axios) {
3994
4092
  * Returns the current state of the selected motion group including the current joint position, velocity, pose, and more.
3995
4093
  * @summary State
3996
4094
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4095
+ * @param {string} controller Unique identifier to address a controller in the cell.
3997
4096
  * @param {string} motionGroup The motion-group identifier.
3998
4097
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the responses should be converted. If not set, world coordinate system is used.
3999
4098
  * @param {*} [options] Override http request option.
4000
4099
  * @throws {RequiredError}
4001
4100
  */
4002
- getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options) {
4003
- return localVarFp.getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options).then((request) => request(axios, basePath));
4101
+ getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options) {
4102
+ return localVarFp.getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options).then((request) => request(axios, basePath));
4004
4103
  },
4005
4104
  /**
4006
4105
  * Get the set of parameters that describe the motion group and its configuration including safety zones, limits, etc. This data might change upon connection to the robot.
4007
4106
  * @summary Description
4008
4107
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4108
+ * @param {string} controller Unique identifier to address a controller in the cell.
4009
4109
  * @param {string} motionGroup The motion-group identifier.
4010
4110
  * @param {*} [options] Override http request option.
4011
4111
  * @throws {RequiredError}
4012
4112
  */
4013
- getMotionGroupDescription(cell, motionGroup, options) {
4014
- return localVarFp.getMotionGroupDescription(cell, motionGroup, options).then((request) => request(axios, basePath));
4113
+ getMotionGroupDescription(cell, controller, motionGroup, options) {
4114
+ return localVarFp.getMotionGroupDescription(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
4015
4115
  },
4016
4116
  /**
4017
4117
  * <!-- theme: danger --> > Websocket endpoint Receive updates of the motion group state. The stream will be closed from the server if the controller is disconnected.
4018
4118
  * @summary Stream State
4019
4119
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4120
+ * @param {string} controller Unique identifier to address a controller in the cell.
4020
4121
  * @param {string} motionGroup The motion-group identifier.
4021
4122
  * @param {number} [responseRate] Update rate for the response message in milliseconds (ms). Default is 200 ms. We recommend to use the step rate of the controller or a multiple of the step rate as NOVA updates the state in the controller\&#39;s step rate as well. Minimal response rate is the step rate of controller.
4022
4123
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the cartesian data of the responses should be converted. Default is the world coordinate system.
4023
4124
  * @param {*} [options] Override http request option.
4024
4125
  * @throws {RequiredError}
4025
4126
  */
4026
- streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options) {
4027
- return localVarFp.streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options).then((request) => request(axios, basePath));
4127
+ streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options) {
4128
+ return localVarFp.streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options).then((request) => request(axios, basePath));
4028
4129
  },
4029
4130
  };
4030
4131
  };
@@ -4039,31 +4140,34 @@ export class MotionGroupApi extends BaseAPI {
4039
4140
  * Returns the current state of the selected motion group including the current joint position, velocity, pose, and more.
4040
4141
  * @summary State
4041
4142
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4143
+ * @param {string} controller Unique identifier to address a controller in the cell.
4042
4144
  * @param {string} motionGroup The motion-group identifier.
4043
4145
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the responses should be converted. If not set, world coordinate system is used.
4044
4146
  * @param {*} [options] Override http request option.
4045
4147
  * @throws {RequiredError}
4046
4148
  * @memberof MotionGroupApi
4047
4149
  */
4048
- getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options) {
4049
- return MotionGroupApiFp(this.configuration).getCurrentMotionGroupState(cell, motionGroup, responseCoordinateSystem, options).then((request) => request(this.axios, this.basePath));
4150
+ getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options) {
4151
+ return MotionGroupApiFp(this.configuration).getCurrentMotionGroupState(cell, controller, motionGroup, responseCoordinateSystem, options).then((request) => request(this.axios, this.basePath));
4050
4152
  }
4051
4153
  /**
4052
4154
  * Get the set of parameters that describe the motion group and its configuration including safety zones, limits, etc. This data might change upon connection to the robot.
4053
4155
  * @summary Description
4054
4156
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4157
+ * @param {string} controller Unique identifier to address a controller in the cell.
4055
4158
  * @param {string} motionGroup The motion-group identifier.
4056
4159
  * @param {*} [options] Override http request option.
4057
4160
  * @throws {RequiredError}
4058
4161
  * @memberof MotionGroupApi
4059
4162
  */
4060
- getMotionGroupDescription(cell, motionGroup, options) {
4061
- return MotionGroupApiFp(this.configuration).getMotionGroupDescription(cell, motionGroup, options).then((request) => request(this.axios, this.basePath));
4163
+ getMotionGroupDescription(cell, controller, motionGroup, options) {
4164
+ return MotionGroupApiFp(this.configuration).getMotionGroupDescription(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
4062
4165
  }
4063
4166
  /**
4064
4167
  * <!-- theme: danger --> > Websocket endpoint Receive updates of the motion group state. The stream will be closed from the server if the controller is disconnected.
4065
4168
  * @summary Stream State
4066
4169
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4170
+ * @param {string} controller Unique identifier to address a controller in the cell.
4067
4171
  * @param {string} motionGroup The motion-group identifier.
4068
4172
  * @param {number} [responseRate] Update rate for the response message in milliseconds (ms). Default is 200 ms. We recommend to use the step rate of the controller or a multiple of the step rate as NOVA updates the state in the controller\&#39;s step rate as well. Minimal response rate is the step rate of controller.
4069
4173
  * @param {string} [responseCoordinateSystem] Unique identifier addressing a coordinate system to which the cartesian data of the responses should be converted. Default is the world coordinate system.
@@ -4071,8 +4175,8 @@ export class MotionGroupApi extends BaseAPI {
4071
4175
  * @throws {RequiredError}
4072
4176
  * @memberof MotionGroupApi
4073
4177
  */
4074
- streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options) {
4075
- return MotionGroupApiFp(this.configuration).streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options).then((request) => request(this.axios, this.basePath));
4178
+ streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options) {
4179
+ return MotionGroupApiFp(this.configuration).streamMotionGroupState(cell, controller, motionGroup, responseRate, responseCoordinateSystem, options).then((request) => request(this.axios, this.basePath));
4076
4180
  }
4077
4181
  }
4078
4182
  /**
@@ -6698,17 +6802,21 @@ export const TrajectoryCachingApiAxiosParamCreator = function (configuration) {
6698
6802
  * <!-- theme: info --> > Using the trajectory cache is an optional performance optimization. It is not necessary to use the cache to execute trajectories. Loads and validates the data of a trajectory into the execution cache, rendering the trajectory executable. The response contains the result of the validation of the trajectory. Validation can lead to three different results: - Fully valid: The whole trajectory can be executed from start to end. The response will contain an unique identifier which is used to move the robot. - Partially valid: Only parts of the trajectory can be executed. The response will contain an unique identifier to move the robot and information about the failure for the part that is not executable. - Invalid: The trajectory can not be executed. The response will tell you the reason of failure. If the trajectory is at least partially valid, the parts of the trajectory that are valid can be executed using the [executeTrajectory](executeTrajectory) endpoint. The workflow is as follows: - Generate a trajectory with [planTrajectory](planTrajectory) or your own motion planner, - Send the trajectory to this endpoint to validate it and get a unique identifier for it, - The unique identifier will appear in the list of available trajectories, see [listTrajectories](listTrajectories) endpoint, if it is at least partially executable. - Execute your trajectory using the [executeTrajectory](executeTrajectory) endpoint.
6699
6803
  * @summary Add Trajectory
6700
6804
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6805
+ * @param {string} controller Unique identifier to address a controller in the cell.
6701
6806
  * @param {AddTrajectoryRequest} addTrajectoryRequest
6702
6807
  * @param {*} [options] Override http request option.
6703
6808
  * @throws {RequiredError}
6704
6809
  */
6705
- addTrajectory: async (cell, addTrajectoryRequest, options = {}) => {
6810
+ addTrajectory: async (cell, controller, addTrajectoryRequest, options = {}) => {
6706
6811
  // verify required parameter 'cell' is not null or undefined
6707
6812
  assertParamExists('addTrajectory', 'cell', cell);
6813
+ // verify required parameter 'controller' is not null or undefined
6814
+ assertParamExists('addTrajectory', 'controller', controller);
6708
6815
  // verify required parameter 'addTrajectoryRequest' is not null or undefined
6709
6816
  assertParamExists('addTrajectory', 'addTrajectoryRequest', addTrajectoryRequest);
6710
- const localVarPath = `/cells/{cell}/trajectories`
6711
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6817
+ const localVarPath = `/cells/{cell}/controllers/{controller}/trajectories`
6818
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6819
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
6712
6820
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
6713
6821
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6714
6822
  let baseOptions;
@@ -6738,14 +6846,18 @@ export const TrajectoryCachingApiAxiosParamCreator = function (configuration) {
6738
6846
  * Clear the trajectory cache.
6739
6847
  * @summary Clear Trajectories
6740
6848
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6849
+ * @param {string} controller Unique identifier to address a controller in the cell.
6741
6850
  * @param {*} [options] Override http request option.
6742
6851
  * @throws {RequiredError}
6743
6852
  */
6744
- clearTrajectories: async (cell, options = {}) => {
6853
+ clearTrajectories: async (cell, controller, options = {}) => {
6745
6854
  // verify required parameter 'cell' is not null or undefined
6746
6855
  assertParamExists('clearTrajectories', 'cell', cell);
6747
- const localVarPath = `/cells/{cell}/trajectories`
6748
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6856
+ // verify required parameter 'controller' is not null or undefined
6857
+ assertParamExists('clearTrajectories', 'controller', controller);
6858
+ const localVarPath = `/cells/{cell}/controllers/{controller}/trajectories`
6859
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6860
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
6749
6861
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
6750
6862
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6751
6863
  let baseOptions;
@@ -6773,17 +6885,21 @@ export const TrajectoryCachingApiAxiosParamCreator = function (configuration) {
6773
6885
  * Delete a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories. Trajectories are removed automatically if the motion group or the corresponding controller is disconnected.
6774
6886
  * @summary Delete Trajectory
6775
6887
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6888
+ * @param {string} controller Unique identifier to address a controller in the cell.
6776
6889
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
6777
6890
  * @param {*} [options] Override http request option.
6778
6891
  * @throws {RequiredError}
6779
6892
  */
6780
- deleteTrajectory: async (cell, trajectory, options = {}) => {
6893
+ deleteTrajectory: async (cell, controller, trajectory, options = {}) => {
6781
6894
  // verify required parameter 'cell' is not null or undefined
6782
6895
  assertParamExists('deleteTrajectory', 'cell', cell);
6896
+ // verify required parameter 'controller' is not null or undefined
6897
+ assertParamExists('deleteTrajectory', 'controller', controller);
6783
6898
  // verify required parameter 'trajectory' is not null or undefined
6784
6899
  assertParamExists('deleteTrajectory', 'trajectory', trajectory);
6785
- const localVarPath = `/cells/{cell}/trajectories/{trajectory}`
6900
+ const localVarPath = `/cells/{cell}/controllers/{controller}/trajectories/{trajectory}`
6786
6901
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6902
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
6787
6903
  .replace(`{${"trajectory"}}`, encodeURIComponent(String(trajectory)));
6788
6904
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
6789
6905
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -6812,17 +6928,21 @@ export const TrajectoryCachingApiAxiosParamCreator = function (configuration) {
6812
6928
  * Get a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories.
6813
6929
  * @summary Get Trajectory
6814
6930
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6931
+ * @param {string} controller Unique identifier to address a controller in the cell.
6815
6932
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
6816
6933
  * @param {*} [options] Override http request option.
6817
6934
  * @throws {RequiredError}
6818
6935
  */
6819
- getTrajectory: async (cell, trajectory, options = {}) => {
6936
+ getTrajectory: async (cell, controller, trajectory, options = {}) => {
6820
6937
  // verify required parameter 'cell' is not null or undefined
6821
6938
  assertParamExists('getTrajectory', 'cell', cell);
6939
+ // verify required parameter 'controller' is not null or undefined
6940
+ assertParamExists('getTrajectory', 'controller', controller);
6822
6941
  // verify required parameter 'trajectory' is not null or undefined
6823
6942
  assertParamExists('getTrajectory', 'trajectory', trajectory);
6824
- const localVarPath = `/cells/{cell}/trajectories/{trajectory}`
6943
+ const localVarPath = `/cells/{cell}/controllers/{controller}/trajectories/{trajectory}`
6825
6944
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6945
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
6826
6946
  .replace(`{${"trajectory"}}`, encodeURIComponent(String(trajectory)));
6827
6947
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
6828
6948
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -6851,14 +6971,18 @@ export const TrajectoryCachingApiAxiosParamCreator = function (configuration) {
6851
6971
  * List currently cached trajectories. Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them. Trajectories are removed if the corresponding motion group or controller disconnects.
6852
6972
  * @summary List Trajectories
6853
6973
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6974
+ * @param {string} controller Unique identifier to address a controller in the cell.
6854
6975
  * @param {*} [options] Override http request option.
6855
6976
  * @throws {RequiredError}
6856
6977
  */
6857
- listTrajectories: async (cell, options = {}) => {
6978
+ listTrajectories: async (cell, controller, options = {}) => {
6858
6979
  // verify required parameter 'cell' is not null or undefined
6859
6980
  assertParamExists('listTrajectories', 'cell', cell);
6860
- const localVarPath = `/cells/{cell}/trajectories`
6861
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6981
+ // verify required parameter 'controller' is not null or undefined
6982
+ assertParamExists('listTrajectories', 'controller', controller);
6983
+ const localVarPath = `/cells/{cell}/controllers/{controller}/trajectories`
6984
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6985
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
6862
6986
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
6863
6987
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6864
6988
  let baseOptions;
@@ -6895,12 +7019,13 @@ export const TrajectoryCachingApiFp = function (configuration) {
6895
7019
  * <!-- theme: info --> > Using the trajectory cache is an optional performance optimization. It is not necessary to use the cache to execute trajectories. Loads and validates the data of a trajectory into the execution cache, rendering the trajectory executable. The response contains the result of the validation of the trajectory. Validation can lead to three different results: - Fully valid: The whole trajectory can be executed from start to end. The response will contain an unique identifier which is used to move the robot. - Partially valid: Only parts of the trajectory can be executed. The response will contain an unique identifier to move the robot and information about the failure for the part that is not executable. - Invalid: The trajectory can not be executed. The response will tell you the reason of failure. If the trajectory is at least partially valid, the parts of the trajectory that are valid can be executed using the [executeTrajectory](executeTrajectory) endpoint. The workflow is as follows: - Generate a trajectory with [planTrajectory](planTrajectory) or your own motion planner, - Send the trajectory to this endpoint to validate it and get a unique identifier for it, - The unique identifier will appear in the list of available trajectories, see [listTrajectories](listTrajectories) endpoint, if it is at least partially executable. - Execute your trajectory using the [executeTrajectory](executeTrajectory) endpoint.
6896
7020
  * @summary Add Trajectory
6897
7021
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7022
+ * @param {string} controller Unique identifier to address a controller in the cell.
6898
7023
  * @param {AddTrajectoryRequest} addTrajectoryRequest
6899
7024
  * @param {*} [options] Override http request option.
6900
7025
  * @throws {RequiredError}
6901
7026
  */
6902
- async addTrajectory(cell, addTrajectoryRequest, options) {
6903
- const localVarAxiosArgs = await localVarAxiosParamCreator.addTrajectory(cell, addTrajectoryRequest, options);
7027
+ async addTrajectory(cell, controller, addTrajectoryRequest, options) {
7028
+ const localVarAxiosArgs = await localVarAxiosParamCreator.addTrajectory(cell, controller, addTrajectoryRequest, options);
6904
7029
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6905
7030
  const localVarOperationServerBasePath = operationServerMap['TrajectoryCachingApi.addTrajectory']?.[localVarOperationServerIndex]?.url;
6906
7031
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -6909,11 +7034,12 @@ export const TrajectoryCachingApiFp = function (configuration) {
6909
7034
  * Clear the trajectory cache.
6910
7035
  * @summary Clear Trajectories
6911
7036
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7037
+ * @param {string} controller Unique identifier to address a controller in the cell.
6912
7038
  * @param {*} [options] Override http request option.
6913
7039
  * @throws {RequiredError}
6914
7040
  */
6915
- async clearTrajectories(cell, options) {
6916
- const localVarAxiosArgs = await localVarAxiosParamCreator.clearTrajectories(cell, options);
7041
+ async clearTrajectories(cell, controller, options) {
7042
+ const localVarAxiosArgs = await localVarAxiosParamCreator.clearTrajectories(cell, controller, options);
6917
7043
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6918
7044
  const localVarOperationServerBasePath = operationServerMap['TrajectoryCachingApi.clearTrajectories']?.[localVarOperationServerIndex]?.url;
6919
7045
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -6922,12 +7048,13 @@ export const TrajectoryCachingApiFp = function (configuration) {
6922
7048
  * Delete a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories. Trajectories are removed automatically if the motion group or the corresponding controller is disconnected.
6923
7049
  * @summary Delete Trajectory
6924
7050
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7051
+ * @param {string} controller Unique identifier to address a controller in the cell.
6925
7052
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
6926
7053
  * @param {*} [options] Override http request option.
6927
7054
  * @throws {RequiredError}
6928
7055
  */
6929
- async deleteTrajectory(cell, trajectory, options) {
6930
- const localVarAxiosArgs = await localVarAxiosParamCreator.deleteTrajectory(cell, trajectory, options);
7056
+ async deleteTrajectory(cell, controller, trajectory, options) {
7057
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteTrajectory(cell, controller, trajectory, options);
6931
7058
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6932
7059
  const localVarOperationServerBasePath = operationServerMap['TrajectoryCachingApi.deleteTrajectory']?.[localVarOperationServerIndex]?.url;
6933
7060
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -6936,12 +7063,13 @@ export const TrajectoryCachingApiFp = function (configuration) {
6936
7063
  * Get a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories.
6937
7064
  * @summary Get Trajectory
6938
7065
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7066
+ * @param {string} controller Unique identifier to address a controller in the cell.
6939
7067
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
6940
7068
  * @param {*} [options] Override http request option.
6941
7069
  * @throws {RequiredError}
6942
7070
  */
6943
- async getTrajectory(cell, trajectory, options) {
6944
- const localVarAxiosArgs = await localVarAxiosParamCreator.getTrajectory(cell, trajectory, options);
7071
+ async getTrajectory(cell, controller, trajectory, options) {
7072
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getTrajectory(cell, controller, trajectory, options);
6945
7073
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6946
7074
  const localVarOperationServerBasePath = operationServerMap['TrajectoryCachingApi.getTrajectory']?.[localVarOperationServerIndex]?.url;
6947
7075
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -6950,11 +7078,12 @@ export const TrajectoryCachingApiFp = function (configuration) {
6950
7078
  * List currently cached trajectories. Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them. Trajectories are removed if the corresponding motion group or controller disconnects.
6951
7079
  * @summary List Trajectories
6952
7080
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7081
+ * @param {string} controller Unique identifier to address a controller in the cell.
6953
7082
  * @param {*} [options] Override http request option.
6954
7083
  * @throws {RequiredError}
6955
7084
  */
6956
- async listTrajectories(cell, options) {
6957
- const localVarAxiosArgs = await localVarAxiosParamCreator.listTrajectories(cell, options);
7085
+ async listTrajectories(cell, controller, options) {
7086
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listTrajectories(cell, controller, options);
6958
7087
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6959
7088
  const localVarOperationServerBasePath = operationServerMap['TrajectoryCachingApi.listTrajectories']?.[localVarOperationServerIndex]?.url;
6960
7089
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -6972,54 +7101,59 @@ export const TrajectoryCachingApiFactory = function (configuration, basePath, ax
6972
7101
  * <!-- theme: info --> > Using the trajectory cache is an optional performance optimization. It is not necessary to use the cache to execute trajectories. Loads and validates the data of a trajectory into the execution cache, rendering the trajectory executable. The response contains the result of the validation of the trajectory. Validation can lead to three different results: - Fully valid: The whole trajectory can be executed from start to end. The response will contain an unique identifier which is used to move the robot. - Partially valid: Only parts of the trajectory can be executed. The response will contain an unique identifier to move the robot and information about the failure for the part that is not executable. - Invalid: The trajectory can not be executed. The response will tell you the reason of failure. If the trajectory is at least partially valid, the parts of the trajectory that are valid can be executed using the [executeTrajectory](executeTrajectory) endpoint. The workflow is as follows: - Generate a trajectory with [planTrajectory](planTrajectory) or your own motion planner, - Send the trajectory to this endpoint to validate it and get a unique identifier for it, - The unique identifier will appear in the list of available trajectories, see [listTrajectories](listTrajectories) endpoint, if it is at least partially executable. - Execute your trajectory using the [executeTrajectory](executeTrajectory) endpoint.
6973
7102
  * @summary Add Trajectory
6974
7103
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7104
+ * @param {string} controller Unique identifier to address a controller in the cell.
6975
7105
  * @param {AddTrajectoryRequest} addTrajectoryRequest
6976
7106
  * @param {*} [options] Override http request option.
6977
7107
  * @throws {RequiredError}
6978
7108
  */
6979
- addTrajectory(cell, addTrajectoryRequest, options) {
6980
- return localVarFp.addTrajectory(cell, addTrajectoryRequest, options).then((request) => request(axios, basePath));
7109
+ addTrajectory(cell, controller, addTrajectoryRequest, options) {
7110
+ return localVarFp.addTrajectory(cell, controller, addTrajectoryRequest, options).then((request) => request(axios, basePath));
6981
7111
  },
6982
7112
  /**
6983
7113
  * Clear the trajectory cache.
6984
7114
  * @summary Clear Trajectories
6985
7115
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7116
+ * @param {string} controller Unique identifier to address a controller in the cell.
6986
7117
  * @param {*} [options] Override http request option.
6987
7118
  * @throws {RequiredError}
6988
7119
  */
6989
- clearTrajectories(cell, options) {
6990
- return localVarFp.clearTrajectories(cell, options).then((request) => request(axios, basePath));
7120
+ clearTrajectories(cell, controller, options) {
7121
+ return localVarFp.clearTrajectories(cell, controller, options).then((request) => request(axios, basePath));
6991
7122
  },
6992
7123
  /**
6993
7124
  * Delete a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories. Trajectories are removed automatically if the motion group or the corresponding controller is disconnected.
6994
7125
  * @summary Delete Trajectory
6995
7126
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7127
+ * @param {string} controller Unique identifier to address a controller in the cell.
6996
7128
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
6997
7129
  * @param {*} [options] Override http request option.
6998
7130
  * @throws {RequiredError}
6999
7131
  */
7000
- deleteTrajectory(cell, trajectory, options) {
7001
- return localVarFp.deleteTrajectory(cell, trajectory, options).then((request) => request(axios, basePath));
7132
+ deleteTrajectory(cell, controller, trajectory, options) {
7133
+ return localVarFp.deleteTrajectory(cell, controller, trajectory, options).then((request) => request(axios, basePath));
7002
7134
  },
7003
7135
  /**
7004
7136
  * Get a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories.
7005
7137
  * @summary Get Trajectory
7006
7138
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7139
+ * @param {string} controller Unique identifier to address a controller in the cell.
7007
7140
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
7008
7141
  * @param {*} [options] Override http request option.
7009
7142
  * @throws {RequiredError}
7010
7143
  */
7011
- getTrajectory(cell, trajectory, options) {
7012
- return localVarFp.getTrajectory(cell, trajectory, options).then((request) => request(axios, basePath));
7144
+ getTrajectory(cell, controller, trajectory, options) {
7145
+ return localVarFp.getTrajectory(cell, controller, trajectory, options).then((request) => request(axios, basePath));
7013
7146
  },
7014
7147
  /**
7015
7148
  * List currently cached trajectories. Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them. Trajectories are removed if the corresponding motion group or controller disconnects.
7016
7149
  * @summary List Trajectories
7017
7150
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7151
+ * @param {string} controller Unique identifier to address a controller in the cell.
7018
7152
  * @param {*} [options] Override http request option.
7019
7153
  * @throws {RequiredError}
7020
7154
  */
7021
- listTrajectories(cell, options) {
7022
- return localVarFp.listTrajectories(cell, options).then((request) => request(axios, basePath));
7155
+ listTrajectories(cell, controller, options) {
7156
+ return localVarFp.listTrajectories(cell, controller, options).then((request) => request(axios, basePath));
7023
7157
  },
7024
7158
  };
7025
7159
  };
@@ -7034,59 +7168,64 @@ export class TrajectoryCachingApi extends BaseAPI {
7034
7168
  * <!-- theme: info --> > Using the trajectory cache is an optional performance optimization. It is not necessary to use the cache to execute trajectories. Loads and validates the data of a trajectory into the execution cache, rendering the trajectory executable. The response contains the result of the validation of the trajectory. Validation can lead to three different results: - Fully valid: The whole trajectory can be executed from start to end. The response will contain an unique identifier which is used to move the robot. - Partially valid: Only parts of the trajectory can be executed. The response will contain an unique identifier to move the robot and information about the failure for the part that is not executable. - Invalid: The trajectory can not be executed. The response will tell you the reason of failure. If the trajectory is at least partially valid, the parts of the trajectory that are valid can be executed using the [executeTrajectory](executeTrajectory) endpoint. The workflow is as follows: - Generate a trajectory with [planTrajectory](planTrajectory) or your own motion planner, - Send the trajectory to this endpoint to validate it and get a unique identifier for it, - The unique identifier will appear in the list of available trajectories, see [listTrajectories](listTrajectories) endpoint, if it is at least partially executable. - Execute your trajectory using the [executeTrajectory](executeTrajectory) endpoint.
7035
7169
  * @summary Add Trajectory
7036
7170
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7171
+ * @param {string} controller Unique identifier to address a controller in the cell.
7037
7172
  * @param {AddTrajectoryRequest} addTrajectoryRequest
7038
7173
  * @param {*} [options] Override http request option.
7039
7174
  * @throws {RequiredError}
7040
7175
  * @memberof TrajectoryCachingApi
7041
7176
  */
7042
- addTrajectory(cell, addTrajectoryRequest, options) {
7043
- return TrajectoryCachingApiFp(this.configuration).addTrajectory(cell, addTrajectoryRequest, options).then((request) => request(this.axios, this.basePath));
7177
+ addTrajectory(cell, controller, addTrajectoryRequest, options) {
7178
+ return TrajectoryCachingApiFp(this.configuration).addTrajectory(cell, controller, addTrajectoryRequest, options).then((request) => request(this.axios, this.basePath));
7044
7179
  }
7045
7180
  /**
7046
7181
  * Clear the trajectory cache.
7047
7182
  * @summary Clear Trajectories
7048
7183
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7184
+ * @param {string} controller Unique identifier to address a controller in the cell.
7049
7185
  * @param {*} [options] Override http request option.
7050
7186
  * @throws {RequiredError}
7051
7187
  * @memberof TrajectoryCachingApi
7052
7188
  */
7053
- clearTrajectories(cell, options) {
7054
- return TrajectoryCachingApiFp(this.configuration).clearTrajectories(cell, options).then((request) => request(this.axios, this.basePath));
7189
+ clearTrajectories(cell, controller, options) {
7190
+ return TrajectoryCachingApiFp(this.configuration).clearTrajectories(cell, controller, options).then((request) => request(this.axios, this.basePath));
7055
7191
  }
7056
7192
  /**
7057
7193
  * Delete a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories. Trajectories are removed automatically if the motion group or the corresponding controller is disconnected.
7058
7194
  * @summary Delete Trajectory
7059
7195
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7196
+ * @param {string} controller Unique identifier to address a controller in the cell.
7060
7197
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
7061
7198
  * @param {*} [options] Override http request option.
7062
7199
  * @throws {RequiredError}
7063
7200
  * @memberof TrajectoryCachingApi
7064
7201
  */
7065
- deleteTrajectory(cell, trajectory, options) {
7066
- return TrajectoryCachingApiFp(this.configuration).deleteTrajectory(cell, trajectory, options).then((request) => request(this.axios, this.basePath));
7202
+ deleteTrajectory(cell, controller, trajectory, options) {
7203
+ return TrajectoryCachingApiFp(this.configuration).deleteTrajectory(cell, controller, trajectory, options).then((request) => request(this.axios, this.basePath));
7067
7204
  }
7068
7205
  /**
7069
7206
  * Get a previously created trajectory from cache. Use [listTrajectories](listTrajectories) to list all cached trajectories.
7070
7207
  * @summary Get Trajectory
7071
7208
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7209
+ * @param {string} controller Unique identifier to address a controller in the cell.
7072
7210
  * @param {string} trajectory This represents the unique identifier of a trajectory. Every executable or partially executable trajectory is cached and an unique identifier is returned. Indicate the unique identifier to execute the trajectory or retrieve information on the trajectory.
7073
7211
  * @param {*} [options] Override http request option.
7074
7212
  * @throws {RequiredError}
7075
7213
  * @memberof TrajectoryCachingApi
7076
7214
  */
7077
- getTrajectory(cell, trajectory, options) {
7078
- return TrajectoryCachingApiFp(this.configuration).getTrajectory(cell, trajectory, options).then((request) => request(this.axios, this.basePath));
7215
+ getTrajectory(cell, controller, trajectory, options) {
7216
+ return TrajectoryCachingApiFp(this.configuration).getTrajectory(cell, controller, trajectory, options).then((request) => request(this.axios, this.basePath));
7079
7217
  }
7080
7218
  /**
7081
7219
  * List currently cached trajectories. Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them. Trajectories are removed if the corresponding motion group or controller disconnects.
7082
7220
  * @summary List Trajectories
7083
7221
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7222
+ * @param {string} controller Unique identifier to address a controller in the cell.
7084
7223
  * @param {*} [options] Override http request option.
7085
7224
  * @throws {RequiredError}
7086
7225
  * @memberof TrajectoryCachingApi
7087
7226
  */
7088
- listTrajectories(cell, options) {
7089
- return TrajectoryCachingApiFp(this.configuration).listTrajectories(cell, options).then((request) => request(this.axios, this.basePath));
7227
+ listTrajectories(cell, controller, options) {
7228
+ return TrajectoryCachingApiFp(this.configuration).listTrajectories(cell, controller, options).then((request) => request(this.axios, this.basePath));
7090
7229
  }
7091
7230
  }
7092
7231
  /**
@@ -7099,17 +7238,21 @@ export const TrajectoryExecutionApiAxiosParamCreator = function (configuration)
7099
7238
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a previously planned trajectory. Enables the caller to attach input/output actions to the trajectory. Understanding the concept of location: The location or path parameter specifies the exact position along a trajectory. The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g. line, p2p, etc. See [planMotion](planMotion). Each integer value of the location corresponds to one motion command, e.g. 3.0 to 3.999 could be a line. ### Preconditions - The motion group\'s control mode is not claimed by any other endpoint. - The motion group\'s joint position are at start location specified with InitializeMovementRequest. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send InitializeMovementRequest to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time and not unlocked anymore. To execute another trajectory, a new connection must be established. #### 2. Send StartMovementRequest to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send PauseMovementRequest before the movement has reached its end location. - Change the movement\'s velocity with PlaybackSpeedRequest after initializing the movement with InitializeMovementRequest. ### Responses - InitializeMovementResponse is sent to signal the success or failure of the InitializeMovementRequest. - Movement responses are streamed after a StartMovementRequest successfully started the movement. Movement responses are streamed in a rate that is defined as the multiple of the controller step-rate closest to but not exceeding the rate configured by InitializeMovementRequest. - Standstill reponse is sent once the movement has finished or has come to a standstill due to a pause. - PauseMovementResponse is sent to signal the success of the PauseMovementRequest. It does not signal the end of the movement. End of movement is signaled by Standstill reponse . - PlaybackSpeedResponse is sent to signal the success of the PlaybackSpeedRequest. - MovementError with error details is sent in case of an unexpected error, e.g. controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending PauseMovementRequest and StartMovementRequest. - Send PlaybackSpeedRequest before StartMovementRequest to reduce the velocity of the movement before it starts. - Send PlaybackSpeedRequest repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send PlaybackSpeedRequest with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending StartMovementRequest after the movement has finished.
7100
7239
  * @summary Execute Trajectory
7101
7240
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7241
+ * @param {string} controller Unique identifier to address a controller in the cell.
7102
7242
  * @param {ExecuteTrajectoryRequest} executeTrajectoryRequest
7103
7243
  * @param {*} [options] Override http request option.
7104
7244
  * @throws {RequiredError}
7105
7245
  */
7106
- executeTrajectory: async (cell, executeTrajectoryRequest, options = {}) => {
7246
+ executeTrajectory: async (cell, controller, executeTrajectoryRequest, options = {}) => {
7107
7247
  // verify required parameter 'cell' is not null or undefined
7108
7248
  assertParamExists('executeTrajectory', 'cell', cell);
7249
+ // verify required parameter 'controller' is not null or undefined
7250
+ assertParamExists('executeTrajectory', 'controller', controller);
7109
7251
  // verify required parameter 'executeTrajectoryRequest' is not null or undefined
7110
7252
  assertParamExists('executeTrajectory', 'executeTrajectoryRequest', executeTrajectoryRequest);
7111
- const localVarPath = `/cells/{cell}/execution/trajectory`
7112
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
7253
+ const localVarPath = `/cells/{cell}/controllers/{controller}/execution/trajectory`
7254
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7255
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7113
7256
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7114
7257
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7115
7258
  let baseOptions;
@@ -7148,12 +7291,13 @@ export const TrajectoryExecutionApiFp = function (configuration) {
7148
7291
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a previously planned trajectory. Enables the caller to attach input/output actions to the trajectory. Understanding the concept of location: The location or path parameter specifies the exact position along a trajectory. The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g. line, p2p, etc. See [planMotion](planMotion). Each integer value of the location corresponds to one motion command, e.g. 3.0 to 3.999 could be a line. ### Preconditions - The motion group\'s control mode is not claimed by any other endpoint. - The motion group\'s joint position are at start location specified with InitializeMovementRequest. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send InitializeMovementRequest to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time and not unlocked anymore. To execute another trajectory, a new connection must be established. #### 2. Send StartMovementRequest to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send PauseMovementRequest before the movement has reached its end location. - Change the movement\'s velocity with PlaybackSpeedRequest after initializing the movement with InitializeMovementRequest. ### Responses - InitializeMovementResponse is sent to signal the success or failure of the InitializeMovementRequest. - Movement responses are streamed after a StartMovementRequest successfully started the movement. Movement responses are streamed in a rate that is defined as the multiple of the controller step-rate closest to but not exceeding the rate configured by InitializeMovementRequest. - Standstill reponse is sent once the movement has finished or has come to a standstill due to a pause. - PauseMovementResponse is sent to signal the success of the PauseMovementRequest. It does not signal the end of the movement. End of movement is signaled by Standstill reponse . - PlaybackSpeedResponse is sent to signal the success of the PlaybackSpeedRequest. - MovementError with error details is sent in case of an unexpected error, e.g. controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending PauseMovementRequest and StartMovementRequest. - Send PlaybackSpeedRequest before StartMovementRequest to reduce the velocity of the movement before it starts. - Send PlaybackSpeedRequest repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send PlaybackSpeedRequest with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending StartMovementRequest after the movement has finished.
7149
7292
  * @summary Execute Trajectory
7150
7293
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7294
+ * @param {string} controller Unique identifier to address a controller in the cell.
7151
7295
  * @param {ExecuteTrajectoryRequest} executeTrajectoryRequest
7152
7296
  * @param {*} [options] Override http request option.
7153
7297
  * @throws {RequiredError}
7154
7298
  */
7155
- async executeTrajectory(cell, executeTrajectoryRequest, options) {
7156
- const localVarAxiosArgs = await localVarAxiosParamCreator.executeTrajectory(cell, executeTrajectoryRequest, options);
7299
+ async executeTrajectory(cell, controller, executeTrajectoryRequest, options) {
7300
+ const localVarAxiosArgs = await localVarAxiosParamCreator.executeTrajectory(cell, controller, executeTrajectoryRequest, options);
7157
7301
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7158
7302
  const localVarOperationServerBasePath = operationServerMap['TrajectoryExecutionApi.executeTrajectory']?.[localVarOperationServerIndex]?.url;
7159
7303
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -7171,12 +7315,13 @@ export const TrajectoryExecutionApiFactory = function (configuration, basePath,
7171
7315
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a previously planned trajectory. Enables the caller to attach input/output actions to the trajectory. Understanding the concept of location: The location or path parameter specifies the exact position along a trajectory. The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g. line, p2p, etc. See [planMotion](planMotion). Each integer value of the location corresponds to one motion command, e.g. 3.0 to 3.999 could be a line. ### Preconditions - The motion group\'s control mode is not claimed by any other endpoint. - The motion group\'s joint position are at start location specified with InitializeMovementRequest. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send InitializeMovementRequest to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time and not unlocked anymore. To execute another trajectory, a new connection must be established. #### 2. Send StartMovementRequest to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send PauseMovementRequest before the movement has reached its end location. - Change the movement\'s velocity with PlaybackSpeedRequest after initializing the movement with InitializeMovementRequest. ### Responses - InitializeMovementResponse is sent to signal the success or failure of the InitializeMovementRequest. - Movement responses are streamed after a StartMovementRequest successfully started the movement. Movement responses are streamed in a rate that is defined as the multiple of the controller step-rate closest to but not exceeding the rate configured by InitializeMovementRequest. - Standstill reponse is sent once the movement has finished or has come to a standstill due to a pause. - PauseMovementResponse is sent to signal the success of the PauseMovementRequest. It does not signal the end of the movement. End of movement is signaled by Standstill reponse . - PlaybackSpeedResponse is sent to signal the success of the PlaybackSpeedRequest. - MovementError with error details is sent in case of an unexpected error, e.g. controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending PauseMovementRequest and StartMovementRequest. - Send PlaybackSpeedRequest before StartMovementRequest to reduce the velocity of the movement before it starts. - Send PlaybackSpeedRequest repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send PlaybackSpeedRequest with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending StartMovementRequest after the movement has finished.
7172
7316
  * @summary Execute Trajectory
7173
7317
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7318
+ * @param {string} controller Unique identifier to address a controller in the cell.
7174
7319
  * @param {ExecuteTrajectoryRequest} executeTrajectoryRequest
7175
7320
  * @param {*} [options] Override http request option.
7176
7321
  * @throws {RequiredError}
7177
7322
  */
7178
- executeTrajectory(cell, executeTrajectoryRequest, options) {
7179
- return localVarFp.executeTrajectory(cell, executeTrajectoryRequest, options).then((request) => request(axios, basePath));
7323
+ executeTrajectory(cell, controller, executeTrajectoryRequest, options) {
7324
+ return localVarFp.executeTrajectory(cell, controller, executeTrajectoryRequest, options).then((request) => request(axios, basePath));
7180
7325
  },
7181
7326
  };
7182
7327
  };
@@ -7191,13 +7336,14 @@ export class TrajectoryExecutionApi extends BaseAPI {
7191
7336
  * <!-- theme: danger --> > Websocket endpoint Provides execution control over a previously planned trajectory. Enables the caller to attach input/output actions to the trajectory. Understanding the concept of location: The location or path parameter specifies the exact position along a trajectory. The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g. line, p2p, etc. See [planMotion](planMotion). Each integer value of the location corresponds to one motion command, e.g. 3.0 to 3.999 could be a line. ### Preconditions - The motion group\'s control mode is not claimed by any other endpoint. - The motion group\'s joint position are at start location specified with InitializeMovementRequest. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send InitializeMovementRequest to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time and not unlocked anymore. To execute another trajectory, a new connection must be established. #### 2. Send StartMovementRequest to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send PauseMovementRequest before the movement has reached its end location. - Change the movement\'s velocity with PlaybackSpeedRequest after initializing the movement with InitializeMovementRequest. ### Responses - InitializeMovementResponse is sent to signal the success or failure of the InitializeMovementRequest. - Movement responses are streamed after a StartMovementRequest successfully started the movement. Movement responses are streamed in a rate that is defined as the multiple of the controller step-rate closest to but not exceeding the rate configured by InitializeMovementRequest. - Standstill reponse is sent once the movement has finished or has come to a standstill due to a pause. - PauseMovementResponse is sent to signal the success of the PauseMovementRequest. It does not signal the end of the movement. End of movement is signaled by Standstill reponse . - PlaybackSpeedResponse is sent to signal the success of the PlaybackSpeedRequest. - MovementError with error details is sent in case of an unexpected error, e.g. controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending PauseMovementRequest and StartMovementRequest. - Send PlaybackSpeedRequest before StartMovementRequest to reduce the velocity of the movement before it starts. - Send PlaybackSpeedRequest repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send PlaybackSpeedRequest with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending StartMovementRequest after the movement has finished.
7192
7337
  * @summary Execute Trajectory
7193
7338
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7339
+ * @param {string} controller Unique identifier to address a controller in the cell.
7194
7340
  * @param {ExecuteTrajectoryRequest} executeTrajectoryRequest
7195
7341
  * @param {*} [options] Override http request option.
7196
7342
  * @throws {RequiredError}
7197
7343
  * @memberof TrajectoryExecutionApi
7198
7344
  */
7199
- executeTrajectory(cell, executeTrajectoryRequest, options) {
7200
- return TrajectoryExecutionApiFp(this.configuration).executeTrajectory(cell, executeTrajectoryRequest, options).then((request) => request(this.axios, this.basePath));
7345
+ executeTrajectory(cell, controller, executeTrajectoryRequest, options) {
7346
+ return TrajectoryExecutionApiFp(this.configuration).executeTrajectory(cell, controller, executeTrajectoryRequest, options).then((request) => request(this.axios, this.basePath));
7201
7347
  }
7202
7348
  }
7203
7349
  /**
@@ -7310,38 +7456,41 @@ export class TrajectoryPlanningApi extends BaseAPI {
7310
7456
  }
7311
7457
  }
7312
7458
  /**
7313
- * VirtualRobotApi - axios parameter creator
7459
+ * VirtualControllerApi - axios parameter creator
7314
7460
  * @export
7315
7461
  */
7316
- export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7462
+ export const VirtualControllerApiAxiosParamCreator = function (configuration) {
7317
7463
  return {
7318
7464
  /**
7319
- * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
7320
- * @summary Get Motion Group State
7465
+ * Adds a coordinate system to the robot controller.
7466
+ * @summary Add Coordinate Systems
7321
7467
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7322
7468
  * @param {string} controller Unique identifier to address a controller in the cell.
7323
- * @param {string} motionGroup The motion-group identifier.
7469
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
7470
+ * @param {CoordinateSystemData} coordinateSystemData
7324
7471
  * @param {*} [options] Override http request option.
7325
7472
  * @throws {RequiredError}
7326
7473
  */
7327
- getMotionGroupState: async (cell, controller, motionGroup, options = {}) => {
7474
+ addVirtualRobotCoordinateSystem: async (cell, controller, coordinateSystem, coordinateSystemData, options = {}) => {
7328
7475
  // verify required parameter 'cell' is not null or undefined
7329
- assertParamExists('getMotionGroupState', 'cell', cell);
7476
+ assertParamExists('addVirtualRobotCoordinateSystem', 'cell', cell);
7330
7477
  // verify required parameter 'controller' is not null or undefined
7331
- assertParamExists('getMotionGroupState', 'controller', controller);
7332
- // verify required parameter 'motionGroup' is not null or undefined
7333
- assertParamExists('getMotionGroupState', 'motionGroup', motionGroup);
7334
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}`
7478
+ assertParamExists('addVirtualRobotCoordinateSystem', 'controller', controller);
7479
+ // verify required parameter 'coordinateSystem' is not null or undefined
7480
+ assertParamExists('addVirtualRobotCoordinateSystem', 'coordinateSystem', coordinateSystem);
7481
+ // verify required parameter 'coordinateSystemData' is not null or undefined
7482
+ assertParamExists('addVirtualRobotCoordinateSystem', 'coordinateSystemData', coordinateSystemData);
7483
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/coordinate-systems/{coordinate-system}`
7335
7484
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7336
7485
  .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7337
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
7486
+ .replace(`{${"coordinate-system"}}`, encodeURIComponent(String(coordinateSystem)));
7338
7487
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7339
7488
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7340
7489
  let baseOptions;
7341
7490
  if (configuration) {
7342
7491
  baseOptions = configuration.baseOptions;
7343
7492
  }
7344
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7493
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7345
7494
  const localVarHeaderParameter = {};
7346
7495
  const localVarQueryParameter = {};
7347
7496
  // authentication BasicAuth required
@@ -7350,37 +7499,50 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7350
7499
  // authentication BearerAuth required
7351
7500
  // http bearer authentication required
7352
7501
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7502
+ localVarHeaderParameter['Content-Type'] = 'application/json';
7353
7503
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7354
7504
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7355
7505
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7506
+ localVarRequestOptions.data = serializeDataIfNeeded(coordinateSystemData, localVarRequestOptions, configuration);
7356
7507
  return {
7357
7508
  url: toPathString(localVarUrlObj),
7358
7509
  options: localVarRequestOptions,
7359
7510
  };
7360
7511
  },
7361
7512
  /**
7362
- * Gets information on the motion group.
7363
- * @summary Motion Group Description
7513
+ * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
7514
+ * @summary Add TCP
7364
7515
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7365
7516
  * @param {string} controller Unique identifier to address a controller in the cell.
7517
+ * @param {string} motionGroup The motion-group identifier.
7518
+ * @param {string} tcp The unique identifier of a TCP.
7519
+ * @param {RobotTcpData} robotTcpData
7366
7520
  * @param {*} [options] Override http request option.
7367
7521
  * @throws {RequiredError}
7368
7522
  */
7369
- getMotionGroups: async (cell, controller, options = {}) => {
7523
+ addVirtualRobotTcp: async (cell, controller, motionGroup, tcp, robotTcpData, options = {}) => {
7370
7524
  // verify required parameter 'cell' is not null or undefined
7371
- assertParamExists('getMotionGroups', 'cell', cell);
7525
+ assertParamExists('addVirtualRobotTcp', 'cell', cell);
7372
7526
  // verify required parameter 'controller' is not null or undefined
7373
- assertParamExists('getMotionGroups', 'controller', controller);
7374
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups`
7527
+ assertParamExists('addVirtualRobotTcp', 'controller', controller);
7528
+ // verify required parameter 'motionGroup' is not null or undefined
7529
+ assertParamExists('addVirtualRobotTcp', 'motionGroup', motionGroup);
7530
+ // verify required parameter 'tcp' is not null or undefined
7531
+ assertParamExists('addVirtualRobotTcp', 'tcp', tcp);
7532
+ // verify required parameter 'robotTcpData' is not null or undefined
7533
+ assertParamExists('addVirtualRobotTcp', 'robotTcpData', robotTcpData);
7534
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/tcps/{tcp}`
7375
7535
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7376
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7536
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7537
+ .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)))
7538
+ .replace(`{${"tcp"}}`, encodeURIComponent(String(tcp)));
7377
7539
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7378
7540
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7379
7541
  let baseOptions;
7380
7542
  if (configuration) {
7381
7543
  baseOptions = configuration.baseOptions;
7382
7544
  }
7383
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7545
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7384
7546
  const localVarHeaderParameter = {};
7385
7547
  const localVarQueryParameter = {};
7386
7548
  // authentication BasicAuth required
@@ -7389,40 +7551,44 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7389
7551
  // authentication BearerAuth required
7390
7552
  // http bearer authentication required
7391
7553
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7554
+ localVarHeaderParameter['Content-Type'] = 'application/json';
7392
7555
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7393
7556
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7394
7557
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7558
+ localVarRequestOptions.data = serializeDataIfNeeded(robotTcpData, localVarRequestOptions, configuration);
7395
7559
  return {
7396
7560
  url: toPathString(localVarUrlObj),
7397
7561
  options: localVarRequestOptions,
7398
7562
  };
7399
7563
  },
7400
7564
  /**
7401
- * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
7402
- * @summary Get Inputs/Outputs
7565
+ * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
7566
+ * @summary Remove Coordinate System
7403
7567
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7404
7568
  * @param {string} controller Unique identifier to address a controller in the cell.
7405
- * @param {Array<string>} ios
7569
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
7570
+ * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
7406
7571
  * @param {*} [options] Override http request option.
7407
7572
  * @throws {RequiredError}
7408
7573
  */
7409
- listIOs: async (cell, controller, ios, options = {}) => {
7574
+ deleteVirtualRobotCoordinateSystem: async (cell, controller, coordinateSystem, deleteDependent, options = {}) => {
7410
7575
  // verify required parameter 'cell' is not null or undefined
7411
- assertParamExists('listIOs', 'cell', cell);
7576
+ assertParamExists('deleteVirtualRobotCoordinateSystem', 'cell', cell);
7412
7577
  // verify required parameter 'controller' is not null or undefined
7413
- assertParamExists('listIOs', 'controller', controller);
7414
- // verify required parameter 'ios' is not null or undefined
7415
- assertParamExists('listIOs', 'ios', ios);
7416
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/ios`
7578
+ assertParamExists('deleteVirtualRobotCoordinateSystem', 'controller', controller);
7579
+ // verify required parameter 'coordinateSystem' is not null or undefined
7580
+ assertParamExists('deleteVirtualRobotCoordinateSystem', 'coordinateSystem', coordinateSystem);
7581
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/coordinate-systems/{coordinate-system}`
7417
7582
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7418
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7583
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7584
+ .replace(`{${"coordinate-system"}}`, encodeURIComponent(String(coordinateSystem)));
7419
7585
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7420
7586
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7421
7587
  let baseOptions;
7422
7588
  if (configuration) {
7423
7589
  baseOptions = configuration.baseOptions;
7424
7590
  }
7425
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7591
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };
7426
7592
  const localVarHeaderParameter = {};
7427
7593
  const localVarQueryParameter = {};
7428
7594
  // authentication BasicAuth required
@@ -7431,8 +7597,8 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7431
7597
  // authentication BearerAuth required
7432
7598
  // http bearer authentication required
7433
7599
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7434
- if (ios) {
7435
- localVarQueryParameter['ios'] = ios;
7600
+ if (deleteDependent !== undefined) {
7601
+ localVarQueryParameter['delete_dependent'] = deleteDependent;
7436
7602
  }
7437
7603
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7438
7604
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -7443,32 +7609,36 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7443
7609
  };
7444
7610
  },
7445
7611
  /**
7446
- * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
7447
- * @summary List Input/Output Descriptions
7612
+ * Removes the TCP from the motion group. An unknown TCP is a valid input.
7613
+ * @summary Remove TCP
7448
7614
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7449
7615
  * @param {string} controller Unique identifier to address a controller in the cell.
7450
- * @param {Array<string>} [ios]
7451
- * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
7452
- * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
7453
- * @param {string} [group] Return only inputs/outputs from the specified group.
7616
+ * @param {string} motionGroup The motion-group identifier.
7617
+ * @param {string} tcp The unique identifier of a TCP.
7454
7618
  * @param {*} [options] Override http request option.
7455
7619
  * @throws {RequiredError}
7456
7620
  */
7457
- listVirtualRobotIODescriptions: async (cell, controller, ios, direction, valueType, group, options = {}) => {
7621
+ deleteVirtualRobotTcp: async (cell, controller, motionGroup, tcp, options = {}) => {
7458
7622
  // verify required parameter 'cell' is not null or undefined
7459
- assertParamExists('listVirtualRobotIODescriptions', 'cell', cell);
7623
+ assertParamExists('deleteVirtualRobotTcp', 'cell', cell);
7460
7624
  // verify required parameter 'controller' is not null or undefined
7461
- assertParamExists('listVirtualRobotIODescriptions', 'controller', controller);
7462
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/ios/description`
7625
+ assertParamExists('deleteVirtualRobotTcp', 'controller', controller);
7626
+ // verify required parameter 'motionGroup' is not null or undefined
7627
+ assertParamExists('deleteVirtualRobotTcp', 'motionGroup', motionGroup);
7628
+ // verify required parameter 'tcp' is not null or undefined
7629
+ assertParamExists('deleteVirtualRobotTcp', 'tcp', tcp);
7630
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/tcps/{tcp}`
7463
7631
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7464
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7632
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7633
+ .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)))
7634
+ .replace(`{${"tcp"}}`, encodeURIComponent(String(tcp)));
7465
7635
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7466
7636
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7467
7637
  let baseOptions;
7468
7638
  if (configuration) {
7469
7639
  baseOptions = configuration.baseOptions;
7470
7640
  }
7471
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7641
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };
7472
7642
  const localVarHeaderParameter = {};
7473
7643
  const localVarQueryParameter = {};
7474
7644
  // authentication BasicAuth required
@@ -7477,18 +7647,6 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7477
7647
  // authentication BearerAuth required
7478
7648
  // http bearer authentication required
7479
7649
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7480
- if (ios) {
7481
- localVarQueryParameter['ios'] = ios;
7482
- }
7483
- if (direction !== undefined) {
7484
- localVarQueryParameter['direction'] = direction;
7485
- }
7486
- if (valueType !== undefined) {
7487
- localVarQueryParameter['value_type'] = valueType;
7488
- }
7489
- if (group !== undefined) {
7490
- localVarQueryParameter['group'] = group;
7491
- }
7492
7650
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7493
7651
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7494
7652
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
@@ -7498,22 +7656,19 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7498
7656
  };
7499
7657
  },
7500
7658
  /**
7501
- * Sets a list of values of a virtual controller inputs/outputs.
7502
- * @summary Set Input/Ouput Values
7659
+ * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
7660
+ * @summary Get Emergency Stop State
7503
7661
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7504
7662
  * @param {string} controller Unique identifier to address a controller in the cell.
7505
- * @param {Array<IOValue>} iOValue
7506
7663
  * @param {*} [options] Override http request option.
7507
7664
  * @throws {RequiredError}
7508
7665
  */
7509
- setIOValues: async (cell, controller, iOValue, options = {}) => {
7666
+ getEmergencyStop: async (cell, controller, options = {}) => {
7510
7667
  // verify required parameter 'cell' is not null or undefined
7511
- assertParamExists('setIOValues', 'cell', cell);
7668
+ assertParamExists('getEmergencyStop', 'cell', cell);
7512
7669
  // verify required parameter 'controller' is not null or undefined
7513
- assertParamExists('setIOValues', 'controller', controller);
7514
- // verify required parameter 'iOValue' is not null or undefined
7515
- assertParamExists('setIOValues', 'iOValue', iOValue);
7516
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/ios`
7670
+ assertParamExists('getEmergencyStop', 'controller', controller);
7671
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/emergency-stop`
7517
7672
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7518
7673
  .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7519
7674
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
@@ -7522,7 +7677,7 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7522
7677
  if (configuration) {
7523
7678
  baseOptions = configuration.baseOptions;
7524
7679
  }
7525
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7680
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7526
7681
  const localVarHeaderParameter = {};
7527
7682
  const localVarQueryParameter = {};
7528
7683
  // authentication BasicAuth required
@@ -7531,36 +7686,31 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7531
7686
  // authentication BearerAuth required
7532
7687
  // http bearer authentication required
7533
7688
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7534
- localVarHeaderParameter['Content-Type'] = 'application/json';
7535
7689
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7536
7690
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7537
7691
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7538
- localVarRequestOptions.data = serializeDataIfNeeded(iOValue, localVarRequestOptions, configuration);
7539
7692
  return {
7540
7693
  url: toPathString(localVarUrlObj),
7541
7694
  options: localVarRequestOptions,
7542
7695
  };
7543
7696
  },
7544
7697
  /**
7545
- * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
7546
- * @summary Set Motion Group State
7698
+ * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
7699
+ * @summary Get Motion Group State
7547
7700
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7548
7701
  * @param {string} controller Unique identifier to address a controller in the cell.
7549
7702
  * @param {string} motionGroup The motion-group identifier.
7550
- * @param {MotionGroupJoints} motionGroupJoints
7551
7703
  * @param {*} [options] Override http request option.
7552
7704
  * @throws {RequiredError}
7553
7705
  */
7554
- setMotionGroupState: async (cell, controller, motionGroup, motionGroupJoints, options = {}) => {
7706
+ getMotionGroupState: async (cell, controller, motionGroup, options = {}) => {
7555
7707
  // verify required parameter 'cell' is not null or undefined
7556
- assertParamExists('setMotionGroupState', 'cell', cell);
7708
+ assertParamExists('getMotionGroupState', 'cell', cell);
7557
7709
  // verify required parameter 'controller' is not null or undefined
7558
- assertParamExists('setMotionGroupState', 'controller', controller);
7710
+ assertParamExists('getMotionGroupState', 'controller', controller);
7559
7711
  // verify required parameter 'motionGroup' is not null or undefined
7560
- assertParamExists('setMotionGroupState', 'motionGroup', motionGroup);
7561
- // verify required parameter 'motionGroupJoints' is not null or undefined
7562
- assertParamExists('setMotionGroupState', 'motionGroupJoints', motionGroupJoints);
7563
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}`
7712
+ assertParamExists('getMotionGroupState', 'motionGroup', motionGroup);
7713
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/state`
7564
7714
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7565
7715
  .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7566
7716
  .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
@@ -7570,7 +7720,7 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7570
7720
  if (configuration) {
7571
7721
  baseOptions = configuration.baseOptions;
7572
7722
  }
7573
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7723
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7574
7724
  const localVarHeaderParameter = {};
7575
7725
  const localVarQueryParameter = {};
7576
7726
  // authentication BasicAuth required
@@ -7579,40 +7729,14 @@ export const VirtualRobotApiAxiosParamCreator = function (configuration) {
7579
7729
  // authentication BearerAuth required
7580
7730
  // http bearer authentication required
7581
7731
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7582
- localVarHeaderParameter['Content-Type'] = 'application/json';
7583
7732
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7584
7733
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7585
7734
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7586
- localVarRequestOptions.data = serializeDataIfNeeded(motionGroupJoints, localVarRequestOptions, configuration);
7587
7735
  return {
7588
7736
  url: toPathString(localVarUrlObj),
7589
7737
  options: localVarRequestOptions,
7590
7738
  };
7591
7739
  },
7592
- };
7593
- };
7594
- /**
7595
- * VirtualRobotApi - functional programming interface
7596
- * @export
7597
- */
7598
- export const VirtualRobotApiFp = function (configuration) {
7599
- const localVarAxiosParamCreator = VirtualRobotApiAxiosParamCreator(configuration);
7600
- return {
7601
- /**
7602
- * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
7603
- * @summary Get Motion Group State
7604
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7605
- * @param {string} controller Unique identifier to address a controller in the cell.
7606
- * @param {string} motionGroup The motion-group identifier.
7607
- * @param {*} [options] Override http request option.
7608
- * @throws {RequiredError}
7609
- */
7610
- async getMotionGroupState(cell, controller, motionGroup, options) {
7611
- const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroupState(cell, controller, motionGroup, options);
7612
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7613
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.getMotionGroupState']?.[localVarOperationServerIndex]?.url;
7614
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7615
- },
7616
7740
  /**
7617
7741
  * Gets information on the motion group.
7618
7742
  * @summary Motion Group Description
@@ -7621,146 +7745,243 @@ export const VirtualRobotApiFp = function (configuration) {
7621
7745
  * @param {*} [options] Override http request option.
7622
7746
  * @throws {RequiredError}
7623
7747
  */
7624
- async getMotionGroups(cell, controller, options) {
7625
- const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroups(cell, controller, options);
7626
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7627
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.getMotionGroups']?.[localVarOperationServerIndex]?.url;
7628
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7629
- },
7630
- /**
7631
- * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
7632
- * @summary Get Inputs/Outputs
7633
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7634
- * @param {string} controller Unique identifier to address a controller in the cell.
7635
- * @param {Array<string>} ios
7636
- * @param {*} [options] Override http request option.
7637
- * @throws {RequiredError}
7638
- */
7639
- async listIOs(cell, controller, ios, options) {
7640
- const localVarAxiosArgs = await localVarAxiosParamCreator.listIOs(cell, controller, ios, options);
7641
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7642
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.listIOs']?.[localVarOperationServerIndex]?.url;
7643
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7748
+ getMotionGroups: async (cell, controller, options = {}) => {
7749
+ // verify required parameter 'cell' is not null or undefined
7750
+ assertParamExists('getMotionGroups', 'cell', cell);
7751
+ // verify required parameter 'controller' is not null or undefined
7752
+ assertParamExists('getMotionGroups', 'controller', controller);
7753
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups`
7754
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7755
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7756
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7757
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7758
+ let baseOptions;
7759
+ if (configuration) {
7760
+ baseOptions = configuration.baseOptions;
7761
+ }
7762
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7763
+ const localVarHeaderParameter = {};
7764
+ const localVarQueryParameter = {};
7765
+ // authentication BasicAuth required
7766
+ // http basic authentication required
7767
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7768
+ // authentication BearerAuth required
7769
+ // http bearer authentication required
7770
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7771
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7772
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7773
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7774
+ return {
7775
+ url: toPathString(localVarUrlObj),
7776
+ options: localVarRequestOptions,
7777
+ };
7644
7778
  },
7645
7779
  /**
7646
- * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
7647
- * @summary List Input/Output Descriptions
7780
+ * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
7781
+ * @summary Get Operation Mode
7648
7782
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7649
7783
  * @param {string} controller Unique identifier to address a controller in the cell.
7650
- * @param {Array<string>} [ios]
7651
- * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
7652
- * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
7653
- * @param {string} [group] Return only inputs/outputs from the specified group.
7654
7784
  * @param {*} [options] Override http request option.
7655
7785
  * @throws {RequiredError}
7656
7786
  */
7657
- async listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
7658
- const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options);
7659
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7660
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.listVirtualRobotIODescriptions']?.[localVarOperationServerIndex]?.url;
7661
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7787
+ getOperationMode: async (cell, controller, options = {}) => {
7788
+ // verify required parameter 'cell' is not null or undefined
7789
+ assertParamExists('getOperationMode', 'cell', cell);
7790
+ // verify required parameter 'controller' is not null or undefined
7791
+ assertParamExists('getOperationMode', 'controller', controller);
7792
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/operationmode`
7793
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7794
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7795
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7796
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7797
+ let baseOptions;
7798
+ if (configuration) {
7799
+ baseOptions = configuration.baseOptions;
7800
+ }
7801
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7802
+ const localVarHeaderParameter = {};
7803
+ const localVarQueryParameter = {};
7804
+ // authentication BasicAuth required
7805
+ // http basic authentication required
7806
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7807
+ // authentication BearerAuth required
7808
+ // http bearer authentication required
7809
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7810
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7811
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7812
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7813
+ return {
7814
+ url: toPathString(localVarUrlObj),
7815
+ options: localVarRequestOptions,
7816
+ };
7662
7817
  },
7663
7818
  /**
7664
- * Sets a list of values of a virtual controller inputs/outputs.
7665
- * @summary Set Input/Ouput Values
7819
+ * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
7820
+ * @summary Get Mounting
7666
7821
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7667
7822
  * @param {string} controller Unique identifier to address a controller in the cell.
7668
- * @param {Array<IOValue>} iOValue
7823
+ * @param {string} motionGroup The motion-group identifier.
7669
7824
  * @param {*} [options] Override http request option.
7670
7825
  * @throws {RequiredError}
7671
7826
  */
7672
- async setIOValues(cell, controller, iOValue, options) {
7673
- const localVarAxiosArgs = await localVarAxiosParamCreator.setIOValues(cell, controller, iOValue, options);
7674
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7675
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.setIOValues']?.[localVarOperationServerIndex]?.url;
7676
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7827
+ getVirtualRobotMounting: async (cell, controller, motionGroup, options = {}) => {
7828
+ // verify required parameter 'cell' is not null or undefined
7829
+ assertParamExists('getVirtualRobotMounting', 'cell', cell);
7830
+ // verify required parameter 'controller' is not null or undefined
7831
+ assertParamExists('getVirtualRobotMounting', 'controller', controller);
7832
+ // verify required parameter 'motionGroup' is not null or undefined
7833
+ assertParamExists('getVirtualRobotMounting', 'motionGroup', motionGroup);
7834
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/mounting`
7835
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7836
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7837
+ .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
7838
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7839
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7840
+ let baseOptions;
7841
+ if (configuration) {
7842
+ baseOptions = configuration.baseOptions;
7843
+ }
7844
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7845
+ const localVarHeaderParameter = {};
7846
+ const localVarQueryParameter = {};
7847
+ // authentication BasicAuth required
7848
+ // http basic authentication required
7849
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7850
+ // authentication BearerAuth required
7851
+ // http bearer authentication required
7852
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7853
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7854
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7855
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7856
+ return {
7857
+ url: toPathString(localVarUrlObj),
7858
+ options: localVarRequestOptions,
7859
+ };
7677
7860
  },
7678
7861
  /**
7679
- * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
7680
- * @summary Set Motion Group State
7862
+ * Lists all coordinate systems on the robot controller.
7863
+ * @summary List Coordinate Systems
7681
7864
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7682
7865
  * @param {string} controller Unique identifier to address a controller in the cell.
7683
- * @param {string} motionGroup The motion-group identifier.
7684
- * @param {MotionGroupJoints} motionGroupJoints
7685
7866
  * @param {*} [options] Override http request option.
7686
7867
  * @throws {RequiredError}
7687
7868
  */
7688
- async setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
7689
- const localVarAxiosArgs = await localVarAxiosParamCreator.setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options);
7690
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
7691
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotApi.setMotionGroupState']?.[localVarOperationServerIndex]?.url;
7692
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
7869
+ listVirtualRobotCoordinateSystems: async (cell, controller, options = {}) => {
7870
+ // verify required parameter 'cell' is not null or undefined
7871
+ assertParamExists('listVirtualRobotCoordinateSystems', 'cell', cell);
7872
+ // verify required parameter 'controller' is not null or undefined
7873
+ assertParamExists('listVirtualRobotCoordinateSystems', 'controller', controller);
7874
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/coordinate-systems`
7875
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7876
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7877
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7878
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7879
+ let baseOptions;
7880
+ if (configuration) {
7881
+ baseOptions = configuration.baseOptions;
7882
+ }
7883
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7884
+ const localVarHeaderParameter = {};
7885
+ const localVarQueryParameter = {};
7886
+ // authentication BasicAuth required
7887
+ // http basic authentication required
7888
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7889
+ // authentication BearerAuth required
7890
+ // http bearer authentication required
7891
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7892
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7893
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7894
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7895
+ return {
7896
+ url: toPathString(localVarUrlObj),
7897
+ options: localVarRequestOptions,
7898
+ };
7693
7899
  },
7694
- };
7695
- };
7696
- /**
7697
- * VirtualRobotApi - factory interface
7698
- * @export
7699
- */
7700
- export const VirtualRobotApiFactory = function (configuration, basePath, axios) {
7701
- const localVarFp = VirtualRobotApiFp(configuration);
7702
- return {
7703
7900
  /**
7704
- * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
7705
- * @summary Get Motion Group State
7901
+ * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
7902
+ * @summary List TCPs
7706
7903
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7707
7904
  * @param {string} controller Unique identifier to address a controller in the cell.
7708
7905
  * @param {string} motionGroup The motion-group identifier.
7709
7906
  * @param {*} [options] Override http request option.
7710
7907
  * @throws {RequiredError}
7711
7908
  */
7712
- getMotionGroupState(cell, controller, motionGroup, options) {
7713
- return localVarFp.getMotionGroupState(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
7909
+ listVirtualRobotTcps: async (cell, controller, motionGroup, options = {}) => {
7910
+ // verify required parameter 'cell' is not null or undefined
7911
+ assertParamExists('listVirtualRobotTcps', 'cell', cell);
7912
+ // verify required parameter 'controller' is not null or undefined
7913
+ assertParamExists('listVirtualRobotTcps', 'controller', controller);
7914
+ // verify required parameter 'motionGroup' is not null or undefined
7915
+ assertParamExists('listVirtualRobotTcps', 'motionGroup', motionGroup);
7916
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/tcps`
7917
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7918
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7919
+ .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
7920
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7921
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7922
+ let baseOptions;
7923
+ if (configuration) {
7924
+ baseOptions = configuration.baseOptions;
7925
+ }
7926
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
7927
+ const localVarHeaderParameter = {};
7928
+ const localVarQueryParameter = {};
7929
+ // authentication BasicAuth required
7930
+ // http basic authentication required
7931
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7932
+ // authentication BearerAuth required
7933
+ // http bearer authentication required
7934
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7935
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7936
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7937
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7938
+ return {
7939
+ url: toPathString(localVarUrlObj),
7940
+ options: localVarRequestOptions,
7941
+ };
7714
7942
  },
7715
7943
  /**
7716
- * Gets information on the motion group.
7717
- * @summary Motion Group Description
7944
+ * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
7945
+ * @summary Push or Release Emergency Stop
7718
7946
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7719
7947
  * @param {string} controller Unique identifier to address a controller in the cell.
7948
+ * @param {boolean} [active]
7720
7949
  * @param {*} [options] Override http request option.
7721
7950
  * @throws {RequiredError}
7722
7951
  */
7723
- getMotionGroups(cell, controller, options) {
7724
- return localVarFp.getMotionGroups(cell, controller, options).then((request) => request(axios, basePath));
7725
- },
7726
- /**
7727
- * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
7728
- * @summary Get Inputs/Outputs
7729
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7730
- * @param {string} controller Unique identifier to address a controller in the cell.
7731
- * @param {Array<string>} ios
7732
- * @param {*} [options] Override http request option.
7733
- * @throws {RequiredError}
7734
- */
7735
- listIOs(cell, controller, ios, options) {
7736
- return localVarFp.listIOs(cell, controller, ios, options).then((request) => request(axios, basePath));
7737
- },
7738
- /**
7739
- * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
7740
- * @summary List Input/Output Descriptions
7741
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7742
- * @param {string} controller Unique identifier to address a controller in the cell.
7743
- * @param {Array<string>} [ios]
7744
- * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
7745
- * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
7746
- * @param {string} [group] Return only inputs/outputs from the specified group.
7747
- * @param {*} [options] Override http request option.
7748
- * @throws {RequiredError}
7749
- */
7750
- listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
7751
- return localVarFp.listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options).then((request) => request(axios, basePath));
7752
- },
7753
- /**
7754
- * Sets a list of values of a virtual controller inputs/outputs.
7755
- * @summary Set Input/Ouput Values
7756
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7757
- * @param {string} controller Unique identifier to address a controller in the cell.
7758
- * @param {Array<IOValue>} iOValue
7759
- * @param {*} [options] Override http request option.
7760
- * @throws {RequiredError}
7761
- */
7762
- setIOValues(cell, controller, iOValue, options) {
7763
- return localVarFp.setIOValues(cell, controller, iOValue, options).then((request) => request(axios, basePath));
7952
+ setEmergencyStop: async (cell, controller, active, options = {}) => {
7953
+ // verify required parameter 'cell' is not null or undefined
7954
+ assertParamExists('setEmergencyStop', 'cell', cell);
7955
+ // verify required parameter 'controller' is not null or undefined
7956
+ assertParamExists('setEmergencyStop', 'controller', controller);
7957
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/emergency-stop`
7958
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7959
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7960
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
7961
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7962
+ let baseOptions;
7963
+ if (configuration) {
7964
+ baseOptions = configuration.baseOptions;
7965
+ }
7966
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7967
+ const localVarHeaderParameter = {};
7968
+ const localVarQueryParameter = {};
7969
+ // authentication BasicAuth required
7970
+ // http basic authentication required
7971
+ setBasicAuthToObject(localVarRequestOptions, configuration);
7972
+ // authentication BearerAuth required
7973
+ // http bearer authentication required
7974
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7975
+ if (active !== undefined) {
7976
+ localVarQueryParameter['active'] = active;
7977
+ }
7978
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7979
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7980
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7981
+ return {
7982
+ url: toPathString(localVarUrlObj),
7983
+ options: localVarRequestOptions,
7984
+ };
7764
7985
  },
7765
7986
  /**
7766
7987
  * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
@@ -7772,132 +7993,26 @@ export const VirtualRobotApiFactory = function (configuration, basePath, axios)
7772
7993
  * @param {*} [options] Override http request option.
7773
7994
  * @throws {RequiredError}
7774
7995
  */
7775
- setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
7776
- return localVarFp.setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options).then((request) => request(axios, basePath));
7777
- },
7778
- };
7779
- };
7780
- /**
7781
- * VirtualRobotApi - object-oriented interface
7782
- * @export
7783
- * @class VirtualRobotApi
7784
- * @extends {BaseAPI}
7785
- */
7786
- export class VirtualRobotApi extends BaseAPI {
7787
- /**
7788
- * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
7789
- * @summary Get Motion Group State
7790
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7791
- * @param {string} controller Unique identifier to address a controller in the cell.
7792
- * @param {string} motionGroup The motion-group identifier.
7793
- * @param {*} [options] Override http request option.
7794
- * @throws {RequiredError}
7795
- * @memberof VirtualRobotApi
7796
- */
7797
- getMotionGroupState(cell, controller, motionGroup, options) {
7798
- return VirtualRobotApiFp(this.configuration).getMotionGroupState(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
7799
- }
7800
- /**
7801
- * Gets information on the motion group.
7802
- * @summary Motion Group Description
7803
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7804
- * @param {string} controller Unique identifier to address a controller in the cell.
7805
- * @param {*} [options] Override http request option.
7806
- * @throws {RequiredError}
7807
- * @memberof VirtualRobotApi
7808
- */
7809
- getMotionGroups(cell, controller, options) {
7810
- return VirtualRobotApiFp(this.configuration).getMotionGroups(cell, controller, options).then((request) => request(this.axios, this.basePath));
7811
- }
7812
- /**
7813
- * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
7814
- * @summary Get Inputs/Outputs
7815
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7816
- * @param {string} controller Unique identifier to address a controller in the cell.
7817
- * @param {Array<string>} ios
7818
- * @param {*} [options] Override http request option.
7819
- * @throws {RequiredError}
7820
- * @memberof VirtualRobotApi
7821
- */
7822
- listIOs(cell, controller, ios, options) {
7823
- return VirtualRobotApiFp(this.configuration).listIOs(cell, controller, ios, options).then((request) => request(this.axios, this.basePath));
7824
- }
7825
- /**
7826
- * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
7827
- * @summary List Input/Output Descriptions
7828
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7829
- * @param {string} controller Unique identifier to address a controller in the cell.
7830
- * @param {Array<string>} [ios]
7831
- * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
7832
- * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
7833
- * @param {string} [group] Return only inputs/outputs from the specified group.
7834
- * @param {*} [options] Override http request option.
7835
- * @throws {RequiredError}
7836
- * @memberof VirtualRobotApi
7837
- */
7838
- listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
7839
- return VirtualRobotApiFp(this.configuration).listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options).then((request) => request(this.axios, this.basePath));
7840
- }
7841
- /**
7842
- * Sets a list of values of a virtual controller inputs/outputs.
7843
- * @summary Set Input/Ouput Values
7844
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7845
- * @param {string} controller Unique identifier to address a controller in the cell.
7846
- * @param {Array<IOValue>} iOValue
7847
- * @param {*} [options] Override http request option.
7848
- * @throws {RequiredError}
7849
- * @memberof VirtualRobotApi
7850
- */
7851
- setIOValues(cell, controller, iOValue, options) {
7852
- return VirtualRobotApiFp(this.configuration).setIOValues(cell, controller, iOValue, options).then((request) => request(this.axios, this.basePath));
7853
- }
7854
- /**
7855
- * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
7856
- * @summary Set Motion Group State
7857
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7858
- * @param {string} controller Unique identifier to address a controller in the cell.
7859
- * @param {string} motionGroup The motion-group identifier.
7860
- * @param {MotionGroupJoints} motionGroupJoints
7861
- * @param {*} [options] Override http request option.
7862
- * @throws {RequiredError}
7863
- * @memberof VirtualRobotApi
7864
- */
7865
- setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
7866
- return VirtualRobotApiFp(this.configuration).setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options).then((request) => request(this.axios, this.basePath));
7867
- }
7868
- }
7869
- /**
7870
- * VirtualRobotBehaviorApi - axios parameter creator
7871
- * @export
7872
- */
7873
- export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration) {
7874
- return {
7875
- /**
7876
- * <!-- theme: danger --> > Websocket endpoint This stream provides the commanded joint state and sets a motion groups joint configuration, e.g. to move a motion group. The concept is that an application is using the Motion Service to move a motion group. The Motion Service is commanding the desired joint configuration of a motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! It is __not__ providing the *actual* joint state! (Please file a request - if you need a stream of the *actual* joint state) When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configurations. CAUTION: Incoming joint configurations are not visualized and their velocity limits are not checked. we don\'t even check limits! Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion group. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
7877
- * @summary Stream Joint Configuration
7878
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7879
- * @param {string} controller Unique identifier to address a controller in the cell.
7880
- * @param {ExternalJointStreamDatapoint} externalJointStreamDatapoint
7881
- * @param {*} [options] Override http request option.
7882
- * @throws {RequiredError}
7883
- */
7884
- externalJointsStream: async (cell, controller, externalJointStreamDatapoint, options = {}) => {
7996
+ setMotionGroupState: async (cell, controller, motionGroup, motionGroupJoints, options = {}) => {
7885
7997
  // verify required parameter 'cell' is not null or undefined
7886
- assertParamExists('externalJointsStream', 'cell', cell);
7998
+ assertParamExists('setMotionGroupState', 'cell', cell);
7887
7999
  // verify required parameter 'controller' is not null or undefined
7888
- assertParamExists('externalJointsStream', 'controller', controller);
7889
- // verify required parameter 'externalJointStreamDatapoint' is not null or undefined
7890
- assertParamExists('externalJointsStream', 'externalJointStreamDatapoint', externalJointStreamDatapoint);
7891
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/external-joints-stream`
8000
+ assertParamExists('setMotionGroupState', 'controller', controller);
8001
+ // verify required parameter 'motionGroup' is not null or undefined
8002
+ assertParamExists('setMotionGroupState', 'motionGroup', motionGroup);
8003
+ // verify required parameter 'motionGroupJoints' is not null or undefined
8004
+ assertParamExists('setMotionGroupState', 'motionGroupJoints', motionGroupJoints);
8005
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/state`
7892
8006
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7893
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8007
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8008
+ .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
7894
8009
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7895
8010
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7896
8011
  let baseOptions;
7897
8012
  if (configuration) {
7898
8013
  baseOptions = configuration.baseOptions;
7899
8014
  }
7900
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
8015
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7901
8016
  const localVarHeaderParameter = {};
7902
8017
  const localVarQueryParameter = {};
7903
8018
  // authentication BasicAuth required
@@ -7910,39 +8025,38 @@ export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration)
7910
8025
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7911
8026
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7912
8027
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
7913
- localVarRequestOptions.data = serializeDataIfNeeded(externalJointStreamDatapoint, localVarRequestOptions, configuration);
8028
+ localVarRequestOptions.data = serializeDataIfNeeded(motionGroupJoints, localVarRequestOptions, configuration);
7914
8029
  return {
7915
8030
  url: toPathString(localVarUrlObj),
7916
8031
  options: localVarRequestOptions,
7917
8032
  };
7918
8033
  },
7919
8034
  /**
7920
- * Get the current robot motion group behavior - please see the setter [setMotionGroupBehavior](setMotionGroupBehavior) and the enum for details.
7921
- * @summary Behavior
8035
+ * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
8036
+ * @summary Set Operation Mode
7922
8037
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7923
8038
  * @param {string} controller Unique identifier to address a controller in the cell.
7924
- * @param {string} motionGroup The motion-group identifier.
8039
+ * @param {OperationMode} mode
7925
8040
  * @param {*} [options] Override http request option.
7926
8041
  * @throws {RequiredError}
7927
8042
  */
7928
- getMotionGroupBehavior: async (cell, controller, motionGroup, options = {}) => {
8043
+ setOperationMode: async (cell, controller, mode, options = {}) => {
7929
8044
  // verify required parameter 'cell' is not null or undefined
7930
- assertParamExists('getMotionGroupBehavior', 'cell', cell);
8045
+ assertParamExists('setOperationMode', 'cell', cell);
7931
8046
  // verify required parameter 'controller' is not null or undefined
7932
- assertParamExists('getMotionGroupBehavior', 'controller', controller);
7933
- // verify required parameter 'motionGroup' is not null or undefined
7934
- assertParamExists('getMotionGroupBehavior', 'motionGroup', motionGroup);
7935
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/behavior`
8047
+ assertParamExists('setOperationMode', 'controller', controller);
8048
+ // verify required parameter 'mode' is not null or undefined
8049
+ assertParamExists('setOperationMode', 'mode', mode);
8050
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/operationmode`
7936
8051
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7937
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7938
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
8052
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
7939
8053
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
7940
8054
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
7941
8055
  let baseOptions;
7942
8056
  if (configuration) {
7943
8057
  baseOptions = configuration.baseOptions;
7944
8058
  }
7945
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
8059
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
7946
8060
  const localVarHeaderParameter = {};
7947
8061
  const localVarQueryParameter = {};
7948
8062
  // authentication BasicAuth required
@@ -7951,6 +8065,9 @@ export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration)
7951
8065
  // authentication BearerAuth required
7952
8066
  // http bearer authentication required
7953
8067
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
8068
+ if (mode !== undefined) {
8069
+ localVarQueryParameter['mode'] = mode;
8070
+ }
7954
8071
  setSearchParams(localVarUrlObj, localVarQueryParameter);
7955
8072
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7956
8073
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
@@ -7960,23 +8077,25 @@ export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration)
7960
8077
  };
7961
8078
  },
7962
8079
  /**
7963
- * Switch robot motion group behavior.
7964
- * @summary Switch Behavior
8080
+ * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
8081
+ * @summary Set Mounting
7965
8082
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7966
8083
  * @param {string} controller Unique identifier to address a controller in the cell.
7967
8084
  * @param {string} motionGroup The motion-group identifier.
7968
- * @param {Behavior} [behavior]
8085
+ * @param {CoordinateSystem} coordinateSystem
7969
8086
  * @param {*} [options] Override http request option.
7970
8087
  * @throws {RequiredError}
7971
8088
  */
7972
- setMotionGroupBehavior: async (cell, controller, motionGroup, behavior, options = {}) => {
8089
+ setVirtualRobotMounting: async (cell, controller, motionGroup, coordinateSystem, options = {}) => {
7973
8090
  // verify required parameter 'cell' is not null or undefined
7974
- assertParamExists('setMotionGroupBehavior', 'cell', cell);
8091
+ assertParamExists('setVirtualRobotMounting', 'cell', cell);
7975
8092
  // verify required parameter 'controller' is not null or undefined
7976
- assertParamExists('setMotionGroupBehavior', 'controller', controller);
8093
+ assertParamExists('setVirtualRobotMounting', 'controller', controller);
7977
8094
  // verify required parameter 'motionGroup' is not null or undefined
7978
- assertParamExists('setMotionGroupBehavior', 'motionGroup', motionGroup);
7979
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/behavior`
8095
+ assertParamExists('setVirtualRobotMounting', 'motionGroup', motionGroup);
8096
+ // verify required parameter 'coordinateSystem' is not null or undefined
8097
+ assertParamExists('setVirtualRobotMounting', 'coordinateSystem', coordinateSystem);
8098
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/motion-groups/{motion-group}/mounting`
7980
8099
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
7981
8100
  .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
7982
8101
  .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
@@ -7995,12 +8114,11 @@ export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration)
7995
8114
  // authentication BearerAuth required
7996
8115
  // http bearer authentication required
7997
8116
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
7998
- if (behavior !== undefined) {
7999
- localVarQueryParameter['behavior'] = behavior;
8000
- }
8117
+ localVarHeaderParameter['Content-Type'] = 'application/json';
8001
8118
  setSearchParams(localVarUrlObj, localVarQueryParameter);
8002
8119
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8003
8120
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8121
+ localVarRequestOptions.data = serializeDataIfNeeded(coordinateSystem, localVarRequestOptions, configuration);
8004
8122
  return {
8005
8123
  url: toPathString(localVarUrlObj),
8006
8124
  options: localVarRequestOptions,
@@ -8009,465 +8127,301 @@ export const VirtualRobotBehaviorApiAxiosParamCreator = function (configuration)
8009
8127
  };
8010
8128
  };
8011
8129
  /**
8012
- * VirtualRobotBehaviorApi - functional programming interface
8130
+ * VirtualControllerApi - functional programming interface
8013
8131
  * @export
8014
8132
  */
8015
- export const VirtualRobotBehaviorApiFp = function (configuration) {
8016
- const localVarAxiosParamCreator = VirtualRobotBehaviorApiAxiosParamCreator(configuration);
8133
+ export const VirtualControllerApiFp = function (configuration) {
8134
+ const localVarAxiosParamCreator = VirtualControllerApiAxiosParamCreator(configuration);
8017
8135
  return {
8018
8136
  /**
8019
- * <!-- theme: danger --> > Websocket endpoint This stream provides the commanded joint state and sets a motion groups joint configuration, e.g. to move a motion group. The concept is that an application is using the Motion Service to move a motion group. The Motion Service is commanding the desired joint configuration of a motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! It is __not__ providing the *actual* joint state! (Please file a request - if you need a stream of the *actual* joint state) When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configurations. CAUTION: Incoming joint configurations are not visualized and their velocity limits are not checked. we don\'t even check limits! Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion group. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
8020
- * @summary Stream Joint Configuration
8137
+ * Adds a coordinate system to the robot controller.
8138
+ * @summary Add Coordinate Systems
8021
8139
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8022
8140
  * @param {string} controller Unique identifier to address a controller in the cell.
8023
- * @param {ExternalJointStreamDatapoint} externalJointStreamDatapoint
8141
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8142
+ * @param {CoordinateSystemData} coordinateSystemData
8024
8143
  * @param {*} [options] Override http request option.
8025
8144
  * @throws {RequiredError}
8026
8145
  */
8027
- async externalJointsStream(cell, controller, externalJointStreamDatapoint, options) {
8028
- const localVarAxiosArgs = await localVarAxiosParamCreator.externalJointsStream(cell, controller, externalJointStreamDatapoint, options);
8146
+ async addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options) {
8147
+ const localVarAxiosArgs = await localVarAxiosParamCreator.addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options);
8029
8148
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8030
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotBehaviorApi.externalJointsStream']?.[localVarOperationServerIndex]?.url;
8149
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.addVirtualRobotCoordinateSystem']?.[localVarOperationServerIndex]?.url;
8031
8150
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8032
8151
  },
8033
8152
  /**
8034
- * Get the current robot motion group behavior - please see the setter [setMotionGroupBehavior](setMotionGroupBehavior) and the enum for details.
8035
- * @summary Behavior
8153
+ * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
8154
+ * @summary Add TCP
8036
8155
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8037
8156
  * @param {string} controller Unique identifier to address a controller in the cell.
8038
8157
  * @param {string} motionGroup The motion-group identifier.
8158
+ * @param {string} tcp The unique identifier of a TCP.
8159
+ * @param {RobotTcpData} robotTcpData
8039
8160
  * @param {*} [options] Override http request option.
8040
8161
  * @throws {RequiredError}
8041
8162
  */
8042
- async getMotionGroupBehavior(cell, controller, motionGroup, options) {
8043
- const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroupBehavior(cell, controller, motionGroup, options);
8163
+ async addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options) {
8164
+ const localVarAxiosArgs = await localVarAxiosParamCreator.addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options);
8044
8165
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8045
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotBehaviorApi.getMotionGroupBehavior']?.[localVarOperationServerIndex]?.url;
8166
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.addVirtualRobotTcp']?.[localVarOperationServerIndex]?.url;
8046
8167
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8047
8168
  },
8048
8169
  /**
8049
- * Switch robot motion group behavior.
8050
- * @summary Switch Behavior
8170
+ * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
8171
+ * @summary Remove Coordinate System
8051
8172
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8052
8173
  * @param {string} controller Unique identifier to address a controller in the cell.
8053
- * @param {string} motionGroup The motion-group identifier.
8054
- * @param {Behavior} [behavior]
8174
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8175
+ * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
8055
8176
  * @param {*} [options] Override http request option.
8056
8177
  * @throws {RequiredError}
8057
8178
  */
8058
- async setMotionGroupBehavior(cell, controller, motionGroup, behavior, options) {
8059
- const localVarAxiosArgs = await localVarAxiosParamCreator.setMotionGroupBehavior(cell, controller, motionGroup, behavior, options);
8179
+ async deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
8180
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options);
8060
8181
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8061
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotBehaviorApi.setMotionGroupBehavior']?.[localVarOperationServerIndex]?.url;
8182
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.deleteVirtualRobotCoordinateSystem']?.[localVarOperationServerIndex]?.url;
8062
8183
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8063
8184
  },
8064
- };
8065
- };
8066
- /**
8067
- * VirtualRobotBehaviorApi - factory interface
8068
- * @export
8069
- */
8070
- export const VirtualRobotBehaviorApiFactory = function (configuration, basePath, axios) {
8071
- const localVarFp = VirtualRobotBehaviorApiFp(configuration);
8072
- return {
8073
8185
  /**
8074
- * <!-- theme: danger --> > Websocket endpoint This stream provides the commanded joint state and sets a motion groups joint configuration, e.g. to move a motion group. The concept is that an application is using the Motion Service to move a motion group. The Motion Service is commanding the desired joint configuration of a motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! It is __not__ providing the *actual* joint state! (Please file a request - if you need a stream of the *actual* joint state) When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configurations. CAUTION: Incoming joint configurations are not visualized and their velocity limits are not checked. we don\'t even check limits! Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion group. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
8075
- * @summary Stream Joint Configuration
8186
+ * Removes the TCP from the motion group. An unknown TCP is a valid input.
8187
+ * @summary Remove TCP
8076
8188
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8077
8189
  * @param {string} controller Unique identifier to address a controller in the cell.
8078
- * @param {ExternalJointStreamDatapoint} externalJointStreamDatapoint
8190
+ * @param {string} motionGroup The motion-group identifier.
8191
+ * @param {string} tcp The unique identifier of a TCP.
8079
8192
  * @param {*} [options] Override http request option.
8080
8193
  * @throws {RequiredError}
8081
8194
  */
8082
- externalJointsStream(cell, controller, externalJointStreamDatapoint, options) {
8083
- return localVarFp.externalJointsStream(cell, controller, externalJointStreamDatapoint, options).then((request) => request(axios, basePath));
8195
+ async deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
8196
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options);
8197
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8198
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.deleteVirtualRobotTcp']?.[localVarOperationServerIndex]?.url;
8199
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8084
8200
  },
8085
8201
  /**
8086
- * Get the current robot motion group behavior - please see the setter [setMotionGroupBehavior](setMotionGroupBehavior) and the enum for details.
8087
- * @summary Behavior
8202
+ * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
8203
+ * @summary Get Emergency Stop State
8088
8204
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8089
8205
  * @param {string} controller Unique identifier to address a controller in the cell.
8090
- * @param {string} motionGroup The motion-group identifier.
8091
8206
  * @param {*} [options] Override http request option.
8092
8207
  * @throws {RequiredError}
8093
8208
  */
8094
- getMotionGroupBehavior(cell, controller, motionGroup, options) {
8095
- return localVarFp.getMotionGroupBehavior(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
8209
+ async getEmergencyStop(cell, controller, options) {
8210
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getEmergencyStop(cell, controller, options);
8211
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8212
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.getEmergencyStop']?.[localVarOperationServerIndex]?.url;
8213
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8096
8214
  },
8097
8215
  /**
8098
- * Switch robot motion group behavior.
8099
- * @summary Switch Behavior
8216
+ * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
8217
+ * @summary Get Motion Group State
8100
8218
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8101
8219
  * @param {string} controller Unique identifier to address a controller in the cell.
8102
8220
  * @param {string} motionGroup The motion-group identifier.
8103
- * @param {Behavior} [behavior]
8104
8221
  * @param {*} [options] Override http request option.
8105
8222
  * @throws {RequiredError}
8106
8223
  */
8107
- setMotionGroupBehavior(cell, controller, motionGroup, behavior, options) {
8108
- return localVarFp.setMotionGroupBehavior(cell, controller, motionGroup, behavior, options).then((request) => request(axios, basePath));
8224
+ async getMotionGroupState(cell, controller, motionGroup, options) {
8225
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroupState(cell, controller, motionGroup, options);
8226
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8227
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.getMotionGroupState']?.[localVarOperationServerIndex]?.url;
8228
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8109
8229
  },
8110
- };
8111
- };
8112
- /**
8113
- * VirtualRobotBehaviorApi - object-oriented interface
8114
- * @export
8115
- * @class VirtualRobotBehaviorApi
8116
- * @extends {BaseAPI}
8117
- */
8118
- export class VirtualRobotBehaviorApi extends BaseAPI {
8119
- /**
8120
- * <!-- theme: danger --> > Websocket endpoint This stream provides the commanded joint state and sets a motion groups joint configuration, e.g. to move a motion group. The concept is that an application is using the Motion Service to move a motion group. The Motion Service is commanding the desired joint configuration of a motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! It is __not__ providing the *actual* joint state! (Please file a request - if you need a stream of the *actual* joint state) When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configurations. CAUTION: Incoming joint configurations are not visualized and their velocity limits are not checked. we don\'t even check limits! Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion group. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
8121
- * @summary Stream Joint Configuration
8122
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8123
- * @param {string} controller Unique identifier to address a controller in the cell.
8124
- * @param {ExternalJointStreamDatapoint} externalJointStreamDatapoint
8125
- * @param {*} [options] Override http request option.
8126
- * @throws {RequiredError}
8127
- * @memberof VirtualRobotBehaviorApi
8128
- */
8129
- externalJointsStream(cell, controller, externalJointStreamDatapoint, options) {
8130
- return VirtualRobotBehaviorApiFp(this.configuration).externalJointsStream(cell, controller, externalJointStreamDatapoint, options).then((request) => request(this.axios, this.basePath));
8131
- }
8132
- /**
8133
- * Get the current robot motion group behavior - please see the setter [setMotionGroupBehavior](setMotionGroupBehavior) and the enum for details.
8134
- * @summary Behavior
8135
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8136
- * @param {string} controller Unique identifier to address a controller in the cell.
8137
- * @param {string} motionGroup The motion-group identifier.
8138
- * @param {*} [options] Override http request option.
8139
- * @throws {RequiredError}
8140
- * @memberof VirtualRobotBehaviorApi
8141
- */
8142
- getMotionGroupBehavior(cell, controller, motionGroup, options) {
8143
- return VirtualRobotBehaviorApiFp(this.configuration).getMotionGroupBehavior(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
8144
- }
8145
- /**
8146
- * Switch robot motion group behavior.
8147
- * @summary Switch Behavior
8148
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8149
- * @param {string} controller Unique identifier to address a controller in the cell.
8150
- * @param {string} motionGroup The motion-group identifier.
8151
- * @param {Behavior} [behavior]
8152
- * @param {*} [options] Override http request option.
8153
- * @throws {RequiredError}
8154
- * @memberof VirtualRobotBehaviorApi
8155
- */
8156
- setMotionGroupBehavior(cell, controller, motionGroup, behavior, options) {
8157
- return VirtualRobotBehaviorApiFp(this.configuration).setMotionGroupBehavior(cell, controller, motionGroup, behavior, options).then((request) => request(this.axios, this.basePath));
8158
- }
8159
- }
8160
- /**
8161
- * VirtualRobotModeApi - axios parameter creator
8162
- * @export
8163
- */
8164
- export const VirtualRobotModeApiAxiosParamCreator = function (configuration) {
8165
- return {
8166
8230
  /**
8167
- * Get the cycle time of controller communication in [ms].
8168
- * @summary Cycle Time
8231
+ * Gets information on the motion group.
8232
+ * @summary Motion Group Description
8169
8233
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8170
8234
  * @param {string} controller Unique identifier to address a controller in the cell.
8171
8235
  * @param {*} [options] Override http request option.
8172
8236
  * @throws {RequiredError}
8173
8237
  */
8174
- getCycleTime: async (cell, controller, options = {}) => {
8175
- // verify required parameter 'cell' is not null or undefined
8176
- assertParamExists('getCycleTime', 'cell', cell);
8177
- // verify required parameter 'controller' is not null or undefined
8178
- assertParamExists('getCycleTime', 'controller', controller);
8179
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/cycle-time`
8180
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8181
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8182
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8183
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8184
- let baseOptions;
8185
- if (configuration) {
8186
- baseOptions = configuration.baseOptions;
8187
- }
8188
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
8189
- const localVarHeaderParameter = {};
8190
- const localVarQueryParameter = {};
8191
- // authentication BasicAuth required
8192
- // http basic authentication required
8193
- setBasicAuthToObject(localVarRequestOptions, configuration);
8194
- // authentication BearerAuth required
8195
- // http bearer authentication required
8196
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8197
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8198
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8199
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8200
- return {
8201
- url: toPathString(localVarUrlObj),
8202
- options: localVarRequestOptions,
8203
- };
8238
+ async getMotionGroups(cell, controller, options) {
8239
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getMotionGroups(cell, controller, options);
8240
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8241
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.getMotionGroups']?.[localVarOperationServerIndex]?.url;
8242
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8204
8243
  },
8205
8244
  /**
8206
- * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
8207
- * @summary Get Emergency Stop State
8245
+ * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
8246
+ * @summary Get Operation Mode
8208
8247
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8209
8248
  * @param {string} controller Unique identifier to address a controller in the cell.
8210
8249
  * @param {*} [options] Override http request option.
8211
8250
  * @throws {RequiredError}
8212
8251
  */
8213
- getEmergencyStop: async (cell, controller, options = {}) => {
8214
- // verify required parameter 'cell' is not null or undefined
8215
- assertParamExists('getEmergencyStop', 'cell', cell);
8216
- // verify required parameter 'controller' is not null or undefined
8217
- assertParamExists('getEmergencyStop', 'controller', controller);
8218
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/emergency-stop`
8219
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8220
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8221
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8222
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8223
- let baseOptions;
8224
- if (configuration) {
8225
- baseOptions = configuration.baseOptions;
8226
- }
8227
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
8228
- const localVarHeaderParameter = {};
8229
- const localVarQueryParameter = {};
8230
- // authentication BasicAuth required
8231
- // http basic authentication required
8232
- setBasicAuthToObject(localVarRequestOptions, configuration);
8233
- // authentication BearerAuth required
8234
- // http bearer authentication required
8235
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8236
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8237
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8238
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8239
- return {
8240
- url: toPathString(localVarUrlObj),
8241
- options: localVarRequestOptions,
8242
- };
8252
+ async getOperationMode(cell, controller, options) {
8253
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getOperationMode(cell, controller, options);
8254
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8255
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.getOperationMode']?.[localVarOperationServerIndex]?.url;
8256
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8243
8257
  },
8244
8258
  /**
8245
- * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
8246
- * @summary Get Operation Mode
8259
+ * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
8260
+ * @summary Get Mounting
8247
8261
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8248
8262
  * @param {string} controller Unique identifier to address a controller in the cell.
8263
+ * @param {string} motionGroup The motion-group identifier.
8249
8264
  * @param {*} [options] Override http request option.
8250
8265
  * @throws {RequiredError}
8251
8266
  */
8252
- getOperationMode: async (cell, controller, options = {}) => {
8253
- // verify required parameter 'cell' is not null or undefined
8254
- assertParamExists('getOperationMode', 'cell', cell);
8255
- // verify required parameter 'controller' is not null or undefined
8256
- assertParamExists('getOperationMode', 'controller', controller);
8257
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/operationmode`
8258
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8259
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8260
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8261
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8262
- let baseOptions;
8263
- if (configuration) {
8264
- baseOptions = configuration.baseOptions;
8265
- }
8266
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
8267
- const localVarHeaderParameter = {};
8268
- const localVarQueryParameter = {};
8269
- // authentication BasicAuth required
8270
- // http basic authentication required
8271
- setBasicAuthToObject(localVarRequestOptions, configuration);
8272
- // authentication BearerAuth required
8273
- // http bearer authentication required
8274
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8275
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8276
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8277
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8278
- return {
8279
- url: toPathString(localVarUrlObj),
8280
- options: localVarRequestOptions,
8281
- };
8267
+ async getVirtualRobotMounting(cell, controller, motionGroup, options) {
8268
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getVirtualRobotMounting(cell, controller, motionGroup, options);
8269
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8270
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.getVirtualRobotMounting']?.[localVarOperationServerIndex]?.url;
8271
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8282
8272
  },
8283
8273
  /**
8284
- * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
8285
- * @summary Push or Release Emergency Stop
8274
+ * Lists all coordinate systems on the robot controller.
8275
+ * @summary List Coordinate Systems
8286
8276
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8287
8277
  * @param {string} controller Unique identifier to address a controller in the cell.
8288
- * @param {boolean} [active]
8289
8278
  * @param {*} [options] Override http request option.
8290
8279
  * @throws {RequiredError}
8291
8280
  */
8292
- setEmergencyStop: async (cell, controller, active, options = {}) => {
8293
- // verify required parameter 'cell' is not null or undefined
8294
- assertParamExists('setEmergencyStop', 'cell', cell);
8295
- // verify required parameter 'controller' is not null or undefined
8296
- assertParamExists('setEmergencyStop', 'controller', controller);
8297
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/emergency-stop`
8298
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8299
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8300
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8301
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8302
- let baseOptions;
8303
- if (configuration) {
8304
- baseOptions = configuration.baseOptions;
8305
- }
8306
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
8307
- const localVarHeaderParameter = {};
8308
- const localVarQueryParameter = {};
8309
- // authentication BasicAuth required
8310
- // http basic authentication required
8311
- setBasicAuthToObject(localVarRequestOptions, configuration);
8312
- // authentication BearerAuth required
8313
- // http bearer authentication required
8314
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8315
- if (active !== undefined) {
8316
- localVarQueryParameter['active'] = active;
8317
- }
8318
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8319
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8320
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8321
- return {
8322
- url: toPathString(localVarUrlObj),
8323
- options: localVarRequestOptions,
8324
- };
8281
+ async listVirtualRobotCoordinateSystems(cell, controller, options) {
8282
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotCoordinateSystems(cell, controller, options);
8283
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8284
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.listVirtualRobotCoordinateSystems']?.[localVarOperationServerIndex]?.url;
8285
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8325
8286
  },
8326
8287
  /**
8327
- * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
8328
- * @summary Set Operation Mode
8288
+ * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
8289
+ * @summary List TCPs
8329
8290
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8330
8291
  * @param {string} controller Unique identifier to address a controller in the cell.
8331
- * @param {OperationMode} mode
8292
+ * @param {string} motionGroup The motion-group identifier.
8332
8293
  * @param {*} [options] Override http request option.
8333
8294
  * @throws {RequiredError}
8334
8295
  */
8335
- setOperationMode: async (cell, controller, mode, options = {}) => {
8336
- // verify required parameter 'cell' is not null or undefined
8337
- assertParamExists('setOperationMode', 'cell', cell);
8338
- // verify required parameter 'controller' is not null or undefined
8339
- assertParamExists('setOperationMode', 'controller', controller);
8340
- // verify required parameter 'mode' is not null or undefined
8341
- assertParamExists('setOperationMode', 'mode', mode);
8342
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/operationmode`
8343
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8344
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8345
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8346
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8347
- let baseOptions;
8348
- if (configuration) {
8349
- baseOptions = configuration.baseOptions;
8350
- }
8351
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
8352
- const localVarHeaderParameter = {};
8353
- const localVarQueryParameter = {};
8354
- // authentication BasicAuth required
8355
- // http basic authentication required
8356
- setBasicAuthToObject(localVarRequestOptions, configuration);
8357
- // authentication BearerAuth required
8358
- // http bearer authentication required
8359
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8360
- if (mode !== undefined) {
8361
- localVarQueryParameter['mode'] = mode;
8362
- }
8363
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8364
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8365
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8366
- return {
8367
- url: toPathString(localVarUrlObj),
8368
- options: localVarRequestOptions,
8369
- };
8296
+ async listVirtualRobotTcps(cell, controller, motionGroup, options) {
8297
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotTcps(cell, controller, motionGroup, options);
8298
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8299
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.listVirtualRobotTcps']?.[localVarOperationServerIndex]?.url;
8300
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8370
8301
  },
8371
- };
8372
- };
8373
- /**
8374
- * VirtualRobotModeApi - functional programming interface
8375
- * @export
8376
- */
8377
- export const VirtualRobotModeApiFp = function (configuration) {
8378
- const localVarAxiosParamCreator = VirtualRobotModeApiAxiosParamCreator(configuration);
8379
- return {
8380
8302
  /**
8381
- * Get the cycle time of controller communication in [ms].
8382
- * @summary Cycle Time
8303
+ * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
8304
+ * @summary Push or Release Emergency Stop
8383
8305
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8384
8306
  * @param {string} controller Unique identifier to address a controller in the cell.
8307
+ * @param {boolean} [active]
8385
8308
  * @param {*} [options] Override http request option.
8386
8309
  * @throws {RequiredError}
8387
8310
  */
8388
- async getCycleTime(cell, controller, options) {
8389
- const localVarAxiosArgs = await localVarAxiosParamCreator.getCycleTime(cell, controller, options);
8311
+ async setEmergencyStop(cell, controller, active, options) {
8312
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setEmergencyStop(cell, controller, active, options);
8390
8313
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8391
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotModeApi.getCycleTime']?.[localVarOperationServerIndex]?.url;
8314
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.setEmergencyStop']?.[localVarOperationServerIndex]?.url;
8392
8315
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8393
8316
  },
8394
8317
  /**
8395
- * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
8396
- * @summary Get Emergency Stop State
8318
+ * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
8319
+ * @summary Set Motion Group State
8397
8320
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8398
8321
  * @param {string} controller Unique identifier to address a controller in the cell.
8322
+ * @param {string} motionGroup The motion-group identifier.
8323
+ * @param {MotionGroupJoints} motionGroupJoints
8399
8324
  * @param {*} [options] Override http request option.
8400
8325
  * @throws {RequiredError}
8401
8326
  */
8402
- async getEmergencyStop(cell, controller, options) {
8403
- const localVarAxiosArgs = await localVarAxiosParamCreator.getEmergencyStop(cell, controller, options);
8327
+ async setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
8328
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options);
8404
8329
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8405
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotModeApi.getEmergencyStop']?.[localVarOperationServerIndex]?.url;
8330
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.setMotionGroupState']?.[localVarOperationServerIndex]?.url;
8406
8331
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8407
8332
  },
8408
8333
  /**
8409
- * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
8410
- * @summary Get Operation Mode
8334
+ * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
8335
+ * @summary Set Operation Mode
8411
8336
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8412
8337
  * @param {string} controller Unique identifier to address a controller in the cell.
8338
+ * @param {OperationMode} mode
8413
8339
  * @param {*} [options] Override http request option.
8414
8340
  * @throws {RequiredError}
8415
8341
  */
8416
- async getOperationMode(cell, controller, options) {
8417
- const localVarAxiosArgs = await localVarAxiosParamCreator.getOperationMode(cell, controller, options);
8342
+ async setOperationMode(cell, controller, mode, options) {
8343
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setOperationMode(cell, controller, mode, options);
8418
8344
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8419
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotModeApi.getOperationMode']?.[localVarOperationServerIndex]?.url;
8345
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.setOperationMode']?.[localVarOperationServerIndex]?.url;
8420
8346
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8421
8347
  },
8422
8348
  /**
8423
- * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
8424
- * @summary Push or Release Emergency Stop
8349
+ * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
8350
+ * @summary Set Mounting
8425
8351
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8426
8352
  * @param {string} controller Unique identifier to address a controller in the cell.
8427
- * @param {boolean} [active]
8353
+ * @param {string} motionGroup The motion-group identifier.
8354
+ * @param {CoordinateSystem} coordinateSystem
8428
8355
  * @param {*} [options] Override http request option.
8429
8356
  * @throws {RequiredError}
8430
8357
  */
8431
- async setEmergencyStop(cell, controller, active, options) {
8432
- const localVarAxiosArgs = await localVarAxiosParamCreator.setEmergencyStop(cell, controller, active, options);
8358
+ async setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
8359
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options);
8433
8360
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8434
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotModeApi.setEmergencyStop']?.[localVarOperationServerIndex]?.url;
8361
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerApi.setVirtualRobotMounting']?.[localVarOperationServerIndex]?.url;
8435
8362
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8436
8363
  },
8364
+ };
8365
+ };
8366
+ /**
8367
+ * VirtualControllerApi - factory interface
8368
+ * @export
8369
+ */
8370
+ export const VirtualControllerApiFactory = function (configuration, basePath, axios) {
8371
+ const localVarFp = VirtualControllerApiFp(configuration);
8372
+ return {
8437
8373
  /**
8438
- * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
8439
- * @summary Set Operation Mode
8374
+ * Adds a coordinate system to the robot controller.
8375
+ * @summary Add Coordinate Systems
8440
8376
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8441
8377
  * @param {string} controller Unique identifier to address a controller in the cell.
8442
- * @param {OperationMode} mode
8378
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8379
+ * @param {CoordinateSystemData} coordinateSystemData
8443
8380
  * @param {*} [options] Override http request option.
8444
8381
  * @throws {RequiredError}
8445
8382
  */
8446
- async setOperationMode(cell, controller, mode, options) {
8447
- const localVarAxiosArgs = await localVarAxiosParamCreator.setOperationMode(cell, controller, mode, options);
8448
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8449
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotModeApi.setOperationMode']?.[localVarOperationServerIndex]?.url;
8450
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8383
+ addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options) {
8384
+ return localVarFp.addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options).then((request) => request(axios, basePath));
8451
8385
  },
8452
- };
8453
- };
8454
- /**
8455
- * VirtualRobotModeApi - factory interface
8456
- * @export
8457
- */
8458
- export const VirtualRobotModeApiFactory = function (configuration, basePath, axios) {
8459
- const localVarFp = VirtualRobotModeApiFp(configuration);
8460
- return {
8461
8386
  /**
8462
- * Get the cycle time of controller communication in [ms].
8463
- * @summary Cycle Time
8387
+ * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
8388
+ * @summary Add TCP
8464
8389
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8465
8390
  * @param {string} controller Unique identifier to address a controller in the cell.
8391
+ * @param {string} motionGroup The motion-group identifier.
8392
+ * @param {string} tcp The unique identifier of a TCP.
8393
+ * @param {RobotTcpData} robotTcpData
8466
8394
  * @param {*} [options] Override http request option.
8467
8395
  * @throws {RequiredError}
8468
8396
  */
8469
- getCycleTime(cell, controller, options) {
8470
- return localVarFp.getCycleTime(cell, controller, options).then((request) => request(axios, basePath));
8397
+ addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options) {
8398
+ return localVarFp.addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options).then((request) => request(axios, basePath));
8399
+ },
8400
+ /**
8401
+ * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
8402
+ * @summary Remove Coordinate System
8403
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8404
+ * @param {string} controller Unique identifier to address a controller in the cell.
8405
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8406
+ * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
8407
+ * @param {*} [options] Override http request option.
8408
+ * @throws {RequiredError}
8409
+ */
8410
+ deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
8411
+ return localVarFp.deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options).then((request) => request(axios, basePath));
8412
+ },
8413
+ /**
8414
+ * Removes the TCP from the motion group. An unknown TCP is a valid input.
8415
+ * @summary Remove TCP
8416
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8417
+ * @param {string} controller Unique identifier to address a controller in the cell.
8418
+ * @param {string} motionGroup The motion-group identifier.
8419
+ * @param {string} tcp The unique identifier of a TCP.
8420
+ * @param {*} [options] Override http request option.
8421
+ * @throws {RequiredError}
8422
+ */
8423
+ deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
8424
+ return localVarFp.deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options).then((request) => request(axios, basePath));
8471
8425
  },
8472
8426
  /**
8473
8427
  * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
@@ -8480,6 +8434,29 @@ export const VirtualRobotModeApiFactory = function (configuration, basePath, axi
8480
8434
  getEmergencyStop(cell, controller, options) {
8481
8435
  return localVarFp.getEmergencyStop(cell, controller, options).then((request) => request(axios, basePath));
8482
8436
  },
8437
+ /**
8438
+ * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
8439
+ * @summary Get Motion Group State
8440
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8441
+ * @param {string} controller Unique identifier to address a controller in the cell.
8442
+ * @param {string} motionGroup The motion-group identifier.
8443
+ * @param {*} [options] Override http request option.
8444
+ * @throws {RequiredError}
8445
+ */
8446
+ getMotionGroupState(cell, controller, motionGroup, options) {
8447
+ return localVarFp.getMotionGroupState(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
8448
+ },
8449
+ /**
8450
+ * Gets information on the motion group.
8451
+ * @summary Motion Group Description
8452
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8453
+ * @param {string} controller Unique identifier to address a controller in the cell.
8454
+ * @param {*} [options] Override http request option.
8455
+ * @throws {RequiredError}
8456
+ */
8457
+ getMotionGroups(cell, controller, options) {
8458
+ return localVarFp.getMotionGroups(cell, controller, options).then((request) => request(axios, basePath));
8459
+ },
8483
8460
  /**
8484
8461
  * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
8485
8462
  * @summary Get Operation Mode
@@ -8491,6 +8468,41 @@ export const VirtualRobotModeApiFactory = function (configuration, basePath, axi
8491
8468
  getOperationMode(cell, controller, options) {
8492
8469
  return localVarFp.getOperationMode(cell, controller, options).then((request) => request(axios, basePath));
8493
8470
  },
8471
+ /**
8472
+ * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
8473
+ * @summary Get Mounting
8474
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8475
+ * @param {string} controller Unique identifier to address a controller in the cell.
8476
+ * @param {string} motionGroup The motion-group identifier.
8477
+ * @param {*} [options] Override http request option.
8478
+ * @throws {RequiredError}
8479
+ */
8480
+ getVirtualRobotMounting(cell, controller, motionGroup, options) {
8481
+ return localVarFp.getVirtualRobotMounting(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
8482
+ },
8483
+ /**
8484
+ * Lists all coordinate systems on the robot controller.
8485
+ * @summary List Coordinate Systems
8486
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8487
+ * @param {string} controller Unique identifier to address a controller in the cell.
8488
+ * @param {*} [options] Override http request option.
8489
+ * @throws {RequiredError}
8490
+ */
8491
+ listVirtualRobotCoordinateSystems(cell, controller, options) {
8492
+ return localVarFp.listVirtualRobotCoordinateSystems(cell, controller, options).then((request) => request(axios, basePath));
8493
+ },
8494
+ /**
8495
+ * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
8496
+ * @summary List TCPs
8497
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8498
+ * @param {string} controller Unique identifier to address a controller in the cell.
8499
+ * @param {string} motionGroup The motion-group identifier.
8500
+ * @param {*} [options] Override http request option.
8501
+ * @throws {RequiredError}
8502
+ */
8503
+ listVirtualRobotTcps(cell, controller, motionGroup, options) {
8504
+ return localVarFp.listVirtualRobotTcps(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
8505
+ },
8494
8506
  /**
8495
8507
  * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
8496
8508
  * @summary Push or Release Emergency Stop
@@ -8503,6 +8515,19 @@ export const VirtualRobotModeApiFactory = function (configuration, basePath, axi
8503
8515
  setEmergencyStop(cell, controller, active, options) {
8504
8516
  return localVarFp.setEmergencyStop(cell, controller, active, options).then((request) => request(axios, basePath));
8505
8517
  },
8518
+ /**
8519
+ * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
8520
+ * @summary Set Motion Group State
8521
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8522
+ * @param {string} controller Unique identifier to address a controller in the cell.
8523
+ * @param {string} motionGroup The motion-group identifier.
8524
+ * @param {MotionGroupJoints} motionGroupJoints
8525
+ * @param {*} [options] Override http request option.
8526
+ * @throws {RequiredError}
8527
+ */
8528
+ setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
8529
+ return localVarFp.setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options).then((request) => request(axios, basePath));
8530
+ },
8506
8531
  /**
8507
8532
  * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
8508
8533
  * @summary Set Operation Mode
@@ -8515,26 +8540,84 @@ export const VirtualRobotModeApiFactory = function (configuration, basePath, axi
8515
8540
  setOperationMode(cell, controller, mode, options) {
8516
8541
  return localVarFp.setOperationMode(cell, controller, mode, options).then((request) => request(axios, basePath));
8517
8542
  },
8543
+ /**
8544
+ * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
8545
+ * @summary Set Mounting
8546
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8547
+ * @param {string} controller Unique identifier to address a controller in the cell.
8548
+ * @param {string} motionGroup The motion-group identifier.
8549
+ * @param {CoordinateSystem} coordinateSystem
8550
+ * @param {*} [options] Override http request option.
8551
+ * @throws {RequiredError}
8552
+ */
8553
+ setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
8554
+ return localVarFp.setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options).then((request) => request(axios, basePath));
8555
+ },
8518
8556
  };
8519
8557
  };
8520
8558
  /**
8521
- * VirtualRobotModeApi - object-oriented interface
8559
+ * VirtualControllerApi - object-oriented interface
8522
8560
  * @export
8523
- * @class VirtualRobotModeApi
8561
+ * @class VirtualControllerApi
8524
8562
  * @extends {BaseAPI}
8525
8563
  */
8526
- export class VirtualRobotModeApi extends BaseAPI {
8564
+ export class VirtualControllerApi extends BaseAPI {
8527
8565
  /**
8528
- * Get the cycle time of controller communication in [ms].
8529
- * @summary Cycle Time
8566
+ * Adds a coordinate system to the robot controller.
8567
+ * @summary Add Coordinate Systems
8530
8568
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8531
8569
  * @param {string} controller Unique identifier to address a controller in the cell.
8570
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8571
+ * @param {CoordinateSystemData} coordinateSystemData
8532
8572
  * @param {*} [options] Override http request option.
8533
8573
  * @throws {RequiredError}
8534
- * @memberof VirtualRobotModeApi
8574
+ * @memberof VirtualControllerApi
8535
8575
  */
8536
- getCycleTime(cell, controller, options) {
8537
- return VirtualRobotModeApiFp(this.configuration).getCycleTime(cell, controller, options).then((request) => request(this.axios, this.basePath));
8576
+ addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options) {
8577
+ return VirtualControllerApiFp(this.configuration).addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, coordinateSystemData, options).then((request) => request(this.axios, this.basePath));
8578
+ }
8579
+ /**
8580
+ * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
8581
+ * @summary Add TCP
8582
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8583
+ * @param {string} controller Unique identifier to address a controller in the cell.
8584
+ * @param {string} motionGroup The motion-group identifier.
8585
+ * @param {string} tcp The unique identifier of a TCP.
8586
+ * @param {RobotTcpData} robotTcpData
8587
+ * @param {*} [options] Override http request option.
8588
+ * @throws {RequiredError}
8589
+ * @memberof VirtualControllerApi
8590
+ */
8591
+ addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options) {
8592
+ return VirtualControllerApiFp(this.configuration).addVirtualRobotTcp(cell, controller, motionGroup, tcp, robotTcpData, options).then((request) => request(this.axios, this.basePath));
8593
+ }
8594
+ /**
8595
+ * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
8596
+ * @summary Remove Coordinate System
8597
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8598
+ * @param {string} controller Unique identifier to address a controller in the cell.
8599
+ * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8600
+ * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
8601
+ * @param {*} [options] Override http request option.
8602
+ * @throws {RequiredError}
8603
+ * @memberof VirtualControllerApi
8604
+ */
8605
+ deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
8606
+ return VirtualControllerApiFp(this.configuration).deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options).then((request) => request(this.axios, this.basePath));
8607
+ }
8608
+ /**
8609
+ * Removes the TCP from the motion group. An unknown TCP is a valid input.
8610
+ * @summary Remove TCP
8611
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8612
+ * @param {string} controller Unique identifier to address a controller in the cell.
8613
+ * @param {string} motionGroup The motion-group identifier.
8614
+ * @param {string} tcp The unique identifier of a TCP.
8615
+ * @param {*} [options] Override http request option.
8616
+ * @throws {RequiredError}
8617
+ * @memberof VirtualControllerApi
8618
+ */
8619
+ deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
8620
+ return VirtualControllerApiFp(this.configuration).deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options).then((request) => request(this.axios, this.basePath));
8538
8621
  }
8539
8622
  /**
8540
8623
  * Requests the Emergency Stop state of the virtual robot controller. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed when using virtual robot controllers.
@@ -8543,10 +8626,35 @@ export class VirtualRobotModeApi extends BaseAPI {
8543
8626
  * @param {string} controller Unique identifier to address a controller in the cell.
8544
8627
  * @param {*} [options] Override http request option.
8545
8628
  * @throws {RequiredError}
8546
- * @memberof VirtualRobotModeApi
8629
+ * @memberof VirtualControllerApi
8547
8630
  */
8548
8631
  getEmergencyStop(cell, controller, options) {
8549
- return VirtualRobotModeApiFp(this.configuration).getEmergencyStop(cell, controller, options).then((request) => request(this.axios, this.basePath));
8632
+ return VirtualControllerApiFp(this.configuration).getEmergencyStop(cell, controller, options).then((request) => request(this.axios, this.basePath));
8633
+ }
8634
+ /**
8635
+ * Get the current motion group state which provides values for the joints\' position, velocity and acceleration.
8636
+ * @summary Get Motion Group State
8637
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8638
+ * @param {string} controller Unique identifier to address a controller in the cell.
8639
+ * @param {string} motionGroup The motion-group identifier.
8640
+ * @param {*} [options] Override http request option.
8641
+ * @throws {RequiredError}
8642
+ * @memberof VirtualControllerApi
8643
+ */
8644
+ getMotionGroupState(cell, controller, motionGroup, options) {
8645
+ return VirtualControllerApiFp(this.configuration).getMotionGroupState(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
8646
+ }
8647
+ /**
8648
+ * Gets information on the motion group.
8649
+ * @summary Motion Group Description
8650
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8651
+ * @param {string} controller Unique identifier to address a controller in the cell.
8652
+ * @param {*} [options] Override http request option.
8653
+ * @throws {RequiredError}
8654
+ * @memberof VirtualControllerApi
8655
+ */
8656
+ getMotionGroups(cell, controller, options) {
8657
+ return VirtualControllerApiFp(this.configuration).getMotionGroups(cell, controller, options).then((request) => request(this.axios, this.basePath));
8550
8658
  }
8551
8659
  /**
8552
8660
  * Requests the Operation Mode of the virtual robot controller. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). **Note:** The Operating Mode can only change be changed via API when using virtual robot controllers.
@@ -8555,10 +8663,48 @@ export class VirtualRobotModeApi extends BaseAPI {
8555
8663
  * @param {string} controller Unique identifier to address a controller in the cell.
8556
8664
  * @param {*} [options] Override http request option.
8557
8665
  * @throws {RequiredError}
8558
- * @memberof VirtualRobotModeApi
8666
+ * @memberof VirtualControllerApi
8559
8667
  */
8560
8668
  getOperationMode(cell, controller, options) {
8561
- return VirtualRobotModeApiFp(this.configuration).getOperationMode(cell, controller, options).then((request) => request(this.axios, this.basePath));
8669
+ return VirtualControllerApiFp(this.configuration).getOperationMode(cell, controller, options).then((request) => request(this.axios, this.basePath));
8670
+ }
8671
+ /**
8672
+ * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
8673
+ * @summary Get Mounting
8674
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8675
+ * @param {string} controller Unique identifier to address a controller in the cell.
8676
+ * @param {string} motionGroup The motion-group identifier.
8677
+ * @param {*} [options] Override http request option.
8678
+ * @throws {RequiredError}
8679
+ * @memberof VirtualControllerApi
8680
+ */
8681
+ getVirtualRobotMounting(cell, controller, motionGroup, options) {
8682
+ return VirtualControllerApiFp(this.configuration).getVirtualRobotMounting(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
8683
+ }
8684
+ /**
8685
+ * Lists all coordinate systems on the robot controller.
8686
+ * @summary List Coordinate Systems
8687
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8688
+ * @param {string} controller Unique identifier to address a controller in the cell.
8689
+ * @param {*} [options] Override http request option.
8690
+ * @throws {RequiredError}
8691
+ * @memberof VirtualControllerApi
8692
+ */
8693
+ listVirtualRobotCoordinateSystems(cell, controller, options) {
8694
+ return VirtualControllerApiFp(this.configuration).listVirtualRobotCoordinateSystems(cell, controller, options).then((request) => request(this.axios, this.basePath));
8695
+ }
8696
+ /**
8697
+ * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
8698
+ * @summary List TCPs
8699
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8700
+ * @param {string} controller Unique identifier to address a controller in the cell.
8701
+ * @param {string} motionGroup The motion-group identifier.
8702
+ * @param {*} [options] Override http request option.
8703
+ * @throws {RequiredError}
8704
+ * @memberof VirtualControllerApi
8705
+ */
8706
+ listVirtualRobotTcps(cell, controller, motionGroup, options) {
8707
+ return VirtualControllerApiFp(this.configuration).listVirtualRobotTcps(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
8562
8708
  }
8563
8709
  /**
8564
8710
  * Activates or releases the Emergency Stop on the virtual robot controller. Activating the Emergency Stop stops the execution of all motions. The stop is executed on physical controllers immediately not gracefully and not on paths. Due to restricted physical behavior of the virtual robot controller, the Emergency Stop is executed on paths. To return to normal operation the Emergency Stop needs to be released. Use [getCurrentMotionGroupState](getCurrentMotionGroupState) to get the Emergency Stop state regardless of the controller type. There the Emergency Stop state is visible as the `safety_state`. > **NOTE** > > The Emergency Stop state can only be changed via API when using virtual robot controllers.
@@ -8568,10 +8714,24 @@ export class VirtualRobotModeApi extends BaseAPI {
8568
8714
  * @param {boolean} [active]
8569
8715
  * @param {*} [options] Override http request option.
8570
8716
  * @throws {RequiredError}
8571
- * @memberof VirtualRobotModeApi
8717
+ * @memberof VirtualControllerApi
8572
8718
  */
8573
8719
  setEmergencyStop(cell, controller, active, options) {
8574
- return VirtualRobotModeApiFp(this.configuration).setEmergencyStop(cell, controller, active, options).then((request) => request(this.axios, this.basePath));
8720
+ return VirtualControllerApiFp(this.configuration).setEmergencyStop(cell, controller, active, options).then((request) => request(this.axios, this.basePath));
8721
+ }
8722
+ /**
8723
+ * Sets the values for joint position, joint velocity or joint acceleration of a motion group state. The values are immediately applied to the joints of the motion group. We recommend to only use the endpoint when the motion group is in monitor mode. In case the motion group is controlled, currently jogging or planning motions, the values are overridden by the controller or an error may occur.
8724
+ * @summary Set Motion Group State
8725
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8726
+ * @param {string} controller Unique identifier to address a controller in the cell.
8727
+ * @param {string} motionGroup The motion-group identifier.
8728
+ * @param {MotionGroupJoints} motionGroupJoints
8729
+ * @param {*} [options] Override http request option.
8730
+ * @throws {RequiredError}
8731
+ * @memberof VirtualControllerApi
8732
+ */
8733
+ setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options) {
8734
+ return VirtualControllerApiFp(this.configuration).setMotionGroupState(cell, controller, motionGroup, motionGroupJoints, options).then((request) => request(this.axios, this.basePath));
8575
8735
  }
8576
8736
  /**
8577
8737
  * Changes the Operation Mode of the virtual robot controller to the specified value. To get the Operation Mode regardless of the controller type use [getCurrentMotionGroupState](getCurrentMotionGroupState). > **NOTE** > > The Operating Mode can only change be changed via API when using virtual robot controllers.
@@ -8581,224 +8741,51 @@ export class VirtualRobotModeApi extends BaseAPI {
8581
8741
  * @param {OperationMode} mode
8582
8742
  * @param {*} [options] Override http request option.
8583
8743
  * @throws {RequiredError}
8584
- * @memberof VirtualRobotModeApi
8744
+ * @memberof VirtualControllerApi
8585
8745
  */
8586
8746
  setOperationMode(cell, controller, mode, options) {
8587
- return VirtualRobotModeApiFp(this.configuration).setOperationMode(cell, controller, mode, options).then((request) => request(this.axios, this.basePath));
8747
+ return VirtualControllerApiFp(this.configuration).setOperationMode(cell, controller, mode, options).then((request) => request(this.axios, this.basePath));
8748
+ }
8749
+ /**
8750
+ * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
8751
+ * @summary Set Mounting
8752
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
8753
+ * @param {string} controller Unique identifier to address a controller in the cell.
8754
+ * @param {string} motionGroup The motion-group identifier.
8755
+ * @param {CoordinateSystem} coordinateSystem
8756
+ * @param {*} [options] Override http request option.
8757
+ * @throws {RequiredError}
8758
+ * @memberof VirtualControllerApi
8759
+ */
8760
+ setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
8761
+ return VirtualControllerApiFp(this.configuration).setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options).then((request) => request(this.axios, this.basePath));
8588
8762
  }
8589
8763
  }
8590
8764
  /**
8591
- * VirtualRobotSetupApi - axios parameter creator
8765
+ * VirtualControllerBehaviorApi - axios parameter creator
8592
8766
  * @export
8593
8767
  */
8594
- export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8768
+ export const VirtualControllerBehaviorApiAxiosParamCreator = function (configuration) {
8595
8769
  return {
8596
- /**
8597
- * Adds a coordinate system to the robot controller.
8598
- * @summary Add Coordinate Systems
8599
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8600
- * @param {string} controller Unique identifier to address a controller in the cell.
8601
- * @param {CoordinateSystem} coordinateSystem
8602
- * @param {*} [options] Override http request option.
8603
- * @throws {RequiredError}
8604
- */
8605
- addVirtualRobotCoordinateSystem: async (cell, controller, coordinateSystem, options = {}) => {
8606
- // verify required parameter 'cell' is not null or undefined
8607
- assertParamExists('addVirtualRobotCoordinateSystem', 'cell', cell);
8608
- // verify required parameter 'controller' is not null or undefined
8609
- assertParamExists('addVirtualRobotCoordinateSystem', 'controller', controller);
8610
- // verify required parameter 'coordinateSystem' is not null or undefined
8611
- assertParamExists('addVirtualRobotCoordinateSystem', 'coordinateSystem', coordinateSystem);
8612
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/coordinate-systems`
8613
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8614
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8615
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8616
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8617
- let baseOptions;
8618
- if (configuration) {
8619
- baseOptions = configuration.baseOptions;
8620
- }
8621
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
8622
- const localVarHeaderParameter = {};
8623
- const localVarQueryParameter = {};
8624
- // authentication BasicAuth required
8625
- // http basic authentication required
8626
- setBasicAuthToObject(localVarRequestOptions, configuration);
8627
- // authentication BearerAuth required
8628
- // http bearer authentication required
8629
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8630
- localVarHeaderParameter['Content-Type'] = 'application/json';
8631
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8632
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8633
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8634
- localVarRequestOptions.data = serializeDataIfNeeded(coordinateSystem, localVarRequestOptions, configuration);
8635
- return {
8636
- url: toPathString(localVarUrlObj),
8637
- options: localVarRequestOptions,
8638
- };
8639
- },
8640
- /**
8641
- * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
8642
- * @summary Add TCP
8643
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8644
- * @param {string} controller Unique identifier to address a controller in the cell.
8645
- * @param {string} motionGroup The motion-group identifier.
8646
- * @param {RobotTcp} robotTcp
8647
- * @param {*} [options] Override http request option.
8648
- * @throws {RequiredError}
8649
- */
8650
- addVirtualRobotTcp: async (cell, controller, motionGroup, robotTcp, options = {}) => {
8651
- // verify required parameter 'cell' is not null or undefined
8652
- assertParamExists('addVirtualRobotTcp', 'cell', cell);
8653
- // verify required parameter 'controller' is not null or undefined
8654
- assertParamExists('addVirtualRobotTcp', 'controller', controller);
8655
- // verify required parameter 'motionGroup' is not null or undefined
8656
- assertParamExists('addVirtualRobotTcp', 'motionGroup', motionGroup);
8657
- // verify required parameter 'robotTcp' is not null or undefined
8658
- assertParamExists('addVirtualRobotTcp', 'robotTcp', robotTcp);
8659
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/tcps`
8660
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8661
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8662
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
8663
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8664
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8665
- let baseOptions;
8666
- if (configuration) {
8667
- baseOptions = configuration.baseOptions;
8668
- }
8669
- const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
8670
- const localVarHeaderParameter = {};
8671
- const localVarQueryParameter = {};
8672
- // authentication BasicAuth required
8673
- // http basic authentication required
8674
- setBasicAuthToObject(localVarRequestOptions, configuration);
8675
- // authentication BearerAuth required
8676
- // http bearer authentication required
8677
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8678
- localVarHeaderParameter['Content-Type'] = 'application/json';
8679
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8680
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8681
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8682
- localVarRequestOptions.data = serializeDataIfNeeded(robotTcp, localVarRequestOptions, configuration);
8683
- return {
8684
- url: toPathString(localVarUrlObj),
8685
- options: localVarRequestOptions,
8686
- };
8687
- },
8688
- /**
8689
- * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
8690
- * @summary Remove Coordinate System
8691
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8692
- * @param {string} controller Unique identifier to address a controller in the cell.
8693
- * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
8694
- * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
8695
- * @param {*} [options] Override http request option.
8696
- * @throws {RequiredError}
8697
- */
8698
- deleteVirtualRobotCoordinateSystem: async (cell, controller, coordinateSystem, deleteDependent, options = {}) => {
8699
- // verify required parameter 'cell' is not null or undefined
8700
- assertParamExists('deleteVirtualRobotCoordinateSystem', 'cell', cell);
8701
- // verify required parameter 'controller' is not null or undefined
8702
- assertParamExists('deleteVirtualRobotCoordinateSystem', 'controller', controller);
8703
- // verify required parameter 'coordinateSystem' is not null or undefined
8704
- assertParamExists('deleteVirtualRobotCoordinateSystem', 'coordinateSystem', coordinateSystem);
8705
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/coordinate-systems/{coordinate-system}`
8706
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8707
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8708
- .replace(`{${"coordinate-system"}}`, encodeURIComponent(String(coordinateSystem)));
8709
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8710
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8711
- let baseOptions;
8712
- if (configuration) {
8713
- baseOptions = configuration.baseOptions;
8714
- }
8715
- const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };
8716
- const localVarHeaderParameter = {};
8717
- const localVarQueryParameter = {};
8718
- // authentication BasicAuth required
8719
- // http basic authentication required
8720
- setBasicAuthToObject(localVarRequestOptions, configuration);
8721
- // authentication BearerAuth required
8722
- // http bearer authentication required
8723
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8724
- if (deleteDependent !== undefined) {
8725
- localVarQueryParameter['delete_dependent'] = deleteDependent;
8726
- }
8727
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8728
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8729
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8730
- return {
8731
- url: toPathString(localVarUrlObj),
8732
- options: localVarRequestOptions,
8733
- };
8734
- },
8735
- /**
8736
- * Removes the TCP from the motion group. An unknown TCP is a valid input.
8737
- * @summary Remove TCP
8738
- * @param {string} cell Unique identifier addressing a cell in all API calls.
8739
- * @param {string} controller Unique identifier to address a controller in the cell.
8740
- * @param {string} motionGroup The motion-group identifier.
8741
- * @param {string} tcp The unique identifier of a TCP.
8742
- * @param {*} [options] Override http request option.
8743
- * @throws {RequiredError}
8744
- */
8745
- deleteVirtualRobotTcp: async (cell, controller, motionGroup, tcp, options = {}) => {
8746
- // verify required parameter 'cell' is not null or undefined
8747
- assertParamExists('deleteVirtualRobotTcp', 'cell', cell);
8748
- // verify required parameter 'controller' is not null or undefined
8749
- assertParamExists('deleteVirtualRobotTcp', 'controller', controller);
8750
- // verify required parameter 'motionGroup' is not null or undefined
8751
- assertParamExists('deleteVirtualRobotTcp', 'motionGroup', motionGroup);
8752
- // verify required parameter 'tcp' is not null or undefined
8753
- assertParamExists('deleteVirtualRobotTcp', 'tcp', tcp);
8754
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/tcps/{tcp}`
8755
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8756
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8757
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)))
8758
- .replace(`{${"tcp"}}`, encodeURIComponent(String(tcp)));
8759
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
8760
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8761
- let baseOptions;
8762
- if (configuration) {
8763
- baseOptions = configuration.baseOptions;
8764
- }
8765
- const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };
8766
- const localVarHeaderParameter = {};
8767
- const localVarQueryParameter = {};
8768
- // authentication BasicAuth required
8769
- // http basic authentication required
8770
- setBasicAuthToObject(localVarRequestOptions, configuration);
8771
- // authentication BearerAuth required
8772
- // http bearer authentication required
8773
- await setBearerAuthToObject(localVarHeaderParameter, configuration);
8774
- setSearchParams(localVarUrlObj, localVarQueryParameter);
8775
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8776
- localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8777
- return {
8778
- url: toPathString(localVarUrlObj),
8779
- options: localVarRequestOptions,
8780
- };
8781
- },
8782
- /**
8783
- * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
8784
- * @summary Get Mounting
8770
+ /**
8771
+ * <!-- theme: danger --> > Websocket endpoint This stream sends the commanded state (joint positions, velocities, accelerations, torques) for each motion group of the virtual controller and sets the joint configuration. Moving motion groups on virtual controllers can be executed by using Trajectory Planning and Trajectory Execution. Trajectory Execution commands the desired joint configuration to each motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! > **NOTE** > > This stream provides *commanded* joint states, it **doesn\'t provide actual joint states**. When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configuration. > **CAUTION** > > Incoming joint configurations are not visualized and their velocity limits are not checked. Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion groups. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
8772
+ * @summary Stream Joint Configuration
8785
8773
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8786
8774
  * @param {string} controller Unique identifier to address a controller in the cell.
8787
- * @param {string} motionGroup The motion-group identifier.
8775
+ * @param {ExternalJointStreamRequest} externalJointStreamRequest
8788
8776
  * @param {*} [options] Override http request option.
8789
8777
  * @throws {RequiredError}
8790
8778
  */
8791
- getVirtualRobotMounting: async (cell, controller, motionGroup, options = {}) => {
8779
+ externalJointsStream: async (cell, controller, externalJointStreamRequest, options = {}) => {
8792
8780
  // verify required parameter 'cell' is not null or undefined
8793
- assertParamExists('getVirtualRobotMounting', 'cell', cell);
8781
+ assertParamExists('externalJointsStream', 'cell', cell);
8794
8782
  // verify required parameter 'controller' is not null or undefined
8795
- assertParamExists('getVirtualRobotMounting', 'controller', controller);
8796
- // verify required parameter 'motionGroup' is not null or undefined
8797
- assertParamExists('getVirtualRobotMounting', 'motionGroup', motionGroup);
8798
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/mounting`
8783
+ assertParamExists('externalJointsStream', 'controller', controller);
8784
+ // verify required parameter 'externalJointStreamRequest' is not null or undefined
8785
+ assertParamExists('externalJointsStream', 'externalJointStreamRequest', externalJointStreamRequest);
8786
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/external-joints-stream`
8799
8787
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8800
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8801
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
8788
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8802
8789
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
8803
8790
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8804
8791
  let baseOptions;
@@ -8814,28 +8801,30 @@ export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8814
8801
  // authentication BearerAuth required
8815
8802
  // http bearer authentication required
8816
8803
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
8804
+ localVarHeaderParameter['Content-Type'] = 'application/json';
8817
8805
  setSearchParams(localVarUrlObj, localVarQueryParameter);
8818
8806
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8819
8807
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8808
+ localVarRequestOptions.data = serializeDataIfNeeded(externalJointStreamRequest, localVarRequestOptions, configuration);
8820
8809
  return {
8821
8810
  url: toPathString(localVarUrlObj),
8822
8811
  options: localVarRequestOptions,
8823
8812
  };
8824
8813
  },
8825
8814
  /**
8826
- * Lists all coordinate systems on the robot controller.
8827
- * @summary List Coordinate Systems
8815
+ * Get the cycle time of controller communication in [ms].
8816
+ * @summary Get Cycle Time
8828
8817
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8829
8818
  * @param {string} controller Unique identifier to address a controller in the cell.
8830
8819
  * @param {*} [options] Override http request option.
8831
8820
  * @throws {RequiredError}
8832
8821
  */
8833
- listVirtualRobotCoordinateSystems: async (cell, controller, options = {}) => {
8822
+ getCycleTime: async (cell, controller, options = {}) => {
8834
8823
  // verify required parameter 'cell' is not null or undefined
8835
- assertParamExists('listVirtualRobotCoordinateSystems', 'cell', cell);
8824
+ assertParamExists('getCycleTime', 'cell', cell);
8836
8825
  // verify required parameter 'controller' is not null or undefined
8837
- assertParamExists('listVirtualRobotCoordinateSystems', 'controller', controller);
8838
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/coordinate-systems`
8826
+ assertParamExists('getCycleTime', 'controller', controller);
8827
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/cycle-time`
8839
8828
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8840
8829
  .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8841
8830
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
@@ -8862,25 +8851,21 @@ export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8862
8851
  };
8863
8852
  },
8864
8853
  /**
8865
- * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
8866
- * @summary List TCPs
8854
+ * Get the current virtual controller behavior - please see the setter [setVirtualRobotBehavior](setVirtualRobotBehavior) and the enum for details.
8855
+ * @summary Get Behavior
8867
8856
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8868
8857
  * @param {string} controller Unique identifier to address a controller in the cell.
8869
- * @param {string} motionGroup The motion-group identifier.
8870
8858
  * @param {*} [options] Override http request option.
8871
8859
  * @throws {RequiredError}
8872
8860
  */
8873
- listVirtualRobotTcps: async (cell, controller, motionGroup, options = {}) => {
8861
+ getVirtualRobotBehavior: async (cell, controller, options = {}) => {
8874
8862
  // verify required parameter 'cell' is not null or undefined
8875
- assertParamExists('listVirtualRobotTcps', 'cell', cell);
8863
+ assertParamExists('getVirtualRobotBehavior', 'cell', cell);
8876
8864
  // verify required parameter 'controller' is not null or undefined
8877
- assertParamExists('listVirtualRobotTcps', 'controller', controller);
8878
- // verify required parameter 'motionGroup' is not null or undefined
8879
- assertParamExists('listVirtualRobotTcps', 'motionGroup', motionGroup);
8880
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/tcps`
8865
+ assertParamExists('getVirtualRobotBehavior', 'controller', controller);
8866
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/behavior`
8881
8867
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8882
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8883
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
8868
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8884
8869
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
8885
8870
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8886
8871
  let baseOptions;
@@ -8905,28 +8890,22 @@ export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8905
8890
  };
8906
8891
  },
8907
8892
  /**
8908
- * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
8909
- * @summary Set Mounting
8893
+ * Set virtual controller behavior.
8894
+ * @summary Set Behavior
8910
8895
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8911
8896
  * @param {string} controller Unique identifier to address a controller in the cell.
8912
- * @param {string} motionGroup The motion-group identifier.
8913
- * @param {CoordinateSystem} coordinateSystem
8897
+ * @param {Behavior} [behavior]
8914
8898
  * @param {*} [options] Override http request option.
8915
8899
  * @throws {RequiredError}
8916
8900
  */
8917
- setVirtualRobotMounting: async (cell, controller, motionGroup, coordinateSystem, options = {}) => {
8901
+ setVirtualRobotBehavior: async (cell, controller, behavior, options = {}) => {
8918
8902
  // verify required parameter 'cell' is not null or undefined
8919
- assertParamExists('setVirtualRobotMounting', 'cell', cell);
8903
+ assertParamExists('setVirtualRobotBehavior', 'cell', cell);
8920
8904
  // verify required parameter 'controller' is not null or undefined
8921
- assertParamExists('setVirtualRobotMounting', 'controller', controller);
8922
- // verify required parameter 'motionGroup' is not null or undefined
8923
- assertParamExists('setVirtualRobotMounting', 'motionGroup', motionGroup);
8924
- // verify required parameter 'coordinateSystem' is not null or undefined
8925
- assertParamExists('setVirtualRobotMounting', 'coordinateSystem', coordinateSystem);
8926
- const localVarPath = `/cells/{cell}/controllers/{controller}/teach-pendant/motion-groups/{motion-group}/mounting`
8905
+ assertParamExists('setVirtualRobotBehavior', 'controller', controller);
8906
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/behavior`
8927
8907
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
8928
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)))
8929
- .replace(`{${"motion-group"}}`, encodeURIComponent(String(motionGroup)));
8908
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
8930
8909
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
8931
8910
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8932
8911
  let baseOptions;
@@ -8942,11 +8921,12 @@ export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8942
8921
  // authentication BearerAuth required
8943
8922
  // http bearer authentication required
8944
8923
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
8945
- localVarHeaderParameter['Content-Type'] = 'application/json';
8924
+ if (behavior !== undefined) {
8925
+ localVarQueryParameter['behavior'] = behavior;
8926
+ }
8946
8927
  setSearchParams(localVarUrlObj, localVarQueryParameter);
8947
8928
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8948
8929
  localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
8949
- localVarRequestOptions.data = serializeDataIfNeeded(coordinateSystem, localVarRequestOptions, configuration);
8950
8930
  return {
8951
8931
  url: toPathString(localVarUrlObj),
8952
8932
  options: localVarRequestOptions,
@@ -8955,358 +8935,490 @@ export const VirtualRobotSetupApiAxiosParamCreator = function (configuration) {
8955
8935
  };
8956
8936
  };
8957
8937
  /**
8958
- * VirtualRobotSetupApi - functional programming interface
8938
+ * VirtualControllerBehaviorApi - functional programming interface
8959
8939
  * @export
8960
8940
  */
8961
- export const VirtualRobotSetupApiFp = function (configuration) {
8962
- const localVarAxiosParamCreator = VirtualRobotSetupApiAxiosParamCreator(configuration);
8941
+ export const VirtualControllerBehaviorApiFp = function (configuration) {
8942
+ const localVarAxiosParamCreator = VirtualControllerBehaviorApiAxiosParamCreator(configuration);
8963
8943
  return {
8964
8944
  /**
8965
- * Adds a coordinate system to the robot controller.
8966
- * @summary Add Coordinate Systems
8945
+ * <!-- theme: danger --> > Websocket endpoint This stream sends the commanded state (joint positions, velocities, accelerations, torques) for each motion group of the virtual controller and sets the joint configuration. Moving motion groups on virtual controllers can be executed by using Trajectory Planning and Trajectory Execution. Trajectory Execution commands the desired joint configuration to each motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! > **NOTE** > > This stream provides *commanded* joint states, it **doesn\'t provide actual joint states**. When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configuration. > **CAUTION** > > Incoming joint configurations are not visualized and their velocity limits are not checked. Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion groups. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
8946
+ * @summary Stream Joint Configuration
8967
8947
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8968
8948
  * @param {string} controller Unique identifier to address a controller in the cell.
8969
- * @param {CoordinateSystem} coordinateSystem
8949
+ * @param {ExternalJointStreamRequest} externalJointStreamRequest
8970
8950
  * @param {*} [options] Override http request option.
8971
8951
  * @throws {RequiredError}
8972
8952
  */
8973
- async addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options) {
8974
- const localVarAxiosArgs = await localVarAxiosParamCreator.addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options);
8953
+ async externalJointsStream(cell, controller, externalJointStreamRequest, options) {
8954
+ const localVarAxiosArgs = await localVarAxiosParamCreator.externalJointsStream(cell, controller, externalJointStreamRequest, options);
8975
8955
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8976
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.addVirtualRobotCoordinateSystem']?.[localVarOperationServerIndex]?.url;
8956
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerBehaviorApi.externalJointsStream']?.[localVarOperationServerIndex]?.url;
8977
8957
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8978
8958
  },
8979
8959
  /**
8980
- * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
8981
- * @summary Add TCP
8960
+ * Get the cycle time of controller communication in [ms].
8961
+ * @summary Get Cycle Time
8982
8962
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8983
8963
  * @param {string} controller Unique identifier to address a controller in the cell.
8984
- * @param {string} motionGroup The motion-group identifier.
8985
- * @param {RobotTcp} robotTcp
8986
8964
  * @param {*} [options] Override http request option.
8987
8965
  * @throws {RequiredError}
8988
8966
  */
8989
- async addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options) {
8990
- const localVarAxiosArgs = await localVarAxiosParamCreator.addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options);
8967
+ async getCycleTime(cell, controller, options) {
8968
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getCycleTime(cell, controller, options);
8991
8969
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8992
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.addVirtualRobotTcp']?.[localVarOperationServerIndex]?.url;
8970
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerBehaviorApi.getCycleTime']?.[localVarOperationServerIndex]?.url;
8993
8971
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8994
8972
  },
8995
8973
  /**
8996
- * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
8997
- * @summary Remove Coordinate System
8974
+ * Get the current virtual controller behavior - please see the setter [setVirtualRobotBehavior](setVirtualRobotBehavior) and the enum for details.
8975
+ * @summary Get Behavior
8998
8976
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8999
8977
  * @param {string} controller Unique identifier to address a controller in the cell.
9000
- * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
9001
- * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
9002
8978
  * @param {*} [options] Override http request option.
9003
8979
  * @throws {RequiredError}
9004
8980
  */
9005
- async deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
9006
- const localVarAxiosArgs = await localVarAxiosParamCreator.deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options);
8981
+ async getVirtualRobotBehavior(cell, controller, options) {
8982
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getVirtualRobotBehavior(cell, controller, options);
9007
8983
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9008
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.deleteVirtualRobotCoordinateSystem']?.[localVarOperationServerIndex]?.url;
8984
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerBehaviorApi.getVirtualRobotBehavior']?.[localVarOperationServerIndex]?.url;
9009
8985
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9010
8986
  },
9011
8987
  /**
9012
- * Removes the TCP from the motion group. An unknown TCP is a valid input.
9013
- * @summary Remove TCP
8988
+ * Set virtual controller behavior.
8989
+ * @summary Set Behavior
9014
8990
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9015
8991
  * @param {string} controller Unique identifier to address a controller in the cell.
9016
- * @param {string} motionGroup The motion-group identifier.
9017
- * @param {string} tcp The unique identifier of a TCP.
8992
+ * @param {Behavior} [behavior]
9018
8993
  * @param {*} [options] Override http request option.
9019
8994
  * @throws {RequiredError}
9020
8995
  */
9021
- async deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
9022
- const localVarAxiosArgs = await localVarAxiosParamCreator.deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options);
8996
+ async setVirtualRobotBehavior(cell, controller, behavior, options) {
8997
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setVirtualRobotBehavior(cell, controller, behavior, options);
9023
8998
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9024
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.deleteVirtualRobotTcp']?.[localVarOperationServerIndex]?.url;
8999
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerBehaviorApi.setVirtualRobotBehavior']?.[localVarOperationServerIndex]?.url;
9025
9000
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9026
9001
  },
9002
+ };
9003
+ };
9004
+ /**
9005
+ * VirtualControllerBehaviorApi - factory interface
9006
+ * @export
9007
+ */
9008
+ export const VirtualControllerBehaviorApiFactory = function (configuration, basePath, axios) {
9009
+ const localVarFp = VirtualControllerBehaviorApiFp(configuration);
9010
+ return {
9011
+ /**
9012
+ * <!-- theme: danger --> > Websocket endpoint This stream sends the commanded state (joint positions, velocities, accelerations, torques) for each motion group of the virtual controller and sets the joint configuration. Moving motion groups on virtual controllers can be executed by using Trajectory Planning and Trajectory Execution. Trajectory Execution commands the desired joint configuration to each motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! > **NOTE** > > This stream provides *commanded* joint states, it **doesn\'t provide actual joint states**. When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configuration. > **CAUTION** > > Incoming joint configurations are not visualized and their velocity limits are not checked. Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion groups. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
9013
+ * @summary Stream Joint Configuration
9014
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9015
+ * @param {string} controller Unique identifier to address a controller in the cell.
9016
+ * @param {ExternalJointStreamRequest} externalJointStreamRequest
9017
+ * @param {*} [options] Override http request option.
9018
+ * @throws {RequiredError}
9019
+ */
9020
+ externalJointsStream(cell, controller, externalJointStreamRequest, options) {
9021
+ return localVarFp.externalJointsStream(cell, controller, externalJointStreamRequest, options).then((request) => request(axios, basePath));
9022
+ },
9023
+ /**
9024
+ * Get the cycle time of controller communication in [ms].
9025
+ * @summary Get Cycle Time
9026
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9027
+ * @param {string} controller Unique identifier to address a controller in the cell.
9028
+ * @param {*} [options] Override http request option.
9029
+ * @throws {RequiredError}
9030
+ */
9031
+ getCycleTime(cell, controller, options) {
9032
+ return localVarFp.getCycleTime(cell, controller, options).then((request) => request(axios, basePath));
9033
+ },
9034
+ /**
9035
+ * Get the current virtual controller behavior - please see the setter [setVirtualRobotBehavior](setVirtualRobotBehavior) and the enum for details.
9036
+ * @summary Get Behavior
9037
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9038
+ * @param {string} controller Unique identifier to address a controller in the cell.
9039
+ * @param {*} [options] Override http request option.
9040
+ * @throws {RequiredError}
9041
+ */
9042
+ getVirtualRobotBehavior(cell, controller, options) {
9043
+ return localVarFp.getVirtualRobotBehavior(cell, controller, options).then((request) => request(axios, basePath));
9044
+ },
9045
+ /**
9046
+ * Set virtual controller behavior.
9047
+ * @summary Set Behavior
9048
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9049
+ * @param {string} controller Unique identifier to address a controller in the cell.
9050
+ * @param {Behavior} [behavior]
9051
+ * @param {*} [options] Override http request option.
9052
+ * @throws {RequiredError}
9053
+ */
9054
+ setVirtualRobotBehavior(cell, controller, behavior, options) {
9055
+ return localVarFp.setVirtualRobotBehavior(cell, controller, behavior, options).then((request) => request(axios, basePath));
9056
+ },
9057
+ };
9058
+ };
9059
+ /**
9060
+ * VirtualControllerBehaviorApi - object-oriented interface
9061
+ * @export
9062
+ * @class VirtualControllerBehaviorApi
9063
+ * @extends {BaseAPI}
9064
+ */
9065
+ export class VirtualControllerBehaviorApi extends BaseAPI {
9066
+ /**
9067
+ * <!-- theme: danger --> > Websocket endpoint This stream sends the commanded state (joint positions, velocities, accelerations, torques) for each motion group of the virtual controller and sets the joint configuration. Moving motion groups on virtual controllers can be executed by using Trajectory Planning and Trajectory Execution. Trajectory Execution commands the desired joint configuration to each motion group. Physical motion groups move to this joint configuration. With physical motion groups, this takes some time and only works if possible. And you have the *actual* joint state - the current real motion group configuration. Again, this stream is providing *commanded* joint state! > **NOTE** > > This stream provides *commanded* joint states, it **doesn\'t provide actual joint states**. When the virtual controller receives joint commands the joint configuration is immediately adapted to match the incoming joint configuration. > **CAUTION** > > Incoming joint configurations are not visualized and their velocity limits are not checked. Possible use cases are: 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion groups. The stream only sends data to the robot controller if a motion is executed. If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic Freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
9068
+ * @summary Stream Joint Configuration
9069
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9070
+ * @param {string} controller Unique identifier to address a controller in the cell.
9071
+ * @param {ExternalJointStreamRequest} externalJointStreamRequest
9072
+ * @param {*} [options] Override http request option.
9073
+ * @throws {RequiredError}
9074
+ * @memberof VirtualControllerBehaviorApi
9075
+ */
9076
+ externalJointsStream(cell, controller, externalJointStreamRequest, options) {
9077
+ return VirtualControllerBehaviorApiFp(this.configuration).externalJointsStream(cell, controller, externalJointStreamRequest, options).then((request) => request(this.axios, this.basePath));
9078
+ }
9079
+ /**
9080
+ * Get the cycle time of controller communication in [ms].
9081
+ * @summary Get Cycle Time
9082
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9083
+ * @param {string} controller Unique identifier to address a controller in the cell.
9084
+ * @param {*} [options] Override http request option.
9085
+ * @throws {RequiredError}
9086
+ * @memberof VirtualControllerBehaviorApi
9087
+ */
9088
+ getCycleTime(cell, controller, options) {
9089
+ return VirtualControllerBehaviorApiFp(this.configuration).getCycleTime(cell, controller, options).then((request) => request(this.axios, this.basePath));
9090
+ }
9091
+ /**
9092
+ * Get the current virtual controller behavior - please see the setter [setVirtualRobotBehavior](setVirtualRobotBehavior) and the enum for details.
9093
+ * @summary Get Behavior
9094
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9095
+ * @param {string} controller Unique identifier to address a controller in the cell.
9096
+ * @param {*} [options] Override http request option.
9097
+ * @throws {RequiredError}
9098
+ * @memberof VirtualControllerBehaviorApi
9099
+ */
9100
+ getVirtualRobotBehavior(cell, controller, options) {
9101
+ return VirtualControllerBehaviorApiFp(this.configuration).getVirtualRobotBehavior(cell, controller, options).then((request) => request(this.axios, this.basePath));
9102
+ }
9103
+ /**
9104
+ * Set virtual controller behavior.
9105
+ * @summary Set Behavior
9106
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9107
+ * @param {string} controller Unique identifier to address a controller in the cell.
9108
+ * @param {Behavior} [behavior]
9109
+ * @param {*} [options] Override http request option.
9110
+ * @throws {RequiredError}
9111
+ * @memberof VirtualControllerBehaviorApi
9112
+ */
9113
+ setVirtualRobotBehavior(cell, controller, behavior, options) {
9114
+ return VirtualControllerBehaviorApiFp(this.configuration).setVirtualRobotBehavior(cell, controller, behavior, options).then((request) => request(this.axios, this.basePath));
9115
+ }
9116
+ }
9117
+ /**
9118
+ * VirtualControllerInputsOutputsApi - axios parameter creator
9119
+ * @export
9120
+ */
9121
+ export const VirtualControllerInputsOutputsApiAxiosParamCreator = function (configuration) {
9122
+ return {
9123
+ /**
9124
+ * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
9125
+ * @summary Get Input/Output Values
9126
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9127
+ * @param {string} controller Unique identifier to address a controller in the cell.
9128
+ * @param {Array<string>} ios
9129
+ * @param {*} [options] Override http request option.
9130
+ * @throws {RequiredError}
9131
+ */
9132
+ listIOs: async (cell, controller, ios, options = {}) => {
9133
+ // verify required parameter 'cell' is not null or undefined
9134
+ assertParamExists('listIOs', 'cell', cell);
9135
+ // verify required parameter 'controller' is not null or undefined
9136
+ assertParamExists('listIOs', 'controller', controller);
9137
+ // verify required parameter 'ios' is not null or undefined
9138
+ assertParamExists('listIOs', 'ios', ios);
9139
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/ios/values`
9140
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
9141
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
9142
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
9143
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
9144
+ let baseOptions;
9145
+ if (configuration) {
9146
+ baseOptions = configuration.baseOptions;
9147
+ }
9148
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
9149
+ const localVarHeaderParameter = {};
9150
+ const localVarQueryParameter = {};
9151
+ // authentication BasicAuth required
9152
+ // http basic authentication required
9153
+ setBasicAuthToObject(localVarRequestOptions, configuration);
9154
+ // authentication BearerAuth required
9155
+ // http bearer authentication required
9156
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
9157
+ if (ios) {
9158
+ localVarQueryParameter['ios'] = ios;
9159
+ }
9160
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
9161
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
9162
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
9163
+ return {
9164
+ url: toPathString(localVarUrlObj),
9165
+ options: localVarRequestOptions,
9166
+ };
9167
+ },
9168
+ /**
9169
+ * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
9170
+ * @summary List Descriptions
9171
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9172
+ * @param {string} controller Unique identifier to address a controller in the cell.
9173
+ * @param {Array<string>} [ios]
9174
+ * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
9175
+ * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
9176
+ * @param {string} [group] Return only inputs/outputs from the specified group.
9177
+ * @param {*} [options] Override http request option.
9178
+ * @throws {RequiredError}
9179
+ */
9180
+ listVirtualRobotIODescriptions: async (cell, controller, ios, direction, valueType, group, options = {}) => {
9181
+ // verify required parameter 'cell' is not null or undefined
9182
+ assertParamExists('listVirtualRobotIODescriptions', 'cell', cell);
9183
+ // verify required parameter 'controller' is not null or undefined
9184
+ assertParamExists('listVirtualRobotIODescriptions', 'controller', controller);
9185
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/ios/description`
9186
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
9187
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
9188
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
9189
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
9190
+ let baseOptions;
9191
+ if (configuration) {
9192
+ baseOptions = configuration.baseOptions;
9193
+ }
9194
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
9195
+ const localVarHeaderParameter = {};
9196
+ const localVarQueryParameter = {};
9197
+ // authentication BasicAuth required
9198
+ // http basic authentication required
9199
+ setBasicAuthToObject(localVarRequestOptions, configuration);
9200
+ // authentication BearerAuth required
9201
+ // http bearer authentication required
9202
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
9203
+ if (ios) {
9204
+ localVarQueryParameter['ios'] = ios;
9205
+ }
9206
+ if (direction !== undefined) {
9207
+ localVarQueryParameter['direction'] = direction;
9208
+ }
9209
+ if (valueType !== undefined) {
9210
+ localVarQueryParameter['value_type'] = valueType;
9211
+ }
9212
+ if (group !== undefined) {
9213
+ localVarQueryParameter['group'] = group;
9214
+ }
9215
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
9216
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
9217
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
9218
+ return {
9219
+ url: toPathString(localVarUrlObj),
9220
+ options: localVarRequestOptions,
9221
+ };
9222
+ },
9027
9223
  /**
9028
- * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
9029
- * @summary Get Mounting
9224
+ * Sets a list of values of a virtual controller inputs/outputs.
9225
+ * @summary Set Input/Ouput Values
9030
9226
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9031
9227
  * @param {string} controller Unique identifier to address a controller in the cell.
9032
- * @param {string} motionGroup The motion-group identifier.
9228
+ * @param {Array<IOValue>} iOValue
9033
9229
  * @param {*} [options] Override http request option.
9034
9230
  * @throws {RequiredError}
9035
9231
  */
9036
- async getVirtualRobotMounting(cell, controller, motionGroup, options) {
9037
- const localVarAxiosArgs = await localVarAxiosParamCreator.getVirtualRobotMounting(cell, controller, motionGroup, options);
9038
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9039
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.getVirtualRobotMounting']?.[localVarOperationServerIndex]?.url;
9040
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9232
+ setIOValues: async (cell, controller, iOValue, options = {}) => {
9233
+ // verify required parameter 'cell' is not null or undefined
9234
+ assertParamExists('setIOValues', 'cell', cell);
9235
+ // verify required parameter 'controller' is not null or undefined
9236
+ assertParamExists('setIOValues', 'controller', controller);
9237
+ // verify required parameter 'iOValue' is not null or undefined
9238
+ assertParamExists('setIOValues', 'iOValue', iOValue);
9239
+ const localVarPath = `/cells/{cell}/virtual-controllers/{controller}/ios/values`
9240
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
9241
+ .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
9242
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
9243
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
9244
+ let baseOptions;
9245
+ if (configuration) {
9246
+ baseOptions = configuration.baseOptions;
9247
+ }
9248
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };
9249
+ const localVarHeaderParameter = {};
9250
+ const localVarQueryParameter = {};
9251
+ // authentication BasicAuth required
9252
+ // http basic authentication required
9253
+ setBasicAuthToObject(localVarRequestOptions, configuration);
9254
+ // authentication BearerAuth required
9255
+ // http bearer authentication required
9256
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
9257
+ localVarHeaderParameter['Content-Type'] = 'application/json';
9258
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
9259
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
9260
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
9261
+ localVarRequestOptions.data = serializeDataIfNeeded(iOValue, localVarRequestOptions, configuration);
9262
+ return {
9263
+ url: toPathString(localVarUrlObj),
9264
+ options: localVarRequestOptions,
9265
+ };
9041
9266
  },
9267
+ };
9268
+ };
9269
+ /**
9270
+ * VirtualControllerInputsOutputsApi - functional programming interface
9271
+ * @export
9272
+ */
9273
+ export const VirtualControllerInputsOutputsApiFp = function (configuration) {
9274
+ const localVarAxiosParamCreator = VirtualControllerInputsOutputsApiAxiosParamCreator(configuration);
9275
+ return {
9042
9276
  /**
9043
- * Lists all coordinate systems on the robot controller.
9044
- * @summary List Coordinate Systems
9277
+ * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
9278
+ * @summary Get Input/Output Values
9045
9279
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9046
9280
  * @param {string} controller Unique identifier to address a controller in the cell.
9281
+ * @param {Array<string>} ios
9047
9282
  * @param {*} [options] Override http request option.
9048
9283
  * @throws {RequiredError}
9049
9284
  */
9050
- async listVirtualRobotCoordinateSystems(cell, controller, options) {
9051
- const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotCoordinateSystems(cell, controller, options);
9285
+ async listIOs(cell, controller, ios, options) {
9286
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listIOs(cell, controller, ios, options);
9052
9287
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9053
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.listVirtualRobotCoordinateSystems']?.[localVarOperationServerIndex]?.url;
9288
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerInputsOutputsApi.listIOs']?.[localVarOperationServerIndex]?.url;
9054
9289
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9055
9290
  },
9056
9291
  /**
9057
- * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
9058
- * @summary List TCPs
9292
+ * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
9293
+ * @summary List Descriptions
9059
9294
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9060
9295
  * @param {string} controller Unique identifier to address a controller in the cell.
9061
- * @param {string} motionGroup The motion-group identifier.
9296
+ * @param {Array<string>} [ios]
9297
+ * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
9298
+ * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
9299
+ * @param {string} [group] Return only inputs/outputs from the specified group.
9062
9300
  * @param {*} [options] Override http request option.
9063
9301
  * @throws {RequiredError}
9064
9302
  */
9065
- async listVirtualRobotTcps(cell, controller, motionGroup, options) {
9066
- const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotTcps(cell, controller, motionGroup, options);
9303
+ async listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
9304
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options);
9067
9305
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9068
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.listVirtualRobotTcps']?.[localVarOperationServerIndex]?.url;
9306
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerInputsOutputsApi.listVirtualRobotIODescriptions']?.[localVarOperationServerIndex]?.url;
9069
9307
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9070
9308
  },
9071
9309
  /**
9072
- * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
9073
- * @summary Set Mounting
9310
+ * Sets a list of values of a virtual controller inputs/outputs.
9311
+ * @summary Set Input/Ouput Values
9074
9312
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9075
9313
  * @param {string} controller Unique identifier to address a controller in the cell.
9076
- * @param {string} motionGroup The motion-group identifier.
9077
- * @param {CoordinateSystem} coordinateSystem
9314
+ * @param {Array<IOValue>} iOValue
9078
9315
  * @param {*} [options] Override http request option.
9079
9316
  * @throws {RequiredError}
9080
9317
  */
9081
- async setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
9082
- const localVarAxiosArgs = await localVarAxiosParamCreator.setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options);
9318
+ async setIOValues(cell, controller, iOValue, options) {
9319
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setIOValues(cell, controller, iOValue, options);
9083
9320
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9084
- const localVarOperationServerBasePath = operationServerMap['VirtualRobotSetupApi.setVirtualRobotMounting']?.[localVarOperationServerIndex]?.url;
9321
+ const localVarOperationServerBasePath = operationServerMap['VirtualControllerInputsOutputsApi.setIOValues']?.[localVarOperationServerIndex]?.url;
9085
9322
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9086
9323
  },
9087
9324
  };
9088
9325
  };
9089
9326
  /**
9090
- * VirtualRobotSetupApi - factory interface
9327
+ * VirtualControllerInputsOutputsApi - factory interface
9091
9328
  * @export
9092
9329
  */
9093
- export const VirtualRobotSetupApiFactory = function (configuration, basePath, axios) {
9094
- const localVarFp = VirtualRobotSetupApiFp(configuration);
9330
+ export const VirtualControllerInputsOutputsApiFactory = function (configuration, basePath, axios) {
9331
+ const localVarFp = VirtualControllerInputsOutputsApiFp(configuration);
9095
9332
  return {
9096
9333
  /**
9097
- * Adds a coordinate system to the robot controller.
9098
- * @summary Add Coordinate Systems
9099
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9100
- * @param {string} controller Unique identifier to address a controller in the cell.
9101
- * @param {CoordinateSystem} coordinateSystem
9102
- * @param {*} [options] Override http request option.
9103
- * @throws {RequiredError}
9104
- */
9105
- addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options) {
9106
- return localVarFp.addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options).then((request) => request(axios, basePath));
9107
- },
9108
- /**
9109
- * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
9110
- * @summary Add TCP
9111
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9112
- * @param {string} controller Unique identifier to address a controller in the cell.
9113
- * @param {string} motionGroup The motion-group identifier.
9114
- * @param {RobotTcp} robotTcp
9115
- * @param {*} [options] Override http request option.
9116
- * @throws {RequiredError}
9117
- */
9118
- addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options) {
9119
- return localVarFp.addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options).then((request) => request(axios, basePath));
9120
- },
9121
- /**
9122
- * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
9123
- * @summary Remove Coordinate System
9124
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9125
- * @param {string} controller Unique identifier to address a controller in the cell.
9126
- * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
9127
- * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
9128
- * @param {*} [options] Override http request option.
9129
- * @throws {RequiredError}
9130
- */
9131
- deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
9132
- return localVarFp.deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options).then((request) => request(axios, basePath));
9133
- },
9134
- /**
9135
- * Removes the TCP from the motion group. An unknown TCP is a valid input.
9136
- * @summary Remove TCP
9137
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9138
- * @param {string} controller Unique identifier to address a controller in the cell.
9139
- * @param {string} motionGroup The motion-group identifier.
9140
- * @param {string} tcp The unique identifier of a TCP.
9141
- * @param {*} [options] Override http request option.
9142
- * @throws {RequiredError}
9143
- */
9144
- deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
9145
- return localVarFp.deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options).then((request) => request(axios, basePath));
9146
- },
9147
- /**
9148
- * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
9149
- * @summary Get Mounting
9150
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9151
- * @param {string} controller Unique identifier to address a controller in the cell.
9152
- * @param {string} motionGroup The motion-group identifier.
9153
- * @param {*} [options] Override http request option.
9154
- * @throws {RequiredError}
9155
- */
9156
- getVirtualRobotMounting(cell, controller, motionGroup, options) {
9157
- return localVarFp.getVirtualRobotMounting(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
9158
- },
9159
- /**
9160
- * Lists all coordinate systems on the robot controller.
9161
- * @summary List Coordinate Systems
9334
+ * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
9335
+ * @summary Get Input/Output Values
9162
9336
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9163
9337
  * @param {string} controller Unique identifier to address a controller in the cell.
9338
+ * @param {Array<string>} ios
9164
9339
  * @param {*} [options] Override http request option.
9165
9340
  * @throws {RequiredError}
9166
9341
  */
9167
- listVirtualRobotCoordinateSystems(cell, controller, options) {
9168
- return localVarFp.listVirtualRobotCoordinateSystems(cell, controller, options).then((request) => request(axios, basePath));
9342
+ listIOs(cell, controller, ios, options) {
9343
+ return localVarFp.listIOs(cell, controller, ios, options).then((request) => request(axios, basePath));
9169
9344
  },
9170
9345
  /**
9171
- * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
9172
- * @summary List TCPs
9346
+ * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
9347
+ * @summary List Descriptions
9173
9348
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9174
9349
  * @param {string} controller Unique identifier to address a controller in the cell.
9175
- * @param {string} motionGroup The motion-group identifier.
9350
+ * @param {Array<string>} [ios]
9351
+ * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
9352
+ * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
9353
+ * @param {string} [group] Return only inputs/outputs from the specified group.
9176
9354
  * @param {*} [options] Override http request option.
9177
9355
  * @throws {RequiredError}
9178
9356
  */
9179
- listVirtualRobotTcps(cell, controller, motionGroup, options) {
9180
- return localVarFp.listVirtualRobotTcps(cell, controller, motionGroup, options).then((request) => request(axios, basePath));
9357
+ listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
9358
+ return localVarFp.listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options).then((request) => request(axios, basePath));
9181
9359
  },
9182
9360
  /**
9183
- * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
9184
- * @summary Set Mounting
9361
+ * Sets a list of values of a virtual controller inputs/outputs.
9362
+ * @summary Set Input/Ouput Values
9185
9363
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9186
9364
  * @param {string} controller Unique identifier to address a controller in the cell.
9187
- * @param {string} motionGroup The motion-group identifier.
9188
- * @param {CoordinateSystem} coordinateSystem
9365
+ * @param {Array<IOValue>} iOValue
9189
9366
  * @param {*} [options] Override http request option.
9190
9367
  * @throws {RequiredError}
9191
9368
  */
9192
- setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
9193
- return localVarFp.setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options).then((request) => request(axios, basePath));
9369
+ setIOValues(cell, controller, iOValue, options) {
9370
+ return localVarFp.setIOValues(cell, controller, iOValue, options).then((request) => request(axios, basePath));
9194
9371
  },
9195
9372
  };
9196
9373
  };
9197
9374
  /**
9198
- * VirtualRobotSetupApi - object-oriented interface
9375
+ * VirtualControllerInputsOutputsApi - object-oriented interface
9199
9376
  * @export
9200
- * @class VirtualRobotSetupApi
9377
+ * @class VirtualControllerInputsOutputsApi
9201
9378
  * @extends {BaseAPI}
9202
9379
  */
9203
- export class VirtualRobotSetupApi extends BaseAPI {
9204
- /**
9205
- * Adds a coordinate system to the robot controller.
9206
- * @summary Add Coordinate Systems
9207
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9208
- * @param {string} controller Unique identifier to address a controller in the cell.
9209
- * @param {CoordinateSystem} coordinateSystem
9210
- * @param {*} [options] Override http request option.
9211
- * @throws {RequiredError}
9212
- * @memberof VirtualRobotSetupApi
9213
- */
9214
- addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options) {
9215
- return VirtualRobotSetupApiFp(this.configuration).addVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, options).then((request) => request(this.axios, this.basePath));
9216
- }
9217
- /**
9218
- * Adds a new TCP or updates an existing TCP in the motion group. The position and rotation values in the request body are defined within the flange’s coordinate system. > **NOTE** > > Ensure the TCP\'s position is within the robot\'s reach. Refer to the robot’s documentation or data sheet for details like joint limits or reach.
9219
- * @summary Add TCP
9220
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9221
- * @param {string} controller Unique identifier to address a controller in the cell.
9222
- * @param {string} motionGroup The motion-group identifier.
9223
- * @param {RobotTcp} robotTcp
9224
- * @param {*} [options] Override http request option.
9225
- * @throws {RequiredError}
9226
- * @memberof VirtualRobotSetupApi
9227
- */
9228
- addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options) {
9229
- return VirtualRobotSetupApiFp(this.configuration).addVirtualRobotTcp(cell, controller, motionGroup, robotTcp, options).then((request) => request(this.axios, this.basePath));
9230
- }
9231
- /**
9232
- * Deletes a coordinate system from the virtual controller. This will remove the coordinate system from the list of coordinate systems and remove all dependent coordinate systems which use the deleted coordinate system as reference.
9233
- * @summary Remove Coordinate System
9234
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9235
- * @param {string} controller Unique identifier to address a controller in the cell.
9236
- * @param {string} coordinateSystem Unique identifier addressing a coordinate system.
9237
- * @param {boolean} [deleteDependent] If true, all dependent coordinate systems will be deleted as well.
9238
- * @param {*} [options] Override http request option.
9239
- * @throws {RequiredError}
9240
- * @memberof VirtualRobotSetupApi
9241
- */
9242
- deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options) {
9243
- return VirtualRobotSetupApiFp(this.configuration).deleteVirtualRobotCoordinateSystem(cell, controller, coordinateSystem, deleteDependent, options).then((request) => request(this.axios, this.basePath));
9244
- }
9245
- /**
9246
- * Removes the TCP from the motion group. An unknown TCP is a valid input.
9247
- * @summary Remove TCP
9248
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9249
- * @param {string} controller Unique identifier to address a controller in the cell.
9250
- * @param {string} motionGroup The motion-group identifier.
9251
- * @param {string} tcp The unique identifier of a TCP.
9252
- * @param {*} [options] Override http request option.
9253
- * @throws {RequiredError}
9254
- * @memberof VirtualRobotSetupApi
9255
- */
9256
- deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options) {
9257
- return VirtualRobotSetupApiFp(this.configuration).deleteVirtualRobotTcp(cell, controller, motionGroup, tcp, options).then((request) => request(this.axios, this.basePath));
9258
- }
9259
- /**
9260
- * Gets motion group mounting. The motion group is based on the origin of the returned coordinate system.
9261
- * @summary Get Mounting
9262
- * @param {string} cell Unique identifier addressing a cell in all API calls.
9263
- * @param {string} controller Unique identifier to address a controller in the cell.
9264
- * @param {string} motionGroup The motion-group identifier.
9265
- * @param {*} [options] Override http request option.
9266
- * @throws {RequiredError}
9267
- * @memberof VirtualRobotSetupApi
9268
- */
9269
- getVirtualRobotMounting(cell, controller, motionGroup, options) {
9270
- return VirtualRobotSetupApiFp(this.configuration).getVirtualRobotMounting(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
9271
- }
9380
+ export class VirtualControllerInputsOutputsApi extends BaseAPI {
9272
9381
  /**
9273
- * Lists all coordinate systems on the robot controller.
9274
- * @summary List Coordinate Systems
9382
+ * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualRobotIODescriptions](listVirtualRobotIODescriptions).
9383
+ * @summary Get Input/Output Values
9275
9384
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9276
9385
  * @param {string} controller Unique identifier to address a controller in the cell.
9386
+ * @param {Array<string>} ios
9277
9387
  * @param {*} [options] Override http request option.
9278
9388
  * @throws {RequiredError}
9279
- * @memberof VirtualRobotSetupApi
9389
+ * @memberof VirtualControllerInputsOutputsApi
9280
9390
  */
9281
- listVirtualRobotCoordinateSystems(cell, controller, options) {
9282
- return VirtualRobotSetupApiFp(this.configuration).listVirtualRobotCoordinateSystems(cell, controller, options).then((request) => request(this.axios, this.basePath));
9391
+ listIOs(cell, controller, ios, options) {
9392
+ return VirtualControllerInputsOutputsApiFp(this.configuration).listIOs(cell, controller, ios, options).then((request) => request(this.axios, this.basePath));
9283
9393
  }
9284
9394
  /**
9285
- * Lists TCPs of the motion group. An empty TCP list is valid, for example for external axes.
9286
- * @summary List TCPs
9395
+ * Lists the input/output descriptions of the virtual robot controller. The input/output descriptions contain information like name, type and unit. Available inputs/outputs are defined by the virtual robot controller. Each input/output has a unique identifier. If no identifiers are specified in the request, all available inputs/outputs are retrieved by this endpoint. Exception: When a filter (e.g., direction, value_type, group) is applied, only matching inputs/outputs are returned.
9396
+ * @summary List Descriptions
9287
9397
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9288
9398
  * @param {string} controller Unique identifier to address a controller in the cell.
9289
- * @param {string} motionGroup The motion-group identifier.
9399
+ * @param {Array<string>} [ios]
9400
+ * @param {IODirection} [direction] Return only inputs/outputs with the specified direction.
9401
+ * @param {IOValueType} [valueType] Return only inputs/outputs with the specified value type.
9402
+ * @param {string} [group] Return only inputs/outputs from the specified group.
9290
9403
  * @param {*} [options] Override http request option.
9291
9404
  * @throws {RequiredError}
9292
- * @memberof VirtualRobotSetupApi
9405
+ * @memberof VirtualControllerInputsOutputsApi
9293
9406
  */
9294
- listVirtualRobotTcps(cell, controller, motionGroup, options) {
9295
- return VirtualRobotSetupApiFp(this.configuration).listVirtualRobotTcps(cell, controller, motionGroup, options).then((request) => request(this.axios, this.basePath));
9407
+ listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options) {
9408
+ return VirtualControllerInputsOutputsApiFp(this.configuration).listVirtualRobotIODescriptions(cell, controller, ios, direction, valueType, group, options).then((request) => request(this.axios, this.basePath));
9296
9409
  }
9297
9410
  /**
9298
- * Sets motion group mounting by specifying a coordinate system. The motion group will be based on the coordinate system\'s origin. The coordinate system defines a transformation offset. The transformation offset is defined by a unique identifier, a name for front end usage and an offset in another coordinate system referenced by the unique identifier of the reference coordinate system.
9299
- * @summary Set Mounting
9411
+ * Sets a list of values of a virtual controller inputs/outputs.
9412
+ * @summary Set Input/Ouput Values
9300
9413
  * @param {string} cell Unique identifier addressing a cell in all API calls.
9301
9414
  * @param {string} controller Unique identifier to address a controller in the cell.
9302
- * @param {string} motionGroup The motion-group identifier.
9303
- * @param {CoordinateSystem} coordinateSystem
9415
+ * @param {Array<IOValue>} iOValue
9304
9416
  * @param {*} [options] Override http request option.
9305
9417
  * @throws {RequiredError}
9306
- * @memberof VirtualRobotSetupApi
9418
+ * @memberof VirtualControllerInputsOutputsApi
9307
9419
  */
9308
- setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options) {
9309
- return VirtualRobotSetupApiFp(this.configuration).setVirtualRobotMounting(cell, controller, motionGroup, coordinateSystem, options).then((request) => request(this.axios, this.basePath));
9420
+ setIOValues(cell, controller, iOValue, options) {
9421
+ return VirtualControllerInputsOutputsApiFp(this.configuration).setIOValues(cell, controller, iOValue, options).then((request) => request(this.axios, this.basePath));
9310
9422
  }
9311
9423
  }
9312
9424
  //# sourceMappingURL=api.js.map