Can't solve simulation errors in FOC model (Simulink 2020a)

4 views (last 30 days)
Hi everyone,
I am trying to develop an FOC algorithm (see screenshots attached) using the Motor Control Blockset in Simulink but I am getting the following errors (see screenshot attached). I don't know waht I am doing wrong since I fed my d and q currents to my Discrete PI controllers and fed the results straight into my Inverse Park Transform. I don't know how to solve this and any help would be greatly appreciated.
P.S. I have attached my FOC Simulink file below

Answers (1)

Joel Van Sickel
Joel Van Sickel on 1 Sep 2020
Hello Jefazo,
your simulink lines can be vectors. So a single line can have a vector with 4 elements in it. These dimensions need to line up when connecting to subsystem. Your particular issue is that you are taking the phase current from the motor, which is a vecotr of dimension 3, and splitting it in a demux as if it is a signal of dimension 2. because of this, you are actually passing 2 values into the beta value of your clarke transform. You need to demux the phase currents into 3 values, and terminate phase current C.

Community Treasure Hunt

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

Start Hunting!

Translated by