一种电机控制单电阻采样方法与流程

文档序号:19578659发布日期:2019-12-31 19:43阅读:2694来源:国知局
一种电机控制单电阻采样方法与流程

本发明涉及电子技术领域,特别涉及一种在电机控制领域被广泛采用的单电阻采样方法。



背景技术:

据统计,全球60%的电力消耗都来源于电机,电机控制是一个多元而广阔的应用市场。通常地,为了能够采集到电机的相电流,我们使用3电阻采集方法,即在3相桥式电路的3个下桥臂分别串联3个采样电阻,利用svpwm(空间矢量pwm)的零矢量区阶段下桥臂的续流作用来获取电机的3相电流。为了放大电流,同时抑制电流的开关噪声,每个采样电阻都需要在后级使用一个运算放大器。那么总共需要3个采样电阻,3个运算放大器(有时候也使用2个运算放大器),这对于一些成本敏感的领域,是无法接受的。因而单电阻技术(1-shunt)应运而生。顾名思义,单电阻技术就是使用1个采样电阻,一个运算放大器就可以实现电机3相电流采集的一种技术。单电阻技术除了能极大地降低方案的成本,同时也可以有效地提高电压的利用率,进而提升电机的高速运行能力。

单电阻采样技术对mcu外设要求极高,至少应具备以下三点:第一、pwm模块能够产生非对称的pwm波形。第二、在一个pwm周期内,任意时刻触发2次adc采集。第三、具备合理的adc结果获取的机制。对于第三点,通常又有三种主流的做法:1.只采用一个adc通道,开启adc转换完成的中断,每转换完成一次后,就去读取adc转换的结果(简称为中断法);2.带dma功能的mcu,可使用dma数据传输功能在后台将adc转换结果存放在buffer里(简称为dma法);3.同一个adc通道对应2级fifo(简称为fifo法,相当于2个结果寄存器)。

方法1的弊端在于会打断正在进行的foc电机算法的执行;方法2的弊端在于很多低端的mcu是不带dma功能的,因为会增加mcu的成本;方法3的弊端在于一旦出现干扰信号使fifo的指针出错,那么数据就会全部乱掉,从而导致电机运行出错。



技术实现要素:

为了解决上述问题,本发明提供了一种电机控制单电阻采样方法。

为实现上述目的,本发明所采用的技术方案是:包括中微m0芯片;所述中微m0芯片包括运放模块、pwm模块和adc采样模块;

所述的单电阻采样方法包括以下步骤:

(1)m0芯片的adc通道分为内部通道和外部通道,m0芯片的运放输入引脚与采样电阻电性连接,m0芯片的运放输出引脚与外部adc输入端相连,选用运放opa0作为用于放大流过单电阻上的电流信号;

(2)选择m0芯片内置pwm计数器(cnt0~cnt5)的向上计数边沿或者向下计数边沿的任意一个时刻作为触发时刻,产生触发事件;

(3)m0芯片内置的两个数字比较器的输出分别连接内部adc通道和外部adc通道

(4)m0芯片的内部adc通道和外部adc通道分别连接各自的结果寄存器。

优选的:m0芯片的运放输出引脚同时作为运放的输出脚和外部adc输入通道时,m0芯片的内部开关s5闭合。

优选的:数字比较器0和数字比较器1都选择pwm的计数器cnt0的向下计数边沿作为比较触发。

优选的:运放opa0的输出配置为内部adc通道通过内部线路连接到an30通道,结果寄存在寄存器adcdata30;运放opa0的输出引脚配置为外部adc通道,结果寄存在寄存器adcdata02。

优选的:数字比较器0的输出事件用于触发an30通道,数字比较器1的输出事件用于触发an02通道。

本发明的有益之处在于:基于中微半导体最新的m0内核的芯片独有的引脚复用技术和adc内部通道技术,通过中微mo芯片的一个引脚(op_o/adc_ch2)对应两个adc通道,相应地也有两个adc结果寄存器,在采样的过程中可以将两次采样的结果分别寄存在两个adc结果寄存器中,避免了采用中断法需要进入adc中断服务子程序去读取adc转换的结果,从而打断电机控制算法执行的弊端;也避免了fifo法出现异常导致adc存储结果顺序出错的问题。从而使得采样过程稳定,得到准确的adc采样结果,电机控制算法的实施也更加流畅;采用中微mo芯片实现单电阻采样成本更低,应用更加广泛。

附图说明

图1为中微mo芯片内部架构;

图2为两个内置数字比较器组成的adc触发源;

图3为流畅的电机控制算法执行时序。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚的说明本发明的技术方案,而不能以此来限制本发明的保护范围。

中微m0mcu内置2个通用运算放大器,2个adc模块(1个低速100kspsadc(adc0),一个高速2mspsadc(adc1))。adc输入通道可选择外部引脚输入,也可选择直接连接芯片内部的信号,比如运放0/1的输出,pga0/1的输出。假定选择运放0放大流过采样电阻的电流,那么可选择内部adc通道来读取运放0的输出电压。同时运放0的输出引脚又可以复用成其他的外部adc通道。这样的话,相当于2个adc通道就可以完美地实现单电阻技术。

