单片机|物联网|毕设答辩|毕业设计项目|毕设设计|—基于STM32单片机的新能源汽车充电系统

标题:基于STM32单片机的新能源汽车充电系统

一、系统总体框架图

首先,一个简化的系统框架图如下所示:

text

[市电输入] -> (EMC滤波 & 浪涌保护) -> (交流电计量单元) -> (接触器/继电器) -> [充电枪] -> -> -> [新能源汽车]
                                                                        ↑
                                                                        |
[人机交互HMI] <-> [主控STM32] <-> [电表/电量计量] <-> [接触器驱动] <-> [锁枪控制]
      |                  |               |
[身份识别/RFID]    [通信模块]       [温度/电压/电流检测]
      |                  |
[LCD/指示灯]        [4G/以太网/Wi-Fi/BLE]

二、硬件架构 (Hardware Architecture)

硬件部分是整个系统功能实现的基础。

  1. 主控芯片 (MCU):

    • STM32F4系列 (如F407, F427): 带FPU,处理性能强,适合做复杂的计算和通信协议栈。

    • STM32F1系列 (如F103C8T6): 成本低,基本功能齐全,适合低成本或简易方案。

    • STM32H7系列: 高性能,适合需要复杂GUI、多任务、高实时性要求的场景。

    • 关键外设需求: 多个UART(用于通信)、ADC(用于采样)、SPI/I2C(连接外设芯片)、CAN(车规通信)、Timer(产生PWM、捕获信号)。

  2. 电源模块 (Power Supply):

    • AC-DC电源模块: 将220V市电转换为系统所需的低压直流电,例如+12V、+5V、+3.3V,为MCU、继电器、通信模块等供电。

  3. 电能计量模块 (Energy Metering):

    • 专用计量芯片 (如ADI的ADE7953, 炬能的ATT7030AU): 高精度测量交流电压、电流、功率、电能等参数,通过SPI或I2C与STM32通信。这是计费的基础。

  4. 控制与驱动模块 (Control & Drive):

    • 接触器/继电器驱动电路: STM32的IO口输出信号通过光耦隔离三极管/MOSFET放大,来控制大功率接触器(主继电器)的吸合与断开,从而通断充电电源。

    • 锁枪控制电路: 控制充电枪上的电子锁,防止充电过程中被意外拔出。

  5. 安全监测与保护模块 (Safety & Protection):

    • 漏电保护器 (RCD): 硬件漏电保护,安全底线。

    • 过流/过压保护: 通过电流/电压传感器(如霍尔传感器)采样,信号送入STM32的ADC,软件判断是否超过阈值并触发保护。

    • 温度检测: 使用NTC热敏电阻或数字温度传感器(如DS18B20),监测充电枪头、PCB板、线缆等关键点的温度,防止过热。

    • 绝缘检测: (可选,更高安全要求) 检测电路与地之间的绝缘电阻。

  6. 人机交互模块 (HMI - Human Machine Interface):

    • 显示屏: LCD屏(如TFT LCD),用于显示电量、金额、时间、状态等信息。

    • 指示灯与按钮: LED状态灯(电源、充电、故障)、急停按钮、启动/停止按钮。

    • 身份识别: RFID读卡器(用于用户刷卡启动充电和支付),或扫码模块。

  7. 通信模块 (Communication):

    • 车载通信 (CAN总线): 通过CAN控制器和收发器(如TJA1050)与车辆BMS进行通信,交互充电参数(最大允许电压/电流、SOC等)。这是核心通信协议,遵循国标GB/T 27930。

    • 网络通信:

      • 4G Cat.1/NB-IoT模块: 将充电桩数据远程上传至云平台,实现远程监控、支付、管理。是目前主流方案。

      • 以太网: 用于固定场所的高速有线联网。

      • Wi-Fi/蓝牙(BLE): 用于近场配置、调试或小程序控制。

    • 本地通信: UART与电表、RFID等模块通信。


三、软件架构 (Software Architecture)

软件是系统的大脑,负责协调所有硬件并实现业务逻辑。通常采用前后台实时操作系统(RTOS) 结构。

  1. 底层驱动层 (Driver Layer):

    • STM32 HAL/LL库: 使用ST提供的库函数初始化MCU所有外设:GPIO, ADC, SPI, I2C, UART, CAN, Timer等。

    • 外设驱动: 编写/移植特定芯片的驱动程序,如LCD驱动、RFID驱动、电表驱动等。

  2. 中间层 & 协议栈 (Middleware & Protocol Stack):

    • CAN通信协议栈: 实现GB/T 27930协议,解析和组帧与BMS通信的消息。

    • TCP/IP协议栈: 如果使用以太网或4G,需要集成LwIP等协议栈。

    • MQTT/HTTP客户端: 用于与云平台进行数据交换。

    • 操作系统 (可选): 如FreeRTOS, uC/OS,用于任务调度和管理,提高系统的实时性和可靠性。

  3. 应用层 (Application Layer):

    • 主状态机 (Core State Machine): 这是软件的核心。充电过程被定义为一系列状态,STM32根据条件和输入切换状态。

      • 空闲态 -> 鉴权/连接确认 -> 充电配置 -> 充电中 -> 充电结束 -> 故障态

    • 任务模块:

      • BMS通信任务: 定时与车辆BMS交互,获取需求,发送状态。

      • 电量计量任务: 从电表读取数据,计算费用。

      • 安全监控任务: 循环检测电压、电流、温度是否正常,执行保护逻辑。

      • 人机交互任务: 刷新屏幕,处理按钮和刷卡事件。

      • 云平台通信任务: 上报充电数据,接收远程控制指令。


四、工作流程简述

  1. 待机与连接: 车辆插枪,STM32通过检测CP(控制导引) 信号的电压变化判断枪已连接。显示屏亮起。

  2. 身份认证与启动: 用户刷卡或扫码,STM32验证通过后,通过平台或本地指令启动充电。

  3. 充电参数协商: STM32通过CAN总线与车辆BMS通信,获取电池的最高允许电压、最大允许电流等信息。

  4. 启动充电: STM32闭合主接触器,开始供电。同时持续监测计量模块和安全模块的数据。

  5. 充电过程: 持续与BMS通信,根据BMS的需求实时调整输出(通过PWM信号控制CP线来告知车辆当前最大可用电流)。实时计量,更新显示信息。

  6. 充电结束: 当BMS发送“充电结束”信号、用户刷卡停止、或达到预设条件(金额、电量)时,STM32断开接触器停止供电。

  7. 故障处理: 在任何阶段,一旦检测到过流、过压、漏电、过热等故障,立即断开接触器,进入故障状态,显示错误代码。

五、关键技术与注意事项

  • 安全第一: 硬件和软件都必须有冗余的安全保护机制。硬件保护是最后防线,不能完全依赖软件。

  • EMC/EMI设计: 充电桩处于强电磁干扰环境,PCB的布局布线、屏蔽、滤波至关重要,否则系统会不稳定。

  • 合规性: 必须遵循中国国家标准,如GB/T 18487.1(充电系统通用要求)、GB/T 20234(连接器)、GB/T 27930(通信协议)

  • 可靠性: 工业级元件选择,软件看门狗,异常恢复机制等。

代码实现:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值