PLC Hardware Component

2.1 입출력(I/O) 섹션

프로그램 가능 논리 제어기(PLC)의 입력/출력(I/O) 섹션은 모든 현장(field) 장치가 연결되는 부분으로, 이들 장치와 CPU 사이의 인터페이스(interface)를 제공합니다. 입출력 구성은 고정형(fixed) PLC에는 본체에 내장되어 있으며, 모듈형(modular) 유형은 PLC에 꽂아 사용하는 외장 I/O 모듈을 사용합니다.

그림 2-1은 개별 I/O 모듈로 구성된 랙 기반(rack-based) I/O 섹션을 보여줍니다. 입력 인터페이스 모듈(input interface modules)은 기계 또는 공정 장치로부터의 신호를 받아 컨트롤러가 사용할 수 있는 신호로 변환합니다. 출력 인터페이스 모듈(output interface modules)은 컨트롤러의 신호를 기계 또는 공정을 제어하는 데 사용되는 외부 신호로 변환합니다. 일반적인 PLC는 여러 개의 I/O 모듈을 장착할 공간을 가지고 있어, 적절한 모듈을 선택하여 특정 application에 맞게 맞춤 구성할 수 있습니다. 랙의 각 슬롯(slot)은 어떤 유형의 I/O 모듈이든 수용할 수 있습니다.

I/O 시스템은 현장의 하드와이어(hardwired) 구성 요소들과 CPU 사이의 인터페이스를 제공합니다. 입력 인터페이스는 공정 상태 정보를 CPU에 전달할 수 있도록 하며, 이에 따라 CPU가 출력 인터페이스를 통해 제어 대상 공정 장치로 동작 신호를 전달할 수 있도록 합니다.

Allen-Bradley 컨트롤러는 그림 2-2와 같이 PLC chassis와 rack을 구분합니다. I/O 모듈, 프로세서 모듈(processor modules), 전원 공급 장치(power supplies)가 장착되는 하드웨어 어셈블리를 chassis라고 합니다. Chassis는 슬롯 개수에 따라 다양한 크기로 제공되며, 일반적으로 4, 8, 12, 16 슬롯 구성이 가능합니다.

논리 랙(logical rack)은 128개의 입력 포인트와 128개의 출력 포인트로 구성된 주소 지정 가능한(addressable) 단위입니다.

하나의 랙은 입력 이미지 테이블 파일(input image table file) 8워드(word)와 출력 이미지 테이블 파일(output image table file) 8워드를 사용합니다. 출력 이미지 테이블 파일의 한 워드와 그에 대응하는 입력 이미지 테이블 파일의 한 워드를 I/O 그룹(I/O group)이라고 합니다. 하나의 랙은 최대 8개의 I/O 그룹(0부터 7까지 번호가 매겨짐)을 포함할 수 있어 최대 128개의 디스크리트(discrete) I/O를 구성할 수 있습니다. 하나의 chassis 안에 둘 이상의 rack이 있을 수 있고, 하나의 rack에 둘 이상의 chassis가 있을 수도 있습니다.

PLC 시스템의 장점 중 하나는 그림 2-3과 같이 현장 장치 근처에 I/O 모듈을 배치하여 필요한 배선 길이를 최소화할 수 있다는 점입니다. 프로세서는 원격 입력 모듈(remote input modules)로부터 신호를 수신하고 통신 모듈(communication module)을 통해 이들의 출력 모듈(output modules)로 신호를 다시 보냅니다.

랙이 프로세서 모듈로부터 떨어진 곳에 배치될 경우 이를 원격 랙(remote rack)이라고 합니다. 프로세서와 통신하기 위해 원격 랙은 특수 통신 네트워크(special communications network)를 사용합니다.

각 원격 랙은 서로를 구분하기 위해 고유한 스테이션 번호(station number)가 필요합니다. 원격 랙들은 통신 모듈을 통해 로컬 랙(local rack)과 연결됩니다. 케이블은 모듈들 사이를 연결합니다. CPU와 I/O 랙 사이에 광섬유 케이블(fiber optic cable)을 사용할 경우, 전압 강하 없이 20마일이 넘는 거리에서도 I/O 포인트를 운용할 수 있습니다. 동축 케이블(coaxial cable)은 2마일이 넘는 거리까지 원격 I/O 설치를 가능하게 합니다. 광섬유 케이블은 산업 환경에서 흔히 존재하는 고전력 라인이나 장비에 의해 발생하는 노이즈를 픽업하지 않습니다. 동축 케이블은 이러한 종류의 노이즈에 더 취약합니다.

PLC의 메모리 시스템은 모든 입력과 출력의 상태에 관한 정보를 저장합니다. 이 모든 정보를 추적하기 위해 주소 지정(addressing)이라는 시스템을 사용합니다. 주소(address)는 PLC 메모리에서 특정 정보가 어디에 위치하는지를 나타내는 레이블 또는 번호입니다. 귀하의 자택 주소가 도시 내에서 거주지를 알려주듯이, 장치나 데이터의 주소는 그 정보가 PLC 메모리의 어디에 위치하는지를 알려줍니다. 따라서 PLC가 특정 현장 장치에 대한 정보를 알고자 할 때, 해당 장치의 주소 위치를 찾아보면 됩니다. 주소 지정 방식의 예로는 Allen-Bradley PLC-5 및 SLC 500 컨트롤러에서 사용되는 랙/슬롯 기반(rack/slot-based), Allen-Bradley ControlLogix 컨트롤러에서 사용되는 태그 기반(tag-based), 그리고 소프트 PLC들(soft PLCs)에서 사용되는 PC 기반 제어(PC-based control)가 있습니다.

일반적으로 랙/슬롯 기반 주소 지정 요소에는 다음이 포함됩니다:

Type— 이 유형은 입력(input)인지 출력(output)인지의 주소 대상을 결정합니다.

Slot— 슬롯 번호는 I/O 모듈의 물리적 위치를 의미합니다. 확장 랙(expansion racks)을 사용할 때는 랙 번호와 슬롯 번호의 조합이 될 수 있습니다.

Word and Bit— 워드와 비트는 특정 I/O 모듈에서 실제 단자 연결을 식별하는 데 사용됩니다. 디스크리트 모듈(discrete module)은 보통 하나의 워드만 사용하며, 각 연결은 그 워드를 구성하는 서로 다른 비트에 대응됩니다.

랙/슬롯 주소 시스템에서는 랙 내에서 모듈의 위치와 입력 또는 출력 장치가 연결된 모듈의 단자 번호가 장치의 주소를 결정합니다. 그림 2-4는 Allen-Bradley PLC-5 컨트롤러의 주소 지정 형식을 보여줍니다. 다음은 입력 및 출력 주소의 전형적인 예입니다:

그림 2-5는 Allen-Bradley SLC 500 controller addressing format을 나타냅니다. 주소는 프로세서가 장치를 모니터하거나 제어하기 위해 해당 장치가 어디에 위치하는지를 식별하는 데 사용됩니다. 또한 I/O module housing에는 field wiring을 연결할 수 있는 방법이 마련되어 있습니다. Field wiring을 I/O housing에 연결하면 모듈 교체 시 배선을 보다 쉽게 분리하고 다시 연결할 수 있습니다. 각 모듈에는 각 I/O 회로의 ON 또는 OFF 상태를 나타내는 표시등이 추가되어 있습니다. 대부분의 output modules에는 blown fuse indicators도 포함되어 있습니다. 다음은 SLC 500 real-world general input과 output 주소의 일반적인 예입니다.