如图1所示,是本发明所采用的中微m0芯片的内部架构,adc通道分为内部通道和外部通道,其中an00/an01/an02属于外部通道,an30属于内部通道,opa为中微mo芯片内置的运算放大器,运算放大器的输入引脚与采样电阻电性连接,运放的输出端直接从芯片内部连接到an30通道,此时s1闭合,即可连接到中微mo芯片内置的adc采样模块上,内部adc通道对应的结果寄存器为adcdata30,可将一次采样的结果寄存在adcdata30寄存器中。

opa的输出引脚,即adc_ch2与外部adc采样芯片相连接,构成外部adc通道,此时s5闭合,当adc转换后,将adc转换结果寄存在外部adc通道对应的结果寄存器adcdata02中。

这样就可以在不需要进入中断程序来读取adc转换结果,电机控制算法的执行不会被其他事件打断,且不会因为出现异常原因导致adc触发事件出错,从而导致adc结果对应关系出错的问题。

如图2所示是两个内置数字比较器组成的adc触发源,可以选择pwm计数器(cnt0~cnt5)的向上计数边沿或者向下计数边沿的任意一个时刻作为触发时刻,产生触发事件;本发明的数字比较器0和数字比较器1都选择pwm0的计数器cnt0的向下计数边沿作为比较触发。

pwm模块一般具有pwm周期寄存器、计数器和比较寄存器,软件设定周期寄存器和比较寄存器后,启动计数器,计数器从0开始加1计数,当计数器的值小于比较寄存器的值时,pwm模块输出低电平,大于等于比较寄存器时,pwm模块输出高电平,当计数器的值等于pwm周期寄存器的值时,计数器清零,重新从0开始加1计数,这样可以周期性的产生pwm脉冲。

数字比较器0的输出事件用于触发an30通道,adc转换结果存放在adcdata30结果寄存器中;数字比较器1的输出事件用于触发an02通道,转换结果存放在adcdata02结果寄存器中。

如图3所示是流畅的电机控制算法执行时序。其中黑框部分为进入pwm的零点中断服务子程序后读取adc结果寄存器中的值(adcdata30,adcdata02);虚线部分为电机控制算法执行。从图中我们可以清楚地看到,电机控制算法一直在持续运行,没有受到任何外部事件的打断。

本发明的采样方法采用3个主要函数控制程序,包括:epwm_config(),adc_config(),epwm_irqhandler()

函数epwm_config()的作用是配置芯片的pwm模块,使之产生3组互补的pwm波形输出,为了满足单电阻采样的需求,这3组pwm输出采用非对称的方式(单电阻采样的需求,可参考相关文献,这里就不赘述)该函数的具体设置步骤为:

(1)将6路pwmio口设置为普通输出口,根据外围驱动和mos的特性,输出相应的高低电平;

(2)将pwm的计数时钟设置为上下计数模式,非对称互补输出模式(单电阻采样算法对pwm的要求);

(3)设置pwm的计数时钟,时钟频率越高,pwm占空比的变化量越小,占空比的调节越细腻(本案采用48mhz);

(4)设置pwm周期寄存器,即配置电机运行的载波频率;

(5)设置pwm的占空比寄存器的初始值;

(6)设置pwm的死区时间(根据不同mos进行调整);

(7)设置pwm计数器的加载方式,通常采用自动加载模式;

(8)设置pwm的中断(本案采用零点中断)及优先级;

(9)设置数字比较器dcmp0/1的触发条件(本案选择pwm计数器0的下降沿,且与cmptgdat0/cmptgdat1的值匹配时产生触发条件);

(10)启动pwm计数器。

函数adc_config的作用是配置芯片的adc模块,主要是将adc触发条件设置为硬件触发(epwm计数比较器0/1),该函数的具体设置步骤为:

(1)配置adc模块的工作时钟(本案采用12mhz);

(2)选择adc模块的输入通道(本案选择an02和an30通道);

(3)an02通道的触发条件设置为epwm计数比较器0;

(4)an30通道的触发条件设置为epwm计数比较器1;

(5)启动adc模块,开始进行adc转换。

至此adc模块配置完成,即可在非对称pwm下降沿的任何位置设置触发条件(在具体的实施过程中,不断地更改cmptgdat0/cmptgdat1的值)。

函数epwm_irqhandler()是pwm中断服务子程序,本案中采用pwm的零点中断,即pwm计数器的零点到来后,自动进入中断服务子程序,该函数的具体实施步骤为:

(1)读取adc转换结果(本案中需要读取an02和an30的adc转换结果);

(2)通过电流重构函数,计算出电机u,v,w3相电流;

(3)执行电机控制算法(由于adc模块没有设置中断,电机控制算法在整个执行过程中不会被打断)。

上述实施方式是优选的实施方式,应当指出的是,上述优选实施方式不应视为对本发明的限制,本发明的保护范围应当以权利要求所限定的范围为准。对于本技术领域的普通技术人员来说,在不脱离本发明的精神和范围内,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1