|
|
PSim
Enviroment
PSim Engine
|
PSim Engine представляет собой Run time среду моделирования.
Общий вид PSim Engine:
|
Запуск
моделирования в PSim Engine
(если не использутся автоматический запуск)
|
|
Перезапуск
моделирования |
|
Автоматически
закрывать PSim Engine после
окончания моделирования Simulink-модели.
|
Со стороны Matlab/Simulink -
система PSim Engine представляет
собой вызов S-функции mvexchanger:
Параметры S-функции - T,autorun
- T
- период дискретности (равен шагу по времени в
PSim и шагу решателя Matlab'а),
- autorun
- флажок, если равен 1 - то PSim Engine автоматически
запускается при запуске моделирования Simulink-модели
(PSim Engine и Simulink-модель должны находиться в
одной директории ), 0 - PSim Engine должен быть запущен
вручную после запуска моделирования Simulink-модели.
|
Cинхронизация обмена данными |
Так как при совместной работе PSim
Engine и Matlab
синхронизируют обмен данными, то нельзя допускать закрытия PSim Engine. до завершения
моделирования Simulink-модели.
Закрытие PSim Engine во время
моделирования Simulink-модели
приводит к deadlock со
стороны Matlab'а
|
Текущая версия PSim Engine поддерживает передачу 64 переменных из Matlab в PSim Engine и 61 из PSim Engine в Matlab.
Входные (для PSim Engine) переменные разбиты на 4 группы:
- 3
группы по 18 в каждой и 10 в 4-ой (облегчение работы с Simulink-моделью и особенность
реализации ...) Каждой из групп соответствует свой вход в S-функции Таким образом, на каждый
из 1-3 входов S-функции должен подаваться вектор 1x18: {a1,a2,....a18}, на 4 - вектор 1x10:
{a1,a2,....a10}.
Каждый параметр может
занимать различное число переменных, например все силы, моменты, положения и скорости
тел и сочленений имеют размерность 1х3
- {i1,i2,i3}, ориентация
тел(кватернион) 1х4 - {i1,i2,i3,i4}.Порядок
следования параметров для правильного подключения входов S-функции можно просмотреть в PSim Engine при помощи View IO 'pins'
Соответственно, если в PSim Engine для какого либо тела
внешняя сила(момент) должны задаваться Matlab'oм,
то в группе (размерность 1х18
или 1х10) необходимо задать 3
переменные ( силы
и моменты имеют размерность 1х3), определяющие составляющие этих
сил (моментов):
Выходные (для PSim Engine)
переменные также разбиты на 4
группы (), однако
первые 2 переменные первой группы и последняя 4-ой зарезервированы.
Первая
- для отладочной информации, во второй
переменной передается текущее
время PSim Engine - модели. Соответствие значений выходам S-функции аналогично:
|
|
|
|