Compare commits
3 commits
6b6187965a
...
e61850fd55
Author | SHA1 | Date | |
---|---|---|---|
e61850fd55 | |||
7876c4685d | |||
302e4e4a65 |
3 changed files with 185 additions and 1 deletions
|
@ -11,7 +11,7 @@ jobs:
|
|||
- name: Initialize virtual environment
|
||||
run: /usr/bin/python -m venv .env
|
||||
- name: Install dependencies
|
||||
run: ./.env/bin/pip install mystmd
|
||||
run: ./.env/bin/pip install mystmd jupyterlab_myst ipykernel altair pandas
|
||||
- name: Build static HTML
|
||||
run: ./.env/bin/myst build --html
|
||||
- name: Copy files
|
109
cours/SIN/01-capteurs.md
Normal file
109
cours/SIN/01-capteurs.md
Normal file
|
@ -0,0 +1,109 @@
|
|||
---
|
||||
title: Les capteurs
|
||||
subject: Cours
|
||||
---
|
||||
|
||||
# Définition
|
||||
|
||||
:::{prf:definition} Capteur
|
||||
:nonumber: true
|
||||
Appareil sensible à un phénomène physique, qu’il transforme en un signal,
|
||||
généralement électrique, transmissible à distance.
|
||||
|
||||
[Dictionnaire de l’Académie française, 9e édition](https://dictionnaire-academie.fr/article/A9C0681)
|
||||
:::
|
||||
|
||||
En d'autres termes, un capteur permet de convertir une grandeur physique (telle
|
||||
que la pression, la température, le courant électrique, etc.) en signal plus
|
||||
facile à exploiter (généralement un signal électrique). Il réalise la fonction
|
||||
**Acquérir** de la chaîne d'information.
|
||||
|
||||
On distingue habituellement trois types de capteurs : les capteurs Tout ou Rien
|
||||
(TOR), les capteurs Analogiques et les capteurs Numériques.
|
||||
|
||||
# Les différents types de capteurs
|
||||
## Les capteurs Tout Ou Rien
|
||||
Les capteurs Tout ou Rien ne peuvent générer en sortie que deux valeurs : tout ou rien.
|
||||
Ils génèrent donc un signal dit **binaire**.
|
||||
Un interrupteur (@inter) ou un détecteur de mouvement PIR (@pir) sont des capteurs
|
||||
tout ou rien.
|
||||
|
||||
::::{figure}
|
||||
:label: tor
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3a/Switches-electrical.agr.jpg
|
||||
:label: inter
|
||||
|
||||
Interrupteur[^inter].
|
||||
|
||||
[^inter]: [en:User:ArnoldReinhold](https://commons.wikimedia.org/wiki/File:Switches-electrical.agr.jpg),
|
||||
[CC BY-SA 3.0](http://creativecommons.org/licenses/by-sa/3.0/), via Wikimedia Commons
|
||||
:::
|
||||
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/2/2e/Motion_detector.jpg
|
||||
:label: pir
|
||||
|
||||
Détecteur de mouvement PIR[^pir].
|
||||
|
||||
[^pir]: [CHG](https://commons.wikimedia.org/wiki/File:Motion_detector.jpg),
|
||||
Public domain, via Wikimedia Commons.
|
||||
:::
|
||||
|
||||
Exemples de capteurs tout ou rien
|
||||
::::
|
||||
|
||||
## Les capteurs analogiques
|
||||
Le signal de sortie est en relation directe avec la grandeur d'entrée
|
||||
(généralement proportionnelle)
|
||||
Le signal de sortie peut prendre différentes valeurs de manière continue,
|
||||
c'est un signal dit **analogique**.
|
||||
Une thermistance (@thermistance) ou une jauge de déformation (@jauge) sont des
|
||||
capteurs analogiques.
|
||||
|
||||
::::{figure}
|
||||
:label: analogique
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3b/NTC_bead.jpg
|
||||
:label: thermistance
|
||||
|
||||
Thermistance : résistance variant selon la température[^thermistance].
|
||||
|
||||
[^thermistance]: [Ansgar Hellwig](https://commons.wikimedia.org/wiki/File:NTC_bead.jpg),
|
||||
[CC BY-SA 2.0 DE](https://creativecommons.org/licenses/by-sa/2.0/de/deed.en),
|
||||
via Wikimedia Commons.
|
||||
:::
|
||||
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/0a/Unmounted_strain_gauge.jpg
|
||||
:label: jauge
|
||||
|
||||
Jauge de déformation : résistance variant selon son élongation[^jauge].
|
||||
|
||||
[^jauge]: [Pleriche](https://commons.wikimedia.org/wiki/File:Unmounted_strain_gauge.jpg),
|
||||
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons.
|
||||
:::
|
||||
|
||||
Exemples de capteurs analogiques.
|
||||
::::
|
||||
|
||||
## Les capteurs numériques
|
||||
Un capteur numérique génère un signal de sortie ne pouvant prendre qu'un certain nombre de valeur distincte, c'est à dire un signal **numérique**.
|
||||
Une caméra (@camera) ou un codeur absolu (@codeur) sont des capteurs numériques.
|
||||
|
||||
::::{figure}
|
||||
:label: numeriques
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/02/S4000_Image_Sensor_%28Colorful%29.jpg
|
||||
:label: camera
|
||||
|
||||
Caméra : pour chaque pixel, le signal peut prendre une valeur entière allant de 0 à 255[^camera].
|
||||
|
||||
[^camera]: [Glosome](https://commons.wikimedia.org/wiki/File:S4000_Image_Sensor_(Colorful).jpg), [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons
|
||||
:::
|
||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/a/a8/Gray_code_rotary_encoder_13-track_opened.jpg
|
||||
:label: codeur
|
||||
|
||||
Codeur absolu : le signal prend une valeur entière différente selon l'angle du disque[^codeur].
|
||||
|
||||
[^codeur]: [Mike1024](https://commons.wikimedia.org/wiki/File:Gray_code_rotary_encoder_13-track_opened.jpg),
|
||||
Public domain, via Wikimedia Commons
|
||||
:::
|
||||
|
||||
Exemples de capteurs numériques
|
||||
::::
|
75
cours/SIN/02-signaux.md
Normal file
75
cours/SIN/02-signaux.md
Normal file
|
@ -0,0 +1,75 @@
|
|||
---
|
||||
title: Les signaux
|
||||
subject: Cours
|
||||
kernelspec:
|
||||
name: python3
|
||||
display_name: Python 3
|
||||
---
|
||||
|
||||
# Définition
|
||||
|
||||
:::{prf:definition} Signal
|
||||
:nonumber: true
|
||||
Phénomène ou grandeur physique variables dans le temps, donnant une information
|
||||
sur l’état du système qui les produit et que peut détecter un capteur.
|
||||
|
||||
[Dictionnaire de l’Académie française, 9e édition](https://dictionnaire-academie.fr/article/A9S1603)
|
||||
:::
|
||||
|
||||
En d'autres termes, un signal est une grandeur physique (tension, courant,
|
||||
pression, etc.) variable qui transporte une information.
|
||||
|
||||
Les flux de la chaîne d'information sont des signaux. On retrouve généralement
|
||||
en sortie du bloc _Acquérir_ un signal électrique.
|
||||
|
||||
# Les différents types de signaux
|
||||
|
||||
## Les signaux logiques
|
||||
Un signal logique ne peut prendre que deux valeurs : un niveau **haut** ("High")
|
||||
et un niveau **bas** ("Low").
|
||||
|
||||
````{figure}
|
||||
:label: logique
|
||||
```{code-cell} python
|
||||
:tags: [remove-input]
|
||||
import altair as alt
|
||||
import pandas as pd
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
import random
|
||||
from scipy.interpolate import CubicSpline
|
||||
|
||||
random.seed(25)
|
||||
|
||||
n = 16
|
||||
t = range(n+1)
|
||||
s = random.choices([0, 1], k=n)
|
||||
s += s[-1:]
|
||||
data = pd.DataFrame({
|
||||
"t": t,
|
||||
"s": s,
|
||||
})
|
||||
alt.Chart(
|
||||
data
|
||||
).mark_line(
|
||||
interpolate="step-after"
|
||||
).encode(
|
||||
alt.X("t:Q").axis(title="Temps (s)").scale(domain=(0,n)),
|
||||
alt.Y("s:Q", axis=alt.Axis(title="Signal logique", tickMinStep=1.0)).scale(domain=(0,1)),
|
||||
).properties(
|
||||
width="container",
|
||||
)
|
||||
|
||||
```
|
||||
Exemple de signal logique
|
||||
````
|
||||
|
||||
Le signal logique en @logique est par exemple à l'état haut entre 1 s et 3 s,
|
||||
et à l'état bas entre 8 s et 11 s.
|
||||
Lorsque le signal passe de l'état bas à l'état haut (comme à 1 s),
|
||||
on parle de **front montant**.
|
||||
Dans le cas contraire (comme à 3 s), on parle de **front descendant**.
|
||||
|
||||
## Les signaux analogiques
|
||||
|
||||
Un signal analogique est un signal qui peut prendre un ensemble continu de valeurs.
|
Loading…
Add table
Reference in a new issue