Mesure d'une période

On utilise ici le montage fourche optique précédent mesurer les instants de changement d'état de la fourche optique.

Les mesures (instant de changement d'état en ms, état de la fourche 0/1) sont écrites sur la liaison série (configurée pour une vitesse de 19200 baud) : elles peuvent êtres affichées dans moniteur ou lues par un programme Python pour traitement sur l'ordinateur portable (tracé de courbe, enregistrement dans un fichiers ASCII...)

Indications

La fonction ARDUINO millis renvoie le temps en millisecondes écoulé depuis le lancement d'un programme ARDUINO.

On peut s'en servir pour :

  1. prendre le temps t0 au moment de l'appui sur le bouton Start/stop
  2. prendre le temps t1 au moment de la détection de l'interruption du faisceau infra-rouge.
  3. La différence t1-t0 peut alors être affichée sur le moniteur.

Algorithme textuel

À écrire en séance.

Programme

Copier votre programme ARDUINO FourcheOptique_2 sous le nom FourcheOptique_3, et modifiez le conformément à l'algorithme établi.

Configurer le port série à la bonne vitesse : Serial.begin(19200);

Téléverser le programme, faire afficher le moniteur : appuyer sur le bouton start et faire des coupures du faisceau infrarouge de la fourche... observer l'affichage des valeurs (temps, état_fourche) dans le moniteur.

Tracé des données par un programme Python sur le PC

Le programme Python SerialReadTimeFork.py effectue les opérations suivantes :

  • lecture de du port série (à la vitesse de 19200 baud),
  • traitement des données lues (couple "temps, état_fourche"),
  • écriture des données dans un fichier ASCII nommé FourcheData.txt, situé dans le même répertoire que le programme Python,
  • Tracé de la courbe des données acquises.

Pour pouvoir exécuter ce programme, il faut ajouter le module serial à la distribution Python en tapant la commande pip install pyserial (Windows : taper la commande dans la Fenêtre Anaconda Command Prompt, GNU/Linux et Mac Os X : lancer un terminal pour taper la commande).

Télécharger le fichier SerialReadTimeFork.py et l'ouvrir avec IDLE.

La séquence des opérations pour une acquisition est celle-ci :

  1. Téléverser le programme ARDUINO FourcheOptique_3,
  2. Lancer le programme Python SerialReadTimeFork.py. en appuyant sur la touche F5 de l'atelier IDLE
  3. Démarrer l'acquisition en appuyant sur le bouton Start/Stop,  jouer avec la fourche optique... appuyer de nouveau sur Start/Stop pour stopper l'acquisition : la courbe se trace

Vous pouvez aussi observer le fichier des résultat FourcheData.txt :


Modifié le: mardi 9 janvier 2018, 16:54