KR102203176B1 - 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법 - Google Patents

골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법 Download PDF

Info

Publication number
KR102203176B1
KR102203176B1 KR1020190030118A KR20190030118A KR102203176B1 KR 102203176 B1 KR102203176 B1 KR 102203176B1 KR 1020190030118 A KR1020190030118 A KR 1020190030118A KR 20190030118 A KR20190030118 A KR 20190030118A KR 102203176 B1 KR102203176 B1 KR 102203176B1
Authority
KR
South Korea
Prior art keywords
swing
club
address
trajectory
golf game
Prior art date
Application number
KR1020190030118A
Other languages
English (en)
Other versions
KR20200110583A (ko
Inventor
치빈도르지 첼르멕
김영훈
Original Assignee
(주)파이네트웍스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)파이네트웍스 filed Critical (주)파이네트웍스
Priority to KR1020190030118A priority Critical patent/KR102203176B1/ko
Publication of KR20200110583A publication Critical patent/KR20200110583A/ko
Application granted granted Critical
Publication of KR102203176B1 publication Critical patent/KR102203176B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B60/00Details or accessories of golf clubs, bats, rackets or the like
    • A63B60/46Measurement devices associated with golf clubs, bats, rackets or the like for measuring physical parameters relating to sporting activity, e.g. baseball bats with impact indicators or bracelets for measuring the golf swing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2102/00Application of clubs, bats, rackets or the like to the sporting activity ; particular sports involving the use of balls and clubs, bats, rackets, or the like
    • A63B2102/32Golf
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/30Speed
    • A63B2220/34Angular speed
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/40Acceleration

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Golf Clubs (AREA)

Abstract

본 발명은 실제 환경과 최대한 동일한 골프 게임 환경을 제공할 수 있도록 한 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법에 관한 것이다.
이러한 본 발명에 따른 골프 게임 제공 방법은, 연산부가 클럽의 모션 값 및 방향각을 계산하고, 처리부가 사용자의 어드레스 여부를 결정하는 어드레스 판단 단계, 그리고 어드레스 상태에서, 연산부가 클럽의 쿼터니언 및 회전을 계산하고, 처리부가 스윙 시작 여부를 결정하는 스윙 시작 판단 단계, 그리고 스윙 상태에서, 처리부가 임팩트 여부를 결정하는 임팩트 판단 단계, 그리고 임팩트 이후, 처리부가 스윙 완료 여부를 결정하는 스윙 완료 판단 단계를 포함한다.

Description

