나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2024-03-13 17:46:54

PLC


파일:나무위키+유도.png  
은(는) 여기로 연결됩니다.
다른 뜻에 대한 내용은 PLC(동음이의어) 문서
번 문단을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.
1. 개요2. 역사3. 시대별 변천 특징4. GM이 발표한 전자제어장치의 10대 조건5. 장점
5.1. 높은 신뢰성5.2. 좋은 확장성(호환성)5.3. 간편한 사용 5.4. 저렴한 가격5.5. 용이한 유지/보수
6. 단점
6.1. 수치계산의 애로사항
7. 취업
7.1. 위험부담7.2. 전망
8. 제품 목록9. 데이터 수집 지원 솔루션

1. 개요

Programmable Logic Controller

PLC와 시퀀스는 호칭이 다를 뿐 같은 기기를 말한다.

시퀀스제어(Sequential Control)란 바꿔 말해, 기기와 설비가 수행할 각 동작과 순서, 그리고 고장일 때의 처치 등을 제어장치에 입력해두고, 제어장치가 내보내는 각 명령 신호에 따라 운전을 진행하는 제어를 말한다. 미리 정해진 순서에 따라 제어의 각 단계를 점차로 진행하는 제어다. 불연속적인 작업을 행하는 공정제어 등에 널리 이용된다.

이는 일종의 스위치나 버튼을 사용하여 전기회로의 부하를 운전하기도 하고, 부하의 운전상태나 고장상태를 알리기도 하는 일련의 제어를 말한다. 예로 빌딩이나 공장 등에서 엘리베이터를 움직이고 고장을 알리기도 하고, 세탁기, 냉장고, 자동판매기 등도 시퀀스적으로 동작하고 있다.

파일:시퀀스도의 실례.jpg 출처
시퀀스도의 실례

주로 산업현장에서 많이 쓰이며, 각종 플랜트나 대형 선박, 무선 중계국, 엘리베이터, 각종 빌딩의 중앙시스템 등 저렴하고 비교적 간단한 동작의 제어가 필요한 정말 광범위한 곳에서 사용된다.

일반적으로는 PC에서 사용되는 Line형태의 프로그래밍 언어와는 다른 Ladder(래더 - 라다 라고 하는 사람도 있음)의 형태로 원하는 프로그램을 작성하게 된다.[1] 각각의 입력과 출력이 그림으로 표현되어 동작에 대한 조건을 쉽게 확인할 수 있고, 직관적인 확인이 가능하다.

과거의 릴레이 제어반의 불편함 (고장시 고장 부품 찾기 어려움, 공장의 라인이 길어지면 제어반의 부피증가, 직접배선으로 인한 제품수명 짧음, 등) 때문에 GM (General Motor) 사에서 개발한 획기적인 자동화 설비, 공장 자동화의 선두주자이다.

자동화설비 자격증(자동화설비기능사, 자동화설비산업기사)과 반도체설비보전기능사전기기능장 실기시험에 PLC 제어를 본다. 하지만 PLC는 4년제 대학에는 거의 없는 편이므로 본인이 만약 PLC를 실습으로 배우고 싶다면 공업고등학교, 전문대 자동화공학과에 진학하도록 하자. 왜냐하면 PLC는 단가가 상당히 비싸기 때문에 사립 4년제 대학교에서는 취급을 하는 경우가 거의 없으므로 아예 가르치지 않거나 전기산업기사전기기사 같이 이론으로만 살짝 배운다. 덕분에 PLC 기술자들은 현장에서 대부분을 배운다.

2. 역사

1960년대말 GM(General Motor)사는 자동차 조립 라인에서 복잡한 릴레이 제어반 시스템을 교체할 때 발생하는 비용을 줄이고자 Sequence 전자제어장치의 10대 조건을 발표했다

이러한 조건에 맞는 제어장비를 Modular Digital Controller (MODICON)라는 이름으로 Medford사가 제안하고 슈나이더 일렉트릭과 같은 여타 회사들도 PDP-8에 근거한 시스템들을 제안하였다. MODICON 084 는 그렇게 하여 탄생한 세계 최초의 PLC가 되었다.

1970년대 초 마이크로프로세서의 출현과 함께 새로운 전자제품의 개발로 기존 제어장치의 기능을 향상시켰고 이를 기초로 릴레이 제어반에 비해

등 여러가지 장점을 가지게 되어 자동차, 철강,화학등의 대형공장에서 소규모 사업장까지 급격하게 보급되었다.

PLC릴레이 기능

단순 Sequence 제어장치에서 출발하여 연산, 계수기능,통신등 컴퓨터의 기능까지 이르렀다.당초 GM이 발표한 시방에 맞는 제품을 여러 업체들이 개발, 발표하였는데 이 새로운 제품을 PLC(Programmable Logic Controller)라 하였다. 이유는 이 제품이 주로 로직 연산을 하는 것이었기 때문이다. 그후 일반 마이크로프로세스를 도입한 콘트롤러가 발표되면서 고급기능인 연산기능이 추가되어 PLC → PC( Programmable Controller) 로 개칭되었으나 오늘날 개인용 PC(Personal Computer)와 구별하기위해 PLC라는 명칭이 일반화 된 것이다.

3. 시대별 변천 특징

