北京永光高特微电机有限公司
Beijing  YongGuang  Micro-Motor  Manufacturing  Co.,Ltd.
 
新闻详情

基于C8051F320的无位置传感器无刷直流电动机控制技术

来源:北京永光高特微电机有限公司作者:李利网址:http://www.yggtwdj.cn浏览数:4476


  摘要:介绍一种基于C8051F320的无位置传感器无刷直流电动机控制系统的设计,系统采用反电势过零检测法定转子位置信息,完成了速度、电流的双闭环控制。结合C8051F320具有的多机9位UART通信模式,利用Labview80实现了对多台电机的测试与PI参数整定功能。样机实验表明,该系统结构简单,运行可靠,调速性能良好。

0引  言

   随着磁性材料、电力电子器件和控制技术的发展,无刷直流电动机的应用越来越广泛。无刷直流电动机与直流电动机和交流异步电动机相比,具有结构简单、调速特性好、无换向器和效率高的特点。因为无刷直流电动机没有换向器,需要采取一定措施获取转子位置信息。而获取转子位置信息的方法通常有两种,一种是采用传感器获取转子位置,这种方法简单易行,但传感器易受环境影响,在高温等环境下,性能会不稳定,甚至失效,同时连接线较多。另一种是利用测量得到的电流、电压、电机的基本方程、观测器和电机的反电势等获得转子位置信息。

   在第二种方法中,利用反电势过零点获得转子位置信息的“反电势法”简单可行,文中利用该方法设计了一种用于牙钻机的无位置传感器无刷直流电动机(简称牙钻电机)控制系统,并结合Labvlew 8.0完成对系统的测试及参数整定。

1反电势过零检测

   反电势过零检测法是目前技术最成熟,实现最简单,应用最广泛的转子位置检测方法。文献[1]指出在方波无刷直流电动机中,绕组反电势是正负交变的梯形波,当某相绕组的反电势过零时,转子直轴与该相绕组轴线重合。由图1可知,只要检测到各反电势的过零点,延迟30°电角度,就可获得对应的换相时刻,这就是反电势法检测无刷直流电动机转子位置换相工作原理。

            

(a)三相反电势和电流波形            (b)反电势法换相原理

图1反电势法换相原理

   本系统牙钻电机本体已将中线引出,所以利用位置检测电路便可以获得电机位置信号。图2为电机A相绕组位置检测电路,其余两相与A相同。

 

           图2位置检测电路

   由于采用PWM方式,A中往往含有高频调制信号。影响电压比较器的正常工作,因此需要采用滤波器对端电压信号A进行滤波。图2中滤波参数决定着最后得到的方波信号能否准确地反映转子位置,所以设计时要格外注意。首先,保证滤波器的相移尽量小,图2中采用的滤波电路相移很小,对检测到信号影响也较小;其次,因元器件存在一定的误差,在选用R、C元件时,应保证三相对应的电阻和电容值差别很小,否则会引起三相滤波器的移相角不一致,从而对电机运行性能带来不利影响。

2控制原理

   系统由电流反馈控制环及速度反馈控制环构成双闭环系统。电机转速通过单片机检测位置检测电路获得的转子位置信息息HA、HB、Hc计算得到,系统的内环和外环均由单片机根据速度给定值与反馈值比较运算得到电流给定值,实际为对应的电机给定电压值。内环为电流环,对速度控制器的输出电流给定值与经采样电阻采样后送A/D转换得到的电流值,通过适当的PI算法,给出对应的PWM信号,实现电机调速。电机的转向控制由给定信号经单片机处理后控制对应开关管导通顺序,完成正反转功能。由于将MOSFET的实际电流采样情况送到单片机,当三相桥的运行电流超过给定值时,单片机可以灵活地进行保护控制。

   系统选用C8051F320作为控制核心。该处理器是完全集成的混合信号系统级芯片(SoC),具有与8051兼容的高速CIP一5l内核(运算速度高达25MIPS)。拥有丰富的片内外资源,其上集成有A/D,可编程增益放大器;电压比较器、电压基准、温度传感器、SM Bus/12C、USB、UATT、PCA及看门狗等。这些外设的高度集成,为设计小体积、低功耗、高性能的系统提供了极大的方便,同时可以大大降低系统整体成本。系统原理图如图3所示。

    图3系统原理框图

   对于无位置传感器无刷直流电动机而言,在电机静止或转速很低的情况下,位置检测电路无法通过检测反电势过零点准确获得转子位置信息,因此,需要采用一定的起动方法使电机运转到可以稳定获得反电势过零点的速度。由于牙钻电机转子惯量小,同时考虑成本及复杂程度,本系统采用一种开环起动技术完成电机由静止到稳定产生过零检测信号的过渡。开环起动技术现通常称为“三段式”起动技术,即首先对转子进行定位,然后采用外同步的方式,使电机逐渐加速至预定速度,当可以稳定得到反电势过零信号时,切换到自同步方式进行。图4给出了无位置传感器无刷直流电动机起动时和切换到自同步状态后的端电压过零点检测波形。

     