골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법{SYSTEM FOR PROVIDING GOLF GAME AND METHOD FOR PROVIDING GOLF GAME USING THE SAME}
본 발명은 스크린 골프, 골프 게임 어플리케이션 등과 같은 클라이언트 상에서 골프 게임을 제공하는 골프 게임 제공 시스템 및 골프 게임 제공 방법에 관한 것으로, 보다 상세하게는 실제 환경과 최대한 동일한 골프 게임 환경을 제공할 수 있도록 한 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법에 관한 것이다.
최근 들어, 여가 생활의 확대와 국민 소득의 증대 등으로 인하여, 일반인의 골프에 대한 인식이 변화하고 있다. 과거 부유층의 전유물로만 여겨졌던 골프가 골프 인프라의 증대와 스크린 골프 등의 보급으로 인하여 전국민 남녀노소 할 것 없이 누구나 즐길 수 있는 대중적인 스포츠로 자리 잡고 있는 실정이다.
특히 오프라인 골프 게임이 갖는 장소적, 비용적 한계를 극복하기 위해 스크린 골프, 또는 골프 게임 어플리케이션 등의 개발이 확산되고 있는 추세인데, 이 중 스크린 골프 시스템은 실내에 골프 코스를 표시할 수 있는 스크린을 설치하고, 골퍼가 스크린을 향해 골프공을 타격하면 골프공의 속도, 방향 등을 감지하여 스크린 상에 골프공의 궤적을 시뮬레이션 하여 보여주며, 골프 게임 어플리케이션 역시 소정의 클럽을 휘두르면 가상의 골프공의 속도, 방향 등을 감지하여 화면 상에 구현한다. 이들은 모두 사용자로 하여금 실제 골프장에서 골프 경기를 하는 것과 같은 리얼리티를 제공하는 것을 핵심으로 하고 있다.
골프 게임에 관한 종래의 기술로, 등록특허 제10-1110357호(2012년01월19일)(이하 종래기술)가 있는데, 종래기술은 골퍼가 가상 골프 시뮬레이션 장치를 이용하여 골프 게임을 진행함에 있어서, 원격지의 여러 골퍼와 온라인으로 연결하여 실시간으로 골프 게임을 진행할 수 있는 다중 접속 온라인 골프 게임 서비스를 제시하고 있다.
그러나 종래기술은 클럽의 스윙에 관한 데이터 수집이 미약하여 클럽의 스윙과 그에 따른 타구의 방향 및 궤적에 대한 구현이 실제와 동일하게 이루어지지 못하며, 나아가 어드레스, 백스윙, 임팩트 및 팔로우 등에 대한 스윙 메커니즘의 각 단계에 대한 구체적인 정보를 제공할 수 없다는 문제점이 있다.
이와 같이, 종래기술을 포함하는 종래의 기술들은 실제 환경과 최대한 동일한 골프 게임 환경을 제공하기에는 다소 부족하다는 한계가 있다.
본 발명은 상기 문제점을 해결하기 위해 안출된 것으로, 클럽의 현재 상태에 대해 보다 정확하게 상세한 분석을 제공함으로써, 실제 환경과 최대한 동일한 골프 게임 환경을 제공하고, 아울러 임팩트 시점을 계산하는 데에 따르는 딜레이 없이 클라이언트에 골프공 타격을 구현할 수 있도록 하며, 나아가 어드레스, 스윙, 임팩트 등에 대한 각 종 상황을 클라이언트 상에 보다 완벽하게 구현하여 골프 게임 이용자의 만족도를 향상시키는 것을 목적으로 한다.
상기 과제의 해결을 목적으로 하는 본 발명은 다음의 구성 및 단계를 포함한다.
본 발명에 따른 골프 게임 제공 시스템은 클럽의 x, y, z축에 대한 가속도를 검출하는 가속도 센서 및 클럽의 x, y, z축에 대한 각속도를 검출하는 자이로 센서를 포함하는 센서부, 그리고 상기 센서부로부터 검출된 검출데이터를 계산하여 상기 클럽의 현재 상태를 나타나는 상태데이터를 산출하는 연산부, 그리고 상기 연산부의 상태데이터를 이용하여 상기 클럽의 현재 상태를 상기 클라이언트 상에 적용하는 처리부를 포함한다.
또한 본 발명에 따른 골프 게임 제공 방법은 상기 연산부가 상기 클럽의 모션 값 및 방향각을 계산하고, 상기 처리부가 사용자의 어드레스 여부를 결정하는 어드레스 판단 단계, 그리고 어드레스 상태에서, 상기 연산부가 상기 클럽의 쿼터니언 및 회전을 계산하고, 상기 처리부가 스윙 시작 여부를 결정하는 스윙 시작 판단 단계, 그리고 스윙 상태에서, 상기 처리부가 임팩트 여부를 결정하는 임팩트 판단 단계, 그리고 임팩트 이후, 상기 처리부가 스윙 완료 여부를 결정하는 스윙 완료 판단 단계를 포함한다.
상기 구성 및 단계를 포함하는 본 발명은 클럽의 현재 상태에 대해 보다 정확하게 상세한 분석을 제공함으로써, 실제 환경과 최대한 동일한 골프 게임 환경을 제공하고, 아울러 임팩트 시점을 계산하는 데에 따르는 딜레이 없이 클라이언트에 골프공 타격을 구현할 수 있도록 하며, 나아가 어드레스, 스윙, 임팩트 등에 대한 각 종 상황을 클라이언트 상에 보다 완벽하게 구현하여 골프 게임 이용자의 만족도를 향상시킨다는 효과를 갖는다.
도 1은 본 발명을 실현하기 위한 장치에 관한 일 실시예.
도 2는 본 발명에 따른 골프 게임 제공 시스템의 구성도.
도 3은 본 발명에 따른 골프 게임 제공 방법에 관한 알고리즘.
도 4는 스윙 처리 및 분석에 관한 알고리즘.
도 5는 어드레스 판단에 관한 알고리즘.
도 6은 어드레스 판단에 관한 설명을 위한 설명도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 구현예(態樣, aspect)(또는 실시예)들을 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 구현예(태양, 態樣, aspect)(또는 실시예)를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, ~포함하다~ 또는 ~이루어진다~ 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 명세서에서 기재한 ~제1~, ~제2~ 등은 서로 다른 구성 요소들임을 구분하기 위해서 지칭할 것일 뿐, 제조된 순서에 구애받지 않는 것이며, 발명의 상세한 설명과 청구범위에서 그 명칭이 일치하지 않을 수 있다.
본 발명은 스크린 골프, 골프 게임 어플리케이션 등과 같은 클라이언트 상에서 골프 게임을 제공하되, 실제 환경과 최대한 동일한 골프 게임 환경을 제공할 수 있도록 한 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법에 관한 것이다.
이하 첨부된 도면을 참고하여 본 발명에 따른 골프 게임 제공 시스템(이하 본 시스템(S)) 및 이를 이용한 골프 게임 제공 방법(이하 본 방법)에 관한 것이다.
본 발명의 구체적인 설명에 앞서 본 시스템(S) 및 본 방법에 의해 제공되는 골프 게임은 클라이언트(CL) 상에서 실행되고, 도 1과 같은 장치를 통해 실현된다. 도 1에 도시된 바와 같이, 본 시스템(S) 및 본 방법 실현을 위한 장치로는 클럽(C)과 이에 결합된 센서모듈(M)을 포함한다.
상기 클럽(C)은 본 시스템(S) 및 본 방법을 실현하기 위한 별도의 클럽(C)으로, 일반적인 골프 클럽(C)과 크게 다르지 않게 구비되며, 하나의 예로 실제로 골프공을 타격하지 않고 스윙만을 제공하는 경우에는 전단에 중량체가 구비되며, 이러한 중량체는 흥미 유발을 위해 골프공의 형상으로 구성할 수 있다.
상기 센서모듈(M)은 클럽(C)에 결합되며, 클럽(C)의 어느 위치에 결합되어도 무방하나, 바람직하게는 클럽(C)의 후단, 즉 그립의 후단에 결합될 수 있다. 이러한 센서모듈(M)에는 후술하는 본 시스템(S)의 각 부 구성이 구비되며, 추가로 클라이언트(CL)와 통신할 수 있는 통신수단, 골프 게임 전체를 총괄하는 서버 등이 더 구비될 수 있으나, 통신수단, 서버 등에 관한 구체적인 내용은 본 발명에서는 고려하지 않고, 공지된 기술 및 통상의 기술자의 일반상식을 따를 수 있다.
본 시스템(S)은 클라이언트(CL) 상에서 실행되는 골프 게임을 제공하는 시스템으로, 도 2에 도시된 바와 같이, 센서부(1), 연산부(2) 및 처리부(3)를 포함한다.
각 부 별로, 센서부(1)는 도 2에 도시된 바와 같이, 가속도 센서(11) 및 자이로 센서(12)를 포함한다. 가속도 센서(11)는 클럽(C)의 x, y, z축에 대한 가속도를 검출하며, 이를 위해 3축 가속도 센서(11)로 구성되는 것이 바람직하다. 그리고 자이로 센서(12)는 클럽(C)의 x, y, z축에 대한 각속도를 검출하며, 이를 위해 3축 자이로 센서(12)로 구성되는 것이 바람직하다. 추가로, 센서부(1)는 3축 나침반 센서(홀 센서)를 더 포함할 수도 있는데, 나침반 센서를 더 포함하는 경우 클럽(C)의 상태에 대한 보다 상세한 데이터 수집이 가능해진다.
이러한 센서부(1)는 클럽(C)의 움직임, 이동 속도, 이동 방향, 기울기, 기울기의 방향, 3차원 상에서의 현재 위치, 변위 값 등을 수집하며, 이를 통해 클럽(C)의 현재 상태에 관한 데이터를 수집하고, 이를 기반으로 검출데이터를 생성한다.
다음으로, 연산부(2)는 센서부(1)로부터 검출된 검출데이터를 계산하여 클럽(C)의 현재 상태를 나타나는 상태데이터를 산출하는 구성으로, 상태데이터를 산출하기 위한 소정의 알고리즘 및 이를 위한 회로소자 등에 의해 구현된다.
다음으로, 처리부(3)는 연산부(2)의 상태데이터를 이용하여 클럽(C)의 현재 상태를 클라이언트(CL) 상에 적용하는 구성으로, 클럽(C)의 현재 상태를 클라이언트(CL) 상에 적용하기 위해 중앙처리장치(CPU, MCU 등), 소정의 알고리즘 및 이를 위한 회로소자 등에 의해 구현된다. 또한 처리부(3)는 클라이언트(CL)에 적용하기 위해 클라이언트(CL)에서 요구하는 데이터의 형태로 변환하는 변환 알고리즘을 더 포함한다.
이하 상기 본 시스템(S)을 이용한 골프 게임 제공 방법(본 방법)에 대해 상세하게 설명하기로 한다.
도 3 및 도 4는 본 방법의 전체 프로세스를 도시한 알고리즘에 관한 도면이다. 도 3 및 도 4에서 확인할 수 있는 바와 같이, 본 방법은 크게 어드레스 판단 단계(S1), 스윙 시작 판단 단계(S2), 임팩트 판단 단계(S3) 및 스윙 완료 판단 단계(S5)를 포함한다.
각 단계 별로, 어드레스 판단 단계(S1)는 사용자가 스윙 준비 자세인 어드레스 자세를 취하였는지를 판단하는 단계로, 어드레스는 사용자가 클럽(C)을 파지한 상태에서 허리를 소정 각도로 숙이는 스윙 준비 자세이다.
통상의 어드레스 자세는 클럽(C)을 파지한 손이 하방으로 기울어지며, 이에 어드레스 판단 단계(S1)에서는 연산부(2)가 클럽(C)의 모션 값 및 방향각을 계산하고, 상기 처리부(3)가 사용자의 어드레스 여부를 결정한다. 여기에서, 모션 값은 클럽(C)의 움직임에 관한 값으로, 모션 값을 통해 클럽(C)의 3차원 변위를 산출할 수 있고, 방향각은 클럽(C)의 현재 기울어진 방향과 기울어진 정도에 관한 값으로, 방향각을 통해 클럽(C)의 기울기를 산출할 수 있다.
다음으로, 스윙 시작 판단 단계(S2)는 스윙의 시작을 판단하는 단계로, 어드레스 상태에서 클럽(C)의 이동이 타구의 방향과 반대된 방향으로 감지되면 스윙 시작으로 판단하게 되는 것이다.
구체적으로, 스윙 시작 판단 단계(S2)의 시작은 어드레스 상태인 것을 기본으로 하며, 스윙 시작 판단 단계(S2)에서는 연산부(2)가 클럽(C)의 쿼터니언 및 회전을 계산하고, 처리부(3)가 스윙 시작 여부를 결정한다. 여기에서, 쿼터니언은 3차원 공간에서 회전을 계산하기 위해 벡터 기반의 회전 값에 해당하며, 클럽(C)의 회전이라 함은 쿼터니언에 회전의 스칼라 값인 속력 등을 부가한 개념으로 해석될 수 있다. 이에 연산부(2)는 쿼터니언 및 회전을 계산하여 클럽(C)의 스윙에 따른 변위와 스윙 속도를 산출할 수 있고, 처리부(3)는 클럽(C)이 타구의 반대 방향으로 이동하였다는 것을 확인함으로써 스윙의 시작을 결정한다.
상기 스윙 시작 판단 단계(S2)는 어드레스 이후, 스윙 시작까지의 시간을 계산하는 스윙 타이머 계산 단계를 더 포함할 수 있는데, 스윙 타이머 계산 단계는 기 설정된 인터벌(interval) 내에 스윙이 시작되었는지를 판단하고, 기 설정된 인터벌 내에 스윙이 시작되지 않으면 로직을 초기화한다.
다음으로, 임팩트 판단 단계(S3)는 가상의 골프공이 타격되었는지 여부를 판단하는 단계로, 클럽(C)의 이동이 백스윙의 종점(Top of Back)에서 멈춘 후 클럽(C)이 다시 어드레스 지점(Impact of Down)까지 이동되는 것이 감지되면 골프공이 임팩트된 것으로 판단하게 되는 것이다.
구체적으로, 임팩트 판단 단계(S3)는 클럽(C)의 이동이 백스윙의 종점에서 멈춘 후 다시 임팩트 지점까지 이동하는 것, 즉 스윙 상태에 있음을 전제로 하며, 이 때 연산부(2)는 스윙 판단과 동일하게 클럽(C)의 변위와 스윙 속도를 산출하고, 처리부(3)는 임팩트 지점에 클럽(C)이 도달하게 됨에 따라 임팩트를 결정한다. 이 때 클럽(C)의 이동은 정확하게 임팩트 지점(어드레스 지점)으로 이동되어야 하며, 클럽(C)이 정확하게 이동하지 않는 경우, 가상의 골프공의 직경을 고려하여 헛스윙, 슬라이스, 훅 등을 결정하여 골프공의 타구 방향에 적용시킨다.
다음으로, 스윙 완료 판단 단계(S5)는 클럽(C)의 스윙이 완료되었는지를 판단하는 단계로, 임팩트 이후 클럽(C)의 이동이 팔로우 스윙의 종점에 도달하는 것이 감지되면 스윙이 완료된 것으로 판단하게 되는 것이다.
구체적으로, 스윙 완료 판단 단계(S5)는 임팩트가 이루어진 후, 타구와 동일한 방향으로 클럽(C)이 이동하다가 이동이 멈추는 것을 감지하는 것으로, 이 때 연산부(2)는 스윙 시작 판단 및 임팩트 판단 때와 동일하게 클럽(C)의 변위와 스윙 속도를 산출하고, 처리부(3)는 팔로우 스윙의 종점에 클럽(C)이 도달하게 됨에 따라 스윙 완료 여부를 결정한다.
상기 본 방법은 클럽(C)의 현재 상태에 대해 보다 정확하게 상세한 분석을 제공함으로써, 실제 환경과 최대한 동일한 골프 게임 환경을 제공하고, 아울러 임팩트 시점을 계산하는 데에 따르는 딜레이 없이 클라이언트(CL)에 골프공 타격을 구현할 수 있도록 하며, 나아가 어드레스, 스윙, 임팩트 등에 대한 각 종 상황을 클라이언트(CL) 상에 보다 완벽하게 구현하여 골프 게임 이용자의 만족도를 향상시키는 효과를 갖는다.
추가로, 도 3 및 도 4에 도시된 바와 같이, 본 방법은 임팩트 판단 단계(S3) 이후, 스윙 데이터 생성 단계(S4)를 더 포함할 수 있음을 특징으로 한다.
구체적으로, 스윙 데이터 생성 단계(S4)는 클럽(C)의 기울기, 변위, 스윙 속도 등을 통해 클럽(C)의 스윙에 관한 종합 정보인 스윙 데이터를 산출하는 단계로, 연산부(2)가 클럽(C)의 이동 방향을 보정하고, 클럽(C)의 선가속도 및 선속도를 계산하여, 클럽(C)의 헤드 스피드, 이동 경로, 이동 속도, 페이스의 각도 및 타구의 각도를 포함하는 스윙 데이터를 산출하는 단계이다.
이를 위해 연산부(2)는 어드레스 판단 단계(S1)에서의 클럽(C)의 모션 값 및 방향각, 그리고 스윙 시작 판단 단계(S2), 임팩트 판단 단계(S3)에서의 클럽(C)의 쿼터니언 및 회전에 더하여, 클럽(C)의 이동 방향 보정, 클럽(C)의 선가속도 및 선속도 계산을 수행하여, 클럽(C)의 헤드 스피드, 이동 경로, 이동 속도, 페이스의 각도 및 타구의 각도를 산출한다. 여기에서, 클럽(C)의 이동 방향 보정은 클럽(C)의 이상적인 이동 방향과의 대비를 통한 문제점 분석을 제공할 수 있고, 클럽(C)의 선가속도 및 선속도는 타구의 속도를 결정할 수 있는 중요 인자가 된다.
이에 더하여 도 3 및 도 4에 도시된 바와 같이, 스윙 데이터 생성 단계(S4)는 노이즈 필터링 및 스플라이닝(Splining) 과정을 더 포함할 수 있는데, 노이즈 필터링은 외부환경에 의해, 회로 소자에 따른 오차 등에 의해, 센서부(1)에서 검출된 데이터에 포함된 노이즈를 제거하는 과정이고, 스플라이닝은 유선형의 궤적을 도출하기 위해 가장 신뢰성이 높은 이동점들을 모아서 이들을 잇는 곡선을 도출하는 과정이다. 이러한 과정은 후술하는 스윙 궤적 산출에 기여하는 중요 인자가 된다.
상기 스윙 데이터 생성 단계(S4)에서 생성된 스윙 데이터는 클라이언트(CL)로 전송된다.
상기 각 단계의 처리 과정은 도 3 및 도 4에서 확인 가능한 바와 같은 지연 과정(Buffering of N packets)을 포함할 수 있는데, 지연 과정은 데이터 처리를 위한 최소한의 시간만이 할당되는 것이 바람직하다.
추가로, 도 3 및 도 4에 도시된 바와 같이, 본 방법은 스윙 완료 판단 단계(S5) 이후, 스윙 궤적 분석 단계(S6)를 더 포함할 수 있음을 특징으로 한다.
구체적으로, 스윙 궤적 분석 단계(S6)는 클럽(C)의 스윙 궤적(Swing Trajectory)을 산출 및 분석하는 단계로. 스윙 궤적을 클라이언트(CL) 상에 표시하기 위한 그래픽의 구현을 위해 구비되는 단계이다. 스윙 궤적 분석 단계(S6)에서는 처리부(3)가 상기한 스윙 데이터를 이용하여 인터페이스 상에 스윙 궤적을 구현하며, 특히 스윙 궤적은 헤드의 궤적과 센서(상기한 센서모듈(M))의 궤적으로 구분될 수 있으며, 헤드의 궤적과 센서의 궤적 간의 이격은 클럽(C) 샤프트의 길이만큼이 되고, 처리부(3)는 이를 계산하여 헤드의 궤적에 오류가 없는지를 검출하게끔 구성되는 것이 바람직하다.
이하 어드레스 판단 단계(S1)에 관한 구체적인 실시예를 소개하고자 한다.
도 5 내지 도 6에 도시된 바와 같이, 어드레스 판단 단계(S1)는 디바이스 검색 단계, 모션 센서 데이터 수신 단계, 모션 크기 계산 단계, 방향각 계산 단계, 어드레스 승인 단계를 포함한다.
먼저 디바이스 검색 단계는 통신수단을 이용하여 클라이언트(CL)와 센서모듈(M)을 간의 연결을 제공하는 단계로, 대표적인 통신수단으로 근거리 저전력 통신인 BLE 가 활용될 수 있다.
다음으로, 모션 센서 데이터 수신 단계는 센서부로부터 모션 데이터를 수신하는 단계로, 모션 데이터는 상기한 바와 같이, 3축 가속도 데이터, 3축 자이로 데이터, 3축 나침반 데이터를 포함할 수 있다. 바람직한 데이터의 주파수 값은 100Hz 또는 그 이상이 되는 것이다.
다음으로, 모션 크기 계산 단계는 자이로 센서(12)로부터 수신된 자이로 데이터(각속도)를 활용하여 해당 모션의 크기 값을 계산하는 단계로, 모션의 크기 값은 다음의 수학식 1을 활용하여 구할 수 있다.
Figure 112019027051953-pat00001
- Gyromagn = 모션 크기 값
- Gyrox, Gyroy, Gyroz = x, y, z 축 방향으로의 모션 크기 값
어드레스 자세로의 이동인지는 센서부(1)의 이동에 따른 상기 수학식 1에 따라 얻어진 모션 크기 값이 기 설정된 범위 내에 해당하는 지 검출함으로써 판단되는데, 즉 모션 크기 값이 크기 최솟값과 크기 최댓값 사이에 위치해야 하며, 이는 다음의 수학식 2를 통해 산출할 수 있다.
Figure 112019027051953-pat00002
- Magnmin,gyro, Magnmax,gyro = 크기 최솟값, 크기 최댓값
다음으로, 방향각 계산 단계는 센서부(1)의 기울기에 따른 방향각을 계산하는 단계로, 먼저 방향각 계산을 위해 가속도 센서(11)로부터 수신된 가속도 데이터를 활용하여 해당 모션의 기울기를 계산한다.
특히 방향각 계산 단계는 모션 크기 계산 단계에서, 모션 크기 값이 기 설정됨 범위 내에 해당하는 것이 검출된 이후에 수행되는 것이 바람직한데, 이는 불필요한 프로세스의 구동을 줄이기 위함이다.
해당 모션의 기울기, 즉 방향각을 계산하기 위해서는 하기 수학식 3과 같이 먼저 가속도 데이터의 크기를 정규화할 필요가 있고, 하기 수학식 4와 같이 정규화된 데이터의 z 값을 통해 도출할 수 있다.
Figure 112019027051953-pat00003
- Acclmagn = 가속도 데이터의 크기
- Acclx, Accly, Acclz = x, y, z 방향의 가속도 데이터 값
- Acclx,norm, Accly,norm, Acclz,norm = 정규화된 x, y, z 방향의 가속도 데이터 값
Figure 112019027051953-pat00004
-
Figure 112019027051953-pat00005
= 모션의 방향각
다음으로, 어드레스 승인 단계는 모션의 크기 및 방향각이 기 설정된 임계치인 최댓값 및 최솟값 사이에 위치하는 경우, 어드레스 상황으로 판단하는 단계로, 하기 수학식 5와 같이, 도출된 방향각이 어드레스로 판단되는 최댓값 및 최솟값 사이에 해당하는 경우 어드레스로 판단하게 되는 것이다. 어드레스 최댓값과 최솟값은 기 설정된 값이고, 센서모듈(M)의 메모리에 저장된 데이터베이스를 통해 로딩되는 것이 바람직하다.
Figure 112019027051953-pat00006
- Anglemin,address, Anglemax,address = 어드레스 판단 최솟값, 최댓값
상기 수학식 5에서, 클럽(C)의 종류가 드라이버, 우드 등(퍼터가 아닌 클럽)으로 설정되어 있는 경우, 어드레스 판단 최솟값(Anglemin,address)은 15도이고, 어드레스 판단 최댓값(Anglemax,address)은 60도인 것이 바람직하다. 상기 범위 안에 들어오는 방향각 수치가 가장 이상적인 어드레스 자세에 해당하기 때문이다.
또한 상기 수학식 5에서, 클럽(C)의 종류가 퍼터인 경우, 어드레스 판단 최솟값(Anglemin,address)은 10도이고, 어드레스 판단 최댓값(Anglemax,address)은 40도인 것이 바람직하다. 퍼터는 드라이버나 우드 등에 비해 스윙 각도가 작고, 이에 따라 어드레스 자세가 다르므로, 드라이버나 우드 등과 차별되는 것이 바람직하기 때문이다.
이후, 스윙 시작 판단 단계(S2)에 관한 구체적인 실시예로, 도 5 및 도 6에 도시된 바와 같이, 스윙 시작 판단 단계(S2)는 클럽(C) 샤프트의 벡터의 쿼터니언 및 회전을 계산하는 단계 및 스윙 벡터의 방향을 계산하고 해당 방향의 레인지를 정의하는 단계를 포함한다.
클럽(C) 샤프트의 벡터의 쿼터니언 및 회전을 계산하는 단계에서, 쿼터니언과 회전 벡터는 다음의 수학식 6, 7에 의해 산출될 수 있다.
Figure 112019027051953-pat00007
- Quaternionaddress = 어드레스 상태에서의 쿼터니언
Figure 112019027051953-pat00008
- w = 회전 벡터
-
Figure 112019027051953-pat00009
= 노말 벡터
- M = 로테이션 매트릭스
상기 수학식 6, 7에 의해 계산된 회전 벡터를 이용하여 스윙이 올바른 방향로 진행되고 있는 지를 확인할 수 있으며, 설정된 클럽(C)의 타입에 따라 스윙의 레인지를 정의할 수 있다. 여기에서, 스윙의 레인지는 해당 스윙 방향 벡터에 대해 수직한 면의 범위를 의미한다.(도 6 참조)
이상에서 첨부된 도면을 참조하여 설명한 본 발명은 통상의 기술자에 의하여 다양한 변형 및 변경이 가능하고, 이러한 변형 및 변경은 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.
S: 본 시스템(골프 게임 제공 시스템)
1: 센서부 11: 가속도 센서
12: 자이로 센서
2: 연산부 3: 처리부
C: 클럽 M: 센서모듈
CL: 클라이언트

