@wandelbots/nova-api 25.6.0-dev.35 → 25.6.0-dev.37

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.
package/v2/api.ts CHANGED
@@ -122,7 +122,7 @@ export interface AddTrajectoryError {
122
122
  * @type AddTrajectoryErrorData
123
123
  * @export
124
124
  */
125
- export type AddTrajectoryErrorData = Collision2 | InconsitentTrajectorySize | InvalidDof | JointLimitExceeded | NanValue | TcpRequired | TorqueExceeded;
125
+ export type AddTrajectoryErrorData = CollisionError | InconsitentTrajectorySize | InvalidDof | JointLimitExceeded | NanValue | TcpRequired | TorqueExceeded;
126
126
 
127
127
  /**
128
128
  *
@@ -398,6 +398,37 @@ export const CapsuleShapeTypeEnum = {
398
398
 
399
399
  export type CapsuleShapeTypeEnum = typeof CapsuleShapeTypeEnum[keyof typeof CapsuleShapeTypeEnum];
400
400
 
401
+ /**
402
+ *
403
+ * @export
404
+ * @interface CartesianLimits
405
+ */
406
+ export interface CartesianLimits {
407
+ /**
408
+ *
409
+ * @type {number}
410
+ * @memberof CartesianLimits
411
+ */
412
+ 'velocity'?: number;
413
+ /**
414
+ *
415
+ * @type {number}
416
+ * @memberof CartesianLimits
417
+ */
418
+ 'acceleration'?: number;
419
+ /**
420
+ *
421
+ * @type {number}
422
+ * @memberof CartesianLimits
423
+ */
424
+ 'orientation_velocity'?: number;
425
+ /**
426
+ *
427
+ * @type {number}
428
+ * @memberof CartesianLimits
429
+ */
430
+ 'orientation_acceleration'?: number;
431
+ }
401
432
  /**
402
433
  * To create a robot cell, only a valid name is required. Once created, a robot cell provides access to the Wandelbots NOVA foundation services. The configuration can be customized, e.g. robot controllers, also within apps.
403
434
  * @export
@@ -503,19 +534,6 @@ export interface Collision {
503
534
  */
504
535
  'position_on_b'?: CollisionContact;
505
536
  }
506
- /**
507
- *
508
- * @export
509
- * @interface Collision2
510
- */
511
- export interface Collision2 {
512
- /**
513
- *
514
- * @type {FeedbackCollision}
515
- * @memberof Collision2
516
- */
517
- 'collision'?: FeedbackCollision;
518
- }
519
537
  /**
520
538
  *
521
539
  * @export
@@ -535,6 +553,19 @@ export interface CollisionContact {
535
553
  */
536
554
  'world'?: Array<number>;
537
555
  }
556
+ /**
557
+ *
558
+ * @export
559
+ * @interface CollisionError
560
+ */
561
+ export interface CollisionError {
562
+ /**
563
+ *
564
+ * @type {FeedbackCollision}
565
+ * @memberof CollisionError
566
+ */
567
+ 'collision'?: FeedbackCollision;
568
+ }
538
569
  /**
539
570
  *
540
571
  * @export
@@ -959,6 +990,26 @@ export const Direction = {
959
990
  export type Direction = typeof Direction[keyof typeof Direction];
960
991
 
961
992
 
993
+ /**
994
+ *
995
+ * @export
996
+ * @interface EndOfTrajectory
997
+ */
998
+ export interface EndOfTrajectory {
999
+ /**
1000
+ *
1001
+ * @type {string}
1002
+ * @memberof EndOfTrajectory
1003
+ */
1004
+ 'kind': EndOfTrajectoryKindEnum;
1005
+ }
1006
+
1007
+ export const EndOfTrajectoryKindEnum = {
1008
+ EndOfTrajectory: 'END_OF_TRAJECTORY'
1009
+ } as const;
1010
+
1011
+ export type EndOfTrajectoryKindEnum = typeof EndOfTrajectoryKindEnum[keyof typeof EndOfTrajectoryKindEnum];
1012
+
962
1013
  /**
963
1014
  *
964
1015
  * @export
@@ -972,17 +1023,42 @@ export interface Error2 {
972
1023
  */
973
1024
  'message': string;
974
1025
  }
1026
+ /**
1027
+ * Details about the state of the motion execution. The details are either for a jogging or a trajectory. If NOVA is not controlling this motion group at the moment, this field is omitted.
1028
+ * @export
1029
+ * @interface Execute
1030
+ */
1031
+ export interface Execute {
1032
+ /**
1033
+ * Commanded joint position of each joint in [rad]. This command was sent in the time step the corresponding state was received.
1034
+ * @type {Array<number>}
1035
+ * @memberof Execute
1036
+ */
1037
+ 'joint_position': Array<number>;
1038
+ /**
1039
+ *
1040
+ * @type {ExecuteDetails}
1041
+ * @memberof Execute
1042
+ */
1043
+ 'details'?: ExecuteDetails;
1044
+ }
1045
+ /**
1046
+ * @type ExecuteDetails
1047
+ * @export
1048
+ */
1049
+ export type ExecuteDetails = { kind: 'JOGGING' } & JoggingDetails | { kind: 'TRAJECTORY' } & TrajectoryDetails;
1050
+
975
1051
  /**
976
1052
  * @type ExecuteJoggingRequest
977
1053
  * @export
978
1054
  */
979
- export type ExecuteJoggingRequest = InitializeJoggingRequest | JointVelocityRequest | TcpVelocityRequest;
1055
+ export type ExecuteJoggingRequest = InitializeJoggingRequest | JointVelocityRequest | PauseJoggingRequest | TcpVelocityRequest;
980
1056
 
981
1057
  /**
982
1058
  * @type ExecuteJoggingResponse
983
1059
  * @export
984
1060
  */
985
- export type ExecuteJoggingResponse = InitializeJoggingResponse | JoggingErrorResponse | JoggingResponse;
1061
+ export type ExecuteJoggingResponse = InitializeJoggingResponse | JointVelocityResponse | MovementErrorResponse | PauseJoggingResponse | TcpVelocityResponse;
986
1062
 
987
1063
  /**
988
1064
  * @type ExecuteTrajectoryRequest
@@ -994,7 +1070,7 @@ export type ExecuteTrajectoryRequest = InitializeMovementRequest | PauseMovement
994
1070
  * @type ExecuteTrajectoryResponse
995
1071
  * @export
996
1072
  */
997
- export type ExecuteTrajectoryResponse = InitializeMovementResponse | Movement | MovementError | PauseMovementResponse | PlaybackSpeedResponse | Standstill;
1073
+ export type ExecuteTrajectoryResponse = InitializeMovementResponse | MovementErrorResponse | PauseMovementResponse | PlaybackSpeedResponse | StartMovementResponse;
998
1074
 
999
1075
  /**
1000
1076
  * A datapoint inside external joint stream.
@@ -1613,37 +1689,31 @@ export const InitializeJoggingRequestMessageTypeEnum = {
1613
1689
  export type InitializeJoggingRequestMessageTypeEnum = typeof InitializeJoggingRequestMessageTypeEnum[keyof typeof InitializeJoggingRequestMessageTypeEnum];
1614
1690
 
1615
1691
  /**
1616
- * Response to an InitializeJoggingRequest.
1692
+ * Acknowledgment to an InitializeJoggingRequest.
1617
1693
  * @export
1618
1694
  * @interface InitializeJoggingResponse
1619
1695
  */
1620
1696
  export interface InitializeJoggingResponse {
1621
1697
  /**
1622
- *
1623
- * @type {InitializeJoggingResponseInitResponse}
1698
+ * Error message in case of invalid InitializeJoggingRequest.
1699
+ * @type {string}
1624
1700
  * @memberof InitializeJoggingResponse
1625
1701
  */
1626
- 'init_response': InitializeJoggingResponseInitResponse;
1627
- }
1628
- /**
1629
- *
1630
- * @export
1631
- * @interface InitializeJoggingResponseInitResponse
1632
- */
1633
- export interface InitializeJoggingResponseInitResponse {
1634
- /**
1635
- * Indicates if the jogging control is ready for execution.
1636
- * @type {boolean}
1637
- * @memberof InitializeJoggingResponseInitResponse
1638
- */
1639
- 'succeeded': boolean;
1702
+ 'message'?: string;
1640
1703
  /**
1641
- * Error message in case of invalid InitializeMovementRequest.
1704
+ *
1642
1705
  * @type {string}
1643
- * @memberof InitializeJoggingResponseInitResponse
1706
+ * @memberof InitializeJoggingResponse
1644
1707
  */
1645
- 'error_message'?: string;
1708
+ 'kind': InitializeJoggingResponseKindEnum;
1646
1709
  }
