arm9的gps定位程序在linux26下的移植_毕业设计(编辑修改稿)内容摘要:

使用 Linux, IBM 也制定了在手持机上运行 Linux 的计划。 数年来,“ Linux 标准库”组织一直在从事对在服务器上运行的 Linux 进行标准化的工作,现在,嵌入式计算领域也开始了这一工作。 嵌入式 Linux 标准吸引了“ Linux 标准库”以及 Unix 组织中有益的元素。 GPS 模块简介 GPS( Global Positioning System-全球定位系统) GPS 的主要优点包括: ( 1)全球,全天候工作: 能为用户提供连续,实时的三维位置,三维速度和精密时间。 不受天气的影响。 ( 2)定位精度高: 单机定位精度优于 10 米,采用差分定位,精度可达厘米级和毫米级。 ( 3)功能多,应用广: 目前已广泛的应用于大地测量、工程测量、航空摄影测量、运载工具导航和管制、地壳运动监测、工程变形监测、资源勘察、地球动力学等学科领域。 GPS 由三个独立的部分组成: 空间部分: 21 颗工作卫星, 3 颗备用卫星。 地面支撑系统: 1 个主控站, 3 个注入站, 5 个监测站。 用户设备部分:接收 GPS 卫星发射信号,以获得必要的导航和定位信息,经数据处理,完成导航和定位工作。 GPS 接收机 硬件一般由主机、天线和电源组成。 GPS 实现原理 GPS 定位的基本原理是根据高速运动的卫星瞬间位置作为已知的起算数据,采用空间距离后方交会的方法,确定待测点的位置。 如图所示,假设 t 时刻在地面待测点上安置 GPS 接收机,可以测定 GPS 信号到达接收机的时间△ t,再加上接收机所接收到的卫星星历等其它数据可以确定以下四个方程式,如图 21 ARM9 的 GPS 定位程序在 下的移植 6 、 图 21 GPS 实现原理方程 上述四个方程式中待测点坐标 x、 y、 z 和 Vto 为未知参数,其中 di=c△ ti (i= 4)。 di (i= 4) 分别为卫星 卫星 卫星 卫星 4 到接收机之间的距离。 △ ti(i= 4) 分别为卫星 卫星 卫星 卫星 4 的信号到达接收机所经历的时间。 c 为 GPS 信号的传播速度(即光速)。 四个方程式中各个参数意义如下: x、 y、 z 为待测点坐标的空间直角坐标。 xi 、 yi 、 zi (i= 4) 分别为卫星 卫星 卫星 卫星 4 在 t 时刻的空间直角坐标,可由卫星导航电文求得。 Vt i (i= 4) 分别为卫星 卫星 卫星 卫星 4 的卫星钟的钟 差,由卫星星历提供。 Vto 为接收机的钟差。 由以上四个方程即可解算出待测点的坐标 x、 y、 z 和接收机的钟差 Vto。 目前 GPS 系统提供的定位精度是优于 10 米,而为得到更高的定位精度,通常采用差分 GPS 技术:将一台 GPS 接收机安置在基准站上进行观测。 根据基准站已知精密坐标,计算出基准站到卫星的距离改正数,并由基准站实时将这一数据发送出去。 用户接收机在进行 GPS 观测的同时,也接收到基准站发出的改正数,并对其定位结果进行改正,从而提高定位精度。 如图 22 ARM9 的 GPS 定位程序在 下的移植 7 图 22 GPS GPS 接口 接口特性如下: RS232 输出,可输入 RS232 或者具有 RS232 极性的 TTL 电平。 可选的波 特率为: 300、 600、 1200、 2400、 4800、 9600、 19200。 串口输出协议:输出 NEMA0183 格式的 ASCII 码语句,输出: GPALM, GPGGA,GPGLL, GPGSA, GPGSV, GPRMC, GPVTG( NMEA 标准语句); PGRMB, PGRME,PGRMF, PGRMM, PGRMT, PGRMV( GARMIN 定义的语句)。 还可将串口设置为输出包括 GPS 载波相位数据的二进制数据。 输入:初始位置、时间、秒脉冲状态、差分模式、 NMEA 输出间隔等设置信息。 在缺省的状态下, GPS 模块输出数据的波特率为 4800,输 出信息包括: GPRMC、GPGGA、 GPGSA、 GPGSV、 PGRME 等,每秒钟定时输出。 ARM9 的 GPS 定位程序在 下的移植 8 3 开发工具软件与系统软件部分 儿童定位系统程序框图 整个儿童定位系统程序框图如图 31 所示,本次毕业设计主要研究 GPS 模块。 图 31 儿童定位系统程序框图 开发工具软件的安装 参考 linux 虚拟机使用说明里的 Samba 服务器的的配置。 参照执行安装环境脚本命令: ./install 安装脚本程序将自动建立 /arm2410cl 目录,并将所有 开发软件包安装到 /arm2410cl 目录下,同时自动配置编译环境,建立合适的符号连接。 注意: 安装完成后看一下主编译器 Armv4lunknownlinuxgcc 是否在 /opt/host/armv4l/bin/,如果不是这个路径,请使用 vi 修改 /root/.bash_profile 文件中 PATH 变量为 PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ , 存盘后执行: source/root/.bash_profile,则以后 armv4lunknownlinuxgcc 会自动搜索到,可以在终端上输入 armv,然后按 tab 键,会自动显示 armv4lunknownlinux 开发环境配置 配置网络,包括配置 IP 地址、 NFS 服务、防火墙。 网络配置主要是要安装好以太网卡,对于一般常见的 RTL8139 网卡, 可以自动识别并自动安装好,完全不要用户参与,因此建议使用该网卡。 然后配置宿主机 IP 为。 双击设备 eth0 的蓝色区域,进入以太网设置界面,对于 ,它默认的是打开了防火墙,因此对于外来的 IP 访问它全部拒绝,这样其它网络设备根本无法访问它,即无法用 NFS mount 它,许多网络功能都将无法使用。 因此网络安装完毕后,应立GPS 信息 提供信息 GSM 通信 提供信息 QT 界面 用户 通信 显示信息 控制 ARM9 的 GPS 定位程序在 下的移植 9 即关闭防火墙。 操作如下:点击红帽子开始菜单,选择安全级别设置,选中无防火墙。 在系统设置菜单中选择服务器设置菜单,再选中服务菜单,将 iptables 服务的勾去掉 ,并确保 nfs 选项选中。 配置 NFS: 点击主菜单运行系统设置 服务器设置 NFS 服务器(英文为:SETUPSYSTEMSERVICENFS),点击增加出现如下在界面,在目录 (Drictory):中填 入需要共享的路径,在主机 (Hosts):中填入允许进行连接的主机 IP 地址。 并选择允许客户对共享目录的操作为只读( Read- only)或读写 (Read/write)。 配置完成后,可用如下办法简单测试一下 NFS 是否配置好了:在宿主机上自己mount 自己,看是否成功就可以判断 NFS 是否配好了。 例如在宿主机 /目录下执行: mount :/arm2410cl /mnt 其中 应为主机的 IP 地址。 然后到 /mnt/目录下看是否可以列出 /arm2410cl 目录下的 所有文件和目录,可以则说明mount 成功, NFS 配置成功。 超级终端 超级终端是一个通用的串行交互 软件 ,很多 嵌入式 应用的系统有与之交换的相应程序,通过这些程序,可以通过超级终端与 嵌入式系统 交互,使超级终端成为嵌入式系统的 “ 显示器 ”。 超级终端的原理是将用户输入随时发向串口(采用 TCP 协议时是发往网口,这里只说串口的情况),但并不显示输入。 它显示的是从串口接收到的字符。 所以, 嵌入式系统 的相应程序应该完成的任务便是: 将自己的启动信息、过程信息主动发到运行有超级终端的 主机 ; 将接收到的字符 返回到 主机 ,同时发送需要显示的字符(如命令的响应等)到主机。 在单片机开发时使用。 如图 32 所示 ARM9 的 GPS 定位程序在 下的移植 10 图 32 设置步骤 将波特率设为 115200,数据流控制设为无。 FlashFXP FlashFXP 是一款功能强大的 FXP/FTP 软件 ,集成了其它优秀的 FTP 软件的优点,如 CuteFTP 的目录比较,支持彩色文字显示;如 BpFTP 支持多目录选择文件,暂存目录;又如 LeapFTP 的界面设计。 支持目录(和子目录)的 文件传输 ,删除;支持上传,下载,以及第三方文件续传;可以跳过指定的文件类型,只传送需要的本件;可自定义不同文件类型的显示颜色;暂存远程目录列表,支持 FTP 代理及 Socks 3amp。 4;有避免闲置断线功能,防止被 FTP 平台踢出;可显示或隐藏具有 “ 隐藏 ” 属性的文档和目录;支持每个平台使用被动 模式 等。 GPS 连接后,需要通过 FlashFXP 来完成代码的导入。 GPS 程序 程序分析 GPS 原始采集的数据如上图所示。 在接收进程 receive 中收到“ \n”之后,表示收到一条完整的信息。 在 show_g。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。