Error : The first argument of the 'verify' operator must be a scalar logical expression.

28 Ansichten (letzte 30 Tage)
I am getting the error (Error : The first argument of the 'verify' operator must be a scalar logical expression.) in Testsequence (Simulink Test) while performing the MIL testing.
The Output signal "TGS_Zero_Pos_EE_NVM" is an output with array of[4x1].
Currently i have added as below :
Step_1
verify(TGS_Zero_Pos_EE_NVM == single([1.5; 1.5; 1.5; 1.5]))
Error : The first argument of the 'verify' operator must be a scalar logical expression.
Please suggest how can i add the Output signal "TGS_Zero_Pos_EE_NVM" in Testsequence inorder to run the Testsequence.
The inputs i am using are :
NVMUpdatesZeroLearn_b = [0; 0; 0; 0]; %this is an array[4x1] input
NVMsZeroLearnArray = true;
Ignition_Is_Off = false;
Engine_Is_Running = false;
Reset = false;
V5B1_Out_Of_Range = false;
deltaTime = 0.001;
HAL_TGS1_AnalogIn_V = 0.7;
V5B2_Out_Of_Range = false;
HAL_TGS2_AnalogIn_V = 2;
DID_Disable_ZeroLearning = false;
NVMs_StoredMax_V = 0;
NVM_Updates_Max_b = false;

Antworten (1)

Voss
Voss am 2 Jul. 2024
verify(isequal(TGS_Zero_Pos_EE_NVM,single([1.5; 1.5; 1.5; 1.5])))
  1 Kommentar
Walter Roberson
Walter Roberson am 2 Jul. 2024
Or
verify(all(TGS_Zero_Pos_EE_NVM == single([1.5; 1.5; 1.5; 1.5])))
but this will fail if TGS_Zero_Pos_EE_NVM is not shape-compatible with a column vector of length 4, whereas the isequal() approach handles the situation nicely and so is better.

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by