[06] PLC 기초 강좌
2.6. 프로그램 처리
2.6.1. 프로그램 메모리
CPU의 종류별 메모리 Capacity가 정의되어 있습니다. (2.4.3 참조)
또, File Resister의 사용 및 Comment 내장 등의 이유로 프로그램 메모리의 관리가 필요하며,
GX Works2의 Tool->Confirm Memory Size를 통하여 CPU의 메모리를 관리 할 수 있습니다.
2.6.2. 심플 프로젝트 (Simple Project)
일반적으로 사용하는 Ladder Base의 프로그램 Project Type 입니다.
Ladder diagram을 사용할 수 있으며 FB(Function Block)와 SFC의 사용도 가능 합니다.
심플 프로젝트에는 Unlabeled Simple Project(Standard Project), Simple Project로 나눌 수
있습니다.
Unlabeled Simple Project(Standard Project)는 프로그램 내의 라벨은 사용 할 수 없으나,
FB(Function Block)내의 라벨 사용은 가능 합니다. 라벨 미사용으로 ST(Structured Text) 및
SFC(Sequential Function Chart)의 사용은 불가능 합니다.
Simple Project는 프로그램 내의 라벨 및 FB(Function Block), ST(Structured Text),
SFC(Sequential Function Chart)의 사용도 가능 합니다.
▣ LD (Ladder Diagram)
LD는 릴레이 래더 다이어그램에서 많이 사용하는 코일이나 접점 등의 그래픽 기호를
통하여 제어 프로그램을 표현하는 것입니다.
(1) 모선(Power Rail) LD는 모선에 의해 왼쪽과 오른쪽 사이에 경계를 표시합니다.
LD는 왼쪽 모선(Left Power Rail)으로 수직선을 왼쪽에, 오른쪽 모선(Right Power Rail)으로
수직선을 오른쪽에 그 범위를 정합니다.
(2) 연결선 왼쪽 모선의 TRUE(1, On) 값은 작성한 도면에 따라 오른쪽으로 전달됩니다.
그 전달되는 값을 가진 선을 전원 흐름선 또는 연결선이라고 하며, 접점이나 코일에
연결되어 있는 선입니다.
(3) 접점(Contact)은 가로 연결에 어떤 상태를 추가하는 요소이며, 왼쪽의 가로 연결 상태와
관련 블리언 입력, 출력, 혹은 메모리 변수와의 블리언 AND, OR등의 동작을 연결합니다.
(4) 코일(Coil)은 링크의 상태를 왼쪽에서 오른쪽으로 전달하며 왼쪽 링크의 상태 혹은 천이의
알맞은 함수를 관련 블리언 변수에 저장합니다.
▣ SFC (Sequential Flow Chart)
SFC는 래더 프로그램의 대체 언어로 대두되는 언어로 이산 제어 시스템의 순차 논리를 그래픽
하게 표현할 수 있습니다.
SFC는 제어 프로그램의 순차적 논리를 명확히 표시하기 때문에 프로그램의 작성과 유지,
보수 관리가 쉽고, 판독이 용이하다는 장점을 가집니다.
SFC는 다른 언어들로 표현되는 액션들을 포함하는 구조로서의 개념을 갖습니다.
SFC 프로그램은 스텝(step), 천이(transition), 액션(action), 액션 제한자(action qualifier),
그리고 흐름선(flow line)으로 이루어집니다.
2.6.3. 구조화 프로젝트 (Structured Project)
산업용 자동제어 언어의 국제 표준인 IEC1131-3과 IEC1131-5를 따르는 LD, FB, SFC, ST
프로그램 언어를 제공하며 라벨에 근거하여 PLC 전체를 운용합니다.
2.6.4. 펑션 블록 (Function Block)
FB(Function Block)는 제어 프로그램의 각종 구성 요소들을 블록으로 표현한 것으로,
전기 회로도 처럼 블록들을 적절히 연결함으로써 제어 알고리즘을 구성하게 됩니다.
FB는 제어 요소들간의 정보나 데이터의 흐름을 나타내기에 적합한 특성을 갖고 있는데,
특히 주기적으로 계속해서 수행되어야 하는 작업을 정의하는데 사용됩니다.
2.6.5. 처리 시간에 대한 견해
PLC는 일련의 순차 제어 프로그램 이므로, 처리 시간(Scan Time)에 대하여 주의해야 합니다.
PLC의 처리 시간(Scan Time)이 길어 지면 처리 지연과 I/O 리프래쉬의 오류, 통신 오류, 타이밍
처리 Over등이 일어나 제어기로서의 처리 오류 문제가 야기 됩니다.
CPU의 처리 시간은 각 명령의 처리 시간의 합계 + END 처리 시간 + I/O 리프래쉬 시간의
합계가 됩니다.
(1) CPU의 처리 시간
① 각 명령의 처리 시간
매뉴얼의 각각에 기재된 각 명령의 처리 시간의 합계입니다.
② END 처리 시간
ᆞEND 처리의 시간은 END 명령의 시간
ᆞMELSECNET와 관련되는 리프래쉬 시간
ᆞ주변 기기와의 교신 처리 시간
ᆞ시리얼 커뮤니케이션 모듈 등과의 교신 시간의 합계입니다.
③ I/O 리프래쉬 시간 = (입력 점수/16)*N1 + (출력 점수/16)*N2입니다.
(2) 처리 시간 단축 방안
① 각 명령의 처리 시간
불필요한 명령의 반복 처리를 삼가 합니다.
CALL, CJ, JUMP, BREAK(FOR~NEXT문) 명령 등을 사용하여 서브 루틴화하여 필요 시에만
태스크를 기동 합니다.
② END 처리 시간
부득이 필요하지 않으면 파라메터의 에러 검사하지 않음을 사용한다. END 처리시 배터리
검사, 퓨즈 단락 검사, I/O 모듈 조회를 실시 하므로 “에러 검사하지 않음”을 선택하면
종료 처리 시간을 1/3가량 줄일 수 있습니다.
또, 프로그램 디렉토리를 불필요하게 많이 가져가면 각 프로그램의 END(종료 처리)를
하게 되므로 처리시간이 많이 소요 됩니다.
FB를 사용한 Simple Project 예시
'MELSEC PLC 기초 강좌' 카테고리의 다른 글
[08] PLC 기초 강좌 (0) | 2018.12.24 |
---|---|
[07] PLC 기초 강좌 (0) | 2018.12.18 |
[05] PLC 기초 강좌 (0) | 2018.12.10 |
[04] PLC 기초 강좌 (0) | 2018.12.06 |
[03] PLC 기초 강좌 (2) | 2018.12.03 |
댓글