毕业设计(论文) 基于ARM的超声波测距模块开发_第1页
毕业设计(论文) 基于ARM的超声波测距模块开发_第2页
毕业设计(论文) 基于ARM的超声波测距模块开发_第3页
毕业设计(论文) 基于ARM的超声波测距模块开发_第4页
毕业设计(论文) 基于ARM的超声波测距模块开发_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、河海大学学士学位论文 基于arm的超声波测距模块开发第一章 概述11.1课题来源11.2超声检测技术简述11.2.1超声波检测11.2.2超声检测误差来源21.3系统任务和要求31.4系统方案设计31.5系统开发意义及应用4第二章 系统原理分析52.1超声波检测系统分析52.1.1超声波测距原理52.1.2温度补偿原理52.2超声波检测预备知识62.2.1超声波的应用62.2.2超声波传感器7第三章 系统总体设计113.1智能测量模块总体设计113.1.1超声传感器的选择113.1.2超声信号的处理123.2系统模块电路设计133.3系统通信总体设计133.3.1串行通信基本概念133.3.2

2、串行通信过程143.4系统通信软件设计14第四章 系统硬件设计164.1关键器件选择164.1.1嵌入式arm微处理器lpc2131164.1.2液晶显示器164.1.3 超声波传感器164.2超声波检测模块174.2.1超声波收发分体回路设计174.2.2超声波收发一体回路设计194.3液晶模块204.3.1 fyd12864-0402b液晶模块介绍204.3.2 fyd12864-0402b液晶模块的应用214.4串口通信模块214.4.1 串行通信协议214.4.2 串行通信总线标准接口214.5温度补偿模块224.5.1温度传感器ds18b20原理224.5.2 ds18b20与arm

3、接口电路224.6电源模块23第五章 系统软件设计245.1系统程序总体设计245.2下位机程序设计25第六章 系统测试296.1系统操作306.2测试结果分析31第七章 系统展望33结束语34致 谢34参考文献35附录一、系统pcb图37附录二、整机实物图37附录三、主要程序代码38附录四、翻译41 第一章 概述1.1课题来源超声波测距技术是近年来出现的测距新技术1,是一种非接触的检测方式,和红外、激光及无线电测距相比, 它具有结构简单、可靠性能高、价格便宜、安装维护方便等优异特性,在近距范围内超声测距具有不受光线、颜色以及电、磁场的影响,在恶劣作业环境下有一定的适应能力2。 因此利用超声波

4、测距在实现定位及环境建模场合,如:液位、汽车防撞雷达、井深及管道长度测量、机器人定位、辅助视觉系统等方面得到广泛的应用。但传统的超声波测距仪测量精度普遍较低,都不能满足高精度测量的要求。为了克服此不足, 作者从测距仪结构设计和回波信号处理的角度出发,提出了基于回波包络峰值3的检测方法,从而进一步提高测距仪超声检测的精度、系统的稳定性和抗干扰性对。本设计是基于arm来实现的。1.2超声检测技术简述1.2.1超声波检测图1-1声波频率界限声波是一种能在气体、液体和固体中传播的机械波。根据声波振动频率的范围,可以分为次声波、声波、超声波和特超声波。一般人耳能听到的声音的频率范围在20hz20khz之

5、间,频率低于20hz的波称为次生波,而高于20khz的波称为超声波,频率高于hz的波称为特超声波4。声波频率界限如图1-1所示。超声波检测中常用的工作频率在0.2520mhz范围内。由于超声波具有的这些良好的品质,超声波的研究和应用已经渗入工业、农业、国防、医学以及航天和航空等领域并且取得了卓有成效的进展5。甚至有人认为超声技术可以和电子技术、信息技术以及核技术相媲美,是一门具有广阔发展前景的高新技术。1.2.2超声检测误差来源本系统采用渡越时间法进行物位测量,通过不断检测超声波发射后遇到被测界面所反射回来的回波,从而测出发射和接收回波的时间差t,然后求出待测物位到传感器的距离l,在已知声速v

6、的情况下,不难得出: l=0.5vt (1)下面对影响超声波距离测量精度的因素进行逐一分析。(1)声速从式(1)可以看出,必须知道声波在媒质中的传播速度v,才能从传播时间求出待测距离,但是各种媒质有不同的声速。因此,在实际测量时,很难把声速看成一个不变的恒量。当媒质的成分、温度、压强等因素都没有很大的变化,而且测量精度要求又不很高的情况下,把声速当作不变的方法才能勉强满足测量要求,否则就应该进行声速校正。在多数情况下,温度是影响声速的一个重要因素,例如在空气中声速理论公式为: (2)式中 t为摄氏温度,式(2)表明空气中声速是温度的函数,此时式(1)为 m (3)不难看出,温度每变化1,引起声

