[ad_1]
![](https://www.electronicsforu.com/wp-contents/uploads/2016/12/Screen-Shot-2016-12-24-at-15.19.33-e1644389186872.png)
Introducción
Hoy, los vehículos eléctricos han aumentado durante la última década a medida que los consumidores exigen soluciones más ecológicas para combatir el cambio climático. Recientemente, algunas bicicletas eléctricas se incendiaron debido a una falla en el sistema de administración de la batería y un mal diseño de la batería. Debido a la falta de alerta de notificación del sistema de gestión térmica (temperatura de la batería), algunas personas perdieron la vida. Desafortunadamente, esta función no está disponible en la mayoría de los vehículos eléctricos existentes. Por lo tanto, el proyecto es monitorear la temperatura de la batería y la detección de humo para advertir al usuario de EV a través de una notificación de teléfono inteligente, alarmar el zumbador y también apagar automáticamente el vehículo EV para evitar daños mayores.
principio de funcionamiento
Las baterías de iones de litio tienen una temperatura de funcionamiento admisible especificada de -20 °C a +60 °C. Ofrecen la vida útil más larga cuando las temperaturas se mantienen entre aproximadamente 10 °C y 40 °C en todo momento. Este sistema es alimentado por una batería portátil de 12V y regulado en fuentes de alimentación de 5V y P3V3. El sensor de temperatura (DS18B20), el sensor de humo (MQ135), el interruptor SPDT y el potenciómetro son entradas al controlador ESP32. La pantalla LCD I2C 16 × 2, el zumbador, el relé y la aplicación Arduino Blue Control son salidas del controlador ESP32. Se coloca un interruptor SPDT S1 en el sistema para la selección de modo para mostrar la temperatura actual o para configurar la temperatura umbral usando un potenciómetro. ESP32 monitorea las entradas de temperatura y detección de humo cada milisegundo, lo mismo debe mostrarse en la pantalla LCD y también en el teléfono inteligente a través de la aplicación Bluetooth Arduino Blue Control. Al conducir o cargar un EV, si la temperatura de la batería supera el umbral de 40 °C o se detecta humo en la unidad de la batería, el controlador ESP32 advertirá al usuario del EV a través de un zumbador de salida, enviará una notificación de alarma al teléfono inteligente y también apague la fuente de alimentación del vehículo eléctrico de la batería con la ayuda del módulo de relé.
diagrama de bloques
Representación esquemática:
Lista de materiales
- U1-ESP32 (placa de desarrollo)
- U2- DS18B20 (sensor de temperatura)
- U3- MQ135 (sensor de humo)
- U4-RG1602A (pantalla LCD I2C 16X2)
- U5-LM7805 (controlador)
- R1-10K (POTE)
- R2 y R3 -1K (1/4 vatio)
- D1 y D2- 1N4007 (diodo)
- C1 y C2- 100nF (condensador)
- Zumbador SU1-10V
- RL1- GU-SH112D (Relé de conmutación de servicio pesado)
- Q1 y Q2-BC547 (transistor)
- S1-interruptor SPST
- Batería de iones de litio BT1-12V
- Batería BT2-60V/40A/2.4KW para vehículo eléctrico
- teléfono celular inteligente
- Aplicación Arduino Blue Control
- Software IDE Arduino
codificación de programas
#incluir
#incluir
#incluir
#incluir «BluetoothSerial.h»
#si !definido(CONFIG_BT_ENABLED) || !definido(CONFIG_BLUEDROID_ENABLED)
#error ¡Bluetooth no está activado! Ejecute `make menuconfig` y actívelo.
#terminara si
Bluetooth Serie Serie BT;
mensaje de cadena = «»;
char char entrante;
Cadena temperaturaString = «»;
Cadena Cadena de humedad = «»;
#define ADC_VREF_mV 4755.0
#define ADC_RESOLUCIÓN 4096.0
#definir MQ135 39
#define TEMP_REF 34
const int oneWireBus = 4;
LiquidCrystal_I2C lcd (0x27, 16, 2);
int constante SW = 19;
const int ZUMBADOR = 17;
const int EV_ECU = 5;
umbral de flotación constante2 = 400,00;
OneWire OneWire(OneWireBus);
Sensores de temperatura Dallas(&oneWire);
configuración inválida() {
lcd.init();
Luz trasera LCD ();
Serial.begin(115200);
SerialBT.begin(«ESP32»);
Serial.println(«¡Iniciar emparejamiento!»);
PinMode(SW, ENTRADA);
PinMode(ZUMBADOR, SALIDA);
PinMode(EV_ECU, SALIDA);
sensores.begin();
}
bucle vacío () {
si (lectura digital (SW) == ALTO) {
int adcVal2 = lectura analógica (TEMP_REF);
float miliVolt2 = adcVal2 * (ADC_VREF_mV / ADC_RESOLUTION);
float temp_r = milivoltios2 / 8,5;
LCD. Claro ();
lcd.setCursor(0, 0);
lcd.imprimir(«REF_TEMP:»);
lcd.imprimir(temp_r);
lcd.imprimir(«C»);
SerialBT.println(«Alarm_Temp_REF»);
SerialBT.println(temp_r);
retraso (500);
}
De lo contrario, si (lectura digital (SW) == BAJO)
{
int adcVal1 = lectura analógica (MQ135);
int adcVal3 = lectura analógica (TEMP_REF);
float miliVolt3 = adcVal3 * (ADC_VREF_mV / ADC_RESOLUTION);
float temp_rr = miliVoltios3 / 8,5;
float miliVolt1 = adcVal1 * (ADC_VREF_mV / ADC_RESOLUTION);
float AIR_PPM = MilliVolt1 / 1;
sensores.requestTemperatures();
int temperaturaD = sensores.getTempCByIndex(0);
temperatura flotanteC = sensores.getTempCByIndex(0);
temperatura flotanteF = sensores.getTempFByIndex(0);
SerialBT.println(TemperaturaD);
if(temperaturaC>temp_rr)
{
SerialBT.println(«Temperature_Alarm»);
LCD. Claro ();
lcd.setCursor(0, 0);
lcd.print(«Temperature_Alarm»);
escritura digital (ZUMBADOR, ALTO);
escritura digital (EV_ECU, ALTO);
retraso (60000);
}
De lo contrario si (temperaturaC
{
SerialBT.println(TemperaturaD);
LCD. Claro ();
lcd.setCursor(0, 0);
lcd.imprimir(«T:»);
lcd.print(temperatura C);
lcd.imprimir(«C»);
lcd.setCursor(0, 1);
lcd.print(«Aire:»);
lcd.imprimir(AIRE_PPM);
lcd.imprimir(«PPM»);
digitalWrite(ZUMBADOR, BAJO);
escritura digital (EV_ECU, BAJO);
}
si no (AIR_PPM>umbral2)
{
SerialBT.println(«Alarma de humo»);
lcd.setCursor(0, 0);
lcd.print(«Alarma de humo»);
escritura digital (ZUMBADOR, ALTO);
escritura digital (EV_ECU, ALTO);
retraso (60000);
}
}
}
Conclusión
Incendio inesperado de batería en vehículos eléctricos causa pérdida de vidas. El daño a los EV ocurre cuando los usuarios de EV no son notificados de inmediato. Analizar este problema y enviar una advertencia instantánea a los usuarios de vehículos eléctricos ayudará a evitar la pérdida de vidas y daños a los vehículos eléctricos. Los objetivos y los puntos que hemos logrado gracias al sistema desarrollado se enumeran a continuación.
- Monitoreo de temperatura y humo de la batería para alertar constantemente al usuario a través de un zumbador y una notificación de teléfono inteligente.
- Corte automáticamente la energía de la batería del vehículo eléctrico para evitar daños mayores.
![Sistema de gestión térmica basado en ESP32](https://www.electronicsforu.com/wp-contents/uploads/2022/11/ESP32-Based-Thermal-Management-System-353x500.jpg)
![Módulo de relé con zumbador](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Relay-Module-with-Buzzer-404x500.jpg)
![Imagen de configuración completa](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Full-Setup-image-363x500.jpg)
Configuración de la interfaz del teléfono inteligente
![Paso 1: Inicie la aplicación Arduino Blue Control](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Step1-Launch-Arduino-blue-control-Application.jpg)
![Paso 2: configuración de conectividad Bluetooth ESP32](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Step2-Connectivity-setting-of-ESP32-Bluetooth-500x427.jpg)
![Paso 3: Configuración de la alarma](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Step3-Alarm-Setting-500x420.jpg)
![Paso 4: Medidor de temperatura](https://www.electronicsforu.com/wp-contents/uploads/2022/11/Step34-Temperature-Display-500x449.jpg)
Tanto E.Venkatesan como M.Dinesh trabajan como líderes del equipo de aplicación de productos en Qmax Test Equipment Pvt Ltd. Ha estado interesado en las áreas de IoT, BMS, tecnologías inalámbricas y sistemas embebidos.
[ad_2]