Claims (4)

  1. 클럽의 x, y, z축에 대한 가속도를 검출하는 가속도 센서 및 클럽의 x, y, z축에 대한 각속도를 검출하는 자이로 센서를 포함하는 센서부, 상기 센서부로부터 검출된 검출데이터를 계산하여 상기 클럽의 현재 상태를 나타나는 상태데이터를 산출하는 연산부 및, 상기 연산부의 상태데이터를 이용하여 상기 클럽의 현재 상태를 클라이언트 상에 적용하는 처리부를 포함하여, 클라이언트 상에서 실행되는 골프 게임을 제공하는 골프 게임 제공 시스템을 이용한 골프 게임 제공 방법에 있어서,
    상기 연산부가 상기 클럽의 모션 값 및 방향각을 계산하고, 상기 처리부가 사용자의 어드레스 여부를 결정하는 어드레스 판단 단계;
    어드레스 상태에서, 상기 연산부가 상기 클럽의 쿼터니언 및 회전을 계산하고, 상기 처리부가 스윙 시작 여부를 결정하는 스윙 시작 판단 단계;
    스윙 상태에서, 상기 처리부가 임팩트 여부를 결정하는 임팩트 판단 단계;
    상기 연산부가 상기 클럽의 이동 방향을 보정하고, 상기 클럽의 선가속도 및 선속도를 계산하여, 상기 클럽의 헤드 스피드, 이동 경로, 이동 속도, 페이스의 각도 및 타구의 각도를 포함하는 스윙 데이터를 산출하는 스윙 데이터 생성 단계;
    상기 처리부가 스윙 완료 여부를 결정하는 스윙 완료 판단 단계; 및
    스윙 궤적을 상기 클라이언트 상에 표시하기 위한 그래픽 구현을 위해 상기 클럽의 스윙 궤적을 산출 및 분석하는 스윙 궤적 분석 단계;
    를 포함하고,
    상기 스윙 시작 판단 단계는 어드레스 이후, 스윙 시작까지의 시간을 계산하는 스윙 타이머 계산 단계를 더 포함하고,
    상기 스윙 타이머 계산 단계에서는 기 설정된 인터벌(interval) 내에 스윙이 시작되었는지를 판단하고, 기 설정된 인터벌 내에 스윙이 시작되지 않으면 로직을 초기화고,
    상기 임팩트 판단 단계에서는, 상기 클럽이 상기 어드레스 지점인 임팩트 지점에 정확하게 이동하지 않는 경우, 가상의 골프공의 직경을 고려하여 헛스윙, 슬라이스, 훅 등을 결정하여 상기 골프공의 타구 방향에 적용시키고,
    상기 스윙 궤적은 상기 헤드의 궤적과 상기 센서부를 구성하는 센서모듈의 궤적으로 구분되고,
    상기 스윙 궤적 분석 단계에서는, 상기 헤드의 궤적과 상기 센서모듈의 궤적 간의 이격이 상기 클럽의 샤프트의 길이만큼인지를 계산하여 상기 헤드의 궤적에 오류가 없는지를 검출하는 것을 특징으로 하는 골프 게임 제공 방법.
  2. 청구항 1에 있어서,
    상기 스윙 데이터 생성 단계는,
    외부환경에 의해, 회로 소자에 따른 오차 등에 의해, 상기 센서부에서 검출된 데이터에 포함된 노이즈를 제거하는 노이즈 필터링 과정 및,
    유선형의 궤적을 도출하기 위해 가장 신뢰성이 높은 이동점들을 모아서 이들을 잇는 곡선을 도출하는 스플라이닝(Splining) 과정을 포함하는 것을 특징으로 하는 골프 게임 제공 방법.
  3. 청구항 1에 있어서,
    상기 어드레스 판단 단계는 상기 자이로 센서로부터 수신된 자이로 데이터(각속도)를 활용하여 해당 모션 크기 값을 계산하는 모션 크기 계산 단계,
    상기 모션 크기 계산 단계에서, 상기 모션 크기 값이 기 설정된 범위 내에 해당하는 경우, 상기 가속도 센서로부터 수신된 가속도 데이터를 활용하여 해당 모션의 방향각을 계산하는 방향각 계산 단계 및,
    상기 방향각이 기 설정된 범위 내에 해당하는 지 판단하여 어드레스로 판별하는 어드레스 승인 단계를 포함하고,
    상기 모션 크기 값은 다음의 식,
    Figure 112020082269687-pat00018

    - Gyromagn = 모션 크기 값
    - Gyrox, Gyroy, Gyroz = x, y, z 축 방향으로의 모션 크기 값
    을 통해 도출되며,
    상기 방향각 계산 단계는 상기 모션 크기 값이 기 설정된 범위 내에 해당하는 것이 검출된 이후에만 수행되는 것을 특징으로 하는 골프 게임 제공 방법.
  4. 청구항 3에 있어서,
    상기 방향각 계산 단계에서 모션의 방향각은 다음의 식,
    Figure 112020082269687-pat00010

    -
    Figure 112020082269687-pat00011
    = 모션의 방향각
    - Acclmagn = 가속도 데이터의 크기
    - Acclz,norm = 정규화된 z 방향의 가속도 데이터 값
    에 의해 산출되고,
    상기 어드레스 승인 단계에서 어드레스로 판별하는 범위는,
    상기 클럽이 드라이버 및 우드로 셋팅된 경우, 15 내지 60도이고,
    상기 클럽이 퍼터로 셋팅된 경우, 10 내지 40도로 설정되는 것을 특징으로 하는 골프 게임 제공 방법.
