鸡雏恒温孵化器.docx

上传人:b****1 文档编号:3129154 上传时间:2023-05-05 格式:DOCX 页数:26 大小:176.06KB
下载 相关 举报
鸡雏恒温孵化器.docx_第1页
第1页 / 共26页
鸡雏恒温孵化器.docx_第2页
第2页 / 共26页
鸡雏恒温孵化器.docx_第3页
第3页 / 共26页
鸡雏恒温孵化器.docx_第4页
第4页 / 共26页
鸡雏恒温孵化器.docx_第5页
第5页 / 共26页
鸡雏恒温孵化器.docx_第6页
第6页 / 共26页
鸡雏恒温孵化器.docx_第7页
第7页 / 共26页
鸡雏恒温孵化器.docx_第8页
第8页 / 共26页
鸡雏恒温孵化器.docx_第9页
第9页 / 共26页
鸡雏恒温孵化器.docx_第10页
第10页 / 共26页
鸡雏恒温孵化器.docx_第11页
第11页 / 共26页
鸡雏恒温孵化器.docx_第12页
第12页 / 共26页
鸡雏恒温孵化器.docx_第13页
第13页 / 共26页
鸡雏恒温孵化器.docx_第14页
第14页 / 共26页
鸡雏恒温孵化器.docx_第15页
第15页 / 共26页
鸡雏恒温孵化器.docx_第16页
第16页 / 共26页
鸡雏恒温孵化器.docx_第17页
第17页 / 共26页
鸡雏恒温孵化器.docx_第18页
第18页 / 共26页
鸡雏恒温孵化器.docx_第19页
第19页 / 共26页
鸡雏恒温孵化器.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

鸡雏恒温孵化器.docx

《鸡雏恒温孵化器.docx》由会员分享,可在线阅读,更多相关《鸡雏恒温孵化器.docx(26页珍藏版)》请在冰点文库上搜索。

鸡雏恒温孵化器.docx

鸡雏恒温孵化器

第一章课程设计目的与要求

1.1课程设计目的

“单片机与接口技术”课程设计是在教学及实验基础上,对课程所学理论知识的深化和提高。

因此,要求学生能综合应用所学知识,设计与制造出具有较复杂功能的小型单片机系统,并在实践的基本技能方面进行一次系统的训练。

能够较全面地巩固和应用“单片机”课程中所学的基本理论和基本方法,并初步掌握小型单片机系统设计的基本方法。

培养独立思考、独立收集资料、独立设计规定功能的单片机系统的能力;培养分析、总结及撰写技术报告的能力。

1.2课程设计的实验环境

利用windows操作系统及应用软件进行绘图和编程。

1.3课程设计的预备知识

熟悉单片机与接口技术课程的相关知识及电子线路CAD工具软件。

1.4课程设计要求

按课程设计指导书提供的课题,根据第二章给出的基本要求及参数独立完成设计,课程设计说明书应包括以下内容:

1、对设计课题进行简要阐述,并说明设计任务及具体要求。

2、论述系统设计方案,并画出总体电路结构图及功能分割图。

3、能够较熟练地应用电子线路CAD工具完成单片机系统的硬件设计任务。

4、各功能模块设计说明、设计实现过程及源程序。

5、能够较熟练地应用一种编辑软件编写程序,掌握单片机系统软件设计的基本方法

6、课程设计报告应内容完整、字迹工整、图表整齐规范、数据详实。

7、课程设计总结

8、字数4000左右,有系统电气原理图。

第二章课程设计内容

1、使用1只传感器选择。

2、控制温度小于50℃。

3、3位数码管显示。

4、CPU采用51兼容型。

5、加热器1000W

1温度传感器选择。

2温度测量通道设计。

3显示电路设计。

4CPU及按键电路设计。

5温度控制电路设计

6写出程序流程图及汇编程序。

第一天

第二天

第三天

第四天

第五天

第二周

温度传感器选择,温度测量通道设计。

显示电路设计。

CPU及按键电路设计。

温度控制电路设计

写出程序流程图及汇编程序。

画原理图、打印

第3章课程设计的考核

3.1课程设计的考核要求

课程设计采用五级(优、良、中、及格、不及格)评分制。

最后成绩依据课程设计论文及平时成绩决定,其中平时考核成绩占20%。

3.2课程性质与学分

单片机与接口技术课程设计的课程性质:

考查

学分:

2分

第四章设计

4.1设计思路

本设计采用89C-51单片机系统来实现孵化场温度的自动控制。

单片机软件编程灵活,自由度大,可用软件编程实现各种控制算法和逻辑控制。

单片机系统可用数码管显示现场温度,孵化场温度的上下限能用键盘设定,并可实现报警、控制等多种功能。

本方案选用89C-51芯片(内部含有4KB的EEPOM),不需要向外扩展程序存储器,可使系统整体结构更为简单,控制系统结构如图4.1所示。

 

4.2系统硬件设计

4.2.189C-51单片机简介

本设计决定用单片机作为中心控制器。

现流行的单片机有很多种,其中MCS-51系列以较高的性价比博得很多用户的青睐。

所以,本系统采用美国Intel公司生产的89C-51型单片机,由于其具有集成度高、处理功能强、可靠性高、系统结构简单、价格低廉等优点并具有4K字节的程序存储器,使得它应用起来更加方便。

4.2.2数据存储器扩展

89C-51型单片机片内有128B的RAM,在实际应用中仅靠这256B的数据存储器是远远不够的。

这种情况下可利用MCS-51单片机所具有的扩展功能扩展外部数据存储器。

MCS-51系列单片机最大可扩展64KB。

6264是8K×8位静态随机存储器,采用CMOS工艺制造,单一+5V电源供电,额定功率200mW,典型存取时间200ns,为28线双列直插式封装,其引脚如图4.2所示,工作方式选择如表4.1所示:

A0~A12

地址线

I/00~I/07

双向数据线

片选线1

片选线2

写允许线

读允许线

 

表4.1工作方式选择图4.2引脚图

4.2.3传感器的选择

热电阻传感器主要用于测量温度及与温度有关的参数,在工业生产中被广泛用于测量-200℃~+500℃范围内的温度.按照热电阻的热度不同,热电阻可以分为金属热电阻和半导体热电阻两类,前者称为热电阻,后者称为热敏电阻。

以热电阻或热敏电阻为主要器件制成的传感器称为热电阻传感器或热敏电阻传感器。

根据本设计中所需要测量的温度范围、敏感度、精确度以及考虑其经济性,热敏电阻传感器为最合适的测温元件。

温度检测电路设计

本设计采用的是热敏电阻电桥接口变换,热敏电阻电桥与运放级联传感器电路如图4.3所示。

电桥输出构成运放差输入,可获得对地为零输出电压。

;输出电压值如列表,输出电压特性:

输出为S形曲线;具有S形非线性误差,最大误差为+150mv。

图中

用于零点调整,

用于温度调整。

 

图4.3传感器电路图

输入温度0℃~50℃,输出电压0V到10V。

为避免热敏电阻加热效应取

热敏电阻参数如表4.2。

表4.2热敏电阻参数及输出电压

温度(℃)

0

7.0581

0.0000

10

5.9743

1.856

20

4.9826

3.928

25

4.5402

5.000

30

4.1381

6.071

40

3.4568

8.133

50

2.9274

10.000

4.2.4A/D转换电路

A/D转换接口是系统数据采集前向通道的一个重要环节。

数据采集是在模拟信号源中采集信号,并将之转换为数字信号送入计算机的过程。

AD574由两部分组成,一部分是模拟芯片,另一部分数字芯片,其中模拟部分由高性能的12位D/A转换器AD565和参考电压组成。

数字部分由控制逻辑电路,逐次逼近型寄存器的三态缓冲器组成。

AD574的引脚如图4.4所示。

 

图4.4AD574的引脚图

4.2.5显示接口电路设计

LED显示块是由发光二极管显示字段的显示器件。

这种显示块有共阴极和共阳极两种。

共阴极LED显示块的发光二极管共地。

当某个发光二极管的阳极为高电平时,发光二极管点亮;本设计选用的显示块是共阴极的LED(共阴极LED显示块的发光二极管阴极接地,当某个发光二极管的阳极为高电平时,发光二极管点亮)。

将单片机I/O口的8位线与显示块的发光二极管的引出端(a~dp)相连,共阴极低电平有效,选通有效后8位并行输出口输出不同的数据就点亮相应的发光二极管,获得不同的数字或字符。

本设计采用的芯片是74LS374。

显示电路如图4.5所示:

 

 

图4.5显示电路原理图

4.2.6输出控制电路设计

在本设计系统中,需要控制高电压(220V),高电流的负载,这样大功率负载显然是不能用单片机的I/O线来直接驱动的,这就必须经过单片机的功率接口来驱动。

此外,为了隔离和抗干扰,还需要加接光电耦合器。

因为本设计采用的交流负载,所以选用双向可控硅。

双向可控硅的内部结构如下图4.6。

在设计当中,采纳了Motorola公司推出的单片集成可控硅驱动器件MOC3041作为为对输出的驱动和控制。

由MOC3041组成的过零触发双向可控硅电路简单可靠,MOC3041和双向可控硅构成的输出通道电路如下图4.7所示。

 

 

图4.6双向可控硅的内部结构图4.7MOC3041和双向可控硅构成的输出通道电路

该部分的工作过程是:

当单片机的P14口输出为低电平是,MOC3041内部导通,G端通道出现同步触发脉冲,控制可控硅导通,打开加热器;当P14为高电平时,MOC3041内部截止,可控硅断开,关闭加热器。

本设计采用1000W加热器

4.2.7简易式键盘接口电路设计

8255可编程并行I/O接口设计

MCS-51系列单片机共有4个8位并行I/O口,这些I/O口一般是不能完全提供给用户使用的,在外部扩展存储器时,提给用户使用的I/O口只有P1和P3口的部分口线。

因此在大部分的MCS-51单片机应用系统中都免不了要进行I/O口的扩展。

8255芯片引脚图如图4.8所示。

 

图4.88255引脚图

单片机也8255的接口比较简单,如图4.9所示,8255的片选信号

及口地址选择线AO、A1分别由单片机的P0.7和P0.0、P0.1经地址锁存器提供.

8255的A、B、C口及控制口地址分别为FF7CH、FF7DH、FF7EH、FF7FH。

8255的D0~D7分别与P0.0到P0.7相连。

 

图4.989C-51与8255的接口电路

键盘功能说明:

1号键:

上升。

2号键:

下降。

3号键:

下限温度值确定。

4号键:

上限值确定。

5号键:

查询上下限值。

使用1号键和2号键,设定需要的温度控制系统的上限值,然后按下4号键,将这个上限值确定,也就是将上限值保存到专用的寄存器里。

在完成设定上限值的工作后,使用1号键和2号键设定需要的温度控制系统的下限值,然后按下3号键,将这个下限值确定,也就是将这个下限值保存到专用的寄存器里,然后系统进去实时的温度测量和控制工作中。

键盘接口电路如图4.10所示:

 

 

图4.10简易式键盘的接口电路

4.2.8复位电路

MCS-51复位是由外部的复位电路来实现的。

复位电路通常采用上电复位和按钮复位两种方式。

该电路兼有上电复位和按钮复位。

复位电路如图4.11所示。

工作原理为:

按钮按下后,RC电路充电,RST引脚端出现正脉冲,只要RST端保持10ms以上的高电平,就能用单片机有效的复位。

该设计时钟频率为12MHz,C取22μF,R取1K欧姆。

复位电路如图2.20所示。

 

图4.11复位电路原理图图4.12声光报警电路接口电路

4.2.9报警电路

本设计采用声光报警电路,接口电路如图4.12所示。

MCS-51的口线P11接报警电路的输入端,当P11口输出低电平时,7046输出为高电平,发光二极管两端电压差接近5V,发光报警.压电蜂鸣器两条引线加上近5V的直流电压,由压电效应而发出蜂鸣音报警。

4.3系统软件设计

4.3.1主程序设计

主程序流程图如图4.13所示主程序完成的功能是:

启动传感器测量温度,将测量温度与给定值比较进行PID运算,若

,则进入加热阶段,置P13为高电平。

在过程中继续对温度进行监测,当

时,置P13为低电平断开可控硅,关闭加热器,等待下一次的启动命令。

 

图4.13主程序流程图

4.3.2控制部分程序

这部分程序的功能是将采集到的温度值TX与TL比较,如果TX≤TL则报警,并置P3.1口为低电平,通过光耦合器打开可控硅,使加热器加热,并调显示,显示88.8。

否则将TX与TH比较,如果TX≥TH则报警,并置P13口为高电平,通过光耦合器关闭可控硅,停止加热器加热,并调显示,显示88.8。

否则,也就是

当温度在正常范围内,调显示,显示采集到的温度值

加热程序流程图如图4.14所示。

 

图4.14加热报警子程序流程图

4.3.3键盘模块

本部分主要是实现输入设定温度和查询设定温度的功能。

该部分的子程序流程图如图4.15所示。

在键盘的控制方面,由于采用了5个单键,因此使得键值识别的问题也比较简单。

在执行程序的时候只需要逐位判断PA0,PA1,PA2,PA3,PA4口是高电平还是低电平,若为高电平,则表示没有按键按下,若为低电平,则表示已经有键按下,于是执行键的处理子程序。

在程序的设计当中,考虑了键的去抖动问题。

在发现有键闭和时,不是立即读入该键值,而是延时一段时间以后,再进行键闭和与否的判断,确认此时真的有键按下,有则进行该按键的处理,没有则不进行处理。

 

 

图4.15键盘处理子程序流程图

4.3.4显示子程序

此模块采用的是动态扫描的方法,依次改变P0口输出高电平的位和P2口输出对应的数据段,就可以轮流点亮显示器的各位数码管。

动态显示是把十六进制数(或BCD码)转换为相应字形码,故它通常需要在RAM区建立一个显示缓冲区。

显示部分流程图如图4.16所示。

4.3.5数据采集模块 

数据采集的主要任务是巡回检测三点的温度参数并把它们存在外部RAM指定单元,采样程序如图4.17所示。

 

 

图4.16显示子程序流程图图4.17采样程序流程图

4.3.6程序清单

ORG0000H

SJMPMAIN

ORG0003H

LJMPINT

ORG0025H

MAIN:

MOVSP,#60H

MOV20H,#00H

MOV21H,#08H

MOV29H,#0FEH

LCALLZIJIAN

LCALLREADTHTL

LCALLTESTRANGE

LCALLDISP

SETBINT0

SETBEX0

SETBEA

LOOP:

LCALLDELAY

LCALLGET_TEMP

LCALLTURN

LCALLDISPLAY

CLRC

MOVA,24H

CJNEA,2EH,LOOP1

SJMPHOTTING

LOOP1:

JCHOTTING

MOVA,24H

CLRC

CJNEA,2DH,LOOP2

SJMPSTOPHOT

LOOP2:

JNCSTOPHOT

SJMPKEEP

HOTTING:

CLRP3.1

CLRP1.5

SETBP1.6

KEEP:

SJMPLOOP

STOPHOT:

SETBP3.1

SETBP1.5

CLRP1.6

SJMPLOOP

ZIJIAN:

MOV30H,#08H

MOV31H,#08H

MOV32H,#13H

MOV33H,#08H

MOV34H,#13H

CLRP1.4

CLRP1.5

CLRP1.6

CLRP1.7

MOVR3,#0FFH

WAIT0:

ACALLDISPLAY

DJNZR3,WAIT0

SETBP1.5

SETBP1.6

SETBP1.7

RET

TURNTH:

MOV2DH,27H

MOV2EH,28H

MOV24H,27H

ACALLTURN

MOV2AH,30H

MOV2BH,31H

MOV2CH,32H

MOVA,2CH

CLRC

SUBBA,#0BH

MOV2CH,A

MOV33H,#00H

MOV34H,#15H

RET

TESTRANGE:

MOVA,2AH

CJNEA,#01H,NOMAX

MOV22H,#08H

SJMPEXITTEST

NOMAX:

MOVA,2BH

CJNEA,#00H,MIDD

MOV22H,#02H

SJMPEXITTEST

MIDD:

MOV22H,#04H

EXITTEST:

RET

DISPLAY:

MOVR0,#03H

DIS:

MOVDPTR,#TAB

MOVA,@R0

MOVCA,@A+DPTR

MOVDPTR,#7FFFH

MOVX@DPTR,A

INVR0

MOVDPTR,#0BFFFH

MOVA,29H

MOVX@DPTR,A

HERE:

DJNZR4,HERE

SETBC

RLCA

MOV29H,A

JBACC.5,DIS

MOV29H,#OFEH

RET

TAB:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,OBFH

DB86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H,0FFH,0EFH,79H

GET_TEMP:

CLREA

ACALLINI

MOVA,#0CCH

ACALLWRITE

MOVA,#44H

ACALLWRITE

ACALLINI

MOVA,@0CCH

ACALLWRITE

ACALLREAD

MOV24H,A

SETBEA

RET

SETTHTL:

CLREA

ACALLINI

MOVA,#0CCH

ACALLWRITE

MOVA,#4EH

ACALLWRITE

MOVA,2DH

ACALLWRITE

MOVA,2EH

ACALLWRITE

ACALLINI

MOVA,#0CCH

ACALLWRITE

MOVA,#48H

ACALLWRITE

ACALLREADTHTL

MOVA,27H

CJNEA,2KH,SETTHTL

MOVA,28H

CJNEA,2EH,SETTHTL

SETBEA

RET

READTHTL:

CLREA

ACALLINI

MOVA,@0CCH

ACALLWRITE

MOVA,#0B8H

ACALLWRITE

ACALLINI

MOVA,#0CCH

ACALLWRITE

MOCA,#0BEH

ACALLWRITE

ACALLREAD

ACALLREAD

ACALLREAD

MOV27H,A

ACALLREAD

MOV28H,A

SETBEA

RET

INI:

CLRP3.0

MOVR2,#100

11:

CLRP3.0

DJNZR2,I1

SETBP3.0

MOVR2,#15

I2:

DJNZR2,I2

CLRC

ORLC,P3.0

JCINI

MOVR6,#40H

I3:

ORLC,P3.O

JCI4

DJNZR6,I3

SJMPINI

I4:

MOVR2,#120

I5:

DJNZR2,I5

RET

TEAD:

MOVR6,#8

WR1:

SETBP3.0

MOVR4,#4

RRCA

CLRP3.0

WR2:

DJNZR4,WR2

MOVP3.0,C

MOVR4,$40

WR3:

DJNZR4,WR3

DJNZR3,WR1

SETBP3.0

RET

READ:

MOVR6,#8

RE1:

CLRP3.0

MOVR4,#2

SETBP3.O

RE2:

DJNZR4,RE2

MOVC,P3.0

RRCA

MOVR5,#15

RE3:

DJNZR5,RE3

DJNZR6,RE1

RE5:

SETBP3.0

RET

TURN:

CLRC

MOVA,24H

RRCA

MOV25H,A

JNCTURN0

MOV33H,#05H

AJMPTURN1

TURN0:

MOV33H,#00H

TURN1:

MOVA,25H

ACALLBTOD

RET

BTOD:

MOVB,#100

DIVAB

MOVT0,#30H

MOV@R0,H

INCR0

MOVA,#10

XCHA,B

DIVAB

MOV@R0,A

INCR0

MOVA,B

ADDA,#0BH

MOV@R0,A

RET

DIS:

LCALLDIR

JNBP3.0,LC

JNBP3.4,LC0

JNBP3.2,LC1

JNBP3.5,LC2

AJMPDIS

LC:

LCALLDEL

JBP3.0,DIS

MOVA,30H

CJNEA,#0FFH,XIA

MOVA,#5

ADDA,30H

MOV30H,A

INC31H

LCALLIBTD2

AJMPDIS

LC0:

LCALLDEL

JBP3.4,DIS

MOVA,30H

CJNEA,#00H,DECLINE

MOVA,30H

SUBBA,#5

MOV30H,A

DEC31H

LCALLIBTD2

AJMPDIS

DECLINE:

MOVA,30H

SUBBA,#05H

MOV30H,A

LCALLIBTD2

AJMPDIS

XIA:

MOVA,#5

ADDA,30H

MOV30H,A

LCALLIBTD2

AJMPDIS

LC1:

LCALLDEL

JBP3.2,DIS

MOV40H,32H;保存输入值

MOV41H,33H

MOV42H,34H

MOV43H,35H

LCALLDIR

AJMPDIS

LC2:

LCALLDEL

JBP3.5,DIS

MOV50H,32H

MOV51H,33H

MOV52H,34H

MOV53H,35H

RETI

DELAY:

MOVR2,#0BH

HERE0:

MOVR3,#00H

HERE1:

DJNZR3,HERE1

DJNZR2,HERE0

RET

END

4.4系统原理图

 

4.5设计心得:

通过这次设计才知道自己对所学知识没有很深刻的理解,不能很好的运用。

还好能够得到老师的耐心指导,才能够完成这次设计。

在设计的过程中我们走了不少的弯路,也遇到了很多的问题,还好都被我们一一解决。

这使我们从中学得了很多的知识,在课本上学得都是些理论知识,而到了实际操作遇到的难题还真是你无法想象得到的。

经过本次设计我们对单片机又有了一点深刻的认识并对教学机的内部结构和运行方式有了进一步的了解。

做的不好望老师能够见谅。

最后,感谢学校和老师能够提供这次机会使我们学得了很多新的知识。

参考文献

[1]李锡雄.微型计算机控制技术.北京:

科学出版社,1999.8

[2]张迎新.单片微型计算机原理应用及接口技术.北京:

国防工业出版社,2000

[3]胡寿松.自动控制原理.北京:

国防工业出版社,1994

[5]何立民.单片机应用系统设计.北京:

北京航空航天大学出版社,1989

[6]李华.MCS-51系列单片机实用接口技术.北京:

北京航空航天大学出版社,1993

[7]梅丽凤.单片机原理及接口技术清华大学出版社2004年

[8]李志忠.微型计算机应用技术.北京:

清华大学出版社,1989

[9]曹素芬.MCS-51系列原理与接口技术.沈阳:

东北大学出版社,1994

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

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

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

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