Discrete I/O 모듈에 연결된 모든 입출력 장비는 PLC의 memory에서 특정 bit에 주소가 지정됩니다. Bit은 1 또는 0이 될 수 있는 binary digit입니다. Analog I/O modules은 word addressing format을 사용하며, 이를 통해 전체 word를 주소 지정할 수 있습니다. 주소의 bit 부분은 일반적으로 사용되지 않지만, 필요한 경우 프로그램에서 analog value의 디지털 표현을 구성하는 bit들을 주소 지정할 수 있습니다. 그림 2-6은 SLC 500 controller에 적용되는 bit level과 word level addressing을 보여줍니다.

그림 2-7은 Allen-Bradley ControlLogix tag-based addressing format을 나타냅니다. Logix5000 controllers에서는 tag(alphanumeric name)를 사용하여 data(variables)에 주소를 지정합니다. 고정된 numeric format 대신 tag name 자체가 data를 식별합니다. Field devices에는 PLC ladder logic program 개발 시 참조되는 tag names가 부여됩니다.

PC-based control은 personal 또는 industrial hardened computers에서 실행됩니다. Soft PLCs라고도 하며, PC에서 PLC 기능을 시뮬레이션하여 open architecture systems가 proprietary PLCs를 대체할 수 있게 합니다. 이러한 구현은 field devices와의 인터페이스를 위해 PC와 함께 input/output card(그림 2-8)를 사용합니다.

그림 2-9에서 볼 수 있듯이 combination I/O modules은 동일한 physical module 안에 input과 output connections을 모두 포함할 수 있습니다. 모듈은 printed circuit board와 terminal assembly로 구성됩니다. Printed circuit board는 프로세서 회로와 입력 또는 출력 장치의 회로를 인터페이스하기 위한 electronic circuitry를 포함합니다. 모듈은 I/O rack의 slot 또는 connector, 혹은 directly into the processor에 꽂도록 설계됩니다. Terminal assembly는 printed circuit board의 전면 가장자리에 부착되어 있으며 field-wiring connections을 하는 데 사용됩니다. 모듈에는 각 입력과 출력 연결용 terminals, 각 입력과 출력에 대한 status lights, 입력과 출력을 구동하는 데 사용되는 power supply의 연결부가 포함됩니다. Terminal과 status light 구성은 제조업체마다 다를 수 있습니다.

대부분의 PLC modules은 plug-in wiring terminal strips를 가지고 있습니다. Terminal block은 그림 2-10과 같이 actual module에 꽂히도록 되어 있습니다. 모듈에 문제가 있을 경우 전체 strip을 제거하고 새 모듈을 삽입한 뒤 terminal strip을 새 모듈에 꽂습니다. 별도의 지시가 없는 한, PLC에 전원이 공급된 상태에서는 I/O modules 또는 terminal blocks를 설치하거나 제거해서는 안 됩니다. 모듈이 잘못된 슬롯에 삽입되면 wiring arm을 통해 연결된 부적절한 전압으로 인해 손상될 수 있습니다. 대부분의 faceplates와 I/O modules에는 올바른 faceplate가 올바른 module에만 장착되도록 keying이 되어 있습니다. 즉, output module은 input module이 원래 있던 슬롯에 장착할 수 없습니다.

입력과 출력 모듈은 랙 내 어느 위치에나 배치할 수 있지만, 일반적으로 배선 작업을 쉽게 하기 위해 함께 그룹화됩니다. I/O modules은 8, 16, 32, 64 point cards(그림 2-11)일 수 있습니다. 이 숫자는 사용 가능한 입력 또는 출력의 개수를 나타냅니다. 일반적인 I/O module은 eight inputs 또는 outputs를 가지고 있습니다. High-density module은 최대 64 inputs 또는 outputs를 가질 수 있습니다. High-density module의 장점은 하나의 슬롯에 최대 64 inputs 또는 outputs를 설치할 수 있어 공간 절약이 가능하다는 점입니다. 단점은 high-density output modules이 출력당 허용할 수 있는 current가 적다는 점입니다.

2.2 Discrete I/O Modules

가장 일반적인 유형의 I/O interface module은 discrete type입니다(그림 2-12). 이 유형의 인터페이스는 selector switches, pushbuttons, limit switches와 같이 ON/OFF 형태의 field input devices를 연결합니다. 마찬가지로 출력 제어는 lights, relays, solenoids, motor starters 등 단순한 ON/OFF switching이 필요한 장치들로 제한됩니다. Discrete I/O의 분류는 bit-oriented inputs와 outputs를 포함합니다. 이러한 입력 또는 출력에서는 각 bit가 자체적으로 완전한 정보 요소를 나타내며, 외부 접점의 상태를 제공하거나 process circuit에서 전원의 존재 또는 부재를 알려줍니다. 각 discrete I/O module은 field-supplied voltage source로부터 전원을 공급받습니다. 이러한 전압은 크기나 종류가 다를 수 있으므로, I/O modules은 표 2-1에 나열된 것처럼 다양한 AC 및 DC voltage ratings으로 제공됩니다.

모듈 자체는 그림 2-13에 나타난 것처럼 삽입되는 rack enclosure의 backplane으로부터 적절한 동작을 위한 전압과 전류를 공급받습니다. Backplane power는 PLC module power supply에 의해 제공되며, I/O module circuit board에 있는 전자 회로를 구동하는 데 사용됩니다. Output module의 부하에 필요한 상대적으로 높은 전류는 일반적으로 사용자가 공급한 전원에 의해 제공됩니다. Module power supplies는 사용되는 모듈의 종류와 수에 따라 일반적으로 3 A, 4 A, 12 A 또는 16 A로 정격이 지정됩니다.

그림 2-14는 일반적인 교류(AC) discrete input module에서 하나의 입력에 대한 block diagram을 보여줍니다. 입력 회로는 power section과 logic section의 두 기본 부분으로 구성됩니다. Optical isolator는 field wiring과 PLC backplane 내부 회로 사이의 전기적 절연을 제공하는 데 사용됩니다. Input LED는 입력 장치의 상태를 나타내기 위해 켜지거나 꺼집니다. Logic circuits는 디지털 신호를 processor로 전달합니다. 내부 PLC control circuitry는 일반적으로 5 VDC 이하의 전압으로 동작합니다.

그림 2-15는 discrete AC input module에서 하나의 입력에 대한 단순화된 diagram을 보여줍니다. 회로의 동작은 다음과 같이 요약됩니다.

• Capacitor와 저항 R1, R2로 구성된 input noise filter는 contact bounce 또는 electrical interference로 인해 발생하는 false signals를 제거합니다.

• Pushbutton이 닫히면 120 VAC가 bridge rectifier 입력에 인가됩니다.

• 이로 인해 optical isolator의 LED에 걸리는 저전압 DC output voltage가 발생합니다.

• Zener diode(ZD)의 정격 전압은 감지할 수 있는 최소 threshold level의 voltage를 결정합니다.

• LED에서 나온 빛이 phototransistor에 닿으면 phototransistor는 도통 상태로 전환되며 pushbutton의 상태가 logic으로 processor에 전달됩니다.

• Optical isolator는 높은 AC input voltage를 logic circuits와 분리할 뿐 아니라, line voltage transients로 인한 processor 손상을 방지합니다. 또한 산업 환경에서 흔히 발생하는 electrical noise의 영향을 줄여 processor의 불규칙한 동작을 방지하는 데 도움을 줍니다.

• Fault diagnosis를 위해 입력 pushbutton이 닫히면 input state LED indicator가 켜집니다. 이 indicator는 optical isolator의 어느 쪽에든 연결될 수 있습니다.

• AC/DC type input module은 입력 polarity가 중요하지 않으므로 AC와 DC 입력 모두에 사용됩니다.

