Obligement - L'Amiga au maximum

Samedi 22 juillet 2017 - 12:48  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Reportage : L'Amiga en physique des matériaux
(Article écrit par Fabrice Neyret et extrait d'Amiga News - février 1993)


La physique des matériaux est un domaine complexe, qui connaît une grande expansion avec l'arrivée de nombreux nouveaux produits ces dernières années (matériaux composites à fibres de verre ou de carbone, colles, céramiques...).

Comme ces matériaux sont complexes et nouveaux, il n'est pas facile d'en prévoir les comportements et propriétés. C'est pourquoi ce domaine fait particulièrement appel à l'expérimentation et à la simulation.

Pour évaluer un produit donné, l'expérimentation suit un protocole de mesures répétitif et précis sur une série d'échantillons, suivie d'une extraction de l'information pertinente lourde en calculs. Le chercheur ou l'ingénieur peut alors interpréter ces données "prédigérées" caractérisant la structure du matériau. Quand il y a actions répétives et calculs lourds, alors l'ordinateur peut sûrement s'acquitter d'une partie du travail. Nous allons prendre connaissance dans cet épisode d'un banc de mesure et d'évaluation entièrement réalisé à partir d'un Amiga, lequel ne laisse plus grand chose à faire à l'expérimentateur si ce n'est tirer parti des résultats finaux... Dans la mesure où cet exemple peut directement intéresser d'autres laboratoires, nous détaillerons les aspects techniques qui illustrent bien l'intérêt de la machine dans ce contexte. Cela peut parfois rendre la lecture un peu difficile dans la seconde moitié de l'article. Que les non techniciens nous pardonnent !

Introduction

Le Centre des Matériaux et Structures Composites (CMSC) hébergé par l'Université de l'État du Michigan (ce centre est l'un des plus réputés en la matière aux États-Unis) s'intéresse dans le cadre du projet qui nous occupe ici à l'étude de matériaux plastiques renforcés par des fibres de verre et de carbone.

L'orientation prise par les fibres dans le substrat lors de l'injection dans le moule est difficilement prévisible et mesurable. Elle conditionne pourtant les propriétés du matériau (solidité, raideur...).

L'objectif est donc de mesurer les directions prises par les fibres de carbone à l'intérieur des échantillons, qui sont heureusement transparents tandis que ces fibres sont noires (les fibres de verre sont invisibles car elles ont le même indice de réfraction que le plastique, mais on suppose qu'elles se comportent de la même façon que le carbone).

Les tâches à effectuer (et dont l'Amiga se charge), que nous détaillerons plus loin, sont les suivantes :
  • Il faut tout d'abord produire les échantillons, ce qui impose de contrôler le processus de fabrication : quantité et longueur des brins de carbone et de verre mélangés à la poudre de plastique.

  • Contrôles de l'injection, des températures et de la pression (une des rares interventions humaines consiste ensuite à poser l'échantillon sous le microscope !).

  • Prises de vue au microscope en trois dimensions en divers endroits de l'échantillon. Ceci nécessite de piloter le microscope selon les deux axes x-y de manière à pointer vers les zones choisies, puis d'avancer pas à pas selon l'axe z.

    Amiga en physique des matériaux
    Prise de vue au microscope

  • Acquisition des images vidéo de chacune des tranches des diverses images 3D (ceci serait impensable à la main). Ces images doivent ensuite être "nettoyées" des parasites.

  • Dans chaque image 3D, il faut extraire la direction de chaque fibre. Pour cela, on effectue une opération de traitement d'image nommée squelettisation (ou amincissement), consistant à "ronger" régulièrement l'image des objets jusqu'à obtenir des restes filiformes sur lequel il est plus facile de faire des mesures. Celle-ci a en outre l'avantage de séparer les fibres qui peuvent être collées (cette opération est très utilisée en reconnaissance des formes).

  • Il faut ensuite déterminer l'orientation générale de chaque fibre, ce qui s'obtient mathématiquement en calculant les moments et axes d'inertie (ce qui se ramène à un calcul de valeurs et vecteurs propres).

  • Reste alors à cumuler les diverses directions (en prenant en compte leur longueur), visualiser interactivement cette répartition, extraire les valeurs qui la caractérisent (direction moyenne, angle autour de cet axe contenant l'essentiel des fibres).

  • On peut alors comparer les résultats avec des mesures faites sur d'autres échantillons préparés avec des paramètres d'injection différents.

  • Enfin, il est intéressant de pouvoir synthétiser des images fictives d'échantillons, afin de tester les algorithmes de mesure indépendamment des processus de prise de vue.
Le banc de travail

Le banc de mesure comporte le dispositif de préparation des échantillons, le microscope couplé à une caméra et dont la cible peut se déplacer sur commande, deux moniteurs et un Amiga 3000 disposant de 6 Mo de mémoire.

Celui-ci contrôle un framegrabber externe (appareil de capture vidéo, connecté par le port parallèle), une carte d'acquisition de données et une carte de pilotage de moteurs sur le bus PC de l'Amiga. Une carte passerelle élémentaire (Golden Gate) permet aux logiciels d'accéder simplement et rapidement au bus PC, ce qui ouvre la voie à toutes sortes de périphériques spécialisés ou bon marché, qu'on ne trouve pas toujours directement adaptés à notre machine (cette carte sans processeur ne fait que mapper en mémoire les extensions trouvées sur le bus PC, mais elle est livrée avec des pilotes de ports série et parallèle et permet d'utiliser ces extensions version IBM).

Les moteurs pas à pas qui sont utilisés à plusieurs niveaux sont des moteurs dont on peut piloter la rotation à coup d'impulsions représentant une fraction de tour très précise. Toute la partie logicielle a été développée par le laboratoire en SAS C, et avec l'excellent logiciel domaine public GadToolsBox pour ce qui est de l'interface utilisateur (qui est assez soignée, comme en témoignent les images de cet article).

Les icônes correspondant aux diverses tâches sont rangées à l'écran dans l'ordre chronologique où celles-ci seront effectuées, soit que l'utilisateur aura cliqué sur les icônes, soit qu'un script ou une tâche de fond aura lancé ladite application.

Les programmes et les scripts

Amiga en physique des matériaux

Le premier programme, "Chop", pilote la découpe des brins de fibres de verre et de carbone à une longueur précise (précisée par une glissière, soit environ 1 millimètre) en contrôlant un moteur pas à pas et en vérifiant la position de la lame de découpe, via la carte d'acquisition côté PC.

Amiga en physique des matériaux
Chop

Le mélange poudre de plastique (polyméthyl méthacrylate) et de fibres tombe dans un tube, chauffé à 250°C et traversé par un piston qui refoule la pâte fondante sous haute pression (plus de 1100 atmosphères) dans un moule (tout l'appareillage tient sur un bureau, mais ce n'est qu'une réduction d'une machine de plusieurs tonnes).

Le second programme, "Acquire", visualise la température en cinq points du container et du moule ainsi que la pression et la vitesse d'injection, et contrôle l'avancée du piston (il aurait pu tout aussi bien contrôler la température, mais ceci est effectué avec de simples thermostats). Les temps sont affichés au 100e de seconde près, grâce aux chronomètres (timers) de l'Amiga précis au millionième (en fait, la carte permet de contrôler ou d'acquérir 8 données 12 bits toutes les 73 microsecondes). On conserve ces données, car elles ont une influence déterminante sur l'orientation des fibres.

Amiga en physique des matériaux
Data Acquisition

La production de chaque échantillon prend environ deux heures, celui-ci mesure 8,5 cm de long pour une section de 1x0,3 cm2. Une fois que l'opérateur a placé un échantillon sous le microscope, il clique sur l'icône "MCFG" (Motion Control and Frame Grabber) qui lui-même lance un script pilotant conjointement les moteurs pas à pas du microscope et la numérisation des images obtenues pour chaque "tranche". Il faut bien se rendre compte que l'échantillon est presque totalement transparent, à part les fibres de carbone qu'il contient, et en focalisant le microscope sur l'intérieur de l'échantillon, si la profondeur de champ est assez étroite, on peut effectivement obtenir une coupe. En superposant 80 coupes, on obtient une image 3D acceptable.

Amiga en physique des matériaux
MCFG

La syntaxe de ce script ressemble à celle de la routine main() d'un programme C habituel, employant des fonctions prédéfinies pour les opérations de pilotage. Si cela est assez puissant, ce n'est pas très propre (un programme pour deux tâches différentes) et sera probablement réécrit via deux programmes séparés s'échangeant des informations par communication interprocessus. Un script type commence par régler les paramètres des moteurs (longueur de déplacement par impulsion pour chacun d'entre eux), puis boucle sur les positions des images dans l'échantillon.

Dans cette boucle sur x et y, on déplace d'un cran la visée, on initialise un nouveau fichier image, puis on boucle sur les z de façon à obtenir une image 3D. Dans cette dernière boucle, il ne reste qu'à se déplacer d'un cran en z, capturer l'image sur 256 niveaux de gris, la binariser (passage en noir ou blanc) et la stocker. Le stockage des images 3D se fait à l'aide du format IFF Anim, dont la compression correspond bien au besoin. On va ainsi photographier 150 zones de 1 millimètre cube environ, qui donneront chacune une image 3D de 320x400x80 "voxels" binaires, soit à peu près 1,5 milliard de bits au total ! Chaque image 3D est acquise en une dizaine de minutes.

Si l'utilisateur a lancé en lot le programme suivant, "3D Thinning", la tâche de squelettisation s'attaque à l'image 3D dès que celle-ci est prête (beaucoup de temps processeur est perdu lors de la récupération des images par le port parallèle, puisque l'appareil de capture d'images est pour l'instant externe. Le fait de lancer parallèlement l'acquisition d'une image et le traitement de la précédente, via des communications interprocessus, permet de rattraper ce temps perdu et ramène toute la manipulation de deux à une seule journée).

Amiga en physique des matériaux
3D Thinning

Cette opération de traitement d'image classique est assez lourde (elle prend généralement 3 à 5 minutes, mais peut mettre jusqu'à 1 heure selon la complexité). Il s'agit de grignoter les pixels noirs jusqu'à ce qu'il ne reste qu'un fil au niveau des divers axes de chaque objet. On sauve alors cette nouvelle image, toujours sous forme d'animation. A noter : le but ici est de séparer les fibres, plutôt que reconnaître leur forme.

Le diamètre des fibres étant de l'ordre de 10 microns, celles-ci tracent des segments de quelques pixels de large dans l'image. Le grignotage se fait donc en plusieurs passes (tant qu'il se passe quelque chose), chacune testant le voisinage de chaque pixel aux bords des objets progressivement amincis, pour savoir si on peut enlever ce pixel sans couper l'objet en deux.

L'opération suivante, "3D-FODAS" (3D Fiber Orientation Distribution AnalvsiS) analyse la scène squelettisée pour en tirer l'information cherchée : la répartition des directions prises par les fibres. Pour chaque fibre (reconnue en chaînant les voxels noirs voisins), il faut calculer le tenseur d'inertie, dont les valeurs propres donnent les principaux moments d'inertie, et dont le vecteur propre associé au plus petit est la direction globale de la fibre (seul compte ce résultat, son origine est compréhensible par ceux qui ont fait quelques études en mathématiques et en physique...). Pour avoir un résultat global sur tout l'échantillon, il faut moyenner en tenant compte de la longueur des fibres. Cette opération s'exécute en à peine une demi-minute.

Amiga en physique des matériaux
3D Fiber Orientation Distribution Analysis

Il ne reste alors plus qu'à stocker, comparer et visualiser ces résultats, travail effectué via les deux icônes "DiffFODs" et "Fibar". La visualisation se fait sous forme d'ellipsoïde : on déforme une sphère dans chaque direction proportionnellement au nombre de fibres ayant cette orientation. La direction principale et l'élongation de cet ellipsoïde donnent une bonne idée synthétique de la répartition des fibres à l'intérieur de l'échantillon.

Amiga en physique des matériaux

Conclusion

On souhaite obtenir des fibres à peu près orientées dans la direction selon laquelle le matériau subira des contraintes. On cherche également à détecter des parois intérieures, qui se forment quand à un endroit les fibres ne sont plus totalement mêlées mais semblent contourner un obstacle, ce qui peut entraîner une perte locale de 90% de la solidité.

Après quatre ans de travaux, le laboratoire a ainsi permis un type de mesure au coeur de la matière qui était totalement inaccessible auparavant. En rapprochant les répartitions constatées des conditions de production des échantillons, le laboratoire compte également faire avancer la prédiction de ces propriétés du matériau composite.

Plusieurs firmes se sont avérées intéressées par l'étude elle-même, mais l'Amiga a été intégré à un tel point au banc d'expérimentation que la plupart des aspects pris séparément devraient également pouvoir se réintégrer dans toutes sortes de montages de laboratoires. La machine sert également à la production de comptes rendus sous TeX, à la réalisation de bandes vidéo de démonstration, à la mise au point des programmes et à l'émulation de terminaux !

Ce même laboratoire utilise quatre autres Amiga pour des tâches moins intégrées, comme l'acquisition et le traitement d'images, la détection et le comptage automatique des extrémités de fibres, la mesure de la forme de goutelettes, le contrôle de la congélation de matières biologiques...

Amiga en physique des matériaux

La machine s'est révélée adéquate aux besoins au delà de toutes les espérances, pour le quart du prix d'une station Sun (solution envisagée au début), avec des périphériques 5 à 10 fois moins chers. Plus encore, le temps réel offert par AmigaOS (mais pas par Unix) est un élément déterminant pour les applications de type contrôle de processus comme celle-ci. C'est avant tout le système d'exploitation de l'Amiga, épaulé par son matériel et son environnement, qui a démontré ici toute sa puissance :
  • Système d'exploitation multitâche : le banc d'expérimentation dure de nombreuses heures, mais la machine reste disponible et certaines tâches peuvent tourner en parallèle, tout en coopérant (car l'Amiga rend aisée la communication entre processus à l'aide de signaux et d'envoi de messages).

  • Aspects temps réel : la rapidité du système, de la commutation des tâches, la disponibilité de chronomètres précis, la façon de gérer les priorités et les interruptions permettent, outre une bonne interactivité, d'avoir un contrôle précis du temps et de réaliser des rendez-vous, ne serait-ce que pour l'acquisition de données à intervalles réguliers. Même Unix (standard) ne sait pas faire ça, ce qui implique de reporter l'intelligence dans les cartes qui deviennent alors complexes et très onéreuses.

  • Bus IBM PC en plus des bus Amiga : on accède ainsi à une foule d'extensions variées et bon marché.

  • Rapidité : l'A3000 avec son 68030 et son coprocesseur flottant (et plus encore l'A4000 avec son 68040 !), habité par un système et un "Window Manager" très rapides (surtout comparé à Windows !), convient tout à fait aux applications scientifiques et industrielles courantes.

  • Parc de logiciels du domaine public : la collection est impressionnante en quantité et en qualité. On y trouve notamment des routines de création, compression, stockage, affichage d'animations, des outils de construction d'interface utilisateur...

  • Capacités vidéo : la machine a incontestablement des facilités en la matière (appareil de capture d'images, genlocks, pilotage de magnétoscope, format d'animation et capacité à les afficher en temps réel...).

  • Édition : quelques traitements de texte et PAO sont disponibles, mais surtout TeX est présent, en domaine public, et il s'agit de l'un des meilleurs portages (c'est LE langage de description de textes utilisé dans la publication scientifique, avec souvent LaTeX en surcouche).

  • Communication : il existe de nombreux émulateurs de terminaux, dont des logiciels du domaine public de qualité, et une source d'informations gigantesque dans Usenet (les sujets Amiga constituent l'un des plus importants trafics du réseau Usenet).
Enfin, la résidence universitaire du campus, qui accueille 40 000 étudiants, dispose d'une chaîne de télévision interne, entièrement pilotée par Amiga (un A500 diffuse en temps réel, un A2500, un A3000 et un Video Toaster préparent les images), preuve s'il en est de l'universalité de la machine ! En fait, on pourrait même se demander si cette universalité ne finit pas par nuire à la machine, d'un point de vue purement marketing : comment promouvoir une machine qui sait tout faire ? Il est tellement plus facile de se focaliser sur un secteur précis et techniquement simple, le jeu ou la vidéo, de même que toute l'énergie est concentrée sur la publication, pour les Macintosh. Ce qui fait que notre machine est quasiment absente de secteurs dans lesquels elle excellerait, simplement parce que la politique marketting qui lui est consacrée, déjà peu importante, se limite à un ou deux créneaux là où il faudrait se diversifier et se "techniciser" pour pénétrer tous les domaines industriels...

Je tiens à remercier Jeff Wille, dont la thèse est à l'origine du projet décrit ici, pour lequel il encadre huit personnes. Un long échange de courriers électroniques a permis de vous présenter les travaux de son équipe (wille@egr.msu.edu).

Étudiants, chercheurs, thésards, n'hésitez pas à faire circuler cet article dans vos labos ! Cet exemple volontairement détaillé avait pour but de mettre en relief l'adéquation de la machine aux besoins habituels des bancs d'expérimentation. Utilisez-le !


[Retour en haut] / [Retour aux articles]