【雕爷学编程】Arduino动手做(74)---6MV2飞控GPS模块2

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验七十四:GY-NEO-6MV2新款飞控GPS模块 (带陶瓷有源天线)

在这里插入图片描述
在这里插入图片描述
知识点:经度、维度和全球卫星定位系統GPS
一、经度(longitude)
1、经度是一种用于确定地球表面上不同点东西位置的地理坐标。经度是一种角度量,通常用度来表示,并被记作希腊字母λ(lambda)。子午线穿过南极和北极并把相同经度的点连起来。按照惯例,本初子午线是经过伦敦格林威治皇家天文台的子午线,是0度经线所在地。其他位置的经度是通过测量其从本初子午线向东或向西经过的角度得到的,经度的范围为从本初子午线0° 向东至180°向西至180° W。具体来说,某位置的经度是一个通过本初子午线的平面和一个通过南极、北极和该位置的平面所组成的二面角。(这就组成了一个右手坐标系,其z轴(右手拇指)从地球中心指向北极方向,其x轴(右手食指)从地球中心指向本初子午线与赤道的交点。)
如果地球是一个均质球体,那么一点的经度就等于过该点的南北铅垂面和格林尼治子午面之间夹角的角度。地球上任何地方的南北铅垂面都会包含地球的自转轴。但是地球并不是均质的,而是有很多山脉,在山脉的重力影响下,铅垂面就会偏离地球的自转轴。即便如此,南北铅垂面仍然会和格林尼治子午面相交于某个角度,该角度被称为天文经度,通过天文观测来确定。地图和GPS设备上显示的经度是格林尼治子午面与过该点的一个非严格铅垂面之间夹角的角度,该非严格铅垂面垂直于一个近似于大地水准面的椭球体表面,而不是直接垂直于大地水准面本身。
作为起点,过去其它国家或人也使用过其它的子午线做起点,比如罗马、哥本哈根、耶路撒冷、圣彼德堡、比萨、巴黎和费城等。在1884年的国际本初子午线大会上格林维治的子午线被正式定为经度的起点。东经180°即西经180°,约等同于国际日期变更线,国际日期变更线的两边,日期相差一日。

在这里插入图片描述

2、经度的每一度被分为60角分,每一分被分为60秒。一个经度因此一般看上去是这样的:东经23° 27′ 30"或西经23° 27′ 30"。更精确的经度位置中秒被表示为分的小数,比如:东经23° 27.500′,但也有使用度和它的小数的:东经23.45833°。有时西经被写做负数:-23.45833°。偶尔也有人把东经写为负数,但这相当不常规。一个经度和一个纬度一起确定地球上一个地点的精确位置。纬度的每个度的距离大约相当于111km,但经度的每个度的距离从0km到111km不等。它的距离随纬度的不同而变化,沿同一纬度约等于111km乘纬度的余弦。不过这个距离还不是相隔一经度的两点之间最短的距离,最短的距离是连接这两点之间的大圆的弧的距离,它比上面所计算出来的距离要小一些。一个地点的经度一般与它于协调世界时之间的时差相应:每天有24小时,而一个圆圈有360度,因此地球每小时自转15度。因此假如一个人的地方时比协调世界时早3小时的话,那么他在东经45度左右。不过由于时区的分划也有政治因素在里面,因此一个人所在的时区不一定与上面的计算相符。但通过对地方时的测量一个人可以算得出他所在的地点的经度。为了计算这个数据,他需要一个指示协调世界时的钟和需要观察对太阳经过子午圈的时间。由于地球在一个椭圆轨道上绕太阳旋转,这个计算和观察比上面叙述的还要复杂些。

3、对于地图绘制和远洋航海来说,经度的测量是很重要的。在历史上的大多数时候,水手和探险家们为了确定经度而绞尽脑汁。人们花费了几个世纪来探索确定经度的方法,因此,经度的历史记录了一些最伟大的科学头脑的努力。使用四分仪或星盘可观测到太阳或某特定恒星在地平线上的高度,根据该高度可以计算出该位置的纬度,但是经度的确定要更加复杂些。亚美利哥·韦斯普奇(Amerigo Vespucci,1454/03/09-1512/02/22)也许是第一个提出经度确定方法的欧洲人,他在前往新世界的旅途中,花费了大量的时间和精力来研究这个问题:
“至于经度,我发现经度的确定是那么困难,以至于我在确定我所经过的东西距离时困难重重。进行实验的最终结果让我发现确定经度最好的方法是在一颗行星和另一颗连起来的夜晚进行观测,尤其是月球和其他行星连起来的夜晚,因为月球在运行的过程中要比其他所有行星要快。我把我很多个夜晚的观测结果和一本历书做了对比,根据历书,在1499年8月23号午夜或前半小时,月球和火星将会连在一条线上。我发现,在当天午夜时,火星的位置在向东3.5度的方向上。”

在这里插入图片描述

二、纬度(latitude)
1、纬度(φ)是地球表面一个点的南北地理位置的表示法。纬度与经度通常一起使用以确定地表上某点的精确位置。纬度是一个角度,其范围从赤道的0度到南北极的90度。在英文文本中,纬度通常使用小写希腊字母phi (φ)来表示。它以度、分、秒或者小数形式的度来计量,再附上N或S来表示北纬或南纬。纬度相同的连线形成与赤道平行的大圆。赤道、南回归线、北回归线、南极圈和北极圈是特殊的纬线。

在这里插入图片描述
2、凡经线上的任何一点至赤道间的弧距称为纬度。系地理坐标之一,在地理坐标中起着纵坐标的作用,可用以确定和描述地球表面上任何地点或位置。纬度有如下几种:地理纬度、天文纬度和地心纬度,这几种纬度间的差数不大。在大部分情况下,纬度指的是地理纬度(即绘制地图时用的纬度)。
地理纬度是地球球心角所对应的地面上的弧长。地理纬度把地球看成椭球,即椭球面的法线(同铅垂线略有不同)同赤道平面的夹角。通常用度、分、秒表示。从赤道向南北两极度量,各为0°—90°。每一纬度之间的宽度基本相等,为110公里(靠近两极处稍长些)。在赤道以北的叫 “北纬”,用“N”作代号;以南的叫“南纬”,用“S”作代号。习惯上称0°—30°为低纬度;30°—60°为中纬度;60°—90°为高纬度。北京的纬度是北纬39° 57′。

在这里插入图片描述

3、纬度数值在0至30度之间的地区称为低纬度地区;纬度数值在30至60度之间的地区称为中纬度地区;纬度数值在60至90度之间的地区称为高纬度地区。
在定义经纬度的时候,做了两个抽象假设。第一,以大地水准面来代替地球的物理表面,大地水准面是一个假想的由地球上静止平衡的海平面延伸到陆地内部而形成的闭合曲面。第二,用一个数学上简单的参考表面来作为大地水准面的近似。最简单的参考表面为球面,但是用旋转椭球面来模拟大地水准面要更为准确些。经纬度在这个参考表面上的定义将在下文中详细说明,经度相同和纬度相同的点的连线共同构成了这个参考表面上的经纬网。

地球真实表面上一点的纬度和其在参考表面上的对应点一致,过地球真实表面上一点作参考表面的法线,该法线与参考表面的交点即为真实表面上那一点的对应点。纬度,经度和遵循某种规范的高度共同组成了 ISO 19111 标准中所定义的地理坐标系统。由于有不同的参考椭球面,地表上一点的纬度特征也就并不唯一。ISO标准中关于这一点的描述为:如果坐标参考系统没有完全定义,那么坐标(主要指经度和纬度)顶多是模糊不清的,至少也是毫无意义的。这对于精确的应用非常重要,比如GPS,但是,在一般的使用中,并不需要很高的精度,通常也就不提及参考椭球面。无论是为了使用经纬仪还是为了确定GPS卫星的轨道,纬度的测量都要求人们对地球重力场有充分的了解。

三、地球经纬度(The earth’s latitude and longitude)
1、地球自转时南北各有一个不动点叫南极、北极。通过地心连接南北极的假想线是地轴,即地球的自转轴。赤道就是通过地心并垂直于地轴的假想平面与地球表面相交的圆周线。它将地球等分为南北两半球。人们以赤道和南北极为控制点来确定各地经纬度(地理坐标)。经线是连结两极而垂直于赤道的圆周线,纬线是与赤道平行的圆周线。纬度是以赤道为零度线,将南北半球各等分为九十度。经纬度可以方便的标定地球上任何一个位置。

在这里插入图片描述

2、经线也称子午线,和纬线一样是人类为度量方便而假 设出来的辅助线,定义为地球表面连接南北两极的大圆线上的半圆弧。任两根经线的长度相等,相交于南北两极点。每一根经线都有其相对应的数值,称为经度。经线指示南北方向。
子午线命名的由来:“某一天体是运动轨迹中,同一子午线上的各点该天体在上中天(午)与下中天(子)出现的时刻相同。”不同的经线具有不同的地方时。偏东的地方时要比较早,偏西的地方时要迟。
重要的经线:
本初子午线
巴黎子午线
180度经线
西经20度(W)
东经160度(E)
所有经线长度相等

3、纬线的长度是赤道的周长乘以纬线的纬度的余弦,所以赤道最长,离赤道越远的纬线,周长越短,到了两极就缩为0。从赤道向北和向南,各分90°,称为北纬和南纬,分别用“N”和“S”表示。纬线和经线一样是人类为度量方便而假设出来的辅助线,定义为地球表面某点随地球自转所形成的轨迹。任何一根纬线都是圆形而且两两平行。
重要的纬线:
北极圈(66°33’ 38" N)
北回归线(23°26’ 22" N)
赤道(0°N)
南回归线(23° 26’ 22" S)
南极圈(66°33’ 38" S)
长度不同(离赤道越远的纬线越短)

4、经纬度的转换:经纬度以度数表示,一般可直接以小数点表示,但亦可把度数的小数点分为角分(1角分等于六十分之一度),和秒(一秒等于六十分之一分)。表示经纬度有多样模式,以下是其中一些例子。
(1)度分秒表示(度:分:秒)-49°30’00"-49d30m00s
(2)度分表示(度:分)-49°30.0’-49d30.0m
(3)度数表示-49.5000°-49.5000d(一般会有四位小数)。
不少软件可把不同的经纬度表示方式实现转换。

四、GPS系统(Global Positioning System)
1、全球卫星定位系统,是美国国防部研制,美国太空军运营与维护的中距离圆型轨域卫星导航系统,简称GPS。它可以为地球表面绝大部分地区(98%)提供准确的定位、测速和高精度的标准时间。全球定位系统可满足位于全球地面任何一处或近地空间的军事用户连续且精确地确定三维位置、三维运动和时间的需求。该系统包括太空中的31颗GPS人造卫星;地面上1个主控站、3个资料注入站和5个监测站,及作为用户端的GPS军用接收机器、智能手机等。最少只需其中4卫星,就能迅速确定用户端在地球上所处的位置及海拔高度;所能接收到的卫星讯号数越多,解码出来的位置就越精确。

在这里插入图片描述

2、GPS系统由美国政府于1970年代开始进行研制,1978年2月首次发射,并于1994年全面建成。使用者只需拥有GPS接收晶片即可使用该服务。GPS信号分为民用的标准定位服务(SPS,Standard Positioning Service)和军用的精确定位服务(PPS,Precise Positioning Service)两类。由于GPS无须任何授权即可任意使用,原本美国因为担心敌对国家或敌对组织会利用GPS对美国发动攻击,故在民用讯号中人为地加入选择性误差(即SA政策,Selective Availability)以降低其精确度,使其最终定位精确度大概在100米左右;军规的精度在(20~1英尺)以下。2000年以后,比尔·克林顿政府决定取消对民用讯号的干扰。因此,现在民用GPS也可以达到(20~1英尺)左右的定位精度。GPS系统拥有如下多种优点:使用低频讯号,就算天气不佳仍能保持相当的讯号穿透性;高达98%的全球覆盖率;高精度三维定速定时;快速、省时、高效率;应用广泛、多功能;可移动定位。不同于双星定位系统,使用过程中接收机不需要发出任何信号;此举增加了隐蔽性,提高了其军事应用效能。

3、GPS的功能
(1)精确定时:广泛应用在天文台、通信系统基站、电视台中
(2)工程施工:道路、桥梁、隧道的施工中大量采用GPS设备进行工程测量
(3)勘探测绘:野外勘探及城区规划中都有用到
(4)导航:
武器导航——精确制导导弹、巡航导弹
车辆导航——车辆调度、监控系统
船舶导航——远洋导航、港口/内河引水
飞机导航——航线导航、进场着陆控制
星际导航——卫星轨域定位
个人导航——个人旅游及野外探险
(5)定位:
车辆防盗系统,手机、PDA、PPC等通信流动装置防盗,电子地图,定位系统
儿童及特殊人群的防走失系统
精准农业——农机具导航、自动驾驶,土地高精度平整
提供时间数据:用于给电信基站、电视发射站等提供精确同步时钟源

在这里插入图片描述

4、其他定位系統
除了美国的GPS系统外,目前正在运行的全球卫星定位系统还有俄罗斯的GLONASS系统和中国的北斗卫星导航定位系统。而欧盟于1999年初正式推出「伽利略」计划,部署新一代定位卫星。该方案由27颗运行卫星和3颗预备卫星组成,可以覆盖全球,位置精度达几米,亦可与美国的GPS系统兼容,总投资额为35亿欧元。目前已经发射11颗在轨卫星,于2016年12月15日提供早期服务。

全球卫星导航系统国际委员会为联合国的一个非正式机构。其目的是促进与民用卫星定位、导航、正时和增值服务有关的问题及各种全球卫星导航系统的兼容性和互通性问题的合作和发展。

科普知识点:NEO-6M、陶瓷天线与GY-NEO6MV2飞控GPS模块
一、NEO-6M
1、NEO-6M是一款的经典GPS芯片,具有高灵敏度、低功耗、小型化的特点,其极高追踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境,NEO-6M 都能高精度定位。NEO-6M具有50个通道,追踪灵敏度高达-161dBm,测量输出频率最高可达5Hz。NEO-6M 模块自带高性能无源陶瓷天线(无需再购买昂贵的有源天线了),兼容 3.3V 和5V 单片机系统,并自带可充电后备电池(支持温启动或热启动)。NEO-6M模块非常小巧(25.5mm*31mm),模块通过 4 个 2.54mm 间距的排针与外部连接。模块的高灵敏度、小静态漂移、低功耗及轻巧的体积,适用于车载、手持设备如PDA,车辆监控、手机、摄像机及其他移动定位系统的应用,是GPS产品应用的最佳选择。

在这里插入图片描述
NEO-6M特性
(1)u-blox 6 定位引擎:
o 跟踪灵敏度 –162dBm ,冷启动灵敏度–148 dBm
o 更快的捕获速度,带有 AssistNow Autonomous功能
o 可配置的电源管理
o GPS/SBAS 混合型引擎(WAAS、EGNOS、MSAS)
o 抗干扰技术
(2)易于与 u-blox 无线模块集成
(3)A-GPS:AssistNow Online 和 AssistNow Offline 服务,符合 OMA SUPL 规范
(4)向后兼容(硬件和固件);可从 NEO-5 系列或NEO-4S 轻松迁移
(5)采用可靠的 LCC 封装,制造性价比高
(6)工作温度范围:–40° C 至 85° C

在这里插入图片描述
在这里插入图片描述

GPS陶瓷有源天线
1、GPS就是通过接受卫星信号,进行定位或者导航的终端。而接收信号就必须用到天线。 GPS卫星信号分为L1和L2,频率分别为1575.42MHZ和1228MHZ,其中L1为开放的民用信号,信号为圆形极化。信号强度为-166dBW左右,属于比较弱的信号。 这些特点决定了要为GPS信号的接收准备专门的天线。GPS天线是由接收天线和前置放大器两个部件组成。GPS接收天线的作用,是将卫星来的无线电信号的电磁波能量变换成接收机电子器件可摄取应用的电流。绝大部分内置GPS天线为右旋极化陶瓷介质,其组成部分为:陶瓷天线、低噪音信号模块、线缆、接头。

在这里插入图片描述

GPS天线工作原理
(1)陶瓷片:陶瓷粉末的好坏以及烧结工艺直接影响它的性能。现市面使用的陶瓷片主要是25×25、18×18、15×15、12×12。陶瓷片面积越大,介电常数越大,其共振频率越高,接受效果越好。陶瓷片大多是正方形设计,是为了保证在XY方向上共振基本一致,从而达到均匀收星的效果。
(2)银层:陶瓷天线表面银层可以影响天线共振频率。理想的GPS陶瓷片频点准确落在1575.42MHz,但天线频点非常容易受到周边环境影响,特别是装配在整机内,必须通过调整银面涂层外形,来调节频点重新保持在1575.42MHz。
(3)馈点:陶瓷天线通过馈点收集共振信号并发送至后端。由于天线阻抗匹配的原因,馈点一般不是在天线的正中央,而是在XY方向上做微小调整。这样的阻抗匹配方法简单而且没有增加成本。仅在单轴方向上移动称为单偏天线,在两轴均做移动称为双偏。
(4)放大器:承载陶瓷天线的PCB形状及面积。由于GPS接收信号有触地反弹的特性,当背景是7cm×7cm无间断大地时,天线的效能可以发挥到极致。虽然受外观结构等因素制约,但尽量保持相当的面积且形状均匀。放大器增益的选择必须配合后端LNA增益。Sirf的GSC3F要求信号输入前总增益不得超过29dB,否则信号过饱和会产生自激。

GPS天线在室外空旷地区接受信号较好,在车内,因金属外壳和玻璃的防爆膜尤其是含金属粉的车膜,以及车内音响等都会对内置GPS天线接收信号产生干扰甚至阻碍,在室内受钢筋混凝土的遮挡,甚至无法接受GPS信号。

在这里插入图片描述
NEO-6M 模块的另一个版本的电原理图

在这里插入图片描述
在这里插入图片描述

模块引脚
VCC:电源脚输入3.3-5.5V
GND:电源地
RXD:串口接收脚-- 接单片机串口TXD 发送
TXD:串口发送脚-- 接单片机串口RXD 接收

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GY-NEO6MV2飞控GPS模块实验所需硬件清单

TM1637四位数码管X1

0.96寸OLED液晶屏X1

Arduino Uno开发板 X1

杜邦线 若干(备了9条)

高电平触发有源蜂鸣器模块X1

LED发光二极管(绿、蓝色)X2

IIC/I2C 1602 LCD液晶屏模块X1

高电平触发单路5V继电器模块X1

Proto Shield原型扩展板(带mini面包板)X1

在这里插入图片描述

2、传感器模块实验所需软件平台
代码编程 Arduino IDE (版本1.8.19)
仿真编程 Linkboy (版本V4.6.3)
图形编程 Mind+ (版本 V1.7.0 RC2.0)
以及编玩边学(线上平台https://ide.codepku.com/?type=Arduino)

3、下载并安装GPS模块 所需的库以在 Arduino IDE 中工作
(1)SoftwareSerial 库和TinyGPS 库
(2)打开网页https://github.com/,搜索SoftwareSerial和TinyGPS

在这里插入图片描述
在这里插入图片描述

4、实验接线示意图

在这里插入图片描述

5、模块实验说明
(1)位置固定 LED 指示灯
NEO-6M GPS 模块上有一个 LED,用于指示定位状态。它会根据它所处的状态以不同的速率闪烁
不闪烁 ==> 表示正在搜索卫星
每 1 秒闪烁一次- 表示已找到定位
(2)3.3V LDO 稳压器
NEO-6M 芯片的工作电压为 2.7 至 3.6V。但是,该模块配备了MICREL的MIC5205超低压差3V3稳压器。逻辑引脚也可以承受 5 伏电压,因此我们可以轻松地将其连接到 Arduino 或任何 5V 逻辑微控制器,而无需使用任何逻辑电平转换器。
(3)电池和 EEPROM
该模块配备一个 HK24C32 两线串行 EEPROM。它大小为4KB,通过I2C连接到NEO-6M芯片。模块还包含一个可充电纽扣电池,用作超级电容器。EEPROM 与电池一起有助于保留电池支持的 RAM (BBR)。BBR 包含时钟数据、最新位置数据(GNSS 或位数据)和模块配置。但它并不意味着永久数据存储。由于电池保留时钟和最后位置,首次定位时间 (TTFF) 显着减少到 1 秒。这允许更快的位置锁定。如果没有电池,GPS 总是冷启动,因此初始 GPS 锁定需要更多时间。通电时电池会自动充电,并且可以在没有电源的情况下保持数据长达两周。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驴友花雕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值