Étape 3: Code de Python
Programme Python est utilisé pour obtenir le signal d’entrée du capteur via arduino, afin qu’il peut capturer l’obstacle selon la détection du capteur.
#! python /usr/bin/env
import sys
importation de série
Import pygame
importation pygame.camera
à partir d’os importer getenv
de pygame.locals import *
importations de datetime dt datetime
# Initialiser le périphérique caméra
pygame.Camera.init()
Cam = pygame.camera.Camera ("/ dev/video0", (640, 480)) / / déclarer ici le port de l’arduino
HOME_DIR = getenv('HOME')
'''
Ajuster la valeur de cette variable pour définir la distance pour le capteur détecter les intrus
'''
GAMME = 300
def capture_image(): ''' démarre la caméra, saisit l’image, économise il & amp ; amp ; amp ; amp ; amp ; s’arrête '''
file_name = home_dir + str(dt.now()) + « / image_captured/image_ », « .jpg »
image de Cam.Start() = cam.get_image()
pygame.image.Save (image, nom_fichier)
Cam.Stop()
'''
Établit une connexion à la carte Arduino via l’interface série
'''
arduino_board = serial. Série (sys.argv [1], 9600)
'''
Entre dans une boucle d’infite qui s’exécute jusqu'à ce qu’il reçoive clavier interrompre
'''
While True :
Si arduino_board.inWaiting() > 0 :
données = arduino_board.readline().strip()
Essayez :
'''
La valeur obtenue grâce à l’interface série serait la chaîne, afin de pouvoir pour traiter plus, il est converti en type de données numérique.
'''
données = int(float(data))
Si données < = plage :
capture_image()
imprimer des données
sauf BaseException, être :
'''
Initialement, la Commission peut envoyer certaines chaînes qui ne sont pas la valeur numérique, pour gérer cette exception il est attrapé et ignorée par l’impression d’un message d’exception.
'''
impression be.message