AE3 Battery Shield¶
L’AE3 Battery Shield alimenta la OpenMV AE3 da un’ampia gamma di sorgenti — 5–36 V, una cella Li‑Po da 3.7 V, oppure 1.8–5.5 V per 3 celle alcaline in serie — e aggiunge uno zoccolo per scheda microSD SPI su P0–P3. Tutti e tre gli ingressi di alimentazione arrivano su morsetti JST; lo shield viene fornito con un adattatore JST‑a‑pigtail per l’ingresso ad ampio campo e un adattatore JST‑a‑jack‑DC‑barrel per l’ingresso alcalino.
Per il datasheet completo, le foto e le informazioni d’ordine, consulta la pagina prodotto AE3 Battery Shield.
Punti salienti¶
HV PWR — 5–36 V, tollerante alla tensione inversa fino a −36 V. Alimenta l’AE3 a 3.3 V (fino a 600 mA).
BAT — Li‑Po a cella singola da 3.7 V. Alimenta l’AE3 a 3.0 V (fino a 800 mA). Il caricatore integrato funziona con una corrente di carica di 100 mA ogni volta che sullo shield sono disponibili 3.3 V — forniti da USB, HV PWR, o 3.3 V inviati all’AE3 tramite il suo connettore Qwiic. Un timer di sicurezza di 6.25 ore limita la capacità di batteria supportata a 625 mAh.
LV PWR — 1.8–5.5 V per 3 celle alcaline in serie, tollerante alla tensione inversa fino a −5.5 V. Alimenta l’AE3 a 3.0 V (fino a 800 mA).
zoccolo per scheda microSD cablato su
P0–P3tramite SPI, con un interruttore di alimentazione controllato via software suP11.
Nota
Lo shield viene fornito con una custodia che tiene l’AE3 saldamente contro il connettore. Quattro fori di montaggio M1.6 agli angoli permettono di fissare lo shield a un contenitore o a un supporto.
Suggerimento
Usa lo stimatore della durata della batteria per modellare per quanto tempo l’AE3 alimentata tramite questo shield funzionerà con una determinata batteria e un determinato ciclo di lavoro attivo / deep-sleep.
Riferimento dei pin¶
Pin |
Funzione |
|---|---|
P0 |
microSD SPI MOSI |
P1 |
microSD SPI MISO |
P2 |
microSD SPI SCLK |
P3 |
microSD SPI CS |
P6 |
power‑good del caricatore (basso quando sullo shield sono presenti 3.3 V — USB, HV PWR, o Qwiic 3.3 V; la carica avviene solo mentre questo è basso) |
P7 |
charging del caricatore (basso mentre la Li‑Po è in carica) |
P8 |
Monitor della tensione della batteria Li‑Po — lo shield divide 0–5 V a 0–1.8 V sul pin |
P9 |
Monitor della tensione di ingresso LV — lo shield divide 0–6 V a 0–1.8 V sul pin |
P11 |
abilitazione alimentazione microSD (porta a livello alto per alimentare la scheda) |
ingresso HV PWR |
5–36 V su un morsetto JST (tollerante alla tensione inversa; adattatore JST‑a‑pigtail incluso) |
ingresso BAT |
Li‑Po a cella singola da 3.7 V su un morsetto JST |
ingresso LV PWR |
1.8–5.5 V su un morsetto JST per 3 celle alcaline in serie (tollerante alla tensione inversa; adattatore JST‑a‑jack‑DC‑barrel incluso) |
rail 3.3V |
Alimenta l’AE3 e l’elettronica integrata dello shield |
rail GND |
Massa comune |
Utilizzo¶
Innesta un AE3 sullo shield e collega uno qualsiasi dei tre ingressi di alimentazione — lo shield mette in OR i rail internamente e alimenta l’AE3 dalla sorgente che è presente.
Nota
Con solo BAT collegato (nessun USB, HV PWR, o Qwiic 3.3 V ad alimentare lo shield), l’AE3 funziona a 3.0 V dalla Li‑Po, il caricatore è inattivo, ed entrambi i LED di stato sono spenti.
Lo zoccolo microSD è esposto sul bus SPI dell’AE3 tramite machine.SPI e il driver standard sdcard. Porta P11 a livello alto per alimentare la scheda, poi incapsula il dispositivo a blocchi in un VfsFat e montalo su /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"))
Controlla lo stato del caricatore leggendo i suoi due pin di stato. P6 (power‑good) va a livello basso non appena sullo shield sono presenti 3.3 V — da USB, HV PWR, o 3.3 V reinviati attraverso il Qwiic dell’AE3 — che è anche quando il caricatore è abilitato a funzionare. P7 (charging) va a livello basso mentre la Li‑Po è effettivamente in carica. Entrambi i pin pilotano anche LED di stato integrati — P6 accende un LED verde, P7 accende un LED rosso
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")
Monitora le tensioni della batteria Li‑Po e dell’ingresso LV su P8 e P9. Lo shield divide ciascuna alimentazione fino al campo dell’ADC a 1.8 V dell’AE3, quindi riscala la lettura verso l’alto in base al campo di fondo scala dell’ingresso:
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)