자동화 현장에서 가장 까다로운 것 중 하나가 '이동 중인 제품의 정보 관리'입니다. 1번 공정에서 감지한 불량 정보를 제품이 5번 공정에 도착했을 때 정확히 꺼내어 배출해야 하기 때문이죠. 이때 데이터를 마치 컨베이어 벨트처럼 한 칸씩 옆으로 밀어주며 정보를 유지하는 기술이 바로 **시프트 레지스터(Shift Register)**입니다. 😊
1. 시프트 레지스터(SFT/SFTL)의 원리 💡
시프트 레지스터는 비트(Bit)나 워드(Word) 데이터를 지정된 방향으로 이동시키는 명령어입니다. 가장 대표적인 비트 시프트(SFT)를 기준으로 설명하면 다음과 같습니다.
- 🔹 데이터 이동: 실행 조건이 ON 될 때마다 M0 -> M1, M1 -> M2 식으로 데이터가 한 칸씩 이동합니다.
- 🔹 입력과 시프트: 새로운 데이터는 가장 첫 번째 칸(M0)에 입력되고, 마지막 칸의 데이터는 밖으로 밀려나며 사라집니다.
- 🔹 기억 능력: 제품의 위치가 바뀌어도 그 제품에 대한 '양품/불량' 정보를 비트 상태(0 또는 1)로 끝까지 추적할 수 있습니다.
2. 체험형: 컨베이어 불량 추적 시뮬레이터 🚛
아래 시뮬레이터는 5단계로 구성된 컨베이어 벨트입니다. 1단계에서 제품의 불량 여부를 판단하고, 컨베이어가 한 칸 이동할 때마다 데이터가 어떻게 따라가는지 확인해 보세요.
비트 시프트(SFTL) 공정 추적
3. 현장 실무 적용 사례: '불량 배출 시스템' 🏗️
✅ 사례: 병 충전 라인의 이물질 검사
1. 입력: 비전 센서가 이물질을 발견하면 SFT M0 명령어에 의해 M0 비트를 ON 시킵니다.
2. 이동: 병이 컨베이어를 따라 이동할 때마다 인코더 신호(펄스)를 받아 SFT 명령을 실행, 데이터를 옆으로 밀어줍니다.
3. 출력: 배출 실린더가 있는 10번째 칸(M9)에 데이터가 도착했을 때, LD M9 -> OUT Y0 로직에 의해 불량 병만 정확히 레일 밖으로 밀어냅니다.
4. 설계 시 주의사항 (핵심 꿀팁) ⚠️
- 펄스(Pulse) 제어 필수: 시프트 명령어는 실행 조건이 ON인 동안 매 스캔마다 데이터를 밀어버립니다. 반드시 상승 펄스(P)를 사용하여 컨베이어가 이동한 순간 딱 한 번만 동작하게 해야 합니다.
- 데이터 초기화: 설비를 처음 가동할 때는
FMOV K0 M0 K10등을 사용하여 레지스터에 남아있는 이전 공정의 쓰레기 데이터를 모두 지워야 사고를 막을 수 있습니다. - 시프트 방향 확인: 왼쪽으로 밀 것인지(SFTL), 오른쪽으로 밀 것인지(SFTR)에 따라 주소 할당 방향이 달라지므로 매뉴얼 확인이 필수입니다.
📝 오늘 내용 요약
- 시프트 레지스터: 데이터를 순차적으로 이동시켜 정보를 추적하는 기술
- SFTL/SFTR: 비트 단위로 이동하며 제품의 양불 정보를 기억함
- 활용: 컨베이어 추적, 불량 배출, 순차 제어 등에 필수적
시프트 레지스터를 이해하면 복잡한 물류 흐름도 아주 간단한 비트 이동으로 제어할 수 있습니다. 오늘 배운 내용을 실제 공정 설계에 응용해 보세요! 궁금한 점은 언제든 댓글로 남겨주세요. 😊
'PLC > 프로그래밍 및 명령어 활용' 카테고리의 다른 글
| PLC 간접 주소 지정과 인덱스 레지스터: 원리부터 실무 사례까지 (0) | 2026.03.22 |
|---|---|
| 복잡한 래더 로직을 깔끔하게! 서브루틴 설계와 FEND 명령어의 중요성 (0) | 2026.03.20 |
| PLC 펄스 명령어 완벽 가이드: 상승 펄스와 하강 펄스의 차이 (0) | 2026.03.19 |
| MOV vs DMOV 차이점 정리 및 실무 활용 꿀팁 3가지 (0) | 2026.03.18 |
| PLC 산술 연산 명령어 기초: ADD, SUB, MUL, DIV 완벽 정리 (1) | 2026.03.17 |