基于物联网的电动自行车充电管理系统设计与实现_第1页
基于物联网的电动自行车充电管理系统设计与实现_第2页
基于物联网的电动自行车充电管理系统设计与实现_第3页
基于物联网的电动自行车充电管理系统设计与实现_第4页
基于物联网的电动自行车充电管理系统设计与实现_第5页
已阅读5页,还剩30页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要电动自行车凭借其便捷、环保等特性,已然成为大众短距离出行的热门选择,普及程度与日俱增。然而,传统的个人自行充电方式,常导致用户私拉乱接电线,不仅破坏公共区域的整洁,还极易因线路过载、短路等问题,引发电气火灾。入户充电更不可取,在狭小、不通风的室内环境中,一旦电池出现过热、鼓包起火,狭小空间将迅速形成“助燃器”,火势蔓延迅猛,对人员生命安全以及屋内财产安全构成极大威胁,引发的惨痛事故便是血与泪的警示。针对这些挑战,本文提出运用物联网技术,设计并实现智慧充电管理系统,旨在实现从传统充电模式向集中充电模式的飞跃。本系统以STM32F103C8T6为主控芯片,整合RFID识别、OLED显示、继电器及DGB灯等模块,构建智能化电动自行车充电管理系统。用户通过注册RFID卡片实现“刷卡即用”的认证模式,系统自动识别身份并控制充电流程,结合实时状态监测有效杜绝安全隐患。上位机采用Python的Tkinter库开发,通过USB-TTL与下位机建立串口通信,集成用户管理、充电记录统计(含消费金额、次数)、日志监控等功能界面。管理员可远程查看用户ID、操作数据,并通过消费行为分析优化资源配置,形成硬件精准控制与软件数据联动的闭环管理,实现充电流程规范化、监控可视化及运维智能化,显著提升安全性与管理效率。​关键词:物联网技术;STM32单片机;数据管理;上位机软件AbstractElectricbicycles,withtheirconvenienceandeco-friendliness,havebecomeapopularchoiceforshort-distancecommuting,witnessingrapidadoption.However,traditionalindividualchargingpracticesoftenleadtodisorderlywiringinpublicareas,compromisingenvironmentalintegrityandincreasingrisksofelectricalfiresduetooverloadedcircuitsorshortcircuits.Indoorchargingposesevengreaterdangers,asconfinedandpoorlyventilatedspacescanactasaccelerantsforbatteryoverheating,swelling,orcombustion,rapidlyescalatingfirehazardsthatthreatenlivesandproperty—tragediesthatserveasstarkreminders.Toaddressthesechallenges,thispaperproposesanIoT-basedsmartchargingmanagementsystemtotransitionfromconventionalchargingtocentralizedintelligentsolutions.ThesystememploysanSTM32F103C8T6microcontrollerintegratedwithRFIDrecognition,OLEDdisplay,relaycontrol,andDGBindicatormodulestocreateanintelligente-bikechargingplatform.UsersauthenticateviaregisteredRFIDcardsfor"swipe-to-use"operation,enablingautomatedidentityverificationandchargingcontrolwithreal-timesafetymonitoringtoeliminaterisks.Theuppercomputer,developedusingPython'sTkinterlibrary,establishesUSB-TTLserialcommunicationwithhardware,featuringinterfacesforusermanagement,chargingstatistics(cost/frequency),andlogmonitoring.AdministratorscanremotelytrackuserIDs,operationaldata,andoptimizeresourceallocationthroughconsumptionpatternanalysis,formingaclosed-loopmanagementsystemthatintegrateshardwareprecisionwithsoftwareanalytics.Thisachievesstandardizedchargingprocesses,visualizedmonitoring,andintelligentmaintenance,significantlyenhancingsafetyandoperationalefficiency.Keywords:InternetofThingstechnology;STM32microcontroller;datamanagement;uppercomputersoftware目录TOC\o"1-3"\h\u137171绪论 基于物联网的电动自行车充电管理系统的设计与实现1绪论1.1研究的背景和意义1.1.1研究背景截至2022年,中国电动自行车社会保有量已达3.5亿辆,相当于每4人拥有1辆,其城市交通出行分担率超过30%(南宁、昆明等城市高达50%),成为短途通勤的核心工具。尽管电动自行车每公里碳排放仅22克(为燃油汽车的1/10)、百公里能耗成本不足1元(燃油摩托车为15-20元),且在城市拥堵路段通行效率比汽车高15-20%,但其爆发式增长与配套设施滞后之间的矛盾日益尖锐。2022年全国电动自行车火灾事故超1.8万起,80%由电池充电故障引发,暴露了私拉电线、入户充电等传统模式的安全隐患。与此同时,2023年多地政策放宽路权(增设专用道)并加速充电桩/换电柜布局,上海、深圳等城市更通过200-500元购车补贴推动合规车型普及。在此背景下,如何依托技术创新平衡低碳出行需求与充电安全管理,成为构建“15分钟生活圈”智慧城市的关键挑战。本研究聚焦电动自行车集中充电场景,通过物联网技术实现身份认证、流程规范与风险防控,旨在破解“普及率高、隐患突出、监管薄弱”的治理困局,为城市绿色交通可持续发展提供技术支撑。1.1.2研究意义本研究基于嵌入式控制与物联网技术构建智慧充电管理系统,聚焦RFID身份认证与用户行为数据追踪,通过硬件控制与软件协同实现充电流程的集中化、规范化管理。系统以Python可视化平台为核心,整合用户消费记录统计与设施使用分析功能,破解传统分散式充电场景中监管缺失、私拉乱接的顽疾,同时为资源调度与运营策略优化提供数据支撑。其创新性技术框架将射频识别、数据可视化及社区级管理深度融合,既通过透明化操作减少无序充电对公共环境的破坏,又为智慧城市背景下绿色出行基础设施的标准化建设提供可复用的实践路径,推动安全管理效率提升与社区服务数字化升级的协同发展。1.2国内外研究现状1.2.1国外研究现状在电动自行车充电管理领域,国内外学者和相关企业已开展了广泛研究,并取得了一系列成果。国外方面,欧洲和北美等地区在智能充电基础设施建设和能源管理方面处于领先地位。例如,荷兰作为电动自行车普及率最高的国家之一,其充电管理系统的智能化水平较高。荷兰的研究机构和企业通过物联网技术和智能电网平台,实现了电动自行车充电桩的远程监控和动态调度,显著提升了充电效率。同时,荷兰还注重充电安全性和用户体验,开发了多种安全保护机制和用户友好的充电服务平台。德国则在充电桩的标准化和互联互通方面取得了重要进展,其充电管理系统能够与多种电动自行车品牌兼容,为用户提供了更加便捷的充电体验。此外,美国在智能算法和大数据分析方面进行了深入研究,提出了多种基于机器学习的充电调度算法,进一步优化了充电资源的分配和能源利用效率。1.2.2国内研究现状国内方面,随着电动自行车市场的快速增长,充电管理系统的研究也取得了显著进展。国内学者在物联网技术、大数据分析算法等技术进行了深入探索,积极探索本土化的充电管理解决方案。例如,部分研究通过智能调度算法优化充电桩资源分配,减少了用户等待时间;还有一些研究结合区块链技术,提高了充电数据的安全性和透明度。在实践应用方面,国内一些城市已经开始试点智能充电管理系统。例如,北京市在部分区域部署了基于物联网的电动自行车充电桩,实现了充电过程的实时监控和远程管理,有效提升了充电桩的利用率和用户满意度。政策层面,上海、深圳等城市通过购车补贴推动合规车型普及,加速充电桩/换电柜布局,为技术落地提供场景支撑。此外,国内企业也在充电管理系统的研发和推广方面发挥了重要作用。例如,某知名企业推出的智能充电桩能够通过手机APP实现远程预约、支付和故障报修,为用户提供了更加便捷的充电服务。然而,兼容性不足(如品牌间协议差异)、高峰时段调度效率低、安全隐患防控技术待突破等问题仍制约行业发展。1.3主要研究方法1.文献调研法:这是一种资料收集方法,通过官方网站、图书馆等途径去查阅相关课题的文献、学术报告以及行业标准等,了解目前该电动自行车充电系统的研究背景、国内外研究现状、发展趋势、未来市场等,为课题的设计提供有效的理论依据和技术指导。2.实地调查法:对现有的相关产品进行了解,例如通过对不同品牌、不同型号的电动自行车充电设备进行实践和研究,分析不同产品的优劣,总结问题,根据问题作出改进,从而制定大概的系统需求。3.系统设计方法:根据整理得到的基础资料和大概需求,设计系统整体的架构和功能模块,并根据各个模块的需求,筛选合适的硬件元器件,包括单片机、传感器、报警设备、执行器等,得到具体、详细的方案设计。4.系统集成方法:将划分好的模块进行统一、集成,形成完整的电动自行车充电系统,验证各个模块之间是否成功建立通信,数据和指令是否成功、正确的传输等。1.4主要内容基于物联网技术的电动自行车充电系统设计涉及硬件设计、软件程序以及实物模型的实现,通过单片机控制技术、射频识别技术、继电器通断等技术实现充电管理控制的设计要求。以下是系统主要设计内容及章节安排:第一章绪论:介绍电动自行车充电系统的研究背景、意义及国内外研究现状,以及本酒精监测系统的主要研究方法,明确了本系统的设计目的与应用需求。第二章系统总体设计:对电动自行车充电系统的架构进行概述,包括硬件选择与系统各模块的功能划分。第三章硬件电路设计:围绕电动自行车充电系统的硬件电路展开详细设计,分析各个模块的工作原理与引脚配置,实现硬件电路设计要求。第四章软件设计:详细阐述系统的软件设计与实现,包括主程序、传感器检测程序、无线通信程序等,详细分析各个模块的具体工作时序,实现软件程序的设计要求。第五章上位机软件设计:详细阐述上位机设计实现过程,包括搭建界面、可实现操作程序的设计。第六章系统功能测试:通过软硬件调试,制作实物模型验证系统各项功能的稳定性与性能,评估系统的实际应用效果,进行改进与优化。第七章总结与展望:对系统设计进行总结,并对未来电动自行车充电系统的发展方向做出展望。2总体设计方案2.1功能需求分析本智能充电管理系统,需实现用户刷卡即完成注册、充值、消费等操作。充电自动扣费,超时自动停止,同时支持多人独立使用,并记录每人的充电与消费情况。操作结果会通过屏幕与灯光提示。以下是具体功能介绍:(1)用户识别功能:用户在首次使用时,需借助RFID卡在设备上完成注册,此时系统会将此卡的编号记录,再次刷卡时,系统便会精准识别用户,每张卡都对应一个独立的账户。(2)用户操作功能:系统识别并确定为有效卡片后,用户即可通过设备上的按键来完成用户需要的操作,除此之外,用户还可通过管理员使用上位机进行远程的对用户卡的充值、查询和注销的操作。(3)充电控制与扣费功能:首先系统会验证该卡余额是否大于或等于单词充电费用,满足条件后,系统立即从卡中扣除单位余额,同时调用控制继电器接通充电电源,并在屏幕中显示充电计时,计时结束后自动断开继电器停止充电。若余额不足,则会通过闪烁红灯和屏幕显示余额不足来提示用户进行充值。(4)信息显示功能:系统通过屏幕和灯光反馈实时状态,确保操作清晰直观。上位机也会同步更新数据。待机状态下,屏幕显示当前连接电池电压并显示处于寻卡中的状态,除充电时屏幕会显示充电计时外,其他操作时,屏幕都会显示操作成功并伴有灯光提示。2.2总体方案设计根据系统设计功能,确定电动自行车充电系统具体设计方案,如图2-1所示为系统设计框架,图2-2为上位机功能图。该系统以STM32F103C8T6单片机为核心控制器,集成多个模块实现智能充电管理。用户通过按键模块进行本地操作(如充值),RFLD模块(支持刷卡)完成身份识别与扣费验证;显示模块实时展示电池电压、剩余充电时间及账户余额,配合RGB提示灯通过颜色变化反馈状态(绿灯充电中、红灯异常、蓝灯远程响应)。继电器模块根据指令控制充电电源的通断,而电池检测模块持续监测电池状态,防止过充或电压异常。系统通过通信模块连接上位机,支持远程充值、用户管理及数据同步。供电电源为各模块提供稳定电力,保障系统全天候运行。整体设计兼顾本地操作与远程控制,实现多用户独立计费、直观交互。 图2-1系统设计框图2-2上位机功能框图上位机借助Python语言,利用Tkinter库编写界面,sqlite库存储数据。其具备余额管理功能,能处理用户账户充值扣费;支持查询充电记录,方便了解充电历史详情;还可进行删除用户操作,清理无效账号,以维护系统数据的有序性,为电动自行车充电系统的管理和用户使用提供便利。系统采用USB-TTL串口通信模块将采集的数据传输至上位机并存储,便于日后查看。3系统硬件设计通过上一章对系统整体结构的描述,我们可以知道系统的硬件部分应该包括主控芯片、按键模块、RFID射频识别模块、继电器、电池检测、显示屏、RGB提示灯、上位机通信模块。3.1单片机主控芯片设计主控芯片是硬件的核心部分,是整个系统的大脑,对系统的运行起到至关重要的作用。在我们的系统中,其需要满足如下几点要求:(1)外设接口能力:该系统有较多的外设部件,因此需要一定数量的GPIO接口与外设部件进行通信,确保系统正常运行。(2)电源管理:需支持宽电压输入,以满足芯片和外部电路需求;以及电池检测所需ADC采样。(3)存储支持:需要一个较大的flash空间存放各项数据。(4)实时性:能够快速处理多任务,如RFID通信、显示刷新、按键扫描等。满足以上需求并结合课程设计经验,该系统选择STM32F103C8T6作为主控芯片,其具备以下优势:(1)资源全面覆盖:GPIO、中断、定时器、ADC资源完美匹配多按键、RFID、显示、上位机通信等需求。(2)实时性与低功耗:硬件中断快速响应按键,快速处理多任务,低功耗模式延长电池寿命。(3)开发高效便捷:HAL库和CubeMX工具简化代码编写,开发门槛低。(4)性价比突出:成本低廉,性能完全覆盖需求,无冗余设计。STM32F103C8T6为核心的主控模块电路如图3-1所示,芯片供电电路由DC5V电路提供。本设计的系统中包含了下载调试电路,该电路也是实现单片机与上位机设备通信的关键环节,采用USB-TLL串口通信协议。具体来说,下载调试电路的接收数据接口(RXD)与单片机的发送数据接口(TXD0)相连,确保了数据从单片机向调试电路的正确传输。同时,下载调试电路的发送数据接口(TXD)则与单片机的接收数据接口(RX0)对接,实现了基于物联网的电动自行车充电管理控制设计与实现数据流的反向传输。图3-1主控板电路图3.2RFID射频识卡器电路设计在本设计中,RFID射频识卡器是重要模块,实现了身份验证的核心功能,为后续的充电控制、计费等管理提供可行性支持。RFID读卡器通过扫描用户卡片中的唯一ID,验证用户是否为合法使用者。系统预存授权卡的ID。刷卡时,STM32比对卡ID与数据库,匹配则允许充电,否则通过OLED提示“未注册”。避免非授权人员滥用充电设备,提升安全管理。其电子引脚图如图3-2所示,引脚SDA、SCK、MOSI、MISO、RST分别与STM32的PA4、PA5、PA6、PA7、PB0引脚相连接,完成识别ID卡的功能。其中SDA引脚功能为片选信号,控制该从设备激活状态,SCK引脚为SPI时钟线,MISO、MOSI引脚分别为主设备接受数据线和发送数据线,RST引脚则是完成复位功能。图3-2RFID模块电路图3.3显示模块电路设计本系统的显示模块主要用于将识别到的卡中的用户ID号、余额以及需要充电时的实时用时显示在OLED上,因此选择了1.3-OLED作为本设计的显示屏模块。显示屏共四只引脚,电路引脚图如图3-3所示。其中SCL引脚为时钟线,负责输出时钟信号,用于同步通信时序,定义数据传输的速率,协调主从设备之间的数据收发节奏,确保双方在时钟上升沿或下降沿采样数据;SDA引脚为数据线,负责双向传输,主设备和从设备通过它发送或接收实际的数据内容,并且支持多设备共享总线,实现“一主多从”的通信模式。在本设计中,显示屏的SCL引脚和SDA引脚分别与STM32的PB6引脚和PB7引脚相连,完成数据在显示屏上的显示。3-3显示屏电路引脚图3.4按键操作模块电路设计本系统采用多个按键实现对用户、车辆充电的一些基本操作。如图3-4所示,独立按键1至9的引脚分别与STM32的PA8、PA11、PA12、PA15、PB3、PB4、PB5、PB8、PB9引脚连接,本次只使用了按键1至按键6,六个独立按键,剩余三个留作备用或拓展。其功能分别可实现用户注册、删除用户、账户充值、车辆充电、返回和读取上位机存储的用户信息。图3-4独立按键电路引脚图3.5充电控制电路设计继电器是实现车辆充电时控制充电和断电的主要装置,这里采用了型号JQC-3FF-S-Z的继电器,其电路图如图3-5所示,其中控制端引脚DC+为正极、引脚DC-端接地为继电器线圈供电、引脚IN端通过连接STM32引脚PA1实现接入单片机信号,输入控制信号(GPIO的高/低电平),控制继电器吸合或断开。。图3-5继电器电路引脚图4系统软件设计296184.1主程序设计本系统的软件开发环境基于KeilMDK(MicrocontrollerDevelopmentKit)平台,使用C语言进行程序设计。KeilMDK是一款专为嵌入式系统设计的集成开发环境(IDE),支持STM32系列单片机的开发,具有高效的编译器和调试工具。开发过程中,通过STM32CubeMX工具进行硬件配置,生成初始化代码,显著提高了开发效率。主程序采用模块化设计思想,通过状态机实现系统功能的调度与管理。系统上电后,首先完成硬件初始化,包括GPIO配置、定时器设置、ADC校准、RFID模块初始化等。初始化完成后,系统进入主循环,依次执行以下任务:按键扫描:检测用户输入,响应注册、充值、充电等操作请求。RFID卡检测:通过RC522模块轮询卡片,检测到有效卡后读取卡号并进行身份验证。充电控制:根据用户操作和系统状态控制继电器通断,实现充电管理。数据显示:通过OLED实时显示电池电压、用户余额及充电状态。通信处理:与上位机进行数据同步,确保用户信息的一致性。主程序通过定时中断实现多任务调度,确保系统实时性和稳定性。图4-1主程序流程图284314.2识别程序设计RFID识别模块采用MFRC522芯片,它是一款小巧、低成本的模块,主要用于近距离无线识别卡片,且开发友好,有多个开源库支持,非常适合本项目。其通过四个接口与STM32通信。程序设计分为以下步骤:初始化:配置SPI接口参数,复位RC522模块,设置工作模式为ISO14443A标准。卡片检测:通过PCD_Request函数发送请求信号,检测是否有卡片进入感应区。防冲突处理:使用PICC_Select函数获取卡片的唯一标识符(UID)。身份验证:将读取的UID与预存的授权卡列表比对,匹配则允许后续操作,否则提示"未注册"。数据交互:通过MIFARE_Read和MIFARE_Write函数实现卡内数据的读写操作。程序设计时加入了超时机制和错误重试功能,确保识别过程的可靠性。流程图如下图所示:图4-2识别程序流程图211514.4执行程序设计执行模块主要包括充电控制和用户操作响应两部分:充电控制:使用STM32的GPIO控制继电器通断,实现充电回路的开关。通过ADC实时监测蓄电池电压,当电压低于阈值时自动断电,防止过放电。采用PWM调节充电电流,实现恒流充电,延长电池寿命。用户操作响应:注册功能:将新卡UID写入EEPROM,并初始化用户余额。充值功能:通过按键或上位机增加用户余额,更新卡内数据。充电功能:扣除相应费用后启动继电器,开始充电。删除功能:从授权列表中移除指定卡号,禁止其使用系统。执行程序通过状态标志位和事件队列实现操作的原子性和顺序性。流程图如下图所示:图4-4执行程序流程图192054.5充电程序设计继电器控制程序通过STM32的GPIO引脚输出高低电平驱动继电器动作,关键设计如下:软件逻辑:充电开始前,先检测蓄电池电压和用户余额,条件满足后闭合继电器。待设置充电时长到达后自动断电。图4-5充电程序流程图5上位机程序设计该系统中上位机所运行的软件,是由QtCreator环境进行编写,使用Python编程语言。在设计该软件时,考虑到个人熟悉QtCreator的开发环境以及其适合进行图形界面开发,设计的软件可以通过图形界面进行操作,降低了使用者的学习成本,故采用QtCreator环境进行编写。下面介绍上位机使用的几项关键技术以及软件设计思路。5.1上位机界面实现QtCreator是一个跨平台的集成开发环境(IDE),主要用于开发Qt应用程序。它提供了文本编辑器、编译器、调试器和图形化界面设计工具等,方便开发者进行项目管理、代码编写、调试和界面设计等工作。QtCreator可以使用Python进行编写。QtforPython是一组Python绑定,允许开发者使用Python语言来访问Qt库的功能。通过QtforPython,开发者可以在QtCreator中利用Python的简洁语法和丰富的库,结合Qt的强大功能来创建跨平台的图形界面应用程序、控制台应用程序等。使用QtCreator配合Python进行开发,能够充分发挥两者的优势,快速创建出功能强大且用户界面友好的应用程序。同时,Qt的跨平台特性也使得开发出的应用程序可以在不同的操作系统上运行,而无需进行大量的代码修改。图形窗口实现需要使用到QMainWindow类,通过该类构建一个mw对象,随后使用mw的ui设计放入布局、按键、标签页等控件,并在QMainWindow类中编写自定义的槽函数,用于响应控件发出的信号。最后使用mw对象的show()方法来实现窗口显示。5.2信息管理实现在本系统的设计中,上位机软件扮演着极为关键的角色,其核心任务便是实现对用户信息的全面且精细的管理。在日常运营过程中,可对用户的充电消费记录进行详细追踪与统计,便于用户随时查询自身的消费明细。同时,还具备对用户余额的精准管理功能,无论是用户充值后的余额更新,还是在充电过程中根据实际消费进行的余额扣除,都能实现高效且准确的操作。5.2.1余额设置实现余额设置功能程序设计,首先导入相关库,使用sqlite3库建立对象conn,随后使用conn的connect()方法配置数据库文件路径,配置完毕后便实现与数据库的连接。创建Tkinter中的Entry类对象balance_entry,用于输入余额数值,同时创建Button类对象set_button,用于触发设置余额操作。为set_button绑定自定义的点击处理函数set_balance,在set_balance函数内,先使用balance_entry的get()方法获取用户输入的余额数据。获取数据后,构建SQL语句字符串sql,使用conn中的execute()方法执行SQL语句,将获取到的余额数据更新到数据库对应的用户记录中。操作完成后,使用conn的commit()方法提交事务,确保数据库数据更新成功。在更新数据库后,创建Label类对象balance_label用于显示余额,从数据库中再次查询用户余额,使用conn的execute()方法执行查询SQL语句,并使用fetchone()方法获取查询结果。获取结果后,将查询到的余额数据设置到balance_label的显示文本中,最后将balance_label放置到上位机主窗口的合适布局位置中,即可实现余额设置及显示功能,且确保上位机显示与数据库存储的用户余额始终保持一致。​5.2.2查询实现用户充电信息查询功能程序设计中,首先导入必要的库,pyserial用于串口通信,以及构建界面所需的库。使用QWidget类创建上位机主窗口对象window,并在窗口内使用QLineEdit类创建对象sn_input,作为输入SN号的文本框,同时使用QPushButton类创建对象query_button,用于触发查询操作。为query_button绑定自定义的点击处理函数query_info,在query_info函数内,先使用sn_input的text()方法获取用户输入的SN号。获取到SN号后,使用serial.Serial()方法(基于pyserial库)创建串口对象ser,并配置好串口的参数,如串口号、波特率(图中波特率为115200)等,使用ser.open()方法打开串口。通过串口对象ser的write()方法,将包含获取到的SN号的查询指令发送出去。发送指令后,使用ser.read()或相关读取方法等待接收设备返回的充电信息数据。接收到数据后,对数据进行解析处理,这里可根据预先约定好的数据格式进行解析,比如按照固定长度、分隔符等方式提取有用信息。解析完数据后,创建QTextEdit类对象info_display用于显示查询结果,将解析后得到的充电信息设置到info_display的文本内容中,最后将info_display放置到上位机主窗口中合适的布局位置,即可实现充电信息查询功能,让用户能看到对应SN号设备的充电相关信息。5.2.3用户注销实现实现删除用户功能程序设计中,首先导入PyQt5.QtWidgets模块相关类,创建主窗口对象main_window

