一种电机实时控制平台及开发方法

文档序号:1938068 发布日期:2021-12-07 浏览:12次 >En<

阅读说明:本技术 一种电机实时控制平台及开发方法 (Motor real-time control platform and development method ) 是由 文宇良 梅文庆 史世友 李程 李益 王成杰 付建国 周斌 谭磊 于 2020-06-03 设计创作,主要内容包括:本发明提供一种电机实时控制平台及开发方法,所述电机实时控制平台,在多核处理器中实现,所述多核处理器至少包括第一ARM核、第二ARM核及FPGA核,所述电机实时控制平台包括:上位机系统,在所述第一ARM核运行,用于运行实时通信应用;电机实时控制系统,在所述FPGA核运行,用于执行预设电机控制算法;实时操作系统,在所述第二ARM核运行,用于控制所述实时通信应用及所述电机实时控制系统的运行。解决了多片处理器增加了系统的设计复杂度和开发成本,最终使得整个控制系统运行不够高效,调试复杂的问题。(The invention provides a motor real-time control platform and a development method, wherein the motor real-time control platform is realized in a multi-core processor, the multi-core processor at least comprises a first ARM core, a second ARM core and an FPGA core, and the motor real-time control platform comprises: the upper computer system runs on the first ARM core and is used for running real-time communication application; the motor real-time control system runs in the FPGA core and is used for executing a preset motor control algorithm; and the real-time operating system runs on the second ARM core and is used for controlling the running of the real-time communication application and the motor real-time control system. The problems that the design complexity and the development cost of a system are increased by a plurality of processors, and finally the whole control system is not efficient enough in operation and complex in debugging are solved.)

一种电机实时控制平台及开发方法

技术领域

本发明涉及电机控制技术领域,具体涉及一种电机实时控制平台及开发方法。

背景技术

在工业传动控制领域中,实时性、高速性和可靠性对控制器的CPU提出了更高的要求;传统的电机控制系统一般是基于单核处理器DSP中进行电机控制,增加额外的处理器对控制系统进行数据和通信应用控制;受限于DSP的串行处理方式和频率限制,电机控制的频率和效率得不到显著的提高,控制系统的多片处理器增加了系统的设计复杂度和开发成本,最终使得整个控制系统运行不够高效,调试复杂。

发明内容

本发明提供一种电机实时控制平台及开发方法,以解决多片处理器增加了系统的设计复杂度和开发成本,最终使得整个控制系统运行不够高效,调试复杂的问题。

第一方面,本发明提供一种电机实时控制平台,在多核处理器中实现,所述多核处理器至少包括第一ARM核、第二ARM核及FPGA核,所述电机实时控制平台包括:

上位机系统,在所述第一ARM核运行,用于运行实时通信应用;

电机实时控制系统,在所述FPGA核运行,用于执行预设电机控制算法;

实时操作系统,在所述第二ARM核运行,用于控制所述实时通信应用及所述电机实时控制系统的运行。

更进一步地,所述实时通信应用包括:

模式选择模块接口,用于获取对电机控制模式的选择操作,以通过电机控制系统调整电机控制模式。

更进一步地,所述电机实时控制系统,包括:

模式选择模块,用于选择与所述模式选择模块接口获取的选择操作对应的电机控制模式,输出对应的电压信号。

更进一步地,所述电机实时控制系统,还包括:

转速计算模块,用于获取增量编码器采集的信号,计算电机的转速,输入所述模式选择模块;

电流处理模块,用于获取电流传感器采集的电机的电流,将所述电流处理为旋转坐标系下的电流,输入所述模式选择模块;

电压处理模块,用于利用电机的转速将所述模式选择模块输出的电压信号处理为三相电压信号;

调制模块,用于根据所述三相电压信号生成调制信号,输出至电机的逆变电路,以实现电机实时控制。

更进一步地,所述上位机系统,包括:

控制界面模块,用于获取所述电机的转速并进行实时显示。

更进一步地,所述多核处理器为ZYNQ-7000处理器。

第二方面,本发明提供一种电机实时控制平台的开发方法,所述电机实时控制平台为第一方面所述的电机实时控制平台,所述电机实时控制平台开发方法,包括:

确定电机实时控制平台的软件和硬件进行分区,其中,所述硬件为多核处理器,所述多核处理器至少包括第一ARM核、第二ARM核及FPGA核;所述软件为上位机系统、电机实时控制系统和实时操作系统;

将所述上位机系统嵌入所述第一ARM核中运行,用于运行实时通信应用;

将所述电机实时控制系统嵌入所述FPGA核中运行,用于执行预设电机控制算法;

将实时操作系统嵌入所述第二ARM核中运行,用于控制所述实时通信应用及所述电机实时控制系统的运行。

