Visible to Intel only — GUID: mmn1479304650799
Ixiasoft
Visible to Intel only — GUID: mmn1479304650799
Ixiasoft
7.3.5. Motor Control Modes
- Open-loop Volts/Hz speed control with sinusoidal commutation
- Speed and position control with field-oriented current control (FOC), sinusoidal commutation with quadrature encoder or resolver feedback The design implements this mode in software or a combination of software and hardware using FOC IP.
Open Loop
FOC with Position Sensor Feedback
The design supports FOC sensor control where the motor position feeds back to form a closed loop with position and speed PI control. The design senses the motor position by incremental (quadrature) encoders.
High-speed FOC with Position Sensor Feedback
The high-speed FOC sensor mode closely resembles the standard FOC with position sensor feedback mode, but operates at 64 kHz instead of 16 or 32 kHz. In this mode, the design performs the FOC calculation only with the FOC DSP Builder IP. Phase currents U and W are directly connected to the sigma-delta ADC interface. The output space vector modulation PWM values are directly connected to the six-channel PWM interface.
The ADC interface operates at 64 kHz and is synchronized with the PWM to eliminate FET switching noise from the power board. The software can run at 96 kHz, but the Tandem board limits the frequency to 64 kHz. The high-speed mode only supports the DSP Builder fixed-point design. It does not support floating point or software fixed point.
The figure shows the high-speed FOC connection. In the diagram, bold lines represent the Avalon interface, single lines indicate the direct interface, and blue lines indicate one item triggers the next. ISR uses interface IP and algorithm acceleration IPs for control and diagnostics. The ISR calls Avalon memory-mapped interfaces
PWM counter values reaching PWM_TRIGGER_UP and PWM_TRIGGER_DOWN initiate ADC conversion for feedback-current readings. When the ADC reading stabilizes, the latch_en signal is set to high. The avs_irq signal activates each ISR service routine, determined by the irq_counter and latch_en. The irq_counter value ensures sufficient time for each ISR service routine and is automatically calculated in the software based on the FOC running speed.