AE3 Battery Shield¶
O AE3 Battery Shield alimenta a OpenMV AE3 a partir de uma ampla variedade de fontes — 5–36 V, uma célula Li‑Po de 3,7 V ou 1,8–5,5 V para 3 células alcalinas em série — e adiciona um soquete SPI para cartão microSD nos pinos P0–P3. Todas as três entradas de alimentação chegam em terminais JST; o shield acompanha um adaptador JST‑para‑rabicho para a entrada ampla e um adaptador JST‑para‑plugue‑DC‑tipo‑barril para a entrada alcalina.
Para o datasheet completo, fotos e informações de compra, consulte a página do produto AE3 Battery Shield.
Destaques¶
HV PWR — 5–36 V, tolerante a tensão reversa até −36 V. Alimenta a AE3 a 3,3 V (até 600 mA).
BAT — Li‑Po de célula única de 3,7 V. Alimenta a AE3 a 3,0 V (até 800 mA). O carregador embutido opera a uma corrente de carga de 100 mA sempre que houver 3,3 V disponível no shield — fornecidos por USB, HV PWR ou 3,3 V alimentados à AE3 através de seu conector Qwiic. Um temporizador de segurança de 6,25 h limita a capacidade de bateria suportada a 625 mAh.
LV PWR — 1,8–5,5 V para 3 células alcalinas em série, tolerante a tensão reversa até −5,5 V. Alimenta a AE3 a 3,0 V (até 800 mA).
soquete de cartão microSD ligado aos pinos
P0–P3por SPI, com uma chave de alimentação controlada por software no pinoP11.
Nota
O shield acompanha um case que prende a AE3 firmemente contra o conector. Quatro furos de fixação de canto M1.6 permitem parafusar o shield a um gabinete ou suporte.
Dica
Use o estimador de vida útil da bateria para modelar por quanto tempo a AE3 alimentada através deste shield funcionará com uma determinada bateria para um determinado ciclo de trabalho ativo / sono profundo.
Referência de pinos¶
Pino |
Função |
|---|---|
P0 |
SPI do microSD MOSI |
P1 |
SPI do microSD MISO |
P2 |
SPI do microSD SCLK |
P3 |
SPI do microSD CS |
P6 |
Carregador power‑good (baixo quando há 3,3 V presente no shield — USB, HV PWR ou Qwiic 3,3 V; a carga só ocorre enquanto isto estiver em nível baixo) |
P7 |
Carregador carregando (baixo enquanto a Li‑Po está sendo carregada) |
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 da entrada LV — o shield divide 0–6 V para 0–1,8 V no pino |
P11 |
habilitação de alimentação do microSD (acione em nível alto para alimentar o cartão) |
Entrada HV PWR |
5–36 V em um terminal JST (tolerante a tensão reversa; adaptador JST‑para‑rabicho incluído) |
Entrada BAT |
Li‑Po de célula única de 3,7 V em um terminal JST |
Entrada LV PWR |
1,8–5,5 V em um terminal JST para 3 células alcalinas em série (tolerante a tensão reversa; adaptador JST‑para‑plugue‑DC‑tipo‑barril incluído) |
Barramento 3,3V |
Alimenta a AE3 e os componentes eletrônicos embutidos do shield |
Barramento GND |
Terra comum |
Uso¶
Conecte uma AE3 ao shield e ligue qualquer uma das três entradas de alimentação — o shield combina os barramentos internamente (OR) e alimenta a AE3 a partir de qualquer fonte presente.
Nota
Com apenas BAT conectado (sem USB, HV PWR ou Qwiic 3,3 V alimentando o shield), a AE3 funciona a 3,0 V a partir da Li‑Po, o carregador fica ocioso e ambos os LEDs de status ficam apagados.
O soquete microSD é exposto no barramento SPI da AE3 através de machine.SPI e do driver padrão sdcard. Acione P11 em nível alto para alimentar o cartão, então envolva o dispositivo de bloco em um 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"))
Acompanhe o status do carregador lendo seus dois pinos de status. P6 (power‑good) vai para nível baixo assim que houver 3,3 V presente no shield — de USB, HV PWR ou 3,3 V realimentados através do Qwiic da AE3 — que também é quando o carregador tem permissão para operar. P7 (carregando) vai para nível baixo enquanto a Li‑Po estiver de fato sendo carregada. Ambos os pinos também acionam LEDs de status embutidos — 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")
Monitore as tensões da bateria Li‑Po e da entrada LV em P8 e P9. O shield divide cada fonte para a faixa de 1,8 V do ADC da AE3, então escale a leitura de volta pela faixa de fundo de escala da 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)