鼓式制动器设计.docx

上传人:b****6 文档编号:6269116 上传时间:2023-01-05 格式:DOCX 页数:29 大小:2.04MB
下载 相关 举报
鼓式制动器设计.docx_第1页
第1页 / 共29页
鼓式制动器设计.docx_第2页
第2页 / 共29页
鼓式制动器设计.docx_第3页
第3页 / 共29页
鼓式制动器设计.docx_第4页
第4页 / 共29页
鼓式制动器设计.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

鼓式制动器设计.docx

《鼓式制动器设计.docx》由会员分享,可在线阅读,更多相关《鼓式制动器设计.docx(29页珍藏版)》请在冰豆网上搜索。

鼓式制动器设计.docx

鼓式制动器设计

鼓式制动器温度监控系统设计

 

鼓式制动器温度监控系统设计

摘要:

针对鼓式制动器失效问题设计了一套自动降温控制系统,主要是对制动器的温度控制,系统通过温度传感器测试刹车片实时温度,经过信号转换传给单片机进行分析处理,控制继电器淋水阀喷水降低制动器温度,以提高鼓式制动器的可靠性,保证行车制动安全。

关键词:

鼓式制动器;降温;单片机

 

序言…………………………………………………………1

第1章课题分析与方案论证……………………………………2

1.1课题任务分析…………………………………………………2

1.2设计方案………………………………………………………2

第2章软件使用介绍…………………………………………………3

2.1Keil软件 …………………………………………………………….3

2.2Proteus仿软真件的介绍 ………………………………………………..3

第3章单片机最小系统………………………………………………...4

3.1STC89C51RC单片机…………………………………………………4

3.2电源电路………………………………………………………8

3.3时钟电路………………………………………………………9

3.4复位电路………………………………………………………9

第4章软件电路………………………………………………………11

4.1程序流程图…………………………………………………………..11

4.2软件程序…………………………………………………………….11

4.3程序编译………………………….………………………………...16

4.2Protuse仿真…………………………………………………………18

第5章硬件电路………………………………………………………21

5.1电阻……………………………………………………………….21

5.2电容器………………………………………………………………21

5.3晶振………………………………………………………………..21

5.41N4148二极管………………………………………………………22

5.5TIP41-NPN型三极管……………………………………………….....23

5.6温度传感器DS18B20……………………………………………….….23

第6章应用系统实现………………………………………………...24

5.1硬件连接………………………………………………………….....24

5.2程序下载………………………………………………………….....25

参考文献…………………………………………………………28

致谢…………………………………………………………29

序言

司机驾车,尤其是在长时间下坡、急转弯的盘山路上行驶时要频繁地使用刹车,这就对刹车片的性能提出了较高的要求,可以这样说:

刹车系统是人身安全的重要保障。

众所周知,现在的刹车系统是利用刹车片之间的磨擦来实现减速的,但磨擦会产生热量,频繁的使用刹车,产生的大量热量不可能及时的散去,因此刹车片和车轮的温度迅速升高。

任何东西都有一个承受极限,当温度升高到一定程度时,汽车的制动效能就会下降。

尤其是鼓式制动器,由于其制动效能的稳定性较差,温度的升高很容易引起制动效能的下降。

因此可能发生刹车失灵的严重后果—直接威胁到车内人员的生命。

 

为此,我想到给车设计安装一个对车轮及刹车片温度进行实时监控,并能自动采取应对措施的系统来解决这个问题,从而达到提高行车的安全系数的目的。

本说明书共分为六章,第一章课题分析与方案论证;第二章对软件使用进行介绍;第三章对单片机最小系统进行分析;第四章对系统的软件进行了分析;第五章对硬件进行了分析;第六章介绍了应用系统的实现。

 

 

第1章课题分析与方案论证

1.1课题任务分析

本课题主要实现鼓式制动器温度监控,当制动器温度达到100℃时,水泵喷水,当温度达到120℃时,水泵大量喷水。

在Protuse仿真时,用电机代替水泵,当温度达到100℃时电机开始转动,当温度达到120℃时,电机快速转动。

本设计将介绍一种基于单片机的温度控制系统。

该系统采用STC89C51单片机为核心,通过STC89C51单片机驱动数字温度传感器DS18B20,从而驱动水泵。

1.2方案论证

1.2.1方案一

由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测试温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。

而且在对采集的信号进行放大时容易受温度的影响出现较大的偏差。

1.2.2方案二

进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测量温度值,进行转换,就可以满足设计要求。

从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。

 

第2章软件使用介绍

2.1Keil软件 

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C语言来开发,体会更加深刻。

KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

2.2Proteus仿软真件的介绍 

Proteus是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。

 

该软件的特点:

 

(1)全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。

 

