자동화설비(ImMahcine[SEQ])의 기본구조-초안

2017. 1. 16. 09:16장비제어개발관한이야기

반응형

 

오늘 제가 포스팅할 내용은 아직도 구현중에 있고 앞으로도 구현해야 자동화 장비 플랫폼 ImMachine 입니다.

그 중에서 장비의 구동에 관련된 자동화설비(ImMahcine[SEQ])을 소개 하려합니다.

앞으로 포스팅할 프로젝트의 중심이 되는 플랫폼으로 완성되지 않지만, 새로 자동화 장비 개발하시는 분들에게 조금이나마 도움이 되었으면 합니다.

지속적으로 업그레이드 할 생각인 만큼 틀린점 고쳐야되는점 있으면 과감히 댓글바랍니다.

 

ImMachine[SEQ] 기본구조

 

위와 같은 Layer 구조로 되어 있습니다. Layer 간에는 약속된 인터페이스로 연결되어 있습니다.

위와 같이 Layer구조로 나눈 이유는 일단, 프로그래밍하기에도 개념적으로 생각이 편하기도 하고, 실제로 Hardware_Layer, 라이브러리가 변경 되는 경우도 있고 Layer 수정사항을 좀더 포용이 가능하게 설계하려다 보니 위와 같은 구조가 되었습니다.

 

Layer 설명

 

HardWare Layer

 - 하드웨어를 구동하기 위한 기본적인 함수 들을 인터페이스에 맞게 수정 통합시킨 부분으로 모션라이브러, IO라이브러리 등이 Layer 속합니다.

 

Unit Layer

  - HardWare 레이어의 인터페이스 형식으로 통신하면서 실제 설비의 파트 Stage부나 Magazin부를 상세하게 명세 하는 부분입니다.

  시리얼포트로 구동되는 산업용 로봇을 예로 명세하면 다음과 같습니다.

 

 

Process Layer

 - Unit Layer 에서 명세한 부분을 상황에 맞게 구동시키는 부분입니다. 유닛간 출동 위험성 같은 부분도 이부분에서 처리합니다. GUI에서 실제로는 부분만 노출되어 사용되어집니다.

 

 

위와 같이 시퀀스 구동을 위해서 3개의 Layer 구현하게 됩니다. 레이어 실제 구동이나 상세한 설명, 소스코드는 지속적으로 포스팅 할예정입니다.

오늘도 즐거운 프로그래밍이 되세요.

 

반응형