모모모 모모 모모모모모모 모모 모모모 모모모 Rendering System for Mobile Haptic Display 이이이 [email protected] Haptics and Virtual Reality Laboratory POSTECH 2007. 5. 22.
Feb 08, 2016
모바일 햅틱 디스플레이를 위한 렌더링 시스템Rendering System for Mobile Haptic Display
이채현 [email protected] and Virtual Reality Laboratory
POSTECH
2007. 5. 22.
POSTECH Haptics and Virtual Reality Lab. 2/33
Motivation
Limited Workspace of a Haptic Device
• 현재 널리 사용되는 대부분의 햅틱 디바이스
• 고정된 장치• 제한적인 작업 공간 (workspace)
사용자가 느낄 수 있는물체 크기의 한계
POSTECH Haptics and Virtual Reality Lab. 3/33
Motivation
Haptic Devices for Large Virtual Environment
• 다양한 대형 가상환경용 햅틱 디바이스의 개발
• 좁은 작업 공간의 한계를 극복• 대형 가상환경에서 사용가능• 안정성 , 물체의 세부 특징 재현 , 고강도 재현 , 재사용성 면에서 문제
(a) GROPE - manipulator type (Brooks Jr et al, 1990)
(b) SPIDAR – tensioned string (Buoguila et al, 2000)
(c) HapticGEAR- exoskeleton type (Hirose et al, 2001)
POSTECH Haptics and Virtual Reality Lab. 4/33
Motivation
Mobile Haptic Interface
• 이동형 햅틱 디바이스의 개발 (Nitzsche et al, 2001)• 고정된 햅틱 디바이스 밑에 모바일 로봇 설치• 사용자의 움직임에 따라 모바일 로봇을 이동• 사용자는 고정된 햅틱 디바이스의 작업 공간보다
큰 물체를 느낄 수 있음• Primitive 모델만 로딩 가능
• 모션 플래닝 알고리즘을 위한 실험용 MHI (Barbagli et al, 2004)• Pioneer2DX 와 Nomad XR4000 사용• 모바일 로봇을 항상 물체 표면의 법선 벡터 방향과
수직하게 이동• 물체의 표면이 울퉁불퉁하거나 , 복잡한 모델의 경우
적용이 힘듦
Mobile Haptic Interface (MHI)
실험용 MHI
POSTECH Haptics and Virtual Reality Lab. 5/33
Goals of this Research
• 연구의 최종 목표• 대형 환경에서 사용 가능한 모바일 햅틱
디스플레이를 개발• 상하이동장치를 추가하여 햅틱 피드백 범위를
최대화• 다중 사용자용 MHD 시스템 개발
• 본 논문에서의 범위• 포스텍 R&A 연구실에서 개발한 모바일
로봇에 적합한 MHD 시스템 개발• 사용자를 위한 모션 플래닝 알고리즘• 햅틱 렌더링 및 비주얼 렌더링• 복잡한 모델 로딩 가능• 모바일 로봇이 사용자에게 미치는 힘 분석
Prototype of MHD
MHD 의 개념도
POSTECH Haptics and Virtual Reality Lab. 6/33
Contents
• System Configuration
• Robot Motion Planning Algorithm
• Kinematics
• Force Analysis
• Mobile Haptic Display - Overview
• Conclusion
Haptic Interface Point (HIP)
POSTECH Haptics and Virtual Reality Lab. 7/33
• 사용자와 모바일 로봇의 위치 추적• IS-900 트래커 사용 (InterSense Inc.)
• 모바일 로봇• 세 개의 전방향성 (omnidirectional)
바퀴로 구성된 모바일 로봇 자체 제작 (by POSTECH R&A Lab)
• 햅틱 디바이스• PHANToM Premium 1.5 사용 (SensA
ble Technologies, Inc.)
• 비주얼 디스플레이• Head Mounted Display 사용
(i-VISOR)
System Configuration
Hardware
IS900 트래커
전방향성 바퀴
PHANToM Premium 1.5
i-VISOR
MHD 시스템
POSTECH Haptics and Virtual Reality Lab. 8/33
Motion Planning Algorithm
Goals of Motion Planning Algorithm
• 로봇 모션 플래닝의 목표 • 햅틱 디바이스의 HIP 를 안정적인 작업 공간으로 이동 • 사용자와 모바일 로봇간 충돌 방지• 모바일 로봇이 사용자의 주변에서 이동
Workspace of PHANToM Premium 1.5 (top view)
• 안정적인 작업 공간• PHANToM Premium 1.5 가
주어진 힘을 정확하고 확실하게 전달할 수 있는 영역
PHANToM Premium 1.5
Maximum Workspace
Usable Workspace
POSTECH Haptics and Virtual Reality Lab. 9/33
Motion Planning Algorithm
Configuration Space
• 형상공간 (Configuration Space) 의 구성• x, z, Φ 로 이루어지는 3 차원 공간• 로봇은 한 점으로 표현• 사용자는 원기둥으로 표현
x
z
Φ
POSTECH Haptics and Virtual Reality Lab. 10/33
Motion Planning Algorithm
Target Pose of the Mobile Robot
• 매 순간의 로봇의 목표 위치와 방향• HIP 의 위치가 안정 영역으로 오도록 설정
• 사용자와 HIP 가 일직선이 되는 곳• 항상 사용자를 바라보도록 방향 설정• 로봇과 사용자의 거리는 사용자의 팔의 길이 + 로봇의 반지름을 유지
Target pose of the mobile robot
POSTECH Haptics and Virtual Reality Lab. 11/33
Motion Planning Algorithm
Pseudo Code
π’ = 30if d < radius of user
π’ = 0if π < π’
SubTarget = targetelse
SubTarget = Rot (user, π’) PCurrent_robot_position
change SubTarget to satisfy distance (user, SubTarget) == d’
go to SubTarget
π
user
robot
target
d
d’
π’ = predefined degree
d’ = human arm length + robot radius
POSTECH Haptics and Virtual Reality Lab. 12/33
Motion Planning Algorithm
Algorithm Description
user
πrobot
target
dd’
π
robottarget
d
user user
robot
target
d
d’
π
사용자
MHD
Work space
Configuration
space
POSTECH Haptics and Virtual Reality Lab. 13/33
Motion Planning Algorithm
Direction Set
• 로봇이 매 순간 사용자를 바라보도록 설정
Φ?v1
v2
user
mobile robot
a
b
1 2arccos( )
1 2
( 1 2 0)
180
v v
v v
if v v
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
POSTECH Haptics and Virtual Reality Lab. 14/33
Motion Planning Algorithm
Simulation
• Simulator.avi
POSTECH Haptics and Virtual Reality Lab. 15/33
Motion Planning Algorithm
Evaluation
• 모바일 로봇이 사용자를 쫓아갈 수 있는 영역 분석• 모션 플래닝 알고리즘을 적용• 모바일 로봇은 항상 최고 속도를 낼 수 있다고 가정• 1 초 뒤에 사용자가 움직였을 때 모바일 로봇이 쫓아갈 수 있는 영역을 표시
모바일 로봇의 현재 위치
사용자의 현재 위치모바일 로봇이 따라갈 수
있는 사용자의 영역
POSTECH Haptics and Virtual Reality Lab. 16/33
Evaluation
Results of Angular Velocity Change
(f) 200degree/s
(b) 45degree/s (c) 90degree/s
(d) 120degree/s (e) 150degree/s
(a) 0.5m/s 20degree/s
POSTECH Haptics and Virtual Reality Lab. 17/33
Evaluation
Results of Line Velocity Change
(b) 0.4m/s (c) 0.3m/s
(d) 0.2m/s (e) 0.1m/s
(a) 0.5m/s 90degree/s
POSTECH Haptics and Virtual Reality Lab. 18/33
Kinematics
Coordinate Definition
• 좌표계 사이의 변환 (transformation) 을 유도
• WorldTRobot , WorldTTool : World 좌표계에서 모바일 로봇과 HIP 의 위치를 계산
• RobotTWorld : World 좌표계에서의 속도벡터를 Robot 좌표계로 변환
• PHANToMTWorld : World 좌표계에서의 힘벡터를 PHANToM 좌표계로 변환
x
yz
z
xy
PHANToMxz
y
World
x
z
y
IS900
Robot
yx
z
z
z
Sensor Tool
Robot
φ
y x
yx1
2
3
4
5
POSTECH Haptics and Virtual Reality Lab. 19/33
Kinematics
Transformation
x
yz
z
xy
PHANToMxz
y
206
0
0 1 0
1 0 0
0 0 3701
0 0 0 1
SensorRobotT
1.6
235.8
1 0 0
0 0 1
0 591 0
0 0 0 1
.2Robot
PhantomT
World
x
z
y
IS900
Robot
yx
z
z
z
Sensor
Tool
Robot
1 1 3 1 3 1 1 2 2 3
3 3 2 1 2 2 3
1 1 3 1 3 1 1 1 2 2 3
cos sin sin sin sin sin ( cos sin )
0 cos sin sin cos
sin cos sin cos cos cos ( cos sin )
0 0 0 1
PhantomTool
l l
l l lT
l l l
900
cos sin 0
sin cos 0
0 0 1
0 0 0 1
x
yISSensor
z
S
ST
S
φ
y x
yx
900
0 1 0 0
0 0 1 2624
1 0 0 0
0 0 0 1
WorldIS T
Θ1
Θ2
Θ3
POSTECH Haptics and Virtual Reality Lab. 20/33
Kinematics
HIP Position Calculation
• 최종 변환 유도
논문 32 쪽 참조
POSTECH Haptics and Virtual Reality Lab. 21/33
Kinematics
HIP Position Calculation Error
• HIP 의 실제 위치와 계산된 위치의 오차• HIP 의 위치에 센서를 설치• 모바일 로봇과 햅틱 디바이스를 랜덤하게 움직이며
1 초 간격으로 데이터를 수집• 경우에 따라 최대 -40 mm ~ 40 mm 정도의 오차 발생
HIP 위치에 설치된 센서
POSTECH Haptics and Virtual Reality Lab. 22/33
Kinematics Calibration
Reformulate the Transformation (1)
x
yz
z
xy
PHANToMxz
y
0 1 0
1 0 0
0 0 1
0 0 0 1
SensorRobot
SRx
SRyT
SRz
1 0 0
0 0 1
0 1 0
0 0 0 1
RobotPhantom
RPx
RPyT
RPz
World
x
z
y
IS900
Robot
yx
z
z
z
Sensor
Tool
Robot
1 1 3 1 3 1 1 2 2 3
3 3 2 1 2 2 3
1 1 3 1 3 1 1 1 2 2 3
cos sin sin sin sin sin ( cos sin )
0 cos sin sin cos
sin cos sin cos cos cos ( cos sin )
0 0 0 1
PhantomTool
l l
l l lT
l l l
900
cos sin 0
sin cos 0
0 0 1
0 0 0 1
x
yISSensor
z
S
ST
S
φ
y x
yx
900
0 1 0 0
0 0 1 2624
1 0 0 0
0 0 0 1
WorldIS T
Θ1
Θ2
Θ3
POSTECH Haptics and Virtual Reality Lab. 23/33
Kinematics Calibration
Reformulate the Transformation (2)
POSTECH Haptics and Virtual Reality Lab. 24/33
Kinematics Calibration
Data Sampling & Least Square Solution
• 총 100 개의 데이터를 수집• 모바일 로봇의 위치와 방향 , 햅틱 디바이스의 joint angle 들을 무작위로
설정
• Least Square Solution
• F 가 최소가 되게 하는 SRx, SRy, SRz, RPx, RPy, RPz 값을 찾음
z
x
y
x
yz
Sensor 좌표계
y
x
z
Robot 좌표계
PHANToM
좌표계
X
Y
Z
계산된 HI P의위치 x
y
z
S
S
S
센서에의해 측정된 HI P의위치 2 2 2( ) ( ) ( )x y zF X S Y S Z S
POSTECH Haptics and Virtual Reality Lab. 25/33
Kinematics Calibration
Result & Discussion
• Y 축의 오차는 눈에 띄게 감소했지만 , x 와 z축의 오차는 오히려 조금 증가했음
• Sensor 좌표계와 Robot 좌표계가 일치 하지 않아서 생기는 문제로 추론됨
z
zy x
yx
Sensor 좌표계
Robot 좌표계
Sensor 좌표계
Robot 좌표계ψ
•Sensor 와 Robot 좌표계 사이의 각도 차이를 고려해 주어야 한다 .
220.3301.5
1253
14.9
244.7285.5
0
200
400
600
800
1000
1200
1400
x y z
보정이전보정이후
z
y
xWorld 좌표계
POSTECH Haptics and Virtual Reality Lab. 26/33
Haptic Rendering
Force Command
• FT = HIP 에 작용하는 힘 벡터• FR = 모바일 로봇에 작용하는 힘 벡터• TP = 햅틱 디바이스에 작용하는 토크 벡터
• DT = FT 에 의해 움직인 HIP 의 변위• DR = FR 에 의해 움직임 모바일 로봇의 변위• DP = TP 에 의해 회전한 햅틱 디바이스 joint angle
들의 변위
자코비안의 정의에 따라 ,
자코비안 행렬을 나누면 ,
모바일 로봇의 위치를 시간에 대한 함수로 볼 수 있다면 ,
HIP 에 작용된 전체 일의 양은 동일함으로 ,
By Virtual Proxy Algorithm
논문 42 쪽 참조
POSTECH Haptics and Virtual Reality Lab. 27/33
Force Analysis
Force Affected by The Mobile Robot
• 배경• 이론상 모바일 로봇을 완벽히 위치제어하고 , 모바일
로봇과 햅틱 디바이스 사이의 댐핑 (damping) 이 0이라면 , 모바일 로봇의 움직임이 HIP 에 미치는 힘은 없다 . (Nitzsche et at, 2003)
• 실제로는 모바일 로봇을 완벽히 위치 제어하지는 못함
• 실험• HIP 의 위치에 힘 센서를 설치• HIP 에 기록되는 힘을 이용하여 모바일 로봇이 HIP 에
미치는 힘을 분석
Nano17 힘 센서
HIP 의 위치에 설치된 힘 센서
POSTECH Haptics and Virtual Reality Lab. 28/33
0
10
20
30
40
50
60
Fx Fy Fz
정지움직임
Force Analysis
Results
벽 MHD
모바일 로봇이 움직이지 않는 경우
모바일 로봇이 움직이는 경우
x
z
Commanded Force
Recorded Force
POSTECH Haptics and Virtual Reality Lab. 29/33
Mobile Haptic Display
System Overview
IS-900 Processor
WiredWireless LAN (UDP)
Laptop
Tracker Server
Position & orientation
190Hz
Velocity10Hz
Graphics60Hz
Mobile RobotUser
IS-900 Tracker
Head Mounted Display
Position & orientation
100Hz
Force1000Hz
POSTECH Haptics and Virtual Reality Lab. 30/33
Mobile Haptic Display
Software
POSTECH Haptics and Virtual Reality Lab. 31/33
Mobile Haptic Display
POSTECH PODI ver.0.8
사용자가 PODI 를 사용하는 모습
HMD 를 통해 사용자에게 전달되는 화면
• 모바일 로봇은 사용자를 피해 잘 이동함• HIP 는 대부분 안정적인 작업 공간 안에
위치함• 복잡한 돌고래 모델에도 잘 적용됨• 사용자는 햅틱 디바이스를 통해 실제 크기의
돌고래를 느낄 수 있음• 사용자는 HMD 를 통해 입체적인 화면을
전달받을 수 있음
POSTECH Haptics and Virtual Reality Lab. 32/33
Conclusion
• 모바일 햅틱 디스플레이를 위한 시스템 구성• 모바일 햅틱 디스플레이를 위한 소프트웨어 구성• 모션 플래닝 알고리즘 개발• 모바일 로봇이 햅틱 디바이스가 내는 힘에 미치는 영향 분석
• Future Work• 상하이동장치 추가• HIP 위치 추적 개선• Texture 추가• 협업 환경에서의 햅틱 피드백 효과 분석