Skip to main content

Wio Terminal Chassis Battery(650mAh)

El Wio Terminal Battery Chassis es una placa de extensión imprescindible para la placa de desarrollo Wio-Terminal ya que proporciona una fuente de alimentación externa para Wio Terminal para mejorar su portabilidad y compacidad. Cuenta con una batería de polímero de litio recargable de 650mAH, LED de estado de carga/descarga de batería, 4 puertos Grove analógicos/digitales, 1 puerto Grove I2C y 1 puerto Grove UART, así como la carcasa ABS para estética y protección. ¡También hay el mismo GPIO compatible con 40 pines de Raspberry Pi en la parte posterior del Wio Terminal Battery Chassis para más complementos!

La nueva versión del Wio Terminal Battery Chassis ha añadido el BQ27441-G1A de Texas Instrument - medidor de combustible auto-calibrante basado en I2C para baterías de polímero de litio (LiPo) que se puede usar para medir el voltaje de su batería para estimar su porcentaje de carga y capacidad restante!

Características

  • Batería de polímero de litio recargable integrada de 650mAh
  • LED de estado de carga/descarga de batería
  • Botón de encendido/apagado de batería
  • Medidor de combustible BQ27441-G1A integrado para baterías LiPo
  • Carga USB Type-C
  • Protección contra sobrecorriente
  • Modo hiccup/Protección Hiccup
  • 4 x puerto Grove analógico/digital
  • 1 x puerto Grove I2C
  • 1 x puerto Grove UART
  • ¡Los imanes están ocultos dentro de la carcasa para que se pueda pegar en la pizarra!

Especificaciones

ElementoDetalle
Fuente de alimentación4.75V - 5.25V
Batería integrada650mAh
Corriente de cargaMáx: 660mA
modo de placa de bateríaLED Verde: Encendido significa que la placa está cargando.

LED Rojo: Encendido significa que el OTG(descarga de batería) está habilitado.

LED Amarillo: Encendido significa que la interfaz macho produce/recibe 5V.
salida GPIOVoltaje máx: 5.15V

Corriente máx: 380mA
Corriente de carga lenta30mA
Interfaz GroveGrove Analógico/Digital 4, Grove I2C 1, Grove UART * 1

Descripción General del Hardware

Precauciones

  • Si se retira la batería mientras la placa está en modo de carga, la placa cambiará al modo de falla y la luz verde parpadeará a una frecuencia de 1Hz.

  • Cuando la placa de batería no esté en uso, presione el botón para entrar en modo de suspensión y todos los LED se apagarán.

Detección del Estado de la Batería LiPo

  1. Visite los repositorios de SparkFun_BQ27441_Arduino_Library y descargue todo el repositorio a su unidad local.

  2. Ahora, la biblioteca puede instalarse en el Arduino IDE. Abra el Arduino IDE, y haga clic en sketch -> Include Library -> Add .ZIP Library, y elija el archivo SparkFun_BQ27441_Arduino_Library que acaba de descargar.

InstallLibrary

Código de Ejemplo

Puede usar el siguiente código para leer las estadísticas de su chasis de batería.

#include <SparkFunBQ27441.h>
#include"TFT_eSPI.h"

TFT_eSPI tft;
TFT_eSprite spr = TFT_eSprite(&tft); // Sprite
#define FF17 &FreeSans9pt7b

const unsigned int BATTERY_CAPACITY = 650; // Set Wio Terminal Battery's Capacity

void setupBQ27441(void)
{
// Use lipo.begin() to initialize the BQ27441-G1A and confirm that it's
// connected and communicating.
if (!lipo.begin()) // begin() will return true if communication is successful
{
// If communication fails, print an error message and loop forever.
Serial.println("Error: Unable to communicate with BQ27441.");
Serial.println(" Check wiring and try again.");
Serial.println(" (Battery must be plugged into Battery Babysitter!)");
tft.setTextColor(TFT_RED);
tft.setCursor((320 - tft.textWidth("Battery Not Initialised!"))/2, 120);
tft.print("Battery Not Initialised!");
while (1) ;
}
Serial.println("Connected to BQ27441!");

// Uset lipo.setCapacity(BATTERY_CAPACITY) to set the design capacity
// of your battery.
lipo.setCapacity(BATTERY_CAPACITY);
}

void printBatteryStats()
{
// Read battery stats from the BQ27441-G1A
unsigned int soc = lipo.soc(); // Read state-of-charge (%)
unsigned int volts = lipo.voltage(); // Read battery voltage (mV)
int current = lipo.current(AVG); // Read average current (mA)
unsigned int fullCapacity = lipo.capacity(FULL); // Read full capacity (mAh)
unsigned int capacity = lipo.capacity(REMAIN); // Read remaining capacity (mAh)
int power = lipo.power(); // Read average power draw (mW)
int health = lipo.soh(); // Read state-of-health (%)

// Now print out those values:
String toPrint = String(soc) + "% | ";
toPrint += String(volts) + " mV | ";
toPrint += String(current) + " mA | ";
toPrint += String(capacity) + " / ";
toPrint += String(fullCapacity) + " mAh | ";
toPrint += String(power) + " mW | ";
toPrint += String(health) + "%";

Serial.println(toPrint);

// LCD Graphics
tft.setTextColor(TFT_BLUE);
tft.drawRoundRect(10, 10, 300, 220, 10, TFT_BLUE);
tft.setTextColor(TFT_MAGENTA);
tft.drawString("State of Chage:", 20, 30);
tft.drawString("Battery Voltage:", 20, 55);
tft.drawString("Average Current:", 20, 80);
tft.drawString("Remain Capacity:", 20, 105);
tft.drawString("Full Capacity:", 20, 130);
tft.drawString("Average Power:", 20, 155);
tft.drawString("State of Health:", 20, 180);

// Data
spr.createSprite(80, 170);
spr.fillSprite(TFT_BLACK);
spr.setFreeFont(FF17);
spr.setTextColor(TFT_WHITE);
spr.drawString(String(soc)+" % ", 0, 0);
spr.drawString(String(volts)+" mV ", 0, 25);
spr.drawString(String(current)+" mA ", 0, 50);
spr.drawString(String(capacity)+" mAh ", 0, 75);
spr.drawString(String(fullCapacity)+" mAh ", 0, 100);
spr.drawString(String(power)+" mW ", 0, 125);
spr.drawString(String(health)+" % ", 0, 150);
spr.pushSprite(170, 30);
spr.deleteSprite();
}

void setup()
{
Serial.begin(115200);
tft.begin();
tft.setRotation(3);
tft.fillScreen(TFT_BLACK);
tft.setFreeFont(FF17);
setupBQ27441();
tft.setTextColor(TFT_GREEN);
tft.setCursor((320 - tft.textWidth("Battery Initialised!"))/2, 120);
tft.print("Battery Initialised!");
delay(1000);
tft.fillScreen(TFT_BLACK);
}

void loop()
{
printBatteryStats();
delay(1000);
}

Visor de Esquemas en Línea

Recursos

Soporte Técnico

¡Gracias por elegir nuestros productos! Estamos aquí para brindarle diferentes tipos de soporte para asegurar que su experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.

Loading Comments...