Авторы: Котов А.В.
После того как я вооружился несколькими оптимизационными алгоритмами (о чем я рассказывал в первой части), я приступил к непосредственному изучению предметной области. Начал, естественно, с классики – монументального труда Артоболевского И.И. «Синтез плоских механизмов» (М., 1959). Затем перешел к современным научным работам.

Рисунок из открытых источников
В результате я увидел, что в зависимости от задачи, решение идет по разным направлениям: кинематический синтез, динамический синтез и другие. Задач оказалось очень много, охватить все не представлялось возможным. Поэтому я решил начать с малого – с кинематического синтеза.
🎯 Постановка задачи
Из всего многообразия задач меня заинтересовал класс задач о воспроизведении заданной траектории какой-либо точки выходного звена механизма.
Алгоритм решения таких задач выглядит довольно просто: описывается кинематика механизма; определяется траектория для интересующей точки; она сравнивается с заданной траекторией; в качестве целевой функции принимается отклонение этих траекторий; задача решается численно с помощью оптимизационного алгоритма за счет изменения длин звеньев и координат опор.
Таких задач оказалось достаточно много, что говорит о высоком научном интересе к ним. Подходы к решению различаются и связаны с вычислением функциональной зависимости между расчетной и заданной траекториями. Я изучил материал и начал размышлять, что можно предложить нового в этом направлении.
💡 Источник вдохновения
Параллельно я изучал другие темы, в частности, решение задачи кинематики для рычажных механизмов сложной структуры. В таких механизмах кинематическая задача не является тривиальной. И одним из эффективных методов ее решения является метод замены ведущего звена (встречаются и другие названия – метод обращения, инверсии и т.п.).

Рисунок из открытых источников
Суть метода проста: описание кинематики ведут не с ведущего звена, а с ведомого, что позволяет описать механизм классическими методами для механизмов II-го класса.
И тут мне неожиданно пришла идея: а что если аналогичный подход применить к синтезу плоских рычажных механизмов?
🧠 Суть метода обратного кинематического синтеза
В предложенном мной методе мы идем от обратного. Заданную траекторию точки берем за основу и начинаем описание кинематики именно с нее. Мои методы преобразования координат в неизменном базисе (как с помощью векторных величин, так и с помощью комплексных чисел) прекрасно справились с этой задачей.
Что выбрать в качестве целевой функции? Все оказалось просто. При описании кинематики от заданной траектории, процесс завершается каким-либо замыкающим звеном. Так вот, минимизация среднеквадратического отклонения (СКО) длины этого звена для всех положений точек заданной траектории и стала моей целевой функцией. Чем ближе это значение к нулю, тем постояннее длина замыкающего звена, а значит, тем точнее воспроизводится траектория.
Этому методу я дал соответствующее название – «Метод обратного кинематического синтеза».
В чем же его преимущества?
1. Простота целевой функции. Нет необходимости придумывать сложные алгоритмы для сравнения двух траекторий (расчетной и заданной), что отнимает много времени и ресурсов. В качестве целевой функции однозначно выступает простая величина – СКО замыкающего звена. В роли такого звена может выступать любой элемент механизма, удобный при обратном описании кинематики.
2. Гибкость. Целевая функция отлично работает с дополнительными функциональными ограничениями, наложенными как на геометрические параметры (длины звеньев, координаты опор, углы), так и со штрафными функциями, которые могут учитывать кинематические и даже силовые параметры.
3. Универсальность. Метод эффективно работает с обеими моими математическими моделями – и с векторными величинами, и с комплексными числами.
🔬 Тестирование и результаты
Первые же тесты на простейших рычажных механизмах показали высокую эффективность и сходимость метода.
В качестве алгоритмов оптимизации я использовал весь свой доступный арсенал (метод Нелдера-Мида, модифицированный генетический алгоритм, встроенные функции PTC MathCAD). Все алгоритмы при необходимых доработках выдавали близкий результат. Однако, как и в прошлый раз, по скорости и точности лучше всех себя показала встроенная функция minimize(). Остальные алгоритмы я использовал в качестве контрольных инструментов.

Рисунок из открытых источников
Важный нюанс: после того как найдены оптимальные длины звеньев, обязательно выполняется окончательный расчет кинематики механизма в прямом порядке – начиная от ведущего звена к выходному. После этого накладывается итоговая расчетная траектория на заданную. Качественную оценку отклонения можно проводить графически, а количественную – путем расчета относительной и абсолютной погрешности.
📄 Научная новизна
Предложенный метод обратного кинематического синтеза получился достаточно новым, оригинальным, наглядным и доступным. Аналоги которого мне не встречались ни в отечественной, ни в зарубежной научной литературе (по крайней мере, за последний год я ни разу не наткнулся на что-либо похожее).
Все мои измышления и исследования в этом направлении вылились в написание одноименной научной работы «Метод обратного кинематического синтеза плоского рычажного механизма». Выход работы, надеюсь, состоится уже летом этого года.
📚 Где ознакомиться
Ознакомиться с работой заранее можно уже сейчас – она выложена на сервисе Preprints.ru в свободном доступе по следующей ссылке:
🔗 Метод обратного кинематического синтеза плоского рычажного механизма
Изучайте, критикуйте, задавайте вопросы!
Ведь, как известно, истина рождается в споре 🧐.
Любое цитирование текста, использование тезисов или иллюстраций из данной статьи допускается только с указанием обязательной ссылки на первоисточник. Пожалуйста, уважайте авторские права и интеллектуальную собственность.
Комментариев нет:
Отправить комментарий