• PLC input module은 각 입력이 서로 절연되어 공통 입력 연결이 없는 경우도 있으며, 공통 연결을 공유하는 입력 그룹으로 구성될 수도 있습니다.

Discrete input modules은 PLC control system에서 네 가지 작업을 수행합니다.

• Field device로부터 신호가 입력되었는지를 감지합니다.

• 입력 신호를 해당 PLC에 맞는 올바른 voltage level로 변환합니다.

• 입력 신호의 voltage 또는 current 변화로부터 PLC를 절연합니다.

• 어떤 sensor가 신호를 발생시켰는지를 processor에 전달하는 신호를 보냅니다.

그림 2-16은 일반적인 discrete output module에서 하나의 출력에 대한 block diagram을 나타냅니다. 입력 모듈과 마찬가지로 power section과 logic section 두 부분으로 구성되며, 두 부분은 isolation circuit으로 연결됩니다. 출력 인터페이스는 출력 load device를 켜거나 끄는 전자 스위치로 볼 수 있습니다. Logic circuits는 출력 상태를 결정하며, output LED는 출력 신호의 상태를 표시합니다.

그림 2-17은 discrete AC output module의 단일 출력에 대한 단순화된 diagram을 보여줍니다. 회로의 동작은 다음과 같이 요약됩니다.

• Processor의 digital logic circuits는 프로그램에 따라 출력 상태를 설정합니다.

• Processor가 output load의 여자(energize)를 요구하면 opto-isolator의 LED에 전압이 인가됩니다.

• LED는 빛을 방출하며 phototransistor를 도통 상태로 전환시킵니다.

• 이것은 다시 triac AC semiconductor switch를 도통 상태로 만들어 출력 load로 전류가 흐르게 합니다.

• Triac은 양 방향으로 도통하므로 출력으로 공급되는 전류는 교류입니다.

• Triac은 ON/OFF 상태가 아니라 LOW/HIGH resistance levels을 가지며, OFF 상태(HIGH resistance)에서도 몇 mA의 누설 전류가 흐릅니다.

• 입력 회로와 마찬가지로 출력 인터페이스에는 각 출력의 상태를 나타내는 LEDs가 제공됩니다.

• Output module에는 일반적으로 fuse가 필요하며, 각 회로별로 제공되어 회로별 보호 및 독립 동작이 가능합니다. 일부 모듈은 fuse 상태를 위한 표시등도 제공합니다.

• Triac은 DC load를 스위칭하는 데 사용할 수 없습니다.

• Fault diagnosis를 위해, PLC가 output load를 ON하라는 명령을 내릴 때 LED output status indicator는 켜져 있습니다.

개별 AC outputs은 일반적으로 triac의 크기로 인해 1 A 또는 2 A로 제한됩니다. 하나의 module에 대한 최대 전류 용량도 별도로 지정됩니다. 지정된 current ratings을 초과해서는 output module 회로가 손상될 수 있습니다. Large motors와 같은 더 큰 load를 제어하기 위해 output module에는 standard control relay가 연결됩니다. Relay의 contacts는 그림 2-18과 같이 더 큰 load 또는 motor starter를 제어하는 데 사용됩니다. 이와 같이 control relay가 사용될 때 이를 interposing relay라 합니다.

Discrete output modules은 field output devices를 켜거나 끄는 데 사용됩니다. 이러한 모듈은 어떤 two-state device에도 사용할 수 있으며 AC와 DC 버전, 다양한 voltage ranges, current ratings으로 제공됩니다. Output modules은 transistor, triac, relay output 형태로 구매할 수 있으며, 그림 2-19에 나타나 있습니다. Triac outputs은 AC devices 제어에만 사용할 수 있으며, transistor outputs은 DC devices 제어에만 사용할 수 있습니다. Discrete relay contact output module은 electromechanical switching element를 사용합니다. Relay outputs은 AC 또는 DC devices에 사용할 수 있지만, solid-state outputs에 비해 switching time이 훨씬 느립니다. Allen-Bradley modules은 다음과 같이 color-coded되어 구분됩니다.

일부 DC I/O modules은 module이 current-source 또는 current-sink devices와 인터페이스하도록 설계되었는지를 명시합니다. Module이 current-sourcing module이면 연결되는 입력 또는 출력 장치는 current-sinking device여야 합니다. 반대로 module이 current-sinking으로 지정되면 연결되는 장치는 current-sourcing이어야 합니다. 일부 모듈은 module을 sinking 또는 sourcing 중 어느 방식으로도 설정할 수 있어 field devices의 요구에 따라 선택할 수 있습니다.

일부 field devices의 internal circuitry는 sinking 또는 sourcing 회로에서만 사용될 수 있습니다. 일반적으로 sinking(NPN)과 sourcing(PNP)은 control system에서 field input/output devices와 power supply 사이의 current signal flow relationship을 설명하는 용어입니다. 그림 2-20은 DC input module에서 sinking과 sourcing inputs 사이의 current flow relationship을 보여줍니다.

그림 2-21은 DC output module에서 sinking과 sourcing outputs 사이의 current flow relationship을 보여줍니다. DC input/output circuits는 일반적으로 동작에 DC signal voltage를 필요로 하는 internal solid-state circuitry를 가진 field devices와 연결됩니다. Field power supply의 positive(1) 쪽에 연결되는 field devices는 sourcing field devices로 분류되며, negative(2) 또는 DC common 쪽에 연결되는 field devices는 sinking field devices로 분류됩니다.

2.3 Analog I/O Modules

초기의 PLC는 discrete 또는 digital I/O interfaces로 제한되어 있어 ON/OFF 형태의 장치만 연결할 수 있었습니다. 이러한 제한으로 인해 PLC는 많은 공정 applications에서 부분적인 제어만 수행할 수 있었습니다. 그러나 오늘날에는 discrete와 analog interfaces가 모두 완전한 형태로 제공되어, controllers를 거의 모든 유형의 control process에 적용할 수 있게 되었습니다.Discrete devices는 on과 off 두 가지 상태만 갖는 입력과 출력입니다. 이에 비해 analog devices는 무한한 수의 값을 가질 수 있는 물리적 양을 나타냅니다. 일반적인 analog inputs과 outputs은 0~20 milliamps, 4~20 milliamps 또는 0~10 volts의 범위를 가집니다.

그림 2-22는 PLC analog input과 output modules이 탱크의 유체 수준을 측정하고 표시하는 데 어떻게 사용되는지를 보여줍니다. Analog input interface module은 level transmitter field device로부터 analog voltage 또는 current signal을 받아들이는 데 필요한 circuitry를 포함합니다. 이 입력은 processor가 사용할 수 있도록 analog에서 digital 값으로 변환됩니다. Analog output module의 circuitry는 processor로부터 digital 값을 받아 이를 field tank level meter를 구동하는 analog signal로 다시 변환합니다.

Analog input modules은 일반적으로 4, 8, 16개의 devices를 PLC에 연결할 수 있는 여러 개의 입력 채널을 가지고 있습니다. Analog input modules에는 두 가지 기본 유형이 있으며, voltage sensing과 current sensing입니다. Analog sensors는 특정 범위에서 변화하는 물리적 양을 측정하고 그에 대응하는 voltage 또는 current signal을 생성합니다. PLC analog module이 측정하는 일반적인 물리적 양에는 temperature, speed, level, flow, weight, pressure, position이 포함됩니다. 예를 들어, 어떤 sensor는 0~500°C 범위에서 온도를 측정하고 0~50 mV 사이에서 변화하는 voltage signal을 출력할 수 있습니다.

