# Architecture et Simulation de la ligne



# Composants de la ligne

### Active Cockpit

- C'est le tableau blanc interactif (TBI) de la solution Bosch Rexroth
- mini-PC Thinkstation `IHA-COCKPIT` derrière le grand écran tactile blanc Samsung 
    - Permet de travailler sur l'interface web
    - Depuis un PC du VLAN Bosch : https://192.168.3.2:10443/activecockpit
- Serveur BRS dans la salle stock/serveur

# Architecture et flux de données

### pyramide CIM 

La ligne fonctionne sur une architecture basée sur le fonctionnement de la pyramide CIM :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-04/scaled-1680-/l0Fimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-04/l0Fimage.png)

### IoT Gateway et ActiveCockpit

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">L’IOT gateway est une solution Bosch Rexroth qui permet de centraliser la récupération des données. Il récupère les données récapitulées sur le graphique suivant :  
</span>

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-04/scaled-1680-/oO7image.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-04/oO7image.png)

#### Ecran d'accueil

Les différentes fonctionnalités de l’IOT gateway sont explicitées sur le menu d’accueil :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/scaled-1680-/C3Iimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/C3Iimage.png)

#### Devices

La configuration d'un Device permet de connecter un composant de la Ligne à l'IoT Gateway via OPC-UA. On donne les paramètres pour communiquer avec le serveur OPC-UA qui tourne par exemple sur le PC industriel d'un convoyeur (dans l'armoire électrique). C'est ce serveur qui collecte les données au niveau des automates. Prenons l'exemple du convoyeur 1 :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/scaled-1680-/dhWimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/dhWimage.png)

On renseigne dans serveur URL l’adresse du serveur OPC UA du convoyeur, ici pour le serveur du convoyeur 1 on renseigne

`<span>opc.tcp//192.168.3.41:4840</span>`

On renseigne ensuite les Endpoints , il faut configurer le nom de la variable que l’on va stocker (ce nom peut être modifié et sera le nom de la variable dans la bdd de InfluxDB) ici :<span style="mso-spacerun: yes;"> </span>Convoyeur\_1\_Var\_Speed

NodeID : ns=2; s = Application.UserVarGlobal.Var\_speed

Le Value Change Trigger : « Quality or Value ; permet de changer quand la valeur est update dans la database.

#### Processing  


La configuration du traitement "Processing" <span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">va permettre d’inscrire les données collectées en temps réel par le concentrateur Bosch dans la BDD influxDB.</span>

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/scaled-1680-/mj2image.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/mj2image.png)

Cette fonctionnalité permet donc de choisir quelles données sont récupérer sur l’IoT Gateway et comment elles vont être stocké dans la BDD.

On associe le nom de la variable défini dans l’outil Device et on l’associe avec un nom de variable dans une BDD InfluxDB.

Les BDD sont définis avec des « machine » (machine non physique c’est juste une façon d’organiser et de stocker les données), ici on est sur la machine 1 de la BDD 001.

Chaque machine est liée à 4 valeurs appelée Value auquel on associe la variable créée dans l’outil devices.

Par exemple pour la donnée Convoyeur\_1\_NumPoste, qui contient le numéro de poste auquel le convoyeur est attaché, il faut pour accéder à cette donnée dans la BDD accéder à la valeur « m1\_v1 » dans la BDD 001.

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Pour la valeur2 il faudra chercher la valeur m1\_v2 etc</span>

##### Tableau récapitulatif des valeurs machine de chaque convoyeur :

<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" id="bkmrk-m1_v1-num_poste-m1_v" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt;"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M1\_v1*

</td><td style="width: 218.4pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Num\_poste*

</td></tr><tr style="mso-yfti-irow: 1;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M1\_v2*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Var\_Courant*

</td></tr><tr style="mso-yfti-irow: 2;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M1\_v3*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Presence\_WT\_Entree*

</td></tr><tr style="mso-yfti-irow: 3;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M1\_v4*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Presence\_WT\_Poste*

</td></tr><tr style="mso-yfti-irow: 4;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M2\_v1*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*RFID\_Numero\_Plateau*