7、速变化约千分之1.8。这对测量结果影响较大。所以,应进行温度补偿。通常情况下,可在设备中安装温度敏感元件,采用适当的补偿电路,利用敏感元件的输出信号来对声速进行校正。(2)硬件响应时间硬件电路是有一定延时的。例如滤波电路一般在几十微秒左右。另外超声物距测量系统中广泛采用arm来检测渡越时间,而arm系统的延时,相对来讲也比较大。例如利用arm的外部中断来检测回波触发信号。尽管它己经被设置为最高的中断优先级,并且不会被其他的中断所阻碍,但是中断响应是需要一定时间的。(3)触发时间一般来说,以接收信号的幅值超过我们规定的阈值时的时刻作为停止计时信号6。当待测物位发生变化时,接收电路输出信号的幅值就

8、发生变化,距离近输出信号幅值较大,此时在回波信号的第二周幅值就有可能超过规定的阈值,进而发出停止计时信号,距离较远时,输出信号幅值较小,回波信号的第3周(甚至第4周)幅值才有可能超过规定的阈值,并发出停止计时信号。从理论上讲,停止计时信号应在图中的a点发出,由于阈值的存在,而实际停止信号是在下图中的a点之后的某一时刻发出。并且发出的时刻(时间检出点)是随物位的变化而变化,这种“时间检出点”的变化就产生了物位测量的误差。 图1-2 放大滤波后的回波信号 1.3系统任务和要求 1、测量范围: 015m2、测量精度: ±1%3、使用温度范围: -10504、显示: 液晶显示5、电源: 内置

9、电源,外置稳压电源1224v6、抗干扰: 去噪声能力强(检波能力强)7、检测类型: 用1或2个超声头8、外部接口:rs232接口1.4系统方案设计超声波测距技术在工业生产和科学研究中得到广泛的应用。超声波测距电路多种多样,甚至已有专用超声波测距集成电路,但是有的电路复杂,技术难度大,有的调试困难,专用集成电路的成本很高,操作很不方便。目前,国内的超声波测距专用集成电路的精度只能达到厘米级,可以满足一般工业测量的要求,但对于一些精度要求较高测距场合就不合适了。本测距系统是基于arm开发的,抗干扰性强,利用超声波测距原理,结合arm的数据处理,测量精度可以达到毫米级。串行通信、lcd显示于一体。串

10、行通信功能可以使系统和pc机进行通信;lcd显示功能用于显示测量数据。本系统采用渡越时间法测量超声波,所谓渡越时间法可以表述为:设超声波发射传感器到目标障碍物的距离为l,超声波在空气中的传播速度为v,超声波从发射到接收传感器接收所经历的渡越时间为t,则l=vt/2。 其中该系统中超声波的往返时间间隔由arm通过外部中断定时获得,并将定时结果通过软件的算法算出最终距离,将最终结果通过arm送液晶显示。再通过rs232串口通信,将测得数据送给上位机显示,实现对数据的实时监控。 为了充分利用arm中的资源,尽量降低测距系统的成本,系统采用arm控制产生40khz的方波信号,驱动超声波传感器,为了增强

11、测距范围,在发射部分增加信号功率发大电路,为了进一步提高发射信号的功率,从而提高测距范围。在对接收信号的处理,系统采用了电压跟随、放大、电压比较的方案,成本低廉,由于超声波在传播的过程中有很大程度的衰减,当到达超声波接收传感器的时候,信号已经此相当的小,因此必须对接受信号进行放大,放大后再送往电压比较器进行比较。通过比较检测出有用信号,送给arm进行处理,从而实现对待测距离的测量,由于环境温度对超声波传播速度的影响比较大,所以需要采集环境温度,并对超声波传播速度进行修正。为了便于实时检测、控制,可以将测量到的数据每次距离变化时通过串口传送给上位机,上位机可对测量到的数据进行相应的数字信号处理。

12、1.5系统开发意义及应用超声波检测与控制技术是以超声波作为采集信息的手段,能在不损坏和不接触被测量对象的情况下探测对象。距离是在不同的场合和控制中需要检测的一个参数,超声波测距是一种很有效的测量方法,有着广泛的应用。但目前的超声波测距系统存在着精度低,盲区大及测量数据不稳定等问题。针对上述缺点,作者 设计了独特、有效的盲区消隐和接收信号处理方法,并进行温度补偿,从而提高了测量精度和灵活性;以arm作为控制中心,研制了智能化、便携式超声波测量系统。该系统的各种技术指标均能达到工程应用的要求,具有很大的市场潜力。第二章 系统原理分析2.1超声波检测系统分析2.1.1超声波测距原理本系统以arm为核

13、心,由arm控制定时发出方波信号,同时准备接收。发射机产生40khz左右的脉冲信号,经放大后驱动超声波传感器,方波信号经超声波传感器转换为超声信号向障碍物发射。超声波信号在介质中传播遇到待测物体表面时,由于不同介质的反射性能差异很大,对超声波的传播影响不同。其发射波被接收电路接收时,转变成电信号,该信号经相应地选频、检波、放大后,再进行信号判别,给arm相应的触发信号,arm对接收数据进行处理,并参照发出控制脉冲的基准时间,得出超声波在介质中的传播时间。其基本检测实现方法如图2-1所示。其原理可用公式表示为。2-1智能测量模块系统图2.1.2温度补偿原理常温常压下,空气近似为理想气体。超声波在

