Motor Command Extrapolation for Smooth Servo Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing controllers for motor-driven apparatuses face issues with abnormal noise and vibration due to communication abnormalities, which lead to unsuitable interpolation and extrapolation calculations of command values, especially when processing loads and communication bandwidths are high, resulting in unnatural movement and increased calculation loads.
Innovation Solution
A controller with an extrapolation calculation method that uses specific expressions to calculate command values when they are not received from the host apparatus, such as y(k)=y(k−2)+{y(k−1)−y(k−3)} or y(k)=y(k−m)+{y(k−1)−y(k−m−1)}, to ensure smooth motor movement and reduce calculation load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If interpolation calculation is performed in the position control part based on received position command values, then the position command can be updated at the servo-control update period, but abnormal noise and vibration occur when communication abnormality happens and extrapolation calculation is required
Solution Approach 1:
The patent changes the parameter of extrapolation calculation from conventional methods (which cause abnormal values) to a specific calculation method using y(k) = y(k-1) + {y(k-1) - y(k-2)}. This parameter change in the calculation formula ensures that even when communication abnormality occurs, the extrapolated position command values remain appropriate and prevent abnormal noise and vibration while maintaining high update speed.
2Quantity of substance
If the transmission interval of position command value is longer than the update period in the position control part, then communication bandwidth requirements are reduced, but interpolation calculation is required which increases calculation load
Solution Approach 1:
The patent optimizes the extrapolation calculation parameters to use a simple formula y(k) = y(k-1) + {y(k-1) - y(k-2)} that requires minimal computation. This allows the system to use longer transmission intervals (reducing communication bandwidth requirements) while keeping the interpolation/extrapolation calculation load very low, as the calculation only requires subtracting two previous values and adding to the current value.
3Reliability
If conventional extrapolation calculation is performed when position command value is not received, then the position control can continue, but the calculated position command value is not appropriate causing unnatural movement
Solution Approach 1:
The patent introduces a specific parameter relationship in the extrapolation formula where the difference between consecutive extrapolated values equals the difference between the last two received values: y(k) - y(k-1) = y(k-1) - y(k-2). This parameter constraint ensures that the extrapolated values follow the same trend as the received values, maintaining natural and smooth movement while ensuring continuous position control during communication abnormalities.
4Measurement precision
If correction by further extrapolation calculation is performed when difference value exceeds threshold, then position command accuracy is improved, but calculation load increases significantly
Solution Approach 1:
The patent extracts and eliminates the complex correction mechanism from conventional extrapolation methods. Instead of performing iterative correction calculations when threshold violations occur, the system uses the simplified formula y(k) = y(k-1) + {y(k-1) - y(k-2)} that inherently produces appropriate values without requiring additional correction steps, thereby maintaining accuracy while dramatically reducing calculation load.
Data Source
AI summary
A controller which controls an apparatus having motors each of which drives each axis includes a control part which is provided so as to correspond to a motor for each axis and servo-controls the motor based on a command value applied to the motor. The control part receives the command value from a host apparatus and updates the command value in a predetermined updating period. When the command value in a “t”-th updating period used in the control part is defined as y(t), the control part includes an extrapolation calculation part which calculates a command value y(k) used in a “k”-th updating period according to the following expression when the control part has not received the command value from the host apparatus or abnormality occurs in the communication in the “k”-th updating period:y(k)=y(k−2)+{y(k−1)−y(k−3)}, ory(k)=y(k−2)+{y(k−2)−y(k−4)}.


