motion-master-client 0.0.235 → 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.235",
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,13 +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): string;
138
- /**
139
- * List of parameters that are unaffected by the feed constant.
140
- *
141
- * These parameters are excluded from unit transformations when the feed constant is enabled.
142
- */
143
- export declare const feedConstantUnaffectedParameters: number[][];
174
+ export declare function getFormattedUnitDisplay(unit: string, siUnitVelocityValue: number, feedConstantEnabled?: boolean, feedConstantUnit?: string, affectedByFeedConstant?: boolean, affectedBySiUnitVelocity?: boolean): string;
144
175
  /**
145
176
  * Determines the formatted unit display for a parameter, considering feed constant settings.
146
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) {
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) {
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,17 +639,6 @@ function getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled,
545
639
  return out;
546
640
  }
547
641
  exports.getFormattedUnitDisplay = getFormattedUnitDisplay;
548
- /**
549
- * List of parameters that are unaffected by the feed constant.
550
- *
551
- * These parameters are excluded from unit transformations when the feed constant is enabled.
552
- */
553
- exports.feedConstantUnaffectedParameters = [
554
- [0x2111, 1],
555
- [0x2111, 2],
556
- [0x2113, 1],
557
- [0x2113, 2], // Encoder 2 feedback - Adjusted position
558
- ];
559
642
  /**
560
643
  * Determines the formatted unit display for a parameter, considering feed constant settings.
561
644
  *
@@ -574,12 +657,9 @@ exports.feedConstantUnaffectedParameters = [
574
657
  * @returns {string} The formatted unit display if the feed constant applies, otherwise the original unit.
575
658
  */
576
659
  function getParameterFormattedUnitDisplay(index, subindex, unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit) {
577
- if (feedConstantEnabled === true && !exports.feedConstantUnaffectedParameters.some(([i, s]) => i === index && s === subindex)) {
578
- return getFormattedUnitDisplay(unit, siUnitVelocityValue, feedConstantEnabled, feedConstantUnit);
579
- }
580
- else {
581
- return unit;
582
- }
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);
583
663
  }
584
664
  exports.getParameterFormattedUnitDisplay = getParameterFormattedUnitDisplay;
585
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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"}