4. GM이 발표한 전자제어장치의 10대 조건

  1. 프로그램 작성 및 변경이 용이하고 Sequence 변경을 현장에서 할 수 있을 것
  2. 유지 보수가 용이할 것
  3. 현장에 있어서 신뢰성이 릴레이 제어반 보다 높을 것
  4. Size는 릴레이 제어반 보다 작을 것
  5. 중앙 제어장치로 데이터 전송이 가능할 것
  6. 릴레이 및 무접점 방식이 가능할 것
  7. 입력은 AC 115V를 받을 수 있을 것
  8. 출력은 AC 115V 2A 이상으로 솔레노이드 밸브,모타의 기동, 조작이 가능할 것
  9. 제어 시스템의 확장은 기본 시스템의 작은 변경으로 가능할 것
  10. 프로그램의 확장은 최저 4Kbyte Word까지 가능할 것

5. 장점

5.1. 높은 신뢰성

PC를 사용한 제어의 경우, 프로그램 자체에서 리소스에 대한 부분을 신경써줘야 하며, 치명적인 버그 등이 발생하여 중요한 부분이 오작동 등으로 멈추는 경우가 발생할 수 있으나,[2] PLC의 경우에는 산업용 컨트롤러 답게 이러한 오류가 발생할 조건이 최소화 되어 있어 몇년이 지나더라도 처음과 같은 동작이 가능하다.

노이즈 현상에 상당히 강한 편이다. 노이즈에 민감한 산업현장에서 가장 많이 신뢰할 수 있는 제어 장치 중 하나이다.

5.2. 좋은 확장성(호환성)

PLC는 각종 산업용 기기와 연결 호환성이 좋다. PC에서는 죽은것이나 다름이 없는, Serial 통신 시스템이 산업 현장에서는 높은 신뢰성으로 아직도 사용되고 있으며 PLC는 아직도 지원을 하고 있다. 또한 동축 케이블을 이용한 통신, 인터넷을 이용한 통신도 물론 이용이 가능하고 통신 프로토콜 또한 Fieldbus, Modbus, TCP/IP 등등... 마음먹은대로 각종 산업용 기기와 통신하고 데이터를 주고 받을 수 있다.

또한, 최초 설계 단계시에 고려하지 못하여 추가적으로 입출력 신호가 발생하더라도 손쉽게 I/O 모듈을 추가하거나 Remote 확장 모듈등을 이용하여 증설 할 수 있다.

5.3. 간편한 사용

A스위치와 B스위치를 누를 경우 전등C가 켜진다는 동작 조건을 구현할 때, 일반적인 랭귀지 프로그래밍은

#!syntax cpp
If (a==true && b == true) {
    c = true;
} /* true: 켜짐, false: 꺼짐 */

이런식으로 작성한다면 래더 프로그램은

파일:PLC예제.png

의 형태로 작성된다! [3]

만약 스위치(새 조건)를 10개 추가한다고 할때 랭귀지 프로그램에서는 if 분기문을 10개 추가해야 하지만 래더 프로그램에서는 10개의 접점기호만 B와 C 사이에 추가하면 적용이 가능하다! 또한 C의 동작 조건이 궁금할 경우에는 C의 앞부분의 A, B 조건을 직관적으로 확인할 수 있다.

약간 다른 의견이 있어 아래와 같이 기술한다. 위의 설명이 완전히 잘못된 것은 아니지만 사실 PLC의 장점이라고 내세우기에는 조금 잘못된 예로 생각한다. 먼저 위 설명은 C언어에 대해 잘 몰라서 하는 설명이다. 만약 C언어를 사용하는 사람이 단지 위의 로직이 필요했다면 아래와 같이 쓸 것이다.

c = a && b;
(a와 b, 둘 다 1일때만 c가 1이 된다.)

둘다 해본 입장에서 단순히 프로그래밍 부분만 따져보면 C언어가 더 편하다. 하지만 PLC에서는 C언어가 주지 않는 몇가지 다른 장점이 있다. 일단 래더라고 하는 매우 직관적인 편집화면이 그것이다. 여기에 대다수의 PLC 제조사에서 실시간 모니터링을 지원함으로써 매우 쉬운 디버깅이 가능해진다. 그리고 컴파일 및 장치에 write하는 것도 매우 쉽다.

Melsec/XGT PLC 기준 Online Program Change/런 중 수정 기능이 있어 실제 가동중인 설비도 멈추지 않고 실시간으로 프로그램을 모니터링 하며 수정한 뒤 바로 업로드해서 1스캔 만에 수정된 조건으로 가동하게 하는것도 가능하다. 하지만 가동중인 설비의 조건을 갑자기 바꾸는건 대단히 위험하기 때문에 편하다고 검토하지도 않고 휙휙 다운로드 하다가 큰 사고가 날수도 있으니 신중하게 해야한다.[4]

5.4. 저렴한 가격

산업용 설비 또는 공장을 가동할 때 규모에 관계없이 PLC를 이용한 구성만큼 저렴한 것이 없다. 예를 들어, 물류 이송 컨베이어 라인을 구성하게 될 경우 5기 이내일 경우엔 간단한 릴레이 회로로 구성을 하는게 간편하고 저렴하지만, 그 컨베이어의 숫자가 50개를 넘어가고 또 그 컨베이어가 유기적으로 연결되어 물류를 구분하여 이송을 해야한다면 릴레이 회로로 구성하려면 시간, 돈, 인력이 많이 든다. 이럴때에 PLC를 설치하여 각 컨베이어를 프로그램으로 만들어 구성한다면, 저렴한 가격으로 효과적인 시스템을 구성 할 수 있다.

