Utilisation de LINUX
chez Lectra-Systèmes

Article pour l'Echo de Linux (Juillet 1996)

Pierre Ficheux (pierre@rd.lectra.fr)


Résumé

Cet article raconte l'histoire de l'adoption et de l'utilisation par une société industrielle de taille importante d'un fabuleux système d'exploitation développé et maintenu par l'Internet: LINUX

Le propos contenus dans cette article n'engagent que l'auteur et non la société Lectra Systèmes.


Sommaire

Lectra Systèmes, qui sommes-nous ?

Lectra Systèmes est un des deux leaders mondiaux dans la conception et la réalisation de solution de CAO, CFAO et machines de coupes principalement pour l'industrie de la confection et de la chaussure. Le siège de la société est situé à Cestas, dans la banlieue de Bordeaux (France). Le site occupe 500 personnes dont 150 pour la recherche et développement.

Je suis moi-même responsable des développement système au sein du département R&D. Le groupe système est chargé des développements touchant au système de base (procédure d'installation, librairies graphiques, outils).

Depuis les années 80, Lectra à toujours développé ses propres calculateurs basées sur des processeurs Motorola 680x0. La majeure partie du parc installé (environ 3000 clients dont 80% hors de France) utilise un système d'exploitation propriétaire, mono-tâche, écrit en assembleur 680x0 appelé MILOS pour "Micro Lectra Operating System".

Pourquoi utiliser UNIX® ?

Il y a quelques années, Lectra commença à s'intéresser à des systèmes de bases de données relationnelles nécessitant l'utilisation d'un système plus puissant et surtout multi-tâche, multi-utilisateur. Après quelques balbutiements sur des UNIX®-like, le choix se porta sur l'implémentation de l'UNIX® AT&T System V3.2 pour architecture 680x0. Une petite équipe dont je fis partie réalisa le portage des sources Unisoft ainsi que de l'environnement graphique X Window System.

Lectra décida ensuite de développer une nouvelle ligne de calculateurs basées sur des processeurs 68040, beaucoup plus puissant que le 68030. Le système d'exploitation choisi fut la version UNIX® USL SVR4.0 et de nouveau un portage fut réalisé.

La tâche était passionnante mais au fond de nous mêmes, nous étions persuadés que ce calculateur (appelé OpenCad) serait le dernier entièrement conçu par les équipes de R&D. Quelques individus passionnés mais travaillant pour de trop petites séries ne pouvaient plus lutter dans un marché du hardware entrainé par la course à la puissance toujours plus grande et aux prix toujours plus bas...

1995, la révolution culturelle de Lectra

Malgré le succès commercial des OpenCad chez nos clients, le Direction de Lectra décida fort justement à la fin de l'année 1994 de lancer le développement d'une gamme de produits entièrement renouvelée et ciblée principlement sur une architecture Intel 486 et Pentium toujours sur un environnement UNIX® et X Window System. Les applications de base de données, très consommatrices de ressources, seraient par contre ciblée sur des architectures SUN SPARC.

Après quelques tests comparatifs sur différentes versions d'UNIX® sur PC, il fut décidé d'utiliser LINUX qui se révèla à la fois robuste, performant et bon marché. Le fait d'avoir les sources du système disponible fut également un gros argument en faveur de LINUX car nous utilisons de nombreux périphériques spéciaux dont l'adaptation serait beaucoup plus difficile sur un UNIX® propriétaire.

Les développements sous LINUX

Le système étant choisi, il s'agissait maintenant d'adapter LINUX à une solution industrielle. Il est clair en effet qu'UNIX® (et donc LINUX) est relativement plus difficile à utiliser pour un opérateur final. Cette adaptation devait se faire à deux niveaux :

La procédure d'installation

La distribution Lectra utilise cependant les mêmes principes que les distributions pour développeur (2 diskettes de boot et un CD-ROM). Les écrans d'installation utilisent dialog-0.3, qui se révèle extrèmement simple et puissant pour créer des enchainements d'écrans d'installation. Voici le menu principal de l'installation LINUX Lectra :

Le principal avantage du choix de LINUX sur ce sujet est la possibilité de réaliser une procédure d'installation extrèmement ciblée (on n'installe que ce dont on a besoin) et donc très rapide (la version courante du Desktop Lectra s'installe en moins de 10 mn sur un Pentium 120).
Comparativement, la même version de desktop sur cible Solaris® dure pratiquement une heure car on doit tout d'abord installer le CD Solaris®, puis les patches éventuels puis en dernier le Desktop Lectra...

Les différents packages sont générés en tant que fichiers ISO-9660 (avec extension Rock-Ridge) à partir d'une arborescence LINUX à l'aide du programme mkisofs puis les images ISO sont gravées sur le CD master à l'aide d'un PC sous...Windows®

Le desktop OpenPartner

Les premières applications graphiques sous MILOS avaient un look très spartiate et ce à cause des faibles performances de controleurs graphiques de l'époque (le début des années 1980). Les écrans, bien que graphiques, ne géraient alors que 16 couleurs et surtout n'utilisaient pas de multi-fenètrage.
Pressé par la concurrence, Lectra décida vers 1990 de faire évoluer les interfaces graphiques vers un système à multi-fenètrage permettant en plus de faciliter le tavail de l'opérateur pour les manipulations de base comme le lancement des applicatifs ou la manipulation de fichier.
Cet outils appelé OpenPartner® fut donc initialement développé pour la cible MILOS en utilisant une librairie propriétaire et de bas niveau (ressemblant aux appels de la Xlib). La structure de l'interface ressemblait cependant beaucoup a celle de la hierarchie des Widgets Xt, ce en vue d'un portage prochain et certain vers l'environnement UNIX®/X11.

La portage d'OpenParner® vers l'environnement UNIX® s'accompagna de l'ajout de fonctionnalités administration de la station par un utilisateur privilègié, en particulier :

Voici un aperçu de la fenêtre principale de l'environnement OpenPartner avec l'utilitaire de gestion des packages (P-manager)

Une des tâches importante fut de développer un système de gestion d'imprimante extensible et simple d'utilisation. Même en tant que supporter d'UNIX®, nous sommes forcés d'admettre que le système d'impression sur Windows® ou bien MacOS est nettement plus simple à utiliser que sur notre OS favori. D'autant que toute imprimante commercialisée l'est aujourd'hui avec son driver Windows® ou MacOS®.
Notre système d'impression (fonctionnant en client/serveur) utilise le programme ghostscript et permet de gèrer divers types d'imprimantes (PCL, PostScript, raster) sur des connexion variées (ligne série, Centronics, réseau, SCSI). Un outil graphique intègrée à OpenPartner (I-manager) permet de sélectionner simplement les caractéristiques des imprimantes utilisées (la liste apparaissant ensuite dans le selecteur d'impression des applicatifs Lectra)

Les applicatifs Lectra

Les applicatifs sont destinés aux professionnels de l'industrie de la confection. La conception d'un vêtement passe par diverses phases, correspondant à différents métiers. Une des caractéristiques de l'industrie de la confection est le recours à la sous-traitance et à la délocalisation. Certaines phases de la conception pourront être réalisée par le confectionneur et la fabrication elle même sous-traitée dans un autre pays.

Certaines entreprises ne font que de la conception ou seulement de la fabrication et fournissent plusieurs grandes marques...

Le résultat de cette situation pour une société comme Lectra est la nécessité absolue de concevoir des logiciels ouverts car peu de clients achèteront une chaine complète et il est donc nécessaire de savoir dialoguer avec les logiciels concurrents !

En première approche, nous pouvons dégager les phases suivantes lors de la conception du vêtement :

Le stylisme

Le styliste est chargé de réaliser une maquette du vêtement sous forme de dessin d'artiste. Son travail sera principalement axé sur le choix des formes, des couleurs, des types de tissus utilisables.
Les avantages d'une outils informatique sont évidents. Outre la possibilité de travailler sur une "feuille électronique", le logiciel permettra au styliste d'importer des motifs de tissus (directement sous forme électornique ou bien en utilisant un scanner), d'archiver les esquisses de différentes collections, de faire une simulation de tissus sur une forme 2D ou 3D.

Le logiciel ProStyle® propose entre-autres les fonctionnalités précedentes sur PC Linux haut de gamme (Pentium 120 avec carte graphique Diamond Stealth S3-968, 16 Millions de couleurs). Des sorties sur imprimante à sublimation (le plus souvent SCSI) sont également disponibles. Le logiciel est également porté sur architecture Silicon Graphics.

Le modélisme

Le modéliste doit réaliser le patron du vêtement (en fait le plan avec cotation) à partir de l'information de stylisme. Il doit également gèrer les différentes tailles disponibles (la gradation).
L'informatisation de cette phase est une des plus intéressantes (avec le placement) car elle contient une forte composante de rentabilité (le nombre de patrons produits)

Voici une vue de l'écran initial de l'applicatif Modaris®, applicatif Lectra destiné au modèliste :

Le placement

Le placeur doit optimiser l'utilisation de la matière (la pièce de tissus appelée laize) en fonction de la liste de pièces donnée par le modéliste. La qualité du travail d'une placeur s'exprime par l'efficience d'un placement (ce qui correspond à la quantité de matière utilisée par rappoart à la matière perdue). Un bon placeur arrive en moyenne à une efficience de 85%, soit 15% de la matière perdue. Un gain de quelques dixièmes de % sur un production peut avoir de fortes conséquences économiques dans le cas de matières couteuses comme le cuir ou des tissus haut de gamme.

Le logiciel Diamino® tournant sur PC LINUX propose un placement semi-automatique qui facilitera le travail du placeur en facilitant le positionnement de la pièce. Il propose également un nouveau module de placement automatique (qui place toutes les pièces sur la laize sans intervention humaine) dont les performances s'approche aujourd'hui à 2% de celle d'un placeur professionnel.

Les architectures PC d'aujourd'hui permettent d'obtenir un tel résultat pour un prix très attractif et l'existence économique d'un module efficace de placement automatique était impossible il y seulement quelques années pour des raisons de coût du matériel.

Nous pouvons voir ci-dessous l'évolution des performances du module de placement automatique en fonction de l'architecture utilisée (temps en secondes) :

Les 2 premières colonnes concernent les anciens calculateurs Lectra X400 et X410 respectivement basés sur des processeurs 68030 et 68040 et tournant sous System V R4.

Les 3 PC (DX2/66, Pentium75, Pentium120) tournent sous Linux-1.2.13.

La découpe et le tracé

La découpe des pièces peut se faire à la main ou bien avec une machine de coupe qui aura bien entendu l'avantage d'avoir un bien meilleur rendement. Dans certains cas, on ne découpera pas les pièces mais on se contentera de tracer les formes sur un support papier afin de le fournir au sous-traitant.
L'ancienne gamme de produit Lectra nécessitait l'achat d'un calculateur par traceur ou découpeur car le système d'exploitation MILOS des calculateurs était mono-tâche (les traceur et découpeurs sont commandés par voies séries)

Le nouveau logiciel VigiPrint® développé sous LINUX permet de controler une dizaine de traceurs simultanément d'ou un gain de coût non-négligeable à l'achat de la configuration et une facilité beaucoup plus grande pour controler le tracé (on gère les traceurs sur le même écran).
Le nombre de découpeurs gèrés par le logiciel est limité à un seul pour des raisons de sécurité (l'opérateur doit être attentif à une éventuelle rupture de lame ou tout autre anomalie). La découpe se fait soit avec une lame (cas le plus fréquent), un jet d'eau haute pression (2000 bars) ou un faisceau laser.

La gestion de production

Elle permet de gèrer toutes les données manipulées par les métiers précédents. On peut ainsi définir pour un produit donné des dossiers de suivi de production qui seront archivées dans des bases de données relationnelles. Ces bases permettent d'archiver et de ré-utiliser pour la collection en cours certains élements d'une collection précédente (logiciels MasterLink ®; et StyleBinder®)

Ci-dessous un écran du logiciel StyleBinder® sous LINUX :

Les problèmes rencontrés

Le principal problème est l'intégration de nouveau périphériques, le monde du PC étant littéralement sous la coupe de Microsoft. Certains constructeurs de périphériques (principalement les petits constructeurs) sont attentifs à l'évolution de LINUX et collaborent facilement à l'élaboration des drivers. Les grosses structure sont beaucoup plus difficiles à convaincre et se réfugient souvent derrière des impératifs de "stratégie marketing" pour refuser de fournir les informations nécessaires. Ce refus masque souvent une totale méconnaissance des solutions autres que Microsoft principalement au niveau des supports techniques, les équipes de développement étant rarement directement accessibles dans de telles structures.

Cependant, les problèmes rencontrés sont relativement limités en nombre :

D'autres sujets nous ont causé (et nous causent encore parfois) quelques soucis :

Conclusion

L'expérience de la nouvelle gamme Lectra montre que l'on peut construire une solution industrielle sur LINUX. Le système est stable, puissant, robuste et l'on peut récupérer un grand nombre d'informations grâce à Internet, qui se révèle être le plus performant des supports techniques. Le fait de disposer des sources de système permet de développer plus facilement certaines fonctionnalités (drivers de matériel ou protocoles propirétaires, file-system particuliers).

Les nouvelles orientations annoncées lors du dernier congrès LINUX de Berlin pour (amélioration des Virtual File System, optimisation du file system EXT2, sortie de WABI, multi-processeur, adoption de LINUX par Digital) nous conforte dans l'idée que LINUX acquiert une forte maturité industrielle.

En plus de cela, le choix d'une plate-forme PC permet d'offrir au client la possibilité d'avoir des applicatifs industriels et bureautiques sur la même m achine (avec double boot LINUX/Windows®). L'émulation performante de Windows® sera certainement un atout majeur pour la généralisation de LINUX dans les solutions desktop industrielles.