




已阅读5页,还剩77页未读, 继续免费阅读
(机械电子工程专业论文)基于超声波的受电弓滑板磨耗检测系统设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学硕士研究生学位论文第l 页 摘要 铁路系统的高速化是其发展的必然趋势,而电气化正是实现高速化的必 要条件。受电弓是电力机车的关键部件,其功能是从接触网上获取电能为机 车供电,因此受电弓工作状态的好坏直接影响着电力机车的受流情况。受电 弓长期暴露在自然环境下工作,其与接触网之间存在机械磨损,且在其触线 和离线瞬间会出现拉弧现象,高温电弧会对受电弓滑板产生严重的电烧蚀。 为了保证电力机车可以正常受流,对受电弓表面的磨损状况进行检测是非常 有必要的,而且根据监测所得到的受电弓滑板表面磨损状态可以很好地测评 受电弓滑板的性能及诊断接触线路设备设计的合理性。通过分析比较目前行 业中已有的受电弓磨耗检测装置或方法的优缺点,本文设计了一种以超声波 传感器作为检测元件的新型受电弓磨耗检测系统。 该系统基于d s pt m s 3 2 0 l f 2 4 0 7 a 控制超声波传感器来测量电力机车受 电弓滑板的磨耗值,将超声波测量原理运用到电力机车受电弓滑板磨耗检测 中,通过3 0 个超声波传感器对受电弓滑板表面进行在线、多点、分时测量, 并通过数据处理后在计算机上显示其实际三维图形。本文包括下位机系统、 上位机系统及装置结构框架设计三个部分:下位机系统主要负责数据采集和 传输,以t m s 3 2 0 l f 2 4 0 7 a 芯片作为处理器,主要包括传感器触发电路、传 感器返回信号处理电路、串口通信电路及c 语言编写的程序代码;上位机系 统( p c 机软件) 是用v c + + 6 o 编写的用户操作界面,主要负责对检测数据进 行处理、保存和显示,包括m s c o m m 串口编程、o d b c 数据库编程及 o p e n g l 三维图形显示编程;装置结构框架包括悬臂和传感器箱体。 关键词:受电弓滑板;磨耗检测;超声波;d s p 芯片 西南交通大学硕士研究生学位论文第1 i 页 a b s t r a c t h i g hs p e e d i st h et r e n do f o f r a i l w a ys y s t e m sd e v e l o p m e n t ,a n d e l e c t r i f i c a t i o ni st h en e c e s s a r yc o n d i t i o nf o rh i g hs p e e d p a n t o g r a p hi sa n i m p o r t a n tc o m p o n e n to fe l e c t r i cl o c o m o t i v e ,w h i c hf u n c t i o ni st or e c e i v ep o w e r f r o mc a t e n a r yf o re l e c t r i cl o c o m o t i v e ,s ot h eq u a l i t yo fp a n t o g r a p hw o r k i n gs t a t e a f f e c tt h eq u a l i t yo fe l e c t r i cl o c o m o t i v e sc u r r e n tc o l l e c t i o nd i r e c t l y p a n t o g r a p h e x p o s e si nn a t u r ee n v i r o m e n tf o rl o n gt i m e ,a n dt h e r ei sm e c h a n i c a lw e a l b e t w e e n p a n t o g r a p ha n dc a t e n a r y , a n dt h e r e i sh i g ht e m p e r a t u r ea l ew h e np a n t o g r a p h c o n t a c t sa n dd e t a c h sc a t e n a r y , w h i c hc a nb r i n gs e r i o u se l e c t r i c a la b l a t i o nt o p a n t o g r a p hs l i d ep l a t e i no r d e rt oe n s u r en o r m a lc u r r e n tc o l l e c t i o no fe l e c t r i c l o c o m o t i v e ,i ti sn e c e s s a r yt od e t e c tt h ea b r a s i o no fp a n t o g r a p hs l i d ep l a t e ,a n di t c a ne v a l u a t ep e r f o r m a n c eo fp a n t o g r a p hs l i d ep l a t ea n dc a nd i a g n o s er a t i o n a l i t yo f l i n e s d e s i g no fe l e c t r i cc o n t a c tw i r e t h r o u g ha n a l y s i sa n dc o m p a r i s o n t h e a d v a n t a g e sa n dd i s a d v a n t a g e so fp a n t o g r a p hs p l i d ep l a t e sd e t e c t i o nd e v i c e so r m e t h o d si nc u r r e n ti n d u s t r y , t h i sp a p e rd e s i g n san e wd e t e c t i o ns y s t e mo f p a n t o g r a p hs l i d ep l a t e sa b r a s i o nb yu t i l i z i n gu l t r a s o n i cs e n s o r sa sd e t e c t i n g e l e m e n t s t h i ss y s t e mc o n t r o l su l t r a s o n i cs e n s o r st od e t e c ta b r a s i o no fp a n t o g r a p h s p l i d ep l a t eo fe l e c t r i cl o c o m o t i v eb a s e do nd s pt m s 3 2 0 l f 2 4 0 跪a p p l y st h e p r i n c i p l eo fu l t r a s o n i cr a n g i n gi nm o n i t o r i n ga b r a s i o no fp a n t o g r a p hs l i d ep l a t e , u t i l i z e s3 0u l t r a s o n i cs e n s o r st od e t e c te l e c t r i cl o c o m o t i v e sp a n t o g r a p hs l i d ep l a t e b ym e a n so fo nl i n e ,m u l t i - p o i n ta n dt i m e - s h a r i n g ,a tl a s t ,d i s p l a y s t h e a c t u a l t h r e e d i m e n s i o n a lg r a p h i c so nu p p e rc o m p u t e ra f t e rd a t ap r o c e s s i n g t h i sp a p e r i n c l u d e st h ed e s i g n so fl o w e rc o m p u t e rs y s t e m ,u p p e rc o m p u t e rs y s t e ma n dd e v i c e s t r u c t u r e t h el o w e rc o m p u t e rs y s t e mi sm a i n l yr e s p o n s i b l ef o rd a t aa c q u i s i t i o n a n dt r a n s m i s s i o n ,u s e s1 m s 3 2 0 u 陀4 0 7 ac h i pa sp r o c e s s o r , m a i n l yi n c l u d e s s e n s o rt r i g g e rc i r c u i t ,e c h os i g n a lp r o c e s s i n gc i r c u i t ,s e r i a lc o m m u n i c a t i o nc i r c u i t a n dp r o g r a mc o d eb ycl a n g u a g e ;t h eu p p e rc o m p u t e rs y s t e m ( p cs o f t w a r e ) i sa u s e ro p e r a t i o ni n t e r f a c eb yv c + + 6 0 ,i sm a i n l yr e s p o n s i b l ef o rp r o c e s s i n gt h e d e t e c t i o n d a t a ,s a v i n g d a t aa n dd i s p l a y i n gg r a p h i c s ,i ti n c l u d e ss e r a i l p o r t p r o g r a m m i n go fm s c o m m ,d a t a b a s ep r o g r a m m i n go fo d b ca n dd i s p l a y i n g t h r e e d i m e n s i o n a lg r a p h i c sb yo p e n g l ;t h ep a r to fd e v i c es t r u c t u r ei n c l u d e s c a n t i l e v e rb e a ma n ds e n s o rb o x k e yw o r d s :p a n t o g r a p hs l i d ep l a t e ,a b r a s i o nm e a s u r e m e n t ,u l t r a s o n i c ,d s pc h i p 西南交通大学 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学 校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查 阅和借阅。本人授权西南交通大学可以将本论文的全部或部分内容编入有关 数据库进行检索,可以采用影印、缩印或扫描等复印手段保存和汇编本学位 论文。 本学位论文属于 1 保密口,在年解密后适用本授权书; 2 不保密一使用本授权书。 ( 请在以上方框内打“4 ) 幕 诛 尹, 名 ,卜戳。 作 撕 姊 沙 论 : 位期 学日 西南交通大学学位论文创新性声明 本人郑重声明:所呈交的学位论文,是在导师指导下独立进行研究工作所得的成果。除 文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成 果。对本文的研究做出贡献的个人和集体,均已在文中作了明确的说明。本人完全意识到本 声明的法律结果由本人承担。 本学位论文的主要创新点如下: 本文通过分析当前电力机车受电弓使用现状和检测手段,提出以超声波传感器作为检测 元件,将超声波测量原理运用到受电弓滑板的磨耗检测中。本文将超声波测距原理运用到 受电弓滑板的磨耗检测中,使得上位机的数据处理更加简单;对受弓滑板进行定 点测量,没有运动部件,系统控制容易,不会发生机械故障;以t m s 3 2 0 l f 2 4 0 7 a 芯片作为控制元件,使系统运行更快,功能更强:系统的上位机采用了可视化仿 真技术,利用o p e n g l 开发的上位机可视化仿真程序可以模拟出受电弓的磨耗状 况,比较直观。 铱森 硼舌、 西南交通大学硕士研究生学位论文第1 页 1 1 研究的背景和意义 第一章绪论 从1 9 9 7 年4 月1 日至2 0 0 7 年4 月1 8 日,我国铁路先后进行了六次大提 速,随着铁路系统电气化程度的不断提高及电力机车速度的不断加快,为了 保证电力机车安全与稳定的运行,对电力机车各关键部位的状态监测就显得 尤为重要了。其中对受电弓与接触网之间接触状态的检测就是一个非常重要 的环节。为了确保受电弓与接触网之间的良好接触,就必须对受电弓滑板的 表面状态进行检测。根据现场考察发现,受电弓滑板报废主要是因为中间部 分磨损严重或被击碎,如图1 1 、1 - 2 所示。 麟翟攀雾鬻翻黔誉爹譬瑟 鲨麟 图i - i 滑板中部磨损严重幽1 - 2 泔板中部被击碎 1 2 国内受电弓检测现状 目前铁路系统中对电力机车受电弓磨耗的检测,大多采用人工目测, 采用此方法必须停车,这足电力机车入库检修的一个工序,费时费力,如图 1 - 3 所示,根本不能对机车受电弓进行实时检测、在线检测。只有机车行驶规 西南交通大学硕士研究生学位论文第2 页 定里程后,才能将机车驶入机务段,进行系统检查和维修。机车在行驶过程 中,发生受电弓损坏,若机车司机及时发现,会升后弓作业,但若司机未能 及时发现,则受损的受电弓对接触线可能造成严重刮伤。 图1 - 3 人工检修受电弓 目前国内外开发了一系列的滑板磨耗检测装置,如国内的移动激光传感 器检测,日本的c c d 摄像机自动检测装置和车载光纤检测系统等。 移动激光传感器检测,此方法能够做到自动检测、精确测量,但不足之 处是机车仍需停车检测,同样无法实现机车在线实时检测。移动激光传感器 检测以光学三角测量为设计基础。半导体激光器发出的激光通过镜头射向受 电弓滑板。激光光束被反射后通过另一镜头投射到传感器的p s d 元件( 位置 检测元件) 向某一方向移动检测装置在有磨耗的地方,反射光束投射在 p s d 元件上的位置就会发生变化,经过相应的信号处理,最终得到滑板的磨 耗状况,如图1 - 4 所示。 c c d 摄像检测系统是采用定点设置的4 台c c d 摄像机对运行中的机车 车辆受电弓进行摄像,通过图像处理可自动检查滑板的超限、缺口及翘曲等 异常现象,但该系统受电磁干扰及雨雪、光照等自然因素影响较大。 车载光纤检测系统通过检测并排放置在滑板边上的透明塑料光纤经磨损 后的透光量来日j 接测量滑板的磨耗程度,但该系统只能对滑板某个固定点进 行检测,不能对整个滑板进行整体检测,如图i - 5 所示。 西南交通大学硕士研究生学位论文第3 页 先好缝 图1 4 移动激光传感器检测图1 - 5 车载光纤检测 1 3 本文采用的设计方法 针对铁路机车受电弓实际使用现状,本文设计了一种新型的受电弓检测 装置,该装置基于d s p 处理器t m s 3 2 0 l f 2 4 0 7 a 为核心控制超声波传感器测 量受电弓表面磨损值,以超声波传感器作为检测元件,对机车受电弓滑板进 行在线多点实时检测,文章在国内首次提出将超声波测距原理运用到受电弓 滑板厚度的磨耗检测中来。选用超声波传感器作为检测元件有许多优点,如 超声波指向性强,能量消耗缓慢,本身波形不易受外界干扰,反射、折射及 衍射性质与光波接近。使用超声波检测往往比较迅速、方便、计算简单、抗 干扰能力强、易于做到实时控制。近年来,随着超声波技术的日趋成熟,超 声波测量日益精确,使得超声波传感器能够达到受电弓检测的精度要求。 1 4 本文的主要工作内容 硬件部分包括装置壳体及框架设计、机箱设计、电路板制作。 硬件电路设计包括d s p 处理器最小系统电路、传感器触发电路、传感器 返回信号接收电路、d s l 8 8 2 0 测温电路、串口通信电路。在触发电路和信号 接收电路中,分别使用两片译码芯片和十六选一选通芯片进行通道选择,可 西南交通大学硕士研究生学位论文第4 页 以实现各传感器独立、分时工作,从而避免传感器之间的相互干扰。 软件方面包括下位机软件和上位机软件,下位机程序采用c 语言作为主 要的编程语言,下位机代码主要实现光电传感器测速、超声波传感器控制及 返回数据的处理、d s l 8 8 2 0 温度传感器的测温、串口通讯。目前c 语言的执 行效率不断提高,可达到汇编语言执行效率的8 0 9 0 ,且可读性好,便于在 调试期查错。本文结合硬件系统对下位机软件进行了充分的调试,实现了下 位机系统对受电弓的动态仿真测量。 上位机程序采用v c + + 6 o 编写,上位机程序包括串口通讯、o d b c 数据 库、o p e n g l 图形成像、图形和数据打印等功能。 西南交通大学硕士研究生学位论文第5 页 第二章超声波特性及测距原理 2 1 超声波特性 声波是物体机械振动状态( 或能量) 的传播形式。所谓振动是指物质的 质点在其平衡位置附近进行的往返运动。譬如,鼓面经敲击后,它就上下振 动,这种振动状态通过空气媒质向四面八方传播,这便是声波。超声波是指 振动频率大于2 0 k h z 以上的,其每秒的振动次数( 频率) 甚高,超出了人耳听 觉的上限( 2 0 k h z ) ,人们将这种听不见的声波叫做超声波。超声和可闻声本 质上是一致的,它们的共同点都是一种机械振动,通常以纵波的方式在弹性 介质内传播,是一种能量的传播形式,其不同点是超声频率高,波长短,在 一定距离内沿直线传播具有良好的束射性和方向性。 超声波具有如下典型的声学特性: ( 1 ) 声速特性 超声波是一种弹性机械波,与光波不同,可以在固体、液体和气体中以 不同的速度进行传播,其速度受介质温度、压力等因素的影响,但在相同外 部环境下,超声波在同一介质中的传播速度是一常数。这是所有超声仪表进 行测量的基础。我们知道,电磁波的传播速度为3 x 1 0 sm s ,而超声波在空 气中的传播速度为3 4 0m s ,其速度相对电磁波是非常慢的。超声波在相同 的传播媒体里( 如大气条件) 传播速度相同,即在相当大的频率范围内声速不 随频率变化,波动的传播方向与振动方向一致,是纵向振动的弹性机械波, 它是借助于传播介质的分子运动而传播的,波动方程描述方法【1 0 l 与电磁波是 类似的: a = a ( x ) c o s ( c o t + k x ) 式中:a ( x ) 为振幅,为圆频率,t 为时间,x 为传播距离,k = 2 p x 为波数, a 为x 处的质点振动位移。 ( 2 ) 反射特性 超声波从一种介质进入另一种介质时,由于两种介质密度不同,因而在 两种介质分界面,其传播方向会发生改变:其中一部分折射入另一种介质, 西南交通大学硕士研究生学位论文第6 页 另一部分被反射回来。 超声波通过声阻抗不同的两种介质时,在媒质界面上将产生反射,声阻 抗差别越大,反射的超声波强度越大。当超声波从气体传播到固体或液体时, 由于两种介质密度相差悬殊,声波几乎全部被反射;当超声波从固体传播到 液体( 或反过来) 时,声波因为传播的介质密度相近而几乎全部折射。反射 能量与入射能量之比值称为反射系数。 反射波的方向与入射角度有关,当入射超声波呈垂直投射到两种声阻抗 不同的介质分界面时,反射的超声波也呈垂直方向,如图2 1 所示;若超声 波倾斜入射到声阻抗不同的介质分界面上,则反射超声波也呈一斜角,且反 射波的角度等于入射波的角度,与光波的反射定律相同,即反射角等于入射 角。如图2 2 所示。 反射波 入射波 质1 - 质2 透射波 图2 - 1 超声波垂直入射后的传播图2 2 超声波倾斜入射后的传播 ( 3 ) 衰减特性 超声波在传播过程中,由于声束扩展、散射及受介质和介质中杂质的阻 碍或吸收,其强度会产生衰减。其衰减公式如下: a ( x ) = a o , 啦( 1 ) 衰减系数与声波所在介质及频率的关系为: a = c f 2 ( 2 ) 式中:a ( x ) 为振幅,为常数,x 为传播距离,a 为衰减系数,c 为介质 常数,f 为振动频率。 西南交通大学硕士研究生学位论文第7 页 在空气里,c = 2 x l o 1 3s 2 c m ,将振动的声波频率f _ - 4 0 k h z ( 超声波) 代入 式( 2 ) ,可得a = 3 2 x 1 0 4l e r a ,即1 a = 3 1 2 5m ;若f = 3 0 k h z ,则1 a = 5 5 5 6m 。 它的物理意义是:在( 1 a ) - 长度上,平面声波的振幅衰减为原来的l c ,由此可 以看出,频率越高,衰减得越厉害,传播的距离也越短。 2 2超声波在测距方面的运用 2 2 1 超声波测距的原理 超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波 在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射 点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。 测距的公式表示为:l = c x t 式中:l 为测量的距离长度;c 为超声波在空气中的传播速度;t 为测量 距离传播的时间差( t 为发射到接收时间数值的一半) 。 2 2 2 超声波测距的误差分析 根据超声波测距公式l = c t ,可知测距的误差是由超声波的传播速度误 差和传播时间误差引起的。 1 时间误差 当要求测距误差小于0 5 m m 时,假设已知超声波速度c = 3 4 4 m s ( 2 0 c 室 温) ,忽略声速的传播误差。测距误差s t , t t ,说明:当机车以3 0 k m h 的速度通过本测试装置时,不会 西南交通大学硕士研究生学位论文第3 0 页 出现漏测,能够满足对测量时间的要求。 综合考虑下位机硬件电路的反应时间及系统余量要求,系统设定机车最高 行驶速度为3 0 k m h 。 假设机车经过检测装置时有速度变化,设机车到达检测装置时的行驶速度 v 1 为2 0 k m h ,而下位机系统不考虑机车经过时的速度变化,仍然以机车此时的 行驶速度控制超声波传感器工作,即下位机仍以2 0 k m h ( 5 5 6 m s ) 的速度计算 机车通过检测装置的时间,设当机车刚进入或刚离开最后一个超声波传感器且 传感器仍然能检测到受电弓滑板时的机车加速度为a ,则 l a l ( s l v l y ss 2 :争 a ( 0 7 5 5 6 ) 2s o 0 2 5 ;争l 口is3 1 5 ,行s z 22 当机车以速度l o k m h 通过时,机车加速度必须满足川s0 7 9 m s 2o 当机车以速度3 0 k m h 通过时,机车加速度必须满足l 口is7 1 m s 2 。 由此可见,为了保证装置能够完全检测到受电弓表面,机车越接近最高检 测速度,系统对机车匀速要求越小;当机车速度越低,系统对机车的匀速要求 越高。 4 4 本章小节 本章详细介绍了下位机系统所用的芯片、传感器等硬件资源,并给出了下 位机电路相应部分的一些原理图。根据系统的检测原理和要求,阐述了下位机 的硬件电路的设计思路及具体的电路工作顺序。因本系统对机车受电弓滑板的 磨耗检测是建立在对机车行驶速度准确测量的基础上的,系统对机车行驶的匀 速要求较高,所以本章通过计算分析给出了在满足系统可靠测量的前提下机车 通过检测装置时所允许的速度变化范围。 西南交通大学硕士研究生学位论文第3 1 页 第五章检测系统软件设计及调试 5 1 下位机软件设计及调试 5 1 1t m s 3 2 0 l f 2 4 0 7 a 器件编程环境 d s p 控制程序开发语言主要有c 语言、汇编语言及这两种语言的混合编程。 汇编程序运行效率高、实时性容易控制,但其开发周期长、可读性差、维护困 难;用c 语言开发d s p 程序可读性和可移植性强,同时使用c 编译器的优化功能 可以提高编程的效率。为了便于系统开发和调试,本设计中采用c 语言编程设 计下位机程序,在访问d s p 硬件时,c 语言不能深入访问底层硬件控制寄存器 时,可以通过a s m 语句嵌入相应的汇编语言来实现硬件访问。 t m s 3 2 0 c 2 0 0 0 处理器中c 程序的运行环境: c 编译器将存储器作为程序存储器和数据存储器两个线性区来处理。程序 存储器包含可执行的代码和常量、变量初值数据;数据存储器包含外部变量、 静态变量和系统堆栈。由c 程序产生的每个代码段和数据段被放入相应的存储 空间中连续的区域内,链接器完成将定义存储器映射并且分配代码和数据到目 标存储器的工作1 2 。 1 段。编译器产生可以重新定位的代码段和数据段,这些段包括以下几种: ( 1 ) 已初始化的段。包含数据和可执行代码。c 编译器建立的已初始化段 包括:t e x t 段,为所有的执行代码;c i n i t 段,为初始化的变量和常量;c o n s t 段,为字符串常量以及被明确初始化的全局和静态变量的声明;s w i t c h 段,为 s w i t c h 语句的列表。 ( 2 ) 未初始化的段。在存储器( 通常是r a m ) 中占用空间,程序运行时 可以使用这些空间来产生或存储变量。c 编译器建立的未初始化段包括:b s s 段,为全局或静态变量保留空间,指定了c 选项后,程序启动时,c 的引导子 程序会复制c i n i t 段中的数据并存储到b s s 段中;s t a c k 段,为c 的系统堆栈分配 内存,该存储器向函数传递参数并给局部变量分配寄存器;s y s t e m 段,为动态 分配内存保留空间,若c 语言不使用动态分配内存的函数,编译器将不会建 西南交通大学硕士研究生学位论文第3 2 页 立s y s t e m 段。 链接器将从不同的模块中提取这些独立的段,并将相同名字的段组合在一 起以创建输出段。完整的程序是由这些输出段组成的,可以将这些输出段映射 到地址空间的任何位置以满足系统要求。t e x t 段、c i n i t 段和s w i t c h 段可以映射 至i j r o m 或r a m 中,但必须位于程序存储器中( p a g e0 ) ;c o n s t 段也可以映射到 r o m 或r a m 中,但必须位于数据存储器中( p a g e1 ) ;s t a c k 段和s y s t e m 段必须 映射在r a m 中,而且必须位于数据存储器中( p a g e1 ) 。 2 系统堆栈 c 编译器使用软件堆栈进行以下工作:分配局部变量、向函数传递参数、 保存处理器状态、保存函数的返回地址、保存暂时的结果、保存寄存器。 堆栈从较低地址向鞍高地址偏移,编译器使用以下两个寄存器管理堆栈: a r l ,堆栈指针s p ,指向当前堆栈顶;a r 2 ,帧指针f p ,指向当前帧的起始点。 每一个函数都会在堆栈顶部建立一个新的帧,用来保存局部的或临时的变量。 系统初始化时s p 被设置为栈底的指定地址,这是s t a c k 段的第一个单元。由于 堆栈的位置依赖于s t a c k 段被告分配的区域,因此,堆栈的实际地址取决于链 接时堆栈的位置。默认的堆栈大小是1 k b ,在链接时可以使用s t a c k 选项来改变 堆栈的大小。 3 变量的初始化 c 编译器产生的代码适合于在基于r o m 的系统中作为固化程序使用。在该 系统中,c i n i t 段中的初始化表( 用于初始化全局和静态变量) 存储在r o m 中。 在系统初始化时,c 的b o o t 子程序从这些表中( r o m 中) 将数据复制到b s s 段的 初始化变量中( 鼬m 中) 。在一个程序直接从目标文件被装载到存储器并运行的 情况下,可以避免c i n i t 段占用存储器中的空间。装载程序可以直接从目标文件 中读取初始化表,并在装载时直接执行初始化。 4 为静态和全局变量分配存储器 有一个唯一的、连续的空间将被分配给c 程序中声明的每个全局或静态变 量,链接器决定该空间的分配地址。c 编译器希望通过在b s s 段中为全局或静态 变量保留空间,以将它们分配到数据存储器中。在同一模块中声明的变量被分 配到单独的、连续的存储块中。 在t m s 3 2 0 c 2 0 0 0 的工程文件的控制程序中应该包含如下文件:链接命令文 西南交通大学硕士研究生学位论文第3 3 页 件( c m d ) ,划分物理存储器,并将程序中的数据和代码段映射到存储器中; 头文件( h ) ,定义t m s 3 2 0 l f 2 4 0 7 a 的片内外设控制寄存器;汇编代码文件 ( a s m ) ,定义中断向量表;c 代码文件( c ) ,程序文件。 此外,一个c 程序所执行的一些任务( 如输入输出、动态存储器配置、字 符串操作以及三角函数等) 并不是c 语言本身的一部分,然而,美国国家标准 委员会( a n s i ) 的c 标准定义了一套运行期支持函数来执行这些任务。使用 a n s i 的标准库可以确保有一套统一的函数,以实现程序广泛的可移植性。除 了a n s i 指定的函数,t m s 3 2 0 c 2 0 0 0 运行期支持库r t s 2 x x 1 i b 还包含一些关于特 定处理器指令和c 语言直接输入输出请求的函数。在链接命令文件( e n i d ) 中, 通过1 选项加载运行期支持库。 不同t m s 3 2 0 l f 2 4 0 7 a 系统的c m d 、h 、a s m 文件基本相同,只需要根据实 际情况作一点相应的修改即可,本章主要介绍c 程序( 系统控制主程序) 编制 思路和过程。 5 1 1 程序设计思路 在主程序m a i n o q b ,提供了系统运行的程序入1 :3 地址ci n t 0 。在程序的头 部,首先定义了各个子程序及相关变量,并且对系统各寄存器状态进行初始化。 根据系统功能的需要对d s p 2 4 0 7 a 的加端口进行初始化( 主要是对i o 的功能进 行设置、输入输出状态进行设置及输入输出高低电平进行设置) ,调用相关子 程序,对外中断寄存器进行设置,对定时器进行初始化。由于d s p 系统是一个 嵌入式系统,当程序执行至最后一条语句时,若没有其它程序接收程序指针, 程序就会跑飞。但d s p 系统程序只是一个主程序及其包含的若干子程序,为了 防止程序跑飞,必须让程序指针永远留在主程序中,即在主程序中加入一个 w h i l e ( 1 ) 的死循环。 本系统设计的出发点是上电复位后系统可以无限次地进行检测,因此必须 将系统触发部分的代码放x , w h i l e ( 1 ) 死循环中。软件设计中使用了一个布尔变 量控制超声波传感器的触发,当d s p 2 4 0 7 a 接收到两个光电传感器的返回信号 时,该变量为真,使能超声波传感器的触发。根据机车速度计算定时器循环周 期,通过定时器中断控制超声波传感器工作,超声波传感器完成检测后温度传 西南交通大学硕士研究生学位论文第3 4 页 感器开始测温,最后经过2 0 秒延时后向上位机发送数据。在整个运行过程中, 外设中断和定时器中断都是由d s p 2 4 r a 相应的中断寄存器进行监测,具有较 高的优先级。当中断事件发生时,系统将停止主程序的运行,并在停止处设置 断点,转而处理中断子程序,处理完中断事件后,再回到断点处继续执行主程 序。所以在程序设计时,将不允许被停止的重要控制代码都放在主程序外的中 断子程序中执行,本系统中只是将d s l 8 8 2 0 温度传感器测温和向上位机发送数 据的串口通信放在w h i l e ( 1 ) 死循环中,并由一个b o o l 变量s e n d e n a b l e 控制。其 实程序代码设计是非常灵活的,可以通过不同方法实现同一功能。 系统上电复位后,等待机车经过。当第一个光电传感器检测到机车受电弓 经过时,触发外设中断1 ,在外设中断子程序中设定时器3 的t 3 c n t 为0 ,即定 时器3 重新开始计数;当第二个光电传感器检测到机车受电弓时,在外设中断 子程序中保存定时器3 的t 3 c n t 值,并置1 超声波传感器触发使能变量t 2 e n a b l e 。 把定时器3 的值结合定时器1 的周期计数寄存器值t 1 p r 及传感器之间的距离推 导出触发超声波传感器的时间间隔,由定时器1 依次触发3 0 个超声波传感器。 由于超声波传感器每触发一次就会返回两个脉冲信号,分别代表触发时刻和回 波接收时刻,即每触发一个超声波传感器,d s p 2 4 0 7 a 就会检测到两次外设中 断事件,分别为x i n t l 和x i n t 2 。接收到第一个回波信号时触发x i n t l ,并在 中断程序中设定时器3 的t 3 c n t 为了o ;接收到第二个回波信号时触发x i n l 2 , 并在中断程序中将t 3 c n t 的计数值保存至* a d d 内存地址中( a d d 从o x a 0 0 0 ) ,同 时a d d 地址! j i l l 。每触发一个超声波传感器就会触发两次外中断,并保存一个 t 3 c n t 值,当所有的超声波传感器都工作一遍后,系统就会保存3 0 个t 3 c n t 值,同时内存地址移至0 x a 0 1 e 。在超声波传感器检测完成之后,系统开始初 始化d s l 8 8 2 0 温度传感器,d s l 8 8 2 0 在初始化之后即开始了温度转换。 d s l 8 8 2 0 可以将温度值转换成数字量,但其没有发送能力,只能通过d s p 2 4 0 7 a 按照严格的时序来读取d s l 8 8 2 0 数据引脚上的电平,并将读取的数值保存在 o x a 0 1 f 中。最后经过2 0 秒延时后,置1 串口通讯使能变量s e n d e n a l b e ,下位机与 上位机p c 进行串口通讯,将内存地址从0 x a 0 0 0 至0 x a 0 1 f 保存的内容写入串口 发送缓冲区。d s p 2 4 0 7 a 是1 6 位定点处理器,其内存中保存的数据皆为1 6 位, 而串口通讯每次发送的数据位为8 位,因此,每传递一个1 6 位的数据都要进行 两次发送。主程序的流程图、外设中断及定时器中断流程图分别说明如下。 ( 1 ) 主程序流程图及代码 西南交通大学硕士研究生学位论文第3 5 页 图5 1 主程序流程图 西南交通大学硕士研究生学位论文第3 6 页 主函数w h i l e ( 1 ) 循环中的内容: w h i l e ( 1 ) i f ( s e n d e n a b l e = = 1 ) a s m ( ”s e t cn 【 m ”) ; g e t t e m p 0 ; a s m ( ”c l r ci n t m ”) ; a d d r = a d d r b a c ; f o r ( i - - 0 ;i 8 ; s c i d a t a f l a g = l ; 传递低八位 s c i d a t a = ( 宰a d d r ) ; s c i d a t a f l a g = 0 ; a d d r + + ; s c l s e n d o ; f o r ( m = 0 ;m = 1 6 ; a d d r = s p t i m e ; e l s e 幸a d d r = t 3 n u m ; a d d r + + ; n u m - - ; i f ( ( p e d a t d i r & o x 0 0 8 0 ) l = = o x 0 0 8 0 )i o p e 7 = i ;l e d 灭 p e d a t d i r = p e d a t d i r 0 x f f t f ; e l s e p e d a :i d i r = p e d a t d i rl0 x 8 0 8 0 ; i f ( ( p f d a t d i r & 0 x 0 0 3 0 ) = = 0 x 0 0 3 0 ) 关闭i o p f 4 5 p f d a t d i r = p f d a t d i r & 0 x f f c f ; e l s ep 兀) a t d i r = p f i 姗m 10 x 3 0 3 0 ; e l s ei f ( e c h o = = 2 )如果接收到第三个回波,则上一个数据 西南交通大学硕士研究生学位论文第3 9 页 重写,将接收第二个回波时保存的数据 a d d r - ; 覆盖 * a d d r = t 3 c n t ;记录距离数据 a d d r + + ; ) e c h o + + ; x i n t f l a g = l ; 回波接收标志x i n t f l a g 置1 f o 玎( m = 0 ;m 或定时器中断 入 光电传感器检测 到机车受电弓? !土 能定时器触 声波传感器 辇篙篙够岁 发时间间隔? 一ly 发超声波传感器( 对 i 1 :3 置高电平5 0 u s ) 清中断标志位 并打开中断 返回主程序 图5 - 3 定时器中断子程序 定时器中断子程序: 定时器3 进入中断( 溢出中断) ,用来记录受电弓经过两个光电传感器时定 时器3 计满上限溢出的次数t 2 n ,同时置1 使能激发超声波传感器标志位t 2 e n a b l e 。 若定时器3 没有进入中断,贝j j t 2 n 为o ,受电弓经过时的速度只要用定时器3 的 t 3 c n t 的值计算就可以了;若定时器3 进入了中断,贝, o t 2 n j j h l ,受电弓经过时 西南交通大学硕士研究生学位论文第4 1 页 的速度可以用t 2 n * 6 5 5 3 6 + t 3 c n t 计算得到。 定时器1 进入中断( 周期中断) ,用来激发超声波传感器。通过定时器3 测 得的受电弓行驶速度,设定激发一次超声波传感器定时器1 需要进入周期中断 的次数n u m l e d 。 v o i dc _ i n t 2 0 l 定时器1 3 中断服务程序 i f ( p i v r = = 0 x 2 f ) t 2 n + + ;计数定时器3 周期寄存器溢出的次数 t 3 c n t = 0 ; e v b i f r a = 0 x 8 0 ; i f ( p i v r ! = 0 x 2 7 ) 一【 a s m ( ”c l r ci n t m ) ; r e t u r n ; ) t 1 c n t = o ; i f ( w a i t f l a g = = 1 ) n u m l e d 0 - - ; i f ( n u m l e d o = = o ) t 2 e n a b l e = l ; w a i t f l a g = 0 ; ) i f ( t 2 e n a b l e = = 1 ) n u m l e d 一; i f ( n u m l c d = = o ) n u m l e d = n u m l e d b a c ; i f ( x i n t f l a g = = 0 )未接收到回波信号时,将计数值写o a d d r = 0 ; a d d r + + ; 西南交通大学硕士研究生学位论文第4 2 页 n u m 一; ) i f ( n u m - = o ) s e n d e n a b l e = l ; t 2 e n a b l e = o ; i o a d d r = 0 x 0 0 0 1 ; i o a d d r l = 0 x 0 0 0 1 ; 串口数据发送使能 关闭传感器触发 i f ( ( p e d a t d i r & o x 0 0 8 0 ) = - o x 0 0 8 0 ) p e d a t d i r = p e d a t d i r 0 x f f 7 f ; i f ( ( p f d a t d i r 0 x 0 0 3 0 ) = = o x 0 0 3 0 ) p f d a t d i r = p f d a t d i r & 0 x f f c f ; ) x i n t f l a g = 0 ; e c h 0 = o ; i f ( n u m 1 5 ) 关闭i o p e 7 关闭i o p f 4 5 此参数用来表示是否接收到回波 将回波数置零 p b d a t d i r = p b d a t d i r ii o a d d r ; i f ( n u m 2 3 ) p a d a t d i r = p a d a t d i r 10 x 1 8 1 8 ;o p e ns t o r l ,s i g l e l s e p a d a t d i r = p a d a t d i r 10 x 3 0 3 0 ;o p e ns t o r l ,s i g 2 p f 】m 虹d i r = p f d a t d i r & 0 x f f 3 0 : p f d a t d i r = p f d a t d i r li o a d d r ; i o a d d r + + : f o r 0 = 0 j = 5 0 j + + ) a s m ( ”n o p ”) ;延时5 0 u s p b d a 田d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年注册验船师资格考试(B级船舶检验法律法规)综合试题及答案一
- 2025年项目经理IT行业面试模拟题及答案详解
- 2025年注册验船师资格考试(A级船舶检验专业案例分析)测试题及答案一
- 2025年注册验船师资格考试(B级船舶检验专业基础安全)练习题及答案一
- 2025年公需科目人工智能和健康考试题和答案
- 海安银行考试题库及答案
- 2025年检察院审查起诉官选聘预测试题与解析
- 2025年软件编程工程师招聘面试模拟题及答案详解
- 株洲知识培训班课件
- 公务员面试题及答案法院
- 中学语文教学资源开发与利用指南
- 2025年材料管理岗位考试题库
- 年级主任职责详解及管理要点
- 储能项目投资测算方案
- 【25秋】统编版小学语文二年级上册-《第八单元大单元设计》课件
- 2025年长沙中考化学试卷真题解读及复习备考指导
- 舆情安全管理办法
- 2025个人洗护市场趋势洞察报告-魔镜洞察
- 替换车管理办法规定
- 厨房4D管理课件下载
- 临床营养学病例报告
评论
0/150
提交评论