更进一步地,所述将所述电机实时控制系统嵌入所述FPGA核中运行,用于执行预设电机控制算法,包括:

利用程序设计语言编写预设电机控制算法;

将编写的所述预设电机控制算法放入所述多核处理器的硬件开发软件中进行硬件加速,生成所述预设电机控制算法的硬件描述语言;

将所述预设电机控制算法的硬件描述语言嵌入所述FPGA核。

更进一步地,所述硬件开发软件为SDSoc软件。

更进一步地,所述硬件描述语言为VHDL语言。

本发明与现有技术相比,至少具有如下技术效果:

在多核处理器中实现电机实时控制平台,将实时性要求相对较低的上位机系统、实时操作系统分别放入两个ARM核中运行,不占用FPGA核资源,将实时性要求更高的电机实时控制系统放在FPGA核执行预设电机控制算法,这一电机实时控制平台架构能够显著提高电机控制的频率和效率,与现有技术中采用多片MCU处理器来实现电机控制相比,大大降低了电机实时控制平台的设计复杂度和开发成本,使得整个控制平台运行高效,便于后期的调试和维护,实现实时电机控制系统的单芯片多核高实时性和高频率的功能,降低了系统的复杂度和开发成本,增强控制策略的灵活性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例一提供的一种电机实时控制平台框图;

图2是本发明实施例一提供的电机实时控制系统的控制原理示意图;

图3是本发明实施例一提供的控制界面示意图;

图4是本发明实施例一提供的操作界面示意图;

图5是本发明实施例二提供的电机实时控制平台的开发方法流程示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

本实施例提供一种电机实时控制平台,在多核处理器中实现,该多核处理器至少包括第一ARM核、第二ARM核及FPGA核,图1示出了一种电机实时控制平台框图,该电机实时控制平台包括:

上位机系统,在第一ARM核运行,用于运行实时通信应用;

电机实时控制系统,在FPGA核运行,用于执行预设电机控制算法;

实时操作系统,在第二ARM核运行,用于控制实时通信应用及电机实时控制系统的运行。

该多核处理器可以为但不限于ZYNQ-7000处理器,ZYNQ-7000处理器具有高性能低功耗的特点,以ZYNQ-7000处理器为例,其PS端包括两个ARM核,分别为第一ARM核、第二ARM核,其PL端包括一个FPGA核。上位机系统在第一ARM核运行,用于运行实时通信应用;电机实时控制系统在FPGA核运行,用于执行预设电机控制算法;实时操作系统在第二ARM核运行,用于控制实时通信应用及电机实时控制系统的运行。

该实时操作系统可以为但不限于vxworks操作系统,实时操作系统是嵌入式系统软硬件资源的控制中心,它以尽量合理的有效方法组织多个用户共享嵌入式系统的各种资源,在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。本实施例通过在多核处理器中嵌入实时操作系统,根据应用的要求,将实时操作系统和上位机系统、电机实时控制系统集成于多核处理器的硬件系统中,实现软件与硬件一体化。实时操作系统负责嵌入式系统的全部软、硬件资源的分配和调度,控制协调等活动,能够通过装卸模块进行功能配置,体现所在系统的特征,具有良好的实时性、可裁剪性、可靠性。

通过对有VxWorks操作系统核无操作系统的情况进行比对,得到表1:

表1

用户在使用操作系统时,并不是操作系统中的每一个部件都要用到。相比较无操作系统的MCU,它可以根据具体应用定制系统,使系统对资源的需求最小,利用率最高,硬件成本显著降低。VxWorks操作系统由一个体积很小的内核及一些可以根据需要进行定制的系统模块组成,VxWorks操作系统内核最小为8KB,即便加上其它必要模块,所占用的空间也很小,且不失其实时、多任务的系统特征。由于它的高度灵活性,可以很容易地对这一操作系统进行定制或作适当开发,来满足自己的实际应用需要。

本实施例通过嵌入实时操作系统,能够保证进程调度、进程间通信、中断处理等系统公用程序精练而有效,使它们造成的延迟很短,充分保证了可靠的电机控制的实时性,使同样的硬件配置能满足电机控制更强的实时性要求。而传统电机控制的处理器并无操作系统,只能实现实时性不高,任务功能简单以及控制不复杂的电机控制系统。

在本实施例中,在多核处理器中实现电机实时控制平台,将实时性要求相对较低的上位机系统、实时操作系统分别放入两个ARM核中运行,不占用FPGA核资源,将实时性要求更高的电机实时控制系统放在FPGA核执行预设电机控制算法,这一电机实时控制平台架构能够显著提高电机控制的频率和效率,与现有技术中采用多片MCU处理器来实现电机控制相比,大大降低了电机实时控制平台的设计复杂度和开发成本,使得整个控制平台运行高效,便于后期的调试和维护。

为了便于在后续调试开发中进行修改和调试,上位机系统运行的实时通信应用可以包括:

模式选择模块接口,用于获取对电机控制模式的选择操作,以通过电机控制系统调整电机控制模式。优选地,电机控制模式可以包括但不限于速度控制模式、转矩控制模式、磁链控制模式。举例来说,上位机系统可以通过提供模式选择模块接口对应的模式选择界面,供用户进行选择操作,当用户选定某种模式,由模式选择模块接口获取该选择操作,并由电机控制系统根据该选择操作选择电机控制模式,模式选择模块在所选模式下输出对应的电压信号。

进一步地,上位机系统运行的实时通信应用还可以包括:

速度控制模块接口,用于当选择的电机控制模式为速度控制模式时,获取对电机速度的选择操作,以通过电机控制系统调整电机控制模式。举例来说,上位机系统可以通过提供速度控制模块接口对应的速度选择界面,供用户进行选择操作,当用户选定某一速度,由速度控制模块接口获取该选择操作,并由电机控制系统根据该选择操作选择相应速度,以控制速度控制模块在所选速度下输出对应的电压信号。

值得说明的是,在实际应用中,用户可以根据需求,增加不同的接口作为上位机系统运行的实时通信应用,以供后续修改和调试使用,增加的接口可以是后续调试开发中可能修改或编译的模块所对应的接口。

具体地,上述电机实时控制系统可以包括:

模式选择模块,用于选择与上述模式选择模块接口获取的选择操作对应的电机控制模式,输出对应的电压信号。

需要说明的是,由于模式选择模块是后续调试开发中最有可能修改和编译的部分,因此,在上位机系统中提供相应的接口,以便用户进行修改和编译,而无需通过对FPGA核的操作来具体执行修改操作。

进一步地,模式选择模块还可以包括:速度控制模块、转矩控制模块、磁链控制模块,用于根据选择的模式,实现调整不同的电机控制模式。其中,速度控制模块在后期调试开发中修改核编译的可能性较大,因此在上位机系统中设置了相应的接口,当选择的电机控制模式为速度控制模式时,获取对电机速度的选择操作,以控制速度控制模块在所选速度下输出对应的电压信号。

进一步地,电机实时控制系统还包括:

转速计算模块,用于获取增量编码器采集的信号,计算电机的转速,输入模式选择模块;可以理解的是,增量编码器通过外部接口将其采集的信号传递至在FPGA核中运行的转速计算模块,进行电机转速n的计算。

电流处理模块,用于获取电流传感器采集的电机的三相电流信号Ia、Ib、Ic,将三相电流信号处理为旋转坐标系下的电流,输入模式选择模块;

电压处理模块,用于将模式选择模块输出的电压信号Vd、Vq处理为三相电压信号Va、Vb、Vc

调制模块,用于根据三相电压信号Va、Vb、Vc生成调制信号,输出至电机的逆变电路,以实现电机实时控制,其中,调制信号可以是SVPWM信号或者SPWM信号,但不限于此。调制模块主要是对电机的逆变电路中开关器件进行通断控制,在调制模块中可以设置SPWM和SVPWM两种脉宽调制方式,实际运行中可以根据需求进行切换。调制模块在传统DSP中执行时更重要是侧重在浮点计算方面,对于脉冲的高频性和实时性不能显著提高;而在FPGA核中运行调制模块时,基于FPGA并行和高速处理性能,可以将开关管实现上百K频率,这样对于电机运行性能会有显著的提高,能够实现高频信号实时调制。

可以理解的是,电流处理模块又可以进一步包括如下子模块:

电流获取子模块,用于获取电流传感器采集的电机的三相电流,包括A相电流Ia、B相电流Ib、C相电流Ic

电流滤波子模块,用于对电流获取模块获取的电流进行滤波;

克拉克变换(Clarke)子模块,用于将电流滤波模块滤波后的电流转换到静止坐标系,也就是,A相电流Ia、B相电流Ib、C相电流Ic转换到αβ静止坐标系,得到电流Iα、电流Iβ;Clark变换主要就是三相绕组到成两相绕组之间的变换;

帕克变换(Park)子模块,用于将电机电流从静止坐标系转换到旋转坐标系,也就是,将电流Iα、电流Iβ从αβ静止坐标系转换到dq旋转坐标系,得到电流Id、电流Iq;Park变换是两相静止坐标系αβ到两相旋转坐标系dq的变换。

可以理解的是,电流处理模块又进一步包括如下子模块:

帕克反变换(Clarke-1)子模块,用于将dq旋转坐标系下的电压信号Vd、Vq转换到αβ静止坐标系,得到电压Vα、电压Vβ

