PLC/지멘스

지멘스 인스턴스란? (Single Instance, Multi Instance, Parameter Instance)

감튀러버 2024. 12. 19. 10:22
반응형

안녕하세요 오늘은 인스턴스에 대해 알아보겠습니다.

 

인스턴스(Instance) 란?

펑션블록을 호출하는 것. 

그리고 인스턴스가 처리하는 데이터는 인스턴스 DB에 저장됩니다.

따라서 글로벌 DB와 다르게 인스턴스 DB는 사용자가 수정을 할 수 없습니다.(FB의 구조를 따라가기 때문에)

 

인스턴스의 종류

펑션블록을 호출하면 아래와 같은 팝업창이 뜹니다.

선택할 수 있는 종류는 세가지 입니다.

  • Single Instance
  • Multi Instance
  • Parameter Instance


1. Single Instance

Single Instance는 FB마다 개별의 DB를 만들어줍니다.

아래 그림과 같이 FB를 호출하면 개별 DB가 생성된 것을 볼 수 있습니다.

 

2. Multi Instance

Multi Instance는 호출된 FB의 Static 영역에 DB가 생성됩니다.

여러 종류의 FB를 모아 하나의 상위FB에 호출하는 방식입니다.

지멘스에서 권장하는 방식으로 CPU메모리 절약과 효율적인 프로그래밍이 가능합니다.

https://support.industry.siemens.com/cs/document/15360455/what-is-the-difference-between-an-instance-data-block-and-a-global-data-block-and-how-does-a-call-call-influence-the-db-register-?dti=0&lc=en-LU

 

3. Parameter Instance

Multi Instance와 비슷한 개념입니다.

하지만 DB 접근방식이 다릅니다.

상위 FB의 Static영역에 Instance DB가 생성되는 Mulit Instance와 달리

Parameter Instance는 상위 FB의 InOut영역에 Instance DB가 생성됩니다.

 

따라서 상위 FB의 외부에서 DB를 연결해줘야 합니다.

 

반응형