14、理想气体中传播速度为 m/s,式中为气体摩尔质量;r为气体的比热比;r为气体常数;t为热力学温度。对于一定的气体r、为定值。由公式可知:声速与热力学的平方根成正比。温度越高声速越大,温度越低声速越小。必须考虑温度对超声波的传播速度的影响,设0时声速为,则t时声度为,则 m/s, m/s 。又 0时,空气中声速的实验值为331.42m/s,那么t空气中声速的表达式为:,式中m/s,即:。用arm进行开方运算在程序上实现比较困难,为了便于armc语言编程,现用数学软件matlab编程实现对公式的简化,运用matlab多项式拟合编程实现如下:t=0:0.01:100; %拟合的温度范围v0=331.

15、42*(1+t/273).0.5; %声速与摄氏温度的理论公式v=polyfit(t,v0,3); %拟合出的声速与温度多项式fv=polyval(v,t);subplot(1,2,1)plot(t,v0,'.',t,fv,'-r');gtext('蓝色曲线为理论速度曲线');ylabel('速度 v0(m/s)');xlabel('温度 t()');subplot(1,2,2);plot(t,fv,'-r');y=poly2sym(v);gtext('红色曲线为拟合速度曲线');y

16、label('速度 v(m/s)'); 图2-2拟合曲线和理论曲线比较xlabel('温度 t()');运行matlab程序得出的拟合声速与摄氏温度曲线与理论上声速与摄氏温度曲线对比图2-2。运行程序后,可得拟合声速与摄氏温度的关系: m/s。于是,通过传感器测的空气中的温度代入上述公式,即可得到超声波在空气中的传播速度,再检测出超声波在空气中传播的时间t,便可得到超声波在空气中传播的距离: 。2.2超声波检测预备知识2.2.1超声波的应用超声波传感器是利用超声波特性而研制成的传感器,超声波传感器技术已广泛用工业、国防、交通、生物医疗和家庭领域。超声波技术的应用

17、如下表所示。用途备注用途备注工业金属材料及非金属材料的探伤测量金属与非金属的厚度超声振动切削加工(金属与非金属)超声波清洗零件 超声波焊接超声波流量计超声波料位及液位检测与控制超声波显微镜 温度计各种制造业板材、管材钟表业、精密仪表、轴承半导体器件生产化工、石油、轻工海洋鱼群探测 深度测量声纳 水中摄影通信定向通信医疗超声波诊断仪(显像技术)超声波胎儿状态检查仪超声波血流计 超声洁牙器断层图象2.2.2超声波传感器(1)超声波传感器原理超声波传感器有两种工作方式:直射式,反射式。反射式超声波传感器的工作原理如图2-3所示。首先由振荡器产生40khz方波信号,在经过放大器来驱动超声波发送器,使之

18、发出40khz超声波向外传播,超声波接收器接收到上述信号后,就通过放大器和滤波器得到控制信号,送至控制器。图中的a、b构成双晶体片,再40khz超声波驱动下,发送器中的双晶体片在不同方向被压缩或拉伸就形成了超声波。图2-3 超声波传感器的工作原理(2)超声波基本特性1.频率特性。图2-4是某超声波发射器的频率特性曲线,为发射器的中心频率,在该频率处,发射器所产生的超声波最强,即超声声压能级最高,而在两侧,声压能级迅速衰减。因此在使用当中,一定要用频率接近的交流电压来驱动超声波发射器。图2-5是某超声波接收器的频率特性.其中为中心频率.由图2-5知,当并联电阻较大时,曲线在处最尖锐.接受灵敏度最

19、高,可知超声波具有较好的选频特性,其特性优势与并联电阻r有关。图2-4 超声波发生器的频率特性图2-5 超声波接收器的频率特性 图2-6 超声波传感器的指向特性2.指向特性。由于传感器压电晶片是一个圆形片,故可以把其表面划分为许多小点,把每个点都看作为一个振荡源,辐射出一个半球面波子波,这些子波虽没有指向性,但离传感器空间某一点的声压是这些子波叠加的结果,都具有指向性,如图2-6所示,当时,声压最大,角度逐渐增大或减小时,声压减小。(3)超声波的回波检测小波分析理论小波分析是一种信号的时间一尺度(时间一频率) 分析方法,它具有高分辨率的特点,而且在时、频两域都具有表征信号局部特征的能力,是一种

20、窗口大小固定不变但其形状可改变、时间窗和频率窗都可以改变的时频局部化分析方法。它在低频部分具有较高的频率分辨率和较低的时间分辨率,在高频部分具有较高的时间分辨率和较低的频率分辨率。因此,可以利用小波分析法对接收到的回波信号进行分析、去噪,获得更加平滑、有效的回波包络曲线,进而可以利用峰值检测法准确计算出回波前沿的到达时刻。我们在这里采用morlet复小波。因为当其形状控制参数取较小值时。在几何形状方面,它较其它类型小波函数更加相似于接收回波波形。根据小波分析的最大匹配原则,当子波与所分析的号在几何形状上越相似时,利用该子波提取到的信号特征就越准确。morlet复小波函数的数学表达式为: (1)

21、 图2-7 morlet复小波式中j = - 1,为形状控制参数,当取= 1时,其实部、虚部及模如图2-7 所示。 图2-8 回波包络峰值检测波形从图2-7可以看出,复小波函数的模可完全平滑地包络其实部和虚部。 因此,利用复小波函数的模便可很容易获得回波信号的小波包络分析。回波信号经小波包络运算处理后,可以帮助剔除环境噪声信号,获得更平滑、理想的回波包络曲线。利用包络峰值检测原理对小波包络后的回波信号分析处理,从而准确计算回波前沿的到达时刻。回波信号的包络峰值检测根据小波分析理论提出一种新的确定回波前沿的计算方法,即回波信号的包络峰值检测法。通过示波器对回波波形进行观察,可以发现对同一探测物,

22、不同传播距离的回波包络线都有较好的一致性,回波波形都大致相同,只是波幅不同,并且同一距离时的不同类型探测物的回波波形也大致相同,只是波幅不同。 从工程精度考虑,可以认为超声回波幅值包络线的形状基本不随回波信号的大小而变化。 即回波信号包络峰值所对应时刻b与回波前沿到达时刻a间的时间差( b- a) 不随探测物远近的变化而变化。而时间差( b- a)也容易通过实验计算出来。 因此,可将接收回波信号的包络峰值所对应的时刻b作为停止记数的时刻,用回波包络峰值所对应时刻与回波前沿到达时刻的时间差( b- a) 就可消除由于时间检出点变化所引起的测量误差。 回波信号在进行线性包络检波之后,在分别通过微分

23、电路、零点交叉检测,最后进入arm外部中断0的入口,从而完成传播声时的准确计时。因为采用包络峰值时间点的检测方法与信号振幅无关, 故具有优良的传输时间检出特性。包络峰值检出原理及波形如图2-8所示。包络峰值检测也可以消除虚假回波的干扰,使达到阀值的虚假回波可以被峰值检测滤掉。因为超声波接收回波的幅值随传播距离的增加而成指数规律衰减,所以采用agc 电路使放大倍数随距障碍物距离的增加成指数规律增加的电路。在计数器开始计时的时刻,agc 电压开始随时间增加而增加,在检测到回波脉冲后清零。零交叉点检测可以保证回波到达时刻不受回波大小变化。采用鉴宽电路可以抑制偶然的尖峰干扰信号,使尖锐的干扰信号被鉴宽

24、电路挡住而不能到达电平比较电路。 因此,采用包络峰值检测可以保证回波前沿的准确到达时刻。接收器等待发射脉冲第一个回波的同时,通知定时器/计数器t0在微处理器的外部中断接收到回波到来信号,t0计数器停止计数。arm一旦识别到的第一个回波到达时,便发生中断,终止内部计数器计数,并对计数器中的数据进行程序处理。arm通过内部设定程序的运算,可以算出超声波传感器到当前的障碍物的距离,并将测得的距离实时地在液晶显示模块上显示。第三章 系统总体设计3.1智能测量模块总体设计利用第二章讲述的测距原理,作者设计了超声波测距系统,它的作用是检测当前障碍物的距离,并将测得的结果实时地在液晶上显示出来,并可将检测得

25、到的数据值通过rs232/485网络传送给上位机控制器。图3-1 超声测距原理框图由图可看出该系统共有5个模块组成:超声波发射模块、超声波接收模块、温度补偿模块、液晶显示模块、串行通信模块。对于具体电路模块的介绍见以下章节。3.1.1超声传感器的选择超声检测精度取决于检测方法、仪器和超声换能器性能。目前在低超声频段(20100khz),喇叭辐射面的面积比棒状换能器大,所以辐射面的声强较低,与其粘结的不锈钢板表面空化腐蚀小。在本系统中采用喇叭状换能器,这种换能器尤其在较高频段40khz以上),其优点更为突出。因为它可以削弱横向振动所带来的不良影响,频带也较宽。在选择中,要综合考虑超声接收换能器各

26、项参数指标,比如其与电路的阻抗匹配问题,如果电路的输入阻抗与换能器的阻抗不一致,就会引起驻波,使波形模糊。3.1.2超声信号的处理系统的性能受背景噪声的限制,从抗干扰的角度来说,应充分利用信号场与干扰场在时-空统计特性上的差异,对超声信号进行处理,以便最大限度地获得增益。 1信号的放大和噪声的抑制。由于从接收换能器传来的信号很微弱,又存在着较强的噪声,所以放大信号和抑制噪声是首先必须考虑的。通常使用低噪声晶体多级调谐放大器完成此项任务11。在检测过程中,由于工作频带窄,故应按功率匹配,使前置放大器的输入阻抗与换能器输出阻抗的数值相近。通带中心频率等于信号频率。这样环境噪声中的绝大部份能量就被阻

