..
This commit is contained in:
@@ -11,164 +11,6 @@ namespace Project
|
||||
public partial class FMain
|
||||
{
|
||||
|
||||
private void Joystick_InputChanged(object sender, arDev.Joystick.JoystickRaw.InputChangedEventHandler e)
|
||||
{
|
||||
|
||||
var keyName = e.input.ToString();
|
||||
if (e.input == HidSharp.Reports.Usage.Button5) keyName = "L-TRIGGER";
|
||||
else if (e.input == HidSharp.Reports.Usage.Button6) keyName = "R-TRIGGER";
|
||||
else if (e.input == HidSharp.Reports.Usage.Button9) keyName = "SELECT";
|
||||
else if (e.input == HidSharp.Reports.Usage.Button10) keyName = "START";
|
||||
else if (e.input == HidSharp.Reports.Usage.Button4) keyName = "BUT-Y";
|
||||
else if (e.input == HidSharp.Reports.Usage.Button1) keyName = "BUT-X";
|
||||
|
||||
PUB.log.Add("JOYSTICK", string.Format("[{0}] {1}->{2}", keyName, e.oldValue, e.newValue));
|
||||
|
||||
if (PUB.sm.Step != eSMStep.IDLE && PUB.sm.Step != eSMStep.ERROR && PUB.flag.get(eVarBool.FG_MOVE_PICKER) == false && PUB.sm.Step != eSMStep.WAITSTART) return;
|
||||
|
||||
if (e.input == HidSharp.Reports.Usage.Button4) //stop
|
||||
{
|
||||
if (e.newValue > 0)
|
||||
{
|
||||
PUB.log.Add("Joystick Click : Stop");
|
||||
_BUTTON_STOP();
|
||||
}
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.Button1) //reset
|
||||
{
|
||||
if (e.newValue > 0)
|
||||
{
|
||||
PUB.log.Add("Joystick Click : Reset");
|
||||
_BUTTON_RESET();
|
||||
}
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.Button9) //select button
|
||||
{
|
||||
if (e.newValue == 1)
|
||||
{
|
||||
PUB.Result.JoystickAxisGroup += 1;
|
||||
if (PUB.Result.JoystickAxisGroup > 3) PUB.Result.JoystickAxisGroup = 0;
|
||||
}
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.Button10) //start button
|
||||
{
|
||||
if (e.newValue == 1 && PUB.flag.get(eVarBool.FG_SCR_JOBSELECT) == false)
|
||||
{
|
||||
if (PUB.sm.Step >= eSMStep.IDLE)
|
||||
{
|
||||
PUB.log.AddI("START BUTTON");
|
||||
this._BUTTON_START();
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.Button5) //ltrigger
|
||||
{
|
||||
AR.SETTING.Data.Enable_SpeedLimit = true;
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.Button6) //ltrigger
|
||||
{
|
||||
AR.SETTING.Data.Enable_SpeedLimit = false;
|
||||
}
|
||||
|
||||
//트리거 L,R을 눌렀을때 홈 가능한 위치라면 홈을 진행한다
|
||||
if (e.newValue > 0 && (e.input == HidSharp.Reports.Usage.Button5 || e.input == HidSharp.Reports.Usage.Button6))
|
||||
{
|
||||
//두개가 동시에 눌렷을때
|
||||
if (PUB.joystick.Buttons[4] && PUB.joystick.Buttons[5])
|
||||
{
|
||||
if (PUB.flag.get(eVarBool.FG_INIT_MOTIO) == false) return;
|
||||
if (PUB.sm.isRunning == true) return;
|
||||
if (DIO.IsEmergencyOn() == true) return;
|
||||
if (PUB.sm.Step == eSMStep.RUN) return;
|
||||
|
||||
PUB.log.AddAT("Home initialization operation with joystick");
|
||||
Func_sw_initialize();
|
||||
}
|
||||
}
|
||||
|
||||
//동작중만 아니면 작동하게한다.
|
||||
if (PUB.sm.Step != eSMStep.RUN)
|
||||
{
|
||||
short axisH = 0;
|
||||
short axisV = 1;
|
||||
if (PUB.Result.JoystickAxisGroup == 1) //왼쪽뭉치
|
||||
{
|
||||
axisH = 2;
|
||||
axisV = 3;
|
||||
}
|
||||
else if (PUB.Result.JoystickAxisGroup == 2) //오른쪽뭉치
|
||||
{
|
||||
axisH = 4;
|
||||
axisV = 5;
|
||||
}
|
||||
else if (PUB.Result.JoystickAxisGroup == 3) //theta, picker-Z
|
||||
{
|
||||
axisH = 6;
|
||||
axisV = 1;
|
||||
}
|
||||
|
||||
//X축으로 이동하는것은 PX,
|
||||
if (e.input == HidSharp.Reports.Usage.GenericDesktopX)
|
||||
{
|
||||
if (e.newValue == 0)
|
||||
{
|
||||
//좌
|
||||
PUB.mot.JOG(axisH, arDev.MOT.MOTION_DIRECTION.Negative, 100, 500, false, false);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, true, "joystick");
|
||||
}
|
||||
else if (e.newValue == 127)
|
||||
{
|
||||
//멈춤
|
||||
PUB.mot.MoveStop("Joystick", axisH);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, false, "joystick");
|
||||
}
|
||||
else if (e.newValue == 255)
|
||||
{
|
||||
//우
|
||||
PUB.mot.JOG(axisH, arDev.MOT.MOTION_DIRECTION.Positive, 100, 500, false, false);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, true, "joystick");
|
||||
}
|
||||
}
|
||||
else if (e.input == HidSharp.Reports.Usage.GenericDesktopY)
|
||||
{
|
||||
if (e.newValue == 0)
|
||||
{
|
||||
//상
|
||||
PUB.mot.JOG(axisV, arDev.MOT.MOTION_DIRECTION.Negative, 100, 500, false, false);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, true, "joystick");
|
||||
}
|
||||
else if (e.newValue == 127)
|
||||
{
|
||||
//멈춤
|
||||
PUB.mot.MoveStop("Joystick", axisV);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, false, "joystick");
|
||||
}
|
||||
else if (e.newValue == 255)
|
||||
{
|
||||
//하
|
||||
PUB.mot.JOG(axisV, arDev.MOT.MOTION_DIRECTION.Positive, 100, 500, false, false);
|
||||
PUB.flag.set(eVarBool.FG_JOYSTICK, true, "joystick");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void Joystick_Disconnected(object sender, EventArgs e)
|
||||
{
|
||||
PUB.log.AddE("Joystick connection terminated");
|
||||
}
|
||||
|
||||
private void Joystick_Connected(object sender, EventArgs e)
|
||||
{
|
||||
PUB.log.AddI("Joystick connection completed");
|
||||
}
|
||||
|
||||
private void Joystick_Changed(object sender, EventArgs e)
|
||||
{
|
||||
PUB.log.AddAT("Joystick detected");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user