📄 emcsh.cc
字号:
} emc_axis_jog_msg.serial_number = ++emcCommandSerialNumber; emc_axis_jog_msg.axis = axis; emc_axis_jog_msg.vel = speed / 60.0; emcCommandBuffer->write(emc_axis_jog_msg); } else { emc_set_teleop_vector.serial_number = ++emcCommandSerialNumber; emc_set_teleop_vector.vector.tran.x = 0.0; emc_set_teleop_vector.vector.tran.y = 0.0; emc_set_teleop_vector.vector.tran.z = 0.0; switch (axis) { case 0: emc_set_teleop_vector.vector.tran.x = speed / 60.0; break; case 1: emc_set_teleop_vector.vector.tran.y = speed / 60.0; break; case 2: emc_set_teleop_vector.vector.tran.z = speed / 60.0; break; case 3: emc_set_teleop_vector.vector.a = speed / 60.0; break; case 4: emc_set_teleop_vector.vector.b = speed / 60.0; break; case 5: emc_set_teleop_vector.vector.c = speed / 60.0; break; } emcCommandBuffer->write(emc_set_teleop_vector); } axisJogging = axis; if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendJogIncr(int axis, double speed, double incr){ EMC_AXIS_INCR_JOG emc_axis_incr_jog_msg; if (axis < 0 || axis >= EMC_AXIS_MAX) { return -1; } if (0 == jogPol[axis]) { speed = -speed; } emc_axis_incr_jog_msg.serial_number = ++emcCommandSerialNumber; emc_axis_incr_jog_msg.axis = axis; emc_axis_incr_jog_msg.vel = speed / 60.0; emc_axis_incr_jog_msg.incr = incr; emcCommandBuffer->write(emc_axis_incr_jog_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } axisJogging = -1; return 0;}static int sendMistOn(){ EMC_COOLANT_MIST_ON emc_coolant_mist_on_msg; emc_coolant_mist_on_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_coolant_mist_on_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendMistOff(){ EMC_COOLANT_MIST_OFF emc_coolant_mist_off_msg; emc_coolant_mist_off_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_coolant_mist_off_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendFloodOn(){ EMC_COOLANT_FLOOD_ON emc_coolant_flood_on_msg; emc_coolant_flood_on_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_coolant_flood_on_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendFloodOff(){ EMC_COOLANT_FLOOD_OFF emc_coolant_flood_off_msg; emc_coolant_flood_off_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_coolant_flood_off_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendLubeOn(){ EMC_LUBE_ON emc_lube_on_msg; emc_lube_on_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_lube_on_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendLubeOff(){ EMC_LUBE_OFF emc_lube_off_msg; emc_lube_off_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_lube_off_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleForward(){ EMC_SPINDLE_ON emc_spindle_on_msg; if (emcStatus->task.activeSettings[2] != 0) { emc_spindle_on_msg.speed = fabs(emcStatus->task.activeSettings[2]); } else { emc_spindle_on_msg.speed = +500; } emc_spindle_on_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_on_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleReverse(){ EMC_SPINDLE_ON emc_spindle_on_msg; if (emcStatus->task.activeSettings[2] != 0) { emc_spindle_on_msg.speed = -1 * fabs(emcStatus->task.activeSettings[2]); } else { emc_spindle_on_msg.speed = -500; } emc_spindle_on_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_on_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleOff(){ EMC_SPINDLE_OFF emc_spindle_off_msg; emc_spindle_off_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_off_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleIncrease(){ EMC_SPINDLE_INCREASE emc_spindle_increase_msg; emc_spindle_increase_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_increase_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleDecrease(){ EMC_SPINDLE_DECREASE emc_spindle_decrease_msg; emc_spindle_decrease_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_decrease_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendSpindleConstant(){ EMC_SPINDLE_CONSTANT emc_spindle_constant_msg; emc_spindle_constant_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_constant_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendBrakeEngage(){ EMC_SPINDLE_BRAKE_ENGAGE emc_spindle_brake_engage_msg; emc_spindle_brake_engage_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_brake_engage_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendBrakeRelease(){ EMC_SPINDLE_BRAKE_RELEASE emc_spindle_brake_release_msg; emc_spindle_brake_release_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_spindle_brake_release_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendAbort(){ EMC_TASK_ABORT task_abort_msg; task_abort_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(task_abort_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendHome(int axis){ EMC_AXIS_HOME emc_axis_home_msg; emc_axis_home_msg.serial_number = ++emcCommandSerialNumber; emc_axis_home_msg.axis = axis; emcCommandBuffer->write(emc_axis_home_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendFeedOverride(double override){ EMC_TRAJ_SET_SCALE emc_traj_set_scale_msg; if (override < 0.0) { override = 0.0; } emc_traj_set_scale_msg.serial_number = ++emcCommandSerialNumber; emc_traj_set_scale_msg.scale = override; emcCommandBuffer->write(emc_traj_set_scale_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendTaskPlanInit(){ EMC_TASK_PLAN_INIT task_plan_init_msg; task_plan_init_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(task_plan_init_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}// saved value of last program openedstatic char lastProgramFile[LINELEN] = "";static int sendProgramOpen(char *program){ EMC_TASK_PLAN_OPEN emc_task_plan_open_msg; // save this to run again strcpy(lastProgramFile, program); emc_task_plan_open_msg.serial_number = ++emcCommandSerialNumber; strcpy(emc_task_plan_open_msg.file, program); emcCommandBuffer->write(emc_task_plan_open_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}// programStartLine is the saved valued of the line that// sendProgramRun(int line) sentstatic int programStartLine = 0;static int sendProgramRun(int line){ EMC_TASK_PLAN_RUN emc_task_plan_run_msg; if (emcUpdateType == EMC_UPDATE_AUTO) { updateStatus(); } // first reopen program if it's not open if (0 == emcStatus->task.file[0]) { // send a request to open last one sendProgramOpen(lastProgramFile); } // save the start line, to compare against active line later programStartLine = line; emc_task_plan_run_msg.serial_number = ++emcCommandSerialNumber; emc_task_plan_run_msg.line = line; emcCommandBuffer->write(emc_task_plan_run_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendProgramPause(){ EMC_TASK_PLAN_PAUSE emc_task_plan_pause_msg; emc_task_plan_pause_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_task_plan_pause_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendProgramResume(){ EMC_TASK_PLAN_RESUME emc_task_plan_resume_msg; emc_task_plan_resume_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_task_plan_resume_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendProgramStep(){ EMC_TASK_PLAN_STEP emc_task_plan_step_msg; emc_task_plan_step_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_task_plan_step_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendMdiCmd(char *mdi){ EMC_TASK_PLAN_EXECUTE emc_task_plan_execute_msg; strcpy(emc_task_plan_execute_msg.command, mdi); emc_task_plan_execute_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_task_plan_execute_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendLoadToolTable(const char *file){ EMC_TOOL_LOAD_TOOL_TABLE emc_tool_load_tool_table_msg; strcpy(emc_tool_load_tool_table_msg.file, file); emc_tool_load_tool_table_msg.serial_number = ++emcCommandSerialNumber; emcCommandBuffer->write(emc_tool_load_tool_table_msg); if (emcWaitType == EMC_WAIT_RECEIVED) { return emcCommandWaitReceived(emcCommandSerialNumber); } else if (emcWaitType == EMC_WAIT_DONE) { return emcCommandWaitDone(emcCommandSerialNumber); } return 0;}static int sendToolSetOffset(int tool, double length, double diameter){ EMC_TOOL_SET_OFFSET emc_tool_set_offset_msg; emc_tool_set_offset_msg.tool = tool; emc_tool_set_offset_msg.length = length; emc_tool_set_offset_msg.diameter = diameter; emc_tool_set_offset_msg.serial_number = ++emcCommandSerialNumber;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -