GUI 매뉴얼 · Chapter 4
title: "Run Module" chapter: 4 source: "Doc/QMachineStudio UserManaul.pdf" images:
- run-module.png
- run-module-sequence.png
Run Module
Run Module 은 실제 장비 동작을 담당하는 스크립트가 모이는 영역입니다. 변수 · 함수 · 시퀀스 · 스텝의 네 가지 구성 요소로 정리됩니다.

구성 요소
Variable (변수)
장비 상태를 담는 전역 변수가 선언됩니다. 카운트 · 플래그 · 타깃 좌표 등이 여기 모입니다.
int cycleCount = 0;
bool initOk = false;
double lastTargetX = 0.0;변수 이름은 프로젝트 전체에서 유일해야 합니다. 변경 시 전체 시퀀스에서 참조가 자동으로 업데이트됩니다.
Functions (함수)
시퀀스에서 재사용되는 로직을 모아둡니다. 하드웨어 체크, 공통 에러 처리, 초기화 루틴 등이 전형적인 예.
bool MoveToLoadPos(void) {
Motor[X].MoveAbs(100.0, true);
Motor[Y].MoveAbs(50.0, true);
return Motor[X].CheckInPosition(100.0)
&& Motor[Y].CheckInPosition(50.0);
}Sequence (시퀀스)
장비의 메인 상태 흐름입니다. 장비 가동 중에는 각 시퀀스가 순차 실행되며, 한 번에 하나의 스텝만 활성화됩니다.

Step (스텝)
Sequence 안의 세부 단계입니다. NextStep("Name") 으로 다음 단계로 전이하며, 진입/종료 시각이
자동으로 로깅됩니다.
편집 흐름
- Variable 탭에서 사용할 전역 변수를 선언
- Functions 탭에서 공통 함수를 작성
- Sequence 탭에서
Main시퀀스를 만들고 Step 별로 동작 기술 F6으로 저장·빌드 →F5로 런타임 실행하여 검증
팁
- 시퀀스는 짧게 유지. 한 스텝은 "한 번의 상태 전이" 정도로 나누면 디버깅이 쉬워집니다.
- 재사용되는 로직은 반드시 Functions 로 분리 — 시퀀스 중복을 피할 수 있습니다.
- 변수·함수·시퀀스의 이름은
F12로 정의 이동 ·Shift + F12로 참조 검색이 가능하니 의미 있는 이름을 사용하세요.