Impactor with real-time feedback

JP2024540843A5Pending Publication Date: 2025-10-07NANO COMPOSITE PRODUCTS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024520820
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-01-14
Filing Date
2022-10-05
Publication Date
2025-10-07

AI Technical Summary

Technical Problem

Existing impact devices, such as targets, bags, and pads, do not provide real-time feedback on impact location and magnitude, limiting their effectiveness in improving specific skills in various activities.

Method used

A system comprising an impact device with multiple zones that generate a voltage proportional to impact energy, coupled with a computing system to analyze and provide real-time feedback on impact location and magnitude, using sensors in the impact area without a current generation device.

Benefits of technology

Enables real-time analysis and feedback on impact location and magnitude, enhancing skill development by allowing users to adjust their technique based on precise data, improving accuracy and effectiveness in activities like pitching, martial arts, and football.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

An impact device and a computing system provide real-time feedback regarding a particular activity performed with the impact device. In one general aspect, the method includes providing a user interface displaying a plurality of impact areas corresponding to a plurality of impact areas on an impact device configured to generate a voltage in response to an impact. Implementations can include determining a hit impact location and velocity of an object for an impact event, and updating the user interface with the hit location and velocity. Implementations can include determining a reaction time for the impact event. Implementations can include determining a location and magnitude of the impact event. Some implementations can include determining whether it is a target location. Implementations can score an impact according to its magnitude, location, and / or reaction time.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] [CROSS REFERENCE TO RELATED APPLICATIONS] This application is an application and claims priority to U.S. Provisional Application No. 63 / 262,121, entitled "Smart Sports Target," filed on October 5, 2021, and U.S. Provisional Application No. 63 / 266,805, entitled "Smart Sports Target," filed on January 14, 2022, both of which are incorporated by reference in their entireties herein.

[0002] The present specification relates to a device having multiple impact zones and a method and system for analyzing and providing activity-specific feedback of impact events detected using the device. [Background technology]

[0003] Impact devices, such as targets, bags, sleds, pads, etc., are used to improve specific skills in a variety of activities. For example, pitching targets can be used to improve throwing, bags can be used in martial arts and boxing to practice kicking and / or punching form and their striking combinations, and padded sleds can be used in football to practice tackling. These impact devices do not provide any type of feedback themselves, but act as the recipient of the impact event. Summary of the Invention [Means for solving the problem]

[0004] An embodiment of the present disclosure relates to a system including an improved impact device and a computing system that communicates with the impact device to provide real-time feedback regarding a particular activity performed with the impact device. In other words, a system and method are disclosed that can receive, analyze, and provide feedback regarding impact location and magnitude in multiple configurations. An embodiment of the present disclosure can use a sensor at the impact area that generates a voltage (generates an electrical potential) upon impact. The voltage is generated without a current generating device. The sensor generates a voltage proportional to the magnitude of the impact (impact energy). The impact device and / or the computing system are configured to determine an impact location on the impact device. In response to an impact event, the system detects, records, and analyzes a voltage response recorded by the impact device to determine the impact location(s). In some embodiments, the impact location (e.g., hit impact area) is determined by the impact area that measures the maximum voltage response. In some embodiments, any impact area that measures a voltage response is considered a hit impact area. In some embodiments, the system can determine the impact magnitude. The impact magnitude is determined by an impact analysis application. The shock analysis application is configured to evaluate many different characteristics of the voltage response, such as the integral, maximum, and minimum of the voltage over time. The evaluations performed by the shock analysis application can be activity specific. The shock analysis application can include a user interface that allows a user to select target impact areas, assign different points / weights to different impact areas, communicate a desired shock sequence to the user, and provide feedback regarding the shock sequence, as described herein.

[0005] The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims. [Brief description of the drawings]

[0006] [Figure 1]FIG. 1 is a high-level block diagram illustrating an example of a system according to one embodiment that includes an impact device and a computing device configured to provide a user interface for interacting with the impact device. [Diagram 2] 2 is a schematic diagram of an example impact area of ​​an impact device, according to one embodiment. [Diagram 3] 1 is a schematic diagram of an example impact device having multiple impact regions, according to one embodiment. [Figure 4A] 4 illustrates an example user interface for interacting with the impact device of FIG. 3, according to one embodiment. [Figure 4B] 4 illustrates an example user interface for interacting with the impact device of FIG. 3, according to one embodiment. [Diagram 5] 1 is a flow chart illustrating an example process for determining the velocity of an object impacting an impact area of ​​an impact device, according to one embodiment. [Figure 6A] 1 is a schematic diagram of an example impact device having multiple impact regions, according to one embodiment. [Figure 6B] FIG. 6B is a diagram of the impact device of FIG. 6A attached to a punching bag, according to one embodiment. [Figure 7] 1 is a flow chart illustrating an example process for scoring an impact on an impact device, according to one embodiment. [Figure 8] 1 illustrates an example user interface according to one embodiment. [Figure 9] 1 is a flowchart illustrating an example process for scoring an impact to an impact device based on an impact profile, according to one embodiment. [Figure 10] 1 is a flow chart illustrating an example process for scoring repeated impacts on an impact device, according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] An embodiment of the present disclosure relates to analyzing impact events detected by a device having multiple impact regions to provide activity-specific analysis. An embodiment of the present disclosure includes an impact device and an impact analysis application in communication with each other. In some embodiments, a user can select one or more target impact regions using an interface generated by the impact analysis application. The user interface can be configured to provide feedback regarding the impact to the impact device, such as which impact region generated a voltage, the magnitude of the impact, etc. The user interface can be configured to record session data and / or provide a historical analysis of the impact events.

[0008] FIG. 1 is a high-level block diagram illustrating an example of a system 100 according to an embodiment, including an impact device 110 and a computing device 150 configured to provide a user interface for interacting with the impact device 110. The system 100 may include the impact device 110. The impact device 110 may include multiple impact areas 105. Each impact area 105 (e.g., impact areas 105a, 105b, ..., 105n) defines an area of ​​the impact device 110. Each impact area 105 may include a sensor that generates a voltage (generates an electric potential) upon deformation, the voltage being generated without a current generating device (e.g., a battery). The sensor may be a polymer foam with a conductor disposed thereon or in it. The sensor may be a foam sensor as described in the disclosures of U.S. Pat. No. 10,260,968 or U.S. Pat. No. 8,984,954, the disclosures of which are incorporated by reference. In some embodiments, each impact area 105 may include a separate sensor that generates a voltage response proportional to the impact energy upon impact (deformation). In some implementations, each impact region 105 may be defined by the location of conductive electrodes on a single sensor. Example impact regions are also described in further detail with respect to FIG.

[0009] One or more impact areas 105 may have a feedback device 107 associated with the impact area 105. The feedback device 107 may be an appearance changing device such as an LED light strip, haptic feedback in the form of vibration of the feedback device 107 or the computing device 150, or sound. In some implementations, the feedback device 107 surrounds the impact area 105. In some implementations, the feedback device 107 provides a background to the impact area 105. In some implementations, the feedback device 107 may be or further include a device that produces a sound (e.g., plays a file such as .wav, .mp3, etc.) upon the occurrence of an impact event at the impact area 105 or the beginning and end of an exercise routine. In some implementations, each impact area 105a, 105b, ..., 105n may have a respective feedback device 107a, 107b, ..., 107n. In some implementations, not all impact areas 105 have a feedback device 107a. For example, in some implementations, the system 100 may include an extension of the impact device 110, such as the impact device 110'. The impact device 110' may include all of the elements of the impact device 110, including the microcontroller and associated elements shown in the microcontroller 120, in addition to the one or more impact areas 105. In some implementations, the one or more impact areas 105 of the impact device 110' may not have an associated feedback device 107. For example, in a system 100 designed for American football, the impact device 110 may be a football sled and the impact device 110' may be padding worn by a player. In another example, the impact device 110' may be a soccer ball and the impact device 110 may be a target against which the soccer ball is kicked. Thus, the impact device 110' is an example of a second impact device 110 used by the system 10. Thus, both the impact device 110 and the impact device 110' may communicate with the computing device 150 and provide the computing device 150 with voltage information 130'.

[0010] Each impact area 105 of the impact device 110 generates a voltage in response to the deformation. The generated voltage is directly correlated to the magnitude of the deformation, i.e. the energy of the impact event, and is repeatable over time without significant drift. The impact device 110 includes a microcontroller 120. The microcontroller 120 is configured with a voltage detector 128. The voltage detector 128 is operably coupled to the impact area 105, for example, via an electrical wire connected to an electrode in contact with (placed on, bonded to, placed in) a section of polymer foam of the impact area 105. The impact device 110 may include a voltage detector 128 operably coupled to the impact area 105. In some implementations, the microcontroller 120 may include multiple voltage detectors 128, each operably coupled to the impact area 105. The voltage detector 128 may be capable of detecting a voltage generated by the impact area 105 upon deformation of the impact area 105, for example, due to an impact. The voltage detector 128 may be any device that detects, for example, a voltage or generates a value representative of a voltage that can be stored in the memory 122. In some implementations (not shown), the voltage detector 128 may be separate from but in communication with the microcontroller 120.

[0011] The impact device 110 may include a microcontroller 120. The microcontroller 120 may be a wireless microcontroller. Non-limiting examples of the microcontroller 120 include the Adafruit Feather and NRF452840. The microcontroller 120 may allow the impact device 110 to have a small form factor while still being able to transmit voltage data to a computing device 150 that has a greater ability to analyze the voltage data. The small form factor of the voltage detector 128, memory 122, and transmitter / receiver 126 allows existing products to be attached to / designed as the impact device 110 without significant redesign. The small form factor also results in a highly portable impact device 110.

[0012] The microcontroller 120 may be operatively coupled to (including) the memory 122 and / or the transmitter / receiver 126. The memory 122 may be any type of volatile or non-volatile memory capable of storing data. In some implementations, the microcontroller 120 may be capable of converting the detected voltage into a value stored in the memory 122. In some implementations, the microcontroller 120 is configured to associate the detected voltage and / or a value representative of the detected voltage with the impact area 105 that generated the voltage. Thus, in some implementations, the memory 122 may store voltage data according to the impact area. In some implementations, the memory 122 may store additional information along with the voltage data, such as the date and / or time the value was detected. The memory 122 may also store other information along with the voltage value. If there is a voltage value(s) of the impact area(s) and additional information, this is considered voltage data. Thus, the memory 122 may store voltage data detected after an impact event. In some implementations, the memory 122 may store voltage data for more than one impact event, for example, a series of impact events. The memory 122 may store the voltage data of the impact event until the voltage data is transmitted to the computing device 150, for example, wirelessly or via a wired connection.

[0013] In some implementations, the microcontroller 120 includes a transmitter / receiver 126. Thus, the memory 122 may be operatively coupled to the transmitter / receiver 126. The transmitter / receiver 126 may be capable of transmitting and / or receiving data wirelessly, for example, via short-range communication such as BLUETOOTH, Zigbee, Z-Wave, 6LoWPAN, or WiFi. Data may also be transmitted via a long-range wireless network such as LTE or 5G. The transmitter / receiver 126 may be capable of transmitting data via a wired connection, such as a Universal Serial Bus (USB) cable. In some implementations, the transmitter / receiver 126 may transmit the voltage data 130 from the memory in response to a command from a computing device, such as the computing device 150. In some implementations, the transmitter / receiver 126 may be configured to transmit the voltage data 130 in response to storing the data in the memory 122. In some implementations, the microcontroller 120 may include logic to format the voltage data 130 (e.g., to associate an impact area 105 with a voltage measured during an impact event at the impact area 105) and cause the transmitter / receiver 126 to transmit the voltage data 130.

[0014] In some implementations, the microcontroller 120 includes shock analysis logic 124. The shock analysis logic 124 may be code, e.g., stored in memory 122, configured to determine whether a shock has occurred, e.g., by flagging when a voltage threshold is reached in any of the impact regions. In some implementations, the shock analysis logic 124 may determine a magnitude of the shock, which directly correlates to the impact energy, based on the voltage data sampled from the impact region 105. In such implementations, this magnitude may be included in the voltage data 130 sent to the computing device 150. In some implementations, this calculation may be performed by shock analysis logic 164 running on the computing device 150, for example.

[0015] The system 100 includes a computing device 150. The transmitter / receiver 126 may transmit the voltage data 130 to the computing device 150. In some implementations, the computing device 150 is an external computing device separate from the impact device 110. The computing device 150 may include a transmitter / receiver 154. The transmitter / receiver 154 is any device configured to operatively communicate with the transmitter / receiver 126. In some implementations (not shown), the computing device 150 may be incorporated into the impact device 110. The computing device 150 may be any type of computing device, tablet, laptop, smartphone, netbook, desktop, server, screen with processor, wearable (watch, fitness tracker, glasses), etc. The computing device 150 may include an impact analysis application 160. The impact analysis application 160 may be a native application, a web application, a progressive web application, or any type of application compatible with the operating system 156 of the computing device 150.

[0016] The impact analysis application 160 may be configured to provide a user interface (or various user interfaces) for interacting with the impact device 110. For example, the impact analysis application 160 may provide a user interface that includes a number of virtual impact areas. The virtual impact area is a graphical representation of one of the impact areas 106. Thus, the virtual impact area corresponds to and is a representation of the impact area 105 of the impact device 110, i.e., the physical impact area. As used herein, an impact area can refer to a virtual impact area and / or its corresponding physical impact area. When used in the context of a user interface, such as one generated by the impact analysis application 160, an impact area is a virtual impact area. When used in the context of an impact device, such as the impact device 110, an impact area is a physical impact area. Each virtual impact area corresponds to one physical impact area, so that a reference to an "impact area" can refer to both a virtual impact area, a physical impact area, or a physical impact area and its virtual representation.

[0017] The shock analysis application 160 may be configured to analyze the voltage data 130 received from the impact device 110, for example using the shock analysis logic 164. The analysis of the voltage data may include determining the impact energy of the impact event. The analysis of the voltage data may include determining the location (or locations) of the impact event. The analysis of the voltage data may include calculating a score for the impact event using the determined impact energy and / or location. If the voltage data 130 includes voltage data for a series of impact events, the analysis of the voltage data 130 may include an analysis of the series of impact events. Part of the analysis may be performed in conjunction with the shock analysis logic 124, which may provide the results of the analysis as part of the voltage data 130. The analysis of the voltage data is described in more detail herein with respect to different activities performed in conjunction with the impact device 110.

[0018] In some implementations, the impact analysis application 160 may have access to calibration data 166. The calibration data 166 may enable the impact analysis application 160 to convert the voltage data into impact energy, impact force, peak force, impact velocity, impact mass, etc. The impact area 105 is configured to generate a voltage upon impact that is proportional to the magnitude of the impact. For example, the impact area 105 may be a polymer foam with conductive fillers. The foam configuration (e.g., amount / type of conductive fillers, foam base material used, foam curing method, etc.) will affect the rate. The calibration data 166 includes data that represents the rate (as determined by a controlled impact event where the impact energy is known and the voltage response is recorded). In other words, the calibration data 166 includes data that enables the impact analysis application 160 to convert the voltage data into impact energy, impact force, peak force, impact velocity, impact mass, etc. In some implementations, the calibration data 166 may be provided to the computing device 150. In some implementations, the computing device 150 may include a module (not shown) for collecting and storing the calibration data 166. An impact device 110 manufactured outside of a controlled environment (e.g., outside of an established manufacturing process) may need to be calibrated for each manufacture. However, an impact device 110 manufactured in a controlled environment may not require calibration for each manufacture.

[0019] In some implementations, the impact area 105 may include areas having different foam properties. In such implementations, the calibration data 166 may include calibration data for a particular impact area. In some implementations, the calibration data 166 may also include information about an object used to impact the impact device 110. Information about the object may include its mass. Thus, a user may be able to select an object of known mass, for example, using a user interface generated by the impact analysis application 160. With the known mass, the impact analysis application 160 may calculate the velocity of the object based on the determined impact energy of the impact event. In other applications, the velocity of the impacting object may be known and the mass of the object may be calculated.

[0020] The impact analysis application 160 may include a session record 162. The session record 162 may be information that records a history of impact events. In other words, the analysis performed on the impact events may be recorded in the session record 162. In this way, the impact analysis application 160 may provide a historical analysis of the impact events that occurred with the impact device 110. In some implementations, the session record 162 may be associated with a particular user. For example, the session record 162 may be associated with different members of an athletic team (e.g., a baseball team, a football team, a hockey team, etc.) and thus with an athlete / athlete (i.e., user) identifier. In such implementations, the session record (also referred to as historical data) may be associated with a particular user. In some implementations, the session record 162 may be associated with an object identifier. Thus, for example, each history may be associated with different objects that have been projected (e.g., thrown, kicked, hit, etc.) at the impact device 110. These object histories may also be associated with a particular user identifier. In some implementations, a session is associated with a session identifier. In such an embodiment, a user may have multiple sessions. The multiple sessions may occur on different days, at different times, etc. In some embodiments, the user may choose to continue a session from the previous day or start a new session. In some embodiments, the session record 162 is deleted when a new session is started. The content and / or lifecycle of the session record 162 is implementation dependent and may depend, for example, on the activity directed at the impact device 110 and / or the user interface generated by the impact analysis application 160.

[0021] The impact analysis application 160 may include profile data 168. The profile data 168 may include information for scoring impact events that describe motion on the impact device 110. In some implementations, the profile data 168 includes weights assigned to impact areas 105. As a non-exhaustive example, the impact device 110 may be a tackle sled, a tackle dummy, or padding worn by an opponent. The profile data 168 may reflect preferred impact areas 105 for a particular type of motion, such as a particular tackle, takedown, strike, or strike combination. In other words, the profile data 168 may reflect weights that indicate whether the athlete is performing the motion (tackle / strike / impact) with proper technique (e.g., correct hand / shoulder / limb placement and helmet / head not contacting the dummy). The impact area of ​​the impact device 110 that is expected to be impacted with proper technique is referred to as the preferred impact area or target impact area. These target impact regions may be identified in the motion profiles of the profile data 168 .

[0022] In some embodiments, the athletic profile may identify the target impact areas and the non-target impact areas. In some embodiments, the athletic profile may identify the target impact areas by an identifier. In some embodiments, the athletic profile may identify the target impact areas by a flag. In some embodiments, the athletic profile may identify the target impact areas by assigning a weight of one to the target impact areas and a weight of zero (0) to the non-target impact areas. In some embodiments, the athletic profile may identify the target impact areas and the non-target impact areas by weights assigned to the impact areas. For example, the target impact areas may be assigned a positive weight value, and the non-target impact areas may be assigned a negative weight value. In some embodiments, the athletic profile may identify the target impact areas and the non-target impact areas by a flag or identifier and assign a respective weight to each of the target areas. In some embodiments, the profile may define the target and non-target impact areas and have two or more proficiency levels, the proficiency levels determining the respective weights. In some implementations, a first profile can define / specify goal areas and weights for a beginner proficiency level of an activity, and a second profile can define / specify goal areas and weights for an expert or professional proficiency level of the same activity. The goal areas of the first profile can be different from the goal areas of the second profile. The weights of the first profile can be different from the weights of the second profile.

[0023] In some implementations, the profiles in the profile data 168 may be for objects of known mass and may include information for scoring an impact based on a determined magnitude of the impact event and / or a determined impact type for that impact event. For example, if the impact device is padding worn by a user and various launch devices launch, shoot, etc. the objects (e.g., guns launch non-lethal projectiles), the objects may all be of similar mass, but the launch devices may shoot projectiles at different velocities at the impact device. The different velocities register as different impact energies (as described herein) and may be used to classify or determine the launch device used. Scoring may be based on the type of device used in addition to which impact area is hit. For example, the profile may indicate different weights for different launch devices. The profile may indicate different weights for different launch devices for different impact areas. The profile may indicate different weights for glancing impacts as opposed to direct hits, as disclosed herein.

[0024] Determining the type of launch device attributable to an impact and / or whether the impact event is a graze or direct hit may be performed by the impact logic 124, the impact analysis logic 164, and / or the impact analysis application 160. For example, a larger launch device may provide a higher launch velocity for the projectile but may be better suited for use at longer distances due to its larger physical size, while a smaller and lighter launch device may be easier to operate at shorter distances but may provide a slower launch velocity for the object. Thus, a first launch device may be associated with a first velocity and a second launch device may be associated with a second velocity. In some implementations, a classifier (e.g., a machine learning model) may be used to analyze the voltage data to determine whether the impact event was due to a first or second launch device based on the magnitude (impact energy) of the impact event. Additionally, because projectiles lose speed the further away they are from the projectile device, if one projectile device is used and the mass is constant, the system may determine the distance of the projectile device from the target by the impact velocity.

[0025] In some implementations, the system may determine whether an impact event is a direct hit or a graze impact. For example, in the impact device described above, the projectile is of known mass and the launch device launches this mass at a predictable velocity, which may be associated with a direct hit. In other words, the voltage data generated during an impact event that is a direct hit may be used to correctly calculate the velocity (as disclosed herein). However, an impact event that is not a direct hit event, e.g., represents a graze strike or graze impact, may have voltage data with a different characteristic voltage trace shape. With this in mind, the system may use the voltage profile information to first determine the impact type of the impact event, e.g., whether the impact event is a direct hit or a graze impact. For example, if the voltage data fits a first profile (e.g., a short spike over the impact period), this may be classified as a direct hit, but if the voltage data fits a second profile (e.g., an impact event where the voltage data resembles more of a broad hill over the impact period), the impact event may be classified as a graze impact. The magnitude of the graze impact from the first launch device may still be different from the magnitude of the graze impact from the second launch device due to the difference in velocity. Thus, the system 100 may classify the type of impact and then determine what type of launch device will result in the impact event. A classifier may also be used to analyze the voltage data to determine the impact type. In some implementations, the system may use a composite classifier, such as a classifier that takes the voltage data of the impact event as input and provides a predicted launch device as output.

[0026] In some implementations, the impact analysis application 160 may include a user interface that allows a user of the impact analysis application 160 to define new profiles that are added to the profile data 168. In some implementations, the activity represented by the profile may be a series of impact events, such as a boxing combination. In such implementations, a profile may include a series of target / non-target impact regions. Thus, an impact region may be identified as a target impact region for a first impact event in the series, but a non-target impact region for a second impact event in the series. The impact analysis application 160 may score an impact (or a series of impacts) using the profile data 168 as described herein.