그리고 요즘 각 산업용 컨트롤러를 생산하는 메이저 기업들은 DCS(분산제어시스템)이라 하여, PLC와 HMI/SCADA, Database 시스템을 통합한 시스템을 주력 상품으로 선보이고 있는데, 그 가격이 상상을 초월한다. 대규모의 플랜트에선 개발/유지보수/확장성이 용이해 고려해볼만 하지만, 중소규모 산업 현장이라면 수지가 맞질 않는다. 이럴때에 PLC로 구성된 시스템이 적격이다.

5.5. 용이한 유지/보수

PLC로 시스템을 만들게 되면, 설비의 유지 보수나 증설이 용이해 진다. 가령, 어떤 공장 설비를 PCB기판 컨트롤 또는 릴레이 회로로 구성하였다면, 그 시스템의 흐름(프로세스)이 변하게 될때에 그것을 변경하기가 굉장히 까다로워진다. PCB기판으로 프로세스를 박아 놓았다면, 변경된 새로운 프로세스를 다시 넣은 기판을 일일이 새로 설치해야 하며, 릴레이 회로로 구성하였다면... 다 포기하고 PLC를 이용한 새로운 컨트롤 시스템을 놓는것이 시간과 예산을 절약하는 길이다.

All in One 타입이라고 할 수 있는 블럭타입의 PLC가 있고 조립 PC와 비슷한 형태의 모듈타입 PLC가 있다. 블럭타입 PLC는 저가 / 소형의 장비에 사용하고 (주로 많이 쓰이는) 모듈타입 PLC는 현재 상황에 맞도록 PLC를 조립할 수 있도록 되어 있으며 따라서 PLC에 고장이 발생하더라도 고장난 부분의 모듈만 교체해 주면 이전과 같이 사용하는 것이 가능하다.

6. 단점

6.1. 수치계산의 애로사항

PLC는 논리적인 조건 / 입출력 프로그램에는 상당한 강점을 지니고 있으나, 수치 계산 관련 프로그램이 상당히 번거롭다. 기본적인 사칙연산을 진행하는데에도 다수의 행이 필요하며, 실수나 부동소수점을 사용하고자 하면... 시간과 예산만 주어진다면 게임을 만드는 용자들도 있다.

하지만, 시간이 지날 수록 PLC도 발전하여, Rockwell사의 제품을 사용한다면 수치 계산은 더 이상 문제가 되지 않는다. 허용하는 메모리 안에서 자유롭게 실수와 부동소숫점을 사용하고 사칙연산 또한 1개의 펑션안에서 자유롭고 편리하게 사용이 가능하다. 앞으로 타 제조사도 제품이 발전한다면, 보다 더 쉽게 사용이 가능할 듯 싶다.

미쯔비시의 melsec PLC는 기본적인 사칙연산 뿐만아니라 실수나 부동소수점을 사용하는데 있어서도 문제가 되지 않는다. 지수, 로그, 삼각함수등의 계산도 명령어 한줄에 실행 할 수 있다. 심지어는 난수 발생도 가능하다. [6]

7. 취업

자동화 업무 중 가장 비추천하는 직무다. 회사에서 젊은 이들한테 맨날 열정이랑 노력을 외치시는 아저씨들, 어르신들도 웬만하면 PLC는 하지 말라고 할 정도다.

PLC는 오래 일하고, 실력을 쌓으면 높은 연봉을 받을 수 있는 직무이지만 그 만큼 큰 대가가 필요하다. 우선 PLC는 각 현장에 가서 셋업과 안정화를 해야 하는 업무 특성상 출장 근무가 대부분이다. 지방 출장은 기본이며 해외에도 출장을 간다. 짧게는 3일 ~ 많게는 1년 넘게 간다.[7][8]

출장시 상당히 긴 근무시간에 대해 각오해야 하고[9] 며칠에서 몇주, 혹은 한달 정도의 단기출장이면 모텔, 수개월에서 1년 이상이면 아예 회사에서 인근 월세형 숙소(원룸~투룸, 빌라, 오피스텔, 아파트)를 잡아준다.[10]

급여는 일한 근무 수에 비해 굉장히 작다고 알려져 있다. (모 카페에서 PLC 신입 면접 때 평일은 무조건 출장, 해외 출장은 3달 이상, 9시~22시까지 근무하며, 급여는 세전 200만원이라고 하였다. 모든 회사가 다 저런 근무 형태는 아니니 많이들 도전했으면 좋겠다. 챙겨주는 회사는 신입 때도 세후 200이상은 챙겨준다. 물론 근무시간은 위와 같이 비슷함)그래봤자 다른 팀들이 하는거 짬 맞는 건 변함없다. 현재는 회사마다 다 다르다. 대기업 PLC 직군도 많으니 세후 200 고정이 아니다.

PLC는 함께 일하는 직원들 사이에서도 인생에 아예 역마살이 끼였다거나 결혼은 무조건 포기하고 친구/가족 버리고 독고다이로 살 수 있다면 추천하는 직업이다. 꿈을 안고 취업해도 오래 못 버티고 그만두는 청년들이 많기 때문에 신입을 많이 뽑는 편이다.[11]

그리고 의외의 단점 중 하나는 타 부서 사람들과 관계가 험악할 일이 굉장히 많다. 눈에 보이는 기구물의 문제[12]나, 티가 나는 전장 계통 문제[13]와는 다르게 PLC 프로그램은 프로그램을 읽고 있는 당사자가 아니면 아무도 모르기 때문에, 역설적으로 프로그램에 이상이 없어도[14] 제일 먼저 집중포화를 맞기 쉽다. 만악의 근원 취급 받기 쉽다는 것. 간단하게 해결을 해줘도 본전이고, 정말 알아차리기 어려운 문제라 해결하는데 시간이 걸린다면 "능력이 부족하네" 취급 받기 딱 좋다. 아무리 성격 좋은 사람이라도 꾸준히 앞뒤 다 덮어놓고 "네 탓이오" 하는데 관계가 좋을 리 없다. 성격 안 버리면 다행일 지경. 멘탈이 약하다면[15] 섣불리 권하기는 어려운 일이다.

여기에 타 부서의 문제로 프로젝트가 망해버리는 경우 가장 최후반까지 고생하고 독박 쓰기도 좋다. 설계가 불량이 나서 재발주 하느냐 늦었든, 기구 조립이 늦었든, 배선이 늦어져서 전원 인가가 늦었든 결국 프로젝트를 완료 못한 PLC 담당의 문제로 돌아가며,[16] 촉박한 일정 때문에 밤 새고 휴일을 반납하다보면 일 처리를 똑바로 안해서 이 꼴로 만든 타 부서 직원들에 대한 원망과 증오만 늘어나게 된다.

하지만 요즘은 시대가 좋아져 위에 서술한 것 만큼 그렇게까지는 나쁘지 않다. 오히려 해외 출장을 나가면 수당도 쎄고 국내 프로젝트를 신경쓰지 않아도 되기 때문에 많이 나가는 것을 선호하는 사람도 많다.[17][18]

현장에서 구르느라 힘든 탓인지 출장이 끝나고 회사로 복귀하면 고생했다고 다음 프로젝트를 받을 때까지는 칼퇴를 반강제적으로 요구하는 회사도 있다.[19][20]

7.1. 위험부담

현장따라 다르지만 대부분의 PLC 개발자는 PC 환경에서 프로그래밍하는 개발자들에 비해 위험부담이 큰 편이다. PLC는 대부분 산업 현장에서 움직이는 설비 등을 제어하는데 주로 쓰이기 때문에 사소한 버그로도 상상을 초월하는 결과를 불러올 수도 있다.[21]

시뮬레이션 테스트와 한스텝씩 수동으로 동작시켜서 안정성 확인을 끝마치고 드라이런[22]을 끝내고도 발견하지 못한 작은 버그가 상상도 못했던 특정 조건에 의하여 발현되어 오동작을 일으키거나 프로그래머의 부주의 또는 조작 실수[23]로 인해 재산적인 피해는 물론이고 인명사고도 발생할 수 있다. 제품이 손상되거나 불량이 날 수도 있고[24][25] 다관절 로봇이 오동작으로 센서를 하나 망가트리는 작은 사고 정도로도 적게는 몇만 원에서 수십~수백만 원 피해를 보기도 하며[26], 설비 안에서 사람이 작업 중인데 서보축이나 로봇 등이 오동작해버리면 안에 있던 작업자는 순식간에 반갈죽당할수도 있다. 서보축이나 다관절 로봇 같은 산업 장비의 힘은 상상을 초월할 정도이다. 특히 유압을 다루는 설비라면 더더욱 위험하다 [27]

특히 원전이나 발전소 같은 매우 위험한 시설의 시스템을 제어하는 PLC 같은 경우에는 오동작이 발생하면 어떤 결과가 나올지 말 안 해도 잘 알 것이다. 그래서 PLC는 PC에 비해 오류가 생길 수도 없을 만큼 직관적이고 신뢰도가 높고 안정적으로 설계돼있지만 그걸 프로그래밍하고 조작하는 것은 사람이 하는 일이라서 실수가 발생하기 마련이다.

상기한 위험성 문제와 작업의 편리, 효율을 위해 PLC 신규 개발업무라고 해도 아예 백지부터 시작하는 경우는 거의 없다. 보통은 이미 표준화된 틀 안에서 수십수백번의 디버깅과 재현성 테스트를 거친뒤 안정적으로 오랜시간 생산중인 비슷한 공정의 설비 프로그램을 복붙한뒤 사양서와 현장사정에 맞춰 조건과 입출력 정도만 수정하고 검토해서 재활용하는게 대부분이다. 보통 이런 프로그램들은 오동작이나 이상이 일어날꺼같은 사소한 징후만 보여도 설비를 세우고 오류를 띄울 정도로 민감하고 치밀하게 짜여있어서 쉽게 사고가 일어날 수가 없기는 하다.[28] 이러한 이유로 PLC개발자가 야근, 휴일근무가 잦다. 사고가 터질 조짐만 보여도 알람을 뿜으며 세워버리는 설비에 오류를 대응하는데 많은 시간을 소비하게 된다. 대부분의 생산라인은 24시간 가동하는 곳이 많은데 언제 어떤 때에 이런 상황이 발생할지 몰라서 부르면 언제라도 달려가서 조치를 해야하기 때문이다. 실제 개발업무는 그렇게 시간이 걸리지 않는다.[29][30]

