2022-2023/SNT/05_Informatique_embarque_et_objets_connectes/exercises.tex
Bertrand Benjamin 3176127028
All checks were successful
continuous-integration/drone/push Build is passing
Feat(SNT): ajoute des exercices sur le microbit
2023-05-15 09:47:17 +02:00

119 lines
5.9 KiB
TeX

\begin{exercise}[subtitle={Découverte du Microbit}, step={1}, origin={Ma tête}, topics={ Informatique embarqué et objets connectés }, tags={ Python, Microbit }]
Ci-dessous, vous avez une image représentant la carte Micro:bit.
\begin{center}
\includegraphics[scale=0.6]{./fig/micro-bit}
\end{center}
\begin{enumerate}
\item Classer les éléments suivants dans les trois catégories (capteurs, actionneurs et transmetteurs)
\begin{multicols}{2}
\begin{itemize}
\item Capteurs de lumière
\item Broches de connexion (pin ou GPIO)
\item Capteurs de température
\item Une boussole
\item Capteurs de mouvements (accéléromètre et boussole)
\item Interface USB
\item 25 LEDs programmables individuellement
\item 2 boutons A et B
\item Communication sans fil, via Radio et Bluetooth
\end{itemize}
\end{multicols}
\item Repérer sur la carte le éléments précédemment listé.
\item Imaginer 3 utilisations possibles de cette carte pour faire des objets connectés.
\end{enumerate}
\end{exercise}
\begin{exercise}[subtitle={Matrice Led}, step={2}, origin={Ma tête}, topics={ Informatique embarqué et objets connectés }, tags={ Python, Programmation, Architecture }]
Dans cet exercice, vous apprendrez à utiliser la matrice de led.
Page de la documentation officiel traitant des images :
\begin{center}
\url{https://microbit-micropython.readthedocs.io/fr/latest/tutorials/images.html}
\end{center}
La documentation nous invite à essayer ce premier programme
\begin{center}
\begin{minipage}{0.5\linewidth}
\inputminted[bgcolor=base3,linenos]{python}{./scripts/02_image.py}
\end{minipage}
\end{center}
\begin{enumerate}
\item Écrire le programme proposé et le déposer sur la carte pour voir le dessin affiché.
\item Affichage d'images pré-dessinées
\begin{enumerate}
\item En vous basant sur la documentation, modifier le programme précédent pour afficher un visage de colère.
\item Pour afficher plusieurs images les unes à la suite des autres, il faut faire une pause entre.
\begin{center}
\begin{minipage}{0.5\linewidth}
\inputminted[bgcolor=base3,linenos]{python}{./scripts/02_image_time.py}
\end{minipage}
\end{center}
Modifier le programme précédent pour faire tourner une aiguille comme une montre.
\end{enumerate}
\item Affichage d'images personnelles
\begin{enumerate}
\item Lire la suite de la documentation pour afficher des images personnelles.
\item Choisir deux images de cette banque et les afficher sur la matrice de led.
\begin{center}
\includegraphics[scale=0.8, angle=90]{./fig/5x5}
\end{center}
\end{enumerate}
\item Affichage de texte: La méthode \texttt{display.scroll(....)} permet de faire défilé du texte.
Faire défiler votre nom sur la matrice.
\end{enumerate}
\end{exercise}
\begin{exercise}[subtitle={Animations}, step={3}, origin={Ma tête}, topics={ Informatique embarqué et objets connectés }, tags={ Python, Programmation, Architecture }]
Dans cet exercice, on propose de faire des animations sur la matrice de leds.
Par exemple faire déplacer un point sur la matrice.
\begin{center}
\begin{minipage}{0.7\linewidth}
\inputminted[bgcolor=base3,linenos]{python}{./scripts/04_for_led.py}
\end{minipage}
\end{center}
Modifier le programme précédent pour faire les animations suivantes:
\begin{enumerate}
\item Éteindre la led allumée avant d'activer la suivante pour donner l'impression que c'est un point qui bouge.
\item Faire clignoter deux fois chaque led de la première ligne avant de passer à la suivante.
\item Faire parcourir au point toute la matrice led.
\end{enumerate}
\end{exercise}
\begin{exercise}[subtitle={Utiliser les capteurs}, step={3}, origin={Ma tête}, topics={ Informatique embarqué et objets connectés }, tags={ Python, Programmation, Architecture }]
Dans le premier exercice, nous avons vu que la carte micro-bit contenait plusieurs capteurs. Voici un programme simple qui affiche la température.
\begin{center}
\begin{minipage}{0.7\linewidth}
\inputminted[bgcolor=base3,linenos]{python}{./scripts/05_temperature.py}
\end{minipage}
\end{center}
\begin{enumerate}
\item Programmer la carte avec le code ci-dessus et vérifier qu'il fonctionne.
\item Expliquer ce que fait chaque ligne du programme. À quoi peut service la ligne \mintinline{python}{while True:}?
\end{enumerate}
\end{exercise}
\begin{exercise}[subtitle={Utiliser les boutons}, step={3}, origin={Ma tête}, topics={ Informatique embarqué et objets connectés }, tags={ Python, Programmation, Architecture }]
Ci-dessous un exemple de programme utilisant les boutons.
\begin{center}
\begin{minipage}{0.7\linewidth}
\inputminted[bgcolor=base3,linenos]{python}{./scripts/05_boutons.py}
\end{minipage}
\end{center}
\begin{enumerate}
\item Programmer la carte avec le code ci-dessus et vérifier qu'il fonctionne. Que fait ce programme ?
\item Transformer ce programme pour qu'il affiche la température quand le bouton A est pressé.
\item Écrire un programme qui allume la led centrale, qui la fait se déplacer à droite quand le B est pressé et vers la droite si c'est le bouton A.
\end{enumerate}
\end{exercise}