基于单片机STC12C52系列直流电机调速系统

发布者:恬淡如云最新更新时间:2016-02-26 来源: 21ic关键字:单片机  STC12C5206AD  直流电动机  调速 手机看文章 扫描二维码
随时随地手机看文章
在现代工业中,电机调速系统被广泛应用于机械、冶金、石油化学、国防工业等工业部门中。随着计算机进入控制领域,以及新型的电力电子功率元器件的不断出现,使用脉宽调制(pulse width modulation,简称PWM)控制方式已成为绝对主流。脉宽调制是一种使用程序来控制波形占空比、周期、相位波形的技术,在电机驱动、D/A转换等场合有广泛的应用。这种控制方式已作为直流电动机数字控制的基础。在直流调速控制中,可以采用各种控制器,单片机是其中一种选择。

1 功能描述

电机调速系统采用微处理器作为控制核心,以控制板卡、电机驱动芯片及外围电路、电机等构成整个电机调速系统。由微处理器产生1对(共2路)PWM信号,该PWM信号经电机驱动芯片控制执行电机,实现电机在不同运行状态下的调速要求。

2 电机调速系统的组成

电机调速系统的组成见表1。

a.jpg

3 技术指标

技术指标如下:

1)工作温度:-40℃~+60℃;

2)供电电压:DC 27 V;

3)输出扭矩:1.2 N·M;

4)最大空载转速:1 050 rpm;

5)额定电流:2.3 A。

4 设计原理

4.1 原理框图

原理框图见图1。

b.jpg

4.2 原理介绍

如图1所示,通过对计算机屏幕显示界面的操作,选取电机不同的运转状态,由计算机控制板卡采集相应的状态信息,输出相应的状态量代码(状态量指示见真值表 2)并送入到单片机,单片机根据接收的代码信息,产生相应占空比的PWM脉宽信号,该脉宽信号经功率放大电路放大后驱动执行电机,从而实现对电机的调速控制。

c.jpg

其中高位D2表示方向性,0为正方向,1为反方向;D1,D0表示速度大小。

5 设计分析

5.1 控制/驱动电路设计

控制/驱动电路主要由单片机STC12C5206AD、电机驱动芯片DRV8842等组成。控制/驱动电路设计原理见图2。

d.jpg

5.2 电源电路

本调速系统工作电源为直流+24 V、直流+5 V。其中+5 V由直流+24 V转换输出,供单片机STC12C5202AD使用。+5 V转换电路主要由稳压器LD1086、电容器等组成,详见图3。在设计电路板时,要尽量加宽电源线,同时将电源线和信号线分离,以免产生干扰信号。

e.jpg

5.3 电机驱动电路

电机驱动电路主要由驱动芯片DRV8842及其外围电路组成。

驱动芯片DRV8842是专用于电机的集成电路,内部包含一个PWM电流控制的H桥控制电路,电路见图4。工作电压为8.2 V~45 V,工作电流为5 A,工作温度为-40℃~85℃。

如图4,通过控制DRV8842的IN1和IN2引脚输入状态,能直接控制OUT1和OUT2的输出状态,逻辑控制见表3。

f.jpg

g.jpg

采用PWM脉宽调制控制电机速度,其控制逻辑如下:当IN1输入PWM信号,IN2输入低电平时,电机正转;当IN1输入低电平,IN2输入PWM信号时,电机反转;PWM信号的占空比决定电机的转速。

5.4 微处理器

微处理器采用深圳宏晶科技生产的STC12C5206AD。STC12C5206AD是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代单片机,指令代码兼容传统8051,但速度快8倍~12倍。内部集成MAX810专用复位电路,2路PWM,8路高速8位A/D转换 (300 k/s即30万次/秒),针对电机控制,强干扰场合。

主要性能如下:

1)工作电压:5.5 V~3.3 V;

2)工作频率:0~35 MHz,相当于普通8051的0~420 MHz;

