======Переключение выхода PULSE-DIR с MQL на ось С для автосмены.====== Задача - На контроллере заняты все 6 моторных выходов на оси X1 X2 Y Z A и С (для барабана автосмены). Есть желание иметь еще управления шаговым мотором на MQL. Возникла идея добавить реле переключения и моторный выход переключать на барабан автосмены или драйвер MQL в зависимости от текущего режима (автосмена и MQL вместе работать не должны) Как это сделать Решение - #include pins.h #include mill-func.h #include vars.h connect_b() { message=PLCCMD_SET_CNC_VAR; parameter=4; //"4" is axis B; "16" is axis inversion. command=112+4; //Motor output #4 timer=2;do{timer--;}while(timer>0); }; main() { connect_b(); portset(OUTPUT_SWITCH_MOTOR); gvarset(7372,1); timer=30;do{timer--;}while(timer>0); //Flood State portset(OUTPUT_FLOOD); coolant_motor_start(); exit(99); //normal exit }; #include pins.h #include mill-func.h #include vars.h connect_c() { message=PLCCMD_SET_CNC_VAR; parameter=5; //"5" is axis C; "16" is axis inversion. command=112+4; //Motor output #4 timer=2;do{timer--;}while(timer>0); }; main() { portclr(OUTPUT_FLOOD); portclr(OUTPUT_MIST); coolant_motor_stop(); gvarset(7373,0); timer=30;do{timer--;}while(timer>0); //Mist State gvarset(7372,0); timer=30;do{timer--;}while(timer>0); //Flood State portclr(OUTPUT_SWITCH_MOTOR); connect_c(); exit(99); //normal exit };