27、挡在通带之外了,但对通带内的噪音抑制则无能为力。可以通过增加发射功率和提高接受基阵的方向性来提高信噪比,使这个问题得到改善。2混响及其抑制。通常较简单的抑制混响方法是使用一定时间规律(例如指数规律)来控制接收机增益的时间,增益控制界(tvg)对出现在接收机输入端的信号和混响及噪声进行动态压缩。要使放大器增益随时间变化的规律与混响随时间衰减的规律严格相反是很困难的,补偿的方法是增加一个自动增益控制器(agc) 12。3回波信号的处理。回波信号的包络通常是不规则的,不便对它进行数字处理,所以对它整形是必要的,整形电路形式多样,可以是单稳态电路,也可以是施密特触发器或其它电路。为了进一步滤除噪声及混

28、响的影响,可设置一门限检测阈值,该门限电平一般大于噪声的均方根值。当信号超过阈值时判断为有目标回波,若阈值过高,只有强信号才能被检出,这样检出概率就降低;若阈值过低,信号超过阈值的机会多了,但同时噪声超过阈值的机会也多,则检出的有用信号夹杂的噪声就会增多。4对目标回波信号的进一步处理。进行数字滤波和计算,求从发射信号开始到收到目标回波为止的深度(距离)历经时间值,并将它转换成深度(距离)值,然后将此值显示并打印。可采用微处理器。本系统中,由arm产生的波形通过隔离放大后驱动超声换能器的发送端,换能器的接收端接收的信号比较弱,另外由于换能器本身的特性和声程中随机干扰、传播介质的非均匀性等造成的信

29、号时延抖动是随机的,包含很多的噪声信号。又由于超声波的传播介质中存在很多不确定的因素,难以抑制,这样势必影响检测精度。对超声信号的模拟处理首先我们对信号的输出端进行隔离,防止回波产生,在混波信号中选取其中有用信号,滤除无用的噪声信号,防止驻波干扰。在简单的模拟化处理后,从软件上对信号进行数字化的处理。本系统中数字信号处理是在arm中用程序来实现的。在此,作者采用平均滤波法,去除最大值和最小值后,将几个采样信号的平均值作为一个信号值,这样就能将信号中的瞬时干扰噪声减小。选用多少采样信号求其平均值,是根据信号频率及噪声的特征来确定的。同时也应用程序判断滤波法,从程序的角度判断有用信号,将无用信号滤

30、除,通过仿真实验证明,通过以上的信号处理方法能有效的保证超声信号的重现,失真程度也很小。3.2系统模块电路设计图3-1主机控制器总结构框图智能测量模块电路部分主要包括超声信号检测电路、lcd液晶显示、rs232通信接口等部分。主机控制器在液晶显示屏中将具体数据显示出来,液晶显示采用字符型液晶显示模块。并将测得的数据通过串口传送给上位机,同时进行存储。主机控制器总结构框图如图31所示。3.3系统通信总体设计3.3.1串行通信基本概念(1)数据通信的基本概念系统在实际工作中,像上位机的cpu与外部设备之间常常要进行数据交换一样,为了通过上位机对系统进行实时控制,将系统测得数据实时传送给上位机,所有

31、这些信息交换均可称为数据通信。本系统采用的是串行数据通信方式,接口为rs232串口,实验证明这种通信方式简单易行,符合本系统要求。(2)串行通信图3-2 发射接收时钟数据位比较在串行通信过程中二进制数字系列以数字信号波形的形式出现。不论接收还是发送,都必须有时钟信号对传送的数据进行定位。接收/发送时钟就是用来控制通信设备接收/发送字符数据速度的,该时钟信号通常由处理器内部的时钟电路产生。在接收数据时,接收器在接收时钟的上升沿对接收数据采样,进行数据位检测;在发送数据时,发送器在发送时钟的下降沿将移位寄存器的数据串行移位输出。如图32所示:3.3.2串行通信过程两个通信设备在串行线路上实现成功的

32、通信必须解决两个问题:一是串并转换,即如何把要发送的并行数据串行化,把接收的串行数据并行化;二是设备同步,即同步发送设备和接收设备的工作节拍相同,以确保发送的数据在接收端被正确读出。3.4系统通信软件设计系统通信软件由下位机、主机控制器通信软件和上位机控制软件三部分组成。下位机通信软件功能主要是接收主机控制器发送过来的信号,针对各下位机地址发送应答信号,再根据主机控制器发来的控制信号做出相应的反应,随后发送主机控制器所需数据。其通信功能使用了arm的串行中断和查询收发状态标志位的方法实现。下位机平时对各监控点的进行数据采集并定时存贮,当有串行中断时执行串行中断服务程序,判别是否为本机的地址信息

