How do I prevent motor from entering reverse generating region, and stay in forward motoring region?

51 views (last 30 days)
I am trying to simulate an electric motor for an aircraft, but when I input my reference speed and torque demand, the motor seems to enter reverse generating instead of forward motoring.
The motor parameters are as such:
The motor's torque output vs torque demand as shown:
However, the motor's rpm output vs reference rpm is as shown:
Is there a way to "force" the motor to stay in quadrant 1 as opposed to entering quadrant 4?

Answers (1)

Umar
Umar on 25 Sep 2025 at 18:34

Hi @Zachary,

Looking at your simulation results, the issue is clear: your motor is operating in Quadrant 4 (negative speed, positive torque) instead of the desired Quadrant 1 operation due to a sign convention mismatch between your speed reference and the motor block's internal reference frame - while your torque control is working correctly (yellow line tracking blue demand), your RPM output (yellow) is negative when your RPM reference (blue) is positive, indicating the motor's internal electrical angle or control system expects the opposite polarity for positive rotation. The quickest solution is to add a gain block with value -1 to invert your speed reference signal before it enters the motor block, which should flip the motor into proper Quadrant 1 operation while maintaining your excellent torque tracking performance. After implementing this fix, verify that positive speed commands produce positive RPM outputs and that the motor operates within the correct quadrant boundaries during your aircraft simulation - this is particularly critical for aircraft applications where propeller rotation direction, engine mount torque reactions, and flight control system expectations must align properly for safety. If the simple polarity inversion resolves the issue (which is highly likely based on your plots), you can then decide whether to keep this as a permanent solution or investigate deeper motor parameterization changes, but the torque-speed lookup table configuration and overall motor parameters appear correct since your torque control is performing well.

References

Motor & Drive (System Level) Block Documentationhttps://www.mathworks.com/help/sps/ref/motordrive.html

  12 Comments
Zachary
Zachary ungefär 15 timmar ago
Hi @Umar, apologies for the late reply. The only -1 gain block I've used is connected to my torque demand. You mentioned to try adding a -1 gain block to my reference rpm block, I've removed that after the latest attempt.
Umar
Umar ungefär 10 timmar ago

Hi @Zachary,

Thanks for the update! I appreciate you making the adjustments and keeping me informed. I understand that you’ve removed the -1 gain from the reference RPM block, and that you’re now only using it on the torque demand, which is helpful context.

However, to properly evaluate the situation and move forward, I still need to see the updated Simulink block diagram and the results/output after these changes. From our previous conversations, I haven’t seen the actual diagram or the simulation results yet, so I can’t fully diagnose what might be going wrong.

Could you please share the following:

1. Updated Simulink Block Diagram:

A screenshot of the entire current setup, including:

  • All blocks and connections
  • The current placement of the -1 gain block
  • The type of motor block you're using

2. Simulation Results / Output:

  • A plot or graph showing the RPM tracking response after the latest changes
  • Any error messages or issues that appear during simulation

*The simulation time when the issue occurs

3. Motor Parameters:

A screenshot of the motor block settings, including parameters like rotor inertia, damping, torque-speed envelope, etc.

Without the diagram and results, it’s hard for me to pinpoint exactly what might be causing the instability. Once I have those, I’ll be able to guide you through the next steps to resolve the issue and stabilize the system.

Looking forward to seeing the updated details!

Sign in to comment.

Categories

Find more on Propulsion in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!