中国石油大学本科毕设.docx
- 文档编号:8994624
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:31
- 大小:105KB
中国石油大学本科毕设.docx
《中国石油大学本科毕设.docx》由会员分享,可在线阅读,更多相关《中国石油大学本科毕设.docx(31页珍藏版)》请在冰豆网上搜索。
中国石油大学本科毕设
摘要
随着电子技术的发展,单片机以其体积小、功能强、功耗低的特点得到了广泛的应用。
本着实用、可靠、安全、简洁及经济等原则,本课题将应用单片机ATmega128和一些常用器件构建一个输油管道监测信号采集统:
对从传感器获取的压力、流量及温度信号进行采集,并将所测信号的数据进行实时显示、发送。
本系统可对管道进行监测,以防止管道由于长时间腐蚀、磨损、压力等原因会产生一些损伤。
本文首先对单片机应用系统的开发流程及AVR单片机的开发环境进行了简单的介绍,随后对输油管道监测信号采集系统的硬件部分进行了分析,最后对此系统的软件部分进行了详尽的设计。
关键字:
单片机;数据采集系统;串行通信;ATmega128;usart;显示
ABSTRACT
Beeauseofitseconomieal,effeetiveandsafecharacteristies,pipelineisoneoftheimportantmeansoftransportation,especiallyinthepetrochemilandnaturalgasindustry.Thepipelinemayhavedefectsbeeauseofthelongtimeerosion,abrasionandhighpressure.Sothepiprlinemustbemonitored.
Withthedevelopmentofelectronictechnology,SCMhasbeenwidelyusedbecauseofitssmallsize,strongfunction,thecharacteristicsoflowpowerconsumption.Takingpractical,reliable,safe,simpleandeconomicprinciplesintoconsideration,thisissuewillbuildasignalacquisitionsystemmonitoringpipelinesbasedonATmega128microcontroller.Thissystermnotonlyacquirespressure、flowandtemperaturesignalsfromsensors,butalsomakesthemeasureddatashowandsend.Inthispaper,theSCMapplicationsystemdevelopmentprocessandAVRmicrocontrollerdevelopmentenvironmentaremadeabriefintroduction,andthenthehardwarepartofasignalacquisitionsystemmonitoringpipelinesisanalysed.Finallythesoftwarepartofthissystermisdesigneddetailedly.
Keywords:
SCM;dataacquisitionsystem;serialcommunication;ATmega128;usart
目录
第1章前言1
1.1课题研究的背景1
1.2课题研究的目的及意义1
第2章单片机应用系统的开发方法2
2.1单片机应用系统的开发流程2
2.1.1确定系统的功能与性能2
2.1.2确定系统基本结构3
2.1.3硬件设计3
2.1.4软件设计4
2.1.5硬件调试、软件调试5
2.2数据采集系统简单介绍7
2.3AVR单片机的嵌入式系统开发工具9
2.4单片机ATmega128介绍9
2.4.1单片机ATmega128简介9
2.4.2ATmega128的特点10
第3章系统硬件设计11
3.1系统硬件总体设计11
3.1.1硬件任务11
3.1.2系统总体框图11
3.2系统硬件各功能模块构建12
3.2.1压力信号采集模块12
3.2.2流量信号采集模块13
3.2.3温度信号采集模块13
3.2.4通信模块14
3.2.5显示模块15
3.2.6电源模块15
3.2.7时钟模块16
第4章系统软件设计17
4.1系统软件总体设计17
4.1.1软件任务17
4.1.2系统软件总体介绍17
4.1.3软件的变量定义及函数声明18
4.1.4初始化函数20
4.1.5定时一秒的实现21
4.2系统软件各功能模块设计24
4.2.1压力信号采集及处理模块24
4.2.2流量信号采集及处理模块27
4.2.3温度信号采集及处理模块29
4.2.4数据发送通信模块
31
4.2.5LCD显示模块36
第5章结论41
致谢42
参考文献43
第1章前言
1.1课题研究的背景
管道运输是一种非常重要的运输工具,作为一种经济、高效而且安全的物料运送手段,管道尤其在石油化工以及天然气等产业中具有不可替代的作用[1]。
深埋地下的输油管道工作条件非常恶劣,容易发生腐蚀、疲劳破坏或使管道内部潜在缺陷发展成破损而引起泄漏事故,所以必须对管道进行监测。
从国内外输油管道检漏系统的应用实践来看,通过监测管道运行的工艺参数可以判断管道泄漏的发生及其位置[2]。
而在工业现场,对现场数据的采集一般采用工控机来实现,而工控机有多个输入端口和输出端口,而在实际数据采集中,工控机的输入端口与输出端口并未全部使用,此时工控机的资源未得到充分利用。
在输油管道检测中,用工控机来实现数据的传送,成本很高。
但是单片机具有体积小、可靠性高、功能强、灵活方便等许多优点,广泛应用于现代工业的各个行业。
在管道监测中,开发一个基于单片机的数据采集系统,能很好的满足工业需求。
1.2课题研究的目的及意义
在工业现场,可基于ATmega128单片机,构建一个数据采集系统。
用单片机构建的采集系统不但成本低,而且易于维护[3]。
本课题将应用单片机和一些常用器件构建一个输油管道监测信号采集系统。
此系统可对输油管道中工艺参数进行采集,并能实现数据的实时显示和串口发送。
第2章单片机应用系统的开发方法
2.1单片机应用系统的开发流程
2.1.1确定系统的功能与性能
对一个待开发的单片机应用系统,首先应收集相关的技术资料,确定系统的功能与性能。
系统功能主要有数据采集、数据处理、输出控制等。
每一个功能又可细分为若干个子功能。
比如数据采集可分为模拟信号采样与数字信号采样。
模拟信号采样与数字信号采样在硬件支持与软件控制上是有明显差异的。
数据处理可分为预处理、功能性处理、抗干扰等子功能,而功能性处理还可以继续划分为各种信号处理等。
输出控制按控制对象不同可分为各种控制功能,如继电器控制、D/A转换控制、数码管显示控制等。
系统性能主要由精度、速度、功耗、体积、重量、价格、可靠性的技术指标来衡量[4]。
系统研制前,要根据需求调查结果给出上述各指标的定额。
一旦这些指标被确定下来,整个系统将在这些指标限定下进行设计。
系统的速度、体积、重量、价格、可靠性等指标会左右系统软、硬件的功能的划分。
系统功能尽可能用硬件完成,这样可提高系统的工作速度,但系统的体积、重量、功耗、硬件成本都相应地增大,而且还增加了硬件所带来的不可靠因素。
用软件功能尽可能地代替硬件功能,可使系统体积、重量、功耗、硬件成本降低,并可提高硬件系统的可靠性,但是可能会降低系统的工作速度。
因此,在进行系统功能的软、硬件划分时,一定要依据系统性能指标综合考虑,合理搭配软硬件的比重。
2.1.2确定系统基本结构
(1)单片机选型
在选择单片机芯片时,一般选择内部不含ROM的芯片比较合适,通过外部扩展EPROM和RAM即可构成系统,这样不需专门的设备即可固化应用程序。
但是当设计的应用系统批量比较大时,则可选择带ROM、EPROM、OTPROM或EEPROM等的单片机,这样可使系统更加简单。
通常的做法是在软件开发过程中采用EPROM型芯片,提高产品的性能价格比。
(2)软、硬件功能划分
同一般的计算机系统一样,单片机应用系统的软件和硬件在逻辑上是等效的。
具有相同功能的单片机应用系统,其软、硬件功能可以在很宽的范围内变化。
一些硬件电路的功能可以由软件来实现,反之亦然。
在应用系统设计中,系统的软、硬件功能划分要根据系统的要求而定,多用硬件来实现一些功能,可以提高速度,减少存储容量和软件研制的工作量,但会增加硬件成本,降低硬件的利用率和系统的灵活性与适应性。
相反,若用软件来实现某些硬件功能可以节省硬件开支,提高灵活性和适应性,但相应速度要下降,软件设计费用和所需存储容量要增加。
因此,在总体设计时,必须权衡利弊,仔细划分应用系统中的硬件和软件的功能。
2.1.3硬件设计
硬件设计的任务是根据总体设计要求,确定系统扩展所需的扩展部分和各功能模块,包括存储器的扩展、I/O电路、A/D、D/A电路以及有关外围电路等,然后设计出系统的硬件电路原理图。
(1)存储器
若单片机内无片内程序存储器或存储容量不够时,需外部扩展程序存储器。
外部扩展的存储器通常选用EPROM或EEPROM。
EPROM集成度高、价格便宜,EEPROM则编程容易。
当程序量较小时,使用EEPROM较方便;当程序量较大时,采用EPROM更经济。
数据存储器利用RAM构成。
大多数单片机都提供了小容量的片内数据存储区,只有当片内数据存储区不够用时才扩展外部数据存储器。
存储器的设计原则是:
在存储容量满足要求的前提下,尽可能以够用为度。
(2)I/O接口
在选择I/O接口电路时,应从体积、价格、功能、负载等方面考虑。
可优先选用标准的可编程接口电路8255和8155,对要求口线扩充较少的系统,则可用TTL或CMOS电路,以提高口线的利用率。
对于A/D和D/A电路芯片的选择原则,应根据系统对它的速度、精度和价格的要求来确定。
外围模拟电路应根据系统的要求,在速度、精度和价格等方面选用,同时还应注意它们与传感器等的匹配问题。
(3)总线驱动能力
如果单片机外部扩展的器件较多,负载过重,就要考虑设计总线驱动器。
比如,MCS-51单片机的P0口负载能力为8个TTL芯片,P2口负载能力为4个TTL芯片,如果P0、P2实际连接的芯片数目超出上述定额,就必须在P0、P2口增加总线驱动器来提高它们的驱动能力。
P0口应使用双向数据总线驱动器(如74LS245),P2口可使用单向总线驱动器(如74LS244)。
2.1.4软件设计
整个单片机应用系统是一个整体。
在进行应用系统总体设计时,软件设计和硬件设计应统一考虑,相结合进行。
当系统的硬件电路设计定型后,软件的任务也就明确了。
一个应用系统中的软件一般是由系统的监控程序和应用程序两部分构成的。
其中,应用程序是用来完成诸如计算、显示、打印、输出控制等各种实质性功能的软件;系统监控程序是控制单片机系统按预定操作方式运行的程序,它负责组织调度各应用程序模块,完成系统自检、初始化、处理键盘命令、处理接口命令、处理条件触发和显示等功能。
系统软件设计时,应根据系统软件功能要求,将系统软件分成若干个相对独立的部分,并根据它们之间的联系和时间上的关系,设计出合理的软件总体结构。
通常在编制程序前,先根据系统输入和输出变量建立起正确的数学模型,然后画出程序流程框图。
要求流程框图结构清晰、简捷、合理。
画流程框图时还要对系统资源作具体的分配和说明。
编制程序时一般采用自顶向下的程序设计技术,先设计监控程序再设计各应用程序模块。
各功能程序应模块化,子程序化,这样不仅便于调试、连接,还便于修改和移植。
2.1.5硬件调试、软件调试
软件调试
第一,建立用户源程序。
第二,在单片机开发系统上,对用户源程序进行编译,直至错误全部纠正为止。
第三,调试。
(a)先独立后联机、先分块后组合
对于用户系统规模较大、任务较多,即使先行将用户程序分为与硬件无关和依赖于硬件两大部分,但这两部分程序仍较为庞大的话,采用对两类程序块进一步采用分模块调试,以提高软件调试的有效性。
在调试时所划分的程序模块应基本保持与软件设计时的程序功能模块或任务一致,子模块的划分与一般模块的划分应一致。
(b)先单步后连续
调试好程序模块的关键是实现对错误的正确定位。
准确发现程序(或硬件电路)中错误的最有效方法是采用单步加断点运行方式调试程序。
单步运行可以了解被调试程序中每条指令的执行情况,分析指令的运行结果可以知道该指令执行的正确性,并进一步确定是由于硬件电路错误、数据错误还是程序设计错误等引起了该指令的执行错误,从而发现、排除错误。
第四,将调试完毕的用户程序通过专用编程器固化在EPROM中。
硬件调试
第一,静态调试。
对用户样机进行调试,首先要进行静态调试,静态调试是在用户系统未工作时的一种硬件检查,静态调试的目的是排除明显的硬件故障。
静态调试的第一步为目测。
单片机应用系统中大部分电路安装在印制电路板上,因此对每一块加工好的印制电路板要进行仔细的检查。
检查它的印制线是否有断线、是否有毛刺、是否与其它线或焊盘粘连、焊盘有否脱落、过孔是否有未金属化现象等。
通过目测查出一些明显的器件、设备故障并及时排除。
第二步为万用表测试,目测检查后,可进行万用表测试。
先用万用表复核目测中认为可疑的连接或接点,检查它们的通断状态是否与设计规定相符。
再检查各种电源线与地线之间是否有短路现象。
第三步为加电检查。
当给印制板加电时,首先检查所有插座或器件的电源端是否有符合要求的电压值,接地端电压值是否接近于零,接固定电平的引脚端是否电平正确。
然后在断电状态下将芯片逐个插入印制板上的相应插座中。
每插入一块做一遍上述的检查,特别要检查电源到地是否短路,这样就可以确定电源错误或与地短路发生在哪块芯片上。
第四步是联机检查。
因为只有用单片机开发系统才能完成对用户系统的调试,而动态测试也需要在联机仿真的情况下进行。
因此,在静态检查印制板、连接、器件等部分无物理性故障后,即可将用户系统与单片机开发系统用仿真电缆连接起来。
联机检查上述连接是否正确,是否连接畅通、可靠。
第二,联机仿真、在线动态调试。
在静态调试中,仅对目标样机硬件进行了初步调试,只是排除了一些明显的静态故障,而样机中的硬件故障(如各部件内部存在的故障和部件之间连接的逻辑错误)主要是靠联机仿真排除的。
分别打开样机和仿真器电源后,便可开始联机仿真调试,排除硬件的故障。
2.2数据采集系统简单介绍
随着自动控制、监测及远程控制的发展,数据采集越来越被广泛应用,如医疗、工业等方面。
数据采集是指将温度,压力,流量,位移等模拟量通过各种传感元件做适当转换后,再经信号调理、采样、量化、编码、传输等步骤采集,转换成数字量后,传给PC机进行存储,处理,显示或打印的过程,相应的系统称为数据采集系统[5]。
数据采集系统可分为以下几种:
基于通用微型计算机的数据采集系统
将采集来的信号通过外部的采样和A/D转换后的数字信号通过接口电路送入微机内进行处理,然后再显示处理结果或经过D/A转换输出,主要有以下几个特点:
第一,系统有较强的软、硬件支持。
通用微型计算机系统所有的软硬件资源都可以用来支持系统进行工作。
第二,具有自开发能力。
第三,系统的软硬件的应用配置比较小,系统的成本较高,但二次开发时,软硬件扩展能力较好。
第四,在工业环境中运行的可靠性差,对安放的环境要求较高;程序在RAM中运行,易受外界干扰破坏。
基于单片机的数据采集系统
它是由单片机及其些外围芯片构成的数据采集系统,是近年来微机技术快速发展的结果,它具有如下特点:
第一,系统不具有自主开发能力,因此,系统的软硬件开发必须借助开发工具。
第二,系统的软硬件设计与配置规模都是以满足数据采集系统功能要求为原则,因此系统的软硬件应用配置具有最佳的性价比。
系统的软件一般都有应用程序。
第三,系统的可靠性好、使用方便。
应用程序在ROM中运行不会因外界的干扰而破坏,而且上电后系统立即进入用户状态。
基于DSP数字信号微处理器的数据采集系统
DSP数字信号微处理器从理论上而言就是一种单片机的形式,常用的数字信号处理芯片有两种类型,一种是专用DSP芯片,一种是通用DSP芯片。
基于DSP数字信号微处理器的数据采集系统的特点如下:
精度高、灵活性好、可靠性好、容易集成、分时复用等,但其价格不菲。
基于混合型计算机采集系统
这是一种近年来随着8位单片机出现而在计算机应用领域中迅速发展的一种系统结构形式。
它是由通用计算机(PC机)与单片机通过标准总线(例如RS-232-C标准)相连而成。
单片机及其外围电路构成的部分是专为数据采集等功能的要求而配置的,主机则承担数据采集系统的人机对话、大容量的计算、记录、打印、图形显示等任务。
混合型计算机数据采集系统有以下特点:
第一,通常具有自开发能力;
第二,系统配置灵活,易构成各种大中型测控系统;
第三,主机可远离现场而构成各种局域网络系统;
第四,充分利用主机资源,但不会占有主机的全部CPU时间。
2.3AVR单片机的嵌入式系统开发工具
在AVR单片机的嵌入式系统开发中,需要JTAG仿真器,ICCAVR编译器,AVRStudio集成开发环境(IDE)。
ICCAVR是一种使用符合ANSI标准的C语言来开发微控制器MCU程序的一个编译工具。
它是一个综合了编辑器和工程管理器的集成工作环境,其可在WINDOWS9x/Nt下工作。
同时它还可以产生NITELHXE格式的文件。
NITELHXE格式文件可被大多数的编程器所支持,用于下载程序到芯片中去。
AVRStudio4.0集成开发环境(IDE),包括AVRAssembler编译器、AVRStudio调试功能、AVRProg串行、并行下载功能和JTAGICE仿真功能。
在ICCAVR中编译通过的程序,就可以在Studio中仿真调试。
调试通过后的程序可经JTAGICE或SPI下载线下载到单片机中去。
AVR高档单片机ATmega128具有SPI仿真接口,可以实现在线实时仿真。
2.4单片机ATmega128介绍
2.4.1单片机ATmega128简介
ATmegal28是ATMEL公司的AT90系列嵌入式AVR单片机中功能最强的一种单片机,它是一种基于AVR增强性能、RISC结构的、低功耗、CMOS技术的8位微控制器。
AVR核为32个通用工作寄存器与丰富指令集的组合,32个寄存器全部直接与运算逻辑单元(ALU)连接,这使得它的代码处理能力比常规的微控制器要快10多倍。
2.4.2ATmega128的特点
先进的RISC精简指令集结构:
高性能、低功耗的RISC结构,133条功能强大的指令,大多属于单指令周期;32个8位通用工作寄存器和外设控制寄存器;片内有执行时间为2个时钟周期的硬件乘法器。
数据和非易失性程序内存:
128K字节在系统可重复编程Flash(擦写次数为1000次);4K字节内部SRAM;4K字节内部EEPROM:
程序加密;在系统可编程SPI接口[6]。
JATG接口:
边界扫描能力;广泛的片内Debug支持;通过JATG接口对Flash EEPROM、熔丝位和加密位编程。
外围特点:
两个带预分频器和一种比较模式的8位定时器/计数器;两个扩充的带预分频器和比较模式、捕获模式的16位定时器/计数器;具有独立振荡器的实时计数器;2通道8位PWM;输出比较调节器;8通道10位刀D转换器;两线(
)串行接口:
主/从SPI串行接口;带内部振荡器的可编程看门狗定时器:
片内模拟比较器。
I/O和封装:
53个可编程的I/O脚:
64脚TQFP封装。
第3章系统硬件设计
3.1系统硬件总体设计
3.1.1硬件任务
实现信号处理。
可将电流型传感器信号转化成适合系统所选用芯片的电压信号,也将脉冲型传感器信号转化成适合系统所选用芯片的脉冲信号;
实现LCD及串口的硬件设计。
在串口传送中,可将传输信息由TTL标准转换成RS232标准;
实现整个系统的电源供电及外部时钟输入。
3.1.2系统总体框图
通过对系统的规划,可得知此系统包括ATmega128、压力采集模块、流量采集模块、温度采集模块、电源模块、时钟模块、显示模块及通信模块。
此系统的总体框图如图3-1所示。
图3-1系统硬件的总体框图
3.2系统硬件各功能模块构建
3.2.1压力信号采集模块
压力信号的特点
此模块中,压力信号来自压力传感器。
其输入信号为
电流。
压力信号的提取
传感器输入的信号为电流信号,在对此信号进行采集的时候,需要将此信号转化为电压信号。
然后采用外部AD转换器件对转化的电压信号进行采集。
电路系统分两部分组成:
信号处理电路及电压信号采集电路。
电路图如图3-2所示。
图3-2压力采集模块电路图
其中,在电路的缓冲部分,为了减少“自动”启动误触发的可能性,提高系统的输入阻抗,减少对被测信号的衰减影响等诸方面考虑,采用电压跟随器[7]。
而在电压信号AD电路中,采用AD7684芯片。
AD7684是一个16位差分输入的AD转换器件。
当/CS为低电平时,AD7684将采用差压的方式在两输入端进行采样。
此时,当DK不断的得到脉冲信号时,Vo将不断的输出数据。
而且此芯片所需的电源范围为2.7V到5.5V[8]。
3.2.2流量信号采集模块
流量信号的特点
在此模块中,流量信号为脉冲信号。
流量信号的提取
对流量信号进行采集时,首先对此信号进行处理,使其转化为规则的脉冲信号,以防止发生电平抖动,影响采集结果。
随后将经处理后的脉冲信号接入ATmega128的计数器采集接口。
此模块的电路图如图3-3所示。
图3-3流量信号采集模块电路图
3.2.3温度信号采集模块
温度信号的特点
在此模块中,温度信号为
的电流信号。
温度信号的提取
对温度信号进行采集时,首先将传感器的电流信号转化为电压信号,随后将通过ATmega128的内部ADC实现对电压信号的采集。
此模块的电路图如图3-4所示。
图3-4温度信号采集模块电路图
3.2.4通信模块
通信模块介绍
本模块需要将数据转化成RS232标准的数据。
RS232作为标准的电脑串行接口已被广泛使用,但RS232采用的不是TTL电平的接口标准。
RS-232采用的是负逻辑,即逻辑“1”为-5V至-15V;逻辑“0”为+5V至+15V。
而TTL电平的逻辑“1”和“0”则分别为2.4V和0.4V。
因此在用RS-232总线进行串行通信时需外接电路实现电平转换。
在发送端用驱动器将TTL电平转换为RS-232电平,在接收端用接收器将RS-232C电平再转换为TTL电平。
通信模块的实现
本模块采用MAX202E实现TTL电平与RS-232电平的相互转换。
MAX202E属于MAXIM公司的通用串行接收/发送驱动器芯片。
其外围电路简单,只需外接四个0.1μF的电容即可[9]。
本模块的电路如图3-5所示。
图3-5通信模块电路图
3.2.5显示模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国石油 大学本科