3.3 GPS信号的接收程序实现
系统采用Embedded Visual Basic中的Comm通信控件和Timer定时器。定时器设置为每隔2 s更新1次经纬度和时间数据。每个Comm控件提供一个通信端口,实现数据传输。
开始实时接收。
Prlvate Sub mnustart() Timerl.lrlteIval=2000 Timerl.Enabled=True Comml.CommPort=6 Comml.Settings=″57600,N,8.1″ Comml.PortOpen=True strsmsdata=Comml.Input ′去除串口Buffer中的暂存信息 Timerl_Timer End Sub Private Sub TimerLTimer() Dim IngNextvbCrLf As Long′记录下一个回车换行符位置 Dim IngFirstGPGGA As Long Dim Message As String Dim sDate As String Dim cn strsmsdata=Comml.Input IngFirstGPGGA=Instr(1,strsmsclata,″$GPGGA″) If lngFirstGPGGA Then IngNextVbCrLf=lnstr(IngFirstGPGGA+1, strsmsdata,vbCrLf) Message=Mid(Strsmsdata,ingFirstGPGGA,lngNextvb CrLf-ingFirstGPGGA) ParseNMEAMessage Message,dblXCoord,dblYCoord,sDate ProcessInput dblXCoord,dblYCoord End Tf
4 GPS坐标变换
GPS定位所得出的结果属于WGS84坐标,而在工程上实用的大多是国家坐标系,或者是独立坐标系。独立坐标系一般是在国家坐标系基础上形成的,因此,GPS定位结果的使用中就有与国家坐标系间的坐标转换问题。一般要通过两步转换:首先将WGS84的大地坐标(L,B)转换为对应于WGS84椭球的高斯平面坐标(X84、Y84),然后再经过平面坐标转换,将高斯平面坐标(X84、Y84)强制附合到本地高斯平面坐标系统。
4.1高斯换算
将GPS定位所得出的大地坐标(L,B)转换为高斯平面坐标(X84、Y84)。有关的推导过程较复杂,本文只给出结果:
共4页: 上一页 [1] [2] 3 [4] 下一页
|