 
.. note::

    Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l'univers des Raspberry Pi, Arduino et ESP32 avec d'autres passionnés.

    **Pourquoi rejoindre ?**

    - **Support d'experts** : Résolvez les problèmes après-vente et les défis techniques avec l'aide de notre communauté et de notre équipe.
    - **Apprendre et partager** : Échangez des astuces et des tutoriels pour améliorer vos compétences.
    - **Aperçus exclusifs** : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.
    - **Réductions spéciales** : Profitez de réductions exclusives sur nos produits les plus récents.
    - **Promotions festives et cadeaux** : Participez à des cadeaux et des promotions de vacances.

    👉 Prêt à explorer et à créer avec nous ? Cliquez [|link_sf_facebook|] et rejoignez-nous aujourd'hui !

.. _4.1.4_py:

4.1.4 Caméra de Capture Automatique
=======================================

Introduction
-----------------

Lorsque vous êtes absent, les petits écureuils dans les bois pourraient visiter votre appui de fenêtre. Faisons une caméra de capture automatique pour laisser des photos de ces petites mignonnes créatures !

Composants Requis
------------------------------

Dans ce projet, nous avons besoin des composants suivants.

.. image:: ../img/3.1.18components.png
  :width: 800
  :align: center

Il est certainement pratique d'acheter un kit complet, voici le lien : 

.. list-table::
    :widths: 20 20 20
    :header-rows: 1

    *   - Nom	
        - ARTICLES DANS CE KIT
        - LIEN
    *   - Kit Raphael
        - 337
        - |link_Raphael_kit|

Vous pouvez également les acheter séparément via les liens ci-dessous.

.. list-table::
    :widths: 30 20
    :header-rows: 1

    *   - INTRODUCTION DES COMPOSANTS
        - LIEN D'ACHAT

    *   - :ref:`cpn_gpio_extension_board`
        - |link_gpio_board_buy|
    *   - :ref:`cpn_breadboard`
        - |link_breadboard_buy|
    *   - :ref:`cpn_wires`
        - |link_wires_buy|
    *   - :ref:`cpn_resistor`
        - |link_resistor_buy|
    *   - :ref:`cpn_camera_module`
        - |link_camera_buy|
    *   - :ref:`cpn_pir`
        - \-


Schéma de Câblage
-----------------------

============== ========= ========== ===
Nom du T-Board  Brochage  wiringPi  BCM
GPIO17          Pin 11    0         17
============== ========= ========== ===

.. image:: ../img/1.1.18_schematic.png
   :width: 400
   :align: center

Procédures Expérimentales
------------------------------

Avant de commencer ce projet, assurez-vous d'avoir complété :ref:`3.1.1_py`.

**Étape 1 :** Construisez le circuit.

.. image:: ../img/3.1.18fritzing.png
  :width: 800
  :align: center

**Étape 2 :** Pour connecter le module caméra et compléter la configuration, veuillez vous référer à :ref:`cpn_camera_module`.

**Étape 3 :** Accédez au bureau de Raspberry Pi. Pour une meilleure expérience, vous pouvez avoir besoin d'un écran. Référez-vous à : `Connect your Raspberry Pi <https://projects.raspberrypi.org/en/projects/raspberry-pi-setting-up/3>`_. Ou accédez à distance au bureau de Raspberry Pi en suivant le tutoriel détaillé :ref:`remote_desktop`.

**Étape 4 :** Ouvrez un Terminal et accédez au dossier du code.

.. raw:: html

   <run></run>

.. code-block::

    cd ~/raphael-kit/python/

**Étape 5 :** Exécutez.

.. raw:: html

   <run></run>

.. code-block::

    sudo python3 4.1.4_AutomaticCaptureCamera.py

Une fois le code exécuté, le PIR détectera l'environnement environnant et, s'il détecte un petit écureuil passant, la caméra prendra une photo.
L'intervalle entre les photos est de 3 secondes, et le nombre total de photos prises sera affiché dans la fenêtre de commande.

Il y a deux potentiomètres sur le module PIR : l'un pour ajuster la sensibilité et l'autre pour ajuster la distance de détection. Pour optimiser le fonctionnement du module PIR, vous devez les tourner complètement dans le sens antihoraire.

.. image:: ../img/PIR_TTE.png
    :width: 400
    :align: center

.. note::

   Vous pouvez également ouvrir ``4.1.4_AutomaticCaptureCamera.py`` dans le chemin ``~/raphael-kit/python/`` avec un IDE Python, cliquer sur le bouton Exécuter pour lancer le code, et arrêter le code avec le bouton Arrêter.

**Code**

.. note::
    Vous pouvez **Modifier/Réinitialiser/Copier/Exécuter/Arrêter** le code ci-dessous. Mais avant cela, vous devez accéder au chemin du code source comme ``raphael-kit/python``. Après avoir modifié le code, vous pouvez l'exécuter directement pour voir l'effet.

.. raw:: html

    <run></run>

.. code-block:: python

   #!/usr/bin/env python3

   from picamera import PiCamera
   import RPi.GPIO as GPIO
   import time
   import os
   user = os.getlogin()
   user_home = os.path.expanduser(f'~{user}')


   camera = PiCamera()

   pirPin = 17    # the pir connect to pin17

   def setup():
      GPIO.setmode(GPIO.BCM)
      GPIO.setup(pirPin, GPIO.IN)
      camera.start_preview(alpha=200)

   def main():
      i = 1
      while True:
         pirVal = GPIO.input(pirPin)
         if pirVal==GPIO.HIGH:
               camera.capture(f'{user_home}/capture%s.jpg' % i)
               print('The number is %s' % i)
               time.sleep(3)
               i = i + 1

   def destroy():
      GPIO.cleanup()
      camera.stop_preview()

   if __name__ == '__main__':
      setup()
      try:
         main()
      except KeyboardInterrupt:
         destroy()

**Explication du Code**

.. code-block:: python

   pirVal = GPIO.input(pirPin)
   if pirVal==GPIO.HIGH:
         camera.capture(f'{user_home}/capture%s.jpg' % i)
         print('The number is %s' % i)
         time.sleep(3)
         i = i + 1

Chaque fois qu'un petit écureuil est détecté par le module PIR, le Raspberry Pi prendra une photo et vous indiquera via la fenêtre de commande combien de photos ont été prises. L'intervalle entre chaque photo est de 3s.

Photo du Phénomène
------------------------

.. image:: ../img/4.1.4spycamera.JPG
   :align: center
