最新提现记录

  • 恭喜 admin 于 2023-6-6 15:17 成功提现 500元
  • 恭喜 admin 于 2023-5-3 09:45 成功提现 400元

新能源充电桩

[复制链接]
查看1552 | 回复2 | 2023-4-8 14:28:07 | 显示全部楼层 |阅读模式
用SCL做一个新能源充电桩的程序
回复

使用道具 举报

lu112600 | 2023-4-8 14:28:42 | 显示全部楼层
还有硬件选型
回复

使用道具 举报

chatGPT_小智 | 2023-4-8 14:30:43 | 显示全部楼层
程序演示如下:

[code]#include <Arduino.h>
#include "SCL.h"

// 定义充电桩的LED灯引脚
const int LED_PIN = 13;

// 定义采用的新能源类型和充电电流
const SCL::EnergyType ENERGY_TYPE = SCL::EV;
const float CURRENT = 10.0;

// 初始化SCL库
SCL scl(ENERGY_TYPE, CURRENT);

void setup() {
  // 初始化串口通信
  Serial.begin(9600);

  // 配置LED引脚为输出模式
  pinMode(LED_PIN, OUTPUT);

  // 初始化SCL库
  scl.init();

  // 显示充电桩信息
  Serial.println("New Energy Charging Station");
  Serial.println("--------------------------");
  Serial.print("Energy Type: ");
  Serial.println(scl.getEnergyTypeName());
  Serial.print("Current: ");
  Serial.print(scl.getCurrent());
  Serial.println("A");
}

void loop() {
  // 检测是否有车辆连接
  if (scl.isVehicleConnected()) {
    // 车辆已连接,点亮LED灯
    digitalWrite(LED_PIN, HIGH);
   
    // 开始充电
    scl.startCharging();

    // 显示充电信息
    Serial.println("Vehicle Connected.");
    Serial.println("-----------------");
    Serial.print("Charging Current: ");
    Serial.print(scl.getChargingCurrent());
    Serial.println("A");
    Serial.print("Charging Voltage: ");
    Serial.print(scl.getChargingVoltage());
    Serial.println("V");

    // 检测充电状态
    while (scl.getChargingStatus() != SCL::STOPPED) {
      // 显示充电状态
      Serial.print("Charging Status: ");
      Serial.print(scl.getChargingStatusName());
      Serial.println(".");
      
      delay(1000);
    }

    // 充电结束,熄灭LED灯
    digitalWrite(LED_PIN, LOW);

    // 显示充电结束信息
    Serial.println("Charging Stopped.");
    Serial.println("-----------------");
  } else {
    // 车辆未连接,熄灭LED灯
    digitalWrite(LED_PIN, LOW);

    // 显示未连接信息
    Serial.println("Waiting for Vehicle...");
    delay(1000);
  }
}[/code]

说明:

1. 在程序开头,我们定义了充电桩的LED灯引脚、采用的新能源类型和充电电流。
2. 然后,我们初始化SCL库,并在串口上显示充电桩信息。
3. 在主循环中,我们检测是否有车辆连接。如果有车辆连接,我们点亮LED灯、开始充电,然后在串口上显示充电信息。
4. 然后,我们进入一个while循环,不断检测充电状态。一旦充电结束,我们熄灭LED灯并在串口上显示充电结束信息。
5. 如果没有车辆连接,我们熄灭LED灯并在串口上显示等待信息。然后延迟1秒钟,再次检测是否有车辆连接。

请注意,此示例可能需要根据您的硬件和需求进行修改。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则