一种空间机械臂运动参数在轨异构管理系统及方法与流程



1.本发明适用于航天器软件设计技术专业领域,用于空间机械臂控制系统的软件设计,可有效提升运动参数管理的效率和可靠性。


背景技术:



2.我国空间站机械臂控制系统由中央控制器和若干关节控制器组成。整臂运动控制最终通过关节控制器控制每个关节电机的运动来实现。空间机械臂具备大量复杂运动模式,对应的关节运动模式也非常复杂。关节控制器在控制过程中需要使用大量运动参数,这些参数对精确运动控制和整臂安全保护具有关键作用。空间强辐射环境下的参数管理要求很高,需要克服空间单粒子效应、设备故障等带来的参数错误甚至丢失的问题,同时也要满足地面运行管理对好用性和易用性的要求。
3.涉及到空间机械臂运动参数管理的文献有《大臂展空间机械臂运动学参数精确标定》(周伟刚等,载人航天,2016年8月),该文献提出了一种机械臂运动学参数的精确标定方法,但该方法仅限于地面进行计算,参数预先装订在机械臂上,无法满足在轨管理和更新的要求。


技术实现要素:



4.本发明解决的技术问题是:解决复杂空间机械臂运动参数在轨管理的难题,本发明提出了一种基于轻量化文件系统的空间在轨异构运动参数管理方法。
5.本发明解决技术的方案是:一种空间机械臂运动参数在轨异构管理系统,包括冷备份关系的主备份关节控制器和关节控制器fpga以及机械臂中央控制器;
6.所述机械臂中央控制器通过外部总线与航天器中央处理单元进行通信,用于保存一份运动参数;所述运动参数为关节控制电机计算所需参数;
7.所述主备份的关节控制器通过机械臂控制总线与所述中央控制器进行通信;主备份的关节控制器、主份关节控制器fpga中分别用于各存储一份运动参数,分别用于主份、备份控制;主份或备份的关节控制器将运动参数从对应的关节控制器存储器中加载到对应的fpga中进行计算;由关节控制器fpga进行参数计算和电机控制。
8.优选的,机械臂中央控制器、主备份的关节控制器采用romfs文件系统存储运动参数,若干组运动参数构成一份文件,参数类型为浮点数,一组运动参数为关节fpga运行关节运动控制算法所需要的外部输入的参数,每组参数均包含参数名称、参数值、参数在fpga里的存放地址、参数类型以及小数位数,并存储在表格中。
9.优选的,每组运动参数保存三份,用于三取二处理。
10.优选的,主份或备份的关节控制器将运动参数从对应的关节控制器存储器中加载到对应的fpga中进行计算包括:
11.s1、关节控制器通过向中央控制器发送参数名称询问每组运动参数的取值;
12.s2、中央控制器通过收到的参数名称从其存储器中到对应的文件,从文件中读
取参数名称、参数值、参数在fpga里的存放地址、类型和小数位数附带校验和通过总线发送给关节控制器;
13.s3、关节控制器在确认校验和正确后,将读取的内容写入到自身对应的参数名称文件,完成数据内容的恢复;否则不进行写入;
14.s4、关节控制器从写入的参数名称文件中读取参数值,并判断参数是否为有效参数,若为有效参数,则进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;若无效,则读取参数的默认值,同样进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;
15.s5、对应关节控制器fpga从存放地址中获取对应的参数值,用于对应的控制信号计算。
16.优选的,关节控制器按照预设的时间间隔按照s4中的处理将参数重新加载一遍,避免发生单粒子时间造成参数错误。
17.优选的,浮点数转换为整型的操作中假定浮点数据为a,要求转换为16位有符号定点,假如16位中有1个符号位、m1个整数位、m2个小数位,则转换公式如下:
[0018][0019]
一种利用所述系统实现的空间机械臂运动参数在轨异构管理方法,每次关节控制器启动后,将关节运动参数加载到对应的fpga中,具体包括:
[0020]
s1、关节控制器通过向中央控制器发送参数名称询问每组运动参数的取值;
[0021]
s2、中央控制器通过收到的参数名称从其存储器中到对应的文件,从文件中读取参数名称、参数值、参数在fpga里的存放地址、类型和小数位数附带校验和通过总线发送给关节控制器;
[0022]
s3、关节控制器在确认校验和正确后,将读取的内容写入到自身对应的参数名称文件,完成数据内容的恢复;否则不进行写入;
[0023]
s4、关节控制器从写入的参数名称文件中读取参数值,并判断参数是否为有效参数,若为有效参数,则进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;若无效,则读取参数的默认值,同样进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;
[0024]
s5、对应关节控制器fpga从存放地址中获取对应的参数值,用于对应的控制信号计算。
[0025]
优选的,空间机械臂运动参数的更新包括地面运管中心发起的外部更新以及由fpga上参数自主变化引起的内部更新。
[0026]
优选的,外部更新过程包括:
[0027]
关节控制器接收到地面发送的并由中央控制器转发的带运动参数的遥控指令,解析后更新本地存储器的运动参数;
[0028]
关节控制器检测到本地参数发生变化,读取自身存储器保存的该组运动参数并计算校验和,发给中央控制器;
[0029]
中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的存储器中,否则不进行写入;
[0030]
关节控制器从本地存储器读取参数值对应的fpga地址和小数位值,进行浮点数转换为整型的操作后向fpga加载,完成运动参数更新。
[0031]
优选的,内部更新过程包括:
[0032]
关节控制器周期读取fpga上保存的运动参数,在某组参数发生变化时,关节控制器浮点数转换为整型操作的逆运算解算出参数的浮点数值;
[0033]
关节控制器根据fpga地址在关节控制器存储器的中到该参数的存放路径,并更新相应的值;
[0034]
关节控制器检测到本地参数发生了变化,关节控制器从自身存储器中读取自身保存的运动参数并计算校验和,发给中央控制器;
[0035]
中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的存储器中,否则不进行写入。
[0036]
本发明与现有技术相比的有益效果是:
[0037]
本发明提出了一种基于轻量化文件系统的空间在轨异构运动参数管理方法,在确保数据安全和正确的前提下,提升了地面管理的易用性,并在空间站机械臂上得到了应用。
[0038]
本发明利用中央控制器存储器、关节控制器存储器和关节控制器fpga实现了三层级和双冗余的存储系统,有效确保机械臂运动参数安全和正确使用,对提升机械臂可靠安全性具有重要作用。
[0039]
本发明提出的运动参数存储系统具备三层次和双冗余的结构,可以防止在任何一台设备发生故障的情况下保证运动参数的正确性,可有效保证运动参数在该系统中一致性,且在设备重启以后,保证运动参数可以正确得到恢复。
[0040]
本发明基于轻量化romfs文件系统设计,相对于不使用文件系统的存储系统,可有效提升参数访问和修改的效率,方便操作人员的使用。
[0041]
本发明设计的存储格式适用于采用了cpu和fpga异构处理架构的机械臂控制系统
附图说明
[0042]
图1为本发明系统架构图;
[0043]
图2为本发明运动参数文件存储格式设计示意图;
具体实施方式
[0044]
下面结合实施例对本发明作进一步阐述。
[0045]
本发明中运动参数指关节控制电机计算所需参数,如电流环、位置环、速度环参数等,这些参数在电机运动过程中需要持续使用,且部分参数需要在使用过程中会发生实时更新,实现机械臂运动的优化控制。
[0046]
空间机械臂运动参数管理系统包括中央控制器存储器、主份关节控制器存储器、主份关节控制器fpga、备份关节控制器存储器、备份关节控制器fpga。其架构图见附图1,本发明关节控制器采用eeprom存储器。其中,中央控制器与外部进行通信,负责总体控制,其存储器上保存一份运动参数。主份关节控制器与备份关节控制器是冷备份关系。主份关节控制器存储器与fpga上各保存一份运动参数,用于主份控制,关节控制器将参数从存储器中加载到fpga中进行计算。同理,备份关节控制器存储器上各保存一份运动参数,用于备份
控制。fpga是最终进行参数计算和电机控制的器件。图1中1为中央控制器存储器,可与主份和备份关节控制器存储器通信,通过文件系统保存运动参数。2为主份关节控制器存储器,与3和5不能同时加电,可与中央控制器和主份关节控制器fpga通信,通过文件系统保存运动参数。3为备份关节控制器存储器,与2和4不能同时加电,可与中央控制器和备份关节控制器fpga通信,通过文件系统保存运动参数。4为主份关节控制器fpga,与3和5不能同时加电,可与主份关节控制器存储器通信,通过硬件寄存器保存运动参数,并实际进行运动控制的计算。5为备份关节控制器fpga,与2和4不能同时加电,可与备份关节控制器存储器通信,通过硬件寄存器保存运动参数,并实际进行运动控制的计算。
[0047]
中央控制器和关节控制器采用轻量化romfs文件系统存储运动参数,若干组参数构成一份文件。参数格式为浮点数。一组运动参数为关节fpga运行关节运动控制算法所需要的外部输入的参数,在使用三环(即位置环、速度环、电流环)pid(比例、微分、积分)控制算法的情况下,运动参数至少包含位置环系数p、位置环系数d、位置环输出抗饱和值、速度环系数p、速度环系统i、速度环系数d、速度环积分抗饱和值、速度环输出抗饱和值、速度环输入限幅、电流环系数p、电流环系数i、电流环抗饱和积分值、电流环输出抗饱和值,每组参数均包含参数名称、参数值、参数在fpga里的存放地址、参数类型以及小数位数,并存储在表格中。
[0048]
fpga在运算时需要采用整型的方式,因此,需要关节控制器将浮点数转换为整型的参数。转换的原则应既能满足数据的范围和精度要求,又能最大限度的减小整型浮点数的位数,数据转化的方法为:假定浮点数据为a,要求转换为16位有符号定点,首先要知道该数据的小数位,假如16位中有1个符号位、m1个整数位、m2个小数位,则强制转换为
[0049][0050]
中央控制器和关节控制器存储器上每个文件的结构见附图2,每个文件包括若干组参数,每组参数保存三份参数,用于三取二处理,每份参数如图2所示包含参数名称、参数值、参数在fpga里的存放地址、参数类型和小数位数等信息。
[0051]
每次关节控制器启动后,会将运动参数加载到fpga中,提供给运动计算使用。该过程简述如下:

关节控制器向中央控制器询问运动参数的值,中央控制器读取自身保存的运动参数并计算校验和,发给关节控制器。

关节控制器检查校验和是否正确,如正确,则将运动参数写入到自身的文件系统中,覆盖原先的参数,否则不进行写入;

关节控制器读取存储器里的参数值,并判断该参数是否为有效参数,如为有效参数,则读取参数值对应的fpga地址和小数位值,根据(1)式进行转换后向fpga加载,若无效,则读取该参数的默认值,以同样的方式加载到fpga中,由fpga进行运动计算;

关节控制器定期将存储器里的参数值刷新到fpga的寄存器中。
[0052]
机械臂上的参数更新有两种方式,一种是地面运管中心发起的外部更新,另一种是由fpga上参数自主变化引起的内部更新。外部更新的过程简述如下:

关节控制器接收到地面发送的并由中央控制器转发的带运动参数的遥控指令,解析后更新本地的运动参数;

关节控制器检测到本地参数发生了变化,读取自身保存的运动参数并计算校验和,发给中央控制器;

中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的文件系统中,否则不进行写入;

关节控制器读取参数值对应的fpga地址和小数位值,根据
(1)式进行转换后向fpga加载,完成运动参数更新。
[0053]
fpga上参数自主变化引起的内部更新过程简述如下:

关节控制器周期读取fpga寄存器上保存的运动参数,在参数发生变化时,关节控制器按照(1)式的逆运算解算出参数的浮点数值;

关节控制器根据fpga地址在文件系统中到该参数的存放路径,并更新相应的值;

关节控制器检测到本地参数发生了变化,关节控制器读取自身保存的运动参数并计算校验和,发给中央控制器;

中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的文件系统中,否则不进行写入。
[0054]
实施例
[0055]
以机械臂交轴电流环参数为例,说明本发明的具体实施方式。
[0056]
机械臂交轴电流环参数共有4项,在romfs文件系统中的存储路径为/电流环参数/交轴电流环.bin,存储的文件内容为:
[0057]
参数名称fpga地址数据参数类型小数位数交轴电流环参数p0x201040901.7810交轴电流环参数i0x201040a00.13810交轴电流环抗饱和积分值0x201041d028810交轴电流环输出抗饱和值0x201041e028810
[0058]
系统启动过程
[0059]
关节控制器加电后,对交轴电流环参数的使用过程如下:
[0060]
步骤一:关节控制器向中央控制器询问交轴电流环参数p等4个参数的取值;
[0061]
步骤二:中央控制器通过收到的参数名称到文件“/电流环参数/交轴电流环.bin”,读取上表中参数名称、fpga地址、数据值、类型和小数位数附带校验和通过总线发送给关节控制器
[0062]
步骤三:关节控制器在确认校验和正确后,将上表中的内容写入到自身的文件“/电流环参数/交轴电流环.bin”,完成数据内容的恢复;
[0063]
步骤四:关节控制器读取“/电流环参数/交轴电流环.bin”,交轴电流环参数p参数类型是8,代表浮点型,值为1.7,小数位数是10。根据式(1)计算得到交轴电流环参数p对应的整型数为1740,关节控制器将1740加载到fpga地址0x20104090上。同理,将其他3个参数值加载到fpga中。
[0064]
步骤五:fpga从0x20104090获取到交轴电流环参数p的值为1740,用于交轴电流环控制信号的计算中。通过同样的方式获取其他三个参数。
[0065]
步骤六:关节控制器每500ms按照第四步的方法将4个参数重新加载一遍,避免发生单粒子事件造成参数错误。
[0066]
(1)参数外部更新过程
[0067]
在关节控制器使用过程中,地面决策将交轴电流环参数p的数据改为0.6,参数更新过程如下。
[0068]
步骤一:地面发送遥控指令,内容为将交轴电流环参数p的数据改为0.6;
[0069]
步骤二:关节控制器收到该遥控指令,根据参数名称到自身的文件“/电流环参数/交轴电流环.bin”,将文件中交轴电流环参数p的数据值改为0.6;
[0070]
步骤三:关节控制器检测到本地参数发生了变化,读取交轴电流环参数p的参数名
称、fpga地址、数据值、类型和小数位数附带校验和通过总线发送给发给中央控制器;
[0071]
步骤四:中央控制器确认校验和正确,将交轴电流环参数p的参数名称、fpga地址、数据值、类型和小数位数写入到自身文件“/电流环参数/交轴电流环.bin”。
[0072]
步骤五:关节控制器读取“/电流环参数/交轴电流环.bin”,交轴电流环参数p参数类型是8,代表浮点型,值为0.6,小数位数是10。根据式(1)计算得到交轴电流环参数p对应的整型数为614,关节控制器将614加载到fpga地址0x20104090上。
[0073]
步骤六:fpga从0x20104090获取到交轴电流环参数p的值为614,用于交轴电流环控制信号的计算中。
[0074]
(2)参数内部更新过程
[0075]
在关节控制器使用过程中,fpga根据关节运动状态的实际变化,自主将交轴电流环参数p的数据由1.7更新为0.6,此时参数更新过程如下:
[0076]
步骤一:fpga上0x20104090数据由1740变为614,此时关节控制器检测到0x20104090数据发生变化。
[0077]
步骤二:关节控制器根据地址0x20104090到自身的文件“/电流环参数/交轴电流环.bin”,并确定变化的参数为交轴电流环参数p,交轴电流环参数p参数类型是8,代表浮点型,小数位数是10,根据式(1)进行逆运算,得到614对应的浮点数值为0.6,将文件中交轴电流环参数p的数据值改为0.6;
[0078]
步骤三:关节控制器检测到本地参数发生了变化,读取交轴电流环参数p的参数名称、fpga地址、数据值、类型和小数位数附带校验和通过总线发送给发给中央控制器;
[0079]
步骤四:中央控制器确认校验和正确,将交轴电流环参数p的参数名称、fpga地址、数据值、类型和小数位数写入到自身文件“/电流环参数/交轴电流环.bin”。
[0080]
本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
[0081]
本发明未详细说明部分属于本领域技术人员的公知常识。

