Run Module
Run Module 은 실제 장비 동작을 담당하는 로직이 모이는 모듈입니다. Solution Explorer 에서 Run 모듈을
펼치면 Variable(모듈 변수) · Functions(개별 함수) · Sequence(시퀀스 안의 개별 Step) 로 구성됩니다.
코드는 파일 전체를 한꺼번에 편집하는 것이 아니라, 트리에서 함수·스텝 노드를 추가한 뒤 선택한 노드의
코드만 편집 탭에서 작성합니다.
구성 요소
Variable (변수)
모듈에서 사용하는 변수를 선언하는 노드입니다. 카운트 · 플래그 · 타깃 좌표 등 장비 상태 값을 모아 둡니다.
Variable 노드를 열어 다음과 같이 선언합니다.
int cycleCount = 0;
bool initOk = false;
double lastTargetX = 0.0;변수 이름은 모듈 안에서 유일해야 합니다. 이름을 바꾸면 해당 모듈의 함수·스텝에서의 참조도 함께 관리됩니다.
Functions (함수)
재사용되는 로직을 담는 개별 함수 노드들의 폴더입니다. 하드웨어 체크, 공통 에러 처리, 초기화 루틴 등이
전형적인 예입니다. Functions 를 우클릭 → Add Function 으로 함수를 추가하면 함수 노드가 생기고 그
함수의 편집 탭이 열립니다. 열린 탭에 해당 함수의 코드를 작성합니다.
// MoveToLoadPos 함수 노드의 내용 예시
MOTOR["X"].MoveAbs(100.0, true);
MOTOR["Y"].MoveAbs(50.0, true);
return true;Sequence (시퀀스)
장비의 메인 상태 흐름을 담는 폴더입니다. 가동 중에는 시퀀스의 스텝이 순차 실행되며, 한 번에 하나의
스텝만 활성화됩니다. Sequence 를 우클릭 → Add Step 으로 스텝을 추가합니다.
Step (스텝)
Sequence 안의 세부 단계 노드입니다. 각 스텝은 하나의 상태 전이를 담당하며, 스텝을 선택하면 그 스텝의
코드만 편집합니다. 스텝 노드는 우클릭으로 Rename · Move Up/Down · Delete 할 수 있어, 동작 순서를
트리에서 직접 재배치할 수 있습니다.
편집 흐름
Variable노드를 열어 모듈 변수를 선언합니다.Functions를 우클릭 →Add Function으로 공통 함수를 추가하고 코드를 작성합니다.Sequence를 우클릭 →Add Step으로 스텝을 하나씩 추가하며 동작을 기술합니다.F6(Save All & Make) 로 저장·빌드한 뒤F5(Run) 로 런타임 실행해 검증합니다.
팁
- 한 스텝은 "한 번의 상태 전이" 정도로 잘게 나누면 디버깅이 쉬워집니다.
- 재사용되는 로직은 함수로 분리해 스텝 중복을 피합니다.
- 함수·스텝 노드는 트리에서 이름변경·이동·삭제가 가능하므로, 의미가 분명한 이름을 사용하면 구조를 파악하고 재배치하기 쉽습니다.