基于ARM的时差法超声波流量计研制
本文关键词:基于ARM的时差法超声波流量计研制,由笔耕文化传播整理发布。
南京信息工程大学 硕士学位论文 基于ARM的时差法超声波流量计研制 姓名:魏守包 申请学位级别:硕士 专业:系统分析与集成 指导教师:唐慧强 20080501
摘要
超声波流量计以非接触、精度高、使用方便等优点,在气象、石油、化工、 医药、水资源管理等领域获得了广泛的应用。近年来,随着数字处理技术和微
处理器技术的发展,超声波流量计作为
一种测量仪表也得到了长足进步。本课 题将ARM微控制器用于流量测量仪表的研制,拓展了仪表的开发空间,符合嵌 入式技术的发展方向。 本文详细介绍了超声波时差法流量测量原理及基于LPC2214的超声波流量
计系统设计方案和软硬件实现方法,并对测时算法进行了详细讨论。通过分析 和借鉴国外超声波流量测量的先进技术和方法,得出了改进的时差法测量方案。 系统硬件设计了超声波发射、接收及放大电路,采用高速模数转换器数字化接 收信号,并对ARM系统电路中的电源电路,存储器电路,通信接口电路等进行 了详细介绍。系统软件详细分析了嵌入式操作系统uClinux的移植方法,给出 构建ARM—uclinux平台的步骤,并基于此平台,完成了系统软件设计。测时算
法运用数字滤波技术提高信号信噪比,采用方差比检验方法和插值算法,提高 测时定位精度。 系统设计良好的人机交互界面和通信调试接口,提高了ARM系统的软件开 发调试效率;在保证流量计系统功能的同时,尽量简化硬件电路设计,降低研 制成本,使设计更具合理性。
关键词:超声波流量计;时间差;LPC2214;uClinux;数字滤波器
Abstract
U1trasonic
Flowmeter is widely applied in the fields of meteorology,petroleum,
chemical,medicine,water resourl∞maIlagement,for the advantages non—contact。high accuracy,ease-to-use and SO on.Great progress has been made on Ultrasonic
Flowmeter,in recent years,with the development of digital signal processing technology and microprocesson A New kind Flow meter based on ARM is introduced
in也e thesis.which accords with the embedded system development. The theory of time-differenee Ultrasonic Flowmeter iS introduced.alSO the hardware based on ARM LPC2214.the software and the method of fighting time
absorbing foreign advanced Ultrasonic theory,the new way to calculate fighting time iS presented.In system hardware,the ultrasonic transmitting,receiving and amplifying circuits are designed,and the ultrasonic signal is digitalized bv high speed A/D realizing
are
Flowmeter
technology
designed.By and
analyzing and
converter.The LPC22 14
human
ARM sy’stem circuit included system power,memory, interface and communication faces are introduced.The system SORware is
designed base on the ARM—uClinux embedded platform.alSO the steps how to make the embedded operation system UCLinux emergent to the ARM hardware are presented.In order to heighten the time precision,in system signal process part.the digital filter has designed to high the signal to noise.By checking the variance ratio and interpolation the difference time accuracy of calculating is beightened. of the LPC2214 on chip materials.The human system software design and debug more easily.nlis alSO simplifies the system hardware design,reduces design costs,and makes the design more reasonable. This
design
makes good
use
interface
and
debug port
makes
Keywords:Ultrasonic Flowmeter;time difference method;LPC2214;uClinux;
digital filter
II
学位论文独创性声明
本人郑重声明:
1、坚持以“求实、创新”的科学精神从事研究工作。 2、本论文是我个人在导师指导下进行的研究工作和取得的研究 成果。 3、本论文中除引文外,所有实验、数据和相关材料均是真实的。 4、本论文中除gl文和致谢的内容外,不包其他人或其它机构已 经发表或撰写过的研究成果。 5、其他同志对本研究所做的贡献均己在论文中作了声明并表示 了谢意。
、
作者签名:氇瑙巳
日
期:.趔苎:垡
学位论文使用授权声明
本人完全了解南京信息工程大学有关保留、使用学位论文的规 定,学校有权保留学位论文并向国家主管部门或其指定机构送交论 文的电子版和纸质版:有权将学位论文用于非赢利目的的少量复制 并允许论文进入学校图书馆被查阅:有权将学位论文的内容编入有 关数据库进行检索;有权将学位论文的标题和摘要汇编出版。保密 的学位论文在解密后适用本规定。
作者签名:幽坦
日
期:皇塑』:!:8
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
第一章绪论
1.1前言
流量计作为计量仪表,在现代社会中起着重要作用。其一为流体物资贸易核算储运管 理和污水废气排放控制的总量计量;其二为流程工业提高产品质量和生产效率,降低成本 以及水利工程和环境保护等作必要的流量检测和控制ll】。可见,关涉到国家经济命脉的石 油、天然气的储运和关涉到民生和经济可持续性发展的水资源的管理等领域都涉及到流量 计量问题。 为满足不同种类、不同工况条件下流体流量测量的需要,多种原理的流量计先后被研 制并投入使用。如:速度式流量计、容积式流量计、差压式流量计、电磁流量计、涡轮流 量计、涡街流量计、超声波流量计等。种类繁多的流量计都有各自的适用范围,也具有相 对的局限性,所以,没有可适用于任何场合的流量计。但是,流量技术不断发展满足人们 的生产生活需求,并日趋成熟。尤其是近30年来,微电子技术、计算机技术和通信技术进 入流量测量仪表,使测量仪表山现一次飞跃,仪表的功能更加丰富,可靠性得到显著提高, 测量精度获得大幅度的提升口J。
1.2超声波流量计发展概述
超声波用于流量的测量,已有近一百年的历史。早在1928年O.Rutten研制成功了世 界上第一台超声波流量计(USF,Ultrasonic Flowmeter),它是主要采用相位差法的USF。到 上世纪50年代,基于频差法的MARSON流量计出现,并用于测量航空焰料的流量。60 年代中期出现了连续波频移法的USF,60年代末又出现了多普勒效应的USF。随着电子技 术的发展,进入70年代,性能日益完善的基于不同测量方法的USF投入市场。90年代实 现了超声波气体流量计。 依照不同准则,USF可划分成多种不同的种类。如按照现场工况安装方式的不同,可 以分为固定式USF和便携式USF:按照供电方式,可分为220V交流式和内各充电屯池式; 按照输出方式的不同,可分为有4~20mA的信号输出型和无输出型;按照内部有无数据存 贮功能,可分为有贮存型和无存储型;按照USF换能器放置方式不同,可分为夹装式、插 入式、管段式【j1;按照测量原理,可分为传播时间法,多普勒法,波速偏移法,相关法, 噪声法等。 多类型USF的出现及应用,使其特点逐步得到体现: (1)适用范围广 超声流量计的测量范围一般可达20:1 到300:1。流速从每秒几厘米到每秒十几米 传播速度差法超声波流量计的测量范围可达 管径从小于1厘米到几米,工作温度从低温
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
(如液态氧、液化天然气)到上千度的高温,允许工作压力从接近真空到几百个大气压,其 响应时间从几个毫秒(引擎控制)到24小时(监控管道流量)”1。 (2)对介质几乎无要求 可以测液体、气体,甚至对双向介质的流体流量;测量准确度几乎不受被测流体温度、 压力、密度、粘度等参数的影响。 (3)对被测流体影响小 可实现非接触式测量,不破坏流体的流场,无压力损失:可实现对强腐蚀性、非导电 性、放射性流体的测量。 USF在流量测量领域具有广泛的应用前景,不仅可以应用于液体原油传输、气体输送、 酿酒、饮料及食品流体工业的流量计量,还可用于酸、碱化学介质、医药流体高度危险等 领域。 超声波气体流量计的突出优点,备受各国的关注。美国、英国、荷兰、德国、加拿大、 俄罗斯等10余国家已经将USF批准为天然气贸易输送系统的计量仪表。我国也对此进行 论证,制定标准。1994年我国正式出版了由中国计量科学院组织有关专家起草、分别经国 家技术监督局和建设部批准的“JJG 198—94速度式流量计”的国家计量检定规程(包括超声 流量计)与“JJG(建设)0002.94超声流量计”(传播速度差法、多普勒法)的部门计量检定规 程俐。Controlotron公司和Ploysonics公司的产品较多的采用数字信号处理技术,实现实 时超声信号处理。在测量算法方法方面,利用改进的时差法或者时差法与多普勒法的组合, 如Controlotron公司研制的480型超声流量计,这样使得产品的应用范围更广。 我国对超声波气体流量计的研究起步相对较晚,与国外相比我国自行研制的产品在检 测精度方面存在一定差距。目前国内厂家生产的超声波流量计多以单片机为系统核心,通
过较简单的算法,实现计量。由于受单片机数据处理能力的限制,主要用于测量比较容易
的大管道流体测量,且精度和总体性能也不高。
1.3研究意义及主要工作内容
超声波气体流量计在气体流量计量领域具有重要地位,代表气体计量领域的新发展趋 势。纵观国内外的情况,USF技术在国外发展较为迅速,产品性能比较成熟可靠,但是由 于其引入价格较为昂贵:使得国内该产品的应用较为匮乏,虽然有部分产品出现,但是稳 定性和可靠性不高,无法达到使用要求。为服务于我国四大世纪工程之一的西气东输工程,
服务于我国的经济建设,研制设计我国自主产权的高精度、高灵敏度、低价位USF是必要
的。 设计采用32位的ARM处理器,结合新型时间测量算法,设计具有更强适用能力的低 功耗、低价位超声波流量计,达到符合国外USF智能化、网络化、小型化等发展趋势。主 要工作包括以下内容:
2
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
(1)确立方案 结合国内外USF产品的现状,确定系统实现方案。分析、比较并确立最优可行方案。 本项目确立采用32位的ARM微处理器并结合时差实现系统设计的方案。 (2)硬件设计 完成模拟电路方面的超声波的发射、接收、放大和信号数字化;数字电路方面的ARM 硬件系统,人机接口电路设计;辅助电路方面的温度测量与报警、通信接口等各功能模块 的电路设计。 (3)软件设计 完成ARM启动代码编程,移植uClinux操作系统,实现驱动编程,完成系统软件。 (4)算法分析 在分析接收信号特征的基础上,通过数字滤波器对接收信号滤波处理,结合信号处理 技术,运用插值算法提高系统测时分辨率,并使用MATLAB软件工具对设计滤波器和算 法进行了验证。
南京信息工程大学硕士论文
基于ARM的时差沾超声波流量计研制
第二章
时差法超声波流量计的理论研究
2.1时差法流量测量原理
USF是通过检测流体流动时对超声波束(或超声脉冲)的作用来测量体积流量的仪表。 测量的主要依据是:当超声波入射到被测流体后,流体中传播的超声波会载有流体流速的 信息。测量原理大致可分为有:传播时间法、多普勒效应法、波束偏移法、相关法、噪声 法等。应用较多的是传播时间法和多普勒效应法。传播时间法按测量具体参数不同,又分 为时差法、相差法和频差法州。综合各测量原理及其适用范围,最终确定系统测量原理为 时差法。
时差法USF通过测量超声波束在流体中的顺、逆流传播的时间差实现流量测量。夹装
式测量原理如图2—1所示。管外上、下游分别安装一个超声波换能器,用于轮循发射或接
收超声脉冲。设管道的内径为d,超声波在静止流体中的声速为C,流体的平均流速为v,,
当超声波在声楔中的入射角为日时。声波在管壁中的折射角为如,在被测流体中的折射角
为妒,则超声波在被测流体中的顺流传播时间t。,和逆流传播时间f,,,可表示为:
图2-1夹装式测量原理图 d
^2
2面i面丽面
d
(2.1)
t-2石i面丽面 Lc—Vr sln驴)c08妒
由式(2一1)(2—2)可得传播时1'4差:
,
(2.2)
出刮z?一tu
2歹i2d孟v si纛n面
4
毋
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
由于c2>>v;sin2咖
从而可得传统时差法流速方程:
v,=—_二一.△r 2dtan≯
。
P2
(2-3)
即流速正比于顺逆流传输时间差△f。 瞬时流量即单位时间流过某一截面的流体量,简称流量,可分为体积流量和质量流量。 体积流量是指单位时间内流过的流体的体积。质量流量指单位时间内流过的流体质量川。 这两种不同的流量表示方法含义是一致的。文中测量流量指的是体积流量。
单位时间体积流量Q的计算公式为:
Q:可.s:矿.丝:里.At(2-4)
。4 8tan西
式中,可为管道横截面上流体的平均流速(单位:m/s,当流体均匀流动时约等于v,), S为与流速可相垂直的管道横截面面积(单位:1112)。 由式(2.4)可见,在已知测量工况参数:管道内径d,超声波在静止流体中的声速c, 超声波在被测流体中的折射角≠的条件下,通过测量超声波在被测流体中的顺逆流传播时
间差缸,便实现流体瞬时流量。
2.2测量算法的修正
2.2.1流速方程的修正 由上述时差法超声波流量测量原理的分析可知,流量测量建立在c2>>v;sin2≯条件
下,实现准确流量计量除准确测量超声波传播时问的顺逆流时间差外,还需精确给定波速
在管道内的折射角毋。由超声波传输特性可知,≯角随流体中声速c的变化而改变,而c 又是流体温度的函数,因此,必须对毋进行修正,减小温度变化对测量的影响。
由顺逆流传输时间方程(2?1X2-2)可得,
出2t21--如2矿i嵩豸面
2咖,sin西
r=t.:+f2l=矿而2丽dc
由上两式可得流体的平均流速方程:
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
v,2面‘了
再根据超声波传输过程中满足斯纳尔(Snail)定律,即
c△f
(2.5)
?-----一=一
—sin—0:!丛:—sin—¥
吒 cl
c
(2.6)
其中co、c1、c分别为超声波在声楔中纵波、管壁中纵波和被测流体中横波的波速。 由式(2.5)(2.6)可得:
v,=二L.竺二
。
,
Af
sin0
(2.7)
T
比较传统流体平均流速方程(2.3)和修正后的流速方程(2.5)可以看出两种求解方 法的主要区别:修正后流量测量所需给定的参数为超声波入射角0和声楔中声速矗。由于 在一般固体材料中超声波受温度的影响声速变化比在流体中小一个数量级,所以,采用 (2.5)比(2.3)时要精确得多,在温度变化不大的条件下,并能够较好消除声速变化与 折射角变化对计量的影响。当然,在温度大范围变化的’隋况下(如超声波换能器适用的高
低温范围-40~2000C),就必须对声楔和管壁中的超声波声速进行再修正。
2.2.2流量方程的修正
从流量方程的推理过程可知,流量测量所采IE}j的流速都是理想状况下管道截面均匀分 布的面平均流速,而实际中流体的流动状态并不是均匀分布的,一般可分为两种:第一种 是层流状态,即管内的流体的流动主要是轴向的运动:第二种是紊流状态,即管内的流体 的流动不仅有轴向运动,还有剧烈的横向流动FJ。两种不同流动状态对应着管内的速度分 布也不同。 由于管道流体流速分布规律的复杂性,人们对流体的分布规律的研究仅限于理想管道 流,即光滑层流和光滑紊流条件下的流体流速分布规律”J。 流速较低或管壁粘性较大时,流体流动的状态是平滑的层状流动,主要是轴向的运动; 流速较高时或管壁粘性较小时,流体质点呈现不规则的流动,即紊流,此时管内流体既有 轴向也有横向的流动。两种不同状态所对应的管内的速度分布也不同。层流状态下的速度 分布为抛物线状,而紊流的流速分布是以管道轴线为中心呈对数曲线对称状,也即管道内 的速度分布趋于平坦,因此紊流状态的速度分布比层流时均匀的多。 所以,精确计算流体的单位时间体积流量p时,应考虑流速在横断面的分布状况,需 要采用一定的方法对流速分布进行补偿。修正后单位时间体积流量:
6
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
o:矿.S:兰.丝(2-8)
~
K
4
其中d为管道的内径,v,为声程上的线平均流速,可为面平均流速,K=二土为波速
。
V
分布修正系数,与被测管道的阻力系数A有关,
小1+1.25悖
式中九是流体雷诺数的函数,可表示为:
A=O.0032+0.211Re。0237
(2_9)
(2.10)
所以修正系数K写成雷诺数Re的函数如下:
K=l+0.01、/6.25+431Re。0
237
(2.11)
由流体力学可知,雷诺数Re是判断流体流动状态一个依据。一般认为,Re=2300视 为流体从层流状态到紊流状态的临界判断,其计算公式为:
R。:旦兰d
‘
(2.12)
町
式中P为流体密密度,可为流体的平均流速,
"为管道中流体的运动粘度,d为管
道直径。可见不同流体流动状态下,计算流量时Re和K的取值也应随着流体流动状态动 态变换。因此如何方便快捷且比较精确的得到K值是提高流量计性能的关键问题之一。下 面就对如何方便的取得K值进行分析。 通常认为,在换能器的安装起点前后有足够的直管段前提下,Re=2300为流体从层流
状态到湍流状态的临界判据;Re>2300为紊流状态;Re<2300流体就开始向层流状态过渡吼
层流状态下,由于与管道(半径为R)中心相距r处的流速”同管道中心处最大流速
‰,满足流速分布规律:
一心]2]
由此式,则管道直径方向上的平均流速V 传播路径方向上的平均流速:
(2—13)
也就是超声流量计用于流量测量沿超声波
。》“2 v,
7
(2-14)
南京信息工程太学硕士论文
基于ARM的时差法超声波流量计研制
管道横截面上的平均流速可:
一一Qs=._f‘v删,27rrdr.=鲁^2
S 石月2 2丌R2
max
旺㈣
由式(2.14)和式(2.15)则:
K:皇:4
可 3
(2.16)
所以,在流体处于层流状态时,即使流速有变化,K值却保持不变,即v,和vm。的比 值恒定。采用此修正系数。可以简化测量复杂度。 当流体处于素流状态时,采用同样的处理方法可以得到素流补偿系数:
K:竺:塾生:1+上(2-17)
可 2玎 2胛
其中n是随Re不同而变化的系数,此修正公式很好符合湍流状态时的经验公式:
K=I+0.0146.25+431R;0237
当流体状态介于层流状态与湍流状态之间时运用经验公式:
(2—18)
世21.119+O.01119足
综上可得修正后的流量方程为:
(2?19)
o:可.s:皇.三生:鱼兰垡:.一At(2-20) K 4 4Ksin0 T
。
则从t.到t2时间段内的累积流量为:
W=rQdt
41
从式(2-20)可知,如果测量满管均匀流动流体,在温度变化不大且其他参数如管道 内径d,入射角日和声楔中的声速“在使用前能够精确给定前提下,测量精度与超声波传 播时间的准确测量密切相关,只有准确、稳定的测量顺逆流传播时间,才能保证流量测量 精度。当温度在大范围变化且考虑管壁的厚度h时,还需要对该参数进行设定,根据实际 情况调整流速补偿系数,对超声波的传输时间进行修正,才可实现精确的测量。因此,实 现仪器精确流量计量的关键是对顺逆流传播时间及其差值的测量。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
第三章超声波流量计的总体设计
3.1系统总体设计方案总述
时差法超声波流量计系统主要有以下功能:发送超声波、接收并处理超声波信号、数 据处理、测量结果显示与存储、上位机通信等。 设计以ARM微控制器作为系统的控制与运算核心,运用ARM芯片的高速处理技术。 提高超声波流量测量的精度和实时性。系统总体的功能框图如图所示3-1。
图3-1系统功能框图
系统方案中各功能单元可看作三个主要部分: (1)超声信号收发部分 主要完成超声波的发射、接收,信号调理以及收发切换控制。 (2)数字信号处理部分 主要完成接收信号的数字化及数字信号处理,数据存储等,包括已调理信号的模数转 换,数据输入缓冲FIFO、FLASH数据存储等功能单元。 (3)驱动服务部分 主要完成系统的人机交互,数据通信,包括人机接口的LCD显示及键盘,通信接口、 温度检测及报警电路等功能单元。 系统设计为降低硬件成本,同时也为简化电路设计的复杂度,设计采用收发一体式换
能器,且顺逆流测量共用信号处理电路,换能器与收发电路的连接由ARM微控制器通过
收发切换单元进行控制。信号处理部分,采用数字程控放大电路,增强系统的环境适应能 力。驱动服务部分:测量前,通过键盘进行相应工作参数的设置:测量完成后,己存储的 测量数据通过USB接口传给上位机,方便上位机对测量数据的打印保存、统计等进一步处 理:通信接口单元,辅助完成系统程序开发、调试和程序下载等。
9
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
3.2流量测量过程
系统电路的工作过程: (1)系统上电后,ARM微控制器初始化内部功能模块和系统外部电路单元,并通过 交互接口设定相应的测量参数。 (2)ARM控制发射电路进行信号发射,发射驱动电路提供发射高压脉冲激励,激励 发射传感器发射超声波信号。ARM微控制器启动超声波发射的同时,启动内部定时时中, 经过适当延迟后,通过PWM匹配触发启动信号接收电路。超声波通过被测量流体,由接 收换能器接收并经调理电路调理后,进行A,D转换,转换完成,通过中断触发请求主控芯 片ARM进行接收信号数字处理。 (3)ARM对接收数据进行数字处理,即判别接收信号波形的起点,求出传输时间, 并计算流体流量及数据存储等。 完成一次流量测量,系统至少需要进行顺逆流各一次信号收发。测量过程中,主控制 器根据测量管道管径大小,自动修正A/D转换器的转换启动时间。通过多次重复测量,计 算平均值,提高流量测量精度。
10
南京信息工程大学碗士论文
基于ARM的时差法超声波流量计研制
第四章系统硬件设计
根据系统设计方案的总体框图,本章对具体硬件电路设计进行说明。系统硬件可分为 以下三个主要功能模块:第一部分ARM系统电路模块,包括系统电源、芯片时钟和JTAG 接口电路;第二部分超声波发送与接收电路模块,包括换能器驱动电路、接收信号放大和 调理电路、A/D转换和FIFO缓冲电路;第三部分辅助电路部分,包括按键和显示的人机接
口电路、上位机通信接口电路、温度检测和报警电路、数据存储器电路等。
4.1 LPC221
4芯片简介
ARM即Adwamced RISC Machine,可看做为一种技术,也可看做对一类微处理器的通 称。自1990年A RM公司正式成立以来,一直以IP(Intelligence Patent)提供者的身份向各 大半导体制造商出售知识产权,其设计的芯核具有功耗低,成本低等显著优点,因此获得 众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,目 前,基于ARM技术的微控制器约占32位RISC微处理器的75%以上的市场份额【l…。 当前,ARM微处理器主要有ARM7系列、ARM9系列、ARM9E系列、ARMl0系列、 SecurCore系列、StrongARM系列和Xseale等系列。同时ARM芯片还获得了许多操作系统 供应商如:Windows CE、uCLinux、VxWorks Nucleus、uC/OS.11、pSOS和Palm Os等的 支持。 ARM微处理器已广泛应用于工业控制、消费电子、通信系统、网络系统、无线通讯等 领域。ARM7系列内核普遍支持TDMI四种功能模块。其中各代表含义如下:T:Thumb, 内核指令集除包含32位ARM指令集外还支持16位压缩指令集Thumb;D:Debug,内核 支持在线调试功能,即内核集成了边界扫描链JTAG的调试结构,可使CPU进入调试模式, 方便跟踪内核运行状态;M:Multiplier,内嵌硬件乘法器;h 断点和调试点。ARM7系列微控制器具有如下特点: (1)功耗低,适用于对功耗要求较高的应用; (2)具有嵌入式ICE逻辑,调试开发方便: (3)对操作系统广泛支持; (4)支持三级流水线结构:
Embedded ICE
Logic,支持
(5)高密度指令代码,兼容16位Thumb指令集:
(6)主频最高达到130MIPS,能够胜任绝大多数复杂的应用。 目前,ARM7微处理器主要应用于中低端的网络设备、终端、Intemet设备、移动电话、 多媒体嵌入式应用和工业控制等领域【l“。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
系统选用Philip公司LPC2214,它是一款支持实时仿真和跟踪的32/16位AR.M7TDMI.S 低功耗ARM微控制器,采用1“引脚的LQFP封装,带有2个32位定时器、9个外部中 断、2个16C550工业标准UART、76路输出的PWM单元、2个SPI接口、400Kbps的高速 12C接口、16KB的静态RAM、256KB高速Flash、实时时钟和看门狗等模块。芯片独特的 加速结构使32位代码能够在最大时钟速率下运行,使用16位Thumb模式可将代码规模降 低超过30%,而性能的损失却很小。 LPC2214微控制器的主要特性112]如下: (1)双电源供电:内核CPU操作电源为1.8v(±0.15v),I/O操作电源为3.3v(±10%), 可承受5V电压; (2)具有内部代码加密功能,是全球首款可加密的ARM微控制器; (3)通过可编程的片内锁相环可控制CPU的工作频率,最高可达60MHz,片内晶振 频率范围:1 MI-Iz~30 MHz;Embedded ICE.RT接口支持断点和观察点: (4)在前台任务使用片内RealMonitor软件调试时,中断服务程序可继续执行; (5)具有多达112个可承受5V电压的通用I/O口; (6)向量中断控制器,可配置优先级和向量地址; (7)通过片内Boot-loader固件可实现在系统编程(ISP)和在应用编程(tAP); (8)Flash编程512字节仅需lms,单扇区或整片擦除仅需400ms: (9)外设功能模块可单独使能或禁止,实现功耗最优化。 LPC2214支持两个低功耗模式:空闲模式和掉电模式。在空闲模式中,指令的执行被 停止,直到产生复位或中断为止。外围功能在空闲模式下继续工作并可产生中断唤醒处理 器。空闲模式使自身、存储器和相关控制器以及内部总线不再消耗功率。在掉电模式中,
振荡器被关闭,系统中没有任何内部时钟,处理器状态和寄存器、外设寄存器和内部RAM
的值在掉电模式下保持不变。由于芯片所有动态操作都被暂停,芯片功耗降到最低几乎为 零。外设功率控制器允许关闭不使用的外设,进一步降低功率。LPC2214体积小,功耗低, 特别适用于访问控制。
4.2
ARM系统电路设计
ARM系统电路,实现ARM微控制器的基本功能,其硬件设计主要包括:电源电路、
复位电路、时钟电路、存储器接口等。 4.2.1
ARM系统电源设计
LPC2214为降低功耗采用低压供电方式,而且内核电压和I/O电压分开供电,内核电 压采用+1.8V,I/O电压采用+3.3v。为进一步降低功耗,系统设计中所采用的A/D转换器、 串口通信接口芯片MAX232、ZLG7290也用低压+3.3V电源供电,而放大器和数字程控增
12
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
益的D/A转换器使用传统的±5V电源供电,超声波驱动电源采用+12V。所以系统共需要 五种电源。电源电路如图4.2所示。 系统设计先通过LM2575实现对+9v供电电源进行电压变换,得§U+5v的电压。然后 对+5V电压,一路使用1CL7660实现-5V系统电源,一路使用TPS73HD318实现+3.3V和 +1.8V的系统电源。其中LM2575电路中稳压芯片的输入端接入470uF,35v的电容,是为 了抵消输入时的电感效应,防止稳压块产生自激振荡,保证稳压块正常工作II“。稳压块的 输出端接的电容,用于改善瞬态响应和稳定性。TPS73HD318可输出两路电压,每路输出 电流最高可达750mAt“J,能够满足ARM的电源需求。
剖赫嵛P 叫里竺l ;j宁币帅 缁铲575 01_
I上
l I
1b158l
E
_22。衍咔阳刹
C23 33u 2 2
U02
。翟宁
瓢
j邛/妥
N
Ⅱf 2FB,疆
2Gl难
___一 1Ⅱ4
1Gl匹
坠:托 鸳占
:帮3HD318
图4-2系统电源电路
4.2.2复位及晶振电路
可靠性是系统性能的重要指标。考虑系统工作环境可能带来的系统死机等严重影响。 系统设计手动复位电路。由于ARM芯片的高速、低功耗、低工作电压导致其噪声容限低, 对电源的纹波、瞬态相应性能、时钟源的稳定性、电源监控可靠性等方面提出了更高的要 求。系统设计的复位电路使用内含2K位EEPOM存储器的电源监控芯片CATl025,能够 实现系统按键复位。此外CATl025还内含1.6秒的看门狗定时器电路”“,能够使系统在外 界干扰等“挂起”或程序跑丢而“终止”时复位到已知状态。电路原理如图4.3所示。 电路采用3.3V电源供电,当手动按下按键s1时,MR为低电平,RESET输出低电平. 触发LPC2214的复位管脚135使芯片复位,使I/O口和外围功能恢复默认状态,处理器从 地址0开始执行。当无按键时,MR保持高电平,RESET输出也保持高电平,不触发芯片
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
复位。
图4-3系统复位电路图
LPC2214微控制器内部振荡电路支持IMHz~30MHz外部晶振,如果片内PLL系统或 引导装载程序被使用,输入时钟频率应在10MHz~25MI-Iz。考虑系统功耗和不同工作模式 对时钟的要求不同,设计采用较低的工作频率11.0592MHz,通过外部晶振实现,电路如图 4-4所示。采用该频率晶振的另一原因是串口波特率实现更方便且精确,同时能够支持芯片 内部的PLL功能和ISP功能。其中C46、C47选用20pF的磁介电容,并联1M欧姆的电阻 R45,使晶振更容易起振,且振荡频率较稳定。
图4-4系统时钟电路
4.2.3系统地址空间分配
为满足系统数据和程序存储的需要,系统设计了外部存储器。LPC2214外部空间分配 由nCS0~nCS3控制实现。设计使用16位数据总线系统,系统中数据的读写都采用2字节 为一个单元,所以LPC2214的最低位地址线A0不用于地址译码。系统外部器件地址分配 如下:nCSO片选SST39VFl60(NOR Flash)地址空间:0x80000000~0x801FFFFF;nCSl 片选K18641686C(RAM)地址空间:0x81000000~0x813FFFFF;nCS3和地址线A2l译 码片选K9F2816QOC(NAND
Flash
Memory)地址空间:0x83200000。
系统中片外RAM采用K18641686Cil“,容量为4M*16Bit;片外FLASH,一个是SST
14
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
公司的NOR FLASH芯片SST39VFl60Il 71,容量为1M*16Bit(存放移植uCLmux时的 Booloader代码),另一个是NAND Flash存储器K9F2816QOC[”J,容量为8M*16bit(存放 uCLinux操作系统代码和程序及数据)。电路如图4.5所示。外部存储器共用系统的数据总 线和地址总线,只是LPC2214的地址线从Al开始,依次分别同外部存储器的地址线A0 连接。写控制信号11WE来控制和读控制信号nOE与控制芯片的读写引脚直接相连。芯片 的选通信号按照上述系统地址空间分配中的分配方式进行连接。其中为实现单字节的读写 RAM芯片KIB641686C,使用nBLS0(低8位F0 El使能端)和nBLSI(高8位l,o口使 能端)进行控制。LPC2214对于NAND
FLASH
K9F2816QOC的控制,采用将地址线A20
与芯片的CLE连接,A19与ALE连接,所以,K9F2816QOC的数据地址为0x83200000, 命令控制字为0x83300000;地址锁存使能为0x83280000。
图4_5系统片外存储器电路
4.3超声波收发电路设计
4.3.1超声波换能器特陛及选用
超声波换能器(或称为传感器、探头)是能将交流电信号转换成机械振动而向介质中辐 射(或发射)超声波,或将超声场中的机械振动转换成相应的电信号的装置。超声波换能 器按工作原理可分为压电式、磁致伸缩式、电磁式等。本设计中采用最常用的压电式换能 器完成高频声能与电能之间的相互转化。压电式换能器的核心是压电材料。在受到压力时,
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
压电陶瓷材料的表面会产生电荷,且电荷量与所加的作用力成正比,当压力捎失时电荷也 消失。 换能器正是利用压电材料的正逆压电效应实现超声波收发的。在接收超声波时,压电 材料接收到超声波时将产生轴向交替的压缩和拉伸形变,发生交替的极化,在两端面上出 现符号相反的束缚电荷,将声能转换为电能即正压电效应;换能器在发射超声波时,将适 当的交变电信号施加到压电材料上,即将压电材料置于交变电场中,压电材料内部电荷中 心发生偏移,对应的宏观表现为发生了形变,产生振动,便实现将电能转化为声能,即负 压电效应ll…。 压电换能器的阻抗特性和工作点:通常压电换能器在谐振频率附近的集总参量等效电 路如图4.6A所示。
1』
^ B
图4-6换能器等效电路国
其中.cO是静态电容,是在压电振子远离谐振频率时的电容:L、c和R分别是动态电 感、动态电容和动态电阻,它们分别是由压电振子的质量、机械顺性和机械内耗力阻折算 过来的等效电路参量。 换能器的等效电纳:
】,=G+归=Gl+_,(岛+马)
:,∞cn+————三—一.
。 。
=瓦而R+j[a,Co一《耠】
R-I-/(coL一1,∞C、
式中G和B分别为换能器的等效电导和电纳。 由上述换能器的等效电纳公式可知,当工=ll(27rLC),L和C处于谐振状态,动态支路 表现为纯阻。即换能器处于串联谐振。 在串联谐振时,换能器的等效动态电感L和动态电容C谐振,电路中的R和Co并联 等效成R 7和C 7串联电路如图4.6B所示。此时通过给换能器串联一个匹配电感,调节电
感使其与C’在频率点Z处谐振,则换能器和匹配电路组成的输入端在频率为Z时表现为
纯阻,消除换能器工作时的无功分量,提高换能器的工作效率。所以,串联谐振用于发射 超声波信号。当换能器处于并联谐振,通常用于接收超声波信号。
16
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
超声波的发射与接收利用了压电陶瓷的逆压电教应和正压电效应。超声波发射电路设
计基本原理是在超声波传感器内的压电陶瓷上施加交变的电压信号。超声波信号接收利用
压电陶瓷的正压电效应,当超声波接收换能器接收到来自发射换能器的超声波信号时,如 果超声波频率与压电陶瓷片固有频率相等,则发生共振,压电陶瓷两端出现交变的电压信 号。 由于超声波的辐射特性与其振动频率和换能器的辐射面积有关,频率越高,波束越窄, 定向传播和反射能力也就越强;辐射面积越大,超声波的波束角就越小。频率较低的超声 波在空气中耦合良好,超声波在空气介质中传播,频率愈高,声能被吸收衰减也愈大,声
波的传播距离就愈小;反之,声波频率愈低,声能的吸收衰减也愈小,声波的传播距离就
愈大。 考虑上述因素,并兼顾系统设计重点、难点和开发效率,设计试验性样机忽略声楔和 管壁厚度对超声波辐射的影响,所咀,选用直接空气耦台式超声波换能器TCT40-16,其中 心频率为40kHz,声带宽1.2kHz,等效电容值为2000pF,声压标准102dB rain,接收灵敏 度.85dB min,是接收发射一体式换能器。
4.3.2发射电路设计
由上--d"节的分析可知,驱动超声波换能器发射超声波信号,采用电感电容匹配电路 使换能器处于谐振时,压电陶瓷产生足够大的振动能量,发出大功率超声波信号。由串联
谐振公式确定LC谐振电路中的电感量。
工.:—乓
4
(2玎n2c
其中:,——超声波中心频率,厂=40kHz C——超声波传感器等效电容量,C=2000pF
通过计算可知,构成LC谐振电路的电感量为7.92mH,考虑到实际中超声波换能器中 心频率不可能完全相等40kHz,换能器的等效电路参数随工作条件和信号频率的变化而变 化,且7.92mH的电感不易购买,所以,对电感电容匹配电路进行改进,发射匹配电路如
图4.7所示.在电路中串联匹配电睿CA,能够使得电路在满足C。<<(C+Co)的条件下,
降低Co和R的改变,对等效电路总电抗的影响,而且匹配电路感性变化的幅度也大得多”ol。
图4—7超声波发射匹配电路
17
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
在满足选取条件,CA<<(c+Co)和(2zcf)2(C+co)2R2<10_4的条件下,依据经验
值,选取C=5+co=10nF,CA=22pF<1/100"(c+co),所以,此时匹配电感值经过计算 为1.32mH.在本系统中选用了电感量在0.1uH.35mH范围内的可调电感作为谐振匹配电感, 通过调节电感量达到与超声波换能器构成谐振的要求。 超声波发射电路中,需要给换能器高压脉冲激励才可以发射超声波。电路设计用模拟 开关来切换发射信号,所以每一个换能器均设计了如图4-8所示的发射电路。 从发射电路可知,当T.0uT为低电平时,NMOS场效应管ql截止,PMOS场效应管Q2的 U衢接近零电压,Q2截止,输出低电平:当T OUT为高电平时,场效应管Q1导通,Q2的栅 极经过电阻R01、R02分得使U岱小于其一2V左右的门限电压,从而Q2导通,输出高电平。 因此,可以通过T OUT端来产生正向高压脉冲以激励换能器发射超声波。
T
图4—8超声波发射电路
发射电路的其中一路控制端T OUT,由LPC2214的内部定时器Timel产生的周期脉冲 输出与PwM4匹配输出相与给出,实现周期性的控制发射电路并提供发射换能器所需频率的 脉冲信号。发射电路中的高压由MAX632升压芯片提供,以驱动超声波发射电路工作。MAX632 电路连接简单,功耗低【21I,能够满足电路工作的要求.设计电路如图4-9所示。
图4-9升压电路
18
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
4.3.3超声波接收电路
接收电路的作用是将接收换能器所接收的超声振动转换为微弱电信号进行适当放大等 处理,以满足后继的调理和转换电路工作需要。由于压电材料的换能器输出阻抗较高,因 此换能器接收到信号以后,需要通过阻抗变换与接收电路较好匹配,才能更好提高接收电 路对信号的识别和处理能力。 实际超声波在传输过程中会受传输距离影响会发生信号能量衰减,受到外界环境噪声 及电路噪声、电源噪声等干扰会使接收信号叠加噪声等。基于上述原因,电路设计充分考 虑以下几点:第一,换能器输出与放大电路应满足最佳匹配,使电路接收灵敏度最高;第 二,放大器应有较大的增益,能够将mv级的微弱接收信号,放大到合适范围,同时信号 的动态范围很大;第三,放大器有足够的带宽,让有用信号通过;第四,放大器要具有较 低的噪声且能够抑制一定的电路噪声。所以,设计需要对接收到的较为微弱接收信号进行 放火等处理,以方便以后的流量计量。接收电路设计如图4—10所示。
L
^ IIR04
Y
一
一
D1
D2
【】 匕
图4—10接收电路
由于本系统中超声波换能器是收发一体式换能器,换能器不仅与发射驱动电路相连, 也与接收电路相连,在进行接收超声信号时,发射信号不可避免地进入接收电路,由于其 幅度远大于接收信号,所以,会对接收信号的处理将造成很大影响。信号接收电路采用并 联限幅电路田J。设计中,引入限流电阻及二极管把输入电压限制在0.3V以内,接收信号中 夹杂的发射信号幅值受到了抑制,而峰峰值较小的接收信号可以在输出端顺利得到。后继 接收电路采用精密集成运算放大器,实现换能器接收机信号处理电路之间的阻抗匹配。
Ul 0
圈4-11模拟通道屯源控制电路
19
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
超声波发射与接收之间的功能切换通过控制电路实现,接收电路的开启与关闭通过带 有控制端的电源稳压芯片完成。当换能器用作接收器工作时,ARI控制器控制发射控制端
T
OUT保持为低电平,不对换能器施加脉冲信号,此时开启与换能器相连的接收通路的放
大器供电电源:当换能器用于发射信号时,关闭其接收通路的放大器供电电源。其中一路 放大器的供电电源控制如图4-11所示,MIC5207—5芯片的使能控制信号CR_2由ARM微控 制器控制给出,。此种方案将系统电源稳压田1对模拟通道接收放大器供电,控制收发的切换, 消除了采用模拟开关等器件可能带来的开关信号干扰,且能够降低系统的功耗。 超声波换能器在进行收发切换时,考虑到发射电路的高电压交变会造成电路中电压或 电流信号的振荡,这种振荡信号的振荡频率与超声波频率很接近,所以,如果将此干扰信 号引入后面的模拟信号处理电路可能造成很大的测量误差。由于,这种振荡干扰信号随发 射脉冲群信号的发出而产生,且在较短的时间内持续存在,所以,为尽可能的降低和消除 由于发射电路可能引起的对接收电路的干扰,在发射脉冲控制发射换能器进行信号输出前, 应关闭该换能器的接收模拟通路,经过短暂延时,在干扰信号消失后,再打开另一换能器 的接收模拟通路电源,开启接收电路,实现对有效信号进行接收处理。
4.3.4信号调理电路
调理模块采用三级信号处理模式。第一级前置预放大级,首先对超声波接收电路输出 的幅值很小有效信号进行预放大滤波处理。采用高速低输入噪声精密仪用放大器OP3,其 增益带宽积大于40MttzE”】,能够满足对40kHz频率的超声信号进行20倍的初步放大预处理。 电路如图4—12所示。信号放大的倍数由电阻R017和R016决定。为使接收到得信号能够 在放大器线性范围内进行放大,在运算放大器的调零端接入一个25K的电位器,对放大器 进行调节。
C0
nE生卫——_J
图4一12前置预放大电路
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
第二级数字程控主放大级。本级电路完成对信号的中心放大功能。为满足不同环境条 件下系统抗干扰能力的智能化,实现宽动态范围的超声波信号输入,系统设计可依据采集 现场状况自动调节信号放大增益。考虑系统设计成本,由于专用程控集成放大器价格较昂
贵,且程控增益值较少,数字程控放大采用0P37和D/A转换器])AC0830实现,电路如图
4—13所示。
程控数字宣'
图4—13数字程控放大电路
数字程控放大的原理:放大电路利用DAC0830内部精密光刻R-2R电阻网络125]构成放 大器0P37的输入和反馈电阻。DAC0830内部R一2R电阻网络如图4—14所示。由于DAC0830 采用高稳定度薄膜电阻构成R-2R反向梯形网络,并采用数字型N沟道电流控制开关控制 OUTI和oUT2管脚的电流输出,且满足:I”t=(V,o#R)?(D/2”),所以.程控电路的增益
A=—U0。以J.。一28/o=一256/D。增益可由程控数字量输入D(可取值范围为1~2L1)进行数字
调节,并扩大了增益范围。其中N为转换器位数,R为内部R一2R梯形网络电阻。程控电路 实际的增益值,通过后续处理电路中的比较器,基于比较状况由主控制器LPC2214给定。
加T2
oITTl Rib
图4—14 DAC0830内部结构图
第三级电压提升电路。信号经数字程控放大后,依然是交流信号,所以,为实现系统 数字信号处理,需要对调理后信号进行A/o转换。根据选用的MD转换器的电路设计要求, 对信号进行电压提升,设计的电压提升电路采用加法电路。设计电路如图4-15所示。
2l
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
图4—15电压提升电路
接收信号经过调理电路的三级处理,一般情况下能够满足模数转换的要求。为确保调 理后信号有较好的幅值特性,同时也信号电平范围在模数转换器的允许范围内,设计采用 LM393比较电路126’对调理后的信号电平进行预先测量。电压比较电路如图4—16所示。比较 电路,将调理后电压限定在可以接受的允许范围内,并为数字程控放大电路提供了放大倍 数控制的依据,同时也为在较接近接收信号前沿启动模数转换器提供了可行的时间参考。
图4—16电压比较电路
4.3.5
A/D转换电路
超声波接收信号的数字化处理由ARM芯片LPC2214完成,而实现接收信息的量化,需 要进行模数转换。
南京信息T程大学硕士论文
基于ARM的时差法超声波流量计研制
考虑到数字信号处理中,保证信号的波形尽可能的完整,信号采样应达到足够的分辨 率;同时考虑到信号处理的时间限制、数据量的大小和A/O芯片的价格等要素,并结合 LPC2214的信息处理能力,设计采样率初定为IOMSPS,选用低功耗8位模数转换器
TLV5510p
71,以IOMSPS对接收信号进行量化。对于40kHz的超声接收信号,每个周期的量
化点数为:10M/40k=250。考虑到数据转换速率和产生数据量可能对系统造成的影响,系统 将转换后数据经16384x9bit的FIFO IDT7206L35缓冲¨”后再交给LPC2214,以降低对主 控制芯片的实时性要求。采用16K存储单元的FIFO,一次至少可以暂存64个周期的数据, 能够满足系统要求。为防止园A/D转换器转换速率与LPC2214的读外部数据速率存在差异 可能造成的数据丢失或混叠,保证转换后数据传输的正确性,此部分需要A/D转换时钟和 FIFO写时钟严格同步。电路设计由LPC2214统一控制,TLV5510和IDT7206L35的电路连 接如图4-17所示。
图4—17 A/D与FIFO接口电路
为实现将数据精确的从A/D时钟域同步到主控制器LPC2214的时钟域,满足TLV5510 转换的数据实时接收的需要,并实现完整且及时的读取已转换数据。设计将IDT7206的写面 控制端与TLV5510转换时钟CLK采用同频时钟,并利用IDT7206丰富的状态标识(空EF、 满FF、半满HF),在一次数据转换结束后以中断方式通知主控制器LPC2214进行读取数据, 实现IDT7206到LPC2214的数据传输同步。考虑到TLV5510输入输出存在约4个时钟周期 的延迟,所以在从FIFO中读取转换数据时应舍去前4个无效数据,以实现精确定位采集数 据的开始和结束点。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
4.4系统外围电路设计
4.4.1人机接口
系统采用矩阵式键盘和LCD显示实现人机交互。用户通过键盘对完成流量计测量参数 设置和相关的系统操作与控制。设计采用具有12C总线接口的ZLG7290进行键盘扫描,该
芯片采用3.3V电源供电㈣。
设计将ZLG7290中断输出信号与LPC2214的外部中断引脚E1NT3相连,当有按键按 下时,ZLG7290通过中断通知主芯片。芯片复位引脚RES与系统的复位信号直接相连,即 在系统上电复位或手动复位时,ZLG729也不同时复位。按键信息使用12c接口与微控制器 LPC2214进行交互。键盘电路设如图4—18所示。
图4—18系统键盘电路
系统信息显示采用点阵图形液晶模块TG240128实现。液晶显示模块(LCM)的逻辑 电平与ARM系统的+3.3v电平相符,所以无需进行电平变换p”I。考虑到显示模块工作电 源是+5V而LPC2214是十3.3V系统,所以在总线上串接470欧姆的保护电阻进行连接。模 块没有地址总线,其显示地址和显示数据均通过DB0~DB7口实现,LPC2214通过A1引脚 控制模块处理命令/数据(c/D)。此种连接方式LPC2214可以使用16位总线对图形液晶模 块进行操作。LCD模块的读写控制引脚由LPC2214直接控制给出。片选由nCS3和A23 译码产生,当nCS3=1,A23=I时,LCD被选中,并通过AI对命令和地址进行译码.所 以LCD数据地址为0x83800000,命令为0x83800002。模块的LED背光等由P1.22引脚通 过NPN型三极管进行控制,当控制引脚为高电平时,背光灯点亮,为低电平时,背光灯熄
24
南京信息工程大学硕士论文
基于AR/Vl的时差法超声波流量计研制
灭。可调电阻W50用来调节液晶显示的对比度。点阵图形液晶模块TG240128的数据传输、 命令控制,状态读取接口电路如图4—19所示。
图4—19
L∞显示接口电路
4.4.2
dTAG仿真调试接口
test action
JTAG(joint
group,联合测试行动小组)作为1EEE标准规范,主要用于芯
片内部测试及对系统进行仿真、调试。J1AG技术在芯片内部封装专门的测试电路TAP(Test
Access
Port,测试访问口),通过JTAG[1,,1-接专用测试工具可对芯片内部器件的运行状态
进行跟踪、测试和访问。JTAG仿真结果与真实的运行环境更为接近,调试程序在目标板上 执行,仿真更接近于目标硬件。JTAG连接方便,价格相对便宜,是~种简洁高效的开发调 试嵌入式系统的方法”“。各管脚功能说明如下表。
表4-1
JTAG管脚功能说明
引脚名称
13TRST TDI
输入/输出(I/O)
I l I I 0 O
PIN描述 JTAG异步复位输入 测试数据输入 测试模式选择 测试时钟 返回的测试时钟输出 测试数据输出
TMS
TCK RTCK TDO
设计采用ARM公司提出的标准20脚JTAG仿真调试接口。JTAG信号与LPC2214的 连接屯路如图4.20所示。TAG接口上的信号nTRST与LPC2214的P1.3l引脚连接。以便 控制LPC2214使得其内部的JTAG接口电路的复位。在RTCK引脚上接一个4.7k欧姆的下 拉电阻,使得系统复位后LPC2214内部JTAG接口使能,以便直接进行JTAG仿真调试【32】。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
:o o Pl 29 TCK
Pl 26丑TCK
152 7K
o,:,,¨"" ”
o¨¨M¨¨加
图4—20
JT^G接口电路
4.4.3温度测量和报警电路
温度测量电路如图4-21A所示,采用12c接口的温度传感器集成电路模块LM75,可测 量温度范围.55。C~125。C,测量精度为:0.5。C。LM75直接将测量的温度转换成了数 字量【3…,简化了系统控制器的信息处理。设计LM75工作电源电压为3.3V(满足电源电压 范围3.0v~5.5V),与复位控制芯片CATl025同挂到一条12c总线上。因为系统仅使用一 片LM75器件,所以将芯片的选择引脚A0~A2接地,其地址为0x90。由于LM75的O.s. 温度超限输出引脚是开漏输出,所以将该引脚通过10K的电阻上拉。 当检测温度超过由控制器对LM75设定的稳定范围时,超限输出O.S.输出为低电平, 中断触发微控制器进行温度超限报警。报警电路采用PNP三极管进行驱动,电路如图4.2l
B所示。当报警控制信号PWF为低电平时,三极管导通,蜂鸣器蜂鸣:当输出为高电平时,
三极管截止,蜂呜器停止蜂鸣。此种连接方式,由主控制器通过软件编程判别、控制报警 蜂鸣器的开和关,软件控制方式灵活方便。
^
B
图4—2l温度测量和报警电路
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
4.4.4串行通信接口
系统设计了通信接口电路,方便与上位机或其他设备进行信息交换。LPC2214包含2 个UART(UniversalAsynchronousReceiver andTransmiaer,通用异步收发器)。UARTl包含 完全的调制解调器握手接口,UART0只有发送和接收数据线。它们都内置波特率发生器, 包含16字节收发FIFO,接收器FIFO触发点可为1,4,8和14字节,寄存器符合16C550 工业标准。设计选用UART0接口作为系统的串行通信接口。
VDD3 3
/o l
O—
O
书翟■
C1+ C1. -72+
C2.
VCC V{
V. GND T儿N
生(k::
2
l
o
1u厂]
0
o_ o
8
。镏州离
图4—22
;,
10 9
l专
110UT R1nq
R10Ⅲ
12IN
髓0UT
7P0j0
P01
TxD0 RxDO
\O-
U冉R1D|=f
R2砒船0Ⅵ l她X232
RS232电平转换电路
串行通信采用RS232-c标准,美国电子工业协会(ElectronicIndustriesAssociation,HA) 把RS232-C定义为:“在数据终端设备和数据通讯设备之间使用串行二进制数据交换的接 口”。RS232.C标准是一种硬件协议,用于连接DTE(Data 和DCE(Data
Communications Terminal
Equipment,数据终端设备)
Equipment,数据通信设备)两种设备。协议采用的是负逻辑
电平方式,-5v~.15V对应逻辑…1,+5V~+15V对应逻辑“0”。而对应3.3V的LPC2214
系统其接口符合L、,1YrL标准:逻辑“l”对应2v~3.3V,逻辑…0’对应0v~O.4V。所
以使用MAX232进行RS232电平转换[34]0RS232,c标准定义了9针和25针两种D型插头, 本系统采用的是较常用的9针插头,方便以后与上位机通信。由于LPC2214对UART0仅 提供了收发数据线,所以设计只需要连接RXD、TXD和GND到输出口,简化了电路设计。 电路连接如图4.22所示。
4.4.5以太网接口
网络接口用于设计时的程序调试下载及数据通信。由于LPC2214没有集成片内以太网 通信接口,选用台湾DAVICOM公司的低压+3.3v供电以太网接口芯片DM9000A,它支持
MII Interface,IEEES02.3u/x,10/100 PHY’8/16接El,支持Auto MDI—X等功能,内嵌16KB
SRAM用于收,发缓冲㈨。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
图4—23网络接口电路
网络接口电路设计如图4.23所示,DM9000A的数据线SD0~SDl5与系统数据总线直 接相连,读写控制信号分别与LPC2214的nOE和aWE引脚连接,片选端nCS NET由nCS3 引脚和A22经译码给出,片选地址为0x83400000。EECS接低电平,设置数据总线宽度为 16bit。数据命令选择引脚由A1控制,当AI为高电平时访问数据端口,为低电平时为内部 寄存器地址输入口。中断信号INT连接控制器外部中断3输入引脚PO.20。TXO+,TXO-, RxI+,RXI.数据线通过HR901170A连至Iu45以太网接口。 4.4.6
USB接口
USB总线用于USB设备与主机之间高速、可靠数据传输。USB支持的数据传速率有 低速1.5Mbps,全速12Mbps,高速480Mbps。系统集成了USB接口以满足大批量数据传 输的新要求,如:数据存储、统计、数据汇总、数据信息打印等。
图4—24 USB接口电路
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
系统设计采用带并行总线的接口芯片PDIUSBDl2,设计系统为USB设备。电路连接 如图4.24所示。芯片PDIUSBDl2的片选信号nCS U由LPC2214的nCS2控制给出。命令 数据切换控制引脚ADO由LPC2214的地址线A0控制,所以接口的数据地址为0x82000000, 命令地址为0x82000001。当LPC2214的A0为0时,总线D0~D7上为数据,当A0引脚 输出I时,总线上为命令。
4.5硬件抗干扰设计
由于系统中包含数字电路和模拟电路,进行PCB设计时应注意电路间的抗干扰处理, 降低器件间的电磁干扰。为保证系统能够长期稳定的运行,根据系统中可能出现的各种干 扰,设计时主要从以下几个方面增强系统抗干扰措施。 1.模块化设计 将模拟电路和数字电路在电路板中划分为不同的两个区域。数字器件和模拟器件,数 字信号线和模拟信号线,分开布放。系统中,尽可能的将存储器等远离模拟器件。品振电 路尽量和芯片器件靠近,降低晶振可能产生的影响。对于未使用的易受干扰的引脚,采用 上拉或下拉处理,以保证系统的状态稳定,默认为输入的引脚拉高或拉低,以降低功耗, 默认是输出的引脚,可悬空。 2.电源抗干扰设计 电源滤波和退耦是电源抗干扰的主要措施。电源稳压单元电路中采用大容量电解电容 减少高频干扰进入电源系统,同时为避免数字电路和模拟电路使用同一电源,采用电感将 模拟电源和数字电源相互隔离,降低数字电路高频开关噪声通过电源对模拟电路的影响。 3.地线抗干扰 为了降低系统中多种地线(模拟地,信号地,电源地,数字地)问的干扰,采用模块 分区“一点接地”处理原则,不同种类的地线自成体系.然后在电源的输入处一点接地。 4.配置去耦电容 系统中高频芯片的电源输入端引入去高频电容。电源和地,在电源和地之间分布合理 的电容,滤除开关噪声等干扰,在电源端引入大容量电解电容去低频。 5.重要信号线的特殊处理 电源线和地线加粗处理降低电路板走线参数等的影响。对重要的调理信号线和模数转 换、FIFO电路实施地线包围措施。 此外,为适应系统小尺寸的需要,大多数芯片采用贴片式封装,布线采用最短路径优 先规则,手动和自动布线相结合方式。
南京信息工程大学硕士论文
基于ARM的时差法超声皱流量计研制
第五章系统软件设计
软件是系统的灵魂,系统功能依靠软件控制实现。系统软件建立在硬件基础之上,且 与硬件电路紧密相连,所以,系统软件设计参照硬件电路采用模块划分的方法实现。ARM 微控制器功能的优势在于对操作系统的支持。系统软件设计建立在uClinux操作系统平台 上实现。
5.1软件总体方案
系统软件总体上可分为三大模块:超声波收发模块、通信模块、控制模块。超声波收 发模块主要完成信号的收发的控制。通信模块主要完成数据的通信交互和数据的转存,涉 及到通信接口芯片驱动编程和程序调用等。控制模块主要完成人机交互系统的实现、各硬 件模块的调配控制、接收信号中第一周期波前沿的到达时间的判断等。其中接收波前沿的 准确判断相对比较困难,需要采用信号处理方法,通过数学工具在时域上对接收数据进行 处理。 可见,此种方案设计的系统是一个多任务实时系统,无论从系统实际的性能需要,还 是从SOC技术发展的主流来看,嵌入式操作系统的引入是必须的。这样可以直接提高系统 在多任务应用下的工作效率和响应速度pq。 由于基于ARM7TDMI核的微控制器LPC2214没有硬件MMU模块,而uClinux操作 系统针对嵌入式系统特点,在标准Linux基础上进行适当减裁形成的代码紧凑且高度优化 的LintLx,适用于没有MMC的CPU,且uCLinux完全符合GUN/GPL公约,代码开放, 沿袭了主流Linux的绝大部分特性和优点:稳定、良好的移植性、优秀的网络功能、完备 的对文件系统的支持以及标准丰富的API等p”。
5.2
LPC2214启动代码设计
LPC2214中多数硬件功能模块可软件编程配置,通过软件设置其需要的工作状态。因
此在微控制器进入操作系统控制之前,需要通过直接面向微控制器内核和硬件控制器的启 动代码完成对系统的初始化p“。启动代码一般用汇编语言实现。包括:异常向量表定义、 堆栈初始化、系统变量初始化、中断系统初始化、I/O初始化、外围器件初始化、地址重映 射等操作。 同其它嵌入式系统类似.启动代码完成LPC2214器件的初始化后,便从汇编程序语言 跳转至C语言程序pw。而系统器件的控制,由高级语言实现。由于LPC2214支持异常向量
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
表重映射功能,所以,要设置外部硬件BOOTl:0引脚和存储器映射寄存器MEMMAP控 制中断向量表的来源,实现不同操作模式下依照应用需要使用中断,且无需考虑中断处理 代码空间的边界等。芯片LPC2214上电复位,默认MEMMAP=0,运行片内固化的BOOT
程序,BOOT程序根据系统状态设置MEMMAP值进行中断向量地址映射,并跳转到中断
向量表复位入口地址0x00000000,然后进入启动代码。LPC2214典型的启动代码流程如图 5.1所示。
图5-1
LPC2214启动代i马路程
(1)中断异常向量表定义 异常向量表定义了LPC2214中每个异常事件和相应的处理程序之间的对应关系。当异 常发生时,硬件强制PC指针指向向量表中相应的异常,以便实现异常处理。LPC2214中 断向量表位于从地址0开始的连续8*4字节的存储空间,每个异常占用1个字(32bit),也 就是4字节的存储空间,共可定义7种异常,其中1个字用于作为BOOT程序判断用户程 序是否有效的标志。即当向量标志所有数据32位累加和为0时,用户程序有效。所以在7 种异常定义好后,通过查看编译后的向量表存储空间中所有32位命令控制字,计算并设置 好标志字,芯片复位后才能脱机运行用户程序。 (2)初始化外部总线控制器 根据系统使用的LPC22 14片内外设和管脚连接形式,设置管脚的连接控制方式。外部 总线控制器的初始化.完成对外部存储器组控制的设置。其中包括选用的存储芯片的位宽, 读写访问时序等。由于一般系统的运行速度瓶颈在于对存储器的访问,所以存储器访问时 序设置关系到整个系统的性能和稳定性。按照16bit系统的位宽,设置存储器组控制寄存器 的总线线宽度控制位MW=01,此时地址线A0可用作非地址线。 (3)初始化各模式下的堆栈空间 LPC2214支持7种运行模式,可以很好的支持操作系统并提高工作效率。除用户模式 外的其他六种特权模式都有独立的sP(堆栈指针寄存器)。因此,启动程序需要对用到各种
模式分配堆栈空间,并赋予sP一定的初始地址值。堆栈空间分配的实现方法是:由系统复
南京信息工程夫学硕士论文
基于ARM的时差法超声波流量计研制
位后默认工作的管理模式.改变处理器程序状态寄存器中的模式位,切换到其他五种异常
模式,并对sP赋值。因为User模式和系统模式有相同的sP,且User模式不能直接操作 CPSR,所以,用户模式的堆栈空间,可在系统模式下进行分配。 (4)初始化各部分的时钟 LPC2214内核可通过内部锁相环(PLL)将外部晶振输入倍频到更高的频率下工作,而片 内外设也可通过设置VPB分频器,工作在相对较低的频率上。所以,应当根据设计需要, 初始化系统和外设时钟。因为系统采用晶振Fosc 11.0592MHz,系统需要的内核频率Fcelk
=4*Fosc,锁相环CCO频率Fceo=4*Fcclk,外设频率Fpclk=Fcclk/4,所以设置VPB分 频值为0,PLL分频值M=Fosc/Fcclk=-4,倍频值P=Feco/(Fcclk*2户2,设置 PLLCFG=(M-1)l(P<<5)-0x44。 (5)初始化向量中断处理函数 LPC2214片内外设可以产生向量中断,启动代码为运用中断方式发生的处理器中断事 件,就需要对向量中断的优先级、中断向量号、中断函数的入口地址、中断事件的控制等 进行初始化。 (6)跳转C主函数 完成系统初始化工作后,设置好由汇编程序跳转到C语言函数的寄存器,通过汇编跳 转就可进入C主函数程序。进入主程序后,便可咀采用较高级的C语言进行模块化应用程 序设计。
’
5.3
uCLinux操作系统移植
操作系统移植就是根据硬件,对操作系统内核和支持模块进行剪裁,定制出能够按照设
计要求运行于嵌入式硬件之上精简操作系统。移植操作系统通常需要经历下列过程:建立 交叉编译环境,为定制移植系统创建好软硬件环境;通过交叉编译工具在宿主机按照需要 对内核裁剪、初始化设置、设备驱动程序的设置、运行库设置等一系列步聚来完成系统定 制【帅】;对移植内核进行加载。对基于ARM的uClinux操作系统平台构建过程中的4个关 键问题说明如下:
5.3.1建立宿主机交叉编译环境
建立交叉编译环境的主要原因在于,大多数嵌入式系统没有足够的硬件资源供编译器 完成程序设计过程中的编译调试等,因而,嵌入式系统的编译工程只好设在高性能的主机 (宿主机)上完成。构建交叉编译环境,就是在运行Linux操作系统的PC机上创建适用于 嵌入式系统软件开发的交叉编译工具环境。Linux F的交叉编译环境主要包括针对目标系统 的编译器gee;调试工具binutils;标准c库glibc和Iinux内核头文件几个部分,用于完成 编译uClimLX移植内核和编译生成可运行在目标系统(LPC2214)上的程序。
南京信息工程大学硕士论文
基于ARM的时差洼超声波流量计研制
uClinux的交叉编译器有两种工具链(toolchain卜一嵌入式系统开发过程中用来编译系
统内核以及应用程序的工具集[411:一种用于编译内核以生成固定位置的可执行映像,另一 个用于编译用户态的程序以生成位置无关可执行代码(PIC,Position Independent Code)。由于 嵌入式系统中,uClinux支持的可执行的文件格式为flat binary格式,所以需要工具软件将 编译生产的可执行文件转换成为flat binary格式。 实现方法:环境构建需要从自由软件组织或其它网络共享资源下载交叉编译器软件包
arm—elf-gcc-xxx.tar.gz、调试工具arm-elf-gdb—x“.rpm和am-elf-binutils-xxx.rpm(包含
assembler、linker和对目标文件进行转换等操作的应用程序)等开源开发工具软件。复制 到宿主机并解压安装,设置环境变量等,建立宿主机编译和调试环境。
5.3.2定制内核
uClinux内核的移植按照对所移植处理器的支持程度不同,大致可以分为3个层次14”。 结构层次的移植、平台层次的移植和板级移植。对已经支持的硬件架构,移植主要考虑修 改与硬件开发平台相关的内存类型和大小、外围设备的配置等具体参数。 根据系统电路和配置需要,选用系统源代码文件包uClinux.dist.20040408.tar.gz进行设 定。内核配置有三种命令配置方式,它们的配置效果是一致,它们是make eonfig.make
menuconfig,make
xconfig,分别对应于命令行界面、文本菜单界面和窗口图形界面。以文
本菜单界面配置方式为例,将uClinux源码包解压到/usr/src/目录下,从控制台进入新生成 目录uClinux.dist,正确配置Makefile文件后,从提示符方式下进入该目录,输入make menuconfig命令,系统弹出文本菜单。根据项目要求对ARM厂商、内核及其版本、支持 的函数库和支持的用户程序等定制。 需要特别说明的是在内核配置(Cmtomize
Kernel
Settings)中要完成包括系统类型、
网络驱动、串口驱动、内存管理、块设备管理、字符设备的管理、文件系统、USB支持等 主要选项设置。本项目需要选定支持的网络功能。 在用户程序配置中,主要完成包括一些与系统核心相关程序文件、库函数、文件系统 应用程序,网络应用程序、一些工具函数等的配置。 然后依次输入命令: make dep:建立源代码文件的依赖关系:
make
rotors:生产USER MODE的工具集;
make image:生成文件romfs.o: make:完成内核编译。 解决配置中可能存在的问题,很多时候需要重复上述步骤,以使定制的内核最终能够 达到预期目标。完成内核编译后,在/usr/src/uClinux-disVimage目录中便生成移植内核代码 和文件系统的目标文件image.bin,文件系统的映像文件romfsimg:在 /usr/src/uClinux-disVlinux.xxx目录中生成已编译的内核文件linux文件为elf格式。将生成
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
的内核文件linux利用工具软件arra-elf-objcopy转换为嵌入式系统可执行的bin格式文件 linux.bin,至此uClinux可移植内核定制完成。
5.3.3根(root)文件系统制作
文件是操作系统最基本的资源,是uClmlu‘进行操作单元。而嵌入式系统中定制的移 植内核默认生成不支持动态擦写保存的romfs文件系统。所以,为实现数据的动态擦写和 保存,采用从ranl中划分出一块内存虚拟成“硬盘”(通常称为ramdisk设备,设备文件为 /dev/ramO)。root文件系统就是将ramdisk作为一种设备挂载(mount)到内核上。 实现步骤: (1)创建bs*eount字节的块设备文件:
dd if=/dev/zero of=ram.img bs=1024 count=-800
(2)格式化块设备:
mke2fs—m0一F ram.img
(3)按照相同的目录结构将romfs.img中的必须文件复制到ram.img中。 其中ramdisk映象文件的大小可依据移植目标系统的特性确定。
5.3.4系统加载
嵌入式系统上uClinux内核的运行有RAM加载和Flash上直接运行两种方式。RAM 加载方式是把内核压缩文件存放到Flash上,系统启动时将压缩内核解压到RAM中然后执 行;Flash运行方式是将内核的可执行映像文件烧制到flash上,系统启动时直接在Flash 上某个地址开始逐句执行。无论何种运行模式,系统内核的加载需要在一个叫做Bootloader 的程序来引导。项目通过Bootloader程序,实现启动LPC2214的及内核引导和接收宿主机 数据文件的写入。 解决了以上问题,将定制好的内核和虚拟根文件系统下载到设计系统的Flash存储空 间中,便建立好了ARM嵌入式uClinux开发平台,为后续的程序设计开发做好基础。
5.4系统程序设计
系统软件由超声波收发模块、通信模块、控制模块三大功能模块组成。整个系统是在 控制模块的监控卜,运行的,超声波收发和通信模块可以看作系统完成特殊功能的系统应用, 属于应用程序。控制模块管理系统的全部资源,协调各部分软硬件有序工作,是系统程序 的主线。主要任务包括命令识别、数据显示、自我诊断等。 系统控制模块的流程如图5-2所示。系统上电复位初始化完成后,设置好中断优先级, 便进入控制模块。控制模块实质是一个超级循环,当外部控制事件发生时,以中断方式进 行相应事件处理。外部控制事件包括:键盘事件、数据传输、流量测量等。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
图5-2控制模块流程圈
鉴于超声波收发模块对时间的严格要求,轮询方法控制会造成大量的ARM处理器资 源浪费,所以采用底层的驱动程序直接触发硬件时钟方式,完成对超声收发的操控。对于 系统中通信接口、温度测量、数据存储、按键、显示等单元的管理,采用动态驱动模块加 载方式在需要时才进行加载。
5.4.1驱动程序原理
设各驱动程序是操作系统内核和外部设备之间的接口H3],是可动态加载或静态编译到 内核中的介于底层硬件与上层应用程序之间的软件模块,是一组预先定义好的标准接口下 针对特定硬件实现特定功能的软件模操作。uClinux中以文件的形式管理设备,系统操作硬
件就像操作普通文件一样对设各文件进行操作。驱动程序是众多类型模块中的一种,它为
上层应用程序屏蔽了硬件的细节。用户应用程序可以通过一组标准化的系统调用获得与特 定驱动程序无关的驱动程序提供的各种硬件操作功能,实现对硬件的操作和管理。 用户应用程序能够通过驱动程序对外部设备进行控制操作所需要具备一定的条件,以 动态加载方式对GPIO口驱动控制为例,总结如下: (1)构建相应的驱动模块gpio.o 此处将GPIO驱动模块的文件命名为gpio.o;编写驱动模块程序时,需包含 qinux/kemel.h>和<l Jnux/module-b>头文件。模块至少要实现两个函数: 成将模块注册到系统内核:
module module
jI】ito完
exit()实现将模块从内核中注销。对于字符驱动程序的
注册是向系统chrdevs数组中相应主设备号下标的元素位置插入被注册驱动程序的名字和 设备操作结构fileoperations的指针。字符设备驱动程序的注册由函数int
register chrdev
(unsignedintmajor,const char+nRme,structfiltoperations+fops)实现,设各注销则通过函数
int BRregister im gisnu(ved hc_ name) denmajor,constrchar 。现实
+
uClinux系统将驱动程序中对硬件设备的操作函数如常用操作open()、readO、write()、 ioctlO、reieaseO等封装在file
类型的数据结构中,并通过虚拟文件系统.operations(VFS)
提供给用户统一接口。用户根据需要完成对相关操作函数的定义后,便可方便的在应用程
南京信息工程大学硕士论文
基于AR/vl的时差法超声波流量计研制
序中通过统一接口的系统调用实现对相应设备的控制和操作。 (2)创建GPIO设备所对应的设备节点文件 由于uClinux系统对于设备的管理,采用设备节点文件的形式来完成的,所以,在完
成设备的驱动程序设计后,需要建立相应设备的节点文件,这样操作系统对该设备的控制
就可以通过对节点文件的操作来完成。 创建设备节点文件命令如下:
mknod/dev/P0
c
126 0
其中c代表字符设备,126为默认的主设备号,此处的主设备号必须与定义内核模块 时注册和注销函数中的主设备号相同,0为次设备号。 (3)驱动程序模块加载到内核 要实现对设备的操作,完成上述步骤后,只要将设备驱动加载到内核,应用程序便可 对设备进行访问控制。加载驱动程序模块到内核的方法,可以在系统启动时加载,也可在 系统启动后.手动动态加载。手动加载命令如下:
insmod gpio
执行此命令,系统调用驱动模块中的module init0将模块加载到操作系统内核,即注 册驱动程序,并处理注册过程中可能产生的错误。 完成以上过程后,用户应用程序就可通过标准系统调用控制和操纵硬件设备。完成控 制操作后,如若不再需要该模块,可以通过rmmod gpio命令,通知系统内核调用
module
exitO卸载GPIO设备。
微控制器实现多任务功能的重要方式是支持中断。采用驱动编程的好处之一就是可以 在内核空间使用系统中断。使用中断的设备驱动程序在使用中断之前必须预先向系统申请 中断号,登记中断处理程序,以便在指定中断到来时,能够实现特定的服务(1SR)。 在驱动程序中,通过调用request_irq()函数,将中断号与特定中断服务例程绑定起来。 驱动程序中申请和释放中断号的标准函数定义为:
#include<linux/sched.h’
申请中断号:
int
request_irq(unsigned
int irq, irq,void dev_id,struet pt_regs+regs),
void(+handler)(int
unsigned long flags,
const char+device_name,
void+dev_id);
释放中断号:
void
free_irq(unsigned
int
irq,void+dev_id);
其中,handler指向驱动程序提供的中断服务例程,irq则是请求与中断服务例程绑定
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
的中断号。一旦申请成功,中断号则为注册的中断服务例程独占,除非使用共享中断。中 断处理程序在中断期间运行。
5.4.2超声波收发程序设计
系统中超声波收发控制的驱动程序通过一个字符型设备实现。超声波收发控制的实质 是:主控制器LPC2214通过控制其内部时钟Timel发出频率fs=40kHz的周期脉冲进行信 号发射,而超声波信号的接收,通过控制用于接收控制的GPIO管脚进行输出电平切换。 与通常字符设备驱动程序不同之处是,为避免因引入操作系统而可能产生的对硬件操作的 延迟,提高系统时间精确度,在启动发送的同时启动用于信号控制的PWM时钟,在PWM 定时匹配时,通过匹配控制改变匹配引脚的输出实现对接收电路进行信号接收控制。 超声波收发驱动程序模块中,主要完成对定时器和PWM设备的初始化及其操作控制
等函数。对于PWM设备同其他块设备驱动程序一样,首先需要实现PWM初始化pwm_init0
和撤销pwm clean()以便在模块module
module
initO时加载GPIO设备到内核和在模块退出
exit()时卸载驱动。实现设备打开和关闭的接口函数open pwm0和release pwmO
及实现对PWM进行控制操作的ioctl pwm0函数,同时还需要实现负责读取高速A他转换 数据的中断服务例程。 驱动程序对PWM的模式设置、周期设置、占空比设置、输出使能、禁止使能都通过
ioetl
件linurdioctl.h,命令宏定义的实质是通过宏IO(type,rff)建立命令号。够pe为设备在驱动 程序中的魔数(设定值可参考linux/Documentation/ioctl-number.txt),它是8位宽
(IOC TYPEBITS)数值,rir为命令的顺序号,它是8位宽(IOC NRBITS)数值。命令定义
完成后,依据不同的命令字所对应的不同操作,在ioctl pwm()函数中通过switch-case语句
对不同命令调用头文件中io.h的命令宏outl(a,p)等,实现对PWM相应寄存器完成操作等 处理。由于系统采用定时器产生发射周期脉冲,所以在打开PWM设备操作中也对定时器 进行初始化。 因为系统外设频率F口clk等于系统晶振频率Fose=11.0592MHz,采用Timel实现占空 比50%的40kHz的超声波发射脉冲,当设定定时器Timel预分频值TIPR=0x00时,设置 定时匹配寄存器T1MRl=Fpclk/2/40000/(T1PR+I)=Ox8A,匹配寄存器T1EMR=0x80,实现 当计时器TC与匹配寄存器TIMRI匹配后,匹配通道MATl.0对应引脚Po.12输出翻转(默 认输出为低),T1TCR=0x01启动定时器可得到40kHz的脉冲。对于发射脉冲信号的控制采 用PWM4实现,当设置预分频值寄存器PWMPR=0x00时,设置PWM4的时钟周期为N(主 控制器依据比较器测量的波峰时间给定)个时钟周期,则时钟周期控制寄存器 PWMMR0=N*Fpclk/40000/(PWMPR+I)。为实现每次超声波发射时产生五个周期脉冲信号, 满足精确控制A/D转换器的启动与停止.降低信号接收的时间偏差,信号控制结合PWM5 和PWM2实现。设置PWM4的边沿控制比数值PWMMR4=5+Fpclk/40000/(PWMPR+1)
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
=0x566(单边沿时,起始输出为高电平),设置PWM5的匹配比较寄存器PWMMR5= PWMMR4+DELAY CYCLE.设置PWM2的匹配比较寄存器PWMMR2= PWMMRS+ACQ CYCLE,在PWM4匹配时,脉宽调制器(76引脚)PO.8输出低电平,信 号停止发射:在PWM5匹配时,脉宽调制器(4引脚)P0.21输出低电平,启动A/D转换; 在PWM2匹配时,脉宽调制器69引脚Po.7输出翻转与PWM5相或控制A/D停止转换并 产生中断,中断服务程序将数据交由用户程序完成处理后,一路信号的一个收发周期完成。 其中一路信号的收发控制时序如图5.3所示。一路信号接收完成后,切换到另一路采用 PWM6控制信号的发射周期,PWM5和PWM2进行相同的控制步骤完成反向的信号接收。 中断服务程序向系统申请数据交换区,并将外部FIFO硬件缓冲中的转换数据读取到 交换区。转换数据存储到系统交换区后,由系统进行数据处理。应用程序通过读交换区状 态命令调用ioctl0系统可以获得数据区状态,并可将操作后的状态改变回写。需要注意的 是,为了避免出现中断例程与用户程序同时对缓冲区状态进行修改而可能产生的问题,对 于交换区状态的操作在驱动程序中使用了原子指令方式实现。
TIMEI
nnnnn
nn…肌…..眦.…:nn n…..珊….肌…
n nn n
{
ird自j^/D
PWM4I
……-I
i自珈/D
……?
丽
PWM5 1
…… 产盥舡————; ……产昱筮灶———j 。ⅡBLAY—CYCL纠———————一 。DELAY_CYCLE_L——————一 =竺!!!!型…… =兰竺g……
——一个收发周期‘“””“卜—;;!ii;磊i1
产生中断
i
圈5-3一路收发控制时序
超声波收发程序的工作原理是:用户收发控制程序首先调用GPl0驱动模块函数open 打开用于收发控制的PWM设备节点文件,open操作的实质是初始化定时器,向系统申请 内存区、申请中断号等资源。设备硬件电路和内部定时器初始化等准备工作完成后,用户 程序在需要进行收发控制的时刻,通过ioctl0命令启动内部定时器发射周期脉冲,同时PWM 控制管脚启动控制,当定时时间到后,PWM根据设定的匹配动作产生定时匹配,完成超声 波信号的收发控制。一次收发控制结束后,PWM触发系统中断。中断服务程序将外部FIFO 硬件中的数据读取到交换区,然后中断返回。用户测时程序,通过循环检测交换区中数据 的状态,确认数据有效后,进行相应的数据滤波和传输时间处理完成流量测量。
5.4.3显示驱动程序设计
操作系统内棱中提供将显示设备抽象为帧缓冲区的FrameBuffer,为显示驱动开发提供 了系统接口。在图形模式下系统允许应用程序直接对显示缓冲区进行读写和I/O控制操作。 帧缓冲区是抽象化的硬件图像设备,系统将显示设备节点映射到虚拟地址空间后,用户程 序通过对设备节点文件进行读写操作,通过帧缓冲区就可以反映到LCD上。内核将帧缓冲 区FrameBuffer的所有操作都封装在结构体file_operations中。显示驱动模块程序设计主要
南京信息工程大学硕士论文
基于ARM的时差法超声波漉量计研制
完成结构体中相关操作函数的定义,将具体操作与系统硬件相关联,实现对LCD控制器的 寄存器操作。
static struct file_operations
fo_fops={ 严打开设备文件+/
owner:THIS_MODULE,
open: read: fb_open, fb_read,
write:tb_write, iocfl:lb ioetl, mmap: release: fb_mmap, fb close,
严设备文件控制操作+, 严关闭设备文件+,
); 结构体定义中,read/write实现对缓冲区的读,写操作;ioctl操作用于读取和设定显示参 数;mmap操作实现帧缓冲区的物理地址到用户空间的虚拟地址映射。完成空间映射后,
直接对缓冲区读写操作,就可以实现图形显示了。
5.4.4键盘与温度测量程序设计
键盘电路芯片和温度测量电路采用12C总线与LPC2214进行通信。它们属于同种设备, 具有相同的主设备号,采用同一驱动程序完成底层操作,设备的区分通过从设备号完成。 12C设备的驱动模块类似于基于GPl0口的PWM设各,完成模块中设备的注册注销和设备 文件的打开、关闭、读、写和ioctl()函数定义便可。只是温度的测量值需要微控制器LPC2214 主动读取,而键盘按键的则通过中断通知主控制器实现。
5.4.5串口通信中断服务程序设计
当控制模块接收到控制命令请求进行串口数据传输时,程序将跳转至串口通信中断服 务子程序,启动UART0通过MAX232芯片同外部进行数据交互。UART0的初始化设置为 8位数据位,1位停止位,无奇偶校验,通信波特率为115200。uClinux中通过对结构体struct termios的成员赋值完成对串口的设置。结构体的在头文件termios,h中定义如下:
street
termio{
unsigned short c_iflag: 严input mode flags+, poutput mode flags+/ 件control mode flags+, plocal mode flags 4i /串line discipline+, 严control characters+/
unsigned
unsigned
short c_oflag; short c_cflag;
unsigned short c_lflag; unsigned short unsigned short
c
line:
c_cc[Ncc];
); 对结构体的操作系统提供了方便的系统调用如获取串口属性tcgetattr(fd,&Opt);设置波 特率cfsetispeed(&Opt,B115200);p B115200为uClinux中的宏对应为115200Bps+,:
39
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
efsetospeed(&Opt,B115200);设置串口属性tesetattr(fd,TCANOW,&Opt)等。 串行通信接口UART0的数据传送和接收通过系统调用write(int
size_t fd,const void+bur,
count,loff_t+!』os)和read(ira fd,void幸bue
size_t
count,loff_t+f』os)实现。在串口的
驱动模块中完成这两种操作函数的定义。串行通信接口中断处理流程如图5-4所示。
图5-4
UARTO中断处理流程圈
5.4.6网络通信程序设计
网络数据传输采用面向连接的TCP通讯协议,以保证数据通信的质量。uClinux支持 TCP/IP协议且具有丰富的API,所以,网络设备的驱动编程实现也相对比较方便。网络设 备驱动模块编程同字符设备类似,只是操作函数封装在net device结构中,设备注册时采 用系统函数register ,在注销设各时调用 unregister_netdevO 。基于 TCP 0vedten_络网的议协 通信程序由服务端和客户端两部分组成,服务端需要监听连接,在接收到客户端请求并与 之建立连接后才可以进行数据通信服务;客户端需要主动请求连接服务器,也在连接成功 后才可进行通信服务。网络通信流程图如图5-5所示。
PC机客户端
图5-5
TCP网络通信流程图
薰一蒌
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
软件设计将系统在网络通信中的角色定义为服务端,当外部客户端有命令请求进行网 络数据传输时,系统进入网络传输服务子程序向客户端(PC机)传送采集数据信息。 5.4.7
USB通信程序设计
移植内核提供的USB core包含支持USB设备驱动程序的API和USB主机控制器驱动 程序,为USB驱动程序提供了访问和控制USB硬件的统一程序接口,因而方便了USB设 备的驱动程序的设计。在USB设备的驱动模块加载到内核时,通过系统调用
usb
registerdriver()将USB设备注册到USB core,当需要卸载USB设备时,调用
usb_deregister__driver()从内核中注销?
中断入口
图5-6 USB中断通信流程
系统设计的USB接口用作USB设备,其通信程序流程如图5-6所示,实现与USB主 机的信息交互,完成流量测量数据的传输和存储。
4l
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
第六章测时算法设计
接收超声脉冲信号是流量计获得流动信息的来源,超声信号的质量直接影响流量计性 能。视换能器为理想器件,不计换能器本身对信号的影响,但由于信号在传输过程中不可 避免的受到环境噪声、电路噪音、电源噪声等干扰,甚至严重时有效期望信号被湮没,所 以,接收信号中叠加有噪声,如若接收信号中噪声过强,会使得系统准确度的降低,传播 时间测量存在较大误差,流量测量受到影响且无法得到保证。 超声信号处理算法的是超声波流量计的核心。系统中采用的信号处理方法是:首先对 被噪声污染的接收信号进行滤波处理,将噪声影响最大可能的降低,然后,对滤波后的信 号进行特性分析,计算出超声波传输时间。其中,超声传输时间确定的方法是:通过阈值 对滤波处理的数字信号进行脉冲回波定位,当检测到信号幅值达到阈值电平时,跟踪其后 的第一个过零点,以此零电平交点为基准,进行检测。检测的过零位置可能有多个,通过 统计算法改善检测的性能,最终确定信号波的达到时刻。
6.1信号滤波
数字滤波器采用有限精度算法完成离散时间系统输入数字量到输出数字量的变换,实 现信号处理。具有高精度、高可靠性、灵活性大、便于集成等优点,随着科学技术的发展, 数字滤波技术在语言信号处理、图像信号处理、医学生物信号处理以及其他领域得到了越 来越广泛的应用。 数字滤波器分为无限长单位脉冲响应IIR滤波器和有限长单位脉冲响应FIR滤波器。 IIR滤波器可用较低的阶数获得高的选择性,所用的存贮单元少,经济而效率高;相同性能 指标的滤波器,FIR所要求的阶数比IIR高5~10倍,成本较高,信号延时也较大。 由于接收信号较弱及加法电压提升电路漂移引起的接收波形零位偏移,必须采取滤波
措施以减小噪声并滤除直流成分【4“。由于试验系统实际工作时接收信号是中心频率在 40kHz附近的窄频带信号。基于上述原因,系统算法采用IIR滤波器中的椭圆带通滤波器
对接收信号进行处理。 考虑到IIR滤波器存在非线性相位偏移。为消除非线性相位延迟,实现系统的零相位 滤波,可以采用FRR或RRF方法。FRR方法是:先将输入信号序列顺序滤波(rorward filter),然后将所得结果反转,反转后序列再次通过滤波器(reverse filter),所得结果 再次反转后得到输出(reverse output),此过程便可实现精确零相位滤波;RRF方法与FRR
方法类似,只是先反转信号序列反转,然后再进行类似处理。系统中采用FRR方法实现零
相位滤波。
42
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
6.1.1|IR滤波原理
N阶IIR型数字滤波器的传输z变换传递函数H(z)如式(6.1)。式中A(z)为滤波器
的分母多项式,召(=)为滤波器的分子多项式;使4(:。)=0的z,值称为滤波器的“极点”,
使B(0)=o的乙值称为‘‘零点”。由于传递函数中分母多项式爿(z)的存在,所以,需要
特别考虑系统稳定性问题,只有当极点都在Z平面的单位圆内部时,才能保证系统的稳定 性。
Ⅲ=筹篆杀等精2器
近特性电好。
睁”
IIR数字滤波器可以用图6—1所示的直接型结构实现“”。由其传递函数可知椭I虱滤波 器是一种存在零、极点型滤波器。它在通带和阻带都具有等波纹特性,因此通带、阻带逼
图6-1
IIR直接型结构
6.1.2滤波器性能分析
由于椭圆IIR滤波器是通过执行前向和时间反转处理运算来实现零相位滤波的,所以, 滤波器的阶次比由系数A和B描述的原滤波器的阶次要提高一倍。该滤波器与原滤波器相 比,具有两倍的通带波纹和最小阻带衰减。为实现在保证良好滤波效果的基础上,尽量减 少系统的数据运算量,滤波器的阶数应尽可能的不要太高。根据接收超声信号特征,设计
的发送超声信号频率为.f=40kHz,为实现较高精度的时间分辨率,对信号的采样频率为
IOMHz,首次滤波指标达到通频带为[20kUz,200kHz],设置通频带主要是考虑到常用的超 声波换能器的频率范围。阻带衰减70dB,通带纹波为0.01dB,用3阶椭圆带通滤波器。通 过计算可以得到滤波传递函数系数为:b=(0.0015,一0.0029,0.0012,0.0000,一0.0012, 0.0029,一0.0015),a=(1.0000,一6.6292,13.2230,一16.5922,11.7311,一4.4314,0,6987)。
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
滤波器的六个极点P=(0.9013+0.17421,0.9013—0.1742i,0.9969+0.0068i, 0,9969-0.0068j,0.9908,0.8421)均在z平面的单位圆内,滤波器是稳定的。滤波器的 频域特性如图6-2所示。
01 0 0e
、
●
0∞
\
一号:掣Ⅲ÷i
0叫 ?0∞
≮ !:\
0
I ‘j
、、~ P—’~
!D
鲁。 母
Ⅲ叫 _0∞ .0明
.01
l
-
Ⅵ
:
图6
2
IIR宽带通时滤波器频域特性
缩小通带宽度再次滤波,设置通频带[f一鲈。Z+△,],△厂=10kHz,所以系统的
实际通频带)b[30kHz,50kHz],阻带衰减70dB,通带纹波为0.OldB,用3阶的带通椭圆型 滤波器,得到传递函的系数:a=(1-0000,一3.1412,3.9924,一2.9962,1.6497,一0.5604, 0.0562),b=(0.1298,一0.0134,一0.3624,0.0000,0.3624,0.0134,一0.1298),滤波器极点P
=(0.0713+0.6485i,0.0713—0.6485i,0.9672+0.0677i,0.9672—0.0677i,0.9098,0.1545)
也均在z平面的单位圆内,滤波器是稳定的。滤波器的频域特性如图6—3所示。
¨
咖 l兰
Ⅲ
f
:
、
●
\
一、
i
;
f_.。
呲
Idb=斟叮々.占=堙罂l
。
菇:
j
\,.
’j‘-j一.,
…i一
j
}
夕
\乏
耋l
嘣
嘶 呲
圳
、l
_●●
’j
图6-3 IIR带通较窄时滤波器频域特性
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
数字滤波算法的效果,运用matlab数据处理工具得到处理处理后的波形如图6—4所示。 序列F为较宽带宽的滤波效果,由于此次滤波器带宽较宽,较好的显现了接收波形的轮廓, 使噪声干扰降低,提高了信号的信噪比,但仍然存在较大的纹波。序列L为再次滤波后的 数据。此次滤波后突出了接收波的振荡波形,但产生的振荡干扰了第一接收周期的判别。 此序列用于定位波形过零点。
6.2测时算法
滤波后.序列F突显了接收波的波形,但由于振荡,拓展的振荡波形难于判别起始周 期。序列L仍存在较大纹波噪声,小幅波形振荡较明显,难于判别信号的起始点。针对上
述两种滤波后生产序列的特点,系统采用的过零接收点的定位算法描述如下:
以接收波中最大值Am的1/2作为门限阈值,从序列L中搜索过闽值点,并把首个过 阈值点的周期为参考周期,在与参考周期相对应的序列F中,从闽值点向后1/2个周期向 后查找过零点z,以z点作为基准,然后,通过求算序列L与相应周期的序列F的方差比,
通过其比值来判断接收信号的起点。
搜索算法如下: (1)初始化标志位; (2)以0.5Aw的阈值在序列L中搜索参考周期,并在F序列中找到过零点z为准点; (3)在序列L中取基准点z的前、后各1/4个周期数据组成新的数据序列,并求其方差 值o-,2;同样方法,取F序列中相对应数据序列也求其方差值仃。2; (4)检验选取的两个数据序列段的方差比仃,2/仃,2,假定:口,2=盯,。,如果检验O-,2, 盯。2有明显的不等,则判定为当前检验周期不是接收波周期;如果判断两方差明显 相等,则判定当前检验周期是接收波周期: (5)检验对当前波的判定标志位是否被设置,未设置则置位标志位;已设置则转(6); (6)检测己设置的标志位和当前判定是否同性质,如果非同性质,转(7);同性质为非 接收波则z点后移~个周期,重复步骤(3),同性质为接收波则z点前移~个周期, 重复步骤(3); (7)检测当前判定波的性质,若判定认为是接收波,则实际接收波起点P应为z点前移 一个周期的过零点,如果判定认为是非接收波,则实际接收波的起点P应为z点; (8)对L序列在P所在的区域段进行内部插值,然后在精确定为晟终的接收波起始点S, 输出S点的时间,算法结束。
由统计学知:一般对于两个正态总体{~N∞,,J?),q~N扯:,口;)在未知均值未知
“及Ⅳ2。检验两个样本的方差是否相同,即检验Ho:仃L2=o-F2。当Ho成立时,利用统
计量F=群/簧~F(啊一1,%一1)可以进行F检验,对给定的检验水平a,可求得满足
45
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
P{F(碍一1,n2—1)≤^)=a/2,P{F(nl一1,nz一1)≥屯}=a/2的^和九,所以Il。的拒 绝域为:(0,^)u(t,4-00),接受域为:(^,t)[461。
基于上述统计学知识,可以对滤波后截取的数据序列进行方差比假设检验分析。对
10MSPS的采样数据,每个超声波信号周期有10W,==250个采集数据。采用99%置信度, 则有Fm.。。s(0.01)=1.52。因此,当计算得F=砰/霹<1.52时,假设成立,即为超声波的
接收波形。反之,踯/g>L 52时,判别为非接收波形。通过matlab对算法进行检验,
处理的输出结果如图6-4所示。
1∞
。
l~序列F
序列L .斗检测点
自
:
;
若 芭
甘_
譬
∞世岛 睁砖一
I
¥
l
.1∞
0 0?5 1 1 5 2 2.5 3
3.5
4
时阃Is)x10"‘ 图6-4滤波后的接收波波形图
由基准点z开始,通过对两数据序列中以基准参考点的半个周期数据进行方差比检验, 验证比较效果,可以提高波形起点的定位精度。上图中给出的是约10cm直径距离时测得的 数据,检查确定的起始点位置即传播时间为^,=2909,因A/D采样频率为10~ISPS,能够使 系统时间分辨率达到u 测得瞬时流量。
s级。同理,可求出相反方向上的超声传播时间t…通过流量公式,
6.3测量误差分析
时差法超声波流馒计是将被测流体的管壁材质的声速,管道的壁厚等作为已知条件, 通过检测超声波信号在流体中沿顺流方向和逆流方向的传播时间从而计算出流速和流量的 测量仪表.属于间接测量仪表。因此,系统测量误差,既包括所给定现场测量条件所引起
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
的系统测量的误差,也包括流量计自身的所产生的误差。 本系统采用的传播时间差法通过精确定位接收超声信号的起始点来测量超声波在被测
流体中传输的渡越时间,再由修正后的流速方程v,2言斋‘等计算流体流速,进而得到
流体的瞬时流量:
D:可.s:兰.竺:鱼!堡:.一At
。
K
4
4K sin0
T
式中:
cn——声楔中的超声声速; d——管道内径; K——波速分布修正系数; 日——超声波进入声楔的入射角; 出——流体中逆顺流超声传播时间之差;
T--流体中逆顺流超声传播时间之和。
等都会给流量测量引入误差: (1)声楔声速
由流量计算公式可知,上述参数及流体的流速分部实际状况、系统的硬件性能及延时
由于声楔中的声速是与环境相关的物理量,当声楔温度变化时其中传输的超声波的声 速也将随着有所变化,虽然比同条件下流体中的变化量要小。但在高精度流量测量,因此 种温度变化而产生的误差不可忽略时也要予以修正。 (2)管道内径 由流体流量计算公式可以看到,流量与管径的平方成正比,因此,在给定的内径如若 存在0.1%的误差时,将使流量的计算产生0.2%的误差。所以,在实际测量中,应采用精度 较高的仪器对管道进行测量,或将测量装置应尽可能的安装在标准的管道处进行测量,以 减小由于管道不规则等对流量测量的影响。 (3)波速分布 流体的状态对波速分布存在较大影响,根据流体力学原理,流体流速增大时,管壁对 流体的阻力加大,沿管径方向从管壁到管道中间的流体的流速差别会变大,因此,管道中 流速的分布越复杂,由流体动力学修正得到的流速与实际流速的差别也会加大。所以,流 体的状态对测量精度也存在较大影响。 (4)超声波在声楔中的入射角 原理式中的入射角是指换能器安装时对声楔的入射角,实际换能器的安装角度取决于 换能器的制造工艺,只能控制在一定的允许误差范围内。此外测量中需要一对换能器用于 收发,对每个换能器其安装角度偏差的大小、方向以及声阻抗也不尽相同。因此,要减小 因为安装的入射角产生的误差,需耍选用高性能的换能器并进行精确的安装。
47
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
(5)超声波的传输时间 时差法流量测量技术的关键是精确计算出超声波的传输时间。由上述分析可知,采用 方差比检验和内部插值方法,可以较好的定位计算出传输时间。但是,考虑到超声波信号
的接收发射等存在或多或少的电路延时和换能器电声转换延时,所以,还需要进行一定的
修正,以进一步减小误差。 系统硬件中系统晶振的频率抖动和漂移也是产生测量误差的一种因素。综上,在尽可 能降低人为因素对系统产生的误差影响前提下,提高时差法超声波流量测量精度的关键是 提高系统的时间检测能力。采样数据进行内部插值,可以进一步减小测时误差,更精确的 地定位波形起点,取得高测量分辨率。通过内部插值,结合方差比检验方法,能够在较短 时间内定位接收信号的起始点,缩短数据处理时间,并提高系统的测量精度。
48
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
第七章结束语
随着微电子技术、计算机技术和信息处理计算的高速发展,嵌入式系统得到了越来越 广泛的运用。ARM微控制器在智能仪器仪表开发和工业控制领域,以其高性能、低成本、 低功耗等优点在应用中得到广泛地认可。 基于嵌入式系统面向应用的特点,通过认真学习研究ARM微控制器的基本组成和工 作原理,并结合实际运用,对嵌入式平台的软硬件进行扩展。尝试将ARM新技术运用到 传统仪器仪表中,选择设计开发一种以ARM微控制器为主控制芯片的时差法超声波流量 计。 针对嵌入式系统和时差法超声波流量计的特点,主要完成了以下工作。 1.对时差法超声波流量计的测量的基本原理进行了理论分析,推导出改进的测量公 式;并给出了提高流量测量精度的修正方法。 2.对超声波换能器特点进行了分析,完成了以LPC2214微控制器为硬件核心的系统
电路设计,并在ARM硬件基础之上,移植了uClinux操作系统,构建了ARM--Linux嵌
入式系统开发平台。嵌入式uClinux为系统软件开发提供了丰富的软件资源,使系统能够 方便地实现多任务管理。同时,也使得系统软件的开发更具有灵活性和广阔的空间。 3.流量测量的数据处理部分,研究了超声波流量计的声时测量问题,给出了基于过零 点检测的方差比超声波初始回波的判定算法,系统中设计了温度测量电路,能够使系统灵 活地适应不断变化的环境。 当然,由于设计系统所涉及知识的广阔性和复杂性以及个人能力、时间有限,系统设 计是实验性样机,尚不具备根据温度、压力等要素对流量进行自动校正的能力。如若要进 一步完善和改进,完成完整产品,仍需要继续投入很多的工作。
49
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计珂f制
参考文献
纪纲.流量测量仪表应用技巧.北京:化学工业出版社,2003. 梁国伟,蔡昌武.流量测量技术及仪表.北京:机械工业出版社,2002. 胡天浩.浅谈超声波流量计【J】,油气井测试,2003,12【4):P1—3. 贾宝风,赵晋梅,史登跃.超声波技术在工业测量中的应用.中国仪器仪表.2003.p31.33. 祝海林.超声波流量测量新技术.工业仪表与自动化装置.1995,P12.14
蔡武昌,孙淮清,纪纲旃:量测量方法和仪表的选用,北京:化学工业出版社,2001,P163-166.
苏彦勋,李金海硫量计量.北京:中国计量出版社.1991.
张也影.流体力学.高等教育出版社.1986.
林建忠端动力学.杭州:浙江大学出版社,2000 Ⅲ团阱嗍嘲嘲叼嘲嘲Ⅲ 于明,范书瑞,曾祥骅编著.ARM9嵌入式系统设计与开发教程[M]一E京:电子工业出版
社,2006. 【11】 三恒星科技编著.ARM7易学通[M】.北京:人民邮电出版社,2006. [12】 [13】
PHILIPS Electronics.LPC2214,16/32bit ARM Microcontroller Data Sheet.2004.02. Texas Instruments Incorporation.LM2575 I-A SIMPLE STEP DOWN VOLTAGE REGULATOR 2005.
SWITCHING
【14】Texas
Instruments
Incorporation.TPS73HD318
DUAL-OUTPUT
LOW-DROPOUT
VOLTAGE PEGULATORS.1999.
[15]CATl025./带12C串行2kbit CMOS EEPROM和手动复位的监控电.周立功单片机发 展有限公司. 【16】SAMSUNG Electronics.K18641686C.4Mxl6
Random Access Memory.2005.01. bit Synchronous Burst Uni-Transistor
[17】Silicon
Storage Technology.SST39VFl60
x
IM(x16)bit
Multi?Purpose Flash Plus.2003.
[18】SAMSUNG Electronics.8M
16 Bit NAND Flash Memory
K9F2816QOC.2003.
【19]鲍建东.换能器的阻抗匹配设计[J】应用声学,1996,(03).
50
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
[20] 郭建中,林书玉,郭勇亮.压电换能器电端匹配电路的优化[J].测控技术,2004,(08). 【21】 Maxim
Integrated Products.MAX632.CMOS
Fixed]Adjustable
Output Step-Up Switching
Regulators.
[22】
同济大学声学研究室.超声工业测量技术.上海:上海人民出版社,1977.
Low-Noise LDO Regulator.January 2000.
【23】 Micrel Semiconductor.MIC5207-5.1 80mA [24】 [25】
DEVICE Corporation.OP37.Low Noise Precision Operational Amlifier Data Sheet. National Semiconductor Corporation.DAC0830.8-Bit Binary Mukiplying D/A Converter data sheet.2002.
【26】Texas [271
Instruments Incorporation.LM393 dual differenrial comparator data sheet.2004.
Texas Instruments Corporation,TLV55 10.8 Bit High soeed Analog-toDigital Converters Data Sheet.1994.
[28】Integrated
Device
Technology,Inc.IDT7206 CMOS
AsYNcHRONous 16384×9bit
FIFO.1996.
[291 ZLG7290,12c接口键盘及LED驱动芯片数据手册,广州周立功单片机发展有限公司. 【30】240X128点阵图形点阵液晶显示模块TG240128.深圳市欧普迪科技开发有限公司. [31]OPEN-JTAG开发小组.ARM JTAG调试原理TWENTYONE,OCT,2004 【32】周立功等编著.ARM嵌入式系统开发.北京:北京航空航天大学出版社,2004,12. [33】National Semiconductor.LM75.Digital
with Temperature Sensor and Thermal
WATCHDOG
Two—Wire
Interface data sheet.2004. RS一232 Drivers/Receivers. Processor
【34】Maxim Integrated Products.MAX232.Multicharmel [35]Davicom
Semiconductor Inc.DM9000A
Ethemet Controller with General
Interface.2005.
[36】潘锦平.软件系统开发技术,西安:电子科技大学出版社.2001.07.
【37]周立功.ARM微控制器基础与实践【M].北京:北京航空航天大学出版社,2003.
[38]田泽r嵌入式系统开发与应用,北京:北京航空航天大学出版社,2005.
[391周立功,张华等编著.N,X,浅{JJARM7[M].北京:北京航空航天大学出版社,2005.
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
【40】刘峥嵘,张智超所振山等编著嵌入式“nux应用开发详解一E京:机械工业出版社,2005.
【41】李善平等编著.Linux与嵌入式系统.北京:清华大学出版社,2003.
[42]李垣陵.两种嵌入式操作系统的比较[J】.电子产品世界,2002.(10):50--53. 【43]李远征,任传伦,杨义先.Pcl设各的DMA驱动程序设计[J】计算机工程与应用2003,39 (14):135~133. [44]Tang
Huiqiang,Huan Weiyi,LiPing,Ultrasonic wind velocity measurement based
Oll
DSP,
Journal of Southeast University.2005.03.
【45】王沫然编著.MATLAB与科学计算.北京:电子工业出版社.2004. 【46]苏均和主编.概率论与数理统计.1999.01.第1版.
南京信息工程大学硕士论文
基于ARM的时差法超声波流量计研制
攻读学位期间发表的学术论文
【1]魏守包,唐慧强.基于嵌入式ARM-uClinux的ZigBee网络设计.仪表技术与传感器
南京信息工程大学硕士论文
基于ARM的时差洼超声波流量计研制
致谢
首先,特别感谢我的指导老师唐慧强教授,在我攻读硕士的两年多生活、
学习和科研过程中给予的精心指导和关怀。我硕士论文的开题,系统设计,论 文撰写等都得到了导师的指导和帮助。导师严谨的治学态度、渊博的知识和敬 业精神使我受益匪浅,在他的培养下成长是我毕生的荣幸。导师不仅为我们创 造了良好的实验条件,且培养了我们团结互助的团队精神。在此谨向唐老师致
以最诚挚的敬意。
同时,感谢气象台的方忠进老师在生活上对我的无私关怀和照顾,在学习
上的支持和帮助。 其次,感谢智能仪器仪表实验室的所有师兄弟姐妹。在同他们的日常生活 和学习交流中,使我深受启发,学习到很多有益知识。 最后,感谢我的家人和朋友,感谢他们一直以来的支持、关爱和信任。 在本文完稿之际,向所有给予我帮助、关心和支持的老师、同学、朋友及 亲人表示深深的谢意。
基于ARM的时差法超声波流量计研制
作者: 学位授予单位: 魏守包 南京信息工程大学
相似文献(10条) 1.学位论文 钟连学 DN80型工业超声波燃气表的研制 2006
超声波流量测量技术是近几十年发展起来的一种新型的流量测量技术,它利用超声波在流体中传播时所载的流体流速信息来测量流体流量,具有非 接触、精度高、测量范围宽和维护方便等优点,特别适用于临时管道、大口径管道和危险性流体的流量测量。近年来,随着大规模集成电路与数字信号 处理技术的发展,新型探头材料与工艺的研究,声道配置及流体动力学的研究,超声波流量测量技术取得了长足的进步,显示了它强劲的技术优势,成 为一种重要的流量测量方法。本文详细介绍了超声波流量测量技术的基本原理,在借鉴和吸收国内外先进的超声波流量测量技术的基础上,设计出了基 于传播时间差法的系统方案,实现了系统硬件和系统软件的功能,并对仪表做了现场的测试。考虑到气体流量测量存在的难点,本文着重讨论和解决了 以下方面的问题。 提高系统的稳定性和可靠性的问题。一是采用了延迟窗口接收技术,以减小干扰脉冲对测量结果的影响;二是根据接收信号脉冲宽度的特点,采用 脉冲宽度检测电路来识别接收信号;三是用复杂可编程逻辑器件XilinxXC2C128CPLD对系统大部分的数字电路进行了集成化设计,达到了既简化电路设计 ,又提高了系统可靠性的目的。 提高系统的精度和测量范围的问题。一是设计出了匹配良好的发射和选频接收放大电路,提高了收发电路的工作效率和接收信号的信噪比;二是使 用程控放大来提高放大电路的动态范围,并结合特殊的管道反射聚焦的方式,以适应不同气体流速的需要;三是采用双门限比较法、高速数据采集和相 应的数字信号处理技术来减小噪声干扰和因接收信号幅度不同而引起相位误差;四是对流速修正系数进行了分析和研究。 低功耗的问题。本文从硬件和软件两个方面入手,硬件方面通过采用低功耗的器件和电路、较低的工作电压和合适的时钟频率等措施,软件方面通 过采用动态的电源管理、可变的瞬时流速采样周期和低功耗的操作模式等措施,有效地降低了系统的功耗。 现场测试表明,仪表功耗低,系统运行稳定,在较宽的测量范围内具有较好的测量精度。
2.期刊论文 刘晓宇.杨江.LIU Xiao-yu.YANG Jiang 时间比例放大技术在超声波流量计中的应用 -传感技术学报 2007,20(2)
利用超声波时差法测量小口径管道中的流体流速时,传播时间差很小,不易测量.针对这一难点,借鉴"游标卡尺"的测量思路,介绍了时间比例放大技术 ,提出了实用的微小时间差测量方法,对时间差先放大,后测量,且放大比例可以通过反馈自动调节.该方法具有结构简单,分辨率高等优点.
3.学位论文 闫菲 多脉冲时差法超声波流量计的设计与实现 2006
工业生产和科学研究过程中,流量测量必不可少,由于超声波流量计可以将超声换能器夹装在管道外面进行非接触测量,无需中断管道,设计和安 装方便,并且满足大部分工业生产的精度要求,近年来得到了广泛应用。 本设计采用了多脉冲时差法测量技术,增强了系统的抗干扰性,改善了测量效果。系统的硬件部分以MSP430F155为控制核心,选用了高精度时间数 字转换器TDC-GPII和复杂可编程逻辑器件ispLSI1032等芯片。充分发挥了ispLSI1032的在系统可编程性,设计了超声波退耦合脉冲定时器、抗干扰滤波 器、数字单稳态触发器等电路,实现了多脉冲的时间差测量,进一步提高了硬件抗干扰性,并且完成了系统时钟同步和电平转换的任务。 通过芯片内部的门电路传播时延实现系统传播时间的测量,可以达到较高的测量精度,与传统的通过高速数字计数器测时的方式相比,有很大的优 势,可以在较低的频率下完成电路的设计,避免了高频电路设计中所带来的更繁杂的电磁兼容等方面的问题。 软件设计是基于嵌入式实时操作系统SmallRTOS430的实现。SmallRTOS430是由μC/OS-Ⅱ和SmallRTOS51经过改写和移植而来,最大限度的减少了操 作系统本身的代码量和所需的内存空间。整个软件系统以任务为单位,任务的实现相互独立,简化了软件的开发过程,缩短了开发周期,增强了系统的 可靠性。 本文设计的时差法超声波流量计,采用了TDC-GPII测量传播时间差,保证了较高的测量精度;使用ispLSI1032完成了多脉冲情况下时间差的确定和 超声波退耦合脉冲定时器、抗干扰滤波器等硬件抗干扰电路,改善了超声波流量计的测量效果。
4.学位论文 杜海明 伪码相关时差法超声波气体流量计的研究 2007
超声波流量计作为一种非接触、易于安装维护的仪表在工业领域得到广泛的应用。在天然气计量领域,虽然孔板流量计仍是最主要的手段,但超声 波流量计具有无可动部件、无压损、测量精确度高等优点,它的潜力和后发优势是很明显的。随着相关标准的发布和实用问题的探索,超声波流量计一 定会在这一领域广泛推广应用。互相关时差法结合了传统时差法和相关法,继承了它们的优点,又克服了时差法触发时刻不容易确定、时间差难以直接 精确测量,相关法被测对象不确定性、易受驻波影响等缺点。 本文将伪随机码引入到互相关时差法的超声信号处理中来,它以其优良的双值自相关和周期性,可以实现对微小时间差的精确测量。对影响伪码相 关结果的重要参数,如:码元长度,采样频率,伪随机序列总长度,伪随机序列周期个数等,进行了理论的分析,得出了参数选择标准。系统硬件电路 主要包括超声信号的发射、接收和处理部分。发射部分设计了两种方案:数字式任意波形发生器和直接数字频率合成器。这两种方式均能直接产生经过 调制的伪随机ASK(或FSK)信号,但它们有各自的优缺点和适用范围。超声信号接收处理电路的作用是从放大滤波后的信号中解调出伪随机信号,并将其 稳定在一个固定的范围之内。这一部分电路由数字、模拟芯片实现,其中自动增益放大电路通过FPGA进行控制。使用任意波形发生器对本课题选用的 SensComp发射/接收型压电陶瓷超声换能器进行了移频编码与调幅编码特性实验研究,发现该换能器不适合进行移频编码,当进行调幅编码时,需要选择 合适的参数。通过实验方法选择了两种适用的伪随机调幅编码信号。系统调试成功后,将本设计伪码相关时差法超声波气体流量计在天津大学过程检测 与控制实验室的常压气体流量实验装置上进行了试验测试,结果符合时间差与流速成线形关系的趋势,并且随着流速的增大,误差逐步的减小。对测试 结果的误差来源进行了详细的分析,并提出了解决和进一步完善设计的方案。
5.期刊论文 王根平.Wang Genping 基于微处理器的数字超声波流量计 -自动化仪表2007,28(1)
研究设计了一种以微计算机处理器为核心,根据时差法原理来测量流量的数字超声波流量计,该数字超声波流量计具有测量精度高、测量范围大、工 作稳定可靠的特点.具体的实现过程是利用信号相关的数字处理方法计算出超声波在流体中的上行信号和下行信号的时间差,从而可换算出所测量的流量 值.实验结果显示,这种数字超声波流量计能达到很高的精度.随着数字处理技术和处理器件的发展,数字超声波流量计将具有越来越大的优势.
6.学位论文 尹伦海 小管径低流速液体流量超声检测方法的研究 2005
随着超声波检测技术的发展,超声波流量计广泛应用于冶金、电力、环保、医疗等行业.超声波流量计的测量精度受被测流体的温度、压力、粘度、 密度等参数影响较小,又可以制成非接触及便携式检测仪表,故可以检测其他类型仪表所难以检测的强腐蚀性、非导电性及易燃易爆的流量.目前,国内生 产的超声波流量计可以检测的最小管径为12mm,而管径低于12mm的超声波检测仪表正在研制中;国外也仅有几家超声波仪表企业的产品可以检测较小管径 的液体流量.本论文研究的目的就是研制出能够检测管径在12mm以下的超声波流量计,并且具有一定的实用性.本检测系统采用平均时间差法进行流量测量 ,提高了检测精度,使小管径的流量检测成为可能.微控制器采用高性能DSP芯片TMS320LF2407,使仪表的运行速度较快,实时性较好;系统程序采用汇编语言 编写,以保证检测系统的实时性;采用硬件滤波和软件滤波相结合方法,提高抗干扰能力;同时采用自适应的软件滤波方法,达到最优滤波;检测系统采用液 晶显示器显示测量结果,同时采用CAN现场总线通信方式通信,可远距离监控.本系统检测精度可靠,抗干扰性强,非常适于工业控制及恶劣环境中检测.论文 最后对以后的工作进行了展望,提出了新的目标.
7.学位论文 阎明 高精度微功耗时差法超声波流量计的设计 2007
随着现代工业的飞速发展,流量的测量如今已经不可或缺,超声波流量计由于其不接触被测物质,测量准确度几乎不受介质温度、压力等参数的影
响,无须中断管道等优点,近年来已经得到了广泛应用。 本系统利用时差法的测量原理,采用数字电路的抗干扰接收波形处理技术,提高了测量效果。系统选用了高精度时间间隔测量芯片TDC-GP2用于时间 的测量以及控制发射脉冲,以超低功耗的MSP430F155单片机作为系统的核心,用于控制及计算处理,并使用CPLD ispMACH4064完成了接收波形脉冲的提 取和接收波形自动增益控制的功能。 利用CPLD完成对收波信号的处理,大大提高了脉冲提取的精度,有效的去除了干扰,为时间间隔的高精度测量奠定了基础。 采用GP2通过芯片内部门电路的传播时延进行系统传播时间的测量,与传统的高速计数器相比,具有极高的精度,并可以在1MHz的频率下完成电路 ,避免了高频电路的干扰等复杂问题。 在嵌入式工作平台IAR Embedded Workbench下使用C语言,完成了硬件之间的控制与数据通信,实现了工业自动化仪表所需要的测量流程。采用C语 言编程,大大提高了软件开发的工作效率,提高了程序的可靠性、可读性和可移植性。方便了设计的继续完善与扩展。 本文设计的时差法超声波流量计,采用测时芯片测量传播时间差,使用CPLD完成接收波形提取的硬件抗干扰电路,保证了较高的系统测量精度;应 用单片机的低功耗和较快的计算能力,完成了系统控制和处理的稳定性;较好地改善了超声波流量计的测量效果,达到了预期目标。 通过对本流量计进行正确的安装、校验调整并准确设置现场参数,系统可以实现大概1%的测量精度。
8.学位论文 赵宇洋 基于相关算法的编码超声气体流量计研究 2008
超声波流量计作为一种非接触、易于安装维护的仪表在工业领域得到广泛应用。尤其在天然气计量领域,超声波流量计的潜力和优势十分明显。虽 然孔板流量计仍是主要测量手段,但超声波流量计具有无可动部件、无压损、测量精确度高等优点,另外随着相关标准的发布和实用领域的探索,超声 波流量计将会得到越来越广泛的应用。 本文将伪随机编码信号引入了相关时差法超声流量计的信号处理中。相关时差法是传统时差法与相关算法对结合,兼具二的者优点,并且克服了时 差法触发时刻不易确定、时间差难以直接精确测量,相关法被测对象不确定、易受驻波影响等缺点。伪随机编码码信号以其优良的自相关特性,可以实 现对微小时间差的精确测量。本文针对巴克序列,m序列以及L序列进行了理论分析及相关试验,比较了各编码方式的特性,并对影响相关结果的重要参 数,如:码元宽度,采样频率,序列长度,序列周期个数等,确定了选取标准。 系统硬件电路主要包括超声信号的发射、接收和处理部分。发射部分设计了数字式任意波形发生器,直接产生经过调制的伪随机编码信号。超声信 号接收处理电路的作用是从放大滤波后的信号中解调出伪随机编码信号,并将其稳定在一个固定的范围之内。 使用任意波形发生器对本课题选用的SensComp发射/接收型压电陶瓷超声换能器进行了调幅编码特性实验研究,得出参数选择的标准。系统调试成功 后,分别用巴克序列、m序列、L序列三种不同编码方式激励超声换能器,比较优劣;并将本设计伪码相关时差法超声波气体流量计在天津大学过程检测 与控制实验室的常压气体流量实验装置上进行了试验测试,对测试结果的误差来源进行了详细的分析,并提出了解决和进一步完善设计的方案。
9.期刊论文 陈楚.王卫星.吴敏.蔡坤.CHEN Chu.WANG Wei-xing.WU Min.CAI Kun 谷物收获超声波流量计的前期研 究 -农机化研究2007,""(12)
以多普勒法的谷物收获超声波流量计为研究对象,进行谷物收获系统和超声波流量计的前期研究.超声波流量计是利用流体对超声波的影响来测量流 量的仪表,传统的测量原理一般为时间差法,测量精度低,只能对液体或者气体进行流速测量;而采用多普勒测量法则可以达到更高的测量精度,并且尝试对 谷物(固体)的流速进行测量.
10.学位论文 吕云飞 相位差法超声流量计技术的研究 2005
本论文的研究对象是相位差法超声波流量计。相位法超声波流量计是向盛有流动液体的管道中顺流方向和逆流方向交替的发射超声波宽脉冲。流速 就是总的传播液体传播时间和顺逆流方向传播时间差的函数。在本论文中,对能提高整个系统性能的几项关键技术进行了深入的理论研究,并给出了具 体电路实现方法。主要工作如下:1.研究了时差式超声波流量计的测量原理,对理论公式进行了推导并给出了时差法超声波流量的测量原理图。然后根 据流体力学的有关知识,对管道流体流速分布规律特别是流速分布修正系数进行了讨论。最后从理论上对超声波在流体中的传播特性进行分析,为具体 的电路实现打下了坚实的理论基础。2.讨论整个系统硬件电路的几个关键技术及其实现方法,包括换能器的结构和参数选择、接收电路和信号检测电路 以及采用现场可编程逻辑阵列(FPGA)设计高精度计数电路和对传播时间差的精确测量。3.在本论文中,结合软件工程给出了流量计流量计算软件和控制 软件的流程框图,并对软件的设计进行了详细的说明。4.对影响流体流量测量的各种因素进行了仔细的分析、研究,采用突出主要误差的分配原则,对 各种可能误差进行了误差合成。最终给出了实验方案和结果。
本文链接: 下载时间:2010年5月26日
本文关键词:基于ARM的时差法超声波流量计研制,由笔耕文化传播整理发布。
本文编号:213201
本文链接:https://www.wllwen.com/kejilunwen/yiqiyibiao/213201.html