Patent application title: Pong scores
Frank W. Ahem (Payson, AZ, US)
IPC8 Class: AA63B7106FI
Class name: Communications: electrical systems game reporting
Publication date: 2010-04-15
Patent application number: 20100090811
Patent application title: Pong scores
Frank W. Ahem
Law Office of ROBERT C. KLINGER
Origin: FRISCO, TX US
IPC8 Class: AA63B7106FI
Patent application number: 20100090811
An automatic scoring device for a table game, such as ping pong/table
tennis. The device is configured to detect individual parameters that
combine to comprise a physical event. Sensor(s) and a processor are
configured to perform analysis of the parameters that occur during game
play, such as the ping pong ball being stuck by a racket. Calculating the
timing of and between these detected parameters and performing analysis
against stored profiles enables the identification, tracking, and
discrimination between events affecting the games score, and other
similarly occurring events in which the score is not affected.
1. A device configured to score a game of ping pong, comprising:a housing
configured to be disposed proximate a ping pong table;a plurality of
sensors coupled to the housing and each said sensor configured to detect
a parameter indicative of play during a game of ping pong, each said
sensor configured to generate a signal indicative of the detected
parameter;a processor responsively coupled to the sensors and configured
to process the received signals to determine characteristics of the
detected parameters; anda scoring module configured to score the game of
ping pong as a function of the detected parameter characteristics.
2. The device as specified in claim 1, wherein one said detected parameter is a bounce of a ping pong ball on the table.
3. The device as specified in claim 1 wherein one said detected parameter is a strike of a ping pong ball by a paddle.
4. The device as specified in claim 1 wherein one said detected parameter is a ping pong ball touching a net.
5. The device as specified in claim 1 wherein one said detected parameter is a ping pong ball touching a surface other than a paddle, a table, or a net.
6. The device as specified in claim 1 wherein the processor further comprises a timing clock providing timing signals, wherein the processor is configured to process the received signals in association with the timing signals to determine a type of the detected parameter.
7. The device as specified in claim 6 wherein the processor is configured to process the plurality of received signals and determine a singular parameter of ping pong play as a function of the plurality of received signals.
8. The device as specified in claim 7 wherein the processor is configured to determine which player is associated with the detected parameter.
9. The device as specified in claim 8 wherein the scoring module is configured to adjust a score of a game as a function of which player is associated with the detected parameter.
10. The device as specified in claim 9 wherein at least one of the sensors comprises a microphone.
11. The device as specified in claim 9 wherein at least one of the sensors comprises an acoustic sensor.
12. The device as specified in claim 1 further comprising stored profile data, wherein the processor is further configured to compare the received signals to the stored profile data to determine the parameter characteristics.
13. The device as specified in claim 12 wherein the profile data is indicative of a ping pong ball striking a paddle.
14. The device as specified in claim 12 wherein the profile data is indicative of a ping pong ball striking a ping pong table.
15. The device as specified in claim 12 wherein the profile data is indicative of a ping pong ball striking a net of a ping pong table.
16. The device as specified in claim 12 wherein the processor is configured to determine a relative location of the detected parameter in relation to the housing.
17. The device as specified in claim 16 wherein the processor is configured to determine which player is associated with the detected parameter, wherein the scoring module is configured to adjust a score of play is association with a player.
CLAIM OF PRIORITY
This application claims priority of U.S. Provisional Application Ser. No. 61/195,856 filed Oct. 10, 2008 entitled "PONG SCORES" the teachings of which are incorporated herein by reference.
FIELD OF THE INVENTION
The present invention is generally related to an apparatus for scoring a table game, and more particularly to an apparatus for automatically scoring the game of ping pong/table tennis.
BACKGROUND OF THE INVENTION
There are many games of different complexities available for play. Some games are manually scored by the players or a scorekeeper, and others that are automatically scored. The logistics of automatically scoring some games can be very troublesome due to the numerous variables involved. One such game is ping pong, often referred to as table tennis.
In the game of table tennis the identification of a specific event, such as the ball hitting the net, the sequence of events that take place prior to and just after the event, determines if a point is to be scored, and to which player.
For instance, during a serve, the ball is first projected vertically upwards, stuck by the server's paddle (racket) and must first hit his side of the table (his court) and then travel over or around the net and touch the opponent's court to be a valid serve (good service.) Moreover, the ball may strike the net during a rally, but not on a serve. Detecting parameters and the timing that elapses between these parameters enables one to determine the effect the net strike has on the awarding of a point in this example.
To automatically score a game of ping pong one must be able to specifically identify certain parameters that occur during play and associate them in a manner that allows for an event to be identified, a sequence of events to be constructed, and then this event sequence analyzed to determine the awarding of a point.
An example of one parameter, amongst many, that must be detected during play is the ball hitting the net. Other parameters may be determining in which court the ball hit, was the ball struck by a racket and whose, was the ball in play when struck, when struck by a racket did the strike occur before one bounce or after more than one bounce, did a player hit the ball back with his hand, and many others.
All of these variables make it difficult to automatically score the game of ping pong, and the game is often scored by the players themselves, which can be tedious over the course of the game.
There is desired an automatic scoring device that can discriminate the various parameters of ping pong play to properly and accurately automatically score the game. Computer algorithms combined with the use of low cost sensors are used to accomplish these tasks.
SUMMARY OF THE INVENTION
The present invention achieves technical advantages as an automatic scoring device for a table game, such as ping pong/table tennis. The device is advantageously configured to detect individual parameters that combine to comprise a physical event. Sensor(s) and a processor are configured to perform analysis of the parameters that occur during game play, such as the ping pong ball being stuck by a racket. Calculating the timing of and between these detected parameters and performing analysis against stored profiles enables the identification, tracking, and discrimination between events affecting the games score, and other similarly occurring events in which the score is not affected.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows an illustration of one embodiment of the present invention being utilized with a common setup configuration for the game of ping pong;
FIG. 2 is a block diagram of the automatic scoring system;
FIG. 3 is a flow diagram showing one embodiment of the present invention;
Table 1 is a list of definitions as used in this document to describe play; and
Table 2 is a brief summary of event analysis performed to automatically score a game or match.
DETAILED DESCRIPTION OF THE PRESENT INVENTION
In the following detailed description of the present invention, an automatic scoring system for ping pong, also sometimes referred to as table tennis, is presented.
For clarity, Table 1 is presented with a list of definitions as used herein.
Referring to FIG. 1, a ping pong table 106 along with net 102 located across playing surface 112 is shown in a standard configuration. Players 110 and 118 utilize respective ping pong paddles 108 and 120, or other like standard paddles hereafter referred to as rackets. As depicted in FIG. 1, no modifications to the standard game equipment are made. Also shown in FIG. 1 is the addition of an automatic game scoring system 200 configured to be coupled to, or disposed closely proximate, the playing surface 112 and directed thereat according to one embodiment of the present invention.
In the game of ping pong it is difficult to automatically determine when certain game events, referred to herein as game parameters, and other common events/parameters that routinely occur during game, effect the scoring of the game.
To illustrate this, take the simple example of a ball bouncing once on a ping pong table. Referring to FIG. 1 when a ball 104 bounces on playing surface 112 of table 106 to whom if anyone should a point be awarded.
This is one example of a common event that occurs during a game of ping pong. To perform automatic scoring, first, this event must be detected, then the event must be analyzed to determine if it affects the score. For example, is the bounce of ball 104 off of surface 112 the result of a player 118 striking the ball with his racket 120, or player 110 dropping ball 104 onto table 106's surface.
Before the effect of such an event as described above can be determined, certain parameters must be identified. One such parameter is the actual contact of the ball with surface 112, and a second is the location of the ball when it does contact the surface.
In FIG. 1 a region 114 and a second region 116 are identified. As will be described in more detail herein an automatic scoring system 200 is configured such that a sensor(s) provides for identifying ball 104 contacting table surface 112, and is additionally configured to determine the region in which such contact occurs.
Continuing with this example it will be clear how variables combine to effect the decision to award a point or not. To illustrate the degree and complexity of making such a determination a partial decision tree using the game terminology presented in Table 1 and the event terminology in Table 2 is described.
The sequence in which events take place effects the scoring decision. Using the example of the ball bounce, it may be detected at location 114. First, looking at a few pre-sequence events that may have occurred, this 114 bounce detection may be the result of a good return (state 2), a good service (state 3), a ball returned from an end of rally (state 6), a return from a net ball, a miss serve or any number of prior events that may or may not affect the score or determine how the score is adjusted.
Keeping the example straight forward from Table 2, one can observe that valid game play involving a serve or rally could have occurred. Using the next prior parameter one may observe a 102 net hit, and 116 table hit, or a 120 racket strike. In any of those scenarios, without complicating the example further, analysis may conclude that a good return from a rally is occurring. However a 120 racket strike not followed by a 116 table hit may mean a bad serve. Or if it is a net hit which pre-sequence state needs to be determined. A serve followed by a net 102 hit awards player 110 a point while if in a rally state a net 102 hit, followed by a table location 114 ball hit, requires post or continued detection analysis.
While at first the above example may appear simple remember it was constructed that way to present a typical example of game play. The event analysis rapidly increases in complexity when one introduces non valid game events like player 118 just returning the ball to his opponent or serving out of turn.
A review of Table 2 shows that in order to deal with the degree of variance that occur during a game, basic parameters are determined from a sensor or combination of sensor inputs. The parameters are than profiled to determine if a particular event occurred.
An example of a basic event parameter may be a racket 120 strike. By sequencing this parameter with others as shown in Table 2, a determination that player 118 has served (state 3) could be made,. Along these lines, a state to other states/events/parameters comparisions may be made. For example, if a serve state 1 is followed by a non-return state 6 then the analysis would award a point to player 110. On the other hand, if a state 1 was followed by a net 102 hit parameter, a point is awarded to player 118.
As can be appreciated by just one simple example of the bouncing of a ping pong ball, automatically scoring such a game is technically difficult and how to accomplish this is not obvious. One method/system of a preferred embodiment of this invention will now be described.
Referring to FIG. 1 once again, note that the automatic scoring system 200 has been attached to table 106 proximate the net 102 on one side of the table. This scoring system 200 contains sensors and associated processing circuitry configure to sense the parameters during game play, and make a decision of awarding a point or not, as well as other determinations such as the end of the game, and the winner.
FIG. 2 shows a block diagram of one embodiment of system 200 shown in FIG. 1 according to one aspect of the present invention.
As seen in FIG. 2, system 200 consists of a microprocessor 218, configured to receive and evaluate a plurality of inputs from respective sensors 202, 206, 210, and 214. Sensors 202 and 214 may be acoustic sensors, such as unidirectional microphones, configured to determine if ball 104 bounces on surface 114 or 116, or elsewhere. Sensor 206 may also be an acoustic sensor but of a different type, such as an omnidirectional microphone, configured to sense ambient noise during signal processing.
In another embodiment, sensor 206, separately or in some combination with the other sensors 202 and 214, may be a visual sensor or sonic sensor as opposed to an acoustic sensor.
The input signals provided by the sensors may be modified by respective signal processing circuitry 204, 208, 212, and 216 as shown. These circuits may be filters, discriminators, amplifiers, attenuators, or different circuits as appropriate. For example, circuits 204 and 216 may be filters configured to reduce stray inputs, such as talking and other ambient noises. Circuit 208 may perform a similar function, such as subtracting out common noise from the signals output from 204 and 212.
Sensor 210 receives its input from reactions of net 102, such as when hit by ball 104 or other disturbances. Sensor 210 responsively provides this signal to circuit 212 and may be modified if necessary. Processor 218, such as a microprocessor, is configured to perform computations based on the received signals from sensors 202, 206, 210, 214 and/or respective circuits 204,208, 212 and 216 to determine the output information.
Processor 218 may be configured to also perform digital signal processing, such as to reduce the sophistication of the signal shaping circuits 204, 208, 212, 216 or remove the use thereof altogether. Additionally, a timer(s) 220 providing a timing signal is provided and configured to provide timing information to processor 218 as the various events take place. This timing signal(s) is used by processor 218 to aid in determining what specific states/events/parameters are taking place by correlating the time with detected parameters. For example, detecting parameters racket 108 and racket 120 strikes occurring about every 1 second, more or less, may be indicative of a rally which would be confirmed by additional time/event/state analysis. Whereas a pause between events of more than 1 second may be indicative of a serve about to occur.
A profile data module 230 is provided which is configured to store profile data representative of certain game parameters, such as data signatures of a ball strike by a racket, of the ball contacting the table surface, of the ball striking the net, the ball failing to make contact with the table surface, and so forth. The detected parameters by processor 218 via the associated sensors is compared to the stored profile data and utilized during processing to accurately determine an event. Mapping received parameter(s) to the stored profile data provides for a reliable method of determining game events in real time and during game play.
System 200 is also configured to display such items as the score, the server, a point awarded, as well as other information such as the results during a calibration mode. This is accomplished with a visual display device 224 responsively coupled thereto, such as an LCD or LED display, or lights. To allow for the players to control the scoring system or overturn a determined parameter, an input control device 222 is provided that is operated by a player. Such a control device 222 may consist of membrane switches or a keypad labeled in a manner to identify each key's function. Due to the complexity involved in scoring this type of game, this user input may be used by a player to modify the results determined by system 200.
FIG. 3 is a flow diagram of the processing steps that are taken by scoring system 200 during the normal play of the game according to one preferred embodiment of the invention. As shown at step 302, the system 200 is initialized, set to the desired mode automatically or by a player, and started. When the scoring unit is reset during power-up, or reset by a player, it remains in a standby state awaiting a users input. Internal flags are initialized, and sensor inputs are disabled until a player initiates the start of a game. The player may set the total points of a game for a win, indicate the first server, or perform unit testing and/or calibration functions. Once the automatic scorer 200 is initialized display 224 indicates the first server, 110 or 118, and game play can commence.
From step 302, a calibration mode can be detected at step 304 may occur, and performed during step 306, as selected by a user or automatically by processor 218.
When a sensor input is detected by processor 218 during step 310, information about this input(s) is stored by the processor in processor memory at step 312. This received input may be sourced from one or more of the sensors and then modified, as needed, by respective circuits 204, 208, 212, and/or 216.
Upon executing the functions during step 312, the timer 220 is read by processor 218 and the timer(s) state variables are updated at step 314 and then evaluated by processor 218 with the other inputs at step 316. The processor 218 makes determinations at 318 as to whether the received sensor inputs match a specific profile data stored in profile date 230, such as that of a paddle 105 or 107 striking the ping pong ball, the all striking the table, the net, the floor or other object, and where on the table the ball hit such as using directional sensors. The processor 218 also compares received data from the sensors to physical and time profiles that are stored in processor memory. For instance, the time between parameters is responsively utilized by processor 218 to further discriminate a detected parameter from another possible parameter. Correlation of multiple received data to multiple stored data and profile data by processor 218 renders an accurate assessment of the game parameters.
The received data associated with game parameters, and compared to the stored profile data, is further evaluated at step 320 to determine what action or scoring is needed, if any. For example, the ball may be being returned, as occurs during an active rally, or an elapsed time profile may indicate that the ball was missed, or hit out of bounds. Status flags, game data, and other processing information are updated accordingly at step 322.
An input from the user at step 324 can modify a point awarded or alter game play in another manner, such as to start a new game, or "spot" a player additional points. The effect on any user input occurs during step 326 and finally the display is updated.
It is important to note that a real-time loop is performed, and the presented flow diagram occurs repeatedly at micro-processor speeds. The states shown on this diagram are simplified to facilitate the explanation and teaching of this invention. It will be recognized by one skilled in the art that methods and process steps can be altered to occur in a different order or even simultaneously, such as an internal counter routine updating status variables and caused by timer 220 interrupts to the processor.
Though the invention has been described with respect to a specific preferred embodiment, many variations and modifications will become apparent to those skilled in the art upon reading the present application. The intention is therefore that the appended claims be interpreted as broadly as possible in view of the prior art to include all such variations and modifications.
TABLE-US-00001 TABLE 1 rally The period in which a ball is in play in play The ball is in play from the last moment at which it is stationary on the palm of the free hand before being intentionally projected in service until the rally is decided as a let or a point let A rally which is not scored point A rally of which the result is scored strikes A player strikes the ball if he touches it in play with his racket obstructs A player obstructs a ball if he or anything he wears touches it while the ball is in play server The play due to strike the ball first in a rally receiver The play due to strike the ball second in a rally a good service The sequence of events in which the server projects the ball upwards from his open palm, strikes the ball as it is falling so that it first touches (hits) his court, and then passes over or around the net and touches the receivers court a good return The ball having been served or returned shall pass over or around the net and touch the opponent's court
TABLE-US-00002 TABLE 2 PARAM- PARAMETER DESCRIPTION ETERS SEQUENCING EVENT ANALYSIS Racket 108 strike 108 detect Racket 120 strike 120 detect Table side 114 114 detect detect Table side 116 116 detect detect Net detect 102 detect Off table 112 boundary analysis State1 Player Timer1 Missing detect, incorrect 110 serve 108 detect, detect sequence, time/ 114 detect,/ pre-state analysis 102 detect, 116/114 detect State2 Player Timer2 Missing detect, incorrect 118 return 116 detect, detect sequence, time/ 120 detect, pre-state analysis 102 detect 114/116 detect State3 Player Timer1 Missing detect, incorrect 118 serve 120 detect, detect sequence, time/ 116 detect,/ pre-state analysis 102 detect, 114/116 detect State4 Player Timer2 Missing detect, incorrect 110 return 114 detect, detect sequence, time/ 108 detect, pre-state analysis 102 detect 116/114 detect State 5 Rally State1 . . . State2 (or) State4 . . . State2 (or) State1 . . . State2 (or) State4 . . . State2 State 6 No return Timer2 elapse w/o 108 or 120 detect (or) ball outside boundary map
Patent applications in class Game reporting
Patent applications in all subclasses Game reporting