9.9 KiB
AGV는 아래 태그사이에 존재한다면 해당 라인으로 간주하고 각 라인별 목적지에 대한 경우의 수를 미리 계산 해본다
*110 : unloader line
*179 : charger 1
*116 : cleanner
62 : buffer14 line
*8~13 : Loader Line
충전기 #1 : 전진도킹 충전기 #2 : 후진도킹 로더,언로더,클리너,버퍼 : 후진도킹
AGV는 모니터반대방향에 리프트가 설치되어있고. 모니터쪽으로 이동하는 방향이 F방향이다. 충전소1(Chg#1)을 제외하고 나머지 포인트는 모두 리프트쪽으로 도킹을 해야한다(후면) AGV에는 마그넷센서가달려있고 이 센서를 이용하여 좌/우/직진을 수행한다 L/R/S 로 명명함
Unloader line (모니터:우 -> F) chg#1 : 0001(FS) 0016(FS) 0012(FS) 0010(FR) 0009(FS) 0015 [MARKSTOP] chg#2 : 0001(FS) 0016(FS) 0012(FS) 0010(FR) 0009(BR) 0007(BS) 0013(BL) 0019 [MARKSTOP] loader : 0001(FS) 0016(FS) 0012(FS) 0010(FR) 0009(BR) 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] unloader : 0012(FS) 0016(FS) 0001 [MARKSTOP] cleanner : 0001(FS) 0016(FS) 0012(FS) 0010(FR) 0009(BR) 0007(BS) 0006(BR) 0011 [MARKSTOP] buffer14 : 0001(FS) 0016(FS) 0012(FS) 0010(FR) 0009(BR) 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) 0034 [MARKSTOP]
Unloader line (모니터:좌 <- F) chg#1 : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0007(FR) 0009(FS) 0015 [MARKSTOP] chg#2 : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0007(BS) 0013(BL) 0019 [MARKSTOP] loader : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] unloader : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0009(FL) 0007(BR) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] cleanner : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0007(BS) 0006(BR) 0011 [MARKSTOP] buffer14 : 0001(BS) 0016(BS) 0012(BS) 0010(BL) 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP]
Charger #1 Line (모니터:우 ->F) Chg#1: 0017(FS) 0009(FR) 0007(BR) 0010(FR) 0009(FS) 0015 [MARKSTOP] Chg#2 : 0017(FS) 0009(FR) 0010(BR) 0007(BS) 0013(BL) 0019 [MARKSTOP] Loader: 0017(FS) 0009(FR) 0010(BR) 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] Unloader: 0017(FS) 0009(FR) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner: 0017(FS) 0009(FR) 0010(BR) 0007(BS) 0006(BR) 0011 [MARKSTOP] Buffer14: 0017(FS) 0009(FR) 0010(BR) 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP]
Charger #1 Line (모니터:좌 <-F ) Chg#1: 0017(BS) 0009(BL) 0015 [MARKSTOP] Chg#2: 0017(BS) 0009(BS) 0007(FS) 0013(BL) 0019 [MARKSTOP] Loader: 0017(BS) 0009(BS) 0007(FS) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader: 0017(BS) 0009(BL) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner: 0017(BS) 0009(BS) 0007(FR) 0006(BR) 0011 [MARKSTOP] Buffer: 0017(BS) 0009(BS) 0007(FR) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) 0034 ~ 0031 [MARKSTOP]
Cleanner Line (모니터:우 ->F) Chg#1: 0011(FS) 0006(FL) 0007(FL) 0009(FL) 0015 [MARKSTOP] Chg#2: 0011(FS) 0006(FL) 0007(BR) 0013(BL) 0019 [MARKSTOP] Loader: 0011(FS) 0006(FL) 0007(BR) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader: 0011(FS) 0006(FR) 0013(BL) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner: 0006 0011 [MARKSTOP] Buffer: 0011(FS) 0006(FL) 0007(BR) 0006(FR) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP] Cleanner Line (모니터:좌 <- F) Chg#1 0011(BS) 0006(BR) 0007(BL) 0010(BL) 0009(FL) 0015 [MARKSTOP] Chg#2 0011(BS) 0006(BR) 0013(BS) 0019 [MARKSTOP] Loader: 0011(BS) 0006(BR) 0013(BS) 0019(BR) 0008 [MARKSTOP] UnLoader: 0011(BS) 0006(BR) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0011(BS) 0006(BR) 0007(FL) 0013(BR) 0006(BR) 0011 [MARKSTOP] Buffer 0011(BS) 0006(BR) 0007(FL) 0013(BR) 0006(FR) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP] Buffer Line (모니터:우 -> F) - 교차로 : 0006 Chg#1 0002(FS) 0004(FL) 0003(FL) 0005(FR) 0006(FS) 0007(FL) 0009(FL) 0015 [MARKSTOP] Chg#2 0002(FS) 0004(FL) 0003(FL) 0005(FR) 0006(FS) 0007(BR) 0013(BL) 0019 [MARKSTOP] Loader 0002(FS) 0004(FL) 0003(FL) 0005(FR) 0006(FS) 0007(BR) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader 0002(FS) 0004(FL) 0003(FL) 0005(FR) 0006(FR) 0013(BL) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0002(FS) 0004(FL) 0003(FL) 0005(FR) 0006(FR) 0013(BL) 0006(BR) 0011 [MARKSTOP] Buffer 0005(B) 0003 0004 0002 0034 ~ 0031 [MARKSTOP] Buffer Line(모니터:좌 <- F) - 교차로 : 0006 Chg#1 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0013(FL) 0007(FL) 0009(FL) 0015 [MARKSTOP] Chg#2 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0013(BS) 0019 [MARKSTOP] Loader 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0013(BS) 0019(BR) 0008 [MARKSTOP] UnLoader 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0013(FL) 0007(BR) 0006(BR) 0011 [MARKSTOP] Buffer 0002(BS) 0004(BL) 0003(BL) 0005(BR) 0006(BR) 0013(FL) 0007(BR) 0006(FR) 0005(BL) 0003(BS) ~ 0034 [MARKSTOP]
10 노드 시작 (모니터:우 -> F) Chg#1 0010(FS) 0009(FL) 0015 [MARKSTOP] Chg#2 0010(FR) 0009(BR) 0007(BS) 0013(BL) 0019 [MARKSTOP] Loader 0010(FR) 0009(BR) 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader 0010(BS) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0010(FR) 0009(BR) 0007(BS) 0006(BR) 0011 [MARKSTOP] Buffer 0010(FR) 0009(BR) 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP] 10 노드 시작 (모니터:좌 <- F) Chg#1 0010(BL) 0007(FR) 0009(FS) 0015 [MARKSTOP] Chg#2 0010(BL) 0007(BS) 0013(BL) 0019 [MARKSTOP] Loader 0010(BL) 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader 0010(BL) 0009(FL) 0007(BS) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0010(BL) 0007(BS) 0006(BR) 0011 [MARKSTOP] Buffer 0010(BL) 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP]
7 노드 시작 (모니터:우 -> F) Chg#1 0007(BR) 0010(FR) 0009(FS) 0015 [MARKSTOP] Chg#2 0007(BS) 0013(BL) 0019 [MARKSTOP] Loader 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader 0007(BR) 0009(FL) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0007(BS) 0013(BL) 0006(BR) 0011 [MARKSTOP] Buffer 0007(BS) 0013(BL) 0006(FR) 0005(BL) 0003(BS) 0004(BR) 0002(FS) [MARKSTOP]
7 노드 시작 (모니터:좌 <- F) Chg#1 0007(FR) 0009(FL) 0015 [MARKSTOP] Chg#2 0007(BS) 0013(BL) 0019 [MARKSTOP] Loader 0007(BS) 0013(BL) 0019(BR) 0008 [MARKSTOP] UnLoader 0007(FR) 0009(BR) 0010(BL) 0012(BL) 0016(BS) 0001 [MARKSTOP] Cleanner 0007(BS) 0006(BR) 0011 [MARKSTOP] Buffer 0007(BS) 0006(BL) 0005(BL) 0003(BS) 0004(BR) 0002(FS) 0034 [MARKSTOP]
Buffer Internal Move 목표버퍼가 우측에 있는 경우 (모니터:우 -> F) : 도킹방향은 맞음 Buf1->Buf4 0031(FS) 0032(FS) 0033(FS) 0034(FS) : 목표 노드까지는 전진방향으로 이동(전진은 우측으로 이동함) 이동완료 후 R방향(반대)으로 MARSTOP 신호를 통해서 멈춤 Buffer Internal Move 목표버퍼가 좌측에 있는 경우 (모니터:우 -> F) : 도킹방향은 맞음 Buf4->Buf1 목표 노드까지는 후진방향으로 이동(후진은 좌측으로 이동함) 이동완료 후 MARKSTOP 신호를 통해서 멈춤 * NOTE: 정지 정밀도를 높이기 위해 항상 목표지점의 우측에서 좌측방향으로 진입하며 멈추도록 설계됨. (센서 히스테리시스 고려) Buffer Internal Move (모니터:좌 <- F) : 도킹방향 맞지않음 (방향전환 필요하니 6에서 전환 필요) ~ 0006(BS) 0005(BR) 0013(FS) 0007(BR) 0006(BL) 0005(BS) ~ 목표노드까지 이동한 후 MARKSTOP
#노드범위 [0008,0019,0013] Loader Line (모니터:우 -> F) : 전진(F)은 0008 -> 좌측/하단 방향. 따라서 19번(우측/상단)으로 가려면 후진(B)해야 함. Chg#1 0008(BS) 0019(BS) 0013(BS) 0007(BS) 0010(FR) 0009(FS) 0015 [MARKSTOP] Chg#2 0008(BS) 0019(BS) 0013(BS) 0007(FR) 0006(BR) 0013(BS) 0019 [MARKSTOP] Loader 0008(BS) 0019(BS) 0013(BS) 0007(FR) 0006(BR) 0013(BS) 0019(BS) 0008 [MARKSTOP] UnLoader 0008(BS) 0019(BS) 0013(BS) 0007(BS) 0010(BS) 0012(BS) 0016(BS) 0001 [MARKSTOP] Cleanner 0008(BS) 0019(BS) 0013(BL) 0006(BS) 0011 [MARKSTOP] Buffer 0008(BS) 0019(BS) 0013(BL) 0006(BL) 0005(BL) 0003(BS) 0004(BS) 0002(FS) 0034 [MARKSTOP]
Loader Line (모니터:좌 <- F) : 전진(F)은 0008 -> 우측/상단(19번) 방향. 따라서 19번으로 가려면 전진(F)해야 함. Chg#1 0008(FS) 0019(FS) 0013(FS) 0007(FL) 0009(FS) 0015 [MARKSTOP] Chg#2 0008(FS) 0019(FS) BS(반대방향으로) [MARKSTOP] Loader 0013(BS) 0019(BS) 0008(BS) [MARKSTOP] UnLoader 0008(FS) 0019(FS) 0013(FS) 0007(FL) 0009(BL) 0010(BS) 0012(BS) 0016(BS) 0001 [MARKSTOP] Cleanner 0008(FS) 0019(FS) 0013(FS) 0007(BR) 0006(BS) 0011 [MARKSTOP] Buffer 0008(FS) 0019(FS) 0013(FS) 0007(BR) 0006(BL) 0005(BL) 0003(BS) 0004(BS) 0002(BS) 0034 [MARKSTOP]
============ 각 노드별 모든 경우의 수를 표시한다 ======================================================== 도킹위치에따른 방향 : 0001(B),0015(F),0011(B),0019(B),0008(B),0034(B),0033(B),0032(B),0031(B)
공용그룹이동 (해당 목표까지의 중요 사이의 경로) [모니터방향:좌/상] - [G1312ML] 0013(FS) 0007(FL) 0009(BL) 0010(BS) 0012(BS) [G1913ML] 0019(FS) 0013(FS) 0007(FL) 0009(FS) [G1309ML] 0013(FS) 0007(FL) 0009(FS) [G0110ML] 0001(BS) 0016(BS) 0012(BS) 0010(BL) [G0601ML] 0006(BR) 0007(BS) 0010(BS) 0012(BS) 0016(BS) 0001(BS) [G0519ML] 0005(BR) 0006(BR) 0007(BS) 0013(BL) 0019(BS)
[G1213ML] 0012(FS) 0010(FR) 0009(BR) 0007(BS) 0013(BL)
[모니터방향:우/하]
[G1312MR] 0013(BS) 0007(BS) 0010(BS) 0012(BS)
[G1309MR] 0013(BS) 0007(BS) 0010(FR) 0009(FS)
[G1610MR] 0001(BS) 0016(BS) 0012(BS) 0010(BL)