Активируйте верификация кода (CGV) и выполните модель
вызывает методы API верификации генерации кода (CGV) и выполняет cgvObject
= slvnvruncgvtest(model
, dataFile
)model
при помощи всех тестов в dataFile
. cgvObject
является cgv.CGV
объект, который slvnvruncgvtest
создает во время выполнения model
. slvnvruncgvtest
устанавливает режим выполнения для cgvObject
на 'sim'
по умолчанию.
% Open the sldemo_mdlref_basic example model and log the input signals to the CounterA Model block: open_system('sldemo_mdlref_basic'); load_system('sldemo_mdlref_counter'); loggedData = slvnvlogsignals('sldemo_mdlref_basic/CounterA'); % Create the default configuration object for slvnvruncgvtest,and allow the model to be configured to % execute test cases with the CGV API: runOpts = slvnvruntestopts('cgv'); runOpts.allowCopyModel = true; % Using the logged signals, execute slvnvruncgvtest — first in simulation mode, and then in % Software-in-the-Loop (SIL) mode — to invoke the CGV API and execute the specified test % cases on the generated code for the model: cgvObjectSim = slvnvruncgvtest('sldemo_mdlref_counter', loggedData, runOpts); runOpts.cgvConn = 'sil'; cgvObjectSil = slvnvruncgvtest('sldemo_mdlref_counter', loggedData, runOpts); % Use the CGV API to compare the results of the first test case: simout = cgvObjectSim.getOutputData(1); silout = cgvObjectSil.getOutputData(1); [matchNames, ~, mismatchNames, ~ ] = cgv.CGV.compare(simout, silout); fprintf('\nTest Case: %d Signals match, %d Signals mismatch', ... length(matchNames), length(mismatchNames));
Бежать slvnvruncgvtest
, у вас должен быть Embedded Coder® программное обеспечение.
Если ваша модель имеет параметры, которые не сконфигурированы для выполнения тестов с CGV API, slvnvruncgvtest
сообщает предупреждения о недопустимых параметрах. Если вы видите эти предупреждения, выполните одно из следующих действий:
Измените недопустимые параметры и перезапустите slvnvruncgvtest
.
Задайте allowCopyModel
в runOpts
чтобы быть true
и перезапустите slvnvruncgvtest
. slvnvruncgvtest
делает копию вашей модели, сконфигурированную для выполнения тестов, и вызывает CGV API.
slvnvlogsignals
| slvnvruntest
| slvnvruntestopts
| cgv.CGV
(Embedded Coder)