33、,地址信息与本机地址相符时,转为接收控制命令,并执行相应的操作;地址信息与本站地址不符时则退出中断。下位机通信流程图如图3-4所示。 图3-4下位机通信流程图3-5 上位机通信软件界面主机控制器的通信软件实现功能主要包括呼叫各从机,并向各机发送查询控制命令。其工作过程为控制器发送需呼叫的从机的地址,然后等待接收从机的应答信号,若应答信号正确即发送控制命令,若应答信号不正确则重新发送需呼叫的地址,并等待接收应答信号,接收到应答信号后接收有个下位机发送的数据,存储在相对应的数据存储区并在lcd液晶显示屏中显示出来。本系统的上位机控制软件由delphi7编写,具有良好的可视效果,功能包括数据发送、数

34、据接收、串口通信设置等功能。上位机通信软件界面如图3-5。第四章 系统硬件设计4.1关键器件选择4.1.1嵌入式arm微处理器lpc2131(1)嵌入式arm微处理器lpc2131概述lpc2131是基于一个支持实时仿真和跟踪的16/32 位arm7tdmi-stm cpu15,并带有32kb、64kb 和512kb 嵌入的高速flash 存储器15。128 位宽度的存储器接口和独特的加速结构使32 位代码能够在最大时钟速率下运行17。多个32 位定时器、1个或2 个10 位8 路的adc、10 位dac、pwm 通道、47 个gpio 以及多达9 个边沿或电平触发的外部中断使它们特别适用于工

35、业控制应用以及医疗系统18 (2)嵌入式arm微处理器lpc2131主要特性19 2 个32 位定时器/计数器(带4 路捕获和4 路比较通道)、pwm 单元(6 路输出)和看门狗。 多个串行接口,包括2 个16c550 工业标准uart、2 个高速i2c 接口(400 kbit/s)、spitm 和具有缓冲作用和数据长度可变功能的ssp。 片内晶振频率范围:130 mhz。 单电源,具有上电复位(por)和掉电检测(bod)电路: 高速:risc型8051内核,速度比普通8051快12倍。4.1.2液晶显示器液晶显示器(lcd)凭借其功耗低、图形美观等多种优势,在仪器仪表产品中得到越来越多的应

36、用,fyd12864-0402b是一种多功能的lcd驱动器,可以用软件的方式设定系统功能,由于选择的是串行数据传输方式,所以fyd12864-0402b和arm之间只需要6根线的接口。 4.1.3 超声波传感器本测距系统中的超声波传感器20采用生产的t40-16(送信用)和r40-16 (受信用) 的压电陶瓷传感器21。下图为超声波传感器的型号说明:图4-1 超声波传感器型号说明4.2超声波检测模块超声波检测模块主要包括发射超声波产生、超声传感器驱动部分、超声回波的接收放大、滤波、信号比较电路。根据所选超声波传感器的类型及个数,超声波检测电路可分为:收发分体回路和收发一体回路。下面对两种方案进

37、行介绍。4.2.1超声波收发分体回路设计图4-2 硬件电路整机原理图该方案采用一对单收、单发型超声波传感器。发射电路主要由超声波传感器(发射),集成电路ic555、ic4049组成。电路采用555集成芯片构成一个频率为40khz的多谐振荡器,再通过ic4049集成电路驱动超声波传感器。接收电路主要由超声波传感器(接收),集成运放lm5532,比较器lm393,集成电路ic4011,ic555以及三极管9012组成。ic555构成一个延时回路,主要是用来设置超声波检测的盲区22。集成运放lm5532构成一级、二级放大电路,实现对超声波回波信号的增幅,lm393则是运用电压比较的原理来设置检测回波

38、的阈值,从而识别回波信号的到达。四个2输入的与非门4011构成一个rs触发器,保持超声波的检出信号为一脉宽可变的正脉冲,脉冲宽度就是超声波渡越时间,三极管9012用来实现对检出正脉冲信号进行放大,然后送给arm的中断口。arm通过中断启动内部计数器对正脉冲进行计数,再进行处理得到脉冲的宽度,即超声波的渡越时间23。超声波的整机、发送及接收电路如图4-2和图4-3、图4-4所示。图4-3 超声波发送模块(a)超声波接收电路(b)延时电路(c)保持检出回波电路 图4-4 超声波接收电路4.2.2超声波收发一体回路设计该方案采用收发兼用型超声波传感器。收发一体回路24主要由集成电路ic4049,ic

