Motor Controller Dual Interrupt Processing for Position Precision
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing motor control technologies face precision issues due to delayed interrupt processing, which can lead to phase delays and unstable control, and may result in control collapse if the number of operations exceeds the interrupt cycle, especially when using inexpensive CPUs or software counters.
Innovation Solution
A motor controller is designed with a dual processing section structure, where high-frequency processing handles position detection and velocity calculations every interrupt cycle, and low-frequency processing handles motor command generation every fourth cycle, ensuring precise control without delays or collapse, even with inexpensive CPUs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If interrupt processing is delayed by other interrupt routines, then control precision deteriorates, but system versatility is improved
Solution Approach 1:
The interrupt processing is segmented into two distinct routines: a first interrupt routine that executes frequently with minimal operations (encoder signal input, position/velocity calculation,, and a second interrupt routine that executes less frequently with more operations (motor drive command output). This segmentation allows the critical position detection to occur at high frequency while permitting the more complex command generation to occur less frequently, thus maintaining control precision while enabling comprehensive processing.
2Productivity
If the number of operations in interrupt process increases, then processing capability is improved, but control stability deteriorates
Solution Approach 1:
Operations are segmented and distributed across two interrupt routines based on their frequency requirements. The first routine handles time-critical operations (encoder signal input, position/velocity calculation) at high frequency to maintain stability, while the second routine handles less time-critical operations (motor drive command output) at lower frequency, allowing more comprehensive processing without compromising control stability.
Solution Approach 2:
The system employs periodic interrupt routines with different frequencies: the first interrupt routine executes at a higher frequency (shorter cycle) for critical measurements, while the second interrupt routine executes at a lower frequency (longer cycle) for command generation. This periodic structure with differentiated frequencies allows the system to perform comprehensive processing while maintaining stability by ensuring critical operations occur frequently enough to prevent control collapse.
3Measurement precision
If interrupt cycle is shortened to improve control performance, then control precision is improved, but processing reliability deteriorates
Solution Approach 1:
The interrupt processing is segmented into two routines with different cycle periods. The first interrupt routine operates with a shorter cycle (higher frequency) to achieve precise position and velocity detection, while the second interrupt routine operates with a longer cycle (lower frequency) for motor drive command generation. This segmentation allows the system to achieve high control precision for position/velocity without requiring all operations to complete within the shorter cycle, thus maintaining processing reliability.
Data Source
AI summary
A motor controller receiving as input an encoder signal changing in response to a driving position of a motor, outputting a motor driving command in response to the encoder signal to control at least one of the driving position or a driving velocity of the motor, includes an interrupt processing section to execute interrupt operations every prescribed interrupt cycle, a low-frequency processing section to selectively execute a subset of the interrupt operations every prescribed number of the interrupt cycles, and a high-frequency processing section to execute another subset of the interrupt operations every prescribed interrupt cycle, wherein the high-frequency processing section executes at least an operation to detect the driving position indicated by the encoder signal, wherein the low-frequency processing section executes at least an operation to generate the motor driving command.


