Multi-axis linkage stepless motion control system
Patent Information
- Application Number
- CN202611306463.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-26
- Publication Date
- 2026-10-30
AI Technical Summary
[0003]现有方案普遍采用集中式运算架构,由单一控制器对整条路径进行全局速度规划与插补运算,再将生成的脉冲或总线指令逐轴下发,此种集中式方案存在三方面不足:其一,当运动过程中需要根据实时工况调整某个轴的运动速度时,无法实现运动过程中的无级调速;其二,各轴之间缺乏独立的同步校验机制,一旦某一轴因负载波动或通信延迟出现执行滞后,其余轴无法及时感知并自动调整,导致轴间同步精度下降;其三,多轴联动中各轴通过目标路径相互耦合,某一轴滞后会引发其他轴转矩上升的耦合响应,现有单轴独立监控无法区分自身故障与耦合响应,容易误判干预对象,导致轮廓误差扩大;其四,速度调整依赖于预设的加减速曲线,当实际负载条件与预设条件偏差较大时,固定曲线无法适应变化,造成运动冲击或效率损失;
[0055]与现有技术相比,本发明的有益效果是:通过时序同步模块为轴级运动段序列中的每个运动段绑定统一的同步时间标签,使各运动轴在同一时间基准下协调运动;配合同步校验模块在预设的同步校验窗口内对各运动轴的执行完成信号进行汇总比对,能够及时发现并量化轴间同步滞后,解决了传统多轴联动控制中因各轴独立计时导致的累积同步误差问题,显著提升了多轴联动的轨迹跟踪精度和运动同步性;
Smart Images

