Data type mismatch error in Simulink

33 views (last 30 days)
I am running a simulation of Direct Torque Control of Induction Motor in Simulink. Howeve in sector formation I'm getting the following error:
Data type mismatch. 'Input Port 1' of 'DTC_Trial1/Hystersisis Control and Pulse Generation /Subsystem/Sum1' expects a signal of data type 'boolean'. However, it is driven by a signal of data type 'double'.
I'm not able to understand why this is happening. Any help would be appreciated. Attached file for reference. Thank you.

Accepted Answer

Pat Gipper
Pat Gipper on 17 Jan 2022
I saw a number of other issues in this model.
1) I think the inverter needs a ground reference added on the emitters of the lower corner IGBTs. Once you do this then you will be able to measure the stator voltages and currents with the Three-Phase V-I Measurement block as needed.
2) The subsystem calculating the sector needs further work. Try using a mod(2*pi) instead of the boolean logic, as I believe you desire to wrap the result. Also it is outputting a sector value of zero, which I think is incorrect. Try adding 1 to the result.
3) The Stator voltage selector using a fnc block that is not compatible with the psi_s input. Should this be an absolute value function?
  4 Comments
Pat Gipper
Pat Gipper on 20 Jan 2022
I'm glad to hear it. Switching noise in the stator currents is to be expected with this control scheme.

Sign in to comment.

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 14 Jan 2022
  1. The easiest solution is to add a Data Type Conversion block.
  2. The proper solution is to set the proper data type at the relevant blocks.
  3. The related setting is the diagnostic for mismatch data types.

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!