Mesure d'un impulsion avec arduino uno

Bonjour,
Dans le cadre d'un projet scolaire, nous devons étudier un câble coaxial.
Nous avons réussi à générer un signal depuis la carte arduino puis nous l'avons étudié avec un oscilloscope.
Nous cherchons maintenant à mesurer les différentes caractéristiques de ce signal directement avec la carte et éventuellement les traiter avec python. Cela nous pose de grandes difficultés. Avez-vous quelques idées?

Quelles sont les caractéristiques que vous souhaitez étudier ?

La durée entre le signal entrant et celui en sortie du câble.

Tu balance ton cable sur la broche ADC de ton arduino et envois les données à un programme python

De quels difficultés parles tu ?

Notre problème est d'écrire le code arduino. Nous maitrisons les branchements.

Les temps de propagation sont hyper rapides… quelle longueur de câble avez vous ?

Dans un conducteur absolu, l’électricité se propage à la vitesse de la lumière. Dans un fil de cuivre vous êtes à 273000 km par seconde… de l’ordre de 4 nanosecondes pour un fil d’un mètre… Pas sûr qu’à 16MHz votre arduino soit suffisamment rapide pour mesurer cette vitesse de propagation… qu’en pensez vous ?

ok cool, donc il suffit de faire un analogRead

Pour lire la tension, pas pour mesurer le temps de propagation

heu si un peu, tu peux avoir un temps de propagation sans lire la tension ?
Bon après le temps ne voudra rien dire, voir ne sera pas déterminable.

Oui c’est ce que j’essayais de dire. On peut lire la tension mais ça ne suffit pas à calculer le délai de propagation (et on ne pourra pas à moins qu’ils aient quelques milliers de km de câble et dans ce cas pas sûr que les 5V resortent de l’autre côté :wink: )

Ouai, tu avais était très claire, dans ta première explication.
C'est un projet scolaire, donc il faut qu'il apprenne aussi par l'expérience.
Rien que de mettre en évidence, qu'ils ne peuvent pas déterminer de telle caractéristique est formateur non?

Et Avant de coder c’est important de réfléchir :wink:

Ba pour le coup, ça n'a pas marché, j'ai pas l'impression que ce soit eux qui aient réfléchit :rofl:

j'attendais un calcul en réponse à cela

Ha ok, j'avoue que je n'avais pas compris que tu voulais une réponse.
mais effectivement :slight_smile:

Nous avons mesuré la vitesse de propagation à l'aide d'un oscilloscope elle se situe autour des 1,9*108 m.s-1. Nous sommes conscient que la fréquence maximale de l'horloge-16MHz- ne sera sûrement pas suffisante, c'est pour quoi nous avons essayé de réduire au maximum la durée d'une impulsion. Dans le but que le début de l'arrivée de l'impulsion en bout de câble se trouve après la fin de son départ et nous avons constaté que cela fonctionne en observant sur un oscilloscope. Pour se faire nous avons utilisé un timer.

Notre câble mesure 50m.

je suppose que vous vouliez dire 10 puissance MOINS 8 ?

question: si l'horloge du microprocesseur est à 16Mhz, combien de temps avez vous entre 2 impulsions ? (le temps généralement de faire une seule instruction de très bas niveau en assembleur)

Du coup pendant combien de temps(ou tick) envoyez vous votre signal?

c'est pas plutôt une vitesse de 1.9 10^8 m/s , sinon la vitesse est très lente ?