本发明涉及电机驱动控制的消隙技术领域,尤其是指一种双电机消隙驱动控制方法及系统。
背景技术:
由于机械传动系统中齿轮轮齿之间存在间隙而导致的非线性位置误差,同时也是影响系统动态性能和稳定精度的重要因素。齿隙非线性会使系统产生振荡,大大降低系统的稳定性与精度。
为消除齿隙的影响,双电机驱动是经常被采用的一种控制方法。同时,结合对电流环的附加控制完成,双电机驱动的实现过程中,由于与硬件关联大,往往采用嵌入式平台构建速度环,配置驱动电流环进行控制,使得驱动器的控制变得复杂而且耦合性高。但是,现有的双机消隙驱动系统往往实现复杂,可扩展性和可维护性较差。
技术实现要素:
有鉴于此,本发明提出了一种双电机消隙驱动控制方法及系统,该系统以成品驱动器的双环控制为基础,在速度环外进行消隙控制,使其在驱动和算法上得以更好的分层,与正交分层架构的软件相结合,在工程推广和实现上更加便捷。
为了实现上述目的,本发明采用的技术方案为:
一种双电机消隙驱动控制方法,应用于双电机消隙驱动控制系统,所述双电机消隙驱动控制系统包括电源处理模块、嵌入式处理器、驱动单元、双电机传动机构、调试和远控接口、屏幕显示单元和按键输入单元,其中,电源处理模块给嵌入式处理器、屏幕显示单元以及驱动单元提供电源,嵌入式处理器用于实现人机交互、模式切换、数据存储、双机消隙、故障检测的功能;
所述双电机消隙驱动控制系统根据性能需要在横向上分为驱动层、数据处理层、模块层和应用层;其中,驱动层和数据处理层完成硬件配置和数据源码的处理,模块层和应用层用于功能实现;在纵向上,根据各个功能分成远控调试、双机消隙、屏幕控制、按键响应、数据存储、故障检测和模式切换功能;在横向层次上,不可越层调用,各层只调用下层,且本层的功能模块之间不互相调用;在纵向层次上,每个功能有独自的调用关系,互相之间的调用通过共享数据空间实现;
具体步骤如下:
(1)系统初始化,完成最底层驱动层调用,对各部分硬件以及各个功能的初始状态进行配置;
(2)接口检测,通过在数据处理层的操作,完成对于各个通信接口解码以及硬件状态监测;
(3)状态获取,通过在模块层的操作,为应用层模块做准备,包括协议解析和状态获取相关操作,完成数据向功能的转化,完成功能状态刷新;
(4)控制模式处理,通过在应用层的流程控制,完成命令处理、模式切换和运行切换操作;
(5)驱动控制,完成对系统驱动,包括消隙算法以及其他驱动控制的操作;
(6)屏幕刷新和按键响应,完成状态显示和按键操作响应的人机交互的相关功能;
(7)故障检测,完成对系统相关部件的故障检测,进行显示或进行保护,该检测为应用层的功能,基于状态的获取以及状态的检测。
一种双电机消隙驱动控制系统,其包括电源处理模块、嵌入式处理器、驱动单元、双电机传动机构、调试和远控接口、屏幕显示单元和按键输入单元,其中,电源处理模块给嵌入式处理器、屏幕显示单元以及驱动单元提供电源,嵌入式处理器用于实现人机交互、模式切换、数据存储、双机消隙、故障检测的功能;
该系统根据性能需要在横向上分为驱动层、数据处理层、模块层和应用层;其中,驱动层和数据处理层完成硬件配置和数据源码的处理,模块层和应用层用于功能实现;在纵向上,根据各个功能分成远控调试、双机消隙、屏幕控制、按键响应、数据存储、故障检测和模式切换功能;在横向层次上,不可越层调用,各层只调用下层,且本层的功能模块之间不互相调用;在纵向层次上,每个功能有独自的调用关系,互相之间的调用通过共享数据空间实现;
系统初始化时,完成最底层驱动层调用,对各部分硬件以及各个功能的初始状态进行配置;
接口检测时,通过在数据处理层的操作,完成对于各个通信接口解码以及硬件状态监测;
状态获取时,通过在模块层的操作,为应用层模块做准备,包括协议解析和状态获取相关操作,完成数据向功能的转化,完成功能状态刷新;
控制模式处理时,通过在应用层的流程控制,完成命令处理、模式切换和运行切换操作;
驱动控制时,完成对系统驱动,包括消隙算法以及其他驱动控制的操作;
屏幕刷新和按键响应时,完成状态显示和按键操作响应的人机交互的相关功能;
故障检测时,完成对系统相关部件的故障检测,进行显示或进行保护,该检测为应用层的功能,基于状态的获取以及状态的检测。
进一步的,所述电源处理单元为交流供电或包含整流模块的直流供电,若采用交流供电的驱动单元,则其电源检测归于驱动单元。
进一步的,远控接口用于提供上位机通过通信接口对控制系统的实时控制,完成精准控制,其通信方式为串口通信、can总线通信或者其他现场总线。
进一步的,调试接口用于提供对系统的内部属性和参数的读取以及配置,完成调试以及故障检测功能。
进一步的,屏幕显示单元和按键输入单元用于系统的本地控制,完成高于远控权限的本地控制功能,屏幕显示单元用于显示基本状态信息,键盘输入单元用于完成基本控制功能。
进一步的,所述驱动层不仅包括驱动,还包括基于硬件驱动的简单功能单元;所述功能层是与硬件相隔离的逻辑算法模块,其通过驱动层完成与硬件的交互。
进一步的,功能层的模块对于驱动层的调用具备正交性。
进一步的,双机消隙所采用的算法是基于速度环的算法。
采用上述技术方案所取得的有益效果在于:
1、本发明系统的分层架构使得工程设计可以更好地集中于功能实现,逻辑清晰,实现方便。
2、本发明可以使用基于双闭环外的消隙算法,从而使得消隙算法实现更为便捷,对工程实现以及未来的维护可扩展提供了良好的基础。
3、本发明中功能层的模块对于驱动层的调用具备正交性,使得各个功能之间减少互相之间的耦合,减少交叉调用,从而提高了可复用性,提高了系统的可维护性。
附图说明
图1本发明实施例中双电机消隙驱动控制系统的组成原理图。
图2本发明实施例中双电机消隙驱动控制系统的分层构架图。
图3本发明实施例中双电机消隙驱动控制系统的消隙原理图。
图4本发明实施例中双电机消隙驱动控制系统的控制过程流程图。
具体实施方式
下面结合附图对本发明的具体实施方式进行详细说明。
一种双电机消隙驱动控制系统,包括电源处理、嵌入式处理器、驱动单元、双电机传动机构、调试和远控接口以及屏幕显示和按键输入等部分。电源处理部分给嵌入式处理器、屏幕显示以及驱动单元提供电源。嵌入式处理器作为核心部分,完成与调试接口、远控接口以及屏显控制之间的人机交互,实现双机消隙算法并以此为基础完成对驱动单元的指令控制,从而通过双电机传动机构完成对负载的驱动。
其中,电源处理单元根据驱动单元的不同类型,可以是交流供电,也可以是包含整流模块的直流供电,若采用交流供电的驱动单元,则其电源检测可归于驱动单元,简化外部电路。
远控接口可以提供上位机通过通信接口对控制系统的实时控制,完成精准控制,其通信方式可根据系统和信息的差异而选取不同的通信方式,可以是串口通信、can总线通信或者其他现场总线。
调试接口提供对系统的内部属性和参数的读取以及配置,完成调试以及故障检测等专业检测功能。
屏幕显示和键盘输入系统的本地控制,完成高于远控权限的本地控制功能,屏幕显示基本状态信息,键盘输入完成基本控制功能,也可根据需求采用其他显示和输入设备。
该系统将处理架构总体分为面向应用的核心算法和逻辑处理的功能层面以及基于硬件操控的驱动及处理的驱动层面,人机交互、模式处理、数据存储、双机消隙以及故障检测等单元属于面向功能的层面,而接口处理、屏幕控制、按键响应以及驱动控制则属于基于硬件和数据处理的驱动层。
其中,驱动层并不是狭义的驱动,还包括基于硬件驱动的一些简单功能单元;而功能层则是与硬件相隔离的逻辑算法模块,其通过驱动层完成与硬件的交互,实际操作中,可根据实际系统要求进行细分。
功能层的模块对于驱动层的调用应该具备正交性,各个功能之间减少互相之间的耦合,减少交叉调用,提高可复用性,提高系统的可维护性。
双机消隙所采用的算法是基于速度环的算法,该算法不仅免除了传统双机算法中对内环电流环的干预,使得驱动单元的功能更好地利用和发挥,同时,也更方便地将消隙算法和驱动双环驱动控制在功能上进行分层,使得消隙算法功能更加独立,方便工程实现和维护。
图1为系统结构图,描述了系统在功能和硬件上的组成。在嵌入式处理器101中,集合了主要功能层面的处理模块,而外围的远程接口102、调试接口103、驱动单元104、屏幕显示105、按键输入106等硬件中则结合相应的驱动和处理层的模块,也表明其更多依赖于驱动进行的控制。机械传动结构108在驱动单元的控制下实现消隙。电源处理107则为系统所有电气部件进行供电。
图2为系统的分层构架图,本系统根据性能需要在横向上主要分为四层——驱动层、数据处理层、模块层和应用层。其中,驱动层和数据处理层主要完成硬件配置和数据源码的处理,模块层和应用层则着重于功能实现。在纵向上,根据各个功能分成——远控调试、双机消隙、屏幕控制、按键响应、数据存储、故障检测和模式切换功能。在横向层次上,不可越层调用,各层只调用下层,而且为保证良好的内聚性,本层的功能模块之间不互相调用。在纵向层次上,每个功能有独自的调用关系,互相之间的调用可通过共享数据空间,而不会互相产生关联,真正做到高内聚而低耦合。
图3为消隙原理图,描述了系统所采用的双机算法的基本原理。vref表示当前给定的速度指令值,asr和acr则为两个速度环的速度调节器和电流调节器,wc(s)和wm(s)则表示两个电机驱动部分的传递函数,wb(s)表示电流偏置和力矩均衡环节调节器。wb(s)一定是在驱动单元的外部进行的,以保证驱动单元本身双闭环控制系统的完整性。相对于图2中双机消隙功能下的模块层以下都是驱动单元自身的控制,wb(s)则可以提升至应用层作为顶层的算法模块,既充分利用了驱动单元本身的双环控制功能,同时,在高层对双机算法的调整也不会干扰双闭环的性能。
该系统的实现流程如图4所示,具体步骤如下:
(1)系统初始化,该步骤主要完成最底层驱动层调用,对各部分硬件进行配置以及各个功能的初始状态进行配置。
(2)接口检测,该步骤完成对于各个通信接口解码以及硬件状态监测,主要在数据处理层的操作。
(3)状态获取,该步骤主要完成数据向功能的转化,完成功能状态刷新。主要在模块层操作,为应用层模块做准备。包含协议解析和状态获取相关操作。
(4)控制模式处理,该步骤主要完成命令处理、模式切换和运行切换等操作。该部分为应用层的流程控制。
(5)驱动控制,该步骤主要完成对系统驱动,包含消隙算法以及其他驱动控制的操作。
(6)屏幕刷新和按键响应,该步骤完成状态显示和按键操作响应等人机交互的相关功能。
(7)故障检测,该步骤完成对系统相关部件的故障检测,进行显示或进行保护,该检测为应用层的功能,基于状态的获取以及状态的检测。
经过以上流程,即可完成双电机消隙驱动控制系统的主要工作,该系统的分层架构使得工程设计可以更好地集中于功能实现,逻辑清晰,实现方便,特别是使用了基于双闭环外的消隙算法,也使得消隙算法实现更为便捷,对工程实现以及未来的维护可扩展提供了良好的基础。
总之,该系统在独立驱动器的双环控制基础之上,在速度环之上给定消隙算法,并在采用正交分层架构,对软件进行模块划分,整合了模式切换、界面交互、双机消隙、驱动控制、故障检测、参数保存以及外部调试等多个功能于一体,不仅在硬件模块上做到了简单易实现,而且在功能模块的软件实现上也做到了层次清晰,复用性强,可靠性高,提高工程实施的效率,降低成本,利于后续扩展和继承。