logoSCIENCES NUMERIQUES ET TECHNOLOGIE

Niveau : Seconde SNT


D
É
C
O
N
N
E
C
T
É

L'informatique embarquée

CLASSE : 

   Titulaire : Nom : Prénom : 

    Binôme : Nom : Prénom : 

Freinage d'urgence : un nouveau pas vers la voiture autonome

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).

Architecture d’un système embarqué

Cahier des charges partiel du système embarqué

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.

Le témoin lumineux des ceintures de sécurité

Fonctionnement du système

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

♫


Les Capteurs


BP

Capteur de ceinture :

  • 0 : ceinture non attachée 
  • 1 : ceinture attachée 

Entrée D4

Potentiomètre

Capteur de vitesse :

  • 0 : Vitesse = 0km/h
  • 1000 : vitesse = 200 km/h

Entrée A0

Les Actionneurs


buzzer

Buzzer (haut-parleur)

  • Jouer une note pendant une durée déterminée

Sortie D5

DEL
Témoin ceinture (DEL) :
  •     Bas : diode électroluminescente éteinte
  •     haut : diode électroluminescente allumée

Sortie D2

Le microcontrôleur et sa platine de connexion Grove

Arduino Grove
Microcontrôleur atmega328
Platine de connexion Grove

Câblage des capteurs et des actionneurs sur la platine Grove

Cablage

Programme d’acquisition de l’état du capteur de ceinture

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

Q1 . Relevez les états possibles :  ou , on parle alors de capteur TOR (Tout Ou Rien)
non validé

Programme d’acquisition de l’état du capteur de vitesse

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) non validé

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) non validé

Programme du système embarqué

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) non validé

Interface Homme Machine (I.H.M.):

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,

Une image contenant moniteur, horloge, écran, photo

un texte représentant la vitesse en km/h,

un logo ceinture

et une aiguille pour le compte tour.

Câblage du système embarqué

Cablage2

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)

Format de la trame émise par le microcontrôleur Arduino

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) : non validé

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

prog           Tableau

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).

coordonnées

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). non validé

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). non validé

Fond : Texte : Tables : Fond Bordure :