Motion control method, device, mechanism, unit, system, medium and product
By using a distributed motion control method, the servo mechanism autonomously controls the motion of the controlled object, solving the problems of high communication load and insufficient autonomy in traditional centralized control systems, and achieving efficient and intelligent motion control.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANHE ZHIXIN (SHENZHEN) TECHNOLOGY CO LTD
- Filing Date
- 2026-04-24
- Publication Date
- 2026-07-17
Smart Images

Figure CN122411522A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of automation control technology, and in particular to a motion control method, device, mechanism, unit, system, medium and product. Background Technology
[0002] Motion control mainly refers to the real-time control of the position, speed, and torque of mechanical moving parts through servo mechanisms, enabling them to move according to a predetermined plan. Traditional motion control uses a centralized architecture, where a programmable logic controller (PLC) acts as the central computing unit. Within each control cycle (e.g., 1ms or less), it sends precise position commands to all servo mechanisms (i.e., servo drives) via a real-time industrial bus (e.g., EtherCAT). The servo drives only act as command execution units, driving the motors after processing the received position commands through a local closed loop. This centralized architecture has the following drawbacks: High communication load: Each cycle requires the transmission of massive amounts of real-time data, which places extremely stringent requirements on bus bandwidth and real-time performance. Once the network experiences microsecond-level jitter, it may affect the synchronization accuracy of the multi-axis.
[0003] Servo mechanisms lack autonomy: Servo mechanisms only passively execute instructions, cannot optimize their trajectories based on their own mechanical characteristics, and cannot maintain high-performance operation when communication is interrupted or delayed.
[0004] Wasted computing power: The central controller needs to perform complex calculations for each axis, while the local computing power of the servo mechanism is not fully utilized.
[0005] In summary, as the industrial sector increases its demand for flexible manufacturing and edge intelligence, improving the efficiency and intelligence of motion control is an urgent problem to be solved. Summary of the Invention
[0006] This application provides a motion control method, device, mechanism, unit, system, medium, and product to achieve efficient distributed intelligent motion control.
[0007] In a first aspect, embodiments of this application provide a motion control method applied to each servo mechanism in a motion control system, the method comprising: Receive a task contract issued by the control unit, wherein the task contract includes motion target state variables and trajectory constraint information corresponding to the motion task; The target trajectory is determined based on the target state quantity and the trajectory constraint information, and the controlled object is autonomously controlled to move according to the target trajectory. Monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
[0008] Secondly, embodiments of this application provide a motion control method applied to a control unit in a motion control system, the method comprising: A task contract is generated and sent to the corresponding servo mechanism so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory. The task contract includes motion target state variables and trajectory constraint information, which are used to determine the target trajectory. Receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
[0009] Thirdly, embodiments of this application also provide a motion control device, including: The contract receiving module is used to receive the task contract issued by the control unit. The task contract includes the motion target state variables and trajectory constraint information corresponding to the motion task. An autonomous control module is used to determine the target trajectory based on the target state quantity and the trajectory constraint information, and to autonomously control the movement of the controlled object according to the target trajectory; The monitoring and feedback module is used to monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
[0010] Fourthly, embodiments of this application also provide a motion control device, including: The contract issuance module is used to generate a task contract and issue the task contract to the corresponding servo mechanism, so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory. The task contract includes motion target state variables and trajectory constraint information, and the target state variables and trajectory constraint information are used to determine the target trajectory. The feedback module is used to receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
[0011] Fifthly, embodiments of this application provide a servo mechanism, including: a servo controller and a motor; The servo controller includes: One or more processors; Storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the motion control method as described in the first aspect.
[0012] Sixthly, embodiments of this application provide a control unit, including: One or more processors; Storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the motion control method as described in the second aspect.
[0013] In a seventh aspect, embodiments of this application also provide a motion control system, including a control unit as described in the sixth aspect and at least one servo mechanism as described in the fifth aspect, wherein the control unit is connected to each servo mechanism via a bus or wireless communication.
[0014] Eighthly, embodiments of this application also provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the motion control method described above.
[0015] Ninthly, embodiments of this application also provide a computer program product, including a computer program and / or instructions, which, when executed by a processor, implement the motion control method described above.
[0016] This application provides a motion control method, device, mechanism, unit, system, medium, and product. The motion control method includes: receiving a task contract issued by a control unit, the task contract including motion target state variables and trajectory constraint information corresponding to the motion task; determining a target trajectory based on the target state variables and the trajectory constraint information, and autonomously controlling the motion of a controlled object according to the target trajectory; monitoring the motion state of the controlled object and reporting feedback information based on the motion state monitoring data. The above technical solution defines and constrains the motion control process of a servo mechanism based on a task contract. The servo mechanism can autonomously control the motion of the controlled object while adhering to the task contract, thereby delegating some control capabilities of the control unit to the servo mechanism. The control unit does not need to maintain real-time interaction with each servo mechanism, achieving efficient distributed intelligent motion control. Attached Figure Description
[0017] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0018] Figure 1 A schematic diagram illustrating the implementation of a motion control system provided in an embodiment of this application; Figure 2 A flowchart of a motion control method provided in an embodiment of this application; Figure 3 A schematic diagram illustrating the contents of a task contract provided in an embodiment of this application; Figure 4A schematic diagram of a motion control process provided in one embodiment; Figure 5 This is a schematic diagram illustrating the interaction process between a control unit and different intelligent servos, as provided in one embodiment. Figure 6 A schematic diagram of a functional module for an intelligent servo system provided in one embodiment; Figure 7 A flowchart of another motion control method provided in the embodiments of this application; Figure 8 This is a schematic diagram of the structure of a motion control device provided in an embodiment of this application; Figure 9 This is a schematic diagram of the structure of a motion control device provided in an embodiment of this application; Figure 10 This is a schematic diagram of the structure of a servo mechanism provided in an embodiment of this application; Figure 11 This is a schematic diagram of the structure of a control unit provided in an embodiment of this application; Figure 12 This is a schematic diagram of a motion control system provided in an embodiment of this application. Detailed Implementation
[0019] The present application will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the application and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present application, not the entire structure.
[0020] Before discussing the exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe the steps as sequential processes, many of these steps can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the steps can be rearranged. The process can be terminated when its operation is complete, but may also have additional steps not included in the figures. The process can correspond to a method, function, procedure, subroutine, subroutine, etc.
[0021] It should be noted that the concepts of "first" and "second" mentioned in the embodiments of this application are only used to distinguish different devices, modules, units or other objects, and are not used to limit the order of functions performed by these devices, modules, units or other objects or their interdependencies.
[0022] It should also be noted that, unless otherwise specified, "multiple" in the embodiments of this application refers to at least two.
[0023] Furthermore, the embodiments and features described in this application may be combined with each other, unless otherwise specified.
[0024] The acquisition, storage, use, and processing of data in this application all comply with the relevant provisions of national laws and regulations.
[0025] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the relevant content of the solution.
[0026] This application provides a distributed motion control method and a distributed motion control system for collaborative control between a control unit and a servo mechanism based on task contracts. The control unit can be a computer, host computer, server, central processing unit (CPU), motion controller, or programmable logic controller (PLC), etc., and can also be called a task planner or centralized controller. It is mainly responsible for generating motion tasks and issuing task contracts to each servo mechanism, and coordinating global resources based on feedback or requests from the servo mechanisms when necessary, such as adjusting task contracts or taking safety measures. The servo mechanism can also be called an intelligent servo, servo unit, servo drive unit, servo module, servo actuator, etc., and is mainly responsible for autonomous control within permissible limits according to the task contract. Typically, a servo mechanism can include a servo controller (i.e., a servo driver) and a motor. The motor is mainly responsible for providing power output to achieve high-precision movement of the corresponding controlled object (such as a joint). The servo controller has local computing capabilities and is mainly responsible for adjusting the motor's speed, position, and torque according to the task contract to ensure the accuracy and stability of the controlled object's movement. Taking motion control of a robotic arm as an example, the robotic arm can contain one or more joints, each joint corresponding to a servo mechanism. Taking a Computer Numerical Control (CNC) machine tool system as an example, the servo mechanisms can control the machine tool or manufacturing equipment to perform automated processing.
[0027] Figure 1 This is a schematic diagram illustrating the implementation of a motion control system according to an embodiment of this application. Figure 1 As shown, the distributed motion control system includes: The central control layer mainly includes control units, which may be one or more. The field execution layer mainly includes at least one intelligent servo. Each intelligent servo controls one or more controlled objects (such as motor shafts). The intelligent servo can parse the task contract, plan the motion trajectory locally, perform closed-loop control on the controlled object, and can also communicate with the control unit and other intelligent servos through events. A real-time industrial bus is used to connect control units and intelligent servos, supporting time synchronization between connected objects, non-periodic event transmission, and peer-to-peer communication between intelligent servos (such as slave-to-slave communication in EtherCAT). In some embodiments, wireless communication can also be used between control units and intelligent servos and / or between intelligent servos. The mechanical layer mainly includes the controlled objects, such as motor shafts, robotic arm joints, machine tools, and / or manufacturing equipment.
[0028] Figure 2 This is a flowchart illustrating a motion control method provided in an embodiment of this application. This embodiment is applicable to situations where motion control is performed through different servo mechanisms. Specifically, the motion control method can be executed by a motion control device, which can be implemented through software and / or hardware and integrated into any servo mechanism in a distributed control system.
[0029] like Figure 2 As shown, the method specifically includes the following steps: S110. Receive the task contract issued by the control unit, wherein the task contract includes the motion target state quantity and trajectory constraint information corresponding to the motion task.
[0030] For example, the control unit can generate motion tasks based on upper-level process instructions (such as G-code) or user programs, such as controlling the controlled object to complete a certain action or change to a certain position and posture. For this motion task, the actions or sub-tasks that each servo mechanism needs to perform can be determined, and a corresponding task contract can be generated for each servo mechanism. Through the task contract, the motion control process of the corresponding servo mechanism can be specified and constrained, for example, limiting the start and end time of the motion, the motion trajectory, and / or speed.
[0031] It should be noted that the task contract is the core data structure for interaction between the control unit and the servo mechanism. Its content is not a traditional series of position points, but rather a high-level task description that includes motion intentions and constraints. As an example, a task contract frame may contain the following: Task Identifier: A unique ID that identifies this task; Motion target state variables: used to specify motion-related parameter values, such as the position of the controlled object, the velocity / acceleration / jerk of the controlled object, etc. Trajectory constraint information: used to constrain the motion trajectory of the controlled object, which may include the type of trajectory, a specific trajectory or multiple candidate trajectories, and / or the allowable trajectory error range, etc. It may also include other information, such as whether the servo mechanism is allowed to adjust the above parameter values or motion trajectory autonomously, the range of adjustment allowed, how to confirm the completion of the motion task, whether it is necessary to report the target trajectory, whether it is necessary to provide feedback on the motion status and / or the start and end time of the servo mechanism executing the motion task, etc.
[0032] For example, the control unit can broadcast or unicast task contracts to the corresponding servo mechanisms via a real-time bus or wireless communication. The generation of task contracts does not depend on a strict control cycle and can be event-driven. For example, the next motion task can be issued when the previous motion task is about to be completed, or when the controlled object is in a specified state during motion.
[0033] S120. Determine the target trajectory based on the target state quantity and the trajectory constraint information, and autonomously control the movement of the controlled object according to the target trajectory.
[0034] For example, the servo mechanism plans the target trajectory of the controlled object's motion based on the target state variables and trajectory constraint information, including the position, speed, time, and / or path during the motion process. For instance, the task contract specifies that the controlled object needs to move from position A to position B, and the total speed cannot exceed V. MAX The path must be within region M, and the time taken cannot exceed T. total The target trajectory determined by the servo mechanism may be as follows: starting from position A at time t1, moving along path R and velocity v, and moving to position B at time t2, where position A, path R, velocity v, and position B all satisfy the provisions and constraints of the task contract, i.e. v≤V MAX t2-t1≤T total .
[0035] After entering the autonomous control phase, the servo mechanism autonomously controls the movement of the controlled object based on the target trajectory. Autonomous control can be understood as the servo mechanism having certain authority to adjust the motion trajectory or related parameters, or to take emergency measures. For example, if the actual position or path of the controlled object deviates from the target trajectory, it can autonomously change the speed and / or direction of the controlled object; if the state of the controlled object is unsafe, it can control the controlled object to stop urgently. It is understandable that if the task contract specifies the parameters, adjustable range, and / or time period or area that the servo mechanism can autonomously adjust, the servo mechanism must perform autonomous control according to these specifications.
[0036] S130. Monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
[0037] For example, the servo mechanism can monitor the motion state of the controlled object in real time, obtain monitoring data such as the real-time position, real-time speed, real-time acceleration, real-time trajectory, real-time trajectory error between the actual trajectory and the target trajectory, and / or whether there are any abnormalities, and report feedback information to the control unit. The feedback information may include all or part of the monitoring data, and may also include the progress of motion task execution, suggested parameter modifications, renegotiation requests, and / or emergency situation handling requests, etc., so that the control unit can grasp the motion process in real time and intervene in a timely manner to make correct decisions when necessary.
[0038] This application provides a motion control method that aims to overcome the shortcomings of existing centralized motion control systems. By defining a standardized contract interaction mechanism, the periodic command mode of the control unit is transformed into a non-periodic task dispatch mode, thereby significantly reducing the communication load and the requirements for real-time communication. By defining and constraining the motion control process of the servo mechanism based on the task contract, the servo mechanism has the ability to autonomously plan, predict locally, and negotiate anomalies while complying with the task contract. It can autonomously control the motion of the controlled object, thereby decentralizing some of the control capabilities of the control unit to the servo mechanism. This maintains the coordination consistency and determinism among the distributed servo mechanisms, and the servo mechanisms work together to complete the motion task, achieving high-precision, high-robustness, and high-efficiency motion control.
[0039] In one embodiment, the target state variables include at least target position and target velocity; optionally, they also include target acceleration and / or target jerk, etc. The trajectory constraint information includes at least one of the following: The type of motion trajectory, such as trapezoidal, S-shaped, or based on a custom polynomial representation; Speed range, such as maximum speed, minimum speed and / or average speed; Acceleration range, such as maximum acceleration, minimum acceleration, and / or average acceleration; Jet range, such as maximum jerk, minimum jerk and / or average jerk, etc. Permissible trajectory error bands, such as following error tolerance and / or corner error tolerance.
[0040] Based on this, the motion trajectory of each controlled object can be clearly defined and constrained to ensure that the motion task can be completed safely and effectively. In addition, based on the task contract, the control unit can manage and schedule different servo mechanisms in a unified and coordinated manner, thereby improving the reliability of distributed motion control.
[0041] In one embodiment, such as Figure 3 As shown, in addition to the target location and target speed, the mission contract may also include at least one of the following: The confirmation mechanism information for the completion of the motion task may include the triggering conditions for the completion of the motion task, such as the controlled object reaching the specified position within a specified time, or the controlled object reaching the specified speed, or the controlled object remaining stationary for more than a set time. It may also include whether the control unit needs to confirm the completion. If so, the servo mechanism needs to send the task completion information to the control unit after the motion control ends to request the control unit to confirm. Autonomous information may include the range of adjustments allowed for the servo mechanism, such as the maximum allowable speed, the maximum allowable distance between the positions before and after adjustment, and / or allowable adjustment of the speed loop gain / feedforward coefficient within ±5% based on load changes. It may also include whether the servo mechanism is allowed to perform smooth optimization of the target trajectory, such as whether inflection point smoothing is allowed, whether interpolation is allowed, and / or the interpolation algorithm that can be used. Time constraint information, which may include the start time and / or completion deadline for the exercise task, such as the start time not being earlier than T1, not being later than T2, the completion deadline being T3, and / or the duration of the exercise task not exceeding T. total It can also include a timestamp at a specified location (such as the start point, end point, or any specified location), meaning that the time when the controlled object arrives at the specified location should be consistent with this timestamp.
[0042] Based on this, the motion trajectory of each controlled object can be comprehensively defined and constrained, fully ensuring the safety and reliability of the motion task and achieving high-precision, high-robustness and high-efficiency motion control.
[0043] In one embodiment, before determining the target trajectory based on the target state variables and trajectory constraint information, the method further includes: S10. Based on the local mechanical model parameters and the current motion state of the controlled object, perform a feasibility assessment of the task contract, wherein the feasibility assessment includes at least one of the following: Assess whether the peak torque, current, and / or energy consumption required to complete the motion task are within the limits allowed by the hardware. Assess whether the error between the actual trajectory and the target trajectory exceeds the trajectory error band specified in the mission contract; Assess whether the sports task can be completed before the deadline stipulated in the task contract.
[0044] For example, each servo mechanism parses the received task contract and uses locally stored mechanical model parameters (such as load inertia, friction coefficient, and / or resonant frequency, which can be obtained through self-tuning or offline identification) and the current motion state of the controlled object (such as current position, current speed, and / or current temperature) to perform a feasibility pre-assessment of the task contract. During the assessment, it can estimate whether the peak torque, current, and / or energy consumption required to complete the motion task are within the hardware's allowable range, predict whether the trajectory tracking error will exceed the error band specified in the contract, and assess whether it can be completed before the deadline.
[0045] Based on this, through feasibility assessment, each servo mechanism can confirm whether the corresponding motion task can be completed, thereby improving the reliability and safety of motion task execution. If the task cannot be completed, the control unit can adjust the task contract in a timely manner to improve the success rate of execution.
[0046] In one embodiment, before determining the target trajectory based on the target state variable and the trajectory constraint information, the method further includes: S20. If the evaluation result is feasible (i.e. the evaluation is passed), a task commitment response is sent to the control unit. The task commitment response includes at least one of the following commitment information: the expected trajectory (ideally it should be the same as the planned target trajectory, but there may be some error in reality), the expected energy consumption (such as the amount of electricity consumed and / or the amount of consumables required), and the expected task completion time. S30. If the evaluation result is infeasible (i.e. the evaluation fails), a task rejection response is sent to the control unit. The task rejection response may include suggested parameters to be modified, such as reducing the maximum speed and / or widening the error band.
[0047] Understandably, if the motion control receives task commitment responses from all servo mechanisms, it can confirm the global feasibility of the motion task, the contract officially takes effect, each servo mechanism locks its local resources (such as reserved current capacity and / or cached trajectory data), and begins to autonomously execute the task. Optionally, after confirming the global feasibility of the motion task, the control unit can send a contract confirmation message to each servo mechanism to indicate that the contract has officially taken effect.
[0048] Based on this, by sending task responses, the servo mechanism enables the control unit to have a more comprehensive and detailed grasp of the motion task details, improving the reliability of motion control. If a servo mechanism refuses to execute a task, the control unit can also adjust the task contract in a timely and reasonable manner to promote the reliable execution of the motion task.
[0049] In one embodiment, determining the target trajectory based on the target state variables and trajectory constraint information includes: performing interpolation locally based on the target state variables and trajectory constraint information to generate the desired position for each control cycle, wherein the desired positions constitute the target trajectory.
[0050] For example, the servo mechanism can perform interpolation locally based on the target state variables and constraints in the task contract to generate the desired position for each control cycle (e.g., 62.5 μs). For instance, if the task contract specifies that the controlled object needs to move from position A to position B, and may also specify one or more positions between position A and position B, the servo mechanism can plan a path R. Path R starts at position A, ends at position B, and passes through all the positions specified in the task contract. The specific position points included in path R can be obtained using interpolation algorithms (e.g., point-by-point comparison, minimum deviation, or digital pulse multiplication). The interpolation process must ensure that path R meets the requirements of the task contract.
[0051] The interpolation process aims to insert intermediate points between a specified starting point and an ending point to determine the motion trajectory of the controlled object. Essentially, it transforms the curve described by the task contract into a polyline trajectory through data point densification to achieve contour approximation. For example, the interpolation process may include: a coarse interpolation stage, such as inserting several points between the curves of a specified starting point (position A) and an ending point (position B), i.e., using several small straight line segments to approximate the given curve; and a fine interpolation stage, further densifying the data points on each small straight line segment calculated by coarse interpolation, equivalent to pulse incremental interpolation of the straight line.
[0052] Based on this, high-quality target trajectories can be planned while adhering to the task contract, thereby improving the accuracy of motion control.
[0053] In one embodiment, autonomously controlling the motion of the controlled object according to the target trajectory includes: according to the target trajectory, using model predictive control (MPC) or feedforward-based proportional-integral-derivative (PID) control, and utilizing real-time feedback signals from encoders and sensors to achieve closed-loop motion control of the controlled object.
[0054] MPC aims to predict system behavior over a future period based on a dynamic model of the system, and optimize the control input accordingly to make the system output as close as possible to the desired trajectory. For example, a mathematical model is established based on the dynamic characteristics of the controlled object (such as a motor and its load). At each sampling moment, the current state estimate is used to deduce the trajectory for several future steps. Then, a cost function is constructed to measure the degree to which the actual output deviates from the target trajectory and the magnitude of the change in control action. The optimization problem is solved based on the cost function to obtain the control signal to control the motor operation.
[0055] PID control aims to continuously read the position and current feedback of the motor, calculate the error between the current position and the target position, and use the PID algorithm to adjust the output control quantity to drive the motor to rotate, so that the controlled object can accurately reach the specified position.
[0056] All of the above processes can be achieved by combining real-time feedback signals from encoders and sensors, including motor position encoder signals and driver current sensor readings. Based on this, autonomous closed-loop control of the controlled object can be realized, significantly improving the servo system's response speed, stability, and anti-interference capability.
[0057] In one embodiment, reporting feedback information based on motion state monitoring data includes: reporting feedback information when at least one of the following types of events occurs, based on the motion state monitoring data: Type 1 events (which can be understood as task progress events): The motion task progresses to a specific node, such as the controlled object reaching the critical path point, the controlled object's movement speed reaching the specified speed, the controlled object's speed change reaching the threshold, and / or the task being completed. For these events, if there are provisions in the task contract, they can be reported according to the provisions. The second type of event (which can be understood as an abnormal prediction event): It is predicted that the trajectory will exceed the trajectory error band allowed by the task contract in the future (such as within 1 second), such as the tracking error is about to exceed the limit due to a sudden change in load (but it has not actually happened yet). The feedback information includes at least one of the following: event type (such as type 1 or type 2), event timestamp (used to report the time when the event occurred), and event content (also known as auxiliary data, such as the position, speed, speed change, current error value, remaining time from the current time to the occurrence of the predicted abnormal situation, predicted motion trajectory and / or distance beyond the trajectory error zone, etc.).
[0058] For example, during autonomous execution, the servo mechanism can continuously assess its own status and report feedback information when the above-mentioned events occur. The reporting of events can be done in a non-periodic manner.
[0059] Based on this, necessary event interactions can be achieved, enabling the control unit to grasp the motion status in a timely and accurate manner, while reducing the amount of data involved in the interaction and improving the efficiency of the interaction during motion control.
[0060] In one embodiment, the method further includes: S40. If it is predicted that the promised information cannot be fulfilled, a renegotiation request is sent to the control unit. The renegotiation request includes at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the parameters to be modified. S50. If the control unit does not respond within a timeout period, it will handle the situation automatically according to the preset safety strategy (such as speed reduction or shutdown).
[0061] For example, when the servo mechanism predicts that it cannot fulfill the promised information (such as deviating from the expected trajectory, exceeding the expected energy consumption, failing to complete the motion task within the expected time, and / or the occurrence of an abnormal predicted event), it can proactively initiate a contract renegotiation process with the control unit: the servo mechanism sends a renegotiation request to the control unit, which may include the current motion state of the controlled object, the predicted future trajectory, and / or suggested modified parameters, such as adjusting the target position, widening the error band, and / or postponing the task completion deadline.
[0062] Based on this, the control unit can decide whether to accept the renegotiation request and whether to adopt the suggested parameter modifications according to the overall situation. If so, it can reissue the task contract or perform a safe shutdown. If not, the servo mechanism can also handle the situation autonomously to avoid abnormal and dangerous situations, thereby improving the safety and intelligence of task execution.
[0063] Figure 4 This is a schematic diagram illustrating a motion control process according to one embodiment. Figure 4 As shown, the control unit uses a PLC as an example. The motion control process includes: The PLC generates task contracts and sends them to the corresponding intelligent servos. The intelligent servo performs a task feasibility assessment based on the task contract. For example, it estimates whether the peak torque, current and / or energy consumption required to complete the motion task are within the hardware's allowable range, predicts whether the trajectory tracking error will exceed the error band specified in the contract, and / or assesses whether the motion task can be completed before the deadline. If the evaluation is successful, the intelligent servo sends a task commitment response to the PLC. After global confirmation, the PLC sends a contract confirmation message to the intelligent servo, and the contract officially takes effect, entering the autonomous execution phase of the intelligent servo. If the evaluation department approves, or if the PLC confirms that it is not feasible during global verification, the intelligent servo sends a task rejection response and suggested parameters for modification, and requests the PLC to regenerate the task contract. During the autonomous execution phase of the intelligent servo, the intelligent servo performs local fine interpolation to determine the target trajectory, locks local resources, and begins to execute the task autonomously. It can use MPC or feedforward-based PID control for closed-loop control, and continuously monitors the motion status to obtain monitoring data during the execution process, comparing the actual trajectory with the expected trajectory in real time. If the task runs normally, a task completion event is reported when the task is detected to be completed. If the task contract requires the PLC to confirm the task completion, the PLC can return a task completion confirmation message to the intelligent servo. The intelligent servo can then release resources and wait for the next task contract. If an anomaly is predicted, a renegotiation request is sent to the PLC, requesting the PLC to handle the anomaly. The renegotiation request may include monitoring data and / or modification suggestions. If the PLC accepts the modification suggestions, it modifies the task contract, and the intelligent servo continues to execute autonomously. If the PLC does not accept or fails to respond within a timeout period, the intelligent servo can execute a safety policy, report fault information, release resources, and wait for the next task contract.
[0064] In one embodiment, the method further includes one of the following: As the publisher, publish the current motion state of the controlled object locally; As a subscriber, you monitor and follow the local controlled object based on its current motion state.
[0065] For example, in scenarios involving multiple servo mechanisms working together (such as multi-axis synchronization), direct communication between servo mechanisms is supported to achieve distributed collaboration. One servo mechanism (such as a spindle) acts as a publisher, which can publish key states of the local controlled object in real time or triggered by events, such as the actual position and / or following error of the controlled object. Other servo mechanisms (such as slave axes) act as subscribers, which can monitor and follow the controlled object locally based on the content published by the publisher, such as controlling electronic gears and electronic cams, to match the motion state of the publisher. For example, if the controlled object corresponding to the publisher increases its speed during movement, the controlled object corresponding to the subscriber can also increase its speed accordingly.
[0066] In the aforementioned servo mechanism collaborative mode, the control unit can be responsible only for issuing the initial synchronization task contract (such as issuing the electronic gear ratio and / or cam table). Subsequent real-time synchronization can be completed directly by the interaction of each servo mechanism. This process does not require PLC intermediary, making it efficient and intelligent.
[0067] Figure 5 This is a schematic diagram illustrating the interaction process between a control unit and different intelligent servos, as provided in one embodiment. Figure 5As shown, taking a PLC as an example, the control unit uses the intelligent servo of axis 1 as the master axis, which can act as the publisher, and the intelligent servo of axis 2 as the slave axis, which can act as the subscriber. The interaction process includes: The PLC issues task contracts to each intelligent servo; Each intelligent server parses the corresponding task contract and performs a feasibility assessment. If the assessment is successful, it returns a task commitment response. The PLC sends a contract confirmation message to each intelligent servo, and the contract officially takes effect. Each intelligent servo performs autonomous closed-loop control and interacts and synchronizes directly through publish and subscribe. For example, the intelligent servo of axis 1 can broadcast its actual position in an event-triggered manner, and the intelligent servo of axis 2 can perform local follow control accordingly. If any intelligent servo (such as the intelligent servo of axis 2) detects an abnormal event (such as increased friction or prediction error exceeding the limit), it sends a renegotiation request to the PLC, which can carry the current error value and prediction trend. When the PLC receives a renegotiation request, it performs a global evaluation to determine whether to modify the task contract, such as whether to widen the error band, and then updates the task contract. The intelligent servo confirmation of axis 2 can be executed according to the new task contract, return a modification confirmation message to the PLC, and then perform autonomous closed-loop control according to the new task contract. Each intelligent servo can still interact and synchronize directly through publish and subscribe. Once the intelligent servo detects that a task has been completed, it reports a task completion event to the PLC.
[0068] Figure 6 This is a schematic diagram of a functional module for an intelligent servo system, provided as an embodiment. (As shown...) Figure 6 As shown, the intelligent servo can be designed with the following functional modules: Local storage module for storing mechanical models and / or historical data; A state observer can be used to estimate the system state and identify parameters in real time through Kalman filtering in order to monitor motion state; The health diagnosis module can be used for frequency division analysis and motion trajectory prediction, and is responsible for predictive maintenance; The task parsing and planning module can be used to parse contracts and determine target trajectories; The model predictive control module can be used for local high-precision closed-loop control; The communication module can be used to interact with PLCs and other intelligent servos; The above functional module division provides the hardware foundation for the inherent intelligence of intelligent servos.
[0069] The distributed motion control method provided in this application has the following advantages: Significantly reduce communication load: By transforming periodic, massive real-time commands into non-periodic, high-level contracts and events, the amount of communication data can be reduced by more than 80%, thereby allowing high-performance motion control to be achieved on lower-cost networks (even wireless scenarios). Reduced stringent requirements for real-time communication: Because the servo mechanism has local autonomous planning capabilities, brief communication delays or jitters will not immediately affect control accuracy, and the system robustness is significantly enhanced. Improved control accuracy and adaptability: The servo mechanism uses a local mechanical model for predictive compensation, which can better suppress nonlinear disturbances and mechanical resonance, achieving higher dynamic accuracy than traditional centralized control. In addition, the system can automatically adapt to changes in mechanical characteristics (such as wear or load variations). Enhanced system flexibility and scalability: When adding a new axis or replacing the controlled object, only the mechanical model needs to be updated locally, and the control unit program does not need to be modified extensively. In addition, the task contract mechanism supports plug-and-play device integration. Enhance fault self-healing capability: Through contract renegotiation and local prediction, proactive adjustments can be made before anomalies occur, avoiding sudden downtime and enabling predictive maintenance and flexible degraded operation.
[0070] Figure 7 This is a flowchart illustrating a motion control method provided in an embodiment of this application. This embodiment is applicable to situations where motion control is performed using different servo mechanisms. Specifically, the motion control method can be executed by a motion control device, which can be implemented through software and / or hardware and integrated into a control unit. The control unit can be a PLC, a host computer, a computer, or a server, etc.
[0071] like Figure 7 As shown, the method specifically includes the following steps: S210. Generate a task contract and send the task contract to the corresponding servo mechanism so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory; the task contract includes motion target state variables and trajectory constraint information, and the target state variables and the trajectory constraint information are used to determine the target trajectory. S220: Receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
[0072] In this embodiment, the control unit can generate motion tasks based on upper-level process instructions (such as G-code) or user programs. For each motion task, the motion tasks (which can be understood as subtasks) that each servo mechanism needs to execute can be determined, and a corresponding task contract can be generated for each servo mechanism. The task contract can specify and constrain the motion control process of the corresponding servo mechanism. For example, the task contract can be broadcast or unicast to the corresponding servo mechanism through a real-time bus. The generation of the task contract does not depend on a strict control cycle and can be event-driven. The servo mechanism has autonomous control capabilities and can monitor the motion state of the controlled object in real time, reporting feedback information to the control unit. The control unit can monitor the motion process in real time and intervene in a timely manner to make correct decisions when necessary.
[0073] The motion control method provided in this application embodiment allows the control unit to specify and constrain the motion control process of the servo mechanism by issuing task contracts. This enables the servo mechanism to autonomously control the motion of the controlled object based on the task contract, thereby delegating some of the control capabilities of the control unit to the servo mechanism. The control unit does not need to maintain real-time interaction with each servo mechanism, thus realizing efficient distributed intelligent motion control.
[0074] It should be noted that technical details not described in detail in this embodiment can be found in any of the above embodiments.
[0075] In one embodiment, the method further includes: The system receives a task commitment response or a task rejection response reported by the servo mechanism; wherein the task commitment response includes at least one of the following commitment information: the expected trajectory, the expected energy consumption, and the expected task completion time; the task rejection response includes suggested parameters for modification. The task commitment is confirmed based on the task commitment response, or the task contract is modified based on the rejection response.
[0076] After receiving commitment responses from all relevant intelligent servos, the PLC confirms global feasibility and may send contract confirmation messages to the relevant servos (optional, depending on system design).
[0077] At this point, the contract officially takes effect, and the relevant intelligent servo locks local resources (such as reserved current capacity and cached trajectory data) and begins to execute tasks autonomously.
[0078] In one embodiment, the method further includes: The system receives a renegotiation request sent by the servo mechanism, the renegotiation request including at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the parameters to be modified. The task contract can be modified, a new task contract can be issued, or a safe shutdown can be performed based on the renegotiation request.
[0079] Figure 8 This is a schematic diagram of a motion control device provided in an embodiment of this application. The motion control device provided in this embodiment includes: Contract receiving module 310 is used to receive a task contract issued by the control unit, wherein the task contract includes motion target state variables and trajectory constraint information corresponding to the motion task; The autonomous control module 320 is used to determine the target trajectory based on the target state quantity and the trajectory constraint information, and autonomously control the movement of the controlled object according to the target trajectory; The monitoring and feedback module 330 is used to monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
[0080] The device defines and constrains the motion control process of the servo mechanism based on the task contract. The servo mechanism can autonomously control the motion of the controlled object while complying with the task contract, thereby delegating some of the control capabilities of the control unit to the servo mechanism. The control unit does not need to maintain real-time interaction with each servo mechanism, thus realizing efficient distributed intelligent motion control.
[0081] Based on any of the above embodiments, the target state quantity includes at least the target position and the target velocity; The trajectory constraint information includes at least one of the following: the type of motion trajectory, the velocity range, the acceleration range, the jerk range, and the allowable trajectory error band.
[0082] Based on any of the above embodiments, the task contract further includes at least one of the following: The information includes the confirmation mechanism for completing the motion task, autonomy information, and time constraint information; among which... The confirmation mechanism information includes the triggering conditions for the completion of the motion task and / or whether the control unit needs to confirm completion; The autonomy information includes the range of adjustments allowed for the servo mechanism and / or whether the servo mechanism is allowed to perform smoothing optimization of the target trajectory; The time constraint information includes the start time, completion deadline, and / or the timestamp corresponding to the specified location for the motion task.
[0083] Based on any of the above embodiments, the device further includes an evaluation module, configured to perform a feasibility assessment of the task contract based on local mechanical model parameters and the current motion state of the controlled object before determining the target trajectory according to the target state quantity and the trajectory constraint information. The feasibility assessment includes at least one of the following: Assess whether the peak torque, current, and / or energy consumption required to complete the motion task are within the limits allowed by the hardware. Assess whether the error between the actual trajectory and the target trajectory exceeds the trajectory error band specified in the task contract; Assess whether the exercise task can be completed before the deadline specified in the task contract.
[0084] Based on any of the above embodiments, the device further includes a response module, configured to, before determining the target trajectory based on the target state quantity and the trajectory constraint information, send a task commitment response to the control unit if the evaluation result is feasible, the task commitment response including at least one of the following commitment information: the expected trajectory, the expected energy consumption, and the expected task completion time; and if the evaluation result is infeasible, send a task rejection response to the control unit, the task rejection response including suggested parameters for modification.
[0085] Based on any of the above embodiments, determining the target trajectory according to the target state quantity and the trajectory constraint information includes: performing interpolation locally according to the target state quantity and the trajectory constraint information to generate the desired position for each control cycle, and the desired positions constitute the target trajectory.
[0086] Based on any of the above embodiments, autonomously controlling the motion of the controlled object according to the target trajectory includes: according to the target trajectory, using MPC or feedforward-based PID control, and utilizing real-time feedback signals from encoders and sensors to achieve closed-loop motion control of the controlled object.
[0087] Based on any of the above embodiments, reporting feedback information according to motion state monitoring data includes: reporting feedback information when at least one of the following types of events occurs, based on the motion state monitoring data: Type 1 event: The motion task progresses to a specific node; Second type of event: It is predicted that the trajectory will exceed the trajectory error band allowed by the task contract; The feedback information includes at least one of the following: event type, event timestamp, and event content.
[0088] Based on any of the above embodiments, the device further includes: a renegotiation module, used to send a renegotiation request to the control unit when it is predicted that the promised information cannot be fulfilled, the renegotiation request including at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the suggested modified parameters; if the control unit does not respond within a timeout, it will handle the matter autonomously according to a preset safety strategy.
[0089] Based on any of the above embodiments, the device further includes a cooperative control module for one of the following: As the publisher, publish the current motion state of the controlled object locally; As a subscriber, you monitor and follow the local controlled object based on its current motion state.
[0090] The motion control device provided in this application embodiment can be used to execute the motion control method provided in any of the above embodiments, and has corresponding functions and beneficial effects.
[0091] Figure 9 This is a schematic diagram of a motion control device provided in an embodiment of this application. The motion control device provided in this embodiment includes: The contract issuance module 410 is used to generate a task contract and issue the task contract to the corresponding servo mechanism so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory. The task contract includes motion target state variables and trajectory constraint information. The target state variables and the trajectory constraint information are used to determine the target trajectory. Feedback module 420 is used to receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
[0092] The device defines and constrains the motion control process of the servo mechanism based on the task contract. The servo mechanism can autonomously control the motion of the controlled object while complying with the task contract, thereby delegating some of the control capabilities of the control unit to the servo mechanism. The control unit does not need to maintain real-time interaction with each servo mechanism, thus realizing efficient distributed intelligent motion control.
[0093] Based on any of the above embodiments, the device further includes: The response processing module is used to receive a task commitment response or a task rejection response reported by the servo mechanism; wherein the task commitment response includes at least one of the following commitment information: the expected trajectory, the expected energy consumption, and the expected task completion time; the task rejection response includes suggested parameters for modification; the module confirms the motion task based on the task commitment response, or modifies the task contract based on the rejection response.
[0094] In one embodiment, the system further includes: a renegotiation module, configured to receive a renegotiation request sent by the servo mechanism, the renegotiation request including at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the parameters to be modified; and to modify the task contract, issue a new task contract, or perform a safe shutdown according to the renegotiation request.
[0095] The motion control device provided in this application embodiment can be used to execute the motion control method provided in any of the above embodiments, and has corresponding functions and beneficial effects.
[0096] Figure 10A schematic diagram of the structure of a servo mechanism 10 that can be used to implement embodiments of this application is shown. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of this application described and / or claimed herein.
[0097] like Figure 10 As shown, the servo mechanism 10 includes a servo controller 101 and a motor 102. The servo controller 101 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the servo mechanism 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0098] Multiple components in the servo mechanism 10 are connected to the I / O interface 15, including: an input unit 16, an output unit 17, and a storage unit 18. The communication unit 19 allows the servo mechanism 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks, wireless networks, or buses.
[0099] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above.
[0100] In some embodiments, the methods described above can be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or mounted on the servo mechanism 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the methods described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to perform the methods of any of the embodiments described above by any other suitable means (e.g., by means of firmware).
[0101] Figure 11 A schematic diagram of the structure of a control unit 20 that can be used to implement embodiments of this application is shown. The control unit 20 is intended to represent various forms of digital computers, mobile devices, PLCs, or host computers, etc. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of this application described and / or claimed herein.
[0102] like Figure 11 As shown, the control unit 20 includes at least one processor 21 and a memory, such as a read-only memory (ROM) 22 or a random access memory (RAM) 23, communicatively connected to the at least one processor 21. The memory stores computer programs executable by the at least one processor. The processor 21 can perform various appropriate actions and processes based on the computer program stored in the ROM 22 or loaded from storage unit 28 into the RAM 23. The RAM 23 can also store various programs and data required for the operation of the control unit 20. The processor 21, ROM 22, and RAM 23 are interconnected via a bus 24. An input / output (I / O) interface 25 is also connected to the bus 24.
[0103] Multiple components in the control unit 20 are connected to the I / O interface 25, including: an input unit 26, such as a keyboard, mouse, etc.; an output unit 27, such as various types of displays, speakers, etc.; a storage unit 28, such as a disk, optical disk, etc.; and a communication unit 29, such as a network card, modem, wireless transceiver, etc. The communication unit 29 allows the control unit 20 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks and wireless networks.
[0104] Processor 21 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 21 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 21 performs the various methods and processes described above.
[0105] In some embodiments, the methods described above can be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 28. In some embodiments, part or all of the computer program can be loaded and / or mounted on control unit 20 via ROM 22 and / or communication unit 29. When the computer program is loaded into RAM 23 and executed by processor 21, one or more steps of the methods described above can be performed. Alternatively, in other embodiments, processor 21 can be configured to perform the methods of any of the embodiments described above by any other suitable means (e.g., by means of firmware).
[0106] Figure 12 This is a schematic diagram of a motion control system provided in one embodiment. Figure 12 As shown, the motion control system includes a control unit 20 and at least one servo mechanism 10, and the control unit and each servo mechanism 10 are connected via a bus.
[0107] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0108] Computer programs used to implement the methods of this application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0109] In the context of this application, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0110] To provide interaction with the user, the systems and techniques described herein can be implemented on a servo mechanism 10, which includes: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the servo mechanism 10. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0111] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0112] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0113] This application also provides a computer program product, including a computer program and / or instructions, which, when executed by a processor, implement the motion control method as described in any of the above embodiments.
[0114] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this application can be achieved, and this is not limited herein.
[0115] The specific embodiments described above do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A motion control method, characterized in that, The method, applied to each servo mechanism in a motion control system, includes: Receive a task contract issued by the control unit, wherein the task contract includes motion target state variables and trajectory constraint information corresponding to the motion task; The target trajectory is determined based on the target state quantity and the trajectory constraint information, and the controlled object is autonomously controlled to move according to the target trajectory. Monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
2. The method according to claim 1, characterized in that, The target state quantities include at least the target position and the target velocity; The trajectory constraint information includes at least one of the following: the type of motion trajectory, the velocity range, the acceleration range, the jerk range, and the allowable trajectory error band.
3. The method according to claim 1, characterized in that, The task contract also includes at least one of the following: The information includes the confirmation mechanism for completing the motion task, autonomy information, and time constraint information; among which... The confirmation mechanism information includes the triggering conditions for the completion of the motion task and / or whether the control unit needs to confirm completion; The autonomy information includes the range of adjustments allowed for the servo mechanism and / or whether the servo mechanism is allowed to perform smoothing optimization of the target trajectory; The time constraint information includes the start time, completion deadline, and / or the timestamp corresponding to the specified location for the motion task.
4. The method according to claim 2, characterized in that, Before determining the target trajectory based on the target state quantity and the trajectory constraint information, the method further includes: Based on the local mechanical model parameters and the current motion state of the controlled object, a feasibility assessment is performed on the task contract, and the feasibility assessment includes at least one of the following: Assess whether the peak torque, current, and / or energy consumption required to complete the motion task are within the limits allowed by the hardware. Assess whether the error between the actual trajectory and the target trajectory exceeds the trajectory error band specified in the task contract; Assess whether the exercise task can be completed before the deadline specified in the task contract.
5. The method according to claim 4, characterized in that, Before determining the target trajectory based on the target state quantity and the trajectory constraint information, the method further includes: If the evaluation result is feasible, a task commitment response is sent to the control unit. The task commitment response includes at least one of the following commitment information: the expected trajectory, the expected energy consumption, and the expected task completion time. If the evaluation result is infeasible, a task rejection response is sent to the control unit, which includes suggested parameters to be modified.
6. The method according to claim 1, characterized in that, Determining the target trajectory based on the target state variables and the trajectory constraint information includes: Interpolation is performed locally based on the target state quantity and the trajectory constraint information to generate the desired position for each control cycle, and the desired positions constitute the target trajectory.
7. The method according to claim 1, characterized in that, Autonomously controlling the movement of the controlled object according to the target trajectory includes: According to the target trajectory, Model Predictive Control (MPC) or Feedforward-based PID control is used to achieve closed-loop motion control of the controlled object by utilizing real-time feedback signals from encoders and sensors.
8. The method according to claim 1, characterized in that, Based on the monitoring data of the movement status, feedback information is reported, including: Based on motion monitoring data, report feedback information when at least one of the following types of events occurs: Type 1 event: The motion task progresses to a specific node; Second type of event: It is predicted that the trajectory will exceed the trajectory error band allowed by the task contract; The feedback information includes at least one of the following: event type, event timestamp, and event content.
9. The method according to claim 5, characterized in that, Also includes: If it is predicted that the promised information cannot be fulfilled, a renegotiation request is sent to the control unit. The renegotiation request includes at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the parameters to be modified. If the control unit fails to respond within a timeout period, it will handle the situation autonomously according to a preset security policy.
10. The method according to claim 1, characterized in that, It also includes one of the following: As the publisher, publish the current motion state of the controlled object locally; As a subscriber, you monitor and follow the local controlled object based on its current motion state.
11. A motion control method, characterized in that, The method, applied to a control unit in a motion control system, includes: A task contract is generated and sent to the corresponding servo mechanism so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory. The task contract includes motion target state variables and trajectory constraint information, which are used to determine the target trajectory. Receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
12. The method according to claim 11, characterized in that, Also includes: The system receives a task commitment response or a task rejection response reported by the servo mechanism; wherein the task commitment response includes at least one of the following commitment information: the expected trajectory, the expected energy consumption, and the expected task completion time; the task rejection response includes suggested parameters for modification. The task commitment is confirmed based on the task commitment response, or the task contract is modified based on the rejection response.
13. The method according to claim 11, characterized in that... Also includes: The system receives a renegotiation request sent by the servo mechanism, the renegotiation request including at least one of the following: the current motion state of the controlled object, the predicted trajectory, and the parameters to be modified. The task contract can be modified, a new task contract can be issued, or a safe shutdown can be performed based on the renegotiation request.
14. A motion control device, characterized in that, include: The contract receiving module is used to receive the task contract issued by the control unit. The task contract includes the motion target state variables and trajectory constraint information corresponding to the motion task. An autonomous control module is used to determine the target trajectory based on the target state quantity and the trajectory constraint information, and to autonomously control the movement of the controlled object according to the target trajectory; The monitoring and feedback module is used to monitor the motion state of the controlled object and report feedback information based on the monitoring data of the motion state.
15. A motion control device, characterized in that, include: The contract issuance module is used to generate a task contract and issue the task contract to the corresponding servo mechanism, so that the servo mechanism can autonomously control the motion of the controlled object according to the target trajectory. The task contract includes motion target state variables and trajectory constraint information, and the target state variables and trajectory constraint information are used to determine the target trajectory. The feedback module is used to receive feedback information reported by the servo mechanism based on the monitoring data of the motion state of the controlled object.
16. A servo mechanism, characterized in that, include: Servo controller and motor; The servo controller includes: At least one processor; A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the motion control method as described in any one of claims 1-10.
17. A control unit, characterized in that, include: At least one processor; A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the motion control method as described in any one of claims 11-13.
18. A motion control system, characterized in that, It includes a control unit as described in claim 17, and at least one servo mechanism as described in claim 16; the control unit is connected to each of the servo mechanisms via a bus or wireless communication.
19. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the motion control method as described in any one of claims 1-13.
20. A computer program product comprising a computer program and / or instructions, characterized in that, When the computer program and / or instructions are executed by the processor, they implement the motion control method as described in any one of claims 1-13.