主要内容

情节的位置使用GPS连接Arduino硬件

这个例子展示了如何使用GPS模块获得地理位置连接在Arduino硬件和情节在地图上的位置。

所需的硬件

要运行这个示例,您需要:

  • Arduino Mega2560

  • UBlox Neo-6M GPS模块

  • GPS天线

  • USB电缆

  • 连接电线

硬件连接

连接上的别针UBlox Neo-6M GPS模块Arduino大型2560板上的别针。连接:

  • + 5 v - 5 v

  • 接地,接地

  • RX - TX1(销18)

  • TX - RX1(销19)

GPS天线连接到GPS模块。GPS修复可以很容易地在天空的位置有一个清晰的视图。等待GPS模块获得卫星信号(修复)。这可以通过检查验证的解决了GPS模块

创建全球定位系统(GPS)对象

创建一个arduino对象,包括串行图书馆。

一个= arduino (“COM6”,“Mega2560”,“库”,“串行”);

创建GPS传感器对象。

全球定位系统(gps) = gpsdev (a)
gps与属性= gpsdev:串口:1波特率:9600(比特/秒)SamplesPerRead: 1 ReadMode:“最新”SamplesRead: 0 SamplesAvailable: 0显示所有属性,函数

读取GPS数据

读取GPS数据和提取纬度、经度和时间。

gpsData = gps.read;纬度= gpsData.LLA (1);经度= gpsData.LLA (2);gpsTime = gpsData.GPSReceiverTime;% GPS返回UTC datetime。将它转换成系统时区。gpsTime。时区=“本地”;

绘制在地图上的位置随着时间戳

情节在地理位置轴从GPS模块获得的数据。GPS应该修复有效值为纬度,经度和gpsTime

如果GPS模块没有修复,给上面的命令纬度和经度和NaTgpsTime。在这种情况下,确保天线暴露在晴朗的天空,等待一些时间和以上步骤再试。

如果(~ isnan(纬度)& & ~ isnan(经度))%绘制在地理坐标位置无花果= geoplot(纬度、经度、“标记”,“o”,“MarkerSize”6“颜色”,“红色”,“MarkerFaceColor”,“红色”);%的经度和纬度极限集基础地图geolimits(纬度- 0.05,+ 0.05纬度,经度(经度- 0.05,+ 0.05]);%选择技术geobasemap街道;timeString = strcat (时间戳:“字符串(gpsTime));收到GPS %创建注释和显示时间注释(“文本框”,(0.005,0.98,0.6,0.01),“FitBoxToText”,“上”,“字符串”timeString,“颜色”,“蓝”,“字形大小”10);结束

清理

当连接不再需要,明确相关的对象。

删除(gps);清晰的全球定位系统(gps);清晰的一个;