7.2. 전망

아직 PLC는 현역이다. 최근엔 PC 제어도 사용되는 곳이 많지만, 반도체, 디스플레이같이 매우 복잡한 공정의 설비도 PLC 특유의 장점들 덕분에 PLC가 모든 공정을 제어하며 검사 공정[31] 같이 엄청나게 복잡한 연산과 영상, 이미지 처리기술 등 PLC로는 처리하기 버거운 공정들만 PC가 연산해서 PLC로 다시 결과값을 던져주는 식으로 운영되고 있다. 최신 기술이 등장해도 이미 검증된 생산라인의 사양을 무작정 위험을 감수하며 검증안된 최신기술로 바꿀 이유가 없고, 그런 도박은 기업에서 아주 싫어하기 때문에[32] 당분간은 PLC가 자동화에서는 주력으로 남을것이며 자동화 설비를 제어하는 업무이다 보니 단순 반복 작업같이 사장될 일은 없다고 본다.[33]

위에도 설명된 위험부담을 감수할 수 있고 야근, 철야근무,휴일근무 지옥으로 빠져서 워라밸은 커녕 제발 단 하루라도 좋으니 쉬고 싶다는 절실함을 느낄 각오가 돼 있고 남초 직장에다가 끝도 없는 출장과 외근으로 인해 한곳에 머물러 있는 것이 불가능해 결혼은 커녕 연애도 힘든걸 감수할 수 있다면 정말 추천하는 직업이다.[34][35] 대신 블랙기업이 아닌 이상 일한 만큼 수당이 나오고 어느 정도 역량이 쌓이면 충분한 대우를 받을 수 있으며 프로젝트를 혼자 통제하고 지휘할 수 있을 만한 고급역량이 생긴다면 정말 수익이 높아진다.[36]

게다가 의외의 장점이 있는데, 바쁠 때는 정말 눈코 뜰 새 없이 바빠서 아침에 출근한 뒤 새벽에 퇴근해 잠깐 눈 붙이고 다시 현장으로 가야 하는 뭐 같은 상황도 많지만 어느 정도 현장이 안정화 돼서 양산에 들어가면 다음 프로젝트로 끌려갈 때 까지는 정말 여유로워진다.[37] 회사 따라 다르겠지만 계약 기간은 정해져 있는데 그전에 안정화가 끝나서 할 일이 없어지면 본사로 출근하면 눈치만 보이니 현장으로 오전 느지막이 출근해서 현장 들어가서 설비 잘 돌아가는지 슬쩍 확인만 하고 어슬렁어슬렁하다가 점심 먹으러 나가서 오후에는 콜 대기랍시고 카페에 앉아서 시간을 보내거나 담당자가 무조건 구색은 갖춰줘야 하는 꼰대라면 현장에 들어가서 노트북 앞에 앉아 꾸벅꾸벅 졸다가 그대로 퇴근하는 경우도 왕왕 있었다.그야말로 현업자의 애환이 그대로 녹아있는 문단이다

8. 제품 목록

현재 한국 내에서 가장 보편적으로 사용되는 PLC는 다음과 같다.

싸이몬사의 CIMON PLC 역시 프로그래밍 S/W 인 CICON에 시뮬레이션 SW가 내장되어 있다.
이를 통해 PLC 프로그램을 미리 운전해볼수 있고, HMI 와 통신 연결이 가능하다.

LS일렉트릭에서 다운로드창에 보면 PLC시뮬 무료 소프트웨어를 준다.

9. 데이터 수집 지원 솔루션

현재 한국 내에서 가장 보편적으로 사용되는 PLC 데이터 수집 및 제어를 위한 통신 솔루션은 다음과 같다.


[1] IEC_61131-3에서 5가지 표준 언어를 제시하는데 그중에서도 기존의 릴레이 접점 소자와 1대1로 대응 되는 Ladder Diagram이 가장 인기 있다. IL(Instruction List)라는 어셈블리어랑 동급인 언어도 있다.[2] 프로그램 뿐만이 아니라, PC 자체는 신뢰도가 낮은 축에 속한다. 일상에서 겪어도 짜증나는 일이(커널 패닉, 드라이버 충돌 등) 설비가 가동 중인 상황에도 발생할 수 있다고 생각을 해보자.[3] 사진은 미쓰비시 Melsec 등의 PLC를 코딩할때 쓰는 개발툴인 GX Works 3 이다.[4] 물론 큰 부분을 바꿀때는 설비를 정지시키고 프로그램을 수정하는게 보통이고 단순히 접점 몇개를 빼고 넣는 경우 가동중인 설비를 Online Program Change/런 중 수정을 하는 게 일반적이다. 보통 개발 단계에서 알람 프로그램과 인터록을 매우 치밀하게 짜놓기에 프로그램이 조금 바뀐다고 큰 사고가 나는 경우는 거의 없다.[5] 딱히 정보기관을 적으로 돌리지 않아도 사전에 공격할 설비가 어떤 구성으로 짜여 있는지만 파악할 수 있고 사전지식이 풍부하다면 PLC 시스템을 공격하는 건 의외로 간단하다. 일정 규모 이상의 설비는 관리의 편리성을 위해 자체적인 이더넷 망을 구축하고 중앙에서 일괄적으로 PLC를 관리하도록 설계가 돼 있는 곳이 많다. 주로 중앙에서는 PC를 이용해 제어하는 경우가 많기 때문에 이 PC에 악성코드를 주입한다면 스니핑을 이용해 PLC의 통신 구성과 프로토콜, IP등을 획득하고 어떤 타입인지는 무차별 대입으로 파악할 수 있다. 그리고 더미 데이터를 PLC에 쓰기만 하면 설비는 끝장난다. 그래서 일정 수준 이상의 보안이 필요한 설비에서는 프로그램에 비밀번호를 걸어서 비밀번호를 알아야만 프로그램을 수정할 수 있게 돼 있고. 설비의 이더넷 망을 철저히 인터넷망과 분리해놓지만…. 애초에 비밀번호는 허가되지 않은 사람이 프로그램을 수정하는 걸 방지하고 산업스파이가 프로그램을 리드해 가도 쉽게 엑세스할 수 없도록 만들기 위한 용도이기 때문에 비밀번호를 몰라도 PLC를 리셋시켜버리면 쉽게 뚫리고 스턱스넷 같은 경우는 엔지니어의 부주의로 USB 메모리를 통해 악성코드가 흘러 들어갔을 가능성이 높다.[6] 다만 단순한 의사난수라서 그렇게 질이좋은 난수가 생성되지는 않고 접점을 살리면 1스캔마다 음수를 제외한 16비트(0~32767) 범위 내 표현가능 숫자 안에서 무식하게 난수를 뿜어내는 방식에다가 범위라던지 시드를 지정할수 없어서 써먹으려면 상당히 머리가 아프다. C와 C++에 rand()함수보다 못한 수준이다. 꼭 필요하다면 승제산을 통해 자릿수를 조절해서 범위를 정하거나 (다만 승산를 하게되면 16비트 범위를 벗어나는 조건도 생기기 때문에 DMOV 명령으로 32비트 디바이스를 지정해 값을 넘겨줘야한다. 게다가 문제는 0이 난수로 생성될때 제산을 해버리면 연산오류가 뜨기 때문에 이것도 보정해 줘야한다.) 생성된 난수에 특정 상수 또는 조건 내에서 측정할수 있는 특정값(AD 모듈을 통해 들어오는 신호의 노이즈값이라던지..서보축의 현재 이송값이라던지..)등을 같이 연산 해서 난수의 질을 높인뒤 필요한 범위이상 난수가 발생되거나 동일난수가 연속적으로 발생할시 재생성을 요구하는 로직을 짜야 그나마 써먹을만한 난수가 나온다.[7] 기구나 전장계통의 공사업무라면 출퇴근하면서 정해진 근무시간동안 업무를 하고 일 끝나면 퇴근하거나 철수해도 되지만, PLC는 자동제어의 특성상 낮밤 구분없이 실시간으로 지속 대응해야 되기에 현장을 떠나기 힘들다.[8] PLC를 사용하는 목적이 자동제어인데 이것이 단순히 라인이랑 설비만 깔아주는 것이 아니라 시스템을 안정화시키기까지 현장에서 몇달 내내 대응해야 한다.[9] 현장의 특성상 PLC도 주, 야간을 나눠서 근무하는 편이 많다. 물론 대부분의 시간은 돌발 상황 대응으로 보낸다.[10] 한두달이면 모텔로 많이 하지만 3개월 이상의 장기 출장이면 회사 입장에서 그냥 보증금내고 월세를 얻는게 모텔보다 싸기 때문이다. 프로젝트의 규모가 크고 팀원이 많을수록 숙소의 질은 비교적 좋아지는 편이다.[11] 보통 퇴사한 경력자들은 경력을 살려 대우가 더 좋은 동종업계 회사로 이직하거나 운이 따라준다면 자신이 시운전했던 대기업 현장 생기나 보전으로 스카웃 되기도 한다. 또한 기술영업과 프로젝트 관리로 빠지는 사례도 많다. 아예 주경야독으로 공부해서 전기기사 취득 후 시설관리로 빠지는 사람도 종종있다.[12] 조립을 잘못해서 풀려있거나 설계 자체에 문제가 있는 경우.[13] 전원이 아예 안 켜진다던지, 엉뚱한 게 작동 한다던지 등[14] 배선이 불량해서 작동해야 할게 작동을 안하거나, 커플링이 풀려서 서보는 돌아갔는데 기구물이 안움직이는 등, 따지고 보면 프로그램의 문제는 아니지만 눈에 안 보이기 때문에 가장 먼저 프로그램을 의심하고 본다.[15] 단순 인간관계 뿐만 아니라, 문제가 생겼을 때 수습하는 것도 멘탈이 강해야 한다. 특히 문제가 생기면 죄인 취급하는 분위기 속에서 해결해야 하는데, 멘붕하면 절대로 안된다.[16] 설마 싶겠지만 당연히 타 부서도 책임 회피를 위해서 온갖 변명과 빠져나갈 구실을 준비해서 폭탄 돌리기를 한다. 설계 담당은 가공업체가 빵꾸를 냈다, 입고가 늦어진거다. 기구 담당은 설계가 발주를 늦게 내서 조립이 늦었다, 전장은 조립이 늦어서 배선이 늦었다, 어쨌든 기간에 맞춰서 전원 인가는 했다(실질적으로 제대로 되는게 없는 상태인데도)라는 식으로. 안타깝게도 이 지경까지 왔다면, 드라이 런 등 기본적인 테스트나 디버깅을 할 시간을 모두 날려먹었기 때문에 프로그램 완성도가 낮을 가능성이 높아 최종적으로는 PLC 담당자가 책임져야 한다로 귀결되기 쉽다.[17] 자동화 현장의 특성상 설비의 에러 발생이 엄청 많기 때문에 시운전에 안정화까지 다 해놓고 철수해도 나중에 그 현장 담당자랑 작업자한테 전화 올 일이 엄청 많다. 하지만 해외로 나가면 다른 사람에게 인수인계하고 출국하는게 보통이므로 해외 프로젝트만 신경쓰면 되기 때문에 전화받느라 짜증날 일은 없다.[18] 하지만 인수인계 받을 사람이 없거나, 인수인계받은 사람 선에서 처리가 안된다면 결국 전화가 끊임없이 온다. 시차가 크면 클수록 잠 잘 때, 일하는 중 상관 없이 수시로 전화가 오기 때문에 더 심하게 스트레스 받는 경우도 많다.[19] 물론 다음 프로젝트를 받으면 얄짤없이 야근 및 출장 지옥이 재시작된다. 덕분에 PLC 개발자들은 업무가 일찍 끝나도 자기 역량에 따라 철수 날짜를 며칠 미루기도 한다.[20] 물론 이건 회사마다 케바케인데, 심한 경우는 프로젝트가 끝날 쯤에 다른 사람에게 인계시키고 다른 프로젝트나 현장/원격 대응으로 차출하는 경우도 있다. 특히 영업팀이 대책없이 일을 저지르는 경우는 감당 못할 정도로 일이 쌓이기 때문에 빠르게 퇴사하는게 답이다.[21] 물론 PC 환경에서도 금융, 보안같이 민감한 환경의 개발자들도 많고 제품의 버그나 제로데이로 인해 엄청난 손실을 불러오는 경우도 많기 때문에 단순 비교는 불가능하나 인명사고에서는 PLC 제어가 위험부담이 높은 편이다.[22] 공회전이라고도 부르며 제품을 투입하지 않은채 설비만 가동해서 충돌등이 발생하지 않는지 사양에 따라 정확하고 안전하게 동작하는지 확인하는 과정이다[23] 최근에는 프로그램 사양이 현장따라 거의 표준화 돼있기 때문에 상상도 못한 버그로 인한 사고는 거의 없다. 대부분은 조작 실수 또는 안전수칙 무시하다가 발생하는 현장 사고가 많다.[24] 이건 제품당 단가가 낮은 현장에서는 쿠사리 좀 먹고 끝날 일이나 제품당 단가가 매우 높은 현장이면….[25] 1 제품당 단가가 높은 편에 속하는 OLED 디스플레이를 예로 들면 봉지 공정(Encapsulation, OLED의 유기물질과 전극은 산소와 수분에 매우 민감하게 반응해서 산소나 수분이 닿으면 발광 특성을 잃기 때문에 이를 차단하기 위해 봉지 재를 씌워서 밀봉하는 공정) 이전의 제품을 취급하는 설비 내부는 항상 습도 0% 질소 100% 혹은 진공 환경을 유지해야 하는데, 농도 제어에 프로그램적인 오류가 있어 정상적으로 제어하지 못하고 수치가 틀어지면 설비 안에 있던 제품은 몽땅 불량품이 된다. 설상가상으로 물류 설비라서 안에 수백 수천 장의 제품이 있었다면 기업이 얼마나 큰 손실을 보았을지 생각만 해도 어질어질해진다. 중소형 OLED 패널의 단가는 보통 1장에 13~14만원 정도인데, 이게 물류설비안에 100장이 있을때 농도제어 사고가 발생하면 단순히 계산해도 한순간에 기업은 14,000,000원+@의 손실을 보는게 된다. 반도체 웨이퍼도 비슷한 공정이 있는데 이쪽은 웨이퍼 장당 100만원을 넘어가는 제품도 많기때문에 사고가 나면 억대의 손실을 볼수도 있다.[26] 단순히 센서 교체 비용의 문제가 아니라 교체를 하기 위해 엔지니어가 와야 하며 교체가 될 때까지 생산을 못 하게 되니 그것도 막대한 손실이다. 게다가 만약 국내에 재고가 없는 고가의 정밀 센서가 파손된다면 비용도 비용이지만 다시 발주를 내고 항공배송을 거쳐 현장에 도착할때까지 막대한 시간과 비용을 낭비하게 된다.[27] 실제 현장에선 이중 삼중으로 안전장치를 마련해둔다. 설비 운전키가 있어서 키가 꽂히지 않으면 설비가 동작하지 않도록 하고 설비 내부에 진입하거나 보수 작업시에 키를 손목에 차야 한다거나. 도어가 전부 닫히지 않으면 설비 동작을 할 수 없다든가 곳곳에 비상 정지 스위치를 마련한다든가 라이트 커튼을 설치해서 작업 범위 안에 사람이 감지되면 설비가 정지한다든가... 그러나 한국식 대충대충 빨리빨리 문화 때문에 절대다수의 중소기업은 이 모든 안전장치를 무시하고 작업하는 경우가 많다. 물론 납품시에는 사양서에 맞춰 안전장치를 살려둔채 납품하나 엔지니어들은 작업하는데 거슬리고 시간만 지체된다고 셋업모드를 만들어서 안전장치를 무시하도록 해놓은 곳도 있다. 대기업 현장 같은 경우에는 환경안전팀들이 돌아다니며 안전규정이 위반되는 족족 퇴출해 버리기 때문에 이 악물고 안전절차가 지켜지기는 한다[28] 안전관련으로 온갖 종류의 시나리오를 상정해 에러 검출을 넣으라고 요청하기 때문에 각종 안전대응 센서와 프로그램 삽입 등의 조치를 취한다. 이러고도 다른데서 사고 나면 추가로 더 넣는 식으로 대응한다.[29] 최초로 설계, 제작하는 설비라도 어디에서 돌아가던 비슷한 프로그램을 받아와서 고치고 또 고치는 식으로 간다. 그래서 PLC 프로그램 개발 담당자의 덕목 중 하나는 남의 프로그램을 보고 빨리 분석하는 능력이라고 할 정도. 때문에 설비 종류가 달라지면 분석조차 하기 어려워 특정 설비나 시스템 하나만 파는 경우도 있다.[30] 그 외에 시간을 꾸준히 잡아먹는 것이라면 개발 당시에는 없었던 요구사항이 꾸준히, 그것도 즉흥적으로 추가되는 경우. 특히 대기업 하청으로 먹고 사는 대다수의 중소 설비 업체들은 잔금과 다음 프로젝트 입찰을 인질로 한 번 보낸 설비를 그대로 쓰는 일이 거의 없기 때문에 정신이 나갈 정도로 시달리게 된다.[31] 비전이라고 불리며 크게 2가지 공정이 있다. AOI라고 완제품에 이물질이 들어가진 않았는지, 공정이 정상적으로 이루어졌는지 카메라로 촬영해서 양품인지 불량품인지 프로그램으로 판단하거나 Align이라고 생산공정 전에 투입된 제품이 정위치에 있는지 카메라로 촬영한 뒤 거리를 측정해서 PLC로 정위치에서 얼마나 벗어나 있는지 값을 던져주고 PLC에서 서보모터를 이용하여 제품의 위치를 정밀하게 보정하는 기술 등이 있다. X선를 이용한 비파괴검사 기술도 있다.[32] 현장에 아직까지 RS-232C와 동축케이블 같은 기술이 사용되는 이유이기도 하다.[33] 당연히 단순 반복 작업을 모조리 사장시킨 기술이 자동화이니까...[34] 사실 출장을 다녀도 할 사람은 다 한다. 출장기간은 좀 못봐도 돌아오면 출장수당으로 목돈을 마련해오니 좋아하는 상대도 있다. 대신 결혼 후에는 되도록 출장을 줄일려고 하는 편이다.[35] 만약 어학능력이 되면 주재원으로 해외에 장기체류하면서 현지 애인을 만나 국제결혼을 하는 사람도 있다.[36] 프리랜서로 뛰면서 프로젝트 하나를 돌릴 정도면 기본 천단위를 부를 수 있다. 프로젝트를 부분적으로만 담당해도(설비 10대 중에 3대를 담당하는 식으로) 월 4~500 정도는 불러도 무방하다.[37] 보통 안정화가 끝나면 설비 셋업/보전 메뉴얼 제작을 하는게 일상이다. 게다가 작업자/설비보전 사람들한테도 생산설비 운전법에 대해 교육해야 한다.[38] 미쓰비시전기와 기술협력으로 만들어진 PLC다. 초기에 LS 일렉트릭이 한국시장에서 싼 가격을 기반으로 시장점유율을 확보한 뒤에 미쓰비시전기가 한국법인을 설립해 LS 일렉트릭이 만들어 놓은 시장을 거의 그대로 먹었다. 초기 미쓰비시전기 기술을 기반으로 했기 때문에 LS 일렉트릭 PLC 카드가 없으면 미쓰비시 PLC 카드를 장착해도 작동이 된다고 할 정도였다고 한다.[39] 신뢰성과 제어프로그램의 확장성이 대단해 극도의 정밀성이 요구되거나 다양한 타입의 공정이 엮여들어가는 라인 같은 경우 지멘스를 사용한다. 특히 발전소용 PLC는 거진 지멘스만 쓴다고 해도 될 정도. 그만큼 프로그램이 어려워 같은 PLC 제어쪽에서도 지멘스를 다룰 줄 안다면 몸값이 달라진다. 대신 그만큼 가격이 엄청나며 상위 시리즈의 모델은 타 회사와 비교가 불가능할 정도로 비싸다.[40] 디스플레이, 반도체, 우주항공, 의료 등 모든 장비의 데이터 수집 및 제어를 위한 통신 솔루션

분류