@zaber/motion 2.13.2 → 2.14.0

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.
Files changed (76) hide show
  1. package/dist/binding/wasm/zaber-motion-lib.wasm +0 -0
  2. package/dist/lib/ascii/all_axes.d.ts +5 -0
  3. package/dist/lib/ascii/all_axes.js +12 -0
  4. package/dist/lib/ascii/all_axes.js.map +1 -1
  5. package/dist/lib/ascii/axis.d.ts +5 -0
  6. package/dist/lib/ascii/axis.js +15 -3
  7. package/dist/lib/ascii/axis.js.map +1 -1
  8. package/dist/lib/ascii/axis_settings.d.ts +7 -0
  9. package/dist/lib/ascii/axis_settings.js +14 -0
  10. package/dist/lib/ascii/axis_settings.js.map +1 -1
  11. package/dist/lib/ascii/connection.js +1 -1
  12. package/dist/lib/ascii/connection.js.map +1 -1
  13. package/dist/lib/ascii/conversion_factor.d.ts +21 -0
  14. package/dist/lib/ascii/conversion_factor.js +46 -0
  15. package/dist/lib/ascii/conversion_factor.js.map +1 -0
  16. package/dist/lib/ascii/device.js +3 -3
  17. package/dist/lib/ascii/device.js.map +1 -1
  18. package/dist/lib/ascii/index.d.ts +2 -1
  19. package/dist/lib/ascii/index.js +5 -3
  20. package/dist/lib/ascii/index.js.map +1 -1
  21. package/dist/lib/ascii/lockstep.js +2 -2
  22. package/dist/lib/ascii/lockstep.js.map +1 -1
  23. package/dist/lib/ascii/oscilloscope_data.js +2 -2
  24. package/dist/lib/ascii/oscilloscope_data.js.map +1 -1
  25. package/dist/lib/ascii/servo_tuner.d.ts +2 -2
  26. package/dist/lib/ascii/servo_tuner.js +4 -4
  27. package/dist/lib/ascii/servo_tuner.js.map +1 -1
  28. package/dist/lib/ascii/setting_constants.d.ts +4 -0
  29. package/dist/lib/ascii/setting_constants.js +4 -0
  30. package/dist/lib/ascii/setting_constants.js.map +1 -1
  31. package/dist/lib/ascii/{simple_tuning_param.d.ts → simple_tuning_param_definition.d.ts} +3 -3
  32. package/dist/lib/ascii/simple_tuning_param_definition.js +20 -0
  33. package/dist/lib/ascii/simple_tuning_param_definition.js.map +1 -0
  34. package/dist/lib/ascii/storage.d.ts +10 -0
  35. package/dist/lib/ascii/storage.js +27 -4
  36. package/dist/lib/ascii/storage.js.map +1 -1
  37. package/dist/lib/ascii/stream.js +1 -1
  38. package/dist/lib/ascii/stream.js.map +1 -1
  39. package/dist/lib/ascii_ns.d.ts +4 -2
  40. package/dist/lib/ascii_ns.js +2 -1
  41. package/dist/lib/ascii_ns.js.map +1 -1
  42. package/dist/lib/binary/binary_settings.d.ts +2 -1
  43. package/dist/lib/binary/binary_settings.js +2 -1
  44. package/dist/lib/binary/binary_settings.js.map +1 -1
  45. package/dist/lib/binary/command_code.d.ts +2 -1
  46. package/dist/lib/binary/command_code.js +1 -0
  47. package/dist/lib/binary/command_code.js.map +1 -1
  48. package/dist/lib/binary/connection.js +1 -1
  49. package/dist/lib/binary/connection.js.map +1 -1
  50. package/dist/lib/binary/device.js +2 -2
  51. package/dist/lib/binary/device.js.map +1 -1
  52. package/dist/lib/binary/reply_code.d.ts +1 -0
  53. package/dist/lib/binary/reply_code.js +1 -0
  54. package/dist/lib/binary/reply_code.js.map +1 -1
  55. package/dist/lib/can_set_state_axis_response.d.ts +1 -1
  56. package/dist/lib/can_set_state_axis_response.js.map +1 -1
  57. package/dist/lib/can_set_state_device_response.d.ts +2 -2
  58. package/dist/lib/can_set_state_device_response.js +1 -1
  59. package/dist/lib/can_set_state_device_response.js.map +1 -1
  60. package/dist/lib/exceptions/device_db_failed_exception.d.ts +8 -1
  61. package/dist/lib/exceptions/device_db_failed_exception.js +16 -1
  62. package/dist/lib/exceptions/device_db_failed_exception.js.map +1 -1
  63. package/dist/lib/exceptions/device_db_failed_exception_data.d.ts +12 -0
  64. package/dist/lib/exceptions/device_db_failed_exception_data.js +17 -0
  65. package/dist/lib/exceptions/device_db_failed_exception_data.js.map +1 -0
  66. package/dist/lib/exceptions/index.d.ts +1 -0
  67. package/dist/lib/exceptions/index.js +4 -2
  68. package/dist/lib/exceptions/index.js.map +1 -1
  69. package/dist/lib/gateway/wasm-exec.js +58 -53
  70. package/dist/lib/gateway/wasm-exec.js.map +1 -1
  71. package/dist/lib/protobufs/main_pb.d.ts +102 -158
  72. package/dist/lib/protobufs/main_pb.js +738 -1179
  73. package/dist/lib/protobufs/main_pb.js.map +1 -1
  74. package/package.json +1 -1
  75. package/dist/lib/ascii/simple_tuning_param.js +0 -20
  76. package/dist/lib/ascii/simple_tuning_param.js.map +0 -1
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ // ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //
3
+ // ============= DO NOT EDIT DIRECTLY ============= //
4
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: function() { return m[k]; } };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }) : (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ o[k2] = m[k];
14
+ }));
15
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
16
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
17
+ }) : function(o, v) {
18
+ o["default"] = v;
19
+ });
20
+ var __importStar = (this && this.__importStar) || function (mod) {
21
+ if (mod && mod.__esModule) return mod;
22
+ var result = {};
23
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
24
+ __setModuleDefault(result, mod);
25
+ return result;
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.ConversionFactor = void 0;
29
+ const gateway = __importStar(require("../gateway"));
30
+ var ConversionFactor;
31
+ (function (ConversionFactor) {
32
+ ConversionFactor.__type = 'ConversionFactor';
33
+ /** @internal */
34
+ function toProtobuf(source) {
35
+ const pbData = new gateway.ConversionFactor();
36
+ if (source == null) {
37
+ return pbData;
38
+ }
39
+ pbData.setSetting(source.setting);
40
+ pbData.setValue(source.value);
41
+ pbData.setUnit(source.unit);
42
+ return pbData;
43
+ }
44
+ ConversionFactor.toProtobuf = toProtobuf;
45
+ })(ConversionFactor = exports.ConversionFactor || (exports.ConversionFactor = {}));
46
+ //# sourceMappingURL=conversion_factor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversion_factor.js","sourceRoot":"","sources":["../../../src/ascii/conversion_factor.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtD,oDAAsC;AAwBtC,IAAiB,gBAAgB,CAehC;AAfD,WAAiB,gBAAgB;IAClB,uBAAM,GAAG,kBAAkB,CAAC;IAEzC,gBAAgB;IAChB,SAAgB,UAAU,CAAC,MAA2C;QACpE,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,OAAO,MAAM,CAAC;SACf;QAED,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC;IAChB,CAAC;IAVe,2BAAU,aAUzB,CAAA;AACH,CAAC,EAfgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAehC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport { Units } from '../units';\n\n/**\n * Represents unit conversion factor for a single dimension.\n */\nexport interface ConversionFactor {\n /**\n * Setting representing the dimension.\n */\n setting: string;\n\n /**\n * Value representing 1 native device unit in specified real-word units.\n */\n value: number;\n\n /**\n * Units of the value.\n */\n unit: Units;\n\n}\n\nexport namespace ConversionFactor {\n export const __type = 'ConversionFactor';\n\n /** @internal */\n export function toProtobuf(source: ConversionFactor | null | undefined): gateway.ConversionFactor {\n const pbData = new gateway.ConversionFactor();\n if (source == null) {\n return pbData;\n }\n\n pbData.setSetting(source.setting);\n pbData.setValue(source.value);\n pbData.setUnit(source.unit);\n return pbData;\n }\n}\n"]}
@@ -206,7 +206,7 @@ class Device {
206
206
  request.setCheckErrors(checkErrors);
207
207
  request.setTimeout(timeout);
208
208
  const response = await gateway.callAsync('interface/generic_command_multi_response', request, gateway.GenericCommandResponseCollection);
209
- return response.toObject().responsesList.map(resp => response_1.Response.fromProtobuf(resp));
209
+ return response.getResponsesList().map(a => response_1.Response.fromProtobuf(a.toObject()));
210
210
  }
211
211
  /**
212
212
  * Sends a generic ASCII command to this device without expecting a response and without adding a message ID
@@ -344,8 +344,8 @@ class Device {
344
344
  const request = new gateway.DeviceEmptyRequest();
345
345
  request.setInterfaceId(this.connection.interfaceId);
346
346
  request.setDevice(this.deviceAddress);
347
- const response = gateway.callSync('device/get_identity', request, gateway.DeviceGetIdentityResponse);
348
- return device_identity_1.DeviceIdentity.fromProtobuf(response.getIdentity().toObject());
347
+ const response = gateway.callSync('device/get_identity', request, gateway.DeviceIdentity);
348
+ return device_identity_1.DeviceIdentity.fromProtobuf(response.toObject());
349
349
  }
350
350
  /**
351
351
  * Returns whether or not the device have been identified.
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Connection } from './connection';\nimport { DeviceSettings } from './device_settings';\nimport { Axis } from './axis';\nimport { AllAxes } from './all_axes';\nimport { Warnings } from './warnings';\nimport { DeviceIdentity } from './device_identity';\nimport { DeviceIO } from './device_io';\nimport { Response } from './response';\nimport { Lockstep } from './lockstep';\nimport { Oscilloscope } from './oscilloscope';\nimport { Stream } from './stream';\nimport { StreamBuffer } from './stream_buffer';\nimport { Measurement } from '../measurement';\nimport { FirmwareVersion } from '../firmware_version';\nimport { CanSetStateDeviceResponse } from '../can_set_state_device_response';\nimport * as gateway from '../gateway';\nimport { DeviceStorage } from './storage';\n\n/**\n * Represents the controller part of one device - may be either a standalone controller or an integrated controller.\n */\nexport class Device {\n /**\n * Connection of this device.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n /**\n * The device address uniquely identifies the device on the connection.\n * It can be configured or automatically assigned by the renumber command.\n */\n public get deviceAddress(): number {\n return this._deviceAddress;\n }\n private _deviceAddress: number;\n\n /**\n * Settings and properties of this device.\n */\n public get settings(): DeviceSettings {\n return this._settings;\n }\n private _settings: DeviceSettings;\n\n /**\n * Key-value storage of this device.\n */\n public get storage(): DeviceStorage {\n return this._storage;\n }\n private _storage: DeviceStorage;\n\n /**\n * I/O channels of this device.\n */\n public get io(): DeviceIO {\n return this._io;\n }\n private _io: DeviceIO;\n\n /**\n * Virtual axis which allows you to target all axes of this device.\n */\n public get allAxes(): AllAxes {\n return this._allAxes;\n }\n private _allAxes: AllAxes;\n\n /**\n * Warnings and faults of this device and all its axes.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n /**\n * Identity of the device.\n */\n public get identity(): DeviceIdentity {\n return this._retrieveIdentity();\n }\n\n /**\n * Indicates whether or not the device has been identified.\n */\n public get isIdentified(): boolean {\n return this._retrieveIsIdentified();\n }\n\n /**\n * Oscilloscope recording helper for this device.\n */\n public get oscilloscope(): Oscilloscope {\n return this._oscilloscope;\n }\n private _oscilloscope: Oscilloscope;\n\n /**\n * Unique ID of the device hardware.\n */\n public get deviceId(): number {\n return this.identity.deviceId;\n }\n\n /**\n * Serial number of the device.\n */\n public get serialNumber(): number {\n return this.identity.serialNumber;\n }\n\n /**\n * Name of the product.\n */\n public get name(): string {\n return this.identity.name;\n }\n\n /**\n * Number of axes this device has.\n */\n public get axisCount(): number {\n return this.identity.axisCount;\n }\n\n /**\n * Version of the firmware.\n */\n public get firmwareVersion(): FirmwareVersion {\n return this.identity.firmwareVersion;\n }\n\n /**\n * The device is an integrated product.\n */\n public get isIntegrated(): boolean {\n return this.identity.isIntegrated;\n }\n\n constructor(connection: Connection, deviceAddress: number) {\n this._connection = connection;\n this._deviceAddress = deviceAddress;\n this._settings = new DeviceSettings(this);\n this._storage = new DeviceStorage(this);\n this._io = new DeviceIO(this);\n this._allAxes = new AllAxes(this);\n this._warnings = new Warnings(this, 0);\n this._oscilloscope = new Oscilloscope(this);\n }\n\n /**\n * Queries the device and the database, gathering information about the product.\n * Without this information features such as unit conversions will not work.\n * Usually, called automatically by detect devices method.\n * @return Device identification data.\n */\n public async identify(): Promise<DeviceIdentity> {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = await gateway.callAsync<gateway.DeviceIdentity>(\n 'device/identify',\n request,\n gateway.DeviceIdentity);\n return DeviceIdentity.fromProtobuf(response.toObject());\n }\n\n /**\n * Sends a generic ASCII command to this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * @param checkErrors Controls whether to throw an exception when the device rejects the command.\n * @param timeout The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @return A response to the command.\n */\n public async genericCommand(\n command: string,\n axis: number = 0,\n checkErrors: boolean = true,\n timeout: number = 0\n ): Promise<Response> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n request.setCheckErrors(checkErrors);\n request.setTimeout(timeout);\n\n const response = await gateway.callAsync<gateway.GenericCommandResponse>(\n 'interface/generic_command',\n request,\n gateway.GenericCommandResponse);\n return Response.fromProtobuf(response.toObject());\n }\n\n /**\n * Sends a generic ASCII command to this device and expect multiple responses.\n * Responses are returned in order of arrival.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * @param checkErrors Controls whether to throw an exception when a device rejects the command.\n * @param timeout The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @return All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n axis: number = 0,\n checkErrors: boolean = true,\n timeout: number = 0\n ): Promise<Response[]> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n request.setCheckErrors(checkErrors);\n request.setTimeout(timeout);\n\n const response = await gateway.callAsync<gateway.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n gateway.GenericCommandResponseCollection);\n return response.toObject().responsesList.map(resp => Response.fromProtobuf(resp));\n }\n\n /**\n * Sends a generic ASCII command to this device without expecting a response and without adding a message ID\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n axis: number = 0\n ): Promise<void> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Gets an Axis class instance which allows you to control a particular axis on this device.\n * Axes are numbered from 1.\n * @param axisNumber Number of axis intended to control.\n * @return Axis instance.\n */\n public getAxis(\n axisNumber: number\n ): Axis {\n if (axisNumber <= 0) {\n throw new TypeError('Invalid value; physical axes are numbered from 1.');\n }\n return new Axis(this, axisNumber);\n }\n\n /**\n * Gets a Lockstep class instance which allows you to control a particular lockstep group on the device.\n * @param lockstepGroupId The ID of the lockstep group to control. Lockstep group IDs start at one.\n * @return Lockstep instance.\n */\n public getLockstep(\n lockstepGroupId: number\n ): Lockstep {\n if (lockstepGroupId <= 0) {\n throw new TypeError('Invalid value; lockstep groups are numbered from 1.');\n }\n return new Lockstep(this, lockstepGroupId);\n }\n\n /**\n * Formats parameters into a command and performs unit conversions.\n * Parameters in the command template are denoted by a question mark.\n * Command returned is only valid for this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of a command to prepare. Parameters are denoted by question marks.\n * @param parameters Variable number of command parameters.\n * @return Command with converted parameters.\n */\n public prepareCommand(\n commandTemplate: string,\n ...parameters: Measurement[]\n ): string {\n const request = new gateway.PrepareCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommandTemplate(commandTemplate);\n request.setParametersList(parameters.map(Measurement.toProtobuf));\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/prepare_command',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Returns a string that represents the device.\n * @return A string that represents the device.\n */\n public toString(): string {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/device_to_string',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Gets a Stream class instance which allows you to control a particular stream on the device.\n * @param streamId The ID of the stream to control. Stream IDs start at one.\n * @return Stream instance.\n */\n public getStream(\n streamId: number\n ): Stream {\n if (streamId <= 0) {\n throw new TypeError('Invalid value; streams are numbered from 1.');\n }\n return new Stream(this, streamId);\n }\n\n /**\n * Gets a StreamBuffer class instance which is a handle for a stream buffer on the device.\n * @param streamBufferId The ID of the stream buffer to control. Stream buffer IDs start at one.\n * @return StreamBuffer instance.\n */\n public getStreamBuffer(\n streamBufferId: number\n ): StreamBuffer {\n if (streamBufferId <= 0) {\n throw new TypeError('Invalid value; stream buffers are numbered from 1.');\n }\n return new StreamBuffer(this, streamBufferId);\n }\n\n /**\n * Returns a serialization of the current device state that can be saved and reapplied.\n * @return A serialization of the current state of the device.\n */\n public async getState(): Promise<string> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = await gateway.callAsync<gateway.StringResponse>(\n 'device/get_state',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Applies a saved state to an axis.\n * @param state The state object to apply to this axis.\n * @param deviceOnly If true, only device scope settings and features will be set.\n */\n public async setState(\n state: string,\n deviceOnly: boolean = false\n ): Promise<void> {\n const request = new gateway.SetStateRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setState(state);\n request.setDeviceOnly(deviceOnly);\n\n await gateway.callAsync('device/set_state', request);\n }\n\n /**\n * Checks if a state can be applied to a device and its peripherals.\n * This only covers exceptions that can be determined statically such as mismatches of ID or version,\n * the process of applying the state can still fail when running.\n * @param state The state object to check against.\n * @return An object listing errors that come up when trying to set the state.\n */\n public async canSetState(\n state: string\n ): Promise<CanSetStateDeviceResponse> {\n const request = new gateway.CanSetStateRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setState(state);\n\n const response = await gateway.callAsync<gateway.CanSetStateDeviceResponse>(\n 'device/can_set_state',\n request,\n gateway.CanSetStateDeviceResponse);\n return CanSetStateDeviceResponse.fromProtobuf(response.toObject());\n }\n\n /**\n * Returns identity.\n * @return Device identity.\n */\n private _retrieveIdentity(): DeviceIdentity {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.DeviceGetIdentityResponse>(\n 'device/get_identity',\n request,\n gateway.DeviceGetIdentityResponse);\n return DeviceIdentity.fromProtobuf(response.getIdentity()!.toObject());\n }\n\n /**\n * Returns whether or not the device have been identified.\n * @return True if the device has already been identified. False otherwise.\n */\n private _retrieveIsIdentified(): boolean {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.BoolResponse>(\n 'device/get_is_identified',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n}\n"]}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Connection } from './connection';\nimport { DeviceSettings } from './device_settings';\nimport { Axis } from './axis';\nimport { AllAxes } from './all_axes';\nimport { Warnings } from './warnings';\nimport { DeviceIdentity } from './device_identity';\nimport { DeviceIO } from './device_io';\nimport { Response } from './response';\nimport { Lockstep } from './lockstep';\nimport { Oscilloscope } from './oscilloscope';\nimport { Stream } from './stream';\nimport { StreamBuffer } from './stream_buffer';\nimport { Measurement } from '../measurement';\nimport { FirmwareVersion } from '../firmware_version';\nimport { CanSetStateDeviceResponse } from '../can_set_state_device_response';\nimport * as gateway from '../gateway';\nimport { DeviceStorage } from './storage';\n\n/**\n * Represents the controller part of one device - may be either a standalone controller or an integrated controller.\n */\nexport class Device {\n /**\n * Connection of this device.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n /**\n * The device address uniquely identifies the device on the connection.\n * It can be configured or automatically assigned by the renumber command.\n */\n public get deviceAddress(): number {\n return this._deviceAddress;\n }\n private _deviceAddress: number;\n\n /**\n * Settings and properties of this device.\n */\n public get settings(): DeviceSettings {\n return this._settings;\n }\n private _settings: DeviceSettings;\n\n /**\n * Key-value storage of this device.\n */\n public get storage(): DeviceStorage {\n return this._storage;\n }\n private _storage: DeviceStorage;\n\n /**\n * I/O channels of this device.\n */\n public get io(): DeviceIO {\n return this._io;\n }\n private _io: DeviceIO;\n\n /**\n * Virtual axis which allows you to target all axes of this device.\n */\n public get allAxes(): AllAxes {\n return this._allAxes;\n }\n private _allAxes: AllAxes;\n\n /**\n * Warnings and faults of this device and all its axes.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n /**\n * Identity of the device.\n */\n public get identity(): DeviceIdentity {\n return this._retrieveIdentity();\n }\n\n /**\n * Indicates whether or not the device has been identified.\n */\n public get isIdentified(): boolean {\n return this._retrieveIsIdentified();\n }\n\n /**\n * Oscilloscope recording helper for this device.\n */\n public get oscilloscope(): Oscilloscope {\n return this._oscilloscope;\n }\n private _oscilloscope: Oscilloscope;\n\n /**\n * Unique ID of the device hardware.\n */\n public get deviceId(): number {\n return this.identity.deviceId;\n }\n\n /**\n * Serial number of the device.\n */\n public get serialNumber(): number {\n return this.identity.serialNumber;\n }\n\n /**\n * Name of the product.\n */\n public get name(): string {\n return this.identity.name;\n }\n\n /**\n * Number of axes this device has.\n */\n public get axisCount(): number {\n return this.identity.axisCount;\n }\n\n /**\n * Version of the firmware.\n */\n public get firmwareVersion(): FirmwareVersion {\n return this.identity.firmwareVersion;\n }\n\n /**\n * The device is an integrated product.\n */\n public get isIntegrated(): boolean {\n return this.identity.isIntegrated;\n }\n\n constructor(connection: Connection, deviceAddress: number) {\n this._connection = connection;\n this._deviceAddress = deviceAddress;\n this._settings = new DeviceSettings(this);\n this._storage = new DeviceStorage(this);\n this._io = new DeviceIO(this);\n this._allAxes = new AllAxes(this);\n this._warnings = new Warnings(this, 0);\n this._oscilloscope = new Oscilloscope(this);\n }\n\n /**\n * Queries the device and the database, gathering information about the product.\n * Without this information features such as unit conversions will not work.\n * Usually, called automatically by detect devices method.\n * @return Device identification data.\n */\n public async identify(): Promise<DeviceIdentity> {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = await gateway.callAsync<gateway.DeviceIdentity>(\n 'device/identify',\n request,\n gateway.DeviceIdentity);\n return DeviceIdentity.fromProtobuf(response.toObject());\n }\n\n /**\n * Sends a generic ASCII command to this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * @param checkErrors Controls whether to throw an exception when the device rejects the command.\n * @param timeout The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @return A response to the command.\n */\n public async genericCommand(\n command: string,\n axis: number = 0,\n checkErrors: boolean = true,\n timeout: number = 0\n ): Promise<Response> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n request.setCheckErrors(checkErrors);\n request.setTimeout(timeout);\n\n const response = await gateway.callAsync<gateway.GenericCommandResponse>(\n 'interface/generic_command',\n request,\n gateway.GenericCommandResponse);\n return Response.fromProtobuf(response.toObject());\n }\n\n /**\n * Sends a generic ASCII command to this device and expect multiple responses.\n * Responses are returned in order of arrival.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * @param checkErrors Controls whether to throw an exception when a device rejects the command.\n * @param timeout The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @return All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n axis: number = 0,\n checkErrors: boolean = true,\n timeout: number = 0\n ): Promise<Response[]> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n request.setCheckErrors(checkErrors);\n request.setTimeout(timeout);\n\n const response = await gateway.callAsync<gateway.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n gateway.GenericCommandResponseCollection);\n return response.getResponsesList().map(a => Response.fromProtobuf(a.toObject()));\n }\n\n /**\n * Sends a generic ASCII command to this device without expecting a response and without adding a message ID\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param axis Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n axis: number = 0\n ): Promise<void> {\n const request = new gateway.GenericCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommand(command);\n request.setAxis(axis);\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Gets an Axis class instance which allows you to control a particular axis on this device.\n * Axes are numbered from 1.\n * @param axisNumber Number of axis intended to control.\n * @return Axis instance.\n */\n public getAxis(\n axisNumber: number\n ): Axis {\n if (axisNumber <= 0) {\n throw new TypeError('Invalid value; physical axes are numbered from 1.');\n }\n return new Axis(this, axisNumber);\n }\n\n /**\n * Gets a Lockstep class instance which allows you to control a particular lockstep group on the device.\n * @param lockstepGroupId The ID of the lockstep group to control. Lockstep group IDs start at one.\n * @return Lockstep instance.\n */\n public getLockstep(\n lockstepGroupId: number\n ): Lockstep {\n if (lockstepGroupId <= 0) {\n throw new TypeError('Invalid value; lockstep groups are numbered from 1.');\n }\n return new Lockstep(this, lockstepGroupId);\n }\n\n /**\n * Formats parameters into a command and performs unit conversions.\n * Parameters in the command template are denoted by a question mark.\n * Command returned is only valid for this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of a command to prepare. Parameters are denoted by question marks.\n * @param parameters Variable number of command parameters.\n * @return Command with converted parameters.\n */\n public prepareCommand(\n commandTemplate: string,\n ...parameters: Measurement[]\n ): string {\n const request = new gateway.PrepareCommandRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setCommandTemplate(commandTemplate);\n request.setParametersList(parameters.map(Measurement.toProtobuf));\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/prepare_command',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Returns a string that represents the device.\n * @return A string that represents the device.\n */\n public toString(): string {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/device_to_string',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Gets a Stream class instance which allows you to control a particular stream on the device.\n * @param streamId The ID of the stream to control. Stream IDs start at one.\n * @return Stream instance.\n */\n public getStream(\n streamId: number\n ): Stream {\n if (streamId <= 0) {\n throw new TypeError('Invalid value; streams are numbered from 1.');\n }\n return new Stream(this, streamId);\n }\n\n /**\n * Gets a StreamBuffer class instance which is a handle for a stream buffer on the device.\n * @param streamBufferId The ID of the stream buffer to control. Stream buffer IDs start at one.\n * @return StreamBuffer instance.\n */\n public getStreamBuffer(\n streamBufferId: number\n ): StreamBuffer {\n if (streamBufferId <= 0) {\n throw new TypeError('Invalid value; stream buffers are numbered from 1.');\n }\n return new StreamBuffer(this, streamBufferId);\n }\n\n /**\n * Returns a serialization of the current device state that can be saved and reapplied.\n * @return A serialization of the current state of the device.\n */\n public async getState(): Promise<string> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = await gateway.callAsync<gateway.StringResponse>(\n 'device/get_state',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Applies a saved state to an axis.\n * @param state The state object to apply to this axis.\n * @param deviceOnly If true, only device scope settings and features will be set.\n */\n public async setState(\n state: string,\n deviceOnly: boolean = false\n ): Promise<void> {\n const request = new gateway.SetStateRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setState(state);\n request.setDeviceOnly(deviceOnly);\n\n await gateway.callAsync('device/set_state', request);\n }\n\n /**\n * Checks if a state can be applied to a device and its peripherals.\n * This only covers exceptions that can be determined statically such as mismatches of ID or version,\n * the process of applying the state can still fail when running.\n * @param state The state object to check against.\n * @return An object listing errors that come up when trying to set the state.\n */\n public async canSetState(\n state: string\n ): Promise<CanSetStateDeviceResponse> {\n const request = new gateway.CanSetStateRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n request.setState(state);\n\n const response = await gateway.callAsync<gateway.CanSetStateDeviceResponse>(\n 'device/can_set_state',\n request,\n gateway.CanSetStateDeviceResponse);\n return CanSetStateDeviceResponse.fromProtobuf(response.toObject());\n }\n\n /**\n * Returns identity.\n * @return Device identity.\n */\n private _retrieveIdentity(): DeviceIdentity {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.DeviceIdentity>(\n 'device/get_identity',\n request,\n gateway.DeviceIdentity);\n return DeviceIdentity.fromProtobuf(response.toObject());\n }\n\n /**\n * Returns whether or not the device have been identified.\n * @return True if the device has already been identified. False otherwise.\n */\n private _retrieveIsIdentified(): boolean {\n const request = new gateway.DeviceEmptyRequest();\n request.setInterfaceId(this.connection.interfaceId);\n request.setDevice(this.deviceAddress);\n\n const response = gateway.callSync<gateway.BoolResponse>(\n 'device/get_is_identified',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n}\n"]}
@@ -32,5 +32,6 @@ export { ServoTuningParamset } from './servo_tuning_paramset';
32
32
  export { ParamsetInfo } from './paramset_info';
33
33
  export { PidTuning } from './pid_tuning';
34
34
  export { ServoTuningParam } from './servo_tuning_param';
35
- export { SimpleTuningParam } from './simple_tuning_param';
35
+ export { SimpleTuningParamDefinition } from './simple_tuning_param_definition';
36
36
  export { AxisStorage, DeviceStorage } from './storage';
37
+ export { ConversionFactor } from './conversion_factor';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeviceStorage = exports.AxisStorage = exports.SimpleTuningParam = exports.ServoTuningParam = exports.PidTuning = exports.ParamsetInfo = exports.ServoTuningParamset = exports.ServoTuner = exports.Transport = exports.StreamAxisDefinition = exports.StreamAxisType = exports.StreamMode = exports.StreamBuffer = exports.Stream = exports.OscilloscopeCaptureProperties = exports.OscilloscopeData = exports.Oscilloscope = exports.LockstepAxes = exports.Lockstep = exports.Warnings = exports.WarningFlags = exports.UnknownResponseEvent = exports.SettingConstants = exports.Response = exports.MessageType = exports.DeviceIOInfo = exports.DeviceIO = exports.Device = exports.DeviceSettings = exports.DeviceIdentity = exports.Connection = exports.Axis = exports.AxisType = exports.AxisSettings = exports.AxisIdentity = exports.AllAxes = exports.AlertEvent = void 0;
3
+ exports.ConversionFactor = exports.DeviceStorage = exports.AxisStorage = exports.SimpleTuningParamDefinition = exports.ServoTuningParam = exports.PidTuning = exports.ParamsetInfo = exports.ServoTuningParamset = exports.ServoTuner = exports.Transport = exports.StreamAxisDefinition = exports.StreamAxisType = exports.StreamMode = exports.StreamBuffer = exports.Stream = exports.OscilloscopeCaptureProperties = exports.OscilloscopeData = exports.Oscilloscope = exports.LockstepAxes = exports.Lockstep = exports.Warnings = exports.WarningFlags = exports.UnknownResponseEvent = exports.SettingConstants = exports.Response = exports.MessageType = exports.DeviceIOInfo = exports.DeviceIO = exports.Device = exports.DeviceSettings = exports.DeviceIdentity = exports.Connection = exports.Axis = exports.AxisType = exports.AxisSettings = exports.AxisIdentity = exports.AllAxes = exports.AlertEvent = void 0;
4
4
  var alert_event_1 = require("./alert_event");
5
5
  Object.defineProperty(exports, "AlertEvent", { enumerable: true, get: function () { return alert_event_1.AlertEvent; } });
6
6
  var all_axes_1 = require("./all_axes");
@@ -69,9 +69,11 @@ var pid_tuning_1 = require("./pid_tuning");
69
69
  Object.defineProperty(exports, "PidTuning", { enumerable: true, get: function () { return pid_tuning_1.PidTuning; } });
70
70
  var servo_tuning_param_1 = require("./servo_tuning_param");
71
71
  Object.defineProperty(exports, "ServoTuningParam", { enumerable: true, get: function () { return servo_tuning_param_1.ServoTuningParam; } });
72
- var simple_tuning_param_1 = require("./simple_tuning_param");
73
- Object.defineProperty(exports, "SimpleTuningParam", { enumerable: true, get: function () { return simple_tuning_param_1.SimpleTuningParam; } });
72
+ var simple_tuning_param_definition_1 = require("./simple_tuning_param_definition");
73
+ Object.defineProperty(exports, "SimpleTuningParamDefinition", { enumerable: true, get: function () { return simple_tuning_param_definition_1.SimpleTuningParamDefinition; } });
74
74
  var storage_1 = require("./storage");
75
75
  Object.defineProperty(exports, "AxisStorage", { enumerable: true, get: function () { return storage_1.AxisStorage; } });
76
76
  Object.defineProperty(exports, "DeviceStorage", { enumerable: true, get: function () { return storage_1.DeviceStorage; } });
77
+ var conversion_factor_1 = require("./conversion_factor");
78
+ Object.defineProperty(exports, "ConversionFactor", { enumerable: true, get: function () { return conversion_factor_1.ConversionFactor; } });
77
79
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ascii/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAChB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,yCAAuC;AAA9B,qGAAA,QAAQ,OAAA;AACjB,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,qGAAA,QAAQ,OAAA;AACjB,mDAAgD;AAAvC,8GAAA,YAAY,OAAA;AACrB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,qFAAkF;AAAzE,gJAAA,6BAA6B,OAAA;AACtC,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uDAAoD;AAA3C,kHAAA,cAAc,OAAA;AACvB,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,2DAAwD;AAA/C,sHAAA,gBAAgB,OAAA;AACzB,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,qCAAuD;AAA9C,sGAAA,WAAW,OAAA;AAAE,wGAAA,aAAa,OAAA","sourcesContent":["export { AlertEvent } from './alert_event';\nexport { AllAxes } from './all_axes';\nexport { AxisIdentity } from './axis_identity';\nexport { AxisSettings } from './axis_settings';\nexport { AxisType } from './axis_type';\nexport { Axis } from './axis';\nexport { Connection } from './connection';\nexport { DeviceIdentity } from './device_identity';\nexport { DeviceSettings } from './device_settings';\nexport { Device } from './device';\nexport { DeviceIO } from './device_io';\nexport { DeviceIOInfo } from './device_io_info';\nexport { MessageType } from './message_type';\nexport { Response } from './response';\nexport { SettingConstants } from './setting_constants';\nexport { UnknownResponseEvent } from './unknown_response_event';\nexport { WarningFlags } from './warning_flags';\nexport { Warnings } from './warnings';\nexport { Lockstep } from './lockstep';\nexport { LockstepAxes } from './lockstep_axes';\nexport { Oscilloscope } from './oscilloscope';\nexport { OscilloscopeData } from './oscilloscope_data';\nexport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\nexport { Stream } from './stream';\nexport { StreamBuffer } from './stream_buffer';\nexport { StreamMode } from './stream_mode';\nexport { StreamAxisType } from './stream_axis_type';\nexport { StreamAxisDefinition } from './stream_axis_definition';\nexport { Transport } from './transport';\nexport { ServoTuner } from './servo_tuner';\nexport { ServoTuningParamset } from './servo_tuning_paramset';\nexport { ParamsetInfo } from './paramset_info';\nexport { PidTuning } from './pid_tuning';\nexport { ServoTuningParam } from './servo_tuning_param';\nexport { SimpleTuningParam } from './simple_tuning_param';\nexport { AxisStorage, DeviceStorage } from './storage';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ascii/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAChB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,yCAAuC;AAA9B,qGAAA,QAAQ,OAAA;AACjB,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,qGAAA,QAAQ,OAAA;AACjB,mDAAgD;AAAvC,8GAAA,YAAY,OAAA;AACrB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,qFAAkF;AAAzE,gJAAA,6BAA6B,OAAA;AACtC,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uDAAoD;AAA3C,kHAAA,cAAc,OAAA;AACvB,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,2DAAwD;AAA/C,sHAAA,gBAAgB,OAAA;AACzB,mFAA+E;AAAtE,6IAAA,2BAA2B,OAAA;AACpC,qCAAuD;AAA9C,sGAAA,WAAW,OAAA;AAAE,wGAAA,aAAa,OAAA;AACnC,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA","sourcesContent":["export { AlertEvent } from './alert_event';\nexport { AllAxes } from './all_axes';\nexport { AxisIdentity } from './axis_identity';\nexport { AxisSettings } from './axis_settings';\nexport { AxisType } from './axis_type';\nexport { Axis } from './axis';\nexport { Connection } from './connection';\nexport { DeviceIdentity } from './device_identity';\nexport { DeviceSettings } from './device_settings';\nexport { Device } from './device';\nexport { DeviceIO } from './device_io';\nexport { DeviceIOInfo } from './device_io_info';\nexport { MessageType } from './message_type';\nexport { Response } from './response';\nexport { SettingConstants } from './setting_constants';\nexport { UnknownResponseEvent } from './unknown_response_event';\nexport { WarningFlags } from './warning_flags';\nexport { Warnings } from './warnings';\nexport { Lockstep } from './lockstep';\nexport { LockstepAxes } from './lockstep_axes';\nexport { Oscilloscope } from './oscilloscope';\nexport { OscilloscopeData } from './oscilloscope_data';\nexport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\nexport { Stream } from './stream';\nexport { StreamBuffer } from './stream_buffer';\nexport { StreamMode } from './stream_mode';\nexport { StreamAxisType } from './stream_axis_type';\nexport { StreamAxisDefinition } from './stream_axis_definition';\nexport { Transport } from './transport';\nexport { ServoTuner } from './servo_tuner';\nexport { ServoTuningParamset } from './servo_tuning_paramset';\nexport { ParamsetInfo } from './paramset_info';\nexport { PidTuning } from './pid_tuning';\nexport { ServoTuningParam } from './servo_tuning_param';\nexport { SimpleTuningParamDefinition } from './simple_tuning_param_definition';\nexport { AxisStorage, DeviceStorage } from './storage';\nexport { ConversionFactor } from './conversion_factor';\n"]}
@@ -258,8 +258,8 @@ class Lockstep {
258
258
  request.setInterfaceId(this.device.connection.interfaceId);
259
259
  request.setDevice(this.device.deviceAddress);
260
260
  request.setLockstepGroupId(this.lockstepGroupId);
261
- const response = await gateway.callAsync('device/lockstep_get_axes', request, gateway.LockstepGetAxesResponse);
262
- return lockstep_axes_1.LockstepAxes.fromProtobuf(response.getAxes().toObject());
261
+ const response = await gateway.callAsync('device/lockstep_get_axes', request, gateway.LockstepAxes);
262
+ return lockstep_axes_1.LockstepAxes.fromProtobuf(response.toObject());
263
263
  }
264
264
  /**
265
265
  * Gets the axis numbers of the lockstep group.
@@ -1 +1 @@
1
- {"version":3,"file":"lockstep.js","sourceRoot":"","sources":["../../../src/ascii/lockstep.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport { Angle, Length, Native, AngularVelocity, Velocity, Acceleration, AngularAcceleration, Units } from '../units';\nimport * as gateway from '../gateway';\nimport { LockstepAxes } from './lockstep_axes';\n\n/**\n * Represents a lockstep group with this ID on a device.\n * A lockstep group is a movement synchronized pair of axes on a device.\n */\nexport class Lockstep {\n /**\n * Device that controls this lockstep group.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the lockstep group on the device.\n */\n public get lockstepGroupId(): number {\n return this._lockstepGroupId;\n }\n private _lockstepGroupId: number;\n\n constructor(device: Device, lockstepGroupId: number) {\n this._device = device;\n this._lockstepGroupId = lockstepGroupId;\n }\n\n /**\n * Activate the lockstep group on the axes specified.\n * @param axes The numbers of axes in the lockstep group.\n */\n public async enable(\n ...axes: number[]\n ): Promise<void> {\n const request = new gateway.LockstepEnableRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setAxesList(axes);\n\n await gateway.callAsync('device/lockstep_enable', request);\n }\n\n /**\n * Disable the lockstep group.\n */\n public async disable(): Promise<void> {\n const request = new gateway.LockstepDisableRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n await gateway.callAsync('device/lockstep_disable', request);\n }\n\n /**\n * Stops ongoing lockstep group movement. Decelerates until zero speed.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n */\n public async stop(\n waitUntilIdle: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepStopRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setWaitUntilIdle(waitUntilIdle);\n\n await gateway.callAsync('device/lockstep_stop', request);\n }\n\n /**\n * Retracts the axes of the lockstep group until a home associated with an individual axis is detected.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n */\n public async home(\n waitUntilIdle: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepHomeRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setWaitUntilIdle(waitUntilIdle);\n\n await gateway.callAsync('device/lockstep_home', request);\n }\n\n /**\n * Move the first axis of the lockstep group to an absolute position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Absolute position.\n * @param unit Units of position.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveAbsolute(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.ABS);\n request.setArg(position);\n request.setUnit(unit);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Move the first axis of the lockstep group to a position relative to its current position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Relative position.\n * @param unit Units of position.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveRelative(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.REL);\n request.setArg(position);\n request.setUnit(unit);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the first axis of the lockstep group at the specified speed.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param velocity Movement velocity.\n * @param unit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveVelocity(\n velocity: number,\n unit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.VEL);\n request.setArg(velocity);\n request.setUnit(unit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the maximum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.max for all axes in the group.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveMax(\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.MAX);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the minimum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.min for all axes in the group.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveMin(\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.MIN);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Waits until the lockstep group stops moving.\n * @param throwErrorOnFault Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n throwErrorOnFault: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepWaitUntilIdleRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setThrowErrorOnFault(throwErrorOnFault);\n\n await gateway.callAsync('device/lockstep_wait_until_idle', request);\n }\n\n /**\n * Returns bool indicating whether the lockstep group is executing a motion command.\n * @return True if the axes are currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'device/lockstep_is_busy',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n\n /**\n * @deprecated Use GetAxisNumbers instead.\n *\n * Gets the axes of the lockstep group.\n * @return LockstepAxes instance which contains the axes numbers of the lockstep group.\n */\n public async getAxes(): Promise<LockstepAxes> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.LockstepGetAxesResponse>(\n 'device/lockstep_get_axes',\n request,\n gateway.LockstepGetAxesResponse);\n return LockstepAxes.fromProtobuf(response.getAxes()!.toObject());\n }\n\n /**\n * Gets the axis numbers of the lockstep group.\n * @return Axis numbers in order specified when enabling lockstep.\n */\n public async getAxisNumbers(): Promise<number[]> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.LockstepGetAxisNumbersResponse>(\n 'device/lockstep_get_axis_numbers',\n request,\n gateway.LockstepGetAxisNumbersResponse);\n return response.getAxesList();\n }\n\n /**\n * Gets the initial offsets of secondary axes of an enabled lockstep group.\n * @param unit Units of position.\n * @return Initial offset for each axis of the lockstep group.\n */\n public async getOffsets(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request = new gateway.LockstepGetOffsetsRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setUnit(unit);\n\n const response = await gateway.callAsync<gateway.LockstepGetOffsetsResponse>(\n 'device/lockstep_get_offsets',\n request,\n gateway.LockstepGetOffsetsResponse);\n return response.getOffsetsList();\n }\n\n /**\n * Gets the twists of secondary axes of an enabled lockstep group.\n * @param unit Units of position.\n * @return Difference between the initial offset and the actual offset for each axis of the lockstep group.\n */\n public async getTwists(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request = new gateway.LockstepGetTwistsRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setUnit(unit);\n\n const response = await gateway.callAsync<gateway.LockstepGetTwistsResponse>(\n 'device/lockstep_get_twists',\n request,\n gateway.LockstepGetTwistsResponse);\n return response.getTwistsList();\n }\n\n /**\n * Checks if the lockstep group is currently enabled on the device.\n * @return True if a lockstep group with this ID is enabled on the device.\n */\n public async isEnabled(): Promise<boolean> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'device/lockstep_is_enabled',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n\n /**\n * Returns a string which represents the enabled lockstep group.\n * @return String which represents the enabled lockstep group.\n */\n public toString(): string {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/lockstep_to_string',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n}\n"]}
1
+ {"version":3,"file":"lockstep.js","sourceRoot":"","sources":["../../../src/ascii/lockstep.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport { Angle, Length, Native, AngularVelocity, Velocity, Acceleration, AngularAcceleration, Units } from '../units';\nimport * as gateway from '../gateway';\nimport { LockstepAxes } from './lockstep_axes';\n\n/**\n * Represents a lockstep group with this ID on a device.\n * A lockstep group is a movement synchronized pair of axes on a device.\n */\nexport class Lockstep {\n /**\n * Device that controls this lockstep group.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the lockstep group on the device.\n */\n public get lockstepGroupId(): number {\n return this._lockstepGroupId;\n }\n private _lockstepGroupId: number;\n\n constructor(device: Device, lockstepGroupId: number) {\n this._device = device;\n this._lockstepGroupId = lockstepGroupId;\n }\n\n /**\n * Activate the lockstep group on the axes specified.\n * @param axes The numbers of axes in the lockstep group.\n */\n public async enable(\n ...axes: number[]\n ): Promise<void> {\n const request = new gateway.LockstepEnableRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setAxesList(axes);\n\n await gateway.callAsync('device/lockstep_enable', request);\n }\n\n /**\n * Disable the lockstep group.\n */\n public async disable(): Promise<void> {\n const request = new gateway.LockstepDisableRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n await gateway.callAsync('device/lockstep_disable', request);\n }\n\n /**\n * Stops ongoing lockstep group movement. Decelerates until zero speed.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n */\n public async stop(\n waitUntilIdle: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepStopRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setWaitUntilIdle(waitUntilIdle);\n\n await gateway.callAsync('device/lockstep_stop', request);\n }\n\n /**\n * Retracts the axes of the lockstep group until a home associated with an individual axis is detected.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n */\n public async home(\n waitUntilIdle: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepHomeRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setWaitUntilIdle(waitUntilIdle);\n\n await gateway.callAsync('device/lockstep_home', request);\n }\n\n /**\n * Move the first axis of the lockstep group to an absolute position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Absolute position.\n * @param unit Units of position.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveAbsolute(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.ABS);\n request.setArg(position);\n request.setUnit(unit);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Move the first axis of the lockstep group to a position relative to its current position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Relative position.\n * @param unit Units of position.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveRelative(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.REL);\n request.setArg(position);\n request.setUnit(unit);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the first axis of the lockstep group at the specified speed.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param velocity Movement velocity.\n * @param unit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveVelocity(\n velocity: number,\n unit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.VEL);\n request.setArg(velocity);\n request.setUnit(unit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the maximum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.max for all axes in the group.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveMax(\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.MAX);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the minimum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.min for all axes in the group.\n * @param waitUntilIdle Determines whether function should return after the movement is finished or just started.\n * @param velocity Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * @param velocityUnit Units of velocity.\n * @param acceleration Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * @param accelerationUnit Units of acceleration.\n */\n public async moveMin(\n waitUntilIdle: boolean = true,\n velocity: number = 0,\n velocityUnit: Velocity | AngularVelocity | Native = Units.NATIVE,\n acceleration: number = 0,\n accelerationUnit: Acceleration | AngularAcceleration | Native = Units.NATIVE\n ): Promise<void> {\n const request = new gateway.LockstepMoveRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setType(gateway.LockstepMoveRequest.MoveType.MIN);\n request.setWaitUntilIdle(waitUntilIdle);\n request.setVelocity(velocity);\n request.setVelocityUnit(velocityUnit);\n request.setAcceleration(acceleration);\n request.setAccelerationUnit(accelerationUnit);\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Waits until the lockstep group stops moving.\n * @param throwErrorOnFault Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n throwErrorOnFault: boolean = true\n ): Promise<void> {\n const request = new gateway.LockstepWaitUntilIdleRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setThrowErrorOnFault(throwErrorOnFault);\n\n await gateway.callAsync('device/lockstep_wait_until_idle', request);\n }\n\n /**\n * Returns bool indicating whether the lockstep group is executing a motion command.\n * @return True if the axes are currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'device/lockstep_is_busy',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n\n /**\n * @deprecated Use GetAxisNumbers instead.\n *\n * Gets the axes of the lockstep group.\n * @return LockstepAxes instance which contains the axes numbers of the lockstep group.\n */\n public async getAxes(): Promise<LockstepAxes> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.LockstepAxes>(\n 'device/lockstep_get_axes',\n request,\n gateway.LockstepAxes);\n return LockstepAxes.fromProtobuf(response.toObject());\n }\n\n /**\n * Gets the axis numbers of the lockstep group.\n * @return Axis numbers in order specified when enabling lockstep.\n */\n public async getAxisNumbers(): Promise<number[]> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.LockstepGetAxisNumbersResponse>(\n 'device/lockstep_get_axis_numbers',\n request,\n gateway.LockstepGetAxisNumbersResponse);\n return response.getAxesList();\n }\n\n /**\n * Gets the initial offsets of secondary axes of an enabled lockstep group.\n * @param unit Units of position.\n * @return Initial offset for each axis of the lockstep group.\n */\n public async getOffsets(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request = new gateway.LockstepGetOffsetsRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setUnit(unit);\n\n const response = await gateway.callAsync<gateway.LockstepGetOffsetsResponse>(\n 'device/lockstep_get_offsets',\n request,\n gateway.LockstepGetOffsetsResponse);\n return response.getOffsetsList();\n }\n\n /**\n * Gets the twists of secondary axes of an enabled lockstep group.\n * @param unit Units of position.\n * @return Difference between the initial offset and the actual offset for each axis of the lockstep group.\n */\n public async getTwists(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request = new gateway.LockstepGetTwistsRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n request.setUnit(unit);\n\n const response = await gateway.callAsync<gateway.LockstepGetTwistsResponse>(\n 'device/lockstep_get_twists',\n request,\n gateway.LockstepGetTwistsResponse);\n return response.getTwistsList();\n }\n\n /**\n * Checks if the lockstep group is currently enabled on the device.\n * @return True if a lockstep group with this ID is enabled on the device.\n */\n public async isEnabled(): Promise<boolean> {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'device/lockstep_is_enabled',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n\n /**\n * Returns a string which represents the enabled lockstep group.\n * @return String which represents the enabled lockstep group.\n */\n public toString(): string {\n const request = new gateway.LockstepEmptyRequest();\n request.setInterfaceId(this.device.connection.interfaceId);\n request.setDevice(this.device.deviceAddress);\n request.setLockstepGroupId(this.lockstepGroupId);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'device/lockstep_to_string',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n}\n"]}
@@ -122,8 +122,8 @@ class OscilloscopeData {
122
122
  _retrieveProperties() {
123
123
  const request = new gateway.OscilloscopeDataIdentifier();
124
124
  request.setDataId(this.dataId);
125
- const response = gateway.callSync('oscilloscopedata/get_properties', request, gateway.OscilloscopeDataGetPropertiesResponse);
126
- return oscilloscope_capture_properties_1.OscilloscopeCaptureProperties.fromProtobuf(response.getProperties().toObject());
125
+ const response = gateway.callSync('oscilloscopedata/get_properties', request, gateway.OscilloscopeCaptureProperties);
126
+ return oscilloscope_capture_properties_1.OscilloscopeCaptureProperties.fromProtobuf(response.toObject());
127
127
  }
128
128
  /**
129
129
  * Releases the native resources of the oscilloscope data.
@@ -1 +1 @@
1
- {"version":3,"file":"oscilloscope_data.js","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Native, Time, Units } from '../units';\nimport * as gateway from '../gateway';\nimport { registerForFinalization } from '../finalizer';\n\nimport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\n\n/**\n * Contains a block of contiguous recorded data for one channel of the device's oscilloscope.\n */\nexport class OscilloscopeData {\n /**\n * Unique ID for this block of recorded data.\n */\n public get dataId(): number {\n return this._dataId;\n }\n private _dataId: number;\n\n /**\n * The name of the recorded setting.\n */\n public get setting(): string {\n return this._retrieveProperties().setting;\n }\n\n /**\n * The number of the axis the data was recorded from, or 0 for the controller.\n */\n public get axisNumber(): number {\n return this._retrieveProperties().axisNumber;\n }\n\n constructor(dataId: number) {\n this._dataId = dataId;\n registerForFinalization(this, OscilloscopeData._free.bind(null, dataId));\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param unit Unit of measure to represent the timebase in.\n * @return The timebase setting at the time the data was recorded.\n */\n public getTimebase(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_timebase',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param unit Unit of measure to represent the delay in.\n * @return The delay setting at the time the data was recorded.\n */\n public getDelay(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_delay',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Calculate the time a sample was recorded, relative to when the recording was triggered.\n * @param index 0-based index of the sample to calculate the time of.\n * @param unit Unit of measure to represent the calculated time in.\n * @return The calculated time offset of the data sample at the given index.\n */\n public getSampleTime(\n index: number,\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetSampleTimeRequest();\n request.setDataId(this.dataId);\n request.setIndex(index);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_sample_time',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Get the recorded data as an array of doubles.\n * @param unit Unit of measure to convert the data to.\n * @return The recorded data for one oscilloscope channel, converted to the units specified.\n */\n public getData(\n unit: Units = Units.NATIVE\n ): number[] {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.OscilloscopeDataGetSamplesResponse>(\n 'oscilloscopedata/get_samples',\n request,\n gateway.OscilloscopeDataGetSamplesResponse);\n return response.getDataList();\n }\n\n /**\n * Releases native resources of an oscilloscope data buffer.\n * @param dataId The ID of the data buffer to delete.\n */\n private static _free(\n dataId: number\n ): void {\n const request = new gateway.OscilloscopeDataIdentifier();\n request.setDataId(dataId);\n\n gateway.callSync('oscilloscopedata/free', request);\n }\n\n /**\n * Returns recording properties.\n * @return Capture properties.\n */\n private _retrieveProperties(): OscilloscopeCaptureProperties {\n const request = new gateway.OscilloscopeDataIdentifier();\n request.setDataId(this.dataId);\n\n const response = gateway.callSync<gateway.OscilloscopeDataGetPropertiesResponse>(\n 'oscilloscopedata/get_properties',\n request,\n gateway.OscilloscopeDataGetPropertiesResponse);\n return OscilloscopeCaptureProperties.fromProtobuf(response.getProperties()!.toObject());\n }\n\n /**\n * Releases the native resources of the oscilloscope data.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OscilloscopeData._free(this.dataId);\n }\n}\n"]}
1
+ {"version":3,"file":"oscilloscope_data.js","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Native, Time, Units } from '../units';\nimport * as gateway from '../gateway';\nimport { registerForFinalization } from '../finalizer';\n\nimport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\n\n/**\n * Contains a block of contiguous recorded data for one channel of the device's oscilloscope.\n */\nexport class OscilloscopeData {\n /**\n * Unique ID for this block of recorded data.\n */\n public get dataId(): number {\n return this._dataId;\n }\n private _dataId: number;\n\n /**\n * The name of the recorded setting.\n */\n public get setting(): string {\n return this._retrieveProperties().setting;\n }\n\n /**\n * The number of the axis the data was recorded from, or 0 for the controller.\n */\n public get axisNumber(): number {\n return this._retrieveProperties().axisNumber;\n }\n\n constructor(dataId: number) {\n this._dataId = dataId;\n registerForFinalization(this, OscilloscopeData._free.bind(null, dataId));\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param unit Unit of measure to represent the timebase in.\n * @return The timebase setting at the time the data was recorded.\n */\n public getTimebase(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_timebase',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param unit Unit of measure to represent the delay in.\n * @return The delay setting at the time the data was recorded.\n */\n public getDelay(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_delay',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Calculate the time a sample was recorded, relative to when the recording was triggered.\n * @param index 0-based index of the sample to calculate the time of.\n * @param unit Unit of measure to represent the calculated time in.\n * @return The calculated time offset of the data sample at the given index.\n */\n public getSampleTime(\n index: number,\n unit: Time | Native = Units.NATIVE\n ): number {\n const request = new gateway.OscilloscopeDataGetSampleTimeRequest();\n request.setDataId(this.dataId);\n request.setIndex(index);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'oscilloscopedata/get_sample_time',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Get the recorded data as an array of doubles.\n * @param unit Unit of measure to convert the data to.\n * @return The recorded data for one oscilloscope channel, converted to the units specified.\n */\n public getData(\n unit: Units = Units.NATIVE\n ): number[] {\n const request = new gateway.OscilloscopeDataGetRequest();\n request.setDataId(this.dataId);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.OscilloscopeDataGetSamplesResponse>(\n 'oscilloscopedata/get_samples',\n request,\n gateway.OscilloscopeDataGetSamplesResponse);\n return response.getDataList();\n }\n\n /**\n * Releases native resources of an oscilloscope data buffer.\n * @param dataId The ID of the data buffer to delete.\n */\n private static _free(\n dataId: number\n ): void {\n const request = new gateway.OscilloscopeDataIdentifier();\n request.setDataId(dataId);\n\n gateway.callSync('oscilloscopedata/free', request);\n }\n\n /**\n * Returns recording properties.\n * @return Capture properties.\n */\n private _retrieveProperties(): OscilloscopeCaptureProperties {\n const request = new gateway.OscilloscopeDataIdentifier();\n request.setDataId(this.dataId);\n\n const response = gateway.callSync<gateway.OscilloscopeCaptureProperties>(\n 'oscilloscopedata/get_properties',\n request,\n gateway.OscilloscopeCaptureProperties);\n return OscilloscopeCaptureProperties.fromProtobuf(response.toObject());\n }\n\n /**\n * Releases the native resources of the oscilloscope data.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OscilloscopeData._free(this.dataId);\n }\n}\n"]}
@@ -3,7 +3,7 @@ import { ServoTuningParamset } from './servo_tuning_paramset';
3
3
  import { ParamsetInfo } from './paramset_info';
4
4
  import { ServoTuningParam } from './servo_tuning_param';
5
5
  import { PidTuning } from './pid_tuning';
6
- import { SimpleTuningParam } from './simple_tuning_param';
6
+ import { SimpleTuningParamDefinition } from './simple_tuning_param_definition';
7
7
  /**
8
8
  * Exposes the capabilities to inspect and edit an axis' servo tuning.
9
9
  */
@@ -63,7 +63,7 @@ export declare class ServoTuner {
63
63
  * Gets the parameters that are required to tune this device.
64
64
  * @return The tuning parameters.
65
65
  */
66
- getSimpleTuningParamList(): Promise<SimpleTuningParam[]>;
66
+ getSimpleTuningParamDefinitions(): Promise<SimpleTuningParamDefinition[]>;
67
67
  /**
68
68
  * Set the tuning of this device using the simple input method.
69
69
  * @param paramset The paramset to set tuning for.
@@ -30,7 +30,7 @@ const gateway = __importStar(require("../gateway"));
30
30
  const paramset_info_1 = require("./paramset_info");
31
31
  const servo_tuning_param_1 = require("./servo_tuning_param");
32
32
  const pid_tuning_1 = require("./pid_tuning");
33
- const simple_tuning_param_1 = require("./simple_tuning_param");
33
+ const simple_tuning_param_definition_1 = require("./simple_tuning_param_definition");
34
34
  /**
35
35
  * Exposes the capabilities to inspect and edit an axis' servo tuning.
36
36
  */
@@ -151,13 +151,13 @@ class ServoTuner {
151
151
  * Gets the parameters that are required to tune this device.
152
152
  * @return The tuning parameters.
153
153
  */
154
- async getSimpleTuningParamList() {
154
+ async getSimpleTuningParamDefinitions() {
155
155
  const request = new gateway.AxisEmptyRequest();
156
156
  request.setInterfaceId(this.axis.device.connection.interfaceId);
157
157
  request.setDevice(this.axis.device.deviceAddress);
158
158
  request.setAxis(this.axis.axisNumber);
159
- const response = await gateway.callAsync('servotuning/get_simple_params', request, gateway.SimpleTuningParamList);
160
- return response.toObject().paramsList.map(simple_tuning_param_1.SimpleTuningParam.fromProtobuf);
159
+ const response = await gateway.callAsync('servotuning/get_simple_params_definition', request, gateway.GetSimpleTuningParamDefinitionResponse);
160
+ return response.getParamsList().map(a => simple_tuning_param_definition_1.SimpleTuningParamDefinition.fromProtobuf(a.toObject()));
161
161
  }
162
162
  /**
163
163
  * Set the tuning of this device using the simple input method.
@@ -1 +1 @@
1
- {"version":3,"file":"servo_tuner.js","sourceRoot":"","sources":["../../../src/ascii/servo_tuner.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Axis } from './axis';\nimport * as gateway from '../gateway';\nimport { ServoTuningParamset } from './servo_tuning_paramset';\nimport { ParamsetInfo } from './paramset_info';\nimport { ServoTuningParam } from './servo_tuning_param';\nimport { PidTuning } from './pid_tuning';\nimport { SimpleTuningParam } from './simple_tuning_param';\n\n/**\n * Exposes the capabilities to inspect and edit an axis' servo tuning.\n */\nexport class ServoTuner {\n /**\n * The axis that will be tuned.\n */\n public get axis(): Axis {\n return this._axis;\n }\n private _axis: Axis;\n\n constructor(axis: Axis) {\n this._axis = axis;\n }\n\n /**\n * Get the paramset that this device uses by default when it starts up.\n * @return The paramset used at when the device restarts.\n */\n public async getStartupParamset(): Promise<ServoTuningParamset> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n\n const response = await gateway.callAsync<gateway.IntResponse>(\n 'servotuning/get_startup_set',\n request,\n gateway.IntResponse);\n return response.getValue();\n }\n\n /**\n * Set the paramset that this device uses by default when it starts up.\n * @param paramset The paramset to use at startup.\n */\n public async setStartupParamset(\n paramset: ServoTuningParamset\n ): Promise<void> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n await gateway.callAsync('servotuning/set_startup_set', request);\n }\n\n /**\n * Load the values from one paramset into another.\n * @param toParamset The paramset to load into.\n * @param fromParamset The paramset to load from.\n */\n public async loadParamset(\n toParamset: ServoTuningParamset,\n fromParamset: ServoTuningParamset\n ): Promise<void> {\n const request = new gateway.LoadParamset();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setToParamset(toParamset as any);\n request.setFromParamset(fromParamset as any);\n\n await gateway.callAsync('servotuning/load_paramset', request);\n }\n\n /**\n * Get the full set of tuning parameters used by the firmware driving this axis.\n * @param paramset The paramset to get tuning for.\n * @return The raw representation of the current tuning.\n */\n public async getTuning(\n paramset: ServoTuningParamset\n ): Promise<ParamsetInfo> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n const response = await gateway.callAsync<gateway.ParamsetInfo>(\n 'servotuning/get_raw',\n request,\n gateway.ParamsetInfo);\n return ParamsetInfo.fromProtobuf(response.toObject());\n }\n\n /**\n * Set individual tuning parameters.\n * Only use this method if you have a strong understanding of Zaber specific tuning parameters.\n * @param paramset The paramset to set tuning of.\n * @param tuningParams The params to set.\n */\n public async setTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[]\n ): Promise<void> {\n const request = new gateway.SetServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n\n await gateway.callAsync('servotuning/set_raw', request);\n }\n\n /**\n * Sets the tuning of a paramset using the PID method.\n * @param paramset The paramset to get tuning for.\n * @param p The proportional gain. Must be in units of N/m.\n * @param i The integral gain. Must be in units of N/m⋅s.\n * @param d The derivative gain. Must be in units of N⋅s/m.\n * @param fc The cutoff frequency. Must be in units of Hz.\n * @return The PID representation of the current tuning after your changes have been applied.\n */\n public async setPidTuning(\n paramset: ServoTuningParamset,\n p: number,\n i: number,\n d: number,\n fc: number\n ): Promise<PidTuning> {\n const request = new gateway.SetServoTuningPIDRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setP(p);\n request.setI(i);\n request.setD(d);\n request.setFc(fc);\n\n const response = await gateway.callAsync<gateway.PidTuning>(\n 'servotuning/set_pid',\n request,\n gateway.PidTuning);\n return PidTuning.fromProtobuf(response.toObject());\n }\n\n /**\n * Gets the PID representation of this paramset's servo tuning.\n * @param paramset The paramset to get tuning for.\n * @return The PID representation of the current tuning.\n */\n public async getPidTuning(\n paramset: ServoTuningParamset\n ): Promise<PidTuning> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n const response = await gateway.callAsync<gateway.PidTuning>(\n 'servotuning/get_pid',\n request,\n gateway.PidTuning);\n return PidTuning.fromProtobuf(response.toObject());\n }\n\n /**\n * Gets the parameters that are required to tune this device.\n * @return The tuning parameters.\n */\n public async getSimpleTuningParamList(): Promise<SimpleTuningParam[]> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n\n const response = await gateway.callAsync<gateway.SimpleTuningParamList>(\n 'servotuning/get_simple_params',\n request,\n gateway.SimpleTuningParamList);\n return response.toObject().paramsList.map(SimpleTuningParam.fromProtobuf);\n }\n\n /**\n * Set the tuning of this device using the simple input method.\n * @param paramset The paramset to set tuning for.\n * @param tuningParams The params used to tune this device.\n * To get what parameters are expected, call GetSimpleTuningParamList.\n * All values must be between 0 and 1.\n * @param loadMass The mass loaded on the stage (excluding the mass of the carriage itself) in kg.\n * @param carriageMass The mass of the carriage in kg. If this value is not set the default carriage mass is used.\n */\n public async setSimpleTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[],\n loadMass: number,\n carriageMass: number = -1.0\n ): Promise<void> {\n const request = new gateway.SetSimpleTuning();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n request.setLoadMass(loadMass);\n request.setCarriageMass(carriageMass);\n\n await gateway.callAsync('servotuning/set_simple_tuning', request);\n }\n\n /**\n * Checks if the provided simple tuning is being stored by this paramset.\n * @param paramset The paramset to set tuning for.\n * @param tuningParams The params used to tune this device.\n * To get what parameters are expected, call GetSimpleTuningParamList.\n * All values must be between 0 and 1.\n * @param loadMass The mass loaded on the stage (excluding the mass of the carriage itself) in kg.\n * @param carriageMass The mass of the carriage in kg. If this value is not set the default carriage mass is used.\n * @return True if the provided simple tuning is currently stored in this paramset.\n */\n public async isUsingSimpleTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[],\n loadMass: number,\n carriageMass: number = -1.0\n ): Promise<boolean> {\n const request = new gateway.SetSimpleTuning();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n request.setLoadMass(loadMass);\n request.setCarriageMass(carriageMass);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'servotuning/is_using_simple_tuning',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n}\n"]}
1
+ {"version":3,"file":"servo_tuner.js","sourceRoot":"","sources":["../../../src/ascii/servo_tuner.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAGtD,oDAAsC;AAEtC,mDAA+C;AAC/C,6DAAwD;AACxD,6CAAyC;AACzC,qFAA+E;AAE/E;;GAEG;AACH,MAAa,UAAU;IASrB,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAVD;;OAEG;IACH,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAOD;;;OAGG;IACI,KAAK,CAAC,kBAAkB;QAC7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC/C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,6BAA6B,EAC7B,OAAO,EACP,OAAO,CAAC,WAAW,CAAC,CAAC;QACvB,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,kBAAkB,CAC7B,QAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACjD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QAErC,MAAM,OAAO,CAAC,SAAS,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CACvB,UAA+B,EAC/B,YAAiC;QAEjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC3C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,aAAa,CAAC,UAAiB,CAAC,CAAC;QACzC,OAAO,CAAC,eAAe,CAAC,YAAmB,CAAC,CAAC;QAE7C,MAAM,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACpB,QAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACjD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QAErC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,qBAAqB,EACrB,OAAO,EACP,OAAO,CAAC,YAAY,CAAC,CAAC;QACxB,OAAO,4BAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,SAAS,CACpB,QAA6B,EAC7B,YAAgC;QAEhC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACpD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QACrC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,GAAG,CAAC,qCAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAE3E,MAAM,OAAO,CAAC,SAAS,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,YAAY,CACvB,QAA6B,EAC7B,CAAS,EACT,CAAS,EACT,CAAS,EACT,EAAU;QAEV,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC;QACvD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAElB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,qBAAqB,EACrB,OAAO,EACP,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,OAAO,sBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CACvB,QAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACjD,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QAErC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,qBAAqB,EACrB,OAAO,EACP,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,OAAO,sBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,+BAA+B;QAC1C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC/C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,0CAA0C,EAC1C,OAAO,EACP,OAAO,CAAC,sCAAsC,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,4DAA2B,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnG,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,eAAe,CAC1B,QAA6B,EAC7B,YAAgC,EAChC,QAAgB,EAChB,eAAuB,CAAC,GAAG;QAE3B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QACrC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,GAAG,CAAC,qCAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEtC,MAAM,OAAO,CAAC,SAAS,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,mBAAmB,CAC9B,QAA6B,EAC7B,YAAgC,EAChC,QAAgB,EAChB,eAAuB,CAAC,GAAG;QAE3B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAChE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,CAAC,WAAW,CAAC,QAAe,CAAC,CAAC;QACrC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,GAAG,CAAC,qCAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,oCAAoC,EACpC,OAAO,EACP,OAAO,CAAC,YAAY,CAAC,CAAC;QACxB,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;CACF;AA3OD,gCA2OC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Axis } from './axis';\nimport * as gateway from '../gateway';\nimport { ServoTuningParamset } from './servo_tuning_paramset';\nimport { ParamsetInfo } from './paramset_info';\nimport { ServoTuningParam } from './servo_tuning_param';\nimport { PidTuning } from './pid_tuning';\nimport { SimpleTuningParamDefinition } from './simple_tuning_param_definition';\n\n/**\n * Exposes the capabilities to inspect and edit an axis' servo tuning.\n */\nexport class ServoTuner {\n /**\n * The axis that will be tuned.\n */\n public get axis(): Axis {\n return this._axis;\n }\n private _axis: Axis;\n\n constructor(axis: Axis) {\n this._axis = axis;\n }\n\n /**\n * Get the paramset that this device uses by default when it starts up.\n * @return The paramset used at when the device restarts.\n */\n public async getStartupParamset(): Promise<ServoTuningParamset> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n\n const response = await gateway.callAsync<gateway.IntResponse>(\n 'servotuning/get_startup_set',\n request,\n gateway.IntResponse);\n return response.getValue();\n }\n\n /**\n * Set the paramset that this device uses by default when it starts up.\n * @param paramset The paramset to use at startup.\n */\n public async setStartupParamset(\n paramset: ServoTuningParamset\n ): Promise<void> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n await gateway.callAsync('servotuning/set_startup_set', request);\n }\n\n /**\n * Load the values from one paramset into another.\n * @param toParamset The paramset to load into.\n * @param fromParamset The paramset to load from.\n */\n public async loadParamset(\n toParamset: ServoTuningParamset,\n fromParamset: ServoTuningParamset\n ): Promise<void> {\n const request = new gateway.LoadParamset();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setToParamset(toParamset as any);\n request.setFromParamset(fromParamset as any);\n\n await gateway.callAsync('servotuning/load_paramset', request);\n }\n\n /**\n * Get the full set of tuning parameters used by the firmware driving this axis.\n * @param paramset The paramset to get tuning for.\n * @return The raw representation of the current tuning.\n */\n public async getTuning(\n paramset: ServoTuningParamset\n ): Promise<ParamsetInfo> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n const response = await gateway.callAsync<gateway.ParamsetInfo>(\n 'servotuning/get_raw',\n request,\n gateway.ParamsetInfo);\n return ParamsetInfo.fromProtobuf(response.toObject());\n }\n\n /**\n * Set individual tuning parameters.\n * Only use this method if you have a strong understanding of Zaber specific tuning parameters.\n * @param paramset The paramset to set tuning of.\n * @param tuningParams The params to set.\n */\n public async setTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[]\n ): Promise<void> {\n const request = new gateway.SetServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n\n await gateway.callAsync('servotuning/set_raw', request);\n }\n\n /**\n * Sets the tuning of a paramset using the PID method.\n * @param paramset The paramset to get tuning for.\n * @param p The proportional gain. Must be in units of N/m.\n * @param i The integral gain. Must be in units of N/m⋅s.\n * @param d The derivative gain. Must be in units of N⋅s/m.\n * @param fc The cutoff frequency. Must be in units of Hz.\n * @return The PID representation of the current tuning after your changes have been applied.\n */\n public async setPidTuning(\n paramset: ServoTuningParamset,\n p: number,\n i: number,\n d: number,\n fc: number\n ): Promise<PidTuning> {\n const request = new gateway.SetServoTuningPIDRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setP(p);\n request.setI(i);\n request.setD(d);\n request.setFc(fc);\n\n const response = await gateway.callAsync<gateway.PidTuning>(\n 'servotuning/set_pid',\n request,\n gateway.PidTuning);\n return PidTuning.fromProtobuf(response.toObject());\n }\n\n /**\n * Gets the PID representation of this paramset's servo tuning.\n * @param paramset The paramset to get tuning for.\n * @return The PID representation of the current tuning.\n */\n public async getPidTuning(\n paramset: ServoTuningParamset\n ): Promise<PidTuning> {\n const request = new gateway.ServoTuningRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n\n const response = await gateway.callAsync<gateway.PidTuning>(\n 'servotuning/get_pid',\n request,\n gateway.PidTuning);\n return PidTuning.fromProtobuf(response.toObject());\n }\n\n /**\n * Gets the parameters that are required to tune this device.\n * @return The tuning parameters.\n */\n public async getSimpleTuningParamDefinitions(): Promise<SimpleTuningParamDefinition[]> {\n const request = new gateway.AxisEmptyRequest();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n\n const response = await gateway.callAsync<gateway.GetSimpleTuningParamDefinitionResponse>(\n 'servotuning/get_simple_params_definition',\n request,\n gateway.GetSimpleTuningParamDefinitionResponse);\n return response.getParamsList().map(a => SimpleTuningParamDefinition.fromProtobuf(a.toObject()));\n }\n\n /**\n * Set the tuning of this device using the simple input method.\n * @param paramset The paramset to set tuning for.\n * @param tuningParams The params used to tune this device.\n * To get what parameters are expected, call GetSimpleTuningParamList.\n * All values must be between 0 and 1.\n * @param loadMass The mass loaded on the stage (excluding the mass of the carriage itself) in kg.\n * @param carriageMass The mass of the carriage in kg. If this value is not set the default carriage mass is used.\n */\n public async setSimpleTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[],\n loadMass: number,\n carriageMass: number = -1.0\n ): Promise<void> {\n const request = new gateway.SetSimpleTuning();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n request.setLoadMass(loadMass);\n request.setCarriageMass(carriageMass);\n\n await gateway.callAsync('servotuning/set_simple_tuning', request);\n }\n\n /**\n * Checks if the provided simple tuning is being stored by this paramset.\n * @param paramset The paramset to set tuning for.\n * @param tuningParams The params used to tune this device.\n * To get what parameters are expected, call GetSimpleTuningParamList.\n * All values must be between 0 and 1.\n * @param loadMass The mass loaded on the stage (excluding the mass of the carriage itself) in kg.\n * @param carriageMass The mass of the carriage in kg. If this value is not set the default carriage mass is used.\n * @return True if the provided simple tuning is currently stored in this paramset.\n */\n public async isUsingSimpleTuning(\n paramset: ServoTuningParamset,\n tuningParams: ServoTuningParam[],\n loadMass: number,\n carriageMass: number = -1.0\n ): Promise<boolean> {\n const request = new gateway.SetSimpleTuning();\n request.setInterfaceId(this.axis.device.connection.interfaceId);\n request.setDevice(this.axis.device.deviceAddress);\n request.setAxis(this.axis.axisNumber);\n request.setParamset(paramset as any);\n request.setTuningParamsList(tuningParams.map(ServoTuningParam.toProtobuf));\n request.setLoadMass(loadMass);\n request.setCarriageMass(carriageMass);\n\n const response = await gateway.callAsync<gateway.BoolResponse>(\n 'servotuning/is_using_simple_tuning',\n request,\n gateway.BoolResponse);\n return response.getValue();\n }\n}\n"]}
@@ -796,6 +796,10 @@ export declare enum SettingConstants {
796
796
  * Maxspeed.
797
797
  */
798
798
  MAXSPEED = "maxspeed",
799
+ /**
800
+ * Mitutoyo Pos.
801
+ */
802
+ MITUTOYO_POS = "mitutoyo.pos",
799
803
  /**
800
804
  * Motion Accel Ramptime.
801
805
  */
@@ -802,6 +802,10 @@ var SettingConstants;
802
802
  * Maxspeed.
803
803
  */
804
804
  SettingConstants["MAXSPEED"] = "maxspeed";
805
+ /**
806
+ * Mitutoyo Pos.
807
+ */
808
+ SettingConstants["MITUTOYO_POS"] = "mitutoyo.pos";
805
809
  /**
806
810
  * Motion Accel Ramptime.
807
811
  */