一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种多余度电机伺服控制系统的制作方法

2022-11-16 06:38:32 来源:中国专利 TAG:


1.本发明涉及电机控制技术,具体涉及液体火箭发动机多余度机电伺服控制系统。


背景技术:

2.多余度处理器在电机控制时,由于主机处理器一直占用电机旋变采集通道,而备份处理器并不能实时获取电机运行数据,有可能在处理器切换过程中出现电机控制性能下降的问题。为保证余度系统发生故障进行切换时电机控制平稳且响应快速,需要解决备份处理器获取主机处理器电机控制的实时数据以及主处理器向备份处理器切换过程中电机控制性能快速恢复、保持稳定的问题。


技术实现要素:

3.针对现有技术的缺陷或不足,本发明提供了一种多余度电机伺服控制系统。
4.为此,本发明所提供的控制系统包括:处理器a、处理器b和双端口ram,所述双端口ram连接处理器a和处理器b;
5.所述处理器a和处理器b中嵌入有前馈式三闭环控制方法;
6.所述处理器a为主处理器,在无故障时,主处理器控制电机工作;当出现故障时,由处理器b接管控制电机工作;若b处理器故障,则进入故障安全状态,此时所有输出均变为低电平;
7.所述的前馈式三闭环控制方法采用角度pid控制环、转速pid控制环和电流pid控制环实现,方法包括:
8.实时采集减速器角度,将减速器当前角度与当前设定角度做差后,所得当前角度差值作为角度pid控制环的输入,角度pid控制环利用角度差值计算转速;角度pid控制环周期性输出转速计算结果;
9.实时采集电机转速,将电机当前转速与当前转速计算结果做差,所得当前转速差值作为转速pid控制环的输入,转速pid控制环利用转速差值计算电流;转速pid控制环周期性输出电流计算结果;
10.实时采集电机电流,将电机当前电流与当前电流计算结果做差,所得当前电流差值作为电流pid控制环的输入,电流pid控制环利用电流差值计算占空比;电流pid控制环周期性输出占空比计算结果作为伺服电机控制信号;
11.所述电流pid控制环的控制算法为:
[0012][0013]
其中:
[0014]
k表示当前时刻所在的电流pid控制环的第k个输出周期,k取自然数;
[0015]
u(k)表示电流pid控制环的第k个输出周期的输出值;
[0016]
e(k)为计算u(k)用的电流差值;
[0017]
e(k-1)为计算u(k-1)用的电流差值,e(k-1)初始为0;
[0018]
j=0,1,2,

