시뮬레이터에서 맵 로드시에 맵에 배경색이 있다면 적용 하게 함

Xbee Open 시에 return값 변경 return true -> return isopen
LogFlushAll 함수추가 (_step_close 에서 사용)
This commit is contained in:
backuppc
2025-12-08 15:12:41 +09:00
parent 98d638cd9a
commit 455e18f427
13 changed files with 175 additions and 127 deletions

View File

@@ -110,7 +110,7 @@ namespace AGVMapEditor.Forms
// 이벤트 연결 // 이벤트 연결
_mapCanvas.NodeAdded += OnNodeAdded; _mapCanvas.NodeAdded += OnNodeAdded;
_mapCanvas.NodeSelected += OnNodeSelected; //_mapCanvas.NodeSelected += OnNodeSelected;
_mapCanvas.NodesSelected += OnNodesSelected; // 다중 선택 이벤트 _mapCanvas.NodesSelected += OnNodesSelected; // 다중 선택 이벤트
_mapCanvas.NodeMoved += OnNodeMoved; _mapCanvas.NodeMoved += OnNodeMoved;
_mapCanvas.NodeDeleted += OnNodeDeleted; _mapCanvas.NodeDeleted += OnNodeDeleted;
@@ -182,22 +182,22 @@ namespace AGVMapEditor.Forms
// RFID 자동 할당 // RFID 자동 할당
} }
private void OnNodeSelected(object sender, MapNode node) //private void OnNodeSelected(object sender, MapNode node)
{ //{
_selectedNode = node; // _selectedNode = node;
if (node == null) // if (node == null)
{ // {
// 빈 공간 클릭 시 캔버스 속성 표시 // // 빈 공간 클릭 시 캔버스 속성 표시
ShowCanvasProperties(); // ShowCanvasProperties();
} // }
else // else
{ // {
// 노드 클릭 시 노드 속성 표시 // // 노드 클릭 시 노드 속성 표시
UpdateNodeProperties(); // UpdateNodeProperties();
UpdateImageEditButton(); // 이미지 노드 선택 시 이미지 편집 버튼 활성화 // UpdateImageEditButton(); // 이미지 노드 선택 시 이미지 편집 버튼 활성화
} // }
} //}
private void OnNodesSelected(object sender, List<MapNode> nodes) private void OnNodesSelected(object sender, List<MapNode> nodes)
{ {

View File

@@ -1468,6 +1468,7 @@ namespace AGVNavigationCore.Controls
const int liftWidth = 16; // 리프트 너비 (더욱 크게) const int liftWidth = 16; // 리프트 너비 (더욱 크게)
const int liftDistance = AGV_SIZE / 2 + 2; // AGV 본체 면에 바로 붙도록 const int liftDistance = AGV_SIZE / 2 + 2; // AGV 본체 면에 바로 붙도록
var currentPos = agv.CurrentPosition; var currentPos = agv.CurrentPosition;
var targetPos = agv.PrevPosition; var targetPos = agv.PrevPosition;
var dockingDirection = agv.DockingDirection; var dockingDirection = agv.DockingDirection;

View File

@@ -146,7 +146,6 @@ namespace AGVNavigationCore.Controls
// 맵 편집 이벤트 // 맵 편집 이벤트
public event EventHandler<MapNode> NodeAdded; public event EventHandler<MapNode> NodeAdded;
public event EventHandler<MapNode> NodeSelected;
public event EventHandler<List<MapNode>> NodesSelected; // 다중 선택 이벤트 public event EventHandler<List<MapNode>> NodesSelected; // 다중 선택 이벤트
public event EventHandler<MapNode> NodeDeleted; public event EventHandler<MapNode> NodeDeleted;
public event EventHandler<MapNode> NodeMoved; public event EventHandler<MapNode> NodeMoved;

View File

@@ -118,6 +118,8 @@ namespace AGVSimulator.Forms
this._liftDirectionLabel = new System.Windows.Forms.Label(); this._liftDirectionLabel = new System.Windows.Forms.Label();
this._motorDirectionLabel = new System.Windows.Forms.Label(); this._motorDirectionLabel = new System.Windows.Forms.Label();
this.timer1 = new System.Windows.Forms.Timer(this.components); this.timer1 = new System.Windows.Forms.Timer(this.components);
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.propertyNode = new System.Windows.Forms.PropertyGrid();
this._menuStrip.SuspendLayout(); this._menuStrip.SuspendLayout();
this._toolStrip.SuspendLayout(); this._toolStrip.SuspendLayout();
this._statusStrip.SuspendLayout(); this._statusStrip.SuspendLayout();
@@ -127,6 +129,7 @@ namespace AGVSimulator.Forms
this._agvControlGroup.SuspendLayout(); this._agvControlGroup.SuspendLayout();
this._canvasPanel.SuspendLayout(); this._canvasPanel.SuspendLayout();
this._agvInfoPanel.SuspendLayout(); this._agvInfoPanel.SuspendLayout();
this.groupBox1.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// _menuStrip // _menuStrip
@@ -455,6 +458,7 @@ namespace AGVSimulator.Forms
// _controlPanel // _controlPanel
// //
this._controlPanel.BackColor = System.Drawing.SystemColors.Control; this._controlPanel.BackColor = System.Drawing.SystemColors.Control;
this._controlPanel.Controls.Add(this.groupBox1);
this._controlPanel.Controls.Add(this._statusGroup); this._controlPanel.Controls.Add(this._statusGroup);
this._controlPanel.Controls.Add(this._pathGroup); this._controlPanel.Controls.Add(this._pathGroup);
this._controlPanel.Controls.Add(this._agvControlGroup); this._controlPanel.Controls.Add(this._agvControlGroup);
@@ -789,6 +793,25 @@ namespace AGVSimulator.Forms
this.timer1.Interval = 500; this.timer1.Interval = 500;
this.timer1.Tick += new System.EventHandler(this.timer1_Tick); this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
// //
// groupBox1
//
this.groupBox1.Controls.Add(this.propertyNode);
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBox1.Location = new System.Drawing.Point(0, 546);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(233, 94);
this.groupBox1.TabIndex = 4;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "노드 정보";
//
// propertyNode
//
this.propertyNode.Dock = System.Windows.Forms.DockStyle.Fill;
this.propertyNode.Location = new System.Drawing.Point(3, 17);
this.propertyNode.Name = "propertyNode";
this.propertyNode.Size = new System.Drawing.Size(227, 74);
this.propertyNode.TabIndex = 0;
//
// SimulatorForm // SimulatorForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -821,6 +844,7 @@ namespace AGVSimulator.Forms
this._canvasPanel.ResumeLayout(false); this._canvasPanel.ResumeLayout(false);
this._agvInfoPanel.ResumeLayout(false); this._agvInfoPanel.ResumeLayout(false);
this._agvInfoPanel.PerformLayout(); this._agvInfoPanel.PerformLayout();
this.groupBox1.ResumeLayout(false);
this.ResumeLayout(false); this.ResumeLayout(false);
this.PerformLayout(); this.PerformLayout();
@@ -899,5 +923,7 @@ namespace AGVSimulator.Forms
private System.Windows.Forms.ToolStripButton btMakeMap; private System.Windows.Forms.ToolStripButton btMakeMap;
private System.Windows.Forms.ToolStripMenuItem SToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem SToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.PropertyGrid propertyNode;
} }
} }