KR1020190030118A 2019-03-15 2019-03-15 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법 KR102203176B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190030118A KR102203176B1 (ko) 2019-03-15 2019-03-15 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190030118A KR102203176B1 (ko) 2019-03-15 2019-03-15 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법

Publications (2)

Publication Number Publication Date
KR20200110583A KR20200110583A (ko) 2020-09-24
KR102203176B1 true KR102203176B1 (ko) 2021-01-15

Family

ID=72706410

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190030118A KR102203176B1 (ko) 2019-03-15 2019-03-15 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법

Country Status (1)

Country Link
KR (1) KR102203176B1 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013056074A (ja) * 2011-09-09 2013-03-28 Sumitomo Rubber Ind Ltd スイング分析方法
JP6390076B2 (ja) * 2013-07-05 2018-09-19 セイコーエプソン株式会社 運動解析装置および運動解析プログラム並びに告知方法
KR20180085843A (ko) * 2017-01-19 2018-07-30 주식회사 디엠시스 스윙 자세의 교정과 게임이 가능한 스윙 분석 장치 및 그 운용 방법

Also Published As

Publication number Publication date
KR20200110583A (ko) 2020-09-24

Similar Documents

Publication Publication Date Title
US9962591B2 (en) Motion analysis method, program, and motion analysis device
CN104524755B (zh) 摆动分析装置
US9864904B2 (en) Motion analysis device and motion analysis system
US20050261073A1 (en) Method and system for accurately measuring and modeling a sports instrument swinging motion
CN104225890B (zh) 运动分析装置
US8845451B2 (en) Fitting system for a golf club
US20060084516A1 (en) Method and system for defining and using a reference swing for a sports training system
US20050054457A1 (en) Method and system for golf swing analysis and training
US20150018111A1 (en) Interpretation of characteristics of a golf swing using motion analysis
KR20100020131A (ko) 스윙 시뮬레이션 시스템과 그 방법 및 그 프로그램
US20180200575A1 (en) Motion analyzing apparatus, motion analyzing system, and motion analyzing method
WO2007069014A1 (en) Sport movement analyzer and training device
US20170239520A1 (en) Motion analysis apparatus, motion analysis system, motion analysis method, recording medium, and display method
KR20160106670A (ko) 운동 해석 방법, 운동 해석 장치, 운동 해석 시스템 및 프로그램
JP2016067410A (ja) 運動解析装置、運動解析システム、運動解析方法及びプログラム
CN103721398A (zh) 击球结果推论与姿势修正的方法与装置
US20160175674A1 (en) Motion analysis device, motion analysis system, motion analysis method, program, and recording medium
KR20160106671A (ko) 운동 해석 장치, 운동 해석 시스템, 운동 해석 방법, 운동 해석 정보의 표시 방법 및 프로그램
JP2014210182A (ja) ゴルフクラブ用の改善されたフィッティングシステム
US20170011652A1 (en) Motion analysis method, motion analysis apparatus, motion analysis system, and program
KR20190029224A (ko) 스크린 골프 사용자의 골프 스윙 자세 교정 시스템
WO2021079967A1 (ja) ラケット用解析システム、ラケット用解析装置、ラケット用解析プログラム及びラケット用解析方法
KR102203176B1 (ko) 골프 게임 제공 시스템 및 이를 이용한 골프 게임 제공 방법
US20160030805A1 (en) Motion analysis method, motion analysis device, and program
JP6862931B2 (ja) 運動解析装置、運動解析方法、運動解析システムおよび表示方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right