Ball serving control method and system, electronic equipment and ball serving system
By integrating a voice positioning and recognition component into a tennis serving robot, user voice commands and positioning data are collected, three-dimensional coordinates are calculated, and serving parameters are determined. This solves the problem of a single serving pattern, realizes personalized intelligent serving strategies, and improves training effectiveness.
Patent Information
- Application Number
- CN202511603139.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-04
- Publication Date
- 2026-01-30
AI Technical Summary
Existing tennis serving robots use mechanical control systems, have a single serving pattern, and offer a poor user experience.
By collecting voice commands and positioning data through voice positioning and recognition components worn by target users, calculating three-dimensional coordinates, and combining voice commands to determine serving parameters, a dynamic and personalized intelligent serving strategy can be achieved.
It improves the user interaction experience and enables targeted training of athletes' mobility, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
Smart Images

Figure CN121422467A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of sports intelligent equipment technology, and more specifically, to a ball-serving control method, system, electronic device, and ball-serving system. Background Technology
[0002] With the popularization of tennis and the improvement of its technical level, the demand for tennis serving robots is growing. Most of the existing extrusion-type tennis serving robots adopt the traditional mechatronics design, which aims to provide users with stable serving practice.
[0003] Extrusion tennis serving robots on the market mainly use mechanical control systems, adjusting parameters such as serving speed, spin, and landing point through knobs, buttons, or simple remote control. This results in overly simplistic serving modes and a poor user experience. Summary of the Invention
[0004] The purpose of this application is to provide a serve control method, system, electronic device, and serve system to solve the problems of single serve patterns and poor user interaction experience in tennis serve robots that currently use mechanical control systems.
[0005] In a first aspect, this application provides a ball-serving control method, which includes: acquiring a target data packet; wherein the target data packet includes a voice command from a target user and the target user's location data; the target user's voice command is obtained based on speech semantic analysis of the voice generated by the target user, the target user's location data represents the location data of the target user at the time the voice command is generated, and the target data packet is acquired and recognized by a voice positioning recognition component worn by the target user; calculating the target user's three-dimensional coordinates in the court based on the target user's location data; determining the target ball-serving parameters of the ball-serving machine based on the target user's three-dimensional coordinates in the court and the target user's voice command; and controlling the ball-serving machine to serve the ball based on the target ball-serving parameters.
[0006] The above-described serve control method first collects and recognizes the voice commands and location data of the target user through a voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serve parameters for the serve machine. Finally, it controls the serve machine to execute the serve based on these target parameters. Thus, this serve control method deeply integrates voice commands with precise location information, enabling the serve machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serve strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. This allows for dynamic adjustment of serve parameters based on real-time location and real-time user voice, enabling targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0007] In an optional implementation of the first aspect, determining the target serving parameters of the ball machine based on the target user's three-dimensional coordinates on the court and the target user's voice command includes: parsing the target user's voice command to obtain the position command issued by the target user; wherein the position command represents the relative position command between the ball's landing point and the target user's body; determining the target landing point coordinates of the serve based on the target user's three-dimensional coordinates on the court and the position command; and calculating the target serving parameters of the ball machine based on the target landing point coordinates.
[0008] In an optional implementation of the first aspect, determining the target landing point coordinates of the serve based on the target user's three-dimensional coordinates on the court and position instructions includes: identifying the relative orientation of the serve landing point with respect to the target user's three-dimensional coordinates on the court based on position instructions; obtaining a pre-configured landing point distance difference value; wherein the landing point distance difference value is determined based on the relative distance between the ball landing point and the user's body position when the user is playing the ball; and determining the target landing point coordinates of the serve based on the landing point distance difference value and the relative orientation.
[0009] In the above implementation method, this solution accurately locks the position of the target landing point coordinates based on the pre-configured landing point distance difference value and the relative position of the identified serve landing point with respect to the target user's three-dimensional coordinates on the court, thereby improving the accuracy of the target landing point coordinate determination.
[0010] In an optional implementation of the first aspect, the target serving parameters of the ball machine are calculated based on the target landing point coordinates, including: determining the target grid area where the landing point coordinates are located based on the target landing point coordinates; wherein the court is pre-divided into multiple grid areas of equal area; and searching for the serving parameters corresponding to the target grid area in a pre-stored parameter lookup table based on the target grid area to obtain the target serving parameters; wherein the parameter lookup table stores multiple serving parameters, and each grid area corresponds to one serving parameter.
[0011] In the above implementation method, this solution pre-divides the court into multiple grid areas with equal area, calculates the ball-launching parameters of the ball-launching machine relative to each grid area in advance, and constructs a parameter lookup table corresponding to the ball-launching parameters for each grid area. This significantly reduces the computational resource consumption of the computing device while ensuring the accuracy of the ball-launching parameters.
[0012] In an optional implementation of the first aspect, before acquiring the target data packet, the method further includes: acquiring initial voice information emitted by the target user; performing speech semantic recognition on the initial voice information to acquire training strategy instructions carried in the initial voice information; determining the training strategy type selected by the target user based on the training strategy instructions; and, if the training strategy type is determined to be real-time follow-up training, performing the step of acquiring the target data packet.
[0013] In the above implementation, when the target user makes an initial interaction, the recognition device selects a training strategy based on the initial voice information emitted by the target user, thereby making subsequent serving training more in line with user needs and improving the user training experience.
[0014] In an optional implementation of the first aspect, the method further includes: if it is determined that the training strategy type is not real-time follow training, determining the second target serving parameters of the serving machine according to the training strategy type.
[0015] In an optional implementation of the first aspect, determining the second target serving parameters of the ball machine according to the training strategy type includes: when the training strategy type is determined to be an intensive competitive training type, acquiring the second positioning data of the target user, and generating a first serving landing point distribution corresponding to the intensive competitive training type based on the second positioning data of the target user; wherein the first serving landing point distribution is generated based on the ball landing point distribution of multiple match data; determining the grid area where each serving landing point in the first serving landing point distribution is located based on the first serving landing point distribution; wherein the court is pre-divided into multiple grid areas with equal area; and searching for the serving parameters corresponding to each serving landing point in a pre-stored parameter lookup table based on the grid area where each serving landing point is located to obtain the second target serving parameters of the ball machine; wherein the parameter lookup table stores multiple serving parameters, and each grid area has corresponding serving parameters.
[0016] In an optional implementation of the first aspect, determining the second target serving parameters of the ball machine according to the training strategy type includes: when the training strategy type is determined to be a return-to-position running training type, acquiring the second positioning data of the target user; determining the second serving landing point distribution corresponding to the return-to-position running training type based on the second positioning data of the target user; wherein the second serving landing point distribution is generated based on a preset running distance and the ball landing points relative to the forehand and backhand positions under the user's playing conditions; determining the grid area where each serving landing point in the second serving landing point distribution is located based on the second serving landing point distribution; wherein the court is pre-divided into multiple grid areas of equal area; and searching for the serving parameters corresponding to each serving landing point in a pre-stored parameter lookup table based on the grid area where each serving landing point is located to obtain the third target serving parameters of the ball machine; wherein the parameter lookup table stores multiple serving parameters, and each grid area corresponds to one serving parameter.
[0017] The above-described various implementation methods, including the serve control method designed in this solution, provide multiple serve control modes for different types of serve training, allowing users to select the serve type training according to their own needs, thereby further improving the user experience.
[0018] Secondly, this application provides a ball-serving control device, which includes an acquisition module, a calculation module, a determination module, and a control module. The acquisition module is used to acquire a target data packet; wherein, the target data packet includes a voice command from a target user and the target user's location data; the target user's voice command is obtained based on speech semantic analysis of the voice generated by the target user, and the target user's location data represents the location data of the target user at the time the voice command was generated; the target data packet is acquired and recognized by a voice positioning recognition component worn by the target user; the calculation module is used to calculate the three-dimensional coordinates of the target user in the court based on the target user's location data; the determination module is used to determine the target ball-serving parameters of the ball-serving machine based on the three-dimensional coordinates of the target user in the court and the target user's voice command; the control module is used to control the ball-serving machine to serve the ball according to the target ball-serving parameters.
[0019] The above-designed ball-serving control device first collects and recognizes the voice commands and location data of the target user based on the voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the target user's location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serving parameters for the ball machine. Finally, it controls the ball machine to serve according to these target serving parameters. Thus, this ball-serving control method deeply integrates voice commands and precise location information, enabling the ball machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serving strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. Therefore, dynamically adjusting the serving parameters based on real-time location and real-time user voice allows for targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0020] Thirdly, the present invention provides an electronic device including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the method described in the first aspect and any optional embodiment of the first aspect.
[0021] Fourthly, the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, performs the method described in the first aspect or any optional embodiment of the first aspect.
[0022] Fifthly, the present invention provides a computer program product, including a computer program / instructions, which, when executed by a processor, perform the method described in the first aspect and any optional embodiment of the first aspect.
[0023] Sixthly, this application provides a ball-serving control system, which includes a voice positioning and recognition component and a computing device. The computing device communicates with the voice positioning and recognition component. The voice positioning and recognition component is used to: collect voice generated by a target user; perform voice semantic recognition on the voice generated by the target user to obtain the target user's voice command; collect the target user's positioning data; generate a target data packet based on the voice command and positioning data, and send the target data packet to the computing device. The computing device is used to: acquire the target data packet; calculate the target user's three-dimensional coordinates in the court based on the target user's positioning data; determine the target ball-serving parameters of the ball-serving machine based on the target user's three-dimensional coordinates in the court and the target user's voice command; and control the ball-serving machine to serve the ball based on the target ball-serving parameters.
[0024] The above-designed ball-serving control system first collects and recognizes the voice commands and location data of the target user based on the voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the target user's location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serving parameters for the ball-serving machine. Finally, it controls the ball-serving machine to serve according to these parameters. Thus, this ball-serving control method deeply integrates voice commands and precise location information, enabling the ball-serving machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serving strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. Therefore, dynamically adjusting the serving parameters based on real-time location and real-time user voice allows for targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0025] In an optional embodiment of the sixth aspect, the voice location recognition component includes a voice location recognition tag and a location base station; the voice location recognition tag is configured to communicate with the location base station and a computing device, the voice location recognition tag is used to contact a target user, and the location base station is located at the stadium.
[0026] In a seventh aspect, this application provides a serving system, which includes a serving control system as described in any of the sixth aspects and a serving machine, wherein the serving machine communicates with a computing device in the serving control system; the serving machine is used to receive target serving parameters sent by the computing device and to serve using the target serving parameters.
[0027] The above-designed ball-serving system first collects and recognizes the voice commands and location data of the target user through a voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serving parameters for the ball-serving machine. Finally, it controls the ball-serving machine to serve according to these parameters. Thus, this ball-serving control method deeply integrates voice commands and precise location information, enabling the ball-serving machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serving strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. Therefore, dynamically adjusting the serving parameters based on real-time location and real-time user voice allows for targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0028] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of this application more obvious and understandable, the following are specific embodiments of this application. Attached Figure Description
[0029] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0030] Figure 1 A first flowchart of the serve control method provided in the embodiments of this application; Figure 2 This is a schematic diagram of the structure of the ball-serving control system provided in an embodiment of this application; Figure 3 This is a schematic diagram of the structure of the ball-serving system provided in an embodiment of this application; Figure 4 This is a second flowchart of the serve control method provided in an embodiment of this application; Figure 5 A third flowchart illustrating the serve control method provided in an embodiment of this application; Figure 6 This is a schematic diagram of the structure of the ball-serving control device provided in the embodiments of this application; Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0031] Icons: 10-Voice positioning and recognition component; 110-Voice positioning and recognition tag; 120-Positioning base station; 20-Computing device; 30-Polo ball machine; 600-Acquisition module; 610-Computing module; 620-Determination module; 630-Control module; 7-Electronic device; 701-Processor; 702-Memory; 703-Communication bus. Detailed Implementation
[0032] The embodiments of the technical solution of this application will now be described in detail with reference to the accompanying drawings. These embodiments are only used to more clearly illustrate the technical solution of this application and are therefore merely examples, and should not be used to limit the scope of protection of this application.
[0033] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the application; the terms “comprising” and “having”, and any variations thereof, in the specification, claims, and foregoing description of the drawings are intended to cover non-exclusive inclusion.
[0034] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly specifying the number, specific order, or primary and secondary relationship of the indicated technical features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly defined.
[0035] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0036] In the description of the embodiments in this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0037] In the description of the embodiments of this application, the term "multiple" refers to two or more (including two), similarly, "multiple sets" refers to two or more (including two sets), and "multiple pieces" refers to two or more (including two pieces).
[0038] In the description of the embodiments of this application, the technical terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing the embodiments of this application and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the embodiments of this application.
[0039] In the description of the embodiments of this application, unless otherwise expressly specified and limited, technical terms such as "installation," "connection," "joining," and "fixing" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. For those skilled in the art, the specific meaning of the above terms in the embodiments of this application can be understood according to the specific circumstances.
[0040] With the popularization of tennis and the improvement of its technical level, the demand for tennis serving robots is growing. Most of the existing extrusion-type tennis serving robots adopt the traditional mechatronics design, which aims to provide users with stable serving practice.
[0041] Extrusion tennis serving robots on the market mainly use mechanical control systems, adjusting parameters such as serving speed, spin, and landing point through knobs, buttons, or simple remote control. This results in overly simplistic serving modes and a poor user experience.
[0042] To address the aforementioned issues, this application first provides a serving control method, system, electronic device, and serving system. First, a voice positioning and recognition component worn by the target user collects and recognizes the voice commands generated by the target user and the target user's positioning data. Then, based on the target user's positioning data, the three-dimensional coordinates of the target user on the court are calculated. Furthermore, based on the target user's three-dimensional coordinates on the court and the voice commands, the target serving parameters of the serving machine are determined. Then, based on the target serving parameters, the serving machine is controlled to perform the serve. Thus, the serving control method designed in this solution deeply integrates voice commands and precise position information, enabling the serving machine to truly understand the user's "positional semantics," achieving a highly dynamic and personalized intelligent serving strategy, and improving the user's interactive experience. Simultaneously, the target user's positioning data in this solution is the location data of the target user at the moment the voice command is generated. Therefore, dynamically adjusting the serving parameters based on real-time position and real-time user voice allows for targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness. In addition, the voice positioning and recognition component designed in this solution highly integrates voice recognition and positioning functions, achieving completely hands-free natural voice control, greatly improving the ease of operation during training.
[0043] Based on the above ideas, this application first provides a serve control method, which can be applied to a computing device, including but not limited to a computer, server, central control system, controller, and control chip, etc. Figure 1 As shown, this serve control method can be implemented in the following ways: Step S100: Obtain the target data packet, which includes the target user's voice commands and the target user's location data.
[0044] Step S110: Calculate the three-dimensional coordinates of the target user in the stadium based on the target user's location data.
[0045] Step S120: Determine the target ball-serving parameters of the ball-serving machine based on the target user's three-dimensional coordinates in the court and the target user's voice commands.
[0046] Step S130: Control the ball-serving machine to serve according to the target serving parameters.
[0047] Before describing the above implementation methods, the application scenarios of this solution will be explained as follows: This solution is mainly used for controlling the serve of a tennis ball machine during tennis training, such as... Figure 2 As shown, the ball-serving control system designed in this scheme may include a voice positioning and recognition component 10 and a computing device 20, and the computing device 20 communicates with the voice positioning and recognition component 10. Specifically, the voice positioning and recognition component 10 may include a voice positioning and recognition tag 110 and a positioning base station 120, and the voice positioning and recognition tag 110 is configured to communicate with the positioning base station 120 and the computing device 20.
[0048] The voice location recognition tag 110 can be worn by the user. Specifically, the voice location recognition tag 110 can be formed by highly integrating a miniaturized voice recognition chip and a positioning module. The positioning module can be an Ultra Mobile Broadband (UMB) positioning module. The voice location recognition tag 110 also includes a built-in battery, microphone, and wireless communication module. It can collect the voice generated by the target user, perform voice semantic recognition on the voice generated by the target user to obtain the target user's voice commands, and collect the target user's positioning data. Then, it packages the voice commands and positioning data into a data packet and sends it to the computing device 20.
[0049] The positioning base station 120 can be deployed around the training ground (such as a tennis court) to interact with the voice positioning recognition tag 110, thereby accurately measuring the distance and angle information from the tag to each base station, and thus obtaining the location of the voice positioning recognition tag 110 worn by the user in the field.
[0050] The computing device 20 is the control center of the entire system. It can receive data packets transmitted by the voice positioning and recognition tag 110, and then perform positioning calculations, voice command parsing, etc. The computing device 20 can also communicate with the ball-serving machine, thereby controlling the ball-serving machine based on the calculated ball-serving machine parameters, so that the ball-serving machine serves the ball according to the obtained ball-serving machine parameters.
[0051] The aforementioned voice positioning and recognition tag 110, positioning base station 120, and computing device 20 constitute a ball-serving control system, thereby controlling the ball-serving machine. Furthermore, this solution can also combine the ball-serving machine and the ball-serving control system to form a single ball-serving system, such as... Figure 3 As shown, the ball-serving machine 30 represents an intelligent ball-serving machine. Based on control signals and serving parameters, it can adjust the direction, elevation angle, and speed of its multi-degree-of-freedom adjustment mechanism to serve tennis balls, thereby controlling the desired ball landing point. Specifically, the ball-serving machine 30 can be any of the various tennis serving robots currently on the market. For example, it can be a ball-squeezing serving robot, which includes a ball-squeezing module, a pitch module, and left / right modules. The ball-squeezing module applies a certain speed to the serving tennis ball and squeezes it out; the pitch module adjusts the pitch angle of the serving robot; and the left / right modules adjust the direction of the serving robot, thus adjusting the serving parameters.
[0052] Furthermore, in the case of miniaturization and integration, the computing device 20 designed in this scheme can be a controller, a microcontroller, etc., and can be integrated into the ball-serving machine 30.
[0053] Based on the above-designed serving system, this solution can achieve real-time follow-up serving based on user voice through the serving control method described above.
[0054] Specifically, the target data packet in step S100 can be obtained by the voice positioning and recognition tag acquisition, processing, packaging and sending described above. The target data packet includes the voice command of the target user and the location data of the target user.
[0055] Specifically, the voice commands of the target user can be obtained through speech semantic analysis of the user's speech. In particular, the speech recognition chip in the speech positioning and recognition tag of this solution can employ an offline large language model and a semantic recognition model. The offline large language model recognizes the user's speech to obtain speech text, and then the semantic recognition model performs semantic recognition on the obtained speech text to obtain the voice command. For example, if the user's speech is "serve the ball to my left," the speech semantic recognition can yield the voice commands "serve the ball" and "my left."
[0056] Furthermore, tennis matches are mostly held in open outdoor environments with significant background noise, such as bird calls, wind, and crowd noise. Especially in summer, cicada calls can also cause interference. This solution collects typical noise samples from tennis matches and trains the speech recognition chip for noise suppression, enhancing its environmental adaptability. Simultaneously, a lightweight edge-side model architecture achieves high-precision recognition with low power consumption, ensuring stable operation even in complex outdoor environments. Athletes can quickly issue commands simply by waking up the voice tag, eliminating the need for repeated confirmations and significantly improving ease of operation and response efficiency during training. The noise suppression training of the large language model can utilize any existing large language model noise suppression training method, and its training samples can be obtained by collecting typical noise samples from tennis matches.
[0057] For the target user's location data in the target data packet, it represents the location data of the target user at the time the voice command was generated. Specifically, in order to achieve three-dimensional positioning using UWB, this scheme can set up multiple UWB positioning base stations, such as three or more UWB base stations. The positioning data can include the "time of flight" of the UWB signal from the voice positioning recognition tag to each positioning base station and the three-dimensional coordinates of each UWB positioning base station.
[0058] Since the voice commands and location data are packaged into target data packets and transmitted on the same channel in this scheme, they have natural time synchronization and location correlation, which can achieve more accurate location-based voice control.
[0059] Given the target data packet described above, this solution can first utilize the target user's location data within the target data packet to calculate the target user's three-dimensional coordinates within the stadium. Specifically, as described above, the location data includes the "time of flight" of the UWB signal with the voice location recognition tag reaching each location base station, as well as the three-dimensional coordinates of each UWB location base station.
[0060] Specifically, this scheme can first calculate the distance between the voice positioning and identification tag (i.e., the target user) and each base station based on the "time of flight" of the UWB signal from the voice positioning and identification tag to each positioning base station. For example, the base station sends a signal to the tag, and the tag immediately returns a response after receiving it. The module records the total round-trip time t (time of flight). Since the speed of signal propagation in the air is close to the speed of light c, the distance between the tag and the base station is: .
[0061] Then, based on the distance between the tag and each base station and the known coordinates of each base station, the three-dimensional coordinates of the tag are obtained by solving spatial geometric equations.
[0062] Specifically, taking three base stations as an example, according to the "distance formula between two points in space", the tag With each base station The distance between them satisfies the following equation: Base Station 1: ; For base station 2: ; For base station 3: ; The label can be obtained by solving the above simultaneous formulas. The three-dimensional coordinates are obtained, that is, the three-dimensional coordinates of the target user in the stadium.
[0063] It's important to note that due to UWB signal frequency limitations, multiple PTZ cameras in closely spaced areas may experience serious issues such as inaccurate or even unusable positioning. To address this, this solution pre-sets a time-sharing mechanism for the PTZ cameras, randomly allocating UWB signal transmission time slots for each camera at preset time intervals. This staggers the signal transmissions of adjacent devices in time, reducing the probability of collisions caused by simultaneous transmissions. Additionally, a two-way communication verification mechanism can be implemented between base stations and between base stations and tags to ensure that every signal interaction includes identity verification and data integrity checks. Illegal signals or abnormal data packets are automatically filtered by the system, ensuring the accuracy and reliability of the positioning data.
[0064] This solution, having obtained the target user's three-dimensional coordinates on the court using the aforementioned method, determines the target serving parameters of the ball machine based on the target user's three-dimensional coordinates and voice commands. The target user's three-dimensional coordinates provide crucial context for their voice commands, enabling the system to perceive the target user's serving intention based on these coordinates and their voice commands.
[0065] Specifically, as one possible implementation method, such as Figure 4 As shown, this solution can determine the target serving parameters of the ball-serving machine in the following ways: Step S400: Parse the voice commands of the target user to obtain the location commands issued by the target user.
[0066] Step S410: Determine the target landing point coordinates of the serve based on the target user's three-dimensional coordinates on the court and the position command.
[0067] Step S420: Calculate the target ball-serving parameters of the ball-serving machine based on the target landing point coordinates.
[0068] In the above implementation, the position command represents the relative position command between the ball landing point issued by the target user and the target user's body. For example, if the target user's voice command is "serve the ball" or "I'm to the left", the parsed position command is "I'm to the left", which means the left side of the target user's three-dimensional coordinates.
[0069] Given the parsed position command, this solution can determine the target landing point coordinates of the serve based on the target user's three-dimensional coordinates on the court and the position command. These target landing point coordinates represent the position coordinates of the ball's landing point on the court after the serve from the ball machine. Specifically, this solution first identifies the relative orientation of the serve landing point with respect to the target user's three-dimensional coordinates on the court based on the position command. For example, if the position command is "left," this "left" refers to the left side relative to the target user. However, the left side relative to the target user varies depending on the ball machine's orientation. Taking the ball machine directly in front of the target user as an example, the identified left side relative to the target user is the right side of the target user's three-dimensional coordinates as the ball machine faces.
[0070] By identifying the relative position of the ball's landing point to the target user's three-dimensional coordinates on the court using the aforementioned method, this solution can obtain a pre-configured landing point distance difference value. This landing point distance difference value can be pre-configured and stored. The specific value of this landing point distance difference value can be determined based on the relative distance between the ball's landing point and the user's body position during gameplay. For example, when a user is playing, the distance between the ball's landing point and the user's right hand is generally 20cm. In this case, the landing point distance difference value set by this solution can be set to 20cm.
[0071] In the above scenario, this solution ultimately determines the target landing point coordinates of the serve based on the difference in landing point distance and the relative orientation. For example, following the previous example, if the identified orientation is to the right of the target user's three-dimensional coordinates as the ball machine is facing, the obtained landing point distance difference value can be set to 20cm. In this case, this solution then determines the target user's three-dimensional coordinates based on... The target landing point coordinates can be obtained by measuring the difference between the distance to the right and the landing point by 20cm.
[0072] Having obtained the target landing point coordinates using the above method, this solution can calculate the target serving parameters of the ball machine based on these coordinates. Specifically, as one possible implementation, this solution can pre-divide the court into multiple grid areas of equal area. Since the ball machine's position relative to the court remains constant, the serving parameters for each grid area are almost fixed. In this case, the solution can pre-calculate the serving parameters for each grid area, thus constructing a parameter lookup table corresponding to the serving parameters for each grid area. In this scenario, the solution can first determine the target grid area where the target landing point coordinates are located, i.e., which grid the target landing point coordinates are situated in, and then find the corresponding serving parameters in the parameter lookup table based on the target grid area, thereby obtaining the target serving parameters. These target serving parameters can include the target serving speed, the target serving elevation angle, and the target serving azimuth angle.
[0073] In the above implementation method, this solution pre-divides the court into multiple grid areas of equal area and pre-calculates the ball-launching parameters of the ball-launching machine relative to each grid area, thereby constructing a parameter lookup table corresponding to the ball-launching parameters for each grid area. This significantly reduces the computational resource consumption of the computing device while ensuring the accuracy of the ball-launching parameters. Consequently, the computing device designed in this solution can use computing devices with limited computing power, such as microcontrollers, allowing the computing device to be built into the ball-launching machine. This achieves the integration of the ball-launching machine and the computing device without affecting the response speed of the ball-launching machine.
[0074] In an optional implementation of this embodiment, as another possible implementation, this solution can also employ a method of real-time calculation of the target serving parameters of the ball-serving machine.
[0075] For example, this scheme can establish a tennis ball kinematic model and derive the target launch parameters of the ball machine from the target landing point coordinates. Specifically, this scheme can first establish a trajectory equation based on the parabolic motion characteristics of the tennis ball in a gravitational field. Taking the ground point directly below the ball machine exit as the origin O(0,0,0), the X-axis is the launch direction, the Y-axis is the lateral offset direction, and the Z-axis is vertically upward. Let g be the acceleration due to gravity; t be the flight time (s) of the tennis ball from launch to landing.
[0076] The ball launcher outlet height (m); The initial velocity of the tennis ball (m / s) is the launch velocity. The launch elevation angle (rad); The azimuth angle is the launch azimuth angle (rad).
[0077] The trajectory of a tennis ball is described by the following system of equations: ; ; ; Then, the time parameter t is eliminated using the elimination method to establish the target landing point coordinates. Direct mapping relationship with target launch parameters: ; Where: d is the horizontal distance of the tennis ball's flight, satisfying... .
[0078] Finally, the parameters are solved, and the azimuth angle is directly determined from the coordinates: ; Solving for the coupled elevation angle and velocity: fixed When, solve for about The quadratic equation; fixed At that time, direct analytical calculation ; Then preset the elevation angle. By determining the range of values for these parameters to ensure the rationality of the serve trajectory, the target serve parameters can be obtained. , as well as .
[0079] When the target serving parameters are calculated using any of the above implementation methods, this solution can control the ball machine to serve based on the target serving parameters. Specifically, this solution can generate specific serving parameter instructions based on the target serving parameters and send them to the ball machine. After receiving the instructions, the ball machine adjusts the vertical elevation angle, horizontal azimuth angle, and rotation speed of the upper and lower serving wheels to match the serving parameter instructions, and finally serves the tennis ball with the target serving parameters, thus sending the tennis ball to the designated location of the target user.
[0080] The above-described serve control method first collects and recognizes the voice commands and location data of the target user through a voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serve parameters for the serve machine. Finally, it controls the serve machine to execute the serve based on these target parameters. Thus, this serve control method deeply integrates voice commands with precise location information, enabling the serve machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serve strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. This allows for dynamic adjustment of serve parameters based on real-time location and real-time user voice, enabling targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0081] In an optional implementation of this embodiment, the ball-serving control method designed in this solution can include multiple modes. When the user initially interacts with the ball-serving machine, the mode of the ball-serving machine can be selected first. Specifically, as shown... Figure 5 As shown, it includes: Step S500: Obtain the initial voice information sent by the target user.
[0082] Step S510: Perform speech semantic recognition on the initial speech information to obtain the training strategy instructions carried in the initial speech information.
[0083] Step S520: Determine the type of training strategy selected by the target user according to the training strategy instructions.
[0084] Step S530: If the training strategy type is determined to be real-time follow-up training, execute the step of obtaining the target data packet.
[0085] In the above embodiments, the initial voice information emitted by the user can also be collected and recognized by the voice positioning and recognition component worn by the user. The initial voice information can be characterized as the voice information generated by the user when the user first starts wearing the voice positioning and recognition component, after the voice positioning and recognition component is changed from the off state to the on state and is turned on.
[0086] This solution, upon obtaining initial speech information, performs speech semantic recognition to extract the training strategy instructions carried within the initial speech information. Then, based on these instructions, it determines the training strategy type selected by the target user. This solution can set multiple training types, such as real-time follow-up training, positional running training, and reinforced adversarial training. These training types can be assigned corresponding keywords. During the semantic recognition of the training strategy instructions, the solution performs semantic recognition on the speech information based on these keywords to obtain the training strategy instructions.
[0087] If the training strategy type is determined to be real-time follow training, this solution will execute steps S100 to S130 as described above to realize the real-time correlation between the serve and the user's voice and position, that is, to realize the serve training that is real-time followed by the user.
[0088] As one possible implementation, when the training strategy type is determined to be an intensive adversarial training type, this solution can obtain the target user's second location data and generate a first serve landing point distribution corresponding to the intensive adversarial training type based on the target user's second location data. Specifically, the target user's second location data represents the target user's location data when the target user initiates the intensive adversarial training type voice input. The ball landing point distributions of the multiple match data can be obtained from a large amount of pre-learned match data. Thus, the first serve landing point distribution can be generated based on the target user's second location data and the ball landing point distributions of the multiple match data. For example, this solution can use the target user's second location data as a reference point and find all serve landing points within a preset distance range from the reference point in the ball landing point distributions of the multiple match data, thereby forming the first serve landing point distribution. Based on the above, this scheme can determine the grid region where each serve landing point is located in the first serve landing point distribution according to the first serve landing point distribution. Then, based on the grid region where each serve landing point is located, the corresponding serve parameters for each serve landing point are looked up in a pre-stored parameter lookup table to obtain the second target serve parameters of the ball machine, that is, the serve parameters of each serve in the case of intensive competitive training. The grid region and parameter lookup table are based on the same principles as described above and will not be repeated here.
[0089] As another possible implementation method, when the training strategy type is determined to be the return-to-position running training type, the core logic of this solution is to simulate a real game scenario, and force the trainee to return to the target area after hitting the ball through dynamic serving instructions, and then run to the next hitting point to hit the ball, ultimately forming muscle memory.
[0090] In this case, the solution can set a return zone. If the target user runs back to the return zone after hitting the ball, the ball machine will then serve the next ball based on the second ball landing point distribution. If the target user does not run back to the return zone after hitting the ball, the ball machine will stop serving the next ball. The ball machine will only serve the next ball after the target user returns to the return zone.
[0091] Specifically, to determine whether the target user has run back to the designated return area, this solution can obtain the target user's real-time location data and determine whether the target user has run back to the designated return area based on the real-time location data and the location of the return area. As for the distribution of the second serve landing point, this solution can generate the ball landing point based on the preset running distance and the relative positions of the ball with the forehand and backhand hands when the user is playing. The preset running distance represents the distance of the ball landing point relative to the return area. In addition, the specific running distance can be set by the user according to the training intensity, in addition to using a preset fixed distance. For example, if the return area is the center of the tennis court baseline, and the running distance is 3 meters, then the second serve landing point distribution in this solution can be a circle with a radius of 3 meters centered on the center of the baseline. The ball machine will only serve the next ball after the user returns to the center of the baseline after each shot, thus achieving omnidirectional running return training for the user. Alternatively, if the return area is the center of the tennis court baseline, and the running distance is 3 meters, then the second serve landing point distribution in this solution can be the baseline positions on both sides, 3 meters away from the center of the baseline. The ball machine will only serve the next ball after the user returns to the center of the baseline after each shot, thus achieving lateral running return training for the user.
[0092] The above-described implementation method provides a variety of different serve control modes for different serve training types, allowing users to select the serve type training according to their own needs, thereby further improving the user experience.
[0093] Figure 6 A schematic structural block diagram of a serve control device provided in this application is presented. It should be understood that this device is used in accordance with the aforementioned serve control device and... Figures 1 to 5The method embodiments executed in the above text correspond to the steps involved in the aforementioned method. The specific functions of the device can be found in the description above, and detailed descriptions are omitted here to avoid repetition. The device includes at least one software functional module that can be stored in memory or embedded in the device's operating system (OS) in the form of software or firmware. Specifically, the device includes: an acquisition module 600, a calculation module 610, a determination module 620, and a control module 630. The acquisition module 600 is used to acquire a target data packet; wherein, the target data packet includes the target user's voice command and the target user's location data; the target user's voice command is obtained based on speech semantic analysis of the speech generated by the target user, and the target user's location data represents the location data of the target user at the time the voice command was generated; the target data packet is acquired and identified by a voice positioning recognition component worn by the target user; the calculation module 610 is used to calculate the target user's three-dimensional coordinates in the court based on the target user's location data; the determination module 620 is used to determine the target serving parameters of the ball machine based on the target user's three-dimensional coordinates in the court and the target user's voice command; the control module 630 is used to control the ball machine to serve according to the target serving parameters.
[0094] The above-designed ball-serving control device first collects and recognizes the voice commands and location data of the target user based on the voice positioning and recognition component worn by the target user. Then, it calculates the target user's three-dimensional coordinates on the court based on the target user's location data. Furthermore, based on the target user's three-dimensional coordinates and voice commands, it determines the target serving parameters for the ball machine. Finally, it controls the ball machine to serve according to these target serving parameters. Thus, this ball-serving control method deeply integrates voice commands and precise location information, enabling the ball machine to truly understand the user's "location semantics," achieving a highly dynamic and personalized intelligent serving strategy and improving the user's interactive experience. Simultaneously, the target user's location data in this solution is the location data of the target user at the moment the voice command is generated. Therefore, dynamically adjusting the serving parameters based on real-time location and real-time user voice allows for targeted training of athletes' movement ability, reaction speed, and hitting skills, significantly improving training efficiency and effectiveness.
[0095] According to some embodiments of this application, such as Figure 7As shown, this application provides an electronic device 7, including: a processor 701 and a memory 702. The processor 701 and the memory 702 are interconnected and communicate with each other through a communication bus 703 and / or other forms of connection mechanism (not shown). The memory 702 stores a computer program executable by the processor 701. When the computing device is running, the processor 701 executes the computer program to perform any optional implementation method, such as steps S100 to S130: acquiring a target data packet, the target data packet including the target user's voice command and the target user's location data; calculating the target user's three-dimensional coordinates in the court based on the target user's location data; determining the target serving parameters of the ball machine based on the target user's three-dimensional coordinates in the court and the target user's voice command; and controlling the ball machine to serve according to the target serving parameters.
[0096] This application provides a computer-readable storage medium storing a computer program that, when executed by a processor, performs the method in any of the aforementioned optional implementations.
[0097] The storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as Static Random Access Memory (SRAM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Erasable Programmable Read Only Memory (EPROM), Programmable Red-Only Memory (PROM), Read-Only Memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0098] This application provides a computer program product that, when run on a computer, causes the computer to perform a method in any of the optional implementations.
[0099] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and not to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. These modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application, and they should all be covered within the scope of the claims and specification of this application. In particular, as long as there is no structural conflict, the various technical features mentioned in the embodiments can be combined in any way. This application is not limited to the specific embodiments disclosed herein, but includes all technical solutions falling within the scope of the claims.
Claims
1. A method of controlling a serve, characterized by, The method comprises: acquiring a target data packet; wherein the target data packet comprises a voice instruction of a target user and positioning data of the target user; the voice instruction of the target user is obtained based on voice semantic analysis of a voice generated by the target user, the positioning data of the target user represents position data of the target user at a moment when the voice instruction is generated, and the target data packet is acquired by a voice positioning and recognition component worn by the target user; calculating three-dimensional coordinates of the target user in a court according to the positioning data of the target user; determining a target ball launching parameter of a ball launching machine according to the three-dimensional coordinates of the target user in the court and the voice instruction of the target user; controlling the ball launching machine to launch a ball according to the target ball launching parameter.
2. The method of claim 1, wherein, The determination of the target ball launching parameter of the ball launching machine according to the three-dimensional coordinates of the target user in the court and the voice instruction of the target user comprises: analyzing the voice instruction of the target user to obtain a position instruction issued by the target user; wherein the position instruction represents a relative position instruction of a ball landing point issued by the target user and a body of the target user; determining a target landing point coordinate of the ball launch according to the three-dimensional coordinates of the target user in the court and the position instruction; calculating the target ball launching parameter of the ball launching machine according to the target landing point coordinate.
3. The method of claim 2, wherein, The determination of the target landing point coordinate of the ball launch according to the three-dimensional coordinates of the target user in the court and the position instruction comprises: identifying a relative direction of the ball landing point with respect to the three-dimensional coordinates of the target user in the court according to the position instruction; acquiring a preconfigured landing point distance difference value; wherein the landing point distance difference value is determined according to a relative distance between a ball landing point position and a body position in a user's ball playing situation; determining the target landing point coordinate of the ball launch according to the landing point distance difference value and the relative direction.
4. The method of claim 2, wherein, The calculation of the target ball launching parameter of the ball launching machine according to the target landing point coordinate comprises: determining a target grid area in which the target landing point coordinate is located according to the target landing point coordinate; wherein the court is pre-divided into a plurality of grid areas according to equal areas; finding a ball launching parameter corresponding to the target grid area in a pre-stored parameter lookup table to obtain the target ball launching parameter; wherein the parameter lookup table stores a plurality of ball launching parameters, and each grid area corresponds to a ball launching parameter.
5. The method of claim 1, wherein, Before the acquisition of the target data packet, the method further comprises: acquiring initial voice information issued by the target user; performing voice semantic recognition on the initial voice information to acquire a training strategy instruction carried in the initial voice information; determining a training strategy type selected by the target user according to the training strategy instruction; in a case where it is determined that the training strategy type is real-time following training, performing the step of acquiring the target data packet.
6. The method of claim 5, wherein, The method further comprises: in a case where it is determined that the training strategy type is not real-time following training, determining a second target ball launching parameter of the ball launching machine according to the training strategy type.
7. The method of claim 6, wherein, The second target serving parameter of the serving machine is determined according to the training strategy type, and the method comprises the following steps: In the case that the training strategy type is determined to be the reinforcement confrontation training type, second positioning data of the target user is acquired, and a first serving drop point distribution corresponding to the reinforcement confrontation training type is generated according to the second positioning data of the target user; wherein the first serving drop point distribution is generated based on the second positioning data of the target user and a ball drop point distribution of multiple games; According to the first serving drop point distribution, a grid area where each serving drop point in the first serving drop point distribution is located is determined; wherein the court is pre-divided into multiple grid areas according to equal area. According to the grid area where each serving drop point is located, a serving parameter corresponding to each serving drop point is searched in a pre-stored parameter lookup table to obtain the second target serving parameter of the serving machine; wherein the parameter lookup table stores multiple serving parameters, and each grid area has a corresponding serving parameter.
8. The method of claim 6, wherein, The second target serving parameter of the serving machine is determined according to the training strategy type, and the method comprises the following steps: In the case that the training strategy type is determined to be the reinforcement confrontation training type, second positioning data of the target user is acquired, and a first serving drop point distribution corresponding to the reinforcement confrontation training type is generated according to the second positioning data of the target user; wherein the first serving drop point distribution is generated based on the second positioning data of the target user and a ball drop point distribution of multiple games; According to the first serving drop point distribution, a grid area where each serving drop point in the first serving drop point distribution is located is determined; wherein the court is pre-divided into multiple grid areas according to equal area. According to the grid area where each serving drop point is located, a serving parameter corresponding to each serving drop point is searched in a pre-stored parameter lookup table to obtain the second target serving parameter of the serving machine; wherein the parameter lookup table stores multiple serving parameters, and each grid area has a corresponding serving parameter. The serving control system comprises a voice positioning recognition component and a computing device, and the computing device communicates with the voice positioning recognition component; 9. A tee shot control system characterized by, The voice positioning recognition component is used to collect voice generated by a target user, perform voice semantic recognition on the voice generated by the target user to obtain a voice instruction of the target user, collect positioning data of the target user, generate a target data packet based on the voice instruction and the positioning data, and send the target data packet to the computing device; The computing device is used to acquire the target data packet; According to the positioning data of the target user, three-dimensional coordinates of the target user in the court are calculated, target serving parameters of a serving machine are determined according to the three-dimensional coordinates of the target user in the court and the voice instruction of the target user, and the serving machine is controlled to serve according to the target serving parameters. 10. The tee control system of claim 9, wherein, The voice positioning recognition component comprises a voice positioning recognition tag and a positioning base station; the voice positioning recognition tag is configured to communicate with the positioning base station and the computing device, the voice positioning recognition tag is used to contact a target user, and the positioning base station is arranged on a court.
11. A serving system characterized by, The ball serving system comprises the ball serving control system in any one of claims 9-10 and a ball server, the ball server communicates with the computing device in the ball serving control system; The ball server is used to receive the target ball serving parameter sent by the computing device and serve a ball by using the target ball serving parameter.
12. A computer readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by a processor to implement the method in any one of claims 1-8.