This disclosure relates generally to sports training, and in particular to basketball return systems with a user interface.
Training in sports involves the development of skills as well as physical conditioning. The game of basketball requires physical strength and conditioning, and also requires special skills. Successful development of those skills requires repetition during practice.
Although it is a team sport, basketball presents opportunities for an individual player to practice and improve his or her game without the need for other players to be present. A player can develop ball handling skills and shooting skills through individual practice.
Basketball players develop their shooting skills by shooting the basketball from various locations on the court. If a second player is not present to rebound, the shooter must rebound his or her own shots. The rebounding process can waste time that could otherwise be used in taking more shots. Over the past several decades, a number of ball collecting devices have been developed to collect basketballs shot at the basketball goal (i.e. the backboard and the attached hoop). The ball collecting devices generally include netting and a frame for supporting the netting around the basketball goal. The ball collecting devices are often used with a ball delivery device, which directs the ball back to the player.
Motorized ball delivery devices can return basketballs to a shooter at various locations on a basketball court. The ball delivery device can have programs that determine which direction to return balls to the player, how many times to return the ball, etc.
Successful shooting of a basketball can be affected by a number of factors, including a player's form or technique in shooting. In some cases, poor form or technique may have less effect when the player is taking uncontested shots from similar distances, but may limit the player's ability to score in game conditions when the player is guarded by another player and often must attempt shots from varying positions on the court having varying distances from the basketball goal.
As players advance in skill and experience, they are often confronted with the realization that the speed of the game gets “faster,” and that he or she will need to consistently score under increasing pressure and from various positions on the court. Continuing to practice under conditions that do not effectively simulate the level of movement required of the shooter and the variety of shot locations frequently encountered in game conditions can result in some improvement in the player's shooting, but may ultimately limit the player's success as the player rises through the levels of play from, e.g., junior varsity to varsity, from high school varsity to college, and from college to professional basketball.
In one example, a basketball training system includes a user interface that presents a visual representation of a portion of a basketball court that is free of indicia representing predetermined ball delivery locations on the basketball court. The user interface receives user inputs relative to the visual representation that identify selected ball delivery locations desired by the user. The basketball training system further includes a ball delivery machine, responsive to the user interface, for delivering basketballs to the selected ball delivery locations.
In another example, a method includes outputting, by a computing device for presentation at a display device, a user interface including a visual representation of at least a portion of a basketball court that is free of indicia representing predetermined ball delivery locations on the basketball court. The method further includes receiving, by the computing device, an indication of user inputs relative to the visual representation that identify selected ball delivery locations, and outputting, by the computing device, the selected ball delivery locations to a controller of a ball delivery machine configured to deliver basketballs to the selected ball delivery locations.
Ball collection system 12 includes net 16, net frame 18, base 20, shots made counter 22 (which, in this embodiment, includes made shots funnel 24, shots made sensor 26, and counter support frame 28), and upper ball feeder 30. When machine 10 is used for shooting practice, net 16 is positioned in front of a basketball backboard (not shown) so that the basketball hoop and net (not shown) are immediately above shots made counter 22. The size of net 16 is large enough so that missed shots (which do not go through the basketball hoop and net and through shots made counter 22) will still be collected by net 16 and funneled down to upper ball feeder 30.
Ball delivery system 14 includes ball delivery machine 32, main ball feeder 34, and ball ready holder 36. The inlet of main ball feeder 34 is positioned immediately below the outlet of upper ball feeder 30. Ball delivery machine 32 is pivotally mounted on base 20. Ball delivery machine 32 is pivotable about an axis that is aligned with the inlet of main ball feeder 34 and the outlet of upper ball feeder 30. Balls drop out of upper ball feeder 30 into main ball feeder 34. Balls are delivered one at a time from main ball feeder 34 into ball ready holder 36 at the front of ball delivery machine 32. Launch arm 38 (shown in
As is further described below, ball delivery system 14 is responsive to a user interface that receives user input to identify selected ball delivery locations desired by a user. The user interface presents a visual representation of at least a portion of a basketball court that is free of indicia representing predetermined ball delivery locations on the basketball court, such as visual markings, buttons, lights, or other physical or graphically-rendered indications of predetermined ball delivery (or shot) locations. The user interface is configured to receive inputs (e.g., gesture input at a touch-sensitive and/or presence-sensitive device, input from a mouse, keyboard, voice command, or other input) relative to the visual representation of the basketball court that identify the selected ball delivery locations. A control system (shown in
Balls that are collected by ball collection system 12 enter the upper end of main ball feeder 34 and are directed downward and forward to toggle arm 54, which stops further ball movement. When toggle arm 54 is actuated, it pivots to release a single ball to travel further downward and forward into ball ready holder 36. As shown in
Rotation of ball delivery machine 32 relative to base 20 is driven by a gear motor responsive to commands from the control system of ball delivery machine 32 that causes bottom platform 40 to rotate relative to base 20 to cause ball delivery machine 32 to deliver balls, in sequence, to selected ball delivery locations. A direction of rotational movement of bottom platform 40 relative to base 20 is determined and managed by the control system based on an angular distance between sequentially-consecutive ball delivery locations.
In certain examples, one or more portions of ball delivery machine 32 can rotate along a vertical axis of ball delivery machine 32 (i.e., tilt) to adjust a vertical trajectory (i.e., exit angle) of balls delivered out of ball delivery machine 32 and ball ready holder 36. For instance, launching mechanisms of ball delivery machine 32 (e.g., including launch arm 38 and ball ready holder 36) can be pivotally mounted to tilt within ball delivery machine 32 relative to the vertical axis of ball delivery machine 32. Trajectories of delivered balls can be controlled (e.g., via tilt commands from a control system) to account for a distance between ball delivery machine 32 and a selected ball delivery location. For instance, a higher trajectory having a larger arc (e.g., a larger vertical angle of exit trajectory with respect to a horizontal axis extending along base 40) can be determined (and ball delivery machine 32 vertically rotated to provide such trajectory) for longer distances between ball delivery machine 32 and a selected ball delivery location. Similarly, a lower trajectory having a smaller arc (e.g., a smaller vertical angle of exit trajectory with respect to the horizontal axis extending along base 40) can be determined for shorter distances between ball delivery machine 32 and a selected ball delivery location. The trajectory can be determined based on both the ball delivery speed and a selected ball delivery height. As such, ball delivery machine 32 can control ball delivery speed in conjunction with the trajectory of ball delivery to deliver balls to account for varying distances between different selected ball delivery locations and a position of ball delivery machine 32.
In certain examples, a trajectory (i.e., exit angle) of balls launched from ball delivery machine 32 can be determined (or user selected) to account for user height. For instance, a higher trajectory having a larger exit angle with respect to the horizontal axis extending along base 40 (or the ground) can be selected to deliver balls to, e.g., taller users to enable such users to catch the ball at an elevation that is between the user's waist and the user's head. Similarly, a lower trajectory having a smaller exit angle with respect to the horizontal axis can be selected to delivery balls to, e.g., shorter users to enable such users to catch the ball at an elevation that is between the shorter user's waist and head. In certain examples, the trajectory of balls launched from ball delivery machine 32 can be determined (or user selected) to provide a type of pass, such as a bounce pass configured to bounce the ball prior to reaching the ball delivery location, a lob pass configured to have a large arcing trajectory toward the ball delivery location, or other types of passes. Indications of user selected height and/or type of pass can be received at a user interface operatively connected to the controller, as is further described below.
Accordingly, ball delivery machine 32 can be controlled (e.g., by a control system) to pivot both horizontally to deliver balls to a plurality of selected ball delivery locations and vertically (i.e., tilt) to adjust the trajectory of the delivered balls. As such, ball delivery machine 32 can be automatically controlled to enable training of game-like scenarios where a user may receive passes at varying locations and distances on the court as well as varying types of passes (e.g., chest passes, bounce passes, lob passes, or other types of passes) and passes having varying delivery speeds and delivery elevations. Ball delivery machine 32, therefore, can help to better simulate such game-like scenarios than a ball delivery machine that is limited to, e.g., fixed trajectories and ball delivery speeds at predetermined ball delivery locations, such as at locations spaced around the three-point line.
As illustrated in
In some examples, a delivery speed of balls driven by launch arm 38 (i.e., a speed at which launch arm 38 propels balls out of ball delivery machine 32) is set by a ball delivery speed adjustment actuator (shown in
The ball delivery speed can be determined by the control system based on a distance between ball delivery machine 32 and a ball delivery location. For example, the control system can determine a physical distance between ball delivery machine 32 and one or more selected ball delivery locations based on a relative distance between graphically-rendered locations of ball delivery machine 32 and the one or more selected ball delivery locations on a visual representation of at least a portion of a basketball court, as is further described below. The control system can determine the ball delivery speed based on (e.g., proportional to) the determined physical distances.
In some examples, the control system can modify the ball delivery speed for each selected ball delivery location. In other examples, the control system can determine the ball delivery speed for groups of selected ball delivery locations within threshold distances from ball delivery machine 32. In yet other examples, the control system can determine a single ball delivery speed based on an average of the distances between ball delivery machine 32 and each of the ball delivery locations, a maximum of the distances, a minimum of the distances, or other aggregations of the distances between ball delivery machine 32 and the selected ball delivery locations. In some examples, the control system may not modify the ball delivery speed. Rather, in such examples, the ball delivery speed may be manually adjusted via ball distance adjustment knob 60 (and ball distance pre-select plate 62).
Controller 94 is a processor-based controller that coordinates the operation of components of the control system. Controller 94 includes one or more processors and computer-readable memory encoded with instructions that, when executed by the one or more processors, cause controller 94 to operate in accordance with techniques described herein. Examples of one or more processors of controller 94 can include any one or more of a microprocessor, a controller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other equivalent discrete or integrated logic circuitry.
Computer-readable memory of controller 94 can be configured to store information within controller 94 during operation. Computer-readable memory of controller 94, in some examples, is described as computer-readable storage media. In some examples, a computer-readable storage medium can include a non-transitory medium. The term “non-transitory” can indicate that the storage medium is not embodied in a carrier wave or a propagated signal. In certain examples, a non-transitory storage medium can store data that can, over time, change (e.g., in RAM or cache). In some examples, the computer-readable memory is a temporary memory, meaning that a primary purpose of the computer-readable memory is not long-term storage. Computer-readable memory, in some examples, includes volatile memory that does not maintain stored contents when electrical power to controller 94 is removed. Examples of volatile memories can include random access memories (RAM), dynamic random access memories (DRAM), static random access memories (SRAM), and other forms of volatile memories. In some examples, computer-readable memory of controller 94 is used to store program instructions for execution by the one or more processors of controller 94. For instance, computer-readable memory of controller 94, in some examples, is used by software or applications running on controller 94 to temporarily store information during program execution.
Computer-readable memory of controller 94, in some examples, also includes one or more computer-readable storage media that can be configured to store larger amounts of information than volatile memory. In some examples, computer-readable memory of controller 94 includes non-volatile storage elements. Examples of such non-volatile storage elements can include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories.
Sensors 26, 66, 68, and 72 are used by controller 94 in coordinating and controller the operation of motors 78, 80, 82, as well as ball speed adjustment actuator 76 and tilt adjustment actuator 77. Calibration sensors 70 are used by controller 94 during setup to provide calibration of the signal from potentiometer 74, which is used to determine the rotational position of ball delivery machine 32.
Controller 94 utilizes communication device(s) 84 to communicate with external devices via one or more wired or wireless communication networks, or both. Communication device(s) 84 can include any one or more communication devices, such as network interface cards (e.g., Ethernet cards), optical transceivers, radio frequency transceivers, Bluetooth transceivers, 3G or 4G transceivers, and WiFi radio computing devices.
In operation, controller 94 communicates with, e.g., a remote computing device to receive indications of positions of selected ball delivery locations, ball delivery timing (e.g., tempo) information, a number of balls delivered per location, a type of pass (e.g., chest pass, bounce pass, lob pass, or other type of pass), a selected ball delivery height, and position information of ball delivery machine 32 relative to a visual representation of at least a portion of a basketball court presented by a user interface executed by the remote computing device. As is further described below, controller 94 controls operation of components of the control system, such as ball speed adjustment actuator 76, tilt adjustment actuator 77, ball feeder toggle motor 78, rotation motor 80, and launch drive motor 82 to deliver balls to the selected ball delivery locations according to the received information. In certain examples, controller 94 controls operation of projection system 83 to project optical indications on the basketball court. For example, projection system 83 can include one or more light sources (e.g., LEDs, halogen or incandescent light bulbs, or other light sources) configured to be angularly controlled to emit visible light at locations and/or patterns on the basketball court. The one or more light sources can be colored light sources (or controllable to emit a determined light color). Controller 94 can control operation of projection system 83 to project optical indications, such as colored or uncolored light spots on the basketball court to visually indicate, e.g., one or more of a next selected ball delivery location, a next user shot location, or other indications, as is further described below.
As such, controller 94 controls operation of components of the control system of ball delivery machine 32 to deliver balls to selected ball delivery locations according to, e.g., user instructions received via a user interface that presents a visual representation of at least a portion of a basketball court that is free of indicia representing predetermined ball delivery locations on the basketball court, as is further described below.
As illustrated in
Website 98, as illustrated in
Computing device 96, as illustrated in the example of
While the example of
In one example operation, computing device 96 is a portable computing device, such as a mobile phone (e.g., smartphone), tablet computer, or other portable computing device including a touch-sensitive display device (commonly referred to as a touchscreen) that enables user interaction in the form of gesture input (e.g., single-finger tap gestures, multi-finger tap gestures, single-finger swipe gestures, multi-finger swipe gestures, pinch gestures using two or more fingers, or other gesture input). Computing device 96 outputs a graphical user interface that presents a visual representation of at least a portion of a basketball court and receives user gesture inputs relative to the visual representation that identify selected ball delivery locations desired by the user, as is further described below. Computing device 96 outputs indications of the selected ball delivery locations to one or more of basketball training machine 10 and website 98. Basketball training machine 10 delivers balls to the selected ball delivery locations according to the indications received from computing device 96. As such, basketball training system 95 enables user interaction via a graphical user interface to select ball delivery locations that are not limited (via indications or otherwise limited) to predetermined ball delivery locations. Moreover, the use of computing device 96 (which can be separate from basketball training machine 10) to present the graphical user interface can enable a coach, player, or other user to more easily and efficiently interact with basketball training machine 10, such as from a sideline of the basketball court or even a remote location to provide workouts, drills, and other training regimens.
As illustrated in
Three-point lines 106A, 106B, and 106C each represent boundaries on the visual representation of the portion of the basketball court separating two-point regions (between the basketball goal and the respective three-point line) from three-point regions (outside the interior of the respective three-point arc). Each of three-point lines 106A, 106B, and 106C represent three-point boundary lines traditionally used in high school competitions and younger (i.e., three-point line 106A), collegiate competitions (i.e., three-point line 106B), and professional competitions (i.e., three-point line 106C), though other three-point boundary lines or indications of point value bifurcations are possible.
Graphical presentation of any one or more of three-point lines 106A, 106B, and 106C can be user selectable via the graphical user interface. For instance, the graphical user interface can present one or more graphical control elements, such as checkboxes, dropdown menus, buttons, sliders, or other graphical control elements configured to allow user input to select the graphical rendering of any combination of three-point lines 106A, 106B, and 106C on the visual representation of the portion of the basketball court (including the graphical rendering of none of three-point lines 106A, 106B, and 106C). As an example, the graphical user interface can present graphical control elements in the form of three checkboxes, each corresponding to one of three-point lines 106A, 106B, and 106C and having a selectable attribute to cause the graphical user interface to display the corresponding one of three-point lines 106A, 106B, and 106C. As illustrated in
The graphical user interface and/or basketball training machine 10 utilize three-point lines 106A, 106B, and 106C to determine a point value corresponding to a made shot associated with a ball delivery location, as is further described below. In certain examples, the graphical user interface presents graphical control elements that enable user interaction to identify which of three-point lines 106A, 106B, and 106C is selected as bifurcating the three-point region from the two-point region for purposes of point value. For instance, the graphical user interface can present graphical control elements enabling user interaction to select the display of each of three-point lines 106A, 106B, and 106C, and to utilize, e.g., three-point line 106B as the active three-point line for purposes of allocating shot values. Accordingly, the graphical user interface can enable user interaction to cause portion 104 of the graphical user interface to display any one or more of three-point lines 106A, 106B, and 106C and to utilize a selected one of three-point lines 106A, 106B, and 106C for purposes of shot value allocation.
In the illustrated example of
Dotted lines extending from icon 108 illustrate delivery of balls from basketball training machine 10 to each of ball delivery locations 112A-112D, though the dotted lines may not be graphically rendered by portion 104 of the graphical user interface in some examples. In addition, it should be understood that, in operation, basketball training machine 10 rotates to deliver balls to each of ball delivery locations 112A-112D.
The group of ball delivery locations 112A-112D represents an ordered sequence of selected ball delivery locations. The ordered sequence can be user selectable and modifiable. For instance, the ordered sequence can correspond to user selection to deliver one or more basketballs first to ball delivery location 112A, second to ball delivery location 112B, third to ball delivery location 112C, and fourth to ball deliver location 112D. In general, the ordered sequence can correspond to any ordered sequence of ball delivery locations 112A-112D that can be selected by user input to identify the sequence. In some examples, the ordered sequence can include movement of icon 108 corresponding to ball delivery machine 32 (and the associated movement of ball delivery machine 32) between locations on portion 104 of the graphical user interface, such as between locations underneath the basketball and away from the basketball goal, between locations away from the basketball goal, or other movements of icon 108. While illustrated as including four selected ball delivery locations 112A-112D, in other examples, more or fewer than four ball delivery locations can be selected.
In operation, computing device 96 outputs an indication of the locations and sequence of selected ball delivery locations 112A-112D to basketball training machine 10 (i.e., to controller 94 via communication device 84), which delivers basketballs to the selected locations according to the ordered sequence. The indication of the locations can include, e.g., an indication of relative angles between each of selected ball delivery locations 112A-112D. In some examples, the indication of the locations can include a position of selected ball delivery locations 112A-112D with respect to the visual representation of the portion of the basketball court. In other examples, the indication of the locations can include a position of selected ball delivery locations 112A-112D with respect to the basketball court after scaling of the locations from a graphical scale (corresponding to the visual representation) to a physical scale (corresponding to the physical basketball court).
In some examples, computing device 96 can receive indications of the selected ball delivery locations in the form of a stored drill received from, e.g., workout server 102. For instance, the graphical user interface can present graphical control elements that enable user input (e.g., gesture input, mouse input, keyboard input, voice command input, or other user input) to select the stored drill. In response, computing device 96 can retrieve the stored drill information from workout server 102 accessed by computing device 96 via, e.g., the Internet. The stored drill can indicate the selected ball delivery locations, the sequence of the selected ball locations, tempo information corresponding to timing of the delivery of basketballs between the selected ball delivery locations, a number of basketballs to be delivered to each of the selected ball delivery locations, or other information corresponding to the stored drill. In some examples, the stored drill can indicate a location and/or orientation of the ball delivery machine, as is further described below.
Computing device 96 can receive indications of selected ball delivery locations 112A-112D via user selection input relative to the visual representation of the portion of the basketball court. For example, user selection input can include gesture input (e.g., tap gesture input, drag-and-drop gesture input, or other gesture input) relative to the visual representation of the portion of the basketball court received at a touchscreen display. In some examples, user selection input can include location selection input relative to the visual representation of the portion of the basketball court received via a mouse, keyboard, or other input device operatively coupled to computing device 96.
In certain examples, computing device 96 can receive (and display) indications of selected user shot locations independent from the indications of selected ball delivery locations. For instance, computing device 96 can receive indications of user selection input (e.g., tap gesture input, drag-and-drop gesture input, mouse input, keyboard input, or other user selection input) to select user shot locations corresponding to a selected ball delivery location. The selected user shot locations can indicate locations relative to the visual representation of the portion of the basketball court corresponding to a shot location that is different than a selected ball delivery location. The selected shot locations can correspond to user movement prior to receiving the basketball at a selected ball delivery location, after receiving the basketball at the selected ball delivery location, or both. For example, a user can receive a basketball at a selected ball delivery location and move (e.g., dribble) to the selected shot location corresponding to the selected ball delivery location to attempt the shot at the basketball goal. In other examples, the user can receive the basketball at the selected ball delivery location after specified player movement (e.g., specified and displayed via the graphical user interface) and can attempt the shot at the basketball goal from at or near the selected ball delivery location. In yet other examples, the user can receive the basketball at the selected ball delivery location after specified first movement and can attempt the shot at the basketball goal at a separate selected shot location after specified second movement from the selected ball delivery location. Computing device 96 and/or controller 94 of basketball training machine 10 can utilize selected user shot locations, rather than the selected ball delivery locations, for purposes of shot value allocations in examples where the selected shot location is specified as separate from the selected ball delivery location.
The ability to specify selected shot locations independent from selected ball delivery locations enables computing device 96 to attribute shot values and, in some examples, determine user analytics corresponding to the selected shot locations rather than merely the selected ball delivery locations. Such differentiation between selected shot locations and selected ball locations enables balls to be delivered to locations that are, e.g., in the three-point range (i.e., outside the selected three-point line) and to allocate shot values according to a selected shot location that is, e.g., in the two-point range (i.e., inside the selected three-point line). Similarly, balls can be delivered to locations within the two-point range while having a corresponding shot location that is within the three-point range, thereby enabling simulation of game-like user movement while allocating shot values (and tracking user analytics data) corresponding to the actual shot location that can be different than the selected ball delivery location. Moreover, the ability to incorporate user movement before and/or after receiving the basketball at the selected ball delivery location enables enhanced drill development that better simulates the game-like movement encountered by players in games, rather than requiring that shots be attempted from at or near the ball delivery location for purposes of shot value allocation and user analytics data (e.g., analytics corresponding to user shooting percentage from a location, while moving in a particular direction, from a particular side of the court, from a particular range on the court, or other analytics).
In some examples, portion 104 of the graphical user interface can display an indication of the selected player movement between selected ball delivery locations and corresponding selected user shot locations. For instance, portion 104 of the graphical user interface can display an arrowed line, a dotted or dashed line, a shaded or colored curvilinear path, an animated path, or other graphical indication of the selected player movements. Indications of the selected ball delivery locations and the selected user shot locations can be differentiated by, e.g., a color of the indication, a shading of the indication, a shape of the indication, or other differentiations. In certain examples, controller 94 can coordinate operation of projection system 83 to project an indication of selected ball delivery locations and/or selected user shot locations on the physical basketball court. For example, controller 94 can control operation of projection system 83 to project an optical indication (e.g., a spot of light) corresponding to a next selected ball delivery location, thereby providing visual guidance to the user of a next location to which balls will be delivered. As another example, controller 94 can control operation of projection system 83 to project a first optical indication (e.g., a first spot of light) corresponding to a selected ball delivery location and a second optical indication corresponding to a selected user shot location. The first and second optical indications can be simultaneously displayed and visually differentiable via, e.g., color, size, shape, or other differentiations. For instance, controller 94 can cause projection system 83 to output a red spot of light at a selected ball delivery location and a green spot of light at a selected user shot location corresponding to the selected ball delivery location, thereby providing visual guidance to a user regarding the location of a next ball delivery as well as a shot location to which the user is to move to attempt the shot. In yet other examples, controller 94 can cause a speaker or other audio system to output an audible indication of a next ball delivery location and/or selected user shot location (e.g., the audible words “left post”, “right free-throw elbow”, or other audible indications). Accordingly, controller 94 can coordinate operation of ball delivery machine 32 to guide a user through a drill including multiple ball delivery and shot locations from various locations of the court.
In certain examples, the graphical user interface can present graphical control elements that enable user input to select one or more player maneuvers associated with selected player movement between selected ball delivery locations and corresponding selected user shot locations. Examples of selected player maneuvers can include pump fakes, jab steps, crossover dribbles, behind the back dribbles, two dribble pullups, three dribble pullups, or other player maneuvers to be performed prior to or simultaneously with player movement between a selected ball delivery location and a corresponding selected user shot location. Portion 104 of the graphical user interface can display an indication of the selected player maneuvers, such as by displaying textual descriptions of the maneuvers, graphical icons representing the maneuvers, animations of the maneuvers, or other indications of the selected player maneuvers.
The ordered sequence of selected ball delivery locations 112A-112D can be determined, in some examples, according to a sequence by which user selection input is received to select ball delivery locations 112A-112D. For instance, a user can select ball delivery locations 112A-112D in the ordered sequence by first selecting ball delivery location 112A, second selecting ball delivery location 112B, third selecting ball delivery location 112C, and fourth selecting ball delivery location 112D. In some examples, the graphical user interface can present graphical control elements in the form of numbered icons that can be controlled via, e.g., drag-and-drop gesture input to identify the ordered sequence of selected ball delivery locations. For instance, a user can provide gesture input to move the numbered icons (e.g., via drag-and-drop gesture input) to locations relative to the visual representation of the portion of the basketball court to identify both the order and location of selected ball delivery locations (e.g., by moving a first numbered icon to a first ball delivery location corresponding to a first location in the ordered sequence, moving a second numbered icon to a second ball delivery location corresponding to a second location in the ordered sequence, etc.) In some examples, the user can provide gesture input to move the numbered icons to previously-selected ball delivery locations to identify the ordered sequence of the selected ball delivery locations.
In certain examples, the graphical user interface can provide one or more graphical control elements that enable user input to reorder the ordered sequence of selected ball delivery locations 112A-112D. For example, the graphical user interface can provide graphical control elements that enable user input to move a selected ball delivery location to a particular position in the ordered sequence (e.g., first, second, third, fourth, etc.) In some examples, the graphical user interface can provide graphical control elements that enable user input to move a selected ball delivery location relative to a current position of the selected ball delivery location within the ordered sequence (e.g., forward or backward a selected number of places within the ordered sequence). In some examples, the graphical user interface can provide graphical control elements that enable user input to delete and/or insert one or more selected ball delivery locations within the ordered sequence of selected ball delivery locations 112A-112D.
Computing device 96 can output an indication of the ordered sequence of selected ball delivery locations 112A-112D at portion 104 of the graphical user interface. For example, computing device 96 can output a numerical value corresponding to the ordered sequence at each of selected ball delivery locations 112A-112D (e.g., the number 1 at or near ball delivery location 112A, the number 2 at or near ball delivery location 112B, the number 3 at or near ball delivery location 112C, and the number 4 at or near ball delivery location 112D). In certain examples, basketball training machine 10 outputs an indication of a location of a next selected ball delivery location to which a basketball is to be delivered, such as at front display 46 or via a wired or wireless speaker of basketball training machine 10.
The graphical user interface can provide one or more graphical control elements that enable user input (e.g., gesture input, mouse input, keyboard input, or other user input) to select a number of basketballs to be delivered to each of selected ball delivery locations 112A-112D, a tempo (or relative timing) between delivered basketballs, a shots made goal, a time duration goal, a shots attempted goal, a consecutive shots made goal, a total number of points made goal, or other goal associated any one or more of selected ball delivery locations 112A-112D (i.e., to be met before basketballs are delivered to a sequentially next one of selected ball delivery locations 112A-112D), or other information corresponding to selected ball delivery locations 112A-112D.
Accordingly, the graphical user interface (including portion 104) enables user interaction to select ball delivery locations relative to the visual representation of the portion of the basketball court to identify selected ball delivery locations that are not limited in location by indicia of predetermined shot locations. As such, basketball training system 95 implementing the graphical user interface can enable user input to more effectively simulate the level of movement required of the shooter and the variety of shot locations frequently encountered in game conditions to enhance the training experience. Moreover, the graphical user interface and corresponding operation of basketball training system 95 described herein enables a user to attempt shots from both two-point and three-point ranges (and associated shot value allocations to be tracked), to attempt shots both before and after specified player movement, and to receive varying types of passes (e.g., bounce passes, chest passes, lob passes, or other types of passes) at varying ball delivery speeds that can be designated by the user and/or automatically determined by controller 94 based on a distance between ball delivery machine 32 and selected ball delivery locations. The techniques can therefore provide a dramatically enhanced training experience (as compared to a system that limits ball delivery locations to predefined locations and ball delivery speeds to a single, or manually selected speed) that better simulates game-like scenarios and accommodates drills that can be specifically targeted to a player's developmental needs.
As further illustrated in
As further illustrated in
Graphical icon 108, in the examples of
Computing device 96, in some examples, transmits an indication of the orientation and location of icon 108 to basketball training machine 10, which utilizes the location and orientation information to coordinate operation of components of basketball training machine 10 to deliver basketballs to selected ball delivery locations 114A-114D. In other examples, computing device 96 transmits to basketball training machine 10 position information of selected ball delivery locations 114A-114D relative to icon 108. In such examples, basketball training machine 10 can deliver basketballs to selected ball delivery locations 114A-114D based on the relative position information without knowledge of absolute position of icon 108 with respect to the visual representation of the portion of the basketball court. As such, rather than require a user to mentally translate the location and orientation of icon 108 relative to predetermined ball delivery locations when basketball training machine 10 is located away from the basketball goal, basketball training system 95 implementing techniques described herein can enable a user to select ball delivery locations relative to a graphically-rendered icon having an orientation and location corresponding to a physical location and orientation of basketball training machine 10. That is, the ability to place icon 108 on portion 104 relative to the visual representation of the portion of the basketball court such that icon 108 matches both a location and orientation of ball delivery machine 32 on the physical basketball court enables a user to more easily select ball delivery locations, user shot locations, or provide other input relative to icon 108 without requiring the user to mentally invert or transpose the orientation of icon 108 to match the position of ball delivery machine 32 as would be required if icon 108 could only be graphically rendered, e.g., under the basketball goal.
The techniques described herein enable a user (e.g., player, coach, or other user) to select desired ball delivery locations relative to a visual representation of a basketball court that are not limited by indications of predetermined ball delivery locations. Basketball training machine 10 can adjust a ball delivery speed and/or trajectory of delivered balls to automatically adjust for varying distances between basketball training machine 10 and selected ball delivery locations, as well as differing types and/or elevations of passes at any one or more of the ball delivery locations. Moreover, the ability to position basketball training machine 10 away from the basketball goal and to easily select ball delivery locations (and, in some instances, separate user shot locations), specify player movement, player maneuvers, and identify goals associated with such locations can enable the user to better simulate game-like conditions where passes are most frequently received from a location other than beneath the basketball goal. This ability to better simulate game-like player movement as well as pass delivery and receipt locations at varying locations and distances from the basketball goal without limiting such locations via predefined indicia can increase an effectiveness of the time spent training to prepare the user to effectively respond to game-like conditions.
While the invention has been described with reference to an exemplary embodiment(s), it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment(s) disclosed, but that the invention will include all embodiments falling within the scope of the appended claims.
This application claims priority to U.S. Provisional Application No. 62/402,417 filed on Sep. 30, 2016, and entitled “BASKETBALL TRAINING SYSTEM,” the contents of which are hereby incorporated by reference in their entirety. This application also claims priority to U.S. Provisional Application No. 62/419,177 filed on Nov. 8, 2016, and entitled “BASKETBALL TRAINING SYSTEM,” the contents of which are hereby incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
1223386 | Handelan | Apr 1917 | A |
2908266 | Cooper | Oct 1959 | A |
3776550 | McNabb | Dec 1973 | A |
3802703 | Van Tassel | Apr 1974 | A |
3878828 | Francesco | Apr 1975 | A |
4168695 | Haller et al. | Sep 1979 | A |
4262648 | Wegener et al. | Apr 1981 | A |
4471746 | Ando | Sep 1984 | A |
4517953 | Osaka et al. | May 1985 | A |
4579340 | Jenkins et al. | Apr 1986 | A |
4667957 | Joseph | May 1987 | A |
4678189 | Koss | Jul 1987 | A |
4714248 | Koss | Dec 1987 | A |
4882676 | Van De Kop et al. | Nov 1989 | A |
4913431 | Jakobs | Apr 1990 | A |
4915384 | Bear | Apr 1990 | A |
4936577 | Kington et al. | Jun 1990 | A |
4940231 | Ehler | Jul 1990 | A |
4955605 | Goldfarb | Sep 1990 | A |
5016875 | Joseph | May 1991 | A |
5125651 | Keeling et al. | Jun 1992 | A |
5183253 | Grimaldi et al. | Feb 1993 | A |
5312099 | Oliver, Sr. | May 1994 | A |
5365427 | Soignet et al. | Nov 1994 | A |
5393049 | Nelson | Feb 1995 | A |
5409211 | Adamek | Apr 1995 | A |
5417196 | Morrison et al. | May 1995 | A |
5540428 | Joseph | Jul 1996 | A |
5601284 | Blackwell et al. | Feb 1997 | A |
5692978 | Hummel | Feb 1997 | A |
5676120 | Joseph | Oct 1997 | A |
5681230 | Krings | Oct 1997 | A |
5746668 | Ochs | May 1998 | A |
5771018 | Kennedy | Jun 1998 | A |
5776018 | Simpson | Jul 1998 | A |
5813926 | Vance | Sep 1998 | A |
5816953 | Cleveland | Oct 1998 | A |
5842699 | Mirando et al. | Dec 1998 | A |
5937143 | Watanabe | Aug 1999 | A |
5980399 | Campbell et al. | Nov 1999 | A |
6167328 | Takaoka | Dec 2000 | A |
6224503 | Joseph | May 2001 | B1 |
6241628 | Jenkins | Jun 2001 | B1 |
6280352 | Coffeen | Aug 2001 | B1 |
6302811 | Topham | Oct 2001 | B1 |
6389368 | Hampton | May 2002 | B1 |
6458049 | Bush | Oct 2002 | B2 |
6659893 | Campbell et al. | Dec 2003 | B1 |
6707487 | Aman | Mar 2004 | B1 |
6918591 | D'Amico et al. | Jul 2005 | B2 |
7056237 | Slavey et al. | Jun 2006 | B2 |
7066845 | Joseph | Jun 2006 | B2 |
7288034 | Woodard et al. | Oct 2007 | B2 |
7620466 | Neale et al. | Nov 2009 | B2 |
7641574 | Steen | Jan 2010 | B2 |
7927237 | Jenkins | Apr 2011 | B2 |
7945349 | Svensson | May 2011 | B2 |
7970492 | Matsushima | Jun 2011 | B2 |
8012046 | Campbell et al. | Sep 2011 | B2 |
8123634 | Lovett | Feb 2012 | B1 |
8147356 | Campbell et al. | Apr 2012 | B2 |
8301277 | Jones | Oct 2012 | B2 |
8617008 | Marty | Dec 2013 | B2 |
8727784 | Wolf | May 2014 | B1 |
8845460 | Feldstein | Sep 2014 | B1 |
8852030 | Campbell et al. | Oct 2014 | B2 |
8911308 | Daniels | Dec 2014 | B2 |
9017188 | Joseph | Apr 2015 | B2 |
D739488 | Campbell et al. | Sep 2015 | S |
9199150 | Wackerly | Dec 2015 | B2 |
9444306 | Bradfield | Sep 2016 | B2 |
9452339 | Shah | Sep 2016 | B1 |
9569005 | Ahmed | Feb 2017 | B2 |
9600716 | Skjaerseth et al. | Mar 2017 | B2 |
9724584 | Campbell et al. | Aug 2017 | B1 |
9808696 | Campbell et al. | Nov 2017 | B2 |
9975026 | Campbell et al. | May 2018 | B2 |
10004949 | Brothers et al. | Jun 2018 | B2 |
10192360 | Osawa et al. | Jan 2019 | B2 |
10503965 | Smith | Dec 2019 | B2 |
10596436 | Campbell | Mar 2020 | B1 |
10639531 | Mccarter | May 2020 | B1 |
10643492 | Lee | May 2020 | B2 |
10688362 | Sangalang | Jun 2020 | B1 |
10861200 | Graham | Dec 2020 | B1 |
11045705 | Zhang | Jun 2021 | B2 |
11247109 | Campbell | Feb 2022 | B1 |
20030073518 | Marty et al. | Apr 2003 | A1 |
20030224337 | Shum | Dec 2003 | A1 |
20050085320 | Joseph et al. | Apr 2005 | A1 |
20050187036 | Ziola et al. | Aug 2005 | A1 |
20050215870 | Rademaker | Sep 2005 | A1 |
20060057549 | Prinzel, III et al. | Mar 2006 | A1 |
20060138809 | Joseph | Jun 2006 | A1 |
20060160639 | Klein | Jul 2006 | A1 |
20060236993 | Cucjen et al. | Oct 2006 | A1 |
20070026974 | Marty et al. | Feb 2007 | A1 |
20070265138 | Ashby | Nov 2007 | A1 |
20080015061 | Klein | Jan 2008 | A1 |
20080171620 | Feldmeier | Jul 2008 | A1 |
20080254866 | Young et al. | Oct 2008 | A1 |
20080261726 | Chipperfield | Oct 2008 | A1 |
20090047645 | Dibenedetto et al. | Feb 2009 | A1 |
20090137347 | Jenkins et al. | May 2009 | A1 |
20090191988 | Klein | Jul 2009 | A1 |
20090270743 | Dugan et al. | Oct 2009 | A1 |
20090325739 | Gold | Dec 2009 | A1 |
20100259412 | Pagonakis | Oct 2010 | A1 |
20100261557 | Joseph et al. | Oct 2010 | A1 |
20100292033 | Sarver | Nov 2010 | A1 |
20110084925 | Baik | Apr 2011 | A1 |
20110205111 | Balardeta et al. | Aug 2011 | A1 |
20120142454 | Campbell et al. | Jun 2012 | A1 |
20120309551 | Holzhacker | Dec 2012 | A1 |
20120322587 | Duke | Dec 2012 | A1 |
20130005512 | Joseph et al. | Jan 2013 | A1 |
20130157786 | Joseph et al. | Jun 2013 | A1 |
20140045166 | Coleman | Feb 2014 | A1 |
20140081436 | Crowley | Mar 2014 | A1 |
20140222177 | Thurman | Aug 2014 | A1 |
20140244012 | Doherty et al. | Aug 2014 | A1 |
20140305420 | Deese | Oct 2014 | A1 |
20140336796 | Agnew | Nov 2014 | A1 |
20140340329 | Chen | Nov 2014 | A1 |
20140371885 | Ianni | Dec 2014 | A1 |
20150131845 | Forouhar | May 2015 | A1 |
20150238819 | Volkerink et al. | Aug 2015 | A1 |
20150306455 | Decarlo | Oct 2015 | A1 |
20150352425 | Lewis | Dec 2015 | A1 |
20160001136 | King | Jan 2016 | A1 |
20160098941 | Kerluke | Apr 2016 | A1 |
20160250540 | Joseph | Sep 2016 | A1 |
20160325166 | Wallace | Nov 2016 | A1 |
20160332054 | Smith | Nov 2016 | A1 |
20170232298 | Joseph et al. | Aug 2017 | A1 |
20170340943 | Pierotti et al. | Nov 2017 | A1 |
20170354845 | Williams | Dec 2017 | A1 |
20180139425 | Mutter | May 2018 | A1 |
20180154212 | Park et al. | Jun 2018 | A1 |
20180290019 | Rahimi et al. | Oct 2018 | A1 |
20200009443 | Moravchik | Jan 2020 | A1 |
20200047049 | Ahmed | Feb 2020 | A1 |
20200114243 | Janssen | Apr 2020 | A1 |
20200179755 | Ristas | Jun 2020 | A1 |
20200193863 | Smith | Jun 2020 | A1 |
20210008433 | Bush | Jan 2021 | A1 |
20210052961 | Brody | Feb 2021 | A1 |
20210064880 | Zhang et al. | Mar 2021 | A1 |
20210128977 | Picker | May 2021 | A1 |
20210286423 | Correia | Sep 2021 | A1 |
20210370152 | Gordon | Dec 2021 | A1 |
Number | Date | Country |
---|---|---|
WO1995032033 | Nov 1995 | WO |
Entry |
---|
Airborne Athletics, Inc. 1 page advertising brochure, © Airborne Athletics, Inc., before 2012, 1 page. |
Airborne Athletics, Inc., “Dr. Dish Owner's Manual,” Oct. 2005, 31 pages. |
Brochure entitled “The All New 8000 Series Gun,” by Shoot-A-Way before Oct. 12, 2011, 12 pages. |
Brochure entitled “The Shoot Away: The perfect Shooting Aid,” before Dec. 2, 2011, 1 page. |
Reich et al., “A spatial analysis of basketball shot chart data,” The American Statistician, Feb. 2006, 60(1):3-12. |
Sniper, “Sniper Program Instructions Help with F1,” Feb. 10, 1995, 18 pages. |
Sniper, “Sniper the Ultimate Basketball Trainer,” before Oct. 1995, 4 pages. |
Number | Date | Country | |
---|---|---|---|
62419177 | Nov 2016 | US | |
62402417 | Sep 2016 | US |