private void button_Turn_Click(int dir) { int axis = S2data.Axis; int pos = S2data.GetTargloca(axis); int startVel = S2data.GetStartSpd(axis); int vel = S2data.GetRunSpd(axis); double acc = S2data.GetAcce(axis); double dec = S2data.GetDece(axis); int dist = S2data.GetDire(axis) > 0 ? S2data.GetDistence(axis) : (-S2data.GetDistence(axis)); int homeDir = S2data.GetReturnDire(axis); int homeSVel = S2data.GetSecSpd(axis); int homeMode = 0; //预留参数 int offset = 0; //预留参数 S2data.SetDire(axis, dir); if ((S2data.NetSoftCon == 1) && !Net.IsBusy(axis)) { if (S2data.GetRunMode(axis) == 0) //点对点 { Net.AbsMove(axis, pos, startVel, vel, acc, dec); } else if (S2data.GetRunMode(axis) == 1) //连续 { Net.RltMove(axis, dir == 0 ? -2147483647 : 2147483647, startVel, vel, acc, dec); } else if (S2data.GetRunMode(axis) == 2) //原点 { Net.Home(axis, startVel, homeDir, homeSVel, vel, acc, dec, homeMode, offset); } } else if ((S2data.COMSoftCon == 1) && !Com.IsBusy(axis)) { if (S2data.GetRunMode(axis) == 0) //点对点 { Com.AbsMove(axis, pos, startVel, vel, acc, dec); } else if (S2data.GetRunMode(axis) == 1) //连续 { Com.RltMove(axis, dir == 0 ? -2147483647 : 2147483647, startVel, vel, acc, dec); } else if (S2data.GetRunMode(axis) == 2) //原点 { Com.Home(axis, startVel, homeDir, homeSVel, vel, acc, dec, homeMode, offset); } } else { lForm.RecodeInfo("执行错误!"); } }