Banque PT Modélisation PT 2022Sujet, corrigé et rapport du jury
- Électronique à amplificateur opérationnel (ALI)
- Incertitudes de mesure
- Algorithmique (recherche séquentielle et dichotomique, complexité)
- Bases de données et langage SQL
Téléchargements
Présentation du sujet
Suivi de la consommation d'eau d'une habitation : mise en forme électronique et exploitation informatique des mesuresAfficher ou masquer la section
Présentation du sujet
Le sujet étudie le suivi automatisé de la consommation d'eau d'une habitation. La première partie porte sur un montage électronique à ALI destiné à mettre en forme puis compter les impulsions issues d'un capteur. La seconde partie, orientée informatique, traite du stockage des impulsions, du calcul des débits et volumes avec leurs incertitudes, de la transmission des mesures et de leur exploitation par des requêtes SQL.
- 1A. Généralités sur les ALIRégimes linéaire et saturé d'un ALI, montage suiveur, slew rate et amplificateur non inverseur.
- 2B. Compteur d'impulsionsMontage à ALI en régime saturé pour compter des impulsions, temps caractéristique et mesure de fréquence.
- 3C. Estimation des débits et volumesCalcul du débit à partir des timestamps d'impulsions et propagation des incertitudes.
- 4Suite de la partie informatiqueAlgorithmes de recherche, calcul numérique par la méthode des trapèzes, et requêtes SQL sur une base de données.
Ce qu'a observé le jury
5 erreurs relevéesConfusion entre saturation en tension et en courant · Application de formules sans réflexion · Utilisation du modulo non identifiéeAfficher ou masquer la section
Ce qu'a observé le jury
5 erreurs relevéesLe sujet contenait de nombreuses questions proches du cours, permettant aux candidats de niveau moyen de valoriser leurs connaissances, tandis que les questions plus délicates ont été peu abordées. La partie informatique a été globalement mieux réussie que la partie physique, où le jury relève d'importantes lacunes dans l'analyse des phénomènes électriques.
Les erreurs les plus sanctionnées
- 1Confusion entre saturation en tension et en courantQ5
De nombreux candidats confondent ces deux phénomènes lors de l'analyse du montage à ALI.
« De nombreuses confusions entre saturation en tension et saturation en courant. »
- 2Application de formules sans réflexionQ9
Le jury insiste sur la nécessité de raisonner sur le montage proposé plutôt que d'appliquer des formules sans réflexion préalable, source de nombreuses difficultés.
« Tendance »
- 3Utilisation du modulo non identifiéeQ41
Peu de candidats voient qu'il faut utiliser l'opérateur modulo pour cette question de programmation.
« Peu de candidats voient qu’il faut utiliser le modulo. »
- 4Question la plus difficile du sujet très peu réussieQ42
Cette question, jugée la plus difficile du sujet, n'a reçu que très peu de bonnes réponses, le problème n'étant la plupart du temps traité que partiellement.
« Sans doute la question la plus difficile. »
- 5Erreurs de syntaxe sur les chaînes de caractères
Des erreurs récurrentes apparaissent dans l'utilisation des apostrophes ou guillemets pour manipuler des chaînes de caractères en Python.
« chaine = ’chaine’+’0’ »
Ce qui a été bien réussi
- Le jury note des progrès dans l'écriture du code en partie informatique.
- Les candidats ayant choisi une recherche dichotomique à la question 27 trouvent généralement une complexité cohérente, signe d'une bonne connaissance des algorithmes de recherche.
Conseils du jury
- Raisonner sur le montage électronique proposé plutôt que d'appliquer des formules de façon automatique.
- Connaître les ordres de grandeur et les phénomènes expérimentaux classiques (slew rate, saturation, bande passante).
- Soigner la syntaxe du code Python, notamment la manipulation des chaînes de caractères et l'indentation.
- En SQL, bien distinguer l'opérateur logique AND d'une simple virgule dans la liste des colonnes sélectionnées.
Synthèse rédigée par WikiPrépa à partir du rapport officiel du jury (à télécharger en PDF). Les citations sont extraites du rapport.
Ces sujets peuvent vous intéresser
Lecture du sujet en ligne
L'énoncé complet, avec les formules et les figures, sans ouvrir le PDF.Afficher ou masquer la section
Lecture du sujet en ligne
Epreuve d'Informatique et Modélisation de Systèmes Physiques
L'usage de calculatrices est interdit.
AVERTISSEMENT
CONSIGNES:
- Composer lisiblement sur les copies avec un stylo à bille à encre foncée : bleue ou noire.
- L'usage de stylo à friction, stylo plume, stylo feutre, liquide de correction et dérouleur de ruban correcteur est interdit.
- Remplir sur chaque copie en MAJUSCULES toutes vos informations d'identification : nom, prénom, numéro inscription, date de naissance, le libellé du concours, le libellé de l'épreuve et la session.
- Une feuille, dont l'entête n'a pas été intégralement renseigné, ne sera pas prise en compte.
- Il est interdit aux candidats de signer leur composition ou d'y mettre un signe quelconque pouvant indiquer sa provenance.
Présentation de la problématique SUIVI DE LA CONSOMMATION D'EAU D'UNE HABITATION
1. Principe du suivi


