윤돌이

[PLC의 이해] XGI란 본문

스마트팩토리/PLC

[PLC의 이해] XGI란

Yoondori 2023. 1. 29. 21:27
728x90

현재 PLC는 메이커 (지멘스, 미츠비시, LS 등등) 마다 사용 언어와 통신 네트워크가 서로 다릅니다.

이러한 불편함을 해소하고, PLC 고객에게 편리성을 도모하고자 IEC (International Electrotechnical Commission; 국제 전기 표준 회의)에서 PLC 국제 표준화 규격이 제정되었습니다.

 

XGI는 LS에서 IEC언어를 도입한 PLC입니다.

 

 XGI PLC의 특징


IEC 언어에서 새로 도입한 가장 중요한 특징들은 다음과 같습니다.

  •  다양한 데이터 타입 (type)을 지원합니다.
  •  펑션, 펑션블록, 프로그램과 같은 프로그램 구성 요소가 도입되어 상향식 또는 하향식 설계가 가능하며 프로그램을 구조적으로 작성할 수 있습니다.
  • 사용자가 작성한 프로그램을 라이브러리 화하여 다른 프로젝트에서 소프트웨어를 재 사용할 수
    있습니다.
  • 다양한 언어를 지원하므로 사용자는 최적의 언어를 선택하여 사용할 수 있습니다.

IEC에서 표준화한 PLC용 언어는 두 개의 도형 기반 언어와 두 개의 문자 기반 언어, 그리고 SFC로 이루어져 있습니다.


▶ 도형식(graphic) 언어
① LD(Ladder Diagram): 릴레이 로직 표현 방식의 언어
② FBD(Function Block Diagram): 블록화 한 기능을 서로 연결하여 프로그램을 표현하는 언어

 

▶ 문자식(Text) 언어
① IL (Instruction List): 어셈블리 언어 형태의 언어
② ST (Structured Text): 파스칼 형식의 고 수준 언어


▶ SFC (Sequential Function Chart): 플로우 차트(Flow Chart)와 유사한 형태로 순차적으로 전개되는 프로그램 전개 방식


국제 규격의 통신 프로토콜


① Open 네트워크를 지향하여 타 기종, 멀티 벤더 간의 통신이 가능합니다.
② 상위 네트워크로 Ethernet(10 Mbps) 채용
③ 하위 네트워크로 Fieldbus(1 Mbps), Device net(500 Kbps MAX.), Profibus-DP(12 Mbps MAX.) 채용


윈도우 환경의 프로그래밍 Tool (XG5000) 지원


① XG5000(Programming & Debugging Tool)의 윈도우환경 채용으로 프로그램 작성, 수정 시 윈도우 장점을 모두 이용할 수 있습니다.
② MDI(Multiple Document Interface) 지원: 하나의 화면에 각기 다른 언어를 사용하여 동시에 프로그램 작성, 수정 및 모니터링이 가능합니다.

 

프로그램 작성 용이


① 프로그램의 구조화, 모듈화에 의해 프로그램 작성이 매우 편리합니다.
② 입출력 식별자명을 실제 접속되는 기기명(한글/한자 또는 영문)으로 프로그래밍이 가능합니다.

 

 

XGI 소프트웨어 구조

프로젝트 (Project)


XGI/XGR/XEC PLC의 프로그램을 작성하기 위해서는 우선 프로젝트를 구성하여야 합니다. 하나의 프로젝트를 구성한다는 것은 하나의 PLC 시스템에 필요한 모든 구성 요소를 작성한다는 의미입니다. 즉, 가장 기본적인 스캔 프로그램(일반적인 PLC 프로그램)뿐만 아니라 기본 파라미터, I/O 파라미터 등을 작성합니다.


글로벌/직접 변수


글로벌 변수 설정 부분, 직접 변수 설명문, 플래그 부분의 탭으로 보여주며 사용자가 필요한 정보를 작성 또는 사용하는 부분입니다.


파라미터 

파라미터 부분은 PLC 시스템의 기동 시 필요한 여러 가지 정보를 작성하는 부분입니다.


▶ 기본 파라미터: 기본 파라미터 정보 중 기본 운전, 시간, 출력 제어 설정을 위한 부분과 PLC 전원이 꺼져도 데이터를 보존하는 영역 설정 부분, PLC에 에러가 발생했을 때 동작 방법의 설정을 위한 부분 그리고 MODBUS 정보 설정 부분으로 구성되어 있습니다.


▶ I/O 파라미터: PLC 슬롯에 사용할 I/O 종류를 설정하고, 해당 슬롯 별로 파라미터를 설정합니다.


데이터 타입


데이터는 그 데이터의 고유 성질을 나타내는 데이터 타입을 가지고 있습니다. 예를 들어 ANY_NUM으로 나타내면 LREAL, REAL, LINT, DINT, INT, SINT, ULINT, UDINT, UINT, USINT를 모두 포함합니다.


스캔 프로그램


입력모듈에서 입력 데이터를 읽은 후 프로그램을 처음부터 끝까지 한번 수행하고, 그 수행 결과를 출력 모듈에 쓰는 일련의 동작을 반복하여 수행하는 응용 프로그램입니다.


사용자 펑션/펑션 블록


 펑션: 펑션은 내부에 상태를 보관하고 있는 데이터를 갖지 않습니다. 즉 입력이 일정하면 출력 값도 일정해야만 펑션이 됩니다.


▶ 펑션 블록: 펑션 블록은 내부에 데이터를 가질 수 있습니다. 펑션 블록은 사용하기 전에 변수를 선언하는 것처럼 인스턴스를 선언하여야 합니다. 인스턴스라는 것은 펑션 블록에서 사용하는 변수들의 집합입다. 즉, 펑션 블록은 내부에서 사용하는 변수뿐 아니라 출력 값도 펑션 블록 자체에서 보관합니다. 따라서 인스턴스가 보관된 데이터 메모리를 기억하고 있습니다. 프로그램도 펑션 블록의 일종이라고 볼 수 있으며, 프로그램 역시 인스턴스를 선언하여야 합니다. 그러나 프로그램은 펑션 블록과 다르게 프로그램 안이나 펑션 블록 안에서 불러 사용할 수는 없습니다.


태스크 프로그램


태스크 프로그램은 스캔 프로그램처럼 매 스캔 반복처리를 하지 않고, 실행 조건이 발생할 때만 실행을 합니다. 실행해야 할 태스크가 여러 개 대기하고 있는 경우는 우선 순위가 높은 태스크 프로그램부터 처리합니다. 우선 순위가 동일한 태스크가 대기 중일 때는 발생한 순서대로 처리합니다. 태스크 종류는 정주기 태스크와 내부 접점 태스크가 있습니다.

 

 

 

우선은 XGI가 무엇인지 소프트웨어 구조에 대해서는 한번 읽어보시는 정도로 넘어가면 될것같아요.

 

 

 

 

 

XGI PLC의 프로그램 구성 요소(프로그램, 펑션, 펑션 블록)는 LD , SFC, ST등 각기 다른언어로 작성할 수

있습니다. 이에 그 언어들도 공통적으로 사용하는 문법 요소들을 가지고 있습니다.

 

다음에는 그러한 문법요소들이랑 데이터 표현방식에 대해서 알아볼게요

 

728x90

'스마트팩토리 > PLC' 카테고리의 다른 글

[PLC의 이해] 데이터 표현 방법  (2) 2023.02.03
[PLC의 이해] 동작이해  (0) 2023.01.27
[PLC의 이해] PLC회로의 이해  (2) 2023.01.25
Comments