motion-master-client 0.0.301 → 0.0.303

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.
@@ -1,225 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getEncoderConfigurationExceptionCase = exports.EncoderConfigurationException = void 0;
4
- const semver_1 = require("semver");
5
- const product_1 = require("./product");
6
- /** Encoder type: 1 */
7
- class Hall {
8
- /** Subindex: 3 */
9
- static getResolution(polePairs) {
10
- return 4096 * polePairs;
11
- }
12
- }
13
- /** Encoder type: 2 */
14
- class Incremental {
15
- /** Subindex: 4 */
16
- static getZeroVelocityThreshold(inputValue) {
17
- return Math.floor((inputValue * 100) / 6250) * 62.5;
18
- }
19
- /** Subindex: 23 */
20
- static hasSameHallSensorPort(sensorPort, HALLSensorPort) {
21
- // 'HALL sensor port cannot be the same as the device sensor port.'
22
- return sensorPort === HALLSensorPort;
23
- }
24
- /** Subindex: 23 */
25
- static supportsHallSensor(supportedEncoderTypes) {
26
- // HALL Sensor port cannot be set on encoder type which does not support it.
27
- return supportedEncoderTypes.includes(1);
28
- }
29
- }
30
- /** Encoder type: 3 */
31
- class NikonA {
32
- /** Subindex: 3 */
33
- static getResolution(singleTurnBits) {
34
- return 1 << singleTurnBits;
35
- }
36
- /** Subindex: 8 */
37
- static getClockFrequency(inputValue) {
38
- const clockFrequencies = [2500, 4000, 6670, 8000, 16000];
39
- return clockFrequencies.reduce((prev, curr) => Math.abs(curr - inputValue) < Math.abs(prev - inputValue) ? curr : prev);
40
- }
41
- /** Subindex: 10 */
42
- static getMultiturnBits(inputValue) {
43
- return inputValue > 0 ? 16 : 0;
44
- }
45
- /** Subindex: 12 */
46
- static getSingleturnBits(inputValue) {
47
- const bits = [17, 20, 22, 24];
48
- return bits.reduce((prev, curr) => (Math.abs(curr - inputValue) < Math.abs(prev - inputValue) ? curr : prev));
49
- }
50
- /** Subindex: 28 */
51
- static getSamplingFrequency() {
52
- return 1;
53
- }
54
- }
55
- /** Encoder type: 4 */
56
- class Biss {
57
- /** Subindex: 8 */
58
- static getClockFrequency(inputValue) {
59
- return Math.round(25000 / Math.max(Math.round(25000 / inputValue), 5));
60
- }
61
- }
62
- /** Encoder type: 6 */
63
- class Rem16Mt {
64
- /** Subindex: 3 */
65
- static getResolution(inputValue, firmwareVersion) {
66
- return (0, semver_1.satisfies)(`${firmwareVersion}.0`, '>=5.0 <5.2') ? 65536 : inputValue;
67
- }
68
- /** Subindex: 28 */
69
- static getSamplingFrequency(inputValue, firmwareVersion) {
70
- return (0, semver_1.satisfies)(`${firmwareVersion}.0`, '>=5.0 <5.2') ? 1 : inputValue;
71
- }
72
- }
73
- /** Encoder type: 7 */
74
- class Ssi {
75
- /** Subindex: 8 */
76
- static getClockFrequency(inputValue) {
77
- return Math.round(25000 / Math.max(Math.round(25000 / inputValue), 5));
78
- }
79
- }
80
- /** Encoder type: 9 */
81
- class SinCos {
82
- /** Subindex: 3 */
83
- static getResolution(sinewaveResolution, sinewaveCyclesPerRevolution) {
84
- return sinewaveResolution * sinewaveCyclesPerRevolution;
85
- }
86
- }
87
- class Case1 {
88
- /* Subindex: 3 */
89
- static getResolution(resolution, productGroup) {
90
- if (productGroup === 'Circulo 7') {
91
- return 524288;
92
- }
93
- if (productGroup === 'Circulo 9') {
94
- return 1048576;
95
- }
96
- return resolution;
97
- }
98
- /* Subindex: 8 (takes precedence over Case 2) */
99
- static getClockFrequency() {
100
- return 4167;
101
- }
102
- /* Subindex: 9 */
103
- static getFrameSize(singleturnBits, multiturnBits) {
104
- return singleturnBits + multiturnBits;
105
- }
106
- /* Subindex: 10 */
107
- static getMultiturnBits(multiturnBits, sensorPort) {
108
- if (sensorPort === 1 && multiturnBits !== 0) {
109
- return 18;
110
- }
111
- return multiturnBits;
112
- }
113
- /* Subindex: 11 */
114
- static getMultiturnFirstBitPosition() {
115
- return 0;
116
- }
117
- /* Subindex: 12 */
118
- static getSingleturnBits(singleturnBits, productGroup) {
119
- if (productGroup === 'Circulo 7') {
120
- return 19;
121
- }
122
- if (productGroup === 'Circulo 9') {
123
- return 20;
124
- }
125
- return singleturnBits;
126
- }
127
- /* Subindex: 13 */
128
- static getSingleturnFirstBitPosition(multiturnBits) {
129
- return multiturnBits;
130
- }
131
- /* Subindex: 14 */
132
- static getTimeout() {
133
- return 2;
134
- }
135
- /* Subindex: 15 */
136
- static getCrcPolynomial() {
137
- return 67;
138
- }
139
- /* Subindex: 16 */
140
- static getMaximumTBusy() {
141
- return 20;
142
- }
143
- /* Subindex: 28 */
144
- static getSamplingFrequency(multiturnBits) {
145
- return multiturnBits !== 0 ? 1 : 2;
146
- }
147
- }
148
- class Case2 {
149
- /* Subindex: 8 */
150
- static getClockFrequency(clockFrequency) {
151
- return Math.round(25000 / Math.max(Math.round(25000 / clockFrequency), 5));
152
- }
153
- /* Subindex: 28 (takes precedence over Case 1) */
154
- static getSamplingFrequency() {
155
- return 1;
156
- }
157
- }
158
- class Case3 {
159
- /* Subindex: 3 */
160
- static getResolution(integratedEncoderStBitsUsed) {
161
- return 1 << integratedEncoderStBitsUsed;
162
- }
163
- }
164
- /**
165
- * Modify the encoder configuration types subitem values based on the encoder type and firmware version.
166
- *
167
- * @example
168
- * * `When encoder type is SinCos (9), apply function 'getResolution' to its subindex 3 value.`
169
- * @link https://docs.google.com/spreadsheets/d/1tTGNMyg-40l4YxmDnXHrvVyIIyTcFc2ZauoABtgxPMA/edit?usp=sharing
170
- * @link https://docs.google.com/spreadsheets/d/1E0HTiZQtGmby2BJ9kOGV0UwD3HT6xQ7QRLjNbXpx5V0/edit?usp=sharing
171
- */
172
- class EncoderConfigurationException {
173
- }
174
- exports.EncoderConfigurationException = EncoderConfigurationException;
175
- EncoderConfigurationException.Hall = Hall;
176
- EncoderConfigurationException.Incremental = Incremental;
177
- EncoderConfigurationException.NikonA = NikonA;
178
- EncoderConfigurationException.BiSS = Biss;
179
- EncoderConfigurationException.Rem16MT = Rem16Mt;
180
- EncoderConfigurationException.Ssi = Ssi;
181
- EncoderConfigurationException.SinCos = SinCos;
182
- EncoderConfigurationException.Case1 = Case1;
183
- EncoderConfigurationException.Case2 = Case2;
184
- EncoderConfigurationException.Case3 = Case3;
185
- /**
186
- * Selects the encoder configuration exception case based on the encoder ordinal, type, and product ID
187
- *
188
- * @param productId - The product ID to check against.
189
- * @param encoderPort - The encoder port to check.
190
- * @param encoderType - The encoder type to check.
191
- * @param firmwareMajorMinorVersion - The firmware version in major.minor format.
192
- * @returns The selected exception case or undefined if no case matches.
193
- * @link https://docs.google.com/spreadsheets/d/1E0HTiZQtGmby2BJ9kOGV0UwD3HT6xQ7QRLjNbXpx5V0/edit?usp=sharing
194
- */
195
- function getEncoderConfigurationExceptionCase(productId, encoderPort, encoderType, firmwareMajorMinorVersion) {
196
- const firmwareVersion = `${firmwareMajorMinorVersion}.0`;
197
- // Case 1
198
- const case1EncoderTypes = (0, semver_1.satisfies)(firmwareVersion, '>=5.0 <5.1') ? [4] : [4, 5];
199
- if ((0, semver_1.satisfies)(firmwareVersion, '>=5.0') &&
200
- (0, product_1.isSomanetProductIdInRange)(productId, 'Circulo All') &&
201
- (0, product_1.isEncoderPortUsable)(encoderPort, productId) &&
202
- (0, product_1.isEncoderPortInternal)(encoderPort, productId) &&
203
- case1EncoderTypes.includes(encoderType)) {
204
- return 'case1';
205
- }
206
- // Case 2
207
- if ((0, semver_1.satisfies)(firmwareVersion, '>=5.1') &&
208
- (0, product_1.isSomanetProductIdInRange)(productId, 'Circulo Safe Motion') &&
209
- (0, product_1.isEncoderPortUsable)(encoderPort, productId) &&
210
- !(0, product_1.isEncoderPortInternal)(encoderPort, productId) &&
211
- encoderType === 4) {
212
- return 'case2';
213
- }
214
- // Case 3
215
- if ((0, semver_1.satisfies)(firmwareVersion, '>=5.2') &&
216
- (0, product_1.isSomanetProductIdInRange)(productId, 'Integro') &&
217
- (0, product_1.isEncoderPortUsable)(encoderPort, productId) &&
218
- (0, product_1.isEncoderPortInternal)(encoderPort, productId) &&
219
- encoderType === 5) {
220
- return 'case3';
221
- }
222
- return;
223
- }
224
- exports.getEncoderConfigurationExceptionCase = getEncoderConfigurationExceptionCase;
225
- //# sourceMappingURL=encoder-configuration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoder-configuration.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/encoder-configuration.ts"],"names":[],"mappings":"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"}