,在窗口内创建用于展示用户信息的QListWidget对象user_list_widget和文本为“删除用户”的QPushButton对象delete_user_button

,并放置在合适布局位置。接着定义存储用户信息的数据结构,如users=[{"id":"2A7C4505","balance":20},{"id":"F2FD4605","balance":20}]

,初始化时遍历该列表,将用户信息添加到user_list_widget。随后为delete_user_button绑定点击事件处理函数delete_user

。当按钮被点击触发该函数后,先通过user_list_widget.selectedItems()获取选中用户项文本,解析出用户ID;然后在存储用户信息的列表中删除对应字典;接着清除user_list_widget内容,重新遍历更新后的列表并将剩余用户信息添加回其中显示。若用户信息存储在数据库,使用sqlite3库建立连接,获取游标,依据解析出的用户ID执行SQL删除语句,提交事务并关闭连接,保证数据库中用户信息同步更新。6电动车充电管理控制系统实验测试电动车充电管理控制系统设计完毕后,需要对系统具备的功能进行测试。功能测试范围包括下位机功能、上位机软件功能。6.1测试环境及设备6.1.1测试环境测试地点:宿舍测试时间:5月22日供电:蓄电池6.1.2测试设备(1)连接完毕的单片机及外部设施(2)笔记本一台(3)智能手机一部6.2功能测试6.2.1下位机功能测试在测试之前首先要对硬件的电路连接包括主控模块、供电电源接口、外部各个模块的焊接用万用表检查其中是否有短路、断路、虚焊的情况,没有问题之后即可上电调试,上电测试的如图6-2-1.1所示:图6-2-1.1系统上电测试图(1)识别功能与显示功能测试识别功能主要是对用户卡识别以及和空白卡的区分,显示功能则包括电压检测、用户卡的ID号和余额以及用户充电状态和时长。如图6-2-1.2、图6-2-1.3可以看到识别与显示功能运行正常。 图6-2-1.2空白卡识别显示图6-2-1.3用户卡识别显示(2)执行功能测试执行功能主要依靠按键模块和继电器模块实现。卡片未注册时通过按键进行注册,注册成功后再次通过按键实现充值功能、充电功能以及对卡片的删除功能,其中充电时还需通过控制继电器的开与关来实现该功能。如下图6-2-1.4至图6-2-1.7所示:图6-2-1.4用户卡片注册图6-2-1.5用户卡充值成功图6-2-1.6用户进行充电图6-2-1.7用户卡片注销删除(3)信息交互功能测试该功能指下位机与上位机之间的通信交互。下位机的操作结果可同步至上位机,同时上位机存储的信息可以使下位机发生突发性断电并恢复供电后一键获取原有数据信息。两者通信交互如下图6-2-1.8、图6-2-1.9所示: 图6-2-1.8用户注册同步图6-2-1.9下位机获取数据6.2.1上位机功能测试(1)余额充值模块测试该模块可通过上位机界面的+10按钮进行以十为单位的金额累加,也可在右侧输入框中直接输入想要的金额。如图6-2-1.1所示:图6-2-1.1余额充值实现(2)信息查询模块测试该模块可通过用户ID卡号查询到此用户的充电情况,消费累计金额以及剩余余额。如图6-2-1.2所示:图6-2-1.2查询用户信息实现(3)用户注销模块测试该模块可通过上位机界面中的“删除用户”按钮实现对用户的一键注销。如图6-2-1.3所示:图6-2-1.3用户注销实现7总结与展望7.1总结本文设计并实现了一套基于STM32和RFID技术的智能电动车充电管理系统。系统以STM32F103C8T6为核心控制器,通过RC522模块实现非接触式刷卡认证,结合继电器控制充电回路通断,并利用OLED显示屏进行人机交互。此外,系统通过ADC实时监测蓄电池电压,确保供电稳定性,同时支持多用户卡管理,包括注册、删除、充值、消费等功能。在硬件设计上,系统采用模块化架构,将RFID识别、电源管理、继电器驱动和用户界面分离,提高了系统的可靠性和可维护性。软件层面,通过状态机模式(如Read_Card_stage1和Read_Card_stage2)实现卡片检测与操作流程控制,并采用串口通信协议与上位机进行数据同步,确保用户数据的一致性。实验结果表明,系统能够稳定识别RFID卡,准确控制充电过程,并在OLED上实时显示电池电压、用户余额及充电状态,满足设计要求。7.2展望本系统尚有可优化的空间,未来工作可从以下几个方面展开:安全性提升:采用加密RFID卡(如MIFAREDESFire)替代普通MIFAREClassic卡,防止卡片数据被篡改或克隆。引入双向认证机制,确保只有合法读卡器才能访问卡片数据。网络化扩展:增加Wi-Fi/4G模块,将充电记录实时上传至云平台,支持远程查询、在线充值及故障监控。结合微信小程序或APP,实现用户自助查询余额、预约充电等功能。能源管理优化:引入智能充电算法,根据电网负荷(如分时电价)调整充电功率,降低用电成本。增加光伏充电接口,提升系统绿色能源利用率。用户体验改进:增加语音提示功能(如蜂鸣器或TTS模块),辅助盲操或夜间使用。优化界面交互逻辑,采用图形化菜单(如通过按键切换多级菜单)。容错与可靠性增强:增加EEPROM或Flash存储,防止断电时用户数据丢失。设计硬件看门狗和软件心跳包机制,提高系统抗干扰能力。本系统的设计思路可进一步推广至共享充电桩、智能门禁等物联网场景,为未来智慧社区建设提供低成本、高可靠性的解决方案。参考文献[1]吴佳桓,刘晨阳,陈天淼,等.基于物联网的电动自行车充电过程监测系统[J].电子测量技术,2023,46(24):127-132.DOI:10.19651/ki.emt.2314357.[2]蔡星慧.上海市J区老旧小区非机动车库智能化改造研究[D].华东师范大学,2023.DOI:10.27149/ki.ghdsu.2023.004483.[3]孟宇航.电动自行车信息采集与上报系统的设计与实现[D].中北大学,2022.DOI:10.27470/ki.ghbgc.2022.000594.[4]李茜,李素华.校园电动自行车智慧充电桩设计[J].

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论