📄 emc.hh
字号:
void update(CMS * cms); int axes;};class EMC_TRAJ_SET_CYCLE_TIME:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_CYCLE_TIME():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_CYCLE_TIME_TYPE, sizeof(EMC_TRAJ_SET_CYCLE_TIME)) { }; // For internal NML/CMS use only. void update(CMS * cms); double cycleTime;};class EMC_TRAJ_SET_MODE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_MODE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_MODE_TYPE, sizeof(EMC_TRAJ_SET_MODE)) { }; // For internal NML/CMS use only. void update(CMS * cms); enum EMC_TRAJ_MODE_ENUM mode;};class EMC_TRAJ_SET_VELOCITY:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_VELOCITY():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_VELOCITY_TYPE, sizeof(EMC_TRAJ_SET_VELOCITY)) { }; // For internal NML/CMS use only. void update(CMS * cms); double velocity; double ini_maxvel;};class EMC_TRAJ_SET_ACCELERATION:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_ACCELERATION():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_ACCELERATION_TYPE, sizeof(EMC_TRAJ_SET_ACCELERATION)) { }; // For internal NML/CMS use only. void update(CMS * cms); double acceleration;};class EMC_TRAJ_SET_MAX_VELOCITY:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_MAX_VELOCITY():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_MAX_VELOCITY_TYPE, sizeof(EMC_TRAJ_SET_MAX_VELOCITY)) { }; // For internal NML/CMS use only. void update(CMS * cms); double velocity;};class EMC_TRAJ_SET_MAX_ACCELERATION:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_MAX_ACCELERATION():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_MAX_ACCELERATION_TYPE, sizeof(EMC_TRAJ_SET_MAX_ACCELERATION)) { }; // For internal NML/CMS use only. void update(CMS * cms); double acceleration;};class EMC_TRAJ_SET_SCALE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_SCALE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_SCALE_TYPE, sizeof(EMC_TRAJ_SET_SCALE)) { }; // For internal NML/CMS use only. void update(CMS * cms); double scale;};class EMC_TRAJ_SET_MOTION_ID:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_MOTION_ID():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_MOTION_ID_TYPE, sizeof (EMC_TRAJ_SET_MOTION_ID)) { }; // For internal NML/CMS use only. void update(CMS * cms); int id;};class EMC_TRAJ_INIT:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_INIT():EMC_TRAJ_CMD_MSG(EMC_TRAJ_INIT_TYPE, sizeof(EMC_TRAJ_INIT)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_HALT:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_HALT():EMC_TRAJ_CMD_MSG(EMC_TRAJ_HALT_TYPE, sizeof(EMC_TRAJ_HALT)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_ENABLE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_ENABLE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_ENABLE_TYPE, sizeof(EMC_TRAJ_ENABLE)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_DISABLE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_DISABLE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_DISABLE_TYPE, sizeof(EMC_TRAJ_DISABLE)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_ABORT:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_ABORT():EMC_TRAJ_CMD_MSG(EMC_TRAJ_ABORT_TYPE, sizeof(EMC_TRAJ_ABORT)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_PAUSE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_PAUSE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_PAUSE_TYPE, sizeof(EMC_TRAJ_PAUSE)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_STEP:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_STEP():EMC_TRAJ_CMD_MSG(EMC_TRAJ_STEP_TYPE, sizeof(EMC_TRAJ_STEP)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_RESUME:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_RESUME():EMC_TRAJ_CMD_MSG(EMC_TRAJ_RESUME_TYPE, sizeof(EMC_TRAJ_RESUME)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_DELAY:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_DELAY():EMC_TRAJ_CMD_MSG(EMC_TRAJ_DELAY_TYPE, sizeof(EMC_TRAJ_DELAY)) { }; // For internal NML/CMS use only. void update(CMS * cms); double delay; // delay in seconds};class EMC_TRAJ_LINEAR_MOVE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_LINEAR_MOVE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_LINEAR_MOVE_TYPE, sizeof(EMC_TRAJ_LINEAR_MOVE)) { }; // For internal NML/CMS use only. void update(CMS * cms); int type; EmcPose end; // end point};class EMC_TRAJ_CIRCULAR_MOVE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_CIRCULAR_MOVE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_CIRCULAR_MOVE_TYPE, sizeof (EMC_TRAJ_CIRCULAR_MOVE)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose end; PM_CARTESIAN center; PM_CARTESIAN normal; int turn; int type;};class EMC_TRAJ_SET_TERM_COND:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_TERM_COND():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_TERM_COND_TYPE, sizeof (EMC_TRAJ_SET_TERM_COND)) { }; // For internal NML/CMS use only. void update(CMS * cms); int cond; double tolerance; // used to set the precision/tolerance of path deviation // during CONTINUOUS motion mode. };class EMC_TRAJ_SET_SPINDLESYNC:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_SPINDLESYNC():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_SPINDLESYNC_TYPE, sizeof(EMC_TRAJ_SET_SPINDLESYNC)) { }; void update(CMS * cms); double spindlesync;};class EMC_TRAJ_SET_OFFSET:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_OFFSET():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_OFFSET_TYPE, sizeof(EMC_TRAJ_SET_OFFSET)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose offset;};class EMC_TRAJ_SET_ORIGIN:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_ORIGIN():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_ORIGIN_TYPE, sizeof(EMC_TRAJ_SET_ORIGIN)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose origin;};class EMC_TRAJ_SET_HOME:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_HOME():EMC_TRAJ_CMD_MSG(EMC_TRAJ_SET_HOME_TYPE, sizeof(EMC_TRAJ_SET_HOME)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose home;};class EMC_TRAJ_SET_PROBE_INDEX:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_PROBE_INDEX():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_PROBE_INDEX_TYPE, sizeof(EMC_TRAJ_SET_PROBE_INDEX)) { }; // For internal NML/CMS use only. void update(CMS * cms); int index;};class EMC_TRAJ_SET_PROBE_POLARITY:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_PROBE_POLARITY():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_PROBE_POLARITY_TYPE, sizeof(EMC_TRAJ_SET_PROBE_POLARITY)) { }; // For internal NML/CMS use only. void update(CMS * cms); int polarity;};class EMC_TRAJ_CLEAR_PROBE_TRIPPED_FLAG:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_CLEAR_PROBE_TRIPPED_FLAG():EMC_TRAJ_CMD_MSG (EMC_TRAJ_CLEAR_PROBE_TRIPPED_FLAG_TYPE, sizeof(EMC_TRAJ_CLEAR_PROBE_TRIPPED_FLAG)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_SET_TELEOP_ENABLE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_TELEOP_ENABLE():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_TELEOP_ENABLE_TYPE, sizeof(EMC_TRAJ_SET_TELEOP_ENABLE)) { }; // For internal NML/CMS use only. void update(CMS * cms); int enable;};class EMC_TRAJ_SET_TELEOP_VECTOR:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_SET_TELEOP_VECTOR():EMC_TRAJ_CMD_MSG (EMC_TRAJ_SET_TELEOP_VECTOR_TYPE, sizeof(EMC_TRAJ_SET_TELEOP_VECTOR)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose vector;};class EMC_TRAJ_PROBE:public EMC_TRAJ_CMD_MSG { public: EMC_TRAJ_PROBE():EMC_TRAJ_CMD_MSG(EMC_TRAJ_PROBE_TYPE, sizeof(EMC_TRAJ_PROBE)) { }; // For internal NML/CMS use only. void update(CMS * cms); EmcPose pos;};// EMC_TRAJ status base classclass EMC_TRAJ_STAT_MSG:public RCS_STAT_MSG { public: EMC_TRAJ_STAT_MSG(NMLTYPE t, size_t s):RCS_STAT_MSG(t, s) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_TRAJ_STAT:public EMC_TRAJ_STAT_MSG { public: EMC_TRAJ_STAT(); // For internal NML/CMS use only. void update(CMS * cms); double linearUnits; // units per mm double angularUnits; // units per degree double cycleTime; // cycle time, in seconds int axes; // number of axes in group enum EMC_TRAJ_MODE_ENUM mode; // EMC_TRAJ_MODE_FREE, // EMC_TRAJ_MODE_COORD int enabled; // non-zero means enabled int inpos; // non-zero means in position int queue; // number of pending motions, counting // current int activeQueue; // number of motions blending int queueFull; // non-zero means can't accept another motion int id; // id of the currently executing motion int paused; // non-zero means motion paused double scale; // velocity scale factor EmcPose position; // current commanded position EmcPose actualPosition; // current actual position, from forward kins double velocity; // system velocity, for subsequent motions double acceleration; // system acceleration, for subsequent // motions double maxVelocity; // max system velocity double maxAcceleration; // system acceleration EmcPose probedPosition; // last position where probe was tripped. int probe_index; // which wire or digital input is the probe // on. int probe_polarity; // which value should the probe look for to // trip. int probe_tripped; // Has the probe been tripped since the last // clear. int probing; // Are we currently looking for a probe // signal. int probeval; // Current value of probe input. int kinematics_type; // identity=1,serial=2,parallel=3,custom=4 int motion_type;};// emc_MOTION is aggregate of all EMC motion-related status classes// EMC_MOTION command base classclass EMC_MOTION_CMD_MSG:public RCS_CMD_MSG { public: EMC_MOTION_CMD_MSG(NMLTYPE t, size_t s):RCS_CMD_MSG(t, s) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_MOTION_INIT:public EMC_MOTION_CMD_MSG { public: EMC_MOTION_INIT():EMC_MOTION_CMD_MSG(EMC_MOTION_INIT_TYPE, sizeof(EMC_MOTION_INIT)) { }; // For internal NML/CMS use only. void update(CMS * cms);};class EMC_MOTION_HALT:public EMC_MOTION_CMD_MSG { public: EMC_MOTION_HALT():EMC_MOTION_CMD_MSG(EMC_MOTION_HALT_TYPE, sizeof(EMC_MOTION_HALT)) { };
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -