Maxim Andreev (engineerandreev) wrote,
Maxim Andreev
engineerandreev

О математическом моделировании и переворотах в сознании

В прошлом посте я писал про перевороты в сознании, которые продолжают меня преследовать в процессе работы. Для начала придётся рассказать немного о моей работе. То, чем я в основном занимаюсь, называется динамикой и регулированием гидропривода. Т.к. при проектировании гидропривода мусоровоза или самосвала редко возникает потребность в изучении динамических процессов, я занимаюсь преимущественно высокоточными следящими гидроприводами, т.е. предназначением которых является быстрое и точное перемещение в заданное положение под действием больших нагрузок.
Такие приводы применяются во многих отраслях промышленности (начиная станкостроением и заканчивая авиацией). Мне больше всего довелось работать с гидравликой мобильных машин, поэтому за пример для иллюстрации я возьму оттуда. Самый простой пример следящего гидропривода - это электрогидравлический усилитель руля. У меня в машине стоит электроусилитель руля (чему я очень рад), но на тех машинах, которыми я занимаюсь (с нагрузкой на ось больше 10 тонн) электроусилитель сложно себе представить из-за огромных размеров, поэтому там стоит именно гидроусилитель. Основная задача гидроусилителя - переложить работу по повороту огромного неповоротливого колеса с хилых мышц водителя на маленькие (в сравнении с размером колеса) гидроцилиндры. Водителю остаётся сообщить следящему гидроприводу требуемый угол поворота колеса посредством поворота "баранки", а всё остальное сделает система регулирования.
Проблема заключается в том, что прийти в заданное водителем положение колесо может множеством способов: может тащиться пол часа, может рвануть так, что оторвётся от машины, а может плавно и быстро повернуться. Для того, чтобы наверняка предсказать как же колесо будет поворачиваться, как раз и нужно изучить динамику и разработать систему автоматического регулирования этого гидропривода.


В идеале это делается следующим образом: исходя из известных законов физики, записываются уравнения, описывающие в динамике движение всех подвижных элементов гидропривода (составляется математическая модель). Далее по этим уравнениям в специальной программе (например - MATLAB Simulink, Simulation X, Adams, ну или для больных патриотизмом головного мозга - ПК МВТУ) эти уравнения превращаются в своего рода компьютерный симулятор разрабатываемого привода, с тем отличием, что поведение системы там описывается зачастую без графической визуализации, а посредством графиков зависимостей от времени. После того как этот симулятор готов, с ним можно играть сколько влезет. Можно придумывать разные регуляторы, смотреть как будут влиять на работу различные параметры и как привод будет реагировать на возмущения. После этого создаётся конструкция, при необходимости уточняется математическая модель, привод изготавливается и работает потом так же хорошо, как и отлаженная математическая модель.
Однако, жестокая реальность, как правило, разбивает этот стройный порядок вдребезги... В действительности после изготовления наиболее вероятно два исхода:
1) Если конструкция совсем новая и никем раньше не делалась, то чаще всего привод, который должен был блестяще работать, бьётся в конвульсиях/заклинивает/плюётся маслом из неожиданных мест/просто не шевелится.
2) Если конструкция известна и сто лет как работает, привод будет работать, но если начать сравнивать его работу с математической моделью, сходство будет примерно такое же, как между детским рисунком и картиной живописца.
В начале своей работы я был уверен, что математическая модель - это как раз картина живописца, а паршивая реальность - детский рисунок. Для меня не было сомнений, что если детально описать каждый маленький золотничок в системе, если учесть сжимаемость каждой капли масла в гидроприводе, то результатом расчёта математической модели будет не что иное, как истинное его поведение.
Примерно в таком состоянии я защитил свой диплом, в котором была математическая модель регулятора насоса, над которой я работал без малого пол года ещё до официального начала дипломного проектирования. Для того, чтобы разочароваться в её точности мне понадобилось значительно меньше времени - примерно пару летних месяцев возни со стендом для испытания этого насоса, в течение которого я 4-5 раз перебрал регулятор насоса с тем, чтобы понять почему он не работает. Каждый раз причина, казалось, была очевидна - засорение дросселя засохшим клеем (добавил в регулятор фильтр из медной сетки), малая площадь этих дросселей (освоил электроэрозионную обработку, чтобы увеличить количество дросселей), заклинивание механизма (это была просто бредовая идея, которая никак не подтвердилась). В итоге выяснилось, что причина всему - промявшийся фторопластовый башмак из-за которого золотник находился в неправильном начальном положении. Прокладка в 0,1 мм решила эту проблему и регулятор заработал.

Переворот в сознании №1: Доскональное знание работы любого устройства на уровне математической модели не поможет разобраться в поломке реального устройства. Как для того, чтобы научиться плавать, нужно залезть в воду, так же и для того, чтобы считать себя экспертом в области железок, нужно с этими железками напрямую общаться.

Но дальше меня сразу же ждал второй переворот в сознании. В эксперименте ничего похожего на мою математическую модель не было и близко. Внезапно выянилось, что все крохи (вроде сжимаемости жидкости), которые я в ней учёл, не оказывают никакого влияния, зато влияют вещи о которых я и подумать не мог. Так выяснилось, что повышенное трение приводит не к уменьшению колебательности (как я привык считать), а наоборот - к увеличению колебательности, в случае если оно имеет место в обратной связи. Переписав всю математическую модель с нуля, удалось достигнуть более правдивых результатов, при том, что модель считалась на порядок быстрее, чем старая с гораздо большим количеством учтённых факторов.

Переворот в сознании №2: В любых расчётах сначала нужно чётко определиться с тем, что действительно влияет на процессы, а чем можно и нужно пренебречь.

Конечно же, на этом все сюрпризы не закончились и последний переворот в сознании случился совсем недавно и связан с волновыми процессами в трубопроводах. За 4-5 лет своей деятельности в области математического моделирования гидроприводов я не ощущал дискомфорта от пробела в образовании в части волновных процессов. Конечно же, я имел представление о том, что давление в системе возникает не внезапно, а изменяется со скоростью звука в среде, знал что такое гидроудар и даже мог вывести формулу Жуковского. Этого представления мне вполне хватало, и я не заморачивался с освоением методов учёта волновых процессов, т.к. всем известно, что уравнения в распределённых параметрах для жидкости по-человечески не решаются.
Но несколько месяцев назад стало понятно, что настало время встряхнуться и освоить всё-таки новый для меня метод моделирования трубопроводов. Выяснилось, что существуют такие кривые, вдоль которых дурацкие уравнения в частных производных превращаются в родные и понятные обыкновенные дифференциальные уравнения. После этого нужно всего-то решить эти обыкновенные дифференциальные уравнения вдоль кривых (которые ещё называются характеристиками) и найденное решение превратить в решение исходного уравнения.
Не знаю как у вас, но у меня взрывался мозг при каждой попытке вникнуть в это описание. Несколько раз я расписывался для себя в том, что это и есть потолок моего понимания в математическом моделировании. Задача осложнялась ещё и тем, что попутно приходилось разбираться в незнакомых мне функциях MATLAB'а. Но в конечном итоге всё оказалось предельно просто и сейчас мне уже даже немного стыдно, что я сразу не мог всё это переварить. Ну и результат стоил того, т.к. он принёс ожидаемый переворот в сознании.
У одного из наших заказчиков была проблема - при довольно быстром открытии распределителей у них вышибало манжету из-за того, что в сливной линии возникало большое давление. По предварительным расчётам этого никак быть не могло, а в так называемый гидроудар я особо не верил, т.к. за время открытия распределителя волна должна была успеть пробежать туда-обратно не один раз. Не верил, пока не замоделировал это недавно освоенным методом.
На гифке внизу моделируется процесс опускания груза массой 10 тонн на гидроцилиндре, соединённым с баком трубопроводом длиной 40 м. По расчётам давление в этой трубе не должно превышать пары атмосфер. На самой гифке показаны распределения давлений (вверху) и скоростей (внизу) по длине трубы.

[Большая гифка раз]
Видно, что в самом начале давление в левом конце трубы подскакивает до значения примерно в 5 раз больше расчётного.

А вот что будет, если немного скорректировать траекторию открытия золотника без увеличения времени его открытия:

[Большая гифка два]
Как видно, без существенныз переделок, просто немного перепрограммировав микроконтроллер, можно избавиться от больших проблем.

Ну а главный вывод - никогда не нужно лениться осваивать новые методы, особенно в те моменты, когда тебе кажется, что уже всё освоено.
Tags: МГТУ им. Н.Э. Баумана, математические модели, переворот в сознании
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 12 comments