Outils d'utilisateurs

Outils du Site


projets:machine_a_timelaps

Machine à TimeLaps

Le projet a pour but de réaliser des TimeLaps tout en bougeant très légèrement, au cours du temps, la camera selon deux axes (pour le moment mais un mouvement de translation serait cool).

Conception

Pour faire ce projet, j'ai souhaité utiliser la camera du RaspberryPi ainsi qu'un Arduino pour commander les servomoteurs.

Etape du projet

  • Faire la structure de la camera et des servomoteurs V1 :OK: V2
  • Faire la commande des servomoteurs avec l'Arduino pour le moment je commande les servomoteurs avec des boutons poussoirs, je mets le code dès que je l'ai correctement commenté.
  • Faire communiquer le Raspberry avec l'Arduino en I2C (en attente de matériel en commande)
  • Faire le code pour prendre des TimeLaps avec le raspberry
  • Faire le code de communication des commandes de l'Arduino depuis le RaspberryPi
  • Faire un interface graphique afin de lancer le TimeLaps depuis un écran tactile si possible

Réalisation

Réalisation de la structure en 3D

Voici le support imprimé: Les pièces en violet sont la pour maintenir les servomoteurs (il faut que je fasse celles pour le servo de droite). Les deux parties de la base sont vissées mais je réfléchie à une V2 afin de ne plus en avoir besoin. En fasse de la pièce du milieu la liaison est faite avec la structure de droite grâce à un roulement à bille.

Code pour prendre des TimeLaps avec le Raspberry Pi

Ce code est un test pour prendre un TimeLaps avec le RaspberryPi et copier chaque image dans une clef USB du nom de TIMELAPS:

   import time , picamera , shutil, os
   from datetime import datetime
   
   with picamera.PiCamera() as camera:
      camera.start_preview() # ouverture de l'entre de l'appareil photo
      time.sleep(2)
      try:
              print("la duree du time laps en minute est de:")
              temps = input()
              print("l'interval entre deux photos en minute")
              interval = input()
              nb_photo = temps / interval
              d = datetime.now()
              
              dossier = "timelapse_" + str("%04d" % (d.year)) +"_"+ str("%02d" % (d.month)) +"_"+ str("%02d" % (d.day)) +"_"+ str("%02d" % (d.hour)) +"_"+ str("%02d" % (d.minute))
              os.mkdir('/media/TIMELAPS/'+ dossier)
              
              for i, filename in enumerate(camera.capture_continuous('img{counter:02d}.jpg')):
                      print('captured %s' % filename)
                      shutil.move('/home/pi/timelaps/v1/%s' % filename,'/media/TIMELAPS/'+dossier) # copie l'image dans un clef USB qui s'appelle TIMELAPS
                      time.sleep(interval*60) # temps d'attente en seconde
                      if i >= nb_photo: # nombre de photo
                              break
      finally:
              camera.stop_preview()

Difficultés rencontrées

Des problèmes dans certaines cotations.

projets/machine_a_timelaps.txt · Dernière modification: 2014/11/28 20:44 par rom1