✍️ [Plant Simulation Tutorial #04] – MU(Movable Unit)와 속성(Attribute) 활용하기
📑 요약
이번 글에서는 Plant Simulation의 핵심 개체인 **MU(Movable Unit)**의 개념과, 그에 부여할 수 있는 속성(Attribute) 활용 방법을 설명합니다. MU는 제품, 부품, 자재 등 공정 내의 흐름을 구성하는 기본 단위로, 이 객체의 속성을 다루면 훨씬 다양한 시뮬레이션을 구성할 수 있습니다.
🔍 1. MU(Movable Unit)란?
MU는 시뮬레이션에서 '움직이는 단위'입니다.
공장에서 생산되는 부품, 제품, 자재 등은 모두 MU로 표현할 수 있습니다.
MU는 크게 다음과 같은 두 가지 유형으로 나뉩니다:
MU (Movable Unit) | 일반적인 제품/부품을 의미 |
Container | 여러 개의 MU를 담는 단위 (예: 팔레트, 박스 등) |
🔧 2. Attribute – MU의 개별 속성 지정
MU에 속성(attribute) 을 부여하면 각 MU마다 다른 상태/데이터를 지닐 수 있습니다.
예를 들어, ‘제품 A’와 ‘제품 B’를 구분하거나, 품질 상태를 저장할 수 있죠.
MU.AttributeName | 해당 MU에 부여된 속성값 접근 |
AttributeName := 값 | 해당 속성에 값 할당 |
💡 추가 팁

예를 들어, '제품 A' 의 제원을 넣고 싶으면 아래와 같이 속성을 만들어 봅시다.
💡 예시:
Name : P_xlength
datatype : length(m)
Value : 0.5

🎯 3. Attribute 활용 예시
✅ 예제 시나리오
- part 에 새로운 속성 setting 을 제작
- Source에서 [exit ctrl] 에서 Method 를 이용하여 setting 의 값을 1 - 10 까지 랜덤으로 생성
- Station에서 [before entrance] 체크
- 그리고 [entrance ctrl] method 를 이용하여 setting 값 1 , 2 , 3 은 공정시간 10초 , 이외의 세팅은 5초로 설정
- 구동확인
// set variable A for make random
var A : integer := z_uniform(1,10)
@.setting := A
// essential for Front type exit ctrl
@.move
// set process time of station for each setting
if @.setting = 1 or @.setting = 2 or @.setting = 3
?.proctime := 10
print "이 제품의 공정시간은 10초 입니다."
print "this product's processtime is 10 secs"
else
?.proctime := 5
print "이 제품의 공정시간은 5초 입니다."
print "this product's processtime is 5 secs"
end
🧠 이렇게 하면 실제 공정의 제품군별 시간 차이를 반영한 시뮬레이션이 가능해집니다.
📦 4. Attribute의 다양한 활용 방식
제품 타입 분류 | MU.Type := "LCD" |
긴급 여부 표시 | MU.Urgent := true |
품질 등급 | MU.Grade := "B" |
납기일 정보 | MU.DueDate := 2024.07.31 |
📘 고급 팁
- EntranceControl, ExitControl, Method 탭에서 자유롭게 조건 설정 가능
- Attribute 기반으로 Sensor, Sorter, Decision Point 와 같은 논리 객체와 연동 가능
- Table 객체와 연결하면 속성에 따라 외부 데이터를 불러와 처리 가능
📝 마무리
MU와 Attribute를 제대로 활용하면 단순한 공정 흐름을 넘어, 복잡한 제품군 처리, 조건부 흐름 제어, 우선순위 기반 시뮬레이션까지 구현할 수 있습니다.
Plant Simulation을 "툴"이 아닌 "디지털 공정 분석 플랫폼"으로 쓰기 위한 첫걸음이 바로 Attribute의 이해입니다.
🔜 다음 포스트 예고
[Plant Simulation Tutorial #05]에서는 ExitControl & Method 프로그래밍 기초를 소개하며,
MU 흐름을 더욱 유연하게 제어하는 방법을 함께 알아보겠습니다.