Пример моделирования и синтеза управления для простого механизма

Рассмотрим пример использования связки SimMechanics и SolidWorks для построения модели механизма и синтеза управления. Для этого вычертим в SolidWorks его условную модель. Не будем подробно останавливаться на создании деталей и сборки в SolidWorks, полагая, что этот процесс известен и документирован.

Перевернутый маятник состоит из трех элементов:

  • • основания (деталь Му Base) - рисунок 2.35,
  • • подвижной каретки (деталь MyPrism), которая движется поступательно относительно основания (для простоты мы не будем вычерчивать ролики, каретка будет просто скользить без трения) - рисунок 2.36,
  • • закрепленного на каретке маятника (деталь MyStick), который может совершать круговые движения - рисунок 2.37,

Основание маятника

Рисунок 2.35. Основание маятника.

Подвижная каретка маятника

Рисунок 2.36. Подвижная каретка маятника.

Собственно маятник

Рисунок 2.37. Собственно маятник.

Сборка этих элементов выглядит как показано на рисунке 2.38.

Для связности деталей в сборку введены 4 сопряжения: концентрическое и совпадение для соединения каретки и маятника, а также два совпадения для связи каретки и основания.

Для того, чтобы экспортировать сборку SolidWorks в модель SimMechanics необходимо:

  • - установить SimMechanics Link,
  • - активировать SimMechanics Link в SolidWorks,
  • - сохранить сборку в .xml файле,
  • - импортировать .xml файл в SimMechanics

Рассмотрим этот процесс более подробно.

Перевернутый маятник в сборе в САПР SolidWorks

Рисунок 2.38. Перевернутый маятник в сборе в САПР SolidWorks.

Средство SimMechanics Link не входит в стандартную поставку MATLAB, поэтому его необходимо скачать на сайте Mathworks [16]. Ссылки для скачивания доступны после регистрации на сайте. Также необходимо выбрать версию SimMechanics Link согласно версии установленного MATLAB.

После скачивания .zip архива и файла install_addon.m, необходимо положить их вместе в одной папке, и сделать ее в MATLAB текущей (выбрать как Current Folder в главном окне). После этого необходимо ввести в консоли команду:

install_addon(’имя_скачанного_архива.zip’)

В результате, после установки, будут выведены сообщения об успешной установке SimMechanics Link.

Для запуска SimMechanics Link необходимо в MATLAB-e ввести команду:

smlink_linksw

В результате будет запущена фоновая программа, осуществляющая связь MATLAB и SolidWorks.

После необходимо запустить SolidWorks и выбрать в меню Tools / Add-Ins (в русской версии - Инструменты/Добавления...) и далее в списке поставить две галочки, где SimMechanics Link.

Для экспорта модели из SolidWorks используется два типа файлов: .XML и .STL, которые сохраняются совместно из SolidWorks, если вызвать в меню: File/Save as... (в русской версии Файл / Сохранить как...) и выбрать Тип файла: SimMechanics Link (*.xml). В файле .XML сохраняется информации собственно о сборке (расположение и связи деталей), в .STL - информация о каждой детали.

Для импорта сборки SolidWorks из .xml-файла в SimMechanics необходимо сделать папку с .xml и .stl-файлами текущей в MATLAB- е (выбрать как Current Folder в главном окне) и выполнить в командном окне MATLAB:

mech_import(9имя_файла_хш1_без_расширения’)

В результате будет автоматически создана модель в Simulink из элементов библиотеки SimMechanics (рисунок 2.39).

Модель маятника после импорта в Simulink

Рисунок 2.39. Модель маятника после импорта в Simulink.

Запустим моделирование в Simulink и убедимся, что система работает адекватно. При открытии модели автоматически появится окно трехмерной визуализации, в которой модель будет выглядеть так же, как и в SolidWorks (рисунок 2.40).

Окно анимации механизма в Simulink (SimMechanics)

Рисунок 2.40. Окно анимации механизма в Simulink (SimMechanics).

Для наблюдения за состоянием вращательной степени свободы, установим в компоненте Revolute параметр Number of sensor / actuator ports в 1 и подключим к информационному порту осциллограф через компонент Joint Sensor.

Особенность в том, что выходной угол компонента Joint Sensor ограничен интервалом [-180, 180] градусов, что приводит к разрывной кривой на осциллографе (рисунок 2.41).

Для устранения этого эффекта необходимо использовать блок Continuous Angle из библиотеки SimMechanics/Utilities. Этот блок превращает угловые координаты из интервала [-180, 180] в координаты неограниченного диапазона. Для работы блока необходимо также значения угловой скорости, для этого выберем в параметрах Joint Sensor Angular velocity и снимем Output selected parameters as one signal. Соберем схему измерений как показано на рисунке 2.42.

Угловая координата маятника с выхода компонента

Рисунок 2.41. Угловая координата маятника с выхода компонента

Joint Sensor.

Схема измерения угловой координаты

Рисунок 2.42. Схема измерения угловой координаты.

В результате на осциллографе имеем непрерывную кривую изменения угловой координаты маятника (рисунок 2.43).

Корректное отображение угловой координаты

Рисунок 2.43. Корректное отображение угловой координаты

маятника.

Решим задачу стабилизации положения маятника в точке начального положения.

Следует заметить, что все компоненты актуаторов и датчиков в SimMechanics работают с относительными координатами, и нулевые значения координат соответствуют положениям, как это было изображено на чертеже. Поэтому добиваясь стабилизации маятника около угловой координаты 0 по Joint Sensor - мы стабилизируем его состояние в наклоненном виде в соответствии с чертежом.

Также заметим, что маятник - это система с отрицательным коэффициентом усиления: приложение силы в положительном направлении приводит к опрокидыванию маятника назад. Поэтому ПИД- регулятор должен быть включен просто между сенсором и актуатором как показано на рисунке 2.44.

Включение ПИД-регулятора для стабилизации

Рисунок 2.44. Включение ПИД-регулятора для стабилизации

положения маятника.

Очевидно, что чтобы держать маятник в наклоненном положении, ПИД-регулятор должен толкать каретку в ту сторону, в которую он наклонен. Мы не рассматриваем процесс настройки ПИД- регулятора, просто введем коэффициенты Proportional: 10; Integral: 0; Derivative: 0.

Результат моделирования системы с замкнутой

Рисунок 2.45. Результат моделирования системы с замкнутой

обратной связью.

В результате получаем стабилизацию положения около нуля, что подтверждает результат моделирования системы (рисунок 2.45).

Рассмотрев процесс видео-анимации, которое доступно в SimMechanics, можно заметить, что маятник плавно движется в сторону по каретке под действием ПИД-ругелятора, что обуславливается его управляющими воздействиями.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >