가상 스와치를 위한 신축성 구현 햅틱 장치
CopyrightⓒKROS
Abstract
A technology that allows users to feel the elasticity of fabric through force feedback in the fashion and textile fields is very helpful to related manufacturing and sales areas. Currently bundle of fabrics, so called Swatch, is the only available way for the designer, manufacturer and the end-user to feel the fabrics. Images and video clips provide only visual characteristics, hence touch and stiffness are also very important characteristics to check beforehand. A study is conducted on a haptic device, which estimates the amount of change in the length of the virtual fabric and generates resistive force so that the user could feel the fabric stiffness. Since cables that can only transmit the tensile force are used, a force realization method is proposed, and it is verified numerically and experimentally.
Keywords:
Virtual Swatch, Haptic Device, Fabric Stiffness1. 서 론
가상현실 기술은 패션, 텍스타일 산업 부문에서도 다양한 형태로 활용되며 디자인, 제조, 판매 등 전 분야에 적용되고 있다. 3D 가상착의와 소재에 대한 연구는 가상세계에서 구현되는 제품의 이미지를 실제와 흡사하게 구현하는 소프트웨어[1,2]에 대하여 활발하게 진행되고 있으며 햅틱 체험을 위하여 촉각 제공 시스템 및 마찰감을 제공하는 기술도 적용되고 있다[3,4]. 햅틱 장치를 이용한 원격제어에 대한 연구는 로봇 수술 분야에서 주로 손가락 또는 손관절의 움직임에 힘을 전달하는 것[5,6]이 가장 활발한 적용분야이다. 가상 환경에서 탄성도를 구현하는 것은 주로 햅틱 장갑을 이용한 연구가 많았으며[7,8], 모터를 이용하여 손가락 관절의 움직임을 제한함으로써 손으로 쥐고 있는 가상 물체의 탄성도를 구현할 수 있었다.
의류 분야의 햅틱 기술 적용은 주로 가상의 의복을 착용한 상태에서 옷에 부착된 액츄에이터의 구동으로 소재의 느낌을 전달하는 방식이었다[9]. 사용자가 이미지로 또는 영상으로 보이는 가상의 소재를 3차원 공간에서 임의의 방향으로 당겨보며 느끼는 신축성을 구현하는 기술은 이를 구매자가 미리 확인할 수 있는 기회를 제공한다. 스와치(swatch)란 의복, 가방, 침구 등을 만들 때 원단의 샘플들을 수백 개 넘게 견본으로 묶은 것을 의미한다. 원단의 조직, 색상, 촉감, 신축성 등을 미리 확인하고 구매를 결정하는데 도움 준다. 스와치를 실제 얻기 위하여 매장을 직접 방문하거나 주문 후 제작하여 받기까지 오랜 대기 시간이 필요하다. 사진이나 동영상으로 확인할 수 있으나 실제 만져 보기 전에는 원단의 특성값들을 확인하기 어렵다. 의류 제작자 뿐만 아니라 최종 소비자도 다양한 소재의 원단을 미리 확인하려는 수요는 꾸준히 증가하고 있다. 가상현실(Virtual Reality)이나 증강현실(Augmented Reality) 기술을 활용하여 선택의 다양성을 제공하고 생산기간을 단축하며 구매 후 반품하는 사례를 감소시키고자 다양한 연구가 이루어지고 있다. 원단의 촉감과 신축성은 가장 중요한 두가지 물리적 특성들이며 본 논문에서는 그동안 햅틱분야에서 다루지 않았던 원단의 신축성을 구현하기 위하여 케이블을 이용한 햅틱 장치의 설계와 제어에 대하여 기술한다.
케이블을 이용한 햅틱 장치는 간단한 구조를 갖고 액츄에이터의 무게가 사용자에게 직접 전해지지 않는 장점을 갖는다. 케이블의 상호 간섭을 방지할 수 있는 구조를 설계하면 매니퓰레이터 구조를 갖는 햅틱 장치에 비하여 상대적으로 작업공간이 큰 것도 중요한 장점이다. 다만 케이블은 장력만 발생할 수 있으므로 상황에 따라 모든 케이블을 사용할 수 없는 경우가 대부분이며 이는 케이블을 이용한 동력 전달시 추가적으로 필요한 고려 사항이다. 케이블을 이용하여 동력을 전달하는 대표적 햅틱장치는 Phantom이며 이는 매니퓰레이터 구조를 갖는다. 이와 달리 케이블에 손가락을 걸어 공간에서의 임의 힘궤환이 가능한 연구도 활발히 진행되고 있다[10,11]. 케이블을 이용하여 의복 상의 착용감을 구현하는 방법도 발표되었다[12].
본 논문에서는 먼저 4개의 모터와 케이블을 사용한 정육면체형상 장치의 기구학을 정립하고, 사용자가 손가락을 움직이며 가상의 원단을 잡고 움직였을 때 원단의 늘어남에 따른 복원력을 계산하는 방법, 그리고 이를 구현하기 위한 각 케이블의 필요 장력을 구하는 방법에 대하여 기술하였고, 마지막으로 장치에 대하여 설명하였다.
2. 신축성 구현장치의 기구학
[Fig. 1]과 같은 정육면체 구조체에 총 4개의 모터를 사용한 신축성 구현장치를 설계하였다[13]. 각 모터의 풀리에 연결된 케이블을 사용하여 원하는 방향 및 크기의 힘을 구현한다. 케이블은 인장력만 발생할 수 있으므로 총 4개의 모터가 필요하다. 정육면체의 한 변의 길이는 2L이며, 좌표축의 원점은 정육면체의 중심에 위치한다.
각 케이블은 한점에서 만나 반지름이 매우 작은 고리에 연결되어 사용자는 이 고리에 손가락을 끼워 움직인다. 모터 풀리에 감긴 케이블은 해당하는 위치 모서리에 설치된 고리를 지난다. 따라서 본 논문에서 사용한 각 모터의 좌표값은 모서리에 설치된 고정 고리의 중심점 위치를 의미한다. 이 고정 고리의 중심점부터 손가락을 끼우는 고리의 중심점까지의 거리를 각각 케이블의 길이, l1, l2, l3, l4로 정의한다. 정기구학(Forward Kinematics)은 [Fig. 2]에 나타낸 바와 같이 케이블의 길이로부터 현재 고리의 위치 Xc = [xc yc zc]T를 구하는 것이다. 이는 각 모서리의 위치를 중심으로 각 케이블의 길이가 반지름인 4개 구의 교점을 구하여 식 (1)-(3)과 같이 고리의 위치를 계산한다.
(1) |
(2) |
(3) |
3. 원단의 길이 변화량 계산
정육면체내에서 손가락 고리의 위치가 Xc일 때 원단의 늘어난 길이, ΔX를 구하고, 그에 따른 복원력을 고리에 발생함으로써 원단의 신축력을 구한다. 원단도 케이블과 마찬가지로 인장력만 작용하므로 원단이 길이가 초기 값보다 작은 경우는 사용자가 아무런 힘을 느끼지 않는다. 이 장치를 사용할 때 항상 원점에서 시작하도록 설정하며, 이 때 옷감이 외력에 의하여 변형되지 않고 충분히 고르게 펴져 있는 상태로 가정한다.
먼저 원단의 가로 방향 신축만을 고려한다면 [Fig. 3]과 같이 원단의 한 점이 [-L 0 0]T에 고정되어 있다고 가정하고 손가락 고정점의 위치에 따른 길이 변화를 계산한다. 즉, 고리의 현재 위치, Xc가 [Fig. 4]의 반지름 L인 반구내에 있을 때는 옷감이 당겨지지 않은 상태이며, 이 때는 힘을 발생하지 않는다.
[Fig. 4]의 벡터, 는 다음 식과 같으며,
(4) |
이로부터 가상 옷감의 늘어난 길이인 ΔX는
(5) |
의 식으로 표현되고 원단의 늘어남만 고려하므로 이 값이 0보다 작거나 같을 때는 ΔX = 0이다. 이 벡터의 방향을 나타내는 단위벡터(unit vector), UΔX는
(6) |
와 같다. 원단의 탄성도는 일정한 값을 갖는다고 가정한다. 가상 원단의 신축성을 구현하기 위하여 벡터방향의 반대이며 ΔX에 원단의 강성계수, Kf를 곱한 힘을 발생한다. 필요한 힘, Fd의 크기와 방향을 정리하면 각각 식 (7), (8)과 같다.
(7) |
(8) |
이로부터 발생하려는 힘, Fd를 벡터로 기술하면
(9) |
이다.
이와 달리 원단의 가로 방향, 세로 방향 KfX, KfY의 신축성을 모두 고려한다면 [Fig. 5]와 같이 원단의 좌변과 하변이 각각 고정되어, 손가락 위치에 따른 가로, 세로 방향 길이 변화를 독립적으로 계산한다. 이를 그림으로 표현하면 [Fig. 6]와 같이 원단의 길이 변화를 나타내는 ΔXf와 ΔYf를 각각 계산한다.
먼저 가로 방향 길이 변화량은
(10) |
와 같고 세로 방향 길이 변화량은
(11) |
의 식으로 계산된다. 따라서 가로 방향 신장에 따른 인장력은
(12) |
(13) |
이며, 세로 방향 신장에 따른 인장력은
(14) |
(15) |
이므로 가로, 세로 방향을 모두 고려한 경우에 필요한 발생력은 두 힘의 합력이다.
(16) |
4. 신축성 구현을 위한 힘 생성
3차원 공간의 특정 위치에서 원하는 힘의 크기와 방향이 결정되면 이를 구현하기 위한 각 케이블의 장력을 계산한다. 고리의 현재 위치, Xc로부터 모터1까지의 단위벡터는
(17) |
이고, Xc로부터 모터2까지의 단위벡터는
(18) |
이며 Xc로부터 모터3까지의 단위벡터는
(19) |
이고, 마지막으로 Xc로부터 모터4까지의 단위벡터는
(20) |
와 같다. 3차원 공간에서 원하는 힘, Fd를 케이블의 장력을 이용하여 발생하기 위하여 총 4개의 케이블들 중 3개 이하를 선정하여 각 케이블의 장력을 사용하여 Fd를 표현할 수 있어야 한다. 케이블의 특성상 척력은 발생할 수 없으며 장력만이 가능하므로 주어진 조건에서 장력을 발생한 케이블의 선정과 장력의 계산이 필요한다. 총 4개의 케이블들 중 3개를 선정하는 경우는 4C3, 즉 4가지 이므로 모든 경우에 대하여 확인한다. 먼저 케이블 1, 2, 3을 사용하는 것으로 가정하면
(21) |
와 같이 표현되며, 여기서 a1, b1, c1는 각각 케이블 1, 2, 3의 장력값을 의미한다. 다음 식 (22)로부터 구한 a1, b1, c1값 들이 모두 양 또는 0이라면 이 케이블 선정이 유효하며,
(22) |
필요한 케이블의 장력은
(23) |
이다. 같은 방법으로 케이블 1, 2, 4를 사용하는 경우의 계산식은
(24) |
이고, a2, b2, c2값들이 모두 양 또는 0이라면, 필요한 케이블의 장력은
(25) |
이다. 마찬가지로 케이블 1, 3, 4를 사용하는 경우에는
(26) |
(27) |
마지막으로 케이블 2, 3, 4를 사용하는 경우에는
(28) |
(29) |
과 같이 구해진다. 만약 유효한 경우가 2가지 이상인 경우에는 필요한 장력의 벡터 norm이 작은 것을 사용한다.
몇 가지 원단의 500 gf의 힘에 대한 각 원단의 신장률은 [Table 1]과 같다. 이 자료에 근거하여 Polyester 48.9%, Nylon 82%, Polyurethane 18%의 원단 X, Y방향 신장율이 각각 53.5%, 61.5%이므로 가로, 세로 길이가 0.15 m인 신장량은 각각 0.08025 m, 0.09225 m이다. 이로부터 원단의 강성계수, KfX, KfY를 구하면
(30) |
(31) |
와 같다. 제작한 힘 구현 장치는 한 변의 길이는 0.3 m이므로 모든 식에서 L = 0.15이며, 식 (30), (31)의 강성계수를 사용하는 경우를 예로 들어 계산한다. 고리의 위치가 Xc = [0.05 0.04 0.03]T 이라면 식 (12), (14), (16)을 사용하여 구한 원단의 신축력은 Fd = [-3.9785 -3.1431 -0.8902]T이다. 각 케이블 선정 분류에 따른 계수 값들을 식 (22), (24), (26), (28)을 사용하여 구하면
- [a1 b1 c1]T = [4.4037 -2.3982 -0.6823]T
- [a2 b2 c2]T = [4.5180 -1.6824 0.6401]T
- [a3 b3 c3]T = [4.8871 1.6038 2.1445]T
- [a4 b4 c4]T = [-24.2455 -21.5086 -19.5362]T
이고, 이중 모든 요소가 양 또는 0인 경우는 케이블 1, 3, 4를 사용한 세번째 경우이다. 따라서 각 케이블의 필요 장력은 식 (27)에 의하여
와 같다. [Fig. 7]은 이 결과를 보여준다. 그림에서 점선은 초기 위치를 나타내며 녹색선은 각 케이블의 장력, 빨간색선은 그 합력을 보여준다. 그림의 축 단위는 m이 이므로, 그림에서 장력과 힘은 방향과 상대적인 크기를 의미한다.
총 4개의 케이블 중 일부만 사용하는 경우 선정된 케이블을 이용하여 계산으로 얻은 값의 장력을 발생하고, 선정되지 않은 케이블은 필요 장력이 0이나, 해당하는 모터의 토크 발생이 0인 경우 케이블의 늘어짐이 발생할 수 있다. 이러한 현상이 무시할 수 없는 정도라면, 계산상 필요 장력이 0인 경우라 해도 일정 크기의 장력을 가해줄 필요가 있다. 이러한 경우 다음과 같은 반복 계산이 필요하다. 위 예제와 같이 원단의 신축성을 구현하기 위한 발생힘이 Fd이고 선정된 케이블이 1, 3, 4이고 선정되지 않은 케이블 2의 늘어짐을 방지하기 위하여 미소 장력 Tpre를 발생한다면, 식 (16)의 Fd를 다음과 같은 식을 사용하여 계산한 Fc로 대치하여 다시 각 케이블의 장력을 계산한 후 케이블 선정 결과가 동일한지 확인하여야 한다.
(32) |
즉, 식 (32)의 계산값을 사용하여 구한 케이블 1, 3, 4의 장력으로 구현한 힘 Fc에 케이블 2로 인한 장력이 더해진 Fd가 사용자가 실제 느끼는 힘이다. 이를 앞의 예제에 대하여 적용하여 케이블2에 0.1 N의 Tpre를 가한다면,
이고, 이 Fc에 대하여 케이블 선정방법을 적용하여 그 계수 값들을 계산하면,
- [a1 b1 c1]T = [4.4037 -2.4982 -0.6823]T
- [a2 b2 c2]T = [4.5480 -1.7824 0.6401]T
- [a3 b3 c3]T = [4.9072 1.6991 2.2340]T
- [a4 b4 c4]T = [-24.3455 -21.5086 -19.5362]T
의 결과를 얻는다. 모든 계수의 값이 0또는 양수인 경우는 케이블 2번의 장력이 0인 경우와 마찬가지로 케이블 1, 3, 4를 사용한다. 이 때 최종 생성힘은
으로, 원단의 탄성력으로 인하여 계산된 원하는 힘과 같다.
5. 신축성 구현장치
신축성 구현장치[11]에 사용한 4개의 모터는 모두 ㈜로보티즈의 Dynamixel XH430-W210-R이고 토크모드로 사용하며 stall 토크는 2.5 Nm이다. 최대 토크는 일반적으로 stall 토크의 1/5을 구동 최대 토크로 설계하므로 최대 토크 값은 0.5 Nm이다. 모터 축에 연결된 풀리는 케이블이 감기는 부분의 반경이 10 mm이므로 케이블의 최대 장력은 50 N이다. 모터의 회전각 분해능은 0.0879°이므로, 케이블 길이 측정의 분해능은 1.517×10-5m이다. 케이블은 DAIICHI社의 Kevlar 4호를 사용하였다. 케이블이 풀리에 감김 정도에 따른 풀리 반지름의 변화량은 무시할 수 있을 정도로 작다.
네 개의 모터는 RS485 통신 방법으로 Cortex-M3 기반의 주 제어기에 연결되며 10 msec의 샘플링 타임으로 모터의 회전각을 측정하여 이에 따른 새로운 토크 명령을 계산하여 각 모터에 전달한다. 손가락 고리에는 반사판을 부착하여 Leica DISTRO X310 레이저 거리 측정기를 사용하여 기준점으로 부터의 거리를 측정하여 현재 위치값을 검증하며, 발생힘은 SF-10 디지털 푸쉬풀게이지를 사용하여 측정하였다[Fig. 8]. 사용한 모터는 전류 명령을 사용하는 토크모드로 사용하나 자체 센서를 사용한 토크 피드백 제어기능이 포함되어 있지 않고, 선형관계가 아니므로 풀리에 감긴 케이블 장력을 0.5 N단위로 10 N까지 반복하여 측정한 후, 전류 명령값과 케이블 장력사이의 관계를 룩업테이블(lookup table)로 작성하고 측정값들 사이는 선형회귀(linear interpolation)값을 사용하였다. 1차원 힘측정기를 사용하므로 손가락 고리에서의 발생힘의 방향 측정 오차로 인한 영향을 무시할 수 있도록 X축 방향의 힘만 발생하는 경우로 설정하여 다음과 같은 조건에서 측정하였다. 모든 변위의 단위는 m, 힘의 단위는 N이다.
- - 가상원단의 X축 방향 신축성만 고려
- - 가상 원단의 X방향 강성계수; 식 (30)
- - 손가락 고리의 위치; Xc = [0.05 0 0]T
- - 계산된 원단의 신축력; Fd = [-6.106 0 0]T
- - 선정된 케이블; 1, 3, 4
- - 미소 장력; Tpre=1.0
- - 2번 케이블의 미소 장력을 고려하여 보정한 신축력; Fc = [-6.3354 -0.6882 0.6882]T
- - 계산된 케이블 장력; T = [4.3048 1 1 4.3048]T
먼저 위치 추정 오차를 검증하기 위하여 Xc = [0.05 0 0]T 부근에서 10번 반복하여 모터 회전각 센서값을 이용한 추정 위치와 외부 레이저 측정기를 사용한 측정 위치 사이의 거리 오차 값은 [Table 2]와 같다. 원단의 신축력은 손가락 고리의 위치에 따라 다르므로 고리의 위치를 (0.05 m, 0 m, 0 m)로 유지하며 10번 반복하여 X방향 힘을 측정하였다. 앞의 실험 조건에 기술한 바와 같이 2번 케이블에는 늘어짐을 방지하기 위하여 미소장력, Tpre = 1.0이 가해지며, 이의 영향까지 고려하여 계산된 1번, 3번, 4번 케이블의 장력을 발생하였다. 손가락 고리에서의 최종 합력을 푸쉬풀게이지를 사용하여 측정한 값과 구현하려는 원단 신축력, Fd = [-6.106 0 0]T 사이의 오차 평균과 표준편차는 [Table 3]과 같다.
6. 결 론
패션, 텍스타일 영역에 가상현실과 증간현실을 접목하여 원단의 신축성을 사용자가 힘궤환을 통하여 느끼도록 하는 기술은 관련 제조 및 판매 영역에 큰 도움을 주는 것이다. 이를 위하여 정육면체의 구현장치를 설계하여 케이블에 연결한 사용자의 손가락 움직임에 따라 원단의 길이 변화량을 추정하고, 이에 따른 수축력을 느끼도록 하는 신축성 구현장치에 대한 연구가 이루어졌다. 케이블을 사용하므로 인장력만 전달 가능한 조건에서의 힘구현 방법을 제안하였고, 이를 수치적, 실험적으로 검증하였다.
References
- E. K. Yang and S. J. Kim, “3D Character virtual costume making Software Usability Assessment - Focusing on Poser 3D Character virtual costume making,” Journal of Digital Design, vol. 14, no. 1, pp. 863-876, 2014. [https://doi.org/10.17280/jdd.2014.14.1.084]
- S. Oh and E. J. Ryu, “A Study on Expressivity of Virtual Clothing made of 3D Apparel CAD System according to the Physical Properties of Fabric,” Fashion & Textile Research Journal, vol. 17, no. 4, pp. 613-625, 2015, [Online], https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART002024739, . [https://doi.org/10.5805/SFTI.2015.17.4.613]
- M. Takasaki, H. Kotani, T. Mizuno, and T. Nara, “Two-dimensional Active Type Surface Acoustic Wave Tactile Display On a Computer Screen,” Symposium on Haptic Interfaces for virtual Environment and Teleoperator Systems, pp. 49-54, Alexandria, VA, USA, 2006.
- H. Nagano, Y. Visell, and S. Okamoto, “On the Effect of Vibration on Slip Perception During Bare Finger Contact,” Euro Haptics Conference, 2014. [https://doi.org/10.1007/978-3-662-44193-0_54]
- S. B. Schorr and A. M. Okamura, “Fingertip Tactile Devices for Virtual Object Manipulation and Exploration,” 2017 CHI Conference on Human Factors in Computing Systems, pp. 3115-3119, 2017. [https://doi.org/10.1145/3025453.3025744]
- C. Pacchierotti, S. Sinclair, M. Solazzi, A. Frisoli, V. Hayward and D. Prattichizzo, “Wearable Haptic Systems for the Fingertip and the Hand: Taxonomy, Review, and Perspectives,” IEEE Transactions on Haptics, vol. 10, no. 4, pp. 580-600, 2017. [https://doi.org/10.1109/TOH.2017.2689006]
- M. Hosseini, A. Sengül, Y. Pane, J. De Schutter and H. Bruyninckx, “Haptic Perception of Virtual Spring Stiffness Using ExoTen-Glove,” 2018 11th International Conference on Human System Interaction (HSI), pp. 526-531, 2018. [https://doi.org/10.1109/HSI.2018.8431166]
- Y. Lee, S. Lee, and D. Lee, “Wearable Haptic Device for Stiffness Rendering of Virtual Objects in Augmented Reality,” Applied Sciences, vol. 11, no. 15, 2021. [https://doi.org/10.3390/app11156932]
- T.-J. Ana, V. Aleksander, and K. Kristi, “Altering One’s Body-Perception Through E-Textiles and Haptic Metaphors,” Frontiers in Robotics and AI, vol. 7, 2020. [https://doi.org/10.3389/frobt.2020.00007]
- J. Saint-Aubert, S. Régnier, and S. Haliyo “Cable Driven Haptic Interface for Co-localized Desktop VR,” IEEE Haptics Symposium (HAPTICS), pp. 351-356, 2018. [https://doi.org/10.1109/HAPTICS.2018.8357200]
- K. Dorfmuller-Ulhaas and D. Schmalstieg, “Finger Tracking for Interaction in Augmented Environments,” IEEE and ACM International Symposium on Augmented Reality, pp. 55-64, 2001.
- E. Yim, J. Kwon and S. Lee, “Augmented Reality Haptic Upper Garment for Wear Sensation,” Journal of Korea Robotics Society, vol. 14, no. 2, pp. 150-156, June, 2019. [https://doi.org/10.7746/jkros.2019.14.2.150]
- S. Lee, “Development of a Cable Driven Haptic Cube,” Journal of Institute of Control, Robotics and Systems, vol. 25, no. 7, pp. 641-646, 2019, [Online], http://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE08748946, . [https://doi.org/10.5302/J.ICROS.2019.19.0088]
- Y. Jeong, “Fundamental Relationship between Reduction Rates of Stretch Fabrics and Clothing Pressure,” Korean Journal of Human Ecology, vol. 17, no. 5, pp. 963-973, 2008. [https://doi.org/10.5934/KJHE.2008.17.5.963]
1989 서울대학교 기계공학과(공학사)
1991 서울대학교 기계설계학과(공학석사)
1996 Massachusetts Institute of Technology, Mechanical Engineering (공학박사)
1996~1999 한국과학기술연구원, 선임연구원
2000~2003 Texas A&M University, Mechanical Engineering, Assistant Professor
2003~현재 홍익대학교, 기계시스템디자인공학과, 교수
관심분야: Robotics