Je vous fais partager ma dernière réalisation.
Une caméra thermique basée sur le capteur Melexis MLX90620. Ce capteur infrarouge permet de faire de vrais images thermiques. Il est relativement bon marché. En contre-partie la résolution est assez faible mais on peut quand même faire des choses pas mal avec.
Je n'ai pas inventé grand chose. Je suis parti d'un projet open source qui utilisait un PIC et j'ai adapté le schéma et le code pour le faire tourner sur plate-forme Arduino.
En pièce jointe un petit document avec des liens vers les projets dont je me suis inspiré, quelques explications le schéma, la nomenclature valorisée et des photos de la réalisation.
La montage fonctionne en association avec un smartphone Android ou iPhone(n'ayant pas d'iPhone moi même je n'ai pas pu tester si le portage fonctionne aussi sur iPhone).
Le capteur infrarouge est lu par l'arduino. L'image infrarouge est ensuite transmise par bluetoth au téléphone pour affichage.
La photo en pièce jointe montre ce que l'on peut obtenir. L'image infrarouge n'est pas parfaitement superposée car pour l'instant je n'ai pas trouvé de moyen pour garantir un bon alignement entre mon boîtier et le téléphone. L'application sur le smartphone permet d'aligner correctement les 2 images.
La sortie se faisant par la liaison série (ou le bluetooth) on peut très bien récupérer les informations par un autre moyen que le téléphone et exploiter, par exemple, les images sur un PC.
Edit : 22/6ajouté une photo du boîtier en situation.
Edit : 23/6 explications complémentaires
Edit : 10/7 changé le pdf (j'avais oublié de mettre le schéma)
Edit : 16/11/2014 ajout des librairies manquantes
Le capteur a une interface I²C. Donc il n'y a pas de problème d'échantillonnage.
La résolution du capteur étant assez basse, il y a peu de points à lire et les données peuvent être rapatriées rapidement.
Par contre si tout le traitement est fait dans l'Arduino (compensation d'offset et de gain point à point, compensation en température) comme les calculs se font en flottant cela charge pas mal le micro. Mais c'est possible j'ai commencé comme ça avant de trouver l'appli sur smartphone.
skizoh:
ok, et tu peut interpréter ces données directement dans le arduino? si c'est le cas je crois que ça sera mon prochaine achat
Sans problème.
Voilà le code dont je suis parti. Là tous les calculs sont fait dans l'arduino. La sortie se fait sur la console mais libre à toi de faire ce que tu veux. Il suffit de remplacer la fonction Temperatures_Serial_Transmit() par ton traitement. Les données sont dans le tableau "temperatures".
Concernant la sortie sur la console, il y a un #define VT100 qui permet d'activer, lorsqu'il est decommenté, une mise en forme pour rendre l'affichage plus agréable sur un terminal émulant le standard VT100 (Hyperterminal, Putty, Realterm, Minicom, ...).
ATTENTION
Dans le fichier "MLX90620_Example.ino" il y a le tableau "alpha_ij" qui doit être adapté à chaque capteur. Pour cela il faut utiliser "MLX90620_alphaCalculator.ino" qui va générer les valeurs du tableau à recopier dans toutes les applications que tu feras avec ce même capteur. C'est à faire en premier car sinon les valeurs retournées par "MLX90620_Example.ino" sont erronées.
Oupssss
Je viens de m'apercevoir que j'avais mis le mauvais pdf dans le premier post. Il manquait le schéma du montage.
L'erreur est corrigée, le premier post mis à jour. La schéma est maintenant dans le document "IR-blue-duino_project.pdf"
Hello friends, ;D
I try to compile the code "MLX90620_IR_Blue.ino". Unfortunately, which is absent with the library "MLX90620.h" for it is required.
Does somebody have an idea where I can find this library?
Thank you very much,
Uwe