Canon Magnétique et Piézoélectrique

## But du Projet

Le but de ce projet est de construire un capteur de vitesse permettant de lire et de comparer la vitesse de la bille projetée sur un canon magnétique et ainsi que celle de la bille lancée par le canon magnétique. On montrera aussi qu'il y a conservation de l'énergie entre l'état initial et l'état final du système qui se compose d'une bille avant le canon (l'aimant) et de deux billes après.

## Présentation du projet

   Le canon magnétique se compose d'un aimant et de trois billes en acier. On cherche à mesurer la vitesse de la première bille Vi et celle de la troisième bille Vf qui partira quand la première bille sera en contact avec l'aimant. Pour mesurer la vitesse de la bille, on utilise deux capteurs piézoélectriques chacun à une distance d fixe l'un de l'autre et reliés à une plaquette Arduino muni d'un programme qui donne le temps de passage de la bille entre les deux capteurs. Avec la formule v=d/t on obtient donc la vitesse v de la bille. La mesure du temps entre les deux capteurs piézoélectriques s'effectue en démarrant un chronomètre dès que le premier capteur envoie une tension à l'arduino et en l'arrêtant dès que le deuxième capteur envoie une tension à l'arduino.

## Cahier des charges

Les capteurs ne fournissent pas de tension directement lisible par l'arduino (0V ou 5V), on doit passer par un comparateur.

Un Arduino fournira une tension de 0V et une tension de 5V qui sera utilisée par un comparateur et un potentiomètre pour régler la tension seuil du comparateur qui sera de 1V.

Les deux capteurs piézoélectriques fourniront une tension lorsque la bille passera dessus et qui sera lue par l'arduino par l’intermédiaire du comparateur.

## Capteurs nécessaires

Le passage de la bille est mesuré par un capteur de pression piézoélectrique qui transforme la mesure de la pression en tension qui est toujours supérieur à 1V pour une bille. L'Arduino ne pouvant lire qu'une tension de 0V ou 5V, on fait donc passer les tensions récupérées par les capteurs par un comparateur qui délivrera 5V lorsqu’une tension supérieur à 1V sera détectée par le comparateur.

## Transducteurs nécessaires

L'augmentation de pression due au passage de la bille est mesurée par les capteurs piézoélectriques et est transformée en tension par ces mêmes capteurs. La tension peut ainsi être lu par l'arduino par l’intermédiaire d'un comparateur qui transformera une tension entre 0V et 1V en une tension de 0V et une tension supérieur à 1V en une tension de 5V.

## Besoins électriques

Pour alimenter les différentes pattes du comparateur on utilise la tension 0V/5V de l'arduino ainsi qu'un potentiomètre pour avoir une tension seuil de 1V.

## Besoins Mécaniques

Nous avons besoin d'une rampe afin d'avoir une vitesse initial constante.

## Arduino

L'Arduino UNO possède plusieurs sorties numériques. Ici l'entrée 2 et 3 pour utiliser la fonction attachinterrupt qui permet d’arrêter le programme et de tout de suite faire ce qui est marqué dans la fonction attachinterrupt.

## Programme Arduino

#include "Wire.h"

#include "LCD.h"

#include "LiquidCrystal\_I2C.h"

#define I2C\_ADDR 0x3F

#define Rs\_pin 0

#define Rw\_pin 1

#define En\_pin 2

#define BACKLIGHT\_PIN 3

#define D4\_pin 4

#define D5\_pin 5

#define D6\_pin 6

#define D7\_pin 7

LiquidCrystal\_I2C lcd(I2C\_ADDR,En\_pin,Rw\_pin,Rs\_pin,D4\_pin,D5\_pin,D6\_pin,D7\_pin);

const byte EntreeCapteur = 2;

const byte EntreeCapteur1 = 3;

float temps\_depart, t1, t2, v;

void setup()

{

 lcd.begin (16,2);

lcd.setBacklightPin(BACKLIGHT\_PIN,POSITIVE);

lcd.setBacklight(HIGH);

lcd.home ();

lcd.print("PHY404-2017");

delay(5000);

lcd.clear();

Serial.begin(9600);

 digitalWrite (EntreeCapteur, LOW);

 digitalWrite (EntreeCapteur1, LOW);// internal pull-up resistor

 attachInterrupt (digitalPinToInterrupt(EntreeCapteur), arrivee\_signal, RISING);

 attachInterrupt (digitalPinToInterrupt(EntreeCapteur1), arrivee\_signal1, RISING);

 temps\_depart = millis();

 t1=0;

 t2=0;

}

void arrivee\_signal ()

{

if (t1<1)

{

  t1=millis();

}

}

void arrivee\_signal1 ()

{

 if (t2<1)

 {

  t2=millis()-t1;

  v=0.074/(t2\*0.001);

 }

}

void loop()

{

 lcd.setCursor (2,0);

 lcd.print(v);

 delay(100);

 lcd.setCursor(2,1);

 lcd.print(t1);

}

## Tests

Nous avons d’abord tester les tension de sorties du capteur piézoélectrique avec le passage d'une bille en reliant le capteur à un oscilloscope. Lorsque rien ne passe sur le capteur on a bien 0V sur l'oscilloscope avec un bruit léger ne dépassant pas 0,2V. Lorsque la bille passe sur le capteur la tension en sortie augmente entre 2V et 5V. On peut donc en conclure que se sont des tensions raisonnable pour l'Arduino mais pas assez satisfaisante pour nous.

On a donc voulue transformer cette tension de sortie variable en tension soit de 0V quand rien ne se passe soit de 5V quand la bille passe sur le capteur car l'arduino ne peut lire qu'une tension de 0V ou de 5V.

Pour cela, nous avons utilisé un comparateur de tension. Nous avons commencé à le tester avec un générateur basse fréquence (GBF) pour être sûr de notre montage avant de connecter le comparateur aux capteurs et un oscilloscope pour être sûr que les tensions délivrées serai bien 0V ou 5V. Le comparateur marchant bien avec les tensions du GBF on les a donc remplacées par les tensions des capteurs, puis on a vérifié que le comparateur nous donnait toujours 0V ou 5V.

## Mesures

Nous avons pu lors de la dernière séance effectuer des mesures de vitesse avant et après le canon magnétique avec une bille de diamètre 10mm et de masse 14g. Nos résultats sont regroupés dans le tableau ci-dessous.

On n'a pas pu avoir de résultats assez correct pour la vitesse 2 après canon. Nous allons donc étudier seulement la vitesse 1 qui est plus précise.

On peut s'apercevoir rien quand regardant les résultats que entre la vitesse initial 1 et la vitesse après canon 1 on a une vitesse qui est multipliée par un facteur 4.

Avec ces résultats on peut aussi montrer la conservation de l'énergie qui est expliquer ci-dessous.

## Complément théorique pour comprendre la conservation de l'énergie

Nous allons étudiez la conservation de l'énergie du canon magnétique. On prendra comme système la bille 1,2 et 3 ainsi que l'aimant.

Dans l'état initiale on a :

Ei=Ec1+Ep1+Ep2+Ep3=1/2m(Vi)^2+Ep1+Ep2+Ep3

Dans l'état final on a :

Ef=Ec3+Ep1'+Ep2'+Ep3' cependant l'énergie potentielle ne dépendant que de la distance du centre de l'aimant au centre de la bille, on a donc Ep2=Ep2'=Ep1' donc Ef=1/2m(Vf)^2+2Ep2+Ep3'

On applique donc la conservation de l'énergie et on a :

Ei=Ef <=> 1/2m((Vi)^2-(Vf)^2)=Ep2+Ep3'-Ep1-Ep3

On s'est arrangé pour faire des mesures de vitesse telle que: Ep3'=Ep1 on a donc comme formule à vérifier; **1/2m((Vi)^2-(Vf)^2)=Ep2-Ep3**

On calcul les énergies potentielles théoriquement avec la formule suivante:

Ep=-(3\*µ0\*vb\*M^2)/(4\*(pi)^2\*(r)^6) avec M:le moment de l'aimant(en Am2), vb:le volume de la bille(en m^3 et r le rayon du centre de l'aimant au centre de la bille(en m).

De plus on sait que : µ0=4\*pi\*10^-7 Kg.m.A-2.s-2, M=1 Am2, vb=2.94\*10^-7 m3

On en déduit donc l'énergie potentielle en fonction du rayon r. Ep=-2.8089\*10^-14/r^6 J

Pour Ep2 on a r=0.01m donc Ep2=-0.02 J

Pour Ep3 on a r=0.02m donc Ep3=-3.25\*10^-4 J et Ep2-Ep3=0.019 J

Pour les énergies cinétiques on a m=0.014Kg, Vi=0.4m/s et vf=1.35m/s

Donc 1/2m((Vi)^2-(Vf)^2)=-0.012 J

On a donc 0.012 J environ égale à 0.019 J, on a donc bien conservation de l'énergie mécanique pour notre canon magnétique.

## Conclusion

Pour conclure, nous avons réussi à mesurer des vitesses de bille avec notre capteur de vitesse piézoélectrique et nous avons réussie à montrer la conservation de l'énergie pour des vitesses faibles.

En effet, nous n'avons pas réussi à montrer la conservation de l'énergie pour des vitesses plus élevées parce que notre capteur de vitesse piézoélectrique ne fonctionne que pour de faibles vitesses. On a pu remarquer que pour de grandes vitesses la bille survolait le capteur piézoélectrique, cependant on avait quand même des mesures. Elles étaient sans doute dues aux chocs que faisait la bille en passant sur la rampe de plexiglas.

## Difficultés rencontrées

- nous avons fait un essai avec des capteurs ultrasons cependant ils ne détectaient pas les billes, on a donc changer de capteur pour en prendre des piézoélectriques.

- les capteurs piézoélectriques ne fournissent pas de tension lisible directement par l'arduino (0v/5v) nous avons donc du passer par un comparateur.

- pour utiliser le comparateur nous avons du utiliser des branchements compliqués avec deux condensateurs et deux résistances.

-Lors de l'avant dernière séance nous avons eu trop de bruit et il dépassait les 1Volt, cependant notre tension seuil de 1Volt n'étant pas suffisante pour nos billes, on n'a pas pu baisser la tension seuil car le bruit était trop élevé. On a donc essayer de limiter le bruit en déplaçant l'écran d'ordinateur le plus loin possible et en débranchant l'arduino de l'ordinateur.

-Lors de la dernière séance malgré les câbles blindés on a toujours autant de bruit et on a pu détecter la source du bruit. Il était du à la lecture des vitesses sur l'ordinateur avec le moniteur. On a donc du brancher en plus un afficheur qui nous affiche les vitesses.

-On a eu un problème avec nos test sur l'oscilloscope. Si l'oscilloscope était branché on avait 0V quand rien ne se passait ce qui est normal mais quand on retirait l'oscilloscope on avait 5V quand rien ne se passait. On a donc décidé de remplacer dans notre circuit l'oscilloscope par une résistance très importante car l'oscilloscope a une résistance infini.

## Présentation oral

Fichier:Canon magnétique présentation oral.pdf