</td></tr><tr style="mso-yfti-irow: 5;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M2\_v2*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Bande\_En\_rotation*

</td></tr><tr style="mso-yfti-irow: 6;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M2\_v3*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Var\_Voltage*

</td></tr><tr style="mso-yfti-irow: 7;"><td style="width: 234.7pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="313">*M2\_v4*

</td><td style="width: 218.4pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="291">*Var\_temperature*

</td></tr></tbody></table>

On peut rajouter des machines pour stocker plus de valeur avec l’onglet Add Cloud service et en sélectionnant Add « Bosch Rexroth IoT Insights Standard » :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/scaled-1680-/ZkKimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/ZkKimage.png)

### Base de donnée Influx DB

Toutes les bases de donnée InfluxDb sont accessibles à l'adresse https://192.168.3.40:8086

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/scaled-1680-/b0ximage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2023-05/b0ximage.png)

Rappel des données contenues dans chaque "machine" :

<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" id="bkmrk-001-iot-insights-sta" style="width: 488.1pt; border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt;" width="651"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; height: 16.85pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="350">*001 IoT Insights Standards*

</td><td style="width: 225.55pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="301">*Données du <span style="mso-spacerun: yes;"> </span>Convoyeur 1*

</td></tr><tr style="mso-yfti-irow: 1; height: 16.85pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="350">*002 IoT Insights Standards*

</td><td style="width: 225.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="301">*Données du Convoyeur 2*

</td></tr><tr style="mso-yfti-irow: 2; height: 17.4pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 17.4pt;" valign="top" width="350">*003 IoT Insights Standards*

</td><td style="width: 225.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 17.4pt;" valign="top" width="301">*Données du Convoyeur 3*

</td></tr><tr style="mso-yfti-irow: 3; height: 33.65pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 33.65pt;" valign="top" width="350">*004 IoT Insights Standards*

</td><td style="width: 225.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 33.65pt;" valign="top" width="301">*Données du bouton poussoir et de l’andon du poste de préparation*

</td></tr><tr style="mso-yfti-irow: 4; height: 16.85pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="350">*005 ActiveAssist*

</td><td style="width: 225.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 16.85pt;" valign="top" width="301">*Donnée de l’active asssit*

</td></tr><tr style="mso-yfti-irow: 5; mso-yfti-lastrow: yes; height: 33.65pt;"><td style="width: 262.55pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 33.65pt;" valign="top" width="350">*006 Data Postes (Standards)*

</td><td style="width: 225.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 33.65pt;" valign="top" width="301">*Données des boutons poussoir et des andons des postes*

</td></tr></tbody></table>

# Simulation de la production - Logiciel IMPACT

### Utilisation basique

#### Import d'un modèle 3D

