bonjour, c'est Pierre Huguet
vous connaissez certainement Cyrano de Bergerac ?
moi j'adore !
et en particulier de la scène où il invente
sept moyens pour aller sur la lune
et ça pour protéger les amours de Christian et Roxanne.
Alors, nous, on ne va pas aller sur la lune et je ne sais pas quelles amours on va protéger
mais on va essayer d'inventer plusieurs manières
de faire dire l'étage à son téléphone quand on est dans l'ascenseur
alors pour donner un exemple de ce que l'on veut obtenir,
j'ai enregistré avec une caméra et un micro
l'étage affiché par l'ascenseur et le son de mon téléphone
et je vais enregistrer en simultané
une copie de mon téléphone.
Alors kles voisins vont me prendre pour un fou mais je vais quand même aller
essayer ça dans l'ascenceur de mon immeuble.
alors c'est rigolo, non, ce téléphone qui nous dit l'étage ?
maintenant on va passer à la réalisation
Alors, comment on pourrait bien faire ?
Eh bien, il va falloir utiliser des capteurs
Faites la liste des capteurs que vous avez sur votre téléphone
et essayez de voir comment vous pourriez vous en servir pour
calculer l'étage
Alors, il vous faut du temps, faites PAUSE vidéo et puis
revenez dans 5 minutes avec des idées
Alors vous avez vraiment cherché ?
Si vous êtes plusieurs, présentez votre idée à votre voisin
Essayez de la valider, est-ce que ça va bien marcher,
Est-ce que ça ne va pas marcher, Refaites une petite pause avant de continuer.
Bon, eh bien alors n va aller !On pouvait lire oh Dieu bien des choses en somme
Comme dirait Cyrano. Alors il ya plusieurs solutions
il ya pas mal de capteurs ce le smartphone : l'accéléromètre
sur certains un baromètre un chronomètre et des capteurs de luminosité et de proximité
il y a la caméra
ALors on peut utiliser l'un ou l'autre de ces capteurs ou plusieurs ensemble
c'est souvent ce qui donnera les meilleurs résultats
ALors ici, nous allons voir la solution avec le baromètre et nous verrons plus tard les solutions avec l'accéléromètre et le chronomètre par exemple.
ce que nous allonsutiliser comme propriété physique pour mesurer les étages
c'est la baisse de la pression atmosphérique en fonction de l'altitude.
Alors cette baisse elle a été mesurée par Blaise Pascal justement au début du
17ème siècle. elle est de 0,12 hectopascals par mètre.
un Pascal, c'est un Newton par mètre carré
Alors quand on monte d'un mètre, le poids
sur un un mètre carré, baisse
de l'équivalent d'un mètre cube d'air soit une baisse de 1,22 kilos fois la
gravité 9,81
ce qui nous donne 12 Newton par mètre carré ou 12 Pascal, à chaque fois que l'on monte d'un mètre.
alors cette pression, on va la mesurer avec un capteur
qui est un baromètre
il faut donc que votre téléphone soit équipé d'un baromètre,
ce qui n'est pas systématique
c'est le cas des Nexus 1 à 5 et dela liste des téléphones
qui sont indiquésà l'adresse ci-dessus.
Par ailleurs le composant barométrique n'est pas présent de façon nominale dans App Inventor,
Il faut le charger pour pouvoir l'utiliser.
Alors avant de commencer à coder, on va préciser l'algorithme
que l'on va utiliser
premièrement
on va définir la pression au sol ou la pression l'état zéro,
comme la pression de référence.
deuxièmement on va ensuite mesurer en continu la pression et à chaque fois
que cette pression change
on va calculer la différence : pression de référence moins pression actuelle.
comme la pression baisse, la valeur sera positive quand on monte.
on va ensuite diviser par 0,12 si c'est en hecto-Pascals pascale
ou par 12 si on est en Pascals, pour obtenir la hauteur en mètres.
ensuite on va diviser par la hauteur de chaque étage
que l'on définira comme une variable, on obtiendra comme ça le numéro de l'étage
Enfin on va arrondir à l'entier le plus proche et on annoncera l'étage
avec le haut-parleur du téléphone si cet étage a changé.
Pour l'interface utilisateur, ça ne va pas être très compliqué on va mettre un
bouton pour mettre en correspondance la pression en référence et l'étage zéro
ensuite on va mettre un label pour indiquer la hauteur d'étage
et une zone de texte pour
gérer la variable de hauteur d'un étage.
on va afficher une zone de texte
pour l'étage avec un label pour indqiuer de quoi on parle
et ensuite on mettra deux labels pour la pression et la hauteur
côté composants, on aura besoin d'un composant baromètre que l'on va aller chercher
à cette adresse là puisque ce n'est pas un composant qui
nominalement présent dans App Inventor
et on va aussi prendre un composant "texte parole" pour dire l'étage.
Le dernier point que je fais toujours personnellement, je mets toujours un
composant "notificateur" pour les messages et le débogage.
alors on va maintenant passer
à la programmation et on va démarrer App Inventor. Ce démarrage, je le fais à partir d'une icône que j'ai mise sur le bureau et dont l'avantage est de lancer directement App Inventor en français.
vous pouvez aussi programmer cette application en anglais si vous préférez
donc dans les projets, je crée un nouveau projet que je vais appeler
"etageBaro"
et je vais d'abord créer la partie interface utilisateur
Dans cette interface utilisateur que je vais déclarer en moins de "centré"
pour que les choses soient centrées au milieu,
je vais créer un bouton quis era un bouton Reset
Donc ce boiton, je mest à l'intérieur, Reset et le nom du bouton, pour que je puisse m'en rappeler, je vais le renommer en "boutonReset"
Ensuite dans un arrangement horizontalje vais me mettre sous les informations
nécessaires pour pouvoir modifier la hauteur de l'étage, donc je vais prendre un arrangement horizontal,
ici
donc je vais déclarer la largeur en "remplir parent"
pour qu'elle occupe tout l'espace
et dans cet arrangement horizontal, je vais d'abord mettre un label
qui va m'expliquer de quoi il s'agit, donc de mettre la hauteur de l'étage en mètres
Alors, ce label, je vais lui dire qu'il a une police de 20 caractères.
pour qu'on le evoie à peu près correctement
et puis je vais rajouter à ça
une zone de texte
dans laquelle je vais pouvoir afficher et modifier :
c'est pour ça qu'on utilise une zone de texte
la hauteur de l'étage. Donc, je vais renommer ça en
zone de texte, hauteur étage
et je vais lui dire que la taile de la police est de 20
je vais également lui dire que dans cette zone de texte, on ne peut mettre que des nombres,
uniquement des nombres. Voilà
ensuite je vais rajouter
une autre zone de texte
mais cette fois ci, des caractères de taille 80
et en gras pour afficher l'étage.
Donc l'étage, ça sera également des nombres uniquement.
Je vais renommer
cette zone de texte, en disant que c'est l'étage.
et je vais dire que, par défaut, c'est zéro.
ensuite, je vais mettre un label pour expliciter ce que j'ai affiché au dessus
et donc dans ce label, je vais mettre que c'est : "étage"
ensuite j'ai besoin de deux autres labels
celui-ci je vais quand même le mettre en taille 32. Comme ça on verra bien et puis on va utiliser deux autres labels pour afficher la pression et la hauteur
donc un label que je vais renommer
label pression
dans lequel on va afficher la pression et je vais mettre pression par défaut,
dans le txte pour s'en rappeler, la taille de la police, je vais la fixer à 20
et je vais faire la même chose pour que la hauteur
j'indique que c'est le label
hauteur
et je vais mettre que c'est par défaut que c'est : "hauteur"
Voilà. et avec une taille de police de 20
Alors ça a l'air de bien se présenter, Le reset, je vais lui mettre quand m^me une taille de 20 pour les caractères
j'avais oublié de le faire
et j'ai oublié
d'une part que l'étage, doit être centré,
donc je vais dire que la zone de texte qui représente l'étage
est une zone qui est centrée : alignement du texte : centré
Je vais dire aussi que par défaut, la valeur de la hauteur de l'étage
ça sera 2.7 comme ça,si jamais j'oublie de la mettre,
j'aurai une valeur qui sera correcte
on va maintenant passer aux composants de service qui n'apparaissent pas dans
l'interface utilisateur et qui sont nécessaires à l'application
On va prendre en particulier un notificateur pour afficher les messages
on va avoir besoin d'un composant "texte à parole" qui est dans les
médias pour convertir le texte en paroles, et dire l'étage. donc c'est un composant "texte à parole" qui est dans le 3° onglet. et enfn on aura besoin d'un baromètre qui est dans les extensions. Il n'est pas présent par défaut dans App Inventor et on va devoir l'importer.
Alors pour l'importer je vais vous afficher ici l'adresse, mais on va nous,
aller le chercher directement sur internet. Par exemple avec
App inventor barometer extension. Alors j'ai fait des fautes d'orthographe, mais il me l'a trouvé quand même. C'est celui de Pura-Vida Apps, à cette adresse
et vous avez ici toute une documentation, et à la fin de
documentation vous pouvez
charger extension .aix vous cliquez dessus
et l'application se télécharge
dans votre répertoire de téléchargement normalement
vous enregistrez
et votre extension .aix est à présente sur votre ordinateur. Vous revenez sur App Inventor et vous importez l'extension depuis la zone de téléchargement.
Voilà : aix, import Voilà : mon extension Taifun barometer est importée.
Ce que je dois faire, c'est rajouter ce composant dans l'interface. et maintenant, j'ai terminé la aprtie DESIGN de l'application,
je vais pouvoir aller vers la programmation en cliquant sur les blocs en haut à droite.