Figure CN123010375A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of multi-axis motion control technology, specifically a multi-axis linkage stepless motion control system. Background Technology
[0002] In fields such as multi-axis CNC machining, continuous trajectory operation of industrial robots, and automated precision assembly, motion control systems need to simultaneously drive multiple servo axes to coordinate motion along complex paths.
[0003] Existing solutions generally adopt a centralized computing architecture, where a single controller performs global speed planning and interpolation calculations for the entire path, and then sends the generated pulse or bus commands to each axis. This centralized solution has three shortcomings: First, when the speed of a certain axis needs to be adjusted according to real-time operating conditions during the motion process, stepless speed regulation cannot be achieved. Second, there is a lack of independent synchronization verification mechanism between axes. Once an axis lags due to load fluctuations or communication delays, the other axes cannot detect it in time and adjust automatically, resulting in a decrease in the synchronization accuracy between axes. Third, in multi-axis linkage, the axes are coupled to each other through the target path. A lag in one axis will trigger a coupling response of increased torque in other axes. Existing single-axis independent monitoring cannot distinguish between its own faults and coupling responses, which can easily lead to misjudgment of the intervention target and expansion of contour errors. Fourth, speed adjustment depends on preset acceleration and deceleration curves. When the actual load conditions deviate significantly from the preset conditions, the fixed curve cannot adapt to the changes, causing motion shock or efficiency loss.
[0004] The problem we need to solve is how to achieve online stepless speed regulation, inter-axis adaptive synchronization, and accurate identification and coordinated intervention of fault sources in multi-axis motion processes. To this end, we now provide a multi-axis linkage stepless motion control system. Summary of the Invention
[0005] The purpose of this invention is to provide a multi-axis linkage stepless motion control system.
[0006] The objective of this invention can be achieved through the following technical solution: a multi-axis linkage stepless motion control system, comprising the following:
[0007] The instruction parsing module is used to receive task-level motion instructions, parse and decompose them, generate axis-level motion segment sequences for each motion axis, and collect actual operating parameters.
[0008] The timing synchronization module is used to bind a unified synchronization time tag to each motion segment in the axis-level motion segment sequence in order to obtain the motion segment instruction set;
[0009] The segmented execution module is used to drive the motion axis to perform motion according to the motion segment instruction set and generate the corresponding execution completion signal;
[0010] The synchronization verification module is used to verify each motion axis within a preset synchronization verification window based on the execution completion signal of each motion axis and obtain a synchronization verification report.
[0011] The status monitoring module is used to compare the actual operating parameters with the corresponding preset normal range to obtain abnormal operating events and perform inter-axis coupling causal determination.
[0012] The dynamic intervention module is used to generate and execute corresponding dynamic intervention strategies based on the synchronization verification report, abnormal operation events, and inter-axis coupling causal determination results.
[0013] Furthermore, the process of receiving task-level motion commands, parsing and decomposing them, generating axis-level motion segment sequences for each motion axis, and collecting actual operating parameters includes:
[0014] Receive task-level motion commands from the upper-level control system. The task-level motion commands describe the multi-axis motion task to be executed in the form of text commands or structured data, including geometric description information of the target path, overall motion speed requirements, and speed planning curves.
[0015] Geometric description information of the target path is extracted from the task-level motion command. The geometric description information includes the spatial coordinates of a series of ordered path points on the path, and the coordinate components of each ordered path point in each motion axis direction.
[0016] Each motion axis is equipped with a servo drive unit and a position sensor, and the actual operating parameters of each motion axis are collected in real time at a preset sampling period. The actual operating parameters include the actual output torque of the servo motor and the motion speed value.
[0017] Connect adjacent ordered path points, divide the entire target path into several interconnected motion segments, and assign a unique motion segment identifier to each motion segment sequentially along the target path.
[0018] According to the preset speed planning curve, each motion segment is assigned a specific motion segment type, which includes acceleration motion segment, uniform motion segment and deceleration motion segment;
[0019] For each motion segment, the displacement components of the motion segment in each motion axis direction are obtained based on the spatial coordinates of the starting and ending path points of the motion segment. For each motion axis, the displacement components of the motion axis in all motion segments are arranged in the order of the motion segments and combined with the corresponding motion segment type to form the axis-level motion segment sequence of the motion axis.
[0020] Furthermore, the process of binding a unified synchronization time tag to each motion segment in the axis-level motion segment sequence to obtain the motion segment instruction set includes:
[0021] Receive the axis-level motion segment sequence of each motion axis, use the motion segment identifier as the basis for synchronization alignment between each motion axis, ensure that for the same motion segment identifier, the motion segments of each motion axis start and end synchronously in physical synchronization, and read the current reference time according to the high-precision synchronization clock source;
[0022] The total displacement is obtained based on the displacement components of the corresponding motion segment in each motion axis direction, and then the estimated time is obtained based on the total displacement. For each motion segment, the estimated synchronization start time of the motion segment is obtained based on the sorting position of the motion segment in the axis-level motion segment sequence of its respective motion axis and the estimated time of all preceding motion segments.
[0023] The displacement components, preset motion speeds, and expected synchronization start times of each motion axis in each motion segment are encapsulated into time-tagged motion segment instructions. All time-tagged motion segment instructions corresponding to each motion axis are combined into a motion segment instruction set, which is then sent to the corresponding segment execution modules in ascending order according to the time tag order of each motion axis.
[0024] Furthermore, the process of driving the motion axis to perform motion according to the motion segment instruction set and generating the corresponding execution completion signal includes:
[0025] Receive motion segment instruction sets with time tags and store them in the local motion segment buffer queue;
[0026] Retrieve the currently pending motion segment instruction from the head of the motion segment cache queue, read its time tag, and start the execution of the motion segment when the current time is greater than or equal to the time indicated by the corresponding time tag. According to the motion segment type in the motion segment instruction, switch the motion state machine of the corresponding motion axis to the corresponding motion state.
[0027] When the motion segment of any motion axis is completed, a corresponding execution completion signal is generated.
[0028] Furthermore, the process of verifying each motion axis and obtaining a synchronization verification report within a preset synchronization verification window based on the completion signal of each motion axis includes:
[0029] Set a preset synchronization verification window duration. When an execution completion signal is received from any motion axis, the synchronization verification window is started at the moment when the first execution completion signal is received.
[0030] Within the synchronization verification window, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal for each motion axis;
[0031] Upon receiving an execution completion signal from any motion axis, the timing of the synchronization verification window is started, with the moment the signal is received serving as the start time of the synchronization verification window.
[0032] During the synchronization verification window timing, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal of each motion axis;
[0033] When the synchronization verification window timer reaches the preset synchronization verification window duration, the synchronization verification window is closed, and the execution completion signals received in the current window are summarized to form a motion axis identifier set;
[0034] The set of motion axis identifiers that have received the execution completion signal is compared with all motion axes participating in the current multi-axis motion task. If a motion axis has not sent the execution completion signal within the synchronization verification window, it is determined that there is a synchronization lag event on the motion segment.
[0035] For a motion axis that has a synchronization lag event, obtain the corresponding synchronization lag amount for that motion axis;
[0036] The synchronization completion status of each motion axis, the identifier of the motion axis with synchronization lag event, and the corresponding synchronization lag amount are integrated into a synchronization verification report.
[0037] Furthermore, the process of comparing actual operating parameters with corresponding preset normal ranges to obtain abnormal operating events includes:
[0038] For the actual operating parameters, a corresponding normal range is preset, and the actual operating parameters collected in each sampling period are compared with the corresponding upper and lower thresholds:
[0039] When the actual operating parameter is between the lower limit threshold and the upper limit threshold, the parameter is determined to be in a normal state; when the actual operating parameter is lower than the lower limit threshold or higher than the upper limit threshold, the parameter is determined to be in an abnormal state.
[0040] When any actual operating parameter of any motion axis is in an abnormal state for a preset number of consecutive sampling periods, an abnormal operation event is generated. The abnormal operation event includes an abnormal motion axis identifier, an abnormal parameter type, an abnormal parameter current value, and the direction in which the abnormal parameter deviates from the normal range.
[0041] Furthermore, the process of performing inter-axis coupling causality determination includes:
[0042] During the motion segment of each motion axis, the actual position, actual output torque and motion speed of each motion axis are continuously collected to obtain the position error of each motion axis.
[0043] Simultaneously, the torque change of each motion axis within a preset sliding time window is obtained, and based on the position error, torque change, preset position error growth threshold, preset coupling response time window, and preset torque change threshold of each motion axis, suspected lagging axes, coupled response axes, and independent abnormal axes are distinguished.
[0044] Suspected lagging axes are identified as lagging source faults, and independent abnormal axes are identified as independent axis load faults, thus obtaining the causal determination results of inter-axis coupling.
[0045] Furthermore, the process of generating corresponding dynamic intervention strategies based on synchronization verification reports, operational anomaly events, and inter-axis coupling causal determination results includes:
[0046] Classify the received synchronization verification reports and operational anomaly events by event type to determine the event type that requires intervention.
[0047] When the event type is a synchronous lag event and the fault source is a lag source fault, read the actual output torque of the suspected lag shaft and determine whether the suspected lag shaft has a speed-up margin.
[0048] When the suspected lagging axis has a speed-up margin, a speed-up command is generated for the suspected lagging axis, so that it increases its speed in the subsequent motion segment to catch up with the coupled response axis, while keeping the speed of the coupled response axis unchanged, so that the expected completion time of each motion axis tends to be consistent.
[0049] When the suspected lagging axis does not have a speed-up margin, that is, when the actual output torque of the suspected lagging axis is greater than or equal to the preset upper limit of the allowable speed-up torque, a coordinated speed-down command is generated, which simultaneously reduces the speed of the next motion segment of the suspected lagging axis and the coupled response axis, and keeps the speed adjustment ratio of the suspected lagging axis and the coupled response axis consistent with the ratio of the displacement components of the two axes in that motion segment.
[0050] When the event type is an abnormal operation event and the fault source is an independent axis load fault, a speed reduction command is generated for the independent abnormal axis, and its speed in the current motion segment or the next motion segment is adjusted downward according to a preset speed reduction ratio to reduce torque demand, while other motion axes maintain their original speed.
[0051] The generated acceleration command, coordinated deceleration command, or deceleration command is encapsulated into a speed adjustment command, which includes the target's motion axis identifier and the corresponding adjusted motion speed value.
[0052] Furthermore, the process of implementing dynamic intervention strategies includes:
[0053] Speed adjustment commands are sent to the corresponding motion segment buffer queue in real time to update the motion speed values in subsequent motion segments to be executed on the motion axis online.
[0054] After executing the speed adjustment command, the expected completion time deviation of each motion axis is continuously monitored. When the expected completion time deviation is less than the preset synchronization convergence threshold within a preset number of consecutive sampling periods, the intervention is determined to be effective. The motion speed of the decelerated motion axis is gradually increased according to the preset recovery step size until it is restored to the original preset motion speed.
[0055] Compared with the prior art, the beneficial effects of the present invention are as follows: by binding a unified synchronization time tag to each motion segment in the axis-level motion segment sequence through the timing synchronization module, the motion axes can coordinate their movements under the same time reference; in conjunction with the synchronization verification module, the execution completion signals of each motion axis are summarized and compared within the preset synchronization verification window, which can promptly detect and quantify the synchronization lag between axes, solve the problem of accumulated synchronization error caused by independent timing of each axis in traditional multi-axis linkage control, and significantly improve the trajectory tracking accuracy and motion synchronization of multi-axis linkage;
[0056] The status monitoring module compares the actual operating parameters with the preset normal range in real time, which can identify abnormal operating events as soon as an anomaly occurs, and perform inter-axis coupling causality determination to determine the impact path and degree of the abnormal axis on other motion axes. The dynamic intervention module generates and executes corresponding dynamic intervention strategies based on the synchronization verification report, abnormal operating events, and inter-axis coupling causality determination results, realizing the transformation from passive response to active intervention control mode, effectively avoiding systemic failures caused by single-axis lag or anomalies, and improving the operational reliability and continuous operation capability of the multi-axis motion control system under complex working conditions.
[0057] This invention enables high-precision synchronous and coordinated operation of each motion axis in a multi-axis linkage motion control system and active intervention in abnormalities, thereby improving the synchronization accuracy, operational safety, and adaptive capability to respond to abnormalities in multi-axis linkage motion control. Attached Figure Description
[0058] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this invention. For those skilled in the art, other drawings can be obtained based on these drawings.
[0059] Figure 1 This is a schematic diagram of the present invention. Detailed Implementation
[0060] like Figure 1 As shown, a multi-axis linkage stepless motion control system includes an instruction parsing module, a timing synchronization module, a segmented execution module, a synchronization verification module, a status monitoring module, and a dynamic intervention module.
[0061] The instruction parsing module is used to receive task-level motion instructions, parse and decompose them, generate axis-level motion segment sequences for each motion axis, and collect actual operating parameters.
[0062] The timing synchronization module is used to bind a unified synchronization time tag to each motion segment in the axis-level motion segment sequence to obtain the motion segment instruction set;
[0063] The segmented execution module is used to drive the motion axis to perform motion according to the motion segment instruction set and generate the corresponding execution completion signal;
[0064] The synchronization verification module is used to verify each motion axis within a preset synchronization verification window based on the execution completion signal of each motion axis and obtain a synchronization verification report.
[0065] The status monitoring module is used to compare the actual operating parameters with the corresponding preset normal range to obtain abnormal operating events and perform inter-axis coupling causal determination.
[0066] The dynamic intervention module is used to generate and execute corresponding dynamic intervention strategies based on the synchronization verification report, abnormal operation events, and inter-axis coupling causal determination results.
[0067] It should be further explained that, in the specific implementation process, the process of receiving task-level motion commands, parsing and decomposing them, generating axis-level motion segment sequences for each motion axis, and collecting actual operating parameters includes:
[0068] Receive task-level motion commands from the upper-level control system. The task-level motion commands describe the multi-axis motion task to be executed in the form of text commands or structured data, including geometric description information of the target path, overall motion speed requirements, and speed planning curves.
[0069] Geometric description information of the target path is extracted from the task-level motion command. This geometric description information includes the spatial coordinates of a series of ordered path points on the path, denoted as... Each ordered path point It includes coordinate components along each motion axis, where, ;
[0070] The motion axis refers to the basic execution unit that moves independently along the X-axis, Y-axis, or Z-axis in the motion control system. When multiple motion axes move synchronously, they jointly synthesize the target path.
[0071] Each motion axis is equipped with a servo drive unit and a position sensor, and the actual operating parameters of each motion axis are collected in real time at a preset sampling period. The actual operating parameters include the actual output torque of the servo motor and the motion speed value.
[0072] Connect adjacent ordered path points to divide the entire target path into several motion segments that are connected end to end. The motion segment refers to a section of curved trajectory between two adjacent ordered path points on the target path.
[0073] Each movement segment is assigned a unique movement segment identifier sequentially along the target path. The movement segment identifier is used to uniquely identify the sequential position of each movement segment in the entire target path.
[0074] According to the preset speed planning curve, each motion segment is assigned a specific motion segment type, which includes acceleration motion segment, uniform motion segment and deceleration motion segment;
[0075] For each motion segment, based on the spatial coordinates of the starting and ending path points of that segment, the displacement components of that segment along each motion axis are obtained, denoted as... ,Right now:
[0076] ;
[0077] in, and They represent the first The termination path point and the starting path point of each motion segment are in the th... Coordinate values on each motion axis , , This represents the total number of motion axes;
[0078] The displacement component refers to the change in spatial coordinates of a single motion segment along a certain motion axis; the starting path point refers to the spatial coordinates of the current motion segment at the beginning of the path; and the ending path point refers to the spatial coordinates of the current motion segment at the end of the path.
[0079] For each motion axis, the displacement components of the motion axis in all motion segments are arranged in the order of the motion segments, and combined with the corresponding motion segment type to form the axis-level motion segment sequence of the motion axis;
[0080] Each entry in the axis-level motion segment sequence includes a motion segment identifier, a motion segment type, the displacement component of the corresponding motion axis in the motion segment, and the preset motion speed of the motion axis in the motion segment.
[0081] The preset motion speed refers to the speed value of the motion axis corresponding to the motion segment on the speed planning curve.
[0082] It should be further explained that, in the specific implementation process, the process of binding a unified synchronization time tag to each motion segment in the axis-level motion segment sequence to obtain the motion segment instruction set includes:
[0083] Receive the axis-level motion segment sequence of each motion axis, and use the motion segment identifier as the basis for synchronization alignment between each motion axis to ensure that for the same motion segment identifier, the motion segments of each motion axis start and end synchronously in physical synchronization.
[0084] The current reference time is read from a high-precision synchronous clock source, which is a distributed clock signal obtained by a hardware clock module deployed inside the motion control system.
[0085] The total displacement is obtained by calculating the displacement components of the corresponding motion segment along each motion axis, denoted as . ,Right now:
[0086] ;
[0087] in, Indicates the first The first movement segment in the... Displacement components in each motion axis direction;
[0088] The estimated time is then obtained based on the total displacement, denoted as ,Right now:
[0089] ;
[0090] in, For the first The total displacement of each motion segment For the first The initial velocity of each motion segment For the first The final speed of each motion segment, wherein the starting speed and the final speed are extracted from the speed planning curve;
[0091] For each motion segment, the estimated synchronization start time of that motion segment is obtained based on its position in the sequence of axis-level motion segments of its corresponding motion axis and the estimated time of all preceding motion segments, and is denoted as . ,Right now:
[0092] ;
[0093] in, This indicates the starting timing reference time for the entire target path. Indicates from the 0th motion segment to the 1st motion segment. The cumulative estimated time of all preceding motion segments of each motion segment. From the 0th motion segment to the 1st motion segment The summation index variable for traversing between each motion segment;
[0094] The displacement components of each motion axis in each motion segment, the preset motion speed, and the expected synchronization start time are encapsulated into motion segment instructions with time tags.
[0095] All time-tagged motion segment instructions corresponding to each motion axis are combined into a motion segment instruction set, and then sent to the corresponding segment execution module in ascending order according to the time tag order of each motion axis.
[0096] It should be further explained that, in the specific implementation process, the process of driving the motion axis to perform motion according to the motion segment instruction set and generating the corresponding execution completion signal includes:
[0097] Receive a set of motion segment instructions with time tags and store them in a local motion segment cache queue. The motion segment cache queue is a pre-created instruction buffer that arranges the motion segment instructions in ascending order of time tags.
[0098] Retrieve the currently pending motion segment instruction from the head of the motion segment cache queue, read its timestamp, and start the execution of the motion segment when the current time is greater than or equal to the time indicated by the corresponding timestamp.
[0099] According to the motion segment type in the motion segment instruction, the motion state machine of the corresponding motion axis is switched to the corresponding motion state. The motion state machine is used to manage the motion state of a single motion axis during the execution of each motion segment. The motion states include acceleration state, constant speed state, deceleration state and stop state.
[0100] When the motion segment type is an acceleration motion segment, the drive motion axis gradually increases the motion speed value with a preset acceleration value until the motion speed value specified for the motion segment is reached. During this period, the motion state machine maintains the acceleration state. When the deviation between the actual speed and the specified speed enters the preset speed tolerance range, the acceleration motion segment is completed.
[0101] When the motion segment type is a uniform motion segment, the drive motion axis maintains the specified motion speed value of the motion segment unchanged, and at the same time continuously collects the actual position of the motion axis at a fixed sampling period. When the deviation between the actual position and the end position of the motion segment is less than the preset position tolerance, the uniform motion segment is completed.
[0102] When the motion segment type is a deceleration motion segment, the drive motion axis starts from the current speed and gradually reduces the motion speed value by a preset deceleration value until the motion speed value drops below the preset stop speed threshold. During this period, the motion state machine maintains the deceleration state. When the actual speed drops below the stop speed threshold, the deceleration motion segment is completed.
[0103] When the motion segment is completed, the motion state machine returns to the stopped state;
[0104] When the motion segment of any motion axis is completed, a corresponding execution completion signal is generated, which includes the motion axis identifier and the completion time.
[0105] It should be further explained that, in the specific implementation process, the process of verifying each motion axis and obtaining a synchronization verification report within a preset synchronization verification window based on the completion signal of each motion axis includes:
[0106] Set a preset synchronization verification window duration, which is a preset time length constant, to limit the maximum tolerance time for waiting for the remaining execution completion signals after receiving the first execution completion signal;
[0107] Upon receiving an execution completion signal from any motion axis, the synchronization verification window is initiated at the moment the first execution completion signal is received. The synchronization verification window is an actual time period, and its time span is the duration of the synchronization verification window.
[0108] Within the synchronization verification window, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal for each motion axis;
[0109] Upon receiving an execution completion signal from any motion axis, the timing of the synchronization verification window is started, with the moment the signal is received serving as the start time of the synchronization verification window.
[0110] During the synchronization verification window timing, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal of each motion axis;
[0111] When the synchronization verification window timer reaches the preset synchronization verification window duration, the synchronization verification window is closed, and the execution completion signals received in the current window are summarized to form a motion axis identifier set;
[0112] The set of motion axis identifiers that have received the execution completion signal is compared with all motion axes participating in the current multi-axis motion task. If a motion axis has not sent the execution completion signal within the synchronization verification window, it is determined that there is a synchronization lag event on the motion segment.
[0113] For a motion axis with a synchronization lag event, the synchronization lag amount corresponding to the motion axis is obtained. The synchronization lag amount is the difference between the closing time of the synchronization verification window and the actual time when the motion axis sends the execution completion signal. If the motion axis does not send any signal within the window, the synchronization lag amount is the duration of the synchronization verification window. The synchronization lag amount is used to quantify the lag degree of the corresponding motion axis.
[0114] The synchronization completion status of each motion axis, the identifier of the motion axis with synchronization lag event and its corresponding synchronization lag amount are integrated into a synchronization verification report;
[0115] The synchronization completion status is used to indicate whether the corresponding motion axis has sent an execution completion signal within the synchronization verification window.
[0116] It should be further explained that, in the specific implementation process, the process of comparing the actual operating parameters with the corresponding preset normal range to obtain abnormal operating events includes:
[0117] For the actual operating parameters, a corresponding normal range is preset, which includes an upper limit threshold and a lower limit threshold;
[0118] The actual operating parameters collected in each sampling period are compared with the corresponding upper and lower thresholds:
[0119] When the actual operating parameter is between the lower limit threshold and the upper limit threshold, the parameter is determined to be in a normal state; when the actual operating parameter is lower than the lower limit threshold or higher than the upper limit threshold, the parameter is determined to be in an abnormal state.
[0120] When any actual operating parameter of any motion axis is in an abnormal state for a preset number of consecutive sampling periods, an abnormal operation event is generated. The abnormal operation event includes an abnormal motion axis identifier, an abnormal parameter type, an abnormal parameter current value, and the direction in which the abnormal parameter deviates from the normal range.
[0121] The abnormal parameter type refers to the actual operating parameters that trigger the abnormal operation event, including the actual output torque and speed value. The current value of the abnormal parameter refers to the current value of the actual operating parameter at the moment when the abnormal operation event is triggered.
[0122] It should be further explained that, in the specific implementation process, the process of performing inter-axis coupling causality determination includes:
[0123] During the motion segment of each motion axis, the actual position, actual output torque, and motion speed of each motion axis are continuously collected to obtain the position error of each motion axis, denoted as . ,Right now:
[0124] ;
[0125] in, For the k-th motion axis in The position of the instruction at any given time. For the k-th motion axis in The actual location at that moment;
[0126] Simultaneously, the torque change of each motion axis within the preset sliding time window is calculated and denoted as... ,Right now:
[0127] ;
[0128] in, The actual output torque of the k-th motion axis at time t. For the k-th motion axis in The actual output torque at time t, where T is the duration of the sliding time window;
[0129] When the position error of a certain motion axis increases continuously and the rate of increase exceeds the preset position error growth threshold, the motion axis is marked as a suspected lagging axis.
[0130] For motion axes other than the suspected lagging axis, when the time difference between the moment when the torque change of the other motion axis exceeds the preset torque change threshold and the moment when the position error of the suspected lagging axis begins to increase falls within the preset coupling response time window, it is determined that the torque increase of the other motion axis is a coupling response to the suspected lagging axis, and the other motion axis is marked as a coupling response axis.
[0131] The coupling response time window refers to a preset time difference range used to determine the causal relationship between the torque changes of other moving axes and the increase in the position error of the suspected lagging axis;
[0132] When the torque change of a certain motion axis exceeds the preset torque change threshold but there are no suspected lagging axes, or the time difference between the torque rise time and the position error increase time of other motion axes is not within the coupling response time window, it is determined that the motion axis has its own load abnormality and the motion axis is marked as an independent abnormal axis.
[0133] Suspected lagging axes are identified as lagging source faults, and independent abnormal axes are identified as independent axis load faults, thus obtaining the results of the causal determination of inter-axis coupling.
[0134] The hysteresis source fault refers to a situation where a certain motion axis lags due to insufficient execution capability, which in turn triggers a coupled response of other motion axes. The independent axis load fault refers to a situation where a certain motion axis experiences abnormal torque due to a sudden change in its own load, and there is no other hysteresis cause in other motion axes.
[0135] It should be further explained that, in the specific implementation process, the process of generating corresponding dynamic intervention strategies based on synchronization verification reports, abnormal operation events, and inter-axis coupling causal determination results includes:
[0136] The received synchronization verification reports and operational anomaly events are classified by event type to determine the event type that requires intervention. The event types include synchronization lag events and operational anomaly events.
[0137] When the event type is a synchronous lag event and the fault source is a lag source fault, read the actual output torque of the suspected lag shaft and determine whether the suspected lag shaft has a speed-up margin. The determination condition for the speed-up margin is that the actual output torque of the suspected lag shaft is less than the preset upper limit of the allowable speed-up torque.
[0138] When the suspected lagging axis has a speed-up margin, a speed-up command is generated for the suspected lagging axis, so that it increases its speed in the subsequent motion segment to catch up with the coupled response axis, while keeping the speed of the coupled response axis unchanged, so that the expected completion time of each motion axis tends to be consistent.
[0139] When the suspected lagging axis does not have a speed-up margin, that is, when the actual output torque of the suspected lagging axis is greater than or equal to the preset upper limit of the allowable speed-up torque, a coordinated speed-down command is generated, which simultaneously reduces the speed of the next motion segment of the suspected lagging axis and the coupled response axis, and keeps the speed adjustment ratio of the suspected lagging axis and the coupled response axis consistent with the ratio of the displacement components of the two axes in that motion segment.
[0140] When the event type is an abnormal operation event and the fault source is an independent axis load fault, a speed reduction command is generated for the independent abnormal axis, and its speed in the current motion segment or the next motion segment is adjusted downward according to a preset speed reduction ratio to reduce torque demand, while other motion axes maintain their original speed.
[0141] The generated acceleration command, coordinated deceleration command, or deceleration command is encapsulated into a speed adjustment command, which includes the target's motion axis identifier and the corresponding adjusted motion speed value.
[0142] It should be further explained that, in practice, the process of implementing dynamic intervention strategies includes:
[0143] Speed adjustment commands are sent to the corresponding motion segment buffer queue in real time to update the motion speed values in subsequent motion segments to be executed on the motion axis online.
[0144] After executing the speed adjustment command, the expected completion time deviation of each motion axis is continuously monitored. The expected completion time deviation is the maximum deviation of the expected completion time of each motion axis. When the expected completion time deviation is less than the preset synchronization convergence threshold within a preset number of consecutive sampling periods, the intervention is determined to be effective. The motion speed of the decelerated motion axis is gradually increased according to the preset recovery step size until it is restored to the original preset motion speed. The preset recovery step size is less than the deceleration ratio to avoid new shocks and oscillations during the speed recovery process.
[0145] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention in any way. Although the present invention has been disclosed above with reference to preferred embodiments, it is not intended to limit the present invention. Any person skilled in the art can make some modifications or alterations to the above-disclosed technical content to create equivalent embodiments without departing from the scope of the present invention. Any modifications or equivalent substitutions made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the scope of the present invention.
Claims
1. A multi-axis linkage stepless motion control system, characterized in that, include: The instruction parsing module is used to receive task-level motion instructions, parse and decompose them, generate axis-level motion segment sequences for each motion axis, and collect actual operating parameters. The timing synchronization module is used to bind a unified synchronization time tag to each motion segment in the axis-level motion segment sequence in order to obtain the motion segment instruction set; The segmented execution module is used to drive the motion axis to perform motion according to the motion segment instruction set and generate the corresponding execution completion signal; The synchronization verification module is used to verify each motion axis within a preset synchronization verification window based on the execution completion signal of each motion axis and obtain a synchronization verification report. The status monitoring module is used to compare the actual operating parameters with the corresponding preset normal range to obtain abnormal operating events and perform inter-axis coupling causal determination. The dynamic intervention module is used to generate and execute corresponding dynamic intervention strategies based on the synchronization verification report, abnormal operation events, and inter-axis coupling causal determination results.
2. The multi-axis linkage stepless motion control system according to claim 1, characterized in that, The process of receiving task-level motion commands, parsing and decomposing them, generating axis-level motion segment sequences for each motion axis, and collecting actual operating parameters includes: Receive task-level motion commands from the upper-level control system. The task-level motion commands describe the multi-axis motion task to be executed in the form of text commands or structured data, including geometric description information of the target path, overall motion speed requirements, and speed planning curves. Geometric description information of the target path is extracted from the task-level motion command. The geometric description information includes the spatial coordinates of a series of ordered path points on the path, and the coordinate components of each ordered path point in each motion axis direction. Each motion axis is equipped with a servo drive unit and a position sensor, and the actual operating parameters of each motion axis are collected in real time at a preset sampling period. The actual operating parameters include the actual output torque of the servo motor and the motion speed value. Connect adjacent ordered path points, divide the entire target path into several interconnected motion segments, and assign a unique motion segment identifier to each motion segment sequentially along the target path. According to the preset speed planning curve, each motion segment is assigned a specific motion segment type, which includes acceleration motion segment, uniform motion segment and deceleration motion segment; For each motion segment, the displacement components of the motion segment in each motion axis direction are obtained based on the spatial coordinates of the starting and ending path points of the motion segment. For each motion axis, the displacement components of the motion axis in all motion segments are arranged in the order of the motion segments and combined with the corresponding motion segment type to form the axis-level motion segment sequence of the motion axis.
3. The multi-axis linkage stepless motion control system according to claim 2, characterized in that, The process of binding a unified synchronization time tag to each motion segment in the axis-level motion segment sequence to obtain the motion segment instruction set includes: Receive the axis-level motion segment sequence of each motion axis, use the motion segment identifier as the basis for synchronization alignment between each motion axis, ensure that for the same motion segment identifier, the motion segments of each motion axis start and end synchronously in physical synchronization, and read the current reference time according to the high-precision synchronization clock source; The total displacement is obtained based on the displacement components of the corresponding motion segment in each motion axis direction, and then the estimated time is obtained based on the total displacement. For each motion segment, the estimated synchronization start time of the motion segment is obtained based on the sorting position of the motion segment in the axis-level motion segment sequence of its respective motion axis and the estimated time of all preceding motion segments. The displacement components, preset motion speeds, and expected synchronization start times of each motion axis in each motion segment are encapsulated into time-tagged motion segment instructions. All time-tagged motion segment instructions corresponding to each motion axis are combined into a motion segment instruction set, which is then sent to the corresponding segment execution modules in ascending order according to the time tag order of each motion axis.
4. The multi-axis linkage stepless motion control system according to claim 3, characterized in that, The process of driving the motion axis to perform motion according to the motion segment instruction set and generating the corresponding execution completion signal includes: Receive motion segment instruction sets with time tags and store them in the local motion segment buffer queue; Retrieve the currently pending motion segment instruction from the head of the motion segment cache queue, read its time tag, and start the execution of the motion segment when the current time is greater than or equal to the time indicated by the corresponding time tag. According to the motion segment type in the motion segment instruction, switch the motion state machine of the corresponding motion axis to the corresponding motion state. When the motion segment of any motion axis is completed, a corresponding execution completion signal is generated.
5. A multi-axis linkage stepless motion control system according to claim 4, characterized in that, The process of verifying each motion axis and obtaining a synchronization verification report within a preset synchronization verification window, based on the completion signal of each motion axis, includes: Set a preset synchronization verification window duration. When an execution completion signal is received from any motion axis, the synchronization verification window is started at the moment when the first execution completion signal is received. Within the synchronization verification window, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal for each motion axis; Upon receiving an execution completion signal from any motion axis, the timing of the synchronization verification window is started, with the moment the signal is received serving as the start time of the synchronization verification window. During the synchronization verification window timing, wait to receive execution completion signals from other motion axes that have the same motion segment identifier, and record the arrival time of the execution completion signal of each motion axis; When the synchronization verification window timer reaches the preset synchronization verification window duration, the synchronization verification window is closed, and the execution completion signals received in the current window are summarized to form a motion axis identifier set; The set of motion axis identifiers that have received the execution completion signal is compared with all motion axes participating in the current multi-axis motion task. If a motion axis has not sent the execution completion signal within the synchronization verification window, it is determined that there is a synchronization lag event on the motion segment. For a motion axis that has a synchronization lag event, obtain the corresponding synchronization lag amount for that motion axis; The synchronization completion status of each motion axis, the identifier of the motion axis with synchronization lag event, and the corresponding synchronization lag amount are integrated into a synchronization verification report.
6. The multi-axis linkage stepless motion control system according to claim 5, characterized in that, The process of comparing actual operating parameters with corresponding preset normal ranges to obtain abnormal operating events includes: For the actual operating parameters, a corresponding normal range is preset, and the actual operating parameters collected in each sampling period are compared with the corresponding upper and lower thresholds: When the actual operating parameter is between the lower limit threshold and the upper limit threshold, the parameter is determined to be in a normal state; when the actual operating parameter is lower than the lower limit threshold or higher than the upper limit threshold, the parameter is determined to be in an abnormal state. When any actual operating parameter of any motion axis is in an abnormal state for a preset number of consecutive sampling periods, an abnormal operation event is generated. The abnormal operation event includes an abnormal motion axis identifier, an abnormal parameter type, an abnormal parameter current value, and the direction in which the abnormal parameter deviates from the normal range.
7. A multi-axis linkage stepless motion control system according to claim 6, characterized in that, The process of performing inter-axis coupling causality determination includes: During the motion segment of each motion axis, the actual position, actual output torque and motion speed of each motion axis are continuously collected to obtain the position error of each motion axis. Simultaneously, the torque change of each motion axis within a preset sliding time window is obtained, and based on the position error, torque change, preset position error growth threshold, preset coupling response time window, and preset torque change threshold of each motion axis, suspected lagging axes, coupled response axes, and independent abnormal axes are distinguished. Suspected lagging axes are identified as lagging source faults, and independent abnormal axes are identified as independent axis load faults, thus obtaining the causal determination results of inter-axis coupling.
8. A multi-axis linkage stepless motion control system according to claim 7, characterized in that, The process of generating a corresponding dynamic intervention strategy based on the synchronization verification report, abnormal operation events, and inter-axis coupling causal determination results includes: Classify the received synchronization verification reports and operational anomaly events by event type to determine the event type that requires intervention. When the event type is a synchronous lag event and the fault source is a lag source fault, read the actual output torque of the suspected lag shaft and determine whether the suspected lag shaft has a speed-up margin. When the suspected lagging axis has a speed-up margin, a speed-up command is generated for the suspected lagging axis, so that it increases its speed in the subsequent motion segment to catch up with the coupled response axis, while keeping the speed of the coupled response axis unchanged, so that the expected completion time of each motion axis tends to be consistent. When the suspected lagging axis does not have a speed-up margin, that is, when the actual output torque of the suspected lagging axis is greater than or equal to the preset upper limit of the allowable speed-up torque, a coordinated speed-down command is generated, which simultaneously reduces the speed of the next motion segment of the suspected lagging axis and the coupled response axis, and keeps the speed adjustment ratio of the suspected lagging axis and the coupled response axis consistent with the ratio of the displacement components of the two axes in that motion segment. When the event type is an abnormal operation event and the fault source is an independent axis load fault, a speed reduction command is generated for the independent abnormal axis, and its speed in the current motion segment or the next motion segment is adjusted downward according to a preset speed reduction ratio to reduce torque demand, while other motion axes maintain their original speed. The generated acceleration command, coordinated deceleration command, or deceleration command is encapsulated into a speed adjustment command, which includes the target's motion axis identifier and the corresponding adjusted motion speed value.
9. A multi-axis linkage stepless motion control system according to claim 8, characterized in that, The process of implementing dynamic intervention strategies includes: Speed adjustment commands are sent to the corresponding motion segment buffer queue in real time to update the motion speed values in subsequent motion segments to be executed on the motion axis online. After executing the speed adjustment command, the expected completion time deviation of each motion axis is continuously monitored. When the expected completion time deviation is less than the preset synchronization convergence threshold within a preset number of consecutive sampling periods, the intervention is determined to be effective. The motion speed of the decelerated motion axis is gradually increased according to the preset recovery step size until it is restored to the original preset motion speed.
