Skip to main content
Skip table of contents

Optimisation par REN


Principe de l’optimisation de découpe de barres

On transmet à DIAPASON la liste de pièces à fabriquer qui sont découpées dans des barres de profilés. En se basant sur des paramètres de découpe pour chaque type de barre (taille des barres, taux de chute) DIAPASON calcule de manière optimale comment doivent être débitées les barres. DIAPASON renvoie la liste des pièces avec le numéro de barre utilisé et le positionnement dans la barre.

Technique d’optimisation de découpe de barres

L’optimisation s’appuie sur :

  • Un document DIAPASON de type REN / Fichier optimisation

  • Une REN/REP

  • Des paramètres d’optimisation

Définition document d’optimisation de découpe de barres

Ce mécanisme d’optimisation s’appuie sur un document de type REN / Fichier optimisation.

Ce document s’appuie lui-même sur une liste figée qui :

  1. Alimente le calcul

  2. Permet la lecture des résultats

Les informations de cette liste sont les suivantes :

Référence

E / S ?

Descriptif

Pièce

Entrée

Référence de la pièce à fabriquer

Famille

Entrée

Référence du profil dans lequel doit être usinée la pièce

Longueur

Entrée

Longueur de la pièce à usiner (à initialiser dans la même unité de mesure le paramètre décrivant la longueur de la barre).

Casier

Entrée

Facultatif

Barre

Sortie

Numéro de la barre utilisée

Ordre / Barre

Sortie

Position dans la barre utilisée

Remarque :

Pour que le calcul fonctionne correctement, tous les champs de la liste DIAPASON doivent avoir un équivalent dans la liste personnelle (même si le champ n’est pas utilisé).

Remarque : Le paramètre général DOC-DECBAR permet d'indiquer le comportement de l'algorithme d'optimisation de découpe de barres; si la valeur logique de ce paramètre est à vrai, lors de chaque itération pour la recherche d'une solution, DIAPASON remplace la dernière barre considérée par une barre dont la dimension est STRICTEMENT inférieure ; si la valeur logique de ce paramètre est à faux (valeur défaut), lors de chaque itération pour la recherche d'une solution, DIAPASON remplace la dernière barre considérée par une barre non placée dont la dimension est inférieure ou égale à la dernière barre placée.

Paramètre d’optimisation

Il faut renseigner des « Paramètres Optimisation » (Paramètres Généraux / Paramètres Utilisateurs / Documents / Paramétrage Optimisation) afin de préciser pour chaque profilé :

  • Sa référence ;

  • Sa longueur ;

  • Son taux de chute.

Sous la forme « référence#longueur#taux_de_chute »

Remarque :

La référence du paramètre n’a pas d’importance, il s’agit uniquement d’un identifiant unique. Seules les informations contenues dans la désignation sont essentielles.

Principe de la requête REN d’optimisation de découpe des barres

On doit fournir à DIAPASON en sortie de REN la liste des pièces à fabriquer.

Pièce

Famille

Longueur

Casier

Barre

Ordre / Barre

TRAV_H

1515_BLC9010

1800

TRAV_B

1515_BLC9010

1800

MONT_D

1515_BLC9010

1230

MONT_G

1515_BLC9010

1230

Cette liste est à renseigner dans l’unique liste de sortie de la REN. Il faut cependant pour chaque champ établir une correspondance entre la référence « personnelle » du champ et la référence « figée » du champ de la liste DIAPASON (sur la définition du document).

Typiquement cette liste est constituée à partir du parcours des nomenclatures de pointeurs de l’ensemble des OF d’une série

Principe de la requête REP d’optimisation de découpe des barres

DIAPASON transmet en entrée de REP la liste des pièces à fabriquer avec le numéro de la barre employée et la position dans celle-ci.

Pièce

Famille

Longueur

Casier

Barre

Ordre / Barre

TRAV_H

1515_BLC9010

1800

1

1

TRAV_B

1515_BLC9010

1800

1

2

MONT_D

1515_BLC9010

1230

2

1

MONT_G

1515_BLC9010

1230

2

2

Dans l’exemple ci-dessus, réalisé avec des barres de 4000 mm, le système propose de débiter :

  • TRAV_H et TRAV_B dans une barre (1) ;

  • MONT_D et MONT_G dans une autre barre (2) ;

Remarque : Si un morceau demandé est plus grand que la longueur de barre, une seule barre est utilisée pour ce morceau.

Exemple d’optimisation de découpe de barres

Exemple : Document d’optimisation de découpe de barres

Le nombre d’itérations influe sur la précision du calcul.

Le fichier trace détaille le calcul réalisé dans un fichier texte.

Exemple : Requête REN d’optimisation de découpe des barres

Dans cet exemple, on liste l’ensemble des composants « PROFIL » « ALU » d’une série.

On gère un simple compteur dans le champ « Piece » (on passe par une VBP car la REN est lancée sur chaque OF de la série).

La « SNO.GenRefCsa » contient la référence du profil. C’est sur celle-ci que doit porter le paramètre utilisateur d’optimisation (dans la désignation).

La « VBA.di-qte-lien » contient la longueur en « mm » de la pièce.

Le champ « Casier » n’est pas utilisé.

Les champs « Barre » et « OrdreBarre » ne sont pas exploités en paramètre d’entrée mais contiendront le résultat du calcul d’optimisation dans la REP.

Remarque :

Il est conseillé de rechercher les « morceaux » de barre dans la nomenclature de pointeur (« POUR CHAQUE POINTEUR GLOBAL ») et non dans la nomenclature de gestion (« POUR CHAQUE LaSerCod ») car cette dernière réalise un cumul des longueurs par référence.

VLO.IndiceFin = SLL.LanSerFabQteLan

BOUCLE VLO.Indice DE 1 A VLO.IndiceFin :

POUR CHAQUE Pointeur Global :

SI SAS.AppFam = CLO."ALU"

SI SAS.AppSFa = CLO."PROFIL"

INIT VBP.Ind = VBP.Ind + CLO.1

CREATION LISTE :

PRENDRE Piece = CHAINE( VALEUR= VBP.Ind , FORMAT= E0/3 )

PRENDRE Profil = SNO.GenRefCsa

PRENDRE Longueur = VBA.di-qte-lien

PRENDRE Casier = CGL.VIDE

PRENDRE Barre = CGL.ZERO

PRENDRE OrdreBarre = CGL.ZERO

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.