iaiops — 산업 데이터 tap + 지능형 문제 해결은(는) 무엇을 하나요?
하나의 관리되는 MCP 서버로 8개의 산업 프로토콜과 교차 프로토콜 인텔리전스 레이어를 통해 66개의 도구를 제공합니다. 모든 도구는 iaiops 거버넌스 체계(감사/예산/위험 등급/실행 취소)를 통해 실행됩니다. 읽기 우선. 6개의 쓰기 도구는 변경 관리(MOC, Management-of-Change)로 게이트되어 risk=HIGH, dry_run=True가 기본값이며, CLI에서는 이중 확인을 요구하고, 변경 전 값을 실행 취소를 위해 캡처합니다. 허가 없이 생산 제어 시스템에 쓰지 마십시오. 시뮬레이션/모의 또는 검증된 환경에서 미리 테스트하고 실제 장비와 검증하십시오. protocols_supported로 구성된 프로토콜을 확인하고 <protocol> doctor로 링크를 테스트하는 것으로 시작하세요.
이 스킬을 사용해야 할 때
작업에서 언급된 내용: OPC-UA / opc.tcp, Modbus, Siemens S7 / S7-1200/1500, Mitsubishi / MELSEC, MTConnect / CNC 기계 모니터링, MQTT / Sparkplug B / 통합 네임스페이스(UNS, Unified Namespace), Allen-Bradley / ControlLogix / CompactLogix / EtherNet-IP, EtherCAT / CoE / SDO / PDO / SOEM, OEE / 가동 중단 시간, OT 자산 인벤토리, "데이터 없음 / 태그 오래됨" 진단, 알람 플러드 / ISA-18.2.
프로토콜별 도구
OPC-UA (읽기 전용) — opc.tcp 엔드포인트
opcua_server_info— 상태, 빌드 정보, 네임스페이스 배열opcua_browse— 노드 ID에서 노드 트리 탐색 (깊이 제한)opcua_read_node— 값 + 데이터 타입 + 소스 타임스탬프 + 상태 코드opcua_read_many— 여러 노드 ID 일괄 읽기 (제한)opcua_subscribe_sample— 제한된 샘플링 후 반환 (루프 없음)opcua_read_alarms— 가능한 최선의 활성 알람/조건 표시opcua_read_history— HDA(Historical Access): [시작, 끝] 기간의 원시 히스토리health_summary— 노드 ID를 경고/알람 임계값과 비교 분류anomaly_scan— 노드 샘플링, 통계적 이상값 플래그
Modbus-TCP (여기서는 읽기 전용)
modbus_read_holding(FC03),modbus_read_input(FC04),modbus_read_coils(FC01),modbus_read_discrete(FC02) — 디코드 힌트 제공modbus_health_summary— 임계값 대비 레지스터 분류
Siemens S7comm (pyS7; S7-300/400/1200/1500)
s7_cpu_info— CPU ID + 실행/정지 상태s7_read_area— S7 메모리 영역에서 N개 항목 읽기s7_read_db— 데이터 블록에서 N개 항목 읽기s7_read_many— 원시 pyS7 주소 문자열 일괄 읽기s7_write_db— [쓰기][높음][MOC] DB에 값 하나 쓰기 (기본적으로 비활성화)
Mitsubishi MC (pymcprotocol 3E; Q/L/iQ)
mc_cpu_status— MELSEC CPU 유형/코드mc_read_words/mc_read_bits— 시작 디바이스에서 워드/비트 디바이스 일괄 읽기mc_read_many— 하나의 요청에서 분산된 워드 + 더블워드 랜덤 읽기mc_write_words— [쓰기][높음][MOC] 워드 쓰기 (기본적으로 비활성화)
MTConnect (읽기 전용; 모든 CNC 공작 기계)
mtconnect_probe— 디바이스 모델 (디바이스 → 컴포넌트 → 데이터 항목)mtconnect_current— 모든 데이터 항목의 최신 값 (기계 스냅샷)mtconnect_sample— 최근 관측값의 제한된 스트림mtconnect_assets— 절삭 공구 / 고정 장치 / 프로그램mtconnect_oee_snapshot— 가용성/실행/모드/프로그램 (OEE 입력)
MQTT / Sparkplug B / UNS (paho-mqtt; 전체 Tahu protobuf 디코드)
mqtt_read_topic— 일반 MQTT 제한된 메시지 수집sparkplug_decode_payload— 하나의 원시 Sparkplug B 페이로드를 메트릭으로 디코드sparkplug_subscribe_sample— 전체 디코드 + birth/death/seq 포함 제한된 샘플링sparkplug_node_list— 엣지 노드/디바이스 + 온라인 상태 + 기본 호스트 STATEuns_browse— 필터 아래에서 라이브 토픽 트리(UNS) 탐색 (제한)mqtt_publish— [쓰기][높음][MOC] 토픽에 게시/명령 (기본적으로 비활성화)
Allen-Bradley EtherNet/IP (pycomm3; ControlLogix/CompactLogix)
eip_controller_info— 컨트롤러 ID (CIP 링크 확인)eip_list_tags— 컨트롤러 태그 목록 검색 (이름/유형/구조)eip_read_tag— 하나의 태그(또는 배열 요소)와 해당 유형 읽기eip_read_many— 일괄 읽기 (자동 멀티패킷)eip_write_tag— [쓰기][높음][MOC] 태그 값 하나 쓰기 (기본적으로 비활성화)
EtherCAT (pysoem/SOEM; Linux + root/CAP_NET_RAW + 전용 NIC + 실제 슬레이브)
추가 설치: pip install iaiops[ethercat]; 소프트웨어 시뮬레이터 없음 (하드웨어 전용, macOS 미지원). pysoem/권한/NIC/버스가 없으면 도구가 교육용 오류로 저하됩니다.
ethercat_master_state— 마스터/작업 카운터 상태 + 예상 vs 발견된 슬레이브 수ethercat_slaves— 버스 스캔: 슬레이브 열거 (ID/벤더/제품/개정/주소/AL-상태)ethercat_slave_info— 하나의 슬레이브: SM/FMMU 구성 + 오브젝트 딕셔너리 요약ethercat_read_sdo— CoE SDO 업로드 (비순환 메일박스 OD 항목 읽기)ethercat_read_pdo— 하나의 순환 스냅샷: 슬레이브 입력 프로세스 데이터 이미지ethercat_write_sdo— [쓰기][높음][MOC] CoE SDO 다운로드 (기본적으로 비활성화)ethercat_set_state— [쓰기][높음][MOC] AL-상태 전환 (모션 START/STOP 가능; 기본적으로 비활성화)
교차 프로토콜 인텔리전스
진단 — skills 우산: 문제 해결
diagnose_dataflow— 엔드포인트의 도달 가능한 홉에서 "데이터 없음" 중단 위치 파악historian_health— 시계열에서 잘못된 태그/평탄선/갭 감지alarm_bad_actors— ISA-18.2 알람 플러드 분석 (비율 vs <6/12/30, 파레토 위반자, 채터링, 지속) 이벤트 목록 기반tag_health— 잘못된 품질/평탄선/범위/이상값별 태그 위반자 순위
분석
oee_compute— OEE = 가용성 × 성능 × 품질downtime_events— 실행→정지 전환 감지, 정지 분류oee_multidim— 기계 × 부품 × 교대별 OEE 집계asset_inventory— 엔드포인트(벤더/모델/펌웨어/프로토콜)를 능동적으로 지문 스캔하여 자산 레지스트리에 등록 (활성 검색, 수동 SPAN/tap 아님)monitor_changes— 제한된 기간 동안 포인트의 값 변경만 캡처
메타 / 로드맵
protocols_supported— 기능 맵 (프로토콜, 상태, 도구, 연결 매개변수)- 로드맵: EtherCAT EoE/FoE/SoE 메일박스 프로토콜; EtherNet/IP PLC-5 / SLC (PCCC), Micro800; 수동 자산 검색; OPC-UA 인증서 보안.
설정
iaiops init (대화형 마법사, 프로토콜별 프롬프트)가 ~/.iaiops/config.yaml을 생성합니다. 자격 증명은 암호화된 저장소(~/.iaiops/secrets.enc, 마스터 비밀번호는 IAIOPS_MASTER_PASSWORD를 통해 전달)에 저장됩니다. iaiops doctor를 실행하여 각 구성된 엔드포인트를 테스트하세요. 전체 프로토콜별 참조, 연결 매개변수, 시뮬레이터 테스트 가이드 및 MCP JSON 예제는 README에 있습니다.
안전
읽기 우선. 6개의 쓰기 도구(s7_write_db, mc_write_words, mqtt_publish, eip_write_tag, ethercat_write_sdo, ethercat_set_state)는 기본적으로 dry_run=True이며, CLI에서 이중 확인을 요구하고, 캡처된 이전 값/상태에서 실행 취소 설명자를 기록합니다. EtherCAT 상태 전환은 기계 모션을 START 또는 STOP할 수 있습니다. 허가 없이 생산 제어 시스템에 사용하지 마십시오. 어떤 도구도 비밀을 반환하지 않습니다.