Mesure de la concentration d’isopropanol dans l’eau avec mon réfractomètre laser

J’ai fait un test avec diverses concentrations d’isopropanol 99% dans l’eau. J’ai utilisé un cylindre gradué pour mesurer 100ml, ensuite je rajoutais 1ml d’isopropanol avec une pipette de 1ml. J’ai découvert qu’il fallait beaucoup brasser le tout afin d’avoir une mesure représentative.  Je place ensuite une goutte sur le prisme, puis je place la lamelle. Je suppose que les pertes à chaque fois sont d’environ 1ml, donc le volume total reste 100ml, la différence avec la vraie concentration reste dans l’incertitude.

Le graphique suivant a été produit : (incertitudes non montrées pour l’instant). C’est tout de même linéaire. Pour une concentration inconnue, l’incertitude est d’à peu près ±0,5%.

J’ai intégré cette équation empirique dans le code sur l’arduino, qui est maintenant capable de calculer l’indice de réfraction du milieu en se basant sur celui de l’eau. J’ai également mis le pourcentage estimé d’isopropanol selon cette courbe, ça restera à tester avec une autre suite de mesures. Un petit potentiomètre relié à une entrée analogique permet de faire le zéro lorsque l’on calibre le réfractomètre avec de l’eau. Le code associé est :

float calibration = analogRead(A0);
float pourcentiso = -0.1528*movavrg + 66 + calibration/100;
float n = 1.331 + (1.3812-1.331)*pourcentiso/100;

La variable movavrg est une moyenne en moving average sur une seconde avec 1000 lectures de la valeur de l’ADC, ce qui permet de retirer le bruit de haute fréquence de la mesure.

Néanmoins, il y a encore beaucoup de fluctuation dans la mesure à l’ADC, ce qui nuit à la précision du système. Il faudrait investiguer davantage pour savoir si la cause du bruit est optique ou électronique. Mon hypothèse est que c’est causé par le déplacement des franges d’interférence causée par les réflexions multiples entre les deux interfaces de verre. Ça serait difficile à enlever, puisque la lamelle de verre permet d’étendre uniformément la goutte sur toute la surface du prisme et d’offrir un assez bon beam dump pour conserver un bon contraste. Évidemment, un système mesurant directement la hauteur de la ligne sans passer par le ratio de luminosité serait bien plus précis, au désavantage d’être bien plus complexe. La bonne vieille photodiode donne tout de même des résultats époustouflants!

Résultats de la modélisation théorique du réfractomètre laser

Je vais publier ma démarche complète dans un article pdf prochainement, pour tirer avantage de LaTEX pour les équations mathématiques. Pour l’instant, je veux simplement publier les résultats de ma modélisation de mon réfractomètre.

Le graphique ci-contre présente l’indice de réfraction théorique selon la position mesurée de la ligne de contraste correspondant à l’angle de réflexion critique entre le prisme et le milieu posé sur celui-ci (en x, c’est la position par rapport à l’hypoténuse du prisme en millimètre, en y, l’indice de réfraction). On observe que la courbe est étonnamment linéaire sur toute la plage possible de mesure, ce qui est intéressant étant donné la quantité de détours mathématiques nécessaires pour obtenir la solution (incluant beaucoup de trigonométrie). C’est encore plus encourageant puisque la plage d’indice de réfraction que je souhaite mesurer reste aux alentours de celui de l’eau (environ 1,33) et ne variera pas tant que ça (peut-être maximum ±0,05), donc l’approximation linéaire donnera une faible erreur sur un aussi petit segment de la courbe.

Électronique du réfractomètre

Hier j’ai avancé principalement l’électronique de mon projet de réfractomètre. Je suis parti d’un arduino sur breadboard que j’avais déjà construit (en utilisant une puce ATMEGA328 que l’on programme avec un FTDI). J’ai rajouté un écran LCD, avec le programme hello world simplement pour vérifier qu’il fonctionne bien.

