카테고리 없음

지멘스 FB와 FC의 차이점 알아보기

감튀러버 2024. 12. 13. 12:51

2024.12.10 - [PLC/지멘스] - 지멘스 TIA Portal Program Block 알아보기

 

안녕하세요 오늘은 FB와 FC에 대해서 알아보겠습니다.

 

간단히 설명을 하자면 FB는 자체DB를 가지고 있어서 데이터 저장이 가능합니다.

반대로 FC는 자체DB가 없습니다. 따라서 외부 DB에 데이터를 저장해야 합니다.

 

FB와 FC를 하나씩 만들어 OB에 호출해 보겠습니다.

 

차이점이 보이시나요?

 

Network1에 호출된 FB는 DB를 가지고 있고 

Network2에 호출된 FC는 DB가 없습니다.

 

저렇게 FB에 딸려오는 DB를 Instance DB라고 합니다.

사용자가 임의로 만들어 주는 DB는 Global DB라고 하고요.

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-WW

 

지멘스 지원포털에 좋은 자료가 있어서 가져왔습니다.

글로벌DB와 인스턴스DB의 차이점을 알기쉽게 표현해 놨습니다.

 

표에서와 같이여러 차이점도 있고요.

아래 사진에서 처럼 글로벌DB는 OB,FB,FC 모두 접근이 가능한 반면

인스턴스DB는 해당 FB만 접근이 가능합니다.


 

자체 DB가 있다는 점 말고도 FB와FC의 차이점은 또 있습니다.

펑션내부가 다르게 구성이 되어 있는데요

 

하나씩 살펴보겠습니다.

 

1. Input

외부에서 필요한 데이터를 받아올 수 있습니다. 해당 접점 상태를 Read 할 수 있습니다.

 

2. Output

외부로 출력을 내보낼 수 있습니다. 해당접점에 데이터를 Write 할 수 있습니다.

 

3. InOut

Input과 Output을 합친 항목입니다. Read / Write 둘 다 할 수 있습니다.

 

4. Static

펑션 내부에서 사용 할 수 있는 데이터 입니다. Data저장이 가능합니다.

(FC에는 Static 항목이 없습니다)

 

5. Temp(Temporary의 약자입니다)

펑션 내부에서 사용 할 수 있는 데이터 입니다. Static과 다르게 데이터를 저장 할 수 없습니다.

(1스캔 후 초기화 됩니다.)

 

6. Constant

상수를 지정 할 수 있는 항목입니다.

 

 

Input, Output, InOut 세개 항목은 외부로부터 데이터를 받거나 보내는 용도로 사용합니다.

따라서 항목을 추가하게 되면 펑션의 그림이 달라집니다.

 

아래 그림처럼 Input과 InOut은 펑션 왼쪽에 추가되고, Output은 펑션 오른쪽에 추가가 됩니다.

저 부분에 필요한 접점들을 드래그해서 넣어주면 입출력 기능을 사용할 수 있게 됩니다.

 

 

하지만 Static과 Temp, Constant는 항목을 추가하더라도 외부에 표시되지 않습니다.

왜냐하면 펑션 내부에서만 사용하는 접점이기 때문입니다.

 

728x90
반응형
LIST