System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种通过单片机实现M/T法测速的方法技术_技高网

一种通过单片机实现M/T法测速的方法技术

技术编号:40743524 阅读:4 留言:0更新日期:2024-03-25 20:02
本发明专利技术提供了一种通过单片机实现M/T法测速的方法,该方法利用单片机外设同时对脉冲数及脉冲时间间隔进行检测,利用主、从定时器、从定时器DMA实现M/T法测速,其中所述主定时器实现编码器脉冲个数计数,即为M法;所述从定时器和从定时器DMA用于实现T法测速。根据当前给定速度,高速时读取主定时器脉冲个数,和上次速度环读取脉冲个数做差值即可得到当前速度值;低速时读取存储于单片机RAM区的捕获时间值队列,该队列当前值减去上次值为脉冲间隔时间,计算得到当前速度值。相比传统测速方式,本发明专利技术不增加外围电路,不需要额外增加捕获中断,测速算法简单,能够在宽速域范围检测到高精度速度值。

【技术实现步骤摘要】

本专利技术属于电机测速领域,具体涉及一种通过单片机实现m/t法测速的方法。


技术介绍

1、电机的速度和位置检测是实现电机矢量控制重要环节,其实现方法通常是通过编码器转换成电脉冲信号,然后通过处理器或者控制器检测出脉冲个数或者脉冲间时间间隔,计算出电机的速度。通过检测脉冲个数的方式计算转速的方法称为m法;通过检测脉冲信号间时间间隔的方式计算电动机转速的方法称为t法;

2、由于编码器线数的限制,在有限的速度环控制周期内,电机低速段检测到的脉冲数过少或者检测不到脉冲,从而导致m法精度降低;而t法为了兼顾低速检测时不至于导致定时器溢出,其定时器计数基频一般设置较小(周期较长)从而导致高速时t法精度降低;m/t法兼顾了两者的优点,提高了速度环的带宽;

3、目前实现m/t法的主要方式有控制器或处理器加cpld或者fpga方式、单独fpga方式、单独dsp通过多接口配合软件中断方式。

4、专利cn102035455a提出了一种dsp+cpld的检测方法,该方法由给定频率判断采用t法还是m法,给定频率低时由dsp完成t法,给定频率高时由cpld完成m法。由于增加了cpld,提高了测速的精度;

5、专利cn201310082392提出了一种基于dsp的m/t法测速的实现方法,该方法利用qep单元和cap单元相结合,实现了同时采集脉冲个数及脉冲时间间隔,提高了测速精度,同时又具有良好的经济性;

6、专利cn201510540155通过fpga实现了自适应的m/t法测速形态,提高了低速和高速的测速范围;

7、但专利cn102035455a采用dsp+cpld的架构,专利cn201510540155采用fpga,其成本是普通控制单片机的数倍,不适合应用在对价格要求敏感的领域;而专利cn201310082392采用dsp实现,虽然成本和单片机接近,但其多接口加软件中断方式软件开销较大(尤其是在高速时),占用其它算法的处理时间。


技术实现思路

1、针对上述技术问题,本专利技术提出了一种通过单片机实现m/t法测速的方法,该方法相比较传统测速方式,不增加外围电路,不开捕获中断,实现了宽速域的速度测量。

2、为达到上述目的,本专利技术采用的技术方案为:

3、一种单片机实现m/t法测速的方法,该方法利用单片机的主定时器、从定时器以及从定时器dma(数据直接存储外设)实现;其中所述主定时器设置为正交编码器输入模式,计数方式为编码器a线及b线的上升沿及下降沿,从而实现编码器脉冲个数计数,即为m法。

4、所述主定时器输出的从触发事件为正交编码器器计数事件。

5、所述从定时器设置为捕获模式,其捕获模式的输入为主定时器编码器的脉冲计数事件。所述从定时器dma自动传输触发时间设置为捕获事件,传输值为从定时器捕获时间值;该捕获时间值以队列方式存储于单片机ram区,即为t法。

6、所述一种单片机m/t法实现方法在速度环计算速度时,根据当前给定频率的大小作区分,当给定频率大于等于5hz时读取主定时器脉冲个数,和上次速度环读取脉冲个数做差值即可得到当前速度值;当给定频率小于5hz时读取存储于单片机ram区的捕获队列,该队列当前脉冲捕获时间值减去队列存储的上次脉冲捕获时间值为脉冲间隔时间,同样计算得到当前速度值。

7、所述一种通过单片机实现m/t法测速的方法,由于速度控制环计算速度的时间和当前捕获脉冲的时间存在时间偏差从定时器最后捕获时间值和当前从定时器的计数器计数值之差即为所述时间偏差根据速度控制环为惯性环节,速度不会跃变,由可以计算出偏差位置,实现对电机转子位置的插补。

8、本专利技术实现的有益效果:

9、本专利技术利用单片机外设同时检测脉冲数及脉冲时间间隔,同时利用dma将脉冲时间间隔直接存储,不需要额外增加捕获中断。在宽速域范围检测到高精度速度值,同时又具有良好的经济性。

本文档来自技高网...

【技术保护点】

1.一种通过单片机实现M/T法测速的方法,其特征在于:该方法利用单片机的主定时器、从定时器以及从定时器数据直接存储外设DMA实现;其中所述主定时器设置为正交编码器输入模式,计数方式为编码器的A线及B线的上升沿及下降沿,从而实现编码器脉冲个数计数,即为M法;所述从定时器设置为捕获模式,其捕获模式的输入为主定时器编码器脉冲的计数事件;所述从定时器DMA自动传输触发事件设置为捕获事件,传输值为从定时器捕获时间值;该捕获时间值以队列方式存储于单片机RAM区,即为T法;根据当前给定频率的大小作区分,当给定频率≥5Hz时读取主定时器脉冲个数,和上次速度控制环读取脉冲个数做差值即可得到当前速度值;当给定频率<5Hz时读取存储于单片机RAM区的捕获时间值队列,该队列当前脉冲捕获时间值减去队列存储的上次脉冲捕获时间值为脉冲间隔时间,同样计算得到当前速度值。

2.根据权利要求1所述的一种通过单片机实现M/T法测速的方法,其特征在于:速度控制环计算速度的时间和当前捕获脉冲的时间存在时间偏差从定时器最后捕获时间值和从定时器的当前计数值之差即为所述时间偏差由计算出偏差位置,实现对电机转子位置的插补。

...

【技术特征摘要】

1.一种通过单片机实现m/t法测速的方法,其特征在于:该方法利用单片机的主定时器、从定时器以及从定时器数据直接存储外设dma实现;其中所述主定时器设置为正交编码器输入模式,计数方式为编码器的a线及b线的上升沿及下降沿,从而实现编码器脉冲个数计数,即为m法;所述从定时器设置为捕获模式,其捕获模式的输入为主定时器编码器脉冲的计数事件;所述从定时器dma自动传输触发事件设置为捕获事件,传输值为从定时器捕获时间值;该捕获时间值以队列方式存储于单片机ram区,即为t法;根据当前给定频率的大小作区分,当给定频率...

【专利技术属性】
技术研发人员:李玉泉范满义徐飞史黎明李子欣高范强赵聪李耀华张法瑞李步云
申请(专利权)人:齐鲁中科电工先进电磁驱动技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1