已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,基于GPS定位车辆安全行驶记录仪设计,电气工程与信息工程学院,Jerry,设计要求,设计内容本设计主要通过单片机实现对车辆综合数据的实时记录功能,当车辆断电保存当前记录。系统通过GPS定位模块获得实时坐标并进行记录,将记录以KML文件格式保存在SD卡中。并且实时显示车辆航向,加速度,海拔等辅助信息。,设计实现功能1)通过GPS模块获取当前经纬度坐标、海拔、航向;2)通过加速度传感器计算出车辆水平面加速度;3)将经纬度坐标以KML文件格式进行保存;4)将记录保存到SD卡中;5)显示加速度、航向海拔数据。,设计实现功能1)系统工作电压DC12V;2)工作温度-3060。,GPS,GPS概念GPS(GlobalPositioningSystem)isaconstellationsystemoftwenty-nineearth-orbitingsatellitesthatwereoriginallydesignedbytheUSmilitaryinthe1970sasanavigationsystem.,GPS空间部分,GPS卫星星座由21颗工作卫星+3颗在轨备用卫星组成。24颗卫星均匀分布在6个轨道平面内,高度20200km,轨道倾角是55,相邻轨道平面相距60,每个轨道平面内相邻卫星之间相距90,同一轨道上的卫星超前西边相邻轨道上相应卫星30。,卫星定位原理(概述)3颗卫星可以确定大概位置,如果为提高精度和获得精确的高度信息,则需要4颗或4颗以上的卫星。由于GPS接收机内部时钟偏差,三个球体不能交于1点,接收机必须调整球体大小以确定实际位置。,GPS地面控制部分,GPS地面监控系统,监测站(5个):观测每颗卫星并向主控站提供数据主控站(1个):采集并根据监测站传送的数据计算每颗卫星的星历、时钟校正量、和状态参数等,并按相应格式编辑成导航电文传送至注入站注入站(3个):将导航电文发送至每颗卫星,再由卫星将导航电文发送给用户,GPS用户设备部分,GPS信号接收机GPS信号接收机根据一定卫星高度截止角选择待测卫星并捕获卫星信号,跟踪卫星运行,转换、放大和处理捕获到的GPS信号,从而可以得到卫星到GPS接收机天线的传播时间,根据解译的导航电文计算观测站的实时时间、三维位置和三维速度。,GPS定位原理,P1=|r1-ru|+c*t=sqrt(X1-xu)2+(Y1-yu)2+(Z1-zu)2)+c*tP2=|r2-ru|+c*t=sqrt(X2-xu)2+(Y2-yu)2+(Z2-zu)2)+c*tP3=|r3-ru|+c*t=sqrt(X3-xu)2+(Y3-yu)2+(Z3-zu)2)+c*tP4=|r4-ru|+c*t=sqrt(X4-xu)2+(Y4-yu)2+(Z4-zu)2)+c*t式中:Pi测量伪距c电磁波传播速度t接收机时钟与卫星时钟钟差(Xi,Yi,Zi)第i颗卫星在地心地固坐标系中的位置(xu,yu,zu)用户u在地心地固坐标系中的位置,单片机最小系统,晶振电路,复位电路,微控制器,供电电路,12V转5V电路5V转3.3V电路,掉电保护电路掉电存储电路,GPS接收电路,GPS数据包GPRMC,GPRMC(推荐最小定位信息)$GPRMC,*hhUTC时间,hhmmss(时分秒)格式;定位状态,A=有效定位,V=无效定位;纬度ddmm.mmmm(度分)格式(前面的0也将被传输);纬度半球N(北半球)或S(南半球);经度dddmm.mmmm(度分)格式(前面的0也将被传输);经度半球E(东经)或W(西经);地面速率(000.0999.9节,前面的0也将被传输);地面航向(000.0359.9度,以真北为参考基准,前面的0也将被传输);UTC日期,ddmmyy(日月年)格式;磁偏角(000.0180.0度,前面的0也将被传输);磁偏角方向,E(东)或W(西);模式指示(仅NMEA01833.00版本输出,A=自主定位,D=差分,E=估算,N=数据无效)。,GPS数据包GPGGA,GPGGA(GPS定位信息)$GPGGA,M,M,*xxUTC时间,格式为hhmmss.sss;纬度,格式为ddmm.mmmm(第一位是零也将传送);纬度半球,N或S(北纬或南纬);经度,格式为dddmm.mmmm(第一位零也将传送);经度半球,E或W(东经或西经);定位质量指示,0=定位无效,1=定位有效;使用卫星数量,从00到12(第一个零也将传送);水平精确度,0.5到99.9;天线离海平面的高度,-9999.9到9999.9米,M指单位米;大地水准面高度,-9999.9到9999.9米,M指单位米;差分GPS数据期限(RTCMSC-104),最后设立RTCM传送的秒数量;差分参考基站标号,从0000到1023(首位0也将传送)。,液晶显示电路,数据控制控制器内部设有一个数据地址指针,用户可以通过它们来访问内部的全部80字节RAM。,数据指针设置,液晶初始化,液晶初始化过程(复位过程)1.延时15ms;2.写指令38H(不检测忙信号);3.延时5ms;4.写指令38H(不检测忙信号);5.延时5ms;6.写指令38H(不检测忙信号);7.(以后每次写指令、读/写数据操作之前均需检测忙信号);8.写指令38H;显示模式设置9.写指令08H;显示关闭10.写指令01H;显示清屏11.写指令06H;显示光标移动设置12.写指令0CH;显示开及光标设置,字模存储器(192个常用字符字模),字符产生器CGROM(CharacterGeneratorROM)CGRAM(CharacterGeneratorRAM),液晶写指令/数据,液晶写数据过程,液晶字符显示,液晶字符显示过程液晶显示的过程中考虑到字符写在液晶显示屏幕上的地址,需要设置数据地址指针,指令码为80H+地址码(027H,40H67H)。所以如果要液晶显示第一行数据,首先要写指令80H,然后将字符串数组里的数据按顺序依次进行写数据即可。液晶显示第二行同理,只是写的指令是80H+40H=C0H。根据设计要求需要显示加速度、航向和海拔,加速度数据存放在AccelerateSpeed数组中,航向存放在Tilt数组中,海拔存放在Altitude数组中。加速度通过加速度传感器ADXL345获得,航向和海拔通过GPS接收模块获得。,voidLcdDisplay(void)unsignedcharj;WriteCommand(0 x80);for(j=0;j0,GPS接收实现,SD卡存储电路,SD卡引脚及功能CLK:时钟信号,每个时钟周期传输一个命令或数据位,频率可在025MHz之间变化,SD卡总线管理器可以不受任何限制的自由产生025MHz频率CMD:双命令和回复线,命令是一次主机到从机的操作开始,回复是对之前命令的回答DAT03:双向数据线,CID,CID结构CID寄存器存储SD卡唯一的标识码,长度128位。,CSD,CSD结构CSD(Card-SpecificData)寄存器提供了读写SD卡的一些信息。其中一些单元可由用户重新编程。,SD卡命令字,SD卡命令格式SD卡命令由6个字节构成,高位在前。命令字第1个字节是命令号,最高位始终是0,次高位始终是1,表示主机向SD卡发送的命令。命令字第25个字节是命令参数表,传送随命令附带的参数,如地址信息等。命令字第6个字节是CRC校验字节,高7位是CRC码,最后1位是结束位,始终为1。,SD卡复位,SD卡复位至SPI模式SD卡默认读写模式是SD模式,在SD卡上电后写入CMD0和CMD1后进入SPI模式。,SD卡复位时序SD卡上电后,发送74个以上同步时钟;向SD卡发送CMD0命令:0 x400 x000 x000 x000 x000 x95;发送若干个8位同步时钟,直至SD卡发送响应字节0 x01;接收完SD卡的响应字节后,CS线拉高,再发送8个空时钟。,SPI模式初始化,SPI模式初始化时序拉低CS;发送指令号CMD1:0 x410 x000 x000 x000 x000 xff(SPI模式下SD卡默认不作CRC校验);发送若干个8位同步时钟直至SD卡发出响应字节0 x00;接收完响应字节后,CS线拉高;发送8个空时钟。,SD卡读CID,SD卡读CID时序拉低CS;发送指令号CMD10:0 x4a0 x000 x000 x000 x000 xff(SPI模式下SD卡默认不作CRC校验);发送若干个8位同步时钟直至SD卡发出响应字节0 x00;写入若干0 xff空操作直至SD卡发送0 xfe数据头;SD卡发送8字节CID数据;SD卡发送2字节的CRC校验码(SPI模式下默认不作CRC校验,故可不理睬);发送2个8位同步时钟;拉高CS;发送8个空时钟。,SD卡读CSD,SD卡读CSD时序拉低CS;发送指令号CMD9:0 x490 x000 x000 x000 x000 xff(SPI模式下SD卡默认不作CRC校验);发送若干个8位同步时钟直至SD卡发出响应字节0 x00;写入若干0 xff空操作直至SD卡发送0 xfe数据头;SD卡发送8字节CSD数据;SD卡发送2字节的CRC校验码(SPI模式下默认不作CRC校验,故可不理睬);发送2个8位同步时钟;拉高CS;发送8个空时钟。,SD卡读单数据块(1),SD卡读单数据块时序拉低CS;发送指令号CMD17:0 x51(32位地址值)0 xff;写入若干0 xff空操作直至SD卡发送响应字节0 x00;写入若干0 xff空操作直至SD卡发送0 xfe数据头;SD卡发送指令指定地址的512字节数据块;SD卡发送2字节的CRC校验码(SPI模式下默认不作CRC校验,故可不理睬);拉高CS;发送8个空时钟。,SD卡读单数据块(2),SD卡写单数据块(1),SD卡写单数据块时序拉低CS;发送指令号CMD24:0 x58(32位地址值)0 xff;写入若干0 xff空操作直至SD卡发送响应字节0 x00;写入0 xfe数据头,表示接下来要发送512字节数据块;写入512字节数据块;写2字节0 xff,作为CRC校验码的填充字节;SD卡接收完毕则发送xxx00101B响应码;SD卡将512字节数据写入指定地址,数据输出时钟拉低;SD卡释放数据输出线;拉高CS,发送8个空时钟。,SD卡写单数据块(2),SD卡读写实现,文件系统模型,改进文件系统模型,索引里的文件标记(包括文件名等信息)与链式结构分开,这样查找文件标记时不用理会链式结构。,FAT32文件系统模型,FAT32文件系统组成,每扇区字节数每簇扇区数保留扇区数目FAT表数FAT32固定为0FAT32固定为0存储介质FAT32固定为0磁道扇区数磁头数FAT区前隐扇区数总扇区数一个FAT表扇区数FAT32特有FAT32特有第一个目录的簇号保留扇区数通常为6用以扩展驱动器号保留扩展引导标签分区序列卷标系统ID,DPT数据分析,DBR数据分析,DBR实现,从BPB扇区读取关于磁盘的参数信息,装入从BPB读取的参数(FAT32初始化),FAT表,FAT表FAT表是FAT32文件系统中用于磁盘数据(文件)索引和定位引进的一种链式结构。从BPB中提取的参数FirstFATSector得到FAT表所在扇区号。两个FAT表内容同步且一致,一个FAT表遭破坏另一个修复。FAT表开头:F8FFFF8FFFFFFFFFFAT表后面每4个字节是1个簇项(从第2簇开始),用以标记此簇的下一个簇号。簇内容FFFFFF0F:文件数据结束于该簇00000000:未分配簇FFFFFFF7:坏簇,文件/目录项及数据分析,文件/目录项结构实现,文件系统操作函数UINT8FAT32_Create_File(structFileInfoStruct*pfi,constINT8*filepath,UINT8*ptd)E.g.FAT32_Create_File(,pfi:一个指向FileInfoStruct类型的结构体的指针,用来装载新创建的文件信息,因此新创建的文件不用再打开就可以直接来操作;filepath:文件路径;返回值:0:成功1:文件已存在2:创建文件目录失败3:创建文件失败。,UINT32FAT32_Add_Dat(structFileInfoStruct*pfi,UINT32len,UINT8*pbuf)E.g.FAT32_Add_Dat(,pbuf:指向数据缓冲区的指针返回值:成功返回实际写入的数据长度,失败返回0,查找多层目录文件数据,加速度传感器电路,I2C总线工作原理,I2C总线简介I2C总线(IntelICBus),由PHLIPS公司推出。有2根双向信号线:SDA和SCL,具有总线裁决和高低速器件同步功能。数据有效性规定时钟信号是高电平时,SDA上的数据必须保持稳定;低电平时,SDA上的数据电平允许变化。I2C总线寻址,unsignedcharADXL345ReceiveByte(void)unsignedchari;unsignedcharData=0;SDA=1;for(i=0;i8;i+)Data=Data1;SCL=1;Delay5us();Data=Data|SDA;SCL=0;Delay5us();returnData;,I2C总线基本时序实现,voidADXL345Start(void)SDA=1;SCL=1;Delay5us();SDA=0;Delay5us();SCL=0;,voidADXL345Stop(void)SDA=0;SCL=1;Delay5us();SDA=1;Delay5us();,voidADXL345SendByte(unsignedcharData)unsignedchari;for(i=0;i8;i+)Data=Data1;SDA=CY;SCL=1;Delay5us();SCL=0;Delay5us();ADXL345ReceiveACK();,bitADXL345ReceiveACK(void)SCL=1;Delay5us();CY=SDA;SCL=0;Delay5us();returnCY;,voidADXL345SendACK(bitAck)SDA=Ack;SCL=1;Delay5us();SCL=0;Delay5us();,加速度传感器寄存器映射,加速度传感器初始化设置,00001011,禁用自测力4线式SPI模式设置中断至高电平有效全分辨率模式右对齐模式g范围是16g,00001000,正常操作速率,00001000,静止和活动功能同时进行禁用自动切换至休眠模式测量模式普通工作模式休眠模式下读取频率8Hz,10000000,使能DATA_READY中断,5*15.6*10-3=0.078g,加速度传感器读数据,voidADXL345MultipleRead(void)unsignedchari;ADXL345Start();ADXL345SendByte(SlaveAddress);ADXL345SendByte(0 x32);ADXL345Start();ADXL345SendByte(SlaveAddress+1);for(i=0;i6;i+)Bufferi=ADXL345ReceiveByte();if(i=5)ADXL345SendACK(1);elseADXL345SendACK(0);ADXL345Stop();Delay5ms();,floatDataXConversion(void)floatTemp;DataAcceleratedSpeed=(Buffer18)+Buffer0;if(DataAcceleratedSpeedGoogleHeadquarters-122.083937.4219540.6803-122.0839,37.4219,0,撰写KML,撰写KML方式,使用GoogleEarthclient撰写KML文件使用文本编辑器使用开发环境来自动生成KML文件,GoogleEarth客户端支持了大量的显示标签用来创建和保存成KML文档。在撰写过程中,你可以先用文本编辑器修改KML文档,然后在GoogleEarth客户端中打开看显示的效果,这和你修改一个HTML文档次能够在浏览器之中观看效果是一样的。,KML文件基本语法XML标签必须关闭;XML标签大小写敏感(区分大小写);KML标记类型:复合标签首字母大写,能够作为其他标签(单一标签或复合标签)的父元素;单一标签都是小写,只能作为其他复合标签的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026实木玩具出口质量标准升级与认证体系报告
- 2026磁悬浮轴承在高端装备应用拓展
- 2026充电桩海外市场拓展战略与风险防范专项研究
- 2026莫斯科经济圈工业升级产业供需分析及投资布局战略方案
- 2026量子计算科研突破应用场景信息安全保障分析报告
- 2026智能传感器在工业物联网中的应用报告
- 2025年机场公安辅警招录笔试真题及参考答案
- 共享足疗机的营销策略研究报告
- 农业合作社发展对策研究报告
- 数据中心光模块升级分析方案
- 2025至2030中国微型线材指南行业项目调研及市场前景预测评估报告
- 《陆上风力发电机组钢混塔架施工与质量验收规范》
- DB23T 3439-2023 梭鲈人工繁殖技术规程
- 眼科查体流程
- 儿童健康体检知识培训课件
- 巡察底稿制作培训课件
- 4.1《家的意味》教学设计 2025-2026学年统编版道德与法治七年级上册
- 面对失败的小学生课件
- 24秋国家开放大学《农业经济管理》形考任务1-4参考答案
- DL-T5153-2014火力发电厂厂用电设计技术规程
- 第一章-中国语言与文化概论
评论
0/150
提交评论