1710
+
1711
+ export const InitializeJoggingResponseKindEnum = {
1712
+ InitializeReceived: 'INITIALIZE_RECEIVED'
1713
+ } as const;
1714
+
1715
+ export type InitializeJoggingResponseKindEnum = typeof InitializeJoggingResponseKindEnum[keyof typeof InitializeJoggingResponseKindEnum];
1716
+
1647
1717
  /**
1648
1718
  * Sets up connection by locking a trajectory for execution. The robot controller mode is set to control mode. ATTENTION: This request has to be sent before any StartMovementRequest is sent. If initializing the movement was successful, no further movements can be initialized. To execute another trajectory, another connection has to be established.
1649
1719
  * @export
@@ -1702,31 +1772,31 @@ export type InitializeMovementRequestTrajectory = { message_type: 'TrajectoryDat
1702
1772
  */
1703
1773
  export interface InitializeMovementResponse {
1704
1774
  /**
1705
- *
1706
- * @type {InitializeMovementResponseInitResponse}
1775
+ * Error message in case of invalid InitializeMovementRequest.
1776
+ * @type {string}
1707
1777
  * @memberof InitializeMovementResponse
1708
1778
  */
1709
- 'init_response': InitializeMovementResponseInitResponse;
1710
- }
1711
- /**
1712
- *
1713
- * @export
1714
- * @interface InitializeMovementResponseInitResponse
1715
- */
1716
- export interface InitializeMovementResponseInitResponse {
1779
+ 'message'?: string;
1717
1780
  /**
1718
- * Indicates if the trajectory was successfully locked and is ready for execution by sending a StartMovementRequest. Send PlaybackSpeedRequest to override the planned velocity.
1719
- * @type {boolean}
1720
- * @memberof InitializeMovementResponseInitResponse
1781
+ * Error can occur if joint trajectory was added by [InitializeMovementRequest](InitializeMovementRequest) and the trajectory is invalid.
1782
+ * @type {AddTrajectoryError}
1783
+ * @memberof InitializeMovementResponse
1721
1784
  */
1722
- 'succeeded': boolean;
1785
+ 'add_trajectory_error'?: AddTrajectoryError;
1723
1786
  /**
1724
- * Error message in case of invalid InitializeMovementRequest.
1787
+ *
1725
1788
  * @type {string}
1726
- * @memberof InitializeMovementResponseInitResponse
1789
+ * @memberof InitializeMovementResponse
1727
1790
  */
1728
- 'error_message'?: string;
1791
+ 'kind': InitializeMovementResponseKindEnum;
1729
1792
  }
1793
+
1794
+ export const InitializeMovementResponseKindEnum = {
1795
+ InitializeReceived: 'INITIALIZE_RECEIVED'
1796
+ } as const;
1797
+
1798
+ export type InitializeMovementResponseKindEnum = typeof InitializeMovementResponseKindEnum[keyof typeof InitializeMovementResponseKindEnum];
1799
+
1730
1800
  /**
1731
1801
  * Value of an input/output with integer representation. > The integral value is transmitted as a string to avoid precision loss during conversion to JSON. > We recommend to use int64 in your implementation. If you want to interact with int64 in numbers, > JS bigint libraries can help you to parse the string into an integral value.
1732
1802
  * @export
@@ -1817,10 +1887,10 @@ export interface InverseKinematicsRequest {
1817
1887
  'mounting'?: Pose;
1818
1888
  /**
1819
1889
  * Joint position limits in [rad], indexed starting from base.
1820
- * @type {Array<PlanningLimitsLimitRange>}
1890
+ * @type {Array<LimitRange>}
1821
1891
  * @memberof InverseKinematicsRequest
1822
1892
  */
1823
- 'joint_position_limits'?: Array<PlanningLimitsLimitRange>;
1893
+ 'joint_position_limits'?: Array<LimitRange>;
1824
1894
  /**
1825
1895
  * Collision scenes to be respected by the motion planner. Each contains the single motion group which is planned for. Scenes are checked individually along the trajectory and independently of other scenes. To respect the safety zones of the controller, fetch the safety zones, link and tool shapes from the controller and add one scene made up of those. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a scene. 3. Create other scenes from your own 3D data as needed. 4. Execute this endpoint. 5. The response highlights the scenes in which a collision was detected by key.
1826
1896
  * @type {{ [key: string]: SingleMotionGroupCollisionScene; }}
@@ -1842,172 +1912,80 @@ export interface InverseKinematicsResponse {
1842
1912
  'joints': Array<Array<Array<number>>>;
1843
1913
  }
1844
1914
  /**
1845
- * Response signalling an error during jogging execution. This response is sent in case of an unexpected error, e.g. controller disconnects.
1846
- * @export
1847
- * @interface JoggingErrorResponse
1848
- */
1849
- export interface JoggingErrorResponse {
1850
- /**
1851
- *
1852
- * @type {JoggingErrorResponseError}
1853
- * @memberof JoggingErrorResponse
1854
- */
1855
- 'error': JoggingErrorResponseError;
1856
- }
1857
- /**
1858
- *
1859
- * @export
1860
- * @interface JoggingErrorResponseError
1861
- */
1862
- export interface JoggingErrorResponseError {
1863
- /**
1864
- * Error description.
1865
- * @type {string}
1866
- * @memberof JoggingErrorResponseError
1867
- */
1868
- 'error_message': string;
1869
- }
1870
- /**
1871
- *
1915
+ * State of jogging execution. This state is sent during jogging movement, response-rate closest to the nearest multiple of controller step-rate but not exceeding the configured rate. The jogging state can be one of the following: - RUNNING: Jogging is active. - PAUSED_BY_USER: User has paused jogging. - PAUSED_NEAR_JOINT_LIMIT: Jogging was paused because a joint is is near its limit. - PAUSED_NEAR_COLLISION: Jogging was paused because the motion group neared a collision. - PAUSED_ON_IO: Jogging was paused because of an I/O event.
1872
1916
  * @export
1873
- * @interface JoggingPausedCollision
1917
+ * @interface JoggingDetails
1874
1918
  */
