欢迎来到ag澳门娱乐福利视频_新浪财经!

服务电话:400-323-4333

当前位置:主页 > 技术资料 > >反应釜温度检测仪设计

  辽 宁工 业 大 学 单片机原理及接口技术课程设计(论文) 题目: 反应釜温度检测仪设计 院(系): 专业班级: 学 号: 电气工程学院 学生姓名: 指导教师: 起止时间: 本科生课程设计(论文) 课程设计(论文)任务及评语 院(系):电气工程学院 学 号 设计题目 学生姓名 反应釜温度检测仪设计 设计一个能够监测无腐蚀液体的反应釜内部温度的仪器。 设计任务: 1.以单片机为控制核心,对反应釜内部的温度进行监测; 2.选择合适的温度传感器,设计信号放大电路和 A/D 转换电路; 3.能够实时显示加热炉内的温度; 4.具有报警功能,能够采用键盘设置报警的上下限,设计相应的驱动电路。 5. 自己扩展至少一项功能。 设计要求: 1、分析系统功能,尽可能降低成本,选择合适单片机、传感器等,设计相应驱动电路; 2、应用专业绘图软件绘制硬件电路图和软件流程图; 3、按规定格式,撰写、打印设计说明书一份,其中程序开发要有详细的软件设计说明, 详细阐述系统的设计过程,字数应在 4000 字以上。 技术参数: 1.反应釜内温度范围为 0-1000 摄氏度; 2.监测仪的测量误差不超过±5 摄氏度; 3.温度只显示整数部分。 教研室: 专业班级 课 程 设 计 ( 论 文 ) 任 务 工 作 计 划 1、布置任务,查阅资料,理解掌握系统的设计要求。(2 天) 2、选择合适的单片机、温度传感器元器件型号。(1 天 3、绘制硬件电路图。(1 天) 4、按系统的控制要求,编写软件程序。(3 天) 5、上机调试、修改程序、答辩。(2 天) 6、撰写、打印设计说明书(1 天) 指 导 教 师 评 语 及 成 绩 平时: 论文质量: 总成绩: 论文质量60% 答辩: 指导教师签字: 年 月 日 注:成绩:平时20% 答辩20% 以百分制计算 I 本科生课程设计(论文) 摘 要 反应釜是对釜料加热, 以使其能够发生相应的化学反应。对温度的要求比较 高,反应釜温度不准确导致产品质量不合格。因此,检测反应釜的温度显得尤为 重要。 设计这款反应釜温度检测仪,硬件部分采用热电偶温度传感器进行测温,数 码管完成温度值的显示,按键完成上下限设置。温度超限时具有报警功能。软件 部分采用数码管和按键以及 A/D 转换器,以及单片机子程序设计。对各个元件 进行编程设计,硬件和软件部分结合完成本次设计。 这款反应釜温度检测仪的优点是性价比高,系统稳定可靠。误差较小。能够 在现场进行稳定检测温度。 关键词:单片机;温度检测;热电偶;数码管 II 本科生课程设计(论文) 目 录 第 1 章 绪论 ....................................................... 1 第 2 章 课程设计的方案论证 ...................................... 2 2.1 概论 ........................................................ 2 2.2 方案论证 .................................................... 2 2.3 器件选型 .................................................... 3 第 3 章 硬件设计 ................................................. 4 3.1 单片机最小系统设计 .......................................... 4 3.2 温度检测电路设计 ............................................ 5 3.3 A/D 转换电路设计............................................. 5 3.4 显示电路设计................................................. 6 3.5 报警电路 .................................................... 7 3.6 按键电路设计 ................................................ 7 3.7 电源电路设计................................................. 7 第 4 章 软件设计 .................................................. 9 4.1 系统主程序设计 .............................................. 9 4.2 显示子程序设计 .............................................. 9 4.3 按键子程序设计 ............................................. 10 4.4 A/D 转换子程序设计.......................................... 11 4.5 报警子程序设计 ............................................. 12 第 5 章 系统仿真与分析 .......................................... 13 第 6 章 课程设计总结 ............................................ 15 参考文献 ......................................................... 16 附录Ⅰ............................................................ 17 附录Ⅱ............................................................ 18 III 本科生课程设计(论文) 第 1 章 绪论 温度是生产工艺过程中最基本、 最重要的控制参数之一, 关系到生产条件的建立, 产品的产量、质量、效率,以及生产设备的寿命与安全等。无论是在生产实验场所, 还是在居住休闲场所,温度的采集或控制都十分频繁和重要,而且,网络化远程采集 温度并报警是现代科技发展的一个必然趋势。 温度检测的仪器为温度检测仪,主要应用在工业领域,工业上生产工业产品,会 用到各种各样的设备和仪表, 其中温度是必不可少的一个物理量。 对于很多工业产品, 温度会影响到它的品质。温度不够会导致产品和原料报废,浪费原料产品。温度过高 会导致工业产品因过热而受损,还有可能损坏设备和仪表。温度过高可能发生更严重 的后果,导致锅炉发生爆炸,对人身安全造成威胁,不利于安全生产。 对于化学反应,反应温度尤其重要。化学反应一般在加热下进行,温度高能提高 反应速率, 温度低反应不能进行。 对于反应温度, 化学反应表现的结果可能都不相同, 同样的原料不同的温度反应出的析出物可能都不同。 所以化学反应的温度检测显得很 有必要。 化学反应一般在反应釜中进行,反应釜广泛应用于石油、化工、橡胶、农药、染 料、医药、食品,用来完成硫化、硝化、氢化、烃化、聚合、缩合等工艺过程的压力 容器。所以需要对反应釜的温度进行检测。使现场人员能够准确了解实时的釜温。 1 本科生课程设计(论文) 第 2 章 课程设计的方案论证 2.1 概论 本次设计设计一款反应釜温度检测仪,能够显示反应釜的实时温度和报警,而且 能够调节报警值的上下限。 2.2 方案论证 方案 1: 采用 PLC 控制。PLC 包括 CPU,I/O 模块,电源,以及各种通讯模块。利用传 感器采集信号,显示模块显示温度值,报警模块进行报警信号,按键模块设置报警值 上下限。达到设计目的。 方案 2: 采用单片机控制。单片机包括 CPU,存储器,I/O 单元,定时计数单元。利用传 感器输入模拟信号,之后对模拟信号进行 A/D 转换。送入单片机,经单片机控制后 转化量后由数码管输出温度值。由按键进行报警值的上下限设置。 根据本设计要求需要设计一个反应釜温度检测装置,系统相对简单,逻辑相对较 少,考虑到 PLC 价格较高,单片机系统可达到与 PLC 相同的功能,而且价格低廉, 采用单片机是最佳的方案。 本系统以单片机为核心,利用温度检测电路采集和转换信号,输出到单片机,然 后经由单片机处理后,在 I/O 口输出。系统总体框图如图 2.1 所示。 温度检测电路 报警电路 振荡电路 CPU 显示电路 复位电路 按键电路 图 2.1 系统总体框图 2 本科生课程设计(论文) 2.3 器件选型 单片机选用 AT89S51 单片机,AT89S51 是一个低功耗,高性能 CMOS8 位单片 机,性能好,稳定性较好。足够满足本次设计要求。 传感器选用 K 型热电偶传感器,K 型热电偶传感器的测温范围为 0-1300℃,线 性度较好,本次要求测温范围为 0-1000℃,故符合设计要求。 A/D 转换选用 ADC0804, 它是 8 位单通道逐次比较型 A/D 转换器。 转换时间约 为 100us,不需要调零,具有参考电压输入端,用在本设计正为合适。 显示采用 4 位共阳极数码管,其具有段选和位选功能。能够显示 0-1000 内所有 的整数值。 3 本科生课程设计(论文) 第 3 章 硬件设计 3.1 单片机最小系统设计 AT89S51 是一个低功耗,高性能 CMOS8 位单片机,兼容标准 MCS-51 指令系统 及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 Flash 存储单元。 本次设计采用外部时钟方式,设定系统的晶振频率为 12MHZ,外部时钟源直接 接到单片机的 XTAL1 端,其 XTAL2 端悬空。电路中的电容 C1 和 C2 均选择 30pF。 可以保证稳定时钟电路的运行。 单片机的复位是由外部的复位电路所实现的。为了保证系统能可靠复位, RST 引脚上的高电平必须大于复位所要求的高电平时间。两个电阻 R1 和 R2 一个采用 220Ω,一个采用 10KΩ。电容选用 10uF。能够良好保证系统的正常复位和运行。其 最小系统电路图如图 3.1 所示。 图 3.1 最小系统电路图 4 本科生课程设计(论文) 3.2 温度检测电路设计 由于测温范围为 0-1000℃,所以采用 K 型热电偶传感器,能够满足任务的要求, 且价格低廉,性价比高。 热电偶由两种不同成份的均质金属导体组成,形成两个热电极端。当两端存在温 度梯度时,回路中就会有电流通过,产生电动势。热电偶产生的毫伏信号经放大电路 后由 VT 端输出。其电路图如图 3.2 所示。 图 3.2 温度检测电路图 由电路图可以得知,第一级反相放大公式: UL1 UO1 ? ? R 5 ? R4 可以得知,第一级的增益为 10。 第 2 级反相放大电路公式: UVT ? ??RW 1 ? R 9 ?? UO1 R8 (3-1) (3-2) 可以得知,第二级的增益为 50, 总增益为 500。 0-10mV 热电偶信号放大后转化 0-5V 的电压值。 3.3 A/D 转换电路设计 本设计选用 ADC0804A/D 转换器来完成设计,ADC0804 是一种逐次比较型单路 模拟输入、8 位数字量输出的 A/D 转换器。一共有 20 引脚,8 个输出口分别接单片机 的 P1 口。6 引脚接基准电压电源,18 引脚电源。CS 和 WR 用来控制 A/D 转换的启 动信号。CS 、RD 用来读 A/D 转换的结果,当它们同时为低电平时,输出数据锁存。 CLKI 和 CLKR 为时钟信号输入端。9 引脚为模拟信号输入端。其电路图如图 3.3 所 5 本科生课程设计(论文) 示。 图 3.3A/D 转换电路图 3.4 显示电路设计 对于共阳极数码管来说,公共阳极接电源,发光二极管接低电平,相应的段码被 显示。七段码逆时针分别编码为 a、b、c、d、e、ag澳门娱乐福利视频。f、g。0 代表点亮数码管,1 代表熄 灭。S1、S2、S3、S4 为位选。决定某一位显示。段选信号接到单片机的 P2 口,位选 信号接到单片机的 P0 口。P0 口作 I/O 口时需加上拉电阻。工作时通过控制位选和段 选来决定某一位显示的数值。通过编程实现以上内容。能够实现温度值的显示功能。 其电路图如图 3.4 所示。 图 3.4 显示电路图 6 本科生课程设计(论文) 3.5 报警电路 本设计需要对温度超限时具有报警功能,故设计了一款报警电路,采用蜂鸣器作 为报警装置。用三极管放大信号后,送到蜂鸣器。使蜂鸣器执行相对应的命令。其电 路图如图 3.5 所示。 图 3.5 报警电路图 3.6 按键电路设计 由于本设计中需要对报警值的上下限进行调节。故需要设置按键按键来进行调 节,采用 4 个按键分别调节上限升高、上限降低、下限升高和下限降低。能够准确调 节上下限。以便不同条件下的应用。按键电路接 P0 口,故需加上拉电阻。其电路图 如图 3.6 所示。 图 3.6 按键电路图 3.7 电源电路设计 一个良好的电路系统,需要一个良好的电源系统,本次设计采用各种电子元件设 计了一款简单实用的电源电路,能够很好的满足设计的要求。采用交流电压输入,输 7 本科生课程设计(论文) 出能够单片机使用的+5V 电源。满足设计要求。电路如图 3.7 所示。 图 3.7 电源电路图 8 本科生课程设计(论文) 第 4 章 软件设计 4.1 系统主程序设计 系统主程序的功能是为了能够实现把传感器的输入信号转化为数字信号, 然后经 由单片机控制后让数码管显示温度值 0-1000℃。可以用键盘选择温度报警值的上下 限。当温度低于某个值或者高于某个值的时候,均能够产生报警信号。且可以使用按 键来决定报警值的上下限的报警范围。实时进行调节。当温度值超过极限时也能够及 时的进行报警。并且其误差不超过± 5℃。主程序的流程图如图 4.1 所示。 开始 程序初始化 模拟输入 按键调节上 下限 启动A/D转换 报警 显示温度值 Y 是否超限? N 图 4.1 系统主程序流程图 4.2 显示子程序设计 数码管采用段选和位选决定显示值的编码。共阳极数码管的阳极均接一起,当二 进制数为 1 时有效,段码点亮。首先输入数组 0-9,例如 0 的段码为 C0H,以此类推。 然后根据温度值的大小选择位码, 位码从 1-4。 把 A/D 转换过来的值显示在数码管上。 数码管可以显示 0-1000℃,根据转换数值,决定段码的显示结果。可以稳定显示结果 值。第一位首先显示,之后延时一段时间,第二位显示。以此类推,直到显示所有的 9 本科生课程设计(论文) 数值。其流程图如图 4.2 所示。 开始 程序初始化 第一位显示 延时 左移显示 显示结果 返回 图 4.2 显示子程序流程图 4.3 按键子程序设计 按键具有向单片机输入数据、命令等功能,是人与单片机对话的主要手段。根据 本设计要求,要求按键来控制报警值的上下限,以准确调节报警值。其主要编程包括 以下 3 点,①判断是否有按键按下,有,则进入下一步,②判断哪个键被按下,确定 键值,③根据键值,找到对应键的处理程序的入口。之后对按键进行去抖,以确定键 被按下。随后对按键进行编程确定何时按下报警值的上限调节值和下限调节值。便可 以准确进行调节过程。当判断上限需要调节时,便调节其上限按键的增减,当调节下 下限时,便调节下限按键的增减,其流程图如图 4.3 所示。 开始 程序初始化 A 10 本科生课程设计(论文) A N 是否有键按 下? Y K1 上限值增加 哪一个键按下? K3 K4 K2 上限值减少 下限值增加 下限值减少 返回 图 4.3 按键子程序流程图 4.4A/D 转换子程序设计 A/D 转换 VIN+接+5V,VIN-接地。一路 0-5V 被测电压加到 ADC0804 的 VREF 引脚 上,其他管脚分别接到单片机的对应管脚 A/D 转换的作用在于将模拟信号变为数字 信号以便单片机进行处理,首先需要采集模拟信号,然后根据模拟信号的输入值,启 动 A/D 转换,检测转换值与电压值之间的关系。判断 A/D 转换是否完成,若完成则 返回,若未完成则继续进行 A/D 转换。这样循环往复,便可以稳定正常的输出转换 信号,使 A/D 转换得以进行。根据换算关系,把对应的电压信号转化为二进制数,当 温度超限时即产生报警信号。测得的电压值交替显示在 LED 数码管上。其流程图如 图 4.4 所示。 开始 程序初始化 采集信号 启动A/D B 11 本科生课程设计(论文) B 转换是否完成? Y 读取保存转换值 返回 N 图 4.4A/D 转换子程序流程图 4.5 报警子程序设计 报警电路的作用在于对蜂鸣器进行报警的编程设计。当温度值超过设定值时,蜂鸣器 便发出声音,提示需要及时关注。报警子程序蜂鸣器接 P3 口,温度值实时的二进制 数编码会送到,蜂鸣器的处理程序,判断此二进制编码是否超过设定的报警值。若超 过,则报警,未超过,则不报警。之后对程序进行返回。再次判断。其流程图如图 4.5 所示。 开始 程序初始化 设定报警初值 采集温度值 是否超过报警 值? Y 报警 N 返回 图 4.5 报警子程序流程图 12 本科生课程设计(论文) 第5章 系统仿真与分析 电路仿真就是根据系统分析的目的, 在分析电路各要素性质及其相互关系的基础 上, 建立能描述系统结构或行为过程的、 且具有一定逻辑关系或数量关系的仿真模型, 据此进行试验或定量分析,以获得正确电路所需的各种信息。 本次设计考虑到时效性,采用软件仿真的形式以验证仿真结果。仿真的目的是为 了能够对电路进行可用性分析,分析其中的各种元件是否选择恰当,分析各部分的配 合程度,对电路进行在线调试。能够对实物过程有很大程度上的帮助。本次设计采用 整体仿真的形式,对电路的整体部分进行仿真与分析,其仿线 仿真电路图 仿真的目的是为了对设计电路的验证。由仿线V。当设置输入模拟电压为 2.5V 时,对应的二进制数为 0x7f,温度值显示为 500℃。在程序中,设置其上限报警值为 800℃,下限报警值为 200 摄氏度,温度调 到高于 800℃,报警器发出报警信号。温度调到低于 200℃,报警器同样发出报警信 13 本科生课程设计(论文) 号。连续按下报警上限增加按键,报警器停止报警。连续按下报警下限降低按钮,报 警器亦停止报警。符合设计要求。 14 本科生课程设计(论文) 第 6 章 课程设计总结 本次设计设计了一款反应釜温度检测仪,用以检测反应的实时温度。并具有调节 报警值的功能。硬件方面采用 AT89S51 单片机作为控制芯片。利用单片机的最小系 统设计,完成了最基本的控制。采用热电偶传感器作为采集信号的装置。并对传感器 进行了接口电路设计。热电偶传感器,对温度感知比较敏感,能够较好的采集反应釜 的温度信号,并以电压的形式表现。又利用 ADC0804 芯片,实现模拟信号到数字信 号之间的转换,能输出相对应的二进制数,把二进制数送到单片机内部。之后又利用 4 位数码管电路, 以用来显示相应的温度值。 按键电路用来调节温度报警值的上下限, 对此温度检测仪,可以对其报警的温度值进行调节,以便不同的原料有着不同的报警 值, 也防止对反应釜造成损害。 软件部分采用对各部分子程序进行编程的方式来实现, 能够对各个模块进行编程控制。并输出结果。得到要想的结论。温度能够实时显示, 并且具有报警功能。按键能够实现对报警值的调节。 经过对设计的仿真与分析,系统设计方案可行。对任务书的各项要求进行验证, 基本能够满足任务要求。系统设计简单,成本较低,能够良好运行。 15 本科生课程设计(论文) 参考文献 [1] 张萌.单片机应用系统开发综合实例.北京:清华大学出版社,2014:55-56 [2] 刘洪恩.利用热电偶转换器的单片机温度测控系统.仪表技术.2015(2):29-30 [3] 高明青.基于单片机的温度测试系统.科技风.2014(20):55-58 [4] 韦梦艳.基于 ADC0804 的数字电压测量电路.工程技术.2016(8):30-32 [5] 吴文兵,李炳贤.51 单片机数码管动态显示分析.数字技术与运用.2016(8):5-6 [6] 张杰,黄鹤松.51 单片机应用开发范例大全.北京:人民邮电出版社.2016:15-16 [7] 冀 创 新 . 化 工 生 产 中 反 应 釜 温 度 控 制 系 统 的 设 计 研 究 . 化 工 设 计 通 讯.2016(11):30-35 [8] 杨迪. 基于单片机的温度测量仪的设计.黑龙江科技信息.2016(5):3-5 [9] 李秋霞.基于 51 单片机温度控制系统的设计研究.数字通信世界.2016(2):13-15 [10] 江世明.基于单片机的温度测量仪的设计与论述.电子世界.2015(21):60-61 [11] 李伟杰.单片机控制温度检测器检测.电子技术与软件程.2017(8)255-257 [12] 杨淑英.单片机应用的广阔前景.价值工程.2010(2):248-249 [13] 敖明,基于单片机的时钟电路设计.电子测试.2017(4):18-21 [14] 关丽荣.单片机原理、接口及应用.北京:国防工业出版社.2015:15-16 [15] 陈辉.基于单片机测温系统的设计.科技广场.2015(1):106-109 16 本科生课程设计(论文) 附录Ⅰ 总体电路图 17 本科生课程设计(论文) 附录Ⅱ #includereg51.h #define uchar unsigned char #define uint unsigned int sbit a=P1^0; sbit b=P1^1; sbit c=P1^2; sbit d=P1^3; sbit e=P1^4; sbit q=P1^5; sbit w=P1^6; sbit r=P3^5; sbit t=P3^6; sbit j=P3^7; sbit f=P3^0; sbit g=P3^1; sbit h=P3^2; uchar code y[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; int ton=0; uint shijian; uint temp; void delay (uint i) { uchar t; while(i--) { for(t=0;t120;t++);}} void main() { uchar zidong=0; uchar shoudong=0; w=1; 18 本科生课程设计(论文) r=1; while(1) { if(!r) { delay(5); while(!r); shoudong=1; zidong=0;} if(!w) { delay(5); while(!w); zidong=1; shoudong=0;} while(shoudong==1) { EA=0; if(!w) { delay(5); while(!w); shoudong=0; zidong=1;} if(!t) { delay(5); while(!t); ton++; if(ton16) {ton=0;}} if(!j) { delay(5); while(!j); ton--; if(ton0) {ton=16;}} if(ton==0) {a=0; b=0; 19 本科生课程设计(论文) c=0;} if(ton==1) {a=1; b=0; c=0;} if(ton==2) {a=0; b=1;c=0;} if(ton==3) {a=1; b=1;c=0;} if(ton==4) {a=0; b=0;c=1;} if(ton==5) {a=1; b=0;c=1;} if(ton==6) {a=0; b=1;c=1;} if(ton==7) {a=1; b=1;c=1;} f=0; g=0; h=0; P0=y[ton/10]; delay(5); f=1; g=0; h=0; temp=P2; while(zidong==1) { if(!r) { delay(5); 20 本科生课程设计(论文) while(!r); shoudong=1; zidong=0;} f=0; g=0; h=0; P0=y[ton/10]; delay(5); f=1; g=0; h=0; P0=y[ton%10]; delay(5); f=1; g=1; h=0; P0=y[temp/100]+0x80; delay(5); f=0; g=0; h=1; P0=y[temp/10%10]; delay(5); f=1; g=0; h=1; P0=y[temp%10]; delay(5); } } }} void timer()interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; 21 本科生课程设计(论文) shijian++; if(shijian=20) {ton++; shijian=0; if(ton16) {ton=0;} if(ton==0) {a=0; b=0;c=0;} if(ton==1) {a=1; b=0; c=0;} if(ton==2) {a=0; b=1;c=0;} if(ton==3) {a=1; b=1;c=0;} if(ton==4) {a=0; b=0;c=1;} if(ton==5) {a=1; b=0;c=1;} if(ton==6) {a=0; b=1;c=1;} if(ton==7) {a=1; b=1;c=1;} d=0; d=1; d=0; } 22