제어 사양서 작성법 — 멈추는 방법과 되돌리는 방법까지 시운전 전에 정해 둔다
마지막 수정: 2026-09-24 / 분류: 제어 설계, PLC
제어 사양서는 프로그램을 쓰기 전에 장치가 멈추는 방법과 되돌리는 방법까지 정하고 관계자와 합의하는 문서입니다. 이상 시의 동작을 고객에게 물어도 "멈춘다"는 답밖에 돌아오지 않는, 장치 메이커의 제어 설계자를 위해 썼습니다.
로봇이 이상으로 멈췄을 때 클램프한 워크는 놓는가. 비상정지를 해제하면 어디서부터 움직이는가. 사양서에 없으면 소프트웨어 담당자가 그 자리에서 정하고, 고객과 기계 설계의 인식 차이는 입회 검사에서야 드러납니다. 예로 드는 것은 컨베이어로 워크를 정위치까지 옮기고, 클램프한 뒤, 로봇이 꺼내는 반송 장치입니다.
1. 장마다 쓰는 형태를 정하고, 문장만으로 된 장을 남기지 않는다
장마다 정할 것과 쓰는 형태를 먼저 정합니다. 문장만으로 쓴 장은 읽는 사람마다 다른 동작을 떠올리기 때문입니다. 장의 이름은 회사마다 다를 것입니다. "쓰는 형태" 열은 그 장을 무엇으로 쓰는가입니다.
| 장 | 정할 것 | 쓰는 형태 | 합의 상대 |
|---|---|---|---|
| 범위와 전제 | 자신의 제어가 어디까지인가. 로봇 동작 프로그램, 안전 회로, 상위 생산관리 PC와의 통신은 누가 만드는가. 사이클 타임 | 문장과 표 | 고객·기계 설계 |
| 시스템 구성 | 기기와 통신. 선마다의 마스터 | 시스템 구성도 작성법 | 전기 설계·상대 기기 담당 |
| 입출력과 번지 | 신호 이름과 PLC 번지. 멈추는 방향의 신호를 정상일 때 ON으로 할 것인가 | PLC 어드레스 맵 작성법 | 전기 설계 |
| 운전 모드와 상태 | 모드 목록과 전환해도 되는 조건. 운전 상태 (운전 중·정지 중 등)의 천이 방식 | 표 | 고객 (조작·보전 담당) |
| 동작 | 공정별 동작과 다음으로 넘어가기 전에 기다리는 조건 | PLC 제어 플로차트 작성법 | 기계 설계 |
| 상대 기기와의 신호 | 주고받는 순서와 대기 시간의 상한. 상대가 멈췄을 때 신호가 어떻게 되는가 | 타이밍 차트 작성법 | 상대 기기 담당 |
| 정지와 이상 | 정지의 종류. 이상별 멈추는 방법과 멈추지 않는 것, 복귀 절차 | 이상 목록 표 | 고객·안전 담당 |
| 수동 조작 | 수동에서도 유효한 인터록 | 조건 표 | 기계 설계·고객 |
| 화면과 조작반 | 화면 목록과 이상 알림 방법 (램프·부저·화면) | 화면 목록 | 고객 |
| 변경 기록 | 판과 바뀐 곳의 이유. 아직 정해지지 않은 사항과 그 담당 | 표 | 전원 |
구성·입출력·동작·상대 기기와의 신호 장은 그림으로 만들면 어긋남이 보입니다. 쓰는 방법은 표에서 링크한 가이드대로입니다. 문장 한마디로 끝나기 쉬운 것은 모드·정지와 이상·수동 조작 장일 것입니다. 아래 2는 거기서 정할 것입니다.
2. 모드·정지·복귀·수동은 이름을 붙여 표로 정한다
- 자신의 제어 범위를 처음에 선으로 긋는다 로봇 동작 프로그램은 로봇 담당자가 만들고, 동력을 끊는 것은 안전 회로입니다. PLC는 안전 회로의 상태를 읽고 뒤처리와 복귀 절차를 맡습니다 (비상정지 복귀 플로차트 (샘플)). 범위 밖은 내용을 쓰지 않고, "누가 정하는가"와 경계에서 주고받는 신호만 씁니다.
- 운전 모드와 상태를 별도의 표로 만든다 모드는 누가 무엇을 움직일 수 있는가의 구분이고, 상태는 장치 전체의 운전 상태입니다. 같은 목록에 나열하면 자동 모드에서 이상 정지 중일 때 무엇을 조작해도 되는지가 정해지지 않습니다. 모드 전환은 상태를 조건으로 쓰고, 자동에서 수동으로는 기동 대기 또는 이상 정지 중일 때만으로 합니다.
- 정지의 종류를 정하고 이름을 붙인다 고객의 "멈춘다"에는 여러 가지 멈추는 방법이 있습니다. 구분 지점에서 멈추는 사이클 정지, 그 자리에서 멈추고 이어가는 일시 정지, 리셋을 기다리는 이상 정지, 동력을 끊는 비상정지입니다. 비상정지를 즉시 동력을 끊는 정지 카테고리 0으로 할지, 감속한 뒤 끊는 1로 할지는 안전 담당자와 정합니다.
- 시간 초과 이상은 플로차트의 "대기"에서 뽑는다 대기마다 초 수를 정하면 시간 초과는 동작과 1 대 1입니다. 사람을 기다리는 곳과 상류에서 워크가 오지 않을 뿐인 곳에는 상한을 두지 않습니다. 서보 알람이나 에어 압력처럼 어느 공정에서든 일어나는 이상은 대기와 별도로 기기마다 뽑습니다.
- 복귀는 원인 제거·리셋·기동의 세 가지로 나눈다 리셋으로 기계가 움직이기 시작해서는 안 됩니다. 리셋은 표시를 지우고 기동을 받아들이는 것만으로 하고, 도중의 워크는 제거한 뒤 원점 복귀 플로차트 (샘플)입니다. 이어서 움직이는 것은 위치마다 "있음·없음"이 한 가지로 정해지는 이상 (예의 E01·E02)만으로 합니다.
- 상대 기기의 신호가 이상과 전원 차단 시에 어떻게 되는지를 쓴다 멈추는 방향의 신호는 "정상"을 ON으로 받습니다. "이상"을 ON으로 받으면 전원 차단이나 단선을 "이상 없음"으로 읽어 버리기 때문입니다. 주고받는 순서와 대기 시간의 상한은 타이밍 차트 작성법로 상대와 합의합니다 (핸드셰이크 타이밍 차트 (샘플)의 4장).
- 수동으로 움직여도 되는 조건을 표로 만든다 수동에서도 유효한 인터록과 수동에서는 해제하는 조건을 나누어 씁니다. 이상 복귀에 쓰므로, 로봇이 간섭 범위에 있는 동안 클램프를 개폐하지 않는다는 수동에서도 유효하게 합니다. 화면에서 해제할 수 있는 것은 PLC 기능을 위한 것뿐이고, 사람을 지키는 도어나 비상정지는 안전 회로에 넣어 해제할 수 없게 합니다.
3. 예: 반송 장치의 이상 목록에는 멈추지 않는 것까지 쓴다
이상 목록의 한 행에는 검출 조건·멈추는 방법·멈추지 않는 것·복귀 절차를 씁니다. 예의 반송 장치는 다음 순서로 움직입니다.
- 컨베이어는 입구 센서로 워크를 본 뒤 기동하여 정위치까지 옮긴다
- 클램프하면 로봇에 취출 요구를 낸다
- 로봇은 들어와 워크를 잡고 클램프 열림 요구를 낸다
- PLC가 클램프를 열면 로봇이 워크를 가지고 나가 취출 완료를 돌려준다
로봇은 이 장치 전용이며, 취출 요구를 받으면 바로 가지러 오는 것을 전제로 합니다. 검출 조건의 초 수는 동작 시간에 여유를 더해 정했습니다. 컨베이어 반송은 5초 전후, 클램프 개폐는 0.5초 전후, 로봇 취출은 5초 전후입니다. 표는 이상 목록의 일부입니다.
| 이상 | 검출 조건 | 멈추는 방법 | 복귀 절차 |
|---|---|---|---|
| E01 워크 미도착 | 컨베이어 기동 후 8초가 지나도 정위치 센서가 ON 되지 않음 | 이상 정지. 컨베이어는 그 자리에서 멈춤 | 컨베이어 위의 워크를 확인하고 걸림을 제거 → 리셋 → 기동 (반송부터 다시 시작) |
| E02 클램프 닫힘 불량 | 클램프 닫힘 지령 후 1.5초가 지나도 닫힘단 센서가 ON 되지 않음 | 이상 정지. 클램프 지령은 바꾸지 않음 | 워크 방향을 확인 → 수동으로 클램프를 개폐해 닫힘단을 확인 → 리셋 → 기동 (클램프부터 다시 시작) |
| E03 로봇 취출 미완료 | 취출 요구 ON 후 10초가 지나도 취출 완료가 오지 않음 | 이상 정지. 취출 요구는 낸 채로 둠. 클램프 지령은 바꾸지 않음 | 로봇 측 이상을 확인 → 핸드가 워크를 잡고 있고 클램프가 닫혀 있으면 핸드를 엶 → 대피 위치로 되돌림. 지그나 핸드에 남은 워크를 제거 → 취출 요구를 끊음 → 리셋 → 원점 복귀 → 기동 |
| E04 컨베이어 축 서보 이상 | 서보 앰프의 고장 출력 (정상 시 ON)이 OFF 됨 | 이상 정지. 서보 OFF | 원인 제거 → 서보 알람 해제 → 리셋 → 원점 복귀 → 기동 |
| E05 비상정지 | 안전 릴레이 모니터 (정상 시 ON)가 OFF 됨 | 비상정지 (안전 회로가 동력을 끊음. PLC는 동작 출력과 자기유지를 끊음) | 비상정지 해제 → 리셋 → 원점 복귀 → 기동 |
E02와 E03의 "멈추는 방법"에는 멈추지 않는 것도 적었습니다. E02에서 클램프를 열면 워크가 어디에 걸렸는지 보이지 않게 되기 때문입니다. E03의 취출 요구를 남길지 내릴지는 내렸을 때 로봇이 어떻게 움직이는가와 한 쌍이므로 로봇 담당자와 정합니다. 주고받는 도중에 멈추면 로봇이 안에 있는 동안 클램프를 개폐하지 않으므로 (위 2의 7), 여는 것은 핸드입니다.
이상의 이름은 화면 문구와 프로그램 코멘트에도 그대로 씁니다. 입회 검사에서 "화면의 '워크 미착'과 사양서의 '워크 미도착'은 같은 것인가"라는 질문을 받지 않기 위해서입니다.
4. 구성부터 쓰기 시작하고, 수동 조작 조건은 이상 목록 뒤에 쓴다
- 범위와 시스템 구성 자신의 제어 범위를 정하고, 기기와 통신을 시스템 구성도 작성법로 만듭니다.
- 입출력과 번지 구성도의 기기마다 신호와 번지를 PLC 어드레스 맵 작성법에 할당합니다. 멈추는 방향의 신호는 정상일 때 ON이 되는 방향으로 받습니다. 비상정지는 안전 릴레이 모니터와 버튼의 모니터용 접점 (b 접점)을 받고, 멈추는 접점 자체는 안전 회로에 넣습니다.
- 정상 동작과 상대와의 주고받기 공정의 흐름을 PLC 제어 플로차트 작성법로, 상대 기기와의 순서를 타이밍 차트로 만드는 단계입니다.
- 정지의 종류와 운전 상태에 이름을 붙인다 이상 목록의 "멈추는 방법" 열은 이 이름으로 채우기 위해서입니다.
- 플로차트의 대기에서 이상 목록을 만든다 대기마다 초 수·멈추는 방법·멈추지 않는 것·복귀 절차를 정합니다. 어느 공정에서든 일어나는 이상은 기기마다 더합니다.
- 모드 전환과 수동 조작 조건 이상 목록 뒤에 쓰면 조건이 빠지기 어렵습니다. 이상 복귀에 수동 조작을 쓰기 때문입니다.
- 함께 읽기와 미결 사항 목록 장 구성 표의 "합의 상대"를 모아 함께 읽습니다. 그 자리에서 정해지지 않은 사항은 담당과 기한을 붙여 목록에 남겨 둡니다.
5. 전원 투입 직후·버튼 누르는 방법·워크 배출 방법·기록이 빠지기 쉽다
- 전원을 넣은 직후의 상태를 쓰지 않았다 — 정전 후나 아침 전원 투입 시에는 워크가 도중에 남아 있는 경우가 있습니다. 원점 복귀가 끝나지 않은 상태 (PLC 상태 천이도 작성법의 원점 미완료)에서 시작하고 기동을 받아들이지 않습니다. 도중의 워크를 확인한 뒤 조작자가 원점 복귀를 기동합니다
- 부저 정지와 리셋 누르는 방법을 고객 공장에 맞추지 않았다 — 누르는 방법의 규칙은 공장마다 있습니다. 첫 번째 누름으로 부저만 멈추고 두 번째로 리셋하는 식으로. 작업자가 익숙한 방법과 다르면 그 장치만 잘못 누르게 됩니다
- "원점 복귀 전에 워크를 전부 뺀다"고만 정한다 — 작업자가 어떻게 빼는지까지 씁니다. 없으면 나중에 수동 배출 조작을 요청받습니다. 물림처럼 기계 쪽에서만 고칠 수 있는 이상은 누가 무엇을 하는지까지 씁니다
- 이상으로 멈췄을 때의 생산 기록을 정하지 않았다 — 도중의 워크 기록을 지우는가, 도중까지 남기고 표시를 붙이는가. 상위 생산관리 PC로 보내는 장치에서는 품질이나 생산관리 담당자와 정합니다. 사양서에 없으면 나중에 추가 작업이 됩니다
6. 이상 목록의 한 행을 그대로 입회 검사의 시험 항목으로 만든다
이상 목록의 한 행은 그대로 입회 검사의 시험 항목 하나가 됩니다. E01이라면 정위치 바로 앞에서 워크를 손으로 눌러 확인합니다. 8초에 컨베이어가 멈추는가, 화면에 "워크 미도착"이 나오는가, 적은 절차로 되돌릴 수 있는가. 행에 번호를 붙여 시험 기록에도 쓰고, 합격 기준도 사양서에 써 두지 않으면 표시 문구가 다르다고 할 때 다툼이 생깁니다.
입회 검사에서 구두로 정한 변경도 사양서의 판을 올리고 변경 기록에 이유를 써 두는 곳입니다. 남기지 않으면 나중에 말했다 안 했다가 되고, 추가 비용 이야기가 꼬입니다.
장별 그림을 만드는 도구
제어 사양서의 그림 장은 이 사이트의 에디터로 그리고 SVG나 Markdown으로 내보내 사양서에 붙일 수 있습니다. 4개 에디터는 같은 형식의 JSON을 읽고 씁니다.
- System Diagram Editor — 시스템 구성 장. 기기와 통신, 선마다의 마스터를 그립니다.
- Address Map Editor — 입출력과 번지 장. 구성도의 기기마다 신호와 PLC 번지를 할당합니다.
- Timing Chart Editor — 상대 기기와의 신호 장. 주고받는 순서와 어느 신호가 어느 신호를 일으키는지를 그립니다.
- Flowchart Editor — 동작 장. 공정의 흐름과 대기를 그립니다. 시간 초과 이상은 여기서 그린 대기에서 뽑습니다.
설치도 등록도 필요 없이 브라우저만으로 쓸 수 있습니다.
관련 글
- 시스템 구성도 작성법
- PLC 어드레스 맵 작성법
- 타이밍 차트 작성법
- PLC 제어 플로차트 작성법
- AI에게 사양서를 그리게 한다
- 비상정지 복귀 플로차트 (샘플)
- 원점 복귀 플로차트 (샘플)
- JSON 데이터 구조 사양 — 4개 에디터가 읽고 쓰는 형식과 Schema·검증·예
- 사이클 타임 선도 작성법
- PLC 상태 천이도 작성법
yk.builds