39、4011,集成运放lm5532,比较器lm393及二极管,三极管组成。电路由arm的t0口产生40khz超声波,经三极管构成的共射极放大电路放大,再经过ic4049驱动超声波传感器。收到的回波信号经过lm5532一、二级放大,在经过比较器lm393和ic4011构成的rs触发器检出一脉宽可变的正脉冲信号,脉宽就是超声波的渡越时间,检出的正脉冲被送到arm的中断口,arm通过中断启动内部计数器对正脉冲进行计数,再进行处理得到脉冲的宽度,即超声波的渡越时间。超声波收发一体电路如图4-5所示。图4-5 超声波收发一体电路以上两种方案的主要区别是分体回路发送的40khz超声波由硬件电路产生,一体回路的

40、40khz超声波arm25通过软件编程产生,从总体上考虑本系统采用收发分体方案,因为本系统的可编程模块较多,加上arm的容量有限,在设计的时候要尽量减少系统的程序,所以本系统采用收发分体回路。4.3液晶模块4.3.1 fyd12864-0402b液晶模块介绍(1)fyd12864-0402b引脚说明管脚号名称level功能1vss0v电源地2vdd+5v电源正(3.0v-5.5v)3v0-对比度(亮度)调整4csh/l模组片选端,高电平有效5sidh/l串行数据输入端6clkh/l串行同步时钟:上升沿时读取sid数据15psbll:串行方式17/reseth/l复位端,低电平有效19avdd背

41、光源电压+5v20kvss背光源负端0v(2)时序图与指令表1. 串口读写时序图图 4-6 串口读写时序图2. 串口数据线模式数据传输过程图图 4-7串口数据线模式数据传输过程图4.3.2 fyd12864-0402b液晶模块的应用(1)与嵌入式arm微处理器接口arm与液晶fyd12864选用串行总线通信方式,所以液晶fyd12864的15脚psb接低,arm通过p0.13脚和fyd12864液晶模块进行通信,时钟控制由p0.11脚完成,p0.15脚控制fyd12864的片选端cs,其中arm与液晶供地。4.4串口通信模块4.4.1 串行通信协议通信协议是对数据传送方式的规定,包括数据格式的

42、定义和数据位定义等。通信方式必须遵从统一的通信协议。串行通信协议包括同步协议和异步协议两种,在这里只讨论异步串行通信协议。要想保证通信成功,通信双方必须有一系列的约定。这种约定就叫做通信规程或协议,它必须在编程之前确定下来。只有双方都正确地识别并遵守这些规定才能顺利地进行通信。4.4.2 串行通信总线标准接口由于系统是3.3v系统,所以要使用sp3232e进行rs-232电平转换。jp6为uart0口连接跳线,当使用串口功能时,将这些跳线短接到相应的功能端,jp6应短接txd0和rxd0,在本系统中sp3232e芯片与arm接口如图4-9所示。图4-9 sp3232e和arm接口4.5温度补偿

43、模块由于超声波的声速受环境温度的影响较大,所以在应用超声波进行检测时,需要对超声波的速度进行温度的补偿。本系统采用dallas公司生产的单总线、数字式温度传感器ds18b20采集环境温度送给arm,由arm通过软件编程对超声波的速度进行温度补偿。4.5.1温度传感器ds18b20原理ds18b20为1-wire总线的数字温度传感器26,其可提供可编程的9位至12位的摄氏温度(对于华氏温度应用场合,可以查表转换)的测量,其功能模块图如图4-10所示,引脚定义为: gnd-地;vdd-电源;dq-数据输入输出端。配置寄存器用以给用户自由选择将ds1sb20传感器的数字输出设置为9,10,11或12

44、位。8位crc发生器用于暂存器读写阶段提供循环冗余检验使用。图4-10 ds18b20功能模块图4.5.2 ds18b20与arm接口电路ds18b20与arm微处理器的硬件接口比较简单。图4-11和图4-12给出了ds18b20在两种供电方式下的硬件接口电路图。当设备使用外部电源供电的时候,使用arm的一个通用接口就可以实现数据的传递。图4-11 ds18b20寄生供电电路图4-12 ds18b20外部供电电路ds18b20也可以采用寄生电源供电,这在远程度测量和测量空间受限制的情况下特别有价值。需要注意的是,ds18b20在进行温度转换或者将暂存寄存器里面的数据复制到eeprom27内的时

45、候,所需要的电流会达到1.5ma。这个电流将通过上拉电阻导致不期望的压降,而且超出了cpp即所能提供的电流,此时可用如图4-11所示的一个三极管来提供电流。在本系统中ds18b20与arm的接口电路如图4-13所示。图4-13 ds18b20与arm2131接口电路4.6电源模块系统内部配置了+12v和+5v的稳压源,外部配置了12v24v的直流输入接口,用户有很大的选择空间。系统内部电源模块如图4-12。图4-14 系统电源模块第五章 系统软件设计5.1系统程序总体设计本系统采用嵌入式arm微处理器lpc2131为控制核心控制器件28,用c语言进行编程。本章主要介绍用系统的软件实现,本系统软

