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 Model B+ (BCM2835, connecteur GPIO 40 broches, alimentation micro-USB, audio 3,5 mm 4 pôles). 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 caméra 15 broches à côté de l'HDMI ; Picamera2 fonctionne sous Raspberry Pi OS récent, avec des limites de débit sur BCM2835..
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). Installez gpiozero avec sudo apt install python3-gpiozero si absent. Le brochage du connecteur 40 broches figure sur le schéma officiel et dans le site Raspberry Pi.
Variantes
create_video_configuration pour une vidéo ; capture_request_and_convert pour récupérer un array NumPy. Pas de Wi-Fi intégré : Ethernet ou clé USB ; alimentation micro-USB 5 V/1,2 A.
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")