|
|
@@ -261,11 +261,11 @@ namespace VehicleControlSystem.ControlLayer
|
|
|
}
|
|
|
break;
|
|
|
case DriveControlEventArgs.eControlKind.ReqCurrentPos:
|
|
|
- this.ReqCurrentPos();
|
|
|
+ //this.ReqCurrentPos();
|
|
|
break;
|
|
|
case DriveControlEventArgs.eControlKind.ReqStopCurrentPos:
|
|
|
- this.taskCancel.Cancel();
|
|
|
- this.taskCancel.WaitAll();
|
|
|
+ //this.taskCancel.Cancel();
|
|
|
+ //this.taskCancel.WaitAll();
|
|
|
break;
|
|
|
case DriveControlEventArgs.eControlKind.FaultReset:
|
|
|
this.ReqFaultReset(_args);
|
|
|
@@ -279,6 +279,9 @@ namespace VehicleControlSystem.ControlLayer
|
|
|
case DriveControlEventArgs.eControlKind.JOG:
|
|
|
this.ReqJog(_args);
|
|
|
break;
|
|
|
+ case DriveControlEventArgs.eControlKind.VehicleState:
|
|
|
+ ReqVehicleState(_args);
|
|
|
+ break;
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
@@ -325,18 +328,38 @@ namespace VehicleControlSystem.ControlLayer
|
|
|
|
|
|
#region Request Method
|
|
|
|
|
|
+ private void ReqVehicleState(DriveControlEventArgs args)
|
|
|
+ {
|
|
|
+ VehicleState state = new VehicleState();
|
|
|
+ state.CurrentPosition = this.CurrentPosition;
|
|
|
+ state.CurrentSpeed = this.CurrentSpeed;
|
|
|
+ state.CurrentTag = this.CurrentTag;
|
|
|
+ state.CurrentTorque = this.CurrentTorque;
|
|
|
+
|
|
|
+ var msg = new DriveControlEventArgs();
|
|
|
+ msg.ControlKind = args.ControlKind;
|
|
|
+ msg.Args = state;
|
|
|
+
|
|
|
+ DriveControlEventPublish(msg);
|
|
|
+ }
|
|
|
+
|
|
|
private void ReqMoveToPos( DriveControlEventArgs args )
|
|
|
{
|
|
|
- var drive = 0;
|
|
|
//var result = drive.Move( args.PositionTag );
|
|
|
+ var reply = new DriveControlEventArgs();
|
|
|
|
|
|
- var msg = new DriveControlEventArgs
|
|
|
+ int targetTag = args.TargetRouteID;
|
|
|
+ var route = sql.RouteDal.GetK(targetTag);
|
|
|
+ if ( route == null)
|
|
|
{
|
|
|
- ControlKind = DriveControlEventArgs.eControlKind.FaultReset
|
|
|
- };
|
|
|
+ reply.Result = Results.Fail("Not Found Route");
|
|
|
+ this.DriveControlEventPublish(reply);
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- msg.Result = Results.Ok( "Position Move" );
|
|
|
- this.DriveControlEventPublish( msg );
|
|
|
+ this.MoveTo(route.Name);
|
|
|
+ reply.Result = Results.Ok( "Position Move" );
|
|
|
+ this.DriveControlEventPublish(reply);
|
|
|
}
|
|
|
|
|
|
void ReqFaultReset(DriveControlEventArgs _args)
|