Niveau : Seconde SNT
L'informatique embarquée |
CLASSE : | ||
---|---|---|
| ||
|
Dans l’automobile, l’électronique est omniprésente. Elle permet de gérer le fonctionnement du moteur, de réduire les émissions de gaz nocifs, de connaître l’état des ouvrants, des ceintures de sécurité, la température extérieure et intérieure, de corriger des trajectoires (ESP, antipatinage) et même de prendre des décisions (freinage automatique d’urgence).
Nous allons commencer par un système simple d’avertissement d’oubli de ceinture de sécurité : par l’allumage d’un voyant et l’émission d’un signal sonore.
Etat |
Vitesse du véhicule |
|||
---|---|---|---|---|
0 – 20 km/h |
20 km/h ou plus |
|||
Ceinture de sécurité attachée |
O |
N |
O |
N |
Témoin |
Éteint |
Allumé |
Éteint |
Clignote |
Bip |
N |
N |
N |
â« |
Capteur de ceinture :
Entrée D4 |
|
Capteur de vitesse :
Entrée A0 |
Buzzer (haut-parleur)
Sortie D5 |
|
Témoin ceinture (DEL) :
Sortie D2 |
Microcontrôleur
atmega328 |
Platine de connexion Grove |
Exécuter le programme Mblock 3 sur les ordinateurs du lycée ou télécharger-le en cliquant ici
Reproduire le programme réalisé dans la vidéo suivante :
Connectez-vous au port de communication de l’Arduino (Le dernier en général)
Cliquez sur Téléverser dans l’Arduino
Connectez-vous au même port de communication que précédemment
Cliquez sur le « mode texte » de la fenêtre de réception
Les données envoyées par l’Arduino à l’ordinateur par le câble USB doivent apparaître. Le bloc qui communique avec l'ordinateur est le suivant :
En appuyant sur le bouton poussoir représentant l’état de la ceinture on doit voit évoluer la variable
Téléchargez le programme « Vitesse ».
Q2. Faire bouger le capteur de vitesse et relevez la valeur minimale : et la valeur maximale :
faire valider par le professeur (R2)
En déplaçant le curseur du potentiomètre, on obtient de nombreuses valeurs, qui sont proportionnelles à la position du curseur. Le capteur de vitesse est un capteur analogique.
Ajouter un opérateur division et une valeur entière permettant d’obtenir une vitesse maximale de 200 km/h pour la valeur 1000 délivrée par le capteur.
Testez votre solution et faire valider par le professeur (R3)
Enregistrez le projet précédent sous "système"
Ajouter les blocs suivants et complétez les trous noirs
Faire valider le fonctionnement du système embarqué par le professeur (R4)
Les tableaux de bords se modernisent et sont construits autours d’écrans. Il devient le lien entre l’homme et la machine : l’IHM.
L’IHM que nous allons programmer se compose de 4 calques :
une image de fond,
un texte représentant la vitesse en km/h,
un logo ceinture et une aiguille pour le compte tour.
Les actionneurs sont remplacés par l’ordinateur. Le microcontrôleur Arduino va communiquer les informations à l’ordinateur par le câble USB via un protocole de communication RS-232 (série : bit après bit). La vitesse de transmission est établie à 115200 bauds (bits/seconde)
Les variables vitesse : V et compte tour : T sont de nombres réels avec 2 chiffres après la virgule Ex : V=49.50 et T=90.00
La valeur du compte tour varie de 0 à 180 et représente l’angle de rotation en degrés de l’aiguille.
0° correspond à 0 tr/min et 180° à 8000 tr/min
Le capteur du compte tour a les mêmes caractéristiques que le capteur de vitesse. Il varie de 0 à 1023. Expliquez au professeur l’intérêt de cette ligne de code :
Explication validée (R5) :
On transmet les informations sous la forme d’une chaine de caractère. Chaque caractère sera codé sur 8 bits et sera transmis à l’ordinateur grâce à la ligne de code ci-dessous.
Exemple de chaine de caractères transmise : "V49.50T90.00C1.00"
Lors de la réception le programme de l’ordinateur devra repérer les lettres V T et C et extraire de la chaine de caractère la vitesse (59.50), l’ange de rotation (90.00°) et l’état du capteur de la ceinture de sécurité (1.00)
Dans Mblock, connectez le port et vérifier le format de la chaine transmise en mode texte. Faites varier les capteurs afin de vérifier l'évolution de leurs états.
Déconnectez le port série.
Enregistrez les 3 images suivante par un clic droit de la souris sur les liens suivants : aiguilleCT.png LogoCeinture.png TableauBord.png
le son ttsMP3.mp3
la librairie FonctionsTB.py et le fichier TableauBord.py
Déplacez ces fichiers dans vos documents, dans un même dossier.
Ouvrir le programme TableauBord.py avec Edupyton
Remplacer les ? par des coordonnées x et y afin de placer le compteur de vitesse et le logo ceinture comme placés sur l'image ci-dessus. Pour vous aider, vous pouvez ouvrir l’image de fond du tableau de bord avec photofiltre. En déplaçant la souris sur l’image vous pouvez trouver facilement les coordonnées x et y (en bas de la fenêtre).
La couleur du texte vitesse doit être blanche et est codées (R,V,B). Les valeurs de R, B et V peuvent varier entre 0 et 255.
Faire valider le fonctionnement du tableau de bord par le professeur (R6).
Ajouter au programme le même texte vitesse de couleur grise, décalé de 2 pixels vers le bas et 2 pixels vers la droite pour obtenir un effet d’ombre
Faire valider le fonctionnement du tableau de bord par le professeur (R7).
Contenu
sous licence CC BY-NC-SA 3.0
Pascal Hassenforder 25/11/2020
MAJ du 23/02/2024