数字压力计的仿真设计.doc_第1页
数字压力计的仿真设计.doc_第2页
数字压力计的仿真设计.doc_第3页
数字压力计的仿真设计.doc_第4页
数字压力计的仿真设计.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录目录 1 概述 1 1 压力传感器简介 2 1 2 总体设计方案 2 2 硬件电路的设计 2 1 传感器的选型 3 2 2 传感器接口电路设计 3 2 3 最小系统设计 4 2 4 模数转换电路设计 5 2 5 显示电路设计 6 2 6 电源电路设计 7 3 软件部分的设计 3 1 程序设计及分析 7 4 仿真及结果 4 1 仿真图 12 5 设计小结 14 6 参考文献 15 1 概述 1 1 压力传感器简介 压力传感器是工业实践中最为常用的一种传感器 其广泛应用于各种工业自 控环境 涉及水利水电 铁路交通 智能建筑 生产自控 航空航天 军工 石 化 油井 电力 船舶 机床 管道等众多行业 而我们通常使用的压力传感器 主要是利用压电效应制造而成的 这样的传感器也称为压电传感器 压电传感器中主要使用的压电材料包括有石英 酒石酸钾钠和磷酸二氢胺 其中石英 二氧化硅 是一种天然晶体 压电效应就是在这种晶体中发现的 在一定 的温度范围之内 压电性质一直存在 但温度超过这个范围之后 压电性质完全 消失 这个高温就是所谓的 居里点 由于随着应力的变化电场变化微小 也就说压 电系数比较低 所以石英逐渐被其他的压电晶体所替代 而酒石酸钾钠具有很大 的压电灵敏度和压电系数 但是它只能在室温和湿度比较低的环境下才能够应用 磷酸二氢胺属于人造晶体 能够承受高温和相当高的湿度 所以已经得到了广泛 的应用 压电效应是压电传感器的主要工作原理 压电传感器不能用于静态测量 因为经过外力 作用后的电荷 只有在回路具有无限大的输入阻抗时才得到保存 现在压电效应也应用在 多晶体上 比如现在的压电陶瓷 包括钛酸钡压电陶瓷 PZT 铌酸盐系压电陶瓷 铌镁酸铅压电陶瓷等等 1 2 总体设计方案 压力传感器主要是用来测量压力并将相应的压力值转换为可直接读取的值 因此 需要一个能智能显示的压力计 本设计方案本着低碳 绿色的理念设计 将成本缩减到最小 压力传感器主要由压力传感器 AD 转换器 单片机 AT89C51 LED 显示器构成 分别对应着信息采集 数据转换 信息处理和数据显 示四个模块 其间关系与操作流程如下两图所示 2 硬件电路的设计 2 1 传感器的选型 MPX4115系列压电电阻传感器是一个硅压力传感器 这个传感器结合了高级 的微电机技术 薄膜镀金属 还能为高水准模拟输出信号提供一个均衡压力 在 0 85 的温度下误差不超过1 5 温度补偿是 40 125 MPX4115压力传感器检测的范围是15KPA 115KPA 输出电压信号0 2V 4 8V ADC0808的参考电压 VREF 5V VREF 0V 则 0V 5V 对应 0 255 0 2V 4 8V 对应 其线性对应关系如下图所示 系统最小分辨率 2 2 传感器接口电路的设计 采用 C1 47PF 的电容作滤波电路 以及内部原理图如 下图所示 内部原理图 滤波电路 2 3 单片机最小系统设计 选用的单片机为 AT89C51 系列芯片 该芯片的最小系统由时钟电路 复位电 路 片选信号构成 在最小系统构成的 基础上 将 P1 口作为模拟量的转换为数 字量的接收端 P0 口作 LED 显示屏的数 据发送端 P2 口作 LED 显示屏的控制端 口 同时作为过压及欠压的报警电路使 用 具体最小系统设计如右图所示 2 4 模数转换电路设计 ADC0832 是美国国家半导体公司生产的一种8 位分辨率 双通道 A D 转换芯 片 由于它体积小 兼容性 性价比高而深受单片机爱好者及企业欢迎 其目前 已经有很高的普及率 学习并使用 ADC0832 可是使我们了解 A D 转换器的原理 有助于我们单片机技术水平的提高 8位分辨率双通道 A D 转换输入输出电平与 TTL CMOS 相兼容5V 电源供电时输入电压在0 5V 之间工作频率为250KHZ 转换时间 为32 S ADC0832 为8位分辨率 A D 转换芯片 其最高分辨可达256级 可以适应一般的模 拟量转换要求 其内部电源输入与参考电压的复用 使得芯片的模拟电压输入在 0 5V 之间 芯片转换时间仅为32 S 据有双数据输出可作为数据校验 以减少数 据误差 转换速度快且稳定性能强 独立的芯片使能输入 使多器件挂接和处理 器控制变的更加方便 通过 DI 数据输入端 可以轻易的实现通道功能的选择 正 常情况下 ADC0832 与单片机的接口应为4条数据线 分别是 CS CLK DO DI 但 由于 DO 端与 DI 端在通信时并未同时有效并与单片机的接口是双向的 所以电路 设计时可以将 DO 和 DI 并联在一根数据线上使用 当 ADC0832未工作时其 CS 输入 端应为高电平 此时芯片禁用 CLK 和 DO DI 的电平可任意 当要进行 A D 转换 时 须先将 CS 使能端置于低电平并且保持低电平直到转换完全结束 此时芯片开 始转换工作 同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲 DO DI 端则使 用 DI 端输入通道功能选择的数据信号 在第1 个时钟脉冲的下沉之前 DI 端必须 是高电平 表示启始信号 在第2 3个脉冲下沉之前 DI 端应输入2 位数据用于选 择通道功能 其功能项见官方资料 如资料 所示 当此2 位数据为 1 0 时 只对 CH0 进行单通道转换 当2 位数据为 1 1 时 只对 CH1进行单通道转换 当2 位数据为 0 0 时 将 CH0作为正输入端 IN CH1作为负输入端 IN 进行输入 当2 位数据为 0 1 时 将 CH0作为负输入端 IN CH1 作为正输入端 IN 进行 输入 到第3 个脉冲的下沉之后 DI 端的输入电平就失去输入作用 此后 DO DI 端则开始利用数据输出 DO 进行转换数据的读取 从第4个脉冲下沉开始由 DO 端输出转换数据最高位 DATA7 随后每一个脉冲下沉 DO 端输出下一位数据 直 到第11个脉冲时发出最低位数据 DATA0 一个字节的数据输出完成 也正是从此位 开始输出下一个相反字节的数据 即从第11个字节的下沉输出 DATA0 随后输出8 位数据 到第19 个脉冲时数据输出完成 也标志着一次 A D 转换的结束 最后将 CS 置高电平禁用芯片 直接将转换后的数据进行处理就可以了 作为单通道模拟信号输入时 ADC0832的输入电压是0 5V 且8位分辨率时的电压 精度为19 53mV 如果作为由 IN 与 IN 输入的输入时 可是将电压值设定在某一 个较大范围之内 从而提高转换的宽度 但值得注意的是 在进行 IN 与 IN 的输 入时 如果 IN 的电压大于 IN 的电压则转换后的数据结果始终为00H 其硬件引脚如图所示 2 5 显示电路设计 显示界面利用 16X1 的 LM016L 的字符型液晶 LM020L 进行显示 相比 LED 显示 能显示更多的内容 人机界面更友好 而且节省单片机硬件资源 其引脚接线以 及驱动电路如下图所示 如上图所示 RS RW E 分别接至 P2 0 P2 1 P2 2作为显示器的控制端口 D0 D1 D2 D3 D4 D5 D6 D7与 P0口直接相连 同时使用驱动电路 RESPACK 8来提供足够的 LCD 电源 2 6 电源电路设计 此设计的所有硬件电路均可有5V 的直流电源驱动 因此使用标准的5V 的电 压源作为电路电源 3 软件部分的设计 include include include 包含必要的头文件 define uint unsigned int define uchar unsigned char define delay4us nop nop nop nop define NOP nop sbit HIGH P2 3 sbit LOW P2 4 sbit AD CS P1 0 sbit SCK P1 1 sbit DO P1 2 sbit DI P1 2 sbit RS P2 0 sbit RW P2 1 sbit E P2 2 必要的位定义 unsigned char adval uchar Display Buffer 000 0KPa uchar code Line1 Current Press 初始化所显示的字符 uchar adc0832 uchar channel 读 ADC0832 函数 采集并返回 uchar i 0 uchar j uint dat2 0 uchar ndat 0 if channel 0 channel 2 if channel 1 channel 3 AD CS 0 NOP NOP 拉低 CS 端 AD 片选 DI 1 NOP NOP 在第一个脉冲下降之前 DI 必须是高电平 表示启始信号 SCK 1 NOP NOP SCK 0 NOP NOP SCK 1 DI channelNOP NOP 在第二和第三个脉冲下降之前 DI 输入两位表示通道 SCK 0 NOP NOP SCK 1 DI channel 1 NOP NOP SCK 0 写命令完成 DI 失去输入作用 DI 1 NOP NOP dat2 0 for i 0 i 8 i 读出 8 字节数 据 dat2 DO SCK 1 NOP NOP SCK 0 NOP NOP dat2 1 if i 7 dat2 DO for i 0 i 8 i j 0 j j DO SCK 1 NOP NOP SCK 0 NOP NOP j j 7 ndat ndat j if i 1 AD CS 1 SCK 0 DO 1 dat2 8 dat2 ndat return dat2 返回数据 void DelayMS uint ms 延时程序 相应数值为相应毫秒数 uchar i while ms for i 0 i 120 i 1mS 延时 uchar Read LCD State 检测 LCD 是否 忙 uchar state RS 0 RW 1 E 1 DelayMS 1 state P0 返回 P0 的值 E 0 DelayMS 1 return state 返回状态 void LCD Busy Wait while Read LCD State DelayMS 5 void LCD Write Command uchar cmd 写命令函数 LCD Busy Wait RS 0 RW 0 E 0 nop nop P0 cmd 将 CMD 值写入 LCD 产生相应的控制 delay4us E 1 delay4us E 0 void Set LCD Pos uchar pos LCD Write Command pos 0 x80 void LCD Write Data uchar dat 写数据函数 LCD Busy Wait RS 1 RW 0 E 0 P0 dat delay4us E 1 delay4us E 0 void LCD Initialise LCD 初始化函数 LCD Write Command 0 x38 DelayMS 1 LCD Write Command 0 x0c DelayMS 1 LCD Write Command 0 x06 DelayMS 1 LCD Write Command 0 x01 DelayMS 1 void Display LCD String uchar p uchar s LCD 显示函数 uchar i Set LCD Pos p for i 0 i246 判断过压函数 HIGH 1 LOW 0 开启过压报警灯 DelayMS 1 write sfm 6 bai write sfm 7 sh write sfm 8 ge write sfm 10 xiaoshu 写数据 else if c 10 开启欠压报警灯 LOW 1 HIGH 0 write sfm 6 bai write sfm 7 sh write sfm 8 ge write sfm 10 xiaoshu 写数据 else HIGH 0 LOW 0 正常状态 显示压力 值 write sfm 6 bai write sfm 7 sh write sfm 8 ge write sfm 10 xiaoshu 程序完 4 仿真及结果 如下图所示 是当压力值小于和大于 115kPa 时的显示与报警电路 5 小结 压力计的设计是一项综合性的课程设计课题 其中具体体现

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论