nextstop 시그널을 bool변수에서 agv 으 ㅣspeed = 'L' 조건으로 변경
This commit is contained in:
@@ -100,7 +100,7 @@ namespace AGVNavigationCore.Controls
|
||||
}
|
||||
|
||||
//예측문자는 디버깅시에만 표시한다.
|
||||
if (string.IsNullOrEmpty(PredictMessage) == false && System.Diagnostics.Debugger.IsAttached)
|
||||
if (string.IsNullOrEmpty(PredictMessage) == false)
|
||||
{
|
||||
g.DrawString(this.PredictMessage, this.Font, Brushes.White, 10, 100);
|
||||
}
|
||||
|
||||
@@ -142,6 +142,7 @@ namespace AGVNavigationCore.Controls
|
||||
_alertmesage = m;
|
||||
showalert = !string.IsNullOrEmpty(m);
|
||||
}
|
||||
|
||||
|
||||
// 브러쉬 및 펜
|
||||
private Brush _normalNodeBrush;
|
||||
|
||||
@@ -347,12 +347,11 @@ namespace AGVNavigationCore.Models
|
||||
var lastNode = _currentPath.DetailedPath.Last();
|
||||
if (_currentPath.DetailedPath.Where(t => t.seq < lastNode.seq && t.IsPass == false).Any() == false)
|
||||
{
|
||||
// 마지막 노드에 도착했는지 확인 (현재 노드가 마지막 노드와 같은지)
|
||||
|
||||
|
||||
|
||||
if (_currentNode != null && _currentNode.Id == lastNode.NodeId)
|
||||
// 마지막 노드에 도착했는지 확인 (현재 노드가 마지막 노드와 같은지) -
|
||||
// 모터방향오 같아야한다. 간혹 방향전환 후 MARK STOP하는경우가있다. 260127
|
||||
if (_currentNode != null && _currentNode.Id == lastNode.NodeId && lastNode.MotorDirection == CurrentDirection)
|
||||
{
|
||||
|
||||
if (lastNode.IsPass) //이미완료되었다.
|
||||
{
|
||||
return new AGVCommand(
|
||||
@@ -365,12 +364,20 @@ namespace AGVNavigationCore.Models
|
||||
}
|
||||
else
|
||||
{
|
||||
//도킹노드라면 markstop 을 나머지는 바로 스탑한다.
|
||||
eAGVCommandReason reason = eAGVCommandReason.MarkStop;
|
||||
if (_targetnode.StationType == StationType.Normal || _targetnode.StationType == StationType.Limit)
|
||||
{
|
||||
//일반노드는 마크스탑포인트가 없으니 바로 종료되도록 한다
|
||||
reason = eAGVCommandReason.Complete;
|
||||
}
|
||||
|
||||
//마지막노드는 일혔지만 완료되지 않았다. 마크스탑필요
|
||||
return new AGVCommand(
|
||||
MotorCommand.Stop,
|
||||
MagnetPosition.S,
|
||||
SpeedLevel.L,
|
||||
eAGVCommandReason.MarkStop,
|
||||
reason,
|
||||
$"목적지 도착 전(MarkStop) - 최종:{CurrentNodeID2}"
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user