그림 2-23은 temperature를 측정하는 데 사용되는 voltage sensing input analog module의 예를 나타냅니다. 연결 diagram은 Allen-Bradley Micro-Logix 4-channel analog thermocouple input module에 해당합니다. 모니터링되는 온도에 비례하는 낮은 mV 범위의 DC voltage는 thermocouple에 의해 생성됩니다. 이 voltage는 analog input module에 의해 증폭되고 digitized되어 프로그램 명령에 따라 processor로 전달됩니다. 입력 신호의 전압이 낮기 때문에 다른 wiring에서 conductors로 유도될 수 있는 unwanted electrical noise signals을 줄이기 위해 twisted shielded pair cable이 회로 배선에 사용됩니다. Ungrounded thermocouple을 사용할 때는 shield를 module 쪽에서 ground에 연결해야 합니다. 각 채널에서 정확한 측정을 얻기 위해 thermocouple wire와 입력 채널 사이의 온도는 보정되어야 하며, 이를 위해 terminal block에는 cold junction compensating(CJC) thermistor가 통합되어 있습니다.

Analog signal을 digital 값으로 변환하는 과정은 analog input module의 주요 요소인 analog-to-digital(A/D) converter에 의해 수행됩니다.

Analog voltage input modules은 unipolar와 bipolar 두 가지 유형으로 제공됩니다. Unipolar modules은 입력 신호가 양의 방향으로만 변화하는 경우에 사용됩니다. 예를 들어 field device가 0 V에서 110 V까지 출력한다면 unipolar module이 사용됩니다.

Bipolar signals은 최대 음의 값과 최대 양의 값 사이를 왕복합니다. 예를 들어 field device가 –10 V에서 +10 V를 출력한다면 bipolar module이 사용됩니다.

Analog input channel의 resolution은 감지할 수 있는 입력 신호 값의 가장 작은 변화를 의미하며 digital 표현에 사용된 bit의 수에 따라 결정됩니다. Analog input modules은 전체 span의 analog signal을 표현하기 위해 최대값과 최소값 사이의 digital 값 범위를 생성해야 합니다. 일반적인 사양은 다음과 같습니다.

Voltage sensing inputs를 연결할 때는 connecting conductors에 유도되는 electromagnetic noise interference와 signal degrading을 최소화하기 위해 wire length에 대한 요구 사항을 반드시 준수해야 합니다. Current input signals은 voltage signals만큼 noise에 민감하지 않으며, 일반적으로 거리 제한도 없습니다. Current sensing input modules은 일반적으로 4 mA~20 mA 범위의 analog data를 받아들이지만 –20 mA~+20 mA의 signal ranges도 처리할 수 있습니다. Loop power는 sensor에서 공급되거나 analog output module에서 공급될 수 있으며, 이는 그림 2-24에 나타나 있습니다. Shielded twisted pair cable은 어떤 종류의 analog input signal을 연결할 때도 일반적으로 권장됩니다.

Analog output interface module은 processor로부터 digital data를 받아 이를 analog field device를 제어하기 위한 비례 voltage 또는 current로 변환합니다. Digital signal을 analog 값으로 전환하는 과정은 analog output module의 주요 요소인 digital-to-analog(D/A) converter에 의해 수행됩니다. Analog output signal은 PLC 프로그램의 제어 아래에서 지속적으로 변화하는 신호입니다. PLC analog output module로 제어되는 일반적인 장치에는 instruments, control valves, chart recorder, electronic drives 및 analog signals에 반응하는 기타 control devices가 있습니다.

그림 2-25는 typical PLC control system에서 analog I/O modules의 사용을 나타냅니다. 이 application에서 PLC는 valve opening의 비율을 조정하여 holding tank에 주입되는 fluid의 양을 제어합니다. PLC에서의 analog output은 valve opening의 양을 제어하여 flow를 제어하는 데 사용됩니다. Valve는 초기에는 100 percent 열려 있으며, tank의 fluid level이 preset point에 가까워지면 processor는 출력을 조정하여 valve가 set point를 유지하도록 제어합니다.

2.4 Special I/O Modules

다양한 특수 요구를 충족하기 위해 여러 종류의 I/O 모듈이 개발되었습니다. 다음과 같은 모듈들이 포함됩니다.

HIGH-SPEED COUNTER MODULE

고속 카운터 모듈은 PLC 래더 프로그램이 처리할 수 있는 능력을 초과하는 속도의 카운터가 필요한 응용을 위한 인터페이스를 제공합니다. 고속 카운터 모듈은 매우 빠른 속도로 동작하는 센서, 엔코더, 스위치로부터의 펄스(그림 2-26)를 카운트하는 데 사용됩니다. 이 모듈은 프로세서와 독립적으로 카운트할 수 있도록 필요한 전자회로를 갖추고 있습니다. 일반적으로 가능한 카운트 속도는 0~100 kHz이며, 이는 모듈이 초당 100,000개의 펄스를 카운트할 수 있음을 의미합니다.

THUMBWHEEL MODULE

썸휠 모듈은 PLC의 제어 프로그램에서 사용할 정보를 입력하기 위해 썸휠 스위치(그림 2-27)를 사용할 수 있도록 해줍니다.

TTL MODULE

TTL 모듈(그림 2-28)은 TTL(Transistor-Transistor-Logic) 신호의 송신 및 수신을 가능하게 합니다. 이 모듈은 TTL 레벨 신호를 생성하는 장치가 PLC 프로세서와 통신할 수 있도록 해줍니다.

ENCODER-COUNTER MODULE

엔코더-카운터 모듈은 사용자가 엔코더(그림 2-29)의 신호를 실시간으로 읽고, 이 정보를 저장하여 이후 프로세서가 읽을 수 있도록 해줍니다.

BASIC OR ASCII MODULE

BASIC 또는 ASCII 모듈(그림 2-30)은 사용자가 작성한 BASIC 및 C 프로그램을 실행합니다. 이러한 프로그램은 PLC 프로세서와 독립적으로 동작하며, 원격 장치와 PLC 프로세서 간의 쉽고 빠른 인터페이스를 제공합니다. 일반적인 응용에는 바코드 리더, 로봇, 프린터, 디스플레이와의 인터페이스가 포함됩니다.

STEPPER-MOTOR MODULE

스테퍼 모터 모듈은 스테퍼 모터(그림 2-31)를 제어할 수 있도록 스테퍼 모터 변환기에 펄스열을 제공합니다. 모듈을 위한 명령은 PLC의 제어 프로그램에 의해 결정됩니다.

BCD-OUTPUT MODULE

BCD 출력 모듈은 PLC가 7-세그먼트 디스플레이(그림 2-32)와 같이 BCD 부호화 신호가 필요한 장치를 동작할 수 있게 합니다.

PID MODULE

PID(Proportional-Integral-Derivative) 모듈(그림 2-33)은 PID 알고리즘을 포함한 프로세스 제어 응용에서 사용됩니다. 알고리즘(algorithm)은 수학적 계산을 기반으로 하는 복잡한 프로그램을 의미합니다. PID 모듈은 프로세스 제어가 CPU 외부에서 이루어질 수 있도록 하며, 이를 통해 CPU가 복잡한 계산으로 인해 부담을 받지 않도록 합니다. 이 모듈의 기본 기능은 온도, 유량(flow), 레벨(level), 속도(speed)와 같은 프로세스 변수를 설정값(set point)의 허용 범위 내에서 유지하기 위해 필요한 제어 동작을 제공합니다.

MOTION AND POSITION CONTROL MODULE

모션 및 위치 제어 모듈은 정밀 고속 가공 및 포장 작업이 포함된 응용에서 사용됩니다. 지능형 위치 및 모션 제어 모듈은 PLC가 스테퍼 및 서보 모터를 제어할 수 있도록 해줍니다. 이러한 시스템은 PLC 모듈의 신호를 모터가 필요로 하는 신호로 변환하는 전력 전자장치를 포함한 드라이브가 필요합니다(그림 2-34).

