Outils d'utilisateurs

Outils du Site


projets:machine_a_timelaps

Ceci est une ancienne révision du document !


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
  • Faire la commande des servomoteurs avec l'Arduino
  • Faire communiquer le Raspberry avec l'Arduino en I2C
  • 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 une photo de ce que devrait être le rendu de la structure imprimé en 3D des servomoteurs avec la caméra: J'ai commencé à imprimer quelques pièces:

  • support de la caméra:

  • Le support du premier servomoteur qui fait le lien entre la base et la caméra:

  • La base:

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ème dans certaines cotations et j'ai du reprendre certain trou pour les affiner afin que tout s'emboite bien. Certaines pièces sont à réimprimer

projets/machine_a_timelaps.1416153790.txt.gz · Dernière modification: 2014/11/16 17:03 par rom1