Académique Documents
Professionnel Documents
Culture Documents
Page 78
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Page 79
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
AnyLogic ajoute l’image dans sa taille originale au diagramme principal, mais vous pouvez
également modifier la largeur ou la longueur de l’image. Si vous déformez les proportions de
l’image vous pouvez revenir à la taille originale de l’image en ouvrant la vue Propriétés
(Properties ) et en cliquant sur Rétablir la taille originale (Reset to original size).
6. Sélectionnez l'image dans l'éditeur graphique. Dans la vue Propriétés (Properties ), cochez la
case Verrouiller (Lock) pour verrouiller l'image.
Verrouillage des formes :
• Vous pouvez verrouiller une forme pour vous assurer qu’elle ne répond pas au clic de votre
souris et que vous ne pouvez pas la sélectionner dans l’éditeur graphique. Vous trouverez cela
très utile lorsque vous dessinez des formes au-dessus de dispositions représentant des
installations telles que des usines ou des hôpitaux.
• Si vous devez déverrouiller une forme, cliquez avec le bouton droit de la souris dans l'éditeur
graphique et sélectionnez Déverrouiller toutes les formes (Unlock All Shapes) dans le menu.
Eléments de balisage
Notre prochaine étape consiste à utiliser la palette Balisage d'espace pour placer des formes de
marquage d'espace au-dessus de la présentation de l'atelier. La palette comprend un élément
Chemin (Path), trois éléments Nœud (Node), un élément Attracteur (Attractor) et des formes de
rayonnage à palettes.
Créer un réseau :
Les chemins et les nœuds sont des éléments de balisage d'espace qui définissent les emplacements
des agents :
• Un nœud (Node) est un endroit où les agents peuvent résider ou effectuer une opération.
• Un chemin (Path) est un itinéraire que les agents peuvent utiliser pour se déplacer entre les
nœuds.
Ensemble, les nœuds et les chemins constituent un réseau que les agents d’un modèle peuvent
utiliser pour se déplacer sur les chemins les plus courts entre leurs nœuds d’origine et de
destination. Vous créez généralement un réseau lorsque les processus de votre modèle ont lieu dans
un espace physique défini et que des agents et des ressources sont en mouvement. On suppose que
les segments de réseau ont une capacité illimitée et que les agents n'interfèrent pas les uns avec les
autres.
Maintenant que vous connaissez un peu les réseaux et leurs composants, nous sommes prêts à
créer un réseau qui définira les chemins de déplacement des palettes de notre modèle. La
Page 80
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
première étape consiste à utiliser des nœuds rectangulaires pour définir des zones spécifiques sur
la présentation de l’atelier.
7. Ouvrez la palette Space Markup et faites glisser l'élément Nœud rectangulaire (Rectangular
Node) sur le diagramme principal (Main Diagram). Redimensionnez le noeud. Le nœud doit
ressembler à la figure ci-dessous.
Nous allons tracer un chemin de mouvement pour guider les chariots élévateurs de notre
modèle.
10. Procédez comme suit pour tracer une trajectoire de mouvement qui guidera les chariots
élévateurs à fourche de notre modèle :
a. Dans la palette Space Markup, cliquez deux fois sur l'élément Path pour activer son mode
de dessin.
b. Dessinez le chemin d'accès comme indiqué dans la figure ci-dessous en cliquant sur la
bordure de receiverDock, en cliquant sur le diagramme pour ajouter le point de retournement
du chemin, puis en cliquant sur la bordure du noeud forkliftParking.
Page 81
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Si vous avez correctement connecté les nœuds, les points de connexion du chemin d’accès afficheront
des rehauts cyan chaque fois que vous sélectionnez le chemin.
Par défaut, les chemins dans AnyLogic 8 sont bidirectionnels. Toutefois, vous pouvez limiter le
mouvement le long d'une trajectoire sélectionnée dans une direction en effaçant la propriété
Bidirectional, puis en définissant la direction du mouvement. Vous pouvez afficher la direction d’un
chemin donné en le sélectionnant, puis en affichant la flèche de direction qui s’affiche dans l’éditeur
graphique.
11. Définissez le stockage de votre modèle en faisant glisser l’élément Pallet Rack de la palette
Space Markup sur la présentation et en plaçant son couloir sur le chemin. Un rack de palette
correctement placé affichera une surbrillance verte indiquant qu'il est connecté au réseau.
a) un rack, une allée b) un rack, deux allées c) deux racks, une allée
Page 82
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Pendant l'exécution, l'élément Pallet Rack gère les agents que le modèle stocke dans les cellules à un
ou plusieurs niveaux disponibles sur le(s) côté(s) de l'allée.
12. Dans la zone Properties (Propriétés) du rack à palettes, procédez comme suit :
a. Définissez le type (Type) sur : two racks, one aisle
b. Nombre de cellules (Number of cells) : 10
c. Niveau de hauteur (Level height) : 10
Dans la section Position and size :
d. Longueur (Length) : 160
e. Profondeur gauche du porte-palette (Left pallet rack depth) : 14
f. Profondeur droite du porte-palette (Right pallet rack depth) : 14
g. Largeur d'allée (Aisle width) : 11
13. Une fois ces modifications terminées, le rayonnage à palettes doit ressembler à celui illustré à la
figure ci-dessous. Si nécessaire, déplacez le rayonnage à palettes de sorte que son allée centrale repose
sur le chemin. Assurez-vous que le rayonnage à palettes est connecté au réseau en cliquant deux fois
dessus pour le sélectionner. Votre premier clic sélectionnera l'ensemble du réseau, et le second
sélectionnera le rack de palettes. Le rayonnage à palettes devrait afficher une surbrillance verte
indiquant qu'il est connecté au réseau.
Nous avons balisé l’espace de notre modèle en dessinant les emplacements et chemins importants au-
dessus de notre présentation. Nous allons maintenant utiliser la bibliothèque de modélisation de
processus d’AnyLogic (Process Modeling Library - PML) pour modéliser les processus.
Bibliothèque de modélisation de processus (PML)
Les blocs de la bibliothèque de modélisation de processus d’AnyLogic vous permettent d’utiliser des
combinaisons d’agents, de ressources et de processus pour créer des modèles centrés sur les processus
de systèmes réels. Vous avez entendu parler des agents et des ressources précédemment dans cette
section, et nous allons nous appuyer sur cette base en définissant les processus comme des séquences
d'opérations incluant des files d'attente, des retards et l'utilisation des ressources.
14. Faites glisser l'élément Source de la palette de la bibliothèque de modélisation de processus
sur le diagramme graphique et nommez le bloc sourcePallets. Alors que le bloc Source agit
Page 83
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
généralement comme un point de départ du processus, notre modèle l'utilisera pour générer des
palettes.
15. Dans la zone Properties du bloc sourcePallets, procédez comme suit pour vous assurer que
les palettes du modèle arrivent toutes les cinq minutes et apparaissent dans le nœud
receivingDock.
a. Dans la zone Arrivals defined by, cliquez sur Interarrival time.
b. Dans la zone Interarrival time, tapez 5 et sélectionnez minutes dans la liste de droite pour
que les palettes arrivent toutes les cinq minutes.
c. Dans la zone Location of arrival, cliquez sur Network/ GIS node dans la liste.
d. Dans la zone Node, cliquez sur receivingDock dans la liste.
Comment faire référence à des éléments de modèle à partir des paramètres du bloc :
Les paramètres du bloc offrent deux manières de sélectionner un élément graphique :
• Vous pouvez sélectionner un élément graphique dans la liste des éléments valides et
disponibles qui s'affiche à côté du paramètre.
Page 84
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Le bloc RackStore place les palettes dans les cellules d’un rack de palettes donné.
17. Dans la zone Propriétés du bloc rackStore, procédez comme suit :
a. Dans la zone Nom, tapez storeRawMaterial.
b. Dans la liste Pallet / Rack system, cliquez sur palletRack.
c. Dans la liste Emplacement de l'agent Agent Location (queue), cliquez sur receiveDock
pour spécifier l'emplacement où les agents attendent d'être stockés.
18. Ajoutez un bloc Delay pour simuler l'attente des palettes dans le rack, puis nommez le bloc
rawMaterialInStorage.
Vous avez probablement remarqué qu'AnyLogic connecte automatiquement le port droit du bloc
au port gauche du bloc suivant. Chaque bloc de la bibliothèque de modélisation de processus a un
port d'entrée gauche et un port de sortie droit, mais vous ne devez connecter que les ports d'entrée
aux ports de sortie.
Page 85
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
b. Cochez la case Maximum capacity pour vous assurer que les agents ne resteront pas
bloqués dans l'attente de leur retrait du stockage.
22. Ajouter un bloc Sink. Le bloc Sink supprime les agents et constitue généralement le point
final d'un organigramme.
23. Nous avons terminé la construction de ce modèle simple et vous pouvez maintenant
l’exécuter et observer son comportement. Exécuter le modèle (expérience Job Shop /
Simulation).
Page 86
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Si le message d'erreur Exception lors de l'exécution d'un événement discret s'affiche, vous
devez connecter votre rack de palettes au réseau. Vous devez sélectionner la forme du rack
dans l’éditeur graphique, la déplacer jusqu’à ce que son allée affiche une surbrillance verte
indiquant qu’elle est connectée au réseau, puis ré-exécuter le modèle.
Page 87
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Page 88
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Vous verrez que le type de ressource ForkliftTruck a été sélectionné dans le paramètre New
ressource unit du bloc ResourcePool.
Nous avons défini nos ressources, mais nous devons toujours nous assurer que les blocs
d’organigrammes de notre modèle les utiliseront lors des processus de simulations.
7. Dans la zone Propriétés du bloc storeRawMaterial, procédez comme suit :
a. Cliquez sur la flèche pour développer la zone Ressources.
b. Cochez la case Use resources to move.
c. Dans la liste Resource sets (alternatives), sélectionnez forklifts pour vous assurer que
le bloc d’organigrammes utilise les ressources sélectionnées - dans notre cas, les
chariots élévateurs à fourche - pour déplacer les agents. Cliquez sur le bouton Plus, puis
sur forklifts dans la liste des ressources du modèle.
Page 89
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
d. Dans la zone Return home, sélectionner l’option if no other tasks pour assurer que
les chariots élévateurs à fourche retournent à leur domicile une fois leurs tâches
terminées.
Page 90
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Si les ressources de notre modèle déplacent un agent, le bloc RackStore (ou RackPick) les saisit,
les transfère à l’emplacement de l’agent, s’attache à l’agent, le déplace dans la cellule, puis libère
les ressources.
9. Exécuter le modèle
Vous verrez les chariots élévateurs ramasser les palettes et les stocker dans le rayonnage à
palettes. Après un bref délai, ils déplacent les palettes vers la zone de stationnement du chariot
élévateur où les palettes disparaissent.
Phase 3. Créer une animation 3D
Présentation des objets de la caméra
Les objets de caméra d’AnyLogic vous permettent de définir la vue qui s’affiche dans la fenêtre 3D.
En substance, l’objet caméra "prend" la photo que vous voyez. Vous pouvez également créer plusieurs
objets de caméra pour afficher différentes zones d'une même scène 3D ou pour afficher un seul objet
sous différents points de vue. Si vous utilisez plusieurs objets de caméra, vous pouvez facilement
passer d'une vue à une autre lors de l'exécution.
Page 91
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
1. Dans la palette Présentation, faites glisser l'objet Camera sur le diagramme principal afin qu'il
soit en face de la présentation du magasin.
2. Faites glisser l'élément 3D window sur le diagramme principal, puis placez-le sous le
diagramme de processus.
Fenêtre 3D
En plus d'avoir la possibilité d'ajouter plusieurs caméras à votre modèle, vous pouvez
également ajouter plusieurs fenêtres 3D qui afficheront chacune la même scène 3D d'un point
de vue différent.
3. Laissez la caméra "prendre" la photo pour la fenêtre 3D. Dans la zone Properties de la fenêtre
3D, cliquez sur camera dans la liste Camera.
4. Empêchez la caméra de prendre une photo sous le plancher en sélectionnant l'option Limited
to Z above 0 dans la liste Navigation type.
5. Exécutez le modèle.
Lorsque vous créez une fenêtre 3D, AnyLogic ajoute une zone d'affichage qui vous permet de
naviguer facilement vers la vue 3D au moment de l'exécution. Pour basculer vers cette vue 3D,
cliquez sur le bouton Toggle developer panel dans la fenêtre de simulation, puis cliquez
sur [window3d].
Page 92
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
10. Exécutez le modèle pour afficher la vue 3D à partir de la nouvelle position de la caméra, puis
fermez la fenêtre de simulation.
Page 93
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
11. Développez la zone Space Markup de la palette Pedestrian, puis double-cliquez sur l'icône
de l'élément Wall (Mur) pour activer le mode de dessin sur le mur.
12. Procédez comme suit pour dessiner des murs autour de la zone de travail de la maquette
d’atelier :
a. Cliquez sur l'emplacement dans l'éditeur graphique où vous souhaitez commencer à
dessiner le mur.
b. Déplacez le pointeur dans n'importe quelle direction pour tracer une ligne droite, puis
cliquez à un point quelconque où vous souhaitez changer de direction.
c. Double-cliquez à l'endroit où vous souhaitez arrêter de dessiner le mur.
13. Procédez comme suit pour modifier la couleur et la texture de remplissage du mur :
a. Dans la zone Properties du mur, développez la section Apparence.
b. Dans le menu Couleur, cliquez sur Other colors.
c. Dans la boîte de dialogue Colors, sélectionnez la couleur que vous souhaitez appliquer
au mur à partir de la palette ou du spectre.
Vous pouvez également définir un niveau de transparence (utilisez le curseur Transparency dans la
boîte de dialogue Colors) ou personnaliser le mur avec toute texture fournie (cliquez sur l'élément
Textures dans le menu Couleurs).
Page 94
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Dans cette section, nous utilisons des murs pour décorer notre modèle, sachant que les murs peuvent
aussi être utilisés comme des obstacles.
14. Accédez à la section Position and size du mur et réglez la Z-Height sur 40. AnyLogic définit
automatiquement la hauteur de la forme sur 20 pixels pour lui donner du volume dans une vue
3D, mais nous avons maintenant augmenté sa hauteur à 40 pixels.
15. Tracez un autre mur entre les sorties, puis modifiez les paramètres dans la zone Properties du
deuxième mur afin de les adapter au premier.
17. Dans la zone Properties du bloc sourcePallets, sous la liste New agent, cliquez sur le lien
create a custom type.
18. Dans l'assistant de création d'un agent, procédez comme suit :
a. Dans le champ Agent type name, tapez Pallet.
Page 95
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
AnyLogic crée le type d'agent Pallet et ouvre le diagramme Pallet qui affichera l'animation
sélectionnée dans l'assistant. Notre prochaine étape consistera à ajouter une animation de produit en
plus de l'animation de palette, mais nous allons d'abord agrandir la vue pour nous permettre de regarder
de plus près la palette.
19. A l'aide de la barre d'outils Zoom, agrandissez le diagramme de la Palette à 500%, puis déplacez
le canevas vers la droite et vers le bas pour afficher le point d'origine de l'axe et la forme
d'animation de la palette.
20. Procédez comme suit pour ajouter de l’animation de produit à l’animation de palette.
a. Dans la palette Objets 3D, développez la zone Boxes.
b. Faites glisser l’objet Box 1 Closed dans le coin supérieur gauche de la palette.
Page 96
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
21. Puisque cette boîte semble être trop grande par rapport à la palette, adapter l’échelle de la boîte
comme en figure ci-dessous.
22. Dans la zone Properties de la boîte, développez la section Position, puis remplacez la
coordonnée Z de la boîte par 2. Notre modification reflète le fait que nous souhaitons placer
des boîtes sur les palettes et que la hauteur de chaque palette est d’environ 2 pixels.
23. Ajoutez trois boîtes en copiant la première boîte trois fois. Pour copier la boîte, sélectionnez-
la, puis maintenez la touche CTRL enfoncée pendant que vous faites glisser la boîte.
Notre palette contient maintenant quatre boîtes fermées et vous pouvez maintenant redéfinir le
niveau de zoom sur 100% en cliquant sur le bouton Zoom to 100% de la barre d’outils.
26. Dans la vue des projets (Projects), double-cliquez sur le type d'agent ForkliftTruck pour ouvrir
son diagramme, puis déplacez la cellule forkliftWithWorker figure d'une cellule vers la droite.
La forme de l’animation est maintenant au bon endroit et les palettes de notre modèle sont
alignées sur les fourches des chariots élévateurs.
Page 97
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
27. Ouvrez le diagramme principal et, dans la zone Properties du rack, dans la zone Number of
levels, tapez 2.
Page 98
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Page 99
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
b. Dans la zone Interarrival time, tapez 1 et sélectionnez les heures (hours) dans la liste
de droite.
c. Dans la liste New agent, cliquez sur Truck.
d. Dans la liste Location of arrival, cliquez sur Network / GIS.
e. Dans la liste Node, cliquez sur exitNode.
f. Dans la zone Speed, tapez 40 et sélectionnez kilometers per hour dans la liste de
droite.
Page 100
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
La durée de l’opération dépend de la rapidité avec laquelle les palettes sont déchargées et enlevées par
des chariots élévateurs. Nous considérerons cette opération comme terminée lorsque le bloc
RackStore aura fini de stocker les palettes, et nous le modéliserons en modifiant le mode de
fonctionnement du bloc Delay.
Contrôler par programme le temps de retard :
En général, vous spécifierez un Delay time pour le bloc Delay. Il peut s'agir d'une durée fixe telle que
cinq minutes ou d'une expression stochastique produisant un temps de retard tel que triangular(1, 2,
6).
Vous pouvez également contrôler par programme la durée de l’opération et arrêter le retard si
nécessaire en appelant la fonction correspondante du bloc. Si vous devez arrêter d’attendre tous les
agents qui se trouvent dans le Delay, appelez la fonction du bloc stopDelayForAll(). Une autre
fonction, stopDelay(agent), met fin à l'opération et libère l'agent spécifié.
14. Nommez le deuxième block MoveTo drivingToExit.
15. Dans le bloc drivingToExit. Dans la liste Node de la zone Properties, cliquez sur exitNode
pour définir le nœud de destination.
Les deux blocs Source de notre modèle génèrent deux types d’agent : les camions (trucks) qui
apparaissent toutes les heures et les palettes (pallet) qui sont générées toutes les cinq minutes.
Comme nous voulons que les palettes apparaissent lors du déchargement du camion, nous
allons modifier le mode d'arrivée du bloc Source qui les génère.
Génération de l'agent de contrôle :
Page 101
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Vous pouvez faire en sorte que le bloc Source génère des agents à des intervalles définis en
définissant le paramètre du bloc Arrivals defined by sur Calls of inject() function. Vous
pourrez contrôler la création de l'agent au moment de l'exécution en appelant la fonction du
bloc inject(int n). Cette fonction génère le nombre donné d'agents au moment de l'appel. Vous
définissez le nombre d'agents que le bloc va générer à l'aide d'un argument de fonction tel que
sourcePalltets.inject (12) ;
16. Dans la zone Properties du bloc sourcePallets, dans la liste Arrivals defined by, cliquez sur
la fonction Calls of inject() function.
17. Procédez comme suit pour que le bloc sourcePallets génère des palettes lorsqu'un camion
entre dans le bloc unloading:
a. Dans la zone Properties du bloc unloading, développez la section Actions.
b. Dans la zone On enter, tapez ce qui suit : sourcePallets.inject(16);
Cette fonction Java garantit que notre modèle génère 16 palettes à chaque fois qu'un
camion commence à décharger.
Maintenant que nous avons ajouté des camions à notre modèle, faisons en sorte que le premier
camion de livraison apparaisse au démarrage du modèle afin que nous n'ayons pas à attendre une
heure avant la fin du modèle.
18. Dans la zone Properties de l'agent principal (Main), développez la section Agent actions,
puis tapez la fonction Java suivante dans la zone On startup:
sourceDeliveryTrucks.inject(1);
Page 102
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
a. Dans l'arborescence des projets, double-cliquez sur le type d'agent Truck pour ouvrir
son diagramme et afficher la figure de l'animation du camion.
b. Dans l’éditeur graphique, sélectionnez la forme du camion, puis utilisez la poignée
ronde ou la propriété Rotation Z, ° dans la zone Properties de la forme pour faire
pivoter le camion à -180 degrés.
Page 103
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Nous avons modifié la position du camion, mais nous devrons également modifier les paramètres par
défaut d’AnyLogic pour nous assurer que le programme ne le fera pas pivoter une seconde fois.
22. Procédez comme suit pour modifier le paramètre par défaut d’AnyLogic:
a. Dans la zone Projects, cliquez sur Truck.
b. Dans la zone Properties du type d’agent Truck, cliquez sur la flèche pour développer
la zone Movement.
c. Décochez la case Rotate animation towards movement.
Page 104
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
différents modes de création, ainsi que l’option pour effacer tous les attracteurs. Vous pouvez
l’afficher en cliquant sur le bouton Attracteurs (Attractors) dans la zone Properties du nœud.
25. Exécutez le modèle pour vérifier le comportement du camion.
L'animation devrait fonctionner comme prévu.
nodeCNC1
nodeCNC2
Nous devrons créer des chemins pour connecter ces deux nœuds à notre réseau. Les chariots
élévateurs de notre modèle en auront besoin pour atteindre les machines à commande
numérique.
Page 105
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
3. Dans la palette Space Markup, cliquez sur l'élément Path et tracez les tracés comme illustré
dans la figure ci-dessous. Pour connecter un chemin à un nœud de point, cliquez sur le centre
du nœud de point.
REMARQUE : Assurez-vous que les chemins que vous tracez connectent les nœudsCNC1 et
nodeCNC2 au réseau. Vous pouvez tester la connexion d’un chemin en cliquant deux fois pour
la sélectionner. Si le chemin est connecté au réseau, des points forts cyan apparaissent autour
de ses extrémités.
Une machine à commande numérique est une unité de ressources. Nous l’ajouterons à notre
modèle en créant un type de ressource et en utilisant le bloc ResourcePool pour définir le pool
de ressources.
4. Dans la palette Process Modeling Library, cliquez et faites glisser le bloc ResourcePool sur
le diagramme principal (Main).
5. Dans la zone Properties du bloc ResourcePool, procédez comme suit :
a. Dans la zone Nom, tapez cnc.
b. Dans la liste Ressource type, cliquez sur Static pour indiquer qu'il s'agit d'une
ressource statique.
Avec notre pool de ressources complet, nous sommes prêts à créer un nouveau type de ressource.
6. Sous la liste New resource unit, cliquez sur le lien create a custom type.
Page 106
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Nous sommes prêts à modifier l’organigramme utilisé par notre modèle pour définir le comportement
des palettes en ajoutant un bloc Seize qui saisira une machine à commande numérique. Plus tard, un
bloc Delay simulera le traitement des matières premières par une machine CNC et un bloc Release
libérera une machine CNC afin qu’elle puisse traiter la matière première de la palette suivante.
Page 107
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
REMARQUE : N'oubliez pas que l'organigramme de notre modèle comporte déjà un bloc
pickRawMaterial qui simule la ressource en mouvement (les chariots élévateurs à fourche) qui
achemine des palettes vers la machine CNC.
10. Dans l’organigramme qui définit le comportement des palettes, faites glisser les blocs
pickRawMaterial et sink vers la droite pour laisser de la place pour un nouveau bloc.
11. Dans la palette Process Modeling Library, faites glisser le bloc Seize et insérez-le dans
l’organigramme des palettes après le bloc rawMaterialinStorage.
Page 108
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Chaque agent qui arrive au bloc Delay doit avoir l’une des deux machines à commande numérique de
notre modèle.
16. Dans la palette Process Modeling Library, faites glisser le bloc de libération (Release) sur
l’organigramme des palettes et placez-le après le bloc processing.
17. Nommez ce bloc releaseCNC.
Si vous exécutez le modèle, vous verrez que, lorsque les processus sont simulés correctement,
l’animation 3D dessine une palette au milieu de la forme de la machine CNC. Cela se produit
lorsque la machine CNC, la palette qu’elle traite et l’emplacement de l’animation utilisent tous
le même nœud de point. Pour résoudre le problème, nous devrons déplacer la machine CNC
vers la droite et la faire pivoter pour faire face à la palette.
18. Dans la vue Projetcs, double-cliquez sur l'agent de type CNC pour ouvrir son diagramme.
19. Déplacez l'animation vers la droite et faites pivoter la forme de la machine CNC à l'aide de la
poignée ronde ou en définissant la propriété Rotation de la figure sur 90 degrés.
Nous sommes prêts à utiliser deux formes d’animation 3D similaires pour animer la machine
CNC: une forme représente la machine inactive et l’autre représente la machine lorsqu’elle
traite les matières premières. Nous définirons des valeurs dynamiques pour la propriété Visible
de chaque forme, ce qui permettra à notre modèle d’utiliser l’état de la machine CNC pour
déterminer quelle forme le modèle affichera au moment de l’exécution.
20. Procédez comme suit pour modifier le paramètre de visibilité de la forme d’animation CNC:
a. Sélectionnez la forme d'animation CNC.
b. Passez votre souris sur l'icône des paramètres statiques qui s'affiche en regard de
l'étiquette Visible et cliquez sur Dynamic value.
Page 109
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
L'icône devient une icône de propriétés dynamiques et une zone dans laquelle
vous pouvez définir les affichages d'expressions dynamiques. Vous pouvez utiliser la
zone pour entrer une expression Java qui renvoie une valeur true ou false.
c. Dans la boîte, tapez isBusy()
Cette fonction standard pour une ressource AnyLogic renvoie true lorsque la ressource
est occupée. Dans notre cas, la fonction affichera la forme de l'animation 3D lorsque la
machine CNC traite des matières premières.
Propriétés dynamiques :
Lorsque vous définissez une expression pour la valeur dynamique d'une propriété, notre
modèle réévalue l'expression sur chaque image d'animation au cours de l'exécution,
puis utilise la valeur résultante comme valeur actuelle de la propriété. En fournissant
des valeurs dynamiques pour la position, la hauteur, la largeur ou la couleur d’une
forme, les utilisateurs AnyLogic peuvent animer leurs modèles.
Si vous n'entrez pas de valeur dynamique, la propriété conserve la valeur statique par
défaut tout au long de la simulation.
Les blocs d’organigrammes peuvent avoir:
Propriétés dynamiques dont la valeur est réévaluée chaque fois qu'un nouvel agent
entre dans le bloc.
Les paramètres de code qui vous permettent de définir des actions à exécuter à
un moment clé du bloc d’organigramme, telles que l’action On enter ou On exit. Dans
Page 110
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
la plupart des cas, vous trouverez les paramètres de code dans la zone Properties du
bloc d’un diagramme, dans la section Actions.
• Le petit triangle situé sur l’icône de paramètre indique que vous pouvez cliquer sur
l’icône et basculer entre l’éditeur de valeur statique et le champ dans lequel vous pouvez
entrer l’expression dynamiquement réévaluée de la valeur.
21. Procédez comme suit pour ajouter une forme d'animation supplémentaire qui ne sera visible
que lorsque la machine CNC ne traite pas de matière brute.
a. Ouvrez la palette 3D objects contenant les objets 3D prêts à être utilisés par AnyLogic.
b. Développez la zone CNC machines et faites glisser la forme CNC Vertical
Machining Center 2 State 2 sur le diagramme de la CNC.
c. Faites pivoter la forme et placez-la directement sur la première figure d'animation.
d. Dans la zone Visible, passez à l’éditeur de valeurs dynamiques et tapez isIdle() en tant
qu’expression dynamique de la propriété Visible de la forme.
22. Développez la section People de la palette Objets 3D et faites glisser la forme Worker sur le
diagramme de la CNC.
Page 111
Executive Master of Engineering - GENERALISTE Module: Système des Systèmes
Nous avons terminé notre modèle simple qui simule les processus de fabrication et d’expédition dans
un petit atelier. Vous avez maintenant une connaissance de base des ressources AnyLogic et de la
façon de les utiliser. Vous savez également comment utiliser un diagramme créé à partir de blocs de
la bibliothèque de modélisation de processus (Process Modeling Library) pour définir la logique de
processus.
Exercice : Comme exercice, on vous propose d’étendre le modèle précèdent pour modéliser la manière
dont les palettes contenant les pièces finies sont déplacées vers une autre zone de stockage sur le quai
d'expédition où elles resteront jusqu'à leur expédition. Vous avez déjà utilisé les blocs dont vous aurez
besoin pour modéliser cette partie du processus. Vous pouvez donc ajouter vous-même cette logique.
Page 112