机车冲动检测仪USB DEVICE接口模块设计.docx
《机车冲动检测仪USB DEVICE接口模块设计.docx》由会员分享,可在线阅读,更多相关《机车冲动检测仪USB DEVICE接口模块设计.docx(35页珍藏版)》请在冰豆网上搜索。
机车冲动检测仪USBDEVICE接口模块设计
密级:
NANCHANGUNIVERSITY
学士学位论文
THESISOFBACHELOR
(2011—2015年)
题目机车冲动检测仪USBDEVICE接口模块设计
学院:
信息工程学院系自动化
专业班级:
测控技术与仪器112班
学生姓名:
万怡鹏学号:
5801211094
指导教师:
张宇职称:
讲师
起讫日期:
2015年3月至2015年6月
南昌大学
学士学位论文原创性申明
本人郑重申明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果。
对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。
本人完全意识到本申明的法律后果由本人承担。
作者签名:
日期:
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权南昌大学可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
保密□,在年解密后适用本授权书。
本学位论文属于
不保密□。
(请在以上相应方框内打“√”)
作者签名:
日期:
导师签名:
日期:
机车冲动检测仪USBDEVICE接口模块设计
专业:
测控技术与仪器学号:
5801211094
学生姓名:
万怡鹏指导教师:
张宇
摘要
大家都知道我们国家是一个泱泱大国,国土面积是970万平方公里,两地之间的距离很大,因此当我们外出时,火车成为了我们出行的重要交通工具,是国家运输体系的骨干。
无论是从铁路自身的发展还是从保持国民经济持续快速发展的需要看,加快铁路建设迫在眉睫。
大家都知道列车运行过程中,司机操纵是否平稳直接影响着旅客乘车的舒适感,因此,测试其操纵水平对提高铁路服务质量起着至关重要的作用。
铁路上传统的方法是采用/冲动棒0的评测方法,根据一组木棒的倒伏情况来判定冲动状况。
该方法随机性较大、精度低,没有可重现性,不符合铁路高速化、现代化的发展趋势。
本文介绍的智能列车冲动检测仪,采用高性能的加速度传感器采集数据,用PC机上的配套软件对其分析处理,实时显示列车运行时的加速度变化曲线,并给出冲动值,同时可以将数据通过USB发送到PC机,能够单机工作或与PC机联机工作,进行在线或离线冲动分析、司机考核、报表打印等工作。
本文第一步介绍了课题研究背景,列车冲动的危害、形成工况等,接下来介绍列车冲动检测仪的系统结构及其原理,紧接着介绍了USB固件芯片PDIUSBD12、加速度传感器ADXL345以及MCU主芯片STC89C52RC,数据采集模块,数据传输模块和数据分析处理模块的电路连接以及软件程序。
USB是一种新型的接口技术,由一些PC大厂商,像Intel、Microsoft等为了解决日益增加的PC外部设备和有限的主板插以及端口之间的矛盾而制定的一种串行通信的标准。
本文重点介绍了USB的产生、发展情况,USB拓扑结构,以及几大厂商的USB芯片种类,本系统所使用的是PHILIP公司生产的PDIUSBD12芯片,着重介绍了机车冲动检测仪的数据传输模块——USBDEVICE接口模块的硬件电路以及它的工作原理,主要说明了PDIUSBD12芯片与单片机的硬件连接方式、软件的设计以及配套的上位机软件的的设计。
关键词:
USB;PDIUSBD12;机车冲动
Thedesignoflocomotiveimpulsedetectorusbdeviceinterfacemodule
Abstract
Itiswellknowninourcountryisalargecountry,thetrainisthemostimportantmeansoftransportation,isthebackboneofthenationaltransportationsystem.Whetherfromthedevelopmentoftherailwayitselforfrommaintainsustainedandrapiddevelopmentofnationaleconomyneedstosee,tospeeduptherailwayconstructionisimminent.Weallknowthetrainoperationprocess,whetherthedriver'soperationdirectlyinfluencesthepassengersridecomfort,therefore,totestitscontrolleveltoimprovethequalityofironroadserviceplaysanimportantrole.Railwayinthetraditionalwayistouse/impulsebar0evaluationmethod,accordingtoasetofsticksoflodgingsituationtodetermineimpulse.Randomness,lowprecision,thismethodcannotreproducibility,isnotinconformitywiththehighspeedrailway,thedevelopmenttrendofmodernization.Intelligenttrainimpulsedetectorintroducedinthispaper,usingthehighperformanceofaccelerationsensorstocollectdata,usingPCsuitefortheanalysisandprocessing,real-timedisplaytheaccelerationcurveoftrainrunning,andimpulsevalueisgiven,atthesametime,thedatacanbesentviaUSBtothePC,abletoworkstandaloneoronlinetoworkwithaPC,onlineorofflineimpulseanalysis,driverexamination,reportprinting,etc.
Thispaperfirstintroducestheresearchbackground,trainimpulseharm,formationconditionsandsoon,thenintroducesthesystemstructureandtheprincipleoftrainimpulsedetector,andthenintroducestheUSBfirmwarechipPDIUSBD12,accelerationsensorADXL345mainchipandMCUSTC89C52RC,dataacquisitionmodule,datatransmissionmodule,thedataprocessingmoduleandthecircuitconnectionandsoftwareprogram.
WeknowthattheUSBisanewinterfacetechnologyinthefieldofapplicationinthePC,itissomePCmanufacturers,likeIntel,MicrosoftandsooninordertosolvetheincreasingPCperipheralequipmentandlimitedthemainboardandthecontradictionbetweentheportsofakindofserialcommunicationstandard.ThispapermainlyintroducesthegenerationanddevelopmentofUSB,USBtopologystructure,thetypesofUSBchipandseverallargemanufacturers,thissystemisusedbyPHILIPcompanyproducesthePDIUSBD12chip,emphaticallyintroducedthelocomotiveimpulsedetectordatatransmissionmodule,USBDEVICEinterfacemoduleofhardwarecircuitanditsworkingprinciple,mainlyillustratesthePDIUSBD12chipandMCU,thedesignofthesoftwareandhardwareconnectionmodeofPCsoftwaredesign.
Keyword:
usb;pdiusbd12;locomotiveimpulse
第一章研究背景
1.1背景
随着国家的日益壮大,社会的飞速发展,我们自身经济水平的提高,外出旅行成了人们生活中比较常见的一种现象。
人们现在外出旅行首先得选择出行的交通方式,像飞机,火车,轮船等。
现在,人们在长途旅行交通工具上也有了越来越多的选择。
国家建设了许多的高速公路,我们现在乘坐长途客车外出旅行也越来越方便了,再加上现在的飞机票的的价钱也不再让人望而生畏,到达了大家所能接受的范围。
以上种种都对铁路运输的地位构成了巨大的威胁。
铁路部门面对铁路建设所面临的挑战,需要开始反思,继续发展完善,以谋取能够在现在竞争激烈的市场中保证自己的优势地位。
现在的人们不但对外出旅行的交通工具提出更加便利、更加快捷等要求,而且旅客朋友们对交通工具的乘坐环境及舒适度也提出了要求,所以如何提高速度与舒适性成为铁路建设方面所要解决的问题。
判断列车在运行的时候的平稳性的一个重要指标是舒适度,列车冲动不仅仅影响了旅客朋友们乘车的舒适性,更加糟糕的情况是巨大的冲击会给我们自身带来巨大的伤害。
1.2机车冲动的产生以及检测
我们都知道机车冲动发生的具体因素有很多,其中就有车辆本身结构设计问题、制动方式以及司机操纵等。
将硬件上的原因排除在外的话,机车冲产生的最主要的原因是司机对列车不正当的操作。
列车在加速、减速、制动、启动和停止的这些时候产生的纵向冲击,大大的影响了旅客乘车的舒适程度。
因而冲动指标就成为了认定司驾驶水平的重要的根据。
目前的现状是,我们针对纵向冲击采取的检验的手段是“冲动棒”,它具有的优点是操作简单,方便,而且它是从定性的角度给出了机车冲动大概的等级。
但是这种方法只能给出大概的等级,却没有办法给出具体的数据,没有指出量化标准,,而且有很大的偶然性和随机性。
在真正的测试过程中,经常会发生小棒没有倒,然而大棒却倒了的结果。
那么我们怎么才能获得准确的纵向冲击,进而给出衡量司机水平的量化标准,从而建立一个旅客乘坐的舒适度和冲击的数学模型并且能够获得一些评价,成为了目前的一个重要课题。
1.3发展
社会在不断地进步,人也在不断地进步,我们在不断地创新,创造,从而使得电子,计算机得到了巨大的发展,各种智能仪器在许多方面都得到了充分的运用,并且目前的仪器仪表趋向于虚拟化和数据采集系统PC化也成为了计算机技术发展的一种趋势。
我们现在所要研究的新型的机车冲动检测仪就是在这样的背景下应运而生的。
第二章系统简介
2.1系统功能
首先从机车冲动检测仪获得数据,接下来由USBDEVICE接口,将机车相关的数据,如运行时间,冲动加速度等信号,实时发送给上位机并显示数据列表以及趋势曲线。
2.2系统开发平台
本设计需要用到的软件有:
keilC软件、VisualC++软件、AltiumDesigner软件、STC-ISP串烧软件、PC机。
Keil C51是由美国Keil Software公司推出的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
用过汇编语言后再使用C来开发,体会更加深刻。
Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
MicrosoftVisualC++是Win32环境程序,它是由Microsoft公司推出的开发,面向对象的可视化集成编程系统。
它具有程序框架自动生成、灵活方便的类管理、代码编写和界面设计集成交互操作、可开发多种程序等优点,能够通过简单的设置就可使其生成的程序框架支持数据库接口、OLE2,WinSock网络、3D控制界面。
VisualC++是计算机高级语言C++比较好用的编程工具,它是属于一种可视化的计算机语言。
AltiumDesigner这款软件它是Altium公司开发出来的,这是一款针对电路设计的软件,它的优势是能进行概念设计,顶层设计,对输出的生产数据包括在这个过程中的分析验证和设计数据能够进行很好的管理。
新版本的AltiumDesigner不单单只是具有绘制PCB图的功能,现在的新版本具有SCH设计、SCH仿真、PCB设计、AutoRouter和FPGA设计、嵌入式软件开发等强大的功能,它现在是把PCB当作是整个设计的核心部分。
它把项目管理方式、原理图和PCB的双向同步技术、多通道设计、拓朴自动布线以及电路仿真等技术结合在一起。
上位机的软件是我们通过编程实现的,操作简单方便,具有很高的可靠性,具有非常好的人机交互界面等特点。
第三章系统整体设计
3.1系统组成模块
机车冲动检测仪的整个系统由数据采集模块、数据传输模块及数据分析处理模块三部分组成。
数据采集模块:
ADXL345是数字式3轴加速度计,具有很高的分辨率,很广的测量的范围。
它输出的数字量数据是一十六位的二进制数的补码的形式,它的访问形式有两种分别是SPI和IIC。
这款芯片它十分的贴合我们的移动设备。
不但可以测量晶体加速度:
我们所熟知的重力加速度;也可以测量动态的加速度像运动或冲击产生的加速度;它也能够测量很小范围的倾角的变化。
它还具有一个优点那就是另外ADXL345采集的数据不需要经过AD转换后才能到单片机。
数据传输模块
这个模块主要是下位机——单片机通过USB将数据传输给上位机——PC机。
我们在这一部分所要用到的器件是PDIUSBD12,我将其简称为D-12,D-12这款USB器件具有性能优化的特点,它经常被运用在微型的控制器的并行接口通信的场合,具有良好的DMA传输。
我们通常将其进行模块化处理,能够使我们的USB接口选择最适合的微型控制器,能够大大的降低我们的固件成本降低,也大大的减少了我们的开发时间、降低了风险,减少了我们的开发的成本。
从而为我们开发效率,高速度的USB外围设备提出了宝贵的意见。
D-12百分之百的符合USB2.0规范,能够满足大部分的设备的设计,像打印,通信,存储这方面的设备。
所以,D-12可以很好地运用在外设上,像我们日常用的相机,打印机等。
数据分析处理模块
该模块由上位机完成,PC机上配套的软件实现运行时间,冲动加速度等信号的显示,走势曲线的显示。
PC机软件设计通过VisualC++编写,包括USB识别,数据处理,显示,画图,具有良好的人机交互界面,便于使用,可靠性高等优点。
3.2系统实现原理及框图
由于本文是针对已有的机车冲动检测仪,设计USB设备接口,实现机车相关数据,如运行时间,冲动加速度等信号,实时通过上位机USB接口读取并显示数据列表和趋势曲线。
因此本文重点介绍的是机车冲动检测仪的数据传输模块,因采集模块要用到的加速度传感器采集的是数字信号,所以不需要用AD转换后进行传输,所以在这里我们使用ADXL345来产生加速度信号,其产生的信号通过单片机的初步处理,由USB驱动芯片PDIUSBD12传输给PC机上的上位机软件实现显示,处理等。
系统整体结构框图如下所示
图3-1本设计的框图如上
通过系统结构框图我们知道了,整个系统的工作原理是:
首先上位机发出数据采集命令,紧接着由USB传送给下位机单片机启动采集程序,开始采集,下面的工作是我么用下位机将我们获得的数据通过usb传送上位机软件,从而由它来进行处理和显示。
第四章系统硬件设计
4.1数据采集模块——加速度传感器ADXL345
ADXL345是数字式3轴加速度计,具有很高的分辨率,很广的测量的范围。
它输出的数字量数据是一十六位的二进制数的补码的形式,它的访问形式有两种分别是SPI和IIC。
这款芯片它十分的贴合我们的移动设备。
不但可以测量晶体加速度:
我们所熟知的重力加速度;也可以测量动态的加速度像运动或冲击产生的加速度;它也能够测量很小范围的倾角的变化。
它还具有一个优点那就是另外ADXL345采集的数据不需要经过AD转换后才能到单片机。
芯片的优点如下:
超低功耗、用户可选的分辨率。
10位固定分辨率。
FIFO技术。
单振/双振检测。
活动/非活动监控。
自由落体检测、2.0~3.6伏的电压。
输入/输出口的电压具有良好的选择范围是从1.7到vs以及SPI和I2C数字接口。
它的中断模式十分的灵活。
我们可以选择带宽和测量的范围等。
图4.1ADXL345引脚分布
4.2处理器----STC89C52RC
4.2.1STC89C52RC概述
STC89C52RC是宏晶科技推出的,它是一款新型单片机,具有高速/低功耗/超强抗干扰优点,这款芯片的单片机完全兼容了8051单片机的代码,我们有12个时钟周期和6个时钟周期供我们选择
(1)芯片的特点
1增强型8051单片机,有12个时钟周期和6个时钟周期供我们选择
1.可选择的工作电压
2.宽广的工作频率范围
3.我们可以使用的ROM有8K
4.片上集成512字节的RAM
5.32个I/O口:
P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。
6.下载程序是方便
7.具有看门狗功能
8.有3个定时/计数器
(2)芯片的结构图如图4-2
图4-289C52RC的结构图
通过上图的图表我们知晓了:
STC89C52RC主要由CPU中央处理器、存储器、I/O组成。
(3)STC89C52RC的功能描述
它是一款新型单片机,具有高速/低功耗/超强抗干扰优点,这款芯片的单片机完全兼容了8051单片机的代码,我们有12个时钟周期和6个时钟周期供我们选择,在它的片内有4K的ROM,数据的保存时间长。
芯片可以构成单片机最小系统,一个方面占有的位置小了,性能有了很大的提升,降低了系统的成本。
当我们的代码的大小小于4K是,我们芯片的4个P口全都可以供给我们使用,它可以提供给我们5伏的电压让我们来编译程序,它还具有一个优点那就是我们烧录程序的时间很短,是以前单片机的百分之一,而且能够更好的保护器件,提高器件的使用寿命,能够更好的运用在嵌入式这个领域当中。
它的工作电压范围比较广,当芯片处在全静态的工作状态时,工作频率宽在0Hz~24MHz之间,与以前的单片机相比更加的灵活了,而且系统能够调节运行的速度。
芯片为了保证程序以及系统不被别的冒牌的山寨货给模仿去,它的内部具有三级加密。
P0它是一个是三态双向口,记住不是准三态双向口,它也就是我们所说的数据总线口,我们通过这个口我们可以直接对外部存储器进行读/写操作。
(4)STC89C52RC引脚功能及说明
图4-3是芯片的引脚图
图4-3芯片引脚图
VCC是第四十引脚,功能是提供电源电压;
GND是第二十脚,功能是接地;
P0口是第三十二脚到三十脚,P0它是一个是三态双向口,记住不是准三态双向口,它也就是我们所说的数据总线口,我们通过这个口我们可以直接对外部存储器进行读/写操作。
当我们把P0口作为I/O口时,我们应该给每个口加上上拉电阻。
P1口是第一脚到第八角,它是一个准双向口,内部带有上拉电阻,当我们把它作为输入输出口时不需要额外加上拉电阻。
另外,P1.0和P1.1还可以作为定时器/计数器2外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体的就看下表吧!
我们在对FlashROM编程和程序校验时,P1接收低的8位地址
P2口是第二十一脚到二十八脚,它是一个准双向口,内部带有上拉电阻,当我们把它作为输入输出口时不需要额外加上拉电阻。
。
P3口是第十脚到第一十七脚,它的每个脚除了作为普通的I/O口,还具有其他的功能。
P3口的第二功能如表4-4所示。
表4-4P3口的第二功能
端口引脚
功能
P3.0
RXD(串口输入端)
P3.1
TXD(串口输出端)
P3.2
INT0(外部中断0请求输入端,低电平有效)
P3.3
INT1(外部中断1请求输入端,低电平有效)
P3.4
T0(定时/计数器0计数脉冲输入端)
P3.5
T1(定时/计数器1计数脉冲输入端)
P3.6
WR(外部数据存储器写选通信号输出端,低电平有效)
P3.7
RD(外部数据存储器读选通信号输出端,低电平有效)
RESET是芯片的第九脚,它的作用是复位信号输入端,它是高电平有效。
:
PSEN是芯片的第二十九脚,它是程序存储允许输出信号端。
ALE/PROG是芯片的的第三十脚,他表示的是地址锁存允许信号端。
EA/Vpp是芯片的第三十一脚,它表示的是外部的ROM地址允许输入端/固化编程电压输入端。
C89C52RC芯片程序存储器有三级硬件加密,能够有效地保证系统不被仿制和软件不被复制。
工作模式:
STC89C52RC它具有两种工作的方式,其中的一种是空闲(等待、待机)的工作方式,另外一种是掉电(停机)的工作方式。
空闲模式是由软件来设置的,当外围器件仍然处于工作状态时,CPU可根据工作情况适时地进入睡眠状态,内部RAM和所有特殊的寄存器值将保持不变。
这种状态可被任何一个中断所终止或通过硬件复位。
掉电模式是VCC电压低于电源下限,振荡器停止振动,CPU停止执行指令。
该芯片内RAM和特殊功能寄存器值保持不变,直到掉电模式被终止。
只有VCC电压恢复到正常工作范围而且在振荡器稳定振荡后,通过硬件复位掉电模式可被终止。
4.2.2单片机最小系统电路
(1)时钟电路
图4-4时钟电路
(2)复位电路