Research Note 05

Stäubli 로봇 연동 — VAL3 TCP Socket Plug-in

VAL3의 소켓 통신을 call AiveManual() 함수로 감싸 Stäubli에서 AIVE와 RoboEye를 제어하는 구조를 구현했습니다.

  • Stäubli SP2
  • VAL3
  • TCP Clients 소켓
  • sAive 문자열 전송
  • RoboEye 비전 연동
  • AIVE 기본 프로토콜
Stäubli 로봇
SP2 티치 펜던트 IO > Socket > TCP Clients 화면
SP2 티치 펜던트 IO > Socket > TCP Clients 화면
New TCP Client 등록 — Name: Aive, Port: 1470, Server ip: 192.168.0.30
New TCP Client 등록 — Name: Aive, Port: 1470, Server ip: 192.168.0.30
VAL3 AiveManual 함수 코드 — toString 패딩 후 sAive 전송
VAL3 AiveManual 함수 코드 — toString 패딩 후 sAive 전송

Stäubli SP2 티치 펜던트에서 IO > Socket > TCP Clients 경로로 새 클라이언트를 등록합니다. Name: Aive, Port: 1470, Server IP: 192.168.0.30으로 설정하고 Ping Test로 연결을 확인합니다. 연결 성공 시 해당 IP가 출력되고, 실패 시 'Destination host unreachable' 메시지가 표시됩니다.

VAL3 프로그램에서 sAive 변수에 AIVE 프로토콜 문자열을 직접 할당해 전송합니다. 예: sAive = "<C1>" (모터 ON), sAive = "<L1>" (조명 ON). AiveManual 함수는 n_mm, n_hz, n_sec 값을 받아 <P1NNN>과 <P2NN,NN> 문자열을 조립하고 delay()로 동작 시간을 대기합니다.

제공 VAL3 프로그램 목록: AiveManualWork(직접 진동), AiveLightON/OFF(조명), AiveMotion/AiveMotionReady(저장 모션). VAL3 특성상 toString()으로 숫자를 문자열로 변환하는 패딩 처리가 필요합니다.

RoboEye 비전 연동도 동일한 TCP Clients 소켓 구조로 개발했습니다. AIVE 제어(명령 전송)와 달리 비전은 트리거를 보내고 좌표를 수신하는 양방향 통신입니다. Stäubli VAL3에서 RoboEye 서버로 촬영 트리거를 발신하면, RoboEye가 인식 결과 좌표를 돌려보내는 방식으로 동작합니다.

Stäubli 연동 페이지 →

이 기술이 지금의 제품에 들어 있습니다

연구 노트에서 검증한 구조가 AimFactoryCore와 Robot Suite로 이어졌습니다.