基于PWM细分的步进电机调速报告.docx

上传人:b****5 文档编号:8802570 上传时间:2023-05-15 格式:DOCX 页数:19 大小:292.85KB
下载 相关 举报
基于PWM细分的步进电机调速报告.docx_第1页
第1页 / 共19页
基于PWM细分的步进电机调速报告.docx_第2页
第2页 / 共19页
基于PWM细分的步进电机调速报告.docx_第3页
第3页 / 共19页
基于PWM细分的步进电机调速报告.docx_第4页
第4页 / 共19页
基于PWM细分的步进电机调速报告.docx_第5页
第5页 / 共19页
基于PWM细分的步进电机调速报告.docx_第6页
第6页 / 共19页
基于PWM细分的步进电机调速报告.docx_第7页
第7页 / 共19页
基于PWM细分的步进电机调速报告.docx_第8页
第8页 / 共19页
基于PWM细分的步进电机调速报告.docx_第9页
第9页 / 共19页
基于PWM细分的步进电机调速报告.docx_第10页
第10页 / 共19页
基于PWM细分的步进电机调速报告.docx_第11页
第11页 / 共19页
基于PWM细分的步进电机调速报告.docx_第12页
第12页 / 共19页
基于PWM细分的步进电机调速报告.docx_第13页
第13页 / 共19页
基于PWM细分的步进电机调速报告.docx_第14页
第14页 / 共19页
基于PWM细分的步进电机调速报告.docx_第15页
第15页 / 共19页
基于PWM细分的步进电机调速报告.docx_第16页
第16页 / 共19页
基于PWM细分的步进电机调速报告.docx_第17页
第17页 / 共19页
基于PWM细分的步进电机调速报告.docx_第18页
第18页 / 共19页
基于PWM细分的步进电机调速报告.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于PWM细分的步进电机调速报告.docx

《基于PWM细分的步进电机调速报告.docx》由会员分享,可在线阅读,更多相关《基于PWM细分的步进电机调速报告.docx(19页珍藏版)》请在冰点文库上搜索。

基于PWM细分的步进电机调速报告.docx

基于PWM细分的步进电机调速报告

河南工程学院

单片机课程设计论文

论文题目:

基于PWM细分的步进电机调速

 

系部:

电气信息工程系

专业:

电气工程及其自动化

班级:

0942班

学生姓名:

葛敬涛(主力)潘朏朏李朝光

指导教师:

瓮嘉民

2011年11月7日—11月18日

 

目录

摘要…………………………………………..2

一、基本方案及原理………………………………3

二、系统框图………………………………………3

三、流程图…………………………………………5

四、仿真图…………………………………………6

五、硬件电路………………………………………6

六、程序……………………………………………8

七、实物照片……………………………………...11

八、元件清单……………………………………...13

九、心得体会……………………………………...14

一十、参考文献………………………………………16

摘要:

本文以四相五线步进电机为例,介绍了一种利用单片机产生PWM波来实现步进电机细分驱动的方法。

该方法充分利用单片机的硬件资源,通过软件控制,产生占空比不同的方波,在电机线圈内产生近似正弦波的阶梯型电流。

与常用的恒频脉宽调制方式相比,该方法不需要EI/A转换器和锯齿波发生器,不仅有利于简化电路和节约成本,而且能提高细分精度和电机运行平稳性,适用于需要精密控制的仪器仪表。

关键词:

PWM;细分驱动;步进电机;单片机

 

一、基本方案及原理

1、基本方案:

利用AT89S52单片机来控制步进电机的速度和方向,完成基本要求和发挥部分的要求。

在设计中,采用了PWM技术对电机进行控制,通过对占空比的计算达到精确调速的目的。

步进电机是精密仪器仪表中常用的自动化执行部件,具有快速起停、精确步进、易于控制等优点。

但是受制造工艺的影响,步进电机一般步距角较大,且有低频振动、噪声等缺点,不能应用于精度、平稳性要求较高的场合。

步进电机细分驱动技术是20世纪70年代中期发展起来的可以显著改善步进电机性能并提高步进精度的驱动控制技术。

PWM(脉宽调制)细分技术是目前较为常用的方式,其实质是通过在电机线圈中产生阶梯型电流从而改善电机性能并达到细分的目的。