COMMUNICATION MODULES

직렬 통신 모듈(그림 2-35)은 데이터 교환을 위해 다른 지능형 장치와 점대점(point-to-point) 연결을 설정하는 데 사용됩니다. 이러한 연결은 일반적으로 컴퓨터, 운영자 스테이션, 프로세스 제어 시스템 및 다른 PLC와 설정됩니다. 통신 모듈은 사용자가 PLC를 고속 로컬 네트워크에 연결할 수 있도록 하며, 이는 PLC에 기본 제공되는 네트워크 통신과 다를 수 있습니다.

2.5 I/O Specifications

제조업체의 사양은 인터페이스 장치를 올바르고 안전하게 사용하는 방법에 관한 정보를 제공합니다. 이러한 사양은 I/O 모듈뿐 아니라 모듈이 동작시킬 수 있는 현장 장비에도 일정한 제한을 둡니다. 일부 PLC 시스템은 전원이 켜진 상태이자 PLC가 동작 중일 때도 교체할 수 있도록 설계된 핫 스와핑(hot swappable) I/O 모듈을 지원합니다. 다음은 일반적인 제조업체 I/O 사양의 목록과 각 사양에 대한 간단한 설명입니다.

Typical Discrete I/O Module Specifications

NOMINAL INPUT VOLTAGE

이 디스크리트 입력 모듈 전압 값은 모듈이 받아들이도록 설계된 사용자 공급 전압의 크기(예: 5 V, 24 V, 230 V)와 종류(AC 또는 DC)를 지정합니다. 입력 모듈은 일반적으로 입력 전압 정격의 ±10% 범위 내에서 손상 없이 정상적으로 동작하도록 설계됩니다. DC 입력 모듈의 경우, 입력 전압이 모듈이 동작할 수 있는 동작 범위(예: 24–60 volts DC)로 표현되기도 합니다.

INPUT THRESHOLD VOLTAGES

이 디스크리트 입력 모듈 사양은 두 가지 값을 지정합니다. 첫째는 논리 1이 완전히 ON으로 인식되는 최소 ON 상태 전압이며, 둘째는 논리 0이 완전히 OFF로 인식되는 최대 OFF 상태 전압입니다.

NOMINAL CURRENT PER INPUT

이 값은 입력 회로를 동작시키기 위해 디스크리트 입력 장치가 구동할 수 있어야 하는 최소 입력 전류를 지정합니다. 이 입력 전류 값은 입력 전압과 함께 동작하여 노이즈나 누설 전류가 유효 신호로 감지되는 것을 방지하는 임계값 역할을 합니다.

AMBIENT TEMPERATURE RATING

이 값은 I/O 모듈 주변 공기의 최대 온도가 최적의 동작 조건을 위해 어느 정도여야 하는지를 지정합니다.

INPUT ON/OFF DELAY

응답 시간(response time)이라고도 하며, 이 값은 입력 모듈의 회로가 현장 장치가 ON으로 전환되었음을 인식하는 데 필요한 최대 시간(input ON-delay)과 OFF로 전환되었음을 인식하는 데 필요한 최대 시간(input OFF-delay)을 지정합니다. 이 지연은 접점 바운스(contact bounce)와 전압 과도 현상에 대한 보호를 제공하는 필터 회로 때문에 발생하며, 일반적으로 9~25 밀리초 범위입니다.

OUTPUT VOLTAGE

이 AC 또는 DC 값은 디스크리트 출력 모듈이 동작하도록 설계된 사용자 공급 전압의 크기(예: 5 V, 115 V, 230 V)와 종류(AC 또는 DC)를 지정합니다. PLC와 인터페이스되는 출력 현장 장치는 반드시 이 사양과 일치해야 합니다. 출력 모듈은 일반적으로 정격 출력 전압의 ±10% 범위 내에서 동작하도록 설계됩니다.

OUTPUT CURRENT

이 값은 단일 출력 및 모듈 전체가 부하(정격 전압) 조건에서 안전하게 전달할 수 있는 최대 전류를 지정합니다. 이 정격은 모듈 구성 요소와 열 방출 특성에 따라 결정됩니다. 정격 출력 전류보다 더 많은 전류를 사용하는 장치를 연결할 경우 과부하가 발생하여 출력 퓨즈가 단선됩니다. 예를 들어, 사양에서 각 출력의 전류 한계를 1 A로 지정할 수 있습니다. 모듈 전체의 전류 정격은 개별 출력의 합보다 낮으며, 예를 들어 8개의 장치가 항상 1 A를 동시에 소비하지 않기 때문에 전체 정격은 6 A일 수 있습니다. 출력 전류 정격의 다른 표현으로는 최대 연속 전류(maximum continuous current) 및 최대 부하 전류(maximum load current)가 있습니다.

INRUSH CURRENT

돌입 전류(inrush current)는 유도성, 용량성 또는 필라멘트 부하에 전원을 공급할 때 AC 또는 DC 출력 회로가 순간적으로 겪는 전류 급증을 말합니다. 이 값은 출력 회로가 최대 연속 전류 정격을 초과할 수 있는 최대 돌입 전류 및 지속 시간(예: 20 A for 0.1 s)을 지정합니다.

SHORT CIRCUIT PROTECTION

단락(short circuit) 보호는 AC 및 DC 출력 모듈에서 퓨즈 또는 기타 전류 제한 회로를 통해 제공됩니다. 이 사양은 특정 모듈이 각 회로에 개별 보호 기능을 갖는지, 또는 출력 4개 또는 8개 단위로 그룹 퓨즈 보호가 적용되는지를 명시합니다.

LEAKAGE CURRENT

이 값은 출력이 꺼진 후에도 출력 회로를 통해 여전히 흐르는 전류의 양을 지정합니다. 누설 전류(leakage current)는 트랜지스터 및 트라이악과 같은 솔리드 스테이트 스위칭 장치의 특성이며 일반적으로 5 mA 미만입니다. 누설 전류는 일반적으로 출력 장치를 오작동시킬 만큼 크지 않지만, 아주 작은 전류에 민감한 장치를 스위칭할 경우 고려해야 합니다.

I/O 모듈 회로는 현장 장치 연결에서 발생할 수 있는 고전압으로부터 PLC의 저전압 내부 회로를 보호하기 위해 전기적으로 절연되어 있습니다. 전기적 절연에 대한 사양은 일반적으로 1500 또는 2500 volts AC로, 입력 또는 출력 단자에 과도한 전압이 인가되었을 때 모듈이 이를 견딜 수 있는 능력을 나타냅니다. 이러한 절연은 모듈의 로직 측을 과도한 입력 또는 출력 전압 또는 전류로부터 보호하지만, 모듈의 전력 회로는 손상될 수 있습니다.

POINTS PER MODULE

이 사양은 하나의 모듈에 연결할 수 있는 현장 입력 또는 출력의 수를 정의합니다. 일반적으로 디스크리트 모듈은 8, 16 또는 32개의 회로를 가지지만, 저가형 컨트롤러는 2개 또는 4개만 제공되기도 합니다. 32 또는 64개의 입력 또는 출력 비트를 가진 모듈은 고밀도(high-density) 모듈이라고 합니다. 일부 모듈은 여러 개의 공통 단자를 제공하여 사용자가 동일한 카드에서 서로 다른 전압 범위를 사용할 수 있도록 하며, 전류 분배도 보다 효과적으로 할 수 있게 합니다.

BACKPLANE CURRENT DRAW