[http://utilisateurs.impact.free.fr/objets\_3d\_Bureaux.htm](http://utilisateurs.impact.free.fr/objets_3d_Bureaux.htm)

- Télécharger le modèle 3D ou l'exporter depuis votre logiciel de CAO au format .STL ou .STEP par exemple.
- Convertir le fichier au format .OBJ
- Enregistrer le fichier .OBJ dans la bibliothèque 
    - Créer le dossier correspondant à la catégorie d'objets, par exemple `C:\program files\Impact 8\Biblio\Bosch`
    - Copier le ficher dans le dossier créé

#### Création d'un modèle 3D

<div class="markup_a7e664 messageContent__21e69" id="bkmrk-http%3A%2F%2Futilisateurs.-1">[http://utilisateurs.impact.free.fr/CreationObjet3D/Impact\_Objet3D.htm](http://utilisateurs.impact.free.fr/CreationObjet3D/Impact_Objet3D.htm)</div>### Ressources  


- Site du logiciel : [http://qlio-annecy-transfert.com/logiciel/impact/](http://qlio-annecy-transfert.com/logiciel/impact/)
- Wiki du logiciel : [http://utilisateurs.impact.free.fr/](http://utilisateurs.impact.free.fr/)
- Création d'objets 3D [http://utilisateurs.impact.free.fr/CreationObjet3D/Impact\_Objet3D.htm](http://utilisateurs.impact.free.fr/CreationObjet3D/Impact_Objet3D.htm)
- 

### Contacts  


- <Pascal.bonnefous@univ-savoie.fr>
- <Uilisateurs.impact@free.fr>

### Alternatives  


- Visual Components pour la simulation d'usines 
    - Enseignants : [https://www.visualcomponents.com/industries/academia/#professors](https://www.visualcomponents.com/industries/academia/#professors)
        - Faire une demande pour une licence perpétuelle (30 postes) [https://www.visualcomponents.com/contact-us/](https://www.visualcomponents.com/contact-us/)
        - Cela fonctionne avec un serveur de licence [https://www.visualcomponents.com/downloads/#network](https://www.visualcomponents.com/downloads/#network)
    - Etudiants : [https://www.visualcomponents.com/industries/academia/#students](https://www.visualcomponents.com/industries/academia/#students)
        - Remplir le formulaire en bas de page pour recevoir une licence de test de 30 jours

# Implantation et Simulation de ligne - Visual Components

Visual Components est installé sur le PC QLIO-VR-1. Il faut récupérer des clés de licence de 3 mois auprès de Juri Valla (Commercial France)

Un fichier de démo est dispo dans seafile `\Ligne Bosch 4.H\Outils_4.h\Visual Components`

<div class="moz-forward-container" id="bkmrk-il-y-a-une-bonne-doc">Il y a une bonne doc' ici pour la simulation d'implentation de ligne : [https://academy.visualcomponents.com/learning-paths/manufacturing-design-and-planning/](https://academy.visualcomponents.com/learning-paths/manufacturing-design-and-planning/)</div><div class="moz-forward-container" id="bkmrk-et-voici-tous-les-pa">Et voici tous les parcours de formation qu'ils proposent : [https://academy.visualcomponents.com/learning-paths/](https://academy.visualcomponents.com/learning-paths/)  
</div>Voilà à quoi peut ressembler la ligne simulée, à partir d'éléments Bosch Rexroth disponibles dans la bibliothèque de composants:

<div class="attachmentThumb" draggable="false" id="bkmrk-"></div>[![visual_components_flextory.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-10/scaled-1680-/visual-components-flextory.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-10/visual-components-flextory.png)

### Elements de Gauthier Hentz :

Quand j'étais au Fraunhofer j'ai pas mal travaillé avec le logiciel Visual Components (qui inclut Delfoi Robotics). C'est un des logiciels de simulation de la production les plus intuitifs à utiliser que j'ai pu tester. Dans notre comparatif des logiciels de programmation hors-ligne des robots, il arrivait dans le Top 3 avec Dassault (Delmia) et Siemens (Process Simulate), pour un prix dérisoire.

- Côté QLIO - Visual Components : Je pense que ça remplacerait avantageusement le logiciel IMPACT (dernier développement 2017) pour simuler la ligne BOSCH. Je pourrais faire l'implantation de la simu (incluant d'éventuels signaux I/O) assez rapidement.

[https://www.youtube.com/watch?v=PVcih2l24Uo](https://www.youtube.com/watch?v=PVcih2l24Uo)

[https://www.youtube.com/watch?v=\_WNCBAAmaC0](https://www.youtube.com/watch?v=_WNCBAAmaC0)

- Côté GEII - Delfoi Robotics : c'est un logiciel indépendant de la marque du robot, qui possède des fonctionnalités avancées pour simplifier la programmation de différents procédés : pick&amp;place, soudure. C'est très pratique pour faire des tests d'implantation de ligne et de robots, et tester l'accessibilité d'une pièce (espace de travail du robot). On peut exporter des programmes FANUC et UR.

[https://www.youtube.com/watch?v=EIbFwRTbecU](https://www.youtube.com/watch?v=EIbFwRTbecU)

- Côté R&amp;D (ICube, RDH, IGG) et conseil aux entreprises : Ça permet de voir ce qu'il se fait niveau industriel pour les logiciels de simulation de la production.

Ils ont une politique tarifaire très avantageuse pour l'enseignement (30 licences) et la recherche, et 30 jours d'essai gratuit pour les étudiants à la maison.