A rudder command smoothing and speed limiting method based on differential step length
By decomposing large-angle commands into micro-step movements using a pure software control method, the problems of instantaneous current surges, mechanical vibrations and overshoot, and back electromotive force hazards of traditional electric servos are solved, achieving servo control with high dynamic response and high reliability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 贵州航天控制技术有限公司
- Filing Date
- 2026-01-30
- Publication Date
- 2026-05-29
AI Technical Summary
Traditional electric servos suffer from problems such as instantaneous current surges, mechanical vibrations and overshoot, and back electromotive force hazards when responding to large-angle commands, which affect control accuracy and stability.
A smooth speed limiting method for servo commands based on differential step size is adopted. This method decomposes large-angle commands into micro-step movements of fixed step size and uses pure software to process control signals, including communication processing, control command processing, signal acquisition, and closed-loop control, to achieve smooth speed limiting of the servo.
It effectively solves the problems of instantaneous current surge, mechanical vibration and overshoot, and back EMF, improves the high dynamic response and high reliability of the servo motor, and reduces hardware costs.
Smart Images

Figure CN122111112A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the technical field of servo command processing, specifically relating to a smooth speed limiting method for servo commands based on differential step size. Background Technology
[0002] As a core actuator in systems such as aircraft and robots, the control performance of electric servo motors directly affects the dynamic response accuracy and stability of the system. In high-dynamic control scenarios for electric servo motors, traditional control methods suffer from the following key problems when responding to large-angle commands: 1. Risk of instantaneous current surge and drive circuit hardware burnout: Large angle commands require the motor to output large torque instantaneously, which can cause overcurrent in the drive circuit (peak current can reach 3-5 times the rated value) and pull down the power supply voltage; 2. Mechanical vibration and position overshoot: Under high-speed motion, the load inertia and gear clearance cause structural resonance, which increases the number of feedback oscillations and the overshoot, affecting control accuracy; 3. Hazards of back electromotive force: When the motor rotates at high speed, it generates reverse voltage, which increases the risk of drive chip breakdown and causes the servo motor to generate additional heat. Summary of the Invention
[0003] The purpose of this invention is to provide a smooth speed limiting method for servo commands based on differential step size, in order to solve the three major technical problems in traditional electric servo control: instantaneous current surge, mechanical vibration and overshoot, and back electromotive force hazards.
[0004] To achieve the above objectives, the present invention adopts the following technical solution: A method for smoothing speed limiting of servo motor commands based on differential step size includes: receiving command frames sent by a host computer according to a communication protocol and parsing the command frames to determine servo control commands; using the servo control commands to determine closed-loop commands; acquiring potentiometer data and processing it to obtain servo motor feedback data, wherein the potentiometer is used to acquire the displacement of the output shaft of the servo motor driven by the driver; and processing the closed-loop commands and servo motor feedback data according to the servo motor mathematical model to obtain control signals for driver control.
[0005] A servo motor command smoothing speed limiting system based on differential step size includes: a communication processing module for receiving command frames sent by a host computer according to a communication protocol and parsing the command frames to determine servo control commands; a control command processing module for determining closed-loop commands using servo control commands; a signal acquisition and processing module for acquiring potentiometer data and processing it to obtain servo motor feedback data, wherein the potentiometer is used to acquire the displacement of the output shaft of the servo motor driven by the driver; and a closed-loop control processing module for processing the closed-loop commands and servo motor feedback data according to the servo motor mathematical model to obtain control signals for driver control.
[0006] A computer-readable storage medium storing a computer program configured to execute the above-described servo command smoothing speed limiting method based on differential step size at runtime.
[0007] An electronic device includes a memory and a processor, wherein the memory stores a computer program and the processor is configured to execute the aforementioned servo command smoothing speed limiting method based on differential step size through the computer program.
[0008] In this invention, by decomposing large-angle commands into micro-step movements with fixed step lengths, the three core problems in traditional servo control are solved by pure software means: instantaneous current surge, mechanical vibration and overshoot, and back EMF hazards. This makes the servo suitable for application scenarios where high dynamic response and high reliability requirements coexist. Attached Figure Description
[0009] Figure 1 This is a flowchart illustrating a servo command smoothing speed limiting method based on differential step size in an embodiment of the present invention. Figure 2 This is a schematic diagram of the servo motor principle in an embodiment of the present invention; Figure 3 This is a schematic diagram of the implementation architecture of a servo command smoothing speed limiting method based on differential step size in an embodiment of the present invention; Figure 4 This is a schematic diagram of closed-loop instruction acquisition in an embodiment of the present invention; Figure 5 This is a schematic diagram of the PID control algorithm in an embodiment of the present invention; Figure 6 This is a schematic diagram illustrating the principle of a servo command smoothing speed limiting method based on differential step size in an embodiment of the present invention; Figure 7 This is a schematic diagram of a servo command smooth speed limiting system based on differential step size in an embodiment of the present invention. Detailed Implementation
[0010] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. The advantages and features of the present invention will become clearer from the following description and claims. It should be noted that the drawings are all in a very simplified form and are not to a precise scale, and are only used to facilitate and clarify the illustration of the embodiments of the present invention.
[0011] It should be noted that, in order to clearly illustrate the content of this invention, several embodiments are provided to further explain different implementations of the invention. These embodiments are enumerated rather than exhaustive. Furthermore, for the sake of brevity, content mentioned in the preceding embodiments is often omitted in the following embodiments. Therefore, content not mentioned in the later embodiments can be referred to in the preceding embodiments.
[0012] Example 1 A smooth speed limiting method for servo commands based on differential step size, such as Figure 1 As shown, the method includes: S102 receives the instruction frames sent by the host computer according to the communication protocol and parses the instruction frames to determine the rudder control commands; S104 uses rudder control commands to determine closed-loop commands; S106, acquire potentiometer data, process to obtain servo feedback data, wherein the potentiometer is used to acquire the displacement of the output shaft of the servo motor driven by the driver; S108 processes the closed-loop command and servo feedback data according to the servo mathematical model to obtain control signals for drive control.
[0013] Optionally, the servo motor is not limited to receiving signals from the host computer through the controller to realize data processing of the servo motor and information interaction with the host computer; the actuator receives instructions from the controller to realize drive control.
[0014] The servo motor consists of both software and hardware. The hardware includes, but is not limited to, a controller, four actuators, and one connecting cable. The controller comprises a 422 communication and isolation circuit, a DSP and its peripheral circuits, a CAN communication circuit, a secondary power supply and filtering circuit, and electrical interface connectors. The four actuators have identical structures and functions; each actuator consists of a motor, driver, reducer, output shaft, potentiometer, etc.
[0015] Alternatively, the working principle of the servo motor in this application is not limited to that shown below. Figure 2 As shown, the position signal fed back by the potentiometer is acquired through the CAN bus. The closed-loop command and rudder feedback are then processed by PID calculation in software to form a control signal. The control signal is amplified by the motor driver and drives the brushless DC motor to rotate. The brushless motor is decelerated by the reduction mechanism to realize the rotation of the rudder shaft, thus forming a closed-loop control. The three core problems in the traditional servo control are solved by pure software means: instantaneous current impact, mechanical vibration and overshoot, and back EMF hazards.
[0016] Specifically, the implementation architecture of the above-mentioned servo command smooth speed limiting method based on differential step size is not limited to, for example, the following. Figure 3As shown, it includes four parts: communication processing, control command processing, closed-loop control processing, and signal acquisition processing. Among them, communication processing includes data reception, data parsing, and data transmission; closed-loop control processing includes command follow-up control settlement and control signal output; and signal acquisition processing includes signal acquisition and signal processing.
[0017] As an optional implementation, receiving instruction frames sent by the host computer according to the communication protocol includes: receiving instruction frames sent by the host computer through an RS422 communication controller according to the communication protocol.
[0018] As an optional implementation, after receiving the instruction frame sent by the host computer, the method further includes: verifying the instruction frame.
[0019] As an optional implementation, parsing the command frame to determine the rudder control command includes: parsing the command frame to determine the command word and the data segment of the rudder control command.
[0020] Optionally, communication processing is not limited to receiving data sent by the host computer, parsing commands, and outputting responses according to the communication protocol. Specifically, it includes three parts: data reception, data parsing, and data transmission, which are as follows: Data reception: Triggered every 5ms by an RS422 interrupt signal, the system receives rudder control command data frames from the host computer via the RS422 communication controller; Data parsing: Verify the rudder control command data frame and parse out the command word and rudder control command data segment; Data transmission: Actively or passively output response data frames to the host computer, and output rudder control command data for further processing.
[0021] As an optional implementation, after the servo is powered on, the current position data of the servo is collected, verified, and then feedback data is received and assigned to the closed-loop command.
[0022] As an optional implementation, upon receiving the servo enable signal and detecting the flag bit, the system collects and verifies the current position data of the servo, receives feedback data, and assigns the feedback data to the closed-loop command.
[0023] As an optional implementation method, the closed-loop command is determined using the rudder control command, including: calculating the command differential based on the rudder control command, determining the closed-loop command update method based on the command differential, and updating the closed-loop command using the closed-loop command update method to determine the closed-loop command.
[0024] Optionally, the closed-loop commands obtained for participating in the closed-loop control calculation are not limited to, for example, Figure 4 As shown, there are three possible scenarios: 1. Servo power-on initialization: After the servo is powered on and initialized, the current position data of the servo is collected through signal acquisition and processing, verified, and then feedback data is received and assigned to the closed-loop command. 2. Upon receiving the servo enable signal: After receiving the servo enable signal through communication processing, the flag bit is detected. The current position data of the servo is collected and verified through signal acquisition and processing. The feedback data is then received and assigned to the closed-loop command. 3. Receiving steering control command data: After receiving the steering control command data through communication processing, a timer interrupt signal triggers a differential calculation of the command every 500µs: steering control command - closed-loop command. The result of the differential calculation is then evaluated, and the closed-loop command update method is determined based on the different results. Specific methods include, but are not limited to: When the result of the instruction differential calculation is greater than 0.075°: Closed-loop instruction = Closed-loop instruction + 0.075°; When the result of the instruction differential calculation is less than -0.075°: closed-loop instruction = closed-loop instruction - 0.075°; When the result of the instruction differential calculation falls between the two: closed-loop instruction = steering control instruction.
[0025] After receiving the closed-loop command, the data will be transmitted to the closed-loop control processing for further processing.
[0026] As an optional implementation, acquiring potentiometer data and processing it to obtain servo feedback data includes: acquiring servo potentiometer data through an information acquisition interface, performing dimension conversion and filtering on the acquired potentiometer data, and obtaining servo feedback data.
[0027] Signal acquisition and processing is not limited to acquiring servo status data; specifically, it includes, but is not limited to, potentiometer position feedback or other servo status information, followed by filtering and dimension conversion. Specifically, it comprises two parts: signal acquisition and signal processing, with the following functions: Signal acquisition: The feedback from the servo potentiometer is acquired via the information acquisition interface (CAN interface); Signal processing: Convert the acquired data into the required units, in degrees, and perform filtering.
[0028] As an optional implementation, the closed-loop command and servo feedback data are processed according to the servo mathematical model to obtain the control signal, including: performing error correction on the servo feedback data and closed-loop command to determine the deviation signal; and performing proportional, integral, and derivative dimension control based on the deviation signal to determine the control signal.
[0029] Closed-loop control processing is not limited to processing closed-loop commands and servo feedback data according to the servo motor mathematical model and outputting motor drive control signals. It includes two parts: command follow-up control calculation and control signal output, with the following functions: Command-following control calculation: PID algorithm, short for Proportional, Integral, and Differential control algorithm, is a commonly used and efficient control algorithm in the field of automatic control. Its core idea is to control based on the error and its rate of change: when the system error is large, the proportional component outputs a larger control quantity to reduce the error as quickly as possible, while the derivative component adjusts the control quantity according to the current error trend to prevent excessive overshoot; when the system error is small, the integral component continuously increases the control quantity to gradually eliminate steady-state error, ultimately achieving error-free control of the system. The PID control algorithm process is not limited to... Figure 5 As shown, r(t) is the closed-loop command signal, e(t) is the deviation signal, y(t) is the feedback signal, and u(t) is the control signal. It can be expressed using a transfer function as follows: e(t) = r(t) - y(t) (1) (2) In the formula: —Proportional coefficient, also known as gain; —Integral coefficient; — Differential coefficients.
[0030] In the algorithm, if the integral coefficient Ki is set to 0, the PID control algorithm function implemented in software is expressed as follows: (3) In the formula: n — sampling number, n = 0, 1, 2, ...; T – represents the servo motor closed-loop control cycle of 500µs; e(n) — Error at the nth sampling time; r(n) — Instruction for the nth sampling time; y(n) — Feedback at the nth sampling time.
[0031] Control signal output: Output quantity K is determined by the proportional coefficient. p Differential coefficient K d Get the output U out To ensure security, this is not limited to U out Amplitude limiting is applied within the range of [6, 5940], corresponding to a PWM percentage of [1%, 99%], while the direction is controlled according to the polarity specified by the system.
[0032] Specifically, the principle of the servo command smoothing speed limiting method based on differential step size is as follows: Figure 6As shown, the communication processing receives command frames, and after data reception, data parsing, and data transmission, transmits the rudder control command to the control command processing. The control command processing determines the closed-loop command based on the rudder control command. The signal acquisition processing collects potentiometer data and processes it to obtain servo feedback data. The closed-loop processing control performs command following control calculation (PID calculation) and outputs control signals (PWM pulse quantity and direction signal) based on the closed-loop command and servo feedback. The control signals are then applied to the driver to control the servo.
[0033] In this embodiment, a large-angle command is decomposed into microsteps by a 0.075° / 500μs peripheral stepping approximation, resulting in a peak current reduction of over 60% (measured from 50A to 18A), thus achieving active suppression of current surges; and through hard velocity limiting (≤150° / s) and implicit acceleration constraints (300k° / s)... 2 It eliminates servo overshoot under large-angle commands, reducing gear impact noise by 20% (from 78dB to 62dB), thus eliminating the root cause of mechanical vibration. By limiting motor speed, it directly reduces the back EMF amplitude, decreasing the peak back EMF under large-angle commands by 25% (from 40V to 30V), achieving synchronous suppression of back EMF. Closed-loop command updates are calculated every 500μs, ensuring high real-time performance. It is implemented purely in software, eliminating the need for current and speed loops, reducing hardware costs. This improves real-time performance and optimizes hardware costs, effectively solving the three core problems in traditional servo control: instantaneous current impact, mechanical vibration and overshoot, and back EMF hazards. It is suitable for applications requiring both high dynamic response and high reliability.
[0034] Example 2 A servo command smoothing speed limiting system based on differential step size, such as Figure 7 As shown, the system includes: The communication processing module 702 is used to receive instruction frames sent by the host computer according to the communication protocol, and to parse the instruction frames to determine the rudder control instructions. The control command processing module 704 is used to determine the closed-loop command using the rudder control command; The signal acquisition and processing module 706 is used to acquire potentiometer data and process it to obtain servo motor feedback data. The potentiometer is used to acquire the displacement of the output shaft of the servo motor driven by the driver. The closed-loop control processing module 708 is used to process the closed-loop command and servo feedback data according to the servo mathematical model to obtain control signals for drive control.
[0035] Optionally, the communication processing module 702 receives instruction frames sent by the host computer according to the communication protocol, including: receiving instruction frames sent by the host computer through the RS422 communication controller according to the communication protocol.
[0036] Optionally, after receiving the instruction frame sent by the host computer, the communication processing module 702 further includes: verifying the instruction frame.
[0037] Optionally, the communication processing module 702 parses the instruction frame to determine the rudder control instruction, including: parsing the instruction frame to determine the command word and the data segment of the rudder control instruction.
[0038] Optionally, after the servo motor is powered on, the control command processing module 704 collects the current position data of the servo motor, verifies it, receives feedback data, and assigns the feedback data to the closed-loop command.
[0039] Optionally, when the control command processing module 704 receives the servo enable signal and detects the flag bit, it collects the current position data of the servo, verifies it, receives feedback data, and assigns the feedback data to the closed-loop command.
[0040] Optionally, the control command processing module 704 uses the rudder control command to determine the closed-loop command, including: calculating the command differential based on the rudder control command, determining the closed-loop command update method based on the command differential, and updating the closed-loop command using the closed-loop command update method to determine the closed-loop command.
[0041] Optionally, the signal acquisition and processing module 706 acquires potentiometer data and processes it to obtain servo feedback data, including: acquiring servo potentiometer data through an information acquisition interface, performing dimension conversion and filtering on the acquired potentiometer data, and obtaining servo feedback data.
[0042] Optionally, the closed-loop control processing module 708 processes the closed-loop command and servo feedback data according to the servo mathematical model to obtain a control signal, including: performing error correction on the servo feedback data and closed-loop command to determine the deviation signal; and performing proportional, integral, and derivative dimension control based on the deviation signal to determine the control signal.
[0043] In this embodiment, by decomposing large-angle commands into micro-step movements with fixed step lengths, the three core problems in traditional servo control are solved using pure software methods: instantaneous current surge, mechanical vibration and overshoot, and back EMF hazards. This makes the servo suitable for application scenarios where high dynamic response and high reliability requirements coexist.
[0044] Example 3 In another aspect, the present invention provides an electronic device for implementing the above-described servo command smoothing speed limiting method based on differential step size. This electronic device is not limited to a terminal device or server in a system. The electronic device includes, but is not limited to, a memory and a processor. The memory stores a computer program, and the processor is configured to execute the steps in any of the above method embodiments via the computer program.
[0045] Example 4 In another aspect, the present invention provides a computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional embodiments of the above-described servo instruction smoothing speed limiting method based on differential step size. The computer program is configured to execute the steps in any of the above-described method embodiments during runtime.
Claims
1. A method for smoothing speed limiting of servo commands based on differential step size, characterized in that, include: Receive instruction frames sent by the host computer according to the communication protocol, and parse the instruction frames to determine the rudder control commands; Use steering control commands to determine closed-loop commands; Acquire potentiometer data and process it to obtain servo feedback data. The potentiometer is used to obtain the displacement of the output shaft of the servo motor driven by the driver. The closed-loop commands and servo feedback data are processed according to the servo mathematical model to obtain control signals, which are then used for drive control.
2. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, Receiving instruction frames sent by the host computer according to the communication protocol includes: receiving instruction frames sent by the host computer through the RS422 communication controller according to the communication protocol.
3. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, After receiving the instruction frame sent by the host computer, the process also includes: verifying the instruction frame.
4. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, Parsing the command frame to determine the rudder control command includes: parsing the command frame to determine the command word and the data segment of the rudder control command.
5. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, After the servo is powered on, the current position data of the servo is collected, verified, and then feedback data is received and assigned to the closed-loop command.
6. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, Upon receiving the servo enable signal and detecting the flag bit, the system collects and verifies the current position data of the servo, receives feedback data, and assigns the feedback data to the closed-loop command.
7. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, Using steering control commands to determine closed-loop commands, including: Calculate the command differential based on the steering control command, and determine the closed-loop command update method based on the command differential; Closed-loop instruction updates are performed using a closed-loop instruction update method to determine the closed-loop instruction.
8. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, Acquire potentiometer data and process it to obtain servo feedback data, including: acquiring servo potentiometer data through an information acquisition interface, performing dimension conversion and filtering on the acquired potentiometer data, and obtaining servo feedback data.
9. The servo command smoothing speed limiting method based on differential step size as described in claim 1, characterized in that, The closed-loop commands and servo feedback data are processed according to the servo motor mathematical model to obtain control signals, including: Error correction is performed on the servo feedback data and closed-loop commands to determine the deviation signal; Based on the deviation signal, proportional, integral, and derivative dimension control is performed to determine the control signal.
10. A servo motor command smooth speed limiting system based on differential step size, characterized in that, include: The communication processing module is used to receive instruction frames sent by the host computer according to the communication protocol, and to parse the instruction frames to determine the rudder control commands. The control command processing module is used to determine the closed-loop command using the steering control command; The signal acquisition and processing module is used to acquire potentiometer data and process it to obtain servo feedback data. The potentiometer is used to acquire the displacement of the output shaft of the servo motor driven by the driver. The closed-loop control processing module is used to process the closed-loop commands and servo feedback data according to the servo mathematical model to obtain control signals for drive control.