,k;
[0019]
q表示当前时刻所在的角度pid控制环的第q个输出周期,q取自然数;
[0020]
possv(q)表示角度pid控制环的第q个输出周期输出值计算时所用的设定角度,初始时,possv(q-1)取0;
[0021]
kb表示前馈项系数,70≤kb≤150;
[0022]kp
表示电流pid控制环的当前比例系数;
[0023]ki
表示电流pid控制环的当前积分系数;
[0024]
kd表示电流pid控制环的当前微分系数。
[0025]
进一步,所述角度pid控制环的输出周期为5~10ms;转速pid控制环的输出周期为1~5ms;电流pid控制环的输出周期为0.05~0.1ms。
[0026]
进一步,本发明的方法还包括:
[0027]
根据当前角度差值与第一阈值的大小选择角度pid控制环的参数后计算转速,所述根据当前角度差值与第一阈值的大小选择角度pid控制环的参数包括:
[0028]
当前角度差值大于等于第一阈值时角度pid控制环k
p
的取值大于当前角度差值小于第一阈值时角度pid控制环k
p
的取值,
[0029]
当前角度差值大于等于第一阈值时角度pid控制环ki的取值小于当前角度差小于第一阈值时角度pid控制环ki的取值,
[0030]
且,角度pid控制环的k
p
的取值范围为[10,50]、角度pid控制环ki的取值范围为[0,1]、角度pid控制环kd的取值范围为[0,0.1];
[0031]
根据当前转速差值与第二阈值的大小关系选择转速pid控制环的参数后计算电流,所述根据当前转速差值与第二阈值的大小关系选择转速pid控制环的参数包括:
[0032]
当前转速差值大于等于第二阈值时转速pid控制环k
p
的取值大于当前转速差值小于第二阈值时转速pid控制环k
p
的取值,
[0033]
当前转速差值大于等于第二阈值时转速pid控制环ki的取值大于当前转速差值小于第二阈值时转速pid控制环ki的取值,
[0034]
且,转速pid控制环的k
p
的取值范围为[0.5,10]、转速pid控制环ki的取值范围为[0,1]、转速pid控制环kd的取值范围为[0,0.1];
[0035]
根据当前电流差值与第三阈值的大小关系选择电流pid控制环的参数后计算占空比,所述根据当前电流差值与第三阈值的大小关系选择电流pid控制环的参数包括:
[0036]
当前电流差值大于等于第三阈值时电流pid控制环k
p
的取值大于当前电流差值小于第三阈值时电流pid控制环k
p
的取值;
[0037]
当前电流差值大于等于第三阈值时电流pid控制环ki的取值小于当前电流差值小于第三阈值时电流pid控制环ki的取值,
[0038]
且,电流pid控制环的k
p
的取值范围为[0,1]、电流pid控制环ko的取值范围为[0,1]、电流pid控制环kd的取值范围为[0,0.1]。
[0039]
进一步,对所述当前角度、当前设定角度分别归一化后求取归一化值的差值作为当前角度差值;对所述当前转速计算结果与采集到的电机当前转速分别归一化后求取归一
化值的差值作为当前转速差值;对所述当前电流计算结果与采集到的电机当前电流分别归一化后求取归一化值的差值作为当前电流差值。
[0040]
进一步,系统包括:处理器a、处理器b、处理器c、双端口ramα、双端口ramβ和双端口ramγ,所述双端口ramα连接处理器a和处理器b,双端口ramβ连接处理器a和处理器c,双端口ramγ连接处理器b和处理器c;
[0041]
所述处理器a、处理器b和处理器c中嵌入有前馈式三闭环控制方法;
[0042]
所述处理器a、处理器b和处理器c中处理器a为主处理器,在无故障时,主处理器控制电机工作;当出现故障时,由处理器b接管控制电机工作;若b处理器故障,则由c处理器接管;若c处理器也故障则进入故障安全状态,此时所有输出均变为低电平。
[0043]
进一步,各处理器周期性进行数据交互,控制处理器(即发出控制信号的处理器)输出控制信号,其它处理器依据控制处理器给出的数据进行计算,但不输出控制信号。
[0044]
进一步,各处理器交互数据的周期与电流pid控制环的输出周期一致。
[0045]
进一步,当发生故障时,非控制处理器中角度pid控制环和电流pid控制环两个控制环的参数k
p
、ko、kd取故障过渡值,故障发生一段时间后恢复为故障发生前的参数取值,所述两个控制环的参数取故障过渡值为:
[0046]
角度pid控制环的参数k
p
、ko、kd均取0;
[0047]
电流pid控制环的参数k
p
取值较故障发生前的k
p
取值变小、ki取值较故障发生前的ki取值变大,且电流pid控制环的k
p
的取值范围为[0,1]、ki的取值范围为[0,1]、kd不变或取值范围为[0,0.1]。
[0048]
本发明采用基于双端口ram的数据传输方法,实现了备份处理器实时获取主机处理器工作数据的能力;采用“分时pid”方法,解决了处理器切换时,电机控制性能下降的问题。
[0049]
本发明采用转速前馈式三闭环伺服电机控制方法,其中三闭环的控制方法和控制周期设置能够保证流量调节伺服机组角度控制的精度和稳定性,从而保证流量变化的稳定;带转速前馈的闭环控制,能够加快伺服电机的响应速度,满足系统实时、高响应性。进一步的方案中,分段pid控制方法首先保证了流量调节系统无超调的指标要求,并在保证无超调的基础上,进一步加快了电机响应速度。
[0050]
本发明的控制系统适用于液体火箭发动机流量和动力系统,可以满足航天系统动力控制的可靠性要求。
附图说明
[0051]
图1为本发明控制系统的结构示例图;
[0052]
图2为本发明三闭环控制结构示意图;
[0053]
图3为实施例的控制效果图;
[0054]
图4为对比例1的控制效果图;
[0055]
图5为对比例2的控制效果图;
[0056]
图6为实施例的控制对象结构示意图。
具体实施方式
[0057]
除非有特殊说明,本文中的术语根据相关领域普通技术人员的认识理解。
[0058]
参见图1所示,本发明的控制系统中包括两个或三个处理器,两个处理器时,采用一个双端口ram连接两个处理器;三个处理器时,采用三个双端口ram;以三个处理器为例,各处理器与双端口ram的关系如图2所示,箭头表示数据流向,三个处理器编号分别为a、b、c,三个双端口ram编号分别为α、β、γ;双端口ramα连接处理器a和处理器b,双端口ramβ连接处理器b和处理器c,双端口ramγ连接处理器a和处理器c;三个处理器的逻辑关系为,a处理器(主处理器)首先工作,当出现故障时,由b处理器接管;若b处理器故障,则由c处理器接管;若c处理器也故障则进入故障安全状态,此时所有输出均变为低电平(安全态);本发明是基于双端口ram多处理器数据交互的伺服控制技术,用于多余度嵌入式处理器,具体方案可采用c语言实现。
[0059]
各处理器中嵌入有前馈式三闭环控制方法,该前馈式三闭环控制方法具体采用带转速前馈的控制算法,加快电机控制响应速度;并且三闭环的输出采用周期性输出,满足电机的快速响应要求,且可有效控制伺服机组稳定运转。其中三闭环控制包括机组角度pid控制环、电机转速pid控制环和电机电流pid控制环,三闭环关系见图2所示,伺服机组的角度(本文也称位置)设定来自于用户设置,反馈角度来源于伺服机组的位置传感器(如旋转变压器),通过pid算法计算得到输出值,该输出值作为转速pid控制环的设定转速值,反馈转速值来源于伺服电机的速度传感器(如旋转变压器),两者通过pid算法计算得到输出值作为电流pid控制环的设定电流;电流pid控制环的反馈电流来源于模拟量采集的三相电流经过clarke和park变换,两者经过pid计算得到控制伺服电机的六路pwm信号的占空比,通过pwm信号占空比的变化控制驱动电路的导通或关断,实现磁场变化,控制伺服电机运转。采用pid的闭环控制算法,可实现角度稳态段动态调整并减小偏差,该偏差主要取决于旋变传感器采集分辨率以及系统采集数据的稳定性;
[0060]
所述带转速前馈是指电流pid控制环带转速前馈项,电流pid控制环的控制算法为:
[0061][0062]
其中:
[0063]
k表示当前时刻所在的电流pid控制环的第k个输出周期,k取自然数;
[0064]
u(k)表示电流pid控制环的第k个输出周期的输出值;
[0065]
e(k)为计算u(k)用的电流差值;
[0066]
e(k-1)为计算u(k-1)用的电流差值,e(k-1)初始为0;
[0067]
j=0,1,2,

