일상에 꼭 필요한 정보, 늘 함께하는 나침반 일상에 꼭 필요한 정보, 늘 함께하는 나침반

PLC 비교명령이란? 값 비교 판단 원리

읽는 시간 약 6분

PLC 비교명령이란 두 데이터의 값을 비교해 크다·작다·같다 등의 조건을 판단하는 명령입니다. PLC 비교명령의 =·<>·>·<·>=·<= 연산과 센서값·Timer·Counter 데이터를 제어조건으로 활용하는 원리를 알아봅니다.

PLC 비교명령이란 무엇이며 왜 사용할까?

PLC 비교명령(Comparison Instruction)은 두 개의 데이터 값을 비교하여 조건이 TRUE인지 FALSE인지 판단하는 명령입니다. PLC 제어에서는 단순히 센서가 ON인지 OFF인지 확인하는 것뿐 아니라 온도와 압력, 생산수량, Timer 경과시간처럼 숫자로 표현되는 데이터를 기준으로 장치를 동작시켜야 하는 경우가 많습니다. 예를 들어 탱크 온도가 80℃ 이상이면 냉각팬을 작동시키거나 생산수량이 100개에 도달하면 컨베이어를 정지시키는 제어가 대표적입니다. 이러한 조건을 구현할 때 비교명령을 사용합니다. 비교 대상은 PLC 입력값뿐 아니라 Data Register, Memory 변수, Analog Input의 변환값, Counter의 Current Value 등 다양한 데이터가 될 수 있습니다. CPU는 프로그램이 실행될 때 두 값을 비교하고 그 결과를 논리적인 TRUE 또는 FALSE로 만들어 다음 접점이나 Coil의 동작조건으로 사용합니다. 따라서 비교명령은 PLC가 단순한 ON·OFF 제어를 넘어 실제 공정 데이터를 기준으로 판단하도록 만드는 핵심적인 연산기능입니다.

=·<>·>·< 비교연산자는 어떻게 판단할까?

PLC에서 사용하는 대표적인 비교조건에는 같음(Equal), 같지 않음(Not Equal), 초과(Greater Than), 미만(Less Than) 등이 있습니다. 프로그래밍 환경에 따라 =, <>, >, < 등의 기호나 EQ, NE, GT, LT와 같은 명령어로 표현할 수 있습니다. 예를 들어 현재 온도값을 A, 설정온도를 B라고 할 때 A > B 조건은 현재 온도가 설정값보다 클 때 TRUE가 됩니다. A = B는 두 값이 같을 때 TRUE이고 A <> B는 두 값이 다를 때 TRUE가 됩니다. 여기서 비교명령 자체가 값을 변경하는 것은 아닙니다. 두 데이터를 읽어서 조건의 성립 여부만 판단하고 그 결과를 이후 제어논리에 전달합니다. 또한 정수(Integer), 실수(Real), 시간(Time) 등 비교하는 데이터 형식이 서로 호환되는지도 중요합니다. PLC 제조사와 명령에 따라 지원되는 데이터형과 자동 형변환 규칙이 다르기 때문에 실제 프로그램에서는 Instruction Manual을 확인해야 합니다. 특히 실수 데이터는 계산오차 때문에 완전한 동일값 비교보다 허용범위를 이용하는 방법이 더 적절한 경우도 있습니다.

>=·<= 조건은 센서와 Counter 제어에 어떻게 사용할까?

>=는 첫 번째 값이 두 번째 값보다 크거나 같은지를 판단하고 <=는 작거나 같은지를 판단합니다. 산업자동화에서는 특정 값에 정확히 일치하는 순간보다 기준값을 넘었는지를 확인해야 하는 경우가 많기 때문에 이러한 비교조건이 중요합니다. 예를 들어 Counter의 CV가 100 이상이면 포장공정을 시작하도록 CV >= 100 조건을 사용할 수 있습니다. 단순히 CV = 100으로 구성하면 프로그램 구조에 따라 값이 100을 건너뛰거나 이미 101 이상이 된 상태에서는 원하는 조건을 만족하지 못할 수 있습니다. Analog Input에서도 같은 원리가 적용됩니다. 압력이 5bar 이상일 때 펌프를 정지하거나 탱크 수위가 20% 이하일 때 보충밸브를 열도록 비교조건을 만들 수 있습니다. 다만 실제 센서값에는 작은 변동과 노이즈가 존재하므로 하나의 기준값만 사용하면 출력이 경계 부근에서 반복적으로 ON·OFF될 수 있습니다. 이러한 현상을 줄이기 위해 ON 기준과 OFF 기준을 서로 다르게 설정하는 Hysteresis 또는 Deadband 제어를 적용하기도 합니다.

비교명령은 Timer·Analog Input과 어떻게 활용할까?

PLC 비교명령은 Timer와 Counter뿐 아니라 아날로그 센서 데이터를 이용하는 자동제어에서 특히 유용합니다. 예를 들어 Analog Input Module에서 받은 4~20mA 신호를 Scaling하여 0~100℃의 온도값으로 변환한 뒤 현재온도 >= 70℃ 조건이 TRUE가 되면 냉각팬 운전 Coil을 활성화할 수 있습니다. Timer의 ET(Elapsed Time)를 다른 시간값과 비교하여 특정 구간에서만 장치를 동작시키는 프로그램도 구성할 수 있습니다. Counter에서는 CV(Current Value)를 기준수량과 비교하여 생산공정의 단계를 변경할 수 있습니다. 여러 비교명령을 AND·OR 논리와 결합하면 온도 60℃ 이상이면서 압력이 정상범위일 때 운전 허용과 같은 복합조건도 만들 수 있습니다. 하지만 비교대상의 단위와 Scaling이 서로 다르면 논리 자체가 맞더라도 잘못된 결과가 발생할 수 있으므로 데이터의 의미와 단위를 명확하게 관리해야 합니다. 결국 PLC 비교명령은 공정에서 측정된 숫자를 단순한 데이터로 저장하는 데 그치지 않고 실제 장치의 운전 여부를 결정하는 제어조건으로 변환하는 중요한 기능입니다.

jssj2627

함께 보면 좋은 글

댓글 0

첫 댓글을 남겨보세요.

error: Content is protected !!

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.