Vous êtes sur la page 1sur 39

Vous retrouverez dans ce dossier, les descriptifs des exercices proposs dans Groomy SysML

limage de ce quils sont dans le logiciel.

Ceux-ci peuvent cependant tre agrments de commentaires ou remarques.

La version papier a galement lavantage de pouvoir tre imprime et distribue aux lves
quand cela savrera ncessaire.

Ce dossier nest pas une initiation Groomy SysML. Il contient les seuls dveloppements
pdagogiques relatifs lensemble de maquettes Maison 3D et volet roulant.

Il est crit de manire pouvoir tirer chaque exercice en entier, sans "chevauchement " avec
celui qui prcde ou celui qui suit, ce qui explique parfois des fins de pages blanches.
Sommaire
Ex 1a : Comment grer l'clairage extrieur lors de l'arrive du propritaire ?............................................................................Page 3

Ex 1b : Comment grer l'clairage extrieur et intrieur lors de l'arrive du propritaire ?.......................................................Pages 4

Ex 1c : Comment grer l'clairage extrieur et intrieur lors de l'arrive du propritaire ou d'un passant ?...........................Pages 5-6

Ex 2a : Comment grer l'clairage extrieur lors de la sortie d'une personne de la maison ?...................................................Pages 7

Ex 2b : Comment grer l'clairage extrieur et intrieur lors de la sortie d'une personne de la maison ?..............................Pages 8-9

Ex 3a : Comment grer le chauffage pour maintenir une temprature constante dans la maison ?...................................Pages 10-11

Ex 3b : Comment grer le chauffage si une porte ou une fentre sont restes ouvertes ?.................................................Pages 12-13

Ex 4a : Comment commander le volet par programme pour le descendre ?.............................................................................Page 14

Ex 4b : Comment commander le volet par programme pour le monter ?...................................................................................Page 15

Ex 4c : Comment commander le volet en fonction du jour ou de la nuit ?..................................................................................Page 16

Ex 4d : Comment commander le volet en utilisant des sous-programmes ?........................................................................Page 17-18

Ex 5a : Comment crer une alerte sonore permanente ?...........................................................................................................Page 19

Ex 5b : Comment une alerte sonore pendant une dure dtermine ?...............................................................................Pages 20-21

Ex 5c : Comment crer une alerte sonore diffrente signalant une erreur de code ?................................................................Page 22

Ex 6a : Comment utiliser le digicode pour activer l'alarme ?...............................................................................................Pages 23-24

Ex 6b : Activer une alarme Et si une fentre est reste ouverte ?..........................................................................................Page 25

Ex 6c : Comment utiliser le digicode pour activer l'alarme, avec gestion d'une erreur dans la saisie du code ?................Pages 26-27

Ex 6d : Comment utiliser le digicode pour dsactiver l'alarme ?................................................................................................Page 28

Ex 6e : Dsactiver l'alarme avec le digicode. Et si on se trompe de code ?.......................................................................Pages 29-30

Ex 6f : Un programme qui active ou dsactive l'alarme en fonction de la situation.............................................................Pages 31-32

Ex 7a : Comment grer la scurit lors du dpart du propritaire ?....................................................................................Pages 33-34

Ex 7b : Comment grer la scurit lorsque le propritaire est de retour ?...............................................................................Pages 35

Ex 8a : Comment dcourager un cambrioleur pendant la nuit ?.........................................................................................Pages 36-37

Ex 8b : Comment dcourager un cambrioleur le jour, en lui faisant croire la maison occupe ?...............................................Page 38

Page 2
Exercice 1a
Comment grer lclairage extrieur lors de larrive du propritaire ?

On souhaite automatiser le fonctionnement du systme d'clairage de la maison.

Pour simplifier le problme, dans un premier temps, on ne se proccupe que :

de l'clairage extrieur
de ce qui doit se passer lorsque le propritaire arrive chez lui.
Vous avez votre disposition les seules instructions et matriels associs ci-dessous.

Avant de commencer crire votre diagramme, reprez physiquement sur la maquette, les diffrents capteurs
et actionneurs associs aux tests et aux actions dont vous disposez.

crivez au brouillon, ce qui doit se passer par une suite de phrases courtes et claires. Ce sera ce que l'on
appelle le scnario.

Aucun diagramme ne vous est donn, afin de vous permettre d'imaginer des solutions peut-tre diffrentes de
celles que vous proposera srement votre professeur la fin de l'exercice, en guise de corrig.

Page 3
Exercice 1b 1/2
Comment grer lclairage extrieur et intrieur lors de larrive du propritaire ?

Comme l'exercice prcdent (1a), on souhaite automatiser le fonctionnement du systme d'clairage de la maison.

Et si en plus de l'clairage extrieur, on se proccupait aussi de l'clairage intrieur ?


On n'envisage toujours de ne traiter que le problme pos l'arrive du propritaire.
Vous avez votre disposition les seules instructions et matriels associs de l'exercice 1a, auxquels on ajoutera deux
actions.

L'actionneur Pause 10s est symbolis comme le montre le dessin ci-dessus droite, car il correspond un arrt de
10 s du droulement du programme, temps pendant lequel aucun actionneur ne peut voir son tat changer.

Page 4
Exercice 1b - 2/2
Comment grer lclairage extrieur et intrieur lors de larrive du propritaire ?

Avant de commencer crire votre diagramme, reprez physiquement sur la maquette, le nouvel actionneur
lampe rez-de-chausse.

Lactionneur Pause 10s na pas dexistence physique, car il est purement logiciel. Il ne peut donc pas
tre repr sur la maquette.

Servez-vous du programme de l'exercice prcdent (1a), car il est bien sr, une bonne base de dpart.

Le programme dbute ainsi que le suggre le dessin ci-dessous.

Page 5
Exercice 1c 1/2
Comment grer lclairage extrieur et intrieur, lors de larrive du propritaire ou dun passant ?

L'exercice prcdent (1b), nous a permis d'automatiser le fonctionnement du systme d'clairage extrieur et
intrieur de la maison, lors de l'arrive du propritaire.

Et si on envisageait, que l'arrivant ne soit pas forcment le propritaire ?


Ce peut tre un animal qui passe, ou un curieux qui s'est avanc dans l'entre pour voir ...
Qu'est-ce que cela doit changer, par rapport au fonctionnement prcdent ?
Vous avez votre disposition les seules instructions et matriels associs de l'exercice 1b, auxquels on ajoute
un test de temporisation, qui permet lui seul de rgler votre problme, partir de l'exercice prcdent.

Page 6
Exercice 1c 2/2
Comment grer lclairage extrieur et intrieur, lors de larrive du propritaire ou dun passant ?

Notes concernant la temporisation :

La temporisation est un test logiciel qui permet de connatre le temps coul partir dun instant choisi.

Attention ! Il faut penser qu' la diffrence d'une pause, une temporisation doit toujours tre initialise
(remise zro) juste avant d'tre utilise. Cela correspond, de manire image, laction qui consiste
retourner le sablier.

Cette remise zro est une action, et s'crit donc dans une case rectangulaire, le plus souvent en mme
temps que l'action qui prcde le dbut du comptage du temps.

A la diffrence de la pause galement, une temporisation ne bloque pas le programme, mais offre deux
possibilits (Branche >=0 ou Branche <0) suivant que le temps choisi est coul ou non.

Comment dmarrer ?

Servez-vous du programme des exercices prcdents (1a et 1b), car ils sont votre base de dpart.

Le programme dbute ainsi que le suggre le dessin ci-dessous.

Page 7
Exercice 2a
Comment grer lclairage extrieur lors de la sortie dune personne de la maison ?

Nous allons maintenant automatiser le fonctionnement du systme d'clairage, lorsqu'une personne sort
de la maison.

On ne s'occupe pour l'instant que de l'clairage extrieur.


La sortie peut correspondre un dpart ou une sortie brve.
Vous avez votre disposition les seules instructions et matriels associs ci-dessous.
Vous pourrez bien sr ajuster le temps indiqu pour la pause en fonction de vos besoins.

Avant de commencer crire votre diagramme, reprez


physiquement sur la maquette, les diffrents capteurs et actionneurs
associs aux tests et aux actions dont vous disposez.

Prenez l'habitude d'crire au brouillon, ce qui doit se passer,


sous forme d'une suite de phrases courtes et claires. Cela vous
permettra de bien prciser ce que sera le scnario de fonctionnement.

Le programme dbute ainsi que le suggre le dessin ci-contre.

Page 8
Exercice 2b 1/2
Comment grer lclairage extrieur et intrieur lors de la sortie dune personne de la maison ?

Nous voulons automatiser le fonctionnement du systme d'clairage, lorsque le propritaire sort


dfinitivement de la maison

Nous allons grer dans cet exercice, la fois l'clairage extrieur et intrieur
Si votre systme est complet et quip du volet roulant, il faudra prvoir dans cet exercice la
fermeture de ceux-ci.

Pour plus de clart, nous allons ci-dessous, prciser le fonctionnement souhait, en donnant un scnario
condens :

1. Aprs l'initialisation du systme, si quelqu'un sort pour s'en aller, on allume l'extrieur.
2. Le signal du dpart sera la mise en marche de l'alarme, symbolise ici par un simple appui sur le
bouton du digicode.
3. Il se peut aussi que le propritaire ne mette pas l'alarme en marche car son dpart n'est pas
dfinitif.
4. Il faut alors prvoir un temps (10 secondes dans l'exemple), avant d'teindre les lumires
intrieures et extrieures et lui laisser le temps de partir.
5. L'appui sur le digicode dclenche le voyant d'alarme et la fermeture du volet.
6. Lorsque le volet est en bas, on l'arrte. (car il ne s'arrtera pas tout seul !)
7. On peut alors, lorsque l'on a vrifi qu'il n'y a plus personne l'extrieur, teindre les lumires
intrieures et extrieures, dans un dlai de 10 secondes par exemple, pour viter au partant de
s'loigner dans le noir.
L'exercice tant complexe, le diagramme qui s'ouvre au lancement de l'exercice, a les particularits
suivantes :

Il contient toutes les cases ncessaires la ralisation d'une solution.


Les cases contenant des instructions sont compltes.
Il manque des connecteurs qu'il vous revient de mettre en place.

Page 9
Exercice 2b 2/2
Comment grer lclairage extrieur et intrieur lors de la sortie dune personne de la maison ?

grer lclairage lors de la sortie dune personne de la maison

Page 10
Exercice 3a 1/2
Comment grer le chauffage pour maintenir une temprature constante dans la maison ?

Nous voulons automatiser le fonctionnement du systme de chauffage de la maison, pour maintenir


l'intrieur une temprature de confort.

Remarques :

Le systme est ainsi fait pour que la temprature ne peut-tre maintenue une valeur constante,
mais doit varier entre deux valeurs limites.
On pourra considrer que la diffrence entre ces deux limites est de l'ordre de 1.
Pour faciliter le test du programme, la valeur absolue des tempratures mini et maxi, dpendra non
pas d'une ralit dans la simulation, mais de la temprature du local dans lequel vous vous
trouvez.
Choisissez toujours une valeur minimum lgrement suprieure la temprature ambiante.
Ainsi, si la salle de classe est 20, vous choisirez utilement une temprature de 22 comme
minimum.
Vous pourrez connatre la temprature intrieure actuelle en allant dans le menu "Affichage" de
Groomy SysML, et en choisissant l'option "Variables et entres/sorties".

Il s'ouvre alors la fentre affichage latrale droite suivante


Elle affichera l'entre analogique "Temprature" qui reprsente bien sr la temprature
intrieure dans la maquette.

Page 11
Exercice 3a 2/2
Comment grer le chauffage pour maintenir une temprature constante dans la maison ?

En mode "Pilotage" , elle vous affichera l'ensemble des variables disposition pour
le programme, dont la variable "Temprature".
La variable "Temprature" est place en fin de liste.

crivez au brouillon, ce qui doit se passer, sous forme d'une suite de phrases courtes et claires. Cela
vous permettra de bien prciser ce que sera le scnario de fonctionnement.

Le programme dbute par un connecteur, ainsi que le suggre le dessin ci-dessous.

Page 12
Exercice 3b 1/2
Comment grer le chauffage si une porte ou une fentre sont restes ouvertes ?

Nous voulons automatiser le fonctionnement du systme de chauffage de la maison, pour maintenir


l'intrieur une temprature de confort.
Nous voulons cependant prendre en compte, pour viter des gaspillages d'nergie, le fait qu'une porte ou
une fentre peuvent tre ouvertes, volontairement ou accidentellement, pendant un certain temps.

Remarques :
Le systme est ainsi fait pour que la temprature ne peut-tre maintenue une valeur constante,
mais doit varier entre deux valeurs limites.
On pourra considrer que la diffrence entre ces deux limites est de l'ordre de 1.
Pour faciliter le test du programme, la valeur absolue des tempratures mini et maxi, dpendra non
pas d'une ralit dans la simulation, mais de la temprature du local dans lequel vous vous
trouvez.
Choisissez toujours une valeur minimum lgrement suprieure la temprature ambiante.
Ainsi, si la salle de classe est 20, vous choisirez utilement une temprature de 22 comme
minimum.
Vous pourrez connatre la temprature intrieure actuelle en allant dans le menu "Affichage" de
Groomy SysML, et en choisissant l'option "Variables et entres/sorties"

Il s'ouvre alors la fentre affichage suivant deux configurations possibles.


En mode "Virtuel" , elle affichera l'entre analogique "Temprature" qui reprsente
bien sr la temprature intrieure dans la maquette.

Page 13
Exercice 3b 2/2
Comment grer le chauffage si une porte ou une fentre sont restes ouvertes ?

En mode "Pilotage" , elle vous affichera l'ensemble des variables disposition pour le
programme, dont la variable "Temprature".
La variable "Temprature" est place en fin de liste.

La seule diffrence avec le programme de l'exercice 3a, rside dans les conditions d'arrt du chauffage
qui seront doubles :
Soit on a atteint la temprature maximale
Soit une porte ou une fentre ont t ouvertes, auquel cas cela ne sert rien de
chauffer.

Le diagramme qui s'ouvre au lancement de l'exercice est complet. Les cases comprenant des indications
sont galement compltes.

Page 14
Exercice 4a
Comment commander le volet par programme pour le descendre ?

Le volet roulant se commande manuellement par l'intermdiaire du jeu de boutons situs sur la maquette.
Cependant, il est intressant d'en automatiser le pilotage par programme, de manire intgrer son
fonctionnement dans l'ensemble du systme de domotique qui va grer la maison.

Nous allons raliser sparment les programmes qui assureront la commande de monte et de descente
du volet.

Nous ne nous occupons dans cet exercice que du programme de descente du volet.
Le cble plat reliant la maquette doit tre connect l'interface Groomy l'aide de l'adaptateur
Volet roulant et des cordons jaunes et bleus.
Ce n'est pas l'appui sur un bouton qui commande la descente du volet, mais le lancement du
programme de descente.

L'criture du programme ne prsente pas de difficult, cependant, il appelle les remarques suivantes :

Pour pouvoir l'utiliser plus tard, sous forme de sous-


programme, le programme ne devra pas boucler sur lui-mme, mais
se terminer par la commande "Fin", comme le montre le dbut du
diagramme ci-contre, qui s'ouvre au lancement de l'exercice.
Il faudra donc remonter le volet manuellement l'aide du
panneau de commande pour tester le programme plusieurs fois.

Important :

Si vous faites une erreur dans l'criture de votre exercice et que


le moteur du volet ne s'arrte pas une fois celui-ci ferm, vous risquez
de le dtriorer, car le moteur va forcer.

Vous devrez alors arrter le moteur l'aide du bouton stop du


panneau de commande qui a toujours la priorit sur le programme
pour des raisons de scurit.

Cependant, en cas d'oubli ou de manque de raction de la part


de l'utilisateur, une scurit a t introduite dans le circuit lectronique
qui arrtera le moteur automatiquement, dans un dlai de quelques
secondes aprs le blocage.

Page 15
Exercice 4b
Comment commander le volet par programme pour le monter ?

Le volet roulant se commande manuellement par l'intermdiaire du jeu de boutons situs sur la maquette.
Cependant, il est intressant d'en automatiser le pilotage par programme, de manire intgrer son
fonctionnement dans l'ensemble du systme de domotique qui va grer la maison.
Nous allons raliser sparment les programmes qui assureront la commande de monte et de descente
du volet.

Nous ne nous occupons dans cet exercice que du programme de monte du volet.

Le cble plat reliant la maquette doit tre connect l'interface Groomy l'aide de
l'adaptateur Maison 3D et des cordons jaunes et bleus.

Ce n'est pas l'appui sur un bouton qui commande la monte du volet, mais le lancement du
programme de monte.

L'criture du programme ne prsente pas de difficult, cependant, il appelle les remarques suivantes :

Il faudra donc descendre le volet manuellement l'aide du panneau de commande pour


tester le programme plusieurs fois.

Pour pouvoir l'utiliser plus tard, sous forme de sous-


programme, le programme ne devra pas boucler sur lui-mme, mais
se terminer par la commande "Fin", comme le montre le dbut du
diagramme ci-contre, qui s'ouvre au lancement de l'exercice.

Important :

Si vous faites une erreur dans l'criture de votre exercice et que


le moteur du volet ne s'arrte pas une fois celui-ci ouvert, vous risquez
de le dtriorer, car le moteur va forcer.
Vous devrez alors arrter le moteur l'aide du bouton stop du
panneau de commande qui a toujours la priorit sur le programme
pour des raisons de scurit.
Cependant, en cas d'oubli ou de manque de raction de la part
de l'utilisateur, une scurit a t introduite dans le circuit lectronique
qui arrtera le moteur automatiquement, dans un dlai de quelques
secondes aprs le blocage.
Page 16
Exercice 4c
Comment commander le volet en fonction du jour ou de la nuit ?

Le volet roulant se commande manuellement par l'intermdiaire du jeu de boutons situs sur la maquette.
Cependant, il est intressant d'en automatiser le pilotage par programme, en fonction du jour ou de la
nuit, de manire intgrer son fonctionnement dans l'ensemble du systme de domotique qui va grer la
maison.
Les 2 cbles plats reliant la maquette doivent tre connects l'interface Groomy l'aide de
l'adaptateur Maison 3D et Volet Roulant et des cordons jaunes et bleus en optimisant le nombre
d'entres et de sorties de la Groomy avec les entres et sorties rellement utilises pour l'exercice
(suivre les affectations dcrites dans le fichier joint).
L'criture du programme ne prsente pas de difficult, cependant, il appelle les remarques suivantes :
Ce n'est pas l'appui sur un bouton qui commande la monte ou la descente du volet, mais au
lancement du programme, le moment de la journe o nous sommes : le jour ou la nuit.
Bien que ce soit vident, il n'est pas forcment inutile de rappeler que, pour le systme, s'il
ne fait pas nuit, c'est qu'il fait jour ... et vice-versa
Pour pouvoir l'utiliser plus tard, sous forme de sous-programme, le programme ne devra pas
boucler sur lui-mme, mais se terminer par la commande "Fin", comme il a dj t fait dans les
exercices 4a et 4b.
Il faudra donc positionner manuellement le volet l'aide du panneau de commande pour
tester le programme dans toutes les situations.

Le programme dbute ainsi que le montre le dbut du diagramme ci-dessous.

Important :

Si vous faites une erreur dans l'criture de votre exercice et que le moteur du volet ne
s'arrte pas une fois celui-ci ouvert, vous risquez de le dtriorer, car le moteur va forcer.
Vous devrez alors arrter le moteur l'aide du bouton stop du panneau de commande qui a
toujours la priorit sur le programme pour des raisons de scurit.
Cependant, en cas d'oubli ou de manque de raction de la part de l'utilisateur, une scurit
a t introduite dans le circuit lectronique qui arrtera le moteur automatiquement, dans un dlai
de quelques secondes aprs le blocage.
Page 17
Exercice 4d - 1/2
Comment commander le volet en utilisant des sous-programmes ?

Nous voulons faire monter ou descendre le volet roulant, en fonction du jour ou de la nuit, comme
l'exercice prcdent, mais en utilisant la technique des sous-programmes

Vous avez normalement dj crit deux programmes qui permettent de faire monter et descendre le volet.
Ils devraient tre de la forme de ce qui est crit ci-dessous :

La gestion de la monte et de la descente du volet existe donc dj, grce ces deux programmes. Nous
allons les rutiliser dans la gestion du volet en fonction du jour ou de la nuit.

Pour cela suivez la procdure dcrite ci-dessous :


1. Le programme propos au dpart est ouvert.

Page 18
Exercice 4d - 2/2
Comment commander le volet en utilisant des sous-programmes ?

2. Les sous-programmes sont prsents en haut de la fentre du diagramme sous forme d'onglets
comme indiqu ci-dessous.
Exercice 4d

2/2
Comment commander le volet en utilisant des sous-programmes ?
3. Ces deux onglets correspondent au deux mouvements du volet.

4. Le problme est maintenant trs simple. Dans votre programme principal, crivez : "Descendre"
lorsqu'il fait nuit "Monter" lorsqu'il ne fait pas nuit (c'est dire qu'il fait jour).

5. Les cases "Action, appeler un


comportement" ainsi remplies sont
prsentes autrement, pour signifier leurs
natures diffrentes. Elles excutent non
pas une action, mais une srie
d'actions et de tests organiss pour
raliser une tche complte : ce sont ce
que l'on appelle des "Sous-
programmes". Ci-contre, le sous-
programme "Descente" qui se rsume
alors une case action.

Page 19
Exercice 5a
Comment crer une alerte sonore permanente ?

On veut crer par programme, un signal d'alarme qui met des bips de manire continue.

Chaque bip aura une dure d'une demi-seconde, et sera spar du suivant par le mme temps.

Le signal sera mis en boucle et ne pourra tre stopp autrement que par l'arrt du programme.

Vous disposez pour cela de l'actionneur ci-dessous, le voyant n'tant pas utilis.

Vous pourrez indiffremment utiliser des temporisations ou des pauses, l'une et l'autre remplissant
la mme fonction dans ce cas l.

Le programme commence par une case "Action", comme le montre le dbut du diagramme ouvert
au lancement de l'exercice.

Page 20
Exercice 5b 1/2
Comment crer une alerte sonore pendant une dure dtermine ?

On veut crer par programme, un signal d'alarme qui met des bips pendant un temps limit.

Chaque bip aura une dure d'une demi-seconde, et sera spar du suivant par le mme temps.
Le signal sera mis pendant une dure limite de 10 secondes par exemple.

Pour limiter ce temps, nous allons utiliser une nouvelle fonction : la variable
La variable est une sorte de bote l'intrieur de laquelle on place un nombre qui sera
mmoris.
On pourra par la suite comparer ce nombre un autre, voire l'augmenter (on dit
incrmenter) ou le diminuer (on dit dcrmenter) en fonction du droulement du
programme.
Vous dcouvrirez dans la suite des exercices tout l'intrt qu'il y a utiliser les variables, et
comment elles simplifient l'criture des diagrammes.

Nous allons utiliser ici, une variable qui s'appelle :


Dlai, et nous lui fixerons par programme la valeur 0 au
dpart.

Chaque fois que le programme aura fait un Bip, nous


augmenterons cette variable de 1.

Lorsque la valeur de la variable sera gale 10,


nous terminerons le programme, et celui-ci peut se
reprsenter par le schma ci-contre. Observez-le bien !

Page 21
Exercice 5b 2/2
Comment crer une alerte sonore pendant une dure dtermine ?

Le diagramme propos l'ouverture comprend toutes les cases actions et tous les connecteurs. Les
cases actions ayant des instructions sont compltes.

Page 22
Exercice 5c
Comment crer une alerte sonore diffrente, signalant une erreur de code ?

On veut crer un signal d'alerte, en cas d'erreur lors de la saisie du code de scurit au digicode.
Celui-ci devra tre diffrent du signal d'alarme d'intrusion et nettement reconnaissable.

Pour cela :

Le rythme et la dure de l'alarme d'erreur de code, seront nettement diffrents de ceux de l'alarme
d'intrusion.

On prendra un rythme plus rapide de l'ordre de 0.2s pour un bip et le mme temps pour l'intervalle
entre deux bips.

La dure totale du signal, correspondra 5 rptitions.

Le digicode tant juste droite de la porte, on rajoutera utilement l'allumage clignotant de la


lampe extrieure, ce qui diminuera le risque de confusion avec un signal d'alarme d'intrusion.

Le programme tant relativement similaire celui de l'exercice prcdent, le diagramme propos


l'ouverture est le mme.

Attention cependant bien se limiter l'criture du programme qui excute le signal d'alarme d'erreur,
sans se proccuper de ce qui le dclenche.

Page 23
Exercice 6a - 1/2
Comment utiliser le digicode pour activer l'alarme ?

Le systme de protection de la maison par dclenchement d'une alarme en cas d'intrusion, est
gnralement mis en service au dpart du propritaire, en activant un code sur un clavier, que l'on appelle
souvent le "digicode".
Le digicode de votre maquette, pour des raisons de simplification, n'est pas un clavier, mais un
simple bouton-poussoir, situ droite de la porte d'entre.
Pour ce premier exercice concernant l'utilisation du digicode, le travail ne sera pas d'crire le
diagramme, mais de comprendre le fonctionnement et l'utilisation de celui qui est propos.

Pour cela, il vous faudra d'abord trouver une rponse aux questions qui suivent, mais avant, veuillez
prendre connaissance des remarques suivantes :

Pour faciliter les recherches, en mode Pilotage, ouvrez la fentre "Variables et entres/ sortie" en
cliquant ici

Elle vous montrera l'ensemble des variables disposition, mme si toutes ne sont pas utilises
ici.
Vous verrez voluer certaines de ces variables, et cela vous aidera la comprhension du
fonctionnement du programme.
Les questions doivent de prfrence tre traites dans l'ordre o elles sont poses, mais si l'une
d'entre-elles ne vous dit rien, passez la, et revenez-y plus tard.

1. Vous avez tudi lors de l'exercice prcdent, ce que sont les variables. Combien de variables sont
utilises dans le programme ? A votre avis que reprsente(nt)-t-elle(s) ?

.............................................................................................................................................................

.............................................................................................................................................................

.............................................................................................................................................................
2. D'aprs-vous quel code faut-il saisir, pour activer l'alarme ?

.............................................................................................................................................................

.............................................................................................................................................................

Page 24
Exercice 6a 2/2
Comment utiliser le digicode pour activer l'alarme ?

3. Le code est saisi par une succession d'appuis sur le bouton du digicode. Comment est-on
prvenu qu'on a appuy sur le bouton ?

.............................................................................................................................................................

.............................................................................................................................................................
4. Pour tre pris en compte dans la constitution du code, un appui doit avoir une certaine dure.
Caractrisez cette dure.

.............................................................................................................................................................

.............................................................................................................................................................
5. Lorsque le nombre d'appuis correspondant au code est correct, il faut valider le code. Comment
procde-t-on pour cette validation ?

.............................................................................................................................................................

.............................................................................................................................................................

.............................................................................................................................................................
6. Il y a deux lments qui indiquent que le code entr est le bon. Lesquels sont-ils ?

.............................................................................................................................................................

.............................................................................................................................................................

Voici ci-dessous, le diagramme complet tel qu'il est propos l'ouverture de l'exercice.

Page 25
Exercice 6b
Activer une alarme et si une fentre est reste ouverte ?

Le problme pos est le suivant : lorsque le propritaire a entr son code correctement et activ l'alarme,
il peut s'apercevoir qu'il a oubli de fermer une porte ou une fentre.

Il faut donc, lorsque le code est entr, qu'il dispose d'un certain temps qui lui laissera la possibilit
de fermer cette porte ou cette fentre, avant que l'alarme ne se dclenche.

La solution est simple et il faut peu de modifications au programme prcdent pour rgler ce
problme.

Le diagramme ouvert au lancement de l'exercice est pratiquement identique au prcdent, et seule


la fin est reprendre.

else

Page 26
Exercice 6c 1/2
Comment utiliser le digicode pour activer l'alarme avec gestion d'une erreur dans la saisie du code ?

Lorsque le propritaire entre son code pour activer l'alarme, il est susceptible de se tromper. Il faut que le
programme lui signale son erreur et lui laisse la possibilit de recommencer un certain nombre de fois.
S'il dpasse le nombre d'essais autoriss, le programme de saisie du code s'arrte et l'alarme n'est pas
active.

Comme dans l'exercice 6a, le programme est un peu complexe pour que vous puissiez l'crire
seul, aussi l'exercice va consister en dcouvrir le fonctionnement et la logique en rpondant
aux questions suivantes dont certaines peuvent tre traites par un petit dessin.

1. Combien d'onglets se sont ouverts lorsque vous avez lanc l'exercice ?

.............................................................................................................................................................

.............................................................................................................................................................

2. Quand plus d'un programme s'ouvre, il y a toujours un programme principal, et des sous-
programmes. Quel est le programme principal ? Quel est (ou sont) le (ou les) sous-programme(s) ?
Qu'est-ce qui vous permet de justifier vos affirmations ?

.............................................................................................................................................................

.............................................................................................................................................................

3. Observez le programme principal et trouvez combien de variables sont utilises et que


reprsentent-elles ? On rappellera utilement que la fentre "Affichage" montre l'ensemble des
variables dclares et pas seulement celles qui sont utilises.

.............................................................................................................................................................

.............................................................................................................................................................

.............................................................................................................................................................

4. Quelle dure doit avoir l'appui sur le digicode pour incrmenter (augmenter) la valeur du code ?

.............................................................................................................................................................

Page 27
Exercice 6c 2/2
Comment utiliser le digicode pour activer l'alarme avec gestion d'une erreur dans la saisie du code ?

5. Quelle dure doit avoir l'appui sur le digicode pour valider un code ?

.............................................................................................................................................................

6. Quel est le code qui permet d'activer l'alarme ?

.............................................................................................................................................................

.............................................................................................................................................................

7. Vrifier en essayant avec le programme en mode "Pilotage", quelle valeur prend la variable
"Activation alarme" lorsque le programme s'arrte, suite un trop grand nombre d'erreurs ?

.............................................................................................................................................................

.............................................................................................................................................................

8. Quelle valeur prend cette mme variable pour un code correct ?

.............................................................................................................................................................

.............................................................................................................................................................

9. Modifier le programme pour que le code soit 5. Vrifiez.

10. Combien d'essais sont autoriss pour saisir le bon code ?

.............................................................................................................................................................

.............................................................................................................................................................

11. Modifier le programme pour autoriser 4 essais. Vrifiez.

Page 28
Exercice 6d
Comment utiliser le digicode pour dsactiver l'alarme ?

Dans l'exercice propos ici la situation est la suivante : la maison est sous alarme et la saisie du code au
digicode, va cette fois-ci dsactiver l'alarme.

Ce cas peut se produire partir de deux situations diffrentes :

L'alarme s'est dclenche suite une intrusion, et l'intrus parti, il faut stopper l'alarme sonore.

Le propritaire revient de vacances par exemple, et avant d'entrer chez lui, il doit dsactiver
l'alarme.

Votre travail consiste crire le programme qui rsout le problme, partir du dbut du diagramme qui
s'ouvre au lancement de l'exercice.

Remarques :

La structure est identique celle du programme d'activation de l'alarme partir du digicode (Ex 6a)

Dans un premier temps, vous n'avez pas vous proccuper de la gestion de l'erreur possible
dans la saisie du code.

Si l'on veut que le programme dsactive l'alarme et que cela soit possible tester, il faut que celui-ci
dmarre avec une alarme active, voyant d'alarme allum. C'est le sens de la premire case
"Action" qui initialise la variable "Activation alarme" 1, et indique que l'alarme est active.

Votre programme doit prvoir les deux cas l'origine de la situation de dpart, voqus au dbut de
l'exercice. Cela signifie que pour dsactiver l'alarme, il faut changer l'tat de tous les lments qui
auraient t activs par l'une ou l'autre des situations ...

Le programme dmarre par le dbut le diagramme ci-dessous

Page 29
Exercice 6e 1/2
Dsactiver l'alarme avec le digicode, et si on se trompe de code ?
code ?

Dans l'exercice propos ici la situation est la suivante : la maison est sous alarme et la saisie du code au
digicode, va comme dans l'exercice 6d, dsactiver l'alarme.

Ce cas peut se produire partir de deux situations diffrentes :


L'alarme s'est dclenche suite une intrusion, et l'intrus parti, il faut stopper l'alarme sonore.
Le propritaire revient de vacances par exemple, et avant d'entrer chez lui, il doit dsactiver
l'alarme.
Vous grerez en plus le fait que, lorsque le propritaire entre son code pour activer l'alarme, il est
susceptible de se tromper. Il faut donc que le programme lui signale son erreur et lui laisse la
possibilit de recommencer un certain nombre de fois. S'il dpasse le nombre d'essais autoriss,
le programme de saisie du code s'arrte et l'alarme n'est pas active.

Votre travail consiste crire le programme qui rsout le problme, partir du dbut du diagramme qui
s'ouvre au lancement de l'exercice.

Remarques :

Si l'on veut que le programme dsactive l'alarme et que cela soit possible tester, il faut que celui-ci
dmarre avec une alarme active, voyant d'alarme allum. C'est le sens de la premire case
"Action" qui initialise la variable "Activation alarme" 1, et indique que l'alarme est active.

Cette premire case initialise aussi la variable "Erreur de code" 0 pour signifier qu'avant de faire
quoique ce soit, il n'y a pas d'erreur de code au dpart du programme.

Votre programme doit prvoir les deux cas l'origine de la situation de dpart, voqus au dbut de
l'exercice. Cela signifie que pour dsactiver l'alarme, il faut changer l'tat de tous les lments qui
auraient t activs par l'une ou l'autre des situations ...

La structure est identique celle du programme d'activation de l'alarme partir du digicode avec
gestion de l'erreur (Ex 6c), et vous vous y reporterez utilement.

Vous copierez le programme de signal d'erreur code que vous avez crit, m3d_5c.gmy, dans le
rpertoire "Exercice/Maison_3d". C'est un corrig qui fonctionne, avec lequel vous n'aurez pas de
problme.
Page 30
Exercice 6e 2/2
Dsactiver l'alarme avec le digicode, et si on se trompe de code ?

Il est complet et vous ne le retoucherez donc pas, mais y ferez appel en tant que sous-
programme partir de votre programme principal en le plaant dans un nouvel onglet lorsqu'il sera
ncessaire de signaler la personne qui saisit le code qu'elle s'est trompe.
2/2

Le programme dmarre par le diagramme ci-dessous ouvert au lancement de l'exercice. Les cases qui
apparaissent sont compltes.

Dsactiver l'alarme

Page 31
Exercice 6f 1/2
Un programme qui active ou dsactive l'alarme en fonction de la situation

Vu sa complexit, ce programme n'est propos ici qu' titre d'exemple. Il pourra peut-tre tre propos
l'tude des lves en avance dans la progression.

On souhaite que le mme programme active ou dsactive le digicode suivant la situation dans laquelle on
se trouve

La saisie du code au digicode peut donc avoir deux effets suivant les cas :

Si le propritaire part de chez lui, elle va activer le systme d'alarme.


Si le propritaire revient chez lui, elle va dsactiver l'alarme qu'il avait mis en marche en partant.

Nous avions dj rsolu ces deux cas, mais sparment, par deux programmes diffrents : Ex 6c et Ex 6e.
Le programme propos ici, permet de traiter les deux cas en un seul programme.

Si au lancement du programme, l'alarme est inactive (Activationalarme=0), la saisie du code


entrane l'activation de l'alarme (Activationalarme=1)
Si au lancement du programme, l'alarme est active (Activationalarme=1), la saisie de code
entrane la dsactivation de l'alarme (Activationalarme=0)

Le programme gre aussi l'erreur de saisie :

Deux essais sont accepts pour entrer le code.


Si aprs deux essais, le code n'est toujours pas correct, le programme ne change pas l'tat de
l'alarme, et celle-ci garde l'tat (active ou inactive) qu'elle avait au dpart.

Le programme qui s'ouvre est complet. Testez-le.

L'tat de l'alarme au dpart est fix dans la premire case "Action".

Pour tester l'autre cas, il suffira d'diter la case et de changer la variable "Activationalarme" (1 ou
0 en fonction de sa valeur de dpart).

N'oubliez pas d'ouvrir la fentre "Affichage variables et entres/sorties" qui montre l'tat des
variables en mode pilotage.

Page 32
Exercice 6f 2/2
Un programme qui active ou dsactive l'alarme en fonction de la situation

Voici pour plus de facilit, le programme principal et le sous-programme qui correspondent la solution
notre problme.

Programme principal Sous-programme

Page 33
Exercice 7a 1/2
Comment grer la scurit lors du dpart du propritaire ?

Pour simplifier le problme, nous ne parlerons dans cet exercice que de la mise sous alarme de la maison
lors du dpart du propritaire.

Pour que cela se droule sans problme, il faut :


1. Pouvoir activer l'alarme par le digicode et de faire plusieurs essais en cas d'erreur.
2. Que les erreurs soient signales.
3. Signaler par une alerte sonore limite dans le temps qu'une porte ou une fentre est reste ouverte
lorsqu'on active l'alarme.
4. Avoir le temps matriel de fermer cette porte ou cette fentre avant que l'alarme ne soit
effectivement active ;
Remarques :

Le programme qui autorise l'activation du code avec gestion de l'erreur et signalement de celle-
ci existe : nous l'avons tudi lors de l'exercice 6c.
Le programme qui cre une alerte sonore limite dans le temps existe aussi, nous l'avons cre
l'exercice 5b.
La logique veut donc que, plutt que de rcrire ces fonctions existantes, on les utilise telles quelles, en
tant que sous-programmes.

Comment procder ?

L'exercice propose l'ouverture un diagramme


qui est complet dans sa forme : cases "Actions", Cases
"Tests" et "Sauts". Ce diagramme sera votre
programme principal, car c'est lui qui fera appel aux
programmes existants dj, en tant que sous-
programmes.

Pour commencer, et pouvoir faire appel aux


sous-programmes, il vous faudra simplement cliquer
sur les onglets ct du programme principal.

Page 34
Exercice 7a 2/2
Comment grer la scurit lors du dpart du propritaire ?

Vous constaterez que ceux-ci correspondent au diagramme crit dans le fichier m3d_6c.gmy
"Activer alarme (dlai + erreur)", mais galement le fichier m3d_5c.gmy qui correspond au
diagramme "Signal erreur de code" auquel le programme d'activation de l'alarme fait appel en tant
que sous-programme.
Voil, vous tes prt complter le programme principal, avec cette information : les 2 cases
"Action" sont en fait des appels sous-programmes, et vous devrez donc, lorsque vous les
diterez, saisir l'un des trois titres des onglets prsents ct du diagramme principal.

Rappel : Les sous-programmes sont les onglets qui suivent le diagramme principal.

Attention
Pour plus de sret, vitez de changer le nom du ou des sous-programmes.

Page 35
Exercice 7b
Comment grer la scurit lorsque le propritaire est de retour ?

Il s'agit ici, de grer ce qui peut se passer lors du retour du propritaire la maison, tout en compltant
notre connaissance de l'utilisation des sous-programmes.

Ci-dessous, voici le scnario associ au diagramme qui s'ouvre au lancement de l'exercice.


Remarquez que deux cases "Action" de notre dessin sont diffrentes de celles du diagramme de
lancement. Ce n'est pas une erreur ! Cela vous donne des indications quant leur nature et leur
contenu.
Servez-vous de la liste du menu "Exercice", pour retrouver le nom du fichier ouvrir, sachant que
les programmes correspondants sont enregistrs en respectant la numrotation.
Ces programmes devront tre ouverts depuis le rpertoire "Exercices"

Il est rappel que le volet peut tre manipul manuellement avec le panneau de commande, pour
le placer dans la situation initiale (en haut ou en bas) qui correspond celle de l'exercice que l'on
veut simuler.

Page 36
Exercice 8a 1/2
Comment dcourager un cambrioleur pendant la nuit ?

La nuit, lorsqu'une prsence extrieure est dtecte et que l'alarme n'est pas dsactive aprs un certain
temps, on peut supposer que nous avons affaire un rdeur ou un cambrioleur en puissance.
Pour dcourager la tentative d'effraction, nous pouvons essayer de simuler une prsence en mettant en
uvre les appareils de domotique notre disposition.

Le diagramme qui s'ouvre au lancement de l'exercice fixe les conditions dans lesquelles on peut penser
qu'on a affaire un cambrioleur :

Pour des raisons de facilit lors du test en mode pilotage, on se contentera de supposer que
l'alarme est active.
Il fait nuit.
On dtecte une prsence extrieure aprs un temps donn (fix ici 10 s. pour ne pas allonger la
dure du test).

Votre travail consiste crire la suite du programme pour faire croire que quelqu'un se trouvant l'tage a
t rveill par le bruit et que :

1. il descend au rez-de chausse


2. il allume l'extrieur pour voir ce qui se passe
3. il met en marche une alarme, fait signal l'intrus par l'allumage du voyant d'alarme

Page 37
Exercice 8a 2/2
Comment dcourager un cambrioleur pendant la nuit ?

4. aprs cela, si personne n'est l'extrieur aprs un certain temps,


on teint l'extrieur et le voyant d'alarme

on remonte se coucher l'tage et on remet la maison sous surveillance.

5. sinon,
aprs une petite attente,
On dclenche une alerte sonore limite dans le temps
et on retourne voir s'il y a encore quelqu'un
6. si oui,
on retourne dclencher l'alerte.

Votre professeur vous proposera un corrig de l'exercice, mais celui-ci ne sera qu'une des multiples
solutions possibles ce problme.
Si elle a les effets attendus, votre production personnelle n'en sera pas fausse pour autant.

Page 38
Exercice 8b
Comment dcourager un rdeur le jour, en lui faisant croire la maison occupe ?

Exercice simple, sans utilisation de sous-programmes. Vous traduirez le scnario suivant sous forme de
diagramme.

Scnario :
si l'on dtecte une prsence l'extrieur, on fera croire que quelqu'un dans la maison ferme le
volet mi-hauteur, puis allume la lumire du rez-de-chausse.
Une pause de 5 ou 10s en fin de programme, permettra de voir plus facilement, avant que le
programme ne s'arrte, que l'on a effectivement allum la lumire.

Remarque 1 :
Le nud initiale du programme peut-tre suivi par une case Initialisation.

En effet, si l'on veut faciliter le test du programme, il est ncessaire que le systme soit dans un tat
prcis : Volet en haut, lumire teinte. C'est ce que l'on appelle la position initiale du systme.
Dans tous les cas, au lancement du programme, la case initialisation va excuter un mini-
programme qui mettra le systme dans sa position initiale quel que soit l'tat dans lequel il se
trouve.
Remarque 2 :
On ne peut pas utiliser le programme de fermeture du volet existant en tant que sous-programme,
car celui-ci ferme le volet compltement, alors qu'on souhaite le fermer mi-hauteur.
De plus, n'ayant pas de capteur qui permet de dire que le volet est mi-hauteur, nous allons tre
obligs d'utiliser une mthode un peu particulire pour rsoudre ce problme.
Le seul moyen que nous avons, dans notre cas, est d'utiliser une temporisation pour contrler la
position du volet.
Il nous faudra valuer le temps de fermeture du volet, et actionner celui-ci en descente pendant
environ la moiti de ce temps avant de l'arrter.

Cette solution ne serait en aucun cas utilise dans la ralit, et si la ncessit se faisait d'arrter le volet
mi-hauteur, le constructeur ajouterait un capteur de position la hauteur dsire.
Page 39

Vous aimerez peut-être aussi