2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564

上传人:大米 文档编号:456946669 上传时间:2023-09-17 格式:DOC 页数:5 大小:298KB
返回 下载 相关 举报
2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564_第1页
第1页 / 共5页
2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564_第2页
第2页 / 共5页
2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564_第3页
第3页 / 共5页
2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564_第4页
第4页 / 共5页
2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564》由会员分享,可在线阅读,更多相关《2021-2022收藏资料一种基于C8051F单片机的直流无刷电机转速控制系统91564(5页珍藏版)》请在金锄头文库上搜索。

1、一种基于C8051F单片机的直流无刷电机转速控制系统 作者:王天庆 谭名栋 姚文斌 摘要:该文以C8051F020为例介绍了C8051F单片机在无刷直流电机转速控制中的应用、实现方法、硬件结构及软件结构等。 关键词:单片机、无刷直流电机、转速控制 Abstract: The article introduces application of C8051F020 in rotate speed Control of direct current and brushless motor, realization method,configuration of software and hardwa

2、re. Keywords: MCU,direct current and brushless motor, rotate speed Control 引言: 具有梯形反电动势的永磁同步电动机通常被称为无刷直流电动机,它具有结构简单、体积小、重量轻、效率高、高功率密度、启动扭矩大、惯量小和响应快等其它种类直流电机无法比拟的特性。采用电子换向器替代了传统直流电动机的机械换向装置,从而克服了电刷和换向器所引起的噪声、火花、电磁干扰、寿命短等一系列弊病。由于无刷直流电动机既具备交流电动机的结构简单、运行可靠、维护方便等一系列优点,又具 有直流电动机的运行效率高、无励磁损耗以及调速性能好等诸多优点,故其

3、在在家用消费类产品(空调、冰箱、洗衣机)和IT周边产品(打印机、软驱、硬驱)中得到广泛的应用。 C8051F单片机是美国Silabs公司推出的一种与51系列单片机内核兼容的单片机,具有高速、高性能、高集成度。以C8051F020为例,具有如下特点: C8051F020片上系统单片机片内资源: 一、模块外设 (1)逐次逼近型8路12位ADC0 转换速率最大100ksps 可编程增益放大器PGA 温度传感器 (2)8路8位ADC1输入与P1口复用 转换速率500ksps 可编程增益放大器PGA (3)两个12 位DAC (4)两个模拟电压比较器 (5)电压基准内部提供2.43V 外部基准可输入 (

4、6)精确的VDD监视器 二、高速8051微控制器内核 流水线式指令结构速度可达25MIPS 22个矢量中断源 三、存储器 片内4352字节数据RAM 64KBFlash程序存储器可作非易失性存储 外部可扩展的64KB 数据存储器接口 四、数字外设 8个8位的端口I/O I2CSPI2个增强型UART串口 可编程的16位计数器/定时器阵列(PCA) 5个通用16位计数器/定时器 专用的看门狗WDT 五、JTAG调试和边界扫描接口,可实现在线实时动态调试。 由以上特点可以看出,C8051F单片机具有丰富的片上硬件资源及高运算速度,这为实现复杂的控制算法提供了保障,而且几乎不需系统扩展即可满足控制系

5、统对硬件资源的需求,极大地提高了系统可靠性。 硬件部分: 硬件部分主要由电机、电机驱动电路及单片机及显示块组成。其功能框图如下: 电机驱动采用美国安森美公司开发的高性能第二代单元无刷直流电机控制器MC33035。该芯片内部具有定频调宽PWM电路,它集译码、过热、过流、欠压保护、正反转控制等诸多功能于一身,是一种功能齐全的电机控制器。 通过脉宽调制PWM来控制电动机电枢电压可以实现调速。在正常情况下,误差放大器输出与振荡器输出锯齿波信号比较后,产生脉宽调制(PWM)信号如下图所示。改变输出脉冲宽度,相当于改变供给电动机绕组的平均电压,从而控制其转速。所以我们可以通过单片机控制DAC0的输出,控制

6、输入到直流无刷电机的电压,进而控制PWM波的占空比达到控制电机转速的目的。 MC33035的脉宽调节原理图 软件部分: 无刷直流电机内置3个霍尔效应传感器,用来检测转子的位置,也决定电机的换相,并可以根据该信号来计算电机的转速。当电机正常运行时,通过霍尔传感器可得到3个脉宽为180度电角度的互相重叠的信号,而电机转速的改变可以从位置传感器输出脉冲频率的改变上反映出来,因此可以利用单片机对这个脉冲信号进行监测得到电机转速。因频率和转速成正比测量,所以测出输出脉冲的频率即可计算出转速。另外,为了提高精度,高速(/1000HZ)采用测频法,低速(1000HZ)采用测周法。 将脉冲信号输出与INT0连

7、接,采用INT0中断对转速脉冲计数,每1s读一次计数值,将此值与预设的转速值比较,若大于预设的转速值,则减小DAC0的数值;若小于预设的转速值,则增加DAC0的值,调整电机的转速直到转速值等于预设定的值。电机当前的转速值可在七段数码管上显示,在电机的可控范围内控制电机转速等于预设值。 程序框图: 单片机程序采用C51完成,部分源程序如下: 一、系统时钟初始化,采用18.432MHZ外部晶振: void SYSCLK_Init (void) int i; /延时计数器 OSCXCN=0x67; /开启外部振荡器18.432MHz晶体 for(i=0;i256;i+) ; /等待振荡器启振 whi

8、le(!(OSCXCN&0x80) ; /等待晶体振荡器稳定 OSCICN=0x88; /选择外部振荡器为系统时钟源并允许丢失时钟检测器 二、IO口初始化 void PORT_Init (void) XBR0 =0x07; /使能SMBus,SPI0,和UART0 XBR1 =0x04; /P1.0 8; /设初值,1ms时溢出 TL0 = -SYSCLK/1000; TR0 = 1; /开启定时器0 IE|= 0x2; 四、Timer0中断: void Timer0_ISR (void) interrupt 1 TH0 = (-SYSCLK/1000) 8; TL0 = -SYSCLK/10

9、00; if (Count1ms) Count1ms-; if (Count1s) Count1s-; /Count1s初值为1000 else Count1s=1000; SaveMotorCount=MotorCount; /MotorCount为测得每秒脉冲个数 MotorCount=0; SD=SaveMotorCount/2-SetSpeed; /常量SetSpeed的值为转速的预设值,单位为转/秒 SaveMotorCount*=30; /转/分 if (SD) if (SD5)|(SD-5) iDAC0-=SD*4; else iDAC0-=SD; DAC0=iDAC0; 五、外

10、部0中断: void Int0_ISR (void) interrupt 0 MotorCount+; 软件仿真调试方法: (1)观察DAC0的窗口,改变DAC0的数值观察电机转速的变化 (2)使用示波器观察CKMOT的频率计算出电机的转速与七段数码管显示的数值比较,比较速度测量的准确性 (3)改变常量SetSpeed的值(转速的预设值),观察速度稳定后七段数码管的数值 (4)可将断点设在外部中断INT0的入口和T0中断的入口运行程序观察程序运行是否正常。 结束语: 由于C8051F020的高集成度,因此只需少量外围电路。另外,C8051F020内核与普通51系列兼容,且指令简单易学,可缩短系统开发周期。实践证明,本控制系统精度高,稳定性好,硬件简单且工作可靠,具有很好的推广价值。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号