技术特征:


1.一种空间机械臂运动参数在轨异构管理系统,其特征在于:包括冷备份关系的主备份关节控制器和关节控制器fpga以及机械臂中央控制器;所述机械臂中央控制器通过外部总线与航天器中央处理单元进行通信,用于保存一份运动参数;所述运动参数为关节控制电机计算所需参数;所述主备份的关节控制器通过机械臂控制总线与所述中央控制器进行通信;主备份的关节控制器、主份关节控制器fpga中分别用于各存储一份运动参数,分别用于主份、备份控制;主份或备份的关节控制器将运动参数从对应的关节控制器存储器中加载到对应的fpga中进行计算;由关节控制器fpga进行参数计算和电机控制。2.根据权利要求1所述的系统,其特征在于:机械臂中央控制器、主备份的关节控制器采用romfs文件系统存储运动参数,若干组运动参数构成一份文件,参数格式为浮点数,一组运动参数为关节控制器fpga运行关节运动控制算法所需要的外部输入的参数,每组参数均包含参数名称、参数值、参数在fpga里的存放地址、参数类型以及小数位数,并存储在表格中。3.根据权利要求2所述的系统,其特征在于:每组运动参数保存三份,用于三取二处理。4.根据权利要求2所述的系统,其特征在于:主份或备份的关节控制器将运动参数从对应的关节控制器存储器中加载到对应的fpga中进行计算包括:s1、关节控制器通过向中央控制器发送参数名称询问每组运动参数的取值;s2、中央控制器通过收到的参数名称从其存储器中到对应的文件,从文件中读取参数名称、参数值、参数在fpga里的存放地址、类型和小数位数附带校验和通过总线发送给关节控制器;s3、关节控制器在确认校验和正确后,将读取的内容写入到自身对应的参数名称文件,完成数据内容的恢复;否则不进行写入;s4、关节控制器从写入的参数名称文件中读取参数值,并判断参数是否为有效参数,若为有效参数,则进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;若无效,则读取参数的默认值,同样进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;s5、对应关节控制器fpga从存放地址中获取对应的参数值,用于对应的控制信号计算。5.根据权利要求4所述的系统,其特征在于:关节控制器按照预设的时间间隔按照s4中的处理将参数重新加载一遍,避免发生单粒子时间造成参数错误。6.根据权利要求4所述的系统,其特征在于:浮点数转换为整型的操作中假定浮点数据为a,要求转换为16位有符号定点,假如16位中有1个符号位、m1个整数位、m2个小数位,则转换公式如下:7.一种利用权利要求1所述系统实现的空间机械臂运动参数在轨异构管理方法,其特征在于每次关节控制器启动后,将关节运动参数加载到对应的fpga中,具体包括:s1、关节控制器通过向中央控制器发送参数名称询问每组运动参数的取值;s2、中央控制器通过收到的参数名称从其存储器中到对应的文件,从文件中读取参数名称、参数值、参数在fpga里的存放地址、类型和小数位数附带校验和通过总线发送给关
节控制器;s3、关节控制器在确认校验和正确后,将读取的内容写入到自身对应的参数名称文件,完成数据内容的恢复;否则不进行写入;s4、关节控制器从写入的参数名称文件中读取参数值,并判断参数是否为有效参数,若为有效参数,则进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;若无效,则读取参数的默认值,同样进行浮点数转换为整型的操作,并将转换后的整型数值加载到对应的fpga存放地址;s5、对应关节控制器fpga从存放地址中获取对应的参数值,用于对应的控制信号计算。8.根据权利要求7所述的方法,其特征在于:空间机械臂运动参数的更新包括地面运管中心发起的外部更新以及由fpga上参数自主变化引起的内部更新。9.根据权利要求8所述的方法,其特征在于:外部更新过程包括:关节控制器接收到地面发送的并由中央控制器转发的带运动参数的遥控指令,解析后更新本地存储器的运动参数;关节控制器检测到本地参数发生变化,读取自身存储器保存的该组运动参数并计算校验和,发给中央控制器;中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的存储器中,否则不进行写入;关节控制器从本地存储器读取参数值对应的fpga地址和小数位值,进行浮点数转换为整型的操作后向fpga加载,完成运动参数更新。10.根据权利要求8所述的方法,其特征在于:内部更新过程包括:关节控制器周期读取fpga上保存的运动参数,在某组参数发生变化时,关节控制器浮点数转换为整型操作的逆运算解算出参数的浮点数值;关节控制器根据fpga地址在关节控制器存储器的中到该参数的存放路径,并更新相应的值;关节控制器检测到本地参数发生了变化,关节控制器从自身存储器中读取自身保存的运动参数并计算校验和,发给中央控制器;中央控制器检查校验和是否正确,如正确,则将运动参数写入到自身的存储器中,否则不进行写入。

技术总结


一种空间机械臂运动参数在轨异构管理系统及方法,包括冷备份关系的主备份关节控制器和关节控制器FPGA以及机械臂中央控制器;所述机械臂中央控制器通过外部总线与航天器中央处理单元进行通信,用于保存一份运动参数;所述运动参数为关节控制电机计算所需参数;所述主备份的关节控制器通过机械臂控制总线与所述机械臂中央控制器进行通信;主备份的关节控制器、主份关节控制器FPGA中分别用于各存储一份运动参数;主份或备份的关节控制器将运动参数从对应的关节控制器存储器中加载到对应的FPGA中进行计算;由关节控制器FPGA进行参数计算和电机控制。算和电机控制。算和电机控制。


技术研发人员:

余晟 周东 刘鑫 李德伦 汪路元 胡玉茜 牛嘉祥 顾明 禹霁阳 王铎 卢京 李承昊

受保护的技术使用者:

北京空间飞行器总体设计部

技术研发日:

2022.08.19

技术公布日:

2022/11/25

本文发布于:2024-09-21 04:27:23,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/30779.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:参数   控制器   关节   电流
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议