单片机课程方案设计书(温度控制直流电动机转速)_第1页
单片机课程方案设计书(温度控制直流电动机转速)_第2页
单片机课程方案设计书(温度控制直流电动机转速)_第3页
单片机课程方案设计书(温度控制直流电动机转速)_第4页
单片机课程方案设计书(温度控制直流电动机转速)_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2 设计任务与要求2.1 设计任务温度控制直流电动机转速2.2 设计要求( 1)、本题目由学号为的学生完成。(2)、使用AT89C51 单片机为核心,使用4 位集成式数码管显示当前温度,温度传感器使用DS18B20 ,使用L298驱动直流电动机。(3)、用4 位集成式数码管显示当前温度,当温度在时,直流电动机在L298 驱动下加速正转,温度在全速正转;当温度时,直流电动机加速反转,温度时,直流电动机全速反转;温度之间时,直流电动机停止转动。(4)、控制程序在Keil 软件中编写,编译,整个控制电路在Proteus 仿真软件中连接调示。3 本课程设计的意义直流电动机作为一种高效率速度控制电动机引

2、人注目、但市场的知名度还小高。许多用户在设备用电动机的选择上经常出现不合理的现象。比如为了实现设备的功能、当变频器控制的异步电动机满足不了要求时就盲目的选用昂贵的伺服电动机、其中有些情况完全可以用价格较低的直流电动机来实现。采用单片机构成控制系统,可以节约人力资源和降低系统成本,从而有效的提高工作效率,可以实现复杂的控制,控制灵活性和适应性好,无零点漂移,控制精密高,可提供人机界面,多机联网工作。采用智能功率电路驱动比传统的分立功率器件组成的驱动体积小,功能强;减少了电路元器件数量,提高了系统的可靠性;控制电路哈尔功率电路集成在一起,使监控更容易实现;集成化使电路的连线减少,减少了布线电容和电

3、感以及信号传输的延时,增加了系统抗干扰的能力;集成化使系统成本大大降低。4 应用软件介绍4.1 Proteus 仿真软件Proteus 是一款 Labcenter 出品的电路分析实物仿真系统,可仿真各种电路和 IC ,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。该软件的特点:( 1)全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。( 2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、1 C 调试器、SPI 调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。目

4、前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、 PIC16系列、PIC18系列、Z80系列、 HC11系列以及各种外围芯片。支持大量的存储器和外围芯片。总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,可仿真51、 AVR 、 PIC。4.2 Keil 软件Keil C51 是美国Keil Software 公司出品的51 系列兼容单片机C 语言软件开发系统,与汇编相比, C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的

5、集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。5 keil 软件编写5.1 BS18B20 温度采集温度采集初始化void dsreset(void)uint i 。DS=1 。i+ 。DS=0 。i=103 。while(i>0)i- 。DS=1 。i=4 。while(i>0)i- 。DS=1 。写命令控制温度传感器void tmpwritebyte(uchar dat)uint i 。uchar j。

6、bit testb。for(j=1 。 j<=8 。j+)testb=dat&0x01 。dat=dat>>1 。if(testb)/write 1DS=0 。i+ 。 i+ 。DS=1 。i=8 。 while(i>0)i- 。elseDS=0 。i=8 。 while(i>0)i- 。 /write 0DS=1 。i+ 。 i+ 。读数据赋值给datbit tmpreadbit(void)uint i 。bit dat 。DS=1 。DS=0 。 i+ 。 i+ 。DS=1 。 i+ 。dat=DS。i=8 。 while(i>0)i- 。ret

7、urn (dat) 。uchar tmpread(void)uchar i,j,dat 。dat=0。for(i=1 。 i<=8 。i+)j=tmpreadbit() 。dat=(j<<7)|(dat>>1) 。return(dat) 。数据处理即判断温度正负uint tmp()float tt 。uchar a,b,b1。dsreset()。delay(1)。tmpwritebyte(0xcc) 。tmpwritebyte(0xbe) 。a=tmpread() 。b=tmpread() 。temp=b。b1=b 。temp<<=8 。temp=te

8、mp|a。if(b1<8)flag+=1 。tt=temp*0.0625 。temp=tt*10+0.5 。dis_buf0=0 。elseflag-=1 。temp=temp。temp=temp+1 。tt=temp*0.0625 。temp=tt*10+0.5 。dis_buf0=0x40 。return temp 。5.2 数码管显示采集的温度将采集后转化的温度对数组赋值void display(uint temp)uchar A1,A2,A3 。A1=temp/100 。A2=temp%100/10 。A3=temp%10 。t=A1*10+A2 。dis_buf3 = tabl

9、eA3。dis_buf2 = table1A2。dis_buf1 = tableA1。用定时器T1 调用温度采集函数进行温度采集void timer1() interrupt 3TH1=(65536-20000)/256 。TL1=(65536-20000)%256 。tmpchange()。display(tmp() 。用定时器T0 将处理后的温度用数码管显示void timer0() interrupt 1TH0 = (65536-500)/256 。TL0 = (65536-500)%256 。P2=0xff 。P0=dis_bufdis_index 。P2=dis_digit 。dis

10、_digit = _crol_(dis_digit,1)。dis_index+ 。dis_index &= 0x07 。5.3 判断电机旋转情况if(flag=1)flag=0 。if(t>=75)Turn_z() 。elseif(t>=45)Turn_zj() 。elseif(t>10)Turn_t() 。elseTurn_fj() 。elseif(flag=-1)flag=0 。Turn_f() 。6 Proteus 仿真6.1 Proteus 中各元件的元件图截图截图截图直流电动机截图晶体管截图6.2 芯片功能控制芯片ENA 为 IN1 、 IN2 的控制使能端

11、,本次设计用OUT1 、OUT2 作为输出控制直流电机转动。由于正反转换相时会产生饭香电压为保护LM298 用图中二极管来起到保护作用。IN1IN2ENA电机状态XX0停止101正转011反转6.2.2 DS18B20 时序图即简介VCC 接 +5V 、 GND 接地。 DQ 为总线接单片机P1.6 口DS18B20 初始化DS18B20 写入DS18B20 读出6.3 Proteus 仿真电路仿真图(未运行状态)温度大于75温度大于45 小于 75温度大于10 小于 45温度大于0 小于 10温度小于07 结论通过该课程设计,我掌握了编译程序的原理以及步骤,还有编译程序工作的基本过程及其各阶段的基本任务,熟悉了编译程序总流程框图,构造工具及其相关的技术。课本上的知识是机械的,抽象的。全速正转;当温度时,直流电动机加速反转,温度时,直流电动机全速反转;温度之间时,直流电动机停止转动参考文献1 辜承林,陈乔夫. 电机学 .华中科技大学出版社.20102 徐玮 . C51 单片机高效入门 . 机械工业出版社 .20073 吴金戌 . 沈庆阳,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论