US20180221739A1 - System for remotely swinging a golf club - Google Patents
System for remotely swinging a golf club Download PDFInfo
- Publication number
- US20180221739A1 US20180221739A1 US15/947,150 US201815947150A US2018221739A1 US 20180221739 A1 US20180221739 A1 US 20180221739A1 US 201815947150 A US201815947150 A US 201815947150A US 2018221739 A1 US2018221739 A1 US 2018221739A1
- Authority
- US
- United States
- Prior art keywords
- golf club
- swing
- coupled
- golf
- swinging
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
- 238000004891 communication Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims abstract description 29
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000012360 testing method Methods 0.000 claims description 19
- 238000013481 data capture Methods 0.000 claims description 14
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 5
- 239000006185 dispersion Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 229910000831 Steel Inorganic materials 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 229910002804 graphite Inorganic materials 0.000 description 1
- 239000010439 graphite Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B60/00—Details or accessories of golf clubs, bats, rackets or the like
- A63B60/46—Measurement 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40021—Batting, to redirect a projectile
Definitions
- the present invention relates to golf clubs and, more particularly, to robotically swinging golf clubs.
- golf is a sport where the correct equipment is essential to the success and enjoyment of the activity.
- Each golf club manufacturer may make the same type of club slightly differently. For example, one manufacturer may produce a golf club with a shaft made from steel, while another equipment manufacturer may use graphite for the shaft. Testing a particular golf club or set of clubs helps to ensure a club is the correct size and weight for an individual player in addition to offering the right design characteristics for the player.
- a player To test a golf club, a player has to travel to a hitting area, whether at a store, at a driving range, or use a golf simulator to play-test the club by striking golf balls. This, however, can be difficult and undesirable in an age of Internet shopping from the comfort of one's own home. Further, in order to play-test a golf club appropriately, a player should test in the same environment for each type of club. For example, if a player is testing woods, he/she should play them off the same lie, using the same type of tee or play surface, in order to get an accurate comparison between the clubs. Testing can involve hitting for distance, accuracy, and/or control.
- Embodiments of the present invention address deficiencies of the art in respect to remotely swinging golf clubs and provide a novel and non-obvious method, system, and computer program product for remotely swinging golf clubs.
- a set of swing parameters from a remote operator can be received over a computer communications network.
- the swing parameters can define different aspects of a golf club swing.
- a plurality of robotic arms in a robotic golf club swing fixture can be directed to swing the attached golf club.
- a ball flight result of the swinging of the golf club can be sensed and the data derived from the sensed result can be transmitted to the remote operator over the computer communications network.
- the system can include a server configured for communicative coupling to a web server and a computing device.
- a robotic golf club swing fixture also can be provided and can include a servo motor coupled to a controller, a data capture apparatus coupled to the controller, and a plurality of robotic arms attached to the servo motor. Each robotic arm can be coupled to a golf club.
- the remote golf club testing module can include program code for receiving from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, for directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, for sensing a result of the golf club, and for transmitting data derived from the sensed result to the remote operator over the computer communications network.
- a remote golf club testing method can be provided.
- a set of swing parameters from a remote operator can be received over a computer communications network.
- the swing parameters can define different aspects of a golf club swing.
- a plurality of robotic arms in a robotic golf club swing fixture can be directed to swing the attached golf club. Performance of the golf club can be sensed and the data derived from the performance can be transmitted to the remote operator over the computer communications network.
- FIG. 1 is a pictorial illustration of a process for remotely swinging a golf club
- FIG. 2 is a schematic illustration of a remote swinging system configured for remotely swinging a golf club
- FIG. 3 is a flow chart illustrating a process for remotely swinging a golf club.
- Embodiments of the invention provide for remotely swinging a golf club.
- a remote operator can specify one or more parameters associated with the swinging of a golf club, such as power and direction.
- the specified parameters can be provided over a computer communications network to a remotely disposed robotic test fixture configured to swing a golf club through the activation of one or more robotic arms. Thereafter, the robotic test fixture can swing the golf club according to the received parameters and the resulting performance of the golf club and/or the shot can be measured.
- the resulting measurements can be provided to the remote operator over the network such that the performance of the golf club and/or the ball subsequent to the swing can be presented and visualized by the remote operator without requiring the remote operator to be physically present in the same place as where the golf club hit the golf ball.
- FIG. 1 depicts a process for remotely swinging a golf club.
- an end user 105 on a computing device 110 can set multiple, different swing parameters 108 via different graphical user interfaces from a web page 125 in a web browser 120 .
- the swing parameters 108 can define different aspects of a golf club swing, including but not limited to direction, velocity, power, and shot shape. Further, the swing parameters 108 can be presented as a percentage or a number, for instance from one through one hundred, where one can be the lowest value and one hundred can be the highest value.
- the end user 105 can select a “Swing” button 112 or another graphical user interface.
- the selection of the “Swing” button 112 can cause the swing parameters 108 to be sent over a communication network 140 , such as the Internet, to a server 125 .
- Golf club swinging logic 175 executing on the server 125 can format the swing parameters 108 .
- golf club swinging logic 175 can format the swing parameters 108 to a data string.
- Golf club swinging logic 175 can forward the swing parameters 108 to robotic golf club swing fixture 199 over a communications network 140 .
- the robotic golf club swing fixture 199 can include a controller 155 .
- the controller 155 can direct a robot 145 to swing an attached golf club 185 using the swing parameters 108 .
- the golf club swinging logic 175 can be executed in memory on the controller 155 which can format the swing parameters 108 to a data string.
- the controller 155 can forward the swing parameters 108 to robotic golf club swing fixture 199 over a serial cable or other cable connection.
- the golf club 185 can be further in contact with a golf ball.
- the controller 155 can be coupled to the robot 145 via a serial cable.
- the controller 155 can capture data—for instance, launch data related to the golf club swing and to the flight of the golf ball.
- golf club swinging logic 175 can calculate data 122 from any (raw) data captured by the controller 155 during a golf swing.
- a controller 155 can generate the data 122 directly for each golf club swing.
- a computer program executing in memory on the controller can capture and/or calculate any data 122 related to a golf club swing and/or the motion of a golf ball.
- multiple, different external devices such as cameras 170 , launch monitors 172 , and tracking apparatus, can be used to capture information or data 122 related to the golf club swing and/or flight of the ball.
- a launch monitor 172 may capture launch conditions related to the swing of the golf club 185 and of a ball being struck by the club 185 .
- cameras 170 can be positioned in such a way to capture the swing of the golf club 185 , the contact between the club 185 and ball as well the flight and landing of a ball around a landing area 186 .
- the landing area 186 can be outside.
- a robotic golf club swing fixture 199 can be operated remotely and data 122 can be recorded with cameras 170 and launch monitors 172 to show a golf club swing and how the ball flies and where the ball lands as a result of the swing outside.
- Data 122 related to the golf club swing and to the flight of the ball can include but is not limited to head speed, ball speed, vertical launch angle, horizontal launch angle, back spin, side spin, peak trajectory, descent angle, descent velocity, carry dispersion, carry distance, total dispersion, and total distance.
- a golf simulator can be present.
- a golf simulator can be coupled to different components depending on how it is being used.
- data captured from the resulting swing of the coupled club 185 by at least one camera 170 and/or at least one launch monitor 172 can be sent to a coupled golf simulator.
- the golf simulator can be coupled to the controller 155 .
- a computer program or programs on the golf simulator, the controller 155 , the server 200 , or other component can determine from the raw data sensed from the swing the resulting effect on a golf ball.
- the club 185 is swung by the robot and the raw data can be collected and be processed by several different components.
- the movement of the ball can be displayed to an end user 105 via the golf simulator, in one embodiment.
- the golf simulator can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin.
- the golf simulator can replace the launch monitor 172 , thus directly capturing the data resulting from a golf swing.
- the golf simulator can be an external apparatus that can detect swing data directly from the controller 155 .
- the golf simulator uses the data captured by the launch monitor 172 , but may calculate results so as predict the result of the golf ball using an algorithm.
- golf simulator can be coupled to the server 200 and can receive swing parameters 108 from the golf club swing logic 175 upon a user selecting a swing button 112 after selecting swing parameters 108 .
- the golf simulator can use the raw data to calculate the launch data 122 and then display the theoretical movement of the golf ball to an end user 105 based on the calculations.
- the robotic golf club swing fixture 199 is actually not swung, but a potential outcome is calculated by the simulator and displayed to an end user 105 .
- a landing area 186 is not needed.
- the simulator can further display the theoretical swing or the actual swing (captured by the cameras 170 ) as well as the trajectory and resulting location of the golf ball without requiring the ball and/or the robotic golf club swing fixture 199 to be located outside.
- the robotic golf club swing fixture 199 can further include at least one camera 170 coupled to the controller 155 can capture the golf swing and/or the motion of the golf ball.
- at least one camera 170 can be a web camera, and the golf club swing and/or the motion of the golf ball can be streamed to the end user via a website, content browser, or a web browser 120 .
- the data 122 related to the golf club swing can be transmitted to the end user 105 over the computer communications network 140 and can be displayed on a web page 125 , in a web browser 120 , or other content browser.
- the web page 125 can include additional information related to the swinging of a golf club and to the conditions during which the golf club 185 is being swung, including information related to weather, equipment, and terrain.
- one or more cameras 170 can be set at the golf ball landing area 186 , such as a golf green, to show the end user 105 the golf ball landing position relative to a golf green or fairway.
- the camera(s) 170 located at a golf ball landing area 186 can be coupled to the controller 155 , thus, being part of the robotic golf club swing fixture 199 or be separate, but capable of transmitting data (information) via a computer communications network to the controller 155 of the fixture 199 and/or to the server 125 on which the golf club swinging logic 175 is executing.
- FIG. 2 is a schematic illustration of a remote swinging system configured for remotely swinging a golf club.
- the system can include a server 200 with at least one processor 210 and memory 205 supporting the executing of an operating system (O/S) 215 .
- a golf club testing module 300 can execute in memory 205 of the server 200 as well as be coupled via a communications network 275 to a robotic golf club swing fixture 299 .
- a golf club testing module 300 can additional be executing in memory of a controller 260 of the robotic golf club swing fixture 299 (not pictured).
- the server 200 can be coupled to a computing device 250 , which a remote operator (an end user) from a web site can select a set of swing parameters defining different aspects of a golf swing. Further, the server 200 can be coupled via a communications network 275 to a web server 225 as well as the robotic golf club swing fixture 299 . An optional golf simulator 292 can further be coupled to either the controller 260 or the server 200 depending on how the golf simulator is being used as will be further explained below.
- the robotic golf club swing fixture 299 can include multiple, different data capture apparatuses 245 , a controller 260 , at least one servo motor 265 , a plurality of robotic arms 270 , and multiple, different golf clubs 285 .
- the multiple, different data capture apparatuses 245 can be hardware, such as launch monitors and cameras, that are coupled to the controller 260 .
- the data capture apparatuses 245 can be used to capture data related to the swing of the golf club 285 and/or the golf ball, such as, but not limited to, the impact of the club 285 on a ball, launch conditions of a ball, and ball flight and landing.
- the computer program or programs used to run the different data capture apparatuses 245 can be executed in memory of the controller 260 . Further, the devices can be run independently or together. Of further note, as noted above, the golf club swinging module 300 can be executing in memory on the controller 260 . It is further contemplated that there may be an embodiment, where any functionality performed by the server 200 is performed by the controller 260 . In another embodiment, multiple, separate computers or controllers 260 can be used to operate the data capture apparatuses 245 . The controller 260 can be coupled to a servo motor 265 , which can send signals to at least one robotic arm 270 .
- Each robotic arm 270 can be coupled to a golf club 285 , which upon receiving a signal, prompts the golf club 285 to swing.
- the robotic golf club swing fixtures 299 includes one robotic arm 270 coupled to a single golf club 285 .
- an optional golf simulator 292 can be coupled to the controller 260 .
- the golf simulator 292 can capture data associated with the swing of a golf club 285 from a data capture apparatus 245 , such as a launch monitor.
- a golf ball hit by the swinging golf club 285 in the fixture 299 would hit a screen or similar component coupled to the golf simulator 292 .
- the simulator 292 can capture the data associated with the ball and calculate a variety of parameters associated with the ball when it hits the screen.
- the simulator 292 can capture the data associated with the swing of the club 285 .
- the screen is just used as a target for the ball and/or to contain the golf ball.
- the golf simulator 292 can calculate and display the flight (the path) and landing (resulting location) of the golf ball.
- the golf simulator 292 can be coupled to the controller 260 and replace at least one data capture apparatus 245 , such as the launch monitor or a camera.
- a screen or similar component can, but does not have to, be coupled to the golf simulator 292 .
- the golf simulator 292 can capture data related to the golf club swing directly from the controller 260 .
- the golf simulator can then process the data collected as needed so to display the path of the golf ball, the swing of the club 285 , and/or the resulting location of the ball to a computing device 250 of an end user.
- an end user can remotely initiate a swing of the swing fixture 299 , but instead of physically hitting a coupled golf ball, the resulting data from the swing can be captured and transmitted to the simulator 292 .
- the golf simulator 292 can display a calculated resulting location and/or path of the golf ball based upon the data derived from the sensed result of the swinging of the coupled golf club 285 . Further, the golf simulator 292 can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin.
- a golf simulator 292 can be coupled to a server 200 .
- the golf club swinging module 300 can include program code enabled to send the golf simulator 292 (most likely, without a screen) swing parameters.
- the golf simulator 292 can use the raw data to calculate the launch data and then display the theoretical movement of the golf ball to a computing device 250 of an end user 105 based on the calculations. In this way, the fixture 299 is never swung and a ball not hit; instead, there the golf simulator 292 can calculate the path of the ball and the swing of the club 285 based on the received swing parameters.
- golf club swinging module 300 can perform the tasks described above, such as but not limited to, collecting data, receiving parameters, transmitting parameters, calculating data, displaying resultant data, regardless of where the module 300 is being executed in memory (the server 200 , the controller 260 , the golf simulator 292 , etc.) In other words, it is contemplated that the module 300 can be executing in memory on a variety of computing devices.
- a robotic golf club swing fixture 299 can be coupled to multiple, different data capture apparatuses 245 , including at least one camera.
- the camera can be a web camera and can stream images of at least one of the plurality of robotic arms swinging the golf club 285 to a remote operator over the communications network 275 .
- the images can be streamed to a web site or content browser which a remote operator on a computing device 250 can be using.
- at least one camera such as a web camera, can be located at the target hitting area (or landing area) to show an end user the results of a golf shot, including but not limited to the resulting location of a golf ball struck by the coupled golf club 285 after the swinging of the golf club 285 .
- the additional camera(s) showing the end user the results of the golf shot can be coupled to the controller 260 (part of the robotic golf club swing fixture 299 ) or, in a different embodiment, the camera(s) can be separate.
- the camera(s) can transmit data (information) via a computer communications network to the controller 260 of the fixture 299 and/or to the server 200 on which the golf club swinging module 300 is executing upon.
- cameras regardless of how they are connected, can be located at a target hitting area so to capture the resulting location of a golf ball and/or the path the ball took and can transmit the data (images) to an end user.
- the camera may be controlled by a computer program executing in memory of the controller 260 or a computer program may be executing in memory of the camera itself.
- the data capture apparatuses 245 can operate using any method now known or later developed.
- the golf club swinging module 300 can include program code, which when executed by at least one processor 210 on the server 200 can receive from a remote operator over a computer communications network 275 a set of swing parameters defining different aspects of a golf club swing. The remote operator can select the set of parameters from a web page being displayed on a computing device 250 . Upon receiving a set of swing parameters, the golf club testing module 300 can further include program code that can direct the plurality of robotic arms 270 to swing the coupled golf club 285 according to the received swing parameters. Of note, multiple robotic arms 270 can be coupled to each servo motor 265 or just one robotic arm 270 can be coupled to each servo motor.
- the module 300 can further include program code to sense a result of the swinging of the coupled golf club and the data derived from the sensed result can be transmitted to the remote operator over the computer communications network.
- the result of the swung golf club can include, but is not limited to, a sensed performance of the golf club, a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club.
- the module 300 can include program code to transmit the data derived from the sensed result to a golf simulator 292 .
- the golf simulator 292 can process the data in order to display the theoretical movement of the golf ball to an end user in response to the swinging of the golf club 285 .
- an end user can remotely initiate a swing of the swing fixture 299 , but instead of physically hitting a coupled golf ball, the resulting data from the swing can be captured and transmitted to the simulator 292 .
- the golf simulator 292 can display a calculated resulting location and/or path of the golf ball based upon the data derived from the sensed result of the swinging of the coupled golf club 285 . Further, the golf simulator 292 can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin.
- FIG. 3 is a flow chart illustrating a process for remotely swinging a golf club.
- a set of swing parameters defining different aspects of a golf club swing can be received from a remote operator over a computer communications network.
- the swing parameters can include, but are not limited to, direction, velocity, power, and shot shape.
- the swing parameters can be selected by a remote operator using a graphical user interface displayed on a website.
- a remote operator can be an end user using a computing device.
- the swing parameters can be converted to data format, if required, so that the swing parameters can be forwarded to a plurality of robotic arms of a robotic golf club test fixture, so that the plurality of robotic arms can be directed to swing a coupled golf club according to the received swing parameters, as shown in block 315 .
- the golf club can also be in contact with a golf ball, so that when a robotic arm is direct to be swung, the golf club strikes the golf ball causing the golf ball to move.
- a result of the swinging golf club can be sensed, as illustrated in block 325 .
- the sensed result of the swinging golf club can include sensing the performance of the golf club as well as a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club. Additional data related to a golf club or golf ball can be sensed.
- the data sensed can be collected, as shown in block 335 .
- Data capture apparatuses such as cameras, launch monitors, tracking devices, etc. (or the computer programs operating these apparatuses) may only capture raw data related to the golf club swing and/or the flight of a golf ball; therefore, this data may need to be collected for further processing.
- the data capture apparatuses may be able to analyze the data related to the impact of the ball upon the swinging of the golf club, launch conditions of the ball, ball flight, and ball landing.
- the module 300 can calculate data from the collected data, as indicated in block 345 .
- the raw data may need to be manipulated so that more useful data can be derived, such as launch data related to the golf club swing and/or the golf ball, including but not limited to head speed, ball speed, vertical launch angle, horizontal launch angle, back spin, side spin, peak trajectory, descent angle, descent velocity, carry dispersion, carry distance, total dispersion, and total distance.
- the data derived can be transmitted, as shown in block 355 .
- the data can be transmitted to a remote operator over the computer communications network.
- the data can be transmitted to a remote operator so as to be displayed on a web page via a web browser.
- the data can first be transmitted to a golf simulator.
- the golf simulator can then display a resulting location and/or path of the golf ball based upon the data collected in block 335 to the remote operator. If necessary, the golf simulator can calculate a predicted result of the golf ball based on the sensed result of the golf club swing.
- a remote golf club testing method can include receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, sensing performance of the golf club, and transmitting data derived from the sensed performance to the remote operator over the computer communications network.
- the system can include a server configured for communicative coupling to a web server and a computing device.
- a robotic golf club swing fixture also can be provided and can include a servo motor coupled to a controller and a plurality of robotic arms attached to the servo motor.
- the robotic golf club swing fixture can include one robotic arm.
- the robotic golf club swing fixture can include multiple, different robotic arms. Each robotic arm can be coupled to a golf club.
- the remote golf club swinging module can include program code for receiving from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, for directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, for sensing performance of the golf club, and for transmitting data derived from the sensed performance to the remote operator over the computer communications network.
- the swing parameters can include, but are not limited to direction, power, and velocity.
- aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied therein.
- the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
- a computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the aforementioned.
- the computer readable storage medium includes the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the aforementioned.
- a computer readable storage medium may be any tangible medium that can contain or store a program for use by, or in connection with, an instruction execution system, apparatus, or device.
- a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof.
- a computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
- Program code embodied in a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, radiofrequency, and the like, or any suitable combination of the aforementioned.
- Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language and conventional procedural programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server.
- the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
- LAN local area network
- WAN wide area network
- Internet Service Provider an Internet Service Provider
- each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block might occur out of the order noted in the figures.
- each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams can be implemented by computer program instructions.
- These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
- the computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physical Education & Sports Medicine (AREA)
- Manipulator (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Golf Clubs (AREA)
Abstract
A method, system, and computer program product for remote golf club swinging is provided. The method can include receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing. The method also can include directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters. The method yet further can include sensing a result of the swinging of the coupled golf club. Finally, the method can include transmitting data derived from the sensed result to the remote operator over the computer communications network.
Description
- The present invention relates to golf clubs and, more particularly, to robotically swinging golf clubs.
- Golf is a difficult game that to master requires practice and skill. There is a high degree of interest in the game from golfers, but non-golfers as well find challenges such as trying to make a “hole-in-one” or attempting to hit the longest drive, off a golf tee, of interest. In order to experience these activities, a person must travel to a golf course, driving range, or golf simulator and use golf equipment to strike the ball.
- Further, golf is a sport where the correct equipment is essential to the success and enjoyment of the activity. There are many different makes and models of golf equipment, including golf clubs. Each golf club manufacturer may make the same type of club slightly differently. For example, one manufacturer may produce a golf club with a shaft made from steel, while another equipment manufacturer may use graphite for the shaft. Testing a particular golf club or set of clubs helps to ensure a club is the correct size and weight for an individual player in addition to offering the right design characteristics for the player.
- To test a golf club, a player has to travel to a hitting area, whether at a store, at a driving range, or use a golf simulator to play-test the club by striking golf balls. This, however, can be difficult and undesirable in an age of Internet shopping from the comfort of one's own home. Further, in order to play-test a golf club appropriately, a player should test in the same environment for each type of club. For example, if a player is testing woods, he/she should play them off the same lie, using the same type of tee or play surface, in order to get an accurate comparison between the clubs. Testing can involve hitting for distance, accuracy, and/or control.
- Embodiments of the present invention address deficiencies of the art in respect to remotely swinging golf clubs and provide a novel and non-obvious method, system, and computer program product for remotely swinging golf clubs. In an embodiment of the invention, a set of swing parameters from a remote operator can be received over a computer communications network. The swing parameters can define different aspects of a golf club swing. A plurality of robotic arms in a robotic golf club swing fixture can be directed to swing the attached golf club. A ball flight result of the swinging of the golf club can be sensed and the data derived from the sensed result can be transmitted to the remote operator over the computer communications network.
- Another embodiment of the invention provides for a remote golf club swinging system. The system can include a server configured for communicative coupling to a web server and a computing device. A robotic golf club swing fixture also can be provided and can include a servo motor coupled to a controller, a data capture apparatus coupled to the controller, and a plurality of robotic arms attached to the servo motor. Each robotic arm can be coupled to a golf club. The remote golf club testing module can include program code for receiving from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, for directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, for sensing a result of the golf club, and for transmitting data derived from the sensed result to the remote operator over the computer communications network.
- In another embodiment of the invention a remote golf club testing method can be provided. In an embodiment of the invention, a set of swing parameters from a remote operator can be received over a computer communications network. The swing parameters can define different aspects of a golf club swing. A plurality of robotic arms in a robotic golf club swing fixture can be directed to swing the attached golf club. Performance of the golf club can be sensed and the data derived from the performance can be transmitted to the remote operator over the computer communications network.
- Additional aspects of the invention will be set forth in part in the description which follows, and, in part, will be obvious from the description, or may be learned by practice of the invention. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
- The accompanying drawings, which are incorporated in and constitute part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. The embodiments illustrated herein are presently preferred; it is understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown, wherein:
-
FIG. 1 is a pictorial illustration of a process for remotely swinging a golf club; -
FIG. 2 is a schematic illustration of a remote swinging system configured for remotely swinging a golf club; and, -
FIG. 3 is a flow chart illustrating a process for remotely swinging a golf club. - Embodiments of the invention provide for remotely swinging a golf club. In accordance with an embodiment of the invention, a remote operator can specify one or more parameters associated with the swinging of a golf club, such as power and direction. The specified parameters can be provided over a computer communications network to a remotely disposed robotic test fixture configured to swing a golf club through the activation of one or more robotic arms. Thereafter, the robotic test fixture can swing the golf club according to the received parameters and the resulting performance of the golf club and/or the shot can be measured. Finally, the resulting measurements can be provided to the remote operator over the network such that the performance of the golf club and/or the ball subsequent to the swing can be presented and visualized by the remote operator without requiring the remote operator to be physically present in the same place as where the golf club hit the golf ball.
- In further illustration,
FIG. 1 depicts a process for remotely swinging a golf club. As shown inFIG. 1 , an end user 105 on acomputing device 110 can set multiple,different swing parameters 108 via different graphical user interfaces from aweb page 125 in aweb browser 120. Theswing parameters 108 can define different aspects of a golf club swing, including but not limited to direction, velocity, power, and shot shape. Further, theswing parameters 108 can be presented as a percentage or a number, for instance from one through one hundred, where one can be the lowest value and one hundred can be the highest value. Once the end user 105 is satisfied with his or her selections, the end user 105 can select a “Swing”button 112 or another graphical user interface. - The selection of the “Swing”
button 112 can cause theswing parameters 108 to be sent over acommunication network 140, such as the Internet, to aserver 125. Golfclub swinging logic 175 executing on theserver 125 can format theswing parameters 108. In one embodiment, golfclub swinging logic 175 can format theswing parameters 108 to a data string. Golfclub swinging logic 175 can forward theswing parameters 108 to robotic golfclub swing fixture 199 over acommunications network 140. The robotic golfclub swing fixture 199 can include acontroller 155. Thecontroller 155 can direct arobot 145 to swing an attachedgolf club 185 using theswing parameters 108. In another embodiment, the golfclub swinging logic 175 can be executed in memory on thecontroller 155 which can format theswing parameters 108 to a data string. Thecontroller 155 can forward theswing parameters 108 to robotic golfclub swing fixture 199 over a serial cable or other cable connection. Thegolf club 185 can be further in contact with a golf ball. When thegolf club 185 is swung by therobot 145, the golf ball can be hit and take flight. Of note, thecontroller 155 can be coupled to therobot 145 via a serial cable. - The
controller 155 can capture data—for instance, launch data related to the golf club swing and to the flight of the golf ball. In an embodiment, golfclub swinging logic 175 can calculatedata 122 from any (raw) data captured by thecontroller 155 during a golf swing. In a different embodiment, acontroller 155 can generate thedata 122 directly for each golf club swing. In another embodiment, a computer program executing in memory on the controller can capture and/or calculate anydata 122 related to a golf club swing and/or the motion of a golf ball. Further, in yet even another embodiment, multiple, different external devices, such ascameras 170, launch monitors 172, and tracking apparatus, can be used to capture information ordata 122 related to the golf club swing and/or flight of the ball. For instance, alaunch monitor 172 may capture launch conditions related to the swing of thegolf club 185 and of a ball being struck by theclub 185. Further,cameras 170 can be positioned in such a way to capture the swing of thegolf club 185, the contact between theclub 185 and ball as well the flight and landing of a ball around alanding area 186. Of note, thelanding area 186 can be outside. Thus, in a embodiment, a robotic golfclub swing fixture 199 can be operated remotely anddata 122 can be recorded withcameras 170 and launch monitors 172 to show a golf club swing and how the ball flies and where the ball lands as a result of the swing outside.Data 122 related to the golf club swing and to the flight of the ball can include but is not limited to head speed, ball speed, vertical launch angle, horizontal launch angle, back spin, side spin, peak trajectory, descent angle, descent velocity, carry dispersion, carry distance, total dispersion, and total distance. - Optionally, a golf simulator can be present. Note a golf simulator can be coupled to different components depending on how it is being used. In an embodiment, data captured from the resulting swing of the coupled
club 185 by at least onecamera 170 and/or at least onelaunch monitor 172 can be sent to a coupled golf simulator. More specifically, in an embodiment, the golf simulator can be coupled to thecontroller 155. Of note, it is contemplated that a computer program or programs on the golf simulator, thecontroller 155, theserver 200, or other component, can determine from the raw data sensed from the swing the resulting effect on a golf ball. In other words, theclub 185 is swung by the robot and the raw data can be collected and be processed by several different components. The movement of the ball can be displayed to an end user 105 via the golf simulator, in one embodiment. Further, the golf simulator can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin. In a different embodiment, the golf simulator can replace thelaunch monitor 172, thus directly capturing the data resulting from a golf swing. In another embodiment, the golf simulator can be an external apparatus that can detect swing data directly from thecontroller 155. In yet another embodiment, the golf simulator uses the data captured by thelaunch monitor 172, but may calculate results so as predict the result of the golf ball using an algorithm. In yet a further embodiment, golf simulator can be coupled to theserver 200 and can receiveswing parameters 108 from the golfclub swing logic 175 upon a user selecting aswing button 112 after selectingswing parameters 108. The golf simulator can use the raw data to calculate thelaunch data 122 and then display the theoretical movement of the golf ball to an end user 105 based on the calculations. In other words, in an embodiment, the robotic golfclub swing fixture 199 is actually not swung, but a potential outcome is calculated by the simulator and displayed to an end user 105. Of note, if an embodiment where there is no hitting a physical golf ball, alanding area 186 is not needed. Depending on how a golf simulator is being used, the simulator can further display the theoretical swing or the actual swing (captured by the cameras 170) as well as the trajectory and resulting location of the golf ball without requiring the ball and/or the robotic golfclub swing fixture 199 to be located outside. - In addition, the robotic golf
club swing fixture 199 can further include at least onecamera 170 coupled to thecontroller 155 can capture the golf swing and/or the motion of the golf ball. In one embodiment, at least onecamera 170 can be a web camera, and the golf club swing and/or the motion of the golf ball can be streamed to the end user via a website, content browser, or aweb browser 120. Thedata 122 related to the golf club swing can be transmitted to the end user 105 over thecomputer communications network 140 and can be displayed on aweb page 125, in aweb browser 120, or other content browser. Of note, theweb page 125 can include additional information related to the swinging of a golf club and to the conditions during which thegolf club 185 is being swung, including information related to weather, equipment, and terrain. In another embodiment, one ormore cameras 170 can be set at the golfball landing area 186, such as a golf green, to show the end user 105 the golf ball landing position relative to a golf green or fairway. The camera(s) 170 located at a golfball landing area 186 can be coupled to thecontroller 155, thus, being part of the robotic golfclub swing fixture 199 or be separate, but capable of transmitting data (information) via a computer communications network to thecontroller 155 of thefixture 199 and/or to theserver 125 on which the golfclub swinging logic 175 is executing. - The process described in connection with
FIG. 1 can be implemented in a golf club swinging system. In further illustration,FIG. 2 is a schematic illustration of a remote swinging system configured for remotely swinging a golf club. The system can include aserver 200 with at least oneprocessor 210 andmemory 205 supporting the executing of an operating system (O/S) 215. A golfclub testing module 300 can execute inmemory 205 of theserver 200 as well as be coupled via acommunications network 275 to a robotic golfclub swing fixture 299. Of note, a golfclub testing module 300 can additional be executing in memory of acontroller 260 of the robotic golf club swing fixture 299 (not pictured). Theserver 200 can be coupled to acomputing device 250, which a remote operator (an end user) from a web site can select a set of swing parameters defining different aspects of a golf swing. Further, theserver 200 can be coupled via acommunications network 275 to aweb server 225 as well as the robotic golfclub swing fixture 299. Anoptional golf simulator 292 can further be coupled to either thecontroller 260 or theserver 200 depending on how the golf simulator is being used as will be further explained below. - The robotic golf
club swing fixture 299 can include multiple, different data capture apparatuses 245, acontroller 260, at least oneservo motor 265, a plurality ofrobotic arms 270, and multiple,different golf clubs 285. The multiple, different data capture apparatuses 245 can be hardware, such as launch monitors and cameras, that are coupled to thecontroller 260. The data capture apparatuses 245 can be used to capture data related to the swing of thegolf club 285 and/or the golf ball, such as, but not limited to, the impact of theclub 285 on a ball, launch conditions of a ball, and ball flight and landing. Of note, in one embodiment, the computer program or programs used to run the different data capture apparatuses 245 can be executed in memory of thecontroller 260. Further, the devices can be run independently or together. Of further note, as noted above, the golfclub swinging module 300 can be executing in memory on thecontroller 260. It is further contemplated that there may be an embodiment, where any functionality performed by theserver 200 is performed by thecontroller 260. In another embodiment, multiple, separate computers orcontrollers 260 can be used to operate the data capture apparatuses 245. Thecontroller 260 can be coupled to aservo motor 265, which can send signals to at least onerobotic arm 270. Eachrobotic arm 270 can be coupled to agolf club 285, which upon receiving a signal, prompts thegolf club 285 to swing. Of note, in an embodiment, the robotic golfclub swing fixtures 299 includes onerobotic arm 270 coupled to asingle golf club 285. - Of note, in an embodiment, an
optional golf simulator 292 can be coupled to thecontroller 260. In an embodiment, thegolf simulator 292 can capture data associated with the swing of agolf club 285 from a data capture apparatus 245, such as a launch monitor. In one instance, a golf ball hit by the swinginggolf club 285 in thefixture 299 would hit a screen or similar component coupled to thegolf simulator 292. Thesimulator 292 can capture the data associated with the ball and calculate a variety of parameters associated with the ball when it hits the screen. In another instance, thesimulator 292 can capture the data associated with the swing of theclub 285. In other words, the screen is just used as a target for the ball and/or to contain the golf ball. In either instance, thegolf simulator 292 can calculate and display the flight (the path) and landing (resulting location) of the golf ball. - In another embodiment, the
golf simulator 292 can be coupled to thecontroller 260 and replace at least one data capture apparatus 245, such as the launch monitor or a camera. Of note, a screen or similar component can, but does not have to, be coupled to thegolf simulator 292. Thegolf simulator 292 can capture data related to the golf club swing directly from thecontroller 260. The golf simulator can then process the data collected as needed so to display the path of the golf ball, the swing of theclub 285, and/or the resulting location of the ball to acomputing device 250 of an end user. In other words, in an embodiment, an end user can remotely initiate a swing of theswing fixture 299, but instead of physically hitting a coupled golf ball, the resulting data from the swing can be captured and transmitted to thesimulator 292. Thegolf simulator 292 can display a calculated resulting location and/or path of the golf ball based upon the data derived from the sensed result of the swinging of the coupledgolf club 285. Further, thegolf simulator 292 can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin. - In another embodiment, a
golf simulator 292 can be coupled to aserver 200. The golfclub swinging module 300 can include program code enabled to send the golf simulator 292 (most likely, without a screen) swing parameters. In one instance, thegolf simulator 292 can use the raw data to calculate the launch data and then display the theoretical movement of the golf ball to acomputing device 250 of an end user 105 based on the calculations. In this way, thefixture 299 is never swung and a ball not hit; instead, there thegolf simulator 292 can calculate the path of the ball and the swing of theclub 285 based on the received swing parameters. - Note, that in the embodiments described above, golf
club swinging module 300 can perform the tasks described above, such as but not limited to, collecting data, receiving parameters, transmitting parameters, calculating data, displaying resultant data, regardless of where themodule 300 is being executed in memory (theserver 200, thecontroller 260, thegolf simulator 292, etc.) In other words, it is contemplated that themodule 300 can be executing in memory on a variety of computing devices. - As noted above, a robotic golf
club swing fixture 299 can be coupled to multiple, different data capture apparatuses 245, including at least one camera. The camera can be a web camera and can stream images of at least one of the plurality of robotic arms swinging thegolf club 285 to a remote operator over thecommunications network 275. Specifically, the images can be streamed to a web site or content browser which a remote operator on acomputing device 250 can be using. Additionally at least one camera, such as a web camera, can be located at the target hitting area (or landing area) to show an end user the results of a golf shot, including but not limited to the resulting location of a golf ball struck by the coupledgolf club 285 after the swinging of thegolf club 285. Of note, the additional camera(s) showing the end user the results of the golf shot, in one embodiment, can be coupled to the controller 260 (part of the robotic golf club swing fixture 299) or, in a different embodiment, the camera(s) can be separate. In any case, the camera(s) can transmit data (information) via a computer communications network to thecontroller 260 of thefixture 299 and/or to theserver 200 on which the golfclub swinging module 300 is executing upon. In other words, cameras, regardless of how they are connected, can be located at a target hitting area so to capture the resulting location of a golf ball and/or the path the ball took and can transmit the data (images) to an end user. Of further note, the camera may be controlled by a computer program executing in memory of thecontroller 260 or a computer program may be executing in memory of the camera itself. In other words, the data capture apparatuses 245 can operate using any method now known or later developed. - The golf
club swinging module 300 can include program code, which when executed by at least oneprocessor 210 on theserver 200 can receive from a remote operator over a computer communications network 275 a set of swing parameters defining different aspects of a golf club swing. The remote operator can select the set of parameters from a web page being displayed on acomputing device 250. Upon receiving a set of swing parameters, the golfclub testing module 300 can further include program code that can direct the plurality ofrobotic arms 270 to swing the coupledgolf club 285 according to the received swing parameters. Of note, multiplerobotic arms 270 can be coupled to eachservo motor 265 or just onerobotic arm 270 can be coupled to each servo motor. Themodule 300 can further include program code to sense a result of the swinging of the coupled golf club and the data derived from the sensed result can be transmitted to the remote operator over the computer communications network. The result of the swung golf club can include, but is not limited to, a sensed performance of the golf club, a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club. - Optionally, the
module 300 can include program code to transmit the data derived from the sensed result to agolf simulator 292. If needed (depending of the type and/or format of the data sent), thegolf simulator 292 can process the data in order to display the theoretical movement of the golf ball to an end user in response to the swinging of thegolf club 285. In other words, in an embodiment, an end user can remotely initiate a swing of theswing fixture 299, but instead of physically hitting a coupled golf ball, the resulting data from the swing can be captured and transmitted to thesimulator 292. Thegolf simulator 292 can display a calculated resulting location and/or path of the golf ball based upon the data derived from the sensed result of the swinging of the coupledgolf club 285. Further, thegolf simulator 292 can display information related to accuracy (to the hole), distance (to the hole), and who (which player, in a game setting, for instance) is closest to the pin. - In even further illustration of the operating of the program code of the golf club swinging module,
FIG. 3 is a flow chart illustrating a process for remotely swinging a golf club. Beginning inblock 305, a set of swing parameters defining different aspects of a golf club swing can be received from a remote operator over a computer communications network. The swing parameters can include, but are not limited to, direction, velocity, power, and shot shape. The swing parameters can be selected by a remote operator using a graphical user interface displayed on a website. Of note, a remote operator can be an end user using a computing device. Of further note, the swing parameters can be converted to data format, if required, so that the swing parameters can be forwarded to a plurality of robotic arms of a robotic golf club test fixture, so that the plurality of robotic arms can be directed to swing a coupled golf club according to the received swing parameters, as shown inblock 315. Of note, the golf club can also be in contact with a golf ball, so that when a robotic arm is direct to be swung, the golf club strikes the golf ball causing the golf ball to move. - In response to the golf club swing, a result of the swinging golf club can be sensed, as illustrated in
block 325. The sensed result of the swinging golf club can include sensing the performance of the golf club as well as a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club. Additional data related to a golf club or golf ball can be sensed. The data sensed can be collected, as shown inblock 335. Data capture apparatuses, such as cameras, launch monitors, tracking devices, etc. (or the computer programs operating these apparatuses) may only capture raw data related to the golf club swing and/or the flight of a golf ball; therefore, this data may need to be collected for further processing. Though, it is noted, the data capture apparatuses may be able to analyze the data related to the impact of the ball upon the swinging of the golf club, launch conditions of the ball, ball flight, and ball landing. Of note, if necessary, themodule 300 can calculate data from the collected data, as indicated inblock 345. In other words, if the data captures apparatuses (or the related computer programs) do not analyze the raw data, the raw data may need to be manipulated so that more useful data can be derived, such as launch data related to the golf club swing and/or the golf ball, including but not limited to head speed, ball speed, vertical launch angle, horizontal launch angle, back spin, side spin, peak trajectory, descent angle, descent velocity, carry dispersion, carry distance, total dispersion, and total distance. Upon data being derived (collected and/or calculated) from the sensed result of the golf swing, the data derived can be transmitted, as shown inblock 355. The data can be transmitted to a remote operator over the computer communications network. In one embodiment, the data can be transmitted to a remote operator so as to be displayed on a web page via a web browser. In another embodiment, the data can first be transmitted to a golf simulator. The golf simulator can then display a resulting location and/or path of the golf ball based upon the data collected inblock 335 to the remote operator. If necessary, the golf simulator can calculate a predicted result of the golf ball based on the sensed result of the golf club swing. - In addition to a remote golf club swinging method, the invention herein can further be used to remotely test a golf club. In a embodiment, a remote golf club testing method can include receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, sensing performance of the golf club, and transmitting data derived from the sensed performance to the remote operator over the computer communications network.
- Another embodiment of the invention can include a remote golf club testing system. The system can include a server configured for communicative coupling to a web server and a computing device. A robotic golf club swing fixture also can be provided and can include a servo motor coupled to a controller and a plurality of robotic arms attached to the servo motor. In one embodiment, the robotic golf club swing fixture can include one robotic arm. In another embodiment, the robotic golf club swing fixture can include multiple, different robotic arms. Each robotic arm can be coupled to a golf club. The remote golf club swinging module can include program code for receiving from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, for directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters, for sensing performance of the golf club, and for transmitting data derived from the sensed performance to the remote operator over the computer communications network. The swing parameters can include, but are not limited to direction, power, and velocity.
- As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied therein.
- Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the aforementioned. More specific examples (a non-exhaustive list) of the computer readable storage medium include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the aforementioned. In the context of this document, a computer readable storage medium may be any tangible medium that can contain or store a program for use by, or in connection with, an instruction execution system, apparatus, or device.
- A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
- Program code embodied in a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, radiofrequency, and the like, or any suitable combination of the aforementioned. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language and conventional procedural programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
- Aspects of the present invention have been described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. In this regard, the flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. For instance, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block might occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
- It is also understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks. The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- Finally, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
- The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention in various embodiments with various modifications as are suited to the particular use contemplated.
- Having thus described the invention of the present application in detail and by reference to embodiments thereof, it will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims as follows:
Claims (27)
1. A remote golf club swinging method comprising:
receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing;
directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters;
sensing a result of the swinging of the coupled golf club; and,
transmitting data derived from the sensed result to the remote operator over the computer communications network.
2. The method of claim 1 , wherein the result is a sensed performance of the golf club.
3. The method of claim 1 , wherein the result is a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club.
4. The method of claim 1 , wherein a swing parameter is direction.
5. The method of claim 1 , wherein a swing parameter is power.
6. The method of claim 1 , wherein a swing parameter is velocity.
7. The method of claim 1 , wherein a swing parameter is shot shape.
8. The method of claim 1 , wherein the robotic golf club swing fixture has one robotic arm.
9. A remote golf club swinging system comprising:
a server configured for communicative coupling to a web server and a computing device;
a robotic golf club swing fixture comprising at least one servo motor coupled to a controller and at least one data capture apparatus coupled to the controller, each servo motor coupled to a plurality of robotic arms, each of the plurality of robotic arms coupled to a golf club; and,
a golf club swinging module coupled to the server and the fixture, the module comprising program code enabled to receive from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing, to direct the plurality of robotic arms of the fixture to swing the coupled golf club according to the received swing parameters, to sense a result of the swinging of the coupled golf club, and to transmit data derived from the sensed result to the remote operator over the computer communications network.
10. The system of claim 9 , wherein the result is a sensed performance of the golf club.
11. The system of claim 9 , wherein the result is a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club.
12. The system of claim 9 , wherein a swing parameter is direction.
13. The system of claim 9 , wherein a swing parameter is power.
14. The system of claim 9 , wherein a swing parameter is velocity.
15. The system of claim 9 , wherein a swing parameter is shot shape.
16. The system of claim 9 , wherein the robotic golf club swing fixture has one robotic arm.
17. The system of claim 9 , further comprising a golf simulator coupled to the server.
18. The system of claim 9 , further comprising a golf simulator coupled to the controller.
19. A computer program product for remotely swinging a golf club, the computer program product comprising:
a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
computer readable program code for receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing;
computer readable program code for directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters;
computer readable program code for sensing a result of the swinging of the coupled golf club; and,
computer readable program code for transmitting data derived from the sensed result to the remote operator over the computer communications network.
20. The computer program product of claim 19 , wherein a swing parameter is direction.
21. The computer program product of claim 19 , wherein a swing parameter is power.
22. The computer program product of claim 19 , wherein a swing parameter is velocity.
23. The computer program product of claim 19 , wherein a swing parameter is shot shape.
24. The computer program product of claim 19 , wherein the result is a sensed performance of the golf club.
25. The computer program product of claim 19 , wherein the result is a resulting location of a golf ball struck by the coupled golf club subsequent to the swinging of the coupled golf club.
26. The computer program product of claim 19 , wherein the robotic golf club swing fixture has one robotic arm.
27. A remote golf club testing method comprising:
receiving in a robotic golf club swing fixture from a remote operator over a computer communications network a set of swing parameters defining different aspects of a golf club swing;
directing a plurality of robotic arms of the fixture to swing a coupled golf club according to the received swing parameters;
sensing performance of the golf club; and,
transmitting data derived from the sensed performance to the remote operator over the computer communications network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/947,150 US20180221739A1 (en) | 2012-09-11 | 2018-04-06 | System for remotely swinging a golf club |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/609,619 US9463572B2 (en) | 2012-09-11 | 2012-09-11 | System for remotely swinging a golf club |
US15/286,640 US20170021252A1 (en) | 2012-09-11 | 2016-10-06 | System for remotely swinging a golf club |
US15/947,150 US20180221739A1 (en) | 2012-09-11 | 2018-04-06 | System for remotely swinging a golf club |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/286,640 Continuation US20170021252A1 (en) | 2012-09-11 | 2016-10-06 | System for remotely swinging a golf club |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180221739A1 true US20180221739A1 (en) | 2018-08-09 |
Family
ID=50234177
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/609,619 Active - Reinstated 2034-04-05 US9463572B2 (en) | 2012-09-11 | 2012-09-11 | System for remotely swinging a golf club |
US15/286,640 Abandoned US20170021252A1 (en) | 2012-09-11 | 2016-10-06 | System for remotely swinging a golf club |
US15/947,150 Abandoned US20180221739A1 (en) | 2012-09-11 | 2018-04-06 | System for remotely swinging a golf club |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/609,619 Active - Reinstated 2034-04-05 US9463572B2 (en) | 2012-09-11 | 2012-09-11 | System for remotely swinging a golf club |
US15/286,640 Abandoned US20170021252A1 (en) | 2012-09-11 | 2016-10-06 | System for remotely swinging a golf club |
Country Status (8)
Country | Link |
---|---|
US (3) | US9463572B2 (en) |
EP (1) | EP2895241B1 (en) |
JP (1) | JP6524389B2 (en) |
KR (1) | KR102032342B1 (en) |
CN (1) | CN104661712B (en) |
AU (1) | AU2013315787B2 (en) |
CA (1) | CA2884718C (en) |
WO (1) | WO2014043055A1 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9339691B2 (en) | 2012-01-05 | 2016-05-17 | Icon Health & Fitness, Inc. | System and method for controlling an exercise device |
US9463572B2 (en) * | 2012-09-11 | 2016-10-11 | Eugene R. Parente | System for remotely swinging a golf club |
US9254409B2 (en) | 2013-03-14 | 2016-02-09 | Icon Health & Fitness, Inc. | Strength training apparatus with flywheel and related methods |
US9403047B2 (en) | 2013-12-26 | 2016-08-02 | Icon Health & Fitness, Inc. | Magnetic resistance mechanism in a cable machine |
WO2015138339A1 (en) | 2014-03-10 | 2015-09-17 | Icon Health & Fitness, Inc. | Pressure sensor to quantify work |
WO2015191445A1 (en) | 2014-06-09 | 2015-12-17 | Icon Health & Fitness, Inc. | Cable system incorporated into a treadmill |
WO2015195965A1 (en) | 2014-06-20 | 2015-12-23 | Icon Health & Fitness, Inc. | Post workout massage device |
US10391361B2 (en) | 2015-02-27 | 2019-08-27 | Icon Health & Fitness, Inc. | Simulating real-world terrain on an exercise device |
US10625137B2 (en) | 2016-03-18 | 2020-04-21 | Icon Health & Fitness, Inc. | Coordinated displays in an exercise device |
US10272317B2 (en) | 2016-03-18 | 2019-04-30 | Icon Health & Fitness, Inc. | Lighted pace feature in a treadmill |
US10493349B2 (en) | 2016-03-18 | 2019-12-03 | Icon Health & Fitness, Inc. | Display on exercise device |
US10671705B2 (en) | 2016-09-28 | 2020-06-02 | Icon Health & Fitness, Inc. | Customizing recipe recommendations |
CN110270077B (en) * | 2018-03-15 | 2021-08-31 | 哈里森·詹姆斯·肯布尔 | Batting evaluation system and method thereof |
JP7257691B2 (en) * | 2020-08-19 | 2023-04-14 | 株式会社テクノクラフト | remote lesson system |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5139581B2 (en) * | 1972-05-24 | 1976-10-28 | ||
US5763761A (en) * | 1996-02-22 | 1998-06-09 | Eugene R. Parente | Ball striking apparatus |
US7789742B1 (en) * | 1999-05-12 | 2010-09-07 | Wilbert Q. Murdock | Smart golf club multiplayer system for the internet |
US6997852B2 (en) | 1999-07-08 | 2006-02-14 | Icon Ip, Inc. | Methods and systems for controlling an exercise apparatus using a portable remote device |
US6415671B1 (en) | 2001-02-09 | 2002-07-09 | Kun-Lin Chien | Pneumatic golf club testing machine |
US6569030B1 (en) | 2002-03-19 | 2003-05-27 | David Paul Hamilton | Golf stroke demonstration robot |
JP4218875B2 (en) | 2003-02-13 | 2009-02-04 | Sriスポーツ株式会社 | Golf club swing simulation method and golf club design method using the simulation method |
JP2005288646A (en) | 2004-04-01 | 2005-10-20 | Toshiba Corp | Robot |
US7393286B1 (en) * | 2005-06-09 | 2008-07-01 | Robert Milton Renegar | Corrugated sole for a utility wedge golf club |
US8613620B2 (en) * | 2005-07-26 | 2013-12-24 | Interactive Sports Direct Incorporated | Method and system for providing web based interactive lessons with improved session playback |
JP5070441B2 (en) | 2007-10-10 | 2012-11-14 | 株式会社国際電気通信基礎技術研究所 | Robot remote control system |
US20090191929A1 (en) * | 2008-01-24 | 2009-07-30 | Full Swing Golf | Golf simulator connected to the internet |
US9486669B2 (en) * | 2008-02-20 | 2016-11-08 | Nike, Inc. | Systems and methods for storing and analyzing golf data, including community and individual golf data collection and storage at a central hub |
US8418536B2 (en) | 2009-09-18 | 2013-04-16 | Miyamae Co., Ltd. | Golf club testing machine |
US8882606B2 (en) | 2010-01-28 | 2014-11-11 | Nike, Inc. | Golf swing data gathering method and system |
US8935103B2 (en) | 2010-07-15 | 2015-01-13 | Nike, Inc. | Method and system for golf ball fitting analysis |
US9463572B2 (en) | 2012-09-11 | 2016-10-11 | Eugene R. Parente | System for remotely swinging a golf club |
US20160158599A1 (en) * | 2014-12-05 | 2016-06-09 | Konstantin Roslyakov | Golf Tracker |
-
2012
- 2012-09-11 US US13/609,619 patent/US9463572B2/en active Active - Reinstated
-
2013
- 2013-09-10 AU AU2013315787A patent/AU2013315787B2/en active Active
- 2013-09-10 KR KR1020157009395A patent/KR102032342B1/en active Active
- 2013-09-10 JP JP2015531300A patent/JP6524389B2/en active Active
- 2013-09-10 CN CN201380047391.6A patent/CN104661712B/en active Active
- 2013-09-10 WO PCT/US2013/058862 patent/WO2014043055A1/en active Application Filing
- 2013-09-10 EP EP13837907.8A patent/EP2895241B1/en active Active
- 2013-09-10 CA CA2884718A patent/CA2884718C/en active Active
-
2016
- 2016-10-06 US US15/286,640 patent/US20170021252A1/en not_active Abandoned
-
2018
- 2018-04-06 US US15/947,150 patent/US20180221739A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP2895241A1 (en) | 2015-07-22 |
US20140074425A1 (en) | 2014-03-13 |
KR102032342B1 (en) | 2019-10-15 |
EP2895241B1 (en) | 2020-05-27 |
WO2014043055A1 (en) | 2014-03-20 |
CN104661712A (en) | 2015-05-27 |
KR20150081427A (en) | 2015-07-14 |
CA2884718C (en) | 2019-06-18 |
AU2013315787B2 (en) | 2019-05-23 |
US9463572B2 (en) | 2016-10-11 |
US20170021252A1 (en) | 2017-01-26 |
JP6524389B2 (en) | 2019-06-05 |
AU2013315787A1 (en) | 2015-04-30 |
CA2884718A1 (en) | 2014-03-20 |
CN104661712B (en) | 2017-12-12 |
JP2015534473A (en) | 2015-12-03 |
EP2895241A4 (en) | 2016-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180221739A1 (en) | System for remotely swinging a golf club | |
US7625314B2 (en) | Adaptive training system with aerial mobility system | |
US8968100B2 (en) | Sports training apparatus and method | |
KR101800795B1 (en) | Web-based game platform with mobile device motion sensor input | |
US20160121193A1 (en) | Training devices for trajectory-based sports | |
CN103990279B (en) | Based on the golf ball-batting analogy method of internet | |
US20240082683A1 (en) | Kinematic analysis of user form | |
US20230144415A1 (en) | Estimating a trajectory path of an object | |
US20230285832A1 (en) | Automatic ball machine apparatus utilizing player identification and player tracking | |
KR101624595B1 (en) | Golf club and golf swing monitoring system | |
Yeo et al. | Augmented learning for sports using wearable head-worn and wrist-worn devices | |
US20230264092A9 (en) | Golf instruction method, apparatus and analytics platform | |
KR101078986B1 (en) | Virtual golf simulation apparatus and method | |
US12290729B2 (en) | Extended reality system for training and evaluation | |
KR101031424B1 (en) | Virtual golf simulation method and virtual golf simulation device and system using same | |
CN108126336B (en) | Method, device, electronic equipment and storage medium for realizing golf tracking | |
JP2021101263A (en) | Information processing equipment, information processing method, and program | |
US10339821B2 (en) | Platform and knowledge-based instruction engine implemented skill-improvement system through cloud computing | |
CN120235908A (en) | Ball striking effect evaluation method, device, system, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |