基于STM32单片机的智能充电桩计费系统设计


本设计包含程序代码+原理图+设计报告

📚开发环境

原理图:Altium Designer
程序编译器:keil 5
编程语言:C语言
设计编号:C0022

📚设计介绍

现实工艺与生活中,普通的物理控制方案逐渐不能满足科技需求,逐一被淘汰,若采用现阶段发展成熟的智能控制方案可以技术发展需要。在产品的可靠性、安全性、便捷性和维护简易来看目前的充电桩计费系统是不能满足要求,因此运用智能控制器开发充电桩计费系统可以解决目前产品所在的问题,本设计系统运用ST公司MCU平台进行研究。

实现功能:

  1. 本设计系统通过IC卡注册新号,然后可以录入指纹,LCD1602液晶屏显示系统运行信息;当注销IC卡片,需要验证指纹,其中一个指纹正确才可成功注销;
  2. 系统可以实现对卡片进行充值。系统掉电后IC卡内金额不消失;
  3. 对三个充电桩进行选择;充电桩选择完选择三个充电时间和金额(1min 1rmb,2min 2rmb,3min 3rmb);
  4. 选择好充电桩和充电时间后,刷卡并验证指纹(其中一个正确)后开始充电;
  5. 充电时,刷完卡验证完指纹后如果金额不足蜂鸣器报警;时间到后继电器断开表示充电完成。

📚原理图

img

📚程序代码

img

📚设计报告

img

📚资料清单

img

资料下载链接(可点击):
https://docs.qq.com/doc/DS3JLeVBjUEVmdkVu

基于STM32单片机智能充电桩计费系统有多种设计方案与实现方法。 ### 设计方案 - **系统架构**:以STM32单片机为核心,搭配多个功能模块。如基于STM32F103C8T6单片机的系统,其核心是由该单片机构成的最小系统电路;基于STM32F302的系统,以STM32F407作为中央控制芯片,还包括AMS1117 - 3.3V稳压电源、HMI串口显示屏、晶振与复位电路、RS232通信模块、射频模块、LED显示、EEPROM模块和隔离模块等[^1][^3][^4]。 - **计费方式**:采用时钟计费方式,相比传统计费方式所需存储容量小,具备自动计费功能。例如在基于STM32F103C8T6的系统中就运用了这种计费方式[^1]。 ### 实现方法 - **硬件实现** - **指纹采集**:利用AS608模块完成指纹数据采集,该模块通过UART串口与单片机通信,用于实现指纹验证等功能,如在基于STM32F103C8T6的系统中采用此方法进行指纹数据处理[^4]。 - **刷卡检测**:通过RC522模块实现商品刷卡检测,该模块采用SPI总线方式与单片机相连接,可用于刷卡身份认证、充值、查询和扣费等操作,在多个系统中都有应用,像基于STM32F302的系统利用射频模块(类似功能)对不同IC卡进行读写操作[^3][^4]。 - **数据显示**:通过0.96寸OLED12864显示屏或LCD1602液晶屏进行数据显示,显示屏采用IIC总线或其他方式与单片机通信,用于显示充电状态、系统运行信息等内容。如基于STM32F103C8T6的系统使用0.96寸OLED12864显示屏,基于STM32单片机的另一系统使用LCD1602液晶屏显示系统运行信息[^2][^4]。 - **充断电控制**:充断电功能通过继电器控制,继电器的数据输出端直接与单片机的GPIO口相联,当充电时间到后,继电器断开表示充电完成[^4]。 - **报警功能**:报警功能采用有源蜂鸣器,并通过NPN三极管对蜂鸣器进行驱动,当充电时刷完卡验证完指纹后如果金额不足,蜂鸣器报警[^2][^4]。 - **软件实现** - **编程语言**:使用C语言进行编程,程序编译器一般采用keil 5,如基于STM32单片机智能充电桩计费系统就采用这种编程语言和编译器[^2]。 - **通信协议**:STM32单片机通过串行传输通信协议与计量模块进行通信,获得实时电压、实时电流和累计用电量等信息。例如基于STM32F302的系统,STM32F302通过串行传输通信协议与单相互感式计量模块通信,以获取电参数信息[^3]。 ### 系统功能 - **身份认证**:系统支持刷卡身份认证和指纹验证功能。可以通过IC卡注册新号,然后录入指纹,注销IC卡片时需要验证指纹,选择充电桩和充电时间后,刷卡并验证指纹(其中一个正确)后开始充电[^2]。 - **充值与查询**:利用射频模块对不同IC卡进行读写操作,完成充值、查询和扣费操作,IC卡号可以储存在EEPROM中,保留用户信息。系统还可以实现对卡片进行充值,且系统掉电后IC卡内金额不消失[^2][^3]。 - **充电选择**:用户可以对多个充电桩进行选择,选择完充电桩后还能选择不同的充电时间和金额,如基于STM32单片机的系统可选择三个充电桩,以及1min 1rmb、2min 2rmb、3min 3rmb等充电套餐[^2]。 - **信息显示与传输**:HMI串口触摸屏或显示屏同步显示操作步骤信息、充电状态等内容,电参数信息可通过蓝牙发送到其他蓝牙设备上,也可通过跳线选择RS232通信将信息传输到串行设备上[^3]。 ### 代码示例(伪代码) ```c // 伪代码示例,用于说明基本流程 #include <stdio.h> // 模拟指纹验证函数 int fingerprint_verify() { // 实际中需要调用指纹模块进行验证 return 1; // 假设验证成功 } // 模拟刷卡验证函数 int card_verify() { // 实际中需要调用刷卡模块进行验证 return 1; // 假设验证成功 } // 模拟充电函数 void start_charge() { printf("开始充电\n"); // 实际中需要控制继电器闭合 } // 模拟充电结束函数 void stop_charge() { printf("充电结束\n"); // 实际中需要控制继电器断开 } // 主函数 int main() { if (card_verify() && fingerprint_verify()) { start_charge(); // 模拟充电一段时间 // 实际中需要根据选择的充电时间进行计时 stop_charge(); } else { printf("身份验证失败,无法充电\n"); } return 0; } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值