[0027] In addition to the stored profile for a particular exercise, the profile data 168 may also temporarily store target impact areas selected by the user of the computing device 150. For example, the user may select one or more of the impact areas 105 as the preferred impact areas for the next impact event. In some implementations, the user may select secondary impact areas as the target areas. In such implementations, the secondary impact areas may have a smaller weight than the primary impact areas. In some implementations, the user selected target areas (and secondary areas, if selected) may be communicated to the impact device 110, for example, via the target area data 140. The impact device 110 (e.g., the microcontroller 120) may be configured to receive the target area data 140, determine which impact area(s) 105 are identified in the target area data 140, and modify the appearance of those areas. For example, the impact device 110 may be configured to modify the appearance of the impact areas 105 using the feedback device 107 associated with the target impact areas 105, as described above. The modification of the appearance may reflect the primary and secondary target areas. For example, the primary target area may have a first color and the secondary target area may have a second color, where the person using the system 100 understands that the first color represents the primary target. This configuration may require the user to decide which of the two target areas to impact (hit / aim at). This change in appearance may continue until an impact event is detected by the microcontroller 120. This change in appearance may continue for a predetermined period of time if no impact event is detected until the end of that period. In some implementations, in response to an impact event, the impact device 110 may be configured to change the appearance of the impact area 105 (or areas) that generated a voltage in response to the impact event. In some implementations, the impact area 105 that generated the highest detected voltage may have its appearance changed (e.g., by activation of a feedback device 107 associated with this impact area). In some implementations, two or more of the impact areas 105 that generated detected voltages may have their appearance changed (e.g., by activation of a feedback device 107 associated with these impact areas).This change in appearance (in response to an impact event) may be temporary, for example lasting for a period of time after the impact event. In some implementations, two or more of the impact regions 105 that produced a detected voltage may have their appearance changed to indicate the magnitude of the impact event.

[0028] The components (e.g., modules, processors) of computing device 150 may be configured to operate based on one or more platforms (e.g., one or more similar or different platforms), which may include one or more types of hardware, software, firmware, operating systems, runtime libraries, etc. In some implementations, the components of computing device 150 may be configured to operate within a cluster of devices (e.g., a server farm). In such implementations, the functionality and processing of the components of computing device 150 may be distributed across several devices of the cluster of devices.

[0029] The components of computing device 150 (e.g., shock analysis application 160 of computing device 150) may be or include any type of hardware and / or software configured to analyze voltage data. For example, in some implementations, one or more portions of shock analysis application 160 of FIG. 1 may be or include hardware-based modules (e.g., digital signal processor (DSP), field programmable gate array (FPGA), memory), firmware modules, and / or software-based modules (e.g., modules of computer code, sets of computer-readable instructions executable on a computer). For example, in some implementations, one or more portions of the components of computing device 150 may be or include software modules configured to be executed by at least one processor (not shown). In some implementations, the functionality of the components may be included in different modules and / or different components than shown in FIG. 1.

[0030] In some embodiments, one or more of the components of computing device 150 may be or include a processor configured to process instructions stored in memory. For example, impact analysis application 160 (and / or portions thereof) may be or include a combination of a processor and memory configured to execute instructions related to a process to perform one or more functions.

[0031] Although not shown, in some implementations, components of the computing device 150, such as the impact analysis application 160 of the computing device 150, may be configured to operate, for example, in a data center, a cloud computing environment, a computer system, one or more server / host devices, etc., although such implementations may delay feedback response times. In some implementations, components of the computing device 150 may be configured to operate within a network. Thus, the computing device 150 or components of the impact device 110 may be configured to function within various types of network environments that may include one or more devices and / or one or more server devices. For example, the network may be or include a local area network (LAN), a wide area network (WAN), etc. The network may be or include a wireless network and / or a wireless network implemented, for example, using gateway devices, bridges, switches, etc. The network may include one or more segments and / or may have portions based on various protocols, such as the Internet Protocol (P) and / or proprietary protocols. The network may include at least a portion of the Internet.

[0032] In some implementations, the memory 122 and / or the memory 458 may be any type of memory, such as random access memory, disk drive memory, flash memory, etc. In some implementations, the memory 122 and / or the memory 458 may be implemented as two or more memory components (e.g., two or more RAM components or disk drive memories) associated with the impact device 110 or the computing device 150 components. In some embodiments, the calibration data 166, the custom profile data 168, or the session record 162 (or a portion thereof) may be a remote database, a local database, a distributed database, a hierarchical database, etc. As shown in FIG. 1, at least a portion of the calibration data 166 and / or the transmitted voltage data 130 may be stored in a memory (e.g., a local memory, a remote memory) of the computing device 150. In some embodiments, the memory may be or include a memory shared by multiple devices, such as the computing device 150.

[0033] FIG. 2 is a schematic diagram of an example impact area 205 of an impact device, according to one embodiment. The impact area 205 is an example of any impact area 105 of FIG. 1. The impact area 205 includes a foam sheet 202, a conductive adhesive 204, an electrode 206, and an electrical wire 203. The electrical wire 203 communicates a voltage generated by the foam sheet 202 in response to an impact event to a microcontroller 220. The microcontroller 220 is an example of the microcontroller 120 of FIG. 1. In some embodiments, the impact area 205 may include a separate foam sheet 202 that generates a voltage response proportional to the impact energy upon impact (deformation). The foam sheet 202 includes a polymer foam. The foam may be any polymer foam, such as an elastomeric polymer foam, a silicone-based foam, a polyurethane foam, a thermoset foam, or other foam-like material. The foam may retain its shape after deformation, for example, the foam may be highly deformable while substantially retaining its shape. In other words, the foam is elastic, porous, and has a high strain to break, typically 50% to 100% strain. In some embodiments, the adhesive, electrodes, and wires can be combined by applying a conductive paint, conductive ink, or other conductive coating that transmits voltage data to the microcontroller 120.

[0034] In some embodiments, the foam sheet 202 may include conductive fillers dispersed within the foam. Thus, in some embodiments, the foam sheet 202 may be a composite material including conductors dispersed throughout the foam. For example, fine conductors such as conductive fibers and / or nanoparticles may be included in the foam prior to curing to produce the foam sheet. These conductive fillers may be a small percentage of the foam sheet 202, for example, less than 25% by weight. In some embodiments, the conductive fillers may be a very small percentage of the foam sheet 202, for example, less than 1% by weight, including 0.1% by weight. Some embodiments do not add any conductive fillers to the foam sheet 202.

[0035] In some implementations, the impact area 205 is defined by the location of the wires 203 on the single foam sheet 202. Through the wires 203, conductive adhesive 204, and electrodes 206, or conductive coating, the impact area can be operatively coupled to a voltage detector, for example, in the microcontroller 220. The wires 203, adhesive 204, and electrodes 206, or conductive coating, can be collectively referred to as conductors. As used herein, a conductor includes a conductive film, metal, printed circuit, or wire adhered to the foam sheet 202. Thus, the conductor transmits the voltage generated upon impact through the foam sheet 202 to the microcontroller 220. The wires 203, electrodes 206, and conductive adhesive 204 can be made of any conductive material, i.e., any material that conducts electricity. The conductive material can include metal, carbon, or other conductive materials. Thus, the conductor is configured to contact the foam sheet 202 and transmit the generated voltage to the microcontroller 220. In some embodiments, the electrodes 206 can be metal coated films, sheets, or fabrics that can be shaped to increase or decrease the material properties of the foam sheet 202 (i.e., increase stiffness in one direction).

[0036] The conductors carry the voltage generated by the foam sheet 202 upon impact to a voltage detector, for example, in the microcontroller 220. Within the microcontroller 220, the voltage detector is operatively coupled to a memory such that voltage data (electric potential information) generated in response to an impact event on or near the sensor is recorded in the memory. Voltage data may be recorded for each impact event. An impact event is a period of time during which a detectable voltage is measured. For example, when the foam sheet 202 is impacted, the foam sheet 202 produces (generates) a small voltage. This voltage may be sent via the conductors to the microcontroller 220. The microcontroller 220 may include components such as an inverting operational amplifier and an analog-to-digital converter. The generated voltage may be sent through an inverting operational amplifier and then read by the analog-to-digital converter. The analog-to-digital converter may be configured to sample the voltage data at a sampling rate. In some implementations, the sampling rate may be 1,000 samples per second. The sampling rate may be adjusted to be faster or slower depending on the desired accuracy and data transfer limitations. In some implementations, the microcontroller 220 can be configured to compress the samples. For example, a 1,000 Hz measurement can be downsampled to a lower frequency, such as 200 Hz, using a moving average or other compression method for rapid broadcast to BLUETOOTH connected devices. In some implementations, the microcontroller 220 can also include a flash memory where the raw data can be recorded for post-analysis or post-activity synchronization. This voltage data (e.g., sampled at 1,000 Hz or compressed to 200 Hz, etc.) can be sent to a more powerful computing device for further analysis. This keeps the form factor of the impact device small. For each impact device, an application on the receiving computing device allows the user to see the results of each impact with immediate feedback.In other words, the entire system is configured to provide real-time feedback, e.g., less than one second from detection of an impact event to feedback to the user, e.g., in the form of impact location and / or impact magnitude. Impact area 205 is a non-limiting example of impact area 105, although embodiments can include impact areas including any sensor that responds to an impact and generates a voltage proportional to the impact energy.

[0037] The impact area 205 may include a feedback device 207. The feedback device 207 may be any device that provides a visual cue to a user that conveys information about the impact area 205. The information may indicate that the impact area 205 is a target impact area. The information may indicate that the impact area 205 is a hit impact area. The information may indicate that the impact area 205 is a secondary target impact area. The information may indicate that the impact area 205 is a miss impact area (e.g., a target impact area that was not a hit impact area). The feedback device 207 may include an LED light strip, an LED backlight, or any other device that is capable of / configured to change the appearance of the impact area 205.

[0038] Figure 3 is a schematic diagram of an example impact device 310 having multiple impact areas 305, according to one embodiment. The impact device 310 is an example of the impact device 110 of Figure 1. The example impact device 310 of Figure 3 is illustrated as a pitching target, but this is for illustrative purposes only. The impact device 310 could be adapted to represent other types of sports targets, such as hockey goals, soccer goals, golf practice backstops, tennis backstops, mats that cover one side of a volleyball court, etc.

[0039] In the example of FIG. 3, the impact device 310 comprises a single foam sheet 302. In one embodiment, the foam sheet 302 is covered with several different conductive electrodes glued to a rigid backing. The electrodes are arranged such that each electrode measures the impact of a specific impact area 305. A contour diagram of the electrodes is shown in FIG. 3. Each separate electrode connected (e.g., via conductive adhesive) to the foam sheet 302 has a single conductive trace connected to the microcontroller 220 to enable data acquisition (i.e., the voltage generated in response to the impact). This conductive trace can produce noisy signals if electrostatic interference is not properly taken into account. These noisy signals create unreliable data and reduce measurement accuracy. Properly designed electrical wires can reduce noise and increase sensor measurement accuracy. Shielded electrical wires (insulated electrical wires) have been shown to significantly reduce noise.