Pour l’alimentation du laser, j’utilise un bon vieux régulateur de courant LM350 avec une résistance de 100 ohms. J’ai détruit deux petits modules laser (bon ça vient du dollarama donc c’est pas si grave, mais quand même) : le premier en le laissant branché trop longtemps sur du 5V (il a une résistance pour limiter le courant, mais ce que j’ai découvert c’est qu’elle est faite pour du 4,5V, avec 5V la diode surchauffe et sa puissance de sortie diminue). Je ne m’en suis rendu compte que trop tard, alors que des dommages irréversibles étaient déjà faits. La deuxième diode, je l’ai brisée ce matin, alors qu’un petit peu de colle chaude est tombé directement sur le fil minuscule de l’anode (ou de la cathode, en tout cas), le brisant. Finalement, deux diodes brisées plus tard, tout fonctionne comme un charme.

J’ai modifié l’alimentation du breadboard pour récupérer le VIN du transformateur que l’on branche, et pas seulement le 5V du régulateur, pour pouvoir alimenter le LM350 directement. C’était avec le premier module, où il y avait encore la résistance en série avec la diode laser, ce qui provoquait une chute de voltage. Je ne pense plus que c’est nécessaire à présent, on pourrait utiliser directement le 5V, mais bon, pour l’instant je vais le laisser comme ça puisque ça fonctionne. Ça permet une légère économie d’énergie (mais on s’en fout pour l’instant puisque le système n’est pas à batterie).

Pour ce qui est de la partie de la photodiode, j’utilise un simple amplificateur transimpédance, avec la diode branchée en reverse bias sur le ground, l’entrée positive de l’amplificateur sur le 0V également pour avoir le maximum de sensibilité. Cela est possible car j’utilise un LM358 qui a la possibilité de se rendre jusqu’au ground, autant à l’entrée qu’à la sortie, et ce même en single supply (comme en ce moment dans mon circuit qui l’alimente en 5V). Le désavantage, c’est que son voltage de saturation à l’état haut est aux alentours de 3,7V pour une alimentation de 5V, ce qui n’est pas si grave puisque l’on peut ajuster la pin aref de l’arduino pour correspondre à ce voltage. La résistance de gain est encore à ajuster, mais pour l’instant, je sais qu’elle doit être quelque part entre 100kohms et 1Mohm. Le deuxième amplificateur sur la chip est utilisé comme un voltage follower qui isole l’entrée de l’ADC de l’arduino du circuit.

Le schéma sera publié prochainement!

Je suis en train d’imprimer un couvercle à la partie optique, pour empêcher la lumière ambiante d’interférer dans les mesures (c’est plus simple comme ça, quoi qu’on pourrait éventuellement utiliser un modulateur et un démodulateur à une certaine fréquence pour diminuer le bruit).

Support mécanique pour mon réfractomètre laser

J’ai terminé la conception du support pour mon réfractomètre laser. À droite, il y a un module laser pris à partir d’un pointeur laser du dollarama, une fois l’optique retirée, cela donne une source monochromatique hautement divergente ayant à peu près la forme d’une ligne. Je m’en sers pour illuminer l’hypoténuse du prisme avec un continuum d’angles. L’angle critique de réflexion totale interne change selon l’indice de réfraction du milieu placé directement sur l’hypoténuse du prisme. J’ai placé une photodiode à gauche pour capter la réflexion produite par le prisme. Il y a une bordure aux alentours de l’angle critique, ce qui fait que la quantité de lumière atteignant la photodiode change rapidement selon les petites variations d’angles de réflexion (plus d’explications à venir dans des prochaines publications).

J’ai placé le tout sur un rail composé de mes traditionnelles extrusions d’aluminium, ce qui va être très pratique pour la calibration. En effet, il faut pouvoir ajuster la position de la photodiode très précisément pour mesurer adéquatement l’angle critique de réflexion totale interne.