PLC Recipe란?|제품별 설정값을 저장·불러오는 원리
PLC Recipe는 제품이나 공정별로 여러 설정값을 하나의 데이터 세트로 저장하고 필요할 때 불러오는 기능입니다. Recipe의 구조와 HMI 연동, 데이터 저장·전환 원리, 프로그램 설계 시 주의사항을 알아봅니다.
하나의 자동화 설비에서 항상 같은 제품만 생산하는 것은 아닙니다. 제품의 크기나 재질, 모델이 달라지면 모터 속도와 온도, 작업시간, 위치값 등 여러 설정값도 함께 변경해야 할 수 있습니다.
제품을 바꿀 때마다 작업자가 수십 개의 설정값을 하나씩 입력한다면 시간이 오래 걸릴 뿐만 아니라 잘못된 값을 입력할 가능성도 높아집니다.
이러한 문제를 줄이기 위해 PLC와 HMI 시스템에서 활용하는 기능이 **Recipe(레시피)**입니다.
Recipe를 이용하면 제품 A, 제품 B, 제품 C처럼 제품별 설정값을 하나의 데이터 그룹으로 저장하고 필요한 제품을 선택했을 때 관련 값을 한꺼번에 불러올 수 있습니다.
PLC Recipe란 무엇일까?
PLC Recipe란 특정 제품이나 공정을 운전하는 데 필요한 여러 설정값을 하나의 데이터 세트로 묶어 저장하고 필요할 때 불러오는 방식을 의미합니다.
음식을 만들 때 사용하는 레시피를 생각하면 이해하기 쉽습니다.
하나의 요리 레시피에는 재료의 종류와 양, 조리온도, 조리시간 등이 함께 기록되어 있습니다.
자동화 설비의 Recipe도 비슷합니다.
예를 들어 포장설비에서 제품별로 다음과 같은 설정값이 필요하다고 가정해 보겠습니다.
| 설정항목 | 제품 A | 제품 B | 제품 C |
|---|---|---|---|
| 컨베이어 속도 | 100 | 120 | 90 |
| 실링 온도 | 150℃ | 165℃ | 140℃ |
| 실링 시간 | 1.5초 | 2.0초 | 1.2초 |
| 제품 길이 | 200mm | 250mm | 180mm |
| 목표수량 | 1,000 | 800 | 1,500 |
제품 A를 생산할 때는 A에 해당하는 설정값을 불러오고 제품 B로 변경하면 B의 데이터를 불러오는 방식입니다.
이렇게 하면 작업자가 각각의 값을 일일이 변경하지 않아도 제품에 필요한 설정조건을 한 번에 적용할 수 있습니다.
PLC Recipe는 어떻게 구성될까?
Recipe의 핵심은 여러 데이터를 하나의 Record 또는 Data Set으로 관리하는 것입니다.
예를 들어 제품 하나에 필요한 설정값이 다음과 같다고 가정해 보겠습니다.
제품번호 / 속도 / 온도 / 시간 / 위치 / 목표수량
이 여섯 개의 데이터를 하나의 Recipe로 묶을 수 있습니다.
제품이 10종류라면 같은 구조를 가진 데이터 세트를 10개 만들어 각각 다른 설정값을 저장할 수 있습니다.
PLC에서는 연속된 Data Register나 Array, 구조체 형태의 데이터 등을 활용해 Recipe를 구성할 수 있으며 HMI에서 제공하는 전용 Recipe 기능을 이용하는 방법도 있습니다.
구체적인 구성방법은 사용하는 PLC와 HMI에 따라 다릅니다.
중요한 것은 개별 설정값을 각각 관리하는 것이 아니라 제품 하나에 필요한 설정값들을 하나의 묶음으로 관리한다는 개념입니다.
Recipe 데이터를 저장하고 불러오는 원리
Recipe 시스템에는 일반적으로 두 가지 중요한 동작이 있습니다.
Save와 Load입니다.
Save는 현재 설정되어 있는 값을 특정 Recipe 영역에 저장하는 작업입니다.
예를 들어 작업자가 제품 A에 맞게 속도와 온도, 위치를 조정한 후 Recipe 저장 기능을 실행하면 해당 값들이 제품 A의 데이터 세트에 저장될 수 있습니다.
Load는 반대입니다.
이미 저장된 제품 A의 Recipe를 선택하고 불러오면 해당 데이터가 PLC의 실제 운전 설정 영역으로 복사됩니다.
개념적으로 보면 다음과 같습니다.
제품 A Recipe 저장영역 → Load → PLC 운전 설정영역
또는 현재 운전 설정값을 Recipe에 저장한다면 다음과 같습니다.
PLC 운전 설정영역 → Save → 제품 A Recipe 저장영역
따라서 Recipe 기능을 설계할 때는 저장 방향과 불러오기 방향을 명확하게 구분하는 것이 중요합니다.
잘못된 방향으로 데이터를 전송하면 저장해 두었던 Recipe를 현재 값으로 덮어쓰는 문제가 발생할 수 있습니다.
PLC와 HMI 중 어디에 Recipe를 저장할까?
Recipe를 반드시 PLC 내부에만 저장해야 하는 것은 아닙니다.
시스템 구성에 따라 PLC 또는 HMI, 별도의 저장장치나 상위 시스템 등에 Recipe를 저장할 수 있습니다.
PLC 내부에 Recipe를 저장하면 프로그램에서 직접 데이터를 관리하기 편리합니다. 하지만 저장해야 하는 제품 종류와 설정항목이 많아지면 PLC의 메모리 사용량도 증가할 수 있습니다.
HMI에는 Recipe를 관리하기 위한 전용 기능을 제공하는 제품이 많습니다.
작업자가 HMI 화면에서 제품명을 선택하고 저장 또는 불러오기 버튼을 누르면 HMI가 저장된 Recipe 데이터를 PLC의 지정된 주소로 전송하는 방식으로 구성할 수 있습니다.
Recipe가 수십 개 또는 수백 개로 증가한다면 HMI의 내부 저장장치나 메모리카드 등을 이용해 관리하는 방식도 검토할 수 있습니다.
어디에 저장하는 것이 적절한지는 데이터량과 백업방법, 수정 권한, 시스템 구성 등을 고려해 결정해야 합니다.
Recipe와 Retentive Memory는 어떤 관계가 있을까?
Recipe를 PLC 내부에 저장한다면 전원 OFF 후에도 데이터가 유지되는지 확인해야 합니다.
예를 들어 제품별 설정값을 PLC의 일반 메모리에 저장했는데 전원을 끄는 순간 데이터가 초기화된다면 Recipe의 의미가 크게 줄어들 수 있습니다.
따라서 PLC 내부에 중요한 Recipe 데이터를 저장한다면 해당 영역이 Retentive Memory인지 또는 별도의 비휘발성 저장 기능을 사용하는지 확인해야 합니다.
하지만 Recipe와 Retentive Memory는 같은 개념은 아닙니다.
Recipe는 여러 설정값을 제품이나 공정별 데이터 세트로 관리하는 방법이고 Retentive Memory는 전원 차단 이후에도 데이터를 유지하기 위한 메모리 특성입니다.
즉 Recipe를 어디에 저장하느냐에 따라 Retentive 기능이 필요할 수 있다고 이해하면 됩니다.
Recipe는 어떤 설비에서 사용할까?
Recipe는 다품종 생산설비에서 특히 유용합니다.
포장설비
제품마다 포장지 길이와 실링 온도, 컨베이어 속도 등이 다를 수 있습니다.
제품 변경 시 해당 Recipe를 불러오면 여러 설정값을 한꺼번에 변경할 수 있습니다.
식품 생산설비
제품 종류에 따라 혼합시간, 온도, 투입량, 공정시간 등이 달라질 수 있습니다.
제품별 Recipe를 만들어두면 동일한 조건을 반복적으로 적용하기 편리합니다.
조립 자동화설비
제품 모델에 따라 실린더 위치나 Servo 위치, 작업순서, 검사 기준값 등이 달라지는 경우 Recipe를 활용할 수 있습니다.
온도제어 공정
제품이나 재료별로 목표온도와 유지시간 등이 다르다면 각 조건을 Recipe로 저장해 사용할 수 있습니다.
이처럼 Recipe는 단순히 제품명을 저장하는 기능이 아니라 해당 제품을 생산하기 위한 공정조건 전체를 관리하는 방법으로 활용할 수 있습니다.
Recipe를 불러오면 바로 설비에 적용해도 될까?
Recipe 프로그램에서 특히 주의해야 하는 부분입니다.
작업자가 다른 제품의 Recipe를 선택했다고 해서 모든 값을 즉시 운전 중인 설비에 적용하는 것이 항상 적절한 것은 아닙니다.
예를 들어 현재 모터가 고속으로 운전되고 있는데 Recipe 변경과 동시에 속도값이나 위치값이 갑자기 바뀐다면 설비 동작에 영향을 줄 수 있습니다.
따라서 실제 시스템에서는 Recipe를 불러올 수 있는 조건을 설정하는 것이 좋습니다.
예를 들어 다음과 같은 조건을 고려할 수 있습니다.
설비 정지 상태
자동운전 해제 상태
현재 공정 완료 상태
제품 교체모드
작업자 확인 완료
즉 Recipe를 선택하는 것과 실제 운전조건에 적용하는 과정을 구분할 수 있습니다.
설비의 특성에 따라 Recipe 선택 → 데이터 확인 → 적용 버튼 → 운전 설정값 반영과 같은 절차를 구성하면 잘못된 제품 설정이 즉시 적용되는 위험을 줄일 수 있습니다.
Recipe 데이터에는 범위 검사가 필요하다
저장되어 있는 데이터라고 해서 항상 올바른 값이라고 단정할 수는 없습니다.
작업자가 값을 잘못 입력하거나 데이터가 수정될 수도 있기 때문입니다.
예를 들어 설비의 정상 속도 범위가 10~100인데 Recipe에 500이라는 값이 저장되어 있다면 이를 그대로 적용해서는 안 될 수 있습니다.
따라서 중요한 설정값에는 Minimum과 Maximum 범위 검사를 적용하는 것이 좋습니다.
온도 설정값이 50~200℃ 범위라면 Recipe를 불러온 후 해당 값이 정상범위 안에 있는지 확인합니다.
범위를 벗어난 데이터가 있다면 적용을 중단하고 HMI에 오류 메시지를 표시하는 방식으로 구성할 수 있습니다.
Recipe 시스템에서 중요한 것은 데이터를 빠르게 불러오는 것뿐 아니라 불러온 데이터가 실제 설비에서 사용할 수 있는 정상적인 값인지 검증하는 과정입니다.
Recipe 수정 권한도 관리해야 한다
모든 작업자가 Recipe 데이터를 자유롭게 변경할 수 있도록 하면 의도하지 않은 설정 변경이 발생할 수 있습니다.
특히 품질에 직접 영향을 주는 온도나 압력, 위치, 검사 기준값 등은 변경 권한을 구분할 필요가 있습니다.
HMI의 사용자 로그인 기능을 이용하여 작업자는 Recipe 선택만 가능하게 하고 관리자나 엔지니어만 Recipe 값을 수정하도록 구성할 수 있습니다.
Recipe가 수정되었을 때 수정자와 수정시간, 변경 전후 값을 기록하는 시스템도 구축할 수 있습니다.
이러한 관리방식은 생산조건의 재현성과 문제 발생 시 원인 분석에 도움이 됩니다.
Recipe 데이터는 백업이 중요하다
제품별 Recipe를 오랜 시간 조정하여 최적화했다면 그 자체가 중요한 설비 데이터가 됩니다.
PLC나 HMI가 고장났을 때 Recipe 데이터까지 함께 사라진다면 설비를 복구한 후 모든 설정값을 다시 찾아야 할 수도 있습니다.
따라서 Recipe는 정기적으로 백업하는 것이 좋습니다.
HMI나 PLC가 CSV 등의 파일 내보내기 기능을 지원한다면 외부 저장장치에 별도로 보관할 수 있습니다.
프로그램을 수정하거나 PLC·HMI를 교체하기 전에도 Recipe 데이터를 먼저 백업하는 습관이 중요합니다.
특히 PLC 프로그램 백업파일과 Recipe 데이터가 별도로 관리되는 시스템도 있기 때문에 프로그램을 백업했다고 Recipe까지 모두 백업되었다고 단정해서는 안 됩니다.
Recipe와 PLC 프로그램을 설계할 때 주의할 점
Recipe를 구성할 때 가장 먼저 해야 할 일은 제품마다 변경되는 값과 공통으로 사용하는 값을 구분하는 것입니다.
모든 데이터를 Recipe에 넣으면 관리해야 할 항목이 지나치게 많아질 수 있습니다.
제품에 따라 달라지는 값만 Recipe에 포함하고 설비 공통 설정은 별도로 관리하는 것이 구조를 이해하기 쉽습니다.
다음으로 Recipe 번호와 실제 제품을 명확하게 연결해야 합니다.
단순히 Recipe 1, Recipe 2라고 표시하기보다 제품코드나 제품명을 함께 표시하면 작업자가 잘못된 Recipe를 선택하는 것을 줄일 수 있습니다.
또한 Recipe를 불러온 뒤 현재 선택된 제품정보를 HMI에 명확하게 표시하는 것이 좋습니다.
마지막으로 프로그램 변경으로 Recipe 데이터 구조가 달라지는 경우도 고려해야 합니다.
기존 Recipe에는 설정항목이 10개였는데 프로그램 업데이트 후 12개로 증가한다면 과거 데이터와 새로운 데이터 구조가 맞지 않을 수 있습니다.
따라서 장기간 운영되는 설비에서는 Recipe 데이터의 버전과 구조까지 체계적으로 관리하는 것이 좋습니다.
PLC Recipe 핵심 정리
PLC Recipe는 제품이나 공정별로 필요한 여러 설정값을 하나의 데이터 세트로 저장하고 필요할 때 한꺼번에 불러오는 방식입니다.
제품 종류가 바뀔 때마다 작업자가 속도와 온도, 시간, 위치 등을 하나씩 다시 입력하는 대신 미리 저장한 Recipe를 선택하여 설정값을 적용할 수 있습니다.
Recipe를 설계할 때는 단순한 저장과 불러오기 기능만 만드는 것이 아니라 데이터 저장 위치, 전원 OFF 후 유지 여부, 값의 허용범위, 변경 권한, 적용조건과 백업방법까지 함께 고려해야 합니다.
특히 운전 중 Recipe가 변경될 경우 설비에 예상하지 못한 동작이 발생할 수 있으므로 Recipe 선택 → 데이터 검증 → 작업자 확인 → 설비 적용과 같이 단계적으로 처리하는 방법을 검토할 수 있습니다.
잘 설계된 Recipe 기능은 제품 변경시간을 줄이는 것뿐만 아니라 동일한 제품을 다시 생산할 때 동일한 공정조건을 재현하고 작업자의 입력 실수를 줄이는 데 중요한 역할을 합니다.




댓글 0
첫 댓글을 남겨보세요.