{ "doc_title": "P-PRJ BFHB SW 설계서", "slides": [ { "type": "cover", "tag": "SW DESIGN DOCUMENT", "title": "P-PRJ BFHB SW 설계서", "subtitles": [ "인도향 P-Project · HFHB (Button Flex Hot Bar 열압착 본딩기)", "A device that compresses a button flex by applying pressure and temperature to a point" ], "team": "{조직명}", "contacts": [ "{담당자1} {직급} {email1}", "{담당자2} {직급} {email2}" ] }, { "type": "history", "rows": [ [ "1", "1.0", "2025.04.28", "{작성자}", "초안 작성" ], [ "2", "1.1", "2025.04.29", "{작성자}", "UI 안, Class 내용 추가" ], [ "3", "1.2", "2025.05.09", "{작성자}", "250425_엑추에이터 정리.xlsx 내용 반영" ], [ "4", "1.3", "2025.05.15", "{작성자}", "[DFM]_LG PRI_V57_BFHB_1.2 내용 반영" ], [ "5", "1.4", "2025.05.21", "{작성자}", "[DFM]_LG PRI_V57_BFHB_1.7 내용 반영" ] ] }, { "type": "agenda", "items": [ { "no": "01", "title": "System Overview", "sub": "시스템 구성도" }, { "no": "02", "title": "UI Concept", "sub": "Main / Teaching UI 구성" }, { "no": "03", "title": "Sequence Flowchart", "sub": "Loading · Bonding · Unloading · PDCA" }, { "no": "04", "title": "Class 관계도", "sub": "Class Diagram" }, { "no": "05", "title": "축 구성", "sub": "Axis Configuration" }, { "no": "06", "title": "IO 구성", "sub": "I/O Map" } ] }, { "type": "divider", "no": "01", "title": "System Overview", "subtitle": "시스템 구성도" }, { "type": "content", "no": "02.", "title": "UI Concept", "subtitle": "Main UI 구성 1", "panels": [ { "title": "HotBar 측정 값", "body": "선형 그래프 (최근 생산 100개 표시)" }, { "title": "IO Monitoring", "body": "조작 버튼 / 상태 표시" }, { "title": "CPK", "body": "막대형 그래프" }, { "title": "OK 판정률", "body": "도넛 그래프 (Bali 수신 + 현재공정 판정)" } ] }, { "type": "flow", "no": "03.", "title": "Sequence Flowchart", "subtitle": "[Loading]", "steps": [ { "title": "Wait (Is Loader Empty)", "code": "SendMachine_Ready", "kind": "proc" }, { "title": "Is UpStream Ready", "code": "CHECK_UPSTREAM", "kind": "dec" }, { "title": "Wait (Is Board Available)", "code": "BoardAvailable", "kind": "proc" }, { "title": "Loader Conveyor On", "code": "SendStartTransport", "kind": "proc" }, { "title": "Is TransportError", "code": "TransportError", "kind": "dec" } ], "branch": { "title": "Conveyor Stop", "sub": "Sequence Stop" } }, { "type": "table", "no": "06.", "title": "IO 구성", "subtitle": "I/O Map", "headers": [ "No.", "Type", "Address", "Signal Name", "Description" ], "widths": [ 0.8, 1.4, 1.7, 3.3, 4.2 ], "center_cols": [ 0, 1, 2 ], "rows": [ [ "1", "DI", "X00.0", "Start_Button", "사이클 시작 입력" ], [ "2", "DI", "X00.1", "Stop_Button", "사이클 정지 입력" ], [ "3", "DI", "X00.2", "EMG_Stop", "비상 정지" ], [ "4", "DO", "Y10.0", "Tower_Lamp_R", "경광등 적색" ], [ "5", "DO", "Y10.1", "Conveyor_Run", "컨베이어 구동" ], [ "6", "DO", "Y10.2", "Stopper1_Up", "스토퍼1 상승" ] ] }, { "type": "divider", "no": "07", "title": "Operation Manual", "subtitle": "조작 매뉴얼" }, { "type": "screen_guide", "no": "07.", "title": "화면 설명", "subtitle": "Main 운전 화면", "caption": "Main 운전 화면 캡처", "items": [ { "title": "운전 상태 표시", "desc": "현재 사이클/공정 상태 램프", "pos": [ 0.5, 0.5 ] }, { "title": "측정값 그래프", "desc": "Load Cell · 온도 실시간 추이", "pos": [ 3.0, 1.5 ] }, { "title": "판정 결과", "desc": "OK/NG 도넛 그래프", "pos": [ 5.5, 2.5 ] }, { "title": "조작 버튼", "desc": "Start / Stop / Reset", "pos": [ 1.5, 3.8 ] }, { "title": "알람 표시줄", "desc": "최근 발생 알람 메시지", "pos": [ 4.0, 4.3 ] } ] }, { "type": "procedure", "no": "07.", "title": "조작 절차", "subtitle": "운전 시작 순서", "steps": [ { "title": "전원 ON 및 초기화", "desc": "메인 전원 인가 후 [Reset] 버튼으로 장비 초기화" }, { "title": "원점 복귀", "desc": "[Home] 버튼 선택 → 전 축 원점 복귀 완료 확인" }, { "title": "레시피 선택", "desc": "생산 모델에 맞는 레시피 로드 및 파라미터 확인" }, { "title": "자동 운전 시작", "desc": "[Auto] 모드 전환 후 [Start] 버튼으로 사이클 시작" }, { "title": "운전 종료", "desc": "[Stop] 후 사이클 완료 대기 → 전원 OFF" } ] }, { "type": "icon_ref", "no": "07.", "title": "버튼 설명", "subtitle": "Main UI 조작 버튼", "items": [ { "icon": "▶", "name": "Start", "func": "자동 운전 시작" }, { "icon": "■", "name": "Stop", "func": "사이클 정지" }, { "icon": "↺", "name": "Reset", "func": "알람 해제 / 초기화" }, { "icon": "⌂", "name": "Home", "func": "전 축 원점 복귀" }, { "icon": "≡", "name": "Recipe", "func": "레시피 관리 화면" }, { "icon": "⚙", "name": "Setup", "func": "설정 / 파라미터" } ] }, { "type": "alarm", "no": "07.", "title": "알람 및 조치 방법", "subtitle": "주요 알람 코드", "notice": "알람 발생 시 원인 확인 후 아래 조치 방법을 순서대로 수행하십시오.", "rows": [ [ "AL-001", "비상정지 입력", "EMG 버튼 눌림", "안전 확인 후 EMG 해제 → Reset" ], [ "AL-012", "원점 복귀 실패", "센서 미감지 / 간섭", "축 위치 확인 후 수동 원점 재시도" ], [ "AL-024", "Load Cell 통신 이상", "케이블 단선 / 노이즈", "커넥터 체결 확인 후 전원 재투입" ], [ "AL-031", "온도 상한 초과", "Heater 과열", "설정 온도 확인 → 냉각 후 재가동" ] ] }, { "type": "closing", "title": "Thank You", "message": "문의 사항은 아래 담당자에게 연락 바랍니다.", "team": "{조직명}", "contacts": [ "{담당자1} {직급} {email1}", "{담당자2} {직급} {email2}" ] } ] }