生物培养液微机温度控制系统课程设计任务书可编辑.docx

上传人:b****2 文档编号:17825209 上传时间:2023-08-04 格式:DOCX 页数:18 大小:95.58KB
下载 相关 举报
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第1页
第1页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第2页
第2页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第3页
第3页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第4页
第4页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第5页
第5页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第6页
第6页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第7页
第7页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第8页
第8页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第9页
第9页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第10页
第10页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第11页
第11页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第12页
第12页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第13页
第13页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第14页
第14页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第15页
第15页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第16页
第16页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第17页
第17页 / 共18页
生物培养液微机温度控制系统课程设计任务书可编辑.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

生物培养液微机温度控制系统课程设计任务书可编辑.docx

《生物培养液微机温度控制系统课程设计任务书可编辑.docx》由会员分享,可在线阅读,更多相关《生物培养液微机温度控制系统课程设计任务书可编辑.docx(18页珍藏版)》请在冰点文库上搜索。

生物培养液微机温度控制系统课程设计任务书可编辑.docx

生物培养液微机温度控制系统课程设计任务书可编辑

生物培养液微机温度控制系统_课程设计任务书

 

课程设计任务书

题目生物培养液微机温度控制系统的设计

初始条件

 设计一个生物培养液微型计算机温度控制系统系统为一阶惯性纯滞后特性温度在1525℃范围内连续可控温度控制精度为05℃通过LED显示温度

要求完成的主要任务

输入通道及输出通道设计温度传感器AD转换PWM输出控制和温度调节驱动电路

键盘温度设置与LED温度显示接口设计

采用改进PID控制算法

系统软件流程及各程序模块设计

完成符合要求的设计说明书

2011年6月20日2011年6月30日

指导教师签名年月日

系主任或责任教师签名年月日

1设计要求4

2总体设计方案及框图4

21系统设计方案论证4

22系统结构框图4

3硬件设计5

31单片机选择5

32温度传感模块8

33AD转换模块10

34键盘温度设置模块12

35LED显示模块13

36加热控制电路设计15

37降温控制电路设计16

38报警电路17

4软件设计18

41采用改进PID控制算法18

42系统软件流程20

5总结体会21

6参考文献22

7附件23

71系统原理图23

72程序24

摘要

随着社会的发展温度的测量及控制变得越来越重要温度是生产过程和科学实验中普遍而且重要的物理参数本文利用单片机结合传感器技术而开发设计了这一温度监控系统本文详细地讲述了基于单片机AT89C51和温度传感器LM35的温度控制系统的设计方案与软硬件实现方案系统采用数字温度传感器LM35采集温度电压信号经ADC0809AD转换成单片机可识别的数字电压信号数码管显示温度测量值当温度低于设定值时单片机控制继电器启动加热器加热当温度高于设定值时单片机控制继电器启动半导体制冷器制冷从而实现了控制温度的目的

关键字单片机温度控制传感器数码管

生物培养液微机温度控制系统设计

1设计要求

设计一个生物培养液微型计算机温度控制系统系统为一阶惯性纯滞后特性温度在1525℃范围内连续可控温度控制精度为05℃通过LED显示温度

2总体设计方案及框图

21系统设计方案论证

实现温度控制的方法主要有以下几种

方案一采用纯硬件的闭环控制系统该系统的优点在于速度较快但可靠性比较差控制精度比较低灵活性小线路复杂调试安装都不方便且要实现题目所有的要求难度较大

方案二FPGACPLD或采用带有IP内核的FPGACPLD方式即用FPGACPLD完成采集存储显示及AD等功能由IP核实现人机交互及信号测量分析等功能这种方案的优点在于系统结构紧凑可以实现复杂的测量与与控制操作方便缺点是调试过程复杂成本较高

方案三单片机与高精度温度传感器结合的方式即用单片机完成人机界面系统控制信号分析处理由前端温度传感器完成信号的采集与转换这种方案克服了方案一二的缺点所以本课题任务是基于单片机和温度传感器实现对温度的控制

22系统结构框图

系统主要包括温度采集部分温度放大转换部分温度驱动调节部分实时温度显示部分和报警部分以及温度设定的键盘输入部分单片机判断输入温度信号与设定的温度的差距再通过改进的PID算法给以调节系统框图如图1所示

  

图1生物培养液微型计算机温度控制系统图2单片机引脚图

32温度传感模块

LM35是由NationalSemiconductor所生产的温度感测器其输出电压与摄氏温标呈线性关系转换公式如式10°C时输出为0V每升高1°C输出电压增加10mV即

LM35有多种不同封装型式外观如图所示在常温下LM35不需要额外的校准处理即可达到±°14C的准确率其电源供应模式有单电源与正负双电源两种其引脚如图所示正负双电源的供电模式可提供负温度的量测两种接法的静默电流-温度关系如图所示单电源模式在25°C下静默电流约50μA非常省电

图2  LM35封装及引脚排列

  图3 单电源模式              图4 双电源模式

由课程任务书可知温度在1525℃范围内连续可控因此只需要单电源模式即可满足要求又由于LM35输出的电压太小因此将输出用非反相

放大器放大十倍其电路图如下图5所示

33AD转换模块

由于LM35温度传感器输出的是模拟量的温度电压值单片机无法直接识别因此需要对采集到的电压信号进行AD转换将其转化为单片机能识别的数字量本设计采用ADC0809AD转换器下面介绍ADC0809的特性

1.主要特性

  18路8位A/D转换器即分辨率8位

  2具有转换起停控制端

  3转换时间为100μs

  4单个+5V电源供电

  5模拟输入电压范围0~+5V不需零点和满刻度校准

  6工作温度范围为-40~+85摄氏度

  7低功耗约15mW

2.内部结构

  ADC0809是CMOS单片型逐次逼近式A/D转换器内部结构如图13.22所示它由8路模拟开关地址锁存与译码器比较器8位开关树型D/A转换器逐次逼近

3.外部特性引脚功能

  ADC0809芯片有28条引脚采用双列直插式封装如图13.23所示下面说明各引脚功能

  IN0~IN78路模拟量输入端

  2-1~2-88位数字量输出端

  ADDAADDBADDC3位地址输入线用于选通8路模拟输入中的一路

ALE地址锁存允许信号输入高电平有效

STARTA/D转换启动信号输入高电平有效

EOCA/D转换结束信号输出当A/D转换结束时此端输出一个高电平转换期间一直为低电平

  OE数据输出允许信号输入高电平有效当A/D转换结束时此端输入一个高电平才能打开输出三态门输出数字量

  CLK时钟脉冲输入端要求时钟频率不高于640KHZ

  REFREF-基准电压

  Vcc电源单一+5V

  GND地

ADC0809的工作过程是首先输入3位地址并使ALE1将地址存入地址锁存器中此地址经译码选通8路模拟输入之一到比较器START上升沿将逐次逼近寄存器复位下降沿启动A/D转换之后EOC输出信号变低指示转换正在进行直到A/D转换完成EOC变为高电平指示A/D转换结束结果数据已存入锁存器这个信号可用作中断申请当OE输入高电平时输出三态门打开转换结果的数字量输出到数据总线上

图6ADC0809AD转换芯片引脚

本系统中ADC0809的转化电路如下图7所示

图7ADC0809转换电路接线图

34键盘温度设置模块

键盘模块是本控制系统的人机交流模块部分主要为用户提供进行温度的设置功能该设置功能模块中包括了0到9的数字按键启动设置按键即设置按钮输入错误时的删除按键及删除键

由于按键较多为了节省IO口的资源本系统采用3X4矩阵式键盘方案由于变成扫描定式扫描的键盘工作方式过多的占用CPU时间本系统为了不过的占用CPU时间采用中断扫描方式其中断方式接法如图8所示其键盘接线连接图如下图9所示

图8中断方式接法图

图9键盘模块接线图

35LED显示模块

由于任务书要求使用LED显示温度而且温度在1525℃范围内连续可控温度控制精度为05℃因此本系统采用了四位共阳极的LED七段数码管如图10所示为4位7段数码管的原理图由于所有的段选线并联到同一个IO由这个IO口来控制因此若是所有的4位8段LED都选通的话4位8段LED将会显示相同的字符要使各个位的8段LED显示不同的字符就必须采用动态扫描方法来轮流点亮每一位8段LED即在每一瞬间只选通一位8段LED进行显示单独的字符在此段点亮时间内段选控制IO口输出要显示的相应字符的段选码而位选控制IO口则输出位选信号向要显示的位送出选通电平共阴极则送出低电平共阳极则送出高电平使得该位显示相应字符这样将四位8段LED轮流去点亮使得每位分时显示该位应显示的字符由于人眼的视觉暂留时间为01秒当每位显示的间隔未超过33ms时并在显示时保持直到下一位显示则由于人眼的视觉暂留效果眼睛看上去就像是4位8段LED都在点亮设计时要注意每位显示的间隔时间由于一位8段LED的熄灭时间不能超过100ms也就是说点亮其它位所用的时间不能超过100ms这样当有N位的8段LED用来显示时每一位间隔的时间t就必须符合下面的式子t≤100msN-1

图10LED的动态显示原理图

本系统中N=4则由式子可以算出t≤33ms就是每一位的间隔时间不能超过33ms当然时间可以也设得短一些比如5ms或1ms也可以

如下图11所示为该四位8段LED数码管显示模块的管脚连接图从左到右A-G依次接P00-P06DP接P07管脚1-4为数码管位选的输入依次接P20-P23管脚

图11  显示模块的管脚连接图

在进行显示编程时首先选定需要显示的位数然后向段选位送数据即可显示由于单片机可以直接驱动LED显示管因此不需外加驱动电路了

36加热控制电路设计

在读取到从温度传感模块采集到的温度数值后与事先设定好的温度值进行比较若当前检测得的温度比设定的温度低则需要对培养液进行加热处理本系统利用高阻抗的电阻丝来对培养液加热如下图12所示在检测到温度比设定的温度低时P25管脚输出高电平从而NPN管道通驱动继电器启动从而为高阻抗加热电阻丝通电加热生物培养液利用改进的PID算法来计算PWM脉宽得出控制输出从而达到根据检测到的温度而自动调节

图12培养液电阻丝加热模块

37降温控制电路设计

半导体制冷片也叫热电制冷片它的优点是没有滑动部件应用在一些空间受到限制可靠性要求高无制冷剂污染的场合利用半导体材料的Peltier效应当直流电通过两种不同半导体材料串联成的电偶时在电偶的两端即可分别吸收热量和放出热量可以实现制冷的目的它是一种产生负热阻的制冷技术其特点是无运动部件可靠性也比较高其工作原理如图13

图13半导体降温片工作原理图

半导体制冷片由许多N型和P型半导体之颗粒互相排列而成而NP之间以一般的导体相连接而成一完整线路通常是铜铝或其他金属导体最后由两片陶瓷片像夹心饼乾一样夹起来陶瓷片必须绝缘且导热良好通上之后冷端的热量被移到热端导致冷端温度降低热端温度升高

图14培养液半导体制冷片降温模块

  38报警电路

如果培养液里的温度过高或者是过低了超出了其允许的某个温度范围则系统会自动报警提醒用户可以让用户采取更为快速和有效地措施来避免或是减少损失报警电路图下图15所示当微机判断当前温度值超出范围时将P26管脚置低电平利用非门来驱动喇叭报警

图15报警电路图

4软件设计

41采用改进PID控制算法

采用典型的反馈式温度控制系统组成部分见下图15其中数字控制器的功能由单片机实现

图15 控制系统框图

已知培养皿的传递函数为设其中τ1为电阻加热的时间常数为电阻加热的纯滞后时间为采样周期

AD转换器可划归为零阶保持器内所以广义对象的传递函数为

4-1

广义对象的Z传递函数为

4-2

所以系统的闭环Z传递函数为

4-3

系统的数字控制器为

4-4

写成差分方程即为

4-5

则有

4-6

式中第次采样时的偏差

第次采样时的偏差

第次采样时的偏差

本生物培养液温控系统采用的数字PID算法由软件实现增量PID控制算法的优点是编程简单数据可以递推使用占用存储空间少运算快但是对于温度这种响应缓慢滞后性大的过程不能用标准的PID算法进行控制当扰动较大或者给定的温度值大幅度变化时由于产生较大的偏差加上温控本身的惯性及滞后在积分作用下系统往往产生较大的超调和长时间的振荡因此为克服这种不良的影响采用积分分离法对增量PID算法进行改进当偏差ek绝对值较大时暂时取消积分作用当偏差ek绝对值小于某一设定值M时才将积分作用投入

1当ekM时用PlD控制偏差小说明系统温度已经接近设定值此时加入了积分作用可以消除系统静差保证系统的控制精度根据递增原理可得式中eKrK一yK为第K时刻所得偏差信号其中rK是给定值yK是实际输出值

其中kp为比例增益ki为积分系数kd为微分系数则增量式PID控制算法为

当ek≥M时用PD控制由于偏差大说明系统温度远离设定值应快速降温采用PD控制可以提高系统的动态响应速度避免产生过大的超调减小动态误差

42系统软件流程

图16 单片机系统主控制流程图 

5总结体会

通过这次课程设计让我受益匪浅在设计期间通过与同学们的交流及查阅资料让我学习到不少的知识不仅学习到各种芯片的功能及使用方法同时还有一些软件特别是proteus让我印象很深的是之前使用protel画原理图一些在库中芯片没有我只能动手去画还不能仿真十分麻烦后来在同学的帮助下使用proteus一切迎刃而解还掌握了proteus的使用技巧及了解到他的强大之处让我兴趣倍增同时还用到了keil仿真软件虽然最后还是程序出错没能仿真成功但也为我在以后使用仿真打好了坚实的基础还有这次设计深化了我对PID控制技术的理解特别是改进算法同时提高了我独立思考问题解决问题的习惯与能力

经过这次设计让我深深体会到理论联系实际的重要行平时就要扎扎实实的学号基本功只有学号理论知识在实际使用的时候都会变的更方便带给我收获的同时也让我意思到理论知识及动手操作的不足所以在以后的学习生活中我会更努力的加强理论知识与实践的学习使自己的能力不断增长不断提高自己

6参考文献

1于海生计算机控制技术机械工业出版社2007年5月

2陈立周陈宇编著.单片机原理术及应用机械工业出版社2007.1

3王成等.通用微机接口实验系统教师用实验指导书北京清华大学出版社2001.1~4

4林立张俊亮编著.单片机原理及应用电子工业出版社2009.7

5刘红丽传感与检测技术国防工业大学出版社2007年3月

7附件

71系统原理图

图18系统原理图

72程序

include

include

sbitSTP20

sbitOEP21

sbitEOCP22

ucharcodedis_7[17]0x3F0x060x5B0x4F0x660x6D0x7D0x070x7F0x6F0x000x400xED0xF90xE70x390x63

共阳LED段码表"0""1""2""3""4""5""6""7""8""9""不亮""-""S""E""q""C""°"

ucharcodescan_con[4]0x7f0xbf0xdf0xef列扫描控制字

uchardatatemp_data[2]0x000x00读出温度暂放

intChannel4

unsignedcharSavedDat[6]存放采集的数据结果

voidInitAdc0809初始化函数

ChannelSelA0

ChannelSelB0

ChannelSelC0默认选择第0通道

ST0

OE0

ET01

EA1

TMOD0x02

TH0226

TL0226

TR01

voidReadDatvoid

ST1

_nop_

_nop_

ST0启动转换

_nop_

_nop_

ifEOC1

OE1

SavedDat[Channel]P1

_nop_

_nop_

OE0

_nop_

_nop_

ST1

_nop_

_nop_

ST0

_nop_

_nop_

InitAdc0809

channelChannelSel

switchChannelSel

case0

ChannelSelA0

ChannelSelB0

ChannelSelC0break

case1

ChannelSelA0

ChannelSelB0

ChannelSelC1break

case2

ChannelSelA0

ChannelSelB1

ChannelSelC0break

case3

ChannelSelA1

ChannelSelB1

ChannelSelC0break

case4

ChannelSelA0

ChannelSelB0

ChannelSelC1break

defaultbreak

ReadDat

voidmain

Adc0808Channel

P3SavedDat[Channel]

VoidKeyscanvoidinterrupt1using2用中断法扫描键盘

ucharKeyScan检查按键情况

uchartemp40

KEY0xef扫描第1列键

switchKEY

case0xeetemp1break

case0xedtemp4break

case0xebtemp7break

case0xe7temp10checkbreak

defaultbreak

KEY0xdf扫描第2列键

switchKEY

case0xdetemp2break

case0xddtemp5break

case0xdbtemp8break

case0xd7temp0break

defaultbreak

KEY0xbf扫描第3列键

switchKEY

case0xbetemp3break

case0xbdtemp6break

case0xbbtemp9break

case0xb7temp11break

defaultbreak

returntemp返回按键键值

显示扫描函数

scan温度显示时4位LED扫描

chark

fork0k4k4位LED扫描控制

Disdatadis_7[display[k]]数据显示

ifk1DINcon1DIN1小数点显示

discanscan_con[k]位选

delay250

--------温度数据处理--------

work_tempuinttem

ucharn0

iftem6348温度值正负判断

tem65536-temn1负温度求补码标志位置1

display[4]tem0x0f取小数部分的值

display[0]ditab[display[4]]存入小数部分显示值

display[4]tem4取中间八位即整数部分的值

display[3]display[4]100取百位数据暂存

display[1]display[4]100取后两位数据暂存

display[2]display[1]10取十位数据暂存

display[1]display[1]10

nowtpdisplay[3]100display[2]10display[1]计算当前温度

send_Da[0]nowtp把当前温度储存到发送缓存区

--------PID运算函数---------------

voidpid

staticintdiff[19]0000000000000000000

staticintsum_diff0∑diff

staticuintcurr_0

floatp_outi_outd_outtemp_pid

floatpwm_0

temp_piddiff[curr_]

ifcurr_119curr_0

elsecurr_1

sum_diff-diff[curr_]

diff[curr_]settp-nowtp

sum_diffdiff[curr_]

p_outKPdiff[curr_]比例项输出

i_outKIsum_diff积分项输出

d_outKDdiff[curr_]-temp_pid微分项输出

pwm_0KCsettp维持功率项

ifi_out100i_out100积分分离

ifi_out-100i_out-100

PWMp_outi_outd_outpwm_0总输出量

ifPWM0PWM0积分改进PID控制

elseifPWM100PWM100

输出函数

voidPWM_OUTfloatPWM

staticuchart1t1--100周期为4秒

ucharlimitpid_value输出百分比

limitucharPWM

iftlimitHEAT0加热

elseHEAT1停止加热

t

ift100t1

本科生课程设计成绩评定表

姓名张方举性别男专业班级自动化0804班课程设计题目生物培养液微机温度控制系统的设计课程设计答辩或质疑记录

成绩评定依据

评定项目

评分成绩

1.考勤态度15分

2查阅资料能力10分

3系统设计包括系统实现原理框图方案的说明20分

4.硬件电路程序编写调试结果20分

5.设计说明书质量及规范化参考文献充分不少于5篇15分

6.答辩20分

总分

最终评定成绩以优良中及格不及格评定

指导教师签字

年月日

武汉理工大学《计算机控制技术》课程设计说明书

1

加热控制及高阻抗加热丝加热电路

AT89C51

单片机

LED显示

制冷控制及半导体制冷片制冷电路

报警电路

键盘电路

温度采集放大AD转换电路

开始

单片机系统初始化

温度设置程序

有键按下

温度采样与AD转换

调用温度显示

温度超出

报警程序

Y

设定的温度值

≥设定的温度值

N

Y

N

保持温指示灯亮

高温指示灯亮

低温指示灯亮

调用PID数据处理程序

控制量的输出

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

当前位置:首页 > 经管营销 > 经济市场

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

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