,k;
[0068]
q表示当前时刻所在的角度pid控制环的第q个输出周期,q取自然数;
[0069]
possv(q)表示角度pid控制环的第q个输出周期输出值计算时所用的设定角度,初始时,possv(q-1)取0;
[0070]
kb表示前馈项系数,70≤kb≤150;
[0071]kp
表示电流pid控制环的当前比例系数;
[0072]ki
表示电流pid控制环的当前积分系数;
[0073]
kd表示电流pid控制环的当前微分系数。
[0074]
该算法能够根据当前时刻的目标位置提前预估下一时刻的目标位置,达到缩短调节所需时间的目的,在电机控制时,表现为电机更快速响应,在同样转速的情况下,更快调节到目标角度。
[0075]
具体方案中,三个控制环的输出周期可以根据被控制机组的工作参数及控制精度要求确定,具体来讲,对于不同的伺服机组,若需改善和提高控制品质,可通过调整各各闭环控制的输出周期来实现,例如可将电流环控制周期提高,而其它闭环控制周期不变。更具体的如角度控制周期为x,5ms≤x≤10ms,转速控制周期为y,1ms≤y≤5ms,电流控制周期为z,0.05ms≤z≤0.1ms。
[0076]
进一步的方案中,前馈式三闭环控制方法还包括采用分段pid控制算法,即在伺服电机控制过程中三个控制环分别根据相应阈值选择采用不同pid控制参数(包括k
p
、ki和kd)进行闭环控制,再次提升电机响应速度且保证控制无超调。具体包括:
[0077]
对于角度pid控制环,根据当前角度差值与第一阈值的大小选择角度pid控制环的参数后计算转速,所述根据当前角度差值与第一阈值的大小选择角度pid控制环的参数包括:
[0078]
当前角度差值大于等于第一阈值时k
p
的取值大于当前角度差值小于第一阈值时k
p
的取值;
[0079]
当前角度差值大于等于第一阈值时ki的取值小于当前角度差小于第一阈值时ki的取值,
[0080]
且,角度pid控制环的k
p
的取值范围为[10,50]、ki的取值范围为[0,1]、kd的取值范围为[0,0.1];
[0081]
对于转速pid控制环,根据当前转速差值与第二阈值的大小关系选择转速pid控制环的参数后计算电流,所述根据当前转速差值与第二阈值的大小关系选择转速pid控制环的参数包括:
[0082]
当前转速差值大于等于第二阈值时k
p
的取值大于当前转速差值小于第二阈值时k
p
的取值;
[0083]
当前转速差值大于等于第二阈值时ki的取值大于当前转速差值小于第二阈值时ki的取值,
[0084]
且,转速pid控制环的k
p
的取值范围为[0.5,10]、ki的取值范围为[0,1]、kd的取值范围为[0,0.1];
[0085]
对于电流pid控制环,根据当前电流差值与第三阈值的大小关系选择电流pid控制环的参数后计算占空比,所述根据当前电流差值与第三阈值的大小关系选择电流pid控制环的参数包括:
[0086]
当前电流差值大于等于第三阈值时k
p
的取值大于当前电流差值小于第三阈值时k
p
的取值;
[0087]
当前电流差值大于等于第三阈值时ki的取值小于当前电流差值小于第三阈值时ki的取值,
[0088]
且,电流pid控制环的k
p
的取值范围为[0,1]、ki的取值范围为[0,1]、kd的取值范围
为[0,0.1]。
[0089]
具体方案中,上述第一阈值、第二阈值和第三阈值可根据机组的工作参数及控制精度要求进行相应选择。
[0090]
还有些方案中,采用角度、转速和电流的归一化处理,此种方法能够保证该控制器整定的pid参数能够适配大部分的伺服电机,而不会因为更改电机型号而重新确定控制参数,最大化保证了参数的适用度。对于采用归一化数据的方案,分段pid控制算法中,第一阈值取0.3,第二阈值取0.2,第三阈值取0.015。
[0091]
还有些优选的方案中,本发明的控制系统中各处理器之间周期或实时进行数据交互,通过数据交互,工作处理器输出控制信号,其它处理器依据工作处理器给出的数据进行计算,但不输出控制信号。系统进行周期或实时交互控制数据,保证备份处理器也能够得到当前控制所需数据,在切换发生时,由于一直进行同步计算,能够快速接管控制,做到无扰切换,加快系统稳定。
[0092]
具体方案中,为实现双端口ram连接的处理器互传数据稳定可靠的效果,双端口ram按地址高低分为低地址区和高地址区,低地址区由左端连接的处理器写,右端连接的处理器读;高地址区由左端连接的处理器读,右端连接的处理器写;以设有三个处理器为例,具体方案中,双端口ramα、β、γ按照高低地址均分成两个区域,α高地址区域标识为α1,由处理器a写,处理器b读;低地址区域标识为α2,由处理器b写,处理器a读;同理,双端口ramβ高地址区域标识为β1,由处理器b写,处理器c读;低地址区域标识为β2,由处理器c写,处理器b读;双端口ramγ高地址区域标识为γ1,由处理器c写,处理器a读;低地址区域标识为γ2,由处理器a写,处理器c读。这样,主机处理器向能够访问的两个ram区写数据,其他两个备份处理器可以去读取数据,即完成了数据交互。比如,处理器a工作,则向α1和γ2写数据,处理器b读取α1,处理器c读取γ2,则得到了当前处理器a的数据。
[0093]
交互数据包括所有控制数据,如调节器设定角度、调节器实测角度、电机设定转速、电机实测转速、电机电气角度、指令内容、指令计数、发动机当前工作状态、主机处理器“三闭环”控制结果等;每一个数据写到双端口ram的对应地址,其它备份处理器只要读取相对应地址的数据就知道它代表的含义,示例如表1所示,比如处理器对外部双端口ram的起始地址为0x100000,寻址范围为0x1000,则地址0x100000~0x100800作为低地址区,地址0x100801~0x101000作为高地址区。
[0094]
表1双端口ram交互数据表
[0095]
[0096][0097]
上述方案进一步的方案中,各处理器的数据交互周期与电流pid控制环的控制周期或输出周期一致,保证在备份电流环控制时能够得到主机的数据。并且在控制前获取数
据,然后用于控制计算,从而保证每个控制计算前,备份处理器均能得到当前的有效测量数据。
[0098]
进一步的方案中,故障发生时,非主处理器中角度pid控制环和电流pid控制环两个控制环的参数k
p
、ki、kd取故障过渡值,对电机工作所需的电流、转速、角度等获取关系进行切换并快速稳定,故障发生一段时间(时长可根据电路特性选取)后恢复为故障发生前各处理器的参数取值,所述两个控制环的参数取故障过渡值为:
[0099]
角度pid控制环的参数k
p
、ki、kd均取0;
[0100]
电流pid控制环的参数k
p
取值较故障发生前的k
p
取值变小、ki取值较故障发生前的ki取值变大,且电流pid控制环的k
p
的取值范围为[0,1]、ki的取值范围为[0,1]、kd不变或取值范围为[0,0.1]。
[0101]
角度pid控制环和电流pid控制环所有参数均置为“过渡期pid”参数,因为在处理器切换时,原控制电路停止输出,电机没有驱动电流处于自由减速过程,此时备份处理器接管,电路重新输出,电流从无到有;切换后的一段时间内,通过更换pid参数,可加速这个过程,让电流更快速到达控制所需的额定电流,达到让电机控制尽快稳定的目的。由于在切换前已通过双端口ram获取了主机处理器电机控制的数据并用于备份处理器闭环计算,因此在切换后,备份处理器可以在工作处理器闭环计算的基础上继续计算,避免了控制量不连续带来的电机运转抖动问题。处理器切换的一段时间后,工作电路稳定,位置闭环和电流闭环pid参数换回原来正常控制时的参数,电机进入正常控制阶段。
[0102]
实施例1:
[0103]
该实施例的控制系统结构图如图1所示;采用控制系统对图6所示的液体火箭动力系统流量调节伺服控制系统中的伺服机组进行控制,液体火箭发动机电机控制器通过驱动伺服电机运转来控制调节器角度变化实现发动机起动转级、工况调节和快速关机控制;系统组成包括上位机(电脑)、电缆(通讯、供电、控制、采集)、控制器、电源、伺服机组、流量调节器组成,其中伺服机组由伺服电机、减速器、制动器、反馈装置(传感器)组成;
[0104]
其工作原理是:上位机通过通讯电缆向控制器发送控制命令,同时接收控制器上传的电机工作数据和遥测数据;电源通过电源电缆给控制器供电,控制器通过内部电源管理模块给伺服机组供电;伺服机组不启动时,制动器关闭,启动时制动器开启;伺服机组减速器与流量调节器通过机械齿轮结构连接,伺服电机转动带动调节器转动,实现液体火箭发动机流量调节。
[0105]
该实施例中角度pid控制环每隔5ms输出转速计算结果;转速pid控制环每隔1ms输出电流计算结果;电流pid控制环每隔0.1ms输出占空比计算结果作为伺服电机控制信号;各处理器周期性进行数据交互,工作处理器输出控制信号,其它处理器依据工作处理器给出的数据进行计算,但不输出控制信号,且各处理器交互数据的周期与电流pid控制环的输出周期一致;
[0106]
该实施例中电流pid控制环带转速前馈项,其中的kb=100;
[0107]
并且该实施例控制方法中采用角度、转速和电流的归一化处理后的数据进行相应控制,同时采用分段pid控制算法,三个控制环参数的选择方案为:
[0108]
角度pid控制环,依据当前归一化后的角度差值与第一阈值0.3之间的大小关系选择控制参数:若当前归一化后的角度差≥0.3,则k
p
=25、ki=0,kd=0,若当前归一化后的角
度差值《0.3,则k
p
=15、ki=0.01,kd=0;
[0109]
转速pid控制环,依据是当前归一化后的转速差值与第二阈值0.2之间的大小关系选择控制参数:若当前归一化后的转速差值≥0.2时,k
p
=2、ki=0.01,kd=0,若当前归一化后的转速差值《0.2时,则k
p
=1.5、ki=0.002,kd=0;
[0110]
电流pid控制环,依据是当前归一化后的电流差值与第三阈值0.015之间的大小关系选择相应控制参数,若当前归一化后的电流差值≥0.015时,则k
p
=0.4、ki=0.005,kd=0,若当前归一化后的电流差值《0.015,则k
p
=0.2、ki=0.01,kd=0;
[0111]
非主控处理器采用临时分段策略,具体角度pid控制环的参数k
p
、ki、kd均取0;电流pid控制环的参数k
p
取值较故障发生前的k
p
取值变小、ki取值较故障发生前的ko取值变大,且电流pid控制环的k
p
的取值范围为0.2、ki的取值范围为0.15、kd不变。故障发生一段时间200ms后恢复为故障发生前各处理器的参数取值,所述两个控制环的参数取故障过渡值为:
[0112]
采集控制过程的转速设定(即转速pid控制环的输入)和转速反馈,得到控制效果如图3所示。
[0113]
对比例1:
[0114]
该对比例与实施例1不同的是控制系统包括3个处理器,各处理器之间不采用双端口数据交互,发生故障时人为切换,控制效果如图4所示。
[0115]
对比图3和4所示,当电机以额定转速持续运转时,切换处理器,可以看出,采用双端口ram交互数据后,电机切换基本平稳,除了一点扰动外,转速没有明显下降,而不采用双端口ram交互数据,则转速有明显下降,最低转速降低到了5600rpm左右,额定转速为6450rpm,效果明显。
[0116]
对比例2:
[0117]
该对比例与对比例1不同的是不采用临时分段策略,控制效果如图5所示。
[0118]
对比图4和5,可以看出在均未采用双端口ram数据交互时,采用临时分段pid方法在切换处理器时,转速变化下降到5600rpm左右,然后恢复到额定转速;未采用临时分段pid方法在切换处理器时,转速下降最多到4760rmp左右,说明采用临时分段pid方法能够减少转速下降的趋势。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献