(2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、1 C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。

(3) 目前支持的单片机类型有:

68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、 PIC18系列、Z80系列、HC11系列以及各种外围芯片。

(4)支持大量的存储器和外围芯片。

总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。

 

第3章单片机最小系统

3.1STC89C51RC单片机

MCS-51系列单片机常用机型有8051、8751、89C51等,简称51单片机,均使用Intel8051内核,指令系统与引脚完全兼容,仅内片ROM形式有所不同:

分别为PROM、EPROM、EEPROM。

而STC89C51RC单片机是新一代超强抗干扰/高速/低功率的单片机,指令代码完全兼容传统80C51单片机,12时钟/机器周期和6时钟/机器周期可任意选择。

STC89C51RC具有以下特点:

1)增强型1T流水线/精简指令集结构8051CPU。

2)工作电压:

5.5V-3.4V(5V单片机)/3.8V-2.0V(3V单片机)。

3)工作频率范围:

0-35MHz,相当于普通8051的0~420MHz.实际工作频率可达48MHz。

4)用户应用程序空间12K/10K/8K/6K/4K/2K字节。

5)片上集成512字节RAM。

6)通用I/O口(27/23个),复位后为:

准双向口/弱上拉(普通8051传统I/O口);可设置成四种模式:

准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏;每个I/O口驱动能力均可达到20mA,但整个芯片最大不得超过55mA。

7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器。

可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片。

8)EEPROM功能。

9)看门狗。

10)内部集成MAX810专用复位电路(外部晶体20M以下时,可省外部复位电路)。

11)时钟源:

外部高精度晶体/时钟,内部R/C振荡器;用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟;常温下内部R/C振荡器频率为:

5.2MHz~6.8MHz;精度要求不高时,可选择使用内部时钟,但因为有温漂,应认为是4MHz~8MHz。

12)共2个16位定时器/计数器。

13)外部中断2路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低电平触发中断方式唤醒。

14)PWM(4路)/PCA(可编程计数器阵列),也可用来再实现4个定时器也可用来再实现4个定时器或4个外部中断(上升沿中断/下降沿中断均可支持)。

15)ADC,10位精度ADC,共8路。

16)通用异步串行口(UART)。

17)SPI同步通信口,主模式/从模式。

18)工作温度范围:

0-75℃/-40-+85℃。

19)封装:

PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20。

图3-1STC89C51RC单片机

图3-2STC89C51RC单片机引脚图

STC89C51RC有40条引脚,共分为端口线、电源线、控制线三类,现将各引脚分别说明如下:

1.电源线。

Vcc:

+5V电源电压。

Vss:

+5V电源地端。

2.端口I/O(P0、P1、P2、P3)。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表1-1所示:

表1-151单片机P3口引脚的第二功能

引脚

第二功能

P3.0

RXD

(串行输入口)

P3.1

TXD

(串行输出口)

P3.2

/INT0

(外部中断0)

P3.3

/INT1

(外部中断1)

P3.4

T0

(记时器0外部输入)

P3.5

T1

(记时器1外部输入)

P3.6

/WR

(外部数据存储器写选通)

P3.7

/RD

(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

3.控制线。

1).外接晶体引脚:

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

2).RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

3).ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

4)./PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

5)./EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

综上所述,51单片机的引脚从名称上反映出功用,并且具有下列特点:

(1)功能多,引脚数少,许多引脚具有第二功能。

(2)对外呈三总线形式:

地址总线:

P0口、P2口合成16位。

数据总线:

P0口8位。

控制总线:

由ALE、/PSEN、RST、/EA、/INT0、T0、T1、/WR、/RD共10个引脚构成。

要让单片机“动起来”的基本前提是具有提供给单片机的电源、时钟和复位电路,这就是“单片机最小系统”。

STC89C51RC单片机最小系统,其中,电源、晶振电路、复位电路的硬件连接是常用的标准电路。

3.2电源电路

题目:

鼓式制动器温度监控系统

要求:

当温度达到100度时,电机开始转动。

当温度达到120度时,电机加速转动。

图3-3鼓式制动器温度监控系统模拟图

本次试验的电源电路采用USB接口的供电方式,以导线接USB+5V口,另一端插面包板左竖列孔。

USB的GND用导线接至右端孔。

元器件在面包板上装好后,将元器件的正极汇集至左竖列孔,元件接地端汇集至右端。

如下图3-4:

图3-4插在电脑上的USB口供电图

3.3时钟电路

MCS-51单片机芯片内部有一个反向放大器构成的振荡电路,XTAL1为振荡电路的输入端,XTAL2为振荡电路的输出端。

MCS-51的时钟可以由内部方式或外部方式产生。

内部方式时钟电路利用MCS-51内部的振荡电路,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路便产生自激振荡。

定时元件一般采用石英晶体和电容组成的并联谐振电路。

晶体可以在1.2至12MHz之间任选,电容可以在5至30pF之间选择,电容C01,C02的大小,可起频率微调作用。

上述电路可以用示波器观察到XTAL2输出的正弦波。

外部方式的时钟电路,XTAL1接地,XTAL2接外部振荡器。

对外部振荡信号无特殊要求,但需保证脉冲宽度,通常为频率低于12MHz的方波信号。

图4-5时钟电路-内部(左)外部(右)

3.4复位电路

STC89C51RC复位就是在满足51最小系统其他工作条件下,让RST管脚保持高电平(通常0.7Vcc以上电压)维持至少两个机器时钟,以引导单片机复位,之后RST管脚恢复为低电平。

一般有手动复位和自动上电复位两种。

图4-6两种复位电路

图4-6(a)为上电自动复位电路。

上电瞬间RST/Vpd端的电位与Vcc相同,随着RC电路充电电流的减少,RST/Vpd端的电位逐渐下降。

只要该端保持10ms以上的高电平就能使MCS-51单片机有效地复位。

图4-6(b)为按钮复位电路。

当按下复位按钮时,电源对外接电容充电,是RST/Vpd端为高电平。

复位按钮松开后,电容通过内部下拉电阻放电,逐渐使RST/Vpd端恢复低电平。

而本次实验选用的是上电复位。

第4章软件电路

4.1程序流程图

Y

N

Y

N

Y

N

图4-1程序流程图

4.2软件程序

#include"REG51.H"

#include"INTRINS.H"

#defineucharunsignedchar

#defineuintunsignedint

uchartemp;

uinttemperature=0;

uinttemperature1=0;

sbitDQ=P1^1;

sbitFAN=P1^0;

unsignedintvalue,a,b;

//*************************************

延时函数

*************************************//

voidDelay(uinttime)//大约延时2×time+5us

{

while(time--);

}

//*************************************

DS18B20初始化函数

*************************************//

voidInit_18B20(void)

{

DQ=1;//初始为高

Delay(10);//延时15us左右

DQ=0;

Delay(80);//延时480~960us

DQ=1;

Delay(30);//延时等待

}

//*************************************

DS18B20读一字节函数

*************************************//

unsignedcharReadOneChar(void)

{

unsignedchari=0;

unsignedchardat=0;

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

{

DQ=0;

dat>>=1;

DQ=1;

if(DQ)dat|=0x80;//从最高位开始读

Delay(15);

}

return(dat);

}

//*************************************

DS18B20写一字节函数

*************************************//

voidWriteOneChar(unsignedchardat)

{

unsignedchari=0;

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

{

DQ=0;

DQ=dat&0x01;//从最低位开始写根据时许来写的

Delay(5);

DQ=1;

dat>>=1;//数据右移一位

}

}

//*************************************

读取温度函数

*************************************//

unsignedintRead_Temperature(void)

{

EA=0;

Init_18B20();

WriteOneChar(0xCC);//发送跳过ROM指令

WriteOneChar(0x44);//发送存储器命令

Init_18B20();

WriteOneChar(0xCC);//发送跳过ROM指令

WriteOneChar(0xBE);//读暂寄存器命令

a=ReadOneChar();//低八位

b=ReadOneChar();//高八位

value=(b<<8)|a;//将低八位,高八位合起来到一个变量中

return(value);

EA=1;

}

voidInitTimer0(void)

{

TMOD=0x01;//16位定时器模式

TH0=0xD8;

TL0=0xF0;

EA=0;//关掉所有的中断

ET0=1;//T0的中断

TR0=0;//T0不计时

}

//**********************************************************

函数说明:

主函数

**********************************************************//

voidmain(void)

{

InitTimer0();

while

(1)//主循环

{

temperature=Read_Temperature();

temperature1=temperature&0x0fff;

if((temperature&0xf000)==0xf000)

{

FAN=0;

EA=0;

TR0=0;

}

else

{

if(temperature1<0x0640)

{FAN=0;EA=0;TR0=0;}

if((temperature1>=0x0640)&&(temperature1<0x0780))

{EA=1;TR0=1;}

if(0x0780<=temperature1)

{FAN=1;EA=0;TR0=0;}

}

}

}

voidTimer0Interrupt(void)interrupt1

{

TH0=0xD8;

TL0=0xF0;

FAN=~FAN;

}

 

4.3程序编译

将已经编好的程序复制下来,在KeiluVision3软件中进行编译,打开KeiluVision3,点击工程,然后新建工程。

然后在桌面上新建一个文件夹,打开文件夹,取文件名为“1”。

如图4-2

图4-2新建文件夹

然后选择Atmel-AT89C51,如图4-3所示:

图4-3选择Atmel-AT89C51

然后将编好的程序复制进来进行编译,编译好后进行添加,如图4-4所示:

图4-4编译程序

生成“1.hex”件,如图4-5所示:

图4-5生成hex文件

4.3Protuse仿真

4.3.1Proteus中各元件的元件图

4.3.1.1AT89C51截图,如图4-6:

图4-6单片机AT89C51

4.3.1.2DS18B20截图,如图4-7:

图4-7温度传感器DS18B20

4.3.1.3直流电动机截图,如图4-8:

图4-8直流电动机

4.3.2Proteus仿真电路,如图4-9,4-10,4-11

图4-9仿真图(未运行状态)

图4-10仿真图(温度大于100℃小于120℃)

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

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1