이 값은 모듈이 백플레인으로부터 요구하는 전류의 양을 나타냅니다. 섀시 내 모든 모듈이 소비하는 백플레인 전류의 합은 적절한 섀시 전원 공급 장치의 정격을 선택하는 데 사용됩니다.

Typical Analog I/O Module Specifications

CHANNELS PER MODULE

디스크리트 I/O 모듈의 개별 회로는 포인트(points)라고 부르지만, 아날로그 I/O 모듈의 회로는 채널(channels)이라고 부릅니다. 이러한 모듈은 일반적으로 4, 8 또는 16개의 채널을 가집니다. 아날로그 모듈은 싱글엔드(single-ended) 또는 디퍼런셜(differential) 연결을 지원할 수 있습니다. 싱글엔드 방식은 모든 채널 또는 채널 그룹이 하나의 공통 접지 단자를 공유하는 방식입니다. 디퍼런셜 방식은 각 채널마다 개별적인 양(+)과 음(–) 단자를 사용합니다. 모듈이 보통 16개의 싱글엔드 연결을 지원하는 경우, 디퍼런셜 연결은 일반적으로 8개만 지원됩니다. 싱글엔드는 전기적 노이즈에 더 취약합니다.

INPUT CURRENT/VOLTAGE RANGE(S)

이 값은 아날로그 입력 모듈이 받아들일 수 있도록 설계된 전압 또는 전류 신호의 범위입니다. 입력 범위는 아날로그 센서가 생성하는 전압 또는 전류 신호의 변화 범위에 맞게 설정되어야 합니다.

OUTPUT CURRENT/VOLTAGE RANGE(S)

이 사양은 특정 아날로그 출력 모듈이 프로그램 제어에 따라 출력하도록 설계된 전압 또는 전류 신호의 범위를 정의합니다. 출력 범위는 아날로그 출력 장치를 구동하기 위해 필요한 전압 또는 전류 신호 범위에 맞아야 합니다.

INPUT PROTECTION

아날로그 입력 회로는 일반적으로 지정된 입력 전압 범위를 초과하는 전압이 실수로 연결되는 경우를 대비해 보호 기능을 갖추고 있습니다.

RESOLUTION

아날로그 I/O 모듈의 해상도(resolution)는 아날로그 값을 디지털로 얼마나 정밀하게 표현할 수 있는지를 지정합니다. 이 사양은 측정 가능한 최소 전류 또는 전압 단위를 결정합니다. 해상도가 높을수록(일반적으로 비트 단위로 표현) 아날로그 값을 더 정밀하게 표현할 수 있습니다.

INPUT IMPEDANCE AND CAPACITANCE

아날로그 I/O에서는 이 값들이 모듈에 연결되는 외부 장치와 맞도록 설정되어야 합니다. 일반적인 정격은 메가옴(MΩ)과 피코패럿(pF) 단위입니다.

COMMON-MODE REJECTION

노이즈는 일반적으로 전자기 간섭, 무선 주파수 간섭, 그리고 접지 루프에 의해 발생합니다. 공통 모드 노이즈 제거(common-mode rejection)는 디퍼런셜 입력에만 적용되며, 아날로그 모듈이 단일 채널에서 또는 채널 간에 노이즈가 데이터 무결성을 방해하지 않도록 하는 능력을 의미합니다. 평행한 두 전선에 동일하게 유입되는 노이즈는 두 신호의 차가 0이기 때문에 제거됩니다. 이를 위해 트위스트 페어(twisted pair) 전선이 사용됩니다. 공통 모드 제거 능력은 일반적으로 데시벨(dB) 또는 비율로 표현됩니다.

2.6 The Central Processing Unit (CPU)

중앙처리장치(CPU)는 일체형 고정식 PLC에는 내장되어 있으며, 모듈식 랙 타입에서는 일반적으로 플러그인 방식의 모듈로 사용됩니다. CPU, controller, processor라는 용어는 제조업체마다 다를 수 있으나, 기본적으로 동일한 기능을 수행하는 모듈을 의미합니다. 프로세서는 처리 속도와 메모리 옵션 측면에서 다양합니다. 프로세서 모듈은 CPU 섹션과 메모리 섹션으로 구분할 수 있습니다(그림 2-36). CPU 섹션은 프로그램을 실행하고, PLC가 동작하며 다른 모듈과 통신하는 데 필요한 결정을 내립니다. 메모리 섹션은 PLC 프로그램 및 기타 디지털 정보를 전자적으로 저장합니다.

PLC 전원 공급 장치는 랙의 백플레인에 꽂힌 프로세서와 I/O 모듈에 필요한 전원(일반적으로 5 VDC)을 제공합니다(그림 2-37). 전원 공급 장치는 현장에서 사용되는 대부분의 전원 공급원을 지원하도록 제공됩니다. 전원 공급 장치는 115 VAC 또는 230 VAC를 CPU, 메모리, I/O 전자 회로에 필요한 DC 전압으로 변환합니다. PLC 전원 공급 장치는 일반적으로 순간적인 전원 손실이 PLC 동작에 영향을 주지 않도록 설계됩니다. 홀드업 시간(hold-up time), 즉 PLC가 전원 손실을 견딜 수 있는 시간은 일반적으로 10 milliseconds에서 3 seconds 범위입니다.

CPU에는 개인용 컴퓨터에서 사용되는 것과 유사한 유형의 마이크로프로세서가 포함됩니다. 차이점은 마이크로프로세서에 사용되는 프로그램이 범용 계산 기능이 아니라 산업 제어를 용이하게 하도록 설계된다는 점입니다. CPU는 운영 체제를 실행하고, 메모리를 관리하며, 입력을 모니터링하고, 사용자 로직(래더 프로그램)을 평가하며, 적절한 출력을 동작시킵니다.

PLC 시스템의 CPU에는 한 개 이상의 프로세서가 포함될 수 있습니다. 멀티프로세싱을 사용하면 전체적인 동작 속도가 향상된다는 장점이 있습니다. 각 프로세서는 자체 메모리와 프로그램을 가지며 동시에 독립적으로 동작합니다. 이러한 구성에서는 각 프로세서의 스캔이 병렬로 독립적으로 이루어지므로 전체 응답 시간이 줄어듭니다. 장애 허용(fault-tolerant) PLC 시스템은 중요한 공정을 위해 듀얼 프로세서를 지원합니다. 이러한 시스템에서는 두 개의 프로세서를 중복 구성하여 하나의 프로세서에 장애가 발생할 경우 다른 프로세서로 제어가 전환되도록 합니다.

프로세서 유닛에는 시스템 진단 정보를 제공하는 여러 개의 상태 LED 표시등이 함께 제공됩니다(그림 2-38). 또한 RUN, PROG, REM 중 하나의 동작 모드를 선택할 수 있는 키 스위치가 제공될 수 있습니다.

RUN Position

• 프로세서를 Run 모드로 설정합니다

• 래더 프로그램을 실행하고 출력 장치를 동작시킵니다

• 이 위치에서는 온라인 프로그램 편집을 수행할 수 없습니다

• 프로그래머 또는 운영자 인터페이스 장치를 사용해 프로세서 모드를 변경할 수 없습니다

PROG Position

• 프로세서를 Program 모드로 설정합니다

• 프로세서가 래더 프로그램을 스캔하거나 실행하는 것을 방지하며, 컨트롤러 출력은 비동작 상태가 됩니다

• 프로그램 입력 및 편집을 수행할 수 있습니다

• 프로그래머 또는 운영자 인터페이스 장치를 사용해 프로세서 모드를 변경할 수 없습니다

REM Position

• 프로세서를 원격(Remote) 모드로 설정합니다: REMote Run, REMote Program, REMote Test 모드 중 하나

