单片机和FPGA的远程温度监控系统.doc_第1页
单片机和FPGA的远程温度监控系统.doc_第2页
单片机和FPGA的远程温度监控系统.doc_第3页
单片机和FPGA的远程温度监控系统.doc_第4页
全文预览已结束

下载本文档

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

文档简介

温度对工农业生产和国防事业均有不同程度的影响。电力设备的故障有多种多样,但大多数都伴有发热的现象,一次事故损失巨大;纺织、食品、烟草等工业中,温度过高容易使产品变质,电子仪器也容易出故障;温室栽培和工业生产中,若不控制温度,将严重影响产量和质量。还有很多领域的温度可能较高或较低,人无法靠近或现场无需人力来监控。传统的温度测量方式周期长,不能实时监测,而且测量员必须到现场进行测量和启动功率设备来调整温度,工作效率非常低,且不便于管理。为此设计了这套远程测控系统,坐在办公室里就可以对现场进行监控,又方便又节省人力。1 系统的总体设计本设计是基于单片机和nios软核的温度监控系统,其系统框图如图1所示。本系统采用dallas单线数字温度传感器ds18b20采集温度数据,打破了传统的热电阻、热电偶再通过ad转换采集温度的思路。用atmel公司的flash单片机at89s51对数字信号进行处理和控制,通过rs 232串口传到以nios构成的嵌入式处理机中对温度进行监视与报警。nios ii的嵌入式web服务器使用户可以通过ie浏览器浏览存储在flash芯片中的网页,由于cpu本身是以软核的方式实现,其功能可根据需要进行定制,非常灵活。2 监控系统的硬件系统设计2.1 对ds18b20的简单介绍和使用说明ds18b20是美国dallas公司生产的单线数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,特别适合于构成多点温度测控系统,可直接将温度转化成串行数字信号供微机处理,而且每片ds18b20都有惟一的产品号并可存入其rom中,在构成大型温度测控系统时单线上可挂多个ds18b20芯片。从ds18b20读出或写入ds18b20信息仅需要一根口线,共读写及温度变换的功率来源于数据总线,该总线本身也可以向所挂接的ds18b20供电,而无需额外电源。ds18b20能提供9位温度读数,它无需任何外围硬件即可方便地构成温度检测系统。ds18b20体积更小、适用电压更宽、更经济。测量温度范围为-55+125,在-10+85范围内,精度为0.5。单片机控制ds18b20完成温度的采集过程必须经过初始化、写操作、读操作3个步骤,而且必须有严格的时间间隙。2.2 nios处理器的说明altera公司的nios处理器是一种用户可随时配置和构建的32位指令集和数据通道的嵌入式系统微处理器ip核,采用avalon总线结构通信接口,带有增强的内存调试和软件功能。lwip是一种专门针对嵌入式系统应用而设计的网络通信协议,支持因特网信息控制协议(icmp),用户数据报协议(udp),动态主机分配协议(dhcp),地址解析协议(arp)以及对应用程序提供的标准socket接口,因而可以完成传统的tcpip协议的大部分功能,资源占用却比tcpip协议小,所以非常适合以nios处理器为核心的系统。基于以上考虑,嵌入式web服务器以nios处理器为核心,lwip为网络通信协议,实现简单的网页浏览功能。用户可以通过网络浏览存储在flash中的网页。2.3 硬件电路设计说明本系统硬件电路包括单片机温度采集电路、电平转换电路及基于nios嵌入式上位机系统。2.3.1 温度采集电路温度采集电路主要由ds18b20和单片机构成,如图2所示。系统以8051单片机(u1)作为核心;c1,c2和y1组成时钟电路,晶振为12 mhz;s1,c12和r3组成复位电路;u1的p1.0接一个发光二极管,用于程序执行指示灯;r5为限流电阻;dq接到8051的p2.1端;r1为信号和5 v电源之间的上拉电阻。2.3.2 电平转换电路单片机与上位机的通信电路如图3所示。8051单片机本身提供了一组全双工串行传输接口,由txd引脚来传送串行数据而由rxd引脚来接收数据,可是其工作逻辑电平皆为ttl电平(0 v,5 v)。所以单片机与pc之间的数据通信必须经过rs 232信号(+12 v,-12 v)电平的转换。本系统使用max232电平转换芯片,只要加4只电容就能完成接口电平的转换。单片机的11脚(txd)接232的10脚,单片机的10脚(rxd)接232的9脚。与上位机连接的rs 232-c接口采用db-9的9芯插头座,传输线采用屏蔽双绞线。电源部分采用市售的9 v直流稳压电源,经7805后滤波稳压得到稳定的5 v电源。2.3.3 基于nios嵌入式上位机系统主要包括以下几个部分:包括nios软核cpu、操作系统使用的定时器、网络协议栈使用的定时器、cpu同外围设备的接口(avlaon总线);epcs4用来在上电时对fpga进行配置;flash主要用来存放软件代码以及一些需要保存的参数;sram用来在系统运行时的代码和数据存储;网络接口芯片采用smsc公司的lan91c111芯片作为网络接口。该器件是一个以太网控制器,实现了网络7层协议栈中的传输层和mac层的功能。另外,它具有10100 mbs自适应、双工半工自适应等功能,有很好的网络兼容性。采用串口uart和单片机通信。利用quartus中的sopc builde构建的cpu如图4所示。3 监控系统的软件系统设计单片机控制程序设计框图如图5和图6所示。串口中断程序功能为接收由上位机发送的数据采集周期以及开始、停止指令。温度信号滤波通过软件实现。滤波算法采用加权平均值法,即对最新检测到的n个温度信号序列去除最大值和最小值,并取加权平均运算。4 基于nios的web服务器的实现把构建好的cpu及相应的模块进行分析引脚分配、综合后再进行编译,用nioside(集成开发环境)通过移植实时操作系统clinux来实现嵌入式实时多任务控制系统,开发相应的网页并进行服务器移植和配置。本系统采用clinux下的boa。boa是一个单线程的http服务器,它不同于其它传统的web服务器,不为每个连接创建一个进程,只有当cgi程序运行时才创建一个新的进程。通过移植boa来实现智能监控系统的web服务器功能,最后通过编写cgi程序并结合flash动画实现了动态web交互功能。5 结语采用at89s51系列单片机、传感器ds18b

温馨提示

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

评论

0/150

提交评论