본문 바로가기
전문지식-기계관련

✅ 시퀀스 제어의 핵심, Rising/Falling Edge 완전 정복! 실무 적용 팁까지

by fresh-story 2025. 7. 16.
728x90
반응형

📚 1. 시퀀스 제어란? – 자동화를 이루는 기본 로직

시퀀스 제어(Sequence Control)는 정해진 순서(Sequence)에 따라 장치의 동작을 제어하는 시스템을 말합니다.
이는 산업 현장에서 기계, 설비, 생산라인 등을 자동화하는 데 필수적으로 사용되는 기술입니다.

  • 순차 논리를 기반으로 동작
  • 조건 → 동작 → 결과 흐름을 따라 실행
  • 주로 **PLC(Programmable Logic Controller)**에 의해 제어됨

예를 들어, 아래와 같은 과정이 시퀀스 제어에 해당합니다:

버튼을 누르면 → 모터가 작동 → 5초 후 경고등 점등 → 센서 감지 시 모터 정지

시퀀스 제어는 단순히 "ON/OFF"만 조작하는 것이 아닌, 상태의 흐름을 파악하고 타이밍에 맞는 제어가 핵심입니다. 여기서 등장하는 것이 바로 Rising/Falling Edge 개념입니다.

✅ 시퀀스 제어의 핵심, Rising/Falling Edge 완전 정복! 실무 적용 팁까지

⚡ 2. 엣지(Edge)란 무엇인가?

엣지는 디지털 신호가 변화하는 순간을 의미합니다.
디지털 신호는 0 또는 1의 이진 상태만 가지며, 다음과 같은 두 가지 엣지가 존재합니다:

  • Rising Edge (상승엣지): 0 → 1 로 전이될 때 발생
  • Falling Edge (하강엣지): 1 → 0 로 전이될 때 발생

이 순간은 매우 짧고 스캔 타임에 따라 한 번만 감지됩니다. 그래서 엣지를 감지하면, 신호가 변화하는 찰나를 트리거로 동작을 실행할 수 있습니다.

예를 들어:

  • 버튼을 누르는 순간(Rising)
  • 버튼을 떼는 순간(Falling)
  • 센서가 제품을 지나가는 찰나

이러한 짧은 순간을 인식하지 못하면, 중복 동작 또는 감지 누락이 발생할 수 있습니다.

🛠️ 3. PLC에서의 Edge 감지 방법

🧩 3-1. 소프트웨어 방식 – 상태 비교

가장 보편적인 방법은 현재 신호 상태와 이전 상태를 비교하는 방식입니다.

ladder
복사편집
현재 입력 상태 = M0 이전 상태 저장 = M1 엣지 결과 출력 = M2
  • Rising Edge 감지:
ladder
복사편집
IF M0 == 1 AND M1 == 0 THEN M2 = 1
  • Falling Edge 감지:
ladder
복사편집
IF M0 == 0 AND M1 == 1 THEN M2 = 1

이후 매 스캔마다 M1 = M0로 상태를 갱신해줘야 합니다.

🧩 3-2. 전용 명령어 활용

대부분의 PLC는 엣지 감지를 위한 전용 명령어를 제공합니다. 아래는 브랜드별 명령어 예시입니다:

                       PLC 브랜드                                                Rising Edge                                                       Falling Edge
Siemens (S7) P (Positive Edge) N (Negative Edge)
LS산전 P_TRIG N_TRIG
Mitsubishi
Omron @ 접두사 사용 @NOT 또는 @↓
 

전용 명령어를 사용하면 코드가 간결해지고 처리 정확도가 높아집니다.

 

💡 4. 엣지를 사용하는 이유 – 반복과 타이밍을 제어하다

신호는 유지되기도 하고, 흔들리기도 합니다.
예를 들어 버튼을 누르면 1 상태가 유지되는데, 이 상태를 그대로 이용하면 동작이 반복되거나, 타이밍을 놓칠 수 있습니다.

                                       문제                                                    상황발생 이유                                                해결 방법
