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