Результат - в отсутствии кинематического воздействия дороги система не колеблется, т.е. все перемещения (углы поворота) и скорость их изменения равны нулю.
Тест № 2: задаем очень
большую жесткость для пружин, соединяющих массы М1 с М2 и М1 с М3
)
и задаем линейное перемещение массы М1 q1=2.
Результат: массы оказались «связанными», их колебания почти идентичны.
Тест № 3: разрываем
связь между корпусом и массой М2 (k3=c3=0).
Результат - т.к. масса М2 получает кинематическое воздействие дороги через корпус, то разорвав связь между корпусом и массой М2, мы получаем отсутствие колебаний (поворотов) массы М2.
Тест № 4: добавляем
демпферы.
Результат - наблюдаем угасание колебаний.
Тест № 5: разрываем
связь между корпусом и массой М2 и М4 (k3=c3=k5=c5=0), принимаем функции дороги
,
.
Результат - т.к. масса
М3 находится посередине рамы и получает кинематическое воздействие дороги через
корпус, то образовав связь между корпусом и массой М3, мы получаем только
наличие поворотов рамы.
4. ОПТИМИЗАЦИЯ НА ОСНОВЕ
ПАРАМЕТРОВ K3, L6
.1 Разработка программы
для решения системы ОДУ в канонической форме Коши средствами MathCAD, на основе
предложенного алгоритма
Для решения системы ОДУ
в каноническом виде Коши используем метод Рунге-Кутта 4-го порядка. Приращение
переменной можно выразить по следующей формуле:
,
где:
Тогда программная
реализация данного метода будет иметь вид:
В результате вычислений
и всех тестов, получается полное совпадение результатов с результатами,
полученными при помощи встроенной функции Rkadapt (Приложение 1).
.2 Изучение встроенной
процедуры оптимизации в MathCAD
Являясь мощным пакетом для различных математических вычислений, MathCAD включает в себя множество функций. Одной из таких функций является функция Minimize.
Данная функция предназначена для поиска такого значения независимой перемененной, при котором значение функции будет минимально. Опишем синтаксис данной функции.
Перед началом блока
оптимизации пишется ключевое слово Given, которое позволяет определить пакету
MathCAD, где начинается блок минимизации. После ключевого слова Given
перечисляются переменные с указанием граничных условий. По этим переменным
MathCAD и будет искать минимальное значение функции. Например, следующая запись
(
)
означает, что MathCAD будет искать минимальное значение функции, изменяя
параметр
.
После перечисления переменных следует вызов функции Minimize. Синтаксис у
функции следующий:
(<имя_функции>,<параметр1>,<…>,<параметрn>),
где - <имя_функции> - имя той функции, минимальное значение которой необходимо найти, <параметр1>…<параметрn> - список параметров, по которым функция Minimize будет искать минимум.
Необходимо заметить, что количество параметров и их порядок следования должен быть таким же, как и в функции, минимальное значение которой мы ищем.
Так же необходимо отметить, что чем больше входных параметров у функции Minimize, тем большее количество времени занимает поиск минимального значения. Отсюда следует вывод - количество входных параметров у функции Minimize (как было замечено выше, и у минимизированной функции тоже) должно быть минимально.
Функция Minimize
возвращает матрицу-столбец с перечислением оптимальных параметров.
.3 Подготовка модели в
виде пригодном к использованию функцией Minimize
Однако, мы не можем использовать для минимизации непосредственно функцию вычисления ускорения, т.к. значение ускорения многократно уходит в отрицательную область, а значения функции должны быть неотрицательными. Поэтому для минимизации будем использовать функцию нахождения среднего квадрата ускорения. Эта функция имеет два входных параметра k3 и l6. Возвращает эта функция одно число - средний квадрат ускорений. (Приложение 2).
Имея функцию для
вычисления среднего квадрата ускорения можно приступать к оптимизационным
вычислениям.
.4 Выполнение
оптимизационных вычислений
Опишем блок минимизации:
где, Given - ключевое слово, указывающее пакету MathCAD начало блока минимизации, 0<=k3<=5, 0<=l6<=3 - ограничение на изменение входных параметров, Opt:=Minimize(USKOR,k3,l6) - вызов функции минимизации, USKOR - имя функции, используемой для вычисления среднего квадрата ускорения (разброса ускорений).
Просчитав возможные
варианты и выбрав тот, при котором разброс ускорений имеет минимальное
значение, функция Minimize вернёт нам следующую матрицу-столбец:
.5 Построение на одном
графике вертикального перемещения верхней массы для исходных и найденных
оптимизированных параметров
Для сравнения ускорения
при исходных и найденных оптимизированных параметрах построим их графики:
Как видно из рисунка,
хотя оптимизированное перемещение меньше исходного,- оптимизация была
произведена успешно.
5. РЕАЛИЗАЦИЯ В ПАКЕТЕ
MATLAB
Все приведенные в данной
работе тесты были также реализованы в среде MATLAB и имели успех. Итоговое
значение (графики) реализации в двух различных средах оказалось полностью
идентичным. Некоторые результаты тестов приведены ниже (в сравнении с пакетом
MathCAD). Саму реализацию можно увидеть в Приложении 3 данной работы.
Тест № 1: Тест № 2:
Тест № 3: Тест № 4:
Тест № 5:
ЗАКЛЮЧЕНИЕ
Таким образом, при выполнении работы получены следующие результаты:
Получены уравнения, описывающие колебания многоопорной машины при кинематических воздействиях со стороны дороги;
Выполнено тестирование полученных уравнений на многочисленных примерах;
Построена оптимизационная модель, ориентированная на среду MATHCAD;
Получили структурную
схему для решения системы ОДУ в среде MATLAB.
ПРИЛОЖЕНИЕ 1
ПРИЛОЖЕНИЕ 2
ПРИЛОЖЕНИЕ 3
модель колебательный мобильный транспортный