[0040] In the example of FIG. 3, the impact area 305 is separated into a strike zone and an area outside the strike zone (ball zone). The ball zone is shown in FIG. 3 as impact area 305(8). In some implementations, the strike zone can be divided into multiple impact areas. The impact areas can be of equal area. For example, the strike zone can be partitioned into three columns (or three rows), and these portions can be further divided, for example, each column can include three impact areas. Depending on the configuration, the impact areas 305 can be of equal area, or one or more can be of different areas. For example, the impact device 310 includes seven impact areas 305, for example, impact area 305(1) through impact area 305(7). In the example of FIG. 3, the left and right columns each have three electrodes (the left column corresponds to impact areas 305(1)-305(3) and the right column corresponds to impact areas 305(5)-305(7)), while the center column (corresponding to impact area 305(4)) has a single electrode that spans the full height of the strike zone. Thus, the impact area 305 is defined by the area sensed by the conductors (electrodes / wires / conductive films). In the example of FIG. 3, the ball zone, e.g., impact area 305(8), surrounds the strike zone (e.g., the column defined by impact areas 305(1)-305(7)). Other implementations may have more or fewer regions, but more regions increase the cost of the target while less regions decrease the spatial resolution accuracy (i.e., the accuracy with which the system can determine the impact location decreases, and if the spatial resolution is low enough, in some implementations this may also affect the system's ability to determine the impact energy). Thus, the number of regions is a balance between accuracy and cost. The configuration of the impact area of ​​the impact device can be adapted to the activity (sports, exercise, etc.) that is simulated or performed with the impact device. The impact device 310 can determine whether an impact has occurred by setting a flag when a voltage threshold is reached on any electrode of the impact area 305. The setting of this flag can define the start of an impact event. In some implementations, the impact event lasts for a predefined amount of time, referred to as the impact period.

[0041] In some implementations, impact zones 305 may have a corresponding feedback device 307. In some implementations, not all impact zones 305 may have a corresponding feedback device 307. For example, impact zone 305(8) (ball zone) may not have a corresponding feedback device 307, while impact zones 305(1)-305(8) (strike zones) may each have a corresponding feedback device 307, e.g., feedback devices 307(1)-307(7). Some implementations do not include a feedback device.

[0042] 4A and 4B show example user interfaces configured to interact with and provide feedback to the impact device 310 of FIG. 3 according to one embodiment. The user interfaces of FIG. 4A and 4B may be generated by an impact analysis application (e.g., impact analysis application 160) of a computing device (e.g., computing device 150) in communication with the impact device 310. The user interfaces 400, 410, 420, 430 include a number of impact regions, e.g., virtual impact regions corresponding to the impact regions of the impact device, e.g., physical impact regions. In the example interfaces of FIG. 4A and 4B, the virtual impact regions 405(1)-405(8) correspond to the impact regions 305(1)-305(8) of FIG. 3.

[0043] Once the system registers an impact (e.g., a threshold voltage detected at one of the impact areas on the impact device), the voltage information may be analyzed as described in more detail with respect to FIG. 5. The impact analysis application may update the user interface as a result of the analysis, for example as shown in user interface 400. For example, the user interface may be updated to display the hit impact area, for example impact area 405(2). The hit impact area is the area where the maximum voltage is registered. In the example of FIG. 4A, the hit impact area is impact area 405(2) and may have an appearance that indicates that it is the hit impact area of ​​the impact event. Any appearance difference may be used to indicate the hit impact area. In some implementations, the impact device itself may also update the appearance of the hit impact area (e.g., physical impact area), as described elsewhere. The user interface 400 may also be updated to display the velocity 412 of the object that caused the impact when the mass of the object is known. The impact analysis application may include a user interface (e.g., configuration options, not shown) for selecting a known object, such as a baseball, a regulation softball, a regulation hockey puck, a regulation volleyball, etc.

[0044] In addition to displaying the hit impact zone and velocity 412, embodiments may allow a user (e.g., a coach or catcher) to "call" an area, or in other words, signal to the pitcher which of the impact areas to target. In some embodiments, the area to call may be selected by the coach or catcher via a user interface (e.g., selection of an impact area displayed on the user interface). Thus, in some embodiments, the impact area 405 may be selectable. In other words, in some embodiments, a user may select one of the impact areas 405 as the called impact area or target impact area. User interface 410 shows an example user interface with a selected impact area, e.g., target impact area 405(4). A user may select an impact area as the target area by touch (e.g., touching the impact area on user interface 400) or by selection with a mouse or other input device. In some embodiments, the system (e.g., the impact analysis application and / or the impact analysis logic) may be configured to receive the target area via a voice command. In some implementations, the user interface may be configured to change the appearance of the selected impact area, for example as indicated by cross-hatching of the impact area 405(4) in the user interface 410. The change in appearance of the target is feedback as to which impact area is the target area. In an example user interface, the target area may be changed (represented by the first color) to a first color, such as blue. The confirmation of the target area may also be accompanied by feedback from other feedback devices, such as playing an audible signal. In some implementations, the target impact area selected by the user is communicated to the impact device, which may be configured to change the appearance of the target impact area, for example to temporarily change the appearance of the target impact area on the impact device. In some implementations, the system may be configured to flash the first color on the called area of ​​the impact device.For example, instead of the coach verbally communicating the area to call, the coach can select the area to call via the user interface 410 and the impact analysis application can communicate the target impact area to the impact device, which can temporarily change the appearance of the target area. Identifying the target impact area is optional, and the user interface can be used to provide an output of the impact event even if the target impact area is not received.

[0045] If the next impact event is at the target impact area, the system may record that the correct area was hit, i.e., the hit impact area matches the target impact area. For example, a second color may be used to indicate that the hit impact area matches the target impact area, and a third color may be used to indicate that the hit impact area is different from the target impact area. In some implementations, the user interface may display or flash the second color if the target area was hit. For example, the user interface may display or flash the color green when the hit area matches the target area. In some implementations, the hit area is displayed in green in the user interface. User interface 420 shows the target impact area (405(4)) that was both the hit impact area and the target impact area (e.g., target area 405(4) of user interface 410).

[0046] If the next impact is not in the target area (i.e., the target impact area does not match the hit impact area), the system may display or flash a third color, such as red. In some implementations, this third color may be displayed at the target impact area or the hit impact area. User interface 430 shows an example user interface where hit impact area 405(8) is not the target impact area (e.g., target area 405(4)) and the appearance of hit impact area 405(8) is modified with a third color. An implementation that modifies the appearance of a missed target impact area appears similar to user interface 420 but has a third color. In some implementations, if the target impact area is different from the hit impact area, the target impact area may have a different appearance than the hit impact area. For example, user interface 430 could represent impact area 405(4) shaded with the first color (e.g., as in user interface 410) or with a fourth color, such as gray. In some implementations, the impact device itself may change the appearance of the hit or target impact area (via the feedback device 107) to communicate the hit impact area, that the hit impact area matches the target impact area (e.g., a flashing green light on the hit impact area), and / or that the hit impact area is different from the target impact area (e.g., a flashing red light on the hit or target impact area). In lieu of color, the system may provide an audible indication of whether the called area was hit or not. The user interfaces 420 and 430 also show an update of the velocity 412 of the most recent impact event.

[0047] Some implementations may keep and display session statistics. For example, an analysis of the history of impact events may be kept and used to provide session statistics. These session statistics may indicate the number of impact events 416 during a session. The session statistics may include the average velocity 414 over the number of impact events 416. The user interfaces 420 and 430 also show updates of the average velocity 414 and impact events 416 with the most recent impact events.

[0048] For a session that includes a called impact area or a target impact area, the session statistics may include hits 417 and / or misses 418. Hits 417 represent the total number (count) of times that a hit impact area matches a target impact area during the session. Misses 418 represent the total number (count) of times that a hit impact area does not match a target area. In some implementations, the session statistics may include a hit ratio 419. Hit ratio 419 may be calculated from the total number of impact events 416 and hits 417 or misses 418. In some implementations, hits 417 or misses 418 may be calculated using the total number of impact events 416. In some implementations, impact events 416 may be calculated from hits 417 and misses 418. In other words, since one of hits 417, misses 418, and impact events 416 can be calculated from the other two, and hit ratio 419 can be calculated from any two of the three, the system may store only two of these values. The user may initiate a new session (thus initializing the stored session data) by user command, selection of another object having a different known mass, etc.

[0049] Figure 5 is a flow chart illustrating an example process 500 for determining the velocity of an object impacting an impact area of ​​an impact device, according to one embodiment. A system for performing this process may be system 100 of Figure 1. For example, the steps of process 500 may be performed by any of the impact analysis logic 124, the impact analysis logic 164, and / or the impact analysis application 160. Process 500 of Figure 5 may be performed to provide the velocity of an object impacting an impact device.

[0050] Although the impact device of FIG. 3 and the user interface of FIGS. 4A and 4B are described with respect to a pitching target, the user interface can be adapted for other activities. For example, in one embodiment, the impact device can be a shooting target. A projectile of known mass can be selected via the user interface. The impact device can consist of several impact areas, for example, an electrode interface placed between two sheets of piezoelectric foam. This arrangement can then be placed between two sheets of metal suitable for withstanding penetration from a large caliber bullet. The conductive interfaces between the foams each have a conductive trace connected to a microcontroller for data acquisition. When the impact device is shot, the foam sheets generate a voltage that is sent to the microcontroller, allowing the user to know the hit location immediately (e.g., in real time) when using a Bluetooth-enabled (or other wireless) device and application. Additionally, if the mass of the projectile is known, the velocity can also be provided via the user interface.

[0051] Other embodiments include targets for measuring the speed and location of a volleyball spike or serve, softball throwing targets for measuring the location and speed of a throw, lacrosse targets that fit the size of a goal and give shot location and speed, hockey targets that fit the size of a goal and give shot location and speed, soccer targets that give kick location and speed, golf targets that give shot location and speed, etc. In general, embodiments can include an impact device having a piezoelectric foam substrate with electrodes in an optimal configuration bonded to the foam. This configuration provides accurate detection and measurement of the impact and, if the mass of the projectile is known, accurate velocity of the projectile.

[0052] The process 500 may begin with providing a user interface that displays virtual impact regions corresponding to multiple physical impact regions on an impact device (505). In an implementation that calculates velocity, the system receives a selection of an object having a known mass (510). In some implementations, this may be a fixed value (e.g., a volleyball target application, where the volleyball is assumed to be a regulation volleyball with a known mass). In some implementations, the system may provide a setting or selection menu for selecting the object. For example, in a pitching application, a baseball or softball may be selected. In some implementations, the system may allow the user to provide the mass of the object.

[0053] In some implementations, the system may receive a selection of a target impact area via a user interface (515). As used herein, the target impact area(s) is selected among the virtual impact areas, but since each virtual impact area corresponds directly to one physical impact area, reference to a target impact area includes a physical impact area corresponding to the virtual impact area selected as the target impact area. Thus, the transmission of a target impact area to an impact device is understood to mean that an identifier is transmitted to the impact device, and the impact device is configured to convert the identifier into a physical impact area (e.g., an electrode corresponding to the impact area, an area of ​​the impact device corresponding to the impact area, etc.). Similarly, the transmission of a target impact area sequence or a series of target impact areas is understood to be the transmission of identifiers of these areas, and the impact device is configured to convert / map those identifiers into physical impact areas (strain sensors).

[0054] The system then receives (520) voltage information from the impact device generated in response to the impact event. In some embodiments, the voltage information is generated (in whole or in part) by impact analysis logic. The impact analysis logic may be included in a microcontroller of the impact device. The impact analysis logic may be included in a computing device communicatively coupled to the impact device.

[0055] In some implementations, the impact location is determined by the location of the impact area (e.g., electrodes in the impact area) where the maximum voltage response is registered. This determination can be made at the impact device (e.g., by the impact analysis logic 124) and communicated to the impact analysis application, or it can be made at the computing device (e.g., the impact analysis logic 164). In either case, the hit impact area is determined (525). The hit impact area is the location of the impact event. Similarly, the velocity of the object can be determined (530) from the voltage information.

[0056] The velocity may be determined after determining the magnitude of the impact. This magnitude is directly correlated to the impact energy (e.g., using calibration data 166) since the impact area generates a voltage that is directly correlated to the impact energy. The piezoelectric foam in the impact area, when impacted, generates a quantifiable voltage that varies in magnitude over time over the impact period. The impact period is short, e.g., less than 1 second. In some embodiments, the impact period may be 0.2 seconds or 0.15 seconds. The length of the impact period may depend on several factors, including the thickness and stiffness of the foam and / or the expected projectile characteristics. Generally, the impact period is determined during manufacturing of the impact device by observing test impacts under expected conditions. Generally, the impact period reflects the expected time span of the voltage response observed under expected use conditions.

[0057] To quantify the impact energy, the system may measure the peak voltage at the time of the impact and the integral of the voltage trace at several different times before and after the peak voltage. For example, the system may determine the peak voltage for the impact period (e.g., 0.15 seconds) and align the peak voltage with a 0.05 second timestamp. With this alignment, the system may determine an integration from 0 to 0.05 seconds, an integration from 0.05 to 0.06 seconds, an integration from 0.05 to 0.07 seconds, an integration from 0.05 to 0.08 seconds, an integration from 0.05 to 0.09 seconds, an integration from 0.05 to 0.1 seconds, and an integration from 0.05 to 0.15 seconds. Based on the values ​​of all these variables, the system can accurately predict the impact energy (magnitude) of the impact event. In some embodiments, a regression model can be used to analyze the voltage data to provide the impact energy of the impact event. With the impact energy being a direct conversion of kinetic energy, the system can:

number

[0058] In some embodiments, the system may be configured to determine session statistics based on the velocity and / or the determined hit impact area (535). The session statistics may include a total number of impact events occurring during the session. The session statistics may include an average velocity over the session. The session statistics may include an arithmetic mean velocity over the session or other statistical operations (such as quartiles) applied to the session data. The session may be user defined. In some embodiments, the selection of a new object triggers a new session. In some embodiments, the session data may be associated with a time period (e.g., all impacts at a particular time, on a particular day, etc.). In some embodiments, the session data may be further associated with a user (e.g., a particular athlete). When a new session is started, the session data starts with zero for all impact events, such that all other statistics are zeroed. In other words, the session statistics are initialized at the start of the new session.

[0059] The system may update the user interface to display the velocity and / or hit impact area (540). Updating the user interface with the hit impact area may include providing an indication of whether the hit impact area matches the target impact area. In an embodiment, the system updates the user interface with updated session statistics. It is understood that steps 520-540 may be repeated multiple times. In an embodiment that includes selection of a target impact area, steps 515-540 may be repeated multiple times.

[0060] FIG. 6A is a schematic diagram of an example impact device 610 having multiple impact zones, according to one embodiment. The impact device 610 is an example of the impact device 110 of FIG. 1. Although the example impact device 610 of FIG. 6A is illustrated as a punching bag, this is for illustrative purposes only. In the example of FIG. 6A, the impact device 610 is a removable sleeve configured to fit over a punching bag. The impact device 610 may include several impact zones 605. In the example of FIG. 6A, the impact device 610 includes several impact zones, e.g., impact zone 605(1) through impact zone 605(7). However, embodiments may include more or fewer impact zones depending on the size (circumference and / or length) of the bag and other factors. The illustrated impact device 610 is configured for a bag with a circumference of approximately 36 inches. As illustrated, the impact device 610 is 26 inches tall. However, these measurements are example measurements and embodiments are not limited to these specifications.

[0061] The impact device 610 may include a piezoelectric foam sheet 602. The impact device 610 may include multiple (e.g., 5, 7, 9, 15, etc., depending on the bag dimensions) conductive film electrodes attached to the foam using a conductive adhesive to define multiple impact areas 605. FIG. 6A shows example spacing of the impact areas 605, but the embodiments are not limited to this spacing. The spacing may be designed for a particular activity, such as to allow access to the impact areas from the front of the bag. In some embodiments, the spacing may provide sufficient distance between the pads to prevent multiple pads from being accidentally impacted simultaneously, if such separation is desired. Each electrode may have a single conductive trace that connects to a microcontroller (not shown). As with other described embodiments, the conductive trace may be an insulated wire to mitigate against receiving unreliable data. The foam sheet 602 and electrodes (defining the impact areas 605) are placed inside a punching bag sleeve, with an insulated wire leading to a microcontroller outside the sleeve. The microcontroller may be an example of the microcontroller 120 of FIG. 1. The microcontroller may control the signal processing and data flow. The microcontroller may be configured to determine the location and magnitude of the impact. Upon impact of one of the impact areas 605, the microcontroller may be configured to determine the time of the peak voltage and calculate the impact energy, as described above with respect to FIG.

[0062] In some implementations, the punching bag sleeve can have an adjustable strap to attach around the circumference of the bag and an adjustable strap to attach to the top of the sleeve. This allows the impact device 610 to be used with an existing punching bag by wrapping the punching bag sleeve (impact device 610) around the bag and over the top of the bag. The impact device 610 can also be positioned along the length of the bag as needed, for example for kicks instead of punches, or to adjust for the height of the boxer.

[0063] FIG. 6B is a diagram of the impact device 610 of FIG. 6A attached to a punching bag, according to one embodiment. The surfaces of the impact device 610 (e.g., the foam sheet 602 and the sleeve into which the electrodes are inserted) may include markings to identify the impact area 605. In some embodiments, the markings may include one or more feedback devices (not shown) to modify the appearance of the impact area, for example, as described herein. In some embodiments, embedded LEDs may surround the impact area to provide feedback or signals to the user without affecting the function of the padding. In some embodiments, the impact area 605 may be identified using identification information, such as numbers, letters, or symbols, printed on the sleeve.

[0064] A connected application (e.g., impact analysis application 160) can track the user's progress over time to determine whether the impact force of the exercise is increasing, whether accuracy is improving, whether reaction time is decreasing, etc. In some implementations, the connected application can allow the user (e.g., coach) to select a target impact area as described herein. In such implementations, the impact device 610 can be configured to provide a visual indication (e.g., a flashing light) for a particular impact area (e.g., using a feedback device corresponding to that area). In some implementations, the system can record the speed at which the target impact area is hit. The reaction time can be determined by measuring the elapsed time from a start time to a stop time. The start time can be when the coach issues a start signal, for example, by an audible command, by visual feedback provided on the bag itself, and / or through a secondary sensor system. The stop time can be when the dummy is impacted by the participant. For example, the system can be configured to start a timer (recording the start time) in response to the selection of the target area or in coordination with the activation of a feedback device for the target area. The timer may be stopped (a stop time recorded) in response to receiving an impact on the target impact area. In such an implementation, the stop time may not be recorded until an impact event is determined in which the target impact area is a hit impact area. In some implementations, the stop time may be recorded (the timer is stopped) upon detection of the next impact event, regardless of area. In such an implementation, no credit may be given for the impact event (e.g., a zero score) because the target impact area was not a hit impact area. Additionally, the system may determine the magnitude of the impact and / or the impact energy of the impact.

[0065] In some implementations, the connected application may allow the user to select a primary target area and a secondary target area. In such implementations, the user may be expected to choose between two impact areas. In some implementations where the impact event is scored, the primary impact area may be weighted more than the secondary impact area. The impact area may be communicated via a feedback device associated with the impact area or an audible indication configured to inform the boxer of the identity of the selected target impact area (or primary and target impact areas). In some implementations, the audible indication may be the identification of a symbol printed on the sleeve. In implementations where a reaction time is determined, a timer may be started in response to or together with the audible indication. Recording the time of the audible indication may be considered the start of the timer. In some implementations, the user of the connected application may start the timer (recording the start time) to provide the target area / primary and secondary target areas.

[0066] In some implementations, a user of a connected application may select a profile, for example from profile data 168. A profile may represent a series of target impact areas. Thus, a profile may represent a series of impact area identifiers. For example, a profile may represent punch (or kick, or punch / kick) combinations that a boxer completes. In some implementations, the system may be configured to change the target impact area, for example to the next target impact area in the series of target impact areas, each time an impact event is detected. In some implementations, the system may be configured to wait until the target impact area is a hit impact area before moving on to the next target impact area in the series of target impact areas. In some implementations, a timer may be configured to determine a reaction time for each target impact area in the series of target impact areas, for example to determine the time it takes a boxer to impact the correct target impact area.

[0067] In one embodiment, sensors can be arranged in an array that can be used for reflex training. The system can indicate an impact location and calculate a score based on reaction time (e.g., from indicating the location to contacting the location) and the magnitude of the contact. This can be repeated for a desired duration or number of events from user input. Although described with respect to a punching bag, the impact device 610 can be adapted for placement on any surface, including but not limited to punching bags, martial arts training dummies, walls, floors, and / or ceilings, for hand and foot reflex training. In some embodiments, the impact areas can be configured to flash different colors, with some colored locations having higher point values. As previously indicated, these colors can be presented simultaneously, so the user must decide on one of two different impact areas before striking.

[0068] FIG. 7 is a flow chart illustrating an example process 700 for scoring an impact against an impact device, according to one embodiment. A system performing the process may be system 100 of FIG. 1. For example, the steps of process 700 may be performed by any of impact analysis logic 124, impact analysis logic 164, and / or impact analysis application 160. Process 700 of FIG. 7 may be performed to provide reaction times and impact magnitudes for an object impacting an impact device. As a non-limiting example, process 700 may be used with impact devices used in various activities such as soccer, lacrosse, pitching, etc.

[0069] The process 700 may begin with providing a user interface displaying virtual impact areas corresponding to a number of physical impact areas on the impact device (705). The system may also receive a selection of a target impact area via the user interface (710). The target impact area may be selected by selecting a virtual impact area displayed on the user interface. The target impact area may be selected by selecting a profile, i.e., a series of target impact areas. The selection of the target impact area may include receiving a primary target impact area and a secondary target impact area. In some implementations, the profile may include a primary target impact area and a secondary target impact area. Thus, in some implementations, one or more stages of the series of target impact areas may include two or more target areas. In some implementations, the profile may include weights to be applied to the identified target impact areas. In some implementations, the primary target impact area may have a greater weight than the secondary target impact area. Impact areas in the profile that are not target impact areas may have a zero weight or a negative weight.

[0070] The system may start a timer (715). The system may start the timer in response to a selection of the target impact area. The system may start the timer in response to a user command (including an audible command). The system may start the timer in response to (or in coordination with) a change in appearance of the target impact area. The system may receive voltage information from the impact device (720) generated in response to the impact event. In some implementations, the voltage information is generated (in whole or in part) by impact analysis logic. The impact analysis logic may be included in a microcontroller of the impact device. The impact analysis logic may be included in a computing device communicatively coupled to the impact device. The voltage information may include sampled voltages as described herein.

[0071] In some implementations, voltage information is received in response to an impact event in which the target impact area is determined to be an impact location. This location may be determined as the location of the impact area where the maximum voltage response is registered. This determination may be made on the impact device (e.g., by the impact analysis logic 124) and communicated to the impact analysis application, or may be made on the computing device (e.g., the impact analysis logic 164). In either case, a timer may be stopped in association with the impact event at the target impact area, and a reaction time for the impact event is calculated (725). In some implementations, the magnitude of the impact event is determined (730). The magnitude is directly correlated to the impact energy (e.g., using the calibration data 166) since the impact area generates a voltage that is directly correlated to the impact energy as described with respect to FIG. 5. The magnitude may be expressed as an average force, a peak force, or an impact energy.

[0072] In some implementations, the system may be configured to determine session statistics based on magnitude, reaction time, etc. (735). Session statistics may include a total number of impact events occurring during the session. Session statistics may include an average reaction time over the session. Session statistics may include an arithmetic mean reaction time over the session or other statistical operations (such as quartiles) applied to the reaction times of the session data. Session statistics may include an average (and / or arithmetic mean, and / or quartiles) of the magnitude of the impact events during the session. Similar to FIG. 5, a session may be defined by a user. In some implementations, session data may be associated with (defined by) a time period (e.g., all impacts at a particular time, on a particular day, etc.). In some implementations, session data may be further associated with a user (e.g., a particular boxer). When a new session is started, the session data starts with zero for all impact events, such that all other statistics are zeroed. In other words, the session statistics are initialized at the start of the new session.

[0073] The system may update the user interface to display reaction time and / or impact magnitude (740). In some implementations, the system may score the impact events, for example, based on reaction time (e.g., faster reaction represents a higher score) and / or based on magnitude (e.g., larger magnitude represents a higher score). For example, in some implementations where weights are assigned to the target areas, the method may include determining which target impact areas are hit impact areas and using the weights of the hit impact areas to determine a score. The system may update the user interface (and / or the session data) with the score. In some implementations, the user interface may graph the session data, for example, to show trends in reaction time and / or magnitude. It is understood that steps 710-740 may be repeated multiple times. In implementations where the user selects a profile (e.g., a series of target impact areas), the system may automatically repeat steps 710-735 and update the user interface once the sequence is complete (e.g., once an impact event has been received and analyzed for the series of target impact areas) (740). In such implementations, reaction times may also be calculated for the entire sequence.

[0074] FIG. 8 illustrates an example user interface 800 according to one embodiment. In the example of FIG. 8, the impact device includes a training dummy. The training dummy of FIG. 8 includes three impact areas, e.g., impact areas 805(1), 805(2), and 805(3). The embodiment is not limited to this number or configuration and is provided as an example. In some embodiments, the impact device may also include impact areas located on padding worn by the participant. For example, one or more impact areas included in the system may be located on football training pads, rugby training pads, helmets, etc. Additionally, although the user interface 800 is described for an impact device representing a tackling sled, the impact device may be configured as any sports training dummy and may include impact areas located on boxing training pads, martial arts training pads, etc.

[0075] In embodiments where the impact device represents a training dummy, the system may include multiple impact zones to indicate if the athlete is tackling / hitting / impacting with proper technique (e.g., correct hand placement and helmet / head not contacting the dummy). Additionally, the system may be configured to determine the magnitude of each impact event. In some embodiments, the system may determine a reaction time for each impact event (e.g., tackle / hit). The reaction time may be determined by measuring the elapsed time from when the coach issues a start signal, e.g., via an audible command and / or secondary sensor system, to when the dummy is impacted by the participant. For example, the coach may issue an audible command such as "hike" or another selection command that the system recognizes as a start signal. In some embodiments, the system may include a motion sensor connected to an instrumented ball, e.g., a football, or an instrumented stick connected to the ball. When the motion sensor measures a motion associated with a predetermined / predefined motion, such as a "hike" motion, the sensor system may interpret the motion as a start signal and start a timer. In some embodiments, the sensor system may communicate a start signal to the system, e.g., triggering the start of a timer. In some embodiments, an instrumented training pad can be configured to communicate a stop signal to the system. The instrumented training pad can be similar to an impact area, but can be positioned on the padding and is not used to score impact events. The instrumented training pad can be an impact area, such that any impact event detected in the impact area provides a stop signal to the system.

[0076] The system may then calculate a reaction time, for example, as the difference between the start time (start signal) and the stop time (time of contact with the stop signal or the instrumented training pad). The system may provide the reaction time, for example, reaction time 812, to the participant via user interface 800. In some embodiments, the system may also calculate the magnitude of the impact for each impact zone. For example, impact zone 805(1) may be displayed as a magnitude of 14 pounds, impact zone 805(2) as a magnitude of 141 pounds, and impact zone 805(3) as a magnitude of 158 pounds. In some embodiments, the system may calculate and the user interface may display an impact score 814. The impact score 814 may be a combination of the magnitudes determined for the impact zones.

[0077] In some implementations, the system may provide a combined score 816 of reaction time and impact score 814. The impact score may be based on the magnitude of the impact and correct form. The impact score may be calculated based on "good" and "bad" impact areas. "Good" impact areas are targeted impact areas that increase the combined score 816 upon impact. "Bad" impact areas are non-target impact areas that decrease the combined score 806 upon impact. Each area may have a different scaler, e.g., positive or negative weighting, to adjust / contribute to the score according to the level of "good / bad" form they represent. The good and bad impact areas and their scalers may be stored as a profile, e.g., in profile data 168. Thus, the combined score 806 may represent a weighted combination of scores from various impact areas. The system may have different modes / impact profiles to accommodate different types of impacts / tackles (e.g., drills specific to different positions or roles within a team). The system (including the scaler) may be adjusted for different playing skill levels 840, for example, skill levels ranging from youth to professional athletes.

[0078] A connected application, such as impact analysis application 160, can track the user's progress over time (e.g., during one or more sessions) to determine if there is an increase in reaction time, form, and tackle / impact force. Session data is accessible via impact history link 830. Some or all of the session data can be displayed as part of user interface 800 (not shown in FIG. 8). This data can be tracked over time by player using proximity sensors (e.g., RFID, etc.) to track which users are using the system. In the example of FIG. 8, user interface 800 shows automatic player detection 820 and football connection event detection 825. The connected application is in offensive line mode 835, where impacts to upper impact area 805(1) are not desired, making impact area 805(1) a non-target area. The magnitude of the impact event attributed to the top impact area 805(1) may be provided in the user interface 800 with an appearance indicating that impact area (1) is a non-target area, such as by displaying a magnitude of 14 pounds using a first color (e.g., red font) or by using a virtual impact area background of a first color. Non-target impact areas may reduce the overall score 816. In the example of FIG. 8, impact area 805(1) may have a negative scaler, such that a recorded impact force of 14 pounds contributes to a lower overall impact score. In contrast, left impact area 805(2) and right impact area 805(3) are targeted impact areas. The appearance of these areas may reflect their status as targeted areas, such as with recorded impact magnitudes of 141 pounds and 158 pounds, respectively, and may be displayed using a second color (e.g., green font) or by using a targeted area background of a second color.

[0079] JPEG2024540843000003.jpg86166

[0080] In another mode / impact profile, it may be advantageous for only one impact area to positively affect the overall score while the other impact area reduces the overall score. In some implementations, the overall impact score may include logic to compare the recorded impact forces between sensors, for example, the overall score may be based on the difference between Left Force and Right Force depending on the mode / impact profile. For example, the profile / mode may indicate that the smaller the difference between Left Force and Right Force, the greater the contribution to the overall score. In some implementations, the time from the initiation signal to the first impact may be factored into the overall impact score. In some implementations, reaction time may not be a factor.

[0081] In some implementations, the athlete may be wearing sensors, e.g., on a helmet, shoulder pads, etc., and the impact forces recorded on the wearable sensors may contribute to an overall impact score (e.g., the helmet may have a negative scalar that may be of large weight, while the shoulder pads may have a positive scalar, and depending on the mode / impact profile, the left shoulder pad may have a negative scalar when the right shoulder pad has a positive scalar, or vice versa). In some implementations, the overall score 816 may be calculated as described with respect to FIG. 9.

[0082] Figure 9 is a flow chart illustrating an example process 900 for scoring an impact to an impact device based on an impact profile, according to one embodiment. A system performing the process may be system 100 of Figure 1. For example, the steps of process 900 may be performed by any of impact analysis logic 124, impact analysis logic 164, and / or impact analysis application 160. Process 900 of Figure 9 may be performed to provide an overall score based on the profile of the impact device.

[0083] The process 900 may begin with providing a user interface that displays virtual impact areas corresponding to a number of physical impact areas on the impact device (905). The system may also receive a selection of a profile that identifies at least two target impact areas via the user interface (910). The profile may include a set of target impact areas in which two target impact areas are identified. The profile may include identifiers of the target impact areas, and non-target impact areas are impact areas that are not identified in the profile. The profile may include weights for the impact areas of the impact device, where a positive weight for an impact area indicates a target impact area and a negative weight for an impact area indicates a non-target impact area. In some implementations, the profile may include a primary target impact area and a secondary target impact area, and the profile assigns a greater weight to the primary target impact area than the secondary target impact area. In some implementations, the profile impact areas that are not target impact areas may have a weight of zero.

[0084] The system may start the timer (915). The system may start the timer in response to a user command, e.g., an audible command detected by the system. The system may start the timer in response to (or in conjunction with) a connected device, such as an instrumentation device. The instrumentation device may be any sporting equipment modified to send a start signal to the system. For example, the instrumentation device may be a ball that includes a motion detector (gyroscope, accelerometer, etc.) and is configured to send a start signal in response to a particular motion. In some implementations, the system may start the timer by recording the time of a start event.

[0085] The system may receive (920) voltage information generated in response to an impact event from the impact device. In some implementations, the voltage information is generated (in whole or in part) by impact analysis logic. The impact analysis logic may be included in a microcontroller of the impact device. The impact analysis logic may be included in a computing device communicatively coupled to the impact device. The voltage information may include sampled voltages as described herein.

[0086] In some implementations, the voltage information is received in response to an impact event detected at an impact area. In some implementations, the system may send a stop signal, e.g., stop a timer, in response to the impact event. Recording the time of the stop signal may be considered stopping the timer. The system may determine (925) a reaction time to the impact event. This may be the difference between the recorded start time and stop time. The system may calculate (determine) (930) a magnitude of the impact event attributed to each target impact area. The magnitude may be calculated, for example, as described elsewhere with respect to FIG. 5. The magnitude may be expressed as a force. In some implementations, the system may calculate the magnitude of the impact event for each impact area for which a detectable voltage was determined. Thus, for example, each impact area may have a calculated magnitude that represents the portion of the impact event that is attributed to that impact area, regardless of whether it is identified by the profile as a target impact area or a non-target impact area.

[0087] JPEG2024540843000004.jpg67166

[0088] In some implementations, one or more of the targeted impact regions may be weighted more or less than other targeted impact regions, and / or one or more of the non-targeted impact regions may be weighted more or less than other non-targeted impact regions. In such implementations, the equation becomes:

number

[0089] In some implementations, the system may be configured to determine session statistics (940) based on magnitude, reaction time, overall score, etc. Session statistics may include a total number (count) of impact events occurring during a session. Session statistics may include an average overall score over a session. Session statistics may include an arithmetic mean reaction time over a session or other statistical operation (e.g., quartiles) applied to the reaction times of the session data. Session statistics may include an average (and / or arithmetic mean, and / or quartiles) of the overall score of impact events during a session. Similar to FIG. 7, a session may be defined by a user. In some implementations, a session may be defined as a profile, e.g., a new profile defines a new session. In some implementations, session data may be associated with (defined by) a time period (e.g., all impacts of a particular profile performed within an hour, on a particular day, etc.). In some implementations, session data may be further associated with a user, e.g., a particular athlete. Athletes may be identified using automatic athlete detection. Detection of a new athlete may initiate a new session or switch to a session associated with the newly detected athlete.

[0090] The system may update the user interface to display the overall score and the impact magnitude (945). In some implementations, the system may also update the user interface with the reaction time of the impact event. In some implementations, the updating of the user interface includes changing the appearance of one or more of the impact areas in the user interface. In some implementations, the updating of the user interface may update the session information. In some implementations, the user interface may include a graph of the session data showing trends in reaction time, overall score, and / or magnitude, for example. It is understood that steps 910-945 may be repeated multiple times, starting with, for example, 910, 915, or 920 depending on the implementation. In implementations where the profile represents a series of target impact areas, the system may automatically repeat steps 920-940 and update the user interface once the sequence is complete (e.g., once an impact event has been received and analyzed for the series of target impact areas) (945). In such implementations, reaction times may also be calculated for the entire sequence.

[0091] Figure 10 is a flow chart illustrating an example process 1000 for scoring repeated impacts on an impact device, according to one embodiment. A system performing the process may be system 100 of Figure 1. For example, the steps of process 1000 may be performed by any of impact analysis logic 124, impact analysis logic 164, and / or impact analysis application 160. Process 1000 of Figure 10 may be performed to provide reaction times and impact magnitudes of an object impacting an impact device.

[0092] The process 1000 may include a step of providing a user interface that displays a representation of an impact device (1005). The display may include a representation of multiple impact devices. Each impact device may include an impact area. For example, the impact device may be padding, such as a vest, worn by the athlete. In some implementations, the vest may be a single impact area. In some implementations, the vest may include multiple impact areas. In some implementations, the user interface may be used to start a session. Some impact area systems may be configured to start a new session in response to a voice command. During a session, the impact device may receive multiple impact events. For example, the impact device may be worn by an athlete during a simulated combat event, such as during a simulated combat event where the athlete attempts to shoot another athlete with a non-lethal projectile (e.g., paintballs, chalk bullets, Orbees, airsoft BBs, or foam fired from a launch device). Impacts against the impact device may be tracked and scored during the session. Thus, the system receives voltage information of multiple impact events from the impact device during the session (1010). The system may determine and record session data for each impact event (1015). This session data is determined in real time, for example, as an impact event occurs.

[0093] Determining the session data may include determining the magnitude of the impact (1020). In some embodiments, the type of impact may also be determined. For example, the type may be a graze or a direct hit. This may be determined by analysis of the voltage data over the impact period. As described above with respect to calculating the magnitude of the impact event, the system may determine various characteristics of the impact event (integral at various time periods during the impact event). These same characteristics may be used as input to a classifier that determines whether the voltage data represents a direct hit or a graze impact. In some embodiments, the system may use a Fast Fourier Transform to analyze the frequencies that comprise the voltage signal to determine the projectile characteristics. In some embodiments, a composite model may determine both the impact type and the impact energy (magnitude) of the impact event. The system may use this information, such as the magnitude of the impact event, and / or the magnitude and type of the impact event, to determine the launch device of the impact event (1025). In other words, the system may attribute the impact event to a certain type of launch device. The system may do this when different types (at least two different types) of launch devices shoot projectiles at different velocities and the projectiles all have similar mass.

[0094] In embodiments where the impact device has more than one impact area, the system may also determine (1030) which impact area is the hit impact area. In such embodiments, the points (e.g., weights) may differ for each impact area, such that an impact event occurring in a first impact area is weighted more than an impact event occurring in a second impact area. The system updates (1035) the session data of impact device impact events. This session data may include data for determining one or more of the following: the number of impact events for the impact device (i.e., impact event count); the number of impact events attributed to each type of launch device; the number of direct hit events, graze impact events, and hit impact areas for a particular launch device; the number of direct hit events, graze impact events, direct hit events by launch device, and graze impact events by launch device for each hit impact area.

[0095] The system may determine (calculate) 1040 a score for the impact device (e.g., the athlete wearing the impact device) based on the session statistics. In some embodiments, the score may be a running score that is calculated and displayed in real time. In some embodiments, the score may be calculated after the session is completed (e.g., after a predetermined amount of time has elapsed from the session start time). In some embodiments, the scoring of the session may be according to a selected profile (e.g., a mode selected prior to the session). In such embodiments, the profile may include weights for launch devices, impact areas, impact types, etc. In some embodiments, the weights may be fixed (not profile based). In some embodiments, launch devices may have the same weight. In some embodiments, launch devices may have different weights. In some embodiments, different impact areas may have different weights. In some embodiments, two or more (or all) of the impact areas may have the same weight. In some embodiments, impact types may have the same weight. In some embodiments, impact types may have different weights. In some embodiments, no weights are used.

[0096] The impact score can be calculated based on multiple factors, including the type of launch device, the impact area(s) hit, the impact type, and the weighting (or lack of weighting) assigned to these factors. In some embodiments, the weighting can vary depending on the proficiency level. Some non-limiting examples are set forth below, although embodiments may include variations not expressly disclosed. In an embodiment in which the impactor has n different launch devices, the system:

number

number

[0097] The system may display 1045 the scores via a user interface. In some embodiments, the user interface may display some or all of the session data. In some embodiments, the user interface may display scores for multiple impact devices (e.g., all of the athletes in a combat simulation). Thus, the system may perform steps 1010-1040 for each impact device included in the session. Process 1000 then ends, but may be repeated with another session.

[0098] In some aspects, the techniques described herein relate to a method including receiving voltage information generated in response to a plurality of impact events from an impact device including at least one impact area configured to generate a voltage in response to an impact without a current generating device; determining, for each impact event of the plurality of impact events, a launch device attributing the impact event based on at least one of a magnitude or an impact type determined from the voltage information, the launch device being at least one of a first launch device and a second launch device; updating session data of the impact device, including updating a count of impacts attributable to the launch device; calculating a score based on the session data; and providing a user interface that displays the score.

[0099] These and other aspects may include one or more of the following, alone or in combination. For example, the method may further include determining a hit impact area of ​​the impact event for each impact event of the plurality of impact events, and the score is calculated based on the hit impact area. As another example, the first launch device may have a greater weight than the second launch device. As another example, the impact device has at least two impact areas, and the session data includes an impact area count for each impact area of ​​the at least two impact areas reflecting a total number of impact events in which the impact area is a hit impact area. In some such implementations, the impact area count includes a number of impact events attributed to the first launch device and a number of impact events attributed to the second launch device. As another example, the impact type may be determined based on an analysis of a voltage profile of the impact event. In some such examples, the impact type is one of a graze impact and a direct hit, and the graze impact event has a lesser weight in determining the score than the direct hit event.

[0100] In some aspects, the techniques described herein relate to a method including the steps of: providing a user interface displaying a plurality of virtual impact areas corresponding to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving, via the user interface, a selection of a target impact area from the plurality of virtual impact areas; sending the target impact area to the impact device and recording a start time, the impact device modifying an appearance of the target impact area in response to receiving the target impact area; receiving from the impact device voltage information generated in response to an impact event, which is an impact of an object against the impact device; in response to receiving the voltage information generated in response to the impact event, recording a stop time and calculating a reaction time based on the elapsed time measured from the start time to the stop time; determining a magnitude of the impact event for the target impact area based on the voltage information attributed to the target impact area; calculating a score for the impact event based on the inverse of the reaction time and the magnitude; and updating the user interface to reflect the score.

[0101] These and other aspects may include one or more of the following, alone or in combination. For example, the voltage information may include a voltage measured for at least one physical impact area during an impact period of less than 0.5 seconds. As another example, the target impact area is a first target impact area, and the method may include receiving, via a user interface, a selection of a second target impact area from a plurality of virtual impact areas, where the first target impact area is assigned a first weight and the second target impact area is assigned a second weight, and sending the first target impact area and the second target impact area to an impact device, where the impact device further modifies an appearance of the second target impact area, where the modified appearance of the first target impact area is different from the modified appearance of the second target impact area. In some such examples, in response to receiving the voltage information generated in response to the impact event, the method may further include determining the magnitude of the impact event for the second target impact area based on the associated voltage information attributed to the second target impact area, calculating a first weighted magnitude by applying a first weight to the magnitude of the impact event calculated for the first target impact area, calculating a second weighted magnitude by applying a second weight to the magnitude of the impact event calculated for the second target impact area, and calculating a total score for the impact event by combining the inverse of the reaction time with the first weighted magnitude and the second weighted magnitude as a score. As another example, the start time is recorded in response to recognizing a voice command of the user. As another example, the start time is recorded in response to recognizing a default operation of the secondary sensor.

[0102] As another example, the method may further comprise the steps of receiving, via a user interface, a target area sequence including target impact areas, and sending the target area sequence to an impact device configured to continuously change the appearance of physical impact areas corresponding to the target impact areas of the target area sequence, the progression of the target area sequence being triggered by an impact event on any of a plurality of physical impact areas. In some such examples, the method may further comprise the steps of receiving from the impact device respective voltage information generated in response to each impact event, calculating respective scores for each target area of ​​the target area sequence from the voltage information attributed to the target impact areas, calculating a sequence score using the respective scores, and updating the user interface to reflect the sequence scores.

[0103] As another example, receiving the target impact areas includes receiving an activity profile indicating the target impact areas and the non-target impact areas, and calculating the score of the impact event includes, for each impact area, determining the magnitude of the impact event based on the voltage information attributed to the impact area, calculating the target magnitude by combining the magnitudes of the target impact areas, calculating the non-target magnitude by combining the magnitudes of the non-target impact areas, and calculating the score as the difference between the target magnitude and the non-target magnitude combined with the inverse of the reaction time. In some such examples, the activity profile includes a respective weight for each impact area, and for each impact area, the magnitude of the impact event for that impact area is multiplied by the respective weight for that impact area. Calculating the score as the difference between the target magnitude and the non-target magnitude can be accomplished by using a negative weight for the non-target area. In some examples, the weight corresponds to a proficiency level. In some examples, at least one physical impact area is in a padding worn by a user who impacts the impact device. In some examples, the method further includes updating a user interface to display the impact magnitude for each impact area.

[0104] In some aspects, the techniques described herein relate to a method including the steps of providing a user interface displaying a plurality of virtual impact areas, where the plurality of virtual impact areas displayed in the user interface correspond to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving a selection of an object having a known mass; receiving from the impact device voltage information generated in response to an impact event, the impact of the object against the impact device; in response to receiving the voltage information generated in response to the impact event, determining a hit impact area from the voltage information; determining a velocity of the object from the voltage information and the known mass; and updating the user interface to identify the hit impact area and to display the velocity.

[0105] These and other aspects may include one or more of the following, alone or in combination. For example, the updating of the user interface may be performed in real time. As another example, the method may further include receiving a selection of a target impact area from a plurality of virtual impact areas, determining whether the target impact area matches the hit impact area in response to receiving voltage information generated in response to the impact event, and updating the user interface with an indication of whether the target impact area matches the hit impact area. In some examples, the method may further include sending the hit impact area to an impact device and modifying the appearance of the hit impact area upon impact. As another example, in response to receiving voltage information generated in response to the impact, the method may further include updating a session record stored in the memory, including adding the object's velocity to the session record and updating the impact event count of the session record, calculating an average velocity based on the session record, and updating the user interface to display the average velocity. In some examples, the method may further include receiving an instruction to start a new session and initializing the session record. The instruction to start a new session may result from a selection of a new object having a different known mass.

[0106] As another example, the method may include receiving a selection of a target impact area from a plurality of virtual impact areas, updating a session record stored in memory in response to receiving voltage information generated in response to the impact, the session record including adding a velocity of the object to the session record, updating an impact event count of the session record, and recording in the session record a determination of whether the target impact area matches the hit impact area, calculating an average velocity based on the session record, calculating a hit percentage based on the session record, and updating a user interface to display the average velocity, the hit percentage, and the impact event count. The method may also include updating a user interface to display an indication of whether the target impact area matches the hit impact area.

[0107] As another example, the plurality of physical impact regions may be arranged in three rows, with one impact region of the plurality of physical impact regions surrounding the three rows. In some examples, at least two of the three rows each include three physical impact regions.

[0108] In another example, determining the velocity of the object from the voltage information and the known mass includes determining a peak voltage over an impact period in a hit impact area, and determining an impact energy Et from the peak voltage based on calibration data, where the impact energy Et is directly related to the peak voltage;

number

[0109] In some examples, the techniques described herein relate to a method including the steps of: providing a user interface displaying a plurality of virtual impact areas, where the plurality of virtual impact areas displayed in the user interface correspond to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving via the user interface a profile including an identification of at least two impact areas of the plurality of physical impact areas as target impact areas, with the remaining impact areas of the plurality of physical impact areas being non-target impact areas; receiving from the impact device voltage information generated in response to an impact event, which is an impact of an object against the impact device; and in response to receiving the voltage information generated in response to the impact event, for each target impact area, determining a magnitude of the impact event for the target impact area based on the voltage information associated with the target impact area; calculating a score for the impact event based on the magnitude; and updating the user interface to reflect the score.

[0110] These and other aspects may include one or more of the following, alone or in combination: For example, receiving the target impact areas includes receiving an activity profile indicating the target impact areas and the non-target impact areas, and calculating the score of the impact event includes, for each impact area, determining a magnitude of the impact event based on voltage information attributed to the impact area, calculating a target magnitude by combining the magnitudes of the target impact areas, calculating a non-target magnitude by combining the magnitudes of the non-target impact areas, and calculating the score as the difference between the target magnitude and the non-target magnitude.

[0111] As another example, the activity profile includes a respective weight for each impact area, and for each impact area, the magnitude of the impact event for that impact area is multiplied by the respective weight for that impact area. In some such examples, calculating the score as the difference between the target magnitude and the non-target magnitude can be accomplished by using negative weights for the non-target areas. In some examples, the weights may correspond to a proficiency level. In some examples, at least one physical impact area is in padding worn by a user impacting the impact device. In some examples, the user interface is updated to display the impact magnitude for each impact area.

[0112] As another example, the method may further include recording a start time in response to a command from a user, recording a stop time in response to receiving the voltage information, and calculating a reaction time based on the elapsed time measured by the start time and stop time, wherein the calculation of the score is further based on the inverse of the reaction time.

[0113] In some aspects, the technology described herein relates to a system including an impact device having an impact area configured to generate a voltage in response to an impact of an object, at least one processor, and a memory storing instructions that, when executed by the at least one processor, cause the system to perform a method of any preceding claim.

[0114] Implementations of the various techniques described herein may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or combinations thereof. Implementations may be implemented as a computer program product, i.e., a computer program tangibly embodied in a data processing apparatus, e.g., a programmable processor, an information carrier, e.g., a non-transitory machine-readable storage device (computer-readable medium), for processing by or controlling the operation of one or more computers. Computer programs such as the computer program(s) described above may be written in any form of programming language, including compiled or interpreted languages, and may be deployed in any form, such as as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may be deployed for processing on one computer or on multiple computers at one site, or distributed across multiple sites and interconnected by a communication network.

[0115] Many of the method steps may be performed by one or more programmable processors executing computer programs which perform functions by manipulating input data to generate output. Method steps may also be performed by, and apparatus may be implemented as, special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).

[0116] Processors suitable for processing computer programs include, by way of example, both general purpose and special purpose microprocessors, and any one or more processors formed on the substrate of any kind of digital computer. Generally, a processor receives instructions and data from a read-only memory or a random access memory, or both. Elements of a computer may include at least one processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer may also include one or more storage devices for storing data, such as magnetic, magneto-optical, or optical disks, or may be operatively coupled thereto for receiving or transferring data, or both. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including, by way of example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices, magnetic disks, such as internal hard disks or removable disks, magneto-optical disks, and CD-ROM and DVD-ROM disks. The processor and memory may be supplemented by, or incorporated in, special purpose logic circuitry.

[0117] For user interaction, the implementations may be implemented on a computer having, for example, a display device, such as a touch screen, monitor, projection, etc., for displaying information to the user, and an input device, such as a keyboard, a pointing device, such as a finger, stylus, mouse, or trackball, by which the user can provide input to the computer. Other types of devices may also be used for user interaction. For example, feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback, and input from the user may be received in any form, including acoustic, speech, or tactile input.

[0118] The embodiments may be implemented in a computer system that includes a back-end component, e.g., as a server, or includes a middleware component, e.g., an application server, or includes a front-end component that allows a user to interact with the embodiments, e.g., a client computer having a graphical user interface or a web browser, or includes any combination of the above back-end, middleware, or front-end components. The components may be interconnected by any form or medium of digital data communication, e.g., a communications network. Examples of communications networks include local area networks (LANs) and wide area networks (WANs), e.g., the Internet.

[0119] While certain features of the described embodiments have been illustrated as set forth herein, many modifications, substitutions, changes, and equivalents will now occur to those skilled in the art. It will therefore be understood that the appended claims are intended to cover all such modifications and changes that fall within the scope of the embodiments. It will be understood that these have been presented by way of example only and not by way of limitation, and that various changes in form and details may be made. Any portion of the apparatus and / or methods described herein may be combined in any combination except in mutually exclusive combinations. The embodiments described herein may include various combinations and / or subcombinations of the functions, components, and / or features of the different described embodiments.

Claims

1. receiving voltage information generated in response to a plurality of impact events from an impact device including at least one impact region configured to generate a voltage in response to an impact without a current generating device; For each impact event of the plurality of impact events, determining a launch device attributing the impact event based on at least one of a magnitude or an impact type determined from the voltage information, the launch device being at least one of a first launch device and a second launch device; updating session data for the impact device, the session data including updating a count of impacts attributed to the launch device; calculating a score based on the session data; providing a user interface for displaying said scores; A method comprising:

2. providing a user interface displaying a plurality of virtual impact areas corresponding to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving, via a user interface, a selection of a target impact region from the plurality of virtual impact regions; sending the target impact area to the impact device and recording a start time, the impact device modifying the appearance of the target impact area in response to receiving the target impact area; receiving, from the impact device, voltage information generated in response to an impact event, the impact of an object against the impact device; in response to receiving the voltage information generated in response to the impact event; recording a stop time in response to the impact event and calculating a reaction time based on the elapsed time measured from the start time to the stop time; determining the magnitude of the impact event in the target impact area based on the voltage information attributed to the target impact area; calculating a score for the impact event based on the inverse of the reaction time and the magnitude; updating the user interface to reflect the score; A method comprising:

3. 3. The method of claim 2, wherein the voltage information includes, for at least one physical impact area, a voltage measured during an impact period of less than 0.5 seconds.

4. 3. The method of claim 2, wherein the target impact area is a first target impact area, the method comprising: receiving, via the user interface, a selection of a second target impact area from the plurality of virtual impact areas, the first target impact area being assigned a first weight and the second target impact area being assigned a second weight; sending the first target impact area and the second target impact area to the impact device, wherein the impact device further modifies an appearance of the second target impact area, the modified appearance of the first target impact area being different from the modified appearance of the second target impact area; A method comprising:

5. 5. The method of claim 4, in response to receiving the voltage information generated in response to the impact event, the method comprising: determining the magnitude of the impact event in the second target impact area based on the associated voltage information attributed to the second target impact area; calculating a first weighted magnitude by applying a first weight to the magnitude of the impact event calculated for the first target impact area; calculating a second weighted magnitude by applying a second weight to the magnitude of the impact event calculated for the second target impact area; calculating a total score for the impact event as the score by combining the inverse of the reaction time with the first weighted magnitude and the second weighted magnitude; The method further comprises:

6. 3. The method of claim 2, receiving, via the user interface, a sequence of target areas including the target impact areas; sending the sequence of target areas to the impact device, the impact device being configured to continuously change the appearance of the physical impact areas corresponding to the target impact areas of the sequence of target areas, the progression of the sequence of target areas being triggered by an impact event on any of the plurality of physical impact areas; The method further comprises:

