cam_photo.py

Raspberry Pi Model B+ (2014) — Fiche de carte · Fichier : cam_photo.py · Langage : Python · Usage : Prendre une photo avec le module caméra officiel et Picamera2

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")

← Retour à la fiche