3)用户应用程序空间:6 k字节;

4)片上集成RAM:256字节;

5)通用I/O口:13个;

6)有EEPROM功能;

7)看门狗;

8)内部集成MAX810专用复位电路(外部晶体20 M以下时,复位脚直接1 k电阻到地);

9)PWM:2路;

10)A/D转换:8位精度ADC,共8路,转换速度可达300 k/s(每秒钟30万次);

11)工作温度:-40℃~85℃。

5.5 软件分析

软件主要由上位机控制程序和下位机控制程序两部分组成。软件流程图见图5、图6。

h.jpg

i.jpg

6 结束语

设计结果满足要求,运行状态良好,达到预期目的。

关键字:单片机  STC12C5206AD  直流电动机  调速 引用地址:基于单片机STC12C52系列直流电机调速系统

上一篇:基于手机短信的设施农业温湿度远程监测系统的设计
下一篇:基于51单片机的多任务多进程

推荐阅读最新更新时间:2024-03-16 14:45

51单片机-按键
矩阵按键: 实现功能按一个键,相应的灯亮。 左边的是普通二极管,右边的是发光二极管。左边的二极管如果想导通,则右边要比左边电平低。如果导通就是按键可以控制灯亮,那么按键左下的都为低电平,系统复位时默认I/O是高电平,所以给垂直方向的I/O拉低,这样如果按键按下,电路导通,那么垂直方向I/O的低电平会把水平方向的拉低。这样就可以通过检测水平方向哪个I/O为低电平来检测哪个键被按下。 开始时对程序的错误想法:被按下的键两边肯定都是低电平,把它们存在一个数组里,然后检测。这样是不对的,用一个临时变量去存P0的值,不会有相同的,开始P0的值为oxff,这样即使按下按键,那么两边的引脚还是高电平,所以失败了。 #
[单片机]
51<font color='red'>单片机</font>-按键
基于飞思卡尔MCU的防抱死制动系统(ABS)方案
方案描述: 防抱死制动系统( ABS )在紧急制动情况下,有助于驾驶员的控制及汽车稳定性。抱死车轮可以使汽车减速,但会失去转向灵活性。 ABS 可以在施加最大制动力的同时,避免‘转向失控’。某些情况下, ABS 对于缩短制动距离作用不大,如在湿滑路面上行驶,但在深雪或沙石等路面上行驶时,可以明显缩短行动距离。 ABS系统监控四个车轮的传感器,评估车轮是否发生打滑。 打滑可通过轮速与车速比来计算,这是一个根据四个车轮的速度连续计算的过程。制动期间,控制系统通过电控电磁阀调整每个制动器的液压,尽可能保持车轮最大抓地能力,而不抱死车轮。在客车应用中,大部分ABS组件往往安装在加盖的单一模块中。 方案设计图:
[汽车电子]
基于飞思卡尔<font color='red'>MCU</font>的防抱死制动系统(ABS)方案
一款51单片机电子钟制作(C语言)
/*一款电子钟程序,此电子钟是四位电子钟数码管组成的,功能分别有走时、响闹、走时间调整、闹钟时间调整等功能!调整部分分别由三个按键实现,一个功能键,一个+(加)键,另一个为-(减)键,其它功能键是复用功能!*/ 硬键介绍:数码管个位.十位.百位.千位.小数点分别接P0.0 P0.1 P0.2 P0.3 P0.4。蜂鸣器接P3.5脚,功能按键接P3.2 加按键接P3.3 减按键接P3.4 以下是两张图片!!! #include reg52.h //头文件 #define uchar unsigned char//宏定义 #define uint unsigned int//宏定义 uchar shi,fen,nshi,nfe
[单片机]
一款51<font color='red'>单片机</font>电子钟制作(C语言)
基于单片机的CANBUS程序(C语言)
CAN-bus(Controller Area Network)即控制器局域网,是国际上应用最广泛的现场总线之一。起先,CAN-bus被设计作为汽车环境中的微控制器之间通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。它是一种多主方式的串行通讯总线,基本设计规范要求有较高的位速率,高抗干扰性,而且能够检测出产生的任何错误。信号传输距离达到10Km时,仍然可提供高达5Kbps的数据传输速率。由于CAN串行通讯总线具有这些特性,它很自然的在汽车、制造业以及航空工业中受到广泛应用。以上是我在单片机上调试好的can总线程序 #include SJA_nnyt.H //SJA存储器定义头文件 #include SJA_n
[单片机]
8051单片机(STC89C52)实现可修改计时初值的单倒计时器(Version1.0)
程序启动后计时初值为15, 之后可通过串口发来的数据(如 99 )来修改下一次计时初值. #include STC89C5xRC.H unsigned char code DIG_CODE = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};//对应数码管显示0~9 char buf ; int tcount = 0;//记录经过的10ms区间段个数 int sec = 15;//倒计时初始值记录 int sec2 = 15;//倒计时初始值 void T0_INT() interrupt 1 //timer0中断, 每10ms触
[单片机]
STM32F103单片机使用ULN2003驱动步进电机
最近整理东西,突然发现以前买的一个步进电机模块,以前使用5V单片机驱动的。突然想试试能不能用STM32F103单片机的3.3V直接驱动ULN2003这个芯片。 试了一下ULN2003可以用3.3V电压直接驱动。下面分享下电机驱动的过程。 先看看实物图 单片机使用的是STM32F103C8T6最小系统。电机和驱动板是网上买的整套模块。 驱动板的原理图如下 步进电机使用的是5线4相直流减速步进电机 直径:28mm 电压:5V 步进角度:5.625 x 1/64 减速比:1/64 步距角:5.625 / 64 = 0.087度 (也就是说理论上,你给一个脉冲,电机外部轴转动0.087度)也就是说一个脉冲内部转子
[单片机]
STM32F103<font color='red'>单片机</font>使用ULN2003驱动步进电机
单片机系统的低功耗设计策略
在嵌入式应用中,系统的功耗越来越受到人们的重视,这一点对于需要电池供电的便携式系统尤其明显。降低系统功耗,延长电池的寿命,就是降低系统的运行成本。对于以单片机为核心的嵌入式应用,系统功耗的最小化需要从软、硬件设计两方面入手。 随着越来越多的嵌入式应用使用了实时操作系统,如何在操作系统层面上降低系统功耗也成为一个值得关注的问题。限于篇幅,本文仅从硬件设计和应用软件设计两个方面讨论。 1 硬件设计 选用具有低功耗特性的单片机可以大大降低系统功耗。可以从供电电压、单片机内部结构设计、系统时钟设计和低功耗模式等几方面考察一款单片机的低功耗特性。 1.1 选用尽量简单的CPU内核 在选择CPU内核时切忌一味追求性能。8位
[嵌入式]
STM32单片机I/O的工作模式
最近有个朋友在设计低功耗设备,用的是STM32的主控,他知道我做过很多类似的超低功耗项目,于是向我咨询了一些问题,其中就包括I/O口的几种工作模式。今天我就详细的来总结一下这几种工作模式,让大家在以后的设计中知其然也知其所以然。 先说说GPIO 在聊这8种工作模式之前,我想先说一下GPIO的概念—通用输入输出GeneralPurposeInputOutput简称GPIO,就是芯片引脚可以通过它们输出高、低电平,也可以通过他们输入、读取引脚的电压、电平状态。 下面的8种工作模式我将围绕下图进行分析介绍,读懂这一张图大家基本就可以完全理解STM32的GPIO了。希望大家仔细的看一看。 四种不同的输出模式 推挽输出:该模式下引脚
[单片机]
STM32<font color='red'>单片机</font>I/O的工作模式
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved