KR20220079562A - 자동화된 공 투척 기계를 사용하여 공의 궤적을 복제하는 방법 및 시스템 - Google Patents

자동화된 공 투척 기계를 사용하여 공의 궤적을 복제하는 방법 및 시스템 Download PDF

Info

Publication number
KR20220079562A
KR20220079562A KR1020227012557A KR20227012557A KR20220079562A KR 20220079562 A KR20220079562 A KR 20220079562A KR 1020227012557 A KR1020227012557 A KR 1020227012557A KR 20227012557 A KR20227012557 A KR 20227012557A KR 20220079562 A KR20220079562 A KR 20220079562A
Authority
KR
South Korea
Prior art keywords
ball
trajectory
launch
machine
user
Prior art date
Application number
KR1020227012557A
Other languages
English (en)
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 트라젝트 스포츠 인크.
Publication of KR20220079562A publication Critical patent/KR20220079562A/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/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance
    • 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/0075Means for generating exercise programs or schemes, e.g. computerized virtual trainer, e.g. using expert databases
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/003Repetitive work cycles; Sequence of movements
    • G09B19/0038Sports
    • 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/0021Tracking a path or terminating locations
    • A63B2024/0028Tracking the path of an object, e.g. a ball inside a soccer pitch
    • A63B2024/0034Tracking the path of an object, e.g. a ball inside a soccer pitch during flight
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/0002Training appliances or apparatus for special sports for baseball
    • A63B2069/0004Training appliances or apparatus for special sports for baseball specially adapted for particular training aspects
    • A63B2069/0008Training appliances or apparatus for special sports for baseball specially adapted for particular training aspects for batting
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/40Stationarily-arranged devices for projecting balls or other bodies
    • A63B2069/402Stationarily-arranged devices for projecting balls or other bodies giving spin
    • 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/05Image processing for measuring physical parameters
    • 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/10Positions
    • 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/10Positions
    • A63B2220/12Absolute positions, e.g. by using GPS
    • 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/10Positions
    • A63B2220/13Relative positions
    • 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
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/801Contact switches
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/802Ultra-sound sensors
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/803Motion sensors
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/806Video cameras
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/807Photo cameras
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/83Special sensors, transducers or devices therefor characterised by the position of the sensor
    • A63B2220/833Sensors arranged on the exercise apparatus or sports implement
    • 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/80Special sensors, transducers or devices therefor
    • A63B2220/89Field sensors, e.g. radar systems
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/02Testing, calibrating or measuring of equipment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/05Miscellaneous features of sport apparatus, devices or equipment with suction cups
    • 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
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/40Stationarily-arranged devices for projecting balls or other bodies
    • A63B69/406Stationarily-arranged devices for projecting balls or other bodies with rotating discs, wheels or pulleys gripping and propelling the balls or bodies by friction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image
    • G06T2207/30224Ball; Puck
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Toys (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Manipulator (AREA)

Abstract

본 개시는 예를 들어, 야구 공을 사용해 공 궤적을 복제하기 위한 자동화된 물체 발사의 시스템 및 방법에 관한 것이다. 시스템은 궤적 정보를 포함하는, 사용자로부터의 입력을 수신한 다음 해당 궤적에 기초해 물체를 발사한다. 시스템은 발사될 물체의 배향과 시스템 자체의 위치를 제어하는 서브시스템을 포함한다. 시스템은 또한 사용자에게 분석 등을 제공하기 위해 결과 추적 데이터베이스를 포함한다.

Description

자동화된 공 투척 기계를 사용하여 공의 궤적을 복제하는 방법 및 시스템
관련 출원들에 대한 상호 참조
이 출원은 2019년 9월 18일에 출원된 미국 특허 가출원 제62/901,879호에 대한 우선권을 주장하며, 이 가출원은 여기에 참조로 통합된다.
본 개시는 일반적으로 스포츠 기계에 관한 것으로, 보다 구체적으로는 자동화된 공 투척 기계(ball throwing machine)를 사용하여 공 궤적을 복제(replicate)하는 방법 및 시스템에 관한 것이다.
공 투척 기계는 선수 개발에 사용되는 일반적인 도구이며 예를 들어, 야구, 크리켓, 테니스, 하키, 축구 및 소프트볼과 같은 스포츠에서 사용되어 선수가 게임 내 시나리오에 대한 경험을 얻을 수 있도록 도와준다. 공 투척 기계로부터 투척된 공과 상호작용하면 선수가 훈련을 실행하고 공의 경로를 보다 효과적으로 예측하는 방법을 배우고 근육 기억을 향상시키는 데 도움이 된다.
일반적으로 스포츠 훈련 분야에서 사용되지만 공 투척 기계는 연구 목적 및 기타 사용 사례에서 레크리에이션으로도 사용된다. 공 투척 기계로부터 투척되는 일반적인 물체는 야구 공, 테니스 공, 크리켓 공 및 기타 스포츠 공을 포함한다.
공 추적 시스템은 스포츠에서도 자주 사용된다. 예를 들어, 레이더 기술, 비전 시스템 및 기타 시스템은 종종 게임 공 근처 또는 내부에 설치된다. 공 추적 기술은 골프, 테니스, 크리켓, 축구, 배구, 배드민턴, 당구, 헐링, 야구 등 공 발사(ball launching)를 수반하는 다른 스포츠에서 흔히 발견될 수 있다. 최첨단 공 추적 시스템은 공 궤적을 추적하기 위해 신뢰할 수 있는 정밀도를 달성했다.
기존의 공 투척 기계는 공을 발사하거나 투척할 수 있지만 발사된 공의 발사 경로는 제어하기는 어렵고 그리고/또는 현재의 공 투척 기계가 전체 표적 발사 경로를 복제하기 어렵다.
따라서, 자동화된 공 투척을 위한 새로운 방법 및 시스템이 제공된다.
본 개시는 자동화된 물체 투척을 위한 방법 및 시스템에 관한 것이다. 일 실시예에서, 물체는 스포츠 공이다. 시스템은 사용자로부터의 입력에 기초해 물체를 발사하는 물체 발사 컴포넌트를 포함한다. 입력은 바람직하게는 사용자가 발사된 물체가 따르기를 원하는 궤적을 나타낸다. 입력된 궤적(및 기타 기준)에 기초하여, 본 개시의 시스템은 물체 투척 기계 내에서 물체를 배향(orient)시키거나, 환경 내에서 기계를 제어하거나, 발사되는 물체에 회전(spin) 또는 속도를 적용하거나, 이들의 조합을 수행할 수 있다.
일 실시예에서, 본 개시는 그러한 기계로부터 투척된 물체의 궤적을 제어하기 위한 방법 및 시스템을 포함한다. 여기에 설명된 방법 및 시스템은 공; 예를 들어, 하키 퍽, 프리스비 및 총알과 같은 비구형 물체; 및 기계로부터 발사될 때 그 궤적이 제어될 수 있는 임의의 다른 물체의 발사에 적용할 수 있다.
공 발사 조건, 공 궤적 또는 이들의 임의의 조합을 제어할 수 있는 기계의 신규한 시스템, 방법 및 예시적인 실시예를 제공하는 것이 본 개시의 양상이다. 궤적이라는 용어는 발사 후 공이 따라가는 경로와 공이 상기 경로를 따라가는 동안의 공의 외관의 임의의 조합을 지칭한다. 본 개시는 사용자가 추적된 궤적을 복제하거나 시작 위치 및 끝 위치에 제한 없이 이동할 공 경로를 따라 원하는 공 위치 또는 위치들을 선택할 수 있게 한다. 궤적 사양의 일 실시예에서, 사용자는 궤적의 시작점과 끝점을 선택하거나 입력할 수 있다. 다른 실시예에서, 사용자 또는 사용자들은 발사된 공이 그 경로를 통과하기를 원하는 궤적 상의 적어도 하나의 중간점을 또한 선택할 수 있다. 대안적으로, 사용자는 궤적의 시작점, 궤적의 끝점, 및 시작점과 끝점 사이의 궤적 경로 상의 다수의 점을 입력할 수 있다. 본 개시는 궤적 또는 발사의 일부 또는 전부의 자유도(degrees of freedom)를 제어하고, 발사 조건 제어, 공 경로 제어 및 공 외관 제어의 전술한 능력에 관하여 보다 높은 정밀도를 달성하기 위한 시스템 및 방법을 포함한다. 본 개시는 또한 복제된 궤적과의 인간 및 환경 상호작용을 추적하기 위한 방법을 포함한다.
본 개시는 또한 스포츠의 데이터 분석 분야에 관한 것이다. 선수 성과 분석은 게임 내 전략, 훈련 결정, 선수 영입 등 스포츠의 많은 영역에서 의사 결정에 사용된다. 이러한 분석은 게임 내 및 교육에서 모두 수집될 수 있다. 아래에 설명된 방법은 게임 내 사용에 제한되지 않고 훈련 중에 데이터를 수집하고 이에 대한 분석을 제공하는 관행과 관련이 있다.
일 양상에서, 공 투척 기계 - 공 투척 기계는, 공 상태 감지 디바이스; 공 배향 제어 장치; 기계 정위(localization) 및 위치 제어 장치; 및 공 속도 및 회전 제어 장치를 포함함 -; 공 투척 기계를 제어하기 위한 제어기 - 제어기는, 기계 상태 대 공 릴리스(release) 상태 매핑 또는 공 상태 대 궤적 매핑 또는 이들의 조합을 포함함 -; 사용자가 공 투척 기계에 의해 생성될 공 릴리스 상태 또는 궤적을 나타내는 공 발사 입력치(inputs)를 입력하기 위한 제어기와 관련된 인터페이스; 및 처리 유닛을 포함하는, 공 궤적을 복제하기 위한 시스템이 제공된다.
또 다른 양상에서, 시스템은 결과 추적 디바이스를 더 포함한다. 또 다른 양상에서, 시스템은 폐루프 제어(closed-loop control) 및 오류 정정 장치를 더 포함한다. 추가 양상에서, 공 상태 감지 장치는 카메라의 세트(set) 및 센서의 세트를 포함한다. 또 다른 양상에서, 공 상태 감지 장치는 측정 디바이스의 세트를 더 포함한다.
또 다른 양상에서, 공 배향 제어 장치는, 컨베이어 시스템; 및 컨베이어 시스템을 제어하기 위한 모터 제어 유닛을 포함한다. 또 다른 양상에서, 공 배향 장치는 텐셔너(tensioners)의 세트를 더 포함한다. 또 다른 양상에서, 기계 정위 및 위치 제어 장치는 위치 감지 디바이스의 세트; 액추에이터의 세트; 및 작동 유닛을 포함한다. 추가 양상에서, 기계 정위 및 위치 제어 장치는 모션 제어 시스템을 더 포함한다.
또 다른 양상에서, 시스템은 인터페이스를 통한 사용자에 의한 선택을 위해 미리 결정된 기준을 시뮬레이션하기 위해 알고리즘적으로 궤적을 생성하기 위한 장치를 더 포함한다. 또 다른 양상에서, 시스템은 사용자가 궤적의 세트를 선별(curate)하기 위한 장치를 더 포함한다.
본 개시의 또 다른 양상에서, 사용자 입력을 수신하는 단계; 사용자 입력을 처리하여 물체 발사 명령을 생성하는 단계 - 물체 발사 명령은 발사된 물체에 대한 궤적 경로의 특성을 포함함 -; 및 발사하기 위해 물체를 준비하도록 물체 발사 명령을 수행하는 단계를 포함하는 자동화된 물체 투척 방법이 제공된다.
또 다른 양상에서, 방법은 물체를 발사하는 단계를 더 포함한다. 또 다른 양상에서, 방법은, 발사 후 물체 궤적을 모니터링하는 단계; 발사 후 물체 궤적을 예상 물체 궤적과 비교하는 단계; 및 발사 후 물체 궤적을 예상 물체 궤적과 비교하는 단계에 기초해 오류 정정을 수행하는 단계를 더 포함한다.
추가 양상에서, 발사하기 위해 물체를 준비하도록 물체 발사 명령을 수행하는 단계는, 물체 발사 명령에 기초하여 실제 배향으로부터 원하는 배향으로 물체를 재배향시키는 단계를 포함한다. 또 다른 양상에서, 발사하기 위해 물체를 준비하도록 물체 발사 명령을 수행하는 단계는, 물체 발사 명령에 기초하여 실제 자세(pose)로부터 원하는 자세로 물체 발사 기계를 재배향시키는 단계를 포함한다. 또 다른 양상에서, 발사하기 위해 물체를 준비하도록 물체 발사 명령을 수행하는 단계는, 공 발사 명령에 기초해 필요한 속도와 회전으로 발사될 물체를 준비하는 단계를 포함한다.
본 개시의 또 다른 양상에서, 자동화된 물체 투척의 방법을 수행하는 단계; 발사된 물체와의 사용자 상호작용을 추적하는 단계; 및 사용자 상호작용의 결과를 데이터베이스에 저장하는 단계를 포함하는, 사용자를 훈련시키는 방법이 제공된다.
추가 양상에서, 이 방법은, 사용자 상호작용의 결과에 기초하여 보고서를 생성하는 단계; 사용자 상호작용의 결과에 기초해 분석을 생성하는 단계 또는 사용자 상호작용의 결과에 기초해 훈련 권장 사항을 생성하는 단계 중 적어도 하나를 더 포함한다.
이제 본 개시의 실시예들이 첨부된 도면들을 참조하여 단지 예로서 설명될 것이다.
도 1a는 자동화된 공 투척을 위한 시스템의 개략도이다.
도 1b는 공 상태 감지 서브시스템의 개략도이다.
도 1c는 공 배향 제어 서브시스템의 개략도이다.
도 1d는 기계 정위(localization) 및 위치 제어 서브시스템의 개략도이다.
도 2는 공 발사 명령 방법을 약술하는 흐름도이다.
도 3은 원하는 궤적 또는 공 발사 상태의 사용자 입력이 주어진 경우 서브시스템 통신의 방법을 약술하는 흐름도이다.
도 4는 공 발사의 폐루프 제어를 위한 서브시스템 통신 방법을 약술하는 흐름도이다.
도 5는 공 발사 명령을 실행하기 위한 서브시스템 통신 방법을 약술하는 흐름도이다.
도 6은 공 상태 정보를 추출할 수 있는 카메라의 잠재적인 배열을 도시한다.
도 7은 야구공을 사용하여 공의 위치 및 속도 추출의 구현을 도시한다.
도 8은 피처(features)로서 스티치(stitches)를 포함하는 야구공의 가상 3D 모델을 도시한다.
도 9는 관찰된 점을 3D 모델과 매칭(match)시켜 공의 배향을 추출하는 프로세스를 도시한다.
도 10a 및 10b는 3개의 벨트를 가진 컨베이어 벨트 유닛을 디스플레이한다.
도 11a 내지 도 11d는 야구공의 임의적인 재배향의 예를 도시한다.
도 12는 일반적으로 공을 재배향시키는데 사용되는 프로세스를 도시한다.
도 13은 공과 컨베이어 사이의 힘을 제어하는 요소를 도시한다.
도 14는 다양한 배향과 회전에 대한 모션 블러(motion blur)로 인해 변화하는 야구공의 외관을 도시한다.
도 15는 공 투척 기계의 카메라의 구성을 나타낸다.
도 16a 및 16b는 마커의 포지셔닝을 도시한다.
도 17a, 17b, 17c, 17d 및 17e는 짐벌 및 갠트리 시스템을 도시한다.
도 18은 기계의 자세를 제어하는 프로세스를 도시한다.
도 19는 3D 회전 및 임의의 출력 속도를 공에 부여할 수 있는 구현된 시스템을 도시한다.
도 20a 및 20b는 알파 회전 각도가 다양한 3륜 시스템을 도시한다.
도 21은 기계 상태와 공 상태를 관련시키는 이론 물리학 모델을 도시한다.
도 22는 과거 공 투척으로부터 수집된 오류 데이터를 사용하여 기계 파라미터를 갱신하는 프로세스를 도시한다.
도 23은 수집된 오류 데이터가 제공된 기계 파라미터 갱신의 수학적 공식화를 도시한다.
도 24는 사용자가 발사할 공 궤적의 파라미터를 선택하는 인터페이스를 도시한다.
도 25는 사용자가 복제될 가상 3D 공간에서 궤적을 생성할 수 있는 인터페이스를 도시한다.
도 26a 및 26b는 사용자가 복제하기 위해 이전에 추적된 궤적을 선택할 수 있는 인터페이스를 도시한다.
도 27은 사용자가 속도, 회전 속도, 회전 축, 릴리스 위치, 최종 위치 및 배향을 포함하는 다양한 파라미터를 선택할 수 있는, 사용자가 입력할 수 있는 인터페이스를 도시한다.
도 28은 야구 훈련의 맥락에서 선별된 궤적 목록을 도시한다.
도 29는 특정 인간에 의해 생성될 수 있는 궤적 세트를 시뮬레이션하도록 의도된 궤적의 선별된 목록을 도시한다.
도 30a 및 30b는 수동 결과 추적을 위한 예시적인 인터페이스를 도시한다.
도 31은 결과 추적 서브시스템의 예시적인 인터페이스를 도시한다.
본 개시는 예를 들어, 공과 같은 물체에 대한 자동화된 물체 투척을 위한 방법 및 시스템에 관한 것이다. 일 실시예에서, 시스템은 사용자로부터의 공 발사 입력을 수신한 다음 공 발사 입력에 기초하여 공 또는 물체를 발사하거나 투척한다. 예를 들어, 공 궤적, 공 속도, 공 회전, 배향, 릴리스 위치(높이 및 옆면) 및 릴리스 각도(수평 및 수직)와 같은 공 발사의 특성은 공 발사 명령에서 사용자에 의해 명시될 수 있다. 사용자는 또한 복제할 이전에 추적된 공 발사를 선택하거나, 선별되거나 알고리즘적으로 생성된 목록으로부터 공 발사를 선택하거나, 시스템의 인터페이스에 의해 개별 공 발사가 자신에게 제안되도록 할 수도 있다. 또 다른 실시예에서, 공 발사 입력은 사용자가 발사된 물체가 따르기를 바라는 궤적을 포함할 수 있다.
도 1a를 보면 자동화된 공 투척을 위한 시스템의 개략도가 도시된다. 기계는 또한, 예를 들어, 프리스비 또는 하키 퍽과 같은 다른 물체를, 또는 궤적을 갖고 발사될 수 있는 임의의 물체를 발사할 수 있음을 이해할 것이다. 현재 실시예에서, 시스템(10)은 제어기(12)에 접속된 공 투척 기계(11)를 포함한다. 제어기(12)는 인터페이스(13)를 통해 사용자로부터 공 발사 입력을 수신한 다음 이 입력을 공 발사 상태 사양으로 변환한 다음, 이 사양이 공 발사 명령으로서 공 투척 기계(11)에 전송된다. 명령은 사용자에 의해 선택되거나 입력된 대로 원하는 특성의 공이 투척되거나 발사되거나 투구될 수 있도록 한다. 그런 다음, 공 투척 기계(11)는 명령에 기초하여 공을 투구하거나 투척한다.
일 실시예에서, 공 투척 기계(11)는 공 발사 서브시스템(20); 공 배향 제어 서브시스템(24); 기계 정위 및 위치 제어 서브시스템(28); 공 속도 및 회전 제어 서브시스템(22); 및 프로세서(26)를 포함한다. 현재 실시예에서, 제어기(12)는 폐루프 제어 및 오류 정정 서브시스템(30), 기계 상태 대 공 상태 매핑 서브시스템(33), 공 상태 대 궤적 매핑 서브시스템(32), 및 데이터베이스(31)를 포함한다. 시스템(10)은 결과 추적 디바이스(38) 및 데이터베이스(40)를 포함하는 결과 추적 서브시스템(15)을 더 포함할 수 있다. 자체 데이터베이스 대신 결과 추적 서브시스템은 데이터베이스(31)를 사용할 수 있다. 공 상태 감지 서브시스템(14)은 또한 시스템(10)에 의해 사용될 수 있다. 시스템의 인터페이스(13)는 사용자가 발사할 특정 궤적을 선택할 수 있게 하는 궤적 선택 인터페이스(34)를 포함할 수 있다. 인터페이스(13)는 또한 공 투척 기계(11) 및 결과 추적 서브시스템(15)으로부터의 데이터를 결합하여 사용자에게 기계와의 상호작용 결과의 데이터를 제공하는 결과 추적 인터페이스(36)를 포함할 수 있다.
위에서 논의된 바와 같이, 공 투척 기계(11)는 프로세서(26)를 포함한다. 제어기(12)는 또한, 자체 프로세서(미도시)를 포함할 수 있거나 공 투척 기계(11) 내의 프로세서(26)를 이용할 수 있다. 제어기(12)는 또한 공 투척 기계의 이전 발사로부터의 데이터의 자체 데이터베이스(31)를 포함할 수 있다.
공 발사 서브시스템(20)은 공 투척 기계(11)가 공을 발사할 수 있게 하는 컴포넌트로서 보여질 수 있다. 공 발사 서브시스템(20)의 일 실시예는 플라이휠 및 모터가 공 발사를 위해 사용되는 실시예를 나타내는 도 19에 개략적으로 도시되어 있다. 다른 실시예에서, 공 발사 서브시스템(20)은 기계적 발사 장치, 플라이휠 및 모터의 변형 구성 또는 공압식 캐논 시스템을 포함할 수 있다.
공 상태 감지 서브시스템(14)은 공이 발사되기 전, 발사되는 동안 및/또는 후에 공의 다양한 상태 및/또는 위치를 모니터링하는 데 도움이 된다. 이 서브시스템의 장점은 발사되는 공의 궤적 제어가 향상될 수 있다는 것이다. 일 실시예에서, 공 상태 감지 서브시스템(14)은 폐루프 제어 및 오류 정정 서브시스템(30)과 통신함으로써 오류 정정을 지원할 수 있다. 공 상태 감지 서브시스템(14)의 또 다른 장점은 공 또는 물체의 검출된 발사 조건을 사용자에게 디스플레이하는 능력을 포함한다. 또한, 공 상태 감지 시스템(14)은 아래에서 논의될 바와 같이, 공의 상태가 기계의 발사 메커니즘에 입력되기 전에 제어를 가능하게 하는 공 배향 제어 서브시스템(24)에 의해 사용될 수 있는 피드백을 제공함으로써 공 배향 제어를 자동화하는데 도움을 준다. 상기 목적을 위해 또는 이들 및 다른 피처의 추가를 용이하게 하기 위해 이러한 서브시스템(14)을 공 투척 기계(11)로 통합하는 것은 현재의 공 투척 기계에 비해 본 개시의 시스템 및 방법에 대해 적어도 하나의 장점을 제공한다.
공의 상태는 공의 위치, 배향, 속도 및/또는 각속도와 같은 공의 파라미터 중 적어도 하나를 포함하는 것으로 볼 수 있다. 대안적으로, 예를 들어, 공의 궤적, 가속도, 회전 크기와 같은 공의 다른 피처나 특성을 직접 측정하고 이러한 피처로부터 공의 상태를 추론하여 공의 상태가 결정되거나 추출될 수 있다.
도 1b를 참조하면, 공 상태 감지 서브시스템(14)의 일 실시예의 개략도가 도시되어 있다. 이 실시예에서, 공 상태 감지 서브시스템(14)은 투척되거나 발사되는 물체의 피처 또는 알려진 관심 영역을 관찰하도록 보정되는 적어도 하나의 카메라(52)의 세트를 갖는 비전 시스템(50)을 포함한다. 이는 도 6에 더 자세히 도시된다. 도 1b의 비전 시스템(50)은 또한 센서(54) 및/또는 측정 장치(56)의 세트를 포함할 수 있다. 공 상태 감지 서브시스템(14)은 프로세서(26)와 동일할 수 있는 프로세서(58)를 더 포함할 수 있다. 본 실시예에서, 공 상태 감지 서브시스템(14)은 공 투척 기계(11) 내에 통합되지만, 공 투척 기계(11)와 상호작용하는 독립적인 컴포넌트일 수도 있다.
보정 프로세스 동안, 예를 들어, 눈금자 및 알려진 치수의 다른 물체와 같은 측정 디바이스(56)가 각각의 카메라(52) 및 촬영된 이미지의 시야에 배치된다. 이러한 이미지는 촬영된 이미지에서 다른 물체의 위치가 기계의 로컬 참조 프레임 또는 기계가 존재하는 로컬 또는 글로벌 참조 프레임의 물체 위치와 어떻게 상관되는지를 결정하기 위해 비전 시스템(50)에 의해 사용된다. 카메라(52)는 공의 위치 및 배향을 결정하기 위해 공의 이미지를 캡처할 수 있다. 발사될 또는 발사된 후의 공의 다수의 이미지는 공지된 시간 간격으로 촬영되고, 각 시간 간격에서의 공의 위치는 공의 위치를 제공하는 반면, 단위 시간당 위치의 변화는 공의 속도를 결정하는데 사용될 수 있다. 유사하게, 공의 배향은 카메라(52)로부터의 이미지 내에서 공의 검출된 배향으로부터 결정될 수 있고, 단위 시간당 공의 배향 변화는 공의 각속도를 결정하기 위해 사용될 수 있다. 각 카메라는 바람직하게는 시각적 축에 수직인 상태의 차원에 대한 정확한 정보를 추출할 수 있기 때문에, 서로 다른 각도에 배치된 다수의 카메라는 위치 및 속도의 3개의 차원 모두를 정확하게 추출할 수 있다.
바람직한 실시예에서, 공 상태 감지 시스템(14)은 공이 발사된 후 공의 위치, 배향, 속도 및 각속도를 추출한다. 이러한 각 특성은 완전한 형태의 3차원(3D) 성분을 갖는다. 시스템은 투구 기계 내에 통합되거나 이 기계에 인접한 영역에 배치된 단일 카메라 또는 다수의 카메라를 사용하여 비디오 데이터로부터 이러한 특성을 추출할 수 있다.
도 6은 이 정보를 추출할 수 있는 카메라의 한 배열을 도시한다. 도 7은 한 카메라의 관점에서 야구공을 사용한 추출의 구현을 도시하며, 여기에서 단일 카메라는 알려진 시간에 다수의 사진을 찍고, 공의 위치를 추출하며, 위치 변화를 사용하여 속도를 결정한다. 또 다른 실시예에서, 더 많은 치수를 알리고 증가된 견고성을 제공하기 위해 다수의 카메라가 사용될 수 있다.
공의 배향을 추출하기 위해, 투척되고 있는 공의 3D 모델이 데이터베이스(31)로부터 검색(retrieve)된다. 3D 모델은 공 질감의 시각적으로 뚜렷한 피처 및/또는 공 형상의 피처와 같은(이에 제한되지는 않음) 공의 알려진 피처를 포함한다. 이러한 피처는 예를 들어, 공 상의 단일 고유 마킹과 같이 고유하거나 예를 들어, 공 상에 여러 번 발생하는 피처와 같이 일반적일 수 있다. 한 구현에서 사용된 피처의 예는 야구공의 스티치(stitches)이다.
도 8은 피처로서 스티치를 포함하는 야구공의 가상 3D 모델을 도시한다. 공 상태 감지 서브시스템(14)의 이러한 구현에서, 분석 기반(해리스 피처 검출(Harris Feature Detection)) 또는 예시 기반(머신 러닝(Machine Learning)) 피처 추출 알고리즘은, 카메라(52)의 세트에 의해 캡처된 공의 이미지로부터 피처를 추출하고 가상 3D 모델 내의 피처를 이미지 내의 추출된 피처와 정렬함으로써 공의 배향을 결정한다. 정렬은 발사 전과 공이 발사될 때 모두 수행될 수 있다. 예를 들어, 브루트 포스 매처(Brute Force Matcher) 또는 FLANN 매처와 같은 피처 매칭 알고리즘은, 3D 모델이 어떤 배향으로 카메라의 세트가 발사되는 공 이미지 또는 이미지들에서 보이는 피처를 관찰하게 해야 하는지를 결정한다. 일 실시예에서, 알고리즘 또는 알고리즘들은 많은 배향에서 3D 모델의 피처의 렌더링을 취하고, 그런 다음, 렌더링을 이미지와 매칭시켜 공이 이미지에 있는 배향을 결정한다. 도 9는, 단일 카메라를 사용하여 알려진 피처(야구공 스티치)를 추출하고, 추출된 피처를 가진 이미지를 다른 각도에서의 이러한 피처의 렌더링과 비교한 다음, 가장 잘 매칭하는 렌더링의 3D 배향을 추출하는, 공(야구 공)의 배향을 추출하는 하나의 프로세스를 도시한다. 이 예에서 최상의 일치는 렌더링된 이미지의 피처가 추출된 이미지의 피처와 픽셀 단위로 가장 많이 중첩되는 3D 모델의 렌더링으로서 정의된다. 도 9는 하나의 카메라를 사용한 배향 추출을 도시하지만 시스템은 다수의 카메라를 포함할 수 있다. 시스템이 배향 정보를 독립적으로 추출하는 다수의 카메라를 포함하는 경우, 공 상태 감지 서브시스템(14)은 공의 배향에 대한 보다 강력한 지식 또는 이해를 제공할 수 있다. 각속도의 추출은 단순히 여러 시간 인스턴스에서 공의 배향을 추출하는 것, 및 도 7에서 볼 수 있는 방정식을 사용하여 단위 시간당 배향의 변화를 결정하는 것을 포함한다.
대안적인 실시예에서, 공의 표면은 공 또는 공 유형의 공지된 형상을 사용하여 공의 이미지로부터 추출될 수 있다. 그러면 이미지 상의 피처가 3D 피처로서 공의 표면 상에 투영될 수 있다. 그런 다음 이러한 3D 피처는 공의 가상 3D 모델에 있는 피처에 매칭된다. 이미지의 피처와 가상 3D 모델의 피처 간의 배향 변경은 도 9에서 보이는 것럼 이미지에서 공의 배향을 결정하는 데 도움이 된다.
본 개시의 시스템의 또 다른 실시예에서, 시스템(10)은 2개의 공 상태 감지 서브시스템(14)을 포함할 수 있다. 하나의 시스템은 투척 기계(11)에 삽입되는 공의 배향을 결정하기 위한 것이고 또 다른 시스템은 투척 기계(11)로부터 발사되는 공의 상태를 결정하기 위한 것이다. 일부 실시예에서, 하나의 공 상태 감지 시스템(14)만이 기능들 중 하나 또는 둘 모두에 사용될 수 있다.
공 상태 감지 시스템 또는 서브시스템(14)은 또한 공 투척 기계(11) 내에 통합되기보다는 이 기계와 별개인 적어도 하나의 비전 시스템을 사용하여 구현될 수 있다는 것이 이해된다. 예를 들어, 레이더 시스템, 모션 센서, 또는 궤적 상의 특정 점에서 공의 상태를 추출하는 능력을 갖춘 임의의 센서 시스템과 같은 다른 시스템이 비전 시스템 대신 사용될 수 있다.
공 배향 제어 서브시스템(24)과 관련하여, 도 1c에 개략적으로 도시된 바와 같이, 서브시스템(24)은 공이 공 투척 기계(11)에 들어가고 나갈 때 공의 배향을 제어하는 것을 도울 수 있다. 공 배향 제어 서브시스템(24)의 장점은, 시간이 많이 소요될 수 있으므로 공이 발사될 때마다 사용자가 예상 배향으로 공을 배치하도록 요구하지 않고 공 배향의 제어가 자동화될 수 있다는 것이다. 공의 배향을 제어함으로써 공 투척 기계가 더 정확할 수 있고 공의 궤적이 개선된 방식으로 제어될 수 있다.
도 1c를 참조하면, 공 배향 제어 서브시스템(24)의 일 실시예의 개략도가 도시되어 있다. 본 실시예에서, 서브시스템(24)은 적어도 2개의 컨베이어 벨트를 포함하는 컨베이어 벨트 유닛(60), 모터 제어 유닛(62); 및 공 투척 기계(11)의 프로세서(26)일 수 있는 프로세서(64)를 포함한다. 대안적인 실시예에서, 공 상태 감지 시스템(14)은 또한, 공 배향 제어 서브시스템(24)의 일부이거나 이와 통합될 수 있다. 일 실시예에서, 공 배향 제어 서브시스템(24)은 공 배향을 프로그래밍 방식으로 제어하고 공 발사 서브시스템(20)으로의 공 전달 속도를 프로그래밍 방식으로 제어하는 기능을 제공한다.
시스템(10)의 이러한 파라미터들을 제어하는 것은, 공의 특정 배향이 공력 특성들에 영향을 미치고, 공이 공 발사 서브시스템(20)으로 진입할 때의 공의 입력 배향 및 속도가 공 투척 기계(11)가 공과 상호작용하는 방법에 영향을 미치기 때문에 궤적 복제에 유익하다. 공 투척 기계(11)의 이러한 양상을 제어하지 못하면 무작위 오류가 발생하여 예측할 수 없으며 궁극적으로 궤적의 제어 가능성이 제한될 수 있다. 궤적 전체를 따라 공의 외관은 또한, 다양한 배향과 회전축에서 모션 블러로 인한 야구 공의 외관을 보여주는 도 11에서 도시된 바와 같이 자신의 입력 배향에 크게 영향을 받는다.
공 배향 제어 서브시스템(24)으로, 본 개시의 시스템은 초기 배향과 무관하게 공을 원하는 배향으로 배향시킬 수 있어 정확한 배향 및 포지셔닝이 가능하다. 자동화된 배향의 중요성은 기계와 공 사이의 제어 가능한 상호작용 및 공이 이 기계를 떠난 후 제어 가능한 공 궤적 모두에서 공 투척 기계의 원하는 반복성과 관련이 있다. 자동화의 추가적인 중요성은 공이 공 투척 기계(11)에 반복적으로 전달될 수 있는 용이성과 속도에 관한 것이다.
공 제어 배향 서브시스템(24)의 또 다른 개략적인 실시예가 도 10a 및 10b에 도시되어 있다. 도시된 바와 같이, 시스템(24)은 다중 컨베이어 시스템(60)을 포함하며, 이는 본 실시예에서 3개의 컨베이어 벨트 및 연관된 마운트(미도시)를 포함한다. 임의의 수의 벨트 및 대응하는 모터 또는 모터 제어 유닛이 고려된다는 것이 이해될 것이다. 공의 임의의 3차원 배향을 가능하게 하기 위해 3개 미만의 벨트-모터 시스템이 회전 메커니즘(pivoting mechanism)과 함께 사용될 수 있다. 공의 임의의 3차원 배향을 달성하기 위해 추가 벨트 모터 시스템이 사용될 수도 있음을 이해해야 한다.
동작 시, 시스템 또는 공 투척 기계(11)는 예를 들어, 호퍼, 바스켓 또는 일부 다른 컨테이너와 같은 소스로부터 불특정 배향으로 하나 이상의 공을 수용하거나 수신한다. 이 소스는 한 번에 하나의 공을 능동적으로 전달하거나 수동적으로(passively) 공이 제어되지 않는 방식으로 전달되게 허용할 수 있다. 배향 제어 서브시스템(24)에서 공을 앞으로 이동시키기 위해, 컨베이어 벨트(60)의 전부 또는 일부가 마찰에 의해 공을 끌어당기기 위해 앞으로 이동한다. 공이 다중 컨베이어 벨트 유닛(60) 내에 있으면 공 상태 감지 시스템(14)은 공의 배향을 추출한다. 그런 다음, 컨베이어 벨트(60)를 서로에 대해 이동시킴으로써 공의 배향은 프로세서(64)에 의한 결정에 기초하여 변경되거나 조작될 수 있다. 서브시스템(24)은 일반적으로 공의 배향을 검출하고, 목표 또는 원하는 배향을 수용 또는 수신하고, 현재 배향과 원하는 배향 사이의 필요한 배향 변경을 결정함으로써 공을 재배향시킨다. 프로세서 또는 처리 유닛(64)은 그 다음 이러한 필요한 방향 변경을 부여할 수 있는 컨베이어 이동의 조합을 결정하고 컨베이어 이동을 부여하기 위해 모터 제어 유닛(62)에 명령을 송신한다. 시스템은 원하는 경우 공이 올바르게 배향되었는지 검사(check)하기 위해 공 상태 감지 시스템(14)을 사용할 수 있다. 도 12는 일반적으로 공을 재배향시키는데 사용되는 하나의 프로세스를 도시한다. 도 10b는 배향 제어 시스템을 위한 예시적인 좌표계를 도시한다.
도 12에 도시된 바와 같이, 원하는 배향이 프로세서(64)에 의해 수신되거나 결정된다(1200). 이 원하는 배향은 공 발사 상태 사양에 기초할 수 있다. 그런 다음, 시스템은 소스로부터 수신된 공의 현재 배향을 결정한다(1202). 그런 다음, 시스템은 현재 배향으로부터 원하는 배향으로 공을 배향시키는데 필요한 컨베이어 이동을 결정한다(1204). 특정 예에서, 목표 또는 원하는 배향은 사용자에 의해 쿼터니언, 오일러 각 세트, 또는 배향을 설명하는 또 다른 방법으로서 입력된다. 목표 또는 원하는 배향은 궤도 선택 인터페이스(34)를 통해 궤도가 이전에 추적된 공의 배향을 복제하여 입력될 수도 있다.
그 다음, 컨베이어 이동은 공이 발사되기 전에 원하는 배향에 있도록 현재 배향으로부터 원하는 배향으로 공을 이동시키거나 배향시키기 위해 공 배향 서브시스템(24)에 신호로서 전송된다(1206).
컨베이어 이동이 공 상에 전달된 후, 시스템은 공의 배향이 원하는 배향에 충분히 가까운지 확인(see)하기 위해(1210) 공의 갱신된 배향을 검사할 수 있다(1208). 그렇지 않다면, 공이 원하는 배향에 더 가까워지게 공이 다시 이동될 수 있도록 추가적인 컨베이어 이동이 프로세서에 의해 결정될 수 있다(1204). 공이 원하는 방향에 충분히 가깝다면, 공은 공 발사 서브시스템(20)에 의해 전달되거나 발사될 수 있다.
예시가 도 11a 내지 11d에 도시되어 있고, 야구공의 원하는 배향이 도 11d에 도시되어 있다고 가정된다. 입력 또는 현재 배향이 도 11a에 도시되어 있으면, 프로세서(64)는 야구공을 현재 배향으로부터 원하는 배향으로 재배향시키는데 필요한 컨베이어 이동을 결정한다. 예를 들어, 프로세서(64)는, 야구공이 발사 전에 원하는 배향으로 배향되도록, 컨베이어 시스템(64)이 야구공을 X축을 중심으로 회전(도 11b)시킨 후, 야구공을 다시 X축을 중심으로 회전(도 11d)시키기 전에 야구공을 Z축을 중심으로 회전(도 11c)시킬 필요가 있다고 결정할 수 있다.
도 11a 내지 도 11d의 시스템에 대해, 일 예시에서, Z축을 중심으로 한 회전은 컨베이어 1을 정지 상태로 유지하고 컨베이어 2 및 3을 반대 방향으로 이동시킴으로써 실행될 수 있다. X축을 중심으로 한 회전은 컨베이어 1을 한 방향으로 이동시키고 컨베이어 2와 3을 반대 방향으로 함께 이동시켜 실행할 수 있다. X-Z-X 컨베이어 이동의 이 예시는 단지 예시일 뿐이며 공 배향 서브시스템(24)이 공을 재배향시킬 수 있는 유일한 방법은 아니다. 또한, 야구공은 이 시스템을 사용하여 재배향될 수 있는 물체의 예시로서 사용될 뿐이다.
또 다른 실시예에서, 공 배향 시스템은 컨베이어 벨트가 아니고 흡입 컵(suction cups)의 세트를 포함할 수 있다. 위에서 논의된 것과 동일한 컨베이어 이동을 전달하기 위해, X축(공 옆) 상의 하나의 흡입 컵은 공을 잡고 X 방향으로 회전할 수 있고, Z축(공 아래) 상의 또 다른 흡입 컵은 공을 잡고 Z 방향으로 회전할 수 있다. 그런 다음, 공 상태 감지 서브시스템(14) 및 프로세서(64)는 위에서 설명된 것과 동일한 방법을 사용하여 공을 초기 임의의 배향으로부터 임의의 원하는 배향으로 이동시키기 위해 X 회전 및 Z 회전의 필요한 조합을 결정할 수 있다. 이 조합은 회전의 X-Z-X 조합 또는 회전의 Z-X-Z 조합을 포함할 수 있다. 마지막으로, 제3(공압 또는 전기) 선형 액추에이터는 (공 뒤에서) 공을 잡고 제어된 속도로 공 발사 서브시스템(20)으로 공을 앞으로 밀어넣을 수 있다.
컨베이어의 정확한 포지셔닝 제어는 공의 정확한 재배향을 초래한다. 이 실시예에서, 이것은 표준 모터 제어 유닛(62)을 사용해 달성될 수 있다. 보다 구체적으로, 스테퍼 모터 구동기를 구비한 스테퍼 모터는 컨베이어 위치를 고정밀도로 제어하는 데 사용될 수 있다.
공 전달 속도 제어에 따라 공 발사 기계로 공이 전달되는 속도의 제어는 다음과 같이 구현될 수 있다. 모든 컨베이어를 동시에 이동함으로써 공은 알려진 속도로 이 기계를 통해 병진적으로 앞뒤로 이동될 수 있다. 도 10a에 도시된 실시예에서, 모든 컨베이어가 동일한 속도로 이동되면 공은 컨베이어의 속도와 동일한 속도로 앞으로 이동할 것이다. 이 방법을 통해 공이 이 기계에 삽입되는 속도가 제어될 수 있다. 컨베이어의 정확한 속도 제어는 위에서 논의된 바와 같이 모터 제어 유닛(62)을 사용하여 달성될 수 있다.
또한, 공과 컨베이어 사이의 접속은 시스템 전체의 정밀도를 향상시킨다. 공 배향 제어 서브시스템(24)은 텐셔너(65) 및 지지대를 더 포함하여 컨베이어(60)와 공 사이의 접촉력을 제어하여 정밀도에 영향을 미치는 컨베이어와 공 사이의 슬립(slip)을 방지하거나 감소시킬 수 있다. 이해되는 바와 같이, 공과 컨베이어 사이의 힘은 공을 투척 기계로 전달하는 데 영향을 미친다. 공과 컨베이어 사이의 힘을 제어하는 요소는 도 13에 도시된다. 도 10a 및 10b에 도시된 바퀴의 상대적 위치는 공에 대한 컨베이어의 힘과 컨베이어 자체의 장력을 모두 결정한다. 추가 장력을 위해 컨베이어 시스템(60)에 추가적인 텐셔너가 추가될 수 있다. 도시된 지지대의 위치는 컨베이어 시스템과 공 사이의 힘에도 영향을 준다.
공 배향 제어 서브시스템(24)은 위에서 논의된 바와 같이 벨트 공급 시스템에 의해, 또는 로봇 팔, 인간에 의한 삽입, 기계 도구 또는 또 다른 장치에 의해 구현될 수 있다. 본 실시예는 본 개시 또는 그의 적용 또는 사용을 어떠한 방식으로든 제한하도록 의도되지 않는다. 설명된 방법은 또한 잠재적인 응용이나 용도를 제한하기 위한 것이 아니다.
기계 정위 및 위치 제어 서브시스템(28)과 관련하여, 도 1d에 개략적으로 도시된 바와 같이, 공 배향 제어 시스템(24)은 공의 초기 배향을 제어하는 장치를 제공하지만, 발사 시 공의 전체 상태는 공의 위치, 배향, 속도, 및 각속도의 조합을 포함한다. 발사 시 공 투척 기계(11) 내에서 공의 국부적 위치는 (공 배향 제어 서브시스템(24)과 관련하여 위에서 설명된 바와 같이) 기계적으로 제어되기 때문에, 그 환경에서 기계의 위치는 그 환경 내에서 공의 발사 위치를 결정한다. 또한, 기계(11)에 대한 공의 국부적 배향은 공 배향 제어 시스템(24)에 의해 제어되기 때문에, 환경에 대한 공의 배향은 기계의 배향에 의존한다.
이 기계에 대한 공의 자세를 제어하고 환경에 대한 기계의 자세를 제어하여 환경에 대한 공의 발사 자세를 제어하는 방법이 이에 의해 설명된다. 여기서 자세라는 용어는 물체의 위치와 배향의 조합을 지칭한다.
일 실시예에서, 기계 정위 및 포지셔닝 제어 서브시스템(28)은 위치 감지 디바이스(70), 환경의 공간적 모델(72), 프로세서(74), 또는 프로세서(30), 액추에이터(76), 및 액추에이터 제어 유닛(78)을 포함한다. 시스템(28)은 또한 피처를 나타내기 위한 마커(80)를 포함할 수 있다. 기계 정위 및 포지셔닝 제어 서브시스템(28)은 공 투척 기계(11)의 위치를 제어함으로써 환경 내에서 공 위치를 제어하는 기능을 수행할 수 있다.
첫째, 위치 감지 디바이스(70) 또는 센서는 환경 또는 환경적 피처에 대한 투구 기계(또는 센서 자체)의 상대적 위치를 검출하기 위해 공 투척 기계(11) 상에 배치될 수 있다. 이러한 센서들은 투구 기계에 근접한 피처 또는 구조물(예컨대, 기둥 또는 나무 등)까지의 거리를 판독하는 레인징 디바이스들 및/또는 이미지 센서의 시야에 대한 피처의 위치를 검출하는 이미지 센서를 포함할 수 있지만, 이에 제한되지는 않는다. 마커(80)는 피처를 나타내거나 그 역할을 하기 위해 환경 내에 배치될 수 있거나 자연 환경 피처가 사용될 수 있다. 그 다음, 프로세서(74)는 환경(72)의 공간적 모델을 활용하여 공간적 모델을 위치 센서 데이터와 비교하여 환경 내에서 공 투척 기계의 위치를 결정할 수 있다.
정위의 대안적인 방법에서, 위치 센서(70)는 알려진 환경 피처의 위치에 배치될 수 있고 공 투척 기계(11) 상의 피처를 검출할 수 있다. 그런 다음, 프로세서(74)는 이러한 위치 판독 값을 환경(72)의 공간적 모델과 비교하여 기계의 자세를 결정할 수 있다. 또 다른 대안적인 방법에서, 예를 들어, GPS(Global Position Sensing), 나침반 및 가속도계 데이터와 같은, 이 기계 상의 GPS 데이터 및 기타 센서 데이터는 환경에 대한 기계의 자세를 결정하기 위해 프로세서(74)에 의해 환경(72)의 공간적 모델과 결합될 수 있다.
특정 투구 기계 실시예에서, 위치 감지 디바이스(70)는 기계(11) 상의 알려진 위치에 배치되는 카메라로서 구현된다. 도 15는 공 투척 기계 상의 카메라의 구성을 나타낸다. 에이프릴 태그로서 구현된 마커(80)는 예를 들어, 홈 플레이트, 1루, 3루와 같은 알려진 환경적 피처 상에 배치되고 공 투척 기계는 투수의 마운드 상에 배치된다. 마커(80)의 포지셔닝의 한 예가 도 16a 및 도 16b에 도시된다. 이러한 마커가 카메라 또는 포지셔닝 감지 디바이스(70)의 시야에 있을 때, 카메라는 투구 기계와 마커 사이의 상대적 위치에 대한 정보를 얻는다. 일 실시예에서, 스테레오스코피는 카메라에서 마커까지의 거리를 결정하는 데 사용되는 반면, 카메라의 이미지 내 마커의 위치는 카메라의 시선에 수직인 평면을 따라 마커의 위치를 결정하는 데 사용된다. 환경의 공간적 모델은 환경의 좌표계에 있는 마커의 알려진 좌표로서 구현된다. 프로세서는 카메라에 의해 판독된 마커의 위치를 공간적 모델과 상관시켜 이 관찰된 데이터를 가장 잘 설명하는 기계 위치를 결정한다.
환경에서 투구 기계의 위치 및 배향의 정확한 측정을 획득하면 이러한 파라미터는 예를 들어, 액추에이터(76) 및 액추에이터 제어 유닛(78)에 의한 것과 같이 물리적으로 제어될 수 있다. 이 기계의 위치와 배향을 제어하면 사용자(또는 선수)를 향한 공의 발사 조건을 추가로 제어할 수 있어 공의 궤적을 추가로 제어할 수 있다. 기계의 위치 및 배향을 제어하기 위해 기계 정위 및 위치 배향 서브시스템(28)은 투구 기계를 병진 및 회전으로 이동시킬 수 있는 장치를 제공한다.
도 17a 내지 17e는, 공 투척 기계(11)의 위치가 1축, 2축 또는 3축 갠트리에 의해 제어되는 반면 기계의 배향은 짐벌에 의해 제어되는 짐벌 및 갠트리 시스템의 일 실시예를 도시한다. 이들은 또한 기계 정위 및 포지셔닝 제어 서브시스템(28)의 컴포넌트일 수 있다. 본 구현에서, 액추에이터 제어 유닛(78)으로서 보여질 수 있는 표준 위치 모터 제어 유닛은 갠트리의 위치 및 짐벌의 배향에 영향을 미친다. 짐벌과 갠트리를 이동시키는 제어 유닛(78)은 기계 정위 및 포지셔닝 제어 서브시스템(28)의 액추에이터(76)를 포함한다. 대안적으로, 시스템은 로봇 팔에 의해 또는 또 다른 방법 또는 장치에 의해 구현될 수 있으며, 이에 의해 액추에이터(76)는 액추에이터 제어 유닛(78)에 의해 제어되는 동안 시스템을 물리적으로 이동시킨다.
일반적으로, 정위 서브시스템(28)은 투척 기계의 실제 자세를 결정하고 사용자로부터 원하는 자세를 수신한다. 실제 자세로부터 원하는 자세로 이동하기 위한 자세의 변화는 프로세서에서 계산된다. 원하는 자세는 사용자에 의해 입력되거나 사용자의 입력에 의해 결정될 수 있다. 그런 다음, 갠트리 시스템 상의 모터는 필요한 위치 변경을 실행하는 반면 짐벌 시스템 상의 모터는 필요한 배향 변경을 실행한다. 그 다음, 정위 시스템(28)은 실제 자세가 원하는 자세에 충분히 가까운지 검사한다. 충분히 가깝지 않은 경우, 시스템은 이 프로세스를 반복한다. 충분히 가까운 경우, 프로세스가 완료된다. 도 18은 위에서 설명된 프로세스의 실시예를 도시한다.
도 18에 도시된 바와 같이, 초기에 투척 기계의 원하는 자세가 결정된다(170). 사용자로부터의 입력에 기초해 원하는 자세가 결정된다. 그런 다음, 투척 기계의 실제 자세가 결정된다(172). 기계를 실제 자세로부터 원하는 자세로 이동하는 데 필요한 짐벌 및 갠트리 이동이 결정된다(174). 그런 다음 이러한 이동은 예를 들어, 신호 형태로 각각의 짐벌 및 갠트리 시스템에 전송된다(176). 그 다음, 이동 후 기계의 갱신된 자세가 결정된다(178). 갱신된 자세가 원하는 자세에 충분히 가깝다고 판단되면, 투척 기계의 이동이 완료된 것으로 볼 수 있지만(180), 그렇지 않은 경우 새로운 짐벌 및 갠트리 이동이 결정된다(174).
기계 정위 및 위치 제어 서브시스템의 또 다른 실시예에서, 기계는 그 환경에서 알려진 시작 위치로 더 간단하게 보정될 수 있다. 그 다음, 정위 시스템(28)은 위치 제어를 달성하기 위해 액추에이터 제어 유닛(78), 액추에이터(76), 및 프로세서(74)를 사용하여 알려지고 보정된 시작 위치에 대해 이동할 수 있다. 예를 들어, 초음파 또는 유도 근접 센서와 같은 센서가 환경에서 알려진 시작 위치로 기계를 보정하는 이 방법에 또한 추가될 수 있다. 이들 센서가 알려진 신호를 제공하는 위치로 기계의 위치를 보정함으로써, 이러한 추가는 정위 시스템(28)이 스스로를 재보정하고 이들 센서로부터의 판독 값을 사용하여 기계의 위치를 결정할 수 있게 할 것이다.
공 속도 및 회전 제어 서브시스템(22)과 관련하여, 공 배향 제어 시스템(24) 및 기계 위치 제어 시스템(28)이 발사 시 공의 위치 및 배향을 제어하는 반면, 공의 발사 속도 및 회전은 공 속도 및 회전 제어 서브시스템(22) 및 공 속도 및 회전 제어 서브시스템과 연관된 방법을 사용하여 제어될 수 있다. 공 속도 및 회전 제어 서브시스템은 또한 공 발사 서브시스템(20)의 일부일 수 있다.
도 19는 3D 회전 및 임의의 출력 속도를 공에 부여할 수 있는 시스템을 도시한다. 이 시스템은 각각 독립적인 속도로 회전할 수 있는 한 세트, 바람직하게는 3개의 바퀴를 포함한다. 각 바퀴는 공의 출구 방향과 바퀴의 회전 방향에 수직인 축을 중심으로 회전하도록 설계되었다. 이 회전은 알파 회전이라고 지칭될 수 있다. 3륜 시스템은 도 20a 및 20b에 디스플레이되며 각 도면은 바퀴의 알파 회전 각도가 다른 기계를 도시한다. 3개의 독립적인 바퀴 속도는 함께 공에 출력 속도와 탑 회전 및 사이드 회전을 부여한다. 바퀴 속도와 함께 알파 회전의 양은 소총 회전으로 알려진 3차원 회전을 공에 부여한다. 공의 요구되는 발사 조건은 이 실시예에서와 같이 바퀴 기반 시스템을 통해, 또는 로봇 팔, 공압 액추에이터 등을 통해 전달될 수 있다는 것을 이해해야 한다.
동작 시, 공 투척 기계(11)는 공 속도 및 회전 제어 서브시스템(22)을 통해 공에 3차원 각속도를 부여할 뿐만 아니라 공 상태 사양 또는 공 발사 명령에 따라 공이 발사될 때 공에 1차원 선형 속도를 부여한다. 위에서 설명된 시스템에 의해 제어되는 공 투척 기계의 배향은 공의 발사 속도의 방향을 결정한다. 공의 3차원 배향은 위에서 설명된 공 배향 제어 시스템에 의해 제어되고, 마지막으로 발사 위치는 위치 제어 시스템(28)에 의한 기계의 위치 제어를 통해 제어된다. 따라서, 공의 발사 상태의 대부분 또는 모든 성분, 즉, 위치, 배향, 속도, 및 선형 속도는 본 개시의 시스템을 사용하여 제어될 수 있다.
폐루프 제어 및 오류 정정 서브시스템(30)과 관련하여, 이 서브시스템(30)은 기계 상태 대 공 상태 매핑 서브시스템(33)을 사용하여 발사 시 공의 상태를 추가로 제어하는 것을 돕기 위해 사용될 수 있다. 서브시스템(30)은 예를 들어, 기계 마모, 외부 환경 요인, 및/또는 공-기계 상호작용의 불완전한 모델과 같은(이에 제한되지는 않음) 요인의 관점에서 공 발사 상태에 대한 오류 정정을 제공하는 것을 도울 수 있다. 이러한 요인들 각각은 공 발사와 관련하여 확률적 또는 계통적 오류에 기여할 수 있다.
일 실시예에서, 오류 정정 서브시스템(30)의 사용은 공 상태 감지 서브시스템(14)이 공 투척 기계(11)와 통합될 것을 요구한다. 이 기계를 평가하기 위해 공 추적 기술이 공 투척 기계와 함께 사용되었지만, 본 개시에서 공 상태 감지 서브시스템(14)은 일 양상에서 오류 정정을 위해 사용되고 있다. 정밀한 궤적 제어의 궁극적인 목적을 위해 오류 정정 및 폐루프 제어를 위해 공 상태 감지를 공 투척 기계에 통합하는 방법이 여기에서 논의된다.
특정 공 상태를 부여하거나 생성하기 위해 기계의 상태가 설정되는 방법에 대한 초기 모델이 초기에 공식화된다. 이 모델은 기계 상태 대 공 상태 매핑 서브시스템(33)의 초기 상태를 구성한다. 이 모델의 파라미터는 실험 데이터에 의해, 이론적인 물리적 모델에 의해, 또는 이들의 조합에 의해 통지될 수 있다. 일 실시예에서, 공 투척 기계의 상태가 출력 공 상태를 초래하거나 영향을 미치는 방법을 결정하기 위해 이론적인 물리학 모델이 개발된다. 일 실시예에서, 초기 모델의 일부 파라미터는 가변적으로 만들어지며, 기계의 수명 전반에 걸쳐 폐루프 제어 시스템(30)은 예를 들어, 통계적 회귀 또는 경사 하강법에 의한 것과 같이 오류를 최소화하거나 감소시키기 위해 이러한 파라미터를 갱신한다. 이 프로세스는 다른 방식으로 구현될 수 있다. 기계 상태 대 공 상태 매핑 서브시스템(33)은 원하는 공 상태가 주어진 기계 상태의 제어와 기계 상태가 주어진 공 상태의 예측 모두를 허용하는 양방향 모델일 수 있다. 기계 상태 대 공 상태 매핑 서브시스템(33)이 단방향일 수도 있다.
그런 다음, 이 기계에 통합되거나 기계와 함께 사용되는 공 상태 감지 시스템(14)은 이 모델에서의 오류를 검출하는 데 사용된다. 공이 발사되면, 모델은 예상 출력 공 상태를 결정하는 반면, 공 상태 서브시스템(14)은 실제 출력 공 상태를 결정하며, 오류는 실제 출력 공 상태와 예상 출력 공 상태 간의 차이로서 정의된다. 그런 다음, 폐루프 제어 및 오류 정정 서브시스템(30)은 이 오류를 최소화하거나 감소시킬 목적으로 초기 모델의 파라미터를 수정한다.
시스템의 다음 예시적인 실시예에서, 본 개시는 야구공이 발사되게 하는 3륜 기계 야구 투구 기계에 관한 것이다.
바퀴 속도와 바퀴 각도를 공의 출력 속도 및 회전과 관련시키기 위해 이론적인 모델이 개발된다. 그러한 모델의 예가 도 21에 도시된다.
이 기계가 동작 중이고 예상 및 실제 출력 공 상태의 데이터가 기록됨에 따라 오류가 메모리에 저장된다. 그런 다음, 동작 전반에 걸쳐 모델의 파라미터는 오류를 최소화하거나 감소시키는 방식으로 데이터에 다시 피팅(re-fit)된다. 이 회귀 프로세스를 사용하면 현재의 공 투척 기계에 비해 본 시스템에 대해 장점을 제공한다.
일 실시예에서, 이것은 최소 자승 회귀에 의해 달성될 수 있다. 대안적으로, 이것은 데이터에 대한 피드-포워드 신경망을 훈련하고 경사 하강법 또는 기타 최적화 기술에 의해 신경망의 파라미터를 지속적으로 갱신함으로써 결정될 수도 있다. 도 22는 과거의 공 투척으로부터 수집된 오류 데이터를 사용하여 기계 파라미터를 갱신하는 프로세스를 도시한다. 도 23은 이 프로세스의 수학적 공식화를 보여준다.
도 22의 흐름도와 관련하여, 초기에, 기계 상태 대 공 상태 매핑 모델(33) 내의 조정 가능한 파라미터 P의 세트가 선택된다(210). 그런 다음, 예를 들어, 발사의 공 투척의 예상 결과 및 실제 결과를 측정함으로써(214) 발사된 공으로부터 데이터가 수집된다(212). 그런 다음, 실제 출력(실제 공 투척의 공 상태)과 예상 출력(공 투척의 원하는 공 상태) 간의 차이로서 보여질 수 있는 수 있는 오류 E가 계산될 수 있다. 오류의 기울기는 파라미터에 대해 결정된다(216). 이것은 dE/dP로서 보여질 수 있다. 마지막으로 파라미터 P는 오류의 기울기로 파라미터를 처리하여 갱신된다. 예를 들어, b(dE/dP)의 값은 파라미터 P로부터 감산될 수 있으며, 여기서 b는 임의의 상수이다.
공 상태 대 궤적 서브시스템(32)은 출력 공 상태와 결과적인 궤적을 매핑하는 기능을 제공한다. 이 기능의 한 가지 장점은 궤적 제어를 향상시키는 것이다.
공 상태 대 궤적 서브시스템(32)에 의해 생성된 공 상태 대 궤적 매핑은 공의 상태가 주어지면 공의 궤적을 예측할 수 있고, 공의 궤적이 주어지면 공 상태의 인스턴스를 예측하거나, 이들의 임의의 조합을 예측할 수 있다. 이 매핑은 공의 이동에 대한 공기역학적 모델, 신경망, 또는 기타 방법의 형태를 취할 수 있고, 물리학 모델을 사용하여 이론적으로 결정할 수 있으며, 신경망에서와 같이 공의 이동에 대한 일련의 관찰에 대해 피팅(fit)될 수 있거나, 또는 이들의 일부 조합에 의해 수행될 수 있다. 일 실시예에서, 공 상태와 궤적을 관련시키는 모델은 공의 이동에 대한 많은 관찰에 대해 피팅된다. 일 실시예에서 매핑은 공의 상태를 입력으로 받아들이고 공의 궤적을 출력하거나 공의 궤적을 입력으로 취하고 공의 발사 상태를 출력하는 신경망의 형태를 취한다. 공 상태 대 궤적 서브시스템(32)에 의해 생성된 공 상태 대 궤적 매핑은 양방향 모델일 수 있다. 이 서브시스템은 공 상태와 환경 파라미터의 조합이 주어지면 궤적을 예측할 수 있다. 이 서브시스템은 또한 주어진 궤적과 공 상태 및 환경 파라미터의 조합이 주어졌을 때 공 상태를 예측할 수 있다. 공 상태 대 궤적 매핑 서브시스템(32)이 단방향일 수도 있다.
일 실시예에서, 공의 상태를 궤적과 관련시키는 다른 모델이, 사용되는 모든 다른 유형의 공에 대해 학습된다. 이 매핑은 기계의 상태와 무관하므로, 기계 마모 및 기타 요인에도 영향을 받지 않으므로 시간이 지남에 따라 더욱 강력해질 수 있다. 본 개시의 한 가지 장점은 모델이 각 공 유형에 대해 한 번 학습되고 거의 재학습되지 않는다는 것이다.
궤적 및 공 발사 선택 인터페이스(34)와 관련하여, 인터페이스는 사용자가 공 투척 기계로부터 발사될 공에 대해 원하는 궤적을 선택할 수 있게 한다. 인터페이스는 사용자가 예를 들어, 공의 발사 조건, 공이 발사 후 공이 따라가는 경로, 공이 발사 경로를 따라가는 공의 외관과 같이 발사되고 있는 공의 원하는 성분 또는 특성을 명시하는 방식을 용이하게 한다. 본 명세서에 사용된 바와 같이, 궤적이라는 용어는 발사 후 공이 따르는 경로와 공이 발사 경로를 따를 때 공의 외관의 임의의 조합을 지칭한다. 이러한 인터페이스를 구현하는 몇 가지 방법이 논의된다.
일 실시예에서, 공 발사에 대한 원하는 특성과 관련하여 사용자로부터 입력을 수신한 후, 인터페이스(34)는 복제될 궤적을 나타내는 가상 3D 공간에서 궤적을 생성한다. 인터페이스(34)는 또한 예를 들어, 데이터베이스에 저장된 것과 같은 이전에 추적된 궤적을 선택함으로써 가상 궤적을 생성할 수 있다. 이 데이터베이스는 이 기계가 재생할 수 있는 과거의 추적된 궤적 또는 시뮬레이션된 궤적 중의 궤적을 포함하는 외부 데이터베이스로서 구현될 수 있다. 그런 다음 원하는 경우 이 궤적들은 사용자에게 디스플레이될 수 있다. 인터페이스(34)의 이러한 예는 본 개시 또는 그 잠재적인 응용 또는 사용을 어떤 식으로든 제한하도록 의도되지 않는다. 이러한 포함된 인터페이스를 통해 사용자는 임의의 주어진 공 유형에 대해, 공의 출력 상태 제어를 선택하고, 출력 경로의 파라미터를 선택하고, 복제할 이전에 추적한 궤적 및 이들의 조합을 선택할 수 있다.
또 다른 실시예에서, 궤도 선택 인터페이스(34)는 제어할 궤도 파라미터를 선택하는 방법을 구현하거나 수행한다. 이 실시예는 사용자가 이해할 수 있는 방식으로 궤적을 파라미터화하고 선택을 위해 이러한 파라미터를 사용자에게 제시하는 것을 포함한다.
일 실시예에서, 이들 파라미터는 목록 또는 목록들로, 또는 개별 단계에서 하나씩 선택함으로써 사용자에게 제시될 수 있다. 도 24는, 공의 경로를 명시하기 위해 공이 통과해야 하는 3개의 점과 공이 이동할 때 공의 외관을 명시하기 위해 공이 시작해야 하는 배향을, 궤적을 설명하는 파라미터가 포함하는 인터페이스를 도시한다. 일 실시예에서, 3개의 점은 궤적의 시작점, 궤적의 끝점 및 시작점과 끝점 사이의 궤적 경로를 따른 점을 포함할 수 있다. 임의의 수의 점이 사용될 수 있음을 이해한다. 궤적을 완전히 명시하기 위해 불충분한 데이터가 제공되는 경우, 사양에 맞는 여러 궤적들 중 하나가 사용될 수 있다.
과도한 입력 제약이 제공되면 사양을 충족하는 궤적이 없을 수 있다. 이 경우, 사용자는 주어진 공 유형에 대해 궤적이 유효하지 않다는 통지를 받거나 유사한 사양의 보다 실현 가능한 궤적이 사용될 수 있다. 이 예에서 사용자는 세 점 모두의 3차원 좌표와 초기 공 배향의 롤(roll), 피치(pitch) 및 요(yaw)를 명시한다. 그런 다음, 계획된 궤적은 사용자에 의해 확인(confirm)되도록 발사 전에 사용자에게 디스플레이된다.
예를 들어, 출력 속도 및 회전과 같은 공 발사의 임의의 파라미터; 예를 들어, 발사 후 주어진 시간의 위치와 같은 공의 경로의 임의의 파라미터; 또는 예를 들어, 공이 공의 경로를 따라갈 때 공의 시각적 피처의 배향과 같은 공의 외관의 임의의 파라미터는 원하는 투척 사양의 일부로서 선택될 수 있는 파라미터를 구성할 수 있다. 도 27은 또한 사용자가 생성될 공 발사 조건의 다양한 파라미터를 선택할 수 있는 인터페이스의 예를 도시한다. 이 예에서 이러한 파라미터는 속도, 회전 속도, 회전 축, 릴리스 위치, 최종 위치, 공 배향 및 릴리스 각도(롤에만 제한되지 않고 피치 및 요)를 포함하지만 이에 제한되지는 않는다. 인터페이스는 발사 전에 사용자에게 궤적의 어떤 양상도 디스플레이할 필요가 없지만, 본 실시예에서는 경로와 외관이 사용자에게 독립적으로 디스플레이된다. 전체 궤적은 공이 궤적을 따라 이동할 때 공의 애니메이션으로 확인할 수 있도록 사용자에게 디스플레이될 수도 있다.
궤적 선택 인터페이스(34)의 또 다른 실시예에서, 사용자는 공 투척 기계에 의해 발사되도록 궤적을 선택하기 전에 가상 3D 공간 내에서 궤적을 시뮬레이션하는 기능을 제공받는다. 이 예에서 사용자는, 예를 들어, 터치 스크린, 스타일러스, 마우스, 터치 패드 등을 통해 공이 3D 입력 상자 내에서 따르기를 원하는 경로를 그릴 수 있다. 3D 입력 내로의 다수의 2D 창은 사용 편의성을 위해 구현될 수도 있다. 궤적 선택 인터페이스(34)는 또한 공이 명시된 경로를 따를 때 공의 원하는 외관을 사용자가 시각적으로 제어할 수 있는 기능을 제공한다. 이것은 사용자가 공의 입력 배향을 이동하고 결과적인 공 외관을 볼 수 있게 함으로써 달성될 수 있다. 본 실시예에 대한 궤적 선택 인터페이스(34)의 개략도가 도 25에 도시되어 있다.
추가 실시예에서, 궤적 선택 인터페이스(34)는 사용자가 복제될 이전에 추적된 궤적 또는 공 발사를 선택하는 기능을 제공할 수 있다. 이 실시예에서, 인터페이스(34)는 사용자에게 이전에 추적된 공의 궤적을 디스플레이한다. 이것들은 데이터베이스에 저장될 수 있다. 한 예에서 사용자는 전체 데이터베이스를 보고 공을 발사할 과거 궤적을 선택하기만 하면 된다. 인터페이스는 또한 사용자가 궤적의 다양한 파라미터를 선택할 수 있도록 할 수 있으며, 이에 의해 인터페이스는 사용자 선택에 대한 적절한 매칭에 대해 데이터베이스를 검색한다. 그런 다음 사용자는 자신의 검색과 매칭하는 궤적의 서브세트로부터 선택하라고 프롬프트(prompt)된다. 검색 파라미터의 예는 궤적의 초기 위치, 중간 위치, 또는 최종 위치; 궤적을 생성한 사람, 조직, 또는 기계; 궤도가 추적된 시간 또는 날짜; 및 임의의 점에서의 궤적의 속도, 각속도, 또는 외관을 포함하지만 이에 제한되지는 않는다. 본 예에서, 사용자는 발사할 단일 궤적을 선택할 수 있거나, 임의의 순서로 발사될 궤적 세트를 선택할 수 있거나, 무작위 궤적이 발사될 수 있는 궤적 세트를 선택할 수 있다. 도 26a는 사용자가 복제할 이전에 추적된 궤적을 선택할 수 있는 인터페이스를 도시한다. 도 26b는 사용자가 복제를 위해 추적된 궤적의 데이터베이스를 필터링할 수 있게 하는 인터페이스를 도시한다.
궤적 및 공 발사 인터페이스는 또한 사용자에게 선별된 궤적 세트로부터 궤적 또는 궤적들을 선택할 수 있는 기능을 제공할 수 있다. 이러한 선별된 궤적 세트는 인간(예컨대, 상대 선수)에 의해 생성될 수 있는 궤적 세트를 시뮬레이션하거나 발사된 공 또는 물체와 상호작용하는 사용자의 능력의 특정 개선을 목표로 하는 것을 포함하지만 이에 제한되지는 않는 목적을 위해 수동 또는 알고리즘적으로 생성될 수 있다. 도 28은 야구 훈련의 맥락에서 선별된 궤적 목록을 도시하는 개략적인 스크린샷이다. 이 예의 궤적은 레크리에이션, 운동 훈련 또는 기타 목적을 위해 선별될 수 있다. 도 29는 야구 훈련의 특정 맥락에서 특정 인간에 의해 생성될 수 있는 궤적 세트를 시뮬레이션하기 위한 궤적의 선별된 목록을 예시하는 개략적인 스크린샷이다.
알고리즘적으로 생성된 목록은 미래에 투척될 가능성이 있는 것을 시뮬레이션하기 위해 알려진 조건에서(즉, 알려진 게임 조건에서, 알려진 상대에 대항해, 또는 기타 조건에서) 인간에 의해 생성된 시뮬레이션된 또는 과거 추적된 투구를 집계하여 달성할 수 있다. 알고리즘적으로 생성된 목록은 궤적의 조건 세트와 매칭하는 시뮬레이션된 또는 과거 추적된 투구를 집계하여 달성될 수도 있다. 일례로, 야구 분야에서 이러한 알고리즘은 예를 들어, 특정 타자에 대항해, 특정 투구 수에서 또는 기타 조건과 같은 특정 게임 조건에서 투구 세트를 집계하여 인간 투수를 시뮬레이션한다. 야구 분야의 또 다른 예에서, 이러한 알고리즘은 예를 들어, 특정 투구 유형(패스트볼, 커브볼 등), 스트라이크 존 주변의 특정 위치, 특정 릴리스 위치 또는 기타 궤적 조건 또는 이들의 조합과 같이 타자가 개선하고자 하는 조건과 매칭하는 투구를 집계함으로써 타자 능력의 특정 개선을 목표로 한다.
결과 추적 서브시스템(15)은 시스템에 의해 생성된 궤적 또는 발사된 공과의 상호작용의 결과를 추적하는 능력을 사용자에게 제공한다. 서브시스템(15)은, 하나 이상의 발사된 공과의 사용자 상호작용 결과에 기초하여 보고서를 생성하는 것; 하나 이상의 발사된 공과의 사용자 상호작용의 결과에 기초하여 분석을 생성하는 것 또는 하나 이상의 발사된 공과의 사용자 상호작용의 결과에 기초하여 훈련 추천을 생성하는 것 중 적어도 하나를 수행할 수 있다.
이러한 상호작용 또는 결과는 수동으로 또는 외부 자동 측정 시스템을 사용하여 추적될 수 있다. 그런 다음, 결과를 집계 및 분석할 수 있도록 결과가 데이터베이스에 저장될 수 있다. 시스템(10)에 의해 생성된 제어된 궤적 상호작용과 결과 추적의 통합은 공 투척 기계를 사용하는 경험의 개선을 구성한다. 사용자와 생성된 궤적(또는 발사된 공) 사이의 상호작용은 결과 추적 서브시스템(15)의 결과 추적 디바이스(38)에 의해 추적되고 결과 추적 서브시스템(15)의 데이터베이스(40)에 저장된다. 결과 추적 디바이스는 생성된 궤적 또는 발사된 공과의 사용자의 상호작용, 예를 들어, 궤적 또는 발사된 공과 상호작용할 준비를 할 때, 궤적 또는 발사된 공과 상호작용하는 동안, 그리고 그것과 상호작용한 후에 사용자의 생체역학을 측정하는 임의의 감지 디바이스로서 구현될 수 있다. 결과 추적 디바이스는 또한 사용자와 공의 상호작용 결과가 무엇이었는지(즉, 사용자가 공을 쳤는지 놓쳤는지, 그리고 그 후에 공이 어디로 갔는지) 측정하는 감지 디바이스로서 구현될 수 있다. 마지막으로, 결과 추적 디바이스는 궤적과의 사용자의 상호작용 결과에 대한 정보를 인간이 입력할 수 있는 인터페이스로서 구현될 수 있다. 결과 추적 시스템(15)은 인터페이스(13) 내에 통합될 수 있거나 이 인터페이스와 독립적일 수 있다. 결과 추적 서브시스템의 일 실시예에서, 인터페이스(13)는 궤적이 기계로부터 생성된 후 공 상호작용의 결과를 입력하도록 인간에게 프롬프트한다. 도 30a 및 30b는 이 실시예의 구현의 개략적인 스크린샷을 제공한다. 도 30a는, 인간이 인터페이스에서 "발사(Fire)" 버튼을 눌러 기계가 선택된 궤적이나 발사된 공을 생성하도록 프롬프트한 다음, 도 30b에 개략적으로 도시된 팝업 화면은, 사용자가 공을 쳤는지, 놓쳤는지, 파울을 쳤는지, 스윙하지 않았는지를 입력하도록 인간에게 프롬프트하는 것을 도시한다. 이 예는 야구 훈련의 특정 맥락에서 제공된다. 이 예에서, 결과 추적 서브시스템(15)은 인터페이스(13) 내에 있지만, 예를 들어, 센서와 같은 자동 결과 추적 디바이스는 사람이 결과를 입력해야 하는 요건을 제거하고 따라서 사람의 입력 방법에 대한 필요성을 제거한다.
결과 추적 서브시스템(15)은 또한 시스템이 사용자에게 기계 사용 및 알려진 공 궤적과의 상호작용에 대한 분석을 제공함으로써 사용자 경험을 개선할 수 있도록 한다. 결과 추적 인터페이스(36)는 기계에 의해 생성된 궤적과의 상호작용과 관련된 사용자 정보를 보여주기 위해 결과 추적 서브시스템(15)으로부터의 정보를 활용한다. 일 실시예에서, 결과 추적 인터페이스(36)는 사용자가 기계를 사용할 때 실시간으로 궤적과의 상호작용에 대한 사용자 통계를 보여준다. 도 31은 야구 훈련의 맥락에서 그러한 인터페이스의 예를 도시하며, 사용자에게는, 생성된 궤적 수(투구 수), 자신이 야구 방망이와 접촉한 궤적 수, 자신이 놓친 궤적 수 및 더 많은 정보가 보여진다. 이 예는 또한 사용자에게 스트라이크 존의 다양한 위치에 있는 투구에 대한 자신의 타율과 다양한 투구 유형에 대한 자신의 타율을 보여준다. 이 인터페이스는 또한 기계를 사용한 후 생성된 궤적과의 상호작용에 대한 정보를 사용자에게 디스플레이하는 보고서를 생성할 수 있다.
결과 추적 서브시스템(15)은 추가 검토 또는 처리를 위한 분석 데이터 또는 기타 정보의 세트를 생성하기 위해 공 발사의 일부 또는 전부를 추적하는 기능을 제공할 수 있다. 일 실시예에서, 서브시스템(15)은 선택된 공 발사 궤적에 대한 타자 게임플레이 결과(안타, 파울, 볼)를 추적할 수 있다. 이 서브시스템의 다른 실시예는 예를 들어, 인간 생체역학(궤적 상호작용 전, 중 및 후); 물리적 물체 상호작용(예컨대, 방망이-공 상호작용 추적); 및/또는 게임 플레이 결과와 같은, 하지만 이에 제한되지는 않는, 다른 기준을 추적하는 것을 포함할 수 있다. 결과 추적 서브시스템은 수동 또는 자동 감지 기술의 임의의 조합을 사용할 수 있다. 그런 다음, 이 정보는 사용자 데이터베이스에 저장된다.
도 3을 참조하면, 사용자 입력이 주어진 서브시스템 통신 방법의 흐름도가 제공된다. 일 실시예에서, 사용자는 원하는 궤적 또는 공 발사 상태의 파라미터 또는 특성을 입력하기 위해 궤적 선택 인터페이스(34)와 상호작용한다. 도 3은 사용자가 원하는 공 발사 출력을 선택, 입력 및/또는 결정할 수 있는 방법의 두 가지 예시를 포함한다. 두 가지 예시적인 방법 모두 궤적 선택 인터페이스(34)를 사용하며, 이는 사용자가 공이 공 투척 기계(11)로부터 투척될 때 공 발사의 원하는 피처를 명시할 수 있게 한다. 한 예에서, 이것은 릴리스 후 공의 경로 선택, 공의 경로 전체에서 공의 외관 선택, 위에서 약술된 공의 발사 조건 선택 중 적어도 하나를 포함할 수 있다. 이러한 파라미터 또는 특성은 인터페이스(34)로부터 직접 선택될 수 있거나 데이터베이스 궤적이 예를 들어, 전술된 바와 같이 복제되도록 선택될 수 있다.
하나의 방법(도 3, 예시 A 참조)에서, 사용자는 시스템(10)에 의해 수신되는 궤적 선택 인터페이스(34)를 통해 궤적 사양을 제출한다. 그 후, 시스템은 발사된 공이 사용자에 의해 입력되거나 선택된 바와 같이 원하는 사양을 따르게 하도록 공 발사 상태 사양을 결정하거나 생성하기 위해 공 상태 대 궤적 매핑 서브시스템(32)을 통해 궤적 사양(프로세서(26)를 통해 또는 제어기(미도시) 내의 프로세서를 통해)을 처리한다. 그 후, 이러한 공 발사 상태 사양은 요구되는 공 발사를 생성하도록 자기 자신을 구성하는 방법을 공 투척 기계(11)에 알리기 위해 기계 상태 대 공 상태 매핑 서브시스템에 의해 전송된다. 그런 다음, 구성되고 배향된 공은 공 투척 기계(또는 공 발사 서브시스템)에 의해 발사된다. 대안적으로, 또 다른 방법(도 3, 예시 B 참조)에서, 사용자는 공 발사 상태 사양을 궤적 선택 인터페이스(34)에 직접 입력하고 이러한 공 발사 상태 사양은 기계 상태 대 공 상태 매핑 서브시스템을 통해 공 투척 기계(11)로 전송된다.
도 2를 참조하면, 공을 발사하는 방법을 약술하는 흐름도가 도시되어 있다. 도 4는 본 실시예 내에서 그러한 방법을 위한 서브시스템 통신을 도시한다. 예를 들어, 궤적 선택 인터페이스(34)를 통해와 같이 사용자로부터 공 상태 사양, 궤적 사양 또는 입력을 수신(300)한 후, 사양은 제어기(12)에 의해 공 발사 명령(머신의 목표 상태 포함)으로 처리된다(302). 그 후, 이러한 공 발사 명령은 공 상태 사양에 기초하여 발사를 위해 공을 준비하기 위해 제어기(12)를 통해 이 장치의 다양한 서브시스템(304)으로 전송된다.
그 후, 투척될 공은 바람직하게는 궤적 정보를 포함하는 공 발사 명령에 따라 시스템에 의해 조작된다(306). 예를 들어, 공 배향 제어 서브시스템(24)은 공 발사 명령을 수신한 다음 소스로부터 공을 조작하여 전술한 바와 같은 원하는 배향으로 공을 배향시킬 수 있다. 기계 정위 및 위치 제어 서브시스템은 또한 공 발사 명령을 수신하고 공 발사 명령에 기초해 기계를 재배향시킬 수 있다. 공 속도 및 회전 제어 서브시스템(22)은 또한 공이 발사될 때 공에 부여하기 위해 필요한 속도 및 회전을 이해하기 위해 공 발사 명령을 수신할 수 있다.
그 후, 공은 공 속도 및 회전 제어 서브시스템(22)의 도움으로 공 발사 서브시스템을 통해 발사된다(308).
원하는 경우, 시스템에 오류 정정을 제공하거나 향후 선택을 위해 데이터베이스에 궤도를 저장하기 위해 위에서 논의된 바와 같이 공 궤적 및 기타 발사 후 기준이 모니터링될 수 있다(310). 또한, 다른 결과 기반 기준이 시스템(312)에 저장되어 결과 추적 인터페이스(36)를 통해 사용자에게 디스플레이될 수 있다.
도 5는 공 발사가 제어기에 의해 수신된 기계 상태 사양에 기초하는 공 발사를 수행하는 또 다른 방법에 관한 것이다. 공 투척 기계(11)는 공 발사 명령을 수신하고 원하는 사양을 갖는 기계 상태를 생성한다. 공 상태 사양 또는 사용자 입력을 수신한 후, 시스템은 공 상태, 공 발사, 사양 또는 사양들을 처리하여 공 발사 명령으로서 보여질 수 있는, 공 투척 기계에 전송하기 위한 신호를 생성한다.
일 실시예에서, 공 발사 제어 시스템은 원하는 발사 조건을 부여하기 위해 요구되는 기계 파라미터를 결정하는 폐루프 제어 및 오류 정정 시스템(30)을 포함한다. 공 상태 사양에 따라 공이 발사될 수 있도록 하기 위한 기계 파라미터를 결정한 후, 이러한 파라미터는 공 발사 명령 세트를 통해 프로세서(26)에 전송된다.
공이 기계에 의해 발사된 후, 공 상태 감지 서브시스템(14)은 실제 출력(공 발사)을 측정하고 발생할 수 있는 임의의 오류를 수정하기 위해 자체 갱신할 수 있다.
도 4에 도시된 바와 같이 기계의 물리적 컴포넌트는 폐루프 제어 시스템(30)에 의해 명시된 필수 기계 파라미터 또는 공 발사 명령을 실현한다. 동작 시, 투구 기계(11)는 필요한 또는 원하는 방식으로 자신을 물리적으로 이동하고 배향시키기 위해 정위 및 포지셔닝 시스템(28)을 사용한다. 투구 위치에서 배향한 후, 투구 기계 또는 시스템은 공을 수용하여 공 배향 제어 시스템(24)이 공을 원하는 배향으로 재배향시킨다. 공 속도 및 회전 제어 시스템(22)은 공이 발사될 때 필요한 속도와 회전을 공에 부여한다.
위에서 약술된 바와 같이, 공 상태 검출 시스템(14)은 또한 이중 기능을 가질 수 있도록 투구 기계에 의해 수용되는 공의 배향을 검출하고 제어하는 데 사용될 수 있다. 위에서 약술된 바와 같이, 공 상태 검출 시스템(14)은 또한 폐루프 제어 시스템(30)에 알리기 위해 발사 시 공의 상태를 결정할 수 있다.
이러한 서브시스템의 제시된 구성은 설명된 시스템이 구현될 수 있는 한 가지 방법만을 구성한다. 이 예는 그러한 시스템의 잠재적인 실시예를 제한하기 위한 것이 아니며 설명된 컴포넌트의 가능한 사용 또는 응용을 제한하기 위한 것도 아니다. 각 컴포넌트는 위의 시스템에서 사용되는 것과 독립적인 용도를 가질 수 있다. 또한, 전체 공 투척 시스템은 위에서 설명한 컴포넌트의 서브세트 또는 재배열을 사용하여 구현될 수 있다.
본 개시는 바람직한 실시예 및 이의 특정 예를 참조하여 본 명세서에서 예시되고 설명되었지만, 다른 실시예 및 예가 유사한 기능을 수행하고 그리고/또는 유사한 결과를 달성할 수 있다는 것은 당업자에게 용이하게 명백할 것이다. 이러한 모든 등가 실시예 및 예는 본 개시의 사상 및 범위 내에 있다.
이전의 설명에서, 설명의 목적을 위해, 실시예의 완전한 이해를 제공하기 위해 많은 세부사항이 제시된다. 그러나 이러한 특정 세부사항이 요구되지 않을 수 있다는 것은 당업자에게 명백할 것이다. 다른 경우에, 이해를 모호하게 하지 않기 위해 잘 알려진 구조가 블록도 형태로 도시될 수 있다. 예를 들어, 여기에 설명된 실시예의 요소가 소프트웨어 루틴, 하드웨어 회로, 펌웨어, 또는 이들의 조합으로 구현되는지 여부에 대한 특정 세부사항은 제공되지 않는다.
본 개시 또는 그 컴포넌트는 기계 판독가능 매체(컴퓨터 판독 가능 매체, 프로세서 판독 가능 매체, 또는 컴퓨터 판독 가능 프로그램 코드가 그 내부에 구현된 컴퓨터 사용 가능 매체라고도 함)에 저장된 컴퓨터 프로그램 제품으로서 제공되거나 그로서 표현될 수 있다. 기계 판독가능 매체는 디스켓, CD-ROM(compact disk read only memory), 메모리 디바이스(휘발성 또는 비휘발성) 또는 유사한 저장 메커니즘을 포함하는 자기, 광학 또는 전기 저장 매체를 포함하는 임의의 적합한 유형의(tangible) 비일시적 매체일 수 있다. 기계 판독 가능 매체는 다양한 세트의 명령어, 코드 시퀀스, 구성 정보, 또는 다른 데이터를 포함할 수 있으며, 이는 실행될 때 프로세서 또는 제어기가 본 개시의 실시예에 따른 방법의 단계를 수행하게 한다. 당업자는 설명된 구현예를 구현하는 데 필요한 다른 명령어 및 동작이 또한 기계 판독 가능 매체 상에 저장될 수 있음을 이해할 것이다. 기계 판독 가능 매체 상에 저장된 명령어는 프로세서, 제어기 또는 기타 적절한 처리 디바이스에 의해 실행될 수 있고 설명된 작업을 수행하기 위해 회로와 인터페이싱할 수 있다.

Claims (21)

  1. 공 궤적을 복제하기 위한 시스템에 있어서,
    공 투척 기계 ― 상기 공 투척 기계는,
    공 상태 감지 장치;
    공 배향 제어 장치;
    기계 정위(localization) 및 위치 제어 장치; 및
    공 속도 및 회전 제어 장치를 포함함 ―;
    상기 공 투척 기계를 제어하기 위한 제어기 ― 상기 제어기는 기계 상태 대 공 릴리스(release) 상태 매핑 또는 공 상태 대 궤적 매핑 또는 이들의 조합을 포함함 ―;
    사용자가 상기 공 투척 기계에 의해 생성될 공 릴리스 상태 또는 궤적을 나타내는 공 발사 입력치(inputs)를 입력하기 위한 상기 제어기와 연관된 인터페이스; 및
    처리 유닛
    을 포함하는, 공 궤적을 복제하기 위한 시스템.
  2. 제1항에 있어서,
    결과 추적 장치를 더 포함하는, 공 궤적을 복제하기 위한 시스템.
  3. 제1항에 있어서,
    폐루프 제어 및 오류 정정 장치를 더 포함하는, 공 궤적을 복제하기 위한 시스템.
  4. 제1항에 있어서, 상기 공 상태 감지 장치는,
    카메라의 세트; 및
    센서의 세트
    를 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  5. 제4항에 있어서,
    상기 공 상태 감지 장치는 측정 디바이스의 세트를 더 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  6. 제1항에 있어서, 상기 공 배향 제어 장치는,
    컨베이어 시스템; 및
    상기 컨베이어 시스템을 제어하기 위한 모터 제어 유닛
    을 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  7. 제6항에 있어서,
    상기 공 배향 장치는 텐셔너(tensioners)의 세트를 더 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  8. 제1항에 있어서, 상기 기계 정위 및 위치 제어 장치는,
    위치 감지 디바이스의 세트;
    액추에이터의 세트; 및
    작동 유닛
    을 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  9. 제8항에 있어서, 상기 기계 정위 및 위치 제어 장치는,
    모션 제어 시스템을 더 포함하는 것인, 공 궤적을 복제하기 위한 시스템.
  10. 자동화된 물체 투척 방법에 있어서,
    사용자 입력을 수신하는 단계;
    물체 발사 명령을 생성하도록 상기 사용자 입력을 처리하는 단계 ― 상기 물체 발사 명령은 발사된 물체에 대한 궤적 경로 또는 공 발사 조건의 궤적 특성을 포함하고, 상기 궤적 특성은 상기 궤적 경로의 시작점, 상기 궤적 경로의 끝점, 및 속도, 회전 속도, 회전 축, 릴리스 위치, 최종 위치, 공 배향 및 릴리스 각도 중 적어도 하나를 포함하는 상기 공 발사 조건을 포함함 ―; 및
    발사하기 위해 상기 물체를 준비하도록 상기 물체 발사 명령을 수행하는 단계
    를 포함하는, 자동화된 물체 투척 방법.
  11. 제10항에 있어서
    상기 물체를 발사하는 단계를 더 포함하는, 자동화된 물체 투척 방법.
  12. 제11항에 있어서,
    발사 후 물체 궤적을 모니터링하는 단계;
    발사 후 물체 궤적을 예상 물체 궤적과 비교하는 단계; 및
    발사 후 물체 궤적을 예상 물체 궤적과 비교하는 단계에 기초해 오류 정정을 수행하는 단계
    를 더 포함하는, 자동화된 물체 투척 방법.
  13. 제10항에 있어서, 발사하기 위해 상기 물체를 준비하도록 상기 물체 발사 명령을 수행하는 단계는,
    상기 물체 발사 명령에 기초하여 실제 배향으로부터 원하는 배향으로 상기 물체를 재배향시키는 단계를 포함하는 것인, 자동화된 물체 투척 방법.
  14. 제10항에 있어서, 발사하기 위해 상기 물체를 준비하도록 상기 물체 발사 명령을 수행하는 단계는,
    상기 물체 발사 명령에 기초하여 실제 자세로부터 원하는 자세로 물체 발사 기계를 재배향시키는 단계를 포함하는 것인, 자동화된 물체 투척 방법.
  15. 제10항에 있어서, 발사하기 위해 상기 물체를 준비하도록 상기 물체 발사 명령을 수행하는 단계는,
    상기 물체 발사 명령에 기초해 필요한 속도와 회전으로 발사될 상기 물체를 준비하는 단계를 포함하는 것인, 자동화된 물체 투척 방법.
  16. 사용자를 훈련시키는 방법에 있어서,
    제10항에 청구된 자동화된 물체 투척 방법을 수행하는 단계;
    발사된 물체와의 사용자 상호작용을 추적하는 단계; 및
    사용자 상호작용의 결과를 데이터베이스에 저장하는 단계
    를 포함하는, 사용자를 훈련시키는 방법.
  17. 제16항에 있어서,
    사용자 상호작용의 결과에 기초하여 보고서를 생성하는 단계; 상기 사용자 상호작용의 결과에 기초해 분석을 생성하는 단계 또는 상기 사용자 상호작용의 결과에 기초해 훈련 권장 사항을 생성하는 단계 중 적어도 하나를 더 포함하는, 사용자를 훈련시키는 방법.
  18. 제1항에 있어서,
    상기 인터페이스를 통해 사용자에 의한 선택을 위해 미리 결정된 기준을 시뮬레이션하기 위해 알고리즘적으로 궤적을 생성하기 위한 장치를 더 포함하는, 공 궤적을 복제하기 위한 시스템.
  19. 제1항에 있어서,
    사용자가 궤적의 세트를 선별(curate)하기 위한 장치를 더 포함하는, 공 궤적을 복제하기 위한 시스템.
  20. 제15항에 있어서,
    상기 필요한 속도, 3차원 회전 및 공 배향으로 상기 공을 발사하여, 사용자가 볼 때 원하는 공 모션 블러(ball motion blur)를 생성하는 단계를 더 포함하는, 자동화된 물체 투척 방법.
  21. 제10항에 있어서,
    상기 궤적 특성은 상기 시작점과 상기 끝점 사이의 상기 궤적 경로 상의 적어도 하나의 점을 더 포함하는 것인, 자동화된 물체 투척 방법.
KR1020227012557A 2019-09-18 2020-09-17 자동화된 공 투척 기계를 사용하여 공의 궤적을 복제하는 방법 및 시스템 KR20220079562A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962901879P 2019-09-18 2019-09-18
US62/901,879 2019-09-18
PCT/CA2020/051246 WO2021051196A1 (en) 2019-09-18 2020-09-17 Method and system of replicating ball trajectories using an automated ball throwing machine

Publications (1)

Publication Number Publication Date
KR20220079562A true KR20220079562A (ko) 2022-06-13

Family

ID=74882936

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227012557A KR20220079562A (ko) 2019-09-18 2020-09-17 자동화된 공 투척 기계를 사용하여 공의 궤적을 복제하는 방법 및 시스템

Country Status (7)

Country Link
US (1) US20220233942A1 (ko)
EP (1) EP4031256A4 (ko)
JP (1) JP2022549170A (ko)
KR (1) KR20220079562A (ko)
AU (1) AU2020350809A1 (ko)
CA (1) CA3151460A1 (ko)
WO (1) WO2021051196A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101994829B1 (ko) * 2019-03-08 2019-07-01 빌리노밸 주식회사 당구공의 구동상태정보 입력제어장치
JP2024502508A (ja) 2021-02-14 2024-01-19 ブレイクアウト ヒッティング エルエルシー 訓練システム及び方法
CN113836800B (zh) * 2021-09-10 2024-03-26 山东新一代信息产业技术研究院有限公司 一种融合人工智能的台球杆定位方法、装置、设备及介质
US11660514B1 (en) * 2021-12-16 2023-05-30 5th Down LLC Interactive projectile game
WO2024097982A1 (en) * 2022-11-03 2024-05-10 Toca Football, Inc. Ball-throwing machine
CN116841215B (zh) * 2023-08-29 2023-11-28 天津航毅达科技有限公司 一种基于数控机床加工优化的运动控制方法和系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4442823A (en) * 1982-03-08 1984-04-17 Johnnie E. Floyd Ball throwing machine and system having three individually controllable wheel speeds and angles
US20080020867A1 (en) * 2003-08-28 2008-01-24 Callaway Golf Company Golfer's impact properties during a golf swing
US6880542B1 (en) * 2003-10-29 2005-04-19 Steven S. Johndreau Automatic ball throwing device, directing device therefor and method of making an automatic ball throwing device
US7691012B2 (en) * 2003-11-03 2010-04-06 Precision Sports Robotics, Llc Programmable ball throwing apparatus
US9010309B2 (en) * 2011-11-02 2015-04-21 Toca, Llc Ball throwing machine and method
US10118078B2 (en) * 2011-11-02 2018-11-06 Toca Football, Inc. System, apparatus and method for ball throwing machine and intelligent goal
US20140305420A1 (en) * 2013-04-16 2014-10-16 Julian Deese Football Throwing System and Method of Operation
US10471330B1 (en) * 2014-12-31 2019-11-12 Thomas Joseph Hart Automatic ball pitching machine
US9452339B1 (en) * 2015-06-25 2016-09-27 Lila Athletics Inc. Automated ball launching system
US11577139B1 (en) * 2016-09-30 2023-02-14 Airborne Athletics, Inc. Basketball training system
US11471741B2 (en) * 2018-12-21 2022-10-18 SurfaSense LLC Adaptive tennis ball machine

Also Published As

Publication number Publication date
EP4031256A1 (en) 2022-07-27
AU2020350809A1 (en) 2022-05-05
CA3151460A1 (en) 2021-03-25
JP2022549170A (ja) 2022-11-24
US20220233942A1 (en) 2022-07-28
WO2021051196A1 (en) 2021-03-25
EP4031256A4 (en) 2023-10-18

Similar Documents

Publication Publication Date Title
US20220233942A1 (en) Method and system of replicating ball trajectories using an automated ball throwing machine
US10471330B1 (en) Automatic ball pitching machine
JP6983172B2 (ja) スポーツ用品の運動解析を行うための方法及び装置
JP6981719B2 (ja) 仮想テニスシミュレーションシステム、これに用いるセンシング装置及びセンシング方法
CA2830497C (en) Virtual golf simulation apparatus and sensing device and method used for the same
CN108697922B (zh) 用于棒球练习装置的传感装置及传感方法、利用其的棒球练习装置及其控制方法
KR101385325B1 (ko) 복수의 카메라로 운동하는 피사체를 촬영하고 그 촬영 이미지에 기초하여 피사체의 실제의 운동 궤적을 획득하기 위한 방법 및 시스템
US20160339316A1 (en) Screen baseball game apparatus without temporal and spatial limitations
US20160059120A1 (en) Method of using motion states of a control device for control of a system
US9737817B1 (en) Method and apparatus for simulating a gaming event
TW201501751A (zh) 運動解析裝置
CN101836237B (zh) 用于选择所呈现图形的观看配置的方法和系统
JP4582222B2 (ja) 情報処理システム
KR102344429B1 (ko) 2-환경 게임 플레이 시스템
TW201415272A (zh) 擊球結果推論與姿勢修正之方法與裝置
US20210178244A1 (en) Kinematic analysis of user form
EP3468679B1 (en) Method and apparatus for simulating a gaming event
US11285369B2 (en) Apparatus and method for repetitive training of golf swing with virtual reality
CN109475773B (zh) 用于模拟游戏事件的方法和设备
KR102582362B1 (ko) 두 대의 카메라를 이용한 바닥형 골프 시뮬레이션 시스템
US20230241456A1 (en) Training system and method of using same
Tasci mTTTbot: Multiple Style Table Tennis Trainer & Ball Launcher Robot
CN117716388A (zh) 用于感测移动的球的影像分析方法及利用其的传感装置
TW202417092A (zh) 混合高爾夫系統及在該系統中使高爾夫球或球標記位於場地上的球點的方法
KR20180012661A (ko) 축구 시뮬레이션 체험을 위한 스포츠 게임 장치, 그리고 이를 이용한 축구 시뮬레이션 체험 시스템 및 방법