Расчет характеристик многоступенчатого койлгана, работающего по принципу "бегущего поля".
Данная работа была проделана по просьбе Dantist'a, занимающегося созданием ускорителя DD11. Этот интересный проект подробно описан в соответствующей ветке форума "Оружие будущего". Особенностью DD11 является его функционирование в режиме "бегущего поля", то есть создание с помощью цепочки плоских близко расположенных катушек области градиента магнитного поля, движущегося по стволу ускорителя вместе со снарядом. Таким образом должно быть достигнуто постоянное нахождение ускоряемого тела в области максимальной воздействующей силы. Этим данная схема выгодно отличается от обычных конфигураций койлганов с длинными катушками, где снаряд периодически попадает в зоны ускоряющей и тормозящей сил (подробнее можно посмотреть например здесь). Кроме того, автор намерен реализовать подключение ступеней своего ускорителя по схеме "косого полумоста", которая за счет возврата части энергии в питающую емкость (рекуперации) имеет повышенный КПД (некоторые численные оценки приведены мной здесь).
На рис. 1. приведены геометрические характеристики системы, включая форму магнитопровода, снаряда и собственно ускоряющих катушек. Как видно, последние имеют плоскую "блиноподобную" форму, которая обладает повышенной эффективностью при рекуперации.
Рис. 1. Геометрические параметры койлгана DD11. |
Однако при попытке математического моделирования этой конструкции возникла проблема.
Дело в том, что практически все существующие скрипты на основе FEMM, которые сейчас используются гауссостроителями, позволяют моделировать воздействие на снаряд только одной катушки одновременно. Но сама суть реализации алгоритма "бегущего поля" состоит в единовременной работе нескольких (конкретно для DD11 - трех) ступеней. Наличие снаряда сложной формы и магнитопровода вносит дополнительные затруднения.
В итоге довольно кропотливой работы мной был написан скрипт, позволяющий реализовать моделирование этой системы. За основу был взят старый скрипт для многоступенчатой тиристорной системы с сайта Петровича и полностью переработан (проведена адаптация программы под использование запираемых силовых ключей, скорректирована зависимость B(H) для железа и алгоритм вычисления индуктивности, удалены величины второго порядка малости из дифференциальных вычислений и т.д.).
Итоговый скрипт позволяет рассчитывать систему с любым количеством одинаковых ступеней и формой магнитопровода и снаряда, соответствующими использованным в проекте Dantista. На рис. 2 показан скриншот работы FEMM для 4-ступенчатого ускорителя и результат расчета для 8 ступеней.
Start of simulation 05/25/18 12:04:18 Capacitance, microFarad = 1100 Capacitor resistance Rcc, Ohms = 0.107 Initial Voltage, Volts = 900 External resistance, Ohms = 0.167 Coil resistance, Ohms = 1.19140875 Number of turns = 151.29 Wire diameter, mm = 0.4 Total wire length, meters = 8.55524794586427 Coil length, mm = 6 Outer coil diameter, mm = 24 Number of coils = 8 Coil1 Inductance with projectile in start position, microHenry = 554.7680773168279 Coil2 Inductance with projectile in start position, microHenry = 573.2230165134845 Coil3 Inductance with projectile in start position, microHenry = 575.4581217269606 Coil4 Inductance with projectile in start position, microHenry = 576.4467974758734 Coil5 Inductance with projectile in start position, microHenry = 576.1513718168307 Coil6 Inductance with projectile in start position, microHenry = 575.301429590138 Coil7 Inductance with projectile in start position, microHenry = 571.1674678841667 Coil8 Inductance with projectile in start position, microHenry = 544.7686535787516 Thickness of the core ends, mm = 2 Thickness of the external core tube , mm = 3 Inner coil diameter, mm = 12 Head mass, grams = 10.05404211087609 Head length, mm = 14 Head diameter, mm = 10.8 Cone length, mm = 3 Cone diameter, mm = 5 Tail 1 length, mm = 2.5 Tail 1 diameter, mm = 4 Tail 2 length, mm = 2.5 Tail 2 diameter, mm = 7 Start projectile position in coil, mm = 2 Total time, microsec = 3670.000000000009 Time step, microsec =10 Muzzle energy, J = 13.85657622572239 Capacitor energy stored, J0 = 445.5 Capacitor energy wasted, J = 69.49520089948786 Efficiency (percent) = 19.93889656605698 Initial projectile velocity, m/s = 2 Out projectile velocity, m/s = 50.56932268545591 Maximal projectile velocity, (in coil), m/s = 50.57523762196579 End of simulation at 05/25/18 13:33:09 |
Рис.2. Скриншот работы модели 4-ступенчатого койлгана (слева) и краткий результат расчета для 8-ступенчатой системы (справа).
Полный файл отчета с формами тока в каждой ступени, зависимости координаты снаряда и действующей на него силы от времени и т.д. приведен здесь.Текст скрипта будет мной выложен ниже после получения экспериментальных данных, позволяющих окончательно его верифицировать.
Замечания:
1) Созданный скрипт является первым приближением, т. к. при расчете разгоняющей силы учитываются токи через все действующие катушки, однако э.д.с. связанная с взаимной индуктивностью катушек не принимается во внимание. То есть учитывается совместное действие нескольких катушек на снаряд, но не на друг друга. В случае DD11, где катушки достаточно удалены друг от друга, а магнитопровод насыщен из-за большой силы тока, влияние взаимных индуктивностей вряд ли приведет к существенной ошибке ( я думаю не более 10 % при определении тока). Но для точного описания таких систем (особенно при малых токах) скрипт надо будет дополнять. Причем усложнение будет значительное, и как оно скажется на скорости расчетов пока непонятно (см. ниже).
2) При разработке скрипта мной были проведены дополнительные исследования, связанные с желанием ускорить его работу при сохранении приемлемой точности результатов. Дело в том, что традиционный способ ускорения работы программы - увеличение шага по времени dt - в данном случае не подходит, поскольку, помимо собственно движения снаряда (которое в первых ступенях действительно медленное и могло бы позволить увеличение dt), скрипт должен моделировать формы тока в катушках, которые меняются с большой скоростью и независимо от положения снаряда в стволе (т. к. все ступени одинаковые). Поэтому значение dt в данном случае ограничено величиной 5..10 мкс.
По изложенным причинам ускорение работы программы достигалось изменением алгоритма вычисления индуктивности катушек (которое занимает максимальное количество ресурсов процессора). Для конкретизации того, о чем здесь говорится, запишем уравнение Кирхгофа для одной из ступеней койлгана:
U = i·R + L·(di/dt) + i·(dL/dt) (1)
Здесь в явном виде записана индуктивная э.д.с., зависящая как от производной тока во времени, так и от производной индуктивности (заметим, что обычно ограничиваются только первым слагаемым). Э.д.с. U , стоящая в этом уравнении слева, равна напряжению источника питания, подключенного к катушке (она положительна, когда источник подключен в прямой полярности, и отрицательна, когда полумост переключается в режим рекуперации и ток начинает "втекать" в емкость).
Поскольку индуктивность L = L(i,x) зависит как от положения снаряда x, так и от тока в катушке (т.к. мы имеем нелинейно намагничиваемую среду с магнитопроводом), то производная индуктивности во времени может быть записана как
dL/dt = (dL/dx)(dx/dt) + (dL/di)(di/dt) = v·(dL/dx) + (dL/di)(di/dt) (2)
Здесь v - скорость снаряда.
Подставляя (2) в (1), можно получить уравнение относительно di, которое позволяет вычислить ток на каждом шаге симуляции - так и работает базовый алгоритм, заложенной в существующие скрипты FEMM. Но из вида уравнений (1) и (2) понятно, что, вообще говоря, существует 4 пути, позволяющие провести такие вычисления:
- с учетом всех слагаемых (частных производных индуктивности по току и координате);
- с учетом только одного из членов в уравнении (2) (в подавляющем большинстве скриптов, выложенных, например, на соответствующей ветке форума Арсенала, учитывается производная dL/dx);
- без учета вклада в э.д.с. обоих членов в уравнении (2), лишь вычисляя точное значение индуктивности на каждом шаге моделирования для подстановки в (1);
- вообще без учета изменения индуктивности во времени (т. е. индуктивности катушек считаются постоянными и равными начальным значениям, вычисляемым при старте работы программы).
Ясно, что трудоемкость (а, следовательно, и длительность) вычислений по этим алгоритмам будет совершенно различной (а именно, уменьшаться в порядке перечисления). Я провел сравнительный анализ скорости вычислений для 4-ступенчатой системы для всех перечисленных вариантов. На рис. 3. показано то, что получилось в результате.
Рис. 3. Результаты моделирования 4-ступенчатой системы койлгана "бегущей волны" по различным алгоритмам.
Расчет проводился на обычной офисной машине средней мощности (Intel(R) Core(TM) i3-2100 CPU 3,1 GHz, 4 GB ОЗУ). Как видно, наилучшее приближение к точному результату (за который принимается результат вычисления по первому алгоритму) обеспечивается общепринятым методом, не учитывающим производную индуктивности по току. Правда, и экономия машинных ресурсов при этом минимальна. К моему удивлению, вычисление по максимально упрощенному способу, вообще не учитывающему изменение индуктивности катушек за время выстрела, дает неплохую точность, при этом скорость расчетов увеличивается почти шестикратно! Это говорит о том, что такой метод можно использовать для предварительных вычислений, особенно в случае систем с большими напряженностями полей (где все ферромагнитные части должны быть глубоко насыщены).
Наконец, можно отметить, что наиболее точный способ расчетов дает самое минимальное КПД и выходную скорость снаряда. При этом обсчет довольно простой 4-ступенчатой системы с шагом времени 10 мкс занял более получаса, а 8-ступенчатой - полтора часа (см. выше). При внесении в скрипт модификаций, учитывающих взаимную индуктивность катушек, следует ожидать еще более значительного снижения скорости расчетов - эту проблему нужно будет как-то решать в дальнейшем.