motion-master-client 0.0.340 → 0.0.342
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/package.json +1 -1
- package/src/api.js +2 -1
- package/src/api.js.map +1 -1
- package/src/lib/circulo.d.ts +51 -0
- package/src/lib/circulo.js +96 -1
- package/src/lib/circulo.js.map +1 -1
- package/src/lib/device.d.ts +100 -24
- package/src/lib/device.js +89 -3
- package/src/lib/device.js.map +1 -1
- package/src/lib/limited-range-system-identification.js +1 -1
- package/src/lib/limited-range-system-identification.js.map +1 -1
- package/src/lib/motion-master-req-res-client.d.ts +22 -28
- package/src/lib/motion-master-req-res-client.js +35 -72
- package/src/lib/motion-master-req-res-client.js.map +1 -1
package/src/lib/device.d.ts
CHANGED
|
@@ -5,18 +5,21 @@ import { UIFeaturesConfig } from './parameter';
|
|
|
5
5
|
import { DeviceRef, DeviceRefObj } from './types';
|
|
6
6
|
export declare const filenamePartRegExp: RegExp;
|
|
7
7
|
/**
|
|
8
|
-
* Represents a single device with extended
|
|
9
|
-
*
|
|
8
|
+
* Represents a single device with extended metadata beyond what the Motion Master API provides.
|
|
9
|
+
*
|
|
10
|
+
* Some properties—such as the serial number, hardware description, and variant—must be retrieved
|
|
11
|
+
* through additional file requests from Motion Master.
|
|
10
12
|
*/
|
|
11
13
|
export interface Device {
|
|
12
14
|
/**
|
|
13
|
-
* The EtherCAT alias
|
|
15
|
+
* The EtherCAT alias of the device, if configured.
|
|
14
16
|
*/
|
|
15
17
|
alias?: number;
|
|
16
18
|
/**
|
|
17
|
-
* The
|
|
18
|
-
*
|
|
19
|
-
*
|
|
19
|
+
* The device address assigned by the EtherCAT master.
|
|
20
|
+
*
|
|
21
|
+
* Used when sending commands to Motion Master. Since the address changes after each
|
|
22
|
+
* power cycle, the client library uses {@link DeviceRef} as a stable reference.
|
|
20
23
|
*/
|
|
21
24
|
deviceAddress: number;
|
|
22
25
|
/**
|
|
@@ -25,7 +28,7 @@ export interface Device {
|
|
|
25
28
|
*/
|
|
26
29
|
deviceProductId?: string;
|
|
27
30
|
/**
|
|
28
|
-
*
|
|
31
|
+
* Firmware ID used to identify and resolve the firmware package for the device.
|
|
29
32
|
*/
|
|
30
33
|
fwid?: string;
|
|
31
34
|
/**
|
|
@@ -33,75 +36,148 @@ export interface Device {
|
|
|
33
36
|
*/
|
|
34
37
|
hardwareDescription?: HardwareDescription;
|
|
35
38
|
/**
|
|
36
|
-
*
|
|
37
|
-
* The device serial number is a strong candidate for this identifier.
|
|
39
|
+
* Unique identifier of the device, typically its serial number.
|
|
38
40
|
*/
|
|
39
41
|
id: string;
|
|
40
42
|
/**
|
|
41
|
-
* Identifier
|
|
42
|
-
* Retrieved from the assembly or device entries
|
|
43
|
+
* Identifier of the image associated with this device.
|
|
44
|
+
* Retrieved from the assembly or device entries of the hardware description file.
|
|
43
45
|
*/
|
|
44
46
|
imageId?: string;
|
|
45
47
|
/**
|
|
46
|
-
* Parsed `.variant` file
|
|
48
|
+
* Parsed `.variant` file describing variant-specific information.
|
|
47
49
|
*/
|
|
48
50
|
integroVariant?: IntegroVariant;
|
|
49
51
|
/**
|
|
50
|
-
* Device position in the
|
|
51
|
-
*
|
|
52
|
-
*
|
|
52
|
+
* Device position in the EtherCAT topology.
|
|
53
|
+
*
|
|
54
|
+
* - SOEM: positions start at 1 (0 is broadcast)
|
|
55
|
+
* - IgH EtherCAT Master: positions start at 0
|
|
53
56
|
*/
|
|
54
57
|
position?: number;
|
|
55
58
|
/**
|
|
56
|
-
*
|
|
59
|
+
* Product ID of the device or its assembly.
|
|
57
60
|
* Example: `6000`
|
|
58
61
|
*/
|
|
59
62
|
productId?: string;
|
|
60
63
|
/**
|
|
61
|
-
*
|
|
64
|
+
* Serial number read from the hardware description file.
|
|
62
65
|
*/
|
|
63
66
|
serialNumber?: string;
|
|
64
67
|
/**
|
|
65
|
-
* Parsed `.stack_info.json` file
|
|
68
|
+
* Parsed `.stack_info.json` file with stack-related metadata.
|
|
66
69
|
*/
|
|
67
70
|
stackInfo?: StackInfo;
|
|
68
71
|
/**
|
|
69
|
-
*
|
|
72
|
+
* Device type:
|
|
70
73
|
* - `0`: UNSPECIFIED
|
|
71
74
|
* - `1`: SOMANET_CIA401_ETHERCAT
|
|
72
75
|
* - `2`: SOMANET_CIA402_ETHERCAT
|
|
73
76
|
*/
|
|
74
77
|
type?: number;
|
|
75
78
|
/**
|
|
76
|
-
*
|
|
79
|
+
* UI configuration for device-specific features.
|
|
77
80
|
*/
|
|
78
81
|
uiFeaturesConfig?: UIFeaturesConfig;
|
|
79
82
|
/**
|
|
80
|
-
*
|
|
83
|
+
* Product ID and revision combined.
|
|
81
84
|
* Example: `8506-01`
|
|
82
85
|
*/
|
|
83
86
|
versionedDeviceProductId?: string;
|
|
84
87
|
/**
|
|
85
|
-
*
|
|
88
|
+
* Product or assembly ID and revision combined.
|
|
86
89
|
* Example: `6000-01`
|
|
87
90
|
*/
|
|
88
91
|
versionedProductId?: string;
|
|
89
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Returns the first defined value from a {@link DeviceRefObj}.
|
|
95
|
+
*/
|
|
90
96
|
export declare function getDeviceRefFromDeviceRefObj(deviceRefObj: DeviceRefObj): string | number | null;
|
|
97
|
+
/**
|
|
98
|
+
* Ensures that a {@link DeviceRef} is numeric if possible.
|
|
99
|
+
*
|
|
100
|
+
* If the value is numeric-like, it is converted to a number; otherwise the original string is returned.
|
|
101
|
+
*/
|
|
91
102
|
export declare function ensureDeviceRef(deviceRef: DeviceRef): DeviceRef;
|
|
103
|
+
/**
|
|
104
|
+
* Converts a {@link DeviceRef} into a structured {@link DeviceRefObj}.
|
|
105
|
+
*
|
|
106
|
+
* - Numbers ≤ `0xffff` are treated as device positions.
|
|
107
|
+
* - Larger numbers are treated as device addresses.
|
|
108
|
+
* - Strings are treated as serial numbers.
|
|
109
|
+
*/
|
|
92
110
|
export declare function makeDeviceRefObj(deviceRef: DeviceRef): DeviceRefObj;
|
|
111
|
+
/**
|
|
112
|
+
* Type guard verifying that a value is a valid {@link DeviceRef}.
|
|
113
|
+
*/
|
|
93
114
|
export declare function isDeviceRef(deviceRef: any): deviceRef is DeviceRef;
|
|
115
|
+
/**
|
|
116
|
+
* Validates the structure of a {@link DeviceRefObj}.
|
|
117
|
+
*/
|
|
94
118
|
export declare function isValidDeviceRefObj(obj: DeviceRefObj): boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Parses a single device log line.
|
|
121
|
+
*
|
|
122
|
+
* Expected format:
|
|
123
|
+
* `HH:MM:SS.mmm LEVEL|MESSAGE`
|
|
124
|
+
*/
|
|
95
125
|
export declare function parseDeviceLog(line: string): DeviceLogLine | undefined;
|
|
126
|
+
/**
|
|
127
|
+
* Parses multi-line log content into an array of {@link DeviceLogLine}.
|
|
128
|
+
*/
|
|
96
129
|
export declare function parseDeviceLogContent(content: string): DeviceLogLine[];
|
|
130
|
+
/**
|
|
131
|
+
* Computes the "zero home offset" given a home offset and the current device position.
|
|
132
|
+
*/
|
|
97
133
|
export declare function computeZeroHomeOffsetFromPosition(homeOffset: number, position: number): number;
|
|
98
134
|
/**
|
|
99
|
-
*
|
|
135
|
+
* Name of the FoE file used to unlock protected filesystem operations.
|
|
136
|
+
*
|
|
137
|
+
* Sending a FoE read command with this filename allows writing or deleting
|
|
138
|
+
* protected files (i.e., files whose names start with a dot).
|
|
100
139
|
*/
|
|
101
140
|
export declare const stackUnlockFilename = "fs-stackunlock=DD1317";
|
|
102
141
|
/**
|
|
103
|
-
* Base64-encoded empty firmware
|
|
142
|
+
* Base64-encoded empty firmware image used during Factory Reset
|
|
143
|
+
* to remove the currently installed firmware.
|
|
104
144
|
*/
|
|
105
145
|
export declare const emptyAppBase64 = "UEsDBBQACAAIABBye08AAAAAAAAAAAAAAAANACAAYXBwX2VtcHR5LmJpblVUDQAHMHfeXTB33l0wd95ddXgLAAEE6AMAAAToAwAAAwBQSwcIAAAAAAIAAAAAAAAAUEsBAhQDFAAIAAgAEHJ7TwAAAAACAAAAAAAAAA0AIAAAAAAAAAAAAKSBAAAAAGFwcF9lbXB0eS5iaW5VVA0ABzB33l0wd95dMHfeXXV4CwABBOgDAAAE6AMAAFBLBQYAAAAAAQABAFsAAABdAAAAAAA=";
|
|
146
|
+
/**
|
|
147
|
+
* Returns `true` if the filename represents a multi-part ZIP file.
|
|
148
|
+
*/
|
|
106
149
|
export declare function isFilenamePart(filename: string): boolean;
|
|
150
|
+
/**
|
|
151
|
+
* Default set of files preserved during Factory Reset.
|
|
152
|
+
*/
|
|
107
153
|
export declare const factoryResetDefaultFilesToKeep: string[];
|
|
154
|
+
/**
|
|
155
|
+
* Computes the effective mechanical gear ratio between motor revolutions and
|
|
156
|
+
* shaft revolutions. The returned value represents:
|
|
157
|
+
*
|
|
158
|
+
* gearRatio = motorRevolutions / shaftRevolutions
|
|
159
|
+
*
|
|
160
|
+
* Special handling is applied when both the torque controller and the position
|
|
161
|
+
* controller use the same encoder source. In that case, there is no physical
|
|
162
|
+
* external gearing, meaning both controllers observe identical positions, so
|
|
163
|
+
* the gear ratio is considered to be 1.
|
|
164
|
+
*
|
|
165
|
+
* If shaft revolutions equals 0 (invalid or unavailable data), a default gear
|
|
166
|
+
* ratio of 1 is returned as a safe fallback.
|
|
167
|
+
*
|
|
168
|
+
* @param props Object containing:
|
|
169
|
+
* - `motorRevolutions` Number of motor-side revolutions defined in device parameters.
|
|
170
|
+
* - `shaftRevolutions` Number of shaft-side revolutions defined in device parameters.
|
|
171
|
+
* - `torqueControllerEncoderSource` Encoder source used by the torque controller. A value of 0 means no assigned encoder.
|
|
172
|
+
* - `positionControllerEncoderSource` Encoder source used by the position controller. A value of 0 means no assigned encoder.
|
|
173
|
+
*
|
|
174
|
+
* @returns The computed gear ratio. Produces:
|
|
175
|
+
* - `1` if both controllers use the same encoder source, or if shaftRevolutions is `0`.
|
|
176
|
+
* - `(motorRevolutions / shaftRevolutions)` otherwise.
|
|
177
|
+
*/
|
|
178
|
+
export declare function computeGearRatio(props: {
|
|
179
|
+
motorRevolutions: number;
|
|
180
|
+
shaftRevolutions: number;
|
|
181
|
+
torqueControllerEncoderSource: number;
|
|
182
|
+
positionControllerEncoderSource: number;
|
|
183
|
+
}): number;
|
package/src/lib/device.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.factoryResetDefaultFilesToKeep = exports.isFilenamePart = exports.emptyAppBase64 = exports.stackUnlockFilename = exports.computeZeroHomeOffsetFromPosition = exports.parseDeviceLogContent = exports.parseDeviceLog = exports.isValidDeviceRefObj = exports.isDeviceRef = exports.makeDeviceRefObj = exports.ensureDeviceRef = exports.getDeviceRefFromDeviceRefObj = exports.filenamePartRegExp = void 0;
|
|
3
|
+
exports.computeGearRatio = exports.factoryResetDefaultFilesToKeep = exports.isFilenamePart = exports.emptyAppBase64 = exports.stackUnlockFilename = exports.computeZeroHomeOffsetFromPosition = exports.parseDeviceLogContent = exports.parseDeviceLog = exports.isValidDeviceRefObj = exports.isDeviceRef = exports.makeDeviceRefObj = exports.ensureDeviceRef = exports.getDeviceRefFromDeviceRefObj = exports.filenamePartRegExp = void 0;
|
|
4
4
|
exports.filenamePartRegExp = /^(.*?)(?:\.zip(?:\.part\d+)?)$/;
|
|
5
|
+
/**
|
|
6
|
+
* Returns the first defined value from a {@link DeviceRefObj}.
|
|
7
|
+
*/
|
|
5
8
|
function getDeviceRefFromDeviceRefObj(deviceRefObj) {
|
|
6
9
|
for (const [_, value] of Object.entries(deviceRefObj)) {
|
|
7
10
|
if (value !== undefined) {
|
|
@@ -11,11 +14,23 @@ function getDeviceRefFromDeviceRefObj(deviceRefObj) {
|
|
|
11
14
|
return null;
|
|
12
15
|
}
|
|
13
16
|
exports.getDeviceRefFromDeviceRefObj = getDeviceRefFromDeviceRefObj;
|
|
17
|
+
/**
|
|
18
|
+
* Ensures that a {@link DeviceRef} is numeric if possible.
|
|
19
|
+
*
|
|
20
|
+
* If the value is numeric-like, it is converted to a number; otherwise the original string is returned.
|
|
21
|
+
*/
|
|
14
22
|
function ensureDeviceRef(deviceRef) {
|
|
15
23
|
const n = Number(deviceRef);
|
|
16
24
|
return isNaN(n) ? deviceRef : n;
|
|
17
25
|
}
|
|
18
26
|
exports.ensureDeviceRef = ensureDeviceRef;
|
|
27
|
+
/**
|
|
28
|
+
* Converts a {@link DeviceRef} into a structured {@link DeviceRefObj}.
|
|
29
|
+
*
|
|
30
|
+
* - Numbers ≤ `0xffff` are treated as device positions.
|
|
31
|
+
* - Larger numbers are treated as device addresses.
|
|
32
|
+
* - Strings are treated as serial numbers.
|
|
33
|
+
*/
|
|
19
34
|
function makeDeviceRefObj(deviceRef) {
|
|
20
35
|
deviceRef = ensureDeviceRef(deviceRef);
|
|
21
36
|
if (typeof deviceRef === 'number') {
|
|
@@ -31,18 +46,30 @@ function makeDeviceRefObj(deviceRef) {
|
|
|
31
46
|
}
|
|
32
47
|
}
|
|
33
48
|
exports.makeDeviceRefObj = makeDeviceRefObj;
|
|
49
|
+
/**
|
|
50
|
+
* Type guard verifying that a value is a valid {@link DeviceRef}.
|
|
51
|
+
*/
|
|
34
52
|
function isDeviceRef(deviceRef) {
|
|
35
53
|
return (deviceRef !== undefined &&
|
|
36
54
|
deviceRef !== null &&
|
|
37
55
|
(typeof deviceRef === 'string' || (typeof deviceRef === 'number' && deviceRef >= 0)));
|
|
38
56
|
}
|
|
39
57
|
exports.isDeviceRef = isDeviceRef;
|
|
58
|
+
/**
|
|
59
|
+
* Validates the structure of a {@link DeviceRefObj}.
|
|
60
|
+
*/
|
|
40
61
|
function isValidDeviceRefObj(obj) {
|
|
41
62
|
return (Number.isFinite(Number(obj.deviceAddress)) ||
|
|
42
63
|
(typeof obj.devicePosition === 'number' && obj.devicePosition >= 0) ||
|
|
43
64
|
typeof obj.deviceSerialNumber === 'string');
|
|
44
65
|
}
|
|
45
66
|
exports.isValidDeviceRefObj = isValidDeviceRefObj;
|
|
67
|
+
/**
|
|
68
|
+
* Parses a single device log line.
|
|
69
|
+
*
|
|
70
|
+
* Expected format:
|
|
71
|
+
* `HH:MM:SS.mmm LEVEL|MESSAGE`
|
|
72
|
+
*/
|
|
46
73
|
function parseDeviceLog(line) {
|
|
47
74
|
const re = /^(\d{2}:\d{2}:\d{2}\.\d+)\s(.*)\|(.*)$/gm;
|
|
48
75
|
const result = re.exec(line);
|
|
@@ -56,6 +83,9 @@ function parseDeviceLog(line) {
|
|
|
56
83
|
return;
|
|
57
84
|
}
|
|
58
85
|
exports.parseDeviceLog = parseDeviceLog;
|
|
86
|
+
/**
|
|
87
|
+
* Parses multi-line log content into an array of {@link DeviceLogLine}.
|
|
88
|
+
*/
|
|
59
89
|
function parseDeviceLogContent(content) {
|
|
60
90
|
return content
|
|
61
91
|
.split('\n')
|
|
@@ -63,22 +93,35 @@ function parseDeviceLogContent(content) {
|
|
|
63
93
|
.filter((l) => l !== undefined);
|
|
64
94
|
}
|
|
65
95
|
exports.parseDeviceLogContent = parseDeviceLogContent;
|
|
96
|
+
/**
|
|
97
|
+
* Computes the "zero home offset" given a home offset and the current device position.
|
|
98
|
+
*/
|
|
66
99
|
function computeZeroHomeOffsetFromPosition(homeOffset, position) {
|
|
67
100
|
return homeOffset - position;
|
|
68
101
|
}
|
|
69
102
|
exports.computeZeroHomeOffsetFromPosition = computeZeroHomeOffsetFromPosition;
|
|
70
103
|
/**
|
|
71
|
-
*
|
|
104
|
+
* Name of the FoE file used to unlock protected filesystem operations.
|
|
105
|
+
*
|
|
106
|
+
* Sending a FoE read command with this filename allows writing or deleting
|
|
107
|
+
* protected files (i.e., files whose names start with a dot).
|
|
72
108
|
*/
|
|
73
109
|
exports.stackUnlockFilename = 'fs-stackunlock=DD1317';
|
|
74
110
|
/**
|
|
75
|
-
* Base64-encoded empty firmware
|
|
111
|
+
* Base64-encoded empty firmware image used during Factory Reset
|
|
112
|
+
* to remove the currently installed firmware.
|
|
76
113
|
*/
|
|
77
114
|
exports.emptyAppBase64 = 'UEsDBBQACAAIABBye08AAAAAAAAAAAAAAAANACAAYXBwX2VtcHR5LmJpblVUDQAHMHfeXTB33l0wd95ddXgLAAEE6AMAAAToAwAAAwBQSwcIAAAAAAIAAAAAAAAAUEsBAhQDFAAIAAgAEHJ7TwAAAAACAAAAAAAAAA0AIAAAAAAAAAAAAKSBAAAAAGFwcF9lbXB0eS5iaW5VVA0ABzB33l0wd95dMHfeXXV4CwABBOgDAAAE6AMAAFBLBQYAAAAAAQABAFsAAABdAAAAAAA=';
|
|
115
|
+
/**
|
|
116
|
+
* Returns `true` if the filename represents a multi-part ZIP file.
|
|
117
|
+
*/
|
|
78
118
|
function isFilenamePart(filename) {
|
|
79
119
|
return exports.filenamePartRegExp.test(filename);
|
|
80
120
|
}
|
|
81
121
|
exports.isFilenamePart = isFilenamePart;
|
|
122
|
+
/**
|
|
123
|
+
* Default set of files preserved during Factory Reset.
|
|
124
|
+
*/
|
|
82
125
|
exports.factoryResetDefaultFilesToKeep = [
|
|
83
126
|
'.assembly_config',
|
|
84
127
|
'.factory_config',
|
|
@@ -86,4 +129,47 @@ exports.factoryResetDefaultFilesToKeep = [
|
|
|
86
129
|
'.variant',
|
|
87
130
|
'stack_info.json',
|
|
88
131
|
];
|
|
132
|
+
/**
|
|
133
|
+
* Computes the effective mechanical gear ratio between motor revolutions and
|
|
134
|
+
* shaft revolutions. The returned value represents:
|
|
135
|
+
*
|
|
136
|
+
* gearRatio = motorRevolutions / shaftRevolutions
|
|
137
|
+
*
|
|
138
|
+
* Special handling is applied when both the torque controller and the position
|
|
139
|
+
* controller use the same encoder source. In that case, there is no physical
|
|
140
|
+
* external gearing, meaning both controllers observe identical positions, so
|
|
141
|
+
* the gear ratio is considered to be 1.
|
|
142
|
+
*
|
|
143
|
+
* If shaft revolutions equals 0 (invalid or unavailable data), a default gear
|
|
144
|
+
* ratio of 1 is returned as a safe fallback.
|
|
145
|
+
*
|
|
146
|
+
* @param props Object containing:
|
|
147
|
+
* - `motorRevolutions` Number of motor-side revolutions defined in device parameters.
|
|
148
|
+
* - `shaftRevolutions` Number of shaft-side revolutions defined in device parameters.
|
|
149
|
+
* - `torqueControllerEncoderSource` Encoder source used by the torque controller. A value of 0 means no assigned encoder.
|
|
150
|
+
* - `positionControllerEncoderSource` Encoder source used by the position controller. A value of 0 means no assigned encoder.
|
|
151
|
+
*
|
|
152
|
+
* @returns The computed gear ratio. Produces:
|
|
153
|
+
* - `1` if both controllers use the same encoder source, or if shaftRevolutions is `0`.
|
|
154
|
+
* - `(motorRevolutions / shaftRevolutions)` otherwise.
|
|
155
|
+
*/
|
|
156
|
+
function computeGearRatio(props) {
|
|
157
|
+
const { motorRevolutions, shaftRevolutions, torqueControllerEncoderSource, positionControllerEncoderSource } = props;
|
|
158
|
+
// Encoder source is considered assigned when value is non-zero.
|
|
159
|
+
// If both controllers reference the same encoder configuration,
|
|
160
|
+
// there is effectively no external gearing observed.
|
|
161
|
+
const bothControllersUseSameEncoderConfiguration = torqueControllerEncoderSource !== 0 && torqueControllerEncoderSource === positionControllerEncoderSource;
|
|
162
|
+
if (bothControllersUseSameEncoderConfiguration) {
|
|
163
|
+
// Both controllers read the same encoder signals, therefore no mechanical ratio exists.
|
|
164
|
+
return 1;
|
|
165
|
+
}
|
|
166
|
+
// If shaftRevolutions is valid, compute actual ratio.
|
|
167
|
+
if (shaftRevolutions !== 0) {
|
|
168
|
+
return motorRevolutions / shaftRevolutions;
|
|
169
|
+
}
|
|
170
|
+
// Fallback: Cannot compute ratio due to invalid denominator.
|
|
171
|
+
// Safe assumption is to return unity.
|
|
172
|
+
return 1;
|
|
173
|
+
}
|
|
174
|
+
exports.computeGearRatio = computeGearRatio;
|
|
89
175
|
//# sourceMappingURL=device.js.map
|
package/src/lib/device.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/device.ts"],"names":[],"mappings":";;;AAMa,QAAA,kBAAkB,GAAG,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/device.ts"],"names":[],"mappings":"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"}
|
|
@@ -99,7 +99,7 @@ class LimitedRangeSystemIdentification {
|
|
|
99
99
|
this.notifications$.next(`Warning: startProcedure is currently ${this.options.startProcedure}, but WAIT_FOR_HRD_STREAMING_TO_START (2) is required. Setting the correct start procedure automatically.`);
|
|
100
100
|
this.options.startProcedure = os_command_1.SystemIdentificationOsCommandStartProcedure.WAIT_FOR_HRD_STREAMING_TO_START;
|
|
101
101
|
}
|
|
102
|
-
const gearRatio = yield this.client.request.
|
|
102
|
+
const gearRatio = yield (0, rxjs_1.lastValueFrom)(this.client.request.computeGearRatio(this.deviceRef, true));
|
|
103
103
|
const rangeLimitEff = this.options.rangeLimit * gearRatio;
|
|
104
104
|
this.notifications$.next(`Effective range limit (considering gear ratio ${gearRatio}): ${rangeLimitEff}`);
|
|
105
105
|
// Variables to hold original configurations for restoration later
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limited-range-system-identification.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/limited-range-system-identification.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"limited-range-system-identification.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/limited-range-system-identification.ts"],"names":[],"mappings":";;;;AAAA,+BAAgG;AAEhG,6CAIsB;AAEtB,qCAAyE;AACzE,iCAAsC;AACtC,qCAA4C;AAE5C;;;;;GAKG;AACH,SAAS,GAAG,CAAC,KAAc;IACzB,OAAO,KAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC;AAClD,CAAC;AA4BD;;;;;;;GAOG;AACH,MAAa,gCAAgC;IAiB3C;;;;;;OAMG;IACH,YACkB,MAA0B,EAC1B,SAAoB,EACpB,UAAmD;QACjE,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,yBAAgB,CAAC,yBAAyB;QAC5D,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,oDAAuC,CAAC,8BAA8B;QAClF,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,wDAA2C,CAAC,+BAA+B;QAC3F,eAAe,EAAE,GAAG;QACpB,eAAe,EAAE,MAAM;QACvB,cAAc,EAAE,IAAI;KACrB;QAbe,WAAM,GAAN,MAAM,CAAoB;QAC1B,cAAS,GAAT,SAAS,CAAW;QACpB,YAAO,GAAP,OAAO,CAWtB;QArCH;;;WAGG;QACa,mBAAc,GAAG,IAAI,cAAO,EAAU,CAAC;QAEvD;;WAEG;QACH,cAAS,GAAG,KAAK,CAAC;IA6Bf,CAAC;IAEJ;;;;;;;;;;;;;;OAcG;IACG,KAAK;;;YACT,gEAAgE;YAChE,MAAM,IAAA,mBAAY,EAAC,CAAC,CAAC,CAAC;YAEtB,iDAAiD;YACjD,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACpF,OAAO;aACR;YAED,gCAAgC;YAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,0DAA0D;YAC1D,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;gBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,kCAAkC,IAAI,CAAC,OAAO,CAAC,oBAAoB,wCAAwC,IAAI,CAAC,OAAO,CAAC,cAAc,4EAA4E,CACnN,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,kBAAkB;aAC3F;YAED,gDAAgD;YAChD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,KAAK,yBAAgB,CAAC,yBAAyB,EAAE;gBAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,uCAAuC,IAAI,CAAC,OAAO,CAAC,gBAAgB,+GAA+G,CACpL,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,yBAAgB,CAAC,yBAAyB,CAAC;aAC5E;YAED,6CAA6C;YAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,wDAA2C,CAAC,+BAA+B,EAAE;gBAC/G,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,wCAAwC,IAAI,CAAC,OAAO,CAAC,cAAc,2GAA2G,CAC/K,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,wDAA2C,CAAC,+BAA+B,CAAC;aAC3G;YAED,MAAM,SAAS,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;YAClG,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;YAC1D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iDAAiD,SAAS,MAAM,aAAa,EAAE,CAAC,CAAC;YAE1G,kEAAkE;YAClE,IAAI,MAA0B,CAAC;YAC/B,IAAI,MAA0B,CAAC;YAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CACrD;gBACE,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;gBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;gBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,wBAAwB;aACzD,EACD,IAAI,CAAC,gBAAgB;aACtB,CAAC;YACF,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,IAAI,0BAA8C,CAAC;YACnD,IAAI,GAAuB,CAAC;YAC5B,IAAI,GAAuB,CAAC;YAC5B,IAAI,GAAuB,CAAC;YAC5B,IAAI,aAAiC,CAAC;YACtC,IAAI,SAA6B,CAAC;YAClC,IAAI,SAA6B,CAAC;YAElC,IAAI;gBACF,mFAAmF;gBACnF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC3E,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAW,CAAC,kBAAkB,CAAC,CAAC;gBAClG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBAEhE,wDAAwD;gBACxD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACvD,MAAM,YAAY,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBAClG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;gBAEpE,uCAAuC;gBACvC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;gBACtE,0BAA0B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACpG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBAE/D,kGAAkG;gBAClG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;gBACjE,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAChF,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+CAA+C,MAAM,eAAe,MAAM,EAAE,CAAC,CAAC;gBAEvG,qEAAqE;gBACrE,kGAAkG;gBAClG,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,KAAK,MAAM,EAAE;oBACnC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;oBAChE,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;oBACnF,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;oBACnF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,SAAS,WAAW,SAAS,EAAE,CAAC,CAAC;oBAE7F,IAAI,SAAS,KAAK,CAAC,UAAU,IAAI,SAAS,KAAK,UAAU,EAAE;wBACzD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;wBACxF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBACtG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qDAAqD,MAAM,EAAE,CAAC,CAAC;wBAExF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;wBACrF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBACtG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kDAAkD,MAAM,EAAE,CAAC,CAAC;wBAErF,IAAI,SAAS,KAAK,CAAC,UAAU,EAAE;4BAC7B,IAAI,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;4BAC9E,IAAI,iBAAiB,GAAG,CAAC,UAAU,EAAE;gCACnC,iBAAiB,GAAG,CAAC,UAAU,CAAC;6BACjC;4BACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yCAAyC,SAAS,OAAO,iBAAiB,KAAK,CAAC,CAAC;4BAC1G,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;4BACpF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;yBAC9D;wBAED,IAAI,SAAS,KAAK,UAAU,EAAE;4BAC5B,IAAI,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;4BAC9E,IAAI,iBAAiB,GAAG,UAAU,EAAE;gCAClC,iBAAiB,GAAG,UAAU,CAAC;6BAChC;4BACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yCAAyC,SAAS,OAAO,iBAAiB,KAAK,CAAC,CAAC;4BAC1G,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;4BACpF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;yBAC9D;qBACF;iBACF;gBAED,uEAAuE;gBACvE,IAAI,MAAM,KAAK,MAAM,EAAE;oBACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;oBACtG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACzE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;iBAC/D;gBAED,qEAAqE;gBACrE,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;gBACvD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,uCAAuC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBAC3F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;gBACnG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC;gBAE9D,mFAAmF;gBACnF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBAC9F,4DAA4D;gBAC5D,MAAM,KAAK,GAAG,YAAY,KAAK,UAAU,IAAI,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvG,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;gBACrE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6BAA6B,aAAa,SAAS,aAAa,EAAE,CAAC,CAAC;gBAE7F,yCAAyC;gBACzC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBACzD,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;oBACrE,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;oBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;oBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;oBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;iBAC/B,CAAC,CAAqC,CAAC;gBACxC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,4BAA4B,GAAG,QAAQ,GAAG,QAAQ,GAAG,kBAAkB,aAAa,EAAE,CAAC,CAAC;gBAEjH,mDAAmD;gBACnD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACnE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACzF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,SAAS,EAAE,CAAC,CAAC;gBAEzE,gFAAgF;gBAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBAC7E,IAAI,MAAc,CAAC;gBACnB,IAAI,SAAiB,CAAC;gBACtB,IAAI,YAAY,KAAK,UAAU,EAAE;oBAC/B,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,GAAG,aAAa,CAAC;oBACjG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;iBACjD;qBAAM;oBACL,SAAS;wBACP,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,YAAY,CAAC;4BACvG,UAAU,CAAC;oBACb,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,YAAY,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;iBAC/E;gBACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qBAAqB,MAAM,iBAAiB,SAAS,EAAE,CAAC,CAAC;gBAElF,8DAA8D;gBAC9D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBAC1D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;oBACrC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC;oBACnC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;iBAC/B,CAAC,CAAC;gBACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBAEpD,6DAA6D;gBAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACnE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBAEhE,6DAA6D;gBAC7D,IAAI,QAAQ,GAAG,KAAK,CAAC;gBAErB,0CAA0C;gBAC1C,IAAI,MAAM,GAAG,CAAC,CAAC;gBAEf,6DAA6D;gBAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACtF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,MAAM,EAAE,CAAC,CAAC;gBAE1D,oGAAoG;gBACpG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;gBAChG,cAAc;qBACX,KAAK,EAAE;qBACP,IAAI;gBACH,oEAAoE;gBACpE,IAAA,gBAAS,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC;gBAC5C,+FAA+F;gBAC/F,8DAA8D;gBAC9D,IAAA,iBAAU,EAAC,CAAC,MAAM,EAAE,EAAE;oBACpB,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAW,CAAC;oBACvC,MAAM,WAAW,GAAG,IAAA,uBAAc,EAAC,UAAU,CAAC,CAAC;oBAE/C,IAAI,WAAW,KAAK,oBAAW,CAAC,iBAAiB,EAAE;wBACjD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,CAAW,CAAC;wBAChD,MAAM,CAAC,GAAG,MAAM,GAAG,mBAAmB,CAAC;wBACvC,IAAI,EAAU,CAAC;wBAEf,IAAI,YAAY,KAAK,UAAU,EAAE;4BAC/B,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;yBACxE;6BAAM;4BACL,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;yBACtG;wBAED,yDAAyD;wBACzD,IAAI,EAAE,KAAK,MAAM,EAAE;4BACjB,MAAM,GAAG,EAAE,CAAC;4BACZ,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;yBAC7E;qBACF;yBAAM,IACL,IAAA,uBAAc,EAAC,UAAU,CAAC,KAAK,oBAAW,CAAC,qBAAqB;wBAChE,IAAA,uBAAc,EAAC,UAAU,CAAC,KAAK,oBAAW,CAAC,KAAK,EAChD;wBACA,QAAQ,GAAG,IAAI,CAAC;qBACjB;oBAED,OAAO,YAAK,CAAC;gBACf,CAAC,CAAC,CACH;qBACA,SAAS,CAAC;oBACT,QAAQ,EAAE,GAAG,EAAE;wBACb,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;oBAC5E,CAAC;iBACF,CAAC,CAAC;gBACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAErD,yFAAyF;gBACzF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC3E,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACnG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;gBACtF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,mBAAmB,GAAG,CAAC,CAAC;gBAE3E,qCAAqC;gBACrC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACxD,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;gBACtF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBAE9D,IAAI,QAAQ,EAAE;oBACZ,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;iBAC9E;gBAED,uBAAuB;gBACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACxD,cAAc,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAA,IAAI,CAAC,0BAA0B,0CAAE,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAErD,8GAA8G;gBAC9G,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;gBAChH,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtD,MAAM,KAAK,mCACN,YAAY,KACf,eAAe,EAAE,IAAI,EACrB,YAAY,EAAE,IAAI,EAClB,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,EACnD,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,GAAG,IAAI,EACjD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,EAClD,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,GAC9C,CAAC;gBACF,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;gBACjF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;aAC9D;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACrF,MAAM,KAAK,CAAC;aACb;oBAAS;gBACR,oCAAoC;gBACpC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBAEvB,uBAAuB;gBACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACxD,cAAc,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAA,IAAI,CAAC,0BAA0B,0CAAE,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAErD,sEAAsE;gBACtE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC3E,IAAI;oBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAW,CAAC,kBAAkB,CAAC,CAAC;oBAClG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;iBACjE;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,iDAAiD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC5F,CAAC;iBACH;gBAED,2DAA2D;gBAC3D,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,MAAM,EAAE;oBACrE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,4CAA4C,MAAM,KAAK,CAAC,CAAC;oBAClF,IAAI;wBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;wBACzE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;qBAC7D;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;qBACpG;iBACF;gBAED,wDAAwD;gBACxD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE;oBACtD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;oBAClE,IAAI;wBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;4BACrC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;4BACzC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;yBAC1C,CAAC,CAAC;wBACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;qBACvD;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sCAAsC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;qBAC5G;iBACF;gBAED,yDAAyD;gBACzD,IAAI,0BAA0B,KAAK,SAAS,IAAI,0BAA0B,KAAK,CAAC,EAAE;oBAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;oBACtE,IAAI;wBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,CAAC,CAAC;wBAC7F,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;qBAChE;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,+CAA+C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC1F,CAAC;qBACH;iBACF;gBAED,iDAAiD;gBACjD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,EAAE;oBAC9F,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;oBAC7D,IAAI;wBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;4BACrC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC;4BACnC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC;4BACnC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC;4BACnC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC;yBAC9C,CAAC,CAAC;wBACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;qBAC3D;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;qBACvG;iBACF;gBAED,sEAAsE;gBACtE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACnE,IAAI;oBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;iBACjE;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,gDAAgD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC3F,CAAC;iBACH;aACF;;KACF;CACF;AA1aD,4EA0aC"}
|
|
@@ -1270,17 +1270,31 @@ export declare class MotionMasterReqResClient {
|
|
|
1270
1270
|
*/
|
|
1271
1271
|
computeFeedConstant(deviceRef: DeviceRef, requestTimeout?: number): Observable<number>;
|
|
1272
1272
|
/**
|
|
1273
|
-
* Computes the Gear Ratio for
|
|
1273
|
+
* Computes the mechanical Gear Ratio for the specified device.
|
|
1274
1274
|
*
|
|
1275
|
-
* The Gear Ratio is
|
|
1276
|
-
* -
|
|
1277
|
-
* -
|
|
1275
|
+
* The Gear Ratio is derived from device parameters representing:
|
|
1276
|
+
* - Motor-side revolutions (`0x6091:01`)
|
|
1277
|
+
* - Shaft-side revolutions (`0x6091:02`)
|
|
1278
1278
|
*
|
|
1279
|
-
*
|
|
1280
|
-
*
|
|
1281
|
-
*
|
|
1279
|
+
* Additionally, encoder assignments for the torque and position control loops
|
|
1280
|
+
* are retrieved to determine whether an external mechanical ratio is present.
|
|
1281
|
+
*
|
|
1282
|
+
* If both control loops use the same encoder source (non-zero and equal),
|
|
1283
|
+
* the returned ratio is `1`, indicating no external mechanical reduction.
|
|
1284
|
+
*
|
|
1285
|
+
* Otherwise, the ratio is computed as:
|
|
1286
|
+
*
|
|
1287
|
+
* motorRevolutions / shaftRevolutions
|
|
1288
|
+
*
|
|
1289
|
+
* If shaftRevolutions is `0` or unavailable, a fallback value of `1` is returned.
|
|
1290
|
+
*
|
|
1291
|
+
* @param deviceRef Reference to the device whose Gear Ratio is computed.
|
|
1292
|
+
* @param loadFromCache If true, previously cached parameter values will be used instead of initiating device requests.
|
|
1293
|
+
* @param requestTimeout Timeout (in milliseconds) applied when reading parameter values from the device. Defaults to `5000`.
|
|
1294
|
+
*
|
|
1295
|
+
* @returns An Observable emitting a numeric Gear Ratio.
|
|
1282
1296
|
*/
|
|
1283
|
-
computeGearRatio(deviceRef: DeviceRef, requestTimeout?: number): Observable<number>;
|
|
1297
|
+
computeGearRatio(deviceRef: DeviceRef, loadFromCache?: boolean, requestTimeout?: number): Observable<number>;
|
|
1284
1298
|
/**
|
|
1285
1299
|
* Save the modified parameter values to the config.csv file so that they are used the next time the device is power cycled.
|
|
1286
1300
|
* The configuration is saved using the 0x1010: Store parameters object.
|
|
@@ -1938,8 +1952,6 @@ export declare class MotionMasterReqResClient {
|
|
|
1938
1952
|
* and lists the supported pin modes. If all pin modes for a pin are disabled, the array defaults to `[0]`.
|
|
1939
1953
|
*/
|
|
1940
1954
|
getSupportedDios(deviceRef: DeviceRef): Observable<number[][]>;
|
|
1941
|
-
getMaxValuePercentageColor(percentage: number): "" | "#6ba853" | "#aeb303" | "#e69138" | "#fb262e";
|
|
1942
|
-
getMaxValuePercentageLabel(percentage: number): "" | "Calibration was successful. Encoder system is robust to mechanical displacements and temperature expansions." | "Calibration was successful. Encoder system is robust to small mechanical displacements and temperature expansions." | "Calibration was successful. Mechanical displacement and temperature expansions should be avoided." | "Phase error is too high. The absolute position can't be computed reliably. Adjust mechanical position and repeat calibration.";
|
|
1943
1955
|
/**
|
|
1944
1956
|
* Checks the Circulo encoder error status registers for a specified encoder ordinal.
|
|
1945
1957
|
*
|
|
@@ -2119,24 +2131,6 @@ export declare class MotionMasterReqResClient {
|
|
|
2119
2131
|
* will also be executed.
|
|
2120
2132
|
*/
|
|
2121
2133
|
runChirpSignal(deviceRef: DeviceRef, options: ChirpSignalOptions): Observable<number[][]>;
|
|
2122
|
-
/**
|
|
2123
|
-
* Reads the motor and shaft revolutions from a device and calculates the gear ratio.
|
|
2124
|
-
*
|
|
2125
|
-
* The gear ratio is defined as the number of motor revolutions per one shaft revolution:
|
|
2126
|
-
*
|
|
2127
|
-
* gearRatio = motorRev / shaftRev
|
|
2128
|
-
*
|
|
2129
|
-
* If either motorRev or shaftRev is zero or negative, the function returns a default value of 1.
|
|
2130
|
-
*
|
|
2131
|
-
* @param deviceRef - Reference to the device from which to read the values.
|
|
2132
|
-
* @returns A Promise that resolves to the gear ratio (positive number). Returns 1 if the readings are invalid.
|
|
2133
|
-
*
|
|
2134
|
-
* @remarks
|
|
2135
|
-
* - Both motorRev and shaftRev are read via `upload()` from the device object dictionary at index 0x6091.
|
|
2136
|
-
* - Ensure that `upload()` returns numeric values and not raw buffers.
|
|
2137
|
-
* - This function assumes positive values; a negative value may indicate an error or reversed rotation.
|
|
2138
|
-
*/
|
|
2139
|
-
getGearRatio(deviceRef: DeviceRef): Promise<number>;
|
|
2140
2134
|
/**
|
|
2141
2135
|
* Retrieves the PDO mapping for the given device.
|
|
2142
2136
|
*
|