Этот пример показывает клиентское приложение C#, которое использует Simulink® Real-Time™ API для Microsoft®.NET Framework, чтобы взаимодействовать через интерфейс с целевым компьютером. Разработанное использование Microsoft® Visual Studio®, загрузки клиентского приложения, запускается и управляет приложением реального времени осциллятора, xpcosc.mldatx
.
Для получения дополнительной информации о API Simulink Real-Time для Microsoft.NET Framework, см. документацию Simulink Real-Time.
ТРЕБОВАНИЕ:
Чтобы открыть файлы проекта, вы, должно быть, установили Microsoft Visual Studio.
Откройте модель осциллятора.
addpath(fullfile(matlabroot,'toolbox','rtw','targets','xpc','xpcdemos')); mdlOpen = 0; systems = find_system('type', 'block_diagram'); if ~any(strcmp('xpcosc', systems)) mdlOpen = 1; open_system(fullfile(matlabroot,'toolbox','rtw','targets','xpc','xpcdemos','xpcosc')); end
Запустите модель в Simulink®, чтобы наблюдать его динамическое поведение.
Запустите модель компьютера разработчика.
set_param(bdroot,'SimulationCommand','start'); pause(3); % Wait for 3 sec.
Просмотрите окно графика.
open_system([bdroot,'/Scope']);
Закройте окно графика.
close_system([bdroot,'/Scope']);
Создайте модель и загрузите на целевой компьютер
Не загружайте после создания.
Сконфигурируйте для немногословной сборки.
Сборка и приложение загрузки.
Закройте целевую связь.
set_param('xpcosc','xPCisDownloadable','off'); set_param('xpcosc','RTWVerbose','off'); rtwbuild('xpcosc'); if exist('tg','var'),tg.close;end
### Starting Simulink Real-Time build procedure for model: xpcosc Warning: This model contains blocks that do not handle sample time changes at runtime. To avoid incorrect results, only change the sample time in the original model, then rebuild the model. ### Successful completion of build procedure for model: xpcosc ### Created MLDATX ..\xpcosc.mldatx ### Download process is disabled.
Закройте целевую модель, если мы открыли ее.
if (mdlOpen) bdclose('xpcosc'); end
Откройте клиентское приложение: Oscillator Client (Example 1)
Поставьте Цель Адрес TCP/IP и Цель Порт TCP/IP совпадать с вашей настройкой целевого компьютера.
Рисунок 3: клиентское приложение осциллятора (пример 1)
xpcosc.mldatx
Затем, путем нажатия на Find xpcosc.mldatx... кнопка, перейдите к и выберите файл приложения xpcosc.mldatx
. Нажмите кнопку Open, чтобы закрыть Избранное окно файла приложения.
Рисунок 4: диалоговое окно File Find
Подтвердите, что ваш целевой компьютер загружается и соединяется с компьютером разработчика, затем:
Кликните по Кнопке соединения, чтобы соединиться с целевым компьютером
Нажмите кнопку Load, чтобы загрузить приложение на целевом компьютере
Щелкните по кнопке Run, чтобы запустить выполнение приложения
Если вам соединят монитор с целевым компьютером, вы будете видеть результаты симуляции осциллятора, отображенные в целевом осциллографе. Можно изменить параметр затухания путем перемещения ползунка. Когда сделано:
Нажмите кнопку Stop, чтобы мешать приложению запуститься
Нажмите кнопку Unload, чтобы разгрузить приложение от целевого компьютера
Нажмите кнопку Disconnect, чтобы отключиться от целевого компьютера
Осциллографы хоста могут использоваться, чтобы просмотреть сигналы на компьютере разработчика. Этот пример использует осциллографы хоста, чтобы просмотреть команду осциллятора и ответ в клиентской фигуре графика.
Откройте клиентское приложение: Oscillator Client (Example 2)
Как прежде, ставит Цель Адрес TCP/IP и Цель Порт TCP/IP совпадать с вашей настройкой целевого компьютера и затем использовать Находку xpcosc.mldatx кнопка, чтобы перейти к и выбрать файл приложения реального времени.
Кликните по Подключению, Загрузке и кнопкам Run. Необходимо видеть сигналы команды и ответа осциллятора в фигуре графика.
Рисунок 5: клиентское приложение осциллятора с осциллографом хоста (пример 2)
Проект Microsoft Visual Studio, сопоставленный с этими примерами, расположен в папке Simulink Real-Time API здесь: Project Folder