Генерация s_function на Matlab с внешними библиотеками для использования во встроенной системе dSPACE - PullRequest
0 голосов
/ 26 марта 2019

Я хочу запустить контроллер MPC (Model Predictive Control) во встроенной системе (dSPACE autobox).Алгоритм MPC сформулирован с использованием фреймворка Casadi (https://web.casadi.org/).). Этот фреймворк не допускает генерацию кода на C для самого решателя нелинейного программирования, а только для его зависимостей. Поэтому я бы хотел связать библиотеку Casadi и решатель нелинейного программирования(IPOPT).

Я хотел бы сгенерировать функцию s_, чтобы ее можно было использовать в интерфейсе реального времени (RTI) для Matlab / Simulink и dSPACE.

Мой вопрос: какя собираюсь создать общую библиотеку, которую можно использовать вместе в Matlab в S-функции на Matlab R2013B с использованием Microsoft Visual Studio 10 с Windows 7.1 SDK?

% (1)% Создать общую библиотеку mcc -v -W lib: mylib -T link: lib nlp.c

% Создать S-функцию mex s_function.c nlp.c mylib.lib -g -v

% (2) mex ('LDEXT = .dll', 'LINKEXPORT = ',' LINKEXPORTVER = ',' CMDLINE300 = "del exlib.exp exlib.dll.manifest" ',' exlib.c ');% или mex ('LDEXT = .dll', 'LINKEXPORT =', 'LINKEXPORTVER =', 'exlib.c');

...