2. Travail demandé
La première partie (durée conseillée : 1 h 30 ) porte sur l'étude d'un montage électronique, utilisant un amplificateur opérationnel, destiné à mettre en forme les impulsions avant comptage.
PREMIERE PARTIE COMPTEUR D'IMPULSIONS ANALOGIQUE
A. GENERALITES SUR LES ALI (15%)
- Représenter la tension de sortie en fonction de la tension différentielle d'entrée, en indiquant clairement les ordres de grandeur considérés (on indiquera la partie correspondant au régime linéaire et celle correspondant au régime saturé).
- On s'intéresse au montage représenté ci-dessous. Montrer que
V_s = V_e . Comment s'appelle ce montage ? Quel est son intérêt ? (on considérera le gain de l'ALI comme infini)
.jpg)
- On alimente ce montage avec en entrée la tension dont l'oscillogramme est donné ci-dessous. Les réglages sont
2 V/div et100μ s/div , quelles sont les caractéristiques de cette tension? Peut-on raisonnablement penser observer la même chose en sortie?

- Toutes choses égales par ailleurs, on augmente la fréquence et on observe en sortie la tension ci-dessous. Les réglages sont
2V/ div et1μs/ div . Quelle caractéristique de l'ALI est ainsi mise en évidence? Evaluer sa valeur numérique.
.jpg)
- On revient à la fréquence de la question 3 , et on ajoute une résistance de charge
R_0 = 50Ω entre la sortie et la masse. Les réglages sont2 V/div et100μ s/div . Quelle caractéristique de l'ALI est ainsi mise en évidence? Evaluer sa valeur numérique.

- Donner le schéma d'un montage amplificateur non inverseur utilisant un ALI et 2 résistances. Etablir l'expression du gain de ce montage.
- Proposer des valeurs pour les résistances pour avoir des gains de 10,100 et 1000 . Jusqu'à quelle valeur de gain peut-on aller avec un tel montage avec une tension d'entrée continue? Avec une tension d'entrée sinusoidale de fréquence 10 kHz ? (de simples ordres de grandeur sont attendus)
- On alimente ce montage, en prenant un gain de 10, avec la tension d'entrée de la question 3. Dessiner l'allure de la tension attendue en sortie.
B. COMPTEUR D'IMPULSIONS (25%)

9. Quelle est la valeur de
10. A
11. Que signifie très brève pour
12. Expliquer pourquoi le passage de
13. Montrer que, suite au basculement (on prend
14. A quel instant

15. Expliquer les deux phases observées dans l'évolution de cette tension (expliquer en particulier la valeur minimale prise par
16. Sur la même échelle de temps que l'enregistrement précédent, représenter l'évolution des tensions
17. Quelle condition doit respecter
18. Représenter sur un même graphe, sans échelle mais en respectant les conditions des questions 11 et 17 , les tensions
19. Donner l'expression de la valeur moyenne
20. Quel type de filtre pourrait-on utiliser en aval du montage précédent pour obtenir
21. On souhaite obtenir avec un voltmètre une tension directement proportionnelle à
SECONDE PARTIE EXPLOITATION INFORMATIQUE DES MESURES
C. ESTIMATION DES DEBITS ET VOLUMES (30%)
C.1. Justification du format des données
22. Estimer la plus petite valeur numérique que prend
23. Exprimer, en valeur absolue,
- les entiers peuvent prendre des valeurs comprises entre
− 2^(31) et2^(31) − 1 ; - les flottants sont au format simple précision de la norme IEEE 754, qui prévoit une mantisse codée sur 23 bits et un exposant codé sur 8 bits.
24. Justifier qu'il n'est pas possible de stocker directement les instants des impulsions dans le microcontrôleur avec la résolution demandée, que ce soit avec le stockage entier (en exprimant les instants en millisecondes) ou avec le stockage flottant.
C.2. Récupération des données
- on synchronise le microcontrôleur à l'aide d'une horloge extérieure : on repère un instant où le timestamp est un nombre entier de secondes, et on relève la valeur entière correspondante;
- on relève ensuite, à chaque impulsion, le nombre entier de millisecondes écoulées depuis la synchronisation.
1145
2948
6532
...
>>> f = open("log.txt", "r")
>>> lignes = f.readlines()
>>> f.close()
>>> print(lignes)
['1620115200\n', '1145\n', '2948\n', '6532\n']
25. À l'aide de l'exemple ci-dessus, écrire une fonction recup(nomFichier) qui prend pour argument une chaîne de caractères nomFichier donnant le nom du fichier texte contenant les instants stockés au format décrit dans cette partie, et renvoie une liste de flottants contenant les instants des impulsions exprimés en seconde.
C.3. Première reconstruction : débit constant par morceaux
26. Écrire une fonction debits1(limp,c) qui prend pour arguments la liste limp des instants des impulsions et un flottant c , et renvoie la liste des débits définis par l'équation (2).
- Écrire une fonction indice(limp, t) qui prend pour arguments la liste limp des instants
T_i des impulsions et un flottant t , tels que t est compris entre le premier et le dernier élément de limp (premier inclus, dernier exclu), et recherche l'entieri tel queT_i ≤ t < T_(i + 1) . On ne demande pas de vérifier la condition précédente (ce sera fait lors de l'appel de la fonction).
28. Écrire une fonction temporel (
29. Donner et justifier la complexité asymptotique de la fonction temporel en fonction du nombre
30. Justifier qu'il n'est pas possible de réduire la complexité tout en conservant l'appel à la fonction indice. Expliquer, en deux ou trois phrases éventuellement complétées par un schéma, comment passer en revue les éléments des deux listes pour minimiser le nombre d'opérations si l'on suppose que les deux tailles
31. Donner la relation de récurrence permettant d'exprimer, par la méthode des trapèzes,
32. Écrire une fonction volumes (lTemps,lQT,v0) qui prend pour arguments deux liste lTemps (instants de calcul) et 1QT (débits aux instants de 1Temps) et un flottant v0, et renvoie la liste des volumes consommés, calculés par la méthode des trapèzes. Le volume initial (avant le premier instant de 1 Temps) sera pris égal au paramètre v0.
33. Écrire une suite d'instructions appelant entre autres les fonctions précédentes de sorte à :
- placer le contenu du fichier 2021-01-31.txt dans une liste lImp;
- construire la liste des débits 1Q associés, en litres par seconde, si à chaque impulsion correspond 0,07 litre;
- générer une liste 1Temps de 1000 flottants régulièrement espacés, allant de la première à la dernière valeur de limp, tous deux inclus;
- construire la liste des débits 1QT (tirés de 1Q) aux instants de lTemps;
- en déduire la liste IVT des volumes exprimés en litres, toujours aux instants de ITemps, pour un volume initial nul.

.jpg)
34. Écrire une fonction debits2(Limp, c, seuil) prenant pour arguments la liste Limp des instants des impulsions et deux flottants c et seuil, qui renvoie un tuple contenant :
- la liste des instants des impulsions modifiés comme indiqué ci-dessus (l'argument Limp ne doit pas être modifié),
- et la liste des débits calculés comme indiqué ci-dessus.

D. TRANSMISSION DES DONNÉES ET CONSULTATION A DISTANCE (30%)
D.1. CHIFFREMENT ET DÉCHIFFREMENT DES DONNEES
- 6 a pour écriture binaire
(110)_2 ; - 3 a pour écriture binaire
(011)_2 ; - le OU exclusif bit à bit donne alors
1^∧0 (poids fort) puis1^∧1 puis0^∧1 (poids faible), soit(101)_2 , soit 5.
- Déterminer le résultat renvoyé par l'instruction
13^∧7 .
36. Écrire une fonction code1 (L, cle) prenant pour arguments une liste L d'entiers et un entier cle, et renvoyant la liste des éléments de L chiffrés à l'aide de cle.
37. Justifier que, si
possible d'identifier la clé puis d'en déduire la totalité du message. Pour y remédier, on se propose d'appliquer le chiffrement non pas à chaque élément de la liste (ce que l'on appelle le chiffrement par blocs) mais à la totalité des données mises bout à bout, en répétant pour cela la clé autant de fois que nécessaire (ce que l'on appelle le chiffrement par flux).
| 1100 | 0011 | 0101 | 1000 |
| 0100 | 1001 | 0010 | 0100 |
| 1000 | 1010 | 0111 | 1100 |
- la fonction bin permet de convertir un entier en binaire : bin(10) renvoie '0b1010', le préfixe '0b' indiquant une écriture binaire. On remarquera que l'écriture utilise le nombre minimal possible de bits, de sorte que le bit de poids fort est toujours 1;
- la fonction int permet de convertir une représentation binaire en entier, si l'on indique la base de numération (ici 2) en second argument : int('0b1010',2) et int('1010',2) renvoient tous deux 10.
38. Écrire une fonction bin64(n) prenant pour argument un entier positif n, et retournant une chaîne de caractères contenant son écriture binaire sur 64 bits (c'est-à-dire complétée par autant de zéros que nécessaire), sans le préfixe ' 0 b'. On utilisera la fonction bin.
39. Écrire une fonction bits(L) prenant pour argument une liste L d'entiers positifs, et retournant une chaîne de caractères constituée des écritures binaires des éléments de L sur 64 bits, concaténées les unes aux autres. On utilisera la fonction bin64.
40. Écrire une fonction entiers(flux) prenant pour argument une chaîne flux au format précédent (constituée des caractères ' 0 ' et ' 1 ' et de longueur multiple de 64), et renvoyant la liste des entiers dont les codages respectifs sur 64 bits se trouvent bout à bout dans la chaîne flux. On utilisera la fonction int.
41. Si l'on appelle
42. Écrire une fonction
43. À partir des résultats précédents et en vous aidant notamment de la réponse à la question 37, expliquer simplement comment il est possible de reconstruire la clé si l'on dispose d'un message et de son chiffrement par la fonction code1. Faire de même pour la fonction code2.
D.2. CONSULTATION DES DONNÉES
| Table eau (extrait) | ||
| id | date | conso |
| ... |
|
... |
| 36 | 2017-11-11 | 497 |
| 37 | 2017-11-12 | 156 |
| 38 | 2017-11-13 | 392 |
| 39 | 2017-11-14 | 274 |
| 40 | 2017-11-15 | 343 |
| 41 | 2017-11-16 | 296 |
| 42 | 2017-11-17 | 153 |
| ... |
|
|
- un identifiant associé à chaque mesure, de type entier,
- la date, au format aaaa-mm-jj, de type chaine de caractères,
- la consommation (en litres), de type flottant.
- Écrire en SQL les requêtes permettant d'obtenir :
- la consommation le 17 novembre 2017,
- les dates des consommations supérieures à 500 litres.
- L'opérateur LIKE permet de faire des comparaisons partielles entre chaînes de caractères, et en particulier de remplacer une partie d'une chaîne par un %, la comparaison étant vraie quel que soit la partie de chaîne comparée avec le % (par exemple 'informatique' LIKE 'info %' est vrai). Écrire les requêtes permettant d'obtenir :
- les consommations de tous les jours du mois de novembre 2017,
- les consommations totale et moyenne du mois de novembre 2017.
- On envisage maintenant de gérer les consommations de tout un ensemble d'habitations (par exemple, la mairie enregistre les informations de chaque logement de la commune). Expliquer comment organiser les données en utilisant, en plus de la table eau, une table habitations dont on précisera les attributs les plus importants. Quel attribut faudra-t-il ajouter à la table eau? Expliquer soigneusement quelle sera la condition de jointure utilisée pour faire des requêtes sur ces deux tables.
Fin de l'épreuve
Questions fréquentes
4 questionsSur quels chapitres porte le sujet de physique-modélisation PT 2022 ?Afficher ou masquer la section
Questions fréquentes
4 questionsSur quels chapitres porte le sujet de physique-modélisation PT 2022 ?
Le sujet porte sur un montage électronique à amplificateur opérationnel pour compter des impulsions, puis sur l'exploitation informatique des mesures : incertitudes, algorithmique et requêtes SQL sur une base de données.
Quelles erreurs le jury a-t-il le plus relevées sur ce sujet de physique-modélisation PT 2022 ?
Le jury relève une confusion entre saturation en tension et en courant, une application de formules sans réflexion préalable, l'oubli de l'opérateur modulo en programmation et des erreurs de syntaxe sur les chaînes de caractères.
Quelle partie du sujet PT modélisation 2022 est la mieux réussie ?
La partie informatique a été globalement mieux réussie que la partie physique, où le jury signale d'importantes lacunes dans l'analyse des phénomènes mis en jeu dans le circuit électrique.
Le sujet PT modélisation 2022 comporte-t-il des questions de base de données ?
Oui, la fin du sujet porte sur des requêtes SQL, notamment avec les opérateurs LIKE, SUM, AVG et des jointures, pour exploiter une base de données de mesures de consommation.
Pas de description pour le moment
