Ligne Flexible Connectée 4.H
- Architecture de la ligne
- Composants de la ligne
- Architecture et flux de données
- Simulation de la production - Logiciel IMPACT
- Robot collaboratif Bosch Rexroth APAS
- Mode opératoire APAS - Les bases
- Programmation avancée
- Trame de TP
- Maintenance et utilisation experte
- Utilisation de la Ligne
- MES et ERP
- Visseuse Nexo
- PressKit
- Active Assist
Architecture 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 :
IoT Gateway et ActiveCockpit
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 :
Ecran d'accueil
Les différentes fonctionnalités de l’IOT gateway sont explicitées sur le menu d’accueil :
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 :
On renseigne dans serveur URL l’adresse du serveur OPC UA du convoyeur, ici pour le serveur du convoyeur 1 on renseigne
opc.tcp//192.168.3.41:4840
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 : 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" va permettre d’inscrire les données collectées en temps réel par le concentrateur Bosch dans la BDD influxDB.
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.
Pour la valeur2 il faudra chercher la valeur m1_v2 etc
Tableau récapitulatif des valeurs machine de chaque convoyeur :
M1_v1 |
Num_poste |
M1_v2 |
Var_Courant |
M1_v3 |
Presence_WT_Entree |
M1_v4 |
Presence_WT_Poste |
M2_v1 |
RFID_Numero_Plateau |
M2_v2 |
Bande_En_rotation |
M2_v3 |
Var_Voltage |
M2_v4 |
Var_temperature |
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 » :
Base de donnée Influx DB
Toutes les bases de donnée InfluxDb sont accessibles à l'adresse https://192.168.3.40:8086
Rappel des données contenues dans chaque "machine" :
001 IoT Insights Standards |
Données du Convoyeur 1 |
002 IoT Insights Standards |
Données du Convoyeur 2 |
003 IoT Insights Standards |
Données du Convoyeur 3 |
004 IoT Insights Standards |
Données du bouton poussoir et de l’andon du poste de préparation |
005 ActiveAssist |
Donnée de l’active asssit |
006 Data Postes (Standards) |
Données des boutons poussoir et des andons des postes |
Simulation de la production - Logiciel IMPACT
Utilisation basique
Import d'un modèle 3D
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éer le dossier correspondant à la catégorie d'objets, par exemple
Création d'un modèle 3D
Ressources
- Site du logiciel : http://qlio-annecy-transfert.com/logiciel/impact/
- Wiki du logiciel : http://utilisateurs.impact.free.fr/
- Création d'objets 3D http://utilisateurs.impact.free.fr/CreationObjet3D/Impact_Objet3D.htm
Contacts
Alternatives
- Visual Components pour la simulation d'usines
- Enseignants : https://www.visualcomponents.com/industries/academia/#professors
- Faire une demande pour une licence perpétuelle (30 postes) https://www.visualcomponents.com/contact-us/
- Cela fonctionne avec un serveur de licence https://www.visualcomponents.com/downloads/#network
- Etudiants : https://www.visualcomponents.com/industries/academia/#students
- Remplir le formulaire en bas de page pour recevoir une licence de test de 30 jours
- Enseignants : https://www.visualcomponents.com/industries/academia/#professors
Robot collaboratif Bosch Rexroth APAS
Mode opératoire APAS - Les bases
Présentation APAS :
Toujours éteindre le robot en suivant les instructions d'extinction ! Le robot doit être éteint dans sa position d'origine.
Si le robot n’est pas dans sa position d’origine au démarrage, la peau capacitive ne pourra être calibrée et le robot ne pourra fonctionner en mode collaboratif. Il faudra alors insérer la clé pour désactiver les sécurités et le déplacer dans sa position d’origine en mode manuel (bouton d'acquittement actif).
Démarrage normal
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Vérifier que le robot est dans sa position d'origine et que la zone de travail est libre. Si le robot n’est pas dans sa position d’origine au démarrage, se reporter à la section "démarrage en cas de problème" |
|
2. |
Relâcher les 2 boutons d’arrêt d’urgence en les tournant dans le sens horaire :
|
|
3. |
Vérifier que l'arrêt d'urgence de la pince n'est pas enclenché. Le cas échéant, tirer sur les doigts de la pince. Si la pince est en collision avec un objet, ce qui empêche de tirer sur les doigts, déplacer le robot en mode manuel, voir section Programmation manuelle basique |
|
4. |
Tourner l’interrupteur principal électrique en Position I |
|
5. |
Démarrer le contrôleur du robot sur le Panneau de commande lorsque demandé pendant la phase d’initialisation « Steuerung Ein ». Rester appuyer 1 à 2 secondes. Le bouton d’acquittement doit être activé car la peau capacitive n’est pas encore active. |
|
6. |
Attendre l’ouverture du logiciel de programmation du robot et le message demandant l’allumage du contrôleur du robot « Steuerung-Ein ». Traduction :
Procédure d’initialisation APAS
Si le message "es kann keine Verbindung zum Roboter aufgebaut werden..." apparaît, c'est sûrement que le robot a été éteint hors de sa position d'origine. Se reporter à la section "Démarrage en cas de problème". |
|
8. |
Code couleur voyant sécurité :
|
|
Extinction
Étape |
Manière de procéder |
Graphique / Élément de commande |
1 |
Condition préalable :
|
|
3 |
Appuyez sur la touche "Interrompre étape de travail"
|
|
4 |
Appuyez sur la touche "Retour aux plans de travail"
|
|
5 |
Appuyez sur la touche "Accoster position d'origine". |
|
6 |
Confirmez avec la touche "Démarrer". |
|
7 |
Attendre que le robot se déplace en position d'origine |
|
8 |
|
|
9 |
|
|
Démarrage en cas de problème
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Vérifier que la zone de travail est libre. Si le robot n’est pas dans sa position d’origine au démarrage, la peau capacitive ne pourra être calibrée et le robot ne pourra fonctionner en mode collaboratif. Il faudra alors insérer la clé pour désactiver les sécurités et le déplacer dans sa position d’origine en mode manuel (bouton d'acquittement actif) |
|
2. |
Relâcher les 2 boutons d’arrêt d’urgence en les tournant dans le sens horaire :
|
|
3. |
Vérifier que l'arrêt d'urgence de la pince n'est pas enclenché. Le cas échéant, tirer sur les doigts de la pince. Si la pince est en collision avec un objet, ce qui empêche de tirer sur les doigts, déplacer le robot en mode manuel. |
|
4. |
Enclencher l'interrupteur à clé « Freigabe Sonderfunktion » (Autorisation fonction spéciale)
Pour ponter les dispositifs de protection :
|
|
5. |
Tourner l’interrupteur principal électrique en Position I |
|
6. |
Appuyer sur le Bouton d’acquittement pendant la phase d’initialisation du robot (calibrage caméra et peau).
Ce bouton a trois positions :
|
|
7. |
Démarrer le contrôleur du robot sur le Panneau de commande lorsque demandé pendant la phase d’initialisation « Steuerung Ein ». Rester appuyer 1 à 2 secondes. Le bouton d’acquittement doit être activé car la peau capacitive n’est pas encore active. |
|
8. |
Attendre l’ouverture du logiciel de programmation du robot et le message demandant l’allumage du contrôleur du robot « Steuerung-Ein ». Traduction :
Procédure d’initialisation APAS
|
|
9. |
Appuyer sur le bouton « Accoster la position d'origine » |
|
10. |
Appuyer sur le bouton « course d’initialisation housse réactive »
|
|
11. |
Retirer la clé et rallumer le contrôleur. Le robot est à nouveau en mode collaboratif. |
|
Elements de commande et d’affichage
P .64 APAS assistant i6 BA
Programmation manuelle basique
ATTENTION !
Risque d’écrasement entre les doigts de la pince ou les pièces prises
et les éléments fixes !
Les doigts de la pince et les pièces prises ne sont pas protégés par la
housse de protection. En cas de mouvements de rotation du bras du robot
ou de la tête APAS, des collisions avec les éléments fixes de la station
peuvent survenir. Ce qui entraîne le risque d’écorchures et de légères
contusions.
- En mode manuel ou en mode de réglage, l’APAS assistant ne doit être
commandé que par une personne autorisée. Celle-ci doit être
familiarisée avec le fonctionnement et connaître les dangers potentiels. - Équiper les zones comportant un risque de coincement de barrières
locales en fonction de l’application. - En cours de service, ne pas intervenir dans la zone d’opération des
doigts de la pince. - Sur des trajets > 50 mm, les doigts de la pince doivent être orientés
vers le bas.
Connexion en mode Ajusteur ou Administrateur nécessaire !
Étape |
Manière de procéder |
Graphique / Élément de commande |
1 | Panneau de commande des mouvements du robot
|
|
2 | Définir l’orientation de la pince par rapport au sol :
|
|
3 | Commande des mouvements du robot dans le repère :
|
|
4 | Coordonnées du repère de l’outil (TCP Tool Center Point) |
|
5 | Cette zone affiche la valeur de translation (mm) et de rotation (°) que doit effectuer le robot. La valeur sélectionnée (en vert) peut se modifier à l’aide des touches situées juste en dessous. |
|
6 | Commande dans les repères intermédiaires de la chaîne cinématique du robot |
|
7 | Mouvement de translation du TCP dans le sens de la flèche (par ex. 1).
Le graphique montre la partie du bras du robot qui sera déplacée. |
|
8 | Mouvement de rotation du TCP dans le sens de la flèche (par ex. 2).
Le graphique montre la partie du bras du robot qui sera déplacée. |
|
9 | Commande dans le repère de la pince du robot :
Un panneau pour la translation et un autre pour la rotation |
|
10 | Ouverture / fermeture de la pince |
|
11 | Commutation entre mouvement de translation et rotation |
|
12 | Commande dans le repère de la bride du robot (TCP par défaut) |
|
13 | Commande des coordonnées articulaires du robot. On commande directement chacun des 6 moteurs en rotation. |
|
Révision #8
Créé 13 mars 2023 11:18:12 par apps_admin
Programmation avancée
Principe général
Le robot APAS est doté d'une interface de programmation par bloc installée sur le PC Windows embarqué. TwinCat par Beckhoff permet de communiquer avec le contrôleur du robot qui tourner sur un ordinateur temps réel.
Programmation graphique :
- Séquence de blocs d’actions élémentaires
- Agencement des blocs en série ou en parallèle
- Sélection et Paramétrage de blocs prédéfinis
- Certains blocs d’action nécessitent un apprentissage pour la configuration de ses paramètres
Exemple du type d’approvisionnement en composants à manipuler avec la pince du robot (Pick & Place) :
- Composants sur surface libre
- Composants palettisés
- Composants sur chariot guidé
- Saisie d’un composant avec la pince :
Exemple d’apprentissage de la trajectoire d’approche :
- Création des trajectoires par apprentissage de point
- Gestion de la caméra intégrée
Programmation par bloc : Visual Pick & Place
L'interface de programmation par bloc fournit un tutoriel intégré pour la programmation de chaque bloc. Nous n'allons pas détailler tout le tutoriel mais insister sur les points qui selon nous peuvent être bloquant, et donner des astuces.
Mode opératoire initialement réalisé le 21/05/2024 par Théo Champvalon et Théo Heitz, étudiants en BUT2 QLIO.
Localisation d'un repère de référence
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Mettre le robot et le chariot comme indiqué sur la photo |
|
2. |
Se connecter en Administrateur et cliquer sur Recréer |
|
3. | Donner un nom et une description parlante au programme, ex. saisie d'un stylo sur palette et dépôt sur le SHERPA avec le robot en bout de ligne orienté vers le transstockeur. |
|
4. | Cliquer sur le premier bloc « Référence position » puis « Modifier étape » |
|
5. |
Les boutons en bas à droite et à gauche permettent de naviguer entre les différentes étapes de la programmation graphique Lors des déplacements manuels du robot, veillez à ne pas percuter d'objets. Pour cela effectuez des petits déplacements lents en réduisant la distance de déplacement (10mm par exemple), et l'Override à 10% (pourcentage de la vitesse)
Tâche de localisation des Marqueurs (Proche) Cliquer sur |
|
6. | Cliquer sur Formation . Les marqueurs de la mire doivent être détectés en vert. S'ils ne le sont pas, commencez par vérifier la luminosité de la pièce (allumer la lumière et fermer les volets pour avoir une lumière plus maîtrisée) et modifier la hauteur à l'étape précédente. Les réglages experts ne devraient pas être nécessaires. |
|
7. | Enregistrer la Pose de détection |
|
8. |
La programmation d'une tâche est terminée lorsque l'ensemble des opérations du sommaire à gauche sont vertes. La position de référence est fonctionnelle. Le robot sait localiser le convoyeur par rapport à sa base. la suite des mouvements seront effectués par rapport à ce repère de référence. |
|
Pick
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Créer un nouveau bloc « Saisir » |
|
2. |
Accoster la référence si cette étape est demandée |
|
3. |
Choisir « Composant sur surface libre » |
|
4. |
Choisir la plage. Dans notre cas « Plage < 8 x 8 cm » |
|
5. |
Cliquer sur « Ajustement contour 2D » |
|
6. |
Cliquer sur « Apprendre le modèle » |
|
7. |
Déplacer la caméra afin qu'elle se trouve à environ 20 cm au-dessus de l’objet et que l’objet soit au centre de l’image. |
|
8. |
Remplacer l’objet par le marquage et centrer la croix dans le rond |
|
9. |
Cliquer sur « aligner » |
|
10. |
Cliquer sur « Écraser l’image » |
|
11. |
Optimiser les contours de l’objet en augmentant le gain de l’image. Cela permet au robot d’apprendre au mieux l’objet. |
|
12. |
Cliquer sur « Démarrer la définition du contour » |
|
13. |
Sélectionner le rectangle en haut à droite et cliquer sur l’objet afin de déposer le rectangle puis l’agrandir pour y faire entrer l’objet. |
|
14. |
Effectuer le « test manuel ». Plus la qualité modèle d’objet se rapproche de 1 plus le robot à bien appris la forme de l’objet. |
|
15. |
Vous pouvez cliquer sur le bouton « 90° » afin de remettre la caméra en direction du sol.
|
|
16. |
Il faut maintenant utiliser les commandes de déplacement du robot pour positionner la pince en position de saisie de l'objet.
On est obligé de s'approcher très proche du plateau. Faire très attention de ne rien percuter. Pour cela baisser le pas de déplacement à 1 mm.
|
|
17. |
Cliquer sur « accéder ». Le robot va alors saisir/atteindre l’objet. |
|
18. |
Il faut maintenant programmer l’éloignement du robot lorsqu’il a saisi l’objet. Vous pouvez appuyer sur « - » deux ou trois fois afin de faire remonter le APAS et enfin cliquer sur « Ajouter position à la fin de la trajectoire ». |
|
Place
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Ajouter un nouveau bloc qui est « Déposer ». |
|
2. |
Cliquer sur « un par un dans un logement processus » |
|
3. |
Cliquer sur « logement processus mobile ». Cela permet au robot d’être plus flexible dans la recherche du point de dépôt |
|
4. |
Cliquer sur « A chaque utilisation » |
|
5. |
Placer une mire avec les 3 marqueurs au plus proche de la zone de dépôt. Déplacer le robot pour aligner la caméra au-dessus de la mire. |
|
6. |
Lancer l’apprentissage. Les cercles doivent apparaitre en vert. Enregistrer |
|
7. |
Créer le mouvement d’approche. Ce mouvement est celui que le robot effectuera après avoir détecté le marquage. Dans notre cas il doit juste se rapprocher du milieu et du fond de la boite avant de lâcher le stylo. |
|
8. |
Régler le rayon et enregistrer la position d'ouverture |
|
9. |
Définir le point de trajectoire d'éloignement, cliquer deux ou trois fois sur « - » puis « Ajouter position à la fin de la trajectoire ». |
|
10. |
|
|
Lancement d'un programme en boucle
Étape |
Manière de procéder |
Graphique / Élément de commande |
1. |
Ajouter le bloc de « regroupement » qui permet au programme de recommencer en boucle |
|
2. |
Cliquer sur le dernier bloc de regroupement puis en haut à droite sur « Connecter » |
|
3. |
Cliquer sur le deuxième bloc « Pick » puis sur « connecter » |
|
4. |
Cela permet de créer une boucle. Voici le programme à ce moment. |
|
5. |
Optionnellement, on peut demander au robot de se repositionner par rapport au marqueur du convoyeur avant chaque saisie de stylo. Mais si les freins du robot et du convoyeur sont bien serrés cela ne devrait pas être nécessaire.
Cliquer sur le premier regroupement puis créer un nouveau bloc. |
|
6. |
Ajouter le bloc « référence intermédiaire » |
|
Configuration avancée
Changer la langue en cliquant sur Langue / Sprache | |
---|---|
Passer en mode Ajusteur ou Administrateur. Pour pouvoir modifier les programmes | |
Règle le pourcentage de vitesse d’exécution des programmes du robot, dit « Override ». Par ex. si vous avez défini un mouvement Cartésien droit à 20cm/s et que vous donnez un Override de 10%, la trajectoire sera exécutée par le contrôleur à une vitesse de 2cm/s | |
Pour comprendre les problèmes d’exécution du programme il faut ouvrir les messages de « log ». Après l’exécution d’un programme on peut supprimer les messages précédents. | |
Trame de TP
Présentation du cobot Bosch Rexroth APAS (30min)
- Les bras robots industriels
- Vocabulaire mécanique du solide et mécanismes : Système de coordonnées, Repère Cartésien, 6 degrés de liberté, 6 coordonnées Cartésiennes (x,y,z,a,b,c), Transformation homogène, Matrice de Transformation, chaîne cinématique ouverte,
- Vocabulaire robotique : segment (Link), articulation (Joint), base, épaule (shoulder), coude (elbow), poignet (wrist), bride (Flange), outil (Tool), TCP (Tool Center Point), modèles cinématiques direct et inverse, Espace de travail, Pose=Position+Orientation
- Problème : déterminer les mouvements à commander aux moteurs en fonction de la trajectoire désirée de l'outil. Points de la trajectoire : Position, Orientation, Vitesse, Accélération, dérivée de l'accélération
- Comment programme-t-on un robot industriel : le teach panel
- On déplace le robot à une position voulue et on enregistre le point de la trajectoire
- Notions de sécurité d'un robot industriel
- Mouvements lents de la pince peuvent résulter en des mouvements rapides des moteurs
- On peut se retrouver coincé entre le bras en un mur, ou entre deux segments d'un bras : très forte pression qui peut briser des os.
- Amplification de la puissance des moteurs par effet de bras de levier (vitesse, force).
- On reste à bonne distance de l'espace de travail (la "portée") du robot quand on le programme.
- Si besoin de s'approcher du robot on est deux personnes dont une qui rentre dans l'espace de travail avec le teach panel et l'autre qui reste à distance mais à portée d'un bouton d'arrêt d'urgence
- Le rôle d'un robot collaboratif dans l'Industrie 4.0
- Notions de sécurité spécifiques au robot APAS
- Circuit de sécurité : boutons d'arrêt d'urgence, bouton homme-mort, pince collaborative
- Désactivation du mode collaboratif
Déplacement du robot avec le teach panel (30min)
Suivre les tutoriels de base du robot APAS : https://innovation.iha.unistra.fr/books/ligne-flexible-connectee-4h/page/mode-operatoire-apas-les-bases
Programmation par bloc d'une tâche de Pick & Place (1H30)
Suivre les tutoriels avancés du robot APAS : https://innovation.iha.unistra.fr/books/ligne-flexible-connectee-4h/page/programmation-avancee
Rédaction d'un tutoriel pour un autre bloc de programmation graphique (1H30)
Maintenance et utilisation experte
Maintenance
Changement des piles
- Une fois par an en Juillet
- Démonter le cache métallique (4 vis alènes). Le joint a été mis de côté dans l'armoire bleue pour simplifier le démontage
- Démonter les vis avec un tournevis plat (les clés alènes servent à extraire le boitier de piles)
- Commencer par dévisser la vis du bas et bien plaquer le boitier pour faciliter le vissage/dévissage
- 4 piles C2 à demander au service technique. Respecter la polarité qui est marquée avec + et -
Calibration des moteurs
Suivre la doc' https://seafile.unistra.fr/f/334ef5b14e02461eb4ba/
Récupérer et brancher le teach pendant si le robot n'en a pas.
- Dans l'armoire électrique sur la gauche du robot (face au panneau Bosch) :
- Passer le robot en mode Manuel (T1, contrôleur et Teach Panel). Mode Auto / Manuel (T1)
- Contrôleur ON/OFF
- Prise Teach Pendant
Etape 4 : Teach Panel
- Les boutons F1-F5 permettent de sélectionner les options qui apparaissent en bas de l'écran
- Afficher les Alarmes Actives en cliquant sur
SHIFT
+DIAG
- Laisser appuyé le bouton homme-mort en position intermédiaire
- Démarrer le contrôleur (bouton I sur panneau Bosch)
- Essayer de désactiver les Alarmes en cliquant sur
RESET
- Cliquer sur
RESET
(teach panel) jusqu'à ce qu'il n'y ait plus d'erreur - Pour bouger le robot Appuyer sur
SHIFT
+ boutons bleus des axes
Calibration
- Avant de mettre les axes à 0
- Bien bouger les 6 moteurs sur une grande distance pour que l'alarme
SRVO-062 (group 1, axis X)
se quitte
Etape 3.2 :
- Les boutons F1-F5 permettent de sélectionner les options qui apparaissent en bas de l'écran
- Cliquer sur F3 puis F4/F5
Architecture du robot
- Communication Beckhoff TwinCat entre le PC Windows embarqué et le contrôleur du robot
- Teach panel Fanuc dans le coffret électrique
Utilisation de la Ligne
Démarrage et Connexion
Version courte
Allumer le fusible dans l'armoire électrique principale de la salle. Il faut une clé de l'armoire qui est une clé standard.
Connexion au sous-réseau de la ligne 192.168.3.0
Toutes les prises RJ45 des poteaux de la ligne sont connectées à un sous-réseau (VLAN) 192.168.3.0/24 isolé du réseau de l'IUT, ce à des fins de sécurité informatique. Tous les éléments de la ligne ont une adresse IP en 192.168.3.x pour pouvoir communiquer sur ce réseau. A priori, on ne peut donc pas se connecter par le wifi ou le réseau filaire de l'IUT depuis son bureau aux interfaces web qui sont hébergées sur un des serveurs de la ligne :
- IoT Gateway 192.168.3.40
- VM FORCAM 192.168.3.2
- Bosch Rodez 192.168.3.1
Pour pouvoir se connecter depuis son ordinateur personnel à la ligne, il faut se mettre en filaire sur un switch d'un poste ou un poteau de la ligne. Puis il faut configurer la carte réseau ethernet correspondante en IPv4 fixe, cf. photo ci-dessous :
Les IP suivantes sont libres (vérifier dans le fichier Adresse_IP.xlsx) :
- 192.168.3.80-99
- 192.168.3.137-249
Pour pouvoir se connecter au sous-réseau de la ligne depuis son bureau de l'IUT, il faut de plus que le responsable réseau de l'IUT configure une des prises RJ45 du bureau (ex. prise A15-2 en A1-05) sur le sous-réseau. Attention, cette prise ne pourra plus être utilisée pour se connecter au réseau de l'IUT.
Allumage de chaque élément
Visualisation et traitement des données de la Ligne
Une fois les données stockées on va vouloir maintenant les visualiser.
OPC-UA
Il est possible de visualiser les données concentrées sur l'IoT Gateway via le protocole OPC-UA.
- Installer le logiciel client graphique FreeOPC-UA GUI https://github.com/FreeOpcUa/opcua-client-gui
- Sur Linux (VM WSL Ubuntu) dans un terminal taper
pip3 install opcua-client
, lancer avecopcua-client
- Sur Windows
- télécharger et extraire Winpython par ex. vers
C:\Users\user\Downloads\WPy64-31241
- Lancer le terminal WinPython
YOUR_INSTALL_PATH\WinPython Terminal.exe
- màj pip
python.exe -m pip install --upgrade pip
- installer avec
pip install opcua-client
- lancer avec
opcua-client.exe
- télécharger et extraire Winpython par ex. vers
- Sur Linux (VM WSL Ubuntu) dans un terminal taper
- Lancer FreeOPC-UA et se connecter à l'IoT Gateway sur le port OPC-UA
opc.tcp://192.168.3.40:9999
(ou le serveur de lien avec Mappsyopc.tcp://192.168.3.40:4840
)- Cliquer sur Connect
- Inspecter les variables de la ligne
- Dans le panneau de droite, observer les variables changer d'état
Grafana
Un des outils que nous pouvons utiliser pour visualiser les données est un serveur grafana qui est hébergé sur l’IOT gateway. Pour utiliser Grafana, il faut tout d’abord ajouter les bases de données influxdb pour pouvoir importer et afficher les données. Voici un exemple de configuration de BDD dans Grafana :
Les BDD ont déjà été importé dans grafana.
Dashboard
Voilà un exemple de Dashboard permettant d'afficher les données
IoT Dashboard
Node-RED
Intégration des Andons, boutons tactiles et traitement de données
Interconnexion données Bosch-HLP
Serveur OPC-UA sous Node-RED
Dans le cadre de l'intégration de la Ligne connectée Bosch Rexroth avec le MES HLP Mappsy, le serveur Node-RED mis en place par Théo Kielwasser et Bosch pour le traitement de données a été augmenté d'un Flow supplémentaire. Ce Flow créé un serveur OPC-UA sur le port standard 192.168.3.40:4840
. Le serveur OPC-UA de l'IoT Gateway lui, est sur le port 192.168.3.40:9999
. Cela permet de formater/convertir les données Bosch pour qu'elles correspondent au "format standard" HLP/Mappsy.
Pour visualiser ces données il suffit d'utiliser FreeOPC-UA pour se connecter à opc.tcp://192.168.3.40:4840
(adapter les instructions ci-dessus https://innovation.iha.unistra.fr/books/ligne-flexible-connectee-4h/page/visualisation-et-traitement-des-donnees-de-la-ligne#bkmrk-opc-ua ).
Le principe d'interconnexion est simple. Pour chaque poste, on publie une variable booléenne OPC-UA PIECES_COUNTER_N
dans Root/Objects/postes
. Cette variable est true
lorsqu'il n'y a pas de palet au poste N
et false
lorsqu'un palet est présent. Lorqu'un palet quitte le poste la variable change donc de l'état false à true.
Le boitier HLP i4 se connecte au serveur Bosch via le réseau local de la ligne via son interface ETH2 (câble rose connecté au switch du poste de préparation). Il souscrit au serveur OPC-UA 192.168.3.40:4840
. Le boitier est connecté au cloud HLP via son interface ETH1 et le routeur de la ligne (câble gris connecté à la prise B0TP11-29 en bas du poteau, prise sans étiquette).
Chaque fois que la variable passe à true, HLP incrémente une variable de comptage dans l'infrastructure de données de la ligne sur son cloud.
Flow de stockage dans des variables globales
Flow de publication des variables globales sur le l'OPC-UA 4840
Sources :
- Tuto : https://flowfuse.com/blog/2023/07/how-to-deploy-a-basic-opc-ua-server-in-node-red/
- Serveur OPC-UA dans serveur Node-RED (Flow) : https://flows.nodered.org/node/node-red-contrib-opcua-server
- Exemple de flow : https://github.com/BiancoRoyal/node-red-contrib-opcua-server/blob/master/examples/server-with-context.json
- Upstream : https://flows.nodered.org/node/node-red-contrib-opcua
- A voir ? https://support.elsist.biz/fr/articoli/opc-ua-client-con-node-red/
Export des données dans un tableur
Un programme écrit en Python est disponible pour générer un export des données de la base de données InfluxDB au format XLS.
- Lancer le programme depuis le bureau
- Désélectionner les données à ne pas exporter (turquoise=sélectionné)
- Cliquer sur export
Par défaut la date du jour est sélectionnée. On peut sélectionner un autre jour
- Ouvrir le dossier Excel_Generator\Excel_Data via le raccourci présent sur le bureau
- Le fichier créé est nommé DataLigne
Défaillances
Poste préparation
Table motorisée
Erreur A64
Pour l’erreur du poste de travaille, c’est du à une mauvaise manipulation, ou à une descente du poste de travail contre un objet et ça a provoqué un sur couple qui désynchronisé les colonnes.
Pour remettre en opération le système il faut faire 2 opération :
- Vérifier les branchements du boitier noir de puissance des colonnes. Ça vaut le coup après avoir mis hors tension le poste de débrancher et rebrancher tous les câbles de ce boitier pour être sur que tout est ok
- Quand le système a redémarré, appuyer en même temps sur montée et descente. Le poste va descendre et se mettre en butée des 2 côtés en position basse (attention il ne faut aucun obstacle sur la descente).
Si cette opération se passe bien, l’erreur A64 sera acquittée.
Borne HLP "Big 5"
Factory Reset
- Unplug power
- Hold HOME key and reconnect power
- Continue holding the HOME key until the unit starts Android System Recovery
- Press HOME key to select 'wipe data/factory reset'
- Press POWER key to select
- (Press the HOME key until 'YES – delete all user data' is selected)
- (Press POWER key to select)
- After data wipe is complete, press HOME to 'reboot system now'
MES et ERP
Forcam
Services Web Forcam Force
Forcam Force Workbench
- Connexion en http : http://192.168.3.2:15080/ffworkbench/
- Identifiants dans le Keepass
- Passer la langue en Anglais car le Français est mal configuré
Lister les utilisateurs
- User Administration --> User Editor
- Cliquer sur Search for User (La loupe) pour afficher tous les utilisateurs existants
Forcam New Office
On peut se connecter en http depuis le navigateur de la VM Forcam (voir ci-dessous) :
- Connexion en http : http://localhost:19080/ffnewoffice/
- Identifiants dans le Keepass
Création d'OF :
- Ordonnancement & Planification --> Ordre de fabrication
- Cliquer sur Recherche (la loupe) pour afficher tous les OF
Serveur Forcam
Un serveur Forcam Force est installé dans la salle de serveurs. Il s'agit de :
- Un ordinateur physique administré par le service InfoProx de l'IUT
- adresse IP 192.168.3.100
- FORCAM-1
- Le gestionnaire de VM Hyper-V Démarre automatiquement la VM Forcam
- Pour modifier dans Hyper-V Paramètres --> Gestion --> Action de démarrage automatique
- Normalement, pas besoin de se connecter à cette machine physique qui ne fait rien d'autre qu'héberger la VM
Une machine virtuelle (VM) Forcam installée sur le gestionnaire Hyper-V, voir ci-dessous.
Connexion à la la machine virtuelle ForcamVM
- Lancer l'application Connexion Bureau à Distance
- Se connecter à 192.168.3.2 ou ForcamVM avec le compte administrateur local
- Tous les services de Forcam Force (
_ffxxx
) sont en démarrage automatique, si l'un rencontre un problème on peut le redémarrer depuis les Services Windows
- Notons que la VM utilise 32Go de RAM sur 57Go, ce qui me semble excessif pour un serveur qui traite des données texte/nombres.
HLP Mappsy
Gestion des droits
- Gestion des comptes utilisateurs
Ne pas supprimer des comptes mais les désactiver
- Gestion des profils utilisateurs : niveaux de droits
- 4 niveaux de droits :
- Administrateur -> Super-administrateur : tous les droits
- Utilisateur Clé -> Enseignant (ou éventuellement étudiant en Projet)
- Utilisateur avancé -> Étudiant (en TP ou en Projet)
- Utilisateur -> Opérateur de base (Démonstration de la Ligne)
- Affectation d'un utilisateur à un Département (ex. UAP FleXtory) et un Service (ex. GAP Vitrine).
Affecter un utilisateur à un Service/GAP "Vitrine" ne lui permet pas de voir les problèmes affectés à une salle de résolution de problème "Salle Vitrine".
- Ajouter un utilisateur à une salle pour pouvoir y visualiser et traiter des problèmes --> cliquer sur le bouton modifier de la salle
- Pour pouvoir ajouter des KPI qui s'afficheront sur la borne TOP5
- Il faut cocher
Remplaçant
- Historique des modifications des droits
Droits les plus utiles à l'IUT
- Donner le droit de changer de machine et de GAP/SITE
- Droits sur le séquenceur (Administrateur et utilisateur clé)
Modification causes rebuts
Ressources Humaines - Gestion des compétences
Création d'un utilisateur et affectation d'un niveau de droits via le Module FORMATION:
- Ajouter un individu
- Attention à vérifier que le filtre utilisateur est désactivé
- Désactivation compte (ne supprime pas) --> cliquer sur la croix rouge
Création d'un utilisateur via le Module RESSOURCES HUMAINES>ORGANISATION
Gestion des KPIs
- Si vous êtes l'auteur ou êtes défini comme remplaçant dans une salle de management vous pouvez ajouter des indicateurs préalablement créés. (cf chapitre création donnée et indicateur)
- Depuis le module Indicateurs, créez une nouvelle donnée. Celle-ci sera utilisée pour créer un indicateur par la suite.
- Une fois créé et saisie, vous pouvez retrouver l'historique des valeurs de vos données dans l'onglet "Valeurs"
- Vous ne pouvez créer un indicateur que si une ou plusieurs données ont été créées auparavant. Dans le module Indicateurs, créez un nouvel indicateur.
Gestion des OFs
Cloture
- Fermer un OF le fait disparaitre de l'ordonnanceur
- Solution automatique :
- remontée des pièces produites (bonnes+rebutées) vers Divalto,
- clôture automatique d'OF par Divalto si toutes les pièces nécessaires ont été produites,
- redescente des clôtures d'OFs lors de la synchro via SFTP Divalto --> Mappsy
Synchronisation Divalto descendante
- Dans le Track & Trace Manager > OF
- Cliquer sur Synchronisation descendante en bas de page
- Le fichier de synchronisation entre HLP et Divalto est créé quand vous recevez un mail
Synchronisation des OF fini
Création manuelle
- Dans T&T Manager, cliquer sur OF, puis
+
- Remplir les champs obligatoires
- Créer une Gamme et des Opérations
Séquenceur
- Synchronisation des OFs
Gestion de la production
VRS Builder
- Ajouter / Modifier les procédures de OK démarrage : Respect des standards --> Check
Personnalisation menus Shopfloor, Routine, webapp
Attention il s'agit d'une nouvelle fonctionnalité qui va venir écraser le menu existant jusque là.
- Aller dans Gestion des menus
- Ajouter page --> cf. l'onglet "Gestion des pages"
- Ajouter un lien, mettre le lien vers l'URL de PANO
Tableau de bord personnalisé PANO
Catégorie
- Aller dans les paramètres d'administration
- Associer un PANO à une catégorie/tag
Layout de la ligne et status des postes
ERP - Divalto
Lancement de Divalto
- Se connecter à https://webapp.divaltocloud.com/
- Identifiants dans le KeepassXC
- Identifiants dans le KeepassXC
- Cliquer sur le
Menu
Consultation OF
Ouvrir Production > O.F. > Consultation OF
Export données Divalto --> Mappsy
Le transfert de données (articles, OF, etc.) de Divalto vers Mappsy se fait via un serveur de fichiers SFTP :
- On génère un export depuis l'interface Divalto dans un dossier du serveur SFTP
- HLP scrute le dossier à intervalle régulier pour lire les fichiers et en importer les données. Le compte SFTP fournit à HLP par Divalto est dans le Keepass. Utiliser un client FTP pour vérifier la présence des fichiers
Définition des fichiers et du dossier d'export OF
Production > Mises en production > Ordonnancement > Export ordonnancement
- Modifier les noms de fichiers d'export et le répertoire de création des fichiers si besoin :
Synchronisation descendante - Génération du fichier OF
- Se connecter à https://webapp.divaltocloud.com/
- Cliquer sur le
Menu
- Cliquer sur
Production>O.F.>Utilitaires>Export OF
- Sélectionner le ou les OF à exporter en utilisant les champs de sélection, par exemple du 01/01/2023 au 31/12/2023
- Cocher
Format XML
- Cliquer dans le champ
Nom du fichier
- Laisser le nom par défaut OF.txt
- Lancer l'export en tapant Entrée ou en cliquant sur le Coche
- réaliser l'import depuis HLP Mappsy
- Optionnel : enregistrer cette config d'export par défaut en cliquant sur la disquette avec la roue crantée
Définition du dossier d'échange
- Cliquer sur
Commerce & logistique>Fichiers>Organisation
- Sélectionner
IUT HAGUENAU
et cliquer surProduction
- Cliquer sur
PDP - Paramétrage
- Sélectionner le champ "Fichiers Interfaces" :
DOS_DPROD_INTERFACE
- Taper
F9
- Le chemin d'échange est défini ici :
\\ads.divaltocloud.com\Sites\699052\training\files\edi\scrut_Production\Channels
MES HLP Mappsy
MODE_OP_Déclarer_un_arrêt_de_production.docx
Visseuse Nexo
PressKit
Active Assist
Présentation du Poste
Démarrage :
- Vérifier la mise au point du vidéoprojecteur
Configuration du poste de travail :
- étalonnage de la caméra, détection du fond
- Focus et position image vidéoproj : Paramètres avancés -> projecteur
- Réglage focus, cliquer à côté de la valeur pour qu'elle s'applique
- Mettre le camembert de progression de gamme en bas à gauche de la gamme
- Réglage trapèze
- réglage de la zone de travail (rectangle blanc projeté). N'est pas synchronisé avec la caméra qui détecte le mouvement des mains
- Boutons virtuels
- Rangée du haut z=1012
- Rangée du bas z=1150 (1100 sur les extrémités)
- Plateau z=
Gestion des upgrade
Gestion des ordres :
- Liste de tous les produits qui ont été lancés
- S'il y en a un en cours il faut l'arrêter avant
- Filtrer les "in progress" pour l'annuler
Gestion du plan de travail :
- Gamme piano : permet de tester les 12 positions du pick-to-light
- Expliquer la création d'une nouvelle gamme avec les champs de description et l'ajout d'une image
- Etape de Pick : choisir le rack,
- 1-6 : étage du bas de gauche à droite
- 11-16 : étage du haut de gauche à droite
Lancement d'une gamme :
- Validation en mettant sa main ou niveau du pictogramme projeté ou le bouton vert sur la table du poste
Camembert de progression de la gamme en bas à gauche (devant) de l'image
Gestion du poste :
Ne pas changer les display !
Ne pas cliquer sur Arrêter -> ça coupe le poste !!
Prise de note Gaëtan :
Explication du rôle et de ce que l'on peut réaliser dans chaque menu