克拉克反变换(Park-1)子模块,用于将αβ静止坐标系下的电压信号转换为三相电压Va、Vb、Vc

可以理解的是,电机实时控制系统所所运行的预设电机控制算法,可以为但不限于SVPM/矢量控制算法、ID等于零算法,最大转矩电流比控制算法,预设电机控制算法可以根据实际应用需求设定,基于本实施例所提供的平台进行开发,实现相应的电机实时控制平台。

图2是电机实时控制系统的控制原理示意图,如图2所示,电机实时控制系统的总体控制原理为:速度控制模块将电机的转速n和输入的基准转速相比较,利用转矩和转速的关系,通过速度PI控制器计算取得定子电流转矩分量的参考量iqref,同时磁链控制模块给定定子电流励磁分量idref,电机的三相电流通过Clarke变换转换到两相静止坐标系中,再通过Park变换,转换到dq旋转坐标系中,转矩控制模块将dq坐标系中的电流信号与它们的参考电流idref、iqref分别进行比较,再通过PI控制器获得dq旋转坐标系下的电压信号Vd、Vq,最后通过Park反变换和Clarke反变换得到三相电压Va、Vb和Vc,经过调制模块输出SVPWM/SPWM波形。

具体地,上位机系统包括:

控制界面模块,用于获取电机的转速并进行实时显示。具体地,控制界面模块通过提供显示界面,对电机的转速实时显示,还可以对电流传感器采集的三相电流信号Ia、Ib、Ic,dq旋转坐标系下的电压信号Vd、Vq等进行实时显示,其中,三相电流信号Ia、Ib、Ic的实时显示波形如图3所示,此外,还可以为实时通信应用提供如图4所示的操作界面,方便后续在操作界面上调试。例如,用户可以在模式选择模块接口对应操作界面显示中进行模式选择操作。

为了便于多套电机控制系统的交互通信,上位机系统可以提供相应的交互通信接口应用,还可以提供波特率等简单计算应用。

实施例二

本实施例提供一种电机实时控制平台的开发方法,用于开发实施例一种的电机实时控制平台,图5示出了电机实时控制平台的开发方法流程示意图,该电机实时控制平台开发方法,包括:

确定电机实时控制平台的软件和硬件进行分区,其中,硬件为多核处理器,多核处理器至少包括第一ARM核、第二ARM核及FPGA核;软件为上位机系统、电机实时控制系统和实时操作系统;

将上位机系统嵌入第一ARM核中运行,用于运行实时通信应用;

将电机实时控制系统嵌入FPGA核中运行,用于执行预设电机控制算法;

将实时操作系统嵌入第二ARM核中运行,用于控制实时通信应用及电机实时控制系统的运行。

该多核处理器可以为但不限于ZYNQ-7000处理器,ZYNQ-7000处理器具有高性能低功耗的特点,以ZYNQ-7000处理器为例,其PS端包括两个ARM核,分别为第一ARM核、第二ARM核,其PL端包括一个FPGA核。

该实时操作系统可以为但不限于vxworks操作系统。

具体地,将所述电机实时控制系统嵌入FPGA核中运行,用于执行预设电机控制算法,包括:

利用程序设计语言编写预设电机控制算法;其中,程序设计语言可以为但不限于C语音。

将编写的预设电机控制算法放入多核处理器的硬件开发软件中进行硬件加速,生成预设电机控制算法的硬件描述语言;其中,硬件开发软件可以为但不限于SDSoc软件(赛灵思开发环境),硬件描述语言可以为VHDL语言。

将预设电机控制算法的硬件描述语言嵌入FPGA核。

本实施例中,利用实时操作系统保证进程调度、进程间通信、中断处理等系统公用程序精练而有效,充分保证了可靠的实时性,使同样的硬件配置能满足电机控制系统更强的实时性要求。基于FPGA核的并行和高速处理性能,将预设控制算法交由其完成,能够保证运算处理速度,将实时性要求较低的上位机系统在ARM核中实现,不占用FPGA核的资源,因而不影响FPGA核的运算速度,本实施例提供的开发方法能够开发出便于调试和修改的电机实时控制平台,并能够使整个控制平台兼顾实时性和运行的高性能性,能够显著提高电机控制的频率和效率,与现有技术中采用多片MCU处理器来实现电机控制相比,大大降低了电机实时控制平台的设计复杂度和开发成本,使得整个控制平台运行高效,便于后期的调试和维护。

在本发明实施例所提供的几个实施例中,应该理解到,所揭露的系统和方法,也可以通过其它的方式实现。以上所描述的系统和方法实施例仅仅是示意性的。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:不等长分段供电直线感应电机控制方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类