View File

@@ -104,7 +104,7 @@ namespace AGVSimulator.Forms
_simulatorCanvas.Dock = DockStyle.Fill; _simulatorCanvas.Dock = DockStyle.Fill;
// 목적지 선택 이벤트 구독 // 목적지 선택 이벤트 구독
_simulatorCanvas.NodeSelected += OnTargetNodeSelected; _simulatorCanvas.NodesSelected += OnTargetNodeSelected;
_canvasPanel.Controls.Add(_simulatorCanvas); _canvasPanel.Controls.Add(_simulatorCanvas);
} }
@@ -394,10 +394,13 @@ namespace AGVSimulator.Forms
} }
} }
private void OnTargetNodeSelected(object sender, MapNode selectedNode) private void OnTargetNodeSelected(object sender, List<MapNode> selectedNodes)
{ {
try try
{ {
// PropertyGrid 업데이트 (항상 수행)
propertyNode.SelectedObject = selectedNodes.FirstOrDefault();
// 타겟계산 모드에서만 처리 // 타겟계산 모드에서만 처리
if (_isTargetCalcMode) if (_isTargetCalcMode)
{ {
@@ -406,6 +409,7 @@ namespace AGVSimulator.Forms
//_targetCalcButton.Text = "타겟계산"; //_targetCalcButton.Text = "타겟계산";
//_targetCalcButton.BackColor = SystemColors.Control; //_targetCalcButton.BackColor = SystemColors.Control;
//_simulatorCanvas.CurrentEditMode = UnifiedAGVCanvas.EditMode.Select; //_simulatorCanvas.CurrentEditMode = UnifiedAGVCanvas.EditMode.Select;
var selectedNode = selectedNodes.FirstOrDefault();
if (selectedNode == null) return; if (selectedNode == null) return;
// 목적지를 선택된 노드로 설정 // 목적지를 선택된 노드로 설정
@@ -865,6 +869,13 @@ namespace AGVSimulator.Forms
// 시뮬레이터 캔버스에 맵 설정 // 시뮬레이터 캔버스에 맵 설정
_simulatorCanvas.Nodes = _mapNodes; _simulatorCanvas.Nodes = _mapNodes;
// 맵 설정 적용 (배경색, 그리드 표시)
if (result.Settings != null)
{
_simulatorCanvas.BackColor = System.Drawing.Color.FromArgb(result.Settings.BackgroundColorArgb);
_simulatorCanvas.ShowGrid = result.Settings.ShowGrid;
}
// 설정에 마지막 맵 파일 경로 저장 // 설정에 마지막 맵 파일 경로 저장
_config.LastMapFilePath = filePath; _config.LastMapFilePath = filePath;
if (_config.AutoSave) if (_config.AutoSave)
@@ -1876,6 +1887,7 @@ namespace AGVSimulator.Forms
} }
/// <summary> /// <summary>
/// 맵 데이터를 파일에 저장 (MapLoader 공통 저장 로직 사용) /// 맵 데이터를 파일에 저장 (MapLoader 공통 저장 로직 사용)
/// </summary> /// </summary>

View File

@@ -13,10 +13,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:44.9548285+09:00", "CreatedDate": "2025-09-11T08:34:44.9548285+09:00",
"ModifiedDate": "2025-11-06T17:17:49.1294796+09:00", "ModifiedDate": "2025-12-08T11:54:03.1730939+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Red", "DisplayColor": "Red",
"RfidId": "001", "RfidId": "0001",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -35,7 +35,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N001 - UNLOADER - [001]" "DisplayText": "N001 - UNLOADER - [0001]"
}, },
{ {
"NodeId": "N002", "NodeId": "N002",
@@ -51,10 +51,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:48.2957516+09:00", "CreatedDate": "2025-09-11T08:34:48.2957516+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:05.9083675+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "002", "RfidId": "0002",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -73,7 +73,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N002 - N002 - [002]" "DisplayText": "N002 - N002 - [0002]"
}, },
{ {
"NodeId": "N003", "NodeId": "N003",
@@ -89,10 +89,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:49.2226656+09:00", "CreatedDate": "2025-09-11T08:34:49.2226656+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:07.7966472+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "003", "RfidId": "0003",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -111,7 +111,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N003 - N003 - [003]" "DisplayText": "N003 - N003 - [0003]"
}, },
{ {
"NodeId": "N004", "NodeId": "N004",
@@ -129,10 +129,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:50.1681027+09:00", "CreatedDate": "2025-09-11T08:34:50.1681027+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:09.4014966+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "004", "RfidId": "0004",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -151,7 +151,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N004 - N004 - [004]" "DisplayText": "N004 - N004 - [0004]"
}, },
{ {
"NodeId": "N006", "NodeId": "N006",
@@ -167,10 +167,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:51.1111368+09:00", "CreatedDate": "2025-09-11T08:34:51.1111368+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:49.3718611+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "013", "RfidId": "0013",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -189,7 +189,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N006 - N006 - [013]" "DisplayText": "N006 - N006 - [0013]"
}, },
{ {
"NodeId": "N007", "NodeId": "N007",
@@ -205,10 +205,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:51.9266982+09:00", "CreatedDate": "2025-09-11T08:34:51.9266982+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:51.4185821+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "014", "RfidId": "0014",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -227,7 +227,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N007 - N007 - [014]" "DisplayText": "N007 - N007 - [0014]"
}, },
{ {
"NodeId": "N008", "NodeId": "N008",
@@ -243,10 +243,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:53.9595825+09:00", "CreatedDate": "2025-09-11T08:34:53.9595825+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:13.626916+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "009", "RfidId": "0009",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -265,7 +265,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N008 - N008 - [009]" "DisplayText": "N008 - N008 - [0009]"
}, },
{ {
"NodeId": "N009", "NodeId": "N009",
@@ -281,10 +281,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:54.5035702+09:00", "CreatedDate": "2025-09-11T08:34:54.5035702+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:15.2395639+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "010", "RfidId": "0010",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -303,7 +303,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N009 - N009 - [010]" "DisplayText": "N009 - N009 - [0010]"
}, },
{ {
"NodeId": "N010", "NodeId": "N010",
@@ -318,10 +318,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:55.0563237+09:00", "CreatedDate": "2025-09-11T08:34:55.0563237+09:00",
"ModifiedDate": "2025-11-06T17:17:49.1294796+09:00", "ModifiedDate": "2025-12-08T11:54:17.075895+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Red", "DisplayColor": "Red",
"RfidId": "011", "RfidId": "0011",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -340,7 +340,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N010 - TOPS - [011]" "DisplayText": "N010 - TOPS - [0011]"
}, },
{ {
"NodeId": "N011", "NodeId": "N011",
@@ -357,10 +357,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:55.8875335+09:00", "CreatedDate": "2025-09-11T08:34:55.8875335+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:30.5451017+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "005", "RfidId": "0005",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -379,7 +379,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N011 - N011 - [005]" "DisplayText": "N011 - N011 - [0005]"
}, },
{ {
"NodeId": "N012", "NodeId": "N012",
@@ -395,10 +395,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:56.3678144+09:00", "CreatedDate": "2025-09-11T08:34:56.3678144+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:32.3566504+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "006", "RfidId": "0006",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -417,7 +417,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N012 - N012 - [006]" "DisplayText": "N012 - N012 - [0006]"
}, },
{ {
"NodeId": "N013", "NodeId": "N013",
@@ -433,10 +433,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:56.8390845+09:00", "CreatedDate": "2025-09-11T08:34:56.8390845+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:34.1608589+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "007", "RfidId": "0007",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -455,7 +455,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N013 - N013 - [007]" "DisplayText": "N013 - N013 - [0007]"
}, },
{ {
"NodeId": "N014", "NodeId": "N014",
@@ -470,10 +470,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:34:57.2549726+09:00", "CreatedDate": "2025-09-11T08:34:57.2549726+09:00",
"ModifiedDate": "2025-11-06T17:17:49.1294796+09:00", "ModifiedDate": "2025-12-08T11:54:36.2103863+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Red", "DisplayColor": "Red",
"RfidId": "008", "RfidId": "0008",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -492,7 +492,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N014 - LOADER - [008]" "DisplayText": "N014 - LOADER - [0008]"
}, },
{ {
"NodeId": "N019", "NodeId": "N019",
@@ -507,10 +507,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:35:56.5359098+09:00", "CreatedDate": "2025-09-11T08:35:56.5359098+09:00",
"ModifiedDate": "2025-11-06T17:18:12.0236215+09:00", "ModifiedDate": "2025-12-08T11:54:53.4706808+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Magenta", "DisplayColor": "Magenta",
"RfidId": "015", "RfidId": "0015",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -529,7 +529,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N019 - CHARGER #2 - [015]" "DisplayText": "N019 - CHARGER #2 - [0015]"
}, },
{ {
"NodeId": "N022", "NodeId": "N022",
@@ -546,10 +546,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T08:36:48.0311551+09:00", "CreatedDate": "2025-09-11T08:36:48.0311551+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:47.1279261+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "012", "RfidId": "0012",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -568,7 +568,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N022 - N022 - [012]" "DisplayText": "N022 - N022 - [0012]"
}, },
{ {
"NodeId": "N023", "NodeId": "N023",
@@ -584,10 +584,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T09:41:36.8738794+09:00", "CreatedDate": "2025-09-11T09:41:36.8738794+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:55:02.2993636+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "016", "RfidId": "0016",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -606,7 +606,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N023 - N023 - [016]" "DisplayText": "N023 - N023 - [0016]"
}, },
{ {
"NodeId": "N024", "NodeId": "N024",
@@ -622,10 +622,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T09:41:37.4551853+09:00", "CreatedDate": "2025-09-11T09:41:37.4551853+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:55:00.0899323+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "017", "RfidId": "0017",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -644,7 +644,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N024 - N024 - [017]" "DisplayText": "N024 - N024 - [0017]"
}, },
{ {
"NodeId": "N025", "NodeId": "N025",
@@ -660,10 +660,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T09:41:38.0142374+09:00", "CreatedDate": "2025-09-11T09:41:38.0142374+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:57.8459375+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "018", "RfidId": "0018",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -682,7 +682,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N025 - N025 - [018]" "DisplayText": "N025 - N025 - [0018]"
}, },
{ {
"NodeId": "N026", "NodeId": "N026",
@@ -697,10 +697,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-11T09:41:38.5834487+09:00", "CreatedDate": "2025-09-11T09:41:38.5834487+09:00",
"ModifiedDate": "2025-11-06T17:18:12.0236215+09:00", "ModifiedDate": "2025-12-08T11:54:55.6038784+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Magenta", "DisplayColor": "Magenta",
"RfidId": "019", "RfidId": "0019",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -719,7 +719,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N026 - CHARGER #1 - [019]" "DisplayText": "N026 - CHARGER #1 - [0019]"
}, },
{ {
"NodeId": "LBL001", "NodeId": "LBL001",
@@ -805,10 +805,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:47.8065756+09:00", "CreatedDate": "2025-09-12T17:22:47.8065756+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:28.0157957+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "037", "RfidId": "0037",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -827,7 +827,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N015 - [037]" "DisplayText": "N015 - [0037]"
}, },
{ {
"NodeId": "N016", "NodeId": "N016",
@@ -843,10 +843,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:48.6628848+09:00", "CreatedDate": "2025-09-12T17:22:48.6628848+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:26.4584771+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "036", "RfidId": "0036",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -865,7 +865,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N016 - [036]" "DisplayText": "N016 - [0036]"
}, },
{ {
"NodeId": "N017", "NodeId": "N017",
@@ -881,10 +881,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:49.8138877+09:00", "CreatedDate": "2025-09-12T17:22:49.8138877+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:24.9652264+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "035", "RfidId": "0035",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -903,7 +903,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N017 - [035]" "DisplayText": "N017 - [0035]"
}, },
{ {
"NodeId": "N018", "NodeId": "N018",
@@ -920,10 +920,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:50.6790623+09:00", "CreatedDate": "2025-09-12T17:22:50.6790623+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:23.246666+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "034", "RfidId": "0034",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -942,7 +942,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N018 - [034]" "DisplayText": "N018 - [0034]"
}, },
{ {
"NodeId": "N005", "NodeId": "N005",
@@ -959,10 +959,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:51.5267199+09:00", "CreatedDate": "2025-09-12T17:22:51.5267199+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:21.6078399+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "033", "RfidId": "0033",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -981,7 +981,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N005 - [033]" "DisplayText": "N005 - [0033]"
}, },
{ {
"NodeId": "N020", "NodeId": "N020",
@@ -998,10 +998,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:52.3666114+09:00", "CreatedDate": "2025-09-12T17:22:52.3666114+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:20.2707567+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "032", "RfidId": "0032",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1020,7 +1020,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N020 - [032]" "DisplayText": "N020 - [0032]"
}, },
{ {
"NodeId": "N021", "NodeId": "N021",
@@ -1036,10 +1036,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:53.0958619+09:00", "CreatedDate": "2025-09-12T17:22:53.0958619+09:00",
"ModifiedDate": "2025-11-06T17:17:37.2685386+09:00", "ModifiedDate": "2025-12-08T11:54:18.362104+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "031", "RfidId": "0031",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1058,7 +1058,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N021 - [031]" "DisplayText": "N021 - [0031]"
}, },
{ {
"NodeId": "N027", "NodeId": "N027",
@@ -1073,10 +1073,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:54.7345704+09:00", "CreatedDate": "2025-09-12T17:22:54.7345704+09:00",
"ModifiedDate": "2025-11-06T17:10:24.191353+09:00", "ModifiedDate": "2025-12-08T11:54:43.1573737+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Green", "DisplayColor": "Green",
"RfidId": "041", "RfidId": "0041",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1095,7 +1095,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N027 - BUF1 - [041]" "DisplayText": "N027 - BUF1 - [0041]"
}, },
{ {
"NodeId": "N028", "NodeId": "N028",
@@ -1110,10 +1110,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:55.5263512+09:00", "CreatedDate": "2025-09-12T17:22:55.5263512+09:00",
"ModifiedDate": "2025-11-06T17:10:29.1638454+09:00", "ModifiedDate": "2025-12-08T11:54:41.5219283+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Green", "DisplayColor": "Green",
"RfidId": "040", "RfidId": "0040",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1132,7 +1132,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N028 - BUF2 - [040]" "DisplayText": "N028 - BUF2 - [0040]"
}, },
{ {
"NodeId": "N029", "NodeId": "N029",
@@ -1147,10 +1147,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:56.6623294+09:00", "CreatedDate": "2025-09-12T17:22:56.6623294+09:00",
"ModifiedDate": "2025-11-06T17:10:35.6234001+09:00", "ModifiedDate": "2025-12-08T11:54:39.9945926+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Green", "DisplayColor": "Green",
"RfidId": "039", "RfidId": "0039",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1169,7 +1169,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N029 - BUF3 - [039]" "DisplayText": "N029 - BUF3 - [0039]"
}, },
{ {
"NodeId": "N030", "NodeId": "N030",
@@ -1184,10 +1184,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-12T17:22:57.5510908+09:00", "CreatedDate": "2025-09-12T17:22:57.5510908+09:00",
"ModifiedDate": "2025-11-06T17:10:38.6071751+09:00", "ModifiedDate": "2025-12-08T11:54:38.3326835+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Green", "DisplayColor": "Green",
"RfidId": "038", "RfidId": "0038",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1206,7 +1206,7 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N030 - BUF4 - [038]" "DisplayText": "N030 - BUF4 - [0038]"
}, },
{ {
"NodeId": "N031", "NodeId": "N031",
@@ -1222,10 +1222,10 @@
"StationId": "", "StationId": "",
"StationType": null, "StationType": null,
"CreatedDate": "2025-09-15T11:18:40.5366059+09:00", "CreatedDate": "2025-09-15T11:18:40.5366059+09:00",
"ModifiedDate": "2025-11-06T17:17:28.6401293+09:00", "ModifiedDate": "2025-12-08T11:54:12.0214781+09:00",
"IsActive": true, "IsActive": true,
"DisplayColor": "Cyan", "DisplayColor": "Cyan",
"RfidId": "030", "RfidId": "0030",
"RfidStatus": "정상", "RfidStatus": "정상",
"RfidDescription": "", "RfidDescription": "",
"LabelText": "", "LabelText": "",
@@ -1244,13 +1244,13 @@
"Scale": "1, 1", "Scale": "1, 1",
"Opacity": 1.0, "Opacity": 1.0,
"Rotation": 0.0, "Rotation": 0.0,
"DisplayText": "N031 - [030]" "DisplayText": "N031 - [0030]"
} }
], ],
"Settings": { "Settings": {
"BackgroundColorArgb": -14671840, "BackgroundColorArgb": -14671840,
"ShowGrid": false "ShowGrid": false
}, },
"CreatedDate": "2025-11-06T17:18:20.440108+09:00", "CreatedDate": "2025-12-08T11:55:04.9060276+09:00",
"Version": "1.1" "Version": "1.1"
} }

