20 lines
1.5 KiB
Markdown
20 lines
1.5 KiB
Markdown
모든 길목(10,9,6,13) 에 대한 정/역 방향에 대한 로직을 정의하고, 나머지 모든위치에서는 해당 길목으로 이동을 한다.
|
|
목적지에 따라서 길목을 지정한다
|
|
|
|
0001 10 역방향 : 0010(BS) 0012(BS) 0016(BS) 0001(BS), 정방향(회전필요) : [ 0010(BR) 0009(FR) 0007(BS) 0010(BS) : 방향전환 완료] - 동일
|
|
0015 09 정방향 : 0009(FS), 역방향(회전필요) : [ 0009(FL) 0010(BS) 0007(FL) 0009(FS) ] - 동일
|
|
0011 06 역방향 : 0006(BS) 0011(BS), 정방향(회전필요) : [ 0006(BL) 0007(FS) 00013(BL) 0006(BS) ] - 동일
|
|
버퍼 06 역방향 : 0006(BL) 0005(BS) ~ 나머지 0031까지는 BS상태로 계속 이동, 정방향(회전필요) : [ 0006(BL) 0007(FS) 0013(BL) 0006(BL) ] - 동일
|
|
0008 13 역방향 : 0013(BS) 0019(BS) 0008(BS), 정방향(회전필요) : [ 0013(BL) 0006(FL) 0007(BS) 0013(BS) ] - 동일
|
|
|
|
나머지모든 경유는 각 경유지로 해당 방향으로 그대로 길을 찾는다
|
|
목적지를 보고 목적지의 경유지까지 경로로를 계산한다 (A*)
|
|
|
|
동일노드가 목적지 일때에는
|
|
도킹방향이 맞고 마크센서가 ON 되어있는 경우에만 완료처리를 한다.
|
|
도킹방향이 맞고 마크센서가 OFF되어있다면 반대방향으로 한번 이동하고, 다시 역방향 이동하면서 MARK STOP 처리한다.
|
|
도킹방향이 맞지 않는 경우 일반 노드 검색처럼 경유지 처리한다
|
|
|
|
버퍼에서 버퍼로 이동할때에만 추가 코드를 적용한다
|
|
|