Pages: [1]   Go Down
Author Topic: IR-Blue-duino caméra thermique  (Read 2449 times)
0 Members and 1 Guest are viewing this topic.
France
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3010
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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)

* MLX90620_IR_Blue.ino (8.71 KB - downloaded 67 times.)

* FIR130622171235.png (252.83 KB, 800x420 - viewed 327 times.)

* P6220396.JPG (24.23 KB, 633x305 - viewed 151 times.)
* IR-blue-duino_project.pdf (311.01 KB - downloaded 168 times.)
« Last Edit: July 10, 2013, 02:00:35 am by fdufnews » Logged

83 - var
Offline Offline
God Member
*****
Karma: 4
Posts: 769
ARDUINO Powa !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ahhhh mais c'est perfecto ça !!! bien joué, il ce pourrai que j'utilise ce capteur thermique incessamment sous peut !!!!

L’échantillonnage est - il assez rapide? en tout cas chapeau smiley

Skizo !

Logged

Un tien vaux mieux que deux tu l'auras !

France
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3010
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

L’échantillonnage est - il assez rapide?
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.
Logged

83 - var
Offline Offline
God Member
*****
Karma: 4
Posts: 769
ARDUINO Powa !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 :p

Skizo !
Logged

Un tien vaux mieux que deux tu l'auras !

France
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3010
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 :p
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.

* MLX90620_examples.zip (8.11 KB - downloaded 26 times.)
Logged

83 - var
Offline Offline
God Member
*****
Karma: 4
Posts: 769
ARDUINO Powa !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok je te remercie de ton retour d’expérience tu va me faire gagné beaucoup de temps smiley C'est parfait pour ce que je veux faire en plus :p


encore merci !
Skizo
Logged

Un tien vaux mieux que deux tu l'auras !

France
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3010
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oupssss  smiley-red
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"
Logged

Pages: [1]   Go Up
Jump to: