毕业设计嵌入式系统数据采集系统Word文件下载.docx
- 文档编号:19909331
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:22
- 大小:66.89KB
毕业设计嵌入式系统数据采集系统Word文件下载.docx
《毕业设计嵌入式系统数据采集系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《毕业设计嵌入式系统数据采集系统Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
数据采集设备的作用是将模拟的电信号转换为数字信号送入计算机进行处理,或将计算机编辑好的数字信号转换为模拟信号输出。
计算机上安装了驱动和应用,方便我们与硬件交互,完成采集任务,并对采集到的数据进行后续分析和处理。
在这样的背景下,嵌入式系统数据采集系统将是一个大的研究方向,尤其在实时监控领域,通过嵌入式系统对模拟信号,如温度、湿度、光线、声音等的采集,并与上位机进行数据的传输,在上位机上实时监控,并保存数据。
1.2系统开发功能、目的和意义
1.2.1功能
主要功能:
通过嵌入式系统实现对温度的的采集,实时监控、显示,并通过串口将采集到的数据发送出去。
上位机是linux系统的PC机。
通过串口连接嵌入式系统与上位机,并且实现数据由嵌入式系统传送到上位机,在上位机上实时显示监控到的数据,并保存成文件。
1.2.2目的和意义
毕业设计不仅是对学习期间的总结,同时也是自己综合运用所学知识解决实际问题的一次锻炼。
在此行业背景下,嵌入式系统数据采集系统,是一个在军事、商业、医疗、家庭等各个领域都是有很多实际应用的。
数据采集,是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程。
嵌入式数据采集系统是结合基于ARM处理器、51单片机的测量软硬件产品来实现灵活的、用户自定义的测量系统。
数据采集的目的是为了测量电压、电流、温度、压力或声音等物理现象。
基于ARM、51单片机的数据采集系统,通过模块化硬件、应用软件和计算机的结合,进行采集、显示以及保存。
尽管数据采集系统根据不同的应用需求有不同的定义,但各个系统采集、分析和显示信息的目的却都相同。
数据采集系统整合了信号、传感器、激励器、信号调理、数据采集设备和应用软件。
2
可行性分析
2.1系统整体设计思想
(1)嵌入式系统:
嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统,它将操作系统和功能软件集成于计算机硬件系统之中,简而言之就是系统的应用软件与系统的硬件一体化,类似于BIOS的工作方式,具有软件代码小,高度自动化,响应速度快等特点。
特别适合于要求实时和多任务的体系。
嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业实际应用相结合的产物。
嵌入式系统的结构由两大模块组成:
硬件平台和软件平台。
(2)数据采集系统:
数据采集系统的采集任务在现场完成。
采集系统设计为分布式的控制系统,系统上位机与现场检测下位机之间的通信基于串口。
正常运行时,现场下位检测控制器完成数据采集、数据处理、数据存储、数据发送等多种任务。
系统具有一定的自检测、自校正能力,能将异常情况传给PC机,以便维护。
为了适应各种不同情况对焊缝自动检测的要求,整个检测系统采用模块化结构设计,可应用不同的模块组合成不同的应用系统。
(3)嵌入式软件开发的特点:
①人机交互界面。
嵌入式系统和通用计算机之间的最大区别在与人机交互界面。
嵌入式系统可能根本就不存在键盘、显示器等设备,它所完成的事情也可能只是监视网络情况或者传感器的变化情况,并按照事先规定好的过程及时完成相应的处理任务。
②有限的功能。
嵌入式系统的功能在设计时已经定制好,在开发完成投入使用之后就不再变化,系统将反复执行这些预定好的任务,而不象通用计算机那样随时可以运行新任务。
当然,使用嵌入式操作系统的嵌入式系统可以添加新的任务,删除旧的任务;
但这样的变化对嵌入式系统而言是关键性的变化,有可能会对整个系统产生影响。
③时间关键性和稳定性。
嵌入式系统可能要求实时响应,具有严格的时序性。
同时,嵌入式系统还要求有非常可靠的稳定性。
其工作环境可能非常恶劣,如高温、高压、低温、潮湿等。
这就要求在设计时考虑目标系统的工作环境,合理选择硬件和保护措施。
软件稳定也是一个重要特征。
软件系统需要经过无数次反复测试,达到预先规定的要求才能真正投入使用。
正是由于嵌入式系统具有以上的各种特性,所以在各个领域的应用都是很广泛的,具有实际应用价值。
在嵌入式系统数据采集系统的设计中,系统的整体设计都是离不开系统本身具有的特性的。
2.2技术可行性分析
2.2.1系统简要描述
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
因此可以理解嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。
嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
所以,介入嵌入式系统行业,必须有一个正确的定位。
例如Palm之所以在PDA领域占有70%以上的市场,就是因为其立足于个人电子消费品,着重发展图形界面和多任务管理;
而风河的Vxworks之所以在火星车上得以应用,则是因为其高实时性和高可靠性。
嵌入式系统必须根据应用需求对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。
所以,如果能建立相对通用的软硬件基础,然后在其上开发出适应各种需要的系统,是一个比较好的发展模式。
目前的嵌入式系统的核心往往是一个只有几K到几十K微内核,需要根据实际的使用进行功能扩展或者裁减,但是由于微内核的存在,使得这种扩展能够非常顺利的进行。
2.2.2处理流程和数据流程
嵌入式系统数据采集系统是通过温度传感器DS18B20把温度信号直接转换成数字信号,输入单片机处理,将实时温度显示在两个7段LED数码管上,并通过串口与上位机相连,将温度在linux服务器上实时显示,并保存到文件里。
2.3本章小结
可行性研究是确定建设项目前具有决定性意义的工作,是在投资决策之前,对拟建项目进行全面技术经济分析的科学论证,在投资管理中,可行性研究是指对拟建项目有关的自然、社会、经济、技术等进行调研、分析比较以及预测建成后的社会经济效益。
在此基础上,综合论证项目建设的必要性,财务的盈利性,经济上的合理性,技术上的先进性和适应性以及建设条件的可能性和可行性,从而为投资决策提供科学依据。
3
需求分析
3.1系统的产生和发展
随着信息技术的飞速发展,人们需要能够准确、快速和便捷地获得大量数据并能从中迅速提取出有用的信息。
嵌入式系统是继IT网络技术之后,又一个新的技术发展方向。
进入20世纪90年代,嵌入式技术的应用全面展开,目前已经成为通信和消费类产品的主要平台技术。
嵌入式系统已经应用与信息家电、移动通信、工业控制、军事电子等诸多领域,并发挥着巨大的作用。
嵌入式系统的最初的应用是基于单片机的,大多以可编程控制器的形式出现,具有监测、设备指示等功能,一般没有操作系统的支持,只是通过汇编语言对系统直接进行编程控制,运行结束后再清除内存。
这些装置已经具备了嵌入式系统的应用特点,但是只使用8位的CPU芯片来执行一些单线程的程序。
这以阶段嵌入式系统的主要特点是:
系统结构和功能相对单一,处理效率较低,存储容量较小。
由于这种嵌入式系统使用简便、价格低廉,因而在工业领域有非常广泛的应用。
随着微电子工业水平的提高,微控制器的出现,从而又出现了一些带有操作系统的嵌入式系统。
本设计主要是采用基于单片机的嵌入式系统,通过温度传感器将采集到的温度信息传送给单片机,经过单片机的处理显示并且传送信息,Linux系统的上位机是通过串口与单片机连接的,在单片机上通过串口将数据发送给上位机,在Linux系统下实时显示采集到的温度,并保存为文件。
3.2系统的需求分析
3.2.1需求分析的意义
需求分析就是分析硬件、软件用户的需求是什么。
如果实现需求需要投入大量的人力、物力、财力、时间,开发出的硬件、软件却没人要,那所有的投入都是徒劳。
如果费了很大的精力,开发一个硬件、软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的。
相信大家都有体会,比如,用户需要一个for
linux的软件,而在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for
windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了。
需求分析之所以如此重要,就因为他具有决策性、方向性、策略性的作用,它在硬件、软件开发的过程中具有举足轻重的地位,一定要对需求分析具有足够的重视,在一个大型软件系统的开发中,他的作用要远远大于程序设计。
3.2.2需求分析的任务
简言之,需求分析的任务就是解决“做什么”的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。
对于本设计而言,是基于51单片机的嵌入式数据采集系统设计,是通过传感器采集模拟信号(温度),并将其转换成数字信号,输入单片机,将实时温度显示在两个LED数码管上,并通过串口将采集到的温度信息传送到Linux系统的上位机上,上位机作为服务器,实时显示接收到的温度信息,并将其保存到文件里。
3.2.3需求分析的过程
必须用行之有效的方法对软件需求进行严格的审查验证。
需求分析阶段的工作,可以分为四个方面:
问题识别、分析与综合、制订规格说明以及评审,如图3-1所示。
图3-1需求分析的一般过程
需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。
在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。
3.2.4数据流程图
数据流程图就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
分层的数据流图为了表达数据处理过程的数据加工情况,用一个数据流程图是不够的,为表达稍为复杂的实际问题需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。
先把整个数据处理过程暂且看成一个加工,它的输入数据和输出数据实际上反映了系统与外界环境的接口,这就是分层数据图的顶层。
3.3温度传感器
DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。
与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。
因而使用DS18B20可使系统结构更趋简单,可靠性更高。
他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。
DS18B20简介
独特的单线接口方式:
DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯;
在使用中不需要任何外围元件;
可用数据线供电,电压范围:
+3.0~+5.5V;
测温范围:
-55~+125℃。
固有测温分辨率为0.5℃;
通过编程可实现9~12位的数字读数方式;
用户可自设定非易失性的报警上下限值;
支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温;
负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
DS18B20引脚如图3-2所示:
图3-2DS18B20引脚排列图
引脚及其与单片机的连接方式:
引脚1:
GND接地;
引脚2:
DQ为数字信号输入/输出端,连接单片机I/O端口,电源+5V和信号线之间接有一个4.7欧姆的电阻;
引脚3:
VDD为外接电源输入端,接+5V电源。
由于每片DS18B20含有唯一的串行数据口,所以一条总线上可以挂接多个DS18B20芯片。
外部供电方式单点测温电路如图3-3所示。
外部供电方式多点测温电路如图3-4所示。
图3-3单点测温电路
DS18B20的主要特征:
使用电压范围宽,电压范围为3.0V到3.5V,在寄生电源方式下可用数据线供电;
单线接口方式,DS18B20在与微处理器连接时仅需要一条线即可实现微处理器与DS18B20的双向通信;
DS18B20支持多点组网功能,实现组网多点测温;
DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路都集中成在形如一只三极管的集成电路中;
测温范围为-55℃到+125℃,在-10℃到+85℃的精度为-0.5到+0.5;
可编程的分辨率为9到12位,对应的可辨温度分别为0.5℃、0.125℃和0.0625℃,可实现高精度测温;
转换速度快,在9位分辨率时最多在93.75ms内把温度转化为数字,12位分辨率时最多在750ms内把温度转化为数字;
测量结果直接输出数字温度信号,以“一线总线”串行总线送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力;
用户可自设定温度报警上下限,其值是非易失性的;
报警搜索命令可识别哪片DS18B20超温度限。
DS18B20通信协议:
在对DS18B20进行读写编程时,必须严格保证读写时序,否则将无法读取温度结果。
根据DS18B20的通信协议,主机控制DS18B20完成温度转换必须经过3个步骤:
第一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。
复位要求主CPU将数据线下拉500us,然后释放,DS18B20收到信号后等待16到60us,然后发出60到240us的存在低脉冲,主CPU收到此信号表示复位成功。
DS18B20的ROM指令如表3-1所示:
DS18B20的RAM指令如表3-2所示:
表3-1ROM指令表
表3-2RAM指令
3.4本章小结
需求分析报告是对系统需求的书面表达形式。
由于需求分析报告是采用软件设计的术语编写的,因此常常令计算机背景知识较少的用户方难以理解,也就很难发现需求报告中与实际需求不符之处,更难提出建设性的意见。
特别是那些编写得较差的需求分析报告,用户更是不知所云。
4
总体设计
4.1系统模块总体设计
利用层次图来表示系统中各模块之间的关系。
层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。
树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。
随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。
从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。
本系统一共分为目标机和上位机两大模块,两个模块之间通过串口实现数据的传送,是紧密相连的。
目标机主要实现对数据的采集、显示和发送;
上位机主要实现对数据的实时监控、显示和保存。
4.2系统运行平台设置
模拟信号的波形图如图4-1所示:
图4-1模拟信号示意图
数字信号的波形图如图4-2所示:
图4-2数字信号示意图
日常生活中,大部分数据是模拟信号,我们可把测得的模拟信号经模拟/数字转换器(ADC)转换成数字信号,这样可以进行较高效率的处理、保存和传输。
当处理完成后,在经数字/模拟转换器(DAC)转换成模拟信号,以驱动控制设备,如图4-3所示:
图4-3ADC、DAC系统图
通过温度传感器DS18B20把温度信号直接转换成数字信号,输入单片机处理,将实时温度显示在两个7段LED数码管上。
电路设计如图4-4所示:
图4-4数字温度计电路
程序开始首先对温度传感器DS18B20进行复位,检测是否正常工作;
接着读取温度数据。
主程序流程图如图4-5所示:
图4-5主程序流程图
4.3本章小结
温度传感器DS18B20外形像一个小型三极管,硬件连接非常简单,应用非常方便,开销非常小。
5
详细设计
5.1目标机实现及代码
目标机的功能是实现数据的采集、显示、传送的功能。
初始化及读取温度值子程序代码如下所示:
RE_TEMP:
;
初始化及读取温度值子程序
SETBDQ;
ACALLRESET_1820;
调用复位子程序
JBFLAG,ST;
判断DS1820是否存在
RET
ST:
;
DS18B20存在
MOVA,#0CCH;
跳出ROM匹配
ACALLWRITE_1820;
调用写入数据子程序
MOVA,#44H;
发出温度转换命令
准备读温度前先复位
跳过ROM匹配
MOVA,#0BEH;
发出读温度命令
ACALLREAD_1820;
调用读取数据子程序
写入子程序的代码如下所示:
WRITE_1820:
写入子程序,有具体的时序要求
MOVR0,#8;
一共8位数据
CLRC;
C=0
WR1:
CLRDQ;
总线低位,开始写入
MOVR3,#7;
DJNZR3,$;
保持16us以上
RRCA;
把字节DATA分成8个位,环移给C
MOVDQ,C;
写入一个位
MOVR3,#23;
等待
重新释放总线
NOP
DJNZR2,WR1;
写入下一个位
SETBDQ
读取子程序的代码如下所示:
READ_1820:
读取子程序,将温度高位和低位从DS18B20中读出
MOVR4,#2;
读出两个字节的数据
MOVR1,#29H;
低位存入29H,高位存入28H
RE0:
数据一个有8位
RE1:
CLRC
读前总线保持为低
开始读总线释放
MOVR3,#9
RE2:
DJNZR3,RE2;
延时18us
MOVC,DQ;
从总线读到一个位
RE3:
DJNZR3,RE3;
等待50us
RR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 嵌入式 系统 数据 采集