行波加速的特点在于
1、 线圈沿轴向的方向更短,密度更高
2、 同时存在多个线圈同时处于通电状态
行波加速的优点主要在于全程可以维持一个较高的磁场梯度,加速效率高(也就是说动子的加速度大,可以在更短的距离加速到更高的速度),能量效率高。而由于行波加速中,线圈同时通电和线圈密度较高的特性,使得行波加速中,线圈与线圈之间的磁耦合不能忽略,这使得以往的仿真工具并不完全能适用于行波加速。
本文提出了一种行波加速仿真的工作流,对优化行波加速器的设计具有一定指导意义
行波加速的典型结构如图所示。磁场随着动子移动,牵引动子加速。随着磁场向前移动,场能也向前转移。转移渠道有两条,一条是直接通过线圈间的磁耦合传输,另一条是通过导线转化为电能后传输。
能量传输的时序和方向由电路控制,这个电路至少要具备以下功能
1、 从电源总线取能量给线圈充电
2、 将线圈能量反馈给电源总线
一个典型的电路设计如图所示
本仿真最重要的几条近似如下:
1、 磁饱和近似,即动子处于磁饱和状态,磁化强度在整个加速过程中保持不变。
2、 绝缘动子假定,即由于磁场变化在动子中产生的涡流忽略不计
3、 线圈性质时不变假定:忽略线圈导线中由于趋肤效应导致的线圈电阻随时间的时变(但可以不忽略趋肤效应本身导致的线圈阻抗增加,可以仅仅考虑时间平均后的效果)
线圈、定子几何尺寸确定,材料确定,级数确定
开关器件最大荷载能量确定,开关时间确定(或忽略)
主电容器容量及电压确定
定子初速度确定(也可为0,但不推荐,过低的初速度对行波加速的能量传输过程极为不利,将大大降低总能量效率)
根据线圈尺寸计算出单匝情况下的线圈电感、相邻线圈互感,线圈电阻
根据线圈尺寸和动子尺寸材料,计算出单位电流单匝情况下,动子处于不同位置时,所受线圈的磁场力大小(仅需计算从线圈开始到关断时,动子可能存在的位置范围内情况)
根据电路模型建立差分方程,时域上求解方程计算出整个加速过程。
其中,有两部分内容是需要在仿真中根据设计目标进行迭代优化的。
1、 线圈的匝数参数。该参数决定了线圈的实际电感、互感、电阻等,最终会直接影响到峰值电流等参数,难以在计算前确定,需要根据仿真结果进行调整和优化
2、 线圈开启策略。该策略包含线圈何时充电、何时放电、是否进行续流等内容,不同的策略也会对最终结果造成影响。
线圈和定子的几何尺寸如图所示
线圈材质为无氧铜,圆导线密绕,因此等效电阻率为
磁芯材质为40钢(调质),根据《常用钢材磁特性曲线》p23,近似取饱和磁场强为2.0T。根据几何尺寸,可以计算出动子质量为6.31g
本案例中设定加速级数为40。
开关器件选用IPB60R040C7,耐压650V,脉冲电流限制211A,计算时限制电流不超过200A,开通内阻
使用电容作为供电电源,供电电压为400V,容量为4.7mF。
定子初速度设定为30m/s。
可以计算出,对于单匝线圈,有线圈自感为0.9646nH,互感系数为0.3739nH,电阻为18.02μΩ
接着,计算定子位移与受力的关系,结果如下图所示
可以通过该关系通过插值方法得到位置/受力关系,也可以寻找一个合适的拟合方程。比如对于上面得到的结果,可以得到一个近似的拟合公式:
拟合效果如下图所示:
ratio图上仍有少量趋势,但是总体结果足以满足本计算的需求。
对于两个同时通有电流的线圈和一个动子的情况,结合第一部分描述的电路原理图,根据基尔霍夫电压定律可以建立线性方程组如下:
其中Switch表示开关状态,1表示正向充电,0表示续流,-1表示反向回收,
其中
我们在前面计算了单匝线圈的电感、互感和电阻,我们可以计算出他们和和多匝线圈之间的参数关系,有:
其中
对于电源部分,也可以建立一个方程,有:
其中
如果电源为电容器,则再加上电容的放电方程,即
最后是动子的运动方程:
联立上述方程组,我们得到关于
求解该方程组时,首先需要先通过解线性方程的方法,求解出六个未知量的导数,这样就得到了未知量导数和当前时间以及未知量值的关系,然后就可以使用RK4或别的方法求解线性方程。
对于本算例,由于忽略了MOS的开关效益和寄生的电容电阻等效应,加上线性度较高,因此可以使用RK4稳定求解。也许在加入了复杂电路模型后,可能会涉及到隐式方法求解该方程组。
排除开动子产生的感应电动势效应,方程的剩余部分可以轻松的用SPICE求解,但受限于笔者能力,没能成功将动子运动的模型加入到SPICE当中。如果能够利用SPICE求解,则省去了撰写隐式微分方程求解器的工作,并且可以分析更为复杂的寄生效应和更复杂的拓扑。
设置线圈在定子距离-16mm时充电,距离-8mm时回收,不进行续流。线圈匝数为180匝-2*级数(越往后匝数越小)
仿真结果如图所示:
第一行为每个线圈的独立电流,通过逐级减少的线圈匝数使得线圈电流峰值近似保持在开关元件所能承受的最大电流范围之内。同时可以注意观察到由于磁耦合产生的电流上升拐点:拐点前,前级关断中的线圈将一部分能量直接耦合到下一级线圈,使得下一级线圈充电速度变快。拐点后,前级线圈中能量耗尽,电流上升完全从电容器中获取能量。
第二行为线圈的中的总磁能,可以看出线圈中始终维持了一定的磁能,但是存在一定波动。随着动子速度的不断增加,受限于开关器件的功率等级,系统中能维持的磁能也在下降。
第三行为电容器中的电压,基本呈现出均匀下降的趋势,可以明显看出由于能量回收产生的波动。行波加速的非常适合使用单个大电容,同时对电容的ESL要求也大大降低。并联电容的另一大好处是大大降低了ESR,减少了电容中的损耗。
第四行为动子速度,可以看出其加速度和系统的总磁能有明显的正相关。通过磁压强的概念,物理上可以证明两者的关系。动子速度从30m/s提升到了120m/s,获得42.8J能量,效率为40.8%,而加速距离仅为16cm。
行波加速使得磁场集中在更为高效的加速位置,提高了能量效率。
本文介绍了行波加速的基本仿真思路,该思路也可以推广到感应加速等加速方式中去;通过一个典型的计算案例描述了计算的基本步骤,并且通过计算结果表明了行波加速的独特优势。希望通过此文抛砖引玉,引起对行波加速的更多思考。
[修改于 2年5个月前 - 2022/11/19 00:57:20]
那个帖子里没有“初速度是0”的前提条件,有考虑到带初速的情况
这不得加学术分
有没有设计数据,想试做一个
这个恒压供电怎么理解,现实中的也能实现这种近似吗
这不得加学术分有没有设计数据,想试做一个这个恒压供电怎么理解,现实中的也能实现这种近似吗
所有的设计数据都在文中了,恒压供电就是说你的电容器足够大,以至于在发射中电压几乎不发生变化。
实际上我计算的算例是考虑了电容的容量的,你可以看到电容放电产生的电压下降。但是同时注意到电压下降的水平并不高,仅仅下降了60V。
这实际上可以算作行波加速的缺点:它不适合将电容器的储能全部耗尽,最好是留出一倍的容量,这样电压就只会下降不超过30%。如果电压下降过多,充电放电功率都会受到限制,极端的情况下,当弹丸的感应电动势与电容电压相等时,就无法继续加速了。
同时需要注意到,剩余电压高还有一些好处,例如充电的效率可以大大提高。我个人认为总的来说,将系统储能设计的高过每次发射消耗的能量的做法,利大于弊
所有的设计数据都在文中了,恒压供电就是说你的电容器足够大,以至于在发射中电压几乎不发生变化。实际上我...
电容太大,做台式倒不属于劣势,但是在便携方面上就是劣势。在便携上,用体积和重量堆出来的效率,意义不大
电容太大,做台式倒不属于劣势,但是在便携方面上就是劣势。在便携上,用体积和重量堆出来的效率,意义不大
从四个方面来说,这个设计实际上是利于便携而不是相反。
1、 加速距离的减少使得线圈所占体积大幅度减少
2、 效率的提升使得所需总储能减少,同样的40J动能,10%的效率需要400J发射能量,40%效率就只需要100J,即使后者做4倍储能,储能所消耗的体积也是相同的。
3、 并联电容使得对单个电容的内阻要求降低,减少了电容的体积。
4、 效率提升后,散热负载大大降低,同时高剩余电压提高了充电效率,减少了充电电路体积。
行波加速实际上是一种很精巧的设计,核心的思路就是将磁场集中在最需要它的地方来提高效率,是一种用技巧而不是蛮力的解决思路,我个人比较看好。
你可以看看我最近做的炮,实物模型非常接近于你的理论模型,尤其是这个近似三角波的电流变化。虽然效率较高,使用大电容粗炮管的重量也接近2kg。感谢你替我定量分析,但工程实现上相当困难,缺点我也发现了。由于个人能力我并没有做成紧密线圈,但大致的计算中我也发现同样总长2倍细分的线圈具有大约√2倍的效率,但那样控制电路的规模也要翻倍会更加笨重。
我觉得先不宜纠结它是否轻便,因为只要从理论上证明对效率有利,通过理论指明优化的方向并求解出优化的极限,而这个极限具有优势,那么它就有某方面的优势。至于说多用电容增加重量,那只是具体实践中因为电容器的性能有限而面临的暂时困难。
跟粒子加速器很像, 似乎可以共用一些理论, 可以想到许多和平用途.
仿真用的电容容量是多少?
有没有用常用仿真软件(比如Maxwell)验证过顶楼的计算结果?
从四个方面来说,这个设计实际上是利于便携而不是相反。1、 加速距离的减少使得线圈所占体积大幅度减少2...
其实我更想表达是,你所提到的加速度与效率的关系,已经超过了铜线圈所能做到的极限。在16cm的长度内加速到120m/s,达到30%的效率已是铜线圈的理论极限。
其次。其实在我的理念里面,半桥斩波所得到的电流波形是锯齿波,并不是理想波形,仅凭这一点,效率又会低极限效率一个档次。比较理想的波形是自然的正弦半波。
所以,不知楼主是否已经忽略了对其他重要的条件的考虑,而导致的结论错误,还请楼主多加思索。
其实我更想表达是,你所提到的加速度与效率的关系,已经超过了铜线圈所能做到的极限。在16cm的长度内加...
"在16cm的长度内加速到120m/s,达到30%的效率已是铜线圈的理论极限。" 来源请求
“比较理想的波形是自然的正弦半波。” 来源请求
"所以,不知楼主是否已经忽略了对其他重要的条件的考虑" 使用的主要近似放在文章开头
"在16cm的长度内加速到120m/s,达到30%的效率已是铜线圈的理论极限。" 来源请求“比较理...
关于理论极限,根据顶楼给出的信息,参考这篇帖子可以计算https://www.kechuang.org/t/81010
我粗算了一下,应该是比30%多一些,但不到40%的。
他说的“你这个设计超出了理论极限”应该问题不大。基于同样的疑惑,我在上面也问过你有没有用可靠的仿真软件,比如Maxwell,仿真过整个40级,来对计算结果进行验证。不过你没有回复。
"在16cm的长度内加速到120m/s,达到30%的效率已是铜线圈的理论极限。" 来源请求“比较理...
效率极限见三水合番的帖子:一种特殊情况下磁阻式电磁炮的效率极限;
至于正弦波,我还没有完整的理论体系。只是一个猜想。我们都知道,弹丸从远从向线圈靠近至两中心重合时,电磁力先增后降,到两中心重合时归零。如果在两中心靠得十分近时加大电流,那收益必然会低,比如锯齿波就是这个情况;
如果是在受力最高点的位置加大电流,那收益将会是比较大的。但考虑到电阻损耗的存在,加大电流必然存在更大的损耗,如果此时收益低那效率必然会低。
这也说明了把力气放在关键处收益才大; 电流下降率也并不是越快越好
楼主能分享一下是怎么根据线圈的自感 互感计算出动子位移-受力的关系?有什么检索的关键词能分享一下吗 谢谢
关于理论极限,根据顶楼给出的信息,参考这篇帖子可以计算XXXXXXXXXXXXXXchuang.or...
我看了一下那个帖子,主要区别在于他计算的初速度是0,我发现低速效率太差,因此设计了30m/s的初速,这个初速在实机上可以用其他方法(e.g摩擦轮)产生。应该是这个地方产生了效率的差距,如果修改他的公式,假设初速度大于0,应该能得到类似的结果
我看了一下那个帖子,主要区别在于他计算的初速度是0,我发现低速效率太差,因此设计了30m/s的初速,...
那个帖子里没有“初速度是0”的前提条件,有考虑到带初速的情况
那个帖子里没有“初速度是0”的前提条件,有考虑到带初速的情况
放出计算用的程序源码,有兴趣可以在自己的机器运行测试
我不是很理解文中指出的线圈几何尺寸和匝数的关系,楼主能解释一下吗。我的理解是电流截面都是几何尺寸,不同的匝数对应的是截面上不同的电流通量。感激不尽
线圈匝数是否是仿真代码中的coil.Ns?
我核验了一下,首先,81010 中的算式应该是错了,正确的公式不是$ \frac{1}{1+\fra...
放出计算用的程序源码,有兴趣可以在自己的机器运行测试
我看了一下这个代码,匝数的定义确实和顶楼中给出的“180匝-2*级数”不同,而是用了一个更复杂的式子:
Ns = lambda i:160*(1-0.5*(i+5)/40)**0.5
非常好的文章,我对您给的参数进行了maxwell仿真,计算出效率为31.10%,已经非常接近您给出的结果。效果的差距应该是因为级数不同,我只仿真了前34级,以及我在仿真时每级加了1mm隔板,使得线圈耦合程度变低导致的。
以及可以请教下原文中“可以计算出,对于单匝线圈,有线圈自感为0.9646nH,互感系数为0.3739nH,电阻为18.02μΩ”。这里这些参数是如何计算出来的吗?
非常好的文章,我对您给的参数进行了maxwell仿真,计算出效率为31.10%,已经非常接...
经过摸索,终于学会了用maxwell求解线圈的自感L与互感M,然后再除以匝数180的平方算出了单匝线圈的自感Ls与互感Ms。 但是我的计算结果和您给出的值略有差异,非常好奇您的计算过程。 用刚刚得到的数据再跑一下程序,计算出效率为31.7%。
,最后这个Rs,我是用线圈炮Rlc工具计算R再除以匝数180的平方算出的
最后贴上maxwell文件,希望大佬指点下,我这样做有没有问题。
经过摸索,终于学会了用maxwell求解位置/受力关系,并且可以很方便地导出csv表格,然后将程序从拟合的方式改成使用插值法。
给出maxewll仿真文件:
给出修改为插值函数的代码:
Python#######################使用插值函数替换掉拟合函数
import pandas as pd
from scipy.interpolate import interp1d
# 读取CSV文件
dfcsv = pd.read_csv('D:\maxwell2022\project\calculate_Fb\Force Plot 1.csv')
# 提取第二列和第三列的数据
xxx = dfcsv.iloc[:, 1].values # 第二列作为插值点
yyy = dfcsv.iloc[:, 2].values # 第三列作为要插值的值
# 创建插值函数,设置超出范围时的行为,进行外插(备注:外插没有内插准确)
fx = interp1d(xxx, yyy, kind='linear', bounds_error=False, fill_value="extrapolate")
def Fb(offset):
#offset = r - r_coil
#offset是弹丸中心到线圈中心的距离,如果offset>0则表示要出现反拉。
x = abs(offset*1000)
return -(1 if offset>0 else -1)*(1e-3* max(fx(x), 0)) # 需要检查插值结果,fx当小于0时替换为0
'''def Fb(offset):
#offset = r - r_coil
x = abs(offset*1000)
return -(1 if offset>0 else -1)*(
0.89318896e-3*x/
(1+0.63700033*(x/10)**4.92537))'''
最后麻烦大佬斧正。
关于顶楼里感应电动势的公式:
这个公式应该是根据能量守恒得到的,就是弹丸动能增大的功率,等于线圈电流减小的功率。
但是它只适用于单个线圈的情况。对于多个线圈同时导通的情况,由于有互感,各个线圈按照“单个线圈的幅度”减小电流,会导致线圈总能量的变化量,和弹丸动能的变化量不相等,即能量不守恒。
要消除这个误差,得计算弹丸和各个线圈的耦合,以及各个线圈之间的耦合,然后求解方程组。
关于顶楼里感应电动势的公式:这个公式应该是根据能量守恒得到的,就是弹丸动能增大的功率,等于线圈电流减...
三水大佬 ,您的结论是正确的。从结果上倒推,确实符合“弹丸动能增大的功率,等于线圈电流减小的功率”。 通过 分别计算弹丸动能增大的能量 和 线圈因感应电动势效应减小的能量,在数值上是几乎相等的。
关于顶楼里感应电动势的公式:这个公式应该是根据能量守恒得到的,就是弹丸动能增大的功率,等于线圈电流减...
我尝试推导了一下:
E弹丸增加的能量 =W =F*s =F*v*t (1)
E 线圈因感应电动势效应减小的能量 =UIt = Vb*I*t (2)
联立得: Vb=F*v/I = (N*I*Fbs) *v/I =N *v *Fbs (3)
其实上面公式的写法不太严谨, 下面使用微元法 重写一遍公式1和公式2 。
注 1. 其中 Δt(j) = t(j)-t(j-1)
2. E[i] 表示i号线圈使弹丸增加的能量
200字以内,仅用于支线交流,主线讨论请采用回复功能。