📄 c-motion.h
字号:
#ifndef PMD_CMotion
#define PMD_CMotion
// c-motion.h -- C-Motion API
//
// Performance Motion Devices, Inc.
//
/* --------------------------------
Refer to "c-motion bug-change list.doc" for file history.
*/
#define _CRT_SECURE_NO_DEPRECATE
#define PILOT
#define CMOTION_MAJOR_VERSION 1
#define CMOTION_MINOR_VERSION 5
#if defined(__cplusplus)
extern "C" {
#endif
#include "PMDtypes.h"
#include "PMDecode.h"
#include "PMDtrans.h"
// Profile Generation
extern PMDresult PMDSetProfileMode (PMDAxisInterface axis_intf, PMDuint16 mode);
extern PMDresult PMDGetProfileMode (PMDAxisInterface axis_intf, PMDuint16* mode);
extern PMDresult PMDSetPosition (PMDAxisInterface axis_intf, PMDint32 position);
extern PMDresult PMDGetPosition (PMDAxisInterface axis_intf, PMDint32* position);
extern PMDresult PMDSetVelocity (PMDAxisInterface axis_intf, PMDint32 velocity);
extern PMDresult PMDGetVelocity (PMDAxisInterface axis_intf, PMDint32* velocity);
extern PMDresult PMDSetStartVelocity (PMDAxisInterface axis_intf, PMDuint32 velocity);
extern PMDresult PMDGetStartVelocity (PMDAxisInterface axis_intf, PMDuint32* velocity);
extern PMDresult PMDSetAcceleration (PMDAxisInterface axis_intf, PMDuint32 acceleration);
extern PMDresult PMDGetAcceleration (PMDAxisInterface axis_intf, PMDuint32* acceleration);
extern PMDresult PMDSetDeceleration (PMDAxisInterface axis_intf, PMDuint32 deceleration);
extern PMDresult PMDGetDeceleration (PMDAxisInterface axis_intf, PMDuint32* deceleration);
extern PMDresult PMDSetJerk (PMDAxisInterface axis_intf, PMDuint32 jerk);
extern PMDresult PMDGetJerk (PMDAxisInterface axis_intf, PMDuint32* jerk);
extern PMDresult PMDSetGearRatio (PMDAxisInterface axis_intf, PMDint32 ratio);
extern PMDresult PMDGetGearRatio (PMDAxisInterface axis_intf, PMDint32* ratio);
extern PMDresult PMDSetGearMaster (PMDAxisInterface axis_intf, PMDAxis masterAxis, PMDuint8 source);
extern PMDresult PMDGetGearMaster (PMDAxisInterface axis_intf, PMDAxis* masterAxis, PMDuint8* source);
extern PMDresult PMDSetStopMode (PMDAxisInterface axis_intf, PMDuint16 mode);
extern PMDresult PMDGetStopMode (PMDAxisInterface axis_intf, PMDuint16* mode);
extern PMDresult PMDGetCommandedPosition (PMDAxisInterface axis_intf, PMDint32* position);
extern PMDresult PMDGetCommandedVelocity (PMDAxisInterface axis_intf, PMDint32* velocity);
extern PMDresult PMDGetCommandedAcceleration (PMDAxisInterface axis_intf, PMDint32* acceleration);
// Servo Filter
extern PMDresult PMDSetKp (PMDAxisInterface axis_intf, PMDuint16 kp);
extern PMDresult PMDGetKp (PMDAxisInterface axis_intf, PMDuint16* kp);
extern PMDresult PMDSetKd (PMDAxisInterface axis_intf, PMDuint16 kd);
extern PMDresult PMDGetKd (PMDAxisInterface axis_intf, PMDuint16* kd);
extern PMDresult PMDSetKi (PMDAxisInterface axis_intf, PMDuint16 ki);
extern PMDresult PMDGetKi (PMDAxisInterface axis_intf, PMDuint16* ki);
extern PMDresult PMDSetKvff (PMDAxisInterface axis_intf, PMDuint16 kvff);
extern PMDresult PMDGetKvff (PMDAxisInterface axis_intf, PMDuint16* kvff);
extern PMDresult PMDSetKaff (PMDAxisInterface axis_intf, PMDuint16 kaff);
extern PMDresult PMDGetKaff (PMDAxisInterface axis_intf, PMDuint16* kaff);
extern PMDresult PMDSetKout (PMDAxisInterface axis_intf, PMDuint16 kout);
extern PMDresult PMDGetKout (PMDAxisInterface axis_intf, PMDuint16* kout);
extern PMDresult PMDSetIntegrationLimit (PMDAxisInterface axis_intf, PMDuint32 limit);
extern PMDresult PMDGetIntegrationLimit (PMDAxisInterface axis_intf, PMDuint32* limit);
extern PMDresult PMDSetLimitSwitchMode (PMDAxisInterface axis_intf, PMDuint16 mode);
extern PMDresult PMDGetLimitSwitchMode (PMDAxisInterface axis_intf, PMDuint16* mode);
extern PMDresult PMDSetMotorLimit (PMDAxisInterface axis_intf, PMDuint16 limit);
extern PMDresult PMDGetMotorLimit (PMDAxisInterface axis_intf, PMDuint16* limit);
extern PMDresult PMDSetMotorBias (PMDAxisInterface axis_intf, PMDint16 bias);
extern PMDresult PMDGetMotorBias (PMDAxisInterface axis_intf, PMDint16* bias);
extern PMDresult PMDSetPositionErrorLimit (PMDAxisInterface axis_intf, PMDuint32 limit);
extern PMDresult PMDGetPositionErrorLimit (PMDAxisInterface axis_intf, PMDuint32* limit);
extern PMDresult PMDSetAutoStopMode (PMDAxisInterface axis_intf, PMDuint16 mode);
extern PMDresult PMDGetAutoStopMode (PMDAxisInterface axis_intf, PMDuint16* mode);
extern PMDresult PMDSetDerivativeTime (PMDAxisInterface axis_intf, PMDuint16 derivativeTime);
extern PMDresult PMDGetDerivativeTime (PMDAxisInterface axis_intf, PMDuint16* derivativeTime);
extern PMDresult PMDSetSettleTime (PMDAxisInterface axis_intf, PMDuint16 settleTime);
extern PMDresult PMDGetSettleTime (PMDAxisInterface axis_intf, PMDuint16* settleTime);
extern PMDresult PMDSetSettleWindow (PMDAxisInterface axis_intf, PMDuint16 settleWindow);
extern PMDresult PMDGetSettleWindow (PMDAxisInterface axis_intf, PMDuint16* settleWindow);
extern PMDresult PMDSetTrackingWindow (PMDAxisInterface axis_intf, PMDuint16 trackingWindow);
extern PMDresult PMDGetTrackingWindow (PMDAxisInterface axis_intf, PMDuint16* trackingWindow);
extern PMDresult PMDSetMotionCompleteMode (PMDAxisInterface axis_intf, PMDuint16 mode);
extern PMDresult PMDGetMotionCompleteMode (PMDAxisInterface axis_intf, PMDuint16* mode);
extern PMDresult PMDClearPositionError (PMDAxisInterface axis_intf);
extern PMDresult PMDGetDerivative (PMDAxisInterface axis_intf, PMDint16* derivative);
extern PMDresult PMDGetIntegral (PMDAxisInterface axis_intf, PMDint32* integral);
extern PMDresult PMDGetPositionError (PMDAxisInterface axis_intf, PMDint32* positionError);
#ifdef PILOT
extern PMDresult PMDSetSampleTime (PMDAxisInterface axis_intf, PMDuint16 sampleTime);
extern PMDresult PMDGetSampleTime (PMDAxisInterface axis_intf, PMDuint16* sampleTime);
#endif
#ifdef MAGELLAN
extern PMDresult PMDSetSampleTime (PMDAxisInterface axis_intf, PMDuint32 sampleTime);
extern PMDresult PMDGetSampleTime (PMDAxisInterface axis_intf, PMDuint32* sampleTime);
#endif
extern PMDresult PMDSetBiQuadCoefficient (PMDAxisInterface axis_intf, PMDuint16 coefficientID, PMDuint16 filterID, PMDint16 value);
extern PMDresult PMDGetBiQuadCoefficient (PMDAxisInterface axis_intf, PMDuint16 coefficientID, PMDuint16 filterID, PMDint16* value);
// Parameter Update & Breakpoints
extern PMDresult PMDSetBreakpoint (PMDAxisInterface axis_intf, PMDuint16 breakpointID, PMDAxis sourceAxis, PMDuint8 action, PMDuint8 trigger);
extern PMDresult PMDGetBreakpoint (PMDAxisInterface axis_intf, PMDuint16 breakpointID, PMDAxis *sourceAxis, PMDuint8* action, PMDuint8* trigger);
extern PMDresult PMDSetBreakpointValue (PMDAxisInterface axis_intf, PMDuint16 breakpointID, PMDint32 breakpointValue);
extern PMDresult PMDGetBreakpointValue (PMDAxisInterface axis_intf, PMDuint16 breakpointID, PMDint32* breakpointValue);
extern PMDresult PMDUpdate (PMDAxisInterface axis_intf);
extern PMDresult PMDMultiUpdate (PMDAxisInterface axis_intf, PMDuint16 axisMask);
// Interrupt Processing
extern PMDresult PMDSetInterruptMask (PMDAxisInterface axis_intf, PMDuint16 interruptMask);
extern PMDresult PMDGetInterruptMask (PMDAxisInterface axis_intf, PMDuint16* interruptMask);
extern PMDresult PMDClearInterrupt (PMDAxisInterface axis_intf);
extern PMDresult PMDGetInterruptAxis (PMDAxisInterface axis_intf, PMDuint16* interruptingAxisMask);
// Status Register Control
extern PMDresult PMDResetEventStatus (PMDAxisInterface axis_intf, PMDuint16 eventStatus);
extern PMDresult PMDGetEventStatus (PMDAxisInterface axis_intf, PMDuint16* eventStatus);
extern PMDresult PMDGetActivityStatus (PMDAxisInterface axis_intf, PMDuint16* activityStatus);
extern PMDresult PMDSetSignalSense (PMDAxisInterface axis_intf, PMDuint16 mask);
extern PMDresult PMDGetSignalSense (PMDAxisInterface axis_intf, PMDuint16* mask);
extern PMDresult PMDGetSignalStatus (PMDAxisInterface axis_intf, PMDuint16* signalStatus);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -