motion-master-client 0.0.236 → 0.0.237

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "motion-master-client",
3
- "version": "0.0.236",
3
+ "version": "0.0.237",
4
4
  "type": "commonjs",
5
5
  "description": "A library and CLI program used for communicating with Motion Master.",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
- import { Subject } from "rxjs";
2
- import { MotionMasterClient } from "./motion-master-client";
3
- import { DeviceRef, VelocityProfileConfig } from "./types";
1
+ import { Subject } from 'rxjs';
2
+ import { MotionMasterClient } from './motion-master-client';
3
+ import { DeviceRef, VelocityProfileConfig } from './types';
4
4
  export declare function parseIntegroEncoderFirmwareVersion(value: number): {
5
5
  value: number;
6
6
  major: string;
@@ -99,7 +99,7 @@ class IntegroEncoderCalibration {
99
99
  yield this.client.request.transitionToCia402State(this.deviceRef, cia402_1.Cia402State.OPERATION_ENABLED);
100
100
  try {
101
101
  yield this.client.whenTargetReached(this.deviceRef, 500, 5000);
102
- yield this.notifyParameterValue(0x606C, 0); // Velocity actual value
102
+ yield this.notifyParameterValue(0x606c, 0); // Velocity actual value
103
103
  // Trigger the POA automatic calibration with an OS command.
104
104
  this.notifications$.next('Triggering automatic calibration of the POA by setting register 0x25 to 0x09.');
105
105
  yield this.writeEncoderRegisterValueAndValidateResponse(0x25, 0x09);
@@ -113,7 +113,7 @@ class IntegroEncoderCalibration {
113
113
  }
114
114
  this.notifications$.next('Polling the encoder register 0x24 until its value equals 0x11 or until 8 seconds have passed.');
115
115
  // Read the value of the encoder register 0x24 until its value equals 0x11 or until 8 seconds have passed.
116
- osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x24, 1, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
116
+ osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x24, 1, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)((osCommandResponse) => {
117
117
  if (debug) {
118
118
  this.notifications$.next(`Value read from the encoder register 0x24 is ${hex(osCommandResponse.kublerRegisterValue)}.`);
119
119
  }
@@ -137,9 +137,9 @@ class IntegroEncoderCalibration {
137
137
  // Run the motor at constant speed in one direction.
138
138
  try {
139
139
  yield this.client.whenTargetReached(this.deviceRef, 500, 5000);
140
- yield this.notifyParameterValue(0x606C, 0); // Velocity actual value
140
+ yield this.notifyParameterValue(0x606c, 0); // Velocity actual value
141
141
  this.notifications$.next('Writing 0x00C2 to the encoder register 0x50.');
142
- yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00C2, 2);
142
+ yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00c2, 2);
143
143
  yield (0, util_1.resolveAfter)(500);
144
144
  }
145
145
  catch (_err) {
@@ -149,7 +149,7 @@ class IntegroEncoderCalibration {
149
149
  return;
150
150
  }
151
151
  // Read the value of the encoder register 0x52 until its value satisfies the following condition (bit 6 = 1) & (bit 8 = 0) or until 8 seconds have passed.
152
- osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
152
+ osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)((osCommandResponse) => {
153
153
  if (debug) {
154
154
  this.notifications$.next(`Value read from the encoder register 0x52 is ${hex(osCommandResponse.kublerRegisterValue)}.`);
155
155
  }
@@ -161,13 +161,13 @@ class IntegroEncoderCalibration {
161
161
  else if (osCommandResponse.request === 'succeeded') {
162
162
  this.notifications$.next(`The last value retrieved from register 0x52 is ${hex(osCommandResponse.kublerRegisterValue)}`);
163
163
  }
164
- yield this.client.request.download(this.deviceRef, 0x60FF, 0, 0);
164
+ yield this.client.request.download(this.deviceRef, 0x60ff, 0, 0);
165
165
  yield (0, util_1.resolveAfter)(200);
166
166
  this.notifications$.next('Reversing the rotation direction.');
167
167
  // Reverse the rotation direction.
168
168
  try {
169
169
  const [ec1, ec2] = yield this.notifyExtendedErrorStatusAndGetErrorCodes();
170
- if ((((ec1 >> 16) & 0xFF) === 0x0F) || (((ec2 >> 16) & 0xFF) === 0x0F)) {
170
+ if (((ec1 >> 16) & 0xff) === 0x0f || ((ec2 >> 16) & 0xff) === 0x0f) {
171
171
  this.notifications$.next('There was an error in recording the correction table. Please restart the procedure.');
172
172
  this.revertVelocityParameterValues();
173
173
  return;
@@ -181,10 +181,10 @@ class IntegroEncoderCalibration {
181
181
  velocityProfile = yield this.setVelocityProfile(this.cwVelocityProfile, 2);
182
182
  try {
183
183
  yield this.client.whenTargetReached(this.deviceRef, 500, 5000);
184
- yield this.notifyParameterValue(0x606C, 0); // Velocity actual value
184
+ yield this.notifyParameterValue(0x606c, 0); // Velocity actual value
185
185
  // Trigger the POA automatic calibration with an OS command.
186
186
  this.notifications$.next('Writing 0x00C2 to the encoder register 0x50.');
187
- yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00C2, 2);
187
+ yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00c2, 2);
188
188
  yield (0, util_1.resolveAfter)(500);
189
189
  }
190
190
  catch (_err) {
@@ -194,7 +194,7 @@ class IntegroEncoderCalibration {
194
194
  return;
195
195
  }
196
196
  // Read the value of the encoder register 0x52 until its value satisfies the following condition (bit 6 = 1) & (bit 8 = 0) or until 8 seconds have passed.
197
- osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
197
+ osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)((osCommandResponse) => {
198
198
  if (debug) {
199
199
  this.notifications$.next(`Value read from the encoder register 0x52 is ${hex(osCommandResponse.kublerRegisterValue)}.`);
200
200
  }
@@ -206,17 +206,17 @@ class IntegroEncoderCalibration {
206
206
  else if (osCommandResponse.request === 'succeeded') {
207
207
  this.notifications$.next(`The last value retrieved from register 0x52 is ${hex(osCommandResponse.kublerRegisterValue)}`);
208
208
  }
209
- yield this.client.request.download(this.deviceRef, 0x60FF, 0, 0);
209
+ yield this.client.request.download(this.deviceRef, 0x60ff, 0, 0);
210
210
  yield (0, util_1.resolveAfter)(200);
211
211
  try {
212
212
  const [ec1, ec2] = yield this.notifyExtendedErrorStatusAndGetErrorCodes();
213
- if ((((ec1 >> 16) & 0xFF) === 0x0F) || (((ec2 >> 16) & 0xFF) === 0x0F)) {
213
+ if (((ec1 >> 16) & 0xff) === 0x0f || ((ec2 >> 16) & 0xff) === 0x0f) {
214
214
  this.notifications$.next('There was an error in recording the correction table. Please restart the procedure.');
215
215
  this.revertVelocityParameterValues();
216
216
  return;
217
217
  }
218
218
  this.notifications$.next('Saving the correction table by writing 0x00D0 to the encoder register 0x50.');
219
- yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00D0, 2);
219
+ yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00d0, 2);
220
220
  }
221
221
  catch (err) {
222
222
  if (err instanceof Error) {
@@ -305,16 +305,16 @@ class IntegroEncoderCalibration {
305
305
  config.deceleration = Math.abs(config.target) * accelerationConstant;
306
306
  }
307
307
  // Convert the velocity profile values using the user-configured SI unit velocity and Feed constant.
308
- config.target = (0, units_1.convertVelocityAffectedValue)(config.target, 0x00B44700, this.siUnitVelocity, 0xFFFFFFFF, this.feedConstantFeed);
309
- config.acceleration = (0, units_1.convertVelocityAffectedValue)(config.acceleration, 0x00B44700, this.siUnitVelocity, 0xFFFFFFFF, this.feedConstantFeed);
310
- config.deceleration = (0, units_1.convertVelocityAffectedValue)(config.deceleration, 0x00B44700, this.siUnitVelocity, 0xFFFFFFFF, this.feedConstantFeed);
308
+ config.target = (0, units_1.convertParameterVelocityAffectedValue)(0x60ff, 0, config.target, 0x00b44700, this.siUnitVelocity, 0xffffffff, this.feedConstantFeed);
309
+ config.acceleration = (0, units_1.convertParameterVelocityAffectedValue)(0x6083, 0, config.acceleration, 0x00b44700, this.siUnitVelocity, 0xffffffff, this.feedConstantFeed);
310
+ config.deceleration = (0, units_1.convertParameterVelocityAffectedValue)(0x6084, 0, config.deceleration, 0x00b44700, this.siUnitVelocity, 0xffffffff, this.feedConstantFeed);
311
311
  // Update the velocity target, and profile acceleration and deceleration values.
312
312
  this.notifications$.next(`Setting velocity target value (0x60FF:00) to ${config.target}, with the velocity profile acceleration (0x6083:00) set to ${config.acceleration} and deceleration (0x6084:00) set to ${config.deceleration}.`);
313
313
  yield (0, rxjs_1.lastValueFrom)(this.client.request.setParameterValues([
314
314
  [this.deviceRef, 0x6083, 0, config.acceleration],
315
315
  [this.deviceRef, 0x6084, 0, config.deceleration],
316
316
  [this.deviceRef, 0x6086, 0, 0],
317
- [this.deviceRef, 0x60FF, 0, config.target], // 0x60FF: Target velocity
317
+ [this.deviceRef, 0x60ff, 0, config.target], // 0x60FF: Target velocity
318
318
  ]));
319
319
  return config;
320
320
  });
@@ -341,7 +341,7 @@ class IntegroEncoderCalibration {
341
341
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
342
342
  const ec1Response = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x66, 0x04, 0, 10000, 1000, false));
343
343
  this.notifications$.next(`The value of register 0x66 (Error code 1) is ${hex(ec1Response.kublerRegisterValue)}.`);
344
- const ec2Response = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x6A, 0x04, 0, 10000, 1000, false));
344
+ const ec2Response = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x6a, 0x04, 0, 10000, 1000, false));
345
345
  this.notifications$.next(`The value of register 0x6A (Error code 2) is ${hex(ec2Response.kublerRegisterValue)}.`);
346
346
  this.notifications$.next(`Clearing the encoder errors by writing the value 0x02 to register 0x61.`);
347
347
  yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x01, 0x61, 0x01, 0x02, 10000, 1000, false));
@@ -350,9 +350,9 @@ class IntegroEncoderCalibration {
350
350
  }
351
351
  notifyEncoderSpeeds() {
352
352
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
353
- const ccwStartSpeed = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x5A, 0x02, 0, 10000, 1000, false));
353
+ const ccwStartSpeed = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x5a, 0x02, 0, 10000, 1000, false));
354
354
  this.notifications$.next(`The value of register 0x5A (CCW start speed) is ${hex(ccwStartSpeed.kublerRegisterValue)}.`);
