Системы координат тел обеспечивают точки соединения для соединений и ограничений в вашей модели. Они определяют также относительные ориентации этих соединений и ограничений, и, следовательно, направления движения, которые разрешены во время симуляции. Чтобы успешно соединить тела через соединения и ограничения, необходимо создать подходящие системы координат соединений, и это задача, которая лучше всего выполняется при моделировании самих тел.
Можно добавить системы координат непосредственно к твердым телам с помощью интерфейса создания систем координат твердых блоков. Этот интерфейс позволяет вам задавать положение и ориентацию системы координат в интерактивном режиме, с точки зрения функций геометрии ключа, таких как вершины, ребра и грани, или с точки зрения функций инерции ключа, таких как центр масс и главные оси инерции. Созданные вами системы координат называются пользовательскими и появляются как порты систем координат на твердотельном блоке, к которому они относятся. Рисунок показывает блок Brick Solid с двумя пользовательскими портами системы координат, маркированными F1 и F2.
Можно также создать системы координат с помощью блока Rigid Transform. Этот блок позволяет вам задать положение и ориентацию системы координат численно, с точки зрения преобразования вращения и перемещения. Можно использовать различные параметризации преобразования, включая матрицы вращения и последовательности вращения в случае преобразования вращения, и Декартовы и цилиндрические координаты смещения в случае преобразования перемещения. Рисунок показывает новую систему координат (F), созданную с помощью блока Rigid Transform из существующей твердотельной системы координат.
Системы координат, которые вы создаете, используя блоки Rigid Transform, не зависят от каких-либо конкретных твердых функций. Вы можете поместить их где угодно относительно другой системы координат, пока вы можете определить преобразование, необходимое для получения этого размещения. При размещении Rigid Transform блока между двумя портами системы координат можно более точно представить блок как средство смещения систем координат, которые уже существуют. Рисунок показывает смещение, заданное через блок Rigid Transform, расположенный между двумя существующими системами координат.
Для получения дополнительной информации о системах координат и преобразованиях см. Раздел «Работа с системами координат».
В командной строке MATLAB введите sm_cam_flapping_wing
. Откроется модель механизма наклонного крыла. Посмотрите внутрь маски подсистемы тела с именем RightWing
. Обратите внимание, что два твердых блоков, Peg
и WingLink
Каждый из них имеет два порта системы координат. Один из портов идентифицирует пользовательскую систему координат, созданный с помощью блока Cylindrical Solid. Исследуйте одну из пользовательских систем координат:
Откройте диалоговое окно блока Cylindrical Solid с именем Peg
.
На панели инструментов визуализации нажмите кнопку системы координат. Визуализация панели обновляется, чтобы показать ссылку и пользовательские системы координат тела.
В Properties разделе диалогового окна разверните узел Frames и нажмите кнопку Edit. Откроется интерфейс создания системы координат с текущим определением системы координат:
Начало системы координат размещено в центре нижней поверхности цилиндра.
Оси системы координат были оставлены в соответствии с осями локальной системы координат.
Имя системы координат совпадает с меткой соответствующего порта системы координат (B).
Обратите внимание, что линии связи между некоторыми твердыми блоками содержат Rigid Transform блока с именем CPXform
и WingXForm
. Эти блоки задают вращательное и поступательное смещения между твердыми системами координат, которые они соединяют. Исследуйте преобразования, заданные в одном из блоков:
Откройте диалоговое окно блока Rigid Transform с именем WingXForm
. Обратите внимание, что преобразование поворота задается путем выравнивания двух осей последующей системы координат относительно двух осей базовой системы координат.
Разверните параметры Translation. Обратите внимание, что поступательное смещение задано вдоль оси (базовой системы координат). Поступательное смещение параметризовано в терминах переменного MATLAB, Ow
, значение которого вы задаете в WingLink
блок подсистемы.
Обновите блок. В Mechanics Explorer откроется статическая визуализация модели крыла с наклонами. На панели древовидного представления разверните RightWing
Узел и нажатие кнопки WingXForm
узел для подсветки систем координат, принадлежащих блоку Rigid Transform.
Необходимо учитывать цель системы координат соединений - конкретное соединение или ограничение - при определении ее размещения на теле. Соединения и ограничения часто накладывают особые требования к сборке на системы координат, которые они соединяют. Эти требования влияют на правильное размещение системы координат. Их можно найти на странице с описанием шарнира или блока ограничений.
Если целью является соединение, примите к сведению его степени свободы - типы движения, допустимые между системами координат соединения - и осей системы координат, которым они соответствуют. Например, блок Revolute Joint обеспечивает одну вращательную степень свободы вокруг общей z оси систем координат соединения на основании и последующих телах.
Чтобы соединить два тела через Revolute Joint блок, необходимо поместить их системы координат соединений так, чтобы их z оси совпали с требуемой осью вращения на соответствующем теле. Рисунок показывает пример: Housing
и RightWing
тела sm_cam_flapping_wing
модель с системами координат, правильно расположенными для блока Revolute Joint.
Если целью системы координат является ограничение, такое как характеристика зубчатых колес в mesh, обратите внимание на размещение соединительной системы координат, необходимое для сборки. Например, блок Common Gear Constraint требует, чтобы системы координат на основании и последующих телах были разнесены на расстояние, равное сумме их радиусов тангажа, когда тип сетки установлен на External
. Это также требует, чтобы z-оси были параллельными, и чтобы x - и y - оси одного были копланарными с осями другого.
Требования к сборке блоков ограничений определяют, как остальная часть модели должна хранить системы координат соединений, частично через определения тел и частично через другие соединения и ограничения, чтобы ограничение применялось без ошибок. Чтобы увидеть, как разместить системы координат на зубчатых телах для сборки через блоки ограничений зубчатых колес, см. Раздел «Сборка модели зубчатых колес».
Модели с обратной связью, такие как модели четырехзвенников и кривошипно-ползунковых механизмов, ограничены в положениях и ориентациях, которые могут иметь их составляющие тела. Если размещение системы координат соединения делает соединение или ограничение несовместимым с любым другим в цикле - то есть если успешное соединение требует другого пропуска - сборка прекращает работать.
Это имеет место в плоском четырехзвенном механизме, например, когда расстояние между системами координат соединений на любой одной ссылке превышает сумму эквивалентных расстояний в остальных ссылках - или когда ориентации систем координат соединений заставляют оси поворота соединений делать что-либо, кроме параллельного выравнивания.
Можно предотвратить многие ошибки сборки путем тщательного определения систем координат соединений на теле с учетом его будущих соединений. Рассмотрите как требования сборки, специфичные для шарнира или блока ограничений, так и кинематические ограничения, накладываемые оставшейся частью модели. В целом, если вы столкнулись с отказом сборки, необходимо:
Идентифицируйте несобранное соединение или ограничение. Используйте Simscape Multibody Model Report (Tools > Model Report в панели меню Mechanics Explorer).
Осмотрите соответствующие системы координат соединений. Чтобы визуализировать эти системы координат, используйте Mechanics Explorer. Щелкните имя несобранного соединения или ограничения на панели древовидного представления, чтобы подсветить его системы координат на панели визуализации. Сравните размещение этих систем координат с требованиями сборки соединения или ограничения.
Преобразуйте системы координат соединений, чтобы удовлетворить требования к соединению или сборке ограничений. Можно использовать блок Rigid Transform, чтобы применить необходимые преобразования вращения и перемещения. Если рамка соединения является пользовательской рамкой, принадлежащей твердому блоку, можно использовать этот блок для редактирования определения системы координат.
Пример, показывающий, как разрешить отказ сборки, вызванную неправильным размещением системы координат соединения, см. в разделе Поиск и устранение проблем с ошибкой сборки.