Travail pratique de physique

Filtres avec circuits RC

Orestis Malaspinas

Objectif de ce TP

Comme vous allez le constater très vite, les étapes à réaliser dans ce TP seront assez succinctement décrites. Vous aurez un grand pouvoir de décision sur ce que vous allez pouvoir réaliser. Mais n’oubliez pas: “Avec les grands pouvoirs, viennent les grandes responsabilités.”

L’objectif global de ce travail pratique est de réaliser un simulateur de circuit RC et de l’utiliser afin de simuler un filtre passe bas et passe haut (en bonus).

Avant de commencer à programmer, vous devrez faire quelques recherches1. Ci-dessous, vous trouverez les étapes que vous devrez réaliser. N’hésitez pas à poser des questions si vous êtes bloqués. Pensez à bien mettre à profit les heures de cours et ne pensez pas que ce travail peut se réaliser facilement en un week-end.

Vous devez travailler par groupes de 4 (inscrivez les noms des membres du groupe et votre git sur ce wiki Cyberlearn). Vous serez évalués sur une présentation orale qui sera faite par un des membres du groupe tiré au hasard au moment de la présentation. Tous les membres du groupe auront la même note. Cette présentation durera environ 20min et sera suivie de 10min de questions. Votre code devra générer les graphiques que vous allez y présenter et sera donc implicitement noté. Je dois néanmoins pouvoir exécuter votre code à tout moment vous devrez donc fournir le git où il se trouve, ainsi que toutes les commandes pour générer les graphiques.

Fil conducteur

Votre seriez bien inspirés de suivre les points suivants.

  1. Dessinez un circuit RC (pensez à bien le décrire).
  2. A l’aide de l’équation de la conservation de l’énergie (\(V_\mathrm{in}(t)+V_R(t)+V_C(t)=0\)), dérivez une équation itérative pour l’évolution de la tension dans le condensateur. Indication: n’oubliez pas que \(I(t)=\Delta Q/\Delta t=(Q(t+\delta t)-Q(t)) / \delta t\) et que \(Q(t)=C\cdot V_C(t)\).
  3. Maintenant que vous avez obtenu une équation de la forme \(V_C(t+\delta t)=V_C(t)+\Delta t\cdot ...\) vous pouvez enfin implémenter votre simulateur en C (oui c’est obligatoire). Celui-ci doit pouvoir fonctionner avec une source de tension dépendante du temps. N’oubliez pas qu’en plus d’avoir cette équation itérative, vous devez imposer une source de tension et une condition initiale.
  4. Une fois votre simulateur écrit, vous devez le valider. Trouvez un moyen de valider votre simulateur sur deux cas simples. Indication: une validation visuelle, bien que pas très formelle est une première étape utile. Vous pouvez utiliser une librairie graphique telle que plplot par exemple, ou alors écrire les fichiers dans un fichier et les faire visualiser à l’aide d’autres outils, matplotlib par exemple. Une fois validée visuellement essayez de quantifier l’erreur que vous commettez en simulant le monde.
  5. Normalement votre simulateur dépend de valeur de \(\delta t\), \(R\) et de \(C\). Fixez des valeurs de \(R\), \(C\), et jouez avec une grande gamme de \(\delta t\) sur les cas de validation et regardez l’effet. Que voyez vous?
  6. A l’aide de votre simulateur, modélisez un filtre passe-bas (ou un intégrateur). Pour ce faire, il faut générer un signal haute fréquence (ici \(V_\mathrm{in}(t)\) est le signal) et essayez de le filtrer (\(V_C(t)\) est le signal filtré). Il faut donc bien comprendre ce qu’est un filtre passe bas, et quels sont les paramètres de votre simulateurs qui permettent de filtrer un signal.
  7. Pour un bonus: Faites de même pour un filtre passe-haut (ou un dérivateur). Pour ce faire, il faut bien comprendre ce qu’est un filtre passe-haut, et quels sont les paramètres de votre simulateurs qui permettent de filtrer un signal.

La présentation

Votre présentation doit contenir les éléments suivants.

  1. Une introduction présentant le cadre général du travail (pas “le professeur nous a demandé”, mais plutôt ce que vous essayez de faire).
  2. Une présentation de la théorie (la dérivation des équations à résoudre, la condition initiale).
  3. Une présentation de votre simulateur et sa validation.
  4. Une présentation des résultats concernant les filtres et comment utiliser votre simulateur pour les modéliser.
  5. Une conclusion qui rappelle ce que vous avez réalisé et les résultats obtenus.
  6. Une petite démonstration de l’exécution de votre code.

Avoir des slides pour soutenir votre propos et présenter des graphiques serait une bonne idée.

Remarques

Références


  1. Il est interdit d’utiliser ChatGPT (ou toute autre IA générative ou non). Il vous répondra des choses, mais vous n’aurez aucun moyen de vérifier si cela est correct, ou pas.↩︎