46、件主要有两部分:上位机(pc)控制软件和下位机(嵌入式arm微处理器)控制软件。下位机软件包括40khz超声信号的产生、回波检测29、数据处理程序、温度检测、液晶、sp3232e芯片、存储器芯片的驱动程序。上位机软件主要是串口通信软件包括串口设置,发送数据、接收数据窗口等,可以在线设置各种通信速率、奇偶校验、通信端口而无需重新启动程序,可以设置定时发送的数据以及时间间隔;可以自动显示接收到的数据,并能在字符串、十进制和十六进制之间进行切换30;设置串口连线dtr、rts线和显示cd、cts、dsr线的状态。软件是整个系统的灵魂,系统的最终实现必须要依靠软件来实现。系统下位机软件功能框图如图5-

47、1所示,系统上位机软件流程框图如图5-2所示:图5-1下位机软件功能框图图5-2 上位机软件流程图5.2下位机程序设计 系统的下位机主要负责环境温度的采集及超声测量信息的采集、处理、保存并通过串口将最终结果传送给上位机。系统测试的结果由arm控制在液晶上显示。系统主程序流程图如图5-3所示。下面对各个电路模块的程序设计进行说明。图5-3 下位机主程序流程图(1)超声波(40khz)的产生40khz超声波的产生运用了arm的内部时钟来实现的,通过软件将arm的某个i/o口(系统为p0.0脚)置“1”或“0”,高低电平的周期为25us。根据系统硬件要求在发射超声波时需要发送6-10个波。具体检测程

48、序见附录(2)超声波渡越时间的检测系统收到的回波信号被放大、滤波、比较处理,最终送到arm中断口的是一脉宽可调的正脉冲,脉宽就是超声波的渡越时间。具体程序见附录。(3)fyd12864-0402b液晶模块驱动程序设计fyd12864-0402b液晶模块程序实现流程图如图5-4,具体程序见附录。图5-4 fyd12864-0402b液晶模块程序流程图(4)温度传感器驱动程序设计本系统采用 dallas半导体公司最新单线数字温度传感器ds18b20,ds18b20是支持 “一线总线”接口的温度传感器。由于 ds18b20是在一根i/o线上读写数据,因此,对读写的数据位有着严格的时序要求。

49、ds18b20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。ds18b20时序图如下图所示。图5-5 ds18b20复位时序图5-6 ds18b20读时序 图5-7 ds18b20写时序5.3上位机程序的设计系统上位机程序是在delphi的开发环境中利用了微软的visual basic中提供的一个串口控件-microsoft

50、communication control(简称mscomm)控件进行串口编程的。5.3.1 mscomm控件处理通讯方式(1)事件驱动方式事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。可以利用 mscomm 控件的oncomm 事件捕获并处理这些通讯事件。oncomm 事件还可以检查和处理通讯错误。在编程过程中,就可以在oncomm事件处理函数中加入自己的处理代码。(2)查询方式 查询方式实质上还是事件驱动,但在有些情况下,这种方式显得更为便捷。在程序的每个关键功能之后,可以通过检查 commevent 属性的值来查询事件和错误。如果应用程序较小,并且是自保持的,这种方法可能是更可

51、取的。5.3.2 mscomm控件属性mscomm控件有很多重要的属性,但首先必须熟悉几个属性31:commport设置并返回通信端口号:settings以字符串的形式设置并返回数据传输速率、奇偶校验、数据位、停止位;portopen设置并返回通信端口的状态,也可以打开和关闭端口;input从接收缓冲区返回和删除字符;output向传输缓冲区写一个字符串。mscomm控件常用的几个属性:commport属性、settings属性、portopen属性、input属性、output属性。5.3.3 mscomm控件的使用 mscomm控件通过串行端口发送和接收数据,为应用程序提供串行通信功能,使

52、用非常方便。下面对delphi中使用mscomm控件进行通信编程进行简单介绍。(1)初始化并打开串口设置mscomm控件的属性可以在程序设计期时直接指定,也可以在程序运行期间设置。除了使用对象观察器设置mscomm控件的属性外,delphi还提供了一个属性对话框,双击窗体中的mscomm控件即可弹出,可以通信端口号、通信协议 、传输速率参数、数据接收格式、通信端口开/关进行设定。(2)捕捉串口事件mscomm控件可以采用查询或事件驱动的方法从端口获取数据。由于控件的oncomm事件通过commevent属性能够反映串口当前发生的错误和事件,所以操作串口最简单的方法就是适当地设置控件rtreshold属性为一个正数,然后编写其oncomm事件处理代码。(3)串口的读写串口的读写分为两种情况:字符串的读写和二进制数的读写。由于input和output中都是variant变量 ,delphi能够直接将它们和字符串类型相互转换,所以可以直接读取mscomm控件的input属性,以及直接用字符串为output属性赋值。如果双方是以二进制形式发送数据,如果一方以字符串形式读写,那么通信就会失败。(4)关闭串口在使用完mscomm通信对象后,需要将通信端口关闭。如果关闭窗体

温馨提示

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

最新文档

评论

0/150

提交评论