• 프로그래머 또는 운영자 인터페이스 장치를 사용해 프로세서 모드를 변경할 수 있습니다

• 온라인 프로그램 편집을 수행할 수 있습니다

프로세서 모듈에는 프로그래밍 장치와 통신하기 위한 회로도 포함되어 있습니다. 모듈 어딘가에는 PLC를 외부 프로그래밍 장치에 연결할 수 있는 커넥터가 있습니다. PLC 프로세서의 의사결정 능력은 단순한 논리 처리보다 훨씬 넓습니다. 프로세서는 타이밍, 카운팅, 래칭, 비교, 모션 제어, 복잡한 수학 함수 등의 다른 기능도 수행합니다.

컴퓨터 기술의 발전과 응용 분야의 증가로 인해 PLC 프로세서는 지속적으로 변화해 왔습니다. 오늘날의 프로세서는 더 빠르며, 새로운 모델이 출시될 때마다 추가 명령이 더해지고 있습니다. PLC는 마이크로프로세서 기반이므로 컴퓨터가 수행할 수 있는 작업도 수행하도록 만들 수 있습니다. 제어 기능 외에도 PLC는 감시 제어 및 데이터 수집(SCADA)을 위해 네트워크로 구성될 수 있습니다.

프로세서 및 기타 PLC 모듈에서 사용되는 많은 전자 부품은 정전기 전압에 민감하며, 이는 성능을 저하시킬 수 있거나 손상될 수 있습니다. 정전기 민감 장치 및 모듈을 취급할 때 다음과 같은 정전기 제어 절차를 따라야 합니다:

• 정전기 민감 부품을 다루기 전에 도전성 표면을 만져 몸에 쌓인 전하를 제거하십시오.

• 작업 중 발생할 수 있는 전하를 방전시킬 수 있도록 손목 밴드를 착용하십시오.

• PLC 시스템의 백플레인 커넥터 또는 커넥터 핀을 만지지 않도록 주의하십시오(가능하다면 항상 회로 카드를 가장자리를 잡고 다루십시오).

• 모듈 내부 구성 또는 교체 시, 모듈의 다른 회로 구성요소를 만지지 않도록 주의하십시오.

• 사용하지 않을 때는 모듈을 정전기 차폐 백에 보관하십시오.

• 가능하다면 정전기 안전 작업대(static-safe workstation)를 사용하십시오.

2.7 Memory Design

메모리는 PLC에서 정보, 프로그램, 데이터를 저장하는 요소입니다. PLC의 사용자 메모리는 사용자 프로그램 저장 공간뿐 아니라 데이터를 저장할 수 있는 주소 지정 가능한 메모리 영역을 포함합니다. 데이터 저장은 쓰기(writing)라고 하며, 메모리에서 데이터를 가져오는 것을 읽기(reading)라고 합니다.

프로그램의 복잡도는 필요한 메모리 용량을 결정합니다. 메모리 요소는 비트(binary digits)라고 불리는 개별 정보 단위를 저장합니다. 메모리 용량은 1000단위 또는 K 단위로 표시되며, 1 K는 1024 bytes(1 byte는 8 bits)에 해당합니다.

프로그램은 1과 0 형태로 메모리에 저장되며, 일반적으로 16-bit word 형태로 구성됩니다. 메모리 크기는 해당 시스템에 저장할 수 있는 word 수의 천 단위로 표시되며, 예를 들어 2 K는 2000 words, 64 K는 64,000 words를 의미합니다. 메모리 크기는 소형 시스템의 1 K부터 대형 시스템의 32 MB까지 다양합니다(그림 2-39). 메모리 용량은 특정 프로세서가 주어진 응용 요구사항을 처리할 수 있는지를 판단하는 중요한 기준입니다.

메모리 위치(memory location)는 CPU 메모리 내에 이진 word를 저장할 수 있는 주소를 의미합니다. word는 보통 16 bits로 구성되며, 각 이진 데이터 단위는 bit이며, 8 bits가 1 byte를 구성합니다(그림 2-40). 메모리 활용(memory utilization)은 각 명령 유형을 저장하는 데 필요한 메모리 위치의 수를 의미합니다. 일반적인 기준은 코일 또는 접점 하나당 메모리 위치 한 개입니다. 따라서 1 K 메모리는 1000개의 코일과 접점으로 구성된 프로그램을 저장할 수 있습니다.

PLC 메모리는 특정 기능을 가진 여러 섹션으로 나누어질 수 있습니다. 입력과 출력 상태를 저장하는 메모리 섹션은 입력 상태 파일(input status files) 또는 테이블, 출력 상태 파일(output status files) 또는 테이블이라고 불립니다(그림 2-41). 이는 단순히 입력 또는 출력 장치의 상태가 저장되는 위치를 의미합니다. 각 비트는 입력이 열렸는지 닫혔는지에 따라 1 또는 0의 값을 가집니다. 예를 들어 닫힌 접점은 해당 입력 테이블 위치에 1이 저장되고, 열린 접점은 0이 저장됩니다. ON 상태의 램프는 해당 출력 테이블 위치에 1이 저장되고, OFF 상태의 램프는 0이 저장됩니다. 입력 및 출력 이미지 테이블(image tables)은 CPU에 의해 지속적으로 업데이트됩니다. CPU가 메모리 위치를 검사할 때 접점 또는 코일의 상태가 변경되었다면 테이블도 변경됩니다.

PLC는 메모리가 손상되지 않았는지를 확인하기 위해 메모리 검사 기능을 실행합니다. 이러한 메모리 검사는 안전상의 이유로 수행되며, 메모리가 손상된 경우 PLC가 동작하지 않도록 보장하는 역할을 합니다.

2.8 Memory Types

메모리는 크게 휘발성(volatile)과 비휘발성(nonvolatile) 두 가지 범주로 나눌 수 있습니다. 휘발성 메모리는 모든 동작 전원이 상실되거나 제거되면 저장된 정보를 잃게 됩니다. 휘발성 메모리는 쉽게 변경할 수 있으며, 배터리 백업이 제공되는 경우 대부분의 응용에 적합합니다. 비휘발성 메모리는 전원이 실수로 또는 의도적으로 제거되더라도 저장된 정보를 유지할 수 있습니다. 이름에서 알 수 있듯이, PLC에는 사용자가 제어 프로그램을 개발하고 수정할 수 있는 프로그램 가능한 메모리가 있으며, 전원이 꺼지더라도 PLC가 프로그램을 유지할 수 있도록 이 메모리는 비휘발성으로 구성됩니다.

Read Only Memory (ROM)은 프로그램을 저장하며, 메모리 칩이 제조된 이후에는 데이터를 변경할 수 없습니다. ROM은 일반적으로 PLC의 기능을 정의하는 프로그램과 데이터를 저장하는 데 사용됩니다. ROM 메모리는 비휘발성이므로 전원이 차단되어도 내용이 사라지지 않습니다. ROM은 PLC의 운영 체제를 저장하는 데 사용되며, 운영 체제는 제조업체가 ROM에 기록하며 사용자가 PLC를 프로그래밍하는 데 사용하는 시스템 소프트웨어를 제어합니다.

Random Access Memory (RAM)은 때때로 읽기-쓰기(read-write, R/W) 메모리라고도 하며, 정보의 저장(쓰기)과 읽기가 모두 가능합니다. RAM은 신속하게 변경할 필요가 있는 데이터를 위한 임시 저장 영역으로 사용됩니다. RAM은 휘발성이므로 전원이 꺼지면 저장된 데이터는 모두 사라집니다. 따라서 전원 상실 시 데이터를 잃지 않기 위해 배터리 백업이 필요합니다(그림 2-42). 대부분의 PLC는 사용자 메모리로 CMOS-RAM 기술을 사용합니다. CMOS-RAM 칩은 매우 낮은 전류를 소모하며, 리튬 배터리로 2년에서 5년까지 장기간 메모리를 유지할 수 있습니다. 일부 프로세서는 배터리가 분리되고 전원이 꺼진 경우에도 최소 30분 동안 메모리를 유지할 수 있는 커패시터를 포함합니다.

