cam_photo.py
Picamera2 es la API moderna de Raspberry Pi OS: el script configura una toma, arranca el sensor y guarda un JPEG con marca de tiempo. Active la cámara (raspi-config o camera_auto_detect en config.txt) antes del primer uso en este modelo.
Hardware
Una Raspberry Pi 5 (BCM2712 quad-core a 2,4 GHz, chip de E/S RP1, GPIO de 40 pines, alimentación USB-C de 5 V/5 A recomendada, dos puertos CSI de cámara). Un modulo Pi Camera (v2 IMX219 o HQ), cinta CSI.
Cableado
Cinta CSI en el puerto de cámara (clip hacia arriba en el lado de 40 pines), contactos de cobre mirando a los pines; ver la doc oficial para la ubicacion del puerto CSI.
Funcionamiento
Picamera2 habla con libcamera: configuracion still, arranque, captura asincrona directa a archivo y parada limpia del pipeline.
Ejecución
Copia el script en la placa (scp) y ejecútalo con python3. En Bookworm, gpiozero 2.x controla los pines mediante el chip RP1; mantén gpiozero y python3-rpi.gpio actualizados (sudo apt full-upgrade). Se recomienda fuente de 5 V/5 A.
Variantes
create_video_configuration para vídeo; capture_request_and_convert para obtener un array NumPy. Se recomienda una fuente de 27 W (5 V/5 A); sin ella, USB se limita a 600 mA en total.
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")