355
- const ccwEndSpeed = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x5C, 0x02, 0, 10000, 1000, false));
355
+ const ccwEndSpeed = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x5c, 0x02, 0, 10000, 1000, false));
356
356
  this.notifications$.next(`The value of register 0x5C (CCW end speed) is ${hex(ccwEndSpeed.kublerRegisterValue)}.`);
357
357
  const cwStartSpeed = yield (0, rxjs_1.lastValueFrom)(this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0x00, 0x56, 0x02, 0, 10000, 1000, false));
358
358
  this.notifications$.next(`The value of register 0x56 (CW start speed) is ${hex(cwStartSpeed.kublerRegisterValue)}.`);
@@ -362,32 +362,33 @@ class IntegroEncoderCalibration {
362
362
  }
363
363
  updateVelocityParameterValues() {
364
364
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
365
- this.originalVelocityWindow = yield this.client.request.upload(this.deviceRef, 0x606D, 0);
366
- this.originalVelocityWindowTime = yield this.client.request.upload(this.deviceRef, 0x606E, 0);
365
+ this.originalVelocityWindow = yield this.client.request.upload(this.deviceRef, 0x606d, 0);
366
+ this.originalVelocityWindowTime = yield this.client.request.upload(this.deviceRef, 0x606e, 0);
367
367
  this.originalMaxMotorSpeed = yield this.client.request.upload(this.deviceRef, 0x6080, 0);
368
368
  this.originalQuickStopDeceleration = yield this.client.request.upload(this.deviceRef, 0x6085, 0);
369
369
  this.originalFeedConstantFeed = yield this.client.request.upload(this.deviceRef, 0x6092, 1);
370
370
  this.originalFeedConstantShaftRevolutions = yield this.client.request.upload(this.deviceRef, 0x6092, 2);
371
371
  this.originalFeedConstant = this.originalFeedConstantFeed / this.originalFeedConstantShaftRevolutions;
372
- this.originalSiUnitVelocity = yield this.client.request.upload(this.deviceRef, 0x60A9, 0);
373
- let velocityWindow = (0, units_1.convertVelocityAffectedValue)(120, 0x00B44700, this.originalSiUnitVelocity, 0xFFFFFFFF, this.originalFeedConstantFeed);
372
+ this.originalSiUnitVelocity = yield this.client.request.upload(this.deviceRef, 0x60a9, 0);
373
+ let velocityWindow = (0, units_1.convertParameterVelocityAffectedValue)(0x606d, 0, 120, 0x00b44700, this.originalSiUnitVelocity, 0xffffffff, this.originalFeedConstantFeed);
374
374
  const velocityWindowTime = 500;
375
375
  const switchToRpm = velocityWindow > 65535;
376
376
  if (switchToRpm) {
377
377
  this.notifications$.next('The user defined velocity units interfere with the maximum value of the calibration profile Velocity Window. Temporarily switching all units to RPM.');
378
378
  velocityWindow = 120;
379
- this.siUnitVelocity = 0x00B44700;
380
- this.feedConstantFeed = 0xFFFFFFFF;
379
+ this.siUnitVelocity = 0x00b44700;
380
+ this.feedConstantFeed = 0xffffffff;
381
381
  this.feedConstantShaftRevolutions = 1;
382
382
  this.feedConstant = this.feedConstantFeed / this.feedConstantShaftRevolutions;
383
- this.maxMotorSpeed = (0, units_1.convertVelocityAffectedValue)(this.originalMaxMotorSpeed, this.originalSiUnitVelocity, this.siUnitVelocity, this.originalFeedConstant, this.feedConstant);
383
+ this.maxMotorSpeed = (0, units_1.convertParameterVelocityAffectedValue)(0x6080, 0, this.originalMaxMotorSpeed, this.originalSiUnitVelocity, this.siUnitVelocity, this.originalFeedConstant, this.feedConstant);
384
384
  this.notifications$.next(`Setting the Max motor speed (0x6080:00) to ${this.maxMotorSpeed}.`);
385
385
  yield this.client.request.download(this.deviceRef, 0x6080, 0, this.maxMotorSpeed);
386
- this.quickStopDeceleration = (0, units_1.convertVelocityAffectedValue)(this.originalQuickStopDeceleration, this.originalSiUnitVelocity, this.siUnitVelocity, this.originalFeedConstant, this.feedConstant);
386
+ this.quickStopDeceleration = (0, units_1.convertParameterVelocityAffectedValue)(0x6085, 0, this.originalQuickStopDeceleration, this.originalSiUnitVelocity, this.siUnitVelocity, this.originalFeedConstant, this.feedConstant);
387
387
  this.notifications$.next(`Setting the Quick stop deceleration (0x6085:00) to ${this.quickStopDeceleration}.`);
388
388
  yield this.client.request.download(this.deviceRef, 0x6085, 0, this.quickStopDeceleration);
389
389
  }
390
- else { // use the original velocity values
390
+ else {
391
+ // use the original velocity values
391
392
  this.siUnitVelocity = this.originalSiUnitVelocity;
392
393
  this.feedConstantFeed = this.originalFeedConstantFeed;
393
394
  this.feedConstantShaftRevolutions = this.originalFeedConstantShaftRevolutions;
@@ -396,12 +397,12 @@ class IntegroEncoderCalibration {
396
397
  this.quickStopDeceleration = this.originalQuickStopDeceleration;
397
398
  }
398
399
  this.notifications$.next(`Setting the Velocity window (0x606D:00) to ${velocityWindow}.`);
399
- yield this.client.request.download(this.deviceRef, 0x606D, 0, velocityWindow);
400
+ yield this.client.request.download(this.deviceRef, 0x606d, 0, velocityWindow);
400
401
  this.notifications$.next(`Setting the Velocity window time (0x606E:00) to ${velocityWindowTime}.`);
401
- yield this.client.request.download(this.deviceRef, 0x606E, 0, velocityWindowTime);
402
+ yield this.client.request.download(this.deviceRef, 0x606e, 0, velocityWindowTime);
402
403
  if (switchToRpm) {
403
404
  this.notifications$.next(`Setting the SI unit velocity (0x60A9:00) to ${hex(this.siUnitVelocity)}.`);
404
- yield this.client.request.download(this.deviceRef, 0x60A9, 0, this.siUnitVelocity);
405
+ yield this.client.request.download(this.deviceRef, 0x60a9, 0, this.siUnitVelocity);
405
406
  this.notifications$.next(`Setting the Feed constant Feed (0x6092:01) to ${this.feedConstantFeed}.`);
406
407
  yield this.client.request.download(this.deviceRef, 0x6092, 1, this.feedConstantFeed);
407
408
  this.notifications$.next(`Setting the Feed constant Shaft revolutions (0x6092:02) to ${this.feedConstantShaftRevolutions}.`);
@@ -413,7 +414,7 @@ class IntegroEncoderCalibration {
413
414
  revertVelocityParameterValues() {
414
415
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
415
416
  this.notifications$.next(`Reverting the SI unit velocity (0x60A9:00) to ${hex(this.originalSiUnitVelocity)}.`);
416
- yield this.client.request.download(this.deviceRef, 0x60A9, 0, this.originalSiUnitVelocity);
417
+ yield this.client.request.download(this.deviceRef, 0x60a9, 0, this.originalSiUnitVelocity);
417
418
  this.notifications$.next(`Reverting the Feed constant Feed (0x6092:01) to ${this.originalFeedConstantFeed}.`);
418
419
  yield this.client.request.download(this.deviceRef, 0x6092, 1, this.originalFeedConstantFeed);
419
420
  this.notifications$.next(`Reverting the Feed constant Shaft revolutions (0x6092:02) to ${this.originalFeedConstantShaftRevolutions}.`);
@@ -424,9 +425,9 @@ class IntegroEncoderCalibration {
424
425
  this.notifications$.next(`Reverting the Quick stop deceleration (0x6085:00) to ${this.originalQuickStopDeceleration}.`);
425
426
  yield this.client.request.download(this.deviceRef, 0x6085, 0, this.originalQuickStopDeceleration);
426
427
  this.notifications$.next(`Reverting the Velocity window (0x606D:00) to ${this.originalVelocityWindow}.`);
427
- yield this.client.request.download(this.deviceRef, 0x606D, 0, this.originalVelocityWindow);
428
+ yield this.client.request.download(this.deviceRef, 0x606d, 0, this.originalVelocityWindow);
428
429
  this.notifications$.next(`Reverting the Velocity window time (0x606E:00) to ${this.originalVelocityWindowTime}.`);
429
- yield this.client.request.download(this.deviceRef, 0x606E, 0, this.originalVelocityWindowTime);
430
+ yield this.client.request.download(this.deviceRef, 0x606e, 0, this.originalVelocityWindowTime);
430
431
  });
431
432
  }
432
433
  }
@@ -1 +1 @@
1
- {"version":3,"file":"integro-encoder-calibration.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/integro-encoder-calibration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integro-encoder-calibration.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/integro-encoder-calibration.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { MotionMasterMessage, ParameterAddressValue, ParameterTypeValue, ParameterTypeValueKey, ParameterValueType, ValueType } from "./types";
1
+ import { MotionMasterMessage, ParameterAddressValue, ParameterTypeValue, ParameterTypeValueKey, ParameterValueType, ValueType } from './types';
2
2
  /**
3
3
  * Represents a generic parameter with required properties: index, subindex, name, value, typeValueKey.
4
4
  */
@@ -48,7 +48,7 @@ export type ParameterIndexSubindex = Pick<Parameter, 'index' | 'subindex'>;
48
48
  * @throws {Error} if index or subindex are less than 0
49
49
  * @returns combined index and subindex in uppercase hexadecimal format, e.g. "0x60FE:02"
50
50
  */
51
- export declare function makeParameterId(tuple: [(number | null | undefined), (number | null | undefined)]): string;
51
+ export declare function makeParameterId(tuple: [number | null | undefined, number | null | undefined]): string;
52
52
  /**
53
53
  * Make parameter id by providing an object which has index and subindex properties.
54
54
  *
@@ -57,8 +57,8 @@ export declare function makeParameterId(tuple: [(number | null | undefined), (nu
57
57
  * @returns combined index and subindex in uppercase hexadecimal format, e.g. "0x60FE:02"
58
58
  */
59
59
  export declare function makeParameterId(parameter: {
60
- index?: (number | null);
61
- subindex?: (number | null);
60
+ index?: number | null;
61
+ subindex?: number | null;
62
62
  }): string;
63
63
  /**
64
64
  * Make parameter id by providing index and subindex.
@@ -68,7 +68,7 @@ export declare function makeParameterId(parameter: {
68
68
  * @throws {Error} if index or subindex are less than 0
69
69
  * @returns combined index and subindex in uppercase hexadecimal format, e.g. "0x60FE:02"
70
70
  */
71
- export declare function makeParameterId(index?: (number | null), subindex?: (number | null)): string;
71
+ export declare function makeParameterId(index?: number | null, subindex?: number | null): string;
72
72
  /**
73
73
  * Make parameter id by providing different arguments.
74
74
  *
@@ -80,9 +80,9 @@ export declare function makeParameterId(index?: (number | null), subindex?: (num
80
80
  * @returns combined index and subindex in uppercase hexadecimal format, e.g. "0x60FE:02"
81
81
  */
82
82
  export declare function makeParameterId(a?: (number | null) | {
83
- index?: (number | null);
84
- subindex?: (number | null);
85
- } | [(number | null | undefined), (number | null | undefined)], b?: (number | null)): string;
83
+ index?: number | null;
84
+ subindex?: number | null;
85
+ } | [number | null | undefined, number | null | undefined], b?: number | null): string;
86
86
  /**
87
87
  * Example of parameter id is "0x2110:1A" where:
88
88
  * - 0x2110 is object index in hexadecimal format
@@ -36,7 +36,7 @@ function makeParameterId(a, b) {
36
36
  if (subindex < 0) {
37
37
  throw new Error(`The provided subindex to makeParameterId must be greater than 0: ${subindex}`);
38
38
  }
39
- const indexMaxLength = index > 0xFFFF ? 8 : 4;
39
+ const indexMaxLength = index > 0xffff ? 8 : 4;
40
40
  const x = index.toString(16).toUpperCase().padStart(indexMaxLength, '0');
41
41
  const y = subindex.toString(16).toUpperCase().padStart(2, '0');
42
42
  return `0x${x}:${y}`;
@@ -167,7 +167,7 @@ function getParameterTypeValueDefault(key) {
167
167
  }
168
168
  exports.getParameterTypeValueDefault = getParameterTypeValueDefault;
169
169
  function getParameterTypeValue(parameter) {
170
- return (types_1.MotionMasterMessage.Status.DeviceParameterValues.ParameterValue.create(parameter)).typeValue;
170
+ return types_1.MotionMasterMessage.Status.DeviceParameterValues.ParameterValue.create(parameter).typeValue;
171
171
  }
172
172
  exports.getParameterTypeValue = getParameterTypeValue;
173
173
  function getParameterValue(parameter) {
@@ -197,10 +197,16 @@ function parseParameterValue(type, value) {
197
197
  else {
198
198
  let bytes = [];
199
199
  if (value.startsWith('0x')) {
200
- bytes = (_b = (_a = value.slice(2).match(/.{1,2}/g)) === null || _a === void 0 ? void 0 : _a.map((h) => parseInt(h, 16))) !== null && _b !== void 0 ? _b : [];
200
+ bytes =
201
+ (_b = (_a = value
202
+ .slice(2)
203
+ .match(/.{1,2}/g)) === null || _a === void 0 ? void 0 : _a.map((h) => parseInt(h, 16))) !== null && _b !== void 0 ? _b : [];
201
204
  }
202
205
  else {
203
- bytes = value.split(',').map((c) => c.trim()).map((c) => parseInt(c, 10));
206
+ bytes = value
207
+ .split(',')
208
+ .map((c) => c.trim())
209
+ .map((c) => parseInt(c, 10));
204
210
  }
205
211
  return Uint8Array.from(bytes);
206
212
  }
@@ -232,10 +238,16 @@ function mapParameterTypeValueToObject(type, value) {
232
238
  else {
233
239
  let bytes = [];
234
240
  if (value.startsWith('0x')) {
235
- bytes = (_b = (_a = value.slice(2).match(/.{1,2}/g)) === null || _a === void 0 ? void 0 : _a.map((h) => parseInt(h, 16))) !== null && _b !== void 0 ? _b : [];
241
+ bytes =
242
+ (_b = (_a = value
243
+ .slice(2)
244
+ .match(/.{1,2}/g)) === null || _a === void 0 ? void 0 : _a.map((h) => parseInt(h, 16))) !== null && _b !== void 0 ? _b : [];
236
245
  }
237
246
  else {
238
- bytes = value.split(',').map((c) => c.trim()).map((c) => parseInt(c, 10));
247
+ bytes = value
248
+ .split(',')
249
+ .map((c) => c.trim())
250
+ .map((c) => parseInt(c, 10));
239
251
  }
240
252
  p['rawValue'] = Uint8Array.from(bytes);
241
253
  }
@@ -264,7 +276,7 @@ function isRxPdoIndex(index) {
264
276
  }
265
277
  exports.isRxPdoIndex = isRxPdoIndex;
266
278
  function isTxPdoIndex(index) {
267
- return (0, lodash_1.inRange)(index, 0x1A00, 0x1C00);
279
+ return (0, lodash_1.inRange)(index, 0x1a00, 0x1c00);
268
280
  }
269
281
  exports.isTxPdoIndex = isTxPdoIndex;
270
282
  function isPdoIndex(index) {
@@ -285,7 +297,7 @@ function fillPdoParametersWithMappingEntries(parameters, entriesPerPdo = 10) {
285
297
  while (i < parameters.length) {
286
298
  if (parameters[i].subindex === 0) {
287
299
  let j = i;
288
- while (parameters[j] && (parameters[j].index === parameters[i].index)) {
300
+ while (parameters[j] && parameters[j].index === parameters[i].index) {
289
301
  output.push(parameters[j]);
290
302
  j++;
291
303
  }
@@ -300,7 +312,7 @@ function fillPdoParametersWithMappingEntries(parameters, entriesPerPdo = 10) {
300
312
  value: 0,
301
313
  valueType: types_1.ValueType.UNSIGNED32,
302
314
  group: parameters[i].group,
303
- typeValueKey: "uintValue",
315
+ typeValueKey: 'uintValue',
304
316
  readAccess: true,
305
317
  writeAccess: true,
306
318
  });
@@ -368,7 +380,7 @@ function createPdoParameterValues(parameters, values) {
368
380
  const { index, subindex, typeValue } = parameter;
369
381
  let value = values[i];
370
382
  if (subindex === 0) {
371
- value = arr.reduce((n, p, j) => (p.index === index && p.subindex > 0 && values[j]) ? n + 1 : n, 0);
383
+ value = arr.reduce((n, p, j) => (p.index === index && p.subindex > 0 && values[j] ? n + 1 : n), 0);
372
384
  }
373
385
  return [index, subindex, value, typeValue];
374
386
  });
@@ -1 +1 @@
1
- {"version":3,"file":"parameter.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/parameter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameter.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/parameter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,26 @@
1
+ /**
2
+ * Represents an entry of parameters affected by Feed constant and SI unit velocity.
3
+ *
4
+ * Tuple format: [index, subindex, unit, affectedByFeedConstant, affectedBySiUnitVelocity]
5
+ */
6
+ export type FeedConstantAndSiUnitVelocityAffectedParameterEntry = [number, number, number, boolean, boolean];
7
+ /**
8
+ * List of parameters affected by Feed constant and SI unit velocity.
9
+ *
10
+ * This is derived from the Google Sheet document titled "Objects scaled with Feed and SI unit velocity".
11
+ */
12
+ export declare const feedConstantAndSiUnitVelocityAffectedParameters: FeedConstantAndSiUnitVelocityAffectedParameterEntry[];
13
+ /**
14
+ * Filters parameters affected by Feed constant, including only position parameters.
15
+ */
16
+ export declare const feedConstantPositionAffectedParameters: number[][];
17
+ /**
18
+ * Filters parameters affected by SI unit velocity, including both velocity and acceleration parameters.
19
+ */
20
+ export declare const siUnitVelocityAffectedParameters: [number, number][];
21
+ export declare const unitConverterPositionParameters: [number, number][];
22
+ export declare const unitConverterVelocityParameters: [number, number][];
23
+ export declare const unitConverterAccelerationParameters: [number, number][];
1
24
  export type SiUnitVelocitySymbol = '1e12 RPM' | '1e9 RPM' | '1e6 RPM' | '1e3 RPM' | 'RPM' | '1e-1 RPM' | '1e-2 RPM' | '1e-3 RPM' | '1e12 RPS' | '1e9 RPS' | '1e6 RPS' | '1e3 RPS' | 'RPS' | '1e-1 RPS' | '1e-2 RPS' | '1e-3 RPS';
2
25
  /**
3
26
  * Maps the SI unit velocity value to the corresponding unit symbol.
@@ -51,20 +74,34 @@ export declare function parseSiUnitVelocityValue(value: number): SiUnitVelocity;
51
74
  * @example When changing from RPM to mRPM, a value of 2,500 will convert to 2,500,000.
52
75
  */
53
76
  export declare function convertSiUnitVelocityAffectedValue(value: number, oldSiUnitVelocityValue: number, newSiUnitVelocityValue: number, round?: boolean): number;
77
+ export declare function convertParameterSiUnitVelocityAffectedValue(index: number, subindex: number, value: number, oldSiUnitVelocityValue: number, newSiUnitVelocityValue: number, round?: boolean): number;
54
78
  /**
55
79
  * Use this function when the Feed constant changes to update the position affected parameters.
56
80
  * Depending on whether the Feed constant gets disabled, enabled, or its value changes, the function will perform conversion, inversion, or scaling.
57
81
  */
58
82
  export declare function convertFeedConstantAffectedPositionValue(value: number, oldFeedConstant: number, newFeedConstant: number, resolution: number): number;
83
+ export declare function convertParameterFeedConstantAffectedPositionValue(index: number, subindex: number, value: number, oldFeedConstant: number, newFeedConstant: number, resolution: number): number;
59
84
  /**
60
85
  * Use this function when the Feed constant changes to update the velocity affected parameters.
61
86
  * Depending on whether the Feed constant gets disabled, enabled, or its value changes, the function will perform conversion, inversion, or scaling.
62
87
  */
63
88
  export declare function convertFeedConstantAffectedVelocityValue(value: number, oldFeedConstant: number, newFeedConstant: number): number;
89
+ export declare function convertParameterFeedConstantAffectedVelocityValue(index: number, subindex: number, value: number, oldFeedConstant: number, newFeedConstant: number): number;
64
90
  /**
65
- * Use this function when the velocity and/or feed constant changes to update the affected parameters.
91
+ * Adjusts the given value based on the SI unit velocity and Feed constant.
92
+ * It checks if the parameters are influenced by either of these two factors and applies the appropriate conversions.
93
+ *
94
+ * @param {number} index - The index identifying the affected parameter.
95
+ * @param {number} subindex - The subindex identifying the affected parameter.
96
+ * @param {number} value - The value to be adjusted based on the SI unit velocity or Feed constant.
97
+ * @param {number} oldSiUnitVelocity - The original SI unit velocity value.
98
+ * @param {number} newSiUnitVelocity - The new SI unit velocity value to convert to.
99
+ * @param {number} oldFeedConstant - The original Feed constant value.
100
+ * @param {number} newFeedConstant - The new Feed constant value to convert to.
101
+ *
102
+ * @returns {number} The adjusted value after applying the necessary conversions.
66
103
  */
67
- export declare function convertVelocityAffectedValue(value: number, oldSiUnitVelocity: number, newSiUnitVelocity: number, oldFeedConstant: number, newFeedConstant: number): number;
104
+ export declare function convertParameterVelocityAffectedValue(index: number, subindex: number, value: number, oldSiUnitVelocity: number, newSiUnitVelocity: number, oldFeedConstant: number, newFeedConstant: number): number;
68
105
  /**
69
106
  * Represents a unit conversion object with formatting, parsing, and unit options.
70
107
  */
@@ -134,19 +171,7 @@ export declare function getUnitConverterForParameter(index: number, subindex: nu
134
171
  *
135
172
  * @returns {string} The formatted unit display.
136
173
  */
137
- export declare function getFormattedUnitDisplay(unit: string, siUnitVelocityValue: number, feedConstantEnabled?: boolean, feedConstantUnit?: string, unaffectedByFeedConstant?: boolean): string;
138
- /**
139
- * List of position and velocity parameters that are unaffected by the feed constant.
140
- *
141
- * These parameters are not affected by unit transformations when the feed constant is enabled.
142
- *
143
- * For position parameters: When the feed constant is enabled,
144
- * these parameters always return "Inc" instead of "mm" for example.
145
- *
146
- * For velocity parameters: When the feed constant is enabled, and SI unit velocity scaling is used,
147
- * these parameters return "1e-1 rpm" instead of "1e-1 mm/min" for example.
148
- */
149
- export declare const feedConstantUnaffectedParameters: number[][];
174
+ export declare function getFormattedUnitDisplay(unit: string, siUnitVelocityValue: number, feedConstantEnabled?: boolean, feedConstantUnit?: string, affectedByFeedConstant?: boolean, affectedBySiUnitVelocity?: boolean): string;
150
175
  /**
151
176
  * Determines the formatted unit display for a parameter, considering feed constant settings.
152
177
  *
package/src/lib/units.js CHANGED
@@ -1,7 +1,92 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getParameterFormattedUnitDisplay = exports.feedConstantUnaffectedParameters = exports.getFormattedUnitDisplay = exports.getUnitConverterForParameter = exports.unitConverterParameters = exports.unitConverters = exports.convertVelocityAffectedValue = exports.convertFeedConstantAffectedVelocityValue = exports.convertFeedConstantAffectedPositionValue = exports.convertSiUnitVelocityAffectedValue = exports.parseSiUnitVelocityValue = exports.symbolToSiUnitVelocityValue = exports.siUnitVelocityValueToSymbol = void 0;
3
+ exports.getParameterFormattedUnitDisplay = exports.getFormattedUnitDisplay = exports.getUnitConverterForParameter = exports.unitConverterParameters = exports.unitConverters = exports.convertParameterVelocityAffectedValue = exports.convertParameterFeedConstantAffectedVelocityValue = exports.convertFeedConstantAffectedVelocityValue = exports.convertParameterFeedConstantAffectedPositionValue = exports.convertFeedConstantAffectedPositionValue = exports.convertParameterSiUnitVelocityAffectedValue = exports.convertSiUnitVelocityAffectedValue = exports.parseSiUnitVelocityValue = exports.symbolToSiUnitVelocityValue = exports.siUnitVelocityValueToSymbol = exports.unitConverterAccelerationParameters = exports.unitConverterVelocityParameters = exports.unitConverterPositionParameters = exports.siUnitVelocityAffectedParameters = exports.feedConstantPositionAffectedParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters = void 0;
4
4
  const util_1 = require("./util");
5
+ /**
6
+ * List of parameters affected by Feed constant and SI unit velocity.
7
+ *
8
+ * This is derived from the Google Sheet document titled "Objects scaled with Feed and SI unit velocity".
9
+ */
10
+ exports.feedConstantAndSiUnitVelocityAffectedParameters = [
11
+ // Position
12
+ [0x2004, 0x08, 0x00b50000, false, false],
13
+ [0x2005, 0x01, 0x00b50000, true, false],
14
+ [0x2005, 0x04, 0x00b50000, true, false],
15
+ [0x2040, 0x00, 0x00b50000, false, false],
16
+ [0x2110, 0x06, 0x00b50000, false, false],
17
+ [0x2110, 0x19, 0x00b50000, false, false],
18
+ [0x2111, 0x01, 0x00b50000, false, false],
19
+ [0x2111, 0x02, 0x00b50000, false, false],
20
+ [0x2112, 0x06, 0x00b50000, false, false],
21
+ [0x2112, 0x19, 0x00b50000, false, false],
22
+ [0x2113, 0x01, 0x00b50000, false, false],
23
+ [0x2113, 0x02, 0x00b50000, false, false],
24
+ [0x2213, 0x01, 0x00b50000, false, false],
25
+ [0x2625, 0x02, 0x00b50000, false, false],
26
+ [0x2625, 0x04, 0x00b50000, false, false],
27
+ [0x2630, 0x02, 0x00b50000, false, false],
28
+ [0x2631, 0x02, 0x00b50000, false, false],
29
+ [0x6062, 0x00, 0x00b50000, true, false],
30
+ [0x6064, 0x00, 0x00b50000, true, false],
31
+ [0x6065, 0x00, 0x00b50000, true, false],
32
+ [0x6067, 0x00, 0x00b50000, true, false],
33
+ [0x607a, 0x00, 0x00b50000, true, false],
34
+ [0x607b, 0x01, 0x00b50000, true, false],
35
+ [0x607b, 0x02, 0x00b50000, true, false],
36
+ [0x607c, 0x00, 0x00b50000, true, false],
37
+ [0x607d, 0x01, 0x00b50000, true, false],
38
+ [0x607d, 0x02, 0x00b50000, true, false],
39
+ [0x60f4, 0x00, 0x00b50000, true, false],
40
+ [0x60fc, 0x00, 0x00b50000, true, false],
41
+ // Velocity
42
+ [0x2010, 0x06, 0x00b44700, false, false],
43
+ [0x2010, 0x07, 0x00b44700, false, false],
44
+ [0x2012, 0x04, 0x00b44700, true, true],
45
+ [0x2013, 0x02, 0x00b44700, true, true],
46
+ [0x2013, 0x06, 0x00b44700, true, true],
47
+ [0x2013, 0x11, 0x00b44700, true, true],
48
+ [0x2013, 0x15, 0x00b44700, true, true],
49
+ [0x2018, 0x01, 0x00b44700, true, true],
50
+ [0x2018, 0x03, 0x00b44700, true, true],
51
+ [0x2111, 0x03, 0x00b44700, false, true],
52
+ [0x2113, 0x03, 0x00b44700, false, true],
53
+ [0x606b, 0x00, 0x00b44700, true, true],
54
+ [0x606c, 0x00, 0x00b44700, true, true],
55
+ [0x606d, 0x00, 0x00b44700, true, true],
56
+ [0x606f, 0x00, 0x00b44700, true, true],
57
+ [0x6080, 0x00, 0x00b44700, false, true],
58
+ [0x6081, 0x00, 0x00b44700, true, true],
59
+ [0x6099, 0x01, 0x00b44700, true, true],
60
+ [0x6099, 0x02, 0x00b44700, true, true],
61
+ [0x60b1, 0x00, 0x00b44700, true, true],
62
+ [0x60ff, 0x00, 0x00b44700, true, true],
63
+ // Acceleration
64
+ [0x6083, 0x00, 0x00b60300, true, true],
65
+ [0x6084, 0x00, 0x00b60300, true, true],
66
+ [0x6085, 0x00, 0x00b60300, true, true],
67
+ [0x609a, 0x00, 0x00b60300, true, true], // Homing acceleration
68
+ ];
69
+ /**
70
+ * Filters parameters affected by Feed constant, including only position parameters.
71
+ */
72
+ exports.feedConstantPositionAffectedParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters
73
+ .filter(([, , unit, affectedByFeedConstant]) => unit === 0x00b50000 && affectedByFeedConstant === true)
74
+ .map(([index, subindex]) => [index, subindex]);
75
+ /**
76
+ * Filters parameters affected by SI unit velocity, including both velocity and acceleration parameters.
77
+ */
78
+ exports.siUnitVelocityAffectedParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters
79
+ .filter(([, , unit, , affectedBySiUnitVelocity]) => (unit === 0x00b44700 || unit === 0x00b60300) && affectedBySiUnitVelocity === true)
80
+ .map(([index, subindex]) => [index, subindex]);
81
+ exports.unitConverterPositionParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters
82
+ .filter(([, , unit, affectedByFeedConstant]) => unit === 0x00b50000 && affectedByFeedConstant === true)
83
+ .map(([index, subindex]) => [index, subindex]);
84
+ exports.unitConverterVelocityParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters
85
+ .filter(([, , unit, affectedByFeedConstant]) => unit === 0x00b44700 && affectedByFeedConstant === true)
86
+ .map(([index, subindex]) => [index, subindex]);
87
+ exports.unitConverterAccelerationParameters = exports.feedConstantAndSiUnitVelocityAffectedParameters
88
+ .filter(([, , unit, affectedByFeedConstant]) => unit === 0x00b60300 && affectedByFeedConstant === true)
89
+ .map(([index, subindex]) => [index, subindex]);
5
90
  /**
6
91
  * Maps the SI unit velocity value to the corresponding unit symbol.
7
92
  */
@@ -89,6 +174,21 @@ function convertSiUnitVelocityAffectedValue(value, oldSiUnitVelocityValue, newSi
89
174
  return round ? Math.round(value) : value;
90
175
  }
91
176
  exports.convertSiUnitVelocityAffectedValue = convertSiUnitVelocityAffectedValue;
177
+ function convertParameterSiUnitVelocityAffectedValue(index, subindex, value, oldSiUnitVelocityValue, newSiUnitVelocityValue, round = true) {
178
+ var _a;
179
+ const [idx, , , , affectedBySiUnitVelocity] = (_a = exports.feedConstantAndSiUnitVelocityAffectedParameters.find(([i, s]) => i === index && s === subindex)) !== null && _a !== void 0 ? _a : [
180
+ 0,
181
+ 0,
182
+ 0,
183
+ false,
184
+ false,
185
+ ];
186
+ if (!affectedBySiUnitVelocity && idx !== 0) {
187
+ return value;
188
+ }
189
+ return convertSiUnitVelocityAffectedValue(value, oldSiUnitVelocityValue, newSiUnitVelocityValue, round);
190
+ }
191
+ exports.convertParameterSiUnitVelocityAffectedValue = convertParameterSiUnitVelocityAffectedValue;
92
192
  /**
93
193
  * Use this function when the Feed constant changes to update the position affected parameters.
94
194
  * Depending on whether the Feed constant gets disabled, enabled, or its value changes, the function will perform conversion, inversion, or scaling.
@@ -110,6 +210,21 @@ function convertFeedConstantAffectedPositionValue(value, oldFeedConstant, newFee
110
210
  return out;
111
211
  }
112
212
  exports.convertFeedConstantAffectedPositionValue = convertFeedConstantAffectedPositionValue;
213
+ function convertParameterFeedConstantAffectedPositionValue(index, subindex, value, oldFeedConstant, newFeedConstant, resolution) {
214
+ var _a;
215
+ const [idx, , , affectedByFeedConstant] = (_a = exports.feedConstantAndSiUnitVelocityAffectedParameters.find(([i, s]) => i === index && s === subindex)) !== null && _a !== void 0 ? _a : [
216
+ 0,
217
+ 0,
218
+ 0,
219
+ false,
220
+ false,
221
+ ];
222
+ if (!affectedByFeedConstant && idx !== 0) {
223
+ return value;
224
+ }
225
+ return convertFeedConstantAffectedPositionValue(value, oldFeedConstant, newFeedConstant, resolution);
226
+ }
227
+ exports.convertParameterFeedConstantAffectedPositionValue = convertParameterFeedConstantAffectedPositionValue;
113
228
  /**
114
229
  * Use this function when the Feed constant changes to update the velocity affected parameters.
115
230
  * Depending on whether the Feed constant gets disabled, enabled, or its value changes, the function will perform conversion, inversion, or scaling.
@@ -131,15 +246,41 @@ function convertFeedConstantAffectedVelocityValue(value, oldFeedConstant, newFee
131
246
  return out;
132
247
  }
133
248
  exports.convertFeedConstantAffectedVelocityValue = convertFeedConstantAffectedVelocityValue;
249
+ function convertParameterFeedConstantAffectedVelocityValue(index, subindex, value, oldFeedConstant, newFeedConstant) {
250
+ var _a;
251
+ const [idx, , , affectedByFeedConstant] = (_a = exports.feedConstantAndSiUnitVelocityAffectedParameters.find(([i, s]) => i === index && s === subindex)) !== null && _a !== void 0 ? _a : [
252
+ 0,
253
+ 0,
254
+ 0,
255
+ false,
256
+ false,
257
+ ];
258
+ if (!affectedByFeedConstant && idx !== 0) {
259
+ return value;
260
+ }
261
+ return convertFeedConstantAffectedVelocityValue(value, oldFeedConstant, newFeedConstant);
262
+ }
263
+ exports.convertParameterFeedConstantAffectedVelocityValue = convertParameterFeedConstantAffectedVelocityValue;
134
264
  /**
135
- * Use this function when the velocity and/or feed constant changes to update the affected parameters.
265
+ * Adjusts the given value based on the SI unit velocity and Feed constant.
266
+ * It checks if the parameters are influenced by either of these two factors and applies the appropriate conversions.
267
+ *
268
+ * @param {number} index - The index identifying the affected parameter.
269
+ * @param {number} subindex - The subindex identifying the affected parameter.
270
+ * @param {number} value - The value to be adjusted based on the SI unit velocity or Feed constant.
271
+ * @param {number} oldSiUnitVelocity - The original SI unit velocity value.
272
+ * @param {number} newSiUnitVelocity - The new SI unit velocity value to convert to.
273
+ * @param {number} oldFeedConstant - The original Feed constant value.
274
+ * @param {number} newFeedConstant - The new Feed constant value to convert to.
275
+ *
276
+ * @returns {number} The adjusted value after applying the necessary conversions.
136
277
  */
137
- function convertVelocityAffectedValue(value, oldSiUnitVelocity, newSiUnitVelocity, oldFeedConstant, newFeedConstant) {
138
- value = convertSiUnitVelocityAffectedValue(value, oldSiUnitVelocity, newSiUnitVelocity);
139
- value = convertFeedConstantAffectedVelocityValue(value, oldFeedConstant, newFeedConstant);
278
+ function convertParameterVelocityAffectedValue(index, subindex, value, oldSiUnitVelocity, newSiUnitVelocity, oldFeedConstant, newFeedConstant) {
279
+ value = convertParameterSiUnitVelocityAffectedValue(index, subindex, value, oldSiUnitVelocity, newSiUnitVelocity);
280
+ value = convertParameterFeedConstantAffectedVelocityValue(index, subindex, value, oldFeedConstant, newFeedConstant);
140
281
  return value;
141
282
  }
142
- exports.convertVelocityAffectedValue = convertVelocityAffectedValue;
283
+ exports.convertParameterVelocityAffectedValue = convertParameterVelocityAffectedValue;
143
284
  /**
144
285
  * Represents an instance of a unit converters.
145
286
  * Each unit type has dedicated formatter and parser functions:
@@ -401,37 +542,11 @@ exports.unitConverters = {
401
542
  },
402
543
  };
403
544
  exports.unitConverterParameters = {
404
- acceleration: [
405
- [0x6083, 0],
406
- [0x6084, 0],
407
- [0x6085, 0],
408
- [0x609a, 0],
409
- ],
545
+ acceleration: exports.unitConverterAccelerationParameters,
410
546
  current: [[0x6073, 0]],
411
547
  friction: [],
412
548
  inertia: [],
413
- position: [
414
- [0x2004, 8],
415
- [0x2005, 1],
416
- [0x2005, 4],
417
- [0x2111, 1],
418
- [0x2111, 2],
419
- [0x2113, 1],
420
- [0x2113, 2],
421
- [0x2213, 1],
422
- [0x6062, 0],
423
- [0x6064, 0],
424
- [0x6065, 0],
425
- [0x6067, 0],
426
- [0x607a, 0],
427
- [0x607b, 1],
428
- [0x607b, 2],
429
- [0x607c, 0],
430
- [0x607d, 1],
431
- [0x607d, 2],
432
- [0x60f4, 0],
433
- [0x60fc, 0],
434
- ],
549
+ position: exports.unitConverterPositionParameters,
435
550
  torque: [
436
551
  [0x6071, 0],
437
552
  [0x6072, 0],
@@ -439,28 +554,7 @@ exports.unitConverterParameters = {
439
554
  [0x6077, 0],
440
555
  [0x60b2, 0],
441
556
  ],
442
- velocity: [
443
- [0x2010, 6],
444
- [0x2010, 7],
445
- [0x2012, 4],
446
- [0x2013, 2],
447
- [0x2013, 11],
448
- [0x2013, 15],
449
- [0x2013, 15],
450
- [0x2018, 1],
451
- [0x2018, 3],
452
- [0x2111, 3],
453
- [0x2113, 3],
454
- [0x606b, 0],
455
- [0x606c, 0],
456
- [0x606d, 0],
457
- [0x606f, 2],
458
- [0x6081, 0],
459
- [0x6099, 1],
460
- [0x6099, 2],
461
- [0x60b1, 0],
462
- [0x60ff, 0],
463
- ],
557
+ velocity: exports.unitConverterVelocityParameters,
464
558
  };
465
559
  /**
466
560
  * Get the unit converter for a given parameter index and subindex.
@@ -486,7 +580,7 @@ exports.getUnitConverterForParameter = getUnitConverterForParameter;
486
580
  *
487
581
  * @returns {string} The formatted unit display.
488
582
  */
489
- function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit, unaffectedByFeedConstant = false) {
583
+ function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit, affectedByFeedConstant = false, affectedBySiUnitVelocity = false) {
490
584
  if (!unit) {
491
585
  return '';
492
586
  }
@@ -495,7 +589,7 @@ function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled,
495
589
  const siUnitVelocity = parseSiUnitVelocityValue(siUnitVelocityValue);
496
590
  const isRPM = siUnitVelocity.type === 'minute';
497
591
  const isRPS = siUnitVelocity.type === 'second';
498
- if (feedConstantEnabled && !unaffectedByFeedConstant) {
592
+ if (feedConstantEnabled && affectedByFeedConstant) {
499
593
  if (lcunit === 'inc') {
500
594
  return feedConstantUnit || 'feed';
501
595
  }
@@ -529,7 +623,7 @@ function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled,
529
623
  }
530
624
  }
531
625
  }
532
- else {
626
+ else if (affectedBySiUnitVelocity) {
533
627
  if (lcunit === 'rpm' && siUnitVelocity.unit) {
534
628
  out = siUnitVelocity.unit.toLowerCase(); // 1e-3 rpm
535
629
  }
@@ -545,28 +639,6 @@ function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled,
545
639
  return out;
546
640
  }
547
641
  exports.getFormattedUnitDisplay = getFormattedUnitDisplay;
548
- /**
549
- * List of position and velocity parameters that are unaffected by the feed constant.
550
- *
551
- * These parameters are not affected by unit transformations when the feed constant is enabled.
552
- *
553
- * For position parameters: When the feed constant is enabled,
554
- * these parameters always return "Inc" instead of "mm" for example.
555
- *
556
- * For velocity parameters: When the feed constant is enabled, and SI unit velocity scaling is used,
557
- * these parameters return "1e-1 rpm" instead of "1e-1 mm/min" for example.
558
- */
559
- exports.feedConstantUnaffectedParameters = [
560
- // Position parameters
561
- [0x2111, 1],
562
- [0x2111, 2],
563
- [0x2113, 1],
564
- [0x2113, 2],
565
- // Velocity parameters
566
- [0x6080, 0],
567
- [0x2111, 3],
568
- [0x2113, 3], // Encoder 2 feedback - Velocity
569
- ];
570
642
  /**
571
643
  * Determines the formatted unit display for a parameter, considering feed constant settings.
572
644
  *
@@ -585,8 +657,9 @@ exports.feedConstantUnaffectedParameters = [
585
657
  * @returns {string} The formatted unit display if the feed constant applies, otherwise the original unit.
586
658
  */
587
659
  function getParameterFormattedUnitDisplay(index, subindex, unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit) {
588
- const unaffectedByFeedConstant = exports.feedConstantUnaffectedParameters.some(([i, s]) => i === index && s === subindex);
589
- return getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit, unaffectedByFeedConstant);
660
+ var _a;
661
+ let [, , , affectedByFeedConstant, affectedBySiUnitVelocity] = (_a = exports.feedConstantAndSiUnitVelocityAffectedParameters.find(([i, s]) => i === index && s === subindex)) !== null && _a !== void 0 ? _a : [0, 0, 0, true, true];
662
+ return getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit, affectedByFeedConstant, affectedBySiUnitVelocity);
590
663
  }
591
664
  exports.getParameterFormattedUnitDisplay = getParameterFormattedUnitDisplay;
592
665
  //# sourceMappingURL=units.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"units.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/units.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"units.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/units.ts"],"names":[],"mappings":"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"}