motion-master-client 0.0.106 → 0.0.108

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.106",
3
+ "version": "0.0.108",
4
4
  "type": "commonjs",
5
5
  "description": "A library and CLI program used for communicating with Motion Master.",
6
6
  "dependencies": {
package/src/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  export * from './lib/cia402';
2
2
  export * from './lib/config-file';
3
3
  export * from './lib/data-monitoring';
4
+ export * from './lib/device';
4
5
  export * from './lib/device-log-line';
5
6
  export * from './lib/device-parameter';
6
- export * from './lib/device';
7
+ export * from './lib/encoder';
7
8
  export * from './lib/hardware-description';
8
9
  export * from './lib/integro-encoder-calibration';
9
10
  export * from './lib/monitoring-config';
@@ -21,8 +22,8 @@ export * from './lib/operators';
21
22
  export * from './lib/options';
22
23
  export * from './lib/os-command';
23
24
  export * from './lib/parameter';
25
+ export * from './lib/product';
24
26
  export * from './lib/request-status-resolver';
25
- export * from './lib/somanet-product';
26
27
  export * from './lib/system-log-line';
27
28
  export * from './lib/types';
28
29
  export * from './lib/urls';
package/src/index.js CHANGED
@@ -4,9 +4,10 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./lib/cia402"), exports);
5
5
  tslib_1.__exportStar(require("./lib/config-file"), exports);
6
6
  tslib_1.__exportStar(require("./lib/data-monitoring"), exports);
7
+ tslib_1.__exportStar(require("./lib/device"), exports);
7
8
  tslib_1.__exportStar(require("./lib/device-log-line"), exports);
8
9
  tslib_1.__exportStar(require("./lib/device-parameter"), exports);
9
- tslib_1.__exportStar(require("./lib/device"), exports);
10
+ tslib_1.__exportStar(require("./lib/encoder"), exports);
10
11
  tslib_1.__exportStar(require("./lib/hardware-description"), exports);
11
12
  tslib_1.__exportStar(require("./lib/integro-encoder-calibration"), exports);
12
13
  tslib_1.__exportStar(require("./lib/monitoring-config"), exports);
@@ -24,8 +25,8 @@ tslib_1.__exportStar(require("./lib/operators"), exports);
24
25
  tslib_1.__exportStar(require("./lib/options"), exports);
25
26
  tslib_1.__exportStar(require("./lib/os-command"), exports);
26
27
  tslib_1.__exportStar(require("./lib/parameter"), exports);
28
+ tslib_1.__exportStar(require("./lib/product"), exports);
27
29
  tslib_1.__exportStar(require("./lib/request-status-resolver"), exports);
28
- tslib_1.__exportStar(require("./lib/somanet-product"), exports);
29
30
  tslib_1.__exportStar(require("./lib/system-log-line"), exports);
30
31
  tslib_1.__exportStar(require("./lib/types"), exports);
31
32
  tslib_1.__exportStar(require("./lib/urls"), exports);
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/motion-master-client/src/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B;AAC7B,4DAAkC;AAClC,gEAAsC;AACtC,gEAAsC;AACtC,iEAAuC;AACvC,uDAA6B;AAC7B,qEAA2C;AAC3C,4EAAkD;AAClD,kEAAwC;AACxC,iEAAuC;AACvC,qEAA2C;AAC3C,6EAAmD;AACnD,6EAAmD;AACnD,iFAAuD;AACvD,oFAA0D;AAC1D,6EAAmD;AACnD,6EAAmD;AACnD,iFAAuD;AACvD,oFAA0D;AAC1D,0DAAgC;AAChC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wEAA8C;AAC9C,gEAAsC;AACtC,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,qDAA2B;AAC3B,kFAAwD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/motion-master-client/src/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B;AAC7B,4DAAkC;AAClC,gEAAsC;AACtC,uDAA6B;AAC7B,gEAAsC;AACtC,iEAAuC;AACvC,wDAA8B;AAC9B,qEAA2C;AAC3C,4EAAkD;AAClD,kEAAwC;AACxC,iEAAuC;AACvC,qEAA2C;AAC3C,6EAAmD;AACnD,6EAAmD;AACnD,iFAAuD;AACvD,oFAA0D;AAC1D,6EAAmD;AACnD,6EAAmD;AACnD,iFAAuD;AACvD,oFAA0D;AAC1D,0DAAgC;AAChC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,wEAA8C;AAC9C,gEAAsC;AACtC,sDAA4B;AAC5B,qDAA2B;AAC3B,qDAA2B;AAC3B,kFAAwD"}
@@ -0,0 +1,28 @@
1
+ export declare enum EncoderRegisterAddress {
2
+ STATUS0 = 118,
3
+ STATUS1 = 119,
4
+ OUT_ZERO_OUT_MSB = 17
5
+ }
6
+ export interface EncoderRegisterError {
7
+ name: string;
8
+ error: string;
9
+ description: string;
10
+ remedy: string;
11
+ fullDescription: string;
12
+ }
13
+ export declare const encoderRegisterErrors: {
14
+ [key: number]: EncoderRegisterError;
15
+ }[];
16
+ export declare function mapEncoderRegisterValueToErrors(registerValue: number, statusIndex: 0 | 1): EncoderRegisterError[];
17
+ export interface CirculoEncoderBatteryMode {
18
+ maxAcceleration: number;
19
+ maxCurrent: number;
20
+ value: number;
21
+ }
22
+ export declare const circuloEncoderBatteryModeMap: Map<"Node 400" | "Node 1000" | "Node 2000" | "Circulo 7" | "Circulo 9" | "Integro 60" | "Integro 80", CirculoEncoderBatteryMode[]>;
23
+ export type EncoderShaft = 'motor' | 'driving';
24
+ export declare function getCirculoEncoderBatteryModeOptions(productId: string | number, shaft?: EncoderShaft): {
25
+ key: string;
26
+ value: number;
27
+ }[];
28
+ export declare function getCirculoEncoderBatteryModeDefaultValue(shaft?: 'motor' | 'driving'): 0 | 93 | 104;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapEncoderRegisterValueToErrors = exports.encoderRegisterErrors = exports.EncoderRegisterAddress = void 0;
3
+ exports.getCirculoEncoderBatteryModeDefaultValue = exports.getCirculoEncoderBatteryModeOptions = exports.circuloEncoderBatteryModeMap = exports.mapEncoderRegisterValueToErrors = exports.encoderRegisterErrors = exports.EncoderRegisterAddress = void 0;
4
+ const product_1 = require("./product");
4
5
  var EncoderRegisterAddress;
5
6
  (function (EncoderRegisterAddress) {
6
7
  EncoderRegisterAddress[EncoderRegisterAddress["STATUS0"] = 118] = "STATUS0";
@@ -114,4 +115,47 @@ function mapEncoderRegisterValueToErrors(registerValue, statusIndex) {
114
115
  return errors;
115
116
  }
116
117
  exports.mapEncoderRegisterValueToErrors = mapEncoderRegisterValueToErrors;
117
- //# sourceMappingURL=encoder-register.js.map
118
+ exports.circuloEncoderBatteryModeMap = new Map([
119
+ ['Circulo 7', [
120
+ { maxAcceleration: 3.5, maxCurrent: 6, value: 0x60 },
121
+ { maxAcceleration: 14, maxCurrent: 10, value: 0x58 },
122
+ { maxAcceleration: 56, maxCurrent: 18, value: 0x50 },
123
+ { maxAcceleration: 226, maxCurrent: 36, value: 0x48 },
124
+ { maxAcceleration: 895, maxCurrent: 72, value: 0x40 },
125
+ ]],
126
+ ['Circulo 9', [
127
+ { maxAcceleration: 1.7, maxCurrent: 6, value: 0x60 },
128
+ { maxAcceleration: 7, maxCurrent: 10, value: 0x58 },
129
+ { maxAcceleration: 28, maxCurrent: 18, value: 0x50 },
130
+ { maxAcceleration: 113, maxCurrent: 36, value: 0x48 },
131
+ { maxAcceleration: 447, maxCurrent: 72, value: 0x40 },
132
+ ]],
133
+ ]);
134
+ function getCirculoEncoderBatteryModeOptions(productId, shaft) {
135
+ const product = (0, product_1.findSomanetProductById)(productId);
136
+ if ((product === null || product === void 0 ? void 0 : product.family) === 'Circulo') {
137
+ const arr = exports.circuloEncoderBatteryModeMap.get(product.group);
138
+ if (arr) {
139
+ const defaultValue = getCirculoEncoderBatteryModeDefaultValue(shaft);
140
+ return [
141
+ { key: 'Default', value: defaultValue },
142
+ ...arr.map(({ maxAcceleration, maxCurrent, value }) => ({ key: `${maxAcceleration} kRPM/s | ${maxCurrent} μA`, value })),
143
+ ];
144
+ }
145
+ }
146
+ return [];
147
+ }
148
+ exports.getCirculoEncoderBatteryModeOptions = getCirculoEncoderBatteryModeOptions;
149
+ function getCirculoEncoderBatteryModeDefaultValue(shaft) {
150
+ if (shaft === 'motor') {
151
+ return 0x5D;
152
+ }
153
+ else if (shaft === 'driving') {
154
+ return 0x68;
155
+ }
156
+ else {
157
+ return 0x00;
158
+ }
159
+ }
160
+ exports.getCirculoEncoderBatteryModeDefaultValue = getCirculoEncoderBatteryModeDefaultValue;
161
+ //# sourceMappingURL=encoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/encoder.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ const device_1 = require("./device");
7
7
  const cia402_1 = require("./cia402");
8
8
  const os_command_1 = require("./os-command");
9
9
  const util_1 = require("./util");
10
- const somanet_product_1 = require("./somanet-product");
10
+ const product_1 = require("./product");
11
11
  class IntegroEncoderCalibration {
12
12
  constructor(client, deviceRef) {
13
13
  this.client = client;
@@ -37,6 +37,8 @@ class IntegroEncoderCalibration {
37
37
  // Tuning of the control loop should be done by the user.
38
38
  this.notifications$.next(`Validating the device (${deviceRef}) before starting the Integro encoder calibration.`);
39
39
  yield this.validateDevice();
40
+ this.notifications$.next(`Setting the integrated encoder sampling frequency to 16 kHz (0x2110:28 = 1).`);
41
+ yield this.client.request.download(this.deviceRef, 0x2110, 28, 1);
40
42
  this.notifications$.next('Switching the source of the velocity to the value provided by the encoder.');
41
43
  yield (0, rxjs_1.lastValueFrom)(this.client.request.runUseInternalEncoderVelocityOsCommand(deviceRef, 1, 10000, 1000, false));
42
44
  // Trigger the POA automatic calibration with an OS command.
@@ -108,17 +110,17 @@ class IntegroEncoderCalibration {
108
110
  yield this.writeEncoderRegisterValueAndValidateResponse(0x25, 0x01);
109
111
  this.notifications$.next('Saving the correction table by writing 0x00D0 to the encoder register 0x50.');
110
112
  yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00D0, 2);
113
+ this.notifications$.next(`Setting the integrated encoder sampling frequency back to 32 kHz (0x2110:28 = 2).`);
114
+ yield this.client.request.download(this.deviceRef, 0x2110, 28, 2);
111
115
  this.notifications$.next('Requesting Quick stop from device.');
112
116
  yield this.client.request.quickStop(deviceRef);
113
- this.notifications$.next('Switching the source of the velocity to the value calculated by the firmware.');
114
- yield (0, rxjs_1.lastValueFrom)(this.client.request.runUseInternalEncoderVelocityOsCommand(deviceRef, 0, 10000, 1000, false));
115
117
  });
116
118
  }
117
119
  /**
118
120
  * Validate device.
119
121
  */
120
122
  validateDevice() {
121
- var _a, _b;
123
+ var _a, _b, _c;
122
124
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
123
125
  const device = yield (0, rxjs_1.lastValueFrom)(this.client.request.resolveDevice(this.deviceRef));
124
126
  // The device must exist.
@@ -126,7 +128,8 @@ class IntegroEncoderCalibration {
126
128
  throw new Error('No device was found when starting the Integro encoder calibration.');
127
129
  }
128
130
  // The device must be Integro.
129
- if (!(0, somanet_product_1.isProductIdOfType)((_b = (_a = device.hardwareDescription) === null || _a === void 0 ? void 0 : _a.device) === null || _b === void 0 ? void 0 : _b.id, 'Integro')) {
131
+ const productId = (_b = (_a = device.hardwareDescription) === null || _a === void 0 ? void 0 : _a.device) === null || _b === void 0 ? void 0 : _b.id;
132
+ if (((_c = (0, product_1.findSomanetProductById)(productId)) === null || _c === void 0 ? void 0 : _c.family) !== 'Integro') {
130
133
  throw new Error('The device must be an Integro for the encoder calibration.');
131
134
  }
132
135
  const deviceRef = this.deviceRef;
@@ -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":";;;;AAAA,+BAAwE;AAExE,qCAAwG;AAExG,qCAAyD;AACzD,6CAAiE;AACjE,iCAAsC;AACtC,uCAAmD;AAQnD,MAAa,yBAAyB;IAsBpC,YACU,MAA0B,EAClB,SAAoB;QAD5B,WAAM,GAAN,MAAM,CAAoB;QAClB,cAAS,GAAT,SAAS,CAAW;QAtBtB,mBAAc,GAAG,IAAI,cAAO,EAAU,CAAC;QAEtC,kCAA6B,GAAoB;YAChE,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;QAEe,yCAAoC,GAAoB;YACvE,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;QAEe,yCAAoC,GAAoB;YACvE,MAAM,EAAE,CAAC,IAAI;YACb,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;IAKE,CAAC;IAEC,KAAK,CAAC,KAAK,GAAG,KAAK;;;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEjC,yJAAyJ;YACzJ,yDAAyD;YACzD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,SAAS,oDAAoD,CAAC,CAAC;YAClH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;YACzG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAElE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YACvG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,sCAAsC,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAElH,4DAA4D;YAC5D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAC1G,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,6EAA6E;YAC7E,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;YAErE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAA;YACpI,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,yBAAgB,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAChH,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE,oBAAW,CAAC,iBAAiB,CAAC,CAAC;YAE5F,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+FAA+F,CAAC,CAAC;YAE1H,0GAA0G;YAC1G,IAAI,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACzC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAC/H,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,MAAK,IAAI,EAAE,IAAI,CAAC,CACtF,CAAC,CACH,CAAC;YAEF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAAiC,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAEzG,IAAI,iBAAiB,CAAC,mBAAmB,KAAK,IAAI,EAAE;gBAClD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sHAAsH,CAAC,CAAC;gBACjJ,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACrE;YAED,yBAAyB;YAEzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;YAChH,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAEpF,oDAAoD;YAEpD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;YAEtE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,0JAA0J;YAC1J,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACrC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAC/H,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE;;gBAC5B,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mDAAmD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAClJ;gBACD,OAAO,CAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,IAAG,WAAW,CAAC,KAAK,IAAI,CAAC;YACzE,CAAC,EAAE,IAAI,CAAC,CACT,CAAC,CACH,CAAC;YAEF,IAAI,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,iBAAiB,CAAC,SAAS,KAAK,iBAAiB,CAAC,SAAS,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC/K;iBAAM,IAAI,iBAAiB,CAAC,OAAO,KAAK,WAAW,EAAE;gBACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oDAAoD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;aACnJ;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YAE9D,kCAAkC;YAElC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;YAEtE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,0JAA0J;YAC1J,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACrC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAC/H,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE;;gBAC5B,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mDAAmD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAClJ;gBACD,OAAO,CAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,IAAG,WAAW,CAAC,KAAK,IAAI,CAAC;YACzE,CAAC,EAAE,IAAI,CAAC,CACT,CAAC,CACH,CAAC;YAEF,IAAI,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,iBAAiB,CAAC,SAAS,KAAK,iBAAiB,CAAC,SAAS,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC/K;iBAAM,IAAI,iBAAiB,CAAC,OAAO,KAAK,WAAW,EAAE;gBACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oDAAoD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;aACnJ;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;YAC1F,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YACxG,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAC;YAC9G,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAElE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;;KAChD;IAED;;OAEG;IACG,cAAc;;;YAClB,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAEtF,yBAAyB;YACzB,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;aACvF;YAED,8BAA8B;YAC9B,MAAM,SAAS,GAAG,MAAA,MAAA,MAAM,CAAC,mBAAmB,0CAAE,MAAM,0CAAE,EAAE,CAAC;YACzD,IAAI,CAAA,MAAA,IAAA,gCAAsB,EAAC,SAAS,CAAC,0CAAE,MAAM,MAAK,SAAS,EAAE;gBAC3D,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;aAC/E;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEjC,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;aAC9F;YAED,gGAAgG;YAChG,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/F,IAAI,+BAA+B,KAAK,CAAC,EAAE;gBACzC,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBACzF,IAAI,yBAAyB,KAAK,CAAC,EAAE;oBACnC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;iBAChH;aACF;iBAAM;gBACL,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/F,IAAI,+BAA+B,KAAK,CAAC,EAAE;oBACzC,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;oBACzF,IAAI,yBAAyB,KAAK,CAAC,EAAE;wBACnC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;qBAChH;iBACF;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;iBACpE;aACF;YAED,yDAAyD;YACzD,MAAM,6BAA6B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9F,IAAI,6BAA6B,KAAK,CAAC,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;aACzF;YAED,sDAAsD;YACtD,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/F,IAAI,+BAA+B,KAAK,CAAC,EAAE;gBACzC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;aACtF;YAED,sCAAsC;YACtC,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACtF,IAAI,sBAAsB,KAAK,CAAC,EAAE;gBAChC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;aAChH;YAED,yCAAyC;YACzC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACpF,IAAI,oBAAoB,IAAI,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;aACvG;;KACF;IAED;;OAEG;IACG,kBAAkB,CAAC,eAAgC,EAAE,oBAAoB,GAAG,CAAC;;YACjF,MAAM,EAAE,qBAAyB,eAAe,CAAE,CAAC,CAAC,cAAc;YAElE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAClF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACnF,MAAM,YAAY,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAE9F,uEAAuE;YACvE,8IAA8I;YAC9I,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,aAAa,EAAE;gBACvC,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,EAAE,CAAC,MAAM,GAAG,GAAG,GAAG,aAAa,GAAG,IAAI,CAAC;gBACvC,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC;gBAC7D,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC;aAC9D;YAED,oGAAoG;YACpG,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAsC,EAAE;gBAChF,EAAE,CAAC,GAAG,CAAC,GAAG,IAAA,2CAAkC,EAAC,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBAChF,EAAE,CAAC,GAAG,CAAC,GAAG,IAAA,iDAAwC,EAAC,EAAE,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;aACvF;YAED,gFAAgF;YAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,MAAM,gEAAgE,EAAE,CAAC,YAAY,QAAQ,EAAE,CAAC,YAAY,iBAAiB,CAAC,CAAC;YAC/L,MAAM,IAAA,oBAAa,EACjB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACrC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;gBAC5C,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;gBAC5C,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,0BAA0B;aACnE,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAED;;OAEG;IACG,4CAA4C,CAAC,OAAe,EAAE,KAAa,EAAE,SAAiB,CAAC;;YACnG,IAAI,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACzC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAClI,CAAC;YAEF,IAAI,iBAAiB,CAAC,mBAAmB,KAAK,KAAK,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,eAAe,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;aACnH;QACH,CAAC;KAAA;CAEF;AA/QD,8DA+QC"}
@@ -1,19 +1,33 @@
1
- export type SomanetProductTypeName = 'Circulo' | 'Circulo Safe Motion' | 'Integro' | 'Node' | 'Node Safety' | 'Internal';
2
- export type SomanetProductTypeNameAll = SomanetProductTypeName | 'Circulo All' | 'Node All';
1
+ export declare const productCategories: readonly ["SOMANET", "ACTILINK", "OBLAC", "MOTORCORTEX"];
2
+ export type ProductCategory = typeof productCategories[number];
3
+ export declare const productFamilies: readonly ["Node", "Circulo", "Integro", "Core"];
4
+ export type ProductFamily = typeof productFamilies[number];
5
+ export declare const productGroups: readonly ["Node 400", "Node 1000", "Node 2000", "Circulo 7", "Circulo 9", "Integro 60", "Integro 80"];
6
+ export type ProductGroup = typeof productGroups[number];
7
+ export declare const somanetProductRangeNames: readonly ["Circulo", "Circulo Safe Motion", "Integro", "Node", "Node Safety", "Internal"];
8
+ export type SomanetProductRangeName = typeof somanetProductRangeNames[number];
9
+ export type SomanetProductRangeNameAll = SomanetProductRangeName | 'Circulo All' | 'Node All';
3
10
  export interface SomanetProduct {
11
+ category: ProductCategory;
12
+ family: ProductFamily;
13
+ group: ProductGroup;
4
14
  id: number;
5
15
  mpns?: string[];
6
16
  name: string;
7
17
  }
8
- export interface SomanetProductType {
9
- name: SomanetProductTypeName;
10
- productIdRange: [number, number];
11
- products: SomanetProduct[];
18
+ export declare const somanetProducts: SomanetProduct[];
19
+ export interface SomanetProductRange {
20
+ name: SomanetProductRangeName;
21
+ bounds: [number, number];
12
22
  }
13
- export declare const somanetProductTypes: SomanetProductType[];
14
- export declare function findSomanetProductTypeByProductId(productId?: string | number | null): SomanetProductType | undefined;
23
+ export declare const somanetProductRanges: SomanetProductRange[];
24
+ export declare function findSomanetProductRangeByProductId(productId?: string | number | null): SomanetProductRange | undefined;
15
25
  export declare function findSomanetProductById(productId?: string | number | null): SomanetProduct | undefined;
16
- export declare function isProductIdOfType(productId?: string | number | null, type?: SomanetProductTypeNameAll): boolean;
26
+ /**
27
+ * @deprecated use isSomanetProductIdInRange instead
28
+ */
29
+ export declare function isProductIdOfType(productId?: string | number | null, type?: SomanetProductRangeNameAll): boolean;
30
+ export declare function isSomanetProductIdInRange(productId?: string | number | null, rangeName?: SomanetProductRangeNameAll): boolean;
17
31
  export type SomanetCirculoVariantId = 'ECDN_E1' | 'ECAN' | 'ECBN' | 'ECNN' | 'ECDL' | 'ECDB_E1';
18
32
  export interface SomanetCirculoVariant {
19
33
  id: SomanetCirculoVariantId;
@@ -0,0 +1,228 @@
1
+ "use strict";
2
+ // Based on the following documents:
3
+ // - Product/FW ID Ranges
4
+ // - Synapticon Product Naming Conventions 2024
5
+ // - Synapticon's Manufacturer Part Number (MPN)
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.getNumberOfEncoderPortsByProductId = exports.getEncoderPortName = exports.isInternalEncoderPortUsable = exports.isEncoderPortUsable = exports.isEncoderPortInternal = exports.somanetCirculoVariants = exports.usableCirculoEncoderPortProductIds = exports.ECDB_E1_IDS = exports.ECDL_IDS = exports.ECNN_IDS = exports.ECBN_IDS = exports.ECAN_IDS = exports.ECDN_E1_IDS = exports.isSomanetProductIdInRange = exports.isProductIdOfType = exports.findSomanetProductById = exports.findSomanetProductRangeByProductId = exports.somanetProductRanges = exports.somanetProducts = exports.somanetProductRangeNames = exports.productGroups = exports.productFamilies = exports.productCategories = void 0;
8
+ exports.productCategories = ['SOMANET', 'ACTILINK', 'OBLAC', 'MOTORCORTEX'];
9
+ exports.productFamilies = ['Node', 'Circulo', 'Integro', 'Core'];
10
+ exports.productGroups = ['Node 400', 'Node 1000', 'Node 2000', 'Circulo 7', 'Circulo 9', 'Integro 60', 'Integro 80'];
11
+ exports.somanetProductRangeNames = ['Circulo', 'Circulo Safe Motion', 'Integro', 'Node', 'Node Safety', 'Internal'];
12
+ ;
13
+ exports.somanetProducts = [
14
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9500, name: 'Node 1000 EtherCAT' },
15
+ { category: 'SOMANET', family: 'Node', group: 'Node 400', id: 9501, name: 'Node 400 EtherCAT' },
16
+ { category: 'SOMANET', family: 'Node', group: 'Node 2000', id: 9502, name: 'Node 2000 EtherCAT' },
17
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9503, name: 'Node 1000 EtherNET' },
18
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9600, name: 'Node Safety 1000 EtherCAT' },
19
+ { category: 'SOMANET', family: 'Node', group: 'Node 400', id: 9601, name: 'Node Safety 400 EtherCAT' },
20
+ { category: 'SOMANET', family: 'Node', group: 'Node 2000', id: 9602, name: 'Node Safety 2000 EtherCAT' },
21
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9606, name: 'Node Safety 1000 CAN' },
22
+ { category: 'SOMANET', family: 'Node', group: 'Node 400', id: 9607, name: 'Node Safety 400 CAN' },
23
+ { category: 'SOMANET', family: 'Node', group: 'Node 2000', id: 9608, name: 'Node Safety 2000 CAN' },
24
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9609, name: 'Node Safety 1000 EtherCAT (Heidrive, size 60)' },
25
+ { category: 'SOMANET', family: 'Node', group: 'Node 2000', id: 9611, name: 'Node Safety 2000 EtherCAT (Heidrive, size 60)' },
26
+ { category: 'SOMANET', family: 'Node', group: 'Node 1000', id: 9612, name: 'Node Safety 1000 CAN (Heidrive, size 60)' },
27
+ { category: 'SOMANET', family: 'Node', group: 'Node 2000', id: 9614, name: 'Node Safety 2000 CAN (Heidrive, size 60)' },
28
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8500, mpns: ['ECNN'], name: 'Circulo 7 - 700' },
29
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8501, mpns: ['ECNN'], name: 'Circulo 9 - 1800' },
30
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8502, mpns: ['ECDN-E1'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with port 2 transceivers' },
31
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8503, mpns: ['ECDN-E1'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers' },
32
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8504, mpns: ['ECAN'], name: 'Circulo 7 - 700, Magnetic Ring (pos.1)' },
33
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8505, mpns: ['ECAN'], name: 'Circulo 9 - 1800, Magnetic Ring (pos.1)' },
34
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8506, mpns: ['ECBN'], name: 'Circulo 7 - 700, Magnetic Ring (pos.2)' },
35
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8507, mpns: ['ECBN'], name: 'Circulo 9 - 1800, Magnetic Ring (pos.2)' },
36
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8508, mpns: ['ECDN-E2 (patched)', 'ECDB-E1'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
37
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8509, mpns: ['ECDN-E2 (patched)', 'ECDB-E1'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
38
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8510, mpns: [], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with single brake' },
39
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8511, mpns: [], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with single brake' },
40
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8512, mpns: ['ECDN', 'ECDL'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), no external encoders' },
41
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8513, mpns: ['ECDN', 'ECDL'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), no external encoders' },
42
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8600, mpns: ['ECNNSM'], name: 'Circulo 7 Safe Motion - 700, Safe Motion' },
43
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8601, mpns: ['ECNNSM'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion' },
44
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8602, mpns: ['ECDNSM-E1'], name: 'Circulo 7 Safe Motion - 700, Safe Motion, Magnetic Rings (pos.1&2), with port 2 transceivers' },
45
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8603, mpns: ['ECDNSM-E1'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion, Magnetic Rings (pos.1&2), with port 2 transceivers' },
46
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8604, mpns: ['ECANSM'], name: 'Circulo 7 Safe Motion - 700, Safe Motion, Magnetic Ring (pos.1)' },
47
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8605, mpns: ['ECANSM'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion, Magnetic Ring (pos.1)' },
48
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8606, mpns: ['ECBNSM'], name: 'Circulo 7 Safe Motion - 700, Magnetic Ring (pos.2)' },
49
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8607, mpns: ['ECBNSM'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Ring (pos.2)' },
50
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8608, mpns: ['ECDBSM-E1'], name: 'Circulo 7 Safe Motion - 700, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
51
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8609, mpns: ['ECDBSM-E1'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
52
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8610, mpns: [], name: '' },
53
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8611, mpns: [], name: '' },
54
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 7', id: 8612, mpns: ['ECDNSM', 'ECDLSM'], name: 'Circulo 7 Safe Motion - 700, Magnetic Rings (pos.1&2), no external encoders' },
55
+ { category: 'SOMANET', family: 'Circulo', group: 'Circulo 9', id: 8613, mpns: ['ECDNSM', 'ECDLSM'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Rings (pos.1&2), no external encoders' },
56
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 60', id: 9000, name: 'Integro-60 R1.0' },
57
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 80', id: 9001, name: 'Integro-80 R1.0' },
58
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 60', id: 9002, name: 'Integro-60 R1.5 (600 W, EtherCAT, STO, 18 bit + MT + IOs)' },
59
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 80', id: 9003, name: 'Integro-80 R1.5 (1200 W, EtherCAT, STO, 18 bit + MT + IOs)' },
60
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 60', id: 9004, name: 'Integro-60 R1.5 (600 W, Ethernet/IP, STO, 18 bit + MT + IOs)' },
61
+ { category: 'SOMANET', family: 'Integro', group: 'Integro 80', id: 9005, name: 'Integro-80 R1.5 (1200 W, Ethernet/IP, STO, 18 bit + MT + IOs)' },
62
+ ];
63
+ ;
64
+ exports.somanetProductRanges = [
65
+ { name: 'Node', bounds: [9500, 9599] },
66
+ { name: 'Node Safety', bounds: [9600, 9998] },
67
+ { name: 'Circulo', bounds: [8500, 8599] },
68
+ { name: 'Circulo Safe Motion', bounds: [8600, 8699] },
69
+ { name: 'Integro', bounds: [9000, 9499] },
70
+ ];
71
+ function findSomanetProductRangeByProductId(productId) {
72
+ const id = resolveProductId(productId);
73
+ if (!id) {
74
+ return;
75
+ }
76
+ return exports.somanetProductRanges.find(({ bounds }) => id >= bounds[0] && id <= bounds[1]);
77
+ }
78
+ exports.findSomanetProductRangeByProductId = findSomanetProductRangeByProductId;
79
+ function findSomanetProductById(productId) {
80
+ const id = resolveProductId(productId);
81
+ return exports.somanetProducts.find((somanetProduct) => somanetProduct.id === id);
82
+ }
83
+ exports.findSomanetProductById = findSomanetProductById;
84
+ /**
85
+ * @deprecated use isSomanetProductIdInRange instead
86
+ */
87
+ function isProductIdOfType(productId, type) {
88
+ return isSomanetProductIdInRange(productId, type);
89
+ }
90
+ exports.isProductIdOfType = isProductIdOfType;
91
+ function isSomanetProductIdInRange(productId, rangeName) {
92
+ const productRange = findSomanetProductRangeByProductId(productId);
93
+ if (!productRange) {
94
+ return false;
95
+ }
96
+ if (rangeName === 'Circulo All') {
97
+ return productRange.name === 'Circulo' || productRange.name === 'Circulo Safe Motion';
98
+ }
99
+ else if (rangeName === 'Node All') {
100
+ return productRange.name === 'Node' || productRange.name === 'Node Safety';
101
+ }
102
+ else {
103
+ return productRange.name === rangeName;
104
+ }
105
+ }
106
+ exports.isSomanetProductIdInRange = isSomanetProductIdInRange;
107
+ exports.ECDN_E1_IDS = [8502, 8503, 8602, 8603];
108
+ exports.ECAN_IDS = [8504, 8505, 8604, 8605];
109
+ exports.ECBN_IDS = [8506, 8507, 8606, 8607];
110
+ exports.ECNN_IDS = [8500, 8501, 8600, 8601];
111
+ exports.ECDL_IDS = [8512, 8513, 8612, 8613];
112
+ exports.ECDB_E1_IDS = [8508, 8509, 8608, 8609];
113
+ exports.usableCirculoEncoderPortProductIds = [
114
+ [...exports.ECDN_E1_IDS, ...exports.ECAN_IDS, ...exports.ECDL_IDS, ...exports.ECDB_E1_IDS],
115
+ [...exports.ECDN_E1_IDS, ...exports.ECBN_IDS, ...exports.ECDL_IDS, ...exports.ECDB_E1_IDS],
116
+ [...exports.ECDN_E1_IDS, ...exports.ECBN_IDS, ...exports.ECNN_IDS, ...exports.ECDB_E1_IDS],
117
+ [...exports.ECDN_E1_IDS, ...exports.ECAN_IDS, ...exports.ECNN_IDS, ...exports.ECDB_E1_IDS], // External 2
118
+ ];
119
+ exports.somanetCirculoVariants = [
120
+ { id: 'ECDN_E1', productIds: exports.ECDN_E1_IDS },
121
+ { id: 'ECAN', productIds: exports.ECAN_IDS },
122
+ { id: 'ECBN', productIds: exports.ECBN_IDS },
123
+ { id: 'ECNN', productIds: exports.ECNN_IDS },
124
+ { id: 'ECDL', productIds: exports.ECDL_IDS },
125
+ { id: 'ECDB_E1', productIds: exports.ECDB_E1_IDS },
126
+ ];
127
+ /**
128
+ * Whether the encoder port is internal or not depends on the port position and product ID.
129
+ *
130
+ * Circulo has internal encoders, specifically at port positions 1 and 2.
131
+ * Note that for Circulo variants that lack internal encoders on port positions 1 and 2, this function will return false.
132
+ *
133
+ * Integro will have an internal encoder only at port position 1.
134
+ */
135
+ function isEncoderPortInternal(port, productId) {
136
+ const id = resolveProductId(productId);
137
+ if (id) {
138
+ if (port === 1 && exports.ECAN_IDS.includes(id)) {
139
+ return true;
140
+ }
141
+ if (port === 2 && exports.ECBN_IDS.includes(id)) {
142
+ return true;
143
+ }
144
+ if (0 < port && port < 3 && [...exports.ECDN_E1_IDS, ...exports.ECDB_E1_IDS, ...exports.ECDL_IDS, 8510, 8511, 8610, 8611].includes(id)) {
145
+ return true;
146
+ }
147
+ }
148
+ return false;
149
+ }
150
+ exports.isEncoderPortInternal = isEncoderPortInternal;
151
+ /**
152
+ * Whether the encoder port is usable or not depends on the port position and product ID.
153
+ *
154
+ * Circulo has many variants, such as having an internal encoder on both ports 1 and 2, or only on port 1, or only on port 2,
155
+ * or having no internal encoders at all. If internal encoder port 1 is used, then external encoder port 1 cannot be used, and so on.
156
+ */
157
+ function isEncoderPortUsable(port, productId) {
158
+ const id = resolveProductId(productId);
159
+ if (!id) {
160
+ return true;
161
+ }
162
+ if (isSomanetProductIdInRange(id, 'Circulo All')) {
163
+ if (port === 5) { // Digital I/O
164
+ return true;
165
+ }
166
+ else if (0 < port && port < 5) {
167
+ return exports.usableCirculoEncoderPortProductIds[port - 1].includes(id);
168
+ }
169
+ }
170
+ return true;
171
+ }
172
+ exports.isEncoderPortUsable = isEncoderPortUsable;
173
+ /**
174
+ * This function only considers the internal encoder ports of Circulo and Integro, specifically ports at positions 1 and 2.
175
+ * It will return false for other port positions because they cannot serve as internal encoders.
176
+ * The usability of encoder ports depends on the Circulo variant.
177
+ */
178
+ function isInternalEncoderPortUsable(port, productId) {
179
+ if (isSomanetProductIdInRange(productId, 'Circulo All') && (port === 1 || port === 2)) {
180
+ return isEncoderPortUsable(port, productId);
181
+ }
182
+ else if (isSomanetProductIdInRange(productId, 'Integro') && port === 1) {
183
+ return true;
184
+ }
185
+ return false;
186
+ }
187
+ exports.isInternalEncoderPortUsable = isInternalEncoderPortUsable;
188
+ function getEncoderPortName(port, productId) {
189
+ if (isSomanetProductIdInRange(productId, 'Circulo All')) {
190
+ if (port === 1 || port === 2) {
191
+ return `Internal encoder ${port}`;
192
+ }
193
+ else if (port === 3 || port === 4) {
194
+ return `External encoder ${port - 2}`;
195
+ }
196
+ else if (port === 5) {
197
+ return 'Digital I/O';
198
+ }
199
+ }
200
+ return `Port ${port}`;
201
+ }
202
+ exports.getEncoderPortName = getEncoderPortName;
203
+ function resolveProductId(productId) {
204
+ if (productId === undefined || productId === null) {
205
+ return;
206
+ }
207
+ const id = typeof productId === 'number' ? productId : Number(productId.slice(0, 4));
208
+ if (isNaN(id)) {
209
+ return;
210
+ }
211
+ return id;
212
+ }
213
+ function getNumberOfEncoderPortsByProductId(productId) {
214
+ if (isSomanetProductIdInRange(productId, 'Circulo All')) {
215
+ return 5;
216
+ }
217
+ else if (isSomanetProductIdInRange(productId, 'Integro')) {
218
+ return 2;
219
+ }
220
+ else if (isSomanetProductIdInRange(productId, 'Node All')) {
221
+ return 3;
222
+ }
223
+ else {
224
+ return 0;
225
+ }
226
+ }
227
+ exports.getNumberOfEncoderPortsByProductId = getNumberOfEncoderPortsByProductId;
228
+ //# sourceMappingURL=product.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/product.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- export declare enum EncoderRegisterAddress {
2
- STATUS0 = 118,
3
- STATUS1 = 119,
4
- OUT_ZERO_OUT_MSB = 17
5
- }
6
- export interface EncoderRegisterError {
7
- name: string;
8
- error: string;
9
- description: string;
10
- remedy: string;
11
- fullDescription: string;
12
- }
13
- export declare const encoderRegisterErrors: {
14
- [key: number]: EncoderRegisterError;
15
- }[];
16
- export declare function mapEncoderRegisterValueToErrors(registerValue: number, statusIndex: 0 | 1): EncoderRegisterError[];
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoder-register.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/encoder-register.ts"],"names":[],"mappings":"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"}
@@ -1,246 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNumberOfEncoderPortsByProductId = exports.getEncoderPortName = exports.isInternalEncoderPortUsable = exports.isEncoderPortUsable = exports.isEncoderPortInternal = exports.somanetCirculoVariants = exports.usableCirculoEncoderPortProductIds = exports.ECDB_E1_IDS = exports.ECDL_IDS = exports.ECNN_IDS = exports.ECBN_IDS = exports.ECAN_IDS = exports.ECDN_E1_IDS = exports.isProductIdOfType = exports.findSomanetProductById = exports.findSomanetProductTypeByProductId = exports.somanetProductTypes = void 0;
4
- ;
5
- exports.somanetProductTypes = [
6
- {
7
- name: 'Circulo',
8
- productIdRange: [8500, 8599],
9
- products: [
10
- { id: 8500, mpns: ['ECNN'], name: 'Circulo 7 - 700' },
11
- { id: 8501, mpns: ['ECNN'], name: 'Circulo 9 - 1800' },
12
- { id: 8502, mpns: ['ECDN-E1'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with port 2 transceivers' },
13
- { id: 8503, mpns: ['ECDN-E1'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers' },
14
- { id: 8504, mpns: ['ECAN'], name: 'Circulo 7 - 700, Magnetic Ring (pos.1)' },
15
- { id: 8505, mpns: ['ECAN'], name: 'Circulo 9 - 1800, Magnetic Ring (pos.1)' },
16
- { id: 8506, mpns: ['ECBN'], name: 'Circulo 7 - 700, Magnetic Ring (pos.2)' },
17
- { id: 8507, mpns: ['ECBN'], name: 'Circulo 9 - 1800, Magnetic Ring (pos.2)' },
18
- { id: 8508, mpns: ['ECDN-E2 (patched)', 'ECDB-E1'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
19
- { id: 8509, mpns: ['ECDN-E2 (patched)', 'ECDB-E1'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
20
- { id: 8510, mpns: [], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), with single brake' },
21
- { id: 8511, mpns: [], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), with single brake' },
22
- { id: 8512, mpns: ['ECDN', 'ECDL'], name: 'Circulo 7 - 700, Magnetic Rings (pos.1&2), no external encoders' },
23
- { id: 8513, mpns: ['ECDN', 'ECDL'], name: 'Circulo 9 - 1800, Magnetic Rings (pos.1&2), no external encoders' },
24
- ],
25
- },
26
- {
27
- name: 'Circulo Safe Motion',
28
- productIdRange: [8600, 8699],
29
- products: [
30
- { id: 8600, mpns: ['ECNNSM'], name: 'Circulo 7 Safe Motion - 700, Safe Motion' },
31
- { id: 8601, mpns: ['ECNNSM'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion' },
32
- { id: 8602, mpns: ['ECDNSM-E1'], name: 'Circulo 7 Safe Motion - 700, Safe Motion, Magnetic Rings (pos.1&2), with port 2 transceivers' },
33
- { id: 8603, mpns: ['ECDNSM-E1'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion, Magnetic Rings (pos.1&2), with port 2 transceivers' },
34
- { id: 8604, mpns: ['ECANSM'], name: 'Circulo 7 Safe Motion - 700, Safe Motion, Magnetic Ring (pos.1)' },
35
- { id: 8605, mpns: ['ECANSM'], name: 'Circulo 9 Safe Motion - 1800, Safe Motion, Magnetic Ring (pos.1)' },
36
- { id: 8606, mpns: ['ECBNSM'], name: 'Circulo 7 Safe Motion - 700, Magnetic Ring (pos.2)' },
37
- { id: 8607, mpns: ['ECBNSM'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Ring (pos.2)' },
38
- { id: 8608, mpns: ['ECDBSM-E1'], name: 'Circulo 7 Safe Motion - 700, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
39
- { id: 8609, mpns: ['ECDBSM-E1'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Rings (pos.1&2), with port 2 transceivers, 3rd BiSS interface' },
40
- { id: 8610, mpns: [], name: '' },
41
- { id: 8611, mpns: [], name: '' },
42
- { id: 8612, mpns: ['ECDNSM', 'ECDLSM'], name: 'Circulo 7 Safe Motion - 700, Magnetic Rings (pos.1&2), no external encoders' },
43
- { id: 8613, mpns: ['ECDNSM', 'ECDLSM'], name: 'Circulo 9 Safe Motion - 1800, Magnetic Rings (pos.1&2), no external encoders' },
44
- ],
45
- },
46
- {
47
- name: 'Integro',
48
- productIdRange: [9000, 9499],
49
- products: [
50
- { id: 9000, name: 'Integro-60 R1.0' },
51
- { id: 9001, name: 'Integro-80 R1.0' },
52
- { id: 9002, name: 'Integro-60 R1.5 (600 W, EtherCAT, STO, 18 bit + MT + IOs)' },
53
- { id: 9003, name: 'Integro-80 R1.5 (1200 W, EtherCAT, STO, 18 bit + MT + IOs)' },
54
- { id: 9004, name: 'Integro-60 R1.5 (600 W, Ethernet/IP, STO, 18 bit + MT + IOs)' },
55
- { id: 9005, name: 'Integro-80 R1.5 (1200 W, Ethernet/IP, STO, 18 bit + MT + IOs)' },
56
- ],
57
- },
58
- {
59
- name: 'Node',
60
- productIdRange: [9500, 9599],
61
- products: [
62
- { id: 9500, name: 'Node 1000 EtherCAT' },
63
- { id: 9501, name: 'Node 400 EtherCAT' },
64
- { id: 9502, name: 'Node 2000 EtherCAT' },
65
- { id: 9503, name: 'Node 1000 EtherNET' },
66
- ],
67
- },
68
- {
69
- name: 'Node Safety',
70
- productIdRange: [9600, 9998],
71
- products: [
72
- { id: 9600, name: 'Node Safety 1000 EtherCAT' },
73
- { id: 9601, name: 'Node Safety 400 EtherCAT' },
74
- { id: 9602, name: 'Node Safety 2000 EtherCAT' },
75
- { id: 9606, name: 'Node Safety 1000 CAN' },
76
- { id: 9607, name: 'Node Safety 400 CAN' },
77
- { id: 9608, name: 'Node Safety 2000 CAN' },
78
- { id: 9609, name: 'Node Safety 1000 EtherCAT (Heidrive, size 60)' },
79
- { id: 9611, name: 'Node Safety 2000 EtherCAT (Heidrive, size 60)' },
80
- { id: 9612, name: 'Node Safety 1000 CAN (Heidrive, size 60)' },
81
- { id: 9614, name: 'Node Safety 2000 CAN (Heidrive, size 60)' },
82
- ],
83
- },
84
- {
85
- name: 'Internal',
86
- productIdRange: [9999, 9999],
87
- products: [
88
- { id: 9999, name: 'BLOCKED FOR INTERNAL SPECIAL DEVICES' },
89
- ],
90
- },
91
- ];
92
- function findSomanetProductTypeByProductId(productId) {
93
- const id = resolveProductId(productId);
94
- if (!id) {
95
- return;
96
- }
97
- return exports.somanetProductTypes.find((product) => id >= product.productIdRange[0] && id <= product.productIdRange[1]);
98
- }
99
- exports.findSomanetProductTypeByProductId = findSomanetProductTypeByProductId;
100
- function findSomanetProductById(productId) {
101
- const somanetProductType = findSomanetProductTypeByProductId(productId);
102
- if (somanetProductType) {
103
- const id = resolveProductId(productId);
104
- return somanetProductType.products.find(product => product.id === id);
105
- }
106
- return;
107
- }
108
- exports.findSomanetProductById = findSomanetProductById;
109
- function isProductIdOfType(productId, type) {
110
- const product = findSomanetProductTypeByProductId(productId);
111
- if (!product) {
112
- return false;
113
- }
114
- if (type === 'Circulo All') {
115
- return product.name === 'Circulo' || product.name === 'Circulo Safe Motion';
116
- }
117
- else if (type === 'Node All') {
118
- return product.name === 'Node' || product.name === 'Node Safety';
119
- }
120
- else {
121
- return product.name === type;
122
- }
123
- }
124
- exports.isProductIdOfType = isProductIdOfType;
125
- exports.ECDN_E1_IDS = [8502, 8503, 8602, 8603];
126
- exports.ECAN_IDS = [8504, 8505, 8604, 8605];
127
- exports.ECBN_IDS = [8506, 8507, 8606, 8607];
128
- exports.ECNN_IDS = [8500, 8501, 8600, 8601];
129
- exports.ECDL_IDS = [8512, 8513, 8612, 8613];
130
- exports.ECDB_E1_IDS = [8508, 8509, 8608, 8609];
131
- exports.usableCirculoEncoderPortProductIds = [
132
- [...exports.ECDN_E1_IDS, ...exports.ECAN_IDS, ...exports.ECDL_IDS, ...exports.ECDB_E1_IDS],
133
- [...exports.ECDN_E1_IDS, ...exports.ECBN_IDS, ...exports.ECDL_IDS, ...exports.ECDB_E1_IDS],
134
- [...exports.ECDN_E1_IDS, ...exports.ECBN_IDS, ...exports.ECNN_IDS, ...exports.ECDB_E1_IDS],
135
- [...exports.ECDN_E1_IDS, ...exports.ECAN_IDS, ...exports.ECNN_IDS, ...exports.ECDB_E1_IDS], // External 2
136
- ];
137
- exports.somanetCirculoVariants = [
138
- { id: 'ECDN_E1', productIds: exports.ECDN_E1_IDS },
139
- { id: 'ECAN', productIds: exports.ECAN_IDS },
140
- { id: 'ECBN', productIds: exports.ECBN_IDS },
141
- { id: 'ECNN', productIds: exports.ECNN_IDS },
142
- { id: 'ECDL', productIds: exports.ECDL_IDS },
143
- { id: 'ECDB_E1', productIds: exports.ECDB_E1_IDS },
144
- ];
145
- /**
146
- * Whether the encoder port is internal or not depends on the port position and product ID.
147
- *
148
- * Circulo has internal encoders, specifically at port positions 1 and 2.
149
- * Note that for Circulo variants that lack internal encoders on port positions 1 and 2, this function will return false.
150
- *
151
- * Integro will have an internal encoder only at port position 1.
152
- */
153
- function isEncoderPortInternal(port, productId) {
154
- const id = resolveProductId(productId);
155
- if (id) {
156
- if (port === 1 && exports.ECAN_IDS.includes(id)) {
157
- return true;
158
- }
159
- if (port === 2 && exports.ECBN_IDS.includes(id)) {
160
- return true;
161
- }
162
- if (0 < port && port < 3 && [...exports.ECDN_E1_IDS, ...exports.ECDB_E1_IDS, ...exports.ECDL_IDS, 8510, 8511, 8610, 8611].includes(id)) {
163
- return true;
164
- }
165
- }
166
- return false;
167
- }
168
- exports.isEncoderPortInternal = isEncoderPortInternal;
169
- /**
170
- * Whether the encoder port is usable or not depends on the port position and product ID.
171
- *
172
- * Circulo has many variants, such as having an internal encoder on both ports 1 and 2, or only on port 1, or only on port 2,
173
- * or having no internal encoders at all. If internal encoder port 1 is used, then external encoder port 1 cannot be used, and so on.
174
- */
175
- function isEncoderPortUsable(port, productId) {
176
- const id = resolveProductId(productId);
177
- if (!id) {
178
- return true;
179
- }
180
- if (isProductIdOfType(id, 'Circulo All')) {
181
- if (port === 5) { // Digital I/O
182
- return true;
183
- }
184
- else if (0 < port && port < 5) {
185
- return exports.usableCirculoEncoderPortProductIds[port - 1].includes(id);
186
- }
187
- }
188
- return true;
189
- }
190
- exports.isEncoderPortUsable = isEncoderPortUsable;
191
- /**
192
- * This function only considers the internal encoder ports of Circulo and Integro, specifically ports at positions 1 and 2.
193
- * It will return false for other port positions because they cannot serve as internal encoders.
194
- * The usability of encoder ports depends on the Circulo variant.
195
- */
196
- function isInternalEncoderPortUsable(port, productId) {
197
- if (isProductIdOfType(productId, 'Circulo All') && (port === 1 || port === 2)) {
198
- return isEncoderPortUsable(port, productId);
199
- }
200
- else if (isProductIdOfType(productId, 'Integro') && port === 1) {
201
- return true;
202
- }
203
- return false;
204
- }
205
- exports.isInternalEncoderPortUsable = isInternalEncoderPortUsable;
206
- function getEncoderPortName(port, productId) {
207
- if (isProductIdOfType(productId, 'Circulo All')) {
208
- if (port === 1 || port === 2) {
209
- return `Internal encoder ${port}`;
210
- }
211
- else if (port === 3 || port === 4) {
212
- return `External encoder ${port - 2}`;
213
- }
214
- else if (port === 5) {
215
- return 'Digital I/O';
216
- }
217
- }
218
- return `Port ${port}`;
219
- }
220
- exports.getEncoderPortName = getEncoderPortName;
221
- function resolveProductId(productId) {
222
- if (productId === undefined || productId === null) {
223
- return;
224
- }
225
- const id = typeof productId === 'number' ? productId : Number(productId.slice(0, 4));
226
- if (isNaN(id)) {
227
- return;
228
- }
229
- return id;
230
- }
231
- function getNumberOfEncoderPortsByProductId(productId) {
232
- if (isProductIdOfType(productId, 'Circulo All')) {
233
- return 5;
234
- }
235
- else if (isProductIdOfType(productId, 'Integro')) {
236
- return 2;
237
- }
238
- else if (isProductIdOfType(productId, 'Node All')) {
239
- return 3;
240
- }
241
- else {
242
- return 0;
243
- }
244
- }
245
- exports.getNumberOfEncoderPortsByProductId = getNumberOfEncoderPortsByProductId;
246
- //# sourceMappingURL=somanet-product.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"somanet-product.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/somanet-product.ts"],"names":[],"mappings":"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"}