Контролируйте уровень перегрузки ЦП

Блок SLRT Overload Options выводит текущий счет перегрузки ЦП для идентифицированной частоты дискретизации.

В этом примере показано, как спроектировать модель, которая использует блок SLRT Overload Options, чтобы контролировать уровень, на котором происходят перегрузки ЦП. Уровень информации о перегрузках ЦП может быть полезным при настройке эффективности модели, для которой низкий уровень перегрузки ЦП приемлем.

Открытый, сборка и запуск модель

В Командном Окне MATLAB введите:

open_system(fullfile(matlabroot, 'toolbox','slrealtime','examples','slrt_ex_overload'));

Назовите сигнал, выходящий из выходного порта блока ограничителя уровня как Ограничитель Уровня, и регистрируйте его в Инспекторе Данных моделирования.

p = get_param('slrt_ex_overload/Rate Limiter','PortHandles');
l = get_param(p.Outport,'Line');
set_param(l,'Name','Rate Limiter');
Simulink.sdi.markSignalForStreaming('slrt_ex_overload/Rate Limiter',1,'on');

Создайте модель.

set_param('slrt_ex_overload', 'RTWVerbose', 'off');
slbuild('slrt_ex_overload');
### Successful completion of build procedure for: slrt_ex_overload
### Created MLDATX ..\slrt_ex_overload.mldatx

Build Summary

Top model targets built:

Model             Action                       Rebuild Reason                                    
=================================================================================================
slrt_ex_overload  Code generated and compiled  Code generation information file does not exist.  

1 of 1 models built (0 models already up to date)
Build duration: 0h 1m 20.857s

Загрузите приложение и запустите его на целевом компьютере.

tg = slrealtime;
connect(tg);
load(tg,'slrt_ex_overload');
start(tg);
pause(20);
stop(tg);

Открытый инспектор данных моделирования

Чтобы просмотреть уровень, на котором происходят перегрузки ЦП, откройте Инспектора Данных моделирования.

В Командном Окне MATLAB введите:

Simulink.sdi.view;

Исследуйте данные об уровне перегрузки ЦП

В Инспекторе Данных моделирования график показывает:

  • Нижняя часть возрастающий сигнал шага ступеньки - Этот сигнал указывает на количество перегрузок ЦП, которые произошли.

  • Главный возрастающий сигнал шага ступеньки - Этот сигнал указывает на количество перегрузок ЦП, которые позволены, который является (произошел + 2).

  • Возрастающая скорость нарастания - Этот сигнал указывает на уровень, на котором происходят перегрузки ЦП. Когда возрастающая скорость нарастания становится больше, чем главный возрастающий сигнал шага ступеньки, уровень перегрузок ЦП больше, позволены.

Измените уровень перегрузок ЦП

Чтобы изменить уровень, на котором перегрузки ЦП происходят в модели, измените Constant2 значение параметров.

Измените позволенный уровень перегрузок ЦП

Чтобы изменить уровень перегрузок ЦП, которые приемлемы в модели, измените RisingSlowLimit значение параметров.

Создание и запуск модели с измененными уровнями перегрузки

В Командном Окне MATLAB введите:

load(tg,'slrt_ex_overload');

Изменить уровень перегрузок ЦП, которые приемлемы в модели

tg.setparam('slrt_ex_overload/Rate Limiter','RisingSlewLimit',0.004);

Изменить уровень, на котором перегрузки ЦП происходят в модели

tg.setparam('slrt_ex_overload/Constant2','Value',4);

запустите модифицированное приложение на целевом компьютере

start(tg);
pause(20);
stop(tg);

В Инспекторе Данных моделирования сравните данные сигнала от запусков симуляции и наблюдайте изменение в уровне перегрузки ЦП.

bdclose('all');

Смотрите также

Связанные примеры

Больше о