컨텐츠로 건너뛰기

개발자 센터 시작하기

SMI 개발자 센터는 SM Instruments 음향카메라 제품군(BATCAM FX, BATCAM FX2)과 FX Viewer 애플리케이션의 연동 및 개발에 필요한 기술 문서를 한곳에서 제공합니다. 데이터 스트리밍 프로토콜, 파라미터 제어, 펌웨어, 외부 시스템 통합 방법을 제품별로 정리하여, 음향·진동 데이터를 자체 애플리케이션이나 워크플로에 통합하려는 개발자를 지원합니다.

무엇을 만들 수 있나요?

개발자 센터의 문서로 다음과 같은 통합을 구현할 수 있습니다.

  • 실시간 오버레이 영상 애플리케이션 — BATCAM FX의 RTSP 원본 영상과 WebSocket/Protobuf로 수신한 빔포밍 데이터(1200개 Float 배열)를 합성하여 자체 애플리케이션에서 오버레이 영상을 생성합니다. BATCAM FX 개요

  • REST API 기반 장비 제어·모니터링 — 계정, 네트워크, 펌웨어, 이벤트, 빔포밍 설정을 코드에서 직접 제어합니다. FX API 플레이그라운드 · FX2 API 플레이그라운드

  • ROS 2 시스템 통합 — BATCAM FX는 v1.0.3b 개발 펌웨어부터 ROS 2(Humble Hawksbill) 기반 데이터 송신을 지원합니다. FX ROS 시스템 통합 개요

  • 공장 자동화(PLC·SCADA·HMI) 연동 — FX Viewer의 Modbus TCP 서버로 빔파워·알람 상태를 모니터링하고 임계값 등 일부 설정을 외부에서 제어합니다. FX Viewer Modbus 연동

제품·인터페이스 선택 가이드

사용 중인 제품과 연동 방식에 따라 아래 표에서 해당하는 문서 트랙으로 이동하세요.

제품인터페이스이런 작업에 사용문서
BATCAM FXRTSP + WebSocket/Protobuf실시간 영상·빔포밍 데이터 수신, 오버레이 합성BATCAM FX 개요
BATCAM FXREST API (HTTP Basic 인증)계정·장비 설정·이벤트·빔포밍·ROS Domain 제어FX API 플레이그라운드
BATCAM FXROS 2ROS 2 기반 시스템에서 음향 데이터 수신FX ROS 시스템 통합
BATCAM FX2디바이스 매니저 (웹 UI)브라우저에서 장비 설정·상태 관리FX2 디바이스 시작하기 · 메뉴 안내
BATCAM FX2REST API (Basic/Bearer 인증)인증·장비 설정·빔포밍·이벤트·마이크·시스템 제어FX2 API 플레이그라운드
BATCAM FX2WebSocket/Protobuf스트림 데이터 수신·디코딩 (Python 예제 포함)Python Protobuf 예제
BATCAM FX2ONVIFONVIF 지원 디바이스 매니저에서 장비 검색·실시간 영상 획득ONVIF 지원
BATCAM FX2FX Cloud클라우드에서 계정 생성·QR 코드로 디바이스 연동·실시간 영상 확인회원가입 · 디바이스 연동
FX ViewerModbus TCPPLC·SCADA·HMI에서 빔파워·알람 모니터링 및 제어Modbus 연동 매뉴얼

제품별 문서 트랙

  • BATCAM FX 개발문서 — 데이터 흐름 개요를 시작으로 빔포밍·오버레이 파라미터, Listening Point 좌표, ROS 2 통합, 펌웨어 업데이트(웹/쉘)와 릴리즈 노트, AI 기반 PRPD 분류기 문서를 제공합니다.

  • BATCAM FX2 개발문서 — 초기 접속·비밀번호 변경을 시작으로 디바이스 매니저 각 메뉴(빔포밍, 카메라, 마이크, 이벤트, 인공지능 등), FX Cloud, ONVIF, Python Protobuf 예제, 릴리즈 노트 문서를 제공합니다.

  • FX Viewer 개발문서 — FX Viewer 애플리케이션의 Modbus TCP 연동 매뉴얼(레지스터 맵, Python 예제, 트러블슈팅)을 제공합니다.

빠른 시작: 첫 연결 확인

장비와 개발 PC를 같은 네트워크에 연결한 뒤, 요청 한 번으로 장비와의 통신을 확인할 수 있습니다.

BATCAM FX2

  1. 장비와 PC를 이더넷으로 연결합니다. 공장 초기값은 이더넷 #1 192.168.0.80, 이더넷 #2 192.168.0.81 입니다. PC의 IP를 같은 대역(192.168.0.x)으로 설정하세요.

  2. 인증 없이 호출할 수 있는 헬스체크 엔드포인트로 통신을 확인합니다.

Terminal window
curl http://192.168.0.80/ping

기대 응답:

{"error": 0, "result": "pong"}
  1. 브라우저에서 http://192.168.0.80 에 접속해 디바이스 매니저에 로그인합니다. 기본 계정은 admin/1234 이며, 최초 접속 시 반드시 새 비밀번호로 변경해야 합니다. 상세 절차는 FX2 디바이스 시작하기를 참고하세요.

BATCAM FX

BATCAM FX의 모든 REST 엔드포인트는 HTTP Basic 인증이 필요합니다. 장비에는 기본적으로 admin, user 두 개의 계정이 미리 설정되어 있으며, 출고 기본 비밀번호는 반드시 변경 후 사용하세요. 기기정보 조회로 연결과 펌웨어 버전을 확인할 수 있습니다.

Terminal window
curl -u admin:<password> http://<장비 IP>/setting/status

기대 응답:

{
"error": 0,
"result": {
"hardware_id": "3287162925128",
"sbrio_version": "1.0.14",
"firmware_version": "v0.0.1"
}
}

💡 참고: 오버레이·ROS 관련 일부 엔드포인트는 펌웨어 1.0.3 이상에서만 제공됩니다. 실시간 데이터 수신은 REST가 아닌 RTSP + WebSocket/Protobuf 경로를 사용합니다 — BATCAM FX 개요를 참고하세요.

API 레퍼런스 (플레이그라운드)

두 제품의 REST API는 개발자 센터에 통합된 API 플레이그라운드에서 확인할 수 있습니다. 각 엔드포인트의 파라미터, 요청/응답 스키마와 예시를 브라우저에서 바로 탐색하세요.

  • BATCAM FX API — 장비가 직접 서빙하는 임베디드 REST API. 계정(auth), 장비 설정(네트워크·펌웨어·재부팅·기기정보), 이벤트, 빔포밍(설정·결과·오버레이), ROS Domain ID 엔드포인트를 다룹니다.

  • BATCAM FX2 API — 인증, 장비 설정, 빔포밍, 이벤트 트리거·로그, 마이크(선택·캘리브레이션), 시스템(모니터링·초기화) 엔드포인트를 다룹니다.

BATCAM FX2는 장비에서 라이브 OpenAPI 스펙도 제공합니다: GET http://{device_ip}/api-docs/json

💡 참고: WebSocket/Protobuf 실시간 스트리밍은 REST 스펙에 포함되지 않습니다. BATCAM FX 개요Python Protobuf 예제를 참고하세요.

개발자 리소스

C# 연동 예제, Protobuf 스키마(fx-stream-protocol), 공식 소프트웨어 다운로드 등 외부 리소스는 개발자 리소스 페이지에 정리되어 있습니다.