扫码加入

  • 方案介绍
  • 相关推荐
申请入驻 产业图谱

基于51单片机的的智能电动车充电桩系统设计

2小时前
90
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
  1. 基于51单片机的智能电动车充电桩系统设计
    点击链接下载设计资料:https://download.csdn.net/download/m0_51061483/91644953
  2. 系统功能介绍

本系统是一套基于 51 单片机控制核心的智能电动车充电桩控制装置,设计目标是实现对两个充电桩的充电电压监测、启停控制、上位机通信和完成提示等功能。随着电动车的普及,充电安全与便捷性成为用户普遍关注的问题,因此开发一个具备实时监控、自动提示、上位机远程控制等功能的小型智能充电系统具有重要意义。

系统使用 LCD1602 显示屏对两个充电桩的实时充电电压进行显示,用户可根据屏幕信息快速了解电压情况;同时系统提供按键输入功能,用户可手动控制两个充电桩的启动或关闭并设置充电电压。当充电结束或达到设定值后,蜂鸣器自动发出提示音,提醒用户及时处理。此外,系统支持与上位机通信,实现电压数据实时上传,上位机软件可对两个充电桩进行远程控制,包括调节充电电压、开启或关闭充电桩等。

整个系统具有监测精度高、按键操作简便、显示信息直观、通信稳定可靠等特点,能够满足日常电动车充电场景需要,同时具备较强的可扩展性,可适应后续功能升级需求。


  1. 系统电路设计

系统主要由主控模块、显示模块、电压检测模块、按键输入模块、蜂鸣器报警模块、通信模块和电源模块等部分构成,各模块之间协作完成整个充电桩控制功能。

3.1 主控模块设计

本系统采用 AT89C51主控芯片,该芯片具备稳定性强、价格低廉、资源丰富等特点,适合作为多功能控制系统的核心。其具备四个并行 I/O 口、两个外部中断、两个定时器以及串口模块,完全满足本系统对数据采集、显示控制、通信等多业务并行需求。

主控模块主要负责以下任务:

  • 采集两个充电桩的电压数据;
  • 控制 LCD 显示电压和系统状态;
  • 响应按键操作,实现启停控制与电压设定;
  • 控制蜂鸣器报警;
  • 通过串口与上位机通信,发送电压信息并接收指令。

因为系统有两路电压采集,因此 MCU 需周期性读取电压传感模块数据,并进行换算,以显示真实电压值。所有任务通过时间片轮询和中断机制协调执行,提高系统整体响应效率。

3.2 电压检测模块设计

电压检测采用常用的电阻分压方式配合 ADC 芯片实现。由于 51 单片机本身不带 A/D 转换模块,因此选择 PCF8591 等常用外部 ADC 芯片作为电压采集模块,通过 I2C 接口读取充电桩电压。

电压采集模块的特点包括:

  • 模拟输入电压分压电路处理至 ADC 可接受范围;
  • PCF8591 提供 8 位 ADC 精度,满足电压监测需求;
  • 通过 I2C 与 MCU 通信,占用资源少;
  • 支持多通道,可同时采集两个充电桩的电压。

单片机负责定时读取 ADC 数据并进行计算,将 ADC 值还原为实际电压值,确保显示和上传至上位机的数据准确。

3.3 LCD1602 显示模块设计

LCD1602 是常用字符型液晶显示器,可显示两行字符,每行 16 个字符,非常适合用于显示两个充电桩的电压值与状态信息。

显示内容示例:

  • CH1 Voltage: 48.5V
  • CH2 Voltage: 52.3V

LCD1602 通过 4 位或 8 位总线方式接入 MCU,单片机完成初始化后即可向其发送指令与数据。显示模块需在系统主循环中频繁刷新,以确保电压变化能实时呈现。

3.4 按键输入模块设计

本系统设有多个按键,主要功能包括:

  • 两个充电桩的启动/关闭控制;
  • 设定充电电压;
  • 切换显示界面或进入设置模式。

按键采用独立按键方式,每个按键连接至 MCU 的 I/O 口,通过上拉电阻维持稳定电平。检测按键时需采用软件消抖处理,以避免电平抖动导致误触发。

按键触发处理流程包括:

  • 检测按键按下;
  • 延时消抖;
  • 执行对应功能;
  • 更新显示界面或系统状态。

3.5 蜂鸣器报警电路设计

蜂鸣器用于充电完成后的提示功能。当某路充电桩电压达到用户设定的值,系统自动关闭该路充电输出并启动蜂鸣器鸣叫。

蜂鸣器采用有源蜂鸣器,通过三极管驱动,并由 MCU 输出高电平控制。报警策略包括:

  • 连续报警;
  • 根据程序逻辑实现短促提示;
  • 通过按键关闭报警。

3.6 上位机通信模块设计

通信模块采用 51 单片机的 UART 串口,通过 RS232 或 USB 转 TTL 模块连接至电脑上位机。

通信功能分为:

  • 数据上报:周期性发送两个充电桩的电压值;
  • 接收控制指令:上位机可发送控制命令,包括:
    • 设置充电电压;
    • 控制充电桩启停;
    • 查询状态。

通信协议可采用简单的 ASCII 或自定义帧格式,以提高传输可靠性,例如:

<CH1:48.5;CH2:52.3>

接收控制指令示例:

SET CH1 VOLT 50
START CH2
STOP CH1

程序负责解析指令并执行对应操作。

3.7 电源模块设计

充电桩系统需独立供电,部分模块如 MCU、ADC 芯片、LCD 等需统一 5V 工作电压,因此采用 7805 等稳压芯片实现稳压。为提升电源稳定性,需加入滤波电容,减少纹波与干扰。


  1. 程序设计

本系统的软件结构围绕电压采集、按键扫描、显示刷新、串口通信和报警处理等任务展开,各模块协同实现完整智能控制流程。

4.1 主程序结构设计

主程序通过初始化系统资源,再进入循环处理每项任务,并通过定时器中断提供时间基准。

void main() {
    Init_System();
    while (1) {
        Read_Voltage();
        Key_Scan();
        Display_Update();
        UART_Process();
        Alarm_Check();
    }
}

4.2 ADC 电压采集程序

通过 PCF8591 采集两路电压数据,并将 ADC 值转换成实际电压。

unsigned char Read_ADC(unsigned char channel) {
    I2C_Start();
    I2C_SendByte(0x90);
    I2C_SendByte(channel);
    I2C_Start();
    I2C_SendByte(0x91);
    value = I2C_ReceiveByte();
    I2C_Stop();
    return value;
}

float Convert_Voltage(unsigned char adc_val) {
    return adc_val * (5.0 / 255) * scale_factor;
}

4.3 按键扫描程序

按键采用独立按键方式,程序实现消抖以及功能切换。

void Key_Scan() {
    if (KEY_START1 == 0) {
        Delay_ms(20);
        if (KEY_START1 == 0) ch1_on = 1;
    }
    if (KEY_STOP1 == 0) {
        Delay_ms(20);
        if (KEY_STOP1 == 0) ch1_on = 0;
    }
}

4.4 LCD 显示程序

定时刷新两路电压与状态信息:

void Display_Update() {
    LCD_SetCursor(0, 0);
    LCD_Print("CH1:");
    LCD_PrintFloat(voltage1);

    LCD_SetCursor(1, 0);
    LCD_Print("CH2:");
    LCD_PrintFloat(voltage2);
}

4.5 蜂鸣器报警程序

根据充电桩电压判断是否发出提示音:

void Alarm_Check() {
    if (voltage1 >= set_voltage1) {
        BEEP = 1;
        ch1_on = 0;
    } else {
        BEEP = 0;
    }
}

4.6 串口通信程序

系统周期性发送电压值并可解析来自上位机的指令。

void UART_Send_Data() {
    printf("<CH1:%0.1f;CH2:%0.1f>", voltage1, voltage2);
}

void UART_Process() {
    if (RX_Flag) {
        Parse_Command(rx_buffer);
        RX_Flag = 0;
    }
}

指令解析示例:

void Parse_Command(char *cmd) {
    if (strstr(cmd, "START CH1")) ch1_on = 1;
    if (strstr(cmd, "STOP CH1")) ch1_on = 0;
}

  1. 结论

本系统通过 51 单片机实现了智能电动车充电桩的监控与控制功能,包括两路电压实时监测、按键控制启停、充电完成提示、上位机实时显示及控制等,具备功能齐全、操作简单、扩展性强等优点。系统采用 LCD 显示、电压采集模块、蜂鸣器报警模块与UART通信技术,使其能够适应不同场景下的使用需求,是一款具有实用价值和推广价值的智能充电桩控制方案。

相关推荐