一种电机控制器控制方法、装置、设备及存储介质与流程

文档序号:33086669发布日期:2023-01-31 22:10阅读:41来源:国知局
一种电机控制器控制方法、装置、设备及存储介质与流程

1.本技术属于无人机技术领域,尤其涉及一种电机控制器控制方法、装置、设备及存储介质。


背景技术:

2.随着无人驾驶航空器的不断发展,安全操控无人驾驶航空器就成为了一个关键问题。在航空器飞行时,飞行控制系统根据飞机姿态、飞行速度的控制要求向各动力单元实时发送螺旋桨的速度控制指令,电机控制器根据转速要求,解算出电机运行所需的三相电流和电压,通过电机控制器的功率主回路将直流电源逆变为电机转动所需的三相交流电源,此时,为了更好地使航空器及时调整飞行姿态,也对电机控制器的控制逻辑提出了更高的要求,以免影响用户体验。


技术实现要素:

3.本技术在于提供一种电机控制器控制方法、装置、设备及存储介质,通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
4.本技术解决上述技术问题所采用的技术方案如下:
5.根据本技术的一个方面,提供的一种电机控制器控制方法,包括:
6.对硬件进行初始化;
7.读取参数设置,使能电机控制中断,配置任务列表;
8.进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据。
9.可选地,所述读取参数设置,使能电机控制中断,配置任务列表包括:
10.读取eeprom参数设置,对所述eeprom参数进行校验;
11.校验通过后,使能电机控制中断,配置任务列表;
12.若校验不通过,通过用户任务循环入口重置eeprom参数,并重启控制器。
13.可选地,所述进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据包括:
14.进入电机控制器主任务循环入口;
15.判断第一定时器是否为1ms;若否,则返回主任务循环入口;
16.若是,则运行任务状态机,判断电压是否正常,并将所述电压数据实时发送至飞控系统。
17.可选地,所述判断电压是否正常,并将所述电压数据实时发送至飞控系统包括:
18.若电压正常,运行使能,并将电压数据和电压状态实时发送至飞控系统;
19.若电压不正常,重置eeprom参数,并重启控制器。
20.可选地,所述对硬件进行初始化包括:
21.对硬件电路进行初始化,所述硬件电路包括pwm电路、io口、adc电路和can接口电
路。
22.根据本发明的另一方面,提供的一种电机控制器控制装置,包括:
23.初始化模块,用于对硬件进行初始化;
24.读取模块,用于读取参数设置,使能电机控制中断,配置任务列表;
25.控制模块,用于进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据。
26.可选地,所述读取模块包括:
27.读取单元,用于读取eeprom参数设置,对所述eeprom参数进行校验;
28.配置单元,用于校验通过后,使能电机控制中断,配置任务列表;
29.重置单元,用于若校验不通过,通过用户任务循环入口重置eeprom参数,并重启控制器。
30.可选地,所述控制模块包括:
31.进入单元,用于进入电机控制器主任务循环入口;
32.返回单元,用于判断第一定时器是否为1ms;若否,则返回主任务循环入口;
33.运行单元,用于当第一定时器为1ms时,则运行任务状态机,判断电压是否正常,并将所述电压数据实时发送至飞控系统。
34.根据本发明的再一个方面,提供的一种电机控制器控制设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的一种电机控制器控制方法的步骤。
35.根据本发明的再一个方面,提供的一种存储介质,所述存储介质上存储有一种电机控制器控制方法的程序,所述一种电机控制器控制方法的程序被处理器执行时实现如上所述的一种电机控制器控制方法的步骤。
36.本发明提出的一种电机控制器控制方法、装置、设备及存储介质,该方法包括:对硬件进行初始化;读取参数设置,使能电机控制中断,配置任务列表;进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据;通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
附图说明
37.图1为本发明实施例一提供的一种电机控制器控制方法流程图;
38.图2为本发明实施例一提供的一种电机控制器的软件框架结构图;
39.图3为图1中步骤s20的方法流程图;
40.图4为图1中步骤s30的方法流程图;
41.图5为图4中步骤s35的方法流程图;
42.图6为本发明实施例二提供的一种电机控制器控制装置示范性结构框图;
43.图7为图6中读取模块示范性结构框图;
44.图8为图6中控制模块示范性结构框图;
45.图9为本发明实施例三提供的一种电机控制器控制设备示范性结构框图。
46.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
47.为了使本技术所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
48.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
49.实施例一
50.如图1所示,在本实施例中,一种电机控制器控制方法,包括:
51.s10、对硬件进行初始化;
52.s20、读取参数设置,使能电机控制中断,配置任务列表;
53.s30、进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据。
54.在本实施例中,通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
55.在本实施例中,根据电机控制器电路的组成和原理,电机控制器软件需要完成对各硬件电路的控制和传感器输出信号的采集及数据处理,接收飞控系统的控制指令,通过电机控制算法对电机运行的电压、电流、温度等信息计算和处理后,输出功率器件的控制信号实现对电机转速、扭矩的控制,并向飞控系统反馈电机和控制器的运行状态。
56.在本实施例中,电机控制软件运行在控制电路的微处理器芯片上,芯片为ti的tms320f28069f数字信号控制芯片,控制软件的开发环境(ide)选用ti公司的code composer studio 9,编程语言主要为标准c语言,芯片外设驱动部分配置选用ti c2000汇编函数。
57.在本实施例中,电机控制器的软件框架如图2所示,共分为三个层次。用户层主要实现电机控制的逻辑和计算,与飞控系统、上位机的信息交互,运行状态监控、固件升级和参数配置等专用功能。硬件控制层和算法库为第二层次的通用函数库。硬件控制层为具体硬件电路的抽象层,实现对具体硬件电路的逻辑控制和数据收发,为用户层函数提供通用的硬件控制接口和数据,例如svpwm控制逻辑,采样数据滤波和转换,通信协议配置等。算法库主要包括电机控制函数库和通用算法库,提供可复用的数学运算和数据处理函数模块。第三层次主要包括硬件驱动层和使用的编程语言的库函数。硬件驱动层函数主要实现对采用的处理器芯片外设电路模块的配置和控制,比如pwm电路、io口、adc电路和can接口电路等,为硬件控制层函数提供调用接口和数据。c语言函数库和汇编语言函数库则为程序编写提供常用函数调用功能。
58.如图3所示,在本实施例中,所述步骤s20包括:
59.s21、读取eeprom参数设置;
60.s22、对所述eeprom参数进行校验;
61.s23、校验通过后,使能电机控制中断,配置任务列表;
62.s24、若校验不通过,通过用户任务循环入口重置eeprom参数,并重启控制器,返回步骤s10。
63.在本实施例中,所述参数设置还包括can总线参数设置。
64.如图4所示,在本实施例中,所述步骤s30包括:
65.s31、进入电机控制器主任务循环入口;
66.s32、判断第一定时器是否为1ms;若否,则s33、返回主任务循环入口;
67.若是,s34、则运行任务状态机,s35、判断电压是否正常,并将所述电压数据实时发送至飞控系统。
68.在本实施例中,所述运行任务状态机之前还包括:开启led运行指示灯。
69.作为另一种实施例,所述任务状态机还可以监测电流、温度等信息。
70.如图5所示,在本实施例中,所述步骤s35包括:
71.若电压正常,s351、运行使能,并将电压数据和电压状态实时发送至飞控系统;
72.若电压不正常,s352、重置eeprom参数,并重启控制器,返回步骤s10。
73.在本实施例中,所述对硬件进行初始化包括:
74.对硬件电路进行初始化,所述硬件电路包括pwm电路、io口、adc电路和can接口电路。
75.实施例二
76.如图6所示,在本实施例中,一种电机控制器控制装置30,包括:
77.初始化模块31,用于对硬件进行初始化;
78.读取模块32,用于读取参数设置,使能电机控制中断,配置任务列表;
79.控制模块33,用于进入电机控制器主任务循环入口,并向飞控系统实时发送状态数据。
80.在本实施例中,通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
81.在本实施例中,根据电机控制器电路的组成和原理,电机控制器软件需要完成对各硬件电路的控制和传感器输出信号的采集及数据处理,接收飞控系统的控制指令,通过电机控制算法对电机运行的电压、电流、温度等信息计算和处理后,输出功率器件的控制信号实现对电机转速、扭矩的控制,并向飞控系统反馈电机和控制器的运行状态。
82.在本实施例中,电机控制软件运行在控制电路的微处理器芯片上,芯片为ti的tms320f28069f数字信号控制芯片,控制软件的开发环境(ide)选用ti公司的code composer studio 9,编程语言主要为标准c语言,芯片外设驱动部分配置选用ti c2000汇编函数。
83.在本实施例中,电机控制器的软件框架如图2所示,共分为三个层次。用户层主要实现电机控制的逻辑和计算,与飞控系统、上位机的信息交互,运行状态监控、固件升级和参数配置等专用功能。硬件控制层和算法库为第二层次的通用函数库。硬件控制层为具体硬件电路的抽象层,实现对具体硬件电路的逻辑控制和数据收发,为用户层函数提供通用的硬件控制接口和数据,例如svpwm控制逻辑,采样数据滤波和转换,通信协议配置等。算法库主要包括电机控制函数库和通用算法库,提供可复用的数学运算和数据处理函数模块。第三层次主要包括硬件驱动层和使用的编程语言的库函数。硬件驱动层函数主要实现对采用的处理器芯片外设电路模块的配置和控制,比如pwm电路、io口、adc电路和can接口电路
等,为硬件控制层函数提供调用接口和数据。c语言函数库和汇编语言函数库则为程序编写提供常用函数调用功能。
84.如图7所示,在本实施例中,所述读取模块包括:
85.读取单元321,用于读取eeprom参数设置,对所述eeprom参数进行校验;
86.配置单元322,用于校验通过后,使能电机控制中断,配置任务列表;
87.重置单元323,用于若校验不通过,通过用户任务循环入口重置eeprom参数,并重启控制器。
88.在本实施例中,所述参数设置还包括can总线参数设置。
89.如图8所示,在本实施例中,所述控制模块包括:
90.进入单元331,用于进入电机控制器主任务循环入口;
91.返回单元332,用于判断第一定时器是否为1ms;若否,则返回主任务循环入口;
92.运行单元333,用于当第一定时器为1ms时,则运行任务状态机,判断电压是否正常,并将所述电压数据实时发送至飞控系统。
93.在本实施例中,所述运行任务状态机之前还包括:开启led运行指示灯。
94.作为另一种实施例,所述任务状态机还可以监测电流、温度等信息。
95.实施例三
96.如图9所示,在本实施例中,一种电机控制设备,包括:存储器10、处理器20及存储在所述存储器上并可在所述处理器上运行的计算机程序,如实施例二所述的电机控制器控制装置30,所述电机控制器控制装置被所述处理器执行时实现如上所述的一种电机控制器控制方法的步骤。
97.在本实施例中,通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
98.在本实施例中,所述存储器至少包括一种类型的可读存储介质,用于存储安装于所述电子设备的操作系统和各类应用软件,例如电机控制器控制方法的程序代码等,此外,所述存储器还可以用于暂时地存储已经输出或者将要输出的各类数据。
99.在本实施例中,所述处理器在一些实施例中可以是中央处理器(central processingunit,cpu)、控制器、微控制器、微处理器或者其他数据处理芯片。该处理器通常用于控制所述电子设备的总体操作,在本实施例中,所述处理器用于运行所述存储器中存储的程序代码或者处理数据,例如运行所述电机控制器控制方法等。
100.实施例四
101.在本实施例中,一种存储介质,所述存储介质上存储有一种电机控制器控制方法的程序,所述一种电机控制器控制方法的程序被处理器执行时实现如上所述的一种电机控制器控制方法的步骤。
102.本发明提供的计算机可读存储介质,通过电机控制器的任务控制逻辑对电机控制器进行控制,并向飞控系统和上位机实时发送状态数据,提高了电机控制系统的实时性和稳定性,提高了用户体验。
103.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多
情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
104.以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1