Cours:Elen4 TNS : Différence entre versions
(→TP) |
(→Gestionnaire de projets Pixi) |
||
| (53 révisions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
| − | + | <center> | |
| + | '''<big>S4 - ESE - Traitement numérique du signal</big>''' | ||
| + | </center> | ||
| − | == Contenu == | + | == Description générale == |
| + | |||
| + | === Contenu (Programme National) === | ||
Filtrage numérique : | Filtrage numérique : | ||
| Ligne 11 : | Ligne 15 : | ||
* Implantation d’un traitement numérique sur cible : filtrage numérique simple, asservissement numérique simple (robot mobile, drone...), traitement de données. | * Implantation d’un traitement numérique sur cible : filtrage numérique simple, asservissement numérique simple (robot mobile, drone...), traitement de données. | ||
| − | == Volumes horaire == | + | === Volumes horaire === |
* CM : 4 séances d'1,5h | * CM : 4 séances d'1,5h | ||
| − | * TD : 6 séances d'1,5h + | + | * TD : 6 séances d'1,5h + une évaluation d'1,5h |
| − | * TP : 6 séances de 3h + | + | * TP : 6 séances de 3h + une évaluation de 2h |
| − | == Évaluations == | + | === Évaluations === |
| − | * évaluation sur table (derniere séance de CM/TD - 1,5h) | + | * une évaluation sur table (derniere séance de CM/TD - 1,5h) |
| − | * évaluation pratique (dernière séance de TP - 2h) | + | * une évaluation pratique (dernière séance de TP - 2h) |
| − | = | + | == Cours Magistraux == |
| − | * Signaux et systèmes numériques | + | Contenu : |
| + | * Signaux et systèmes numériques | ||
* Filtres numériques | * Filtres numériques | ||
* Quelques filtres RIF | * Quelques filtres RIF | ||
* Synthèse de filtres numériques | * Synthèse de filtres numériques | ||
| − | * PID numérique | + | * PID numérique |
| + | * Élements sur le traitement des images numériques | ||
| + | * Élements sur le temps-fréquence | ||
| + | |||
| + | <br /> | ||
| + | Documents : | ||
| + | * [[Media:TNS-Support.pdf|Support de cours en pdf]] | ||
| + | * [[Media:TNS-diapos.pdf|Diapositives de cours en pdf]] | ||
| + | |||
| + | == Travaux Dirigés == | ||
| + | |||
| + | Textes en pdf : | ||
| + | |||
| + | * [[Media:TNS-td1.FxTransfert.pdf|TD1 : Fonctions de transfert]] | ||
| + | * [[Media:TNS-td2.Stabilité.pdf|TD2 : Causabilité et stabilité]] | ||
| + | * [[Media:TNS-td3.RepFreq.pdf|TD3 : Réponses fréquentielles]] | ||
| + | * [[Media:TNS-td4.Facteurs1et2.pdf|TD4 : Facteurs du premier et du second ordre]] | ||
| + | * [[Media:TNS-td5-Structures.pdf|TD5 : Structures de réalisation]] | ||
| + | * [[Media:TNS-td6-ConceptionFiltresRII.pdf|TD6 : Conception de filtres récursifs]] | ||
| + | * Évaluation | ||
| + | |||
| + | == Travaux Pratiques == | ||
| + | |||
| + | Les TP utiliseront : | ||
| + | * Gnuradio (cf premier TP) | ||
| + | * Python, que nous utiliserons en installation locale avec [https://pixi.prefix.dev/ Pixi], en suivant ce guide rapide : [[Cours:Elen4_TNS#Travail avec Python et Pixi|Travail avec Python et Pixi]] | ||
| + | <!--* et occasionnellement des cartes Arduinio ou Rpi Pico.--> | ||
| + | <br/> | ||
| + | Liste des TP : | ||
| + | * [[Cours:Elen4_TNS_TP_Gnuradio|TP1 - Fondamentaux Gnuradio]] | ||
| + | * [[Cours:Elen4_TNS_TP_FxTransfertStabilité|TP2 - Fonction de transfert et stabilité]] | ||
| + | * [[Cours:Elen4_TNS_TP_Implementations|TP3 - Implémentations de filtres]] | ||
| + | * [[Cours:Elen4_TNS_TP_TraitImage|TP4 - Traitements d'images numériques]] | ||
| + | * [[Cours:Elen4_TNS_TP_TraitAudioEtDemodulation| TP5 - Traitements audio et démodulation]] | ||
| + | * [[Cours:Elen4_TNS_TP_ TpsReel |TP6 - Temps réel - Codage d'un bloc en Python]] | ||
| + | * Évaluation | ||
| + | |||
| + | == Évaluation de Travaux Pratiques == | ||
| + | |||
| + | Énoncés : | ||
| + | * [[Cours:Elen4_TNS_TP_eval1|Sujet n°1]] | ||
| + | |||
| + | Documents autorisés : | ||
| + | * accès au wiki | ||
| + | * documents de cours | ||
| + | * notes personnelles | ||
| + | |||
| + | == Travail avec Python et Pixi == | ||
| + | |||
| + | === Gestionnaire de projets Pixi === | ||
| + | |||
| + | [https://pixi.prefix.dev/ Pixi] est un gestionnaire de projets Python permettant une reproductibilité grace une installation purement locale à l'utilisateur (pas d'utilisation d'éléments au niveau système). Dans le dossier du projet, on trouve principalement : | ||
| + | * un fichier <code>pixi.toml</code> décrivant les dépendances du projet (souvent de façon souple) | ||
| + | * les fichiers du projets | ||
| + | * un dossier <code>.pixi</code> contenant les binaires Python et les dépendances nécessaires, ainsi qu'un fichier </code>pixi.lock</code> contenant description complète et déterministe de l'environnement installé. | ||
| + | |||
| + | Voici un guide : | ||
| + | # Installer pixi, en suivant l'indication décrite dans https://pixi.prefix.dev/latest/installation/<br/>''Note : l'installation est locale à l'utilisateur, elle ne sera nécessaire qu'une seule fois pour le semestre''<br/> | ||
| + | |||
| + | # Dans un terminal, instancier le projet (voir [https://pixi.prefix.dev/latest/first_workspace/ ici]) <source> | ||
| + | > pixi init nomduprojet | ||
| + | </source> | ||
| + | # Vvous positionner dans ce projet <source> | ||
| + | > cd nomduprojet | ||
| + | </source> | ||
| + | # Ajouter les dépendances nécessaire pour ce module <source> | ||
| + | > pixi add numpy scipy matplotlib | ||
| + | </source> ''Incidemment, ces dépendances nécessitent python qui sera installé automatiquement (à l'aide du dépot conda). Vous pouvez afficher le fichier pixi.toml pour observer ces dépendances.'' | ||
| + | # Et ajouter les dépendances nécessaire pour travailler avec [https://jupyter.org/ Jupyter] <source> | ||
| + | > pixi add jupyterlab pixi-kernel | ||
| + | </source> | ||
| + | # Travailler avec le workspace ainsi installé : | ||
| + | ## en lançant l'interpréteur python, <code> pixi run python</code> | ||
| + | ## ou en executant un fichier python, <code> pixi run python monscript.py</code> | ||
| + | ## ou en lançant un serveur jupyter, <code> pixi run jupyter lab</code> | ||
| − | |||
| − | + | '''Important''' : | |
| − | + | * Il n'est normalement pas nécessaire d'éditer le fichier <code>pixi.toml</code> | |
| − | + | * Il n'est '''jamais''' nécessaire d'éditer le fichier <code>pixi.lock</code> | |
| − | + | * Pour distribuer votre projet, seul le fichier <code>pixi.toml</code> et les fichiers sources sont utiles. | |
| − | |||
| − | |||
| − | |||
| − | = | + | === Packages Python === |
| − | + | * [https://numpy.org/ Numpy] pour la manipulation des tableaux de valeurs (ie les signaux) | |
| − | + | * [https://scipy.org/ Scipy], en particulier [https://docs.scipy.org/doc/scipy/reference/signal.html le package Signal] pour les traitements et les filtrages, | |
| − | + | * [https://matplotlib.org/ Matplotlib] pour les graphes | |
| − | |||
| − | |||
| − | |||
| − | |||
Version actuelle datée du 11 mai 2026 à 11:44
S4 - ESE - Traitement numérique du signal
Sommaire
Description générale
Contenu (Programme National)
Filtrage numérique :
- Équation de récurrence, opérations élémentaires, fonction de transfert en Z, passage à un programme informatique;
- Filtre numérique : filtres récursif et non récursif, réponses temporelles (impulsionnelle, indicielle, signal quelconque), réponse fréquentielle, stabilité;
- Synthèse de filtres numériques simples (approximation d’Euler);
- Utilisation d’outils de synthèse des filtres numériques RIF et RII (Matlab, Labview, GNU radio...) et comparaison des performances des filtres RIF et RII;
- Présentation des différentes structures des filtres numériques (direct, cascade, parallèle);
- Implantation d’un traitement numérique sur cible : filtrage numérique simple, asservissement numérique simple (robot mobile, drone...), traitement de données.
Volumes horaire
- CM : 4 séances d'1,5h
- TD : 6 séances d'1,5h + une évaluation d'1,5h
- TP : 6 séances de 3h + une évaluation de 2h
Évaluations
- une évaluation sur table (derniere séance de CM/TD - 1,5h)
- une évaluation pratique (dernière séance de TP - 2h)
Cours Magistraux
Contenu :
- Signaux et systèmes numériques
- Filtres numériques
- Quelques filtres RIF
- Synthèse de filtres numériques
- PID numérique
- Élements sur le traitement des images numériques
- Élements sur le temps-fréquence
Documents :
Travaux Dirigés
Textes en pdf :
- TD1 : Fonctions de transfert
- TD2 : Causabilité et stabilité
- TD3 : Réponses fréquentielles
- TD4 : Facteurs du premier et du second ordre
- TD5 : Structures de réalisation
- TD6 : Conception de filtres récursifs
- Évaluation
Travaux Pratiques
Les TP utiliseront :
- Gnuradio (cf premier TP)
- Python, que nous utiliserons en installation locale avec Pixi, en suivant ce guide rapide : Travail avec Python et Pixi
Liste des TP :
- TP1 - Fondamentaux Gnuradio
- TP2 - Fonction de transfert et stabilité
- TP3 - Implémentations de filtres
- TP4 - Traitements d'images numériques
- TP5 - Traitements audio et démodulation
- TP6 - Temps réel - Codage d'un bloc en Python
- Évaluation
Évaluation de Travaux Pratiques
Énoncés :
Documents autorisés :
- accès au wiki
- documents de cours
- notes personnelles
Travail avec Python et Pixi
Gestionnaire de projets Pixi
Pixi est un gestionnaire de projets Python permettant une reproductibilité grace une installation purement locale à l'utilisateur (pas d'utilisation d'éléments au niveau système). Dans le dossier du projet, on trouve principalement :
- un fichier
pixi.tomldécrivant les dépendances du projet (souvent de façon souple) - les fichiers du projets
- un dossier
.pixicontenant les binaires Python et les dépendances nécessaires, ainsi qu'un fichier </code>pixi.lock</code> contenant description complète et déterministe de l'environnement installé.
Voici un guide :
- Installer pixi, en suivant l'indication décrite dans https://pixi.prefix.dev/latest/installation/
Note : l'installation est locale à l'utilisateur, elle ne sera nécessaire qu'une seule fois pour le semestre
- Dans un terminal, instancier le projet (voir ici)
> pixi init nomduprojet
- Vvous positionner dans ce projet
> cd nomduprojet
- Ajouter les dépendances nécessaire pour ce module Incidemment, ces dépendances nécessitent python qui sera installé automatiquement (à l'aide du dépot conda). Vous pouvez afficher le fichier pixi.toml pour observer ces dépendances.
> pixi add numpy scipy matplotlib
- Et ajouter les dépendances nécessaire pour travailler avec Jupyter
> pixi add jupyterlab pixi-kernel
- Travailler avec le workspace ainsi installé :
- en lançant l'interpréteur python,
pixi run python - ou en executant un fichier python,
pixi run python monscript.py - ou en lançant un serveur jupyter,
pixi run jupyter lab
- en lançant l'interpréteur python,
Important :
- Il n'est normalement pas nécessaire d'éditer le fichier
pixi.toml - Il n'est jamais nécessaire d'éditer le fichier
pixi.lock - Pour distribuer votre projet, seul le fichier
pixi.tomlet les fichiers sources sont utiles.
Packages Python
- Numpy pour la manipulation des tableaux de valeurs (ie les signaux)
- Scipy, en particulier le package Signal pour les traitements et les filtrages,
- Matplotlib pour les graphes