行空定位
【项目背景】
平时出行基本上是骑行,行驶轨迹可以用手机定位显示。前几天在DF商城上看到“GNSS北斗定位模块”,所以设计了行空板加北斗定位模块及语音识别模块采集骑行轨迹,并利用Mind+的python模式编程进行显示。
【项目设计】
数据采集、轨迹显示均使用Mind+的python模式进行编程。轨迹显示使用folium库。是一个用于完成地图可视化的Python扩展库。folium库把标识好的地图生成html,然后用“PyQt5.QtWebEngineWidgets”进行显示。
【硬件安装】
语音识别模块与北斗定位模块接行空板IIC引脚。行空板使用充电宝供电。
【坐标采集】
行空板图形化编程,获取骑行轨迹经纬度坐标,保存在Mind+.txt文件中。
【骑行记录】
【轨迹显示】
编写类文件map.py
class Browser(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle('云天GPS轨迹')
self.setGeometry(10, 30, 1400, 800)
self.browser = QWebEngineView()
self.show()
def draw_gps(self,locations,color):
Mymap=folium.Map(locations,
tiles= 'https://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=7',
attr='高德-常规图',
zoom_start=15,
)
folium.Marker(
location=locations,
popup='Home',
icon=folium.Icon(color='green')).add_to(Mymap)
folium.PolyLine(# polyline方法为将坐标用线段形式连接起来
locations,# 将坐标点连接起来
weight=10,# 线的大小为3
color=color,# 线的颜色为
opacity=0.9# 线的透明度
).add_to(Mymap)# 将这条线添加到刚才的区域m内
Mymap.save('map.html')
def myshow(self,locations,path):
#locations.append()
self.draw_gps(locations,'red')
self.Mybrowse(path)
def Mybrowse(self,url):
self.browser.load(QUrl(url))
self.setCentralWidget(self.browser)
图形化编程,显示轨迹,同时将实际获取经纬坐标与地图经纬坐标进行校正。
【演示视频】
https://www.bilibili.com/video/BV11P411D7oU/?share_source=copy_web&vd_source=98855d5b99ff76982639c5ca6ff6f528
云天老师的文章精彩{:5_116:} 太酷了 云天老师,您用的是mind+什么版本,用最新mind+1.8.0 RC2.0 无法打开高德地图界面?什么原因的,轨迹显示使用folium,PyQt5库都加载了 ModuleNotFoundError: No module named 'pywebio.platform.qt'老师我按您的教程出来这报错 老师你的pyqt5版本是哪个 为什么我的北斗定位模块一运行就报TypeError:NoneType object is not subscriptable。这个错误是什么原因造成的啊? 老师你好,为什么我的北斗定位模块报这个错误TypeError: 'NoneType' object is not subscriptable。我的连接方式和你的一样的啊。忘老师能在百忙之中回复。谢谢。 行空板没有显卡,不能在行空板上显示定位,在电脑上
页:
[1]