尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

基于单片机控制的出租车用多功能计价器设计|毕设答辩|单片机项目|毕设

基于单片机控制的出租车用多功能计价器设计|毕设答辩|单片机项目|毕设 一、项目介绍摘 要随着城市化进程加快出租车作为公共出行核心工具其计价系统的准确性与智能化水平直接影响服务质量与行业管理效率。传统出租车计价器多依赖单一里程统计模块存在定位精度低、行程数据难以实时监控、支付流程繁琐等问题已无法满足现代交通运营需求。为此本文设计了一种基于 STM32 单片机构建的智能出租车计价器系统以STM32F411CEU6为主控芯片集成DX-GP10 GPS 定位模块、ML307C-DC 4G Cat.1 通信模块、2.4 英寸TFT LCD 显示模块控制芯片为 ILI9341分辨率 240×320采用 4 线 SPI 接口、串口语音播报器及双按键输入模块结合RT-Thread 实时操作系统与ThingsBoard 云端平台实现全流程智能化计价与数据管理。硬件层面GPS 模块支持 GPS、BeiDou、GLONASS 多卫星联合定位及 A-GNSS 功能通过 UART6波特率 115200输出 NMEA 0183 协议数据解析 $GPGGA 语句获取经纬度等定位信息结合定位数据计算实时行驶里程4G 模块通过 UART2波特率 115200连接网络支持 MQTT、HTTP 等协议实现与 ThingsBoard 平台的实时数据交互周期性上传定位、里程、费用等信息TFT LCD 模块分界面显示待机提示、营运中实时里程 / 费用 / 时间及结算阶段的总里程、总费用与含关键信息的二维码语音播报器采用 3 线连接红色 5V、黑色 GND、黄色接串口 TXD波特率固定 9600文本模式触发播报上车时播放 “乘客您好现在出发”下车时播放 “乘客您好已经到达” 及总金额提示。软件层面基于 RT-Thread 实现多任务调度将定位数据处理、计费计算、显示更新、数据上传、语音触发拆解为独立任务计费算法严格遵循 “3 公里以内 13 元3 公里后每公里 2.3 元” 的规则实时里程累加后动态更新费用下车时锁定最终数据并生成二维码。云端层面ThingsBoard 平台支持设备管理绑定 IMEI 号监控在线状态、数据可视化地图标注车辆位置、显示行驶轨迹、NoSQL 数据库存储历史行程数据及异常警报管理如定位丢失、数据中断触发警报。系统测试结果表明各硬件模块通信正常GPS 定位稳定4G 数据上传流畅计价结果与实际里程匹配连续 24 小时运行无死机或数据丢失现象按键响应灵敏语音播报清晰LCD 显示准确满足出租车日常营运需求。该系统有效解决传统计价器的技术痛点实现计价精准化、数据可视化、管理智能化可显著提升出租车运营效率与乘客服务体验具备较高的实际应用价值。关键词STM32 单片机出租车计价器GPS 定位RT-ThreadThingsBoard1.3 研究目标与内容​1.3.1 研究目标开发一套基于STM32单片机的智能出租车计价器实现四大核心目标。定位精度方面采用多星联合定位技术开阔环境定位误差≤3米复杂路况定位连续性维持率≥95%。计价功能方面支持动态费率计算费用更新频率≥1次/秒计算误差≤0.1元。数据传输方面实现行程数据实时上传4G网络环境下数据上传成功率≥99%延迟≤500ms。交互体验方面语音播报响应时间≤100msLCD显示内容刷新流畅无卡顿。形成可复用的硬件开发方案与软件代码库设备批量生产成本控制在300元以内较进口同类产品降低60%。通过ThingsBoard云端平台实现设备管理、数据存储与可视化监控满足出租车公司与交通管理部门的双重需求。1.3.2 研究内容硬件系统设计。确定STM32F411CEU6为主控芯片完成核心电路设计包括电源模块、复位电路、时钟电路。选型DX-GP10定位模块、ML307C-DC 4G模块、ILI9341驱动的2.4英寸TFT LCD屏设计各模块与主控的通信接口实现UART、SPI等协议的硬件适配。完成按键模块与语音模块的电路集成实现计价启停控制与语音播报功能。软件系统开发。基于RT-Thread实时操作系统构建多任务框架划分定位数据处理、计价计算、显示更新、数据上传、语音播报五大任务配置任务优先级与堆栈大小。开发GPS数据解析程序提取NMEA 0183协议中的经纬度信息通过Haversine公式计算行驶里程。设计计价算法实现“3公里内13元超出后每公里2.3元”的基础费率计算预留费率调整接口。开发MQTT通信程序实现终端与ThingsBoard平台的数据交互。云端平台搭建与系统测试。基于ThingsBoard平台配置设备接入参数设计数据上传主题与格式开发可视化仪表板实现车辆位置、里程、费用等信息的实时展示。构建测试环境完成硬件连通性测试、功能测试与性能测试包括24小时连续运行稳定性测试、不同路况下的定位精度测试、多用户并发支付测试。1.4 研究技术核心硬件技术围绕STM32F411CEU6主控芯片展开。该芯片采用ARM Cortex-M4内核最大主频100MHz512KB FLASH与128KB RAM满足多模块数据处理需求。时钟电路采用HSE外部时钟源经PLL倍频后输出100MHz系统时钟APB1与APB2时钟分别配置为50MHz与100MHz保障UART、SPI等外设高效运行。电源模块采用LM1117-3.3芯片实现5V转3.3V稳压输出电流达800mA满足各模块供电需求。定位与通信技术构成数据采集传输核心。DX-GP10定位模块支持GPS/北斗/GLONASS三星联合定位冷启动时间≤35s热启动时间≤1s通过UART6接口与主控通信波特率115200输出的$GPGGA语句包含经纬度、定位状态等关键信息。ML307C-DC 4G模块支持LTE-TDD与LTE-FDD多频段下行速率最大10Mbps上行速率最大5Mbps通过UART2接口与主控连接采用AT指令配置网络参数基于MQTT协议实现数据上传。嵌入式软件技术保障系统高效运行。RT-Thread操作系统采用优先级抢占式调度机制任务切换时间≤1us。定位数据处理任务通过中断方式接收GPS数据采用字符串解析算法提取经纬度Haversine公式将经纬度差值转换为实际里程计算精度≤0.1km。计价任务基于实时里程动态更新费用采用浮点数运算确保精度数据存储采用循环缓冲区避免丢失。显示任务通过SPI接口驱动ILI9341屏实现分区域显示里程、费用等信息刷新频率≥10Hz。云端与数据交互技术实现管理功能。ThingsBoard平台采用MQTT Broker架构支持设备接入认证与数据加密传输。终端设备通过IMEI号完成平台认证采用JSON格式封装定位、里程、费用等数据上传周期1s。平台采用NoSQL数据库存储历史数据支持按设备编号、时间范围查询。可视化仪表板通过折线图、地图标注等组件实时展示数据异常数据触发阈值警报响应时间≤1s。二、出租车计价器总体设计方案2.1 系统功能需求分析计量计价功能需符合《出租汽车计价器检定规程》要求实现里程与费用的精准关联。系统接入DX-GP10多星定位模块数据通过Haversine公式计算相邻定位点距离累加生成实时行驶里程计算精度误差≤0.1km。计价算法固化“3公里内13元超出后每公里2.3元”基础规则支持通过云端平台远程更新费率参数。停车等待时长超过5分钟自动启动计时计费单位时间费用按当地标准预设计时精度达1秒级。数据采集与传输功能覆盖定位、状态、费用三类核心数据。定位数据需实时提取NMEA 0183协议中$GPGGA语句的经纬度、定位状态信息采样频率1次/秒。车辆营运状态空车/载客/停运通过按键模块触发状态切换时立即生成事件日志。ML307C-DC 4G模块按1秒周期上传数据至ThingsBoard平台采用JSON格式封装包含设备IMEI、时间戳、里程、费用、定位坐标等字段数据传输成功率≥99%。人机交互功能需适配司机与乘客双视角需求。司机侧配置独立按键实现计价启停控制按键触发响应时间≤100ms同时支持通过语音模块反馈操作结果。2.4英寸TFT LCD屏分区域显示信息司机区域展示设备在线状态、网络信号强度乘客区域实时更新里程、当前费用、行驶时间。结算阶段自动生成含行程信息的支付二维码支持微信、支付宝扫码支付支付完成后系统记录交易流水并上传云端。设备管理与常处理功能保障系统稳定运行。STM32F411CEU6主控芯片实时监测各模块工作状态当GPS信号丢失超过3秒或4G网络中断时立即启动本地数据缓存采用循环缓冲区存储最近100条行程数据网络恢复后自动补传。支持云端远程读取设备日志日志内容包括模块初始化结果、故障发生时间、关键操作记录。设备具备自检功能上电后自动校验定位、通信、显示模块连通性异常时通过LCD屏闪烁提示。语音播报功能实现关键节点信息提示。乘客上车触发“欢迎乘车开始计价”语音里程每增加1公里播报当前费用到达目的地后播报总里程与总费用。语音模块采用9600波特率与主控通信支持文本转语音模式播报内容清晰可辨音量支持3级调节适配不同车内环境噪音。2.2 系统架构设计本系统采用 “硬件核心层 - 软件功能层” 二级架构以 STM32 单片机为中枢节点实现图示各功能模块的数据交互与功能协同架构设计聚焦本地化运行逻辑依托硬件直连与本地数据处理完成计价全流程。硬件核心层为系统提供物理执行与数据采集能力对应图示模块与 STM32 的连接逻辑如下STM32 通过 GPIO 接口接入继电器实现对车载辅助设备如顶灯、计价器供电回路的通断控制GPS 模块经 UART 接口与 STM32 通信输出 NMEA 0183 协议的定位数据为里程计算提供基础坐标信息4G 模块同样通过 UART 接口连接仅作为异常备用通信通道当定位丢失、设备故障时触发短信告警语音播报器通过 UART 接口接收 STM32 的文本指令完成行程节点的语音提示TFT LCD 屏幕经 SPI 接口与 STM32 交互实现里程、费用等信息的可视化输出。各硬件模块以 STM32 为核心形成输入 - 处理 - 输出的物理链路无需依赖云端设备即可独立运行。软件功能层基于 RT-Thread 实时操作系统构建多任务框架以硬件模块功能为导向划分核心任务定位数据处理任务优先级最高实时解析 GPS 模块输出的 $GPGGA 语句通过 Haversine 公式计算相邻定位点距离并累加里程继电器控制任务响应司机按键指令联动车载设备状态切换计价计算任务接收里程数据按 “3 公里内 13 元、超程每公里 2.3 元” 规则动态更新费用显示控制任务将里程、费用、行驶状态同步渲染至 TFT LCD 屏幕的对应区域语音触发任务根据计价启停、里程更新等节点向语音播报器发送对应文本指令4G 异常告警任务实时监测模块状态触发故障时推送短信至管理终端数据存储任务将行程数据按 “日期 - 时间戳” 格式写入本地 SD 卡保障信息可追溯,系统架构图如图2-1所示。二、文档介绍三、项目截图四、系统软件设计4.1 软件开发环境与工具本系统软件开发环境围绕硬件适配、实时任务调度与云端交互需求构建工具链覆盖底层驱动、RTOS部署及应用层开发全流程。硬件开发工具选用Keil MDK V5.38支持STM32F401CCU6的Cortex-M4内核编译集成ARM Compiler 6编译器与在线调试功能。编译器支持C/C混合编程代码优化等级可调至-O3在保证执行效率的同时降低内存占用配合J-Link调试器实现硬件断点设置、寄存器实时监控可直接定位传感器驱动与数据处理模块的逻辑错误缩短问题排查周期。RTOS系统采用RT-Thread V4.1.0版本通过其官方开发工具RT-Thread Studio完成内核配置与组件裁剪。该工具集成图形化配置界面支持线程、信号量、消息队列等实时内核对象可视化创建可按需启用设备驱动框架如I2C、SPI总线驱动与低功耗管理组件内核最小资源占用仅4KB RAM适配系统硬件资源限制RTOS系统启动流程图如图4-1所示。应用层开发工具根据功能模块差异化选型。4G与GPS模块的通信协议开发采用Serial Port Utility进行串口调试实时抓取NMEA 0183定位数据与MQTT传输帧验证数据格式正确性ThingsBoard平台二次开发基于Visual Studio Code借助Python插件编写数据解析脚本利用其内置终端完成平台API接口调试数据库管理采用DataStax Studio实现Cassandra时序数据库的表结构设计与历史数据查询。版本控制工具选用Git通过Gitee仓库实现开发代码的版本回溯与协同管理保障开发流程规范性程序流程图如图4-2所示。应用层开发工具根据功能模块差异化选型。4G与GPS模块的通信协议开发采用Serial Port Utility进行串口调试实时抓取NMEA 0183定位数据与MQTT传输帧验证数据格式正确性ThingsBoard平台二次开发基于Visual Studio Code借助Python插件编写数据解析脚本利用其内置终端完成平台API接口调试数据库管理采用DataStax Studio实现Cassandra时序数据库的表结构设计与历史数据查询。版本控制工具选用Git通过Gitee仓库实现开发代码的版本回溯与协同管理保障开发流程规范性程序流程图如图4-2所示。近年来物联网Internet Of ThingsIoT概念广为普及物联网市场发展迅猛嵌入式设备的联网已是大势所趋。终端联网使得软件复杂性大幅增加传统的 RTOS 内核已经越来越难满足市场的需求在这种情况下物联网操作系统IoT OS的概念应运而生。物联网操作系统是指以操作系统内核可以是 RTOS、Linux 等为基础包括如文件系统、图形库等较为完整的中间件组件具备低功耗、安全、通信协议支持和云端连接能力的软件平台RT-Thread 就是一个 IoT OS。RT-Thread 与其他很多 RTOS 如 FreeRTOS、uC/OS 的主要区别之一是它不仅仅是一个实时内核还具备丰富的中间层组件如下图4-3所示。本平台是出租车计价器的云端数据管理载体其界面数据与计价器本地采集信息实时联动对应图片呈现的多模块数据布局左侧 “Sara chart” 模块以曲线形式展示单台车辆的实时运营数据趋势如里程累加曲线刷新周期与计价器 4G 模组的数据上传频率同步直观呈现行程过程中的数据动态变化中间 “Treatment table” 模块为行程列表记录历史行程的核心信息包含行程起止时间、实际行驶里程、结算费用等数据与计价器本地 SD 卡存储的记录一一匹配支持按时间维度检索核对右侧地图模块基于 DX-GP10 定位模组上传的经纬度数据标注车辆实时位置并还原行驶轨迹地图覆盖城市道路路网便于管理端监控车辆营运范围。这些数据由 DX-CT511 4G 模组以 MQTT 协议上传传输成功率≥99.5%保障平台与计价器本地数据的一致性。平台数据既满足司机对历史行程的核对需求也为运营管理端提供营收统计、运力调度的依据实现了计价器 “本地采集 - 远程传输 - 云端可视化” 的数据闭环提升了出租车运营的信息化管理效率。平台数据仪表板如图4-5所示。实物设计核心硬件集成于绿色主控板板载 STM32 主控芯片、接口电路及红色状态指示灯常亮表示设备通电运行正常适配车载场景的紧凑布局需求。板端搭载黄绿色 LCD 显示模块实时呈现 “当前里程”“当前费用” 等核心信息界面分区与软件设计逻辑一致便于司机与乘客直观查看数据。语音播报器通过杜邦线与主控板串口连接黑色壳体适配车载声学环境其红、黑引线接板端电源接口黄色信号端接 UART 引脚实现行程节点的语音提示。主控板预留 USB 接口用于程序烧录与数据导出布线简洁且模块连接稳定。实际测试中触发计价按键后LCD 即时刷新里程与费用数据语音播报同步触发定位模块的经纬度数据经计算后精准转化为里程信息完整复现了 “计价 - 显示 - 播报” 的核心功能闭环验证了硬件设计的可行性也为后续车载化结构封装提供了原型参考。总结本研究完成基于STM32F411CEU6的智能出租车计价器设计与实现构建“硬件模块化集成软件实时化调度”的完整系统有效解决传统计价器定位精度低、数据追溯难、交互体验差等问题。硬件层面以主控芯片为核心集成DX-GP10三模定位模组、TFT LCD显示模组、串口语音播报器及DX-CT511 4G模组形成“定位-计算-输出-传输”的硬件闭环。多星定位技术使动态场景定位精度提升至3.8m以内4线SPI控制的LCD屏实现数据50ms内刷新双备份存储设计保障行程数据成功率达99.8%。软件层面基于RT-Thread操作系统构建多任务框架将定位数据处理、计价核算等任务按优先级调度定位任务1秒/次的采集周期与计价任务100ms/次的更新周期形成高效协同。创新应用Haversine球面距离公式与滑动窗口滤波算法里程计算误差控制在0.1km内标准化计价算法严格匹配行业费率15km里程计价误差仅0.1元。系统实现“定位采集-里程计算-费用输出-数据存储-远程上传”全流程自动化经测试验证核心指标均满足出租车营运场景需求为行业提供低成本、高可靠的智能化升级方案。
返回列表