📍 CoDeSys란?
CoDeSys는 국제 사업 표준 ICE 61131-3에 딸라 컨트롤러 애플리케이션을 프로그래밍하기 위한 통합 개발 환경이다.
1️⃣ CODESYS User Interface
CODESYS 의 인터페이스를 먼저 알아보자. 코드시스는 아래와 같이 4개의 파트로 화면이 구성되어 있다.
- 메뉴바, 툴바
- POU's
- Declarations 선언
- Code
- Message
- Tab (POU's, Data Types, Visualization, Resources)
2️⃣ CODESYS의 기본특징
POU ( Program organisation unit)
POU는 어플리케이션의 Subroutine을 말한다.
🔹 Subroutine 이란?
프로그램이 특정 작업을 수행하기 위해 호출하는 일련의 명령어이다.
POU에는 3가지 타입이 있다. Funtion, Funtion Block, Program이다. 어플리케이션 실행은 POU PLC_PRG에서 시작한다.
✅ Funtion
- Funtion은 하나 또는 여러개의 input을 받고 하나의 output을 내보낸다. 여기서 output의 이름은 function의 이름이다.
- 내부 변수는 각 호출에서 reset된다.
- 알고리즘 계산에 사용된다.
✅ Funtion Block
- Funtion Block은 하나 또는 여러개의 input을 받고 하나 또는 여러개의 output을 내보낸다.
- 여러개의 인스턴스를 만들 수 있다.
- 각 인스턴스에는 자체 내부 변수가 있다.
- 변수는 이전 상태를 기억한다.
✅ Program
- Program은 하나 또는 여러개의 input을 받고 하나 또는 여러개의 output을 내보낸다.
- 하나의 global 인스턴스를 가진다.
- 변수를 이전 상태를 기억한다.
3️⃣ Different programming languages
CODESYS에서 사용하는 프로그래밍 언어이다.
IL - Instruction List
LD - Ladder
ST - Structured Text
FBD - Function Block Diagram
CFC - Continuous Function Chart
SFC - Sequential Flow Chart
모든 프로그래민 언어는 하나의 어플리케이션에서 혼합될 수 있다.
✅ IL - Instruction List
- IL은 텍스트언어이다.
- 모든 operator는 특별 레지스터에서 작업한다.
- assembler랑 비슷하다.
✅ LD - Ladder
- LD는 그래픽 언어이다.
- 네트워크 지향이다.
- boolean수식들을 프로그래밍하기 좋다.
✅ ST- Structured Text
- ST는 텍스트 언어이다.
- high level의 언어이다.
- Pascal언어랑 비슷하다.
- 조건부 실행과 루프에 좋은 언어이다.
✅ FBD - Function Block Diagram
- 그래픽 언어이다.
- 네트워크 지향이다.
- 이해하기 쉽다.
✅ CFC - Continuous Function Chart
- FBD와 비슷하다.
- Block들은 자유롭게 놓을 수 있다.
- output을 input으로 넣는 loop형태가 가능하다.
- IEC 61131-3에 정의되지 않았다.
✅ SFC - Sequential Flow Chart
- 그래픽 언어이다.
- step들과 transition으로 구성된다.
- 순서를 만들기 좋다.
- 각 step은 어떠한 언어로도 프로그램될 수 있다.
Funtion block과 프로그램들은 어떠한 프로그래밍 언어로도 프로그램될 수 있다. 또한 Funtion들은 IL, LD, ST, FBD, CFX로 프로그램 될 수 있다. 하지만 SFC로 할 수는 없다.
Reference
EPEC의 CODESYS자료
'CODESYS' 카테고리의 다른 글
EPEC CODESYS의 Operator(연산자)들과 사용법 3. (0) | 2025.02.07 |
---|---|
EPEC CODESYS의 Data Type들과 사용법 2. (0) | 2025.02.06 |