(a)起动过程        (b)自同步运行        (c)样机

图4实验波形及样机

3转速电流双闭环设计

   系统采用转速、电流双闭环设计,保证电机运行稳定,提高其动态性能。C8051F320是系统的控制核心,其主程序主要完成系统初始化,以及其它上层程序,初始化模块首先完成看门狗(WDT)、定时器、PCA、串口、外部中断以及A/D采样的设置。起动/停止、方向、速度给定既可以由I/0和A/D由外部获得,也可以有上位机通过串行总线传输。

   图5程序流程图

   双闭环控制采用数字PI控制,离散形式的PI表达式为: △U=Kp[e(k)一e(k一1)]+Ki[e(k)](1)式中:Kp、Ki为比例和积分系数;e(k)、e(k一1)为第k、k一1次时的期望偏差值。比例环节作用是对信号的偏差作出反应,Kp越大,控制作用越强,但是过大的Kp会导致系统振荡。积分环节可以消除静态误差,但也会降低系统响应速度。对于无刷直流电动机调速系统,转速调节器是整个系统的外环,它使电机转速跟随给定值变化,无静态误差,并且其输出的电流值是允许的最大电流值,对负载的变化起到抗干扰的作用。

   由于直流无刷电动机具有线性度好的特点,所以可以整定出一组较为合适的PI参数作为该牙钻电机的通用参数。本系统采用实验经验法根据经验公式及实际试验效果得到PI控制参数。速度环的采样周期预设为2 ms,电流环的采样周期预设与PWM脉宽调制输出的频率一致,为0.2 ms。首先将控制选择为纯比例控制器,构成闭环运行,然后逐步减小比例度,即加大系数Kp,直到系统对输入的阶跃信号的响应出现临界振荡,此时比例系数记为Kr,临界振荡周期记为T。根据经验公式可以得到: (2)

   由此可得出速度与电流的PI参数分别为:Kps=8.6,Kis=O.29,Kpi=5.1,Kii=0.17。

   因此,只要适当的选取以上参数,就可以使系统获得良好性能。

4基于串口的多通道PI参数整定

   为了便于生产过程中同时完成对多个电机的参数整定,提高生产效率,系统使用C805lF320的9位UART多机通信方式,通过上位机对多个电机同时进行PI参数整定及测试。当主机发送数据给一个或多个从机时,它先发送一个用于选择目标的地址字节。地址字节与数据字节区别是:地址字节第9位为逻辑‘1’;数据字节的第9位总是为逻辑‘0’。

   在9位UART模式下,每个数据字节共使用11位:1个起始位、8个数据位、1个可编程的第9位和1个停止位。第9位发送数据位由TB80中的值决定,用户利用软件对其赋值。它可以被赋值为PSW中的奇偶位P(用于错误检测),或用于多处理器通信。在接收时,第9位数据位进入RB80,停止位被忽略。当执行一条向SBUFO寄存器写入一个数据字节的指令时,UART开始发送数据。在发送结束时(停止位开始)发送中断标志TI0被置‘1’。在接收允许位REN0被置‘l’后,数据接收可以在任何时刻开始。收到停止位后如果满足下述条件则数据字节将被送人接收寄存器SBUFO:RI0为逻辑‘O’;如果MCE0为逻辑‘l’,则第9位必须为逻辑‘l’。如果从机的MCE0位被置为‘1’,则只有当UART接收到第9位为逻辑‘1’并收到有效的停止位后UART才会产生中断。在UART的中断处理程序

中,如图5所示,软件将接收到的地址与从机自身设置的8位地址进行比较。如果地址匹配,从机将清除MCEO位以允许后面接收数据字节时产生中断。未被寻址的从机仍保持其MCEO位为‘l’,在收到后续的数据字节时不产生中断,从而忽略收到的数据。一旦接收完整个消息,被寻址的从机将它的MCE0位重新置为‘1’,忽略所有数据传输,直到收到下一个寻址字节。

    图5程序流程图

   系统采用以上多机通信原理,设计上位机软件,完成对多个牙钻电机的参数整定及状态测试,在提高生产效率的同时,保证了产品的质量。

5实验结果

本系统利用Labvlew 8 0设计了对牙钻电机闭环PI参数整定及测试的上位机软件,同时对10台27 V/10 W、额定转速21 000 r/min、极对数p=2的牙钻电机进行参数整定及测试。试验结果如图6所示。

  图6 现场测试结果

6结语

测试结果表明,本系统对无位置传感器无刷直流电动机有良好的控制效果,电机起动和切换至自同步过程平稳,无振动和失步现象。同时该系统具有结构简单,稳定性高,可扩展性强的特点,友好的人机交互方式,大大提高了生产效率,该控制器也可以用于多种中小型电机的控制。目前,该无位置传感器无刷直流牙钻电机控制器已交付生产厂家,反映良好。

联系方式
 
 
 工作时间
周一至周五 :8:00-17:00
 联系方式
于海腾:010-83971821
姜宇:010-83510840
周围:010-61402950