지식 보관소
▣ 전문지식, 저작권 관련 자료들 중 일부만 공유하고 싶을때 사용할 수 있는 게시판 입니다.
▣ 정회원 이상만 다운로드가 가능하니 참고하시기 바랍니다.
작성일자 | 2010-06-17 |
---|---|
수정일자 |
안녕하세요. 원잇입니다. 이 글은 네오랑님께서 잠수전에 저에게 부탁하신 미션(?)에 대한 결과 보고 입니다.
이번 시간에 다룰 내용은 A라는 작업장에서 작업자(A) 한명이 작업을 진행 중인데, 다른 작업장에서 작업자(B)가 작업이 완료되어 A 작업장으로 이동하여 작업을 도와준다는 내용입니다.
즉 작업이 진행 중에 다른 작업자를 호출한다는 개념 입니다.
ARENA와 같은 Event Simulation Software는 일반적으로 이벤트가 시작되면 중간에 그 이벤트를 변경하거나 종료 할 수 가 없습니다.
따라서 현실적으로 위와 같이 작업 중인 작업장에 새로운 작업자를 호출한다는 것은 일반적으로 불가능합니다.
그래서 조금의 편법이 필요합니다. (ㅡㅡa)
우선 본 예제의 프로세스 차트는 아래의 그림과 같습니다. 중요한 것은 두번째 작업자(Second worker)를 어떻게 호출 할 것인가에 대한 문제 입니다.
Process Chart
위의 프로세스 차트를 토대로 ARENA로 간단한 모델링을 하였습니다.
복잡하게 보이지만 단일 프로세스에 작업자 2명인 아주 심플한 모델입니다.
아래 그림은 위의 모델을 좀 더 깔끔(?)하게 정리하려다 귀찮아서 그만 둔 모델입니다...;;;(Element, Block 사용)
여기에 사용된 내용은 아래와 같습니다.
Description
This model is an example of a workcell which calling second worker when first worker is working.
Variable
SignalWorker01 == 1001 or 0 ; First worker is busy or idel
SignalWorker02 == 1001 or 0 ; Second worker is busy or idel
Attribute
JobTime == TRIA(4,8,10) ; Working Time
EndTime == TNOW+JobTime ; Calculate Finished Working Time
NewEndTime == EndTime-TNOW ; Generate new finished Working Time when called second worker
NewJobTime == NewEndTime/2 ; Calculate new working Time when called second worker
애니메이션이 너무 부실해서 죄송합니다.;;;
자세히 보시면 남자분이 작업을 하고 있으면 여자분께서 가끔와서 도와주고 그럽니다.
사실은 여자분을 다른 곳에서 이동하여 와서 도와주는 모델을 만들려고 하였는데 미션 종료 시간이 다가와서 그냥 올립니다. ㅡㅡa
이 모델을 응용하면 실제 모델링을 할때 유용하지 않을까 생각됩니다.
밑에 움직이는 것은...애니메이션을 좀 더 자세히 보기 위해서 만든 의미없는 것들입니다.
부족한 내용은 추후에 추가하도록 하겠습니다.
오랫만에 들립니다. ^^ 메일을 확인해봤는데.... Hold2에서 SignalWorker01을 사용하지 마시고, 바로
(TNOW-EndTime) <= 0
으로 설정하시면 앞의 Separate 1위의 로직은 필요 없을 것 같네요..:-)