7. 7. The method of claim 6, receiving respective voltage information generated in response to each impact event from the impact device; calculating a score for each target area of ​​the sequence of target areas from the voltage information attributed to the target impact areas; calculating a sequence score using each of the scores; updating the user interface to reflect the sequence score; The method further comprises:

8. 3. The method of claim 2, wherein receiving the target impact area comprises receiving an activity profile indicating target impact areas and non-target impact areas, and calculating the score for the impact event comprises: determining, for each impact area, the magnitude of the impact event based on the voltage information attributed to the impact area; calculating a target size by combining the sizes of the target impact areas; calculating a non-target size by combining the sizes of the non-target impact areas; calculating the score as the difference between the target magnitude and the non-target magnitude combined with the inverse of the reaction time; A method comprising:

9. 9. The method of claim 8, wherein the activity profile includes a respective weight for each impact area, and for each impact area, the magnitude of the impact event for that impact area is multiplied by the respective weight for that impact area.

10. 10. The method of claim 9, wherein calculating the score as the difference between the target magnitude and the non-target magnitude is accomplished by using a negative weight for non-target regions.

11. 10. The method of claim 9, wherein the weight corresponds to a proficiency level.

12. 9. The method of claim 8, wherein at least one physical impact area is in padding worn by a user impacting the impact device.

13. 9. The method of claim 8, The method further includes updating the user interface to display the magnitude of the impact for each impact area.

14. 3. The method of claim 2, wherein the start time is recorded in response to recognizing a user's voice command.

15. 3. The method of claim 2, wherein the start time is recorded in response to recognition of a predetermined operation of a secondary sensor.

16. providing a user interface displaying a plurality of virtual impact areas, the plurality of virtual impact areas displayed on the user interface corresponding to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving a selection of an object having a known mass; receiving, from the impact device, voltage information generated in response to an impact event, the impact of the object against the impact device; in response to receiving the voltage information generated in response to the impact event; determining a hit impact area from the voltage information; determining a velocity of the object from the voltage information and the known mass; updating the user interface to identify the hit impact area and display the velocity; A method comprising:

17. providing a user interface displaying a plurality of virtual impact areas, the plurality of virtual impact areas displayed on the interface corresponding to a plurality of physical impact areas on an impact device, each impact area of ​​the plurality of physical impact areas configured to generate a voltage in response to an impact; receiving, via the user interface, a profile including identification of at least two impact areas of the plurality of physical impact areas as targeted impact areas, the remaining impact areas of the plurality of physical impact areas being non-target impact areas; receiving, from the impact device, voltage information generated in response to an impact event, the impact of an object against the impact device; in response to receiving the voltage information generated in response to the impact event; For each target impact area, determining the magnitude of the impact event for the target impact area based on the voltage information associated with the target impact area; calculating a score for the impact event based on the magnitude; updating the user interface to reflect the score; A method comprising:

18. 18. The method of claim 17, wherein receiving the target impact area comprises receiving an activity profile indicating target impact areas and non-target impact areas, and calculating the score for the impact event comprises: determining, for each impact area, the magnitude of the impact event based on the voltage information attributed to that impact area; calculating a target size by combining the sizes of the target impact areas; calculating a non-target size by combining the sizes of the non-target impact areas; calculating the score as the difference between the target magnitude and the non-target magnitude; A method comprising:

19. 20. The method of claim 18, wherein the activity profile includes a respective weight for each impact area, and for each impact area, the magnitude of the impact event for that impact area is multiplied by the respective weight for that impact area.

20. 20. The method of claim 19, wherein calculating the score as the difference between the target magnitude and the non-target magnitude is accomplished by using a negative weight for non-target regions.

21. 20. The method of claim 19, wherein the weight corresponds to a proficiency level.

22. 20. The method of claim 18, wherein at least one physical impact area is in padding worn by a user impacting the impact device.

23. 20. The method of claim 18, further comprising updating the user interface to display the magnitude of the impact for each impact area.

24. 18. The method of claim 17, recording a start time in response to a command from a user; In response to receiving the voltage information, recording a stop time in response to the impact event; calculating a reaction time based on the elapsed time measured by the start time and the stop time; wherein the calculation of the score is further based on the inverse of the reaction time.

25. 1. A system comprising: an impact device having an impact region configured to generate a voltage in response to impact of an object; at least one processor; a memory storing instructions which, when executed by said at least one processor, cause the system to carry out the method of any one of claims 1 to 24; A system including: