• Aucun résultat trouvé

SAE1-S2 : «la chaîne de mesure»

N/A
N/A
Protected

Academic year: 2022

Partager "SAE1-S2 : «la chaîne de mesure»"

Copied!
21
0
0

Texte intégral

(1)

LRSD 2012 IUT de CERGY

BUT GEII Neuville

Sommaire

Généralités sur la station de mesure Page 1 titre et sommaire

Page 2 but et présentation générale Page 3 planning des actions à mener

Page 4 décomposition fonctionnelle, mots clefs.

Page 5 SAE1-S2-AT Carte « Capteur » mesure de température : principe Page 6 SAE1-S2-AT Carte « Capteur » mesure de température : étude Page 7 SAE1-S2-AT Carte « Capteur » mesure de température : réalisation

Page 8 SAE1-S2-B « Banc de test » des cartes capteur : présentation Page 9 SAE1-S2-B « Banc de test » : travail

Page 10 SAE1-S2-C Carte « micro » : description

Page 11 SAE1-S2-C Carte « micro » : initiation à la programmation Page 12 SAE1-S2-C Carte « micro » : premier travail demandé Page 13 SAE1-S2-C Livraison finale  : mode Bi-Capteurs Page 14 SAE1-S1-D programme « IHM »

Page 15 Protocole DUJ10

Page 16 SAE1-S2-AF Carte capteur de force : principe

Page 17 SAE1-S2-AF « sujet capteur de force » : étude et réalisation Page 18 SAE1-S2-AL capteur de Lumière

Formations et exercices

Pages 19,20 Programmation graphique de l'IHM. initiation à processing Page 21 rapport final

Page 1

SAE1-S2 : « la chaîne de mesure »

(2)

Scénario de la SAE1 de S2

Pour cette SAE , vous serez le technicien d'un laboratoire dans une entreprise du GEII.

Un ingénieur est votre chef. Le patron lui demande l'étude d'une «chaîne de mesure bi-capteurs».

Votre chef utilisera ses compétences et fera le découpage WBS du projet, ensuite il déterminera ses aspects technologiques, pour enfin vous présenter votre travail .

Il vous expliquera l'objectif de l'étude et ses constituants principaux ( issus de l'état de l'art en la matière) et il vous donnera les dates clefs auxquelles vous présenterez des résultats .

But : concevoir une chaîne de mesure, recevant 2 capteurs , température , et force.

L'affichage des mesures se fera sur un écran déporté ( PC) . Cahier des charges :

Capteur de température : plage 0 à 30°

Capteur de Force , plage de 0 à 100 Newtons

Créer une fonction d'autocalibration actionnée par l' interrupteur K Alimentation à partir du port USB d'un ordinateur

Utilisation de ressources matérielles et logicielles imposée

Validation du « banc de test » servant au test des cartes capteurs .

LRSD 2021

Page 2 SAE1-S2-C

« Banc de test » bi-capteurs

SAE1-S2-D

Programme « IHM » Carte« micro » bi-capteurs

SAE1-S2-B

SAE1-S2-AT ou AF

2 Cartes Capteurs

AT : « capteur de température » AF : « capteur de force »

Aspect Général

Désignation des éléments de la chaîné de mesure

SAE1-S2 : « CHAINE DE MESURE »

(3)

vos Missions seront

SAE1-S2-A carte « capteur de température » Elle mesure la température ambiante (de 0 à 30°C)

Vous allez : Étudier, réaliser et tester la carte SAE1-S2-A Calculs, simulations , schéma , routage , câblage et test ..

SAE1-S2-B « banc de test »

Il est utilisé en production pour valider les cartes capteur

Vous évaluerez si cette carte ( IUT) est conforme à son cahier des charges Vous aurez à écrire le rapport de test du banc de test

SAE1-S2-C carte « micro »

Sert à numériser les infos du capteur et les envoyer vers le PC en DUJ10 Carte IUT , Vous allez Écrire et tester le son Programme opérationnel.

Programmation en C sur mbed SAE1-S2-D Programme « IHM » pour PC

Pour Afficher les données issues des cartes micro.

Production IUT à modifier pour Afficher votre non SAE1-S2-E carte « capteur de force » :

Elle mesure une force de pression ( 1 à 10Kgrs)

Vous allez : Étudier, réaliser et tester la carte SAE1-S2-E Calculs, simulations , schéma , câblage et test ..

maquette sur plaque lab , le circuit imprimé n'est pas une demande imposée .

Liste des Jalons

Jalon A semaine du 21 mars Sujet « capteur de force »

Date limite pour rendre le rapport de test du banc de test Vous pouvez commencer l'apprentissage sur mbed

Jalon B Semaine du 6 juin

Date limite pour le Rendu du dossier de fabrication au prof Soutenance devant un client . Avec tous les capteurs Travail à faire

Mars .. carte capteur de température finie et testée Critiques sur le banc de test

Avril mise au point carte Force sur plaque lab Carte micro page 11 12 13

Mai mise en œuvre carte lumière sur plaque lab

Le logiciel micro est multi cartes ( T , F , L , et rien ) Travail sur processing

Juin finalisation processing avec l'aspect visuel qui vous plaira

Dans votre cahier de SAE ( noté)

Tracez un calendrier 2022, avec les semaines qui vont jusqu’à la soutenance Placez y les 6 jalons

Placez les actions à faire pour tenir les jalons actions d'auto formation

Vous vous auto formerez avant d'en avoir besoin à l'utilisation de processing

Vous aurez regardé le fonctionnement du programme micro avant de travailler dessus

SAE1-S2- Travail à faire

Lundis 17/01 24/01 31/01 07/02 14/02 21/02x 28/02x 07/03 14/03 21/03 28/03 04/04 11/04 18/04 25/04x 02/05x 09/05 16/05 23/05 30/05 07/06

Page 3

(4)

SAE1-S2 : analyse fonctionnelle : mots clef.

Page 4 SAE1-S2-AT

ou

SAE1-S2-AF

Présentation de « la chaîne de mesure » en mode « capteur de température »

Banc de test de la carte « capteur »

3V3 Vs P0 P1 Vr

SAE1-S2-B

« Banc de test  » Carte « capteur »

« Banc de test »

Il Fournit 3V3 à la carte capteur Il Recopie Vs vers un point de test

Il Fait la tension de calibration Vr avec un potentiomètre présent .

Il Recopie Vr vers un point de test

Il Allume des leds en fonction de P0, P, 3.3V 3V3

Vs P0 P1 Vr

Carte « capteur  AT»

'Ta' la température ambiante agit sur la tension de diode Vd.

Cahier des charges  : si Ta varie de 0 à 30°C, Vs varie de 0 à 3V exemple : Vs = 2V à 20°C calibration Vr permet d'avoir Vs= 2V à Ta = 20°C P0 P1 2 bits du code carte Ils indiquent à la carte « micro » dans quel mode faire les mesures.

Température 1 1 rien 0 0 Lumière 1 0 force 0 1

Carte « micro »

Mesure , transmet et fabrique Vr calibration Vs = 2V à 20°C Communique avec le PC , des ordres et des datas en DUJ140.

Ordres vers le PC suivant liste Datas vers le PC

Vs : tension = ici la température Vr  : tension de calibration Vp : potentiomètre carte micro ordres en écoute du PC

Suivant liste , (pas de datas) Réglage potentiomètre de test Programme écrit sur mbed

Programme « IHM » Interface Homme Machine Affiche des infos sur l' écran Écoute le clavier et la liaison série (USB)

communique des datas et des ordres avec la carte micro.

protocole duj10 ( voire liste) Adapte son mode d'affichage au type de capteur connecté sur la carte micro

Le programme exécutable écrit en processing

SAE1-S2-AT ou

SAE1-S2-AF SAE1-S2-C

Carte « capteur » Carte « micro »

Ordres

datas

SAE1-S2-D

Programme « IHM »

5V

réglage

écran

Clavier souris

5 à 10 V 0,1A

Le banc de test est l'outil indispensable pour qualifier la carte capteur, il faudra le valider.

Carte « capteur AT  » Vs mesure : 2V à 20°C 3V à 30°C

Vr calibration : calibre 2V à 20°C P0 P1 2 bits de code de la carte Idée La captation de température se fait en mesurant la tension Vd

Le capteur est une diode, dont la tension (Vd) varie avec la température. La plage de mesure demandée va de 0°C à 30°C. La tension Vd sera amplifiée et additionnée d'un offset Vr.

L'offset Vr permet de compenser les erreurs de fabrication des diodes, en exécutant une calibration à une température étalon , pour par exemple obtenir Vs = 2V à 20°C ( 20°C est la température ambiante en salle de TP ) .

Ta

Carte « capteur AF  » Vs mesuré : 0V à 0 N 3V à 100 N Vr calibration : calibre 0V à 0N P0 P1 2 bits de code de la carte Idée La captation de force se fait en mesurant la résistance d'une

F

(5)

SAE1-S2-AT : principe de la carte « capteur de Température »

Mesure de la température , avec calibration du capteur, et restitution .

carte

Température

ambiante Ta Tension

de sortie VS alim

3,3V

Tension d'étalonnage Vr

Cahier des charges

Ta la température Ambiante : de 0 à 30°C Vs la tension de sortie

Vs = 0V à 0°C et 3,3V à 33°C (+0,1V/°C) Étalonnage on force Vs = 2,5V à 25°C Vr : Tension Étalonnage Vr de 0 à 3,3V Soit une compensation de +- 50°C mini

MC304 7 1

Capteur à diode

Le capteur utilisé est une simple diode 1N914.

La tension d'une diode varie en fonction du courant qui la traverse, mais aussi en fonction de sa température.

à Id constant : Vd = Vdo(25°C) – 2mV x( Ta-25°C) Ta température ambiante à mesurer

Le constructeur donne ce graphe ou Vd est exprimé , pour différentes températures en fonction de Id.

(les incertitudes de fabrication sont de +-20mV).

exemple pour id = 0,3mA : Vd(25°C) = 0,54 Pour Ta != 25°C  : Vd = 0,54V – 2mV (Ta – 25°C) On calculera Vd pour Ta = 25°C

Pour Ta = 30°C : Vd = 0,53 , ( -2mV x 5°C = -10mV)

0V 3,3V

Id Vd

Étudions Vd et Vs sur la carte «capteur de température » Le cahier des charges dit : Vs = 2,5 V à 25°C Vs = 3 V à 30°C Le capteur dit Vd = 0,54V à 25°C Vd = 0,53V à 30°C La carte aura pour fonction de faire Vs = a x Vd + b

Je dérive l'équation dVs/dVd = a = -50 car pour dTa = 5°C dvS = 0,5V dVd = -10mV Si a = -50 L'équation devient Vs = -50 Vd + b

Je me replace à 25°C Vs = 2,5V = -50 Vd + b avec Vd(25°C) = 0,54V 2,5V = -27 V + b on en déduit que b = 29,5V L'équation de la fonction à réaliser sur la carte capteur est : Vs = -50Vd + 29,5V

axVd+b Vd

Vr

Vs carte

Spécifications techniques de la carte Dimensions max 60x60 mm

Connecteur 7 points sur une face Brochage du connecteur

1 2 3 4 5 6 7

0V Vs P0 3,3V P1 Vr 0V

Vd Vs

ta 0,6

0,5 3,3V

0

Ce simple graph montre que pour fabriquer Vs il faudra : amplifier et inverser Vd + lui ajouter un offset

Vs = a Vd + b

Page 5 PARTIE THEORIQUE

Diode 1N4148 ou 1N914

Connecteur femelle

Donc si Ta Vd Vs

(6)

SAE1-S2-AT

fs3 fs1

fs2

fs4

fs5

fs6

Fs1 connecteur d'entée sortie

broches 1 2 3 4 5 6 7

0V Vs P0 3,3v P1 Vr 0V

Pin 1&7 Pin 4 alimentation 0 , 3,3V ( 50 mA max )

Pin 2 Vs signal représentant la température qui peut aller de 0 à 3,3V Pin 5 Vr signal de compensation de température de 0 à 3,3V

Pin 3 et 5 P0 P1 mis à 3,3V comme une signature de la carte « température » Fs2 signature de la carte , R6 résistance de rappel à 3,3V (1L)

Pour une carte capteur de température P0 et P1 = 1L ( assuré par R6) Pour une carte capteur de force P0 = 1L P1 = 0L

Si P0 ou P1 sont accidentellement mis à 0V le courant dans R6 est <= à 0,1mA vérifiez Fs3 Capteur de température R3 polarisation , D1 diode de mesure ( 1N4148 ou 1N914 ) La résistance R3 polarise D1 pour qu'un courant de 0,3mA la traverse ( à 25°C), vérifiez Fs4 mise à niveau et filtrage de Vr

R1 et R2 divisent par 2 la tension Vr

R1 R2 C2 forment un filtre possédant une fréquence de coupure de <= à 100hz On Impose R1 ou R2 >= 100K . calculez R1 R2 C2

Fs5 suiveur , ½ AOP 3,3V rail to rail MCP6022 une bête de course Ampli suiveur , pour ne pas consommer du courant sur D1 Fs6 fonction « ax+b » ½ AOP 3,3V Rail to rail MCP6022

En DC Par le théorème de la superposition je trouve Vs = - Vd x (R5/R4) + ( Vr/2 )x( 1 + R5/R4 ) L'équation de la transformation ( gain offset ) Vs = -50 Vd – 29,5 V

Impédance d'entrée : vue de l'entrée Vd : Zin >= 10K

R4 et R5 assureront le gain exprimé par ax+b ( rappel « a » est un gain de -50) Vr peut aller de 0 à 3,3V, elle est choisie pour que à ta = 20°C Vs =2V ( calibration) On impose toute résistance >= à 10K proposez des valeurs pour R4 et R5

En AC Exprimez la fonction de transfert, Vs par rapport à Vd (en mettant Vr = 0 V ) Votre équation ne sera écrite que avec R4 R5 C1 et la fréquence

Exprimez la fréquence de coupure fc

Calculez C1 pour avoir une fréquence de coupure fc <= à 100Hz

vd Vr

Vs

SCHEMA de départ

ANALYSE FONCTIONNELLE et calculs

La valeur des R et C est irréaliste

ETUDE de la carte « capteur de température  »

(7)

SAE1-S2-AT

REALISATION de la carte « CAPTEUR de température»

1/ Comprendre

Comment mesurer une température avec une diode Comprendre la résolution de l'équation y = a. x+ b

2/ calculer ou vérifier la valeur des composants R1 2 3 4 5 6 C1 et C2 Le calcul de C1 et C2 sera abordé en séance 2

3/ exemple du travail à avoir fait en séance 1

Câbler une diode et 10K vers 3,3V, mesurez Vd20°C ( on dira qu'il fait 20°C dans la pièce) Observez la disparité de mesures entre les binômes soit 0,55V +- 20mV

Simulez le montage sur protéus ( 1N4148 ou 1N914)

Observez que pour tous les binômes Vd est de 0,598V ( 0°C en fait ) Simulez le montage proposé ( avec l'AOP en 3V3 ( ! 2 AOP dans le boîtier)) Remplacez Vd par un générateur égal à votre Vd20°C mesuré.

Calculez Vr pour obtenir Vs= 2V à 20°C avec votre Vd mesuré à 20°C Mettez un générateur sur Vr et observez 2V en sortie.

Câblez le tout

L'alimentation de l'AOP en 3V3 , avec la diode ..

Placez la tension sur Vr à la bonne valeur ( pas facile à régler) Ajustez Vr pour avoir Vs = 2V ( on dit qu'il fait 20°C dans la pièce) 3/ exemple de travail à avoir fait en séance 2 et 3

Suivez les explications du prof pour calculer C1 et C2

Placez le connecteur comme sur mon schéma , respectez son sens.

Vérifiez que toutes les résistances soient des RES40 et les condensateurs CAP10 Commencez le routage

Partie Schéma 1/ faites un nouveau projet protéus , avec le pcb

New project .. schéma A4 , Create PCB en généric sigle layer , no firmware 2/Faites y un copier coller du schéma déjà simulé ou recommencez .

Attention au choix des composants

Résistances RES40 et Condensateur CAP20

Utilisez les connecteurs comme indiqué sur le schéma donné 3/ obtenez une Validation finale de votre schéma par l'enseignant

Partie Routage Positionnez le bord de carte autour d'une zone à router de 50/50mm max Placez les composants et routez avec des fils de type 30

Faites une simulation de présentation en 3D

Placez vos initiales et votre groupe de TP sur le cuivre de votre carte , Obtenez une validation de l'enseignant

Éditez les fichiers GERBER

Page 7

Notez le sens

du connecteur

(8)

SAE1-S2-B « banc de test »

La carte SAE-S2-B est le « BANC de test » dédié aux cartes « capteur AT et AF » Sa conception fut menée par le sous traitant en charge de fabriquer les cartes capteurs Cette carte est chargée de dire si les cartes capteurs fabriquées sont livrables

VOTRE MISSION :

vérifier si le « banc de test » est lui même opérationnel

Connecteur pour recevoir la carte à tester

Schéma

Cahier des charges du banc de test

Alimentation banc de test 5V à 10V . par des fils pré câblés sur J1 ( protection par D1) Un régulateur produit le 3V3 nécessaire à l'ensemble des besoins de la carte LED D2 Elle indique la présence d'une carte capteur de température

U2 décode P0 et P1 au niveau 1 logique

LED D4 Elle indique la présence d'une carte capteur de force U2 décode P0 = 1L et P1 = 0L

RV1 Règle Vr avec une plage de 0,9V et 2,3V pour assurer Vs = 2V à 20°C J2 3 points de test 3 = Vr , 2 = 0V , 1 Vs

Aspect Visuel

Potentiomètre pour fournir Vr

LED

Carte température LED : 3V3 ok LED

carte Force 5V

0V Vr 0V Vs

(9)

SAE1-S2-B

Le Banc de test est un outil dédié à la production des cartes « capteurs », c'est l'entreprise chargée de produire les cartes capteurs qui le réalise, à partir du « cahier des charges » que vous lui avez fournit . Votre mission consiste à vérifier si le « banc de test » opérationnel .

Voilà une « vraie » mission de technicien

1/ Phase théorique  : vous analyserez le schéma du banc de test pour trouver les erreurs.

2/ Phase pratique  : vous validez par la pratique les erreurs, et en trouvez d'autres ? 3/ Phase Rédaction : vous rédigez le rapport de test du banc de test .

1/ PHASE THEORIQUE

Votre travail consiste à calculer si les contraintes sont respectées Pour vous aider voici quelques questions simples

QUESTIONS (vos réponses seront dans votre cahier de SAE) A/ Led D1 D1 s'allume si le 3v3 est présent

Le courant d'allumage de la diode Led est de 5mA

La tension d'allumage au bornes de la diode (5mA) = 2,2V La résistance R2 est elle à la bonne valeur

Proposez une nouvelle valeur de R

B/ Réglage de Vr avec RV1 Réglage de la tension Vr de 0,9V à 2,3V Calculs avec la sortie Vr à vide, RV1 et R4 et R5 = 10K

a)Calculez Vr max min Potentiomètre tourné à fond à gauche ou à droite . Cette variation est elle compatible avec le cahier des charges ?

b)Proposez une nouvelle valeur de R4 et R5 pour assurer la compatibilité Faites une simulation protéus de cette proposition .

(V RV1 est calculable ,grâce à u = R i i dans RV1 aussi ! , V R4 = i R4 ) C/ logique d'allumage de D2 et D4 validation type de carte

D2 s'allume si U2B4 = 1L avec P0 et P1 = 1L D4 s'allume si U2C10= 1L avec P0= 0L et P1 = 1L

Faites la tableau logique de U2B4 et U2C10 en fonction de P0 et P1 Les diodes D2 et D4 sont elles bien commandées

Faites des proposition qui ne modifient pas trop la carte D/ LED D2 D2 s'allume avec U2C10 = 1L

Le courant d'allumage de la diode Led est de 5mA

La tension d'allumage au bornes de la diode (5mA) = 2,2V La résistance R3 est elle à la bonne valeur

Proposez une nouvelle valeur de R3

E/ LED D4 D4 s'allume avec U2B4 = 1L .

Le courant d'allumage de la diode Led est de 5mA

La tension d'allumage au bornes de la diode (5mA) = 2,2V La résistance R11 est elle à la bonne valeur

Proposez une nouvelle valeur de R11

2/ PHASE PRATIQUE

Vous disposez du banc de test

Faites les tests appropriés sur le connecteur J9 du banc de test Et mettez en évidence les observation A, B , C , D citées plus haut

3/ Rapport de test du banc de test

Oui le banc de test est utilisable pour tester les cartes capteurs, mais il n'est pas pratique.

Vous écrirez le rapport de test du banc de test destiné au sous traitant Vous lui expliquerez

1/ des difficultés pratiques qu'il rencontrera dans l'utilisation du banc de test 2/ vous lui expliquerez comment comprendre les indications du banc

3/ vous lui préconiserez des modifications pour corriger les points incriminés

Page 9

(10)

Interrupteur K

On peut faire un court circuit avec les doigts entre les 2 broches du connecteur LED

Pour s’entraîner à la faire clignoter

SCHEMA

Connecteur interface Vers une carte capteur

SAE1-S2-AT ou SAE1-S2-AF Masse 0V

Entrée analogique de Vs Entrée P0

3,3V Entrée P1

Sortie analogique vers Vr 0V

Potentiomètre pour jouer en l’absence de carte capteur

1

7

SAE1-S2-C la carte « micro»

La carte « micro » incorpore un module à microprocesseur ARM M4 ( ST).

Vous la programmerez avec le compilateur 'C' sur le site MBED ( ou nouvellement KEIL) La carte micro mesure Vs , fabrique Vr et sérialise les datas vers le PC

base de départ : vous disposez dans mon compte mbed , accessible par une recherche google avec « mbed dujardin » d'un répertoire nommé «  base_mbed_SAE1_S2 »

Vous pouvez l'implanter par un clic dans votre compte mbed ( ouvrez votre compte mbed) N'oubliez pas de déclarer l'utilisation du module L432KC

La carte « MicroC » est produite par l'IUT

Carte « micro »

Points importants

P0 , P1 codage du mode  : température 1L 1L . force 0L 1L . lumière 1L 0L . rien 0L 0L Vs : entrée analogique de 0 à 3,3V ( 2,5V pour 25°C)

traduit en un float de 0 à 1 L'entrée E0 , elle est protégée par une 10 K Vr : sortie analogique de 0 à 3,3V permet de compenser les erreurs du capteur.

Protégée par une 10K qui peut atténue de (?) le signal de sortie Vp : tension donnée par le potentiomètre de la carte

USB

usb

Vp

E/S L432KC Vs A0 J5 2 P1 A1 J5 5 Vp A2 P0 A3 J5 3 Vr A4 J5 6 LED D9 K D2

(11)

SAE1-S2-C

Travail : initiation à la Programmation de la carte « micro»

TRAVAIL a faire

1/ formez vous à l'utilisation de la carte et de mbed seule , sans le programme processing

compilez base_mbed_SAE1_S2 , chargez le dans la carte micro ( comme dans une clef usb) Vous verrez la diode clignoter 10 fois ? :)

exercices

a) Modifier étape0() pour faire clignoter la LED 20 fois

b) dans le main , en début de boucle while(1) , ajoutez cette ligne : etape = inter ;  Et enlever etape = 1 ; dans etape 0() .. testez avec K on ou off

c) modifiez etape1() pour allumer la LED si Vp > 1,5V ( 1/2)

2/ formez vous à l'utilisation de la carte et de mbed , avec le programme PC Revenez à la version initiale de base_mbed_SAE1_S2

Lancez le programme sur PC logiciel_SAE1_S2.exe

A/ Observez qu'en tournant le potentiomètre la valeur affichée de Vp change Faire un cc sur l'interrupteur

repérez dans etape1() la façon de mener les étapes.

B/ sur le PC vous cliquez sur –, - ,To, +, ++, le PC envoie les ordres r m s p q vers « micro » Voyez comment dans interrupt() , Le décodage fait changer la valeur de Vr ( DUJ10) C/ Dans etape1() vous aller faire croire au PC qu'une carte température est connectée Malgré l'absence de décodage de P0 et P1 envoyez un 'e' à la place du 'h' D/ vous enverrez au PC la valeur de Vp à la place de la température

Duj10 envoie le potentiomètre par cette ligne d'ASCII 'D''x''x''x''P' Changez le 'P' par un 'T'

E/ imaginez de Lire P0 et P1 = 1L pour faire ce transfert

Page 11

init()

etape = 0 etape0(

)

etape = 1 etape1(

)

Etape = 0

Boucle sans fin

Lire P0

envoyer r ou s Clignoter led 2s

Envoyer 'h' Wait 0,2s LED =0 etape = 1

Lire inter envoyer 'w' v'

Lire Vp D - - - P

interrupt()

ecoute les ordres . l k r m s p q

init()

115200bps LED=0 Envoyer d

Mode « pas de carte capteur » datas transmises en duj10 main etape0() etape1() sousprog Le programme proposé fait :

Au début du main : il initialise les broches utiles,et prépare les variables .

Ensuite : dans init() Il initialise certaines parties matérielles de l'ARM ( liaison série) Ensuite : En boucle , en fonction de la variable etape il exécute 2 sous programmes Au début étape = 0 , donc il commence par exécuter le sous programme etape(0) Étape0() fait clignoter 2 S led , envoie un 'h' , et place etape = 1

maintenant étape = 1 il exécutera toujours le sous programme etape1() Etape1() mesure l'état des E/S et du potentiomètre et les envoie au PC Contenu du répertoire mbed dit «  base_mbed_SAE1-S2 »

main déclaration des broches, des variables globales , et des différents constituants sousprog sous programmes utiles au main , interruption et initialisation

etape0 sous programme etape0() appelé dans le main etape1 sous programme etape1() appelé dans le main

(12)

SAE1-S2-C

gestion simple de la carte capteur SAE1-S2-AT

Les programmes vus lors de la séance précédente , vous ont rendus autonomes.

Ils ne seront pas tous réutilisés pendant cette séance ..

Attention : il vous est demandé de ne pas changer la structure en étapes

Avec un Court Circuit sur K , il y a calibration du capteur .ou Vs = 2V à 20°C Sans court circuit sur K mesure et transfert des données de la carte en DUJ10 Dans le main , après init(), au début de la boucle while(1)  :

: etape recopie la valeur de K ( inter)

If CC sur K (0L), exécuter étape0() ,  avec : clignotement Led , + calibration() If K est libre (1L), exécuter etape1() , Mesure et transmission de Vs Vr et Vp Pour le moment calibration() et un sous programme presque vide , on s'y prépare ..

C'est quoi une calibration ?

Dans le main , l'état de l'interrupteur amène le programme à exécuter 2 sous programmes différents .. à tout moment on pourra faire un cc sur K pour relancer une calibration par l'étape0() Lors de la calibration .. il faut accepter l'idée qu'il fait 20°C dans les salles de TP.

la carte 432KC va chercher toute seule la tension qu'il faut mettre sur « Vr » , pour que la tension Vs soit de 2V, et compenser toute seule les erreurs de fabrication de la diode.

Lorsque la calibration est finie vous prévenez le PC par un 'c' Voila 2 méthodes de calibration

1) méthode incrémentale .. très lente et rustique

1/ Vs et Vr = 0 .. ( Vr le float est à mettre sur la broche outVr par un outVr.write(Vr) ) 2/ dans un while , tant que Vs < 2V

Faire : Vr= Vr + 0,001 et mettre en sortie outVr Et attendre 0,01S et enfin mesurer Vs

3/ éteindre la LED , et envoyer un 'c' vers le PC

2) méthode par approximation successive , plus rapide et plus fine 1/ Vr = 0,5  , Q = Vr/2 ( Q est un float)

2/ dans un for , faire 10 fois

outVr.write(Vr)  ; Attendre 20ms , mesurer Vs Si Vs > 2V Vr = Vr – Q

Si Vs < 2V Vr = Vr + Q Q = Q/2

init()

etape = 0 etape0() etape = 1 etape1() Boucle

sans fin

main

interrupt() Traiter les ordres . l k r m s p q

init()

115200bps LED=0 etape = 0 Envoyer e Envoyer d sousprog

Clignoter led 2s

Envoyer 'e' Envoyez un 'd' Appel

calibration()

Wait 0,2s LED =0

etape0()

Lire P0 et P1 Envoyer r ou s Envoyer t ou v Envoyer 'e' Lire Vp

Duj10 D - - - P Lire Vs

Duj10 D - - - T Lire Vr

Duj10 D - - - C etape1()

Wait 0,2S

Dans un premier temps le Sous programme de calibration est vide ( seulement envoyer un 'c') Le décodage de r m s p q dans interrupt() rend possible une calibration manuelle.

Travail demandé en une séance

Calibration() ?

Envoyer 'c'

faux

faux

etape = inter

(13)

SAE1-S2-C LIVRAISON FINALE

Travail : programmation du mode Multi-Capteurs

Fonctionnement du programme est montré en mode 2 capteurs T et F main.cpp

Après l'init() faire une boucle infinie Lire les tensions sur P0 et P1 ,

déterminer l'état logique de P0 et P1, l'écrire dans les variables p0 et p1 Gérer l'envoie de r s t u et v et w suivant l'état de P0 P1 et inter.

Suivant inter

Si inter est en court circuit , lancer la calibration ( etape0() ; ) Sinon faire des mesures en boucle suivant l'état de p0 et p1

etape0.h fichier dédié aux actions a faire en cas de demande de calibration (K=0) D’abord , La led clignote 2 secondes , elle finit allumée.

Ensuite , suivant l'état de p0 et p1

Appel de calibrationT() ou calibrationF() Attendre 0,2S

étate1.h fichier dédié aux mesures à faire dans le cas ou K = 1

Avec les programmes de mesure comme etape1T() etape1L() etape1F() ;

Après avoir indiqué le type de carte , il mesurent et transfernt en DIL10 Vr Vp Vs Sousprog.h différents sous programmes utiles aux fonctions et les calibrations T et F

Page 13

interrupt() Traiter les ordres . l k r m s p q

init()

115200bps LED=0 'h' 'd' > PC

Lire la tension de P0 et P1 Mettre 0 ou 1 dans p0 et p1 Envoyer au choix r s t v Envoyer v w suivant inter

main.cpp etape0.h etape1.h sousprog.h

init()

calibrationT() calibrationF()

calibrationT()

Jouer sur Vr pour que Vs = 2V à 20°C

Finir par 'c' > pc calibrationF()

Jouer sur Vr pour que Vs = 0,1V pot au milieu Finir par 'c' > pc Attention, le capteur de force fonctionne mal .. il sera remplacé par le potentiomètre de la plaque LAB

La calibration se fera au point milieu du potentiomètre sot 3,3V/2 : 1,65V , qui enverra 0,1V en sortie ( = ! 0)

Améliorations ..dans le main , vous appellerez le programme etapeL() ; si p0 = 1 et p1 = 0

Dans calibrationL() il n'y aura que c > PC . etape = inter

etape = 1

Etape0() ;

Gestion des variables P0 est le nom de la broche

P = P0.read() lit P0 et place un float dans P , P ira de 0 à 1 exemple 0,2 p0 est un entier mis à 0 ou 1 suivant la tension sur P0 ( 1 Logique si P > 0,5) OutVr.write(Vr) place le float Vr vers la sortie Vr de la carte MICRO ( 0 à 3,3V) p0=1&p1=1

etape1T() ;

p0=0&p1=1 etape1F() ;

p0=0&p1=0 'h'> pc

mesures etape1T() { 'e' > PC Lire Vs Vr Vp Duj10 > PC Wait 0,1s } etape1F() { 'f' > PC Lire Vs Vr Vp Duj10 > PC Wait 0,1s}

Clignoter led 2s 'h' et 'd' > PC

Si p0=p1=1L calibrationT() ; Si p0=0 p1=1 calibrationF() ;

Wait 0,2s LED =0 etape0()

calibrations while(1)

=0 mesures calibrations

Semaine de 19/04 : vous détecterez les 4 possibilités ( P0 P1) , et en informerez le PC ( e,h,g,f) Le PC commutera de mode, vous observerez les modifications à porter dans processing.

Calibration simple sur T et F faite avec le capteur ( calibration complexe est un plus)

2 semaines de travail

(14)

SAE1-S2-D « IHM »

« logiciel_SAE1_S2.exe »

Ce logiciel sert à afficher les datas et les ordres en provenance de la carte « micro » , il sait aussi envoyer des ordres ( calibration ++ ou – ) vers la carte micro . Il

communique avec la carte « micro » par liaison série en ASCII en utilisant le protocole DUJ10.

De base ce logiciel est multi capteurs, suivant l'ordre reçu en provenance de la carte micro(e,f,g,h) Présentation du mode mesure de température

Carte « micro » Programme « IHM » Mesure de Vs avec une carte température

De 0 à 3,33V Envoyée de 0 à 333 arrivée dans la variable température Duj10 : 'D' ''-' '-' '-' 'T' affichage dans la zone de mesure et Vs Mesure de Vs avec une carte force

De 0 à 3,33V Envoyée de 0 à 333 arrivée dans la variable force

Duj10 : 'D' ''-' '-' '-' 'F' affichage dans la zone de mesure et Vs Mesure de Vs avec une carte lumière

De 0 à 3,33V Envoyée de 0 à 333 arrivée dans la variable lumière

Duj10 : 'D' ''-' '-' '-' 'L' affichage dans la zone de mesure et Vs Mesure de Vr sur la carte capteur

De 0 à 3,3V Envoyée de 0 à 1000 arrivée dans la variable Vk Duj10 'D' '-' '- ' '-' ''C' affichage de la variable « Vr»

Vp tension du potentiomètre sur carte micro

De 0 à 3,33V Envoyée de 0 à 333 arrivée dans la variable potentiomètre Duj10 'D' '-' '-' '-' 'P' affichage de la variable «Vp »

mode température 'e' mode force 'f' change le type d'affichage Mode lumière 'g' mode rien 'h'

Calibration faite 'c' Calibration non faite 'd' indique calibration OK ou non

P0 = 0 duj10 'r' duj10 'l' LED ON

P0 = 1 duj10 's' duj10 'k' LED OFF

P1 = 0 duj10 't' duj10 'r' Vr-- - 20mv

P1 = 1 duj10 'u' duj10 'm' Vr - - 1mv

K = 0 duj10 'v' duj10 's' Vr = 1,22 V

K = 1 duj10 'w' duj10 'p' Vr + + 1 mv

Duj10 'q' Vr++ + 20mv Protocole DUJ10

À 115200bps

Liste des Ordres et datas échangés en DUJ10

D A T A S

O R D R E S

Zones d'affichage

Zone « informations légales » Informe sur le logiciel en place Zone technique

Présentation des datas et ordres reçus de la carte micro

Zones pour clic

envoyer des ordres à la carte micro Calibration de vK et + et – sur vK Zone mesure

Travail à faire

Après vous êtes formés à processing ( 2 dernières pages de la SAE)

Vous ouvrez Source-logicielPC/ logiciel-SAE1S2/ et ouvrez processing ( à télécharger à l'IUT) Vous vous rendez dans l'onglet « rien » et analyser l'action faite

Glissez en début de fenêtre votre nom , une ligne est vide

Faites un run , cliquez sur le port série visible . Sans carte micro le programme exécute «  rien » Adaptez à votre convenance chacune des fenêtres d'affichage

(15)

Protocole Duj10

Gestion de la communication entre la carte Micro et le PC

Principe chacun des 2 objets peut émettre ou recevoir des ordres ou des datas Les ordres sont codés par des caractères ASCII en minuscule de a à z

Les datas sont codées par des caractères ASCII en majuscules et des chiffres Codage des ordres

Un ordre = un ASCII , il est choisi dans les minuscules « a , b , c ....z «  Exemple processing : du PC vers la carte Micro

myPort.write('s'); place le s en ascii sur la liaison série du PC nommée « myPort » Exemple en mbed de la carte Micro vers le PC

serie.put('p') place le p en ascii sur la liaison serie de la carte nommée serie Pour la SAE1-S2 c'est le logiciel coté PC qui limite les ordres transmis et reçus.

Liste des « ordres » envoyés du PC vers la carte micro « l » : Led on ; « k » led off ;

« r » vK - - ; « m » vK - ; « s » vK = 1,22V ; « p » vK+ ;  « q » vK ++

Liste des Ordres attendus par le PC en provenance de MicroC « r » P0 = 0 ; s P0 = 1 ; t P1 = 0 ; u P1 = 1 ;

«  v » inter = 0 ; « w » inter = 1 ; « c » calibration faite ; « d » non calibré Codage des datas transmises

Les datas sont envoyées en ASCII codé décimal, avec des majuscules A à Zet chiffres 0 à 9 Un caractère commence la transmission .. un caractère ferme la transmissions

Le caractère d'ouverture est toujours l'ASCII 'D' comme Début de transfert Le caractère de fermeture dépend de l'utilisation de la valeur transmise

Exemple 'D' '1' '2' '3' 'X' envoie 123 vers la variable X du récepteur Les datas ne sont que positives, et ne peuvent dépasser 16Bits .

Pour la SAE1-S2 seule le PC attend des datas

Datas transmises par la carte micro , équipée d'une carte capteur température D --- T tension liée à la température de 0 à 333 ( 333 pour 3,33V ) D --- P tension mesurée sur le potentiomètre de 0 à 333 ( 333 pour 3,33V ) D --- C tension de compensation , Vk :sortie A4 , de 0 à 1000 ( 1000 pour 3,33V) Décodage des datas ( fournit)

Le récepteur reçoit les ascii à la queue le le

Chacune d'elle est placée dans un tampon et analysée ( un int convient )

À chaque caractère arrivé une serie d'actions est faite ( sous programme de reception) Si c'est un 'D' il fait titi = 0

Si c'est un '0' à '9' il met la valeur dans un tableau à l'adresse titi, et incrémente titi

Exemple avec '0' il fait  { tabl[titi] = 0 ; et titi++ ; } …// tabl[] est un tableau de 10 cases ( attention la valeur 0 est différente de l'ASCII '0' )

Si c'est un 'X' il reconstitue la valeur pour la mettre dans la variable X Il fait , tant que titi > 0 { X = X + tabl[titi]* 10 EXP titi ; titi-- ; } Et à la fin quant titi = 0 , la valeur qui est dans X est bonne Limites

La transmission des chiffres négatifs n'est pas faisable ( le – n'existe pas ) Pour cela , On choisira la transmission d'un entier avec un offset

Exemple dans une gamme d'entrée +-512 ( plage = max – min = 1024) On transmettra de de 0 à 1024 , la plage.

soit à transmettre 100 On enverra (plage/2) + 100 = 512 + 100 = 612

Page 15

(16)

SAE1-S2-AF : carte « capteur de force »

Mesure une force . Le capteur de force est une résistance, constituée d'une feuille de velostat tenue entre 2 surfaces conductrices. Son écrasement la rend plus conductrice.

Autre intérêt, Le matériau velostat , réagit aussi à la température .

Caractéristiques mesurées pour 1 cm² de surface

Proposition de schéma d'installation du capteur

Principe de mesure

Le capteur ( figure 2) est fait de 2 surfaces identiques en velostat , montées en pont ..

L'une d'elles (R2) recevra la force à mesurer , R3 servira d'étalon en température Placées à la même température , R2 et R3 ont presque la même résistance.

Sans pression, les 2 résistances forment un pont diviseur ou J2 2 out = 3,3V/2

Une pression sur le capteur ( en R2) , fait baisser la valeur de R2 et augmenter Vout ..

Circuit de mesure associé au capteur

La tension procurée par J2 2 out, est envoyée vers un amplificateur, Vr lui sera soustrait.

Calculez Vs en fonction de Ve , Vr , R4 et R5

Figure 2

(17)

Page 17

«SUJET  : CAPTEUR de FORCE»

Données de base Au repos Rc = Rt

Ve = 3,3V/2 , nous voulons Vs = 0V Au travail : Force de 10Newton Rc baisse Ve = 3,3V/2 + 0,5V nous voulons Vs = 2V

Étude théorique

QUESTIONS

Extraction des paramètres  « a » et « b »

En dérivant l'équation ou Vs = a Ve+ b , nous trouvons a = dVs/dVe 1/ calculez la valeur de a à partir des données de base

: dVe = Ve au travail – Ve au repos

Quel est le dVe de 0 et 10N Q1 dVe = ...

Quel est le dVs associé Q2 dVs = ….. . Quel est a = dVs/dVe Q3 a = ….

2/ prenons le cas ou VS = 0V = a Ve + b

Vous connaissez Ve vous connaissez Vs et a , alors calculez b Q4 b = ….

Étude du montage à AOP

Vs=aVe+b Vs

F Ve

capteur

compensation

b

+ -

Ve

Vr

R5 R4

Vs

Vous allez utiliser le théorème de superposition Vs1

Ve existe Vr = 0

Vs2 Vr existe Ve = 0

Q5 : Vs1 = Ve x….... Q6 : Vs2 = Vr x …....

Vs = Vs1 + Vs2 Q7 Vs = …... Ve + ….. V r Comparez Q3 et Q4 Vs = a Ve + b Proposez une valeur pour R5 et R4 ( >= 10K) Proposez une valeur pour Vr qui donne b (Q4)

Q8 R5 = Q9 R4 = Q10 Vr =

Étude du filtre composé par R1 et C2 1/ de quel type de filtre s'agit il ?

Q11 type =

R1 C2

Ve Vs

Exprimez la fonction de transfert de ce filtre

Avec R1 C2 et jw ( ou f) Q12 T = Proposez une valeur de R1 et C2 pour que ce filtre

Possède une fréquence de coupure de 100Hz Q13 R1 = ….... Q14 C2 = …...

3,3V

0V

équation avec R5 et R4 Équation avec R5 et R4

Exprimez l'équation finale

Rc Rt

Rc Rt talon

(18)

«SUJET  : CAPTEUR de LUMIERE»

BUT concevoir la maquette de faisabilité d'un capteur de lumière , elle devra s'interfacer avec le connecteur de la carte micro .

Cahier des charges .. mesurer 1V à 200Lux.

PRINCIPE Une photodiode transforme en un courant électrique . l’énergie lumineuse qu'elle reçoit sur la surface de sa jonction.

Le courant produit : Ip , traverse la diode dans le sens Cathode vers Anode Vs = Rp . Ip

ETUDE THEORIQUE

En moyenne une diode en silicium produit un Ip de 0,6A pour 1W/m² La diode BPX65 possède une surface de 1mm²

Q1 Quelle sera le courant Ip sous un éclairement de 1W/m² ? Sachant Qu'une énergie de 1,5KW/m² correspond environ à 90 000 Lux Q2 Quelle énergie correspond à 1000 Lux ?( base soleil)

Si une BPX65 est soumise 1000Lux ( question Q2) Q3 quel courant Ip produit elle ? .

Dans une salle de TP l’éclairement est en moyenne de 100Lux

Q4 quel sera  « Ip » si la BPX65 est placée dans une salle de TP Calculer Rp

Q5 quelle résistance Rp mettre pour mesurer Vs = 1V avec 100Lux.

MONTAGE A UTILISER

Calcul des composants

Q6 Que vaut Ip , donc Vs dans le noir

Q7 calculez R2 pour avoir Vs = 1V avec 200 Lux

Q8 R1 et C2 doivent constituer un filtre passe bas , qui coupera efficacement Toutes les fréquences supérieures à 10Hz

Proposer une valeur pour R1 et C2

Q9 proposez un filtre passe bas ( non inverseur) du second ordre :)

Qui puisse remplacer très efficacement R1 et C2

Q1 : …... µA

Q2 :….... W/m²

Q3 :….... µA

Q4 :….... µA

Q5 :….... Meg

V1 Ip

Ip Rp

Q6 Ip =….... A Vs = …... V Q7 :….... Meg

Q8 R1 =….... meg C2 = …...µF a et b doivent être mises au bon

potentiel pour dire à la carte MICRO qu'il s'agit d'un capteur de lumière.

(19)

INITIATION à la Programmation en PROCESSING

Processing est un environnement de développement logiciel créé par le MIT, But, donner à tous ,les moyens de développer librement des applications .

Pour fonctionner Processing utilise le noyau JAVA present dans toutes les machines modernes.

Mise en place de processing

Faites une recherche avec « processing », downloadez le processing.zip vous convenant.

Décompressez dans un répertoire connu, et lancez processing au travers de l’icône ( 5 sec) processing ne s'installe pas et ne pollue pas la table des registres .

Il fonctionne sur le moteur JAVA présent sur toutes les machines . Exemple avec un programme simple ( une boule suivra la souris )

Aspect de la fenêtre processing après avoir édité quelques lignes aspect de l'application

En cours d’exécution dans sa propre fenêtre

Le draw est exécuté à chaque rafraîchissement de votre écran setup , prépare la fenêtre de l'app Ne se lance qu'au debut Taille de la fenêtre application

Ellise trace un cercle

À la position de la souris en X et Y Et de rayon horizontal15 et vertical 15

A faire

Testez le programme proposé ci dessus Changer le rayon X ou Y , changez de size ..

Icône de RUN à cliquer Pour exécuter le Lancement de l'application ecrite

Page 19

(20)

Partie 1 Apprenons à mieux nous servir de Processing

Testez ce programme

Changez ce chiffre

Observez ! ( avec un run )

Testez ce programme

Testez vos programmes dans le draw

1) comment dessiner un rectangle ( allez consulter référence en haut à droite) Rectangle plein ou vide comment faire .. rect() ?

Entouré d'une ligne ou non !!

Dessinez votre espace de jeu .. une table rectangle de 500/400 verte Au centre d'une fenêtre de programme de 600/500 ( noire )

Positionnez une petite raquette au milieu gauche de ta table

2 ) Récupérez la valeur de la position x ou Y de la souris , et injectez la dans les coordonnées verticales de la raquette!!

Servez vous de cet exemple

3) positionnez une balle .. ( ellipse ) sur le tapis vert en PosX et PosY ( 300 300) 4) animez cette balle en faisant que PosX= PosX+dx et PosY = PosY + dy ( 1 ) Si la balle sort du tapis vert à droite c'est que PosX est trop grand

Faites un if et si c'est le cas inversez dx Faites cela pour les 4 cotés du tapis vert . ;

Vous comprenez .. alors faites rebondir .. sur une seule raquette à la souris ! Changer les 3 valeurs

ajoutez cette ligne après le background À la place de

Glissez avant ellipse À la

place

Glisser un fill(50) avant une nouvelle ellipse

Page 20

(21)

Page 21 RAPPORT FINAL

C'est le document à remettre avant la soutenance , et utiliser lors de soutenance finale de la SAE de S2.

Constitution du rapport Il est en 3 parties

Partie 1 ..Aspect Général de la SAE de S2

Ce sont des explications générales, destinée aux novices Exemple de points abordés

Rôle de la SAE , contexte d'utilisation , photos Cahier des charges

Décomposition fonctionnelle

Avec Mise en avant du rôle de chaque fonctions Partie 2 .. Aspect particulier de chacune des fonctions

Présenter les fonctions de la décomposition fonctionnelle.

Schémas électrique , ou organigrammes . Texte simples montrant votre curiosité . Pas de démonstrations .

Partie 3.. Carte Capteur de TEMPERATURE

Replacer cette fonction dans le contexte de la SAE Rappeler son cahier des charges

Donner son schéma

Prouver le choix des composants en relation avec le cahier des charges.

Implantation , nomenclature .testes de production.

Exemple de mise en œuvre final ..

Prix attendu ( pour 100 cartes)

Un BUT de S2 qui disposera de la partie 3 de ce

document , sera capable de réaliser et faire fonctionner la carte capteur de température , sans votre aide.

Références

Documents relatifs

Pour cela on va créer une interface graphique avec le logiciel Labview afin de visualiser les mesures et de les sauvegarder dans un fichier2. On mesure les tensions (indiquées sur

Certain adverbs and adverb phrases, mostly with a restrictive or negative sense, can for emphasis be placed first in a sentence or clause and are then followed by the inverted

[r]

Il s’inscrit dans le cadre des recherches en cours au laboratoire COGIT sur l’identification et la caractérisation de styles cartographiques, l’aide à la conception de

Enfin, les données sont de plus en plus accessibles, par exemple les informa- tions pour la randonnée (chemins, itinéraires, niveaux de difficulté, longueurs…) ; elles

Le rapport entre le pourcentage d’étrangers dans la population totale de l’Eure (fig. 7) et le pourcenta- ge d’étrangers dans la population active de ce dépar- tement (fig. 8)

La chaîne de production doit prévoir une propagation la plus automatique possible des mises à jour fournies sur la base de données géographique source dans les bases de

2. Quelle est l'allure des lignes de champ magnétique créées par le courant électrique traversant le fil. Représenter le champ magnétique créé par le courant