192 lines
7.5 KiB
Markdown
192 lines
7.5 KiB
Markdown
---
|
|
title: "Picking sur poste de travail — Expédition client"
|
|
tags: [picking, poste, expédition, ordonnancement, MOV, PCK]
|
|
status: draft
|
|
standard_ref: concepts/picking.md
|
|
jira_refs: [LIM-82]
|
|
confluence_refs: []
|
|
sources: [FR-SW-04-07_LIMAGRAIN_Functional_Analysis_V1.5.docx, "Expédition - LIMAGRAIN - DEV - Confluence.md", "LIM-82 LOT2.2 [PICKING] Ordonnancement des tâches de picking PS PK.md", "REU PICKING SEQUENCAGE 11-05-2026 - Analyse comparative notes + AF + devops.md"]
|
|
last_updated: 2026-05-12
|
|
author: Arthur
|
|
---
|
|
|
|
# Picking sur poste de travail — Expédition client
|
|
|
|
> **Résumé** : processus [CUSTOM] de picking sur poste de travail pour
|
|
> les commandes client, avec ordonnancement par espèce, règles de picking
|
|
> négatif et contraintes physiques.
|
|
|
|
> **Standard EasyWMS** : → voir [Picking](../../concepts/picking.md)
|
|
> Ce qui suit documente les **spécificités Limagrain** par rapport au standard.
|
|
|
|
## Contexte projet
|
|
|
|
Le picking chez Limagrain se fait sur les postes de travail automatisés
|
|
(pas de picking mobile en allée). Les palettes source et les palettes
|
|
de préparation sont acheminées par AGV sur les tables de préparation (TP).
|
|
|
|
> **Note** : cette page décrit le picking tel que défini dans l'AF V1.5.
|
|
> Le projet a depuis évolué vers un modèle « picking combinatoire »
|
|
> (CR V3.0, 4 jobs, CstAtt) qui sera documenté séparément.
|
|
|
|
## Déclenchement
|
|
|
|
Le picking est déclenché pour les commandes client (RUT type « Client »)
|
|
quand des palettes incomplètes sont nécessaires (la quantité demandée
|
|
ne correspond pas à des palettes complètes).
|
|
|
|
Prérequis : un **poste de travail assigné** (auto ou manuellement).
|
|
|
|
## [CUSTOM] Ordonnancement des palettes au poste
|
|
|
|
Une fois le poste assigné, les palettes arrivent dans cet ordre :
|
|
|
|
### Tri par espèce et gerbabilité
|
|
|
|
1. **Espèce Maïs** toujours en premier (pas la variété mais l'espèce)
|
|
2. Puis espèce avec la **plus grande quantité** dans la commande
|
|
3. Si égalité → **article/lot le plus lourd** en base de palette
|
|
|
|
**Mapping Espèce → stack (gerbabilité)** : le maïs = stack 0 (le plus
|
|
lourd/stable, donc en base). [CUSTOM] Gestion en **async sur l'ITM** pour
|
|
calculer la gerbabilité automatiquement à la création de l'article. Tri
|
|
des tâches de picking dans le workflow `StackerCrane_SortTasks_PR`.
|
|
|
|
### ~~Séparation par traitement commercial~~ SUPPRIMÉ (réu. 11/05/2026)
|
|
|
|
~~Pas de mélange entre articles avec traitement et sans traitement
|
|
sur une même palette fille.~~
|
|
|
|
**Décision** : `CONTROLE_TRAITEMENT_COMMERCIAL = false`. L'entrepôt
|
|
Limagrain ne fait pas de bio, pas de raison de maintenir cette
|
|
contrainte. Paramètre réactivable si besoin futur.
|
|
|
|
> Voir [Séquençage TK → PS — Arbitrage](sequencage-tk-ps.md#arbitrage-des-contradictions-reu-11052026)
|
|
> pour le détail de l'analyse comparative.
|
|
|
|
## [CUSTOM] Règle du picking négatif
|
|
|
|
**Deux conditions cumulatives** (réu. 11/05/2026) :
|
|
|
|
1. La quantité à prélever dépasse le **seuil fiche article** (défaut
|
|
55%, paramétrable par article via "Complete quantity percent excess
|
|
for negative picking")
|
|
2. Le **poids unitaire du sac ≥ 7 kg** (raison : instabilité palette si
|
|
gros sacs ramenés sur petits sacs)
|
|
|
|
Si les deux conditions sont remplies → **picking négatif** : au lieu de
|
|
déplacer les sacs à expédier, déplacer les sacs qui **retourneront en
|
|
stock** (moins de mouvements physiques).
|
|
|
|
Si l'une des deux conditions n'est pas remplie → picking direct
|
|
classique.
|
|
|
|
> Le picking négatif est **prioritaire sur Maïs first** et toutes les
|
|
> autres règles de tri (confirmé par Olivier, réu. 11/05/2026).
|
|
> Voir [Séquençage TK → PS](sequencage-tk-ps.md#critère-1--picking-négatif-en-premier).
|
|
|
|
## [CUSTOM] Calcul équivalent palette (pro rata Bag/pal)
|
|
|
|
Pour déterminer si une palette est « pleine », calcul en **pro rata
|
|
Bag/pal** (réu. 11/05/2026, remplace la logique DevOps "Bag/pal max") :
|
|
|
|
```
|
|
Équivalent palette d'un sac = 1 ÷ Bag/Pal de son lot
|
|
```
|
|
|
|
Le calcul est additif et gère nativement des lots avec des Bag/pal
|
|
différents sur une même palette :
|
|
|
|
```
|
|
Exemple :
|
|
15 sacs lot Bag/pal 20 + 10 sacs lot Bag/pal 75
|
|
= 15/20 + 10/75
|
|
= 0,75 + 0,133
|
|
= 88,3% → il reste ~12% de place
|
|
```
|
|
|
|
Seuil cible : **~95%** de remplissage (marge de sécurité).
|
|
Poids max palette : **1 250 kg** (AF fait foi, corrige 1 200 kg du
|
|
DevOps).
|
|
|
|
## [CUSTOM] Verrou « HORS TOLERANCE » — Recomptage
|
|
|
|
Si la palette source porte le verrou « HORS TOLERANCE » → recomptage
|
|
demandé avant le picking (inventaire).
|
|
|
|
- Si stock restant suffisant après inventaire → assignation maintenue
|
|
(workflow `OnStockAdjust` recalcule uniquement si nécessaire — ne casse
|
|
pas la tâche en cours)
|
|
- Si plus assez de stock → réassignation ailleurs + retrait verrou
|
|
|
|
## [CUSTOM] Algorithme de répartition des palettes sur les TP
|
|
|
|
Logique combinatoire complète gérant tous les cas :
|
|
|
|
- Picking négatif et enchaînement de pickings négatifs
|
|
- Ordonnancement par espèce
|
|
- Terminer une palette pleine avant d'en entamer une autre
|
|
- Cadencement des buffers devant les postes de picking
|
|
- Pas de mélange de traitement commercial (via famille d'article)
|
|
- **Contrainte** : l'opérateur ne doit **pas déplacer de sacs d'une table
|
|
à l'autre** (sacs lourds)
|
|
|
|
**Table du milieu** : toujours occupée soit par une palette de picking
|
|
négatif, soit par une palette vide de dépôt. Quand la palette de
|
|
prélèvement est vidée, l'opérateur la remet manuellement sur une pile
|
|
de palettes vides à proximité.
|
|
|
|
> Prévoir un process sans picking négatif pour les cas où c'est rarement
|
|
> utilisé (ou monter le seuil, ex : 70% au lieu de 50%).
|
|
|
|
## Processus de préparation
|
|
|
|
### Arrivée des palettes (toujours un poste 3 TP)
|
|
|
|
- Première palette au **centre** si picking négatif proposé, sinon sur
|
|
un côté
|
|
- Si une palette est sur un côté et qu'on propose du picking négatif →
|
|
prévenir l'opérateur de déplacer la palette au centre
|
|
- La palette client revient **toujours** au centre
|
|
- Pas de prépa sur 6 TP en simultané
|
|
|
|
### Picking
|
|
|
|
1. Palette source arrive sur une TP
|
|
2. Palette destination (vide ou en cours) sur une autre TP
|
|
3. Opérateur prélève les sacs (ou sacs retour si picking négatif)
|
|
4. ~~[CUSTOM] Message MOV envoyé à SAP~~ **ANNULÉ** (décision client)
|
|
5. Avant évacuation : choix filmage (CstData transmis à Galileo).
|
|
Possibilité de choisir « pas de filmage ».
|
|
6. Évacuation palette → PIE → contrôle poids → stockage/expédition
|
|
|
|
## [CUSTOM] Ordonnancement des tâches PS → PK (LIM-82)
|
|
|
|
Détail du cadencement des palettes depuis les postes de sortie (PS)
|
|
vers les postes de picking (PK). Toutes les tâches de picking se font
|
|
sur les tables élévatrices des PK.
|
|
|
|
### Règles de priorité
|
|
|
|
1. **Picking négatif toujours en premier** — une seule palette à la fois
|
|
pour ce process, toujours déposée sur la **table du centre**
|
|
2. **Picking classique ensuite** — jusqu'à **2 palettes simultanées** au
|
|
PK, déposées sur les **tables latérales**
|
|
3. Le WMS peut envoyer **1 palette picking négatif + 1 palette picking
|
|
classique** en même temps (pour compléter la palette post-picking
|
|
négatif)
|
|
4. Le nombre de palettes de prélèvement au PK ne dépasse **jamais 2**
|
|
|
|
### Picking négatif — Détail
|
|
|
|
À chaque tâche de picking négatif :
|
|
|
|
- Un **nouveau code SSCC** est généré pour la palette où l'excédent de
|
|
stock est déposé
|
|
- Une **étiquette RFID** est imprimée pour cette nouvelle palette
|
|
- La palette de picking négatif va toujours au **centre** du PK
|
|
|
|
### Cadencement des buffers
|
|
|
|
Les palettes non encore nécessaires au PK sont dirigées vers les
|
|
**zones d'attente** (buffers ES_X) s |