màj wiki avec retour MES lot-5 AD
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
---
|
||||
title: "Stations et routes AGV — Topologie iGO"
|
||||
tags: [agv, still, igo, stations, routes, topologie, location, group]
|
||||
status: draft
|
||||
standard_ref: concepts/stations.md
|
||||
jira_refs: []
|
||||
confluence_refs: []
|
||||
sources: ["CR technique - iGO STILL - fonctionnement et flux API + correspondance avec le module AGV EasyWMS Opus 4.7 v1.md"]
|
||||
last_updated: 2026-05-12
|
||||
author: Arthur
|
||||
---
|
||||
|
||||
# Stations et routes AGV — Topologie iGO
|
||||
|
||||
> **Résumé** : correspondance entre les stations/routes EasyWMS et les
|
||||
> concepts Location/Group/Vehicle d'iGO. Configuration dans MyMA vs
|
||||
> EasyS, différences de gestion des routes, et mapping topologique.
|
||||
|
||||
> **Standard EasyWMS** : → voir [Stations & Routes](../../concepts/stations.md)
|
||||
> Ce qui suit documente les **spécificités Limagrain** liées à
|
||||
> l'utilisation d'iGO easy comme fleet manager AGV.
|
||||
|
||||
## Contexte projet
|
||||
|
||||
Chez Limagrain, les AGV Still (EXV CB iGo) circulent entre les images
|
||||
de quai, les PIE, les postes de picking (PK) et les zones de stockage.
|
||||
La topologie physique (positions, trajets) est gérée **entièrement
|
||||
dans iGO** (MyMA / iGO designer) — EasyWMS ne connaît que les points
|
||||
de départ et d'arrivée.
|
||||
|
||||
## Mapping topologique EasyWMS ↔ iGO
|
||||
|
||||
| Concept EasyWMS | Concept iGO | Notes |
|
||||
|----------------|-------------|-------|
|
||||
| Station (type 65 — AGV) | **Vehicle** | Le véhicule physique lui-même |
|
||||
| Location (`IRealLocation`) | **Location** | Point physique avec `possibleActions` |
|
||||
| Route entre stations | _(pas d'équivalent)_ | iGO gère le routage en interne |
|
||||
| WorkingZone | **Group** | Ensemble de Locations (décision tardive) |
|
||||
| AGV equipment group (EasyS) | Flotte dans MyMA | Configuration véhicules |
|
||||
| `Allow loading` / `Allow unloading` | `Location.isEnabled` + `possibleActions` | Flag binaire côté iGO |
|
||||
| `LocationLockType` "For AGV" | `Location.isEnabled = false` | iGO n'a pas de typage de lock |
|
||||
| Manual loading aisle | _(pas d'équivalent)_ | iGO calcule la trajectoire seul |
|
||||
| Route distance | _(pas d'équivalent)_ | iGO optimise le chemin en interne |
|
||||
|
||||
## Configuration côté iGO (MyMA)
|
||||
|
||||
Les éléments suivants sont configurés dans MyMA, **pas dans EasyS** :
|
||||
|
||||
- **Vehicles** : enregistrement des AGV physiques (id, modèle, capacité)
|
||||
- **Locations** : déclaration de chaque point physique avec actions
|
||||
autorisées, types de véhicules et de charges admis, et
|
||||
`actualLoads` courantes
|
||||
- **Groups** : regroupement de Locations pour la décision tardive (cas
|
||||
typique : zone de déchargement avec plusieurs alvéoles)
|
||||
- **Layout / routes** : géré dans le designer iGO, invisible côté WMS
|
||||
|
||||
## Configuration côté EasyS (EasyWMS)
|
||||
|
||||
Restent dans EasyS :
|
||||
|
||||
- Création du warehouse station lié à l'AGV equipment group
|
||||
- Déclaration des AGV dans le groupe
|
||||
- Routes EasyWMS **entre stations WMS** (type "External" pour les
|
||||
segments AGV — le manager d'exécution est "External")
|
||||
|
||||
> ⚠️ Pas d'équivalent aux "Routes between stations" de type Galileo
|
||||
> pour iGO. Les routes EasyS servent uniquement à valider l'existence
|
||||
> d'un chemin logique côté WMS avant de créer la tâche AGV — la
|
||||
> trajectoire physique est résolue par iGO.
|
||||
|
||||
## Décision tardive — utilisation des Groups
|
||||
|
||||
Cas d'utilisation chez Limagrain :
|
||||
|
||||
- **Déchargement vers un quai** : le WMS crée le transport avec
|
||||
`destinationGroupId = "DOCK_OUT"`. iGO achemine l'AGV au point de
|
||||
décision du groupe. Le WMS choisit alors l'alvéole exacte via
|
||||
`POST /transports/{id}/final-destination`.
|
||||
- **Reproduction du CanPick/CanDrop** : pour forcer iGO à demander
|
||||
une autorisation avant chargement/déchargement, il faut configurer
|
||||
un Group même pour une seule Location. Le status `RequestSource` /
|
||||
`RequestDestination` sert alors de signal d'autorisation.
|
||||
|
||||
## Gestion des verrous
|
||||
|
||||
| EasyWMS | iGO |
|
||||
|---------|-----|
|
||||
| `LocationLockType` avec flag "For AGV" | `Location.isEnabled = false` |
|
||||
| Lock typé (par erreur extraction, putaway, etc.) | Un seul flag binaire côté iGO |
|
||||
| Lock posé automatiquement par les workflows | À gérer côté WMS uniquement — iGO ne pose pas de lock |
|
||||
|
||||
> ⚠️ iGO n'a pas de granularité dans les types de verrous. La
|
||||
> traduction entre les codes erreur EasyWMS (1001-2700) et le flag
|
||||
> `isEnabled` est à la charge du middleware.
|
||||
|
||||
## Points d'attention
|
||||
|
||||
⚠️ **Pas de routage exposé** : si un AGV ne peut pas atteindre une
|
||||
location (obstacle, zone interdite), iGO gère le contournement en
|
||||
interne. Pas d'erreur "Disabled route" renvoyée au WMS.
|
||||
|
||||
⚠️ **Pas de notion d'allée** (`LoadAisle` / `UnloadAisle`) côté iGO :
|
||||
ces champs EasyWMS (obligatoires en FIFO compact) sont portés par la
|
||||
Location côté iGO, pas par le transport.
|
||||
|
||||
⚠️ **Modification des Locations via API** : l'API iGO n'expose que
|
||||
`GET /api/locations` — pas de `POST`/`PUT`. Toute modification de
|
||||
topologie passe par MyMA manuellement.
|
||||
|
||||
## Questions ouvertes
|
||||
|
||||
- [ ] Création/modification de Location via API iGO — actuellement
|
||||
en lecture seule, à clarifier avec STILL (@Arthur)
|
||||
|
||||
## Historique des modifications
|
||||
|
||||
| Date | Auteur | Modification |
|
||||
|------|--------|-------------|
|
||||
| 2026-05-12 | Arthur | Création initiale |
|
||||
|
||||
## Références
|
||||
|
||||
| Source | Type | Date |
|
||||
|--------|------|------|
|
||||
| CR technique iGO STILL v1 | CR technique | 2026-04-28 |
|
||||
| [Stations & Routes standard](../../concepts/stations.md) | Wiki standard | — |
|
||||
| [AGV module standard](../../modules/agv.md) | Wiki standard | — |
|
||||
Reference in New Issue
Block a user