버튼을 누른 상태에서 동작이 여러 번 반복됨 지속신호를 그대로 사용함 Rising Edge로 딱 한 번만 동작하게 설정
센서를 지나가는 순간이 감지되지 않음 Falling 타이밍을 놓침 Falling Edge 사용
타이머 조건 미정확 Edge 없는 상태에서 시간 측정 시작 엣지 감지 후 타이머 작동
 

엣지는 불필요한 반복을 방지하고, 짧은 신호도 놓치지 않도록 도와주는 도구입니다.

🔧 5. 실무 예제 – 엣지 감지를 이용한 문제 해결

🎯 예제 1: 버튼을 한 번만 눌렀을 때 동작하게 하기

문제:
버튼을 누르고 있으면 모터가 반복적으로 ON/OFF

해결:
Rising Edge 감지로, 신호 변화 순간에만 모터 구동

ladder
복사편집
X0 = 버튼 입력 M1 = 과거 상태 M2 = Rising Edge 감지 IF X0 == 1 AND M1 == 0 THEN M2 = 1 M1 = X0 // 과거 상태 저장

🎯 예제 2: 센서를 지나간 후 카운터 증가

문제:
센서를 지날 때마다 1개씩 카운트하려는데 누락되거나 중복됨

해결:
Falling Edge 감지로, 정확한 전이 타이밍 트리거 설정

ladder
복사편집
X1 = 센서 입력 M3 = 과거 상태 M4 = Falling Edge 감지 IF X1 == 0 AND M3 == 1 THEN CNT = CNT + 1 M3 = X1
 
 
 

⚠️ 6. 엣지 감지 시 주의사항 및 실수 방지법

                         주의 포인트                                                                                            설명
엣지는 매우 짧다 스캔 타임 내 1번만 감지됨. 신호 누락 주의
이전 상태 미보관 Rising/Falling 비교가 불가능해짐
반복 트리거 주의 엣지 없이 동작하면 반복 실행 가능성
버튼 bounce 물리적 접점 흔들림 → Debounce 필수
 

PLC의 스캔 속도입력 신호의 지속 시간을 고려해 설계해야 합니다.

 

🔄 7. 고급 응용 – 엣지 + 타이머, 카운터 조합

🕒 Edge + Timer

목적: 엣지 발생 후 일정 시간 대기 후 동작

ladder
복사편집
IF RisingEdge == 1 THEN Start TON T1 (3초) IF T1 == Done THEN Y0 = 1

단발 이벤트지연 동작 처리 가능

 

🔢 Edge + 카운터

목적: 버튼 누른 횟수만큼 장비 반복 실행

ladder
복사편집
IF RisingEdge(X0) == 1 THEN CNT = CNT + 1 IF CNT == 5 THEN 알람 출력

정밀 제어 및 조건부 실행 가능

 

🧠 8. 엣지 신호와 자주 함께 사용하는 명령어

  • SET/RESET: 엣지 트리거 후 상태 유지
  • TON/TOF/TP: 타이밍 동작 제어
  • COUNTER (CTU, CTD): 엣지로 이벤트 카운트
  • MOV, CMP: 조건 분기
  • 플래그 비트(M): 과거 상태 저장용으로 필수

 

📝 9. 요약 – Rising/Falling Edge 비교

                항목                                                 Rising Edge                                                                      Falling Edge
의미 0 → 1 변화 감지 1 → 0 변화 감지
일반 용도 시작 트리거 종료 트리거
사용 예 버튼 눌렀을 때, 센서 진입 시 버튼 뗄 때, 센서 이탈 시
장점 반복 방지, 정확한 개시 누락 방지, 타이밍 분리
주의점 이전 상태 비교 필요 스캔 속도 이상 시 오류 가능
 

📌 마무리: 실무에서 엣지는 ‘정확한 신호 타이밍 제어의 핵심’

Rising/Falling Edge는 PLC 제어에서 단순 조건 이상으로 정밀한 로직을 만들 수 있는 도구입니다.
제대로만 활용하면 오작동, 중복 실행, 누락 감지 등 실무의 골칫거리 문제를 크게 줄일 수 있습니다.

신호 하나에도 타이밍과 흐름이 있다. 그 흐름을 제어하는 열쇠가 바로 ‘엣지’이다.

728x90
반응형