An open API service indexing awesome lists of open source software.

https://github.com/synapticon/motion-master-client

Library and CLI tool for interacting with Motion Master.
https://github.com/synapticon/motion-master-client

ethercat motion-master pdo sdo zeromq

Last synced: 5 months ago
JSON representation

Library and CLI tool for interacting with Motion Master.

Awesome Lists containing this project

README

          

> :warning: **This project is deprecated**: Please use https://github.com/synapticon/oblac/tree/main/libs/motion-master-client instead.

# Motion Master Client

Library and CLI tool for interacting with [Motion Master](https://github.com/synapticon/motion-master).

## Install

sudo npm --unsafe-perm=true install -g @synapticon/motion-master-client

## Command line usage

See the examples in [test.sh](test.sh).

Usage: cli [options] [command]

Options:
-V, --version output the version number
-c, --config path to JSON config file to read and replace the default values with
-d, --device-address

device address (uint32) generated by Motion Master - takes precedence over
device position
-f, --output-format if left unspecified the output format is the default colored message
inspect
-p, --device-position used when device address is not specified (default: 0)
-h, --help display help for command

Commands:
request [options] [args...]
upload [options] [params...]
download [paramValues...]
getDeviceFileContent
getDeviceLogContent
getCoggingTorqueDataContent
startCoggingTorqueRecording [options]
startOffsetDetection
startPlantIdentification
startSystemIdentification
startCirculoEncoderNarrowAngleCalibrationProcedure
monitor [options] [params...]
help [command] display help for command

### request

Usage: cli request [options] [args...]

Options:
-i, --interval sending interval in microseconds (default: 1000000)
-h, --help display help for command

Request s:
pingSystem
getSystemVersion
getDeviceInfo
getDeviceParameterInfo
getDeviceParameterValues
getMultiDeviceParameterValues
setDeviceParameterValues
setMultiDeviceParameterValues
getDeviceFileList
getDeviceFile
setDeviceFile
deleteDeviceFile
resetDeviceFault
stopDevice
startDeviceFirmwareInstallation
getDeviceLog
startCoggingTorqueRecording
getCoggingTorqueData
startOffsetDetection
startPlantIdentification
startSystemIdentification
computeAutoTuningGains
setMotionControllerParameters
enableMotionController
disableMotionController
setSignalGeneratorParameters
startSignalGenerator
stopSignalGenerator
startMonitoringDeviceParameterValues
stopMonitoringDeviceParameterValues
getEthercatNetworkState
setEthercatNetworkState
startNarrowAngleCalibration
setSystemClientTimeout
getCirculoEncoderMagnetDistance
startCirculoEncoderNarrowAngleCalibrationProcedure
getDeviceCiA402State
setDeviceCiA402State
getSystemLog
startDeviceSiiRestore
startOpenLoopFieldControl
computeFullAutoTuningGains
startFullAutoTuning
stopFullAutoTuning
startCirculoEncoderConfiguration
stopCirculoEncoderNarrowAngleCalibrationProcedure
startOsCommand

### monitor

Usage: monitor [options] [params...]

Options:
-i, --interval sending interval in microseconds (default: 1000000)
-h, --help output usage information

## Library usage

const input = new rxjs.Subject();
const output = new rxjs.Subject();
const motionMasterClient = new MotionMasterClient(input, output);
const messageId = v4(); // '4e4d938e-1021-4b68-ad01-38c7ed2c5ee4'
const getSystemVersion: motionmaster.MotionMasterMessage.Request.IGetSystemVersion = {};
motionMasterClient.sendRequest({ getSystemVersion }, messageId);
motionMasterClient.systemVersion$.subscribe(console.log);

## Publish

npm publish --access=public