.. note:: Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci l'esplorazione del Raspberry Pi, Arduino ed ESP32 con altri appassionati. **Perché unirti a noi?** - **Supporto esperto**: Risolvi i problemi post-vendita e le sfide tecniche con l'aiuto della nostra comunità e del nostro team. - **Impara e condividi**: Scambia consigli e tutorial per migliorare le tue competenze. - **Anteprime esclusive**: Accedi in anteprima agli annunci di nuovi prodotti e alle anticipazioni esclusive. - **Sconti speciali**: Approfitta di sconti esclusivi sui nostri prodotti più recenti. - **Promozioni e omaggi festivi**: Partecipa a omaggi e promozioni speciali durante le festività. 👉 Sei pronto a esplorare e creare con noi? Clicca su [|link_sf_facebook|] e unisciti oggi stesso! .. _3.1.1_py: 3.1.1 Modulo Fotografico ============================= Introduzione ------------------- In questo kit, dotato di un modulo fotocamera, proveremo a scattare una foto con il Raspberry Pi. Componenti necessari -------------------------------- In questo progetto avremo bisogno dei seguenti componenti. .. image:: ../img/photo1.png :width: 800 È sicuramente conveniente acquistare un kit completo, ecco il link: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Nome - ELEMENTI IN QUESTO KIT - LINK * - Kit Raphael - 337 - |link_Raphael_kit| Puoi anche acquistarli separatamente dai link sottostanti. .. list-table:: :widths: 30 20 :header-rows: 1 * - INTRODUZIONE AI COMPONENTI - LINK PER L'ACQUISTO * - :ref:`cpn_camera_module` - |link_camera_buy| Procedura sperimentale ------------------------------ **Passo 1:** Accedi al desktop del Raspberry Pi. Potresti aver bisogno di uno schermo per un'esperienza migliore, fai riferimento a: `Collega il tuo Raspberry Pi `_. Oppure accedi al desktop del Raspberry Pi da remoto, per un tutorial dettagliato fai riferimento a :ref:`remote_desktop`. **Passo 2:** Controlla se la fotocamera è abilitata. Per istruzioni, fai riferimento a: :ref:`enable_camera`. **Passo 3:** Apri un terminale e accedi alla cartella del codice. .. code-block:: cd ~/raphael-kit/python/ **Passo 4:** Esegui il codice. .. code-block:: sudo python3 3.1.1_PhotographModule.py Dopo che il codice è stato eseguito, la fotocamera scatterà una foto. Ora puoi vedere la foto chiamata ``my_photo.jpg`` nella directory ``~``. .. note:: Puoi anche aprire ``3.1.1_PhotographModule.py`` nel percorso ``~/raphael-kit/python/`` con un IDE Python, clicca sul pulsante Run per eseguire e sul pulsante Stop per fermare il codice. Se desideri scaricare la foto sul tuo PC, fai riferimento a :ref:`filezilla`. **Codice** .. code-block:: python from picamera import PiCamera import os user = os.getlogin() user_home = os.path.expanduser(f'~{user}') camera = PiCamera() def setup(): camera.start_preview(alpha=200) def main(): camera.capture(f'{user_home}/my_photo.jpg') while True: pass def destroy(): camera.stop_preview() if __name__ == '__main__': setup() try: main() except KeyboardInterrupt: destroy() **Spiegazione del Codice** .. code-block:: python from picamera import PiCamera camera = PiCamera() Importa la libreria ``picamera`` e istanzia la classe ``PiCamera`` per utilizzare il modulo fotocamera. .. code-block:: python start_preview(**options) Mostra l'anteprima e cambia il livello di trasparenza dell'anteprima con ``alpha`` - da 0 a 255. Questo metodo avvia un'anteprima della fotocamera come overlay sul display principale del Pi (HDMI o composito). Per impostazione predefinita, il renderer sarà opaco e a schermo intero. Ciò significa che l'anteprima predefinita sovrascrive tutto ciò che è attualmente visibile sul display. Più specificamente, l'anteprima non si basa su un ambiente grafico come X-Windows (può funzionare tranquillamente da una console TTY); è semplicemente un overlay sull'uscita video del Pi. Per interrompere l'anteprima e visualizzare nuovamente il display, chiama ``stop_preview()`` . L'anteprima può essere avviata e fermata più volte durante la vita dell'oggetto ``PiCamera``. .. code-block:: python camera.capture(f'{user_home}/my_photo.jpg') Cattura un'immagine dalla fotocamera, memorizzandola in ``~/``. .. note:: Puoi utilizzare la funzione ``camera.capture()`` e un ciclo ``for`` insieme per ottenere una sequenza continua di scatti. Usa la funzione ``delay`` per regolare l'intervallo di tempo tra uno scatto e l'altro. .. code-block:: python for i in 5: camera.capture(f'{user_home}/my_photo%s.jpg' % i)