Erasable Programmable Read-Only Memory (EPROM)은 프로그램이 무단으로 또는 원치 않게 변경되는 것을 방지하는 일정 수준의 보안을 제공합니다. EPROM은 저장된 데이터를 읽을 수는 있지만, 특별한 장비 없이는 쉽게 변경할 수 없도록 설계되었습니다. 예를 들어 UV EPROM(ultraviolet erasable programmable read-only memory)은 자외선을 사용해야만 지울 수 있습니다. EPROM 메모리는 PLC 프로그램을 백업, 저장 또는 전송하는 데 사용됩니다.

Electrically Erasable Programmable Read-Only Memory (EEPROM)는 RAM과 동일한 프로그래밍 유연성을 제공하는 비휘발성 메모리입니다. EEPROM은 자외선 없이 전기적으로 데이터를 덮어쓸 수 있습니다. 비휘발성 메모리이므로 배터리 백업이 필요하지 않으며, 프로그램을 영구적으로 저장하면서도 표준 프로그래밍 장치를 사용하여 쉽게 변경할 수 있습니다. 일반적으로 EEPROM 메모리 모듈은 PLC 프로그램을 저장, 백업, 전송하는 데 사용됩니다(그림 2-43).

Flash EEPROM은 EEPROM과 유사하게 백업 저장에 사용되지만, 큰 차이점은 플래시 메모리가 파일 저장 및 검색 속도가 매우 빠르다는 점입니다. 또한 재프로그램을 위해 프로세서에서 물리적으로 제거할 필요가 없으며, 해당 프로세서 모듈 내의 회로를 통해 재프로그램할 수 있습니다. 플래시 메모리는 프로세서 모듈 내부에 탑재되는 경우도 있으며(그림 2-44), 이 경우 RAM의 일부를 자동으로 백업합니다. 플래시 메모리가 있는 PLC가 동작 중 전원이 차단되더라도, 전원이 복구되면 작업 데이터 손실 없이 바로 재가동할 수 있습니다.

2.9 Programming Terminal Devices

프로그래밍 단말 장치는 PLC 프로그램을 입력하고 수정하며 문제를 해결하는 데 필요합니다. PLC 제조업체들은 다양한 종류의 프로그래밍 장치를 사용합니다. 가장 단순한 형태는 그림 2-45에 나타난 휴대용 프로그래머(hand-held type programmer)입니다. 이 전용 프로그래밍 장치는 접속 케이블을 가지고 있어 PLC의 프로그래밍 포트에 꽂을 수 있습니다. 일부 컨트롤러는 휴대용 장치 대신 플러그인 패널을 사용합니다.

휴대용 프로그래머는 소형이고 가격이 저렴하며 사용이 간편합니다. 이러한 장치는 다기능 키와 액정표시장치(LCD) 또는 발광다이오드(LED) 표시창을 포함합니다. 일반적으로 명령 입력 및 편집을 위한 키, 프로그램 내에서 이동하기 위한 네비게이션 키가 제공됩니다. 휴대용 프로그래머는 표시 기능이 제한적입니다. 일부 장치는 마지막에 입력된 명령만 표시하며, 다른 장치는 래더 로직의 2~4개 런(rung)까지 표시할 수 있습니다. 이른바 지능형 휴대용 프로그래머(intelligent hand-held programmers)는 특정 제조업체의 특정 PLC 제품군을 지원하도록 설계됩니다.

가장 널리 사용되는 PLC 프로그래밍 방식은 제조업체의 프로그래밍 소프트웨어와 함께 개인용 컴퓨터(PC)를 사용하는 것입니다(그림 2-46). 프로그래밍 소프트웨어의 일반적인 기능에는 온라인 및 오프라인 프로그램 편집, 온라인 프로그램 모니터링, 프로그램 문서화, PLC 고장 진단 및 제어 시스템 문제 해결이 포함됩니다. 소프트웨어에서 생성된 하드 카피 보고서는 컴퓨터 프린터로 출력할 수 있습니다. 대부분의 소프트웨어 패키지는 다른 제조업체의 PLC 프로그램 개발을 허용하지 않습니다. 경우에 따라 하나의 제조업체가 여러 PLC 제품군을 보유하고 있으며, 각 제품군은 고유한 프로그래밍 소프트웨어를 필요로 합니다.

2.10 Recording and Retrieving Data

프린터는 래더 프로그램 형식으로 프로세서의 메모리를 하드 카피로 출력하는 데 사용됩니다. 긴 래더 프로그램은 화면에 전체를 표시할 수 없습니다. 일반적으로 화면에는 한 번에 최대 다섯 개의 런만 표시됩니다. 반면, 출력물은 길이에 관계없이 프로그램 전체를 보여 주고 분석할 수 있습니다.

PLC는 한 번에 하나의 프로그램만 메모리에 보유할 수 있습니다. PLC의 프로그램을 변경하려면 키보드에서 새 프로그램을 직접 입력하거나 컴퓨터 하드 드라이브에서 프로그램을 다운로드해야 합니다(그림 2-47). 일부 CPU는 사용자 프로그램에 대한 이동식 EEPROM 저장 기능을 제공하는 메모리 카트리지를 지원합니다(그림 2-48). 이 카트리지는 한 PLC에서 다른 동일 유형의 PLC로 프로그램을 복사하는 데 사용할 수 있습니다.

2.11 Human Machine Interfaces (HMIs)

휴먼 머신 인터페이스(HMI)는 PLC와 통신하도록 연결할 수 있으며, 푸시버튼, 셀렉터 스위치, 파일럿 램프, 썸휠 및 기타 운영자 제어 패널 장치를 대체할 수 있습니다(그림 2-49). 형광 터치스크린 키패드는 기존의 하드와이어드 제어 패널처럼 동작하는 운영자 인터페이스를 제공합니다.

HMI는 운영자와 관리자가 실시간으로 장비 동작을 확인할 수 있도록 합니다. PC 기반 설정 소프트웨어를 통해 다음과 같은 화면 구성이 가능합니다:

• 현실적인 아이콘으로 하드와이어드 푸시버튼과 파일럿 램프를 대체

• 작업 내용을 그래픽 형식으로 표시하여 가시성 향상

• 터치스크린의 숫자 키패드 그래픽을 이용해 타이머 및 카운터의 프리셋 변경

• 발생 시간과 위치를 포함한 알람 표시

• 시간이 지남에 따라 변화하는 변수 표시

그림 2-50에 나타난 Allen-Bradley Pico GFX-70 컨트롤러는 HMI 기능을 갖춘 컨트롤러입니다. 이 장치는 HMI, 프로세서/전원 공급 장치, I/O 모듈의 세 가지 모듈식 구성 요소로 이루어져 있습니다.

디스플레이/키패드는 운영자 인터페이스로 사용하거나 제어 작업과 연계해 실시간 피드백을 제공할 수 있습니다. 텍스트, 날짜 및 시간, 사용자 정의 메시지, 비트맵 그래픽을 표시할 수 있어 운영자가 고장 메시지 확인, 값 입력, 동작 시작 등을 할 수 있습니다. 사용자는 개인용 컴퓨터에 설치된 PicoSoft Pro 소프트웨어 또는 컨트롤러의 내장 버튼을 사용해 제어 프로그램과 HMI 기능을 모두 생성할 수 있습니다.