物联网毕设 -- 公交报站系统(GPRS+GPS+STM32)

2024-01-16 23:50

本文主要是介绍物联网毕设 -- 公交报站系统(GPRS+GPS+STM32),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前言

一 连线图

1. 原理图

2. PCB效果

3. 实物效果

4. APP效果

5. 功能概括

(1)硬件端

(2)APP端

(3)云平台端

(4)演示视频

二 底层代码使用方式

1. 使用说明

2. 下载程序

三 APP使用方式

四 程序修改部分


前言

在现如今社会经济的高速发展、城市科技化、机动化的不断推进下,使城市人口和地域不断增加,对公共交通的需求相应快速增加,城市交通系统正面临着巨大的挑战。虽然现在有地铁、网约车、出租车、共享单车等出行方式,但是公交车仍然是城市交通不可或缺的重要组成部分。

⚠️⚠️(本文章仅提供思路和实现方法,并不包含代码,需要代码的同学请自行联系博主)

⚠️⚠️(有疑问或需要定制或者技术支持等,也请自行联系博主)⚠️⚠️

欢迎关注微信公众号星之援工作室,公众号不定时开源设计项目

支持单片机,Android系统设计成品定制,项目代做

请联系微信:13648103287

一 连线图

1. 原理图

开发板本身自带一个LED ,这个LED作为我们查看网络连接状态和获取数据状态的说明

(1)灯和机闪烁一下,说明我们已经连接上云平台,OLED显示屏中会显示联网状态,若MUC上面的的LED处于闪烁状态,则说明我们的设备处于正常运行,若LED灯不再闪烁,请按复位键将程序手动复位一次

(2)硬件每隔5秒会向APP传输一次数据,

2. PCB效果

3. 实物效果

室内会到站GPS模块搜星异常,请到户外进行GPS定位获取

4. APP效果

5. 功能概括

(1)硬件端

1. 使用GPS定位模块获取车辆位置的经纬度:首先,将GPS定位模块安装在车辆上,使其能够接收卫星信号。然后,通过模块获取车辆当前位置的经纬度信息。

2. 将经纬度上传到云平台:将GPS模块与云平台连接,实时上传车辆位置的经纬度信息。这样,控制平台可以实时监控车辆的位置。

3. 使用LCD12864显示屏显示设备状态:将LCD12864显示屏安装在车辆上,通过显示屏实时显示车辆的当前位置、行驶速度等信息。

4. 语音模块实现到站播报:当车辆到达指定站点时,语音模块会自动播放到站提示音,提醒乘客注意。

5. 继电器控制门的开与关:通过继电器模块实现车门的开关控制。当到达站点时,控制平台发送指令给继电器模块,使其打开车门;乘客上下车完成后,再发送指令关闭车门。

6. 按键实现到站开关继电器功能:乘客可通过按键手动控制继电器模块,实现车门的开关。 7. 蜂鸣器进行开门与关门提示:当车门打开或关闭时,蜂鸣器会发出提示音,提醒乘客注意。

8. 使用GA6-B模块进行联网:将GA6-B模块插入车辆,使其能够连接互联网。

(2)APP端

1. 使用地图功能进行站点标注:通过使用地图功能,可以自行设置车辆经过的站点,并将这些站点进行标注,方便后续的车辆位置更新和到站指令下发。

2. 自动更新车辆位置:利用GPS定位模块获取车辆当前的经纬度信息,并将其实时更新到地图上,使地图上的车辆位置能够准确反映车辆的实时位置。

3. 自动根据车辆位置进行预到站指令下发:通过根据车辆当前位置与已标注的站点位置的距离,系统可以自动判断车辆距离每个站点的预计到达时间,并相应地提前发送到站指令给控制平台,实现提前报站功能。

4. 添加一个调用高德地图的功能:可以通过调用高德地图的API,实现更多地图功能,例如显示实时交通情况、路径规划、导航等,提供更全面的地图功能支持。

(3)云平台端

  1. 获取设备相关数据进行转发

(4)演示视频

链接:演示视频icon-default.png?t=N7T8https://pan.baidu.com/s/1IsCrsoD8GFVBz6hbmrjEgA?pwd=xzy0

二 底层代码使用方式

1. 使用说明

(1). 使用的时候设备会自动连接平台

请注意插卡方向,若联网模块处于慢闪状态,则说明sim卡可用GPRS功能。

若处于快闪状态,则需要重新给设备上电或者换卡。

(2). 当设备处于正常状态的时候,开发板上面的LED会处于闪烁的状态

(3). 当GPS设备搜星成功之后,GPS模块的LED灯会处于闪烁状态,如果处于常亮状态,请到户外进行数据获取!

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

2. 下载程序

  1. 先根据原理图进行连线,连接好以后在做后面的操作
  2. 请注意插卡方向,若联网模块处于慢闪状态,则说明sim卡可用GSM功能。
  3. 若处于快闪状态,则需要重新给设备上电或者换卡。
  4. 打开程序(硬件由工作室出的可以忽略下载程序这部分)

三 APP使用方式

  1. 下载APP

(1)操作方式:

使用Android手机安装APK进行操控

安装Android studio导入项目使用模拟器

Android studio下载链接

下载Android Studio_android studio下载_psh714的博客-CSDN博客

(2)使用说明

打开APP后设备会自动订阅MQTT主题,等待1-5秒APP会自动获取到设备上的数据,若5秒内没有获取到设备数据,则请检测设备是否在线,若在线,则请重新打开APP进行数据的获取

首先进行站点的设置,然后可以切换到手动模式进行车辆的模拟行驶,在视频中会详细介绍!!

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

四 程序修改部分

  1. 如需修改WiFi

这篇关于物联网毕设 -- 公交报站系统(GPRS+GPS+STM32)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/614316

相关文章

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序