Loi phénoménologique de Newton

Un exemple d'utilisation de Web Sciences en mode temporel

Mesurer la variation temporelle de la température d'un système incompressible au contact d'un thermostat permet d'illustrer les possibilité des mesures temporelles offertes par la biblothèque Web Sciences.

I. Montage

Matériel nécessaire

  • Une carte Arduino équipée d'une breadboard
  • Un capteur de température Grove
  • Un sèche cheveux

Montage


II. Code nécessaire

Script Arduino

Le script :

  • attend l'arrivée de la commande mesure sur la liaison série.
  • réagit en conséquence, c'est à dire effectue une série de mesures de la température pendant une durée Δt (par exemple 5 minutes)
  • Chaque mesure est envoyée sur la liaison série juste après sa réalisation. La série se termine par l'envoi du mot end.

Voir à cet effet les commentaires dans le code source du script capteur_temperature.ino.


Code Javascript

Le code javascript:

  • fonctionne en mode temporel :
    mode = "temporel";
  • envoie la commande mesure lorsque l'utilisateur clique sur le bouton mesure:
    commandes = [{texte_bouton:"Mesure", arduino:"mesure"}];
  • attend une série de mesures de la température en fonction du temps (en mode temporel, le temps est la première série par défaut et ne doit pas être ajouté à la variable series):
    series = [{grandeur: "T", unite: "°C"}];
    .
  • trace le graphe T = f(t).
    axes = [{grandeur: "t", unite: "ms"}, {grandeur: "T", unite: "°C"}];

Le code Javascript complet est le suivant :

mode = "temporel";
commandes = [{texte_bouton:"Mesure", arduino:"mesure"}];
series = [{grandeur: "T", unite: "°C"}];
titre_graphe = "Evolution de la température d'un système au contact d'un thermostat";
axes = [{grandeur: "t", unite: "ms"}, {grandeur: "T", unite: "°C"}];

Le code complet à insérer dans une cellule Jupyter

from web_sciences import WebSciences

my_init = '''
mode = "temporel";
commandes = [{texte_bouton:"Mesure", arduino:"mesure"}];
series = [{grandeur: "T", unite: "°C"}];
titre_graphe = "Evolution de la température d'un système au contact d'un thermostat";
axes = [{grandeur: "t", unite: "ms"}, {grandeur: "T", unite: "°C"}];
'''

interface = WebSciences(my_init)
interface.affiche()

Exemple d'éxécution


Démo en ligne

  • Télécharger le script capteur_temperature.ino en cliquant sur le lien.
  • Téléverser ce script dans la carte à l'aide de l'IDE Arduino.
  • Brancher le capteur de température Grove sur l'entrée A0 de la carte Arduino.
  • Cliquer sur le bouton Connexion ci-dessous et sélectionner le port correspondant à la carte.
  • Cliquer sur le bouton mesure. La carte effectue 50 points de mesure de la température T en une durée de 400 secondes (ces valeurs sont modifiables dans le script Arduino). Les données sont transmises par la liaison série.
  • Le script affiche les données reçues sur un graphe T = f(t).
  • Cliquer sur le bouton Copie presse papier pour récupérer les données dans le presse papier. Dans cet exemple, les données sont formatées sous forme de tableaux python. Il est cependant possible d'obtenir un formatage compatible avec un tableur comme Régressi ou Excel en cochant la case ci-dessous.
tableur = false;

Le traitement des données permet de tracer les graphes T = f(t) de les modéliser par une exponentielle décroissante et de déterminer le temps caractéristique ainsi que la température du thermostat (voir le notebook ci-dessous).

Liens