Cette page liste l’ensemble des capteurs et périphériques embarqués sur Chromapi.

Vue d’ensemble

PériphériqueComposantInterfaceGéré par
Centrale inertielle (IMU)BMI088SPI à 5 MHzCarte mère
Mesure de puissanceINA226I2C à 400 kHzCarte mère
Anneau LEDsWS2812BPWM + DMA à 800 kHzCarte mère
Caméra grand-angleIMX219-D160CSI-2Raspberry Pi
Haut-parleurMAX98357AI2SRaspberry Pi
MicrophoneICS-43434I2SRaspberry Pi
VentilateurNoctua NF-A4x10 PWMPWM + tachymètreRaspberry Pi

Centrale inertielle (IMU)

PropriétéValeur
ModèleBosch BMI088 (accéléromètre + gyroscope 3 axes)
InterfaceSPI à 5 MHz
Plage de l’accéléromètre±3 g
Plage du gyroscope±1000 °/s
Fréquence d’échantillonnage400 Hz
Filtre de fusionFiltre de Mahony à 400 Hz
SortieAccélération, vitesse angulaire et orientation (quaternion)

Note

Au démarrage, le filtre de Mahony calibre les biais de l’accéléromètre et du gyroscope sur 500 échantillons : le robot doit donc rester immobile pendant l’initialisation.

Caméra

PropriétéValeur
ModèleWaveshare IMX219-D160
CapteurSony IMX219 (8 MP)
Champ de vision160° (grand-angle, objectif fisheye)
InterfaceCSI-2

Audio

FonctionComposantDétails
AmplificateurMAX98357AAmplificateur classe D I2S
Haut-parleurXevtrak 4R3W4Ω, 3W
MicrophoneICS-43434Microphone MEMS numérique I2S

Anneau de LEDs RGB

PropriétéValeur
ModèleWS2812B COB Pixel Ring
Nombre de LEDs18
Diamètre27 mm
PilotageSTM32, PWM + DMA à 800 kHz

Ventilation

PropriétéValeur
ModèleNoctua NF-A4x10 PWM (40 × 40 × 10 mm)
Alimentation+5V
PilotagePWM avec retour tachymétrique

Contacteurs de pied

La carte mère prévoit quatre entrées pour des microinterrupteurs placés au bout des pattes, afin de détecter le contact au sol.

Note

Les contacteurs de pied ne sont pas utilisés dans la v1 de Chromapi.

Architecture de communication

  %%{init: {'themeCSS': '.edgeLabel, .edgeLabel p, .labelBkg { background-color: transparent !important; } .edgeLabel rect { fill: transparent !important; }'}}%%
flowchart LR
    RPI["Raspberry Pi"]
    MCU["STM32G431KBT6<br/>SYSCLK · 160 MHz"]
    SERVOS(["Servomoteurs x12<br/>STS3215-C001"])
    IMU["IMU<br/>BMI088"]
    PWR["Capteur de puissance<br/>INA226"]
    LED(["LEDs RGB<br/>WS2812B"])
    CAM["Caméra grand-angle<br/>IMX219-D160"]
    AUDIO["Haut-parleur + Microphone<br/>MAX98357A / ICS-43434"]
    FAN(["Ventilateur<br/>Noctua NF-A4x10"])

    RPI -->|"Protocole de bridge<br/>UART1 · 2 Mbps · boucle à 100 Hz"| MCU
    MCU <-->|"Série half-duplex<br/>USART2 · 1 Mbps · 200 Hz"| SERVOS
    MCU <-->|"SPI1 · 5 MHz · 400 Hz (Mahony AHRS)"| IMU
    MCU <-->|"I2C1 · 400 kHz · 10 Hz poll"| PWR
    MCU -->|"PWM+DMA · 800 kHz"| LED

    RPI -->|"CSI-2"| CAM
    RPI <-->|"I2S"| AUDIO
    RPI <-->|"PWM + tachymètre"| FAN

    classDef ic fill:#25b3ae,color:#ffffff,stroke:none
    classDef actuator fill:#c027e7,color:#ffffff,stroke:none
    classDef sensor fill:#5c5aed,color:#ffffff,stroke:none

    class RPI,MCU,AUDIO ic
    class SERVOS,LED,FAN actuator
    class IMU,PWR,CAM sensor

Ressources