This commit is contained in:
backuppc
2026-02-10 14:53:54 +09:00
parent c2cc5d67ae
commit 471b8ff9c4
18 changed files with 786 additions and 743 deletions

View File

@@ -16,6 +16,34 @@ namespace Project
public partial class fMain
{
private void AGV_TurnComplete(object sender, arDev.Narumi.TurnEventArgs e)
{
//턴작업이완료되었을때 발생된다.
PUB.log.Add($"AGV Turn Complete:{e.Direction}");
//일반노드에서 턴작업이 진행되었다면, 이전경로와 현재경로의 모터 방향을 바꿔준다(일반노드에서만 사용)
if (PUB._virtualAGV.CurrentNode != null && PUB._virtualAGV.CurrentNode.StationType == StationType.Normal)
{
var prevnodeid = PUB._virtualAGV.PrevNode;//.Id;
var currnodeid = PUB._virtualAGV.CurrentNode;//.Id;
//현재 방향과 반대로 모터방향을 셋팅한다. 기존에 Fwd로 왔다면 BWD로 온것으로 처리
var motdir = PUB._virtualAGV.PrevDirection == AgvDirection.Forward ? AgvDirection.Backward : AgvDirection.Forward;
PUB.log.Add($"일반노드에서 TURN 완료({e.Direction}) 이전노드:{prevnodeid.ID2},현재노드:{currnodeid.ID2},이전방향:{PUB._virtualAGV.PrevDirection},변경방향:{motdir}");
//이전노드이동한것으로처리
PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, prevnodeid, motdir);
PUB._virtualAGV.SetPosition(prevnodeid, motdir);
//현재노드이동한것으로처리
PUB._mapCanvas.SetAGVPosition(PUB.setting.MCID, currnodeid, motdir);
PUB._virtualAGV.SetPosition(currnodeid, motdir);
}
}
private void AGV_Message(object sender, arDev.Narumi.MessageEventArgs e)
{
if (e.MsgType == arDev.NarumiSerialComm.MessageType.Normal)

View File

@@ -166,6 +166,7 @@ namespace Project
PUB.AGV = new arDev.Narumi();
PUB.AGV.Message += AGV_Message;
PUB.AGV.DataReceive += AGV_DataReceive;
PUB.AGV.TurnComplete += AGV_TurnComplete;
//배터리관리시스템
PUB.BMS = new arDev.BMS();
@@ -261,6 +262,7 @@ namespace Project
PUB.AddEEDB("프로그램 시작");
}
void AutoLoadLastPosition()
{
PUB.log.Add("autoload last position");