cam_photo.py
Picamera2 est l'API caméra moderne de Raspberry Pi OS : le script configure une prise de vue photo, démarre le capteur et enregistre un JPEG horodaté. Activer la caméra (raspi-config ou config.txt camera_auto_detect) avant le premier lancement sur ce modèle.
Matériel requis
Une Raspberry Pi 2 Model B (SoC BCM2836/2837 quad-core, connecteur GPIO 40 broches, Ethernet 100 Mbit/s, alimentation micro-USB). Un module Pi Camera (v2 IMX219 ou HQ), nappe CSI, objectif propre.
Câblage
Nappe CSI dans le port caméra (clip vers le haut côté 40 broches), côté contacts cuivrés vers les broches. Port CSI 15 broches ; Picamera2 est supporté sous Bullseye/Bookworm mais avec un débit réduit sur BCM283x..
Fonctionnement
Picamera2 négocie avec libcamera : configuration still, démarrage, capture asynchrone dans un fichier, puis arrêt propre du pipeline.
Exécution
Copiez le script sur la carte (scp), puis lancez-le avec python3 (ou bash). Raspberry Pi OS inclut gpiozero ; sinon sudo apt install python3-gpiozero. Le brochage 40 broches est documenté sur le site officiel Raspberry Pi.
Variantes
create_video_configuration pour une vidéo ; capture_request_and_convert pour récupérer un array NumPy. Quad-core ancien sans Wi-Fi : privilégiez l'Ethernet ; micro-USB 5 V/1,2 A recommandé.
cam_photo.py
# cam_photo.py — prend une photo avec la camera officielle (Picamera2).
# Deps: sudo apt install python3-picamera2 ; activer camera en raspi-config
# Sous Bookworm : camera_auto_detect=1 dans /boot/firmware/config.txt.
# Le clip du port CSI se releve, on inserre la nappe, contacts cuivres vers la carte.
from picamera2 import Picamera2
from datetime import datetime
picam2 = Picamera2()
cfg = picam2.create_still_configuration()
picam2.configure(cfg)
picam2.start()
picam2.switch_mode_and_capture_file(
cfg, datetime.now().strftime("photo_%Y%m%d_%H%M%S.jpg")
)
picam2.stop()
print("Photo enregistrée")