Этот пример иллюстрирует использование глобальных координат в моделях Simulink ® 3D Animation™. Глобальные координаты могут использоваться в модели многими способами для отслеживания и манипуляции с объектами, простого обнаружения столкновения, симуляции гаптических эффектов и т.д.
Глобальные координаты объектов в виртуальном мире доступны через Исходный блок VR. Для каждого Преобразования в сцене в древовидном виде в диалоговом окне Parameters блока VR Source отображается также Extensions
ветвь. Там можно выбрать translation_abs
и rotation_abs
поля. Пока поля без _abs
суффиксный вход в локальные координаты объекта модели Simulink ® (относительно их родительских объектов в иерархии модели), поля с этим суффиксом содержат глобальные координаты объекта.
Модель VRML представляет собой манипулятор с ядерной горячей ёмкостью. Задачей манипулятора является перемещение нагрузки с одной серой цилиндрической платформы на другую. Траектория для конечного эффектора манипулятора предопределена с помощью Редактор. Каждая часть рычага манипулятора независимо приводится в действие с помощью разложенных компонентов траектории, с помощью блоков VR Expander (см. VR Transformations
подсистема).
Исходный блок VR слева захватывает глобальные координаты всех объектов, важных для манипуляции нагрузкой - контрольную точку захвата манипулятора (центр зажима), контрольную точку назначения и начальное положение нагрузки. В то время как координаты нагрузки и назначения могут быть легко считаны в глобальном координатном пространстве в любом случае, положение захвата манипулятора является результатом комплексного перемещения частей рычага манипулятора, которые образуют иерархическую структуру. Вычисление глобальных координат для таких объектов, затронутых иерархическими отношениями в сцене, в целом очень сложно, Simulink 3D Animation предоставляет простой способ чтения их в модель Simulink.
Как только глобальные координаты всех важных объектов известны, легко реализовать простую логику управления манипулятором. Первый синий датчик близости обнаруживает, когда манипулятор приходит в начальное положение нагрузки. Выходные изменения датчика на true
, что приводит к следующему:
Голубая Подсистема Управления Нагрузкой включена. С этого момента положение и поворот рукоятки манипулятора записываются обратно в виртуальный мир в соответствующие поля объекта нагрузки, используя дополнительный блок VR Sink. Нагрузка начинает следовать за контрольной точкой ручки.
Зажим манипулятора зацеплен (пальцы закрываются).
Траектория End-effector, созданная блоком VR Tracer, изменяется с зеленого на красный.
Когда нагрузка приходит в пункт назначения, активируется второй синий датчик близости, который возвращает все три состояния выше - положение нагрузки становится независимым от захвата, зажим манипулятора освобождается и траектория захвата в положение холостого хода рисуется зеленым цветом.
Оба датчика подают блок S-R type Flip-Flop, который реализует необходимую логику сброса набора.