View File

@@ -75,7 +75,7 @@ namespace Project.Device
try try
{ {
base.Open(); base.Open();
return true; return IsOpen;
} }
catch (Exception ex) catch (Exception ex)
{ {

View File

@@ -50,6 +50,7 @@ namespace Project
/// <summary> /// <summary>
/// 장치 관리 태스크 종료 /// 장치 관리 태스크 종료
/// File : /device/_DeviceManagement.cs
/// </summary> /// </summary>
public void StopDeviceManagementTask() public void StopDeviceManagementTask()
{ {
@@ -173,7 +174,6 @@ namespace Project
break; break;
} }
} }
PUB.log.Add("DeviceManagementWorker", "종료"); PUB.log.Add("DeviceManagementWorker", "종료");
} }

View File

@@ -150,6 +150,7 @@ namespace Project
public static AR.Log log, logagv, logplc, logbms, logxbee; public static AR.Log log, logagv, logplc, logbms, logxbee;
public static Boolean bPlayMusic = false; public static Boolean bPlayMusic = false;
/// <summary> /// <summary>
/// 사용자 인풋 감지 시간 /// 사용자 인풋 감지 시간
@@ -630,6 +631,18 @@ namespace Project
return false; return false;
} }
/// <summary>
/// 모든 로그를 플러시 합니다.
/// </summary>
public static void LogFlush()
{
PUB.log.Flush();
PUB.logagv.Flush();
PUB.logplc.Flush();
PUB.logbms.Flush();
PUB.logxbee.Flush();
}
/// <summary> /// <summary>
/// AGV 방향 업데이트 /// AGV 방향 업데이트
/// </summary> /// </summary>

View File

@@ -11,28 +11,21 @@ namespace Project
{ {
/// <summary> /// <summary>
/// 프로그램을 닫을때 1회 실행되는 함수 /// 프로그램을 닫을때 1회 실행되는 함수
/// File : /Step/_Step_Close.cs
/// </summary> /// </summary>
private void _STEP_CLOSING_START(eSMStep step) private void _STEP_CLOSING_START(eSMStep step)
{ {
PUB.bShutdown = true; PUB.bShutdown = true;
//if (PUB.PLC != null) PUB.PLC.Dispose();
// 장치 관리 태스크 종료 // 장치 관리 태스크 종료
StopDeviceManagementTask(); StopDeviceManagementTask();
PUB.AddEEDB("프로그램 종료"); PUB.AddEEDB("프로그램 종료");
PUB.log.Add("Program Close"); PUB.log.Add("Program Close");
PUB.log.Flush(); PUB.LogFlush();
PUB.logagv.Flush();
PUB.logplc.Flush();
PUB.logbms.Flush();
PUB.logxbee.Flush();
// PUB.sm.Stop();
} }
public StepResult _STEP_CLOSING(eSMStep step, TimeSpan stepTime, TimeSpan seqTime) public StepResult _STEP_CLOSING(eSMStep step, TimeSpan stepTime, TimeSpan seqTime)
{ {
//############################ //############################
//#### 사용자 전용 코드 //#### 사용자 전용 코드
//############################ //############################

View File

@@ -221,8 +221,8 @@ namespace Project
{ {
//모터방향 확인해서 UI와 AGV클래스에 적용한다 //모터방향 확인해서 UI와 AGV클래스에 적용한다
var MotDireciton = PUB.AGV.data.Direction == 'B' ? AGVNavigationCore.Models.AgvDirection.Backward : AGVNavigationCore.Models.AgvDirection.Forward; var MotDireciton = PUB.AGV.data.Direction == 'B' ? AGVNavigationCore.Models.AgvDirection.Backward : AGVNavigationCore.Models.AgvDirection.Forward;
PUB._virtualAGV.SetPosition(CurrentNode, MotDireciton);
PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, CurrentNode, MotDireciton); PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, CurrentNode, MotDireciton);
PUB._virtualAGV.SetPosition(CurrentNode, MotDireciton);
} }
//태그를 읽었다면 상태를 바로 전송한다 //태그를 읽었다면 상태를 바로 전송한다

View File

@@ -53,9 +53,13 @@ namespace Project
PUB.log.AddE($"[{logPrefix}-SetCurrent] 노드정보를 찾을 수 없습니다 RFID:{currTag}"); PUB.log.AddE($"[{logPrefix}-SetCurrent] 노드정보를 찾을 수 없습니다 RFID:{currTag}");
PUB.XBE.SendError(ENIGProtocol.AGVErrorCode.EmptyNode, $"{currTag}"); PUB.XBE.SendError(ENIGProtocol.AGVErrorCode.EmptyNode, $"{currTag}");
return; return;
}else
{
PUB.log.AddI($"XBEE:현재위치설정:[{node.RfidId}]{node.NodeId}");
} }
PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, node, PUB._virtualAGV.CurrentDirection); PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, node, PUB._virtualAGV.CurrentDirection);
PUB._virtualAGV.SetPosition(node, PUB._virtualAGV.CurrentDirection);
} }
else PUB.log.AddE($"[{logPrefix}-SetCurrent] TagString Lenght Errorr:{data.Length}"); else PUB.log.AddE($"[{logPrefix}-SetCurrent] TagString Lenght Errorr:{data.Length}");
break; break;

View File

@@ -119,7 +119,7 @@ namespace Project.ViewForm
var startNode = PUB._mapNodes.FirstOrDefault(n => n.IsNavigationNode()); var startNode = PUB._mapNodes.FirstOrDefault(n => n.IsNavigationNode());
if (startNode != null) if (startNode != null)
{ {
PUB._virtualAGV = new VirtualAGV("AGV-01", startNode.Position, AgvDirection.Forward); PUB._virtualAGV = new VirtualAGV(PUB.setting.MCID, startNode.Position, AgvDirection.Forward);
PUB._virtualAGV.SetPosition(startNode, AgvDirection.Forward); PUB._virtualAGV.SetPosition(startNode, AgvDirection.Forward);
// 캔버스에 AGV 리스트 설정 // 캔버스에 AGV 리스트 설정