본문으로 건너뛰기

Haply 역 서비스

Inverse Service는 사용자의 컴퓨터에서 백그라운드 프로세스로 실행되며, Haply 햅틱 장치를 사용자의 애플리케이션에 실시간으로 연결해 줍니다. 애플리케이션 코드보다 하위 계층에서 장치 감지, 직렬 통신, 안전 모니터링, 상태 스트리밍을 모두 처리하므로, 사용자는 경험 구축에 집중할 수 있습니다.

요구 사항 및 호환성​

이 서비스는 주요 데스크톱 플랫폼에서 실행되며,WebSocket 클라이언트와 JSON 파서를 갖춘 모든 프로그래밍 언어로제어할 수 있습니다:

  • 플랫폼: Windows 10 이상(MSVC), Linux(.deb(패키지), macOS
  • 언어: Python, JavaScript/TypeScript, C++, C#, Rust, Go, Java, … WebSocket 및 JSON을 지원하는 모든 언어

공식적으로 지원되는 연동​

Haply는Haply Inverse Unity Package,Toia,Geomagic Freeform,NVIDIA Isaac Lab을 위한 공식 연동 기능을 제공하고 유지 관리하고 있습니다.

이 외에도 WebSocket 클라이언트와 JSON 파서를 갖춘 플랫폼이나 런타임이라면 이 서비스를 이용할 수 있습니다. 당사는언리얼 엔진(Unreal Engine),터치디자이너(TouchDesigner) 및 기타 실시간·시뮬레이션용 스택과 함께 사용해 작동 여부를 확인했습니다. 사용 중인 환경에서 WebSocket을 열 수 있다면 Inverse 디바이스를 조작할 수 있습니다.

각 언어별 샘플에 대해서는 공개 샘플 저장소를 참조하십시오: C++및Python.

통신 인터페이스​

이 서비스는 두 가지 통신 채널을 제공하고 있습니다:

채널포트운송용도
시뮬레이션10001웹소켓실시간 명령어 / 상태 루프 (메시지 1개 입력 → 상태 1개 출력)
이벤트10020WebSocket (읽기 전용)시스템 이벤트: 안전, 배터리, 연결, 전송 속도 경고
HTTP10001REST상태 비의존적 설정 쿼리, 설정, 세션 관리, 기기 정보 확인

모든 페이로드는 JSON 형식입니다. 표준 엔벨로프, 포트 및 콘텐츠 유형에 대한 규칙은JSON 규약을참조하십시오.

사용 사례​

목적시작 지점
힘이나 위치의 목표값을햅틱 장치로전송실시간 제어
설정: 베이스, 마운트, 프리셋, 필터세션 설정
장면 이동(속도 제어를 통한 이동)네비게이션 모듈
시스템 이벤트 수신(안전, 배터리, 연결)이벤트 및 모니터링
샘플로 배우기튜토리얼

좌표계​

Haply의 내부 좌표계는우수계이며, Z축이 위쪽을 향합니다(+X는 오른쪽, +Y는 정면, +Z는 위쪽).단일 기저 변환을 사용하여애플리케이션의 좌표계로 변환할 수 있습니다. 한 번 설정하면 모든 입력과 출력이 자동으로 변환됩니다.

씬 내에서 디바이스의 위치를 결정하는 변환은 두 가지가 있습니다:

좌표 변환 파이프라인 전체에 대해서는 ‘마운트’와 ‘작업 공간’을참조하십시오.

서비스 실행​

Inverse Service는 두 가지 모드로 실행할 수 있습니다:

  • Haply Hub에 통합(권장) — Haply Hub에는최신 서비스 버전이 포함되어 있으며, Hub가 열려 있을 때 자동으로 실행됩니다. 수동 설정은 필요하지 않으며, 항상 최신 수정 사항을 이용할 수 있습니다.
  • 독립 실행형 — Inverse Installer를 사용하여특정 서비스버전을 Windows 서비스 또는 Unix 데몬으로 설치합니다. CI, 헤드리스 환경으로의 배포, Hub가 실행되지 않는 컴퓨터에서 사용할 때 유용합니다.

독립형 서비스 관리​

Windows — 서비스 앱을 엽니다: Win+R을 누르고,services.msc라고 입력한 후, “Haply Inverse Service”를 찾아 마우스 오른쪽 버튼을 클릭하고 “시작”, “중지”, “다시 시작”을 선택합니다.

리눅스 (systemd):

systemctl start haply-inverse-service.service
systemctl stop haply-inverse-service.service
systemctl restart haply-inverse-service.service
systemctl enable haply-inverse-service.service # auto-start on boot

API 참조(전체 버전)​

모든 엔드포인트 및 메시지에 대한 기계 판독 가능한 전체 사양은 다음과 같습니다: