gps信息基于linux系统的internet实时传输

gps信息基于linux系统的internet实时传输

ID:33768878

大小:223.33 KB

页数:6页

时间:2019-03-01

gps信息基于linux系统的internet实时传输_第1页
gps信息基于linux系统的internet实时传输_第2页
gps信息基于linux系统的internet实时传输_第3页
gps信息基于linux系统的internet实时传输_第4页
gps信息基于linux系统的internet实时传输_第5页
资源描述:

《gps信息基于linux系统的internet实时传输》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、http://www.paper.edu.cnGPS信息基于Linux系统的Internet实时传输周晓宇大连海事大学信息工程学院116026摘要:本文简述GPS定位的基本原理,Linux操作系统串口通信的基本原理以及Linux系统网络传输的基本原理,并介绍了其针对GPS信息的一个应用。关键词:Linux,串口通信,套接字1.引言当今社会,GPS在导航,通信,定位等方面起着越来越重要的作用。同时,基于嵌入式系统的GPS开发也越来越多。本文阐述了GPS原理,Linux系统的串口通信原理以及网络传输原理。并介绍了GPS信息在Linux系统下的一个应用。2.GPS定位原理GPS(GlobalP

2、ositionSystem)全称全球定位系统,由空间部分,地面控制部分和用户设备部分三部分组成。定位原理:装备非精密钟的用户设备,所测得的距离有误差,称为伪距。由于伪距的存在,需要四颗卫星才能实现三维定位。伪距由下式确定:_R=R+c*∆t+c(∆t−∆t)(1-1)iiAiusi式中:i=1,2,3,4;R为观察者点u到卫星S真实距离;C为光速;∆t为第i颗卫星的传播延时误差;∆tiiAiu为用户时钟相对于GPS系统时间的偏差;∆t为第i颗卫星时钟相对于GPS系统时间的偏差。si计算时,使用地心赤道直角坐标系。设卫星S在该坐标系中的位置为x,y,z,用户Uisisisi位于x,y,z处

3、。则222R=(x−x)+(y−y)+(z−z)(1-2)isisisi显然式1-2可以改写为_222R=(x−x)+(y−y)+(z−z)+c*∆t+c(∆t−∆t)(1-3)sisisiAiusi式中卫星位置和卫星时钟偏差,由卫星电文计算获得;传播延时,可以采用双频法校正;观[1]测者位置和用户钟偏差为未知数。1http://www.paper.edu.cn由上述可知,公式中共有四个未知数,只要测得四颗卫星的伪距,就能解得观测者的三维位置和时钟偏差。3.Linux系统串口通信原理Linux系统串口操作等同于文件操作。在Linux操作系统中,所有设备都以设备文件的形式存在于/dev目录

4、下,每一个设备都对应一个主设备号和从设备号。主设备号用来向内[2]核表明这一设备节点所代表的驱动程序的类型,其中串口1对应的设备文件为/dev/ttys0,主设备号为4。打开串口之后,将对串行口属性进行配置,这将引用到一个结构termios,它的组成如下,其中后两个成员保留。structtermios{unsignedshortc_iflag;//输入模式标志位unsignedshortc_oflag;//输出模式标志位unsignedshortc_cflag;//控制模式标志位unsignedshortc_lflag;//行模式标志位unsignedcharc_cc[NCC];//控制

5、字intc_ispeed;//输入波特率intc_ospeed;//输出波特率};从注释我们可以清楚的得到每个成员的含义。我们可以针对串口进行配置,包括波特率的选择、停止位和校验位的选择等等。如果采用非同步输入方式,要设定另外一个结构sigaction,组成如下:structsigaction{void(*sa_handler)(int);//回调函数,处理信号sigset_tsa_mask;//信号屏蔽标识intsa_flags;//设置信号相关操作void(*sa_restorer)(void);//保留}通过对成员的设置,可以采用非同步方式进行数据收发操作。最后是利用读写串口函数对

6、串口进行读操作和写操作。操作结束后关闭串口。2http://www.paper.edu.cn4.Linux系统网络传输实现ServerSocketBindClientListenSocketAcceptConnectReadWriteWriteReadCloseClose图1服务器和客户端建立通信过程3http://www.paper.edu.cnLinux系统的网络传输过程如图1所示,首先服务器建立套接字(socket),然后进行绑定操作(bind),绑定的实质就是将一个IP和一个端口联系起来。绑定成功之后服务器要在相应的套接字进入监听(listen)状态。当捕获到客户端请求连接时,接

7、受并生成一个新的套接字,并利用这个新的套接字与客户端进行通信。客户端建立套接字等一系列行为与服务器类似,建立连接后,双方可以通过套接字进行通信。其中发送信息使用send()函数,接[3]收信息使用recv()函数。同时服务器采用fork()函数生成子进程来处理数据传输。5.GPS信息处理根据NMEA0183中的协议,以GPRMC语句为例,格式如下:$GPRMC,纬度、经度、速度、方向、卫星时间、状态以及磁场变量.我们可以通过检测逗号

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。