APP下载

基于单片机的直流电机控制模块设计

2017-10-09

福建质量管理 2017年16期
关键词:直流电机计数器寄存器

(四川文化传媒学院五年一贯制校区 四川 成都 611700)

基于单片机的直流电机控制模块设计

刘春梅

(四川文化传媒学院五年一贯制校区 四川 成都 611700)

利用单片机和电子技术等方面的知识,通过C语言编程,使 STC系列单片机的定时器产生不同频率、不同占空比的PWM信号,由单片机的I/O口输出,去控制L298N电机驱动芯片,达到对电机转速和方向控制的目的。

单片机;PWM;信号;转速 ;转向

电机为运动提供动力,无论旋转运动还是直线运动,电机在人们日常生活的各个方面发挥着重要作用。与气压或液压系统相比,电机系统工作时更加清洁和高效。因此高效的电机控制技术显得尤为重要,近年来,随着脉宽调制技术、特种电机材料技术、微电子技术及现代控制技术的进步,电机控制技术正朝着数字化智能化的方向发展,因此脉宽调制(PWM)技术是较优越的电机控制技术。

一、 设计的总体任务和要求

(一)设计单片机开发系统,利用C语言或汇编语言实现PWM信号的产生,对直流电机转速进行有效控制。

(二)采用单片机的编程技术设计并产生PWM信号,对直流电机进行控制,无需外接D/A转换器,使控制电路大大简化,控制方式简洁,控制精度高、控制效果好。

二、直流电机PWM调速原理

在脉冲作用下,当电动机通电时,速度增加;电动机断电时,速度逐渐减少。只要按一定规律改变通、断电时间,即可使电动机速度达到一定的稳定性。

设电动机永远接通电源时其转速为最大Vmax,占空比D=t1/T,如图1所示,则电动机的平均速度为

Vd=VmaxD

(公式一)

式中:Vd——电动机的平均速度; Vmax——电动机全通电时的速度(最大); D=t1/T——占空比。

图1 脉冲信号

三、硬件系统组成

(一) 总体框图

图2 总体框图

如图2所示,硬件系统由单片机最小系统、L298N电机驱动模块、按键模块、1602液晶显示模块、LED指示模块组成。

(二) 各模块电路说明

1、 单片机最小系统

STC系列是单片机是一款高性价比的单片机,它虽然功能强大,但要想完成其强大的功能,单靠它也是不行的。因此要让单片机运行起来,就要创设单片机工作的环境,即单片机的最小系统,它包括振荡电路、复位电路、电源电路。

2、 L298N电机驱动模块

驱动芯片比较常见的是15脚Multiwatt封装的L298N,如图2所示,内部包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。表1是L298N逻辑功能。

表1 L298N功能模块

3、 按键模块及功能

表2 按键功能表

4、 液晶显示模块

1602液晶主要用于显示直流小电机的速度等级及电机的转向。

5、LED指示模块及功能

表3 指示模块及功能

四、软件系统设计

(一) 定时/计数器工作方式及控制寄存器的设置

1、选用T0和T1作为产生脉冲用的定时器并且使它们工作在模式1(定时模式)下。在模式1中,寄存器TH0、TH1和TL0、TL1以全8位参与操作,构成16位定时/计数器,当TH0(TH1)溢出时向中断标志位TF0(TF1)进位,并申请中断。在这种模式下T0(T1)定时时间最长,有利于在更大的范围内对电机进行调速。

2、工作模式寄存器TMOD。如表4所示:

表4定时器工作模式寄存器TMOD

TMOD的高4位用于T1,低4位用于T0,4种符号含义如下:

GATE:门控位。

C/T:定时/计数器方式选择位。C/T=0为定时器方式,C/T=1时为计数器方式。

M1M0:工作模式选择位,具体如下:

M1M0=00:模式0(13位定时/计数器)

M1M0=01:模式1(16位定时/计数器)

M1M0=10:模式2(8位自动重装常数的定时/计数器)

M1M0=11:模式3(2个8位定时/计数器,仅对T0)

(二)定时/计数器常数的计算

定时/计数器中的计数器是在计数初值基础上以加法计数的,并能在计数器从全“1”变为全“0”时自动产生溢出中断请求。因此,可以把计数器计数初值设定为TC,定时器定时时间T的计算公式为:

T=(M-TC)T计数

(公式二)

式中M为计数器模值,该值和计数器工作模式有关。在模式1时M为216。在定时器模式下,T计数是单片机振荡周期的12倍。

上式也可写成:TC=M-T/T计

(公式三)

在程序设计中工作模式为模式1,计数器模值M=216=65536;

则给定时器赋值:

TH0=(65535-T计数)/256

(公式四)

TL0=(65535-T计数)%256

(公式五)

(三)中断控制

除特殊功能寄存器TCON和SCON中的某些位与中断有关以外,还有一个特殊功能寄存器即中断允许寄存器IE用来设定各个中断源的打开和关闭。其形式如表5所示:

表5 中断允许寄存器IE

EA:CPU中断允许位。

ES:串口中断允许位。

ET0:定时/计数器0中断允许位。

以上各位等于1时,CPU开放中断;等于0时,CPU禁止该中断。单片机系统复位后,IE中各位均被清零,即禁止所有中断。程序中要开T0或T1中断则应将ET0或ET1置1,另外如果要使用中断EA也要置1。

五、总结

用单片机做开发比模拟电路有明显优势,即不用对电路有大改动就可以适应新的工作条件,升级也很方便,只需对CPU重新刷写一次程序就可以了。单片机具有结构简单、编程方便、经济、易于连接等优点,特别是其内部定时器/计数器、中断系统资源丰富,有应用价值。而且电路的可靠性比较高,功能也比较强大,可以随时更新系统,进行不同状态的组合。但是实际应用中单片机也有很多局限性,比如内部存储器容量不够大,运算速度不够快,内部输出信号功率很小,因而要驱动电机必须用电机驱动芯片。

[1]何立民,单片机应用技术大全[J],北京,北京航空航天大学出版社, 1994

[2]康华光,电子技术基础(数字部分)[M],高等教育出版社,2005.07

猜你喜欢

直流电机计数器寄存器
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
采用虚拟计数器的电子式膜式燃气表
Lite寄存器模型的设计与实现
分簇结构向量寄存器分配策略研究*
基于FPGA的双绕组无刷直流电机软件设计
计数器竞争冒险及其处理的仿真分析
基于模糊神经网络PID的无刷直流电机控制系统研究
一种改进的无刷直流电机控制方法
任意N进制计数器的设计方法
基于单片机的仰卧起坐计数器