本发明专利技术公开了一种自适应的编码器测速装置和方法,包括一个QEP模块,将将电机解码和速度计算算法(QEP)硬件化为微控制器的一个独立外设,配合专门的调试工具,开发人员只需配置切换点速度之类的参数,无需很复杂的操作即可实现电机速度计算与控制的功能。硬件化后可以减轻软件的负担,使软件可以由更充足的时间去处理其他的进程,还可以减轻软件的维护成本,缩短软件的开发与调试周期。
【技术实现步骤摘要】
本专利技术涉及,属于电学领域,更具体而言,具体涉及一种QEP模块只是一个独立外设,而不是一个独立的处理器的基于硬件的编码器测速装置和方法。
技术介绍
现有方案采用的是软硬件结合的方法来测量和计算电机的转速,通常解码有硬件完成,计算有软件完成,而乘法在嵌入式软件中运算比较复杂,运算周期长,这样会使软件的处理流程变长,负担加大,在实时的应用控制系统中,可能没有足够的时间来处理更重要的事情。软件具有延时性,对电机转速的计算和控制的实时性较差。现有电机编码器解码中,电机高速与低速运行时,分别使用两套不同的解码方式,且切换点由软件定义。这样会使软件负担加重,如果软件正在处理重要进程或中断没有及时处理电机解码程序,那么会使电机得不到有效控制,使电机转速不平稳而产生波动,严重还会损坏应用系统。同时在切换点处不能精确采集到电机的转速,导致软件解码精度有一定的影响。其次,软件本身进行数据的数学运算的时候,耗时比较长,这样很容易导致软件解码后获得的电机转速不准确,致使对电机的速度的控制效果不理想。
技术实现思路
本专利技术针对上述问题,提供,包括一个QEP模块,将将电机解码和速度计算算法(QEP)硬件化为微控制器的一个独立外设,配合专门的调试工具,开发人员只需配置切换点速度之类的参数,无需很复杂的操作即可实现电机速度计算与控制的功能。硬件化后可以减轻软件的负担,使软件可以由更充足的时间去处理其他的进程,还可以减轻软件的维护成本,缩短软件的开发与调试周期。本专利技术解决上述问题所采用的技术方案是:—种自适应的编码器测速装置和方法,包括一个QEP模块,所述QEP模块只是将电机解码和速度计算算法硬件化为微控制器的一个独立外设,而不是一个独立的处理器,它的控制参数向CPU完全开放,不需要额外的编译工具和目标代码链接工具,只需要通过CPU就可以对其进行操作。进一步地,所述QEP模块包括:QDU单元,用于根据寄存器的配置,将输入的编码器脉冲正确的采到有效边沿和,并判断电机的转动方向,同时生成Timer、计数器的复位和锁存信号;Capture单元,用于对特定的编码盘生成的编码脉冲进行捕获,并计算脉冲有效边沿的时间;Wdt单元,用于做模块内部的看门狗单元,可以检测长时间没有编码脉冲的有效沿到来。在规定的Wdt计时范围内若无编码脉冲的有效边沿,则给出中断。用来防止编码盘的异常工作;Timer单元,用于做模块内部的计时器单元,计时范围可以通过软件配置。计时时间到后会产生中断;PCXU单元,用于做计数器计数单元,根据QDU单元生成的编码脉冲有效沿和正反转标记,来进行正向或反向计数,并通过QDU产生的复位和锁存信号来进行对计数器的复位和锁存;SCU单元,用于做速度计算单元,该单元主要进行速度的计算,通过软件配置的狭缝数量和当前时钟频率来计算当前一段时间的速度值,并可以通过寄存器传递给CPU ;MSU单元,用于做模式切换单元,该单元通过SCU单元输出的当前速度,并且参照当前的测速模式,根据软件配置的临界速度寄存器值,来进行判断何时切换测速模式和切换到何种测速模式。更进一步地,所述QDU单元输入端A、B、Z、mode_switch连接所述QEP单元外部,输出端 qa_cap、qb_cap、qc_cap 连接 Capture 单元,输出端 q_clk、q_dir、RST 连接 PCQJ 单元,输出端elk同时连接Wdt单元,双向总线中的timer_intr、timer_rst连接Timer单元;所述Capture单元输出数据到寄存器CAPStatus、CAPCntLatch,通过总线从寄存器QEPCAPEn、CAPConfig、RsetCap中读取数据,输出端capcnt连接SQJ单元,输入端mode_switch连接MSU单兀;所述Wdt单元通过总线从寄存器WDTEn、WDTvalue中读取数据;所述Timer单元通过输入端mode_switch连接MSU单元,输出端timer_latch连接SCU单元,通过总线从寄存器TimerEn、TimerValue中读取数据;所述PCXU单元通过输出端q印cnt连接S⑶单元,通过总线输出数据到寄存器QEPPosCnt, QEPPosNum,通过总线从寄存器 QEPCAPEn、QEPConf ig、QEPPosCntMax 中读取数据;所述SCU单元通过输出端speed连接MSU单元,通过总线从寄存器CrackNum、FreClock中读取数据,通过总线输出数据到寄存器Speed ;所述MSU单元通过总线从寄存器CriSpeedl、CriSpeed2中读取数据。更进一步地,一种自适应的编码器测速方法,包括以下步骤:(I)CPU配置QEP模块的相关参数,包括使能QEP、QEP的最大计数值、QEP的计时值和速度切换点的速度值;(2)外部电机开始转动,产生编码脉冲A、B和Z ;(3) QEP根据编码脉冲来计算速度并根据速度切换点的速度值自动切换高低速测速模式,到达一定条件时产生中断;(4)QEP产生中断后CPU可以将速度寄存器中的当前电机速度值读出,并通过其他相关外设对电机转速进行控制;(5)重复上述第三步,计算电机当前速度。更进一步地,所述计算电机当前速度,在低速模式的情况下,由于电机转动速度较慢,两个编码器脉冲的间隔较长,那么采用计算固定脉冲次数之间的时间,再用已知脉冲次数对应的角度除以这段脉冲的时间,即得出角速度。更进一步地,所述自适应的编码器测速方法,所述计算电机当前速度,在高速模式的情况下,与低速模式不同,此种模式下,由于电机转动速度比较快,两个编码脉冲的时间间隔比较短,采用低速模式的计数方法会计算不准确,那么此种模式采用的是在固定时间内计算脉冲次数的方法,再由此段时间内的脉冲次数和设定的时间来计算角速度计算方法和低速模式相同。本专利技术的优点是:1.将编码器解码功能、速度计算功能和高低速自动切换功能完全硬件化成微控制器的一个独立外设,而不是一个独立的芯片,这样节约了应用系统的成本,也使微控制器的功能更加多样化。硬件化后,硬件模块可以及时的计算出电机的速度并传输给软件对电机加以控制,由于处理速度快,在速度切换点处可以实现很平稳的控制电机的速度。实现了电机的安全与精确控制。2.纯硬件实现QEP算法可以减少软件的运算压力,增加软件的工作效率,使软件可以高效的处理其他进程。硬件的速度较快,可以比较实时的计算电机转速并进行控制。此种方法可以使电机转速波动较小。3.纯硬件的维护成本也比较小,集成到微处理器中后,基本不需要维护成本。除了上面所描述的目的、特征和优点之外,本专利技术还有其它的目的、特征和优点。下面将参照图,对本专利技术作进一步详细的说明。【附图说明】构成本申请的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为MCU架构框图;图2为QEP模块架构框图;图3为测速模式切换示意图;图4为低速模式测速方法图;图5为高速模式测速方法图。【具体实施方式】下面将参考附图并结合实施例,来详细说明本专利技术。参考图1至图5,如图1至图5所示的,包括一个QEP模块,所述QEP模块只是将电机解码和速度计算算法硬件化为微控制器的一个独立外设,而不是一本文档来自技高网...
【技术保护点】
一种自适应的编码器测速装置和方法,包括一个QEP模块,其特征在于,所述QEP模块只是将电机解码和速度计算算法硬件化为微控制器的一个独立外设,而不是一个独立的处理器,它的控制参数向CPU完全开放,不需要额外的编译工具和目标代码链接工具,只需要通过CPU就可以对其进行操作。
【技术特征摘要】
1.一种自适应的编码器测速装置和方法,包括一个QEP模块,其特征在于,所述QEP模块只是将电机解码和速度计算算法硬件化为微控制器的一个独立外设,而不是一个独立的处理器,它的控制参数向CPU完全开放,不需要额外的编译工具和目标代码链接工具,只需要通过CPU就可以对其进行操作。2.根据权利要求1所述的QEP模块,其特征在于,所述QEP模块包括: QDU单元,用于根据寄存器的配置,将输入的编码器脉冲正确的采到有效边沿和,并判断电机的转动方向,同时生成Timer、计数器的复位和锁存信号; Capture单元,用于对特定的编码盘生成的编码脉冲进行捕获,并计算脉冲有效边沿的时间; Wdt单元,用于做模块内部的看门狗单元,可以检测长时间没有编码脉冲的有效沿到来。在规定的Wdt计时范围内若无编码脉冲的有效边沿,则给出中断。用来防止编码盘的异常工作; Timer单元,用于做模块内部的计时器单元,计时范围可以通过软件配置。计时时间到后会广生中断; PCXU单元,用于做计数器计数单元,根据QDU单元生成的编码脉冲有效沿和正反转标记,来进行正向或反向计数,并通过QDU产生的复位和锁存信号来进行对计数器的复位和锁存; SCU单元,用于做速度计算单元,该单元主要进行速度的计算,通过软件配置的狭缝数量和当前时钟频率来计算当前一段时间的速度值,并可以通过寄存器传递给CPU; MSU单元,用于做模式切换单元,该单元通过SCU单元输出的当前速度,并且参照当前的测速模式,根据软件配置的临界速度寄存器值,来进行判断何时切换测速模式和切换到何种测速模式。3.根据权利要求1或2所述的QEP模块,其特征在于,所述QDU单元输入端A、B、Z、mode_switch连接所述QEP单元外部,输出端qa_cap、qb_cap、qc_cap连接Capture单元,输出端q_clk、q_dir、RST连接PCCU单元,输出端elk同时连接Wdt单元,双向总线中的timer_intr、timer_rst 连接 Timer 单兀; 所述Capture单元输出数据到寄存器CAPStatus、CAPCntLatch,通过总线从寄存器QEPCAPEn> CAPConfig、RsetCa...
【专利技术属性】
技术研发人员:何好山,刘振军,梁剑,
申请(专利权)人:东莞博用电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。