1875
- export interface JoggingPausedCollision {
1919
+ export interface JoggingDetails {
1876
1920
  /**
1877
1921
  *
1878
- * @type {JoggingPausedCollisionPausedNearCollision}
1879
- * @memberof JoggingPausedCollision
1922
+ * @type {JoggingDetailsState}
1923
+ * @memberof JoggingDetails
1880
1924
  */
1881
- 'paused_near_collision': JoggingPausedCollisionPausedNearCollision;
1882
- }
1883
- /**
1884
- *
1885
- * @export
1886
- * @interface JoggingPausedCollisionPausedNearCollision
1887
- */
1888
- export interface JoggingPausedCollisionPausedNearCollision {
1925
+ 'state': JoggingDetailsState;
1889
1926
  /**
1890
1927
  *
1891
1928
  * @type {string}
1892
- * @memberof JoggingPausedCollisionPausedNearCollision
1893
- */
1894
- 'description'?: string;
1895
- }
1896
- /**
1897
- *
1898
- * @export
1899
- * @interface JoggingPausedJointLimit
1900
- */
1901
- export interface JoggingPausedJointLimit {
1902
- /**
1903
- *
1904
- * @type {JoggingPausedJointLimitPausedNearJointLimit}
1905
- * @memberof JoggingPausedJointLimit
1906
- */
1907
- 'paused_near_joint_limit': JoggingPausedJointLimitPausedNearJointLimit;
1908
- }
1909
- /**
1910
- *
1911
- * @export
1912
- * @interface JoggingPausedJointLimitPausedNearJointLimit
1913
- */
1914
- export interface JoggingPausedJointLimitPausedNearJointLimit {
1915
- /**
1916
- *
1917
- * @type {Array<number>}
1918
- * @memberof JoggingPausedJointLimitPausedNearJointLimit
1929
+ * @memberof JoggingDetails
1919
1930
  */
1920
- 'joint_indices'?: Array<number>;
1931
+ 'kind': JoggingDetailsKindEnum;
1921
1932
  }
1933
+
1934
+ export const JoggingDetailsKindEnum = {
1935
+ Jogging: 'JOGGING'
1936
+ } as const;
1937
+
1938
+ export type JoggingDetailsKindEnum = typeof JoggingDetailsKindEnum[keyof typeof JoggingDetailsKindEnum];
1939
+
1922
1940
  /**
1923
- *
1941
+ * @type JoggingDetailsState
1924
1942
  * @export
1925
- * @interface JoggingPausedOnIO
1926
1943
  */
1927
- export interface JoggingPausedOnIO {
1928
- /**
1929
- *
1930
- * @type {object}
1931
- * @memberof JoggingPausedOnIO
1932
- */
1933
- 'paused_on_io': object;
1934
- }
1944
+ export type JoggingDetailsState = PausedByUser | PausedNearCollision | PausedNearJointLimit | PausedOnIO | Running;
1945
+
1935
1946
  /**
1936
1947
  *
1937
1948
  * @export
1938
- * @interface JoggingPausedUserRequest
1939
- */
1940
- export interface JoggingPausedUserRequest {
1941
- /**
1942
- *
1943
- * @type {object}
1944
- * @memberof JoggingPausedUserRequest
1945
- */
1946
- 'paused_by_user_request': object;
1947
- }
1948
- /**
1949
- * Sent during jogging movement, response-rate closest to the nearest multiple of controller step-rate but not exceeding the configured rate.
1950
- * @export
1951
- * @interface JoggingResponse
1949
+ * @interface JointLimitExceeded
1952
1950
  */
1953
- export interface JoggingResponse {
1951
+ export interface JointLimitExceeded {
1954
1952
  /**
1955
1953
  *
1956
- * @type {JoggingResponseJogging}
1957
- * @memberof JoggingResponse
1954
+ * @type {FeedbackJointLimitExceeded}
1955
+ * @memberof JointLimitExceeded
1958
1956
  */
1959
- 'jogging': JoggingResponseJogging;
1957
+ 'joint_limit_exceeded'?: FeedbackJointLimitExceeded;
1960
1958
  }
1961
1959
  /**
1962
1960
  *
1963
1961
  * @export
1964
- * @interface JoggingResponseJogging
1962
+ * @interface JointLimits
1965
1963
  */
1966
- export interface JoggingResponseJogging {
1964
+ export interface JointLimits {
1967
1965
  /**
1968
1966
  *
1969
- * @type {JoggingState}
1970
- * @memberof JoggingResponseJogging
1967
+ * @type {LimitRange}
1968
+ * @memberof JointLimits
1971
1969
  */
1972
- 'jogging_state': JoggingState;
1970
+ 'position'?: LimitRange;
1973
1971
  /**
1974
1972
  *
1975
- * @type {RobotControllerState}
1976
- * @memberof JoggingResponseJogging
1973
+ * @type {number}
1974
+ * @memberof JointLimits
1977
1975
  */
1978
- 'robot_controller_state': RobotControllerState;
1979
- }
1980
- /**
1981
- *
1982
- * @export
1983
- * @interface JoggingRunning
1984
- */
1985
- export interface JoggingRunning {
1976
+ 'velocity'?: number;
1986
1977
  /**
1987
1978
  *
1988
- * @type {object}
1989
- * @memberof JoggingRunning
1979
+ * @type {number}
1980
+ * @memberof JointLimits
1990
1981
  */
1991
- 'running': object;
1992
- }
1993
- /**
1994
- * @type JoggingState
1995
- * @export
1996
- */
1997
- export type JoggingState = JoggingPausedCollision | JoggingPausedJointLimit | JoggingPausedOnIO | JoggingPausedUserRequest | JoggingRunning;
1998
-
1999
- /**
2000
- *
2001
- * @export
2002
- * @interface JointLimitExceeded
2003
- */
2004
- export interface JointLimitExceeded {
1982
+ 'acceleration'?: number;
2005
1983
  /**
2006
1984
  *
2007
- * @type {FeedbackJointLimitExceeded}
2008
- * @memberof JointLimitExceeded
1985
+ * @type {number}
1986
+ * @memberof JointLimits
2009
1987
  */
2010
- 'joint_limit_exceeded'?: FeedbackJointLimitExceeded;
1988
+ 'torque'?: number;
2011
1989
  }
2012
1990
  /**
2013
1991
  *
@@ -2060,6 +2038,32 @@ export const JointVelocityRequestMessageTypeEnum = {
2060
2038
 
2061
2039
  export type JointVelocityRequestMessageTypeEnum = typeof JointVelocityRequestMessageTypeEnum[keyof typeof JointVelocityRequestMessageTypeEnum];
2062
2040
 
2041
+ /**
2042
+ * Acknowledgment to a JointVelocityRequest.
2043
+ * @export
2044
+ * @interface JointVelocityResponse
2045
+ */
2046
+ export interface JointVelocityResponse {
2047
+ /**
2048
+ * Error message in case of invalid JointVelocityRequest.
2049
+ * @type {string}
2050
+ * @memberof JointVelocityResponse
2051
+ */
2052
+ 'message'?: string;
2053
+ /**
2054
+ *
2055
+ * @type {string}
2056
+ * @memberof JointVelocityResponse
2057
+ */
2058
+ 'kind': JointVelocityResponseKindEnum;
2059
+ }
2060
+
2061
+ export const JointVelocityResponseKindEnum = {
2062
+ JointVelocityReceived: 'JOINT_VELOCITY_RECEIVED'
2063
+ } as const;
2064
+
2065
+ export type JointVelocityResponseKindEnum = typeof JointVelocityResponseKindEnum[keyof typeof JointVelocityResponseKindEnum];
2066
+
2063
2067
  /**
2064
2068
  * This structure describes a set of joint values of a motion group. We call a set of joint values describing the current position in joint space of a motion group a \"joint position\". Joint position was chosen as the term to be consistent with the terms \"joint velocity\" and \"joint acceleration\". `joints` must have as many entries as the motion group\'s degrees of freedom to be valid. Float precision is the default.
2065
2069
  * @export
@@ -2235,6 +2239,75 @@ export const LicenseStatusEnum = {
2235
2239
  export type LicenseStatusEnum = typeof LicenseStatusEnum[keyof typeof LicenseStatusEnum];
2236
2240
 
2237
2241
 
2242
+ /**
2243
+ *
2244
+ * @export
2245
+ * @interface LimitConfig
2246
+ */
2247
+ export interface LimitConfig {
2248
+ /**
2249
+ *
2250
+ * @type {LimitSet}
2251
+ * @memberof LimitConfig
2252
+ */
2253
+ 'physical_limits'?: LimitSet;
2254
+ /**
2255
+ *
2256
+ * @type {OperationLimits}
2257
+ * @memberof LimitConfig
2258
+ */
2259
+ 'operation_limits'?: OperationLimits;
2260
+ }
2261
+ /**
2262
+ * The upper_limit must be greater then the lower_limit.
2263
+ * @export
2264
+ * @interface LimitRange
2265
+ */
2266
+ export interface LimitRange {
2267
+ /**
2268
+ *
2269
+ * @type {number}
2270
+ * @memberof LimitRange
2271
+ */
2272
+ 'lower_limit'?: number;
2273
+ /**
2274
+ *
2275
+ * @type {number}
2276
+ * @memberof LimitRange
2277
+ */
2278
+ 'upper_limit'?: number;
2279
+ }
2280
+ /**
2281
+ *
2282
+ * @export
2283
+ * @interface LimitSet
2284
+ */
2285
+ export interface LimitSet {
2286
+ /**
2287
+ *
2288
+ * @type {Array<JointLimits>}
2289
+ * @memberof LimitSet
2290
+ */
2291
+ 'joints'?: Array<JointLimits>;
2292
+ /**
2293
+ *
2294
+ * @type {CartesianLimits}
2295
+ * @memberof LimitSet
2296
+ */
2297
+ 'tcp'?: CartesianLimits;
2298
+ /**
2299
+ *
2300
+ * @type {CartesianLimits}
2301
+ * @memberof LimitSet
2302
+ */
2303
+ 'elbow'?: CartesianLimits;
2304
+ /**
2305
+ *
2306
+ * @type {CartesianLimits}
2307
+ * @memberof LimitSet
2308
+ */
2309
+ 'flange'?: CartesianLimits;
2310
+ }
2238
2311
  /**
2239
2312
  * If a limit is not set, the default value will be used.
2240
2313
  * @export
@@ -2437,10 +2510,10 @@ export interface MotionGroupDescription {
2437
2510
  'safety_tool_colliders'?: { [key: string]: { [key: string]: Collider; }; };
2438
2511
  /**
2439
2512
  *
2440
- * @type {PlanningLimits}
2513
+ * @type {LimitConfig}
2441
2514
  * @memberof MotionGroupDescription
2442
2515
  */
2443
- 'global_limits': PlanningLimits;
2516
+ 'global_limits': LimitConfig;
2444
2517
  /**
2445
2518
  * Maps a payload name to its configuration. Key must be a payload identifier. Values are payload objects.
2446
2519
  * @type {{ [key: string]: Payload; }}
@@ -2530,17 +2603,17 @@ export interface MotionGroupJoints {
2530
2603
  'torques'?: Array<number>;
2531
2604
  }
2532
2605
  /**
2533
- *
2606
+ * Presents the current state of the motion group.
2534
2607
  * @export
2535
2608
  * @interface MotionGroupState
2536
2609
  */
2537
2610
  export interface MotionGroupState {
2538
2611
  /**
2539
- * Timestamp indicating when the represented information was received from the robot controller.
2612
+ * Timestamp for when data was received from the robot controller.
2540
2613
  * @type {string}
2541
2614
  * @memberof MotionGroupState
2542
2615
  */
2543
- 'timestamp'?: string;
2616
+ 'timestamp': string;
2544
2617
  /**
2545
2618
  * Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established.
2546
2619
  * @type {number}
@@ -2572,59 +2645,59 @@ export interface MotionGroupState {
2572
2645
  */
2573
2646
  'joint_limit_reached': MotionGroupStateJointLimitReached;
2574
2647
  /**
2575
- * Current joint velocity of each joint in [rad/s]
2576
- * @type {Joints}
2577
- * @memberof MotionGroupState
2578
- */
2579
- 'joint_velocity': Joints;
2580
- /**
2581
- * Current joint torque of each joint in [Nm]. Is only available if the robot controller supports it (e.g. available for UR Controllers).
2648
+ * Current joint torque of each joint in [Nm]. Is only available if the robot controller supports it, e.g. available for UR controllers.
2582
2649
  * @type {Joints}
2583
2650
  * @memberof MotionGroupState
2584
2651
  */
2585
2652
  'joint_torque'?: Joints;
2586
2653
  /**
2587
- * Current Current at TCP in [A]. Is only available if the robot controller supports it, e.g. available for UR Controllers.
2654
+ * Current at TCP in [A]. Is only available if the robot controller supports it, e.g. available for UR controllers.
2588
2655
  * @type {Joints}
2589
2656
  * @memberof MotionGroupState
2590
2657
  */
2591
2658
  'joint_current'?: Joints;
2592
2659
  /**
2593
- * Pose of the Flange (last point of the motion group before the endeffector starts). Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request. For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model.
2660
+ * Pose of the flange. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system specified in the request. For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model.
2594
2661
  * @type {Pose}
2595
2662
  * @memberof MotionGroupState
2596
2663
  */
2597
2664
  'flange_pose'?: Pose;
2598
2665
  /**
2599
- * Unique identifier addressing the TCP currently set.
2666
+ * Unique identifier addressing the active TCP. Might not be returned for positioners as some do not support TCPs, depending on the model.
2600
2667
  * @type {string}
2601
2668
  * @memberof MotionGroupState
2602
2669
  */
2603
- 'tcp': string;
2670
+ 'tcp'?: string;
2604
2671
  /**
2605
- * Pose of the TCP currently selected on the robot control panel. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request.
2672
+ * Pose of the TCP selected on the robot control panel. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system specified in the request. Might not be returned for positioners as some do not support TCPs, depending on the model.
2606
2673
  * @type {Pose}
2607
2674
  * @memberof MotionGroupState
2608
2675
  */
2609
- 'tcp_pose': Pose;
2676
+ 'tcp_pose'?: Pose;
2610
2677
  /**
2611
- * Current velocity at TCP in [mm/s]. If `tcp` is not specified, the velocity at the flange is returned. The velocity is relative to the response_coordinate_system specified in the request.
2612
- * @type {MotionVector}
2678
+ * Unique identifier addressing the reference coordinate system of the cartesian data. Might not be returned for positioners as some do not support TCPs, depending on the model. Default: world coordinate system of corresponding controller.
2679
+ * @type {string}
2613
2680
  * @memberof MotionGroupState
2614
2681
  */
2615
- 'tcp_velocity': MotionVector;
2682
+ 'coordinate_system'?: string;
2616
2683
  /**
2617
- * Unique identifier addressing the reference coordinate system of the cartesian data. Default is the world coordinate system of corresponding controller.
2684
+ * Unique identifier addressing the active payload. Only fetchable via GET endpoint, not available in WebSocket.
2618
2685
  * @type {string}
2619
2686
  * @memberof MotionGroupState
2620
2687
  */
2621
- 'coordinate_system': string;
2688
+ 'payload'?: string;
2622
2689
  /**
2623
- * Unique identifier addressing the Payload currently set. Only fetchable via GET endpoint, not available in WebSocket.
2624
- * @type {string}
2690
+ * Indicates whether the motion group is in standstill. Convenience: Signals that NOVA treats measured joint velocities as 0.
2691
+ * @type {boolean}
2625
2692
  * @memberof MotionGroupState
2626
2693
  */
2627
- 'payload'?: string;
2694
+ 'standstill': boolean;
2695
+ /**
2696
+ * Data that was commanded to the motion group. Includes additional data on NOVA\'s execution components for executing trajectories and jogging. This is a convenience field to indicate the last command sent to the motion group. It is not available in all cases, e.g. if the motion group is not moved by NOVA.
2697
+ * @type {Execute}
2698
+ * @memberof MotionGroupState
2699
+ */
2700
+ 'execute'?: Execute;
2628
2701
  }
2629
2702
  /**
2630
2703
  * Indicates which joint of the motion group is in a limit. If a joint is in its limit, only this joint can be moved. Movements that affect any other joints are not executed.
@@ -2639,97 +2712,6 @@ export interface MotionGroupStateJointLimitReached {
2639
2712
  */
2640
2713
  'limit_reached': Array<boolean>;
2641
2714
  }
2642
- /**
2643
- * Presents the current state of the motion group.
2644
- * @export
2645
- * @interface MotionGroupStateWithoutPayload
2646
- */
2647
- export interface MotionGroupStateWithoutPayload {
2648
- /**
2649
- * Timestamp indicating when the represented information was received from the robot controller.
2650
- * @type {string}
2651
- * @memberof MotionGroupStateWithoutPayload
2652
- */
2653
- 'timestamp'?: string;
2654
- /**
2655
- * Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established.
2656
- * @type {number}
2657
- * @memberof MotionGroupStateWithoutPayload
2658
- */
2659
- 'sequence_number': number;
2660
- /**
2661
- * Identifier of the motion group.
2662
- * @type {string}
2663
- * @memberof MotionGroupStateWithoutPayload
2664
- */
2665
- 'motion_group': string;
2666
- /**
2667
- * Convenience: Identifier of the robot controller the motion group is attached to.
2668
- * @type {string}
2669
- * @memberof MotionGroupStateWithoutPayload
2670
- */
2671
- 'controller': string;
2672
- /**
2673
- * Current joint position of each joint in [rad]
2674
- * @type {Joints}
2675
- * @memberof MotionGroupStateWithoutPayload
2676
- */
2677
- 'joint_position': Joints;
2678
- /**
2679
- * Indicates whether the joint is in a limit for all joints of the motion group.
2680
- * @type {MotionGroupStateJointLimitReached}
2681
- * @memberof MotionGroupStateWithoutPayload
2682
- */
2683
- 'joint_limit_reached': MotionGroupStateJointLimitReached;
2684
- /**
2685
- * Current joint velocity of each joint in [rad/s]
2686
- * @type {Joints}
2687
- * @memberof MotionGroupStateWithoutPayload
2688
- */
2689
- 'joint_velocity': Joints;
2690
- /**
2691
- * Current joint torque of each joint in [Nm]. Is only available if the robot controller supports it (e.g. available for UR Controllers).
2692
- * @type {Joints}
2693
- * @memberof MotionGroupStateWithoutPayload
2694
- */
2695
- 'joint_torque'?: Joints;
2696
- /**
2697
- * Current Current at TCP in [A]. Is only available if the robot controller supports it, e.g. available for UR Controllers.
2698
- * @type {Joints}
2699
- * @memberof MotionGroupStateWithoutPayload
2700
- */
2701
- 'joint_current'?: Joints;
2702
- /**
2703
- * Pose of the Flange (last point of the motion group before the endeffector starts). Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request. For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model.
2704
- * @type {Pose}
2705
- * @memberof MotionGroupStateWithoutPayload
2706
- */
2707
- 'flange_pose'?: Pose;
2708
- /**
2709
- * Unique identifier addressing the TCP currently set.
2710
- * @type {string}
2711
- * @memberof MotionGroupStateWithoutPayload
2712
- */
2713
- 'tcp': string;
2714
- /**
2715
- * Pose of the TCP currently selected on the robot control panel. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request.
2716
- * @type {Pose}
2717
- * @memberof MotionGroupStateWithoutPayload
2718
- */
2719
- 'tcp_pose': Pose;
2720
- /**
2721
- * Current velocity at TCP in [mm/s]. If `tcp` is not specified, the velocity at the flange is returned. The velocity is relative to the response_coordinate_system specified in the request.
2722
- * @type {MotionVector}
2723
- * @memberof MotionGroupStateWithoutPayload
2724
- */
2725
- 'tcp_velocity': MotionVector;
2726
- /**
2727
- * Unique identifier addressing the reference coordinate system of the cartesian data. Default is the world coordinate system of corresponding controller.
2728
- * @type {string}
2729
- * @memberof MotionGroupStateWithoutPayload
2730
- */
2731
- 'coordinate_system': string;
2732
- }
2733
2715
  /**
2734
2716
  * Collection of information on the current state of the robot.
2735
2717
  * @export
@@ -2756,94 +2738,31 @@ export interface MotionState {
2756
2738
  'state': RobotState;
2757
2739
  }
2758
2740
  /**
2759
- *
2741
+ * Error message in case an error occurs during movement execution.
2760
2742
  * @export
2761
- * @interface MotionVector
2743
+ * @interface MovementErrorResponse
2762
2744
  */
2763
- export interface MotionVector {
2764
- /**
2765
- * A three-dimensional vector [x, y, z] with double precision.
2766
- * @type {Array<number>}
2767
- * @memberof MotionVector
2768
- */
2769
- 'linear'?: Array<number>;
2745
+ export interface MovementErrorResponse {
2770
2746
  /**
2771
- * A three-dimensional vector [x, y, z] with double precision.
2772
- * @type {Array<number>}
2773
- * @memberof MotionVector
2774
- */
2775
- 'angular'?: Array<number>;
2776
- /**
2777
- * optional, unique name of base coordinate system, if empty world is used
2747
+ * Detailed error message describing the issue encountered during movement execution.
2778
2748
  * @type {string}
2779
- * @memberof MotionVector
2749
+ * @memberof MovementErrorResponse
2780
2750
  */
2781
- 'coordinate_system'?: string;
2782
- }
2783
- /**
2784
- * Sent during trajectory movement, response-rate closest to the nearest multiple of controller step-rate but not exceeding the configured rate.
2785
- * @export
2786
- * @interface Movement
2787
- */
2788
- export interface Movement {
2789
- /**
2790
- *
2791
- * @type {MovementMovement}
2792
- * @memberof Movement
2793
- */
2794
- 'movement': MovementMovement;
2795
- }
2796
- /**
2797
- * Response signalling an error during trajectory execution. This response is sent in case of an unexpected error , e.g. controller disconnects. The error details are described in the error_message field.
2798
- * @export
2799
- * @interface MovementError
2800
- */
2801
- export interface MovementError {
2751
+ 'message': string;
2802
2752
  /**
2803
2753
  *
2804
- * @type {MovementErrorError}
2805
- * @memberof MovementError
2806
- */
2807
- 'error': MovementErrorError;
2808
- }
2809
- /**
2810
- *
2811
- * @export
2812
- * @interface MovementErrorError
2813
- */
2814
- export interface MovementErrorError {
2815
- /**
2816
- * Human-readable error details that describes the error.
2817
2754
  * @type {string}
2818
- * @memberof MovementErrorError
2819
- */
2820
- 'error_message': string;
2821
- }
2822
- /**
2823
- *
2824
- * @export
2825
- * @interface MovementMovement
2826
- */
2827
- export interface MovementMovement {
2828
- /**
2829
- * Remaining time in milliseconds (ms) to reach the end of the motion.
2830
- * @type {number}
2831
- * @memberof MovementMovement
2832
- */
2833
- 'time_to_end': number;
2834
- /**
2835
- * Current location of motion group on the trajectory.
2836
- * @type {number}
2837
- * @memberof MovementMovement
2838
- */
2839
- 'current_location': number;
2840
- /**
2841
- * Current state of the robot controller and moving motion group.
2842
- * @type {RobotControllerState}
2843
- * @memberof MovementMovement
2755
+ * @memberof MovementErrorResponse
2844
2756
  */
2845
- 'state': RobotControllerState;
2757
+ 'kind': MovementErrorResponseKindEnum;
2846
2758
  }
2759
+
2760
+ export const MovementErrorResponseKindEnum = {
2761
+ Error: 'ERROR'
2762
+ } as const;
2763
+
2764
+ export type MovementErrorResponseKindEnum = typeof MovementErrorResponseKindEnum[keyof typeof MovementErrorResponseKindEnum];
2765
+
2847
2766
  /**
2848
2767
  *
2849
2768
  * @export
@@ -2899,6 +2818,37 @@ export const OperatingState = {
2899
2818
  export type OperatingState = typeof OperatingState[keyof typeof OperatingState];
2900
2819
 
2901
2820
 
2821
+ /**
2822
+ *
2823
+ * @export
2824
+ * @interface OperationLimits
2825
+ */
2826
+ export interface OperationLimits {
2827
+ /**
2828
+ *
2829
+ * @type {LimitSet}
2830
+ * @memberof OperationLimits
2831
+ */
2832
+ 'auto_limits'?: LimitSet;
2833
+ /**
2834
+ *
2835
+ * @type {LimitSet}
2836
+ * @memberof OperationLimits
2837
+ */
2838
+ 'manual_limits'?: LimitSet;
2839
+ /**
2840
+ *
2841
+ * @type {LimitSet}
2842
+ * @memberof OperationLimits
2843
+ */
2844
+ 'manual_t1_limits'?: LimitSet;
2845
+ /**
2846
+ *
2847
+ * @type {LimitSet}
2848
+ * @memberof OperationLimits
2849
+ */
2850
+ 'manual_t2_limits'?: LimitSet;
2851
+ }
2902
2852
  /**
2903
2853
  * Current operation mode of the configured robot controller. Operation modes in which the attached motion groups can be moved are: - OPERATION_MODE_MANUAL (if enabling switch is pressed) - OPERATION_MODE_MANUAL_T1 (if enabling switch is pressed) - OPERATION_MODE_MANUAL_T2 (if enabling switch is pressed) - OPERATION_MODE_AUTO (without needing to press enabling switch) All other modes are considered as non-operational.
2904
2854
  * @export
@@ -3095,6 +3045,52 @@ export const PathLinePathDefinitionNameEnum = {
3095
3045
 
3096
3046
  export type PathLinePathDefinitionNameEnum = typeof PathLinePathDefinitionNameEnum[keyof typeof PathLinePathDefinitionNameEnum];
3097
3047
 
3048
+ /**
3049
+ * Request to pause jogging. If successful, `execute` jogging state in [MotionGroupState](MotionGroupState.yaml) is set to `PAUSED_BY_USER`.
3050
+ * @export
3051
+ * @interface PauseJoggingRequest
3052
+ */
3053
+ export interface PauseJoggingRequest {
3054
+ /**
3055
+ * Type specifier for server, set automatically.
3056
+ * @type {string}
3057
+ * @memberof PauseJoggingRequest
3058
+ */
3059
+ 'message_type'?: PauseJoggingRequestMessageTypeEnum;
3060
+ }
3061
+
3062
+ export const PauseJoggingRequestMessageTypeEnum = {
3063
+ PauseJoggingRequest: 'PauseJoggingRequest'
3064
+ } as const;
3065
+
3066
+ export type PauseJoggingRequestMessageTypeEnum = typeof PauseJoggingRequestMessageTypeEnum[keyof typeof PauseJoggingRequestMessageTypeEnum];
3067
+
3068
+ /**
3069
+ * Acknowledgment to a PauseJoggingRequest.
3070
+ * @export
3071
+ * @interface PauseJoggingResponse
3072
+ */
3073
+ export interface PauseJoggingResponse {
3074
+ /**
3075
+ * Error message in case of invalid PauseJoggingRequest.
3076
+ * @type {string}
3077
+ * @memberof PauseJoggingResponse
3078
+ */
3079
+ 'message'?: string;
3080
+ /**
3081
+ *
3082
+ * @type {string}
3083
+ * @memberof PauseJoggingResponse
3084
+ */
3085
+ 'kind': PauseJoggingResponseKindEnum;
3086
+ }
3087
+
3088
+ export const PauseJoggingResponseKindEnum = {
3089
+ PauseReceived: 'PAUSE_RECEIVED'
3090
+ } as const;
3091
+
3092
+ export type PauseJoggingResponseKindEnum = typeof PauseJoggingResponseKindEnum[keyof typeof PauseJoggingResponseKindEnum];
3093
+
3098
3094
  /**
3099
3095
  * Request to pause the movement execution. Movement pauses as soon as a [Standstill](Standstill.yaml) is sent back to the client. Resume movement with StartMovementRequest.
3100
3096
  * @export
@@ -3107,12 +3103,6 @@ export interface PauseMovementRequest {
3107
3103
  * @memberof PauseMovementRequest
3108
3104
  */
3109
3105
  'message_type'?: PauseMovementRequestMessageTypeEnum;
3110
- /**
3111
- * Defaults to `true`. Set to true to get a response signalling successful initiation to pause the movement.
3112
- * @type {boolean}
3113
- * @memberof PauseMovementRequest
3114
- */
3115
- 'send_response'?: boolean;
3116
3106
  }
3117
3107
 
3118
3108
  export const PauseMovementRequestMessageTypeEnum = {
@@ -3122,37 +3112,31 @@ export const PauseMovementRequestMessageTypeEnum = {
3122
3112
  export type PauseMovementRequestMessageTypeEnum = typeof PauseMovementRequestMessageTypeEnum[keyof typeof PauseMovementRequestMessageTypeEnum];
3123
3113
 
3124
3114
  /**
3125
- * Response for PauseMovementRequest message. ATTENTION: No confirmation that the movement was paused. Confirmation that the PauseMovementRequest was received and is processed. End of movement execution is signalled by [StillstandResponse](StillstandResponse).
3115
+ * Acknowledgment for PauseMovementRequest message. ATTENTION: No confirmation that the movement was paused. Confirmation that the PauseMovementRequest was received and is processed. End of movement execution is signalled by [StillstandResponse](StillstandResponse).
3126
3116
  * @export
3127
3117
  * @interface PauseMovementResponse
3128
3118
  */
3129
3119
  export interface PauseMovementResponse {
3130
3120
  /**
3131
- *
3132
- * @type {PauseMovementResponsePauseResponse}
3121
+ * Error message in case of invalid PauseMovementResquest.
3122
+ * @type {string}
3133
3123
  * @memberof PauseMovementResponse
3134
3124
  */
3135
- 'pause_response': PauseMovementResponsePauseResponse;
3136
- }
3137
- /**
3138
- *
3139
- * @export
3140
- * @interface PauseMovementResponsePauseResponse
3141
- */
3142
- export interface PauseMovementResponsePauseResponse {
3143
- /**
3144
- * Indicates if PauseMovementRequest can be executed.
3145
- * @type {boolean}
3146
- * @memberof PauseMovementResponsePauseResponse
3147
- */
3148
- 'succeeded': boolean;
3125
+ 'message'?: string;
3149
3126
  /**
3150
- * Error message in case of invalid PauseMovementRequest or failure while claiming motion.
3127
+ *
3151
3128
  * @type {string}
3152
- * @memberof PauseMovementResponsePauseResponse
3129
+ * @memberof PauseMovementResponse
3153
3130
  */
3154
- 'error_message'?: string;
3131
+ 'kind': PauseMovementResponseKindEnum;
3155
3132
  }
3133
+
3134
+ export const PauseMovementResponseKindEnum = {
3135
+ PauseReceived: 'PAUSE_RECEIVED'
3136
+ } as const;
3137
+
3138
+ export type PauseMovementResponseKindEnum = typeof PauseMovementResponseKindEnum[keyof typeof PauseMovementResponseKindEnum];
3139
+
3156
3140
  /**
3157
3141
  * Defines an input/output that the motion will be paused for. The motion will stop gracefully on path.
3158
3142
  * @export
@@ -3174,6 +3158,118 @@ export interface PauseOnIO {
3174
3158
  }
3175
3159
 
3176
3160
 
3161
+ /**
3162
+ *
3163
+ * @export
3164
+ * @interface PausedByRequest
3165
+ */
3166
+ export interface PausedByRequest {
3167
+ /**
3168
+ *
3169
+ * @type {string}
3170
+ * @memberof PausedByRequest
3171
+ */
3172
+ 'kind': PausedByRequestKindEnum;
3173
+ }
3174
+
3175
+ export const PausedByRequestKindEnum = {
3176
+ PausedByUser: 'PAUSED_BY_USER'
3177
+ } as const;
3178
+
3179
+ export type PausedByRequestKindEnum = typeof PausedByRequestKindEnum[keyof typeof PausedByRequestKindEnum];
3180
+
3181
+ /**
3182
+ *
3183
+ * @export
3184
+ * @interface PausedByUser
3185
+ */
3186
+ export interface PausedByUser {
3187
+ /**
3188
+ *
3189
+ * @type {string}
3190
+ * @memberof PausedByUser
3191
+ */
3192
+ 'kind': PausedByUserKindEnum;
3193
+ }
3194
+
3195
+ export const PausedByUserKindEnum = {
3196
+ PausedByUser: 'PAUSED_BY_USER'
3197
+ } as const;
3198
+
3199
+ export type PausedByUserKindEnum = typeof PausedByUserKindEnum[keyof typeof PausedByUserKindEnum];
3200
+
3201
+ /**
3202
+ *
3203
+ * @export
3204
+ * @interface PausedNearCollision
3205
+ */
3206
+ export interface PausedNearCollision {
3207
+ /**
3208
+ *
3209
+ * @type {string}
3210
+ * @memberof PausedNearCollision
3211
+ */
3212
+ 'kind': PausedNearCollisionKindEnum;
3213
+ /**
3214
+ *
3215
+ * @type {string}
3216
+ * @memberof PausedNearCollision
3217
+ */
3218
+ 'description': string;
3219
+ }
3220
+
3221
+ export const PausedNearCollisionKindEnum = {
3222
+ PausedNearCollision: 'PAUSED_NEAR_COLLISION'
3223
+ } as const;
3224
+
3225
+ export type PausedNearCollisionKindEnum = typeof PausedNearCollisionKindEnum[keyof typeof PausedNearCollisionKindEnum];
3226
+
3227
+ /**
3228
+ *
3229
+ * @export
3230
+ * @interface PausedNearJointLimit
3231
+ */
3232
+ export interface PausedNearJointLimit {
3233
+ /**
3234
+ *
3235
+ * @type {string}
3236
+ * @memberof PausedNearJointLimit
3237
+ */
3238
+ 'kind': PausedNearJointLimitKindEnum;
3239
+ /**
3240
+ *
3241
+ * @type {Array<number>}
3242
+ * @memberof PausedNearJointLimit
3243
+ */
3244
+ 'joint_indices': Array<number>;
3245
+ }
3246
+
3247
+ export const PausedNearJointLimitKindEnum = {
3248
+ PausedNearJointLimit: 'PAUSED_NEAR_JOINT_LIMIT'
3249
+ } as const;
3250
+
3251
+ export type PausedNearJointLimitKindEnum = typeof PausedNearJointLimitKindEnum[keyof typeof PausedNearJointLimitKindEnum];
3252
+
3253
+ /**
3254
+ *
3255
+ * @export
3256
+ * @interface PausedOnIO
3257
+ */
3258
+ export interface PausedOnIO {
3259
+ /**
3260
+ *
3261
+ * @type {string}
3262
+ * @memberof PausedOnIO
3263
+ */
3264
+ 'kind': PausedOnIOKindEnum;
3265
+ }
3266
+
3267
+ export const PausedOnIOKindEnum = {
3268
+ PausedOnIo: 'PAUSED_ON_IO'
3269
+ } as const;
3270
+
3271
+ export type PausedOnIOKindEnum = typeof PausedOnIOKindEnum[keyof typeof PausedOnIOKindEnum];
3272
+
3177
3273
  /**
3178
3274
  *
3179
3275
  * @export
@@ -3300,104 +3396,6 @@ export const PlaneShapeTypeEnum = {
3300
3396
 
3301
3397
  export type PlaneShapeTypeEnum = typeof PlaneShapeTypeEnum[keyof typeof PlaneShapeTypeEnum];
3302
3398
 
3303
- /**
3304
- * All known joint and cartesian limits of a motion-group. Used for motion planning.
3305
- * @export
3306
- * @interface PlanningLimits
3307
- */
3308
- export interface PlanningLimits {
3309
- /**
3310
- * Joint position limits in [rad], indexed starting from base.
3311
- * @type {Array<PlanningLimitsLimitRange>}
3312
- * @memberof PlanningLimits
3313
- */
3314
- 'joint_position_limits'?: Array<PlanningLimitsLimitRange>;
3315
- /**
3316
- * Maximum allowed velocity for joints in [rad/s or mm/s] of the safety setup, starting at base.
3317
- * @type {Array<number>}
3318
- * @memberof PlanningLimits
3319
- */
3320
- 'joint_velocity_limits'?: Array<number>;
3321
- /**
3322
- * Maximum allowed acceleration for joints in [rad/s^2 or mm/s^2] of the safety setup, starting at base.
3323
- * @type {Array<number>}
3324
- * @memberof PlanningLimits
3325
- */
3326
- 'joint_acceleration_limits'?: Array<number>;
3327
- /**
3328
- * Maximum allowed torque for joints in [Nm or N] of the safety setup, starting at base.
3329
- * @type {Array<number>}
3330
- * @memberof PlanningLimits
3331
- */
3332
- 'joint_torque_limits'?: Array<number>;
3333
- /**
3334
- * At maximum one dimensional velocity in [mm/s] at TCP allowed.
3335
- * @type {number}
3336
- * @memberof PlanningLimits
3337
- */
3338
- 'tcp_velocity_limit'?: number;
3339
- /**
3340
- * At maximum one dimensional acceleration in [mm/s^2] at TCP allowed.
3341
- * @type {number}
3342
- * @memberof PlanningLimits
3343
- */
3344
- 'tcp_acceleration_limit'?: number;
3345
- /**
3346
- * At maximum one dimensional orientation velocity in [rad/s] at TCP allowed.
3347
- * @type {number}
3348
- * @memberof PlanningLimits
3349
- */
3350
- 'tcp_orientation_velocity_limit'?: number;
3351
- /**
3352
- * At maximum one dimensional orientation acceleration in [rad/s^2] at TCP allowed.
3353
- * @type {number}
3354
- * @memberof PlanningLimits
3355
- */
3356
- 'tcp_orientation_acceleration_limit'?: number;
3357
- /**
3358
- * At maximum one dimensional force in [N] at TCP allowed.
3359
- * @type {number}
3360
- * @memberof PlanningLimits
3361
- */
3362
- 'tcp_force_limit'?: number;
3363
- /**
3364
- * At maximum one dimensional velocity in [mm/s] at the elbow allowed.
3365
- * @type {number}
3366
- * @memberof PlanningLimits
3367
- */
3368
- 'elbow_velocity_limit'?: number;
3369
- /**
3370
- * At maximum one dimensional acceleration in [mm/s^2] at the elbow allowed.
3371
- * @type {number}
3372
- * @memberof PlanningLimits
3373
- */
3374
- 'elbow_acceleration_limit'?: number;
3375
- /**
3376
- * At maximum one dimensional force in [N] at the elbow allowed.
3377
- * @type {number}
3378
- * @memberof PlanningLimits
3379
- */
3380
- 'elbow_force_limit'?: number;
3381
- }
3382
- /**
3383
- * The upper_limit must be greater then the lower_limit.
3384
- * @export
3385
- * @interface PlanningLimitsLimitRange
3386
- */
3387
- export interface PlanningLimitsLimitRange {
3388
- /**
3389
- *
3390
- * @type {number}
3391
- * @memberof PlanningLimitsLimitRange
3392
- */
3393
- 'lower_limit': number;
3394
- /**
3395
- *
3396
- * @type {number}
3397
- * @memberof PlanningLimitsLimitRange
3398
- */
3399
- 'upper_limit': number;
3400
- }
3401
3399
  /**
3402
3400
  * Sets velocity for executed movements of the motion, in percent. Send after initializing the connection with InitializeMovementRequest.
3403
3401
  * @export
@@ -3425,31 +3423,31 @@ export const PlaybackSpeedRequestMessageTypeEnum = {
3425
3423
  export type PlaybackSpeedRequestMessageTypeEnum = typeof PlaybackSpeedRequestMessageTypeEnum[keyof typeof PlaybackSpeedRequestMessageTypeEnum];
3426
3424
 
3427
3425
  /**
3428
- *
3426
+ * Acknowledgment for PlaybackSpeedRequest message.
3429
3427
  * @export
3430
3428
  * @interface PlaybackSpeedResponse
3431
3429
  */
3432
3430
  export interface PlaybackSpeedResponse {
3433
3431
  /**
3434
- *
3435
- * @type {PlaybackSpeedResponsePlaybackSpeedResponse}
3432
+ * Error message in case of invalid PlaybackSpeedRequest.
3433
+ * @type {string}
3436
3434
  * @memberof PlaybackSpeedResponse
3437
3435
  */
3438
- 'playback_speed_response': PlaybackSpeedResponsePlaybackSpeedResponse;
3439
- }
3440
- /**
3441
- *
3442
- * @export
3443
- * @interface PlaybackSpeedResponsePlaybackSpeedResponse
3444
- */
3445
- export interface PlaybackSpeedResponsePlaybackSpeedResponse {
3436
+ 'message'?: string;
3446
3437
  /**
3447
- * Value of the requested playback speed in percent [%].
3448
- * @type {number}
3449
- * @memberof PlaybackSpeedResponsePlaybackSpeedResponse
3438
+ *
3439
+ * @type {string}
3440
+ * @memberof PlaybackSpeedResponse
3450
3441
  */
3451
- 'requested_value': number;
3442
+ 'kind': PlaybackSpeedResponseKindEnum;
3452
3443
  }
3444
+
3445
+ export const PlaybackSpeedResponseKindEnum = {
3446
+ PlaybackSpeedReceived: 'PLAYBACK_SPEED_RECEIVED'
3447
+ } as const;
3448
+
3449
+ export type PlaybackSpeedResponseKindEnum = typeof PlaybackSpeedResponseKindEnum[keyof typeof PlaybackSpeedResponseKindEnum];
3450
+
3453
3451
  /**
3454
3452
  * Defines a pose in 3D space. A pose is a combination of a position and an orientation. The position is applied before the orientation.
3455
3453
  * @export
@@ -3832,10 +3830,10 @@ export interface RobotSetup {
3832
3830
  'tcp_offset'?: Pose;
3833
3831
  /**
3834
3832
  *
3835
- * @type {PlanningLimits}
3833
+ * @type {LimitSet}
3836
3834
  * @memberof RobotSetup
3837
3835
  */
3838
- 'global_limits'?: PlanningLimits;
3836
+ 'global_limits'?: LimitSet;
3839
3837
  /**
3840
3838
  *
3841
3839
  * @type {Payload}
@@ -3937,6 +3935,52 @@ export interface RobotTcps {
3937
3935
  */
3938
3936
  'tcps': Array<RobotTcp>;
3939
3937
  }
3938
+ /**
3939
+ *
3940
+ * @export
3941
+ * @interface Running
3942
+ */
3943
+ export interface Running {
3944
+ /**
3945
+ *
3946
+ * @type {string}
3947
+ * @memberof Running
3948
+ */
3949
+ 'kind': RunningKindEnum;
3950
+ }
3951
+
3952
+ export const RunningKindEnum = {
3953
+ Running: 'RUNNING'
3954
+ } as const;
3955
+
3956
+ export type RunningKindEnum = typeof RunningKindEnum[keyof typeof RunningKindEnum];
3957
+
3958
+ /**
3959
+ *
3960
+ * @export
3961
+ * @interface Running1
3962
+ */
3963
+ export interface Running1 {
3964
+ /**
3965
+ *
3966
+ * @type {string}
3967
+ * @memberof Running1
3968
+ */
3969
+ 'kind': Running1KindEnum;
3970
+ /**
3971
+ * Remaining time in milliseconds (ms) to reach the end of the motion.
3972
+ * @type {number}
3973
+ * @memberof Running1
3974
+ */
3975
+ 'time_to_end': number;
3976
+ }
3977
+
3978
+ export const Running1KindEnum = {
3979
+ Running: 'RUNNING'
3980
+ } as const;
3981
+
3982
+ export type Running1KindEnum = typeof Running1KindEnum[keyof typeof Running1KindEnum];
3983
+
3940
3984
  /**
3941
3985
  * Current safety state of the configured robot controller. Operation modes in which the attached motion groups can be moved are: - SAFETY_STATE_NORMAL - SAFETY_STATE_REDUCED All other modes are considered as non-operational.
3942
3986
  * @export
@@ -4183,62 +4227,6 @@ export const SphereShapeTypeEnum = {
4183
4227
 
4184
4228
  export type SphereShapeTypeEnum = typeof SphereShapeTypeEnum[keyof typeof SphereShapeTypeEnum];
4185
4229
 
4186
- /**
4187
- * The response will be sent one time at the end of every execution signalling that the motion group has stopped moving.
4188
- * @export
4189
- * @interface Standstill
4190
- */
4191
- export interface Standstill {
4192
- /**
4193
- *
4194
- * @type {StandstillStandstill}
4195
- * @memberof Standstill
4196
- */
4197
- 'standstill': StandstillStandstill;
4198
- }
4199
- /**
4200
- * The reason why the movement is paused.
4201
- * @export
4202
- * @enum {string}
4203
- */
4204
-
4205
- export const StandstillReason = {
4206
- ReasonMotionEnded: 'REASON_MOTION_ENDED',
4207
- ReasonUserPausedMotion: 'REASON_USER_PAUSED_MOTION',
4208
- ReasonWaitingForIo: 'REASON_WAITING_FOR_IO',
4209
- ReasonPausedOnIo: 'REASON_PAUSED_ON_IO'
4210
- } as const;
4211
-
4212
- export type StandstillReason = typeof StandstillReason[keyof typeof StandstillReason];
4213
-
4214
-
4215
- /**
4216
- *
4217
- * @export
4218
- * @interface StandstillStandstill
4219
- */
4220
- export interface StandstillStandstill {
4221
- /**
4222
- *
4223
- * @type {StandstillReason}
4224
- * @memberof StandstillStandstill
4225
- */
4226
- 'reason': StandstillReason;
4227
- /**
4228
- *
4229
- * @type {number}
4230
- * @memberof StandstillStandstill
4231
- */
4232
- 'location': number;
4233
- /**
4234
- * Current state of the controller and motion group which came to a standstill.
4235
- * @type {RobotControllerState}
4236
- * @memberof StandstillStandstill
4237
- */
4238
- 'state': RobotControllerState;
4239
- }
4240
-
4241
-
4242
4230
  /**
4243
4231
  * Moves the motion group along a trajectory, added via [planTrajectory](planTrajectory) or [planMotion](planMotion). Trajectories can be executed forwards or backwards(\"in reverse\"). Pause the execution with PauseMovementRequest. Resume execution with StartMovementRequest. Precondition: To start execution, the motion group must be located at the trajectory\'s start location specified in InitializeMovementRequest.
4244
4232
  * @export
@@ -4283,6 +4271,32 @@ export const StartMovementRequestMessageTypeEnum = {
4283
4271
 
4284
4272
  export type StartMovementRequestMessageTypeEnum = typeof StartMovementRequestMessageTypeEnum[keyof typeof StartMovementRequestMessageTypeEnum];
4285
4273
 
4274
+ /**
4275
+ * Acknowledgment for StartMovementRequest message. ATTENTION: No confirmation that the movement was started. Confirmation that the StartMovementRequest was received and is processed. Fields `execute` and `standstill` of response of [streamMotionGroupState](streamMotionGroupState) signal start of movement execution.
4276
+ * @export
4277
+ * @interface StartMovementResponse
4278
+ */
4279
+ export interface StartMovementResponse {
4280
+ /**
4281
+ * Error message in case of invalid StartMovementResquest.
4282
+ * @type {string}
4283
+ * @memberof StartMovementResponse
4284
+ */
4285
+ 'message'?: string;
4286
+ /**
4287
+ *
4288
+ * @type {string}
4289
+ * @memberof StartMovementResponse
4290
+ */
4291
+ 'kind': StartMovementResponseKindEnum;
4292
+ }
4293
+
4294
+ export const StartMovementResponseKindEnum = {
4295
+ StartReceived: 'START_RECEIVED'
4296
+ } as const;
4297
+
4298
+ export type StartMovementResponseKindEnum = typeof StartMovementResponseKindEnum[keyof typeof StartMovementResponseKindEnum];
4299
+
4286
4300
  /**
4287
4301
  * Defines an input/output that the motion should wait for to start the execution.
4288
4302
  * @export
@@ -4399,6 +4413,32 @@ export const TcpVelocityRequestMessageTypeEnum = {
4399
4413
 
4400
4414
  export type TcpVelocityRequestMessageTypeEnum = typeof TcpVelocityRequestMessageTypeEnum[keyof typeof TcpVelocityRequestMessageTypeEnum];
4401
4415
 
4416
+ /**
4417
+ * Acknowledgment to a TcpVelocityRequest.
4418
+ * @export
4419
+ * @interface TcpVelocityResponse
4420
+ */
4421
+ export interface TcpVelocityResponse {
4422
+ /**
4423
+ * Error message in case of invalid TcpVelocityRequest.
4424
+ * @type {string}
4425
+ * @memberof TcpVelocityResponse
4426
+ */
4427
+ 'message'?: string;
4428
+ /**
4429
+ *
4430
+ * @type {string}
4431
+ * @memberof TcpVelocityResponse
4432
+ */
4433
+ 'kind': TcpVelocityResponseKindEnum;
4434
+ }
4435
+
4436
+ export const TcpVelocityResponseKindEnum = {
4437
+ TcpVelocityReceived: 'TCP_VELOCITY_RECEIVED'
4438
+ } as const;
4439
+
4440
+ export type TcpVelocityResponseKindEnum = typeof TcpVelocityResponseKindEnum[keyof typeof TcpVelocityResponseKindEnum];
4441
+
4402
4442
  /**
4403
4443
  *
4404
4444
  * @export
@@ -4469,6 +4509,50 @@ export const TrajectoryDataMessageTypeEnum = {
4469
4509
 
4470
4510
  export type TrajectoryDataMessageTypeEnum = typeof TrajectoryDataMessageTypeEnum[keyof typeof TrajectoryDataMessageTypeEnum];
4471
4511
 
4512
+ /**
4513
+ * State of trajectory execution. This state is sent during trajectory movement, response-rate closest to the nearest multiple of controller step-rate but not exceeding the configured rate. The trajectory state can be one of the following: - RUNNING: Trajectory is being executed. - PAUSED_BY_USER: User has paused execution. - END_OF_TRAJECTORY: First or last sample (depending on direction) of trajectory has been sent. - WAIT_FOR_IO: Waiting for an I/O event to start execution. - PAUSED_ON_IO: Execution was paused because of an I/O event.
4514
+ * @export
4515
+ * @interface TrajectoryDetails
4516
+ */
4517
+ export interface TrajectoryDetails {
4518
+ /**
4519
+ * Unique identifier of the trajectory being executed.
4520
+ * @type {string}
4521
+ * @memberof TrajectoryDetails
4522
+ */
4523
+ 'trajectory': string;
4524
+ /**
4525
+ * Current location of motion group on the trajectory.
4526
+ * @type {number}
4527
+ * @memberof TrajectoryDetails
4528
+ */
4529
+ 'location': number;
4530
+ /**
4531
+ *
4532
+ * @type {TrajectoryDetailsState}
4533
+ * @memberof TrajectoryDetails
4534
+ */
4535
+ 'state': TrajectoryDetailsState;
4536
+ /**
4537
+ * Discriminator for OpenApi generators, which is always \"TRAJECTORY\" for this schema.
4538
+ * @type {string}
4539
+ * @memberof TrajectoryDetails
4540
+ */
4541
+ 'kind': TrajectoryDetailsKindEnum;
4542
+ }
4543
+
4544
+ export const TrajectoryDetailsKindEnum = {
4545
+ Trajectory: 'TRAJECTORY'
4546
+ } as const;
4547
+
4548
+ export type TrajectoryDetailsKindEnum = typeof TrajectoryDetailsKindEnum[keyof typeof TrajectoryDetailsKindEnum];
4549
+
4550
+ /**
4551
+ * @type TrajectoryDetailsState
4552
+ * @export
4553
+ */
4554
+ export type TrajectoryDetailsState = EndOfTrajectory | PausedByRequest | PausedOnIO | Running1 | WaitForIO;
4555
+
4472
4556
  /**
4473
4557
  *
4474
4558
  * @export
@@ -4480,7 +4564,7 @@ export interface TrajectoryId {
4480
4564
  * @type {string}
4481
4565
  * @memberof TrajectoryId
4482
4566
  */
4483
- 'message_type': TrajectoryIdMessageTypeEnum;
4567
+ 'message_type'?: TrajectoryIdMessageTypeEnum;
4484
4568
  /**
4485
4569
  * The identifier of the trajectory which was returned by the [addTrajectory](addTrajectory) endpoint.
4486
4570
  * @type {string}
@@ -4796,6 +4880,26 @@ export interface VirtualRobotConfiguration {
4796
4880
  */
4797
4881
  'content': string;
4798
4882
  }
4883
+ /**
4884
+ *
4885
+ * @export
4886
+ * @interface WaitForIO
4887
+ */
4888
+ export interface WaitForIO {
4889
+ /**
4890
+ *
4891
+ * @type {string}
4892
+ * @memberof WaitForIO
4893
+ */
4894
+ 'kind': WaitForIOKindEnum;
4895
+ }
4896
+
4897
+ export const WaitForIOKindEnum = {
4898
+ WaitForIo: 'WAIT_FOR_IO'
4899
+ } as const;
4900
+
4901
+ export type WaitForIOKindEnum = typeof WaitForIOKindEnum[keyof typeof WaitForIOKindEnum];
4902
+
4799
4903
  /**
4800
4904
  * The value to compare with the current value of the input/output.
4801
4905
  * @export
@@ -8921,7 +9025,7 @@ export const MotionGroupApiFp = function(configuration?: Configuration) {
8921
9025
  * @param {*} [options] Override http request option.
8922
9026
  * @throws {RequiredError}
8923
9027
  */
8924
- async streamMotionGroupState(cell: string, motionGroup: string, responseRate?: number, responseCoordinateSystem?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<MotionGroupStateWithoutPayload>> {
9028
+ async streamMotionGroupState(cell: string, motionGroup: string, responseRate?: number, responseCoordinateSystem?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<MotionGroupState>> {
8925
9029
  const localVarAxiosArgs = await localVarAxiosParamCreator.streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options);
8926
9030
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8927
9031
  const localVarOperationServerBasePath = operationServerMap['MotionGroupApi.streamMotionGroupState']?.[localVarOperationServerIndex]?.url;
@@ -8970,7 +9074,7 @@ export const MotionGroupApiFactory = function (configuration?: Configuration, ba
8970
9074
  * @param {*} [options] Override http request option.
8971
9075
  * @throws {RequiredError}
8972
9076
  */
8973
- streamMotionGroupState(cell: string, motionGroup: string, responseRate?: number, responseCoordinateSystem?: string, options?: RawAxiosRequestConfig): AxiosPromise<MotionGroupStateWithoutPayload> {
9077
+ streamMotionGroupState(cell: string, motionGroup: string, responseRate?: number, responseCoordinateSystem?: string, options?: RawAxiosRequestConfig): AxiosPromise<MotionGroupState> {
8974
9078
  return localVarFp.streamMotionGroupState(cell, motionGroup, responseRate, responseCoordinateSystem, options).then((request) => request(axios, basePath));
8975
9079
  },
8976
9080
  };