AE3 Battery Shield¶
O AE3 Battery Shield alimenta a OpenMV AE3 a partir de uma vasta gama de fontes — 5–36 V, uma célula Li-Po de 3,7 V, ou 1,8–5,5 V para 3 pilhas alcalinas em série — e adiciona um conector microSD em SPI nos pinos P0–P3. As três entradas de alimentação ligam-se a terminais JST; o shield inclui um adaptador JST para pigtail para a entrada de alta tensão e um adaptador JST para conector DC barrel para a entrada alcalina.
Para datasheet completo, fotografias e encomendas consulte a página do produto AE3 Battery Shield.
Destaques¶
HV PWR — 5–36 V, tolerante a inversão de polaridade até −36 V. Alimenta a AE3 a 3,3 V (até 600 mA).
BAT — Li-Po de célula única a 3,7 V. Alimenta a AE3 a 3,0 V (até 800 mA). O carregador integrado funciona a uma corrente de carga de 100 mA sempre que 3,3 V estão disponíveis no shield — fornecidos por USB, HV PWR, ou 3,3 V injetados na AE3 pelo conector Qwiic. Um temporizador de segurança de 6,25 h limita a capacidade máxima suportada da bateria a 625 mAh.
LV PWR — 1,8–5,5 V para 3 pilhas alcalinas em série, tolerante a inversão de polaridade até −5,5 V. Alimenta a AE3 a 3,0 V (até 800 mA).
Conector microSD ligado aos pinos
P0–P3via SPI, com interruptor de alimentação controlado por software emP11.
Nota
O shield é fornecido com uma caixa que mantém a AE3 firmemente encostada ao conector. Quatro furos de montagem M1.6 nos cantos permitem fixar o shield a uma caixa ou suporte.
Dica
Utilize o estimador de autonomia de bateria para modelar quanto tempo a AE3 alimentada através deste shield funcionará com uma determinada bateria e um dado ciclo de trabalho ativo/sono profundo.
Referência de pinos¶
Pino |
Função |
|---|---|
P0 |
microSD SPI MOSI |
P1 |
microSD SPI MISO |
P2 |
microSD SPI SCLK |
P3 |
microSD SPI CS |
P6 |
Carregador power-good (baixo quando 3,3 V estão presentes no shield — USB, HV PWR, ou 3,3 V via Qwiic; o carregamento só ocorre enquanto este sinal está baixo) |
P7 |
Carregador a carregar (baixo enquanto o Li-Po está a ser carregado) |
P8 |
Monitor de tensão da bateria Li-Po — o shield divide 0–5 V para 0–1,8 V no pino |
P9 |
Monitor de tensão de entrada LV — o shield divide 0–6 V para 0–1,8 V no pino |
P11 |
microSD power enable (colocar em nível alto para alimentar o cartão) |
HV PWR in |
5–36 V num terminal JST (tolerante a inversão de polaridade; adaptador JST para pigtail incluído) |
BAT in |
Li-Po de célula única a 3,7 V num terminal JST |
LV PWR in |
1,8–5,5 V num terminal JST para 3 pilhas alcalinas em série (tolerante a inversão de polaridade; adaptador JST para conector DC barrel incluído) |
Rail 3.3V |
Alimenta a AE3 e a eletrónica integrada do shield |
Rail GND |
Massa comum |
Utilização¶
Ligue uma AE3 ao shield e conecte qualquer uma das três entradas de alimentação — o shield faz a combinação OR dos rails internamente e alimenta a AE3 a partir da fonte disponível.
Nota
Com apenas BAT ligado (sem USB, HV PWR, ou 3,3 V via Qwiic a alimentar o shield), a AE3 funciona a 3,0 V com o Li-Po, o carregador está inativo, e ambos os LEDs de estado estão apagados.
O conector microSD está exposto no barramento SPI da AE3 através de machine.SPI e do driver padrão sdcard. Coloque P11 em nível alto para alimentar o cartão, depois envolva o dispositivo de bloco num VfsFat e monte-o em /sdcard
import os
import machine
import sdcard
machine.Pin("P11", machine.Pin.OUT, value=1) # enable card power
spi = machine.SPI(0)
cs = machine.Pin("P3", machine.Pin.OUT, value=1)
sd = sdcard.SDCard(spi, cs, baudrate=20_000_000)
os.mount(os.VfsFat(sd), "/sdcard")
print(os.listdir("/sdcard"))
Monitorize o estado do carregador lendo os seus dois pinos de estado. P6 (power-good) fica baixo assim que 3,3 V estão presentes no shield — via USB, HV PWR, ou 3,3 V injetados pelo Qwiic da AE3 — que é também quando o carregador está autorizado a funcionar. P7 (a carregar) fica baixo enquanto o Li-Po está efetivamente a ser carregado. Ambos os pinos acionam também LEDs de estado integrados — P6 acende um LED verde, P7 acende um LED vermelho
from machine import Pin
pg = Pin("P6", Pin.IN, Pin.PULL_UP)
chg = Pin("P7", Pin.IN, Pin.PULL_UP)
if not pg.value():
print("Charger powered")
if not chg.value():
print("Battery charging")
else:
print("Battery full or no battery")
else:
print("Running off battery only")
Monitorize as tensões da bateria Li-Po e da entrada LV em P8 e P9. O shield divide cada alimentação para o intervalo ADC de 1,8 V da AE3, pelo que é necessário reescalar a leitura para o intervalo completo de cada entrada:
from machine import ADC
import time
lipo = ADC("P8") # 0–5 V at the input
lv = ADC("P9") # 0–6 V at the input
while True:
# 0–1.8 V at the pin → 0–5 V on the battery rail
vbat = lipo.read_u16() * 1.8 / 65535 * (5.0 / 1.8)
# 0–1.8 V at the pin → 0–6 V on the LV rail
vlv = lv.read_u16() * 1.8 / 65535 * (6.0 / 1.8)
print("Li‑Po:", vbat, "V LV:", vlv, "V")
time.sleep_ms(500)