Compare commits
2 commits
0240949bc6
...
df56660eb0
Author | SHA1 | Date | |
---|---|---|---|
df56660eb0 | |||
4b03461d1f |
9 changed files with 44 additions and 35 deletions
|
@ -12,6 +12,10 @@ jobs:
|
||||||
run: /usr/bin/python -m venv .venv
|
run: /usr/bin/python -m venv .venv
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: ./.venv/bin/pip install -r requirements.txt
|
run: ./.venv/bin/pip install -r requirements.txt
|
||||||
|
- name: Build PDF exports
|
||||||
|
run: |
|
||||||
|
. .venv/bin/activate
|
||||||
|
myst build --execute --pdf
|
||||||
- name: Build static HTML
|
- name: Build static HTML
|
||||||
run: |
|
run: |
|
||||||
. .venv/bin/activate
|
. .venv/bin/activate
|
||||||
|
|
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[submodule "courstex"]
|
||||||
|
path = courstex
|
||||||
|
url = https://git.edgarpierre.fr/edpibu/courstex.git
|
|
@ -1,6 +1,9 @@
|
||||||
---
|
---
|
||||||
title: Les capteurs
|
title: Les capteurs
|
||||||
subject: Cours
|
subject: Cours
|
||||||
|
export:
|
||||||
|
- format: pdf
|
||||||
|
template: courstex
|
||||||
---
|
---
|
||||||
|
|
||||||
# Définition
|
# Définition
|
||||||
|
@ -28,10 +31,9 @@ Ils génèrent donc un signal dit **binaire**.
|
||||||
Un interrupteur (@inter) ou un détecteur de mouvement PIR (@pir) sont des capteurs
|
Un interrupteur (@inter) ou un détecteur de mouvement PIR (@pir) sont des capteurs
|
||||||
tout ou rien.
|
tout ou rien.
|
||||||
|
|
||||||
::::{figure}
|
|
||||||
:label: fig:capteur-tor
|
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3a/Switches-electrical.agr.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3a/Switches-electrical.agr.jpg
|
||||||
:label: inter
|
:label: inter
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Interrupteur[^inter].
|
Interrupteur[^inter].
|
||||||
|
|
||||||
|
@ -41,6 +43,7 @@ Interrupteur[^inter].
|
||||||
|
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/2/2e/Motion_detector.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/2/2e/Motion_detector.jpg
|
||||||
:label: pir
|
:label: pir
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Détecteur de mouvement PIR[^pir].
|
Détecteur de mouvement PIR[^pir].
|
||||||
|
|
||||||
|
@ -48,9 +51,6 @@ Détecteur de mouvement PIR[^pir].
|
||||||
Public domain, via Wikimedia Commons.
|
Public domain, via Wikimedia Commons.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Exemples de capteurs tout ou rien
|
|
||||||
::::
|
|
||||||
|
|
||||||
## Les capteurs analogiques
|
## Les capteurs analogiques
|
||||||
Le signal de sortie est en relation directe avec la grandeur d'entrée
|
Le signal de sortie est en relation directe avec la grandeur d'entrée
|
||||||
(généralement proportionnelle)
|
(généralement proportionnelle)
|
||||||
|
@ -59,10 +59,9 @@ c'est un signal dit **analogique**.
|
||||||
Une thermistance (@thermistance) ou une jauge de déformation (@jauge) sont des
|
Une thermistance (@thermistance) ou une jauge de déformation (@jauge) sont des
|
||||||
capteurs analogiques.
|
capteurs analogiques.
|
||||||
|
|
||||||
::::{figure}
|
|
||||||
:label: fig:capteur-analogique
|
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3b/NTC_bead.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/3/3b/NTC_bead.jpg
|
||||||
:label: thermistance
|
:label: thermistance
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Thermistance : résistance variant selon la température[^thermistance].
|
Thermistance : résistance variant selon la température[^thermistance].
|
||||||
|
|
||||||
|
@ -73,6 +72,7 @@ via Wikimedia Commons.
|
||||||
|
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/0a/Unmounted_strain_gauge.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/0a/Unmounted_strain_gauge.jpg
|
||||||
:label: jauge
|
:label: jauge
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Jauge de déformation : résistance variant selon son élongation[^jauge].
|
Jauge de déformation : résistance variant selon son élongation[^jauge].
|
||||||
|
|
||||||
|
@ -80,17 +80,13 @@ Jauge de déformation : résistance variant selon son élongation[^jauge].
|
||||||
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons.
|
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Exemples de capteurs analogiques.
|
|
||||||
::::
|
|
||||||
|
|
||||||
## Les capteurs numériques
|
## 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**.
|
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.
|
Une caméra (@camera) ou un codeur absolu (@codeur) sont des capteurs numériques.
|
||||||
|
|
||||||
::::{figure}
|
|
||||||
:label: fig:capteur-numerique
|
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/02/S4000_Image_Sensor_%28Colorful%29.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/0/02/S4000_Image_Sensor_%28Colorful%29.jpg
|
||||||
:label: camera
|
:label: camera
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Caméra : pour chaque pixel, le signal peut prendre une valeur entière allant de 0 à 255[^camera].
|
Caméra : pour chaque pixel, le signal peut prendre une valeur entière allant de 0 à 255[^camera].
|
||||||
|
|
||||||
|
@ -98,12 +94,10 @@ Caméra : pour chaque pixel, le signal peut prendre une valeur entière allant d
|
||||||
:::
|
:::
|
||||||
:::{figure} https://upload.wikimedia.org/wikipedia/commons/a/a8/Gray_code_rotary_encoder_13-track_opened.jpg
|
:::{figure} https://upload.wikimedia.org/wikipedia/commons/a/a8/Gray_code_rotary_encoder_13-track_opened.jpg
|
||||||
:label: codeur
|
:label: codeur
|
||||||
|
:width: 50%
|
||||||
|
|
||||||
Codeur absolu : le signal prend une valeur entière différente selon l'angle du disque[^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),
|
[^codeur]: [Mike1024](https://commons.wikimedia.org/wiki/File:Gray_code_rotary_encoder_13-track_opened.jpg),
|
||||||
Public domain, via Wikimedia Commons
|
Public domain, via Wikimedia Commons
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Exemples de capteurs numériques
|
|
||||||
::::
|
|
|
@ -1,6 +1,9 @@
|
||||||
---
|
---
|
||||||
title: Les signaux
|
title: Les signaux
|
||||||
subject: Cours
|
subject: Cours
|
||||||
|
export:
|
||||||
|
- format: pdf
|
||||||
|
template: courstex
|
||||||
kernelspec:
|
kernelspec:
|
||||||
name: python3
|
name: python3
|
||||||
display_name: Python 3
|
display_name: Python 3
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
---
|
---
|
||||||
title: Le CAN
|
title: Le CAN
|
||||||
subject: Cours
|
subject: Cours
|
||||||
|
export:
|
||||||
|
- format: pdf
|
||||||
|
template: courstex
|
||||||
kernelspec:
|
kernelspec:
|
||||||
name: python3
|
name: python3
|
||||||
display_name: Python 3
|
display_name: Python 3
|
||||||
|
@ -33,9 +36,9 @@ On donne en @fig:exemple-can l'exemple d'un CAN de tension de référence 5 V fo
|
||||||
|
|
||||||
La **caractéristique** du CAN est la courbe représentant la valeur numérique en sortie en fonction de la valeur analogique en entrée (@fig:carac-can).
|
La **caractéristique** du CAN est la courbe représentant la valeur numérique en sortie en fonction de la valeur analogique en entrée (@fig:carac-can).
|
||||||
|
|
||||||
````{figure}
|
::::{figure}
|
||||||
:label: fig:exemple-can
|
:label: fig:exemple-can
|
||||||
```{code-cell} python
|
:::{code-cell} python
|
||||||
:tags: [remove-input]
|
:tags: [remove-input]
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
from matplotlib import ticker
|
from matplotlib import ticker
|
||||||
|
@ -94,14 +97,14 @@ arr2 = ax2.annotate("", xy=(0.5, 0), xytext=(0.5, 1), arrowprops=dict(arrowstyle
|
||||||
ax2.annotate("$q$", (1, 0.5), xycoords=arr2, ha="left", va="center")
|
ax2.annotate("$q$", (1, 0.5), xycoords=arr2, ha="left", va="center")
|
||||||
|
|
||||||
arr3 = ax2.annotate("", xy=(1, 0), xytext=(1, 8), arrowprops=dict(arrowstyle="<->"))
|
arr3 = ax2.annotate("", xy=(1, 0), xytext=(1, 8), arrowprops=dict(arrowstyle="<->"))
|
||||||
ax2.annotate("$V_{pe}$", (1, 0.5), xycoords=arr3, ha="left", va="center")
|
ax2.annotate("$V_{pe}$", (1, 0.5), xycoords=arr3, ha="left", va="center");
|
||||||
```
|
:::
|
||||||
Signal analogique et signal numérisé.
|
Signal analogique et signal numérisé.
|
||||||
````
|
::::
|
||||||
|
|
||||||
````{figure}
|
::::{figure}
|
||||||
:label: fig:carac-can
|
:label: fig:carac-can
|
||||||
```{code-cell} python
|
:::{code-cell} python
|
||||||
:tags: [remove-input]
|
:tags: [remove-input]
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
from matplotlib import ticker
|
from matplotlib import ticker
|
||||||
|
@ -116,15 +119,12 @@ fig, ax = plt.subplots()
|
||||||
ax.stairs(s_n, s_a, color="C1", lw=3, baseline=None)
|
ax.stairs(s_n, s_a, color="C1", lw=3, baseline=None)
|
||||||
|
|
||||||
ax.set(
|
ax.set(
|
||||||
xlim=(0, 5),
|
|
||||||
ylim=(-1, N),
|
|
||||||
yticks=s_n,
|
yticks=s_n,
|
||||||
xlabel="Signal analogique (V)",
|
xlabel="Signal analogique (V)",
|
||||||
ylabel="Signal numérique",
|
ylabel="Signal numérique",
|
||||||
)
|
)
|
||||||
ax.set_xticks(s_a, [f"{v:.3f}" for v in s_a], rotation=45, ha="right", rotation_mode="anchor")
|
ax.set_xticks(s_a, [f"{v:.3f}" for v in s_a], rotation=45, ha="right", rotation_mode="anchor")
|
||||||
ax.set_aspect(5/8, 'box')
|
ax.set_aspect(5/8, "datalim")
|
||||||
|
|
||||||
arr4 = ax.annotate(
|
arr4 = ax.annotate(
|
||||||
"", xy=(s_a[0], 0), xytext=(s_a[1], 0), arrowprops=dict(arrowstyle="<->")
|
"", xy=(s_a[0], 0), xytext=(s_a[1], 0), arrowprops=dict(arrowstyle="<->")
|
||||||
)
|
)
|
||||||
|
@ -133,7 +133,7 @@ ax.annotate("$q$", (0.5, 1), xycoords=arr4, ha="center", va="bottom")
|
||||||
arr5 = ax.annotate(
|
arr5 = ax.annotate(
|
||||||
"", xy=(s_a[0], 1.5), xytext=(s_a[-1], 1.5), arrowprops=dict(arrowstyle="<->")
|
"", xy=(s_a[0], 1.5), xytext=(s_a[-1], 1.5), arrowprops=dict(arrowstyle="<->")
|
||||||
)
|
)
|
||||||
ax.annotate("$V_{pe}$", (0.5, 1), xycoords=arr5, ha="center", va="bottom")
|
ax.annotate("$V_{pe}$", (0.5, 1), xycoords=arr5, ha="center", va="bottom");
|
||||||
```
|
:::
|
||||||
Caractéristique du CAN.
|
Caractéristique du CAN.
|
||||||
````
|
::::
|
1
courstex
Submodule
1
courstex
Submodule
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit d040c12b630182d5b127a9123a0cfa617d9a0016
|
8
myst.yml
8
myst.yml
|
@ -16,13 +16,11 @@ project:
|
||||||
country: France
|
country: France
|
||||||
url: https://lyceedupaysdesoule.fr
|
url: https://lyceedupaysdesoule.fr
|
||||||
license: CC-BY-NC-SA-4.0
|
license: CC-BY-NC-SA-4.0
|
||||||
exclude: README.md
|
exclude:
|
||||||
|
- README.md
|
||||||
|
- courstex
|
||||||
numbering:
|
numbering:
|
||||||
headings: true
|
headings: true
|
||||||
settings:
|
|
||||||
output_stderr: remove-error
|
|
||||||
output_stdout: remove
|
|
||||||
output_matplotlib_strings: remove
|
|
||||||
site:
|
site:
|
||||||
template: book-theme
|
template: book-theme
|
||||||
options:
|
options:
|
||||||
|
|
|
@ -6,6 +6,9 @@ abstract: |
|
||||||
L'objectif de cette procédure est de visualiser un modèle 3D réalisé avec
|
L'objectif de cette procédure est de visualiser un modèle 3D réalisé avec
|
||||||
Solidworks en réalité augmentée avec l'application [Caddy](https://www.heycaddy.net/)
|
Solidworks en réalité augmentée avec l'application [Caddy](https://www.heycaddy.net/)
|
||||||
sur Meta Quest 3.
|
sur Meta Quest 3.
|
||||||
|
export:
|
||||||
|
- format: pdf
|
||||||
|
template: courstex
|
||||||
---
|
---
|
||||||
|
|
||||||
# Export au format IGES
|
# Export au format IGES
|
||||||
|
|
|
@ -5,6 +5,9 @@ subtitle: Découper ou graver une pièce
|
||||||
abstract: |
|
abstract: |
|
||||||
L'objectif de cette procédure est de découper et graver une pièce dans une
|
L'objectif de cette procédure est de découper et graver une pièce dans une
|
||||||
plaque à l'aide de la découpe laser JAMP78 JA50.
|
plaque à l'aide de la découpe laser JAMP78 JA50.
|
||||||
|
export:
|
||||||
|
- format: pdf
|
||||||
|
template: courstex
|
||||||
---
|
---
|
||||||
|
|
||||||
# Import dans RdCAM
|
# Import dans RdCAM
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue