프로그래머블 로직 컨트롤러 (PLC, Programmable logic controller)

아현·2021년 12월 22일
0

Computer Science

목록 보기
21/47

PLC 란?


  • 프로그래머블 로직 컨트롤러(영어: programmable logic controller, PLC)는 산업 플랜트의 유지관리 및 자동 제어 및 모니터링에 사용하는 제어 장치이다.

  • PLC는 입력을 프로그램에 의해 순차적으로 논리 처리하고 그 출력 결과를 이용해 연결된 외부장치를 제어한다.

    • 순차제어(sequential control)에 사용되는 대표적 장치이다.
    • PLC는 단독으로 쓰일 수도 있고, SCADA 등의 시스템과 함께 사용되기도 한다.

      스카다(Supervisory Control And Data Acquisition, SCADA) 는 감독 제어 및 데이터 수집의 약자로, SCADA 시스템의 기본 기능을 반영합니다. 기업은 SCADA 시스템을 사용하여 작업 현장에 투입된 모든 장비를 제어하고 운영 관련 데이터를 수집 및 기록합니다.


      SCADA는 일반적으로 프로그램 가능 로직 제어기(Programmable Logic Controllers, PLC) 및 원격 단말 장치(Remote Terminal Units, RTU)와 같은 소프트웨어 및 하드웨어의 조합으로 이루어집니다. 데이터는 공장 기계 및 센서와 같은 플랜트 현장 장비와 통신하는 PLC 및 RTU에서 수집됩니다. 장비에서 수집된 데이터는 제어실과 같은 다음 단계로 전송되고 운영자는 인간-기계 인터페이스(Human-Machine Interfaces, HMI)를 사용하여 PLC 및 RTU 제어를 감독할 수 있습니다. HMI는 운영자와 SCADA 시스템의 통신을 지원하는 스크린으로 SCADA 시스템의 주요 요소입니다.


  • PLC는 산업현장에서 기계제어 등에 많이 사용한다. PLC는 여러개의 입력과 출력을 갖는다. 광범위한 온도범위에서도 동작해야 하고, 전기적 노이즈에 및 진동과 충격에 강해야 한다. 제어를 위한 프로그램은 배터리 백업 및 비휘발성 메모리에 저장된다. 입력에 대해 실시간 처리 능력을 가짐으로써 정해진 시간의 입력 조건에 대해 출력은 정해진 시간 안에 반응한다.
  • 원하는 기능은 주로 래더 다이어그램에 의해 프로그램되어 동작한다.



배경

출처


PLC는 1960년대 후반에 처음으로 소개되었으며 PLC등장의 이유는 Relay 를 기반으로 하는 Sequence control system 의 유지에 드는 비용을 줄이기 위한 것이었다.

  • Relay Based Sequence Control System 의 문제점

    • Relay Based Sequence Control System은 Sequence 제어시스템의 구성을 유접점 Relay, 즉 소프트웨어적인 프로그램을 가지지 않는 전자적인 Relay 로 구성한 System을 말한다.

    • 이러한 Relay sequence control system 은 다음과 같은 3가지의 문제점을 가지고 있었다.

    1. Sequence Logic 변경의 어려움

      • 생산조건의 변경요구가 있을 경우에는 그 Control System 까지 변경하여야 한다.

      • Relay sequence 는 control system 을 변경할 경우에 납땜이나 전기결선의 변경 등을 필요로 하기 때문에 Cost 의 부담 및 장시간의
        소요를 필요로 하고, 특히 설비가동 중에는 System 의 변경이 불가능한 경우가 대부분이다.

    2. 설비 신뢰성 부족

      • Relay 는 기계적인 기구이기 때문에 정해진 Lifetime 을 가지고 있어서 이의 적절한 유지보수를 위해서는 정기적인 교체를 필요로 하며, 설비의 거대화에 따라 Relay의 개수도 증가하게 되어있어 한 개의 Relay 오작동으로도 전체 Process의 Shutdown 을 유발시킬 수 있다.
    3. Trouble Shooting 의 어려움

      • 특별한 Software Program 없이 단순히 Relay 를 이용하여 Sequence 가 구성됨에 따라 설비의 Trouble 발생시 그 Trouble shooting 을 위해서는 방대한 Relay 및 배선의 Check 를 필요로 하며, Trouble 의 원인규명을 위한 Event History Logging 역시 기대할 수 없다.



래더 다이어그램


  • 스위치등을 통해 입력신호가 들어가면 래더 다이어그램의 동작 기술에 의해 내부에서 처리되고 결과물은 최종적으로 출력코일에 나타난다.

    • 출력된 제어 대상의 동작이 전체 시스템을 제어하게 된다.

  • 래더 다이어그램에는 a-접점 스위치, b-접점 스위치, 타이머, 논리연산 명령어, 통신, 기타 다양한 기능을 갖는 기능 블럭에 의해 표현한다.

  • 표현된 래더 다이어그램 프로그램은 처음부터 끝까지 CPU에 의해 순차적으로 해석되어 내부의 상태와 출력의 상태가 결정되고 변한다.

    • 한번 전체가 처리되어 내부 상태와 출력이 결정되면, 각 출력포트에 변화 된 출력이 나타난다. 장치에 따라 초당 정해진 횟수만큼 처리되어 입력에 의해 내부 처리된 출력이 결정되고 외부 출력포트에 결과가 나타난다.

    • 래더 다이어그램의 각 줄에 표현된 논리구조는 서로 연관성을 갖고 있어 컴퓨터 프로그램 코드처럼 처음 줄부터 차례대로 끝 줄까지 실행되는 것이 아니다. 각 줄이 서로 복합적으로 순서없이 서로 작용할 수 있으므로 전체까지 완전히 스캔하여 각 상태의 연관성에 의해 최종 상태가 결정된다. 따라서 한 스캔에 의해 전체 처리가 끝나야 어느 포트 든 상태를 알수 있고, 출력에 반영된다.



스위치 종류


스위치 요소는 물리적 입출력 단자 일수도 있지만 내부메모리에 의존하는 '상태'일수도 있다. 물리적 스위치 입력이나 디지털 출력일수도 있고, 내부에 어떤 상태를 저장하는 수단이기도 하다. 제품마다 물리적 입출력인지 내부 메모리 상태인지는 주로 시작 알파벳에 따라 결정된다.

  • 스위치의 종류:

    • a-접점 스위치 : 조작하지 않는 평상 시에 떨어져 있다가, 조작에 의해 연결된다.
           P00
    |------[ ]------------------------------(P10)---| 
    
     기능 : P00 조작 전 P10이 'OFF' 되어 있다가, P00를 조작하면 연결되고 P10이 'ON(SET)' 된다.
    
    • b-접점 스위치 : 조작하지 않는 평상 시에 붙어 있다가, 조작에 의해 떨어진다.
           P00
    |------[/]------------------------------(P10)---|    
    
    기능 : P00를 조작 전 P10이 'ON' 되어 있다가, P00조작하면 연결이 끊어지고 P10은 'OFF(reset)' 된다.
    



래더 다이어그램의 프로그램 논리 예


  • 논리 AND

  • 논리 AND_NOT

  • 논리 OR



기본 기능 동작





profile
Studying Computer Science

0개의 댓글