Interfaçage de dispositifs optiques via une programmation FPGA.

publicité
Projet de Fin d’Étude :
Interfaçage de dispositifs optiques via une
programmation FPGA.
Mr Thomas LECLERCQ
Étudiant à l’INSA de Strasbourg,
Spécialité Génie Électrique, parcours Système,
Projet soutenu le 05 Septembre 2016.
Laboratoire d’accueil :
Laboratory of Applied Photonic Devices (LAPD)
Tuteur INSA :
Mr Bertrand BOYER
EPFL STI IMT-LAPD
BM, Station 17
CH- 1015 Lausanne, Suisse
Tuteurs entreprise :
Mr Christophe MOSER
Mr Timothé LAFOREST
RÉSUMÉ
La résolution d'un système optique est limitée par son ouverture numérique (ON). Celle de l'oeil humain est fixée par la taille
de la pupille (8 mm max). Dans ce cas, la résolution est de quelques micro mètre (taille du plus petit élément observable). Seulement,
les cellules de la rétine (cônes, bâtonnets) ont des tailles inférieures à 1,2 μm, ce qui rend impossible leur observation via la pupille.
Nous proposons de mettre au point une méthode d’illumination via le blanc de l’œil (trasncleral) afin d’augmenter l’ouverture
numérique de l’illumination. Cependant, le blanc de l‘œil est un milieu qui d'une part diffuse la lumière et d'autre part présente un
temps de stabilité temporelle du faisceau transmis inférieure à 10 ms. Il est donc nécessaire de focaliser la lumière sur la rétine avec
un système compatible avec les contraintes temporelles de l'œil.
L’objectif principal du projet consiste à mettre en œuvre le système de modulation du faisceau lumineux de manière à
focaliser la lumière transmise à travers la sclérotique sur la rétine. Pour des raisons de vitesse d’exécution, il a été choisi d’utiliser une
matrice de micro miroirs (DMD) pour réaliser une modulation de phase du faisceau, pilotée par un circuit programmable (FPGA).
L'implémentation FPGA d'un algorithme génétique permet de trouver la modulation de phase optimale, dans le temps de corrélation
des tissus de l'œil.
1. INTRODUCTION
Le LAPD (Laboratory of Applied Photonics Devices) travaille actuellement sur une méthode d’observation in vivo du tissu
cellulaire du fond de l’œil humain. Les cônes et les bâtonnets ont une taille de l’ordre du micro mètre. La méthode classique pour
l’observation de l’intérieur de l’œil consiste à éclairer celui-ci via la pupille et à collecter le flux réfléchi sur le fond de l'oeil, toujours
à travers la pupille. Cette méthode ne permet cependant pas d’observer avec une grande résolution (quelques m pour l’œil humain,
taille du plus petit élément observable). En effet, celle-ci dépend de l’angle d’illumination, lui-même limité par le cristallin. Afin
d’avoir une meilleure résolution, il faut illuminer avec un angle plus grand. L’idée est alors d’illuminer via le blanc de l’œil (la
sclérotique) pour avoir un cône d’illumination plus important. Mais cela amène à un autre problème : la sclérotique est un milieu
diffusant (elle disperse la lumière de manière uniforme dans l’espace). La perte de cohérence spatiale entre le point d’entrée et le
retour par le cristallin ne permet une observation correcte.
Figure 1 Cône d'illumination via le cristallin en rouge et via la sclera en bleu.
Lorsque l'on éclaire un milieu diffusant, non absorbant, le faisceau transmis se caractérise en effet par de nombreux
déphasages. Sachant cela, il est possible de réaliser une modulation de phase avant que le faisceau lumineux ne pénètre dans la
sclérotique. Des outils existent pour moduler la phase des rayons lumineux, comme par exemple les modulateurs à cristaux liquides.
La modulation de phase est une méthode déjà très utilisée pour focaliser les rayons lumineux à travers les milieux diffusants. Les
caractéristiques de tels milieux ne sont pas, à priori, connues à l’avance, et l’utilisation d’algorithme de recherche permettent de
trouver la modulation de phase adéquate à l’amélioration de la transmission.
L’œil humain est un milieu diffusant particulier : il est instable temporellement. Ses propriétés de diffusion changent en
permanence, notamment à cause de l’activité biologique. Il reste cependant assez stable pendant une dizaine de millisecondes.
L’algorithme de recherche doit alors être exécuté dans ce laps de temps mais les déphaseurs actuels ne fonctionnent pas assez vite.
Une solution envisagée est d’utiliser un DMD (Digital Micromiror Device) piloté par un FPGA. Le DMD est une matrice de micro
miroirs bistables permettant de moduler en amplitude les rayons lumineux. La formule de l’hologramme de Lee permet de passer
d’une modulation d’amplitude à une modulation de phase. Il est donc possible avec le DMD de faire une modulation de phase.
L’utilisation d’un FPGA pour piloter la matrice de micromiroirs permet d’améliorer le temps d’exécution.
Le but du projet consiste à prouver que la focalisation à travers un milieu diffusant est possible avec l’utilisation d’un DMD
piloté par un FPGA, ceci dans le but d’être utilisé pour l’observation du fond de l’œil. Le FPGA doit exécuter un algorithme
génétique qui déterminera la modulation de phase à apporter pour avoir une focalisation idéale. Le DMD est une matrice permettant
de moduler en amplitude le faisceau lumineux incident. L’affichage d’un hologramme de Lee grâce à celui-ci permet alors de réaliser
une modulation de phase. Un hologramme de Lee est simplement un hologramme piloté par ordinateur.
2. MISE EN ŒUVRE
> Le FPGA contrôle le DMD, ce dernier module en
phase le faisceau laser.
> Un dispositif optique permet de filtrer le faisceau
modulé avant de pénétrer dans le milieu diffusant.
> En sortie du milieu diffusant, la photodiode collecte
l’intensité lumineuse en un point précis et envoie
cette valeur au FPGA.
> L’objectif est de maximiser l’intensité lumineuse en
ce point, preuve de la non divergence du faisceau
dans le milieu diffusant.
Laser
Milieu diffusant stable
Instruments de filtrage optique
Figure 2 Dispositif mis en place pour tester l’algorithme. Les tests ont été réalisés sur un milieu stable (un morceau de ruban adhésif).
1
On présente ci-dessus le dispositif mis en place pour tester la méthode. La photodiode est un capteur photosensible délivrant
une tension proportionnelle à l’intensité lumineuse. Placée ici, elle permet de mesurer l’intensité lumineuse en un point de sortie situé
juste derrière le milieu diffusant. C’est l’intensité mesurée en ce point qui doit être optimisée par l’algorithme génétique. Elle
constitue la fonction d’évaluation* de l’algorithme. Un convertisseur analogique/numérique (noté ADC sur le schéma) permet de
numériser la tension de sortie de la photodiode afin de pouvoir être exploitée par le FPGA. Ce dernier contrôle le DMD et exécute
l’algorithme génétique. Le matériel optique permet de réaliser un filtrage.
L’algorithme génétique mis en œuvre fonctionne en deux grandes étapes : l’initialisation et les itérations. L’initialisation
consiste à créer un certain nombre d’hologrammes aléatoires (on parle de population initiale) et de les classer en fonction de
l’intensité mesurée par la photodiode. On ne conserve ensuite que les « meilleurs » hologrammes. Les itérations consistent à créer de
nouveaux hologrammes à partir de ceux présents dans la population. Les enfants (fruits du croisement entre deux hologrammes) ainsi
créés sont alors testés et ils remplacent le parent le moins bien classé dans la population si l’intensité mesurée avec l’enfant est
meilleure. Le nombre d’itération est totalement arbitraire, mais plus il y a d’itérations et plus grande sera la chance de trouver le
meilleur résultat.
Figure 3 A gauche le diagramme d'état de l'algorithme, à droite l'architecture du programme du FPGA.
3. RESULTATS
Les tests se sont déroulés en plusieurs étapes.
Nous avons d'abord testé l'algorithme avec Matlab. Il est en effet possible de piloter le DMD directement avec Matlab, et en
utilisant un autre convertisseur analogique/numérique. En utilisant l'algorithme piloté par Matlab, celui-ci est évidement plus lent,
mais nous avons testé sur des éléments stable dans le but de valider l'architecture choisit. Nous avons validé cette architecture,
l'algorithme converge en effet vers une valeur maximale d'intensité. Ces tests avec Matlab nous on permis de valider certaines
données, l'algorithme converge assez rapidement (1000 itérations suffisent). Pour des problèmes de mémoires du FPGA, nous
souhaitions ne conserver que les trois meilleurs individus à chaque instant. Ces tests nous ont permis de prouver que l'algorithme
fonctionne malgré ce nombre restreint d'individus.
2
Nous avons par la suite réalisé des simulations du code VHDL. Les simulations ont montré que l'entité de gestion de
l'algorithme réalise correctement le classement (suppression, remplacement...) des intensités mesurées. La transmission vers l'entité de
gestion des individus est correcte, cette dernière réalise correctement les étapes programmées : création d'individus aléatoires pour
l'état 2, croisement pour l'état 3, mise à jour de la population pour l'état 7. Nous avons réalisé les simulations sur des individus
différents (simples vecteurs de 9 bits) mais le principe reste le même. Nous avons utilisé une liste de mesures aléatoires générée par
Matlab en tant que mesure.
Nous avons mis en place l'expérience décrite dans la troisième partie. Nous avons pu valider la création d'individus
aléatoires, l'initialisation a été validée grâce à une caméra et à la figure de diffraction créée par le faisceau. Pour les itérations,
l'algorithme ne fonctionnait pas correctement. Nous avons remarqué que la tension de sortie de la photodiode est très bruitée, le
traitement de celle-ci doit être affecté. Le bruit thermique, dû à la grandeur de la zone photosensible de la photodiode, créé un signal
de bruit qui noie totalement le signal utile. Les améliorations apportées par rapport à la situation initiale : ajout d'un filtrage
analogique et numérique pour la tension de sortie de la photodiode, tests avec de nouvelles photodiodes, amélioration de l'expérience,
changement des optiques... Ainsi, l'algorithme réussi à converger, mais vers une valeur qui ne semble pas être la valeur la
plus grande.
4. CONCLUSION
La méthode de modulation de phase existe déjà mais les déphaseurs à cristaux liquides actuels ne permettent pas de travailler
à des vitesses élevées. Cette limitation est la raison pour laquelle d’autres outils doivent être utilisés pour le dispositif d’observation
du fond de l’œil.
La fréquence maximale de travail du DMD est de 22kHz, ce qui permet de tester un hologramme chaque 45μs. Le temps de
décorrélation de l’œil (temps durant lequel le tissu reste stable) n’a pas encore été mesuré (mesure assez compliquée) mais il a été
estimé à quelques ms. En conséquence, nous ne pourrions tester que 22 hologrammes en 1 ms. L’algorithme nécessiterait environ
1000 itérations pour fournir un bon résultat, ce qui élèverait sont temps d’exécution à 45ms, ce qui est bien trop comparé au temps de
décorrélation du tissu de l’œil. La modulation de phase avec l’utilisation d’un DMD fonctionnerait donc mais à priori cela reste
toujours trop lent pour la problématique d’observation du fond de l’œil.
Les résultats que nous avons obtenus ne sont pas satisfaisants en l’état mais sont encourageants car il semblerait que les
problèmes soient plus de l’ordre de la difficulté à mettre un set-up efficace plutôt qu’une question d’algorithme et d’implémentation
VHDL.
5. BIBLIOGRAPHIE
Sébastien Popoff, « Contrôle spatio-temporel de la lumière en milieux complxes », Thèse de doctorat en acoustique physique, sous la
direction de Claude Boccara et Mathias Fink, Université Paris-Diderot – Paris VII, 2011, 189p.
Timothé Laforest, Dino Carpentras, Demetri Psaltis, et Christophe Moser,
« Overcoming the resolution limit in retinal imaging using the scattering properties of the slera », article scientifique,
Ecole Polythechnique Fédérale de Lausanne, Suisse.
Ivo Micha Vellekoop, « Controlling the propagation of light in disordered scattering media », Thèse de doctorat, sous la direction de
A. Lagendijk, 2008, 144p.
Mehrdad Majzoobi1, Farinaz Koushanfar, et Srinivas Devadas, « FPGAbased true random number generation using circuit metastabillity with adaptive feedback control », article
scientifique, Rice University, ECE Houston.
Donald B. Conkey, Antonio M. Caravaca-Aguirre, Eyal Niv, et Rafael Piestun, « High-speed phase-control
of wavefronts with binary amplitude DMD for light control through dynamic turbid media », article scientifique, University of
Colorado, USA.
Antonio M. Caravaca-Aguirre, Eyal Niv, Donald B. Conkey, et Rafael Piestun, «  Realtime resilient focusing through a bending multimode fiber», article scientifique, University of Colorado, USA.
3
Téléchargement