Подключение DLL с функцией UserCalc

Подключение внешних библиотек к моделям УМ (Matlab/Simulink, Block Editor, DLL пользователей)

Подключение DLL с функцией UserCalc

Сообщение Krivopusk Vladimir » 29 ноя 2017, 16:24

Здравствуйте!

Был UM x32 и Delphi 7 x32. При нажатии в UM кнопки "Синтезировать уравнения движения" появляется подкаталог /Pascal/ с проектом Delphi. Отредактировав нужным образом ClUMObject.pas и нажав в UM "Компилировать уравнения движения" появляется UmTask.dll. Нажимаю "Перейти к программе моделирования UM Simulation" и DLL подхватывается автоматически, обработчики из функций используются.

Поставил UM x64 и Delphi 10.2 x64. Делаю всё также, но при выполнении CompWDll.bat созданном uminput.exe возникает ошибка. Редактирую CompWDll.bat, дописываю к имеющимся параметрам компиляции ещё параметр:

--default-namespace:System

Запускаю CompWDll.bat, компилируется без ошибок, появляется файл UmTask64.dll. Нажимаю "Перейти к программе моделирования UM Simulation", но DLL не подхватывается. В функции ClUMObject::UserCalc(..) в разделе FIRSTINIT_MESSAGE создаю файл, но он не появляется, не стартует функция UserCalc(..).

Как указать в umsimul.exe , что нужно использовать функцию UserCalc(..) из UmTask64.dll ?
Krivopusk Vladimir
 
Сообщения: 4
Зарегистрирован: 19 май 2015, 10:16

Re: Подключение DLL с функцией UserCalc

Сообщение Krivopusk Vladimir » 02 дек 2017, 11:59

Попробовал деинсталлировать UM x64 и установить UM x32.
В 32-х разрядном UM успешно подключает UmTask.dll созданный в Delphi 10.2. Непонятно пока, как подключать 64-х разрядный DLL в UM x64.
Krivopusk Vladimir
 
Сообщения: 4
Зарегистрирован: 19 май 2015, 10:16

Re: Подключение DLL с функцией UserCalc

Сообщение Roman Kovalev » 04 дек 2017, 15:51

Здравствуйте, Владимир,

Спасибо за ваше сообщение. С работой DLL в 64-битной версии УМ попробуем разобраться. Пока не готов сообщить по этой проблеме что-либо определенное. Приняли к сведению и постараемся решить проблему в ближайшее время.

Что касается использования программирования в моделях УМ, то в качестве альтернативы программированию в файле управления я могу порекомендовать вам использовать инструменты из модуля UM Control (http://www.universalmechanism.com/plugi ... x.php?id=9). Проще всего начать с библиотек пользователя (User's Defined Routines) или редактора схем (Block Editor). Думаю, что они вам подойдут по функциональности. Библиотеки пользователя повторяют фукциональность файла управления.

Если будут вопросы - пишите сюда или на support@umlab.ru.
Аватара пользователя
Roman Kovalev
UM Team
 
Сообщения: 68
Зарегистрирован: 30 янв 2014, 18:46
Откуда: Брянск, Россия


Вернуться в Интерфейс с Matlab/Simulink, библиотеки пользователя

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron