




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 基于 PT100 当温度测量系统设计 一 摘一 摘 要要 本文首先简要介绍了铂电阻 PT100 的特性以及测温的方法 在此基础上阐述 了基于 PT100 的温度测量系统设计 在本设计中 是以铂电阻 PT100 作为温度 传感器 采用恒流测温的方法 通过单片机进行控制 用放大器 A D 转换器 进行温度信号的采集 另外 还设计了时钟电路模块 能实现对温度的实时测 量 本设计采用了两线制铂电阻温度测量电路 通过对电路的设计 减小了测 量电路及 PT100 自身的误差 使温控精度在 0 100 范围内达到 0 1 本文采用 AT89S51 单片机 TLC2543 A D 转换器 DS1302 时钟芯片 AD620 放大器 铂电阻 PT100 及 6 位数码管组成系统 编写了相应的软件程序 使其实 现温度的实时显示 该系统的特点是 使用简便 测量精确 稳定 可靠 测 量范围大 使用对象广 关键词 关键词 PT100 单片机 温度测量 DS1302 二 方案设计与论证 1 传感器的选择 温度传感器从使用的角度大致可分为接触式和非接触式两大类 前者是让 温度传感器直接与待测物体接触 而后者是使温度传感器与待测物体离开一定 的距离 检测从待测物体放射出的红外线 达到测温的目的 在接触式和非接 触式两大类温度传感器中 相比运用多的是接触式传感器 非接触式传感器一 般在比较特殊的场合才使用 目前得到广泛使用的接触式温度传感器主要有热 电式传感器 其中将温度变化转换为电阻变化的称为热电阻传感器 将温度变 化转换为热电势变化的称为热电偶传感器 热电阻传感器可分为金属热电阻式和半导体热电阻式两大类 前者简称热 电阻 后者简称热敏电阻 常用的热电阻材料有铂 铜 镍 铁等 它具有高 2 温度系数 高电阻率 化学 物理性能稳定 良好的线性输出特性等 常用的 热电阻如 PT100 PT1000 等 近年来各半导体厂商陆续开发了数字式的温度传 感器 如 DALLAS 公司 DS18B20 MAXIM 公司的 MAX6576 MAX6577 ADI 公司的 AD7416 等 这些芯片的显著优点是与单 片机的接口简单 如 DS18B20 该温度传感器为单总线技术 MAXIM 公司的 2 种温度传感器一个为频率输出 一个为周期输出 其本质均为数字输出 而 ADI 公司的 AD7416 的数字接口则为近年也比较流行的 I2C 总线 这些本身都 带数字接口的温度传感器芯片给用户带来了极大的方便 但这类器件的最大缺 点是测温的范围太窄 一般只有 55 125 而且温度的测量精度都不高 好 的才 0 5 一般有 2 左右 因此在高精度的场合不太满足用户的需要 热电偶是目前接触式测温中应用也十分广泛的热电式传感器 它具有结构 简单 制造方便 测温范围宽 热惯性小 准确度高 输出信号便于远传等优 点 常用的热电偶材料有铂铑 铂 铱铑 铱 镍铁 镍铜 铜 康铜等 各种不同 材料的热电偶使用在不同的测温范围场合 热电偶的使用误差主要来自于分度 误差 延伸导线误差 动态误差以及使用的仪表误差等 非接触式温度传感器主要是被测物体通过热辐射能量来反映物体温度的高 低 这种测温方法可避免与高温被测体接触 测温不破坏温度场 测温范围宽 精度高 反应速度快 既可测近距离小目标的温度 又可测远距离大面积目标 的温度 目前运用受限的主要原因一是价格相对较贵 二是非接触式温度传感 器的输出同样存在非线性的问题 而且其输出受与被测量物体的距离 环境温 度等多种其它因素的影响 由于本设计的任务是要求测量的范围为 0 100 测量的分辨率为 0 1 综合价格以及后续的电路 决定采用线性度相对较好的 PT100 作为本 课题的温度传感器 具体的型号为 WZP 型铂电阻 该传感器的测温范围从 200 650 具体在 0 100 的分度特性表见附录 A 所示 2 方案论证 温度测量的方案有很多种 可以采用传统的分立式传感器 模拟集成传感 器以及新兴的智能型传感器 方案一 采用模拟分立元件 3 如电容 电感或晶体管等非线形元件 该方案设计电路简单易懂 操作简 单 且价格便宜 但采用分立元件分散性大 不便于集成数字化 而且测量误 差大 方案二 采用温度传感器 通过温度传感器采集温度信号 经信号放大器放大后 送到 A D 转换芯片 将模拟量转化为数字量 传送给单片机控制系统 最后经过 LED 显示温度 热电阻也是最常用的一种温度传感器 它的主要特点是测量精度高 性能 稳定 使用方便 测量范围为 200 650 完全满足要求 考虑到铂电阻的 测量精确度是最高的 所以我们设计最终选择铂电阻 PT100 作为传感器 该方 案采用热电阻 PT100 做为温度传感器 AD620 作为信号放大器 TLC2543 作为 A D 转换部件 对于温度信号的采集具有大范围 高精度的特点 相对与方案 一 在功能 性能 可操作性等方面都有较大的提升 在这里我选用方案二完 成本次设计 3 系统的工作原理 测温的模拟电路是把当前 PT100 热电阻传感器的电阻值 转换为容易测量 的电压值 经过放大器放大信号后送给 A D 转换器把模拟电压转为数字信号后 传给单片机 AT89S51 单片机再根据公式换算把测量得的温度传感器的电阻值 转换为温度值 并将数据送出到数码管进行显示 另外 外接一个时钟芯片 DS1302 产生时钟信号送入到单片机中进行处理控制 并将时间显示出来 以实 现温度的实时监控 4 系统框图 本设计系统主要包括温度信号采集单元 时间信号采集单元 单片机数据 处理单元 时间 温度显示单元 其中温度信号的数据采集单元部分包括温度 传感器 温度信号的获取电路 采样 放大电路 A D 转换电路 系统的总结构框图如图 1 1 所示 4 信号放大 调理电路 PT100 温 度传感器 A D 转换 电路 时钟电 路 按键控 制电路 AT89S51 单片机 LED 数码 管显示 电路 图 1 1 系统的总结构框图 三 硬件设计 1 PT100 传感器特性和测温原理 电阻式温度传感器 RTD Resistance Temperature Detector 是指一种物质材料 作成的电阻 它会随温度的改变而改变电阻值 PT100 温度传感器是一种以铂 Pt 做成的电阻式温度传感器 属于正电阻系 数 其电阻阻值与温度的关系可以近似用下式表示 在 0 650 范围内 Rt R0 1 At Bt2 在 200 0 范围内 Rt R0 1 At Bt2 C t 100 t3 式中 A B C 为常数 A 3 96847 10 3 B 5 847 10 7 C 4 22 10 12 由于它的电阻 温度关系的线性度非常好 因此在测量较小范围内其电阻 和温度变化的关系式如下 R Ro 1 T 其中 0 00392 Ro 为 100 在 0 的电阻值 T 为华氏温度 因此铂做成的 电阻式温度传感器 又称为 PT100 5 PT100 温度传感器的测量范围广 200 650 偏差小 响应时间短 还具有抗振动 稳定性好 准确度高 耐高压等优点 其得到了广泛的应用 本设计即采用 PT100 作为温度传感器 主要技术指标 1 测温范围 200 650 摄氏度 2 测温精度 0 1 摄氏 度 3 稳定性 0 1 摄氏度 Pt100 是电阻式温度传感器 测温的本质其实是测量传感器的电阻 通常 是将电阻的变化转换成电压或电流等模拟信号 然后再将模拟信号转换成数字 信号 再由处理器换算出相应温度 采用 Pt100 测量温度一般有两种方案 方案一 设计一个恒流源通过 Pt100 热电阻 通过检测 Pt100 上电压的变 化来换算出温度 方案二 采用惠斯顿电桥 电桥的四个电阻中三个是恒定的 另一个用 Pt100 热电阻 当 Pt100 电阻值变化时 测试端产生一个电势差 由此电势差 换算出温度 两种方案的区别只在于信号获取电路的不同 其原理上基本一致 2 信号调理电路 调理电路的作用是将来自于现场传感器的信号变换成前向通道中 A D 转换 器能识别的信号 作为本系统 由于温度传感器是热电阻 PT100 因此调理电 路完成的是怎样将与温度有关的电阻信号变换成能被 A D 转换器接受的电压信 号 3 恒流源电路 从上述关于 PT100 传感器测温原理可知 由 PT100 构成信号的获取电路常 用的方法有 2 种 一种是构成的十分常见的电桥电路 当然 在本系统中 考 虑成本的问题 一般采用单臂桥 还有一种是运用恒流源电路 将恒流源通过 温度传感器 温度传感器两端的电压即反映温度的变化 上述两种电路的结构 形式见图 2 1 所示 6 A 图单臂桥式 B 图恒流源式 图 2 1 两种信号获取的结构电路 根据测试技术的有关知识 图 2 1 中的 A 图的输出与电阻的阻值不是个正 比的关系 因而数据处理起来特别麻烦 尤其是用单片机来处理这些非线性的 问题 而图 B 的由于恒流源的作用 使得电压输出与电阻成良好的线性关系 因此 本系统采用恒流源电路来获取温度信号 恒流源电路的设计 有用三极管构成的 有用专门的恒流管 也有用价格 低廉的器件通过比较巧妙的设计构成的 本系统是采用价格低廉的运放为核心 来构成的 恒流效果十分理想 系统设计的恒流源电路见下图 2 2 所示 R161 5k 1 3 2 7 LM 336 2 5V 8 5 3 2 6 74 1 U1 OP 07 VR3 10k R17 500 R11 PT100 12V 12V VCC 2 3 图 2 2 由运放构成的恒流源电路 上图中 由于运放虚地的结果 造成 OP 07 的反相输入端为 0V 而图中 1 5K 电阻的下端由于运用精密的电压源 LM336 2 5 外加调整电路 该点电压 可调整为 2 500V 而由于运放的输入阻抗极高 输入端可以认为不吸入电流 因此从 1 5K 电阻上流过的电流大小固定而且一定等于 OP 07 输出端流入温度传 7 感器 PT100 的电流 从而达到恒流的效果 连接 PT100 两端的压差正好反映温 度变化的信号送入后级的放大器 这里值得注意的是恒流效果的好坏与下面几个因素有关 图示 1 5K 电阻的 精度及温度稳定性要好 我们采用的是高精度高稳定的电阻 还有是一定要选 择输入阻抗高的运放 包括产生虚地处的运放 图中 OP 07 和后级的放大器 图中的 AD620 否则较大的输入电流也将直接影响恒流的效果 最后一点 是参考电压 图中是 2 5V 的稳定性要高 这里的参考电压采用是 LM336 2 5V 作为参考电压基准 4 放大电路的设计 放大器的选择好坏对提高测量精度也十分关键 根据查阅的相关资料 在 放大器电路精选中 一般在首级放大器有低噪声 低输入偏置电流 高共模抑 制比等要求的大多采用自制的三运放结构 如下图 2 3 所示 三运放中由 A1 A2 构成前级对称的同相 反相输入放大器 后级为差动放大器 在这个 结构图中 要保证放大器高的性能 参数的对称性与一致性显得尤为重要 不 仅包括外围的电阻元件 R1 与 R2 R3 与 R4 R5 与 R6 还包括 A1 与 A2 放大 器的一致性 因此 要自制高性能的放大器对器件要求相当高 随着微电子技 术的发展 市场上出现了专用的高性能的仪用放大器 它的内部核心结构还是 三运放 但是 采用微电子来解决刚才的参数匹配问题已不是什么复杂的问题 A1 A2 A3 R2R1 R7R6 R3 R5 R4 V IN V OUT 图 2 3 三运放结构的高性能放大器原理图 8 随着近年来微电子技术的发展 市面上出现了不少专用的高性能的芯片 AD620 AD623 就是具有上述描述的三运放结构 在本设计中我们根据手中的 元器件材料最终选择了 AD620 作为放大器电路的首级放大 AD620 是低价格 低功耗仪用放大器 它只需要一只外部电阻就可设置 1 1000 倍的放大增益 它具有较低的输入偏置电流 较快的建立时间和较高 的精度 特别适合于精确的数据采集系统 如称重和传感器接口 也非常适合 医疗仪器的应用系统 如 ECG 检测和血压监视 多路转换器及干电池供电的 前置放大器使用 AD620 的内部结构是由 OP 07 组成的三运放结构 性能大大优于自制的三 运放 IC 电路设计 其基本接法是在 1 脚与 8 脚之间外接一 RG 电阻 增益由式 G 1 49 4K RG 确定 由于它的外围电路十分简单 所以它在本系统中的应用 见下图 2 4 所示 由于我们的温度测量范围是 0 100 而此时的温度传感器的电阻值根 据分度表为 100 欧姆 138 51 欧姆 由于我们设计的恒流源为 5 3 毫安 因此 AD620 的输入端为 166 7 毫伏 假设考虑我们的 TLC2543 的最大输入为 5 000V 我们设计的放大器的增益在尽量保证分辨率的条件下 则为 20 倍 假 设我们只用一个 AD620 则 AD620 的输出为 2V 5V TLC 只能转换 5V 这 样 12 位的 A D 转换器的分辨率则大于题目的要求 0 1 因此 我们必须将 100 欧姆以下的值通过偏置的方法将其减掉 然后通过增加放大倍数来尽量提 高分辨率 这里我们设计的偏置电路同样见下图 2 4 所示 这里设计的首级放 大器的倍数是 20 倍 而后级放大则为 4 倍 合计的放大倍数为 80 倍 这样就 完全满足设计分辨率的要求 9 R9 10k R7 40k 8 5 3 2 6 74 1 U3 AD620 8 5 3 2 6 74 1 U2 op 07 VR1 2k R8 2k VR2 4k VCC 12V 12V 12V 12V R10 10k A0 2 3 传传传传 传传传1传传传2传传传传传 传传传传传传传传 图 2 4 放大电路 5 A D 转换器的选择与设计电路 在我们所测控的信号中均是连续变化的物理量 通常需要用计算机对这些 信号进行处理 则需要将其转换成数字量 A D 转换器就是为了将连续变化的 模拟量转换成计算机能接受的数字量 根据 A D 转换器的工作原理 常用的 A D 转换器可分为两种 双积分式 A D 转换器和逐次逼近式 A D 转换器 1 双积分 A D 转换器工作原理 双积分 A D 转换器采用间接测量的方法 它将被测电压转换成时间常数 T 双积分 A D 转换器由电子开关 积分器 比较器 计数器和控制逻辑等部 分组成 所谓双积分就是进行一次 A D 转换需要两次积分 电路先对被测的输入电 压 Vx 进行固定时间 T0 的正向积分 然后控制逻辑将积分器的输入端通过电子 开关接参考电压 Vr 由于参考电压与输入电压反向且参考电压值是恒定的 所 以反向积分的斜率是固定的 从反向积分开始到结束 对参考电压进行反向积 分的时间 T 正比于输入电压 输入电压越大反向积分时间越长 用高频标准脉 冲计数测此时间 即可得到相应于输入电压的数字量 特点 可以有效的消除 干扰和电源噪声 转换精度高 但是转换速度慢 2 逐次逼近型 A D 转换器工作原理 10 逐次逼近型 A D 转换器由 D A 转换环节 比较环节和控制逻辑等几部分组 成 其转换原理为 A D 转换器将一待转换的模拟输入电压 Ui 与一个预先设定 的电压 Ui 预定的电压由逐次逼近型 A D 转换器中的 D A 输出获得 电压相 比较 根据预设的电压 Ui 是大于还是小于待转换成的模拟输入电压 Uin 来决定 当前转换的数字量是 0 还是 1 据此逐位比较 以便使转换结果 相应的数 字量 逐渐与模拟输入电压相对应的数字量接近 在本设计系统中 为了将模拟量温度转换成数字量 采用德州仪器公司生 产的 12 位开关电容型逐次逼近模数转换器 TLC2543 它具有三个控制输入端 采用简单的 3 线 SPI 串行接口可方便地与微机进行连接 是 12 位数据采集系统 的最佳选择器件之一 TLC2543 与外围电路的连线简单 三个控制输入端为 CS 片选 输入 输出 时钟 I O CLOCK 以及串行数据输入端 DATA INPUT 片内的 14 通道多路器 可以选择 11 个输入中的任何一个或 3 个内部自测试电压中的一个 采样 保持 是自动的 转换结束 EOC 输出变高 3 TLC2543 的主要特性 1 11 个模拟输入通道 2 66ksps 的采样速率 3 最大转换时间为 10 s 4 SPI 串行接口 5 线性度误差最大为 1LSB 6 低供电电流 1mA 典型值 7 掉电模式电流为 4 A TLC2543 的引脚排列如图 2 5 所示 A0 1 A1 2 A2 3 A3 4 A4 5 A5 6 A6 7 A7 8 A8 9 GND 10 A9 11 A10 12 R 13 R 14 CS 15 DO 16 DI 17 CLOK 18 EOC 19 VCC 20 TLC2543 11 图 2 5 TLC2543 的引脚 AIN0 AIN10 模拟输入端 由内部多路器选择 对 4 1MHz 的 I O CLOCK 驱动源阻抗必须小于或等于 50 CS 片选端 CS 由高到低变化将复位内部计数器 并控制和使能 DATA OUT DATA INPUT 和 I O CLOCK CS 由低到高的变化将在一个设置 时间内禁止 DATA INPUT 和 I O CLOCK DATA INPUT 串行数据输入端 串行数据以 MSB 为前导并在 I O CLOCK 的前 4 个上升沿移入 4 位地址 用来选择下一个要转换的模拟输入 信号或测试电压 之后 I O CLOCK 将余下的几位依次输入 DATA OUT A D 转换结果三态输出端 在 CS 为高时 该引脚处于高阻 状态 当 CS 为低时 该引脚由前一次转换结果的 MSB 值置成相应的逻辑电平 EOC 转换结束端 在最后的 I O CLOCK 下降沿之后 EOC 由高电平变 为低电平并保持到转换完成及数据准备传输 VCC GND 电源正端 地 REF REF 正 负基准电压端 通常 REF 接 VCC REF 接 GND 最大输入电压范围取决于两端电压差 I O CLOCK 时钟输入 输出端 TLC2543 每次转换和数据传送使用 16 个时钟周期 且在每次传送周期之 间插入 CS 的时序 根据 TLC2543 时序图可以看出 在 TLC2543 的 CS 变低时 开始转换和传送过程 I O CLOCK 的前 8 个上升沿将 8 个输入数据位键入输入 数据寄存器 同时它将前一次转换的数据的其余 11 位移出 DATA OUT 端 在 I O CLOCK 下降沿时数据变化 当 CS 为高时 I O CLOCK 和 DATA INPUT 被禁止 DATA OUT 为高阻态 TLC2543 与单片机的连接如图 2 6 所示 12 A0 1 A1 2 A2 3 A3 4 A4 5 A5 6 A6 7 A7 8 A8 9 GND 10 A9 11 A10 12 R 13 R 14 CS 15 DO 16 DI 17 CLOK 18 EOC 19 VCC 20 TLC2543 VCC 5V CLOK D1 D0 CS A0 图 2 6 TLC2543 电路 6 DS1302 时钟电路设计 DS1302 是美国 DALLAS 公司推出的一种高性能 低功耗 带RAM 的实时时钟电路 它可以对年 月 日 周日 时 分 秒进行计时 具有 闰年补偿功能 工作电压为 2 5V 5 5V 采用三线接口与 CPU 进行同步 通信 并可采用突发方式一次传送多个字节的时钟信号或RAM 数据 DS1302 内部有一个 31 8 的用于临时性存放数据的 RAM 寄存器 DS1302 是 DS1202 的升级产品 与 DS1202 兼容 但增加了主电源 后背电源双电 源引脚 同时提供了对后背电源进行涓细电流充电的能力 本设计中采用 DS1302 时钟芯片产生时钟信号 通过单片机进行处理控制 并显示出实时 的时间 可以用于对温度进行实时的数据采集 1 引脚功能及结构 DS1302 的引脚排列 其中 Vcc1 为后备电源 VCC2 为主电源 在主电 源关闭的情况下 也能保持时钟的连续运行 DS1302 由 Vcc1 或 Vcc2 两 者中的较大者供电 当 Vcc2 大于 Vcc1 0 2V 时 Vcc2 给 DS1302 供电 当 Vcc2 小于 Vcc1 时 DS1302 由 Vcc1 供电 X1 和 X2 是振荡源 外接 32 768kHz 晶振 RST 是复位 片选线 通过把 RST 输入驱动置高电平来启 动所有的数据传送 RST 输入有两种功能 首先 RST 接通控制逻辑 允 许地址 命令序列送入移位寄存器 其次 RST 提供终止单字节或多字节数 据的传送手段 当 RST 为高电平时 所有的数据传送被初始化 允许对 DS1302 进行操作 如果在传送过程中 RST 置为低电平 则会终止此次数据 传送 I O 引脚变为高阻态 上电运行时 在Vcc 2 5V 之前 RST 必须保 13 持低电平 只有在 SCLK 为低电平时 才能将 RST 置为高电平 I O 为串 行数据输入输出端 双向 后面有详细说明 SCLK 始终是输入端 DS1302 的引脚功能图 如图 2 7 所示 Vcc2 1 X1 2 X2 3 GND 4 RST 5 I O 6 SCLK 7 Vcc 8 DS1302 图 2 7 DS1302 引脚图 2 DS1302 的控制字节 DS1302 的控制字如图 2 8 所示 控制字节的最高有效位 位 7 必须是 逻辑 1 如果它为 0 则不能把数据写入 DS1302 中 位 6 如果为逻辑 0 则表示存取日历时钟数据 为 1 表示存取 RAM 数据 位 5 至位 1 指示操作 单元的地址输入或输出 最低有效位 位 0 如为 0 表示要进行写操作 为 1 表示进行读操作 控制字节总是从最低位开始输出 3 数据输入输出 I O 在控制指令字输入后的下一个 SCLK 时钟的上升沿时 数据被写入 DS1302 数据输入从低位即位 0 开始 同样 在紧跟 8 位的控制指令字后 的下一个 SCLK 脉冲的下降沿读出 DS1302 的数据 读出数据时从低位 0 位到高位 7 4 DS1302 的寄存器 DS1302 有 12 个寄存器 其中有 7 个寄存器与日历 时钟相关 存放 的数据位为 BCD 码形式 其日历 时间寄存器及其控制字见图2 8 所示 图 2 8DS1302 的控制字节 此外 DS1302 还有年份寄存器 控制寄存器 充电寄存器 时钟突发寄 1 RAM CK A4A3A2A1A0 RD WR 14 存器及与 RAM 相关的寄存器等 时钟突发寄存器可一次性顺序读写除充电 寄存器外的所有寄存器内容 DS1302 与 RAM 相关的寄存器分为两类 一 类是单个 RAM 单元 共 31 个 每个单元组态为一个 8 位的字节 其命令 控制字为 C0H FDH 其中奇数为读操作 偶数为写操作 另一类为突发方 式下的 RAM 寄存器 此方式下可一次性读写所有的RAM 的 31 个字节 命令控制字为 FEH 写 和 FFH 读 5 DS1302 与单片机的连接 DS1302 与 CPU 的连接需要三条线 即 SCLK 7 I O 6 RST 5 这 三条线分别接到 CPU 的 I O 线上 7 单片机控制电路 本设计是采用 AT89S51 单片机作为主控电路 其中 P1 口为 A D 转换器和 DS1302 时钟芯片的通信端口 P3 0 P3 1 P3 2 为按键控制 P0 口接数码管的段 码 P2 口接数码管的片选端 用于对数码管进行片选 如图 2 9 所示 EA VPP 31 XTAL1 19 XTAL2 18 RST VPD 9 P3 7 RD 17 P3 6 WR 16 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 5 T1 15 P1 0 T 1 P1 1 T 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P0 0 39 P0 1 38 P0 2 37 P0 3 36 P0 4 35 P0 5 34 P0 6 33 P0 7 32 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PROG 30 P3 1 TXD 11 P3 0 RXD 10 Vcc 40 Gnd 20 AT 89S 5X AT89S51 R20 VCC a b c d e f g dp 1 2 3 4 5 6 Y2 12M C3 102 C12 104 C13 10uF R15 0 1K S1 VCC 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 RP1 VCC P3 0 P3 1 P3 2 CLOCK D1 D0 CS SCLK I O RST 图 2 9 单片机控制电路 8 按键和显示电路 15 1 按键电路 本设计共设计 3 个按键 用来设置和修改时间 设置键 接单片机的 P3 2 脚用于申请中断 以执行键盘中断修改设置时间 加键 用于修改时间使时间 按增形式调整 减键 用于修改时间使时间按减形式调整 其电路图如下图 2 10 所示 KEY1 KEY2 KEY3 R12 10K R13 10K R14 10K VCC P3 0 P3 1 P3 2 图 2 10 按键电路 2 显示电路 本设计采用 6 个 LED 共阳极数码通过三极管驱动来进行时间温度数据的 显示 其中数码管的段码位分别接单片机的 P0 口 公共端通过三极管接到单片 机 P2 0 P2 5 端对数码管进行位选 其电路图如下图 2 11 所示 Q1Q2Q3Q4Q5Q6 R1R2R3R4R5R6 VCC 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED2 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED3 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED4 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED5 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED6 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 VCC a bf c g d e dp LED1 a a aa aa b bb bb b c c c c cc dd d d d d e e e e e e ffff f f g g gg g g dpdpdp dp dp dp 1 2 3 4 5 6 传传传传传传 传传传传传传 图 2 11 数码管显示电路 16 四 软件设计 1 系统软件设计说明 进行微机测量控制系统设计时 除了系统硬件设计外 大量的工作就是如 何根据每个测量对象的实际需要设计应用程序 因此 软件设计在微机测量控 制系统设计中占重要地位 对于本系统 软件设计更为重要 在单片机测量控制系统中 大体上可分为数据处理 过程控制两个基本类 型 数据处理包括 数据的采集 数字滤波 标度变换等 过程控制程序主要 是使单片机按一定的方法进行计算 然后再输出 以便达到测量控制目的 软件设计主要是对温度进行采集 显示 通过按键操作 进行时间的设置与 修改 因此 整个软件可分为温度采集子程序 时钟读取程序 按键子程序 显示子程序 及系统主程序 2 软件的有关算法 1 最小二乘理论获取温度 电阻公式 根据误差理论 我们要获得较高精度的温度测量值 办法一般有 2 个 要 么采用查表法 要么建立高精度的数学模型 如果用查表法 主要有 2 个问题 如果要提高测量精度 则需要建立大量的表格 而且得提前做大量得试验来进 行多点校正 还有一个问题是程序的通用性差 这台仪器上校正好得数据可能 在另一台上不合适 而采用已知的分度表 建立数学模型 然后通过工程量 标度 变换 通过测量 A D 转换的结果后计算得到 这里我们考虑第 2 种方 法的优点 首先采用分段的方法 将测量范围分段 然后查出该段的数学模型 的各个系数 然后计算出温度值 这里 由于时间的关系 我们对整个测量范 围分了 3 段 分别为 0 49 50 70 71 100 利用分度表进行离线的 数学拟合 得到各段的数学模型系数 同时 可通过再将标度值代入可粗略估 计在各个测量段内的最大误差值 我们通过最小二乘法进行线性拟合 得到如下的数学模型为 17 T1 2 5772R 257 7708 0 49 T2 2 6366R 267 01 50 70 T3 2 7206R 281 90 71 100 上述 3 个数学模型中 最大的理论误差值都小于 0 1 能够满足精度要 求 实际上如果有足够的时间 我们完全可以分得再细一些 这样理论的误差 将会变得更小 2 标度变换公式的获取 根据上述的线性拟合结果 T A R B 这里的 A B 是上述不同温度段的 系数 而 R 值由于在输出为 0V 时 实际上有个对应于 100 欧姆的偏置电路 因此根据 R R0 U I 而 I 2 500V 1 500K 而 AD U G 4096 4 900V 这里的 AD 值为 A D 转换得结果 G 为放大器的增益 本设计中的二级放大器放大的倍 数为 80 倍 将上述条件代入得 T A 4 9 AD 4096 G I 100 B 3 软件的流程图 开始 系统初始化 DS1302 时钟信号采集 PT100 温度数据采集 处理读到的数据 结束 图 3 1 系统总流程图 18 Key1 0 N Y Y N N Y 开始 初始化 按键扫描 调用加键调时 调用显示程序调用减键调时 调用显示程序 返回主程序 Key2 0 Key3 0 图 3 2 按键流程图 19 开始 初始化函数 DS1302 数据的写入 DS1302 数据的读取 返回 开始 初始化函数 A D 转换器进行 A D 转换 将转换后的电压转换为温度 返回 图 3 3 DS1302 时钟流程图 图 3 4 温度转换流程图 开始 系统初始化 调用时间 温度子程序 调用显示子程序 调用扫描按键程序 开始 将时间 温度数 据写入到数码管 读取时间 温度值 显示时间 温度值 返回 图 3 5 显示流程图 图 3 6 主函数流程图 4 部分设计模块 1 时钟数据采集模块 先向 DS1302 中写入数据 再根据 DS1302 时间信号的地址读取数据 程序如下 20 void write byte uchar dat 1302 写入一字节 uchar a ACC dat for a 8 a 0 a IO ACC0 SCLK 0 delayus 10 SCLK 1 ACC ACC 1 uchar read byte 向 1302 读出一字节 uchar a for a 8 a 0 a ACC7 IO SCLK 1 SCLK 0 ACC ACC 1 return ACC void write 1302 uchar add uchar dat 向 1302 写入数据 RST 0 SCLK 0 delayus 5 21 RST 1 write byte add write byte dat delayus 5 SCLK 1 RST 0 uchar read 1302 uchar add 向 1302 读出数据 uchar temp RST 0 SCLK 0 delayus 5 RST 1 write byte add temp read byte delayus 5 SCLK 1 RST 0 return temp uchar BCD Decimal uchar bcd uchar Decimal Decimal bcd 4 return Decimal Decimal 10 bcd 2 温度采集模块 22 通过恒流源电路采集到的信号经过放大电路进行放大后 送入到 A D 转换 器进行 A D 转换 再送到单片机进行处理 将电压转换温度 程序如下 void delay uchar n 延时程序 uchar i for i 0 i n i uint read2543 uchar port TLC2543 驱动程序 uint ad 0 i CLOCK 0 CS 0 port 4 for i 0 i 12 i if D OUT ad 0 x01 D IN bit port CLOCK 1 delay 6 CLOCK 0 delay 6 port 1 ad 1 return ad uint Read Temp 电压转换函数 23 uint j float m1 m2 m3 m4 m5 j read2543 0 m1 2 76243 m2 4 9 m3 2 5 m5 276 243 m4 m1 m2 1500 j 4096 80 m3 100 m5 m4 m4 10 m1 j 231 m2 m1 2576700 m3 m2 2570200 m4 m3 10000 return m4 五 结 论 本温度测量系统设计 是采用 PT100 温度传感器经过放大和 A D 转换器送 到单片机进行控制温度显示和时间显示 另外本系统还可以通过外接电路扩展 实现温度报警功能 从而更好的实现温度现场的实时控制 通过本次温度测量系统的设计 我对温度测量控制有了进一步的熟悉和更深 入的学习 六 参考文献 1 张琳娜 刘武发 传感检测技术及应用 M 中国计量出版社 1999 2 沈德金 陈粤初 MCS 51 系列单片机接口电路与应用程序实例 M 北京航空航天大 学出版 1990 3 郑建国 一种高精度的铂电阻温度测量方案 自动化仪表 M 1997 4 周航慈 单片机应用程序设计 M 北京航空航天大学出版社 1991 年 8 版 24 5 李志全等 智能仪表设计原理及应用 M 国防工业出版社 1998 年 6 版 6 杨振江等 智能仪器与数据采集系统中的新器件及应用 M 西安电子科技大学出版社 2001 年 12 版 7 刘坤 51 单片机 C 语言应用开发技术大全 M 人民邮电出版社 2008 年 9 版 附录附录 A A WZP 型铂热电阻 Pt100 分度特性表 R0 100 欧 温度 0123456789 电阻值 欧姆 0100 00100 40100 79101 19101 59101 98102 38102 78103 17103 67 10103 96104 36104 75105 15105 54105 91106 33106 73107 12107 52 20107 91108 31108 70109 10109 49109 88110 28110 67111 07111 46 30111 85112 25112 64113 03113 43113 82114 21114 60115 00115 39 40115 78116 17116 57116 96117 35117 74118 13118 52118 91119 31 50119 70120 09120 43120 87121 26121 65122 01122 43122 82123 21 60123 60123 99124 38124 77125 16125 55125 94126 33126 72137 10 70127 49127 88128 27128 66129 05129 44129 82130 21130 60130 99 80131 37131 76132 15132 54132 92133 31133 70134 08134 47134 86 90135 24135 63136 02136 40136 79137 17137 56137 94138 33138 72 100139 10139 49139 87140 26140 64141 02141 41141 79142 18142 66 25 附录附录 B B 总电路图 Vcc2 1 X1 2 X2 3 G
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程行业薪资调整方案(3篇)
- 2025年房屋租赁居间合同范本
- 2024年大学生实验室安全知识竞赛试题库及答案
- 2025心肺复苏理论考试试题(+答案解析)
- 2025合作协议的范本范文
- 小儿肺炎康复饮食管理
- 消毒管理办法、消毒技术规范培训试题试卷及答案
- 承包人施工合同评审与交底4篇
- 2025年国内贸易合作合同示范文本
- 委托开发合同样式常用版2篇
- GB/T 29466-2023板式热交换器机组
- 多模态大模型技术演进及研究框架
- 中国教育史全套
- GB/T 818-2000十字槽盘头螺钉
- GB/T 31298-2014TC4钛合金厚板
- 口腔科中医临床诊疗技术
- itop-4412开发板之精英版使用手册
- 老年肌肉衰减综合征肌少症培训课件
- 中学生物学教学技能与实践课件
- 井喷失控事故案例教育-井筒工程处课件
- 《农产品质量安全》系列讲座(第一讲-农产品质量及安全)课件
评论
0/150
提交评论