随着仪器仪表技术的发展,各种带PWM模块的单片机越来越多地应用于仪器仪表中,用它可以直接实现仪表中步进电机的细分驱动。

本文介绍了一种利用单片机软件产生PWM波实现仪表步进电机驱动的方法,这种方式具有以下优点:

(1)与传统的硬件PWM方式相比,驱动电路明显简化,不需要D/A转换器和锯齿波发生器;

(2)与纯软件模拟PWM方式相比,程序简单且占用CPU时间少。

2、步进电机PWM驱动原理:

步进电机是通过对定子上的各个线圈交替通电产生进式旋转磁场,从而带动转子作步进式旋转。

用MCU驱动步进电机最简单的方式是整步驱动,即利用单片机Io口产生各相脉冲通过功率器件来控制电机运转。

这种方法虽然简单却存在精度不高、相电流突致运行不够平稳、有噪声等缺点。

细分驱动技术的实质用近似正弦波的阶梯型电流代矩形波电流,产生一个微步旋转磁场,从而带动电机以小的步距角转动。

同时由于正弦波电流变化平滑,使电机运行更平稳、更小。

PWM技术是采用脉宽调制方式,即占空比不同的方电压产生不同的平均电流,由于电机线圈电感对电流变的阻碍作用,线圈中的电流波形围绕平均值下波动,当PWM波的频率足够高时,线圈中的电流以看成大小为L的恒定电流。

通过调节占空比可以产生不同的平均电流。

二、系统框图

按系统功能实现要求,决定控制系统采用AT89S52单片机,驱动芯片采用L298。

整个设计以AT89S52单片机为核心,由数码管显示,时钟电路,复位电路。

按键控制电路组成。

系统方框图如图1。

图1硬件模块图

功能简介:

1、利用单片机程序控制PWM波的占空比来控制电机转速,操作简单方便。

2、采用三个按键操作,通过正反按钮控制步进电机的正反转,用加减速按键控制PWM波的占空比从而来控制步进电机的加速与减速。

电机最多可以加速9个级别。

3、电机转动时可以通过数码管来显示电机的转速。

三、流程图

N

Y

N

Y

中断程序流程图

四、仿真图

图2仿真图

五、硬件电路

图3原理图

图四电路PCB

1、芯片L298的外形及其工作原理

图5L298引脚图

L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。

L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压。

4脚VS接电源电压,VS电压范围VIH为+2.5~46V。

输出电流可达2.5A,可驱动电感性负载。

1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号,在通常使用中这两个引脚也可以直接接地。

L298可以驱动两个二相电机,也可以驱动一个四相电机,2,3,13,14与电机相连接。

本实验我们选用驱动一台四相步进电机。

5,7,10,12脚接输入控制电平,控制电机的正反转。

EA,EB接控制使能端,控制电机的停转。

2、显示控制模块

显示模块由7段数码管构成,采用动态扫描显示方式。

AT89S52的P1口直接与数码管的a~g和dp端相连。

AT89S52的P3^0控制数码管的开关。

工作时电流一般选择在10mA/段左右,这样证即亮度适中,又不会损坏器件,故使用时必须在数码管的每段中串接一个适当阻值的限流电阻。

3、按键模块

通过正反转按键来调节送入接拍的正反,从而来控制步进电机的正反转。

通过加按键使单片机产生的PWM波的占空比增大,增大L298的导通时间,从而使步进电机速度增加。

通过减按键使单片机产生的PWM波的占空比减小,减小L298的导通时间,从而使步进电机速度减小。

六、程序

#include

#defineucharunsignedchar

#defineuintunsignedint

ucharcodestep1[]={0x03,0x06,0x0c,0x09};

ucharcodestep2[]={0x09,0x0c,0x06,0x03};

ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,

0x92,0x82,0xf8,0x80,0x90};

sbitPWM=P2^7;

sbitK1=P2^0;

sbitK2=P2^1;

sbitK3=P2^2;

sbitWe=P3^0;

ucharcount,n;

bitflag;

voiddelay(uintz)

{

uinti,j;

for(i=110;i>0;i--)

for(j=z;j>0;j--);

}

voiddelayus(uintz)

{

while(z--);

}

voidinit()

{

flag=1;

n=1;

TMOD=0x10;//定时器1方式1

TH1=(65536-5000)/256;

TL1=(65536-5000)%256;

EA=1;

ET1=1;

TR1=1;

}

voiddisplay(ucharz)

{

//We=1;

P1=table[z];

We=0;

}

voidkey()

{

if(K1==0)

{

delay(5);

if(K1==0)

{

flag=!

flag;

while(!

K1);

}

}

if(K2==0)

{

delay(5);

if(K2==0)

{

n+=1;

if(n==10)n=1;

while(!

K2);

}

}

if(K3==0)

{

delay(5);

if(K3==0)

{

n-=1;

if(n==0)n=9;

while(!

K3);

}

}

}

voidmain()

{

init();

while

(1)

{

display(n);

if(flag)

{

uchari;

for(i=0;i<4;i++)

{

P0=step1[i];

delayus(500);

}

}

else

{

uchari;

for(i=0;i<4;i++)

{

P0=step2[i];

delayus(500);

}

}

}

}

voidtime1()interrupt3

{

TH1=(65536-5000)/256;

TL1=(65536-5000)%256;

count++;

key();

if(count==n)PWM=0;

if(count==10)

{

PWM=1;

count=0;

}

}

}七、实物图片

八、元件清单

序号

元件名称

型号与规格

单位

数量

1

电阻

R1、R31KΩ

2

R210k

1

R4~R11300Ω

8

排阻:

10K

1

2

排针

1

3

电解电容

C3、C410μF/16V

2

4

瓷片电容

C1C230pF

2

C50.01uF

1

5

晶振

Y112MHz

1

6

三级管

P19012

4

7

L298

1

8

单片机

AT89S52

1

9

步进电机

1

10

按钮

S1~S36*6轻触

3

11

数码管

1位共阳

1

九、心得体会

个人感受

这次课程设计我们做了两个星期,在这两个星期里我们收获了很多。

做课程设计需要团队合作。

有些东西需要大家一起动手动脑才可以做出来。

这次设计对我来说具有很重要的意义,它不仅要求我们将理论与实践结合,更重要的是提高我们的实践能力以及创新能力。

设计需要有一个清晰的思路和一个完整的器件流程图,设计不会一次就做好,中间要不断修改完善,中间有很多很细节问题都要一一找出来,电路上出现一点问题最后造成的危险是很大的。

有些东西不是天马行空就会出来的,我们查阅了很多资料,了解了步进电机的工作原理及其驱动方式,并通过研究探讨决定采用NPN以及PNP三极管,应用简单方便并且经济实惠。

在电路完成以后,我们面对程序又进行一番探讨与调试,通过查阅老师给我们的一些资料,以及去图书馆的查阅,了解了每句语言的作用,以及用法。

我们对程序进行调试以及修改,最终调试出来。

促使我们应用以前学习的东西并学以致用。

做程序有时用到很多以前学的软件,以前学的时候没有实践,现在给了我一个应用的平台,通过这次实战我对这些软件的应用提升了一个台阶。

能够很顺利的应用软件画图仿真。

一个设计最重要的成品就是你的实物,在做实物的时候我们遇到很多的问题。

刚开始确定元件的时候因为型号的问题不太了解,所以有些元件的型号我们并不清楚,不知道怎么去用,通过查阅电工手册以及通过互联网查阅的一些资料,了解到每个元件的型号,知道每个引脚的作用,然后才开始焊接。

这些我对实物的了解多了一些,它让我不断的提升。

在设计中我们发现自己很多不足之处,不断的发现新问题,每解决一个问题都感觉自己的一次提升。

以前学的一些问题掌握的不够牢固,通过这次设计我们应用到很多东西,经过实践的检测,我对这些东西的应用比以前纯熟了一些,有些不知道的东西通过查资料,在小组中讨论,交流经验并自学,实在找不出来再问老师,使自己学到不少知识,也经历不少艰辛但收获颇丰。

我认为这个收获是相当大的,觉得课程设计反映的是一个从理论到实际应用的过程。

但是更远一点可以联系到以后毕业之后从学校转踏上社会的一个过程。

小组人员的配合、相处,以及自身的动脑和努力,都是以后工作中需要的。

 

姓名:

葛敬涛

学号:

200910710208

 

个人感受

这次设计我们选了一个我感觉比较难的题目,老师虽然给我们了一些资料,但很多东西还是需要我们自己去做的,对于这个题目中的PWM不是很理解,还有步进电机的工作原理、驱动方式以及在日常生活中的应用,这些我都不了解,就先上网查找了这方面的知识,并结合老师给的一些资料展开了这一次的设计,首先画原理图,需要运用AltiumDesigner6软件,这是我第一次接触这个软件,刚开始的时候什么都不会,然后就开始不断的查资料,请教同学老师,用了一整天时间才画好,不过还有很多不足,经过同组同学的改正算是画好了。

接下来做仿真图和程序,需要用proteus软件,刚开始很吃力,很多程序上的知识学习的都不够扎实,通过问同学查资料,最后用了很长时间才搞好,最后终于仿真出来了。

通过本次设计实验,我对步进电机有了比较深入的了解,并且也对这几个软件有了进一步的熟悉,而且在软件上作图的水平有了进一步的提高。

在本次设计中,在电路板的焊制过程中也遇到了很多问题,有很多知识都不会,例如L298的几个脚怎么么连接,以及它的作用,以及数码管的管脚怎么与单片机连接等等,然后查找了资料才明白L298可以驱动电机,在课本上找到了数码管各个管脚与单片机对应的位置。

我们先把元器件焊在焊板上,知道接线的时候才发现焊接元器件的时候也是有窍门的,不是随便放个地方焊上就可以了,这个也需要排版,看着原理图排版这样可以节省很多事,像我们排的排阻离单片机太近但又没有连在对应的节点上,这样就麻烦了,太近线就短焊起来很费力,一不小心就把两个相邻节点焊在一起了。

刚开始不是很顺利,慢慢也找到了窍门,焊起来顺手了一些,熟能生巧。

在连线方面不能粗心大意,一点接错就影响整个板子的正常工作,焊接和接线的过程不仅仅是理论与实际相结合,最重要的是告诉我们做什么事情都要细心用心,有毅力。

通过这个过程,我才发现平时自己所学习的知识很贫乏,做什么事情还不够细心。

我的单片机知识也还很不牢固,需要更深入的学习。

本次课程设计我们组只有三个人,感觉到没那么轻松,一直处于非常紧张的状态,我们的经常去请教老师同学,从中也学到不少,当我们仿真成功的时候,很有成就感,对这个设计也慢慢有了兴趣,这次课程设计让我们更深刻的了解了理论与实际结合的重要性,并从中学到了一些良好的做事的品质,这些为我们以后走上工作岗位打下了基础,很感谢翁老师以及同组同学对我的指导和教诲,也很珍惜学校给我们提供的这次机会。

姓名:

潘朏朏

学号:

200910710207

个人感受

为期两周的课程设计还是有一定作用的,理论是要懂得,但你不管看多少若不用于实际对于我们直接工作的还是不应该的,通过实训熟悉理论知识,然后解决问题,最后再回到理论上来,是我们应该走的道路,而且实训就是提供这样的道路,

我们做的是基于单片机PWM细分的步进电机调速,对于单片机我承认学的不好,但我相信人的自学能力是无限的,我认为通过自己的学习和别人的帮助就能够了解并学好它,但在实训过程中还是受到了一定的挫折,我感觉自己不擅长与实践,不擅长计算机作图,对程序现在也是不怎么懂,但受挫折才能进步,我也相信可以做的更好些,而且我也正在尽量学好它。

步进电机是通过对定子上的各个线圈交替通电产生步进式磁场,从而带动转子做步进式旋转。

充分利用单片机的硬件资源,通过软件控制,产生占空比不同的方波,在电机线圈内产生近似正弦波的阶梯型电流。

总体来讲,感觉还是收获比较大的,至少让我知道了还用很多东西需要学习,希望自己可以做的更好。

 

姓名:

李朝光

学号:

200910710201

 

十、参考文献

【1】李明,毕万新.单片机原理与接口技术.大连:

大连理工大学出版社,2009

【2】张靖武,周灵彬.单片机系统的Proteus设计与仿真.北京:

电子工业出版社,2008.

【3】周坚.单片机项目教程.北京:

北京航空航天大学出版社,2008.

【4】胡健.单片机原理与接口技术实践教程.北京:

机械工业出版社,2004.

【5】胡汉才.单片机原理及系统设计.北京:

清华大学出版社,2002.

【6】侯玉宝等.基于Proteus8051系列单片机设计与仿真.北京:

电子工业出版2006.

【7】翁嘉民.单片机应用开发技术.北京:

中国电力出版社2009.

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2