대기상태일때 자동멈춤기능 다시 활성화

remotecontrol 모드 추가, 원격으로 turn, manual, auto 이동시 활성화된다.. 내부코드는 없음. 상태만 추가함, idle 상태일때 자동 멈춤코드가 동작하지 않게 하기 위함이다.
This commit is contained in:
ChiKyun Kim
2026-02-09 08:37:39 +09:00
parent ddaab0b5da
commit f5f08de0b9
4 changed files with 27 additions and 10 deletions

View File

@@ -296,6 +296,12 @@ namespace Project
} }
else PUB.XBE.StepMC = Device.eDocStep.EnterIng; else PUB.XBE.StepMC = Device.eDocStep.EnterIng;
break; break;
case ERunStep.REMOTECONTROL:
if(isFirst)
{
PUB.log.AddE("Remote Control mode");
}
break;
} }
} }

View File

@@ -59,16 +59,16 @@ namespace Project
} }
//대기모드에서는 움직이지 않게 한다 //대기모드에서는 움직이지 않게 한다
//if(PUB.AGV.system1.agv_run) if (PUB.AGV.system1.agv_run)
//{ {
// var ts = VAR.TIME.RUN(eVarTime.IdleStopTime); var ts = VAR.TIME.RUN(eVarTime.IdleStopTime);
// if(ts.TotalSeconds > 1) if (ts.TotalSeconds > 1)
// { {
// PUB.log.Add($"대기상태에서는 정차"); PUB.log.Add($"대기상태에서는 정차");
// PUB.AGV.AGVMoveStop("대기상태에서는 정차"); PUB.AGV.AGVMoveStop("대기상태에서는 정차");
// VAR.TIME.Update(eVarTime.IdleStopTime); VAR.TIME.Update(eVarTime.IdleStopTime);
// } }
//} }
return false; return false;

View File

@@ -266,19 +266,23 @@ namespace Project
case ENIGProtocol.AGVCommandHE.LTurn180: case ENIGProtocol.AGVCommandHE.LTurn180:
PUB.log.Add($"[{logPrefix}-LTurn180]"); PUB.log.Add($"[{logPrefix}-LTurn180]");
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
PUB.AGV.AGVMoveLeft180Turn(); PUB.AGV.AGVMoveLeft180Turn();
break; break;
case ENIGProtocol.AGVCommandHE.RTurn180: case ENIGProtocol.AGVCommandHE.RTurn180:
PUB.log.Add($"[{logPrefix}-RTurn180]"); PUB.log.Add($"[{logPrefix}-RTurn180]");
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
PUB.AGV.AGVMoveRight180Turn(); PUB.AGV.AGVMoveRight180Turn();
break; break;
case ENIGProtocol.AGVCommandHE.LTurn: case ENIGProtocol.AGVCommandHE.LTurn:
PUB.log.Add($"[{logPrefix}-LTurn]"); PUB.log.Add($"[{logPrefix}-LTurn]");
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
PUB.AGV.AGVMoveManual(arDev.Narumi.ManulOpt.LT, arDev.Narumi.Speed.Low, arDev.Narumi.Sensor.AllOn); PUB.AGV.AGVMoveManual(arDev.Narumi.ManulOpt.LT, arDev.Narumi.Speed.Low, arDev.Narumi.Sensor.AllOn);
break; break;
case ENIGProtocol.AGVCommandHE.RTurn: case ENIGProtocol.AGVCommandHE.RTurn:
PUB.log.Add($"[{logPrefix}-RTurn]"); PUB.log.Add($"[{logPrefix}-RTurn]");
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
PUB.AGV.AGVMoveManual(arDev.Narumi.ManulOpt.RT, arDev.Narumi.Speed.Low, arDev.Narumi.Sensor.AllOn); PUB.AGV.AGVMoveManual(arDev.Narumi.ManulOpt.RT, arDev.Narumi.Speed.Low, arDev.Narumi.Sensor.AllOn);
break; break;
case ENIGProtocol.AGVCommandHE.Stop: //stop case ENIGProtocol.AGVCommandHE.Stop: //stop
@@ -292,6 +296,7 @@ namespace Project
case ENIGProtocol.AGVCommandHE.Manual: //Manual Move (Direction, speed, runtime) case ENIGProtocol.AGVCommandHE.Manual: //Manual Move (Direction, speed, runtime)
Resultclear(); Resultclear();
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
var Direction = data[1]; //0=back, 1=forward, 2=left, 3=right var Direction = data[1]; //0=back, 1=forward, 2=left, 3=right
var Speed = data[2]; //0=slow, 1=normal, 2=fast var Speed = data[2]; //0=slow, 1=normal, 2=fast
@@ -313,6 +318,7 @@ namespace Project
case ENIGProtocol.AGVCommandHE.AutoMove: case ENIGProtocol.AGVCommandHE.AutoMove:
Resultclear(); Resultclear();
PUB.sm.SetNewRunStep(ERunStep.REMOTECONTROL);
var MotDirection = data[1]; //0=back, 1=forward var MotDirection = data[1]; //0=back, 1=forward
var MagDirection = data[2]; //0=straight, 1=left, 2=right var MagDirection = data[2]; //0=straight, 1=left, 2=right
var AutSpeed = data[3]; //0=slow, 1=normal, 2=fast var AutSpeed = data[3]; //0=slow, 1=normal, 2=fast

View File

@@ -52,6 +52,11 @@ namespace Project.StateMachine
GOHOME, GOHOME,
/// <summary>
/// XBEE에서 원격으로 명령을 내리면 이 상태로 임시 전환된다. 260209
/// </summary>
REMOTECONTROL,
/// <summary> /// <summary>
/// 충전을 해제 함 /// 충전을 해제 함
/// </summary> /// </summary>