View on GitHub

MLX90614 : Single and Dual Zone Infra Red Thermometer in TO-39 (I²C)

Description de la classe MLX90614 développée en C# sous .NETMF 4.3 pour les cartes Netduino et GHI FEZ (PANDA, COBRA...).

Download this project as a .zip file Download this project as a tar.gz file

Sommaire

  1. LE MATERIEL
    1. Le capteur MLX90614: Infrared Thermometer
    2. Les cartes Netduino
    3. Les cartes FEZ
  2. LE LOGICIEL
    1. Contenu du répertoire proposé au téléchargement
    2. Le NuGet MicroToolsKit
    3. Le wiki .NetMF v4.3
    4. Description et utilisation de la classe MLX90614
  3. LES FASCICULES
    1. Exemples codés en C# pour les cartes Netduino et Fez (Panda 3, BrainPad)
    2. La page du projet MicroToolsKit

1. LE MATERIEL


1.1 Le capteur MLX90614: Infrared Thermometer


Module MLX90614


DFROBBOT
Documentation - Schéma

1.2 Les cartes Netduino

Secret Labs

Netduino plus 2 Netduino 3 wifi
Netduino 3 Ethernet Netduino 3 wifi*

1.3 Les cartes FEZ

GHI Electonics (Extrait)

PANDA III COBRA III
PANDA III COBRA III* (compatible Gadgeteer)

2. LE LOGICIEL


2.1 Contenu du répertoire proposé au téléchargement


Le répertoire proposé au téléchargement (au format zip ou tar.gz) contient la solution MLX90614 composée :


2.2 Le NuGet MicroToolsKit

La dernière version compilée de la classe MLX90614 se situe dans la bibliothèque MicroToolsKit disponible sur nuget.org.

Organisation des classes contenues dans MicroToolsKit [lien]

Important : Installer ce nuget dans le projet Visual Studio simplifie l'utilisation de la classe.


2.3 Le wiki .NetMF v4.3


2.4 Description et utilisation de la classe MLX90614


Création d'un projet avec l'IDE Visual Studio 2015


  1. Créer un nouveau projet en suivant la démarche décrite dans le chapitre "Premier programme en C# étape par étape" avec une carte Netduino ou avec une carte Fez (Panda 3, BrainPad etc). [lien]
  2. Utiliser le gestionnaire de paquets NuGet pour ajouter la bibliothèque MicroToolsKit ( nuget.org) dans le projet. (Dans l'explorateur de solution, clic droit sur les Références du projet puis choisir Gérer les packages NuGet.... Installer le paquet.)
  3. Ajouter l'espace de noms Microtoolskit.Hardware.Sensors dans l'en-tête du fichier source.
  4. Créer un objet en utilisant le constructeur MLX90614.
  5. Utiliser la méthode Read_TA_AsCelcius pour mesurer la température de l'air et la méthode Read_Tobj_AsCelcius pour mesurer la température d'un objet et obtenir le résultat en °C.

Exemple
using System.Threading;
using Microsoft.SPOT;

using Microtoolskit.Hardware.Sensors;

namespace test
{
    public class Program
    {
        public static void Main()
        {
          MLX90614 tempIR = new MLX90614();

             while (true)
             {
               Debug.Print("Température Air = " + tempIR.Read_TA_AsCelcius().ToString("F1") + " °C");
               Debug.Print("Température IR = " + tempIR.Read_Tobj_AsCelcius().ToString("F1") + " °C");
               Debug.Print("---------------------");
               Thread.Sleep(500);
             }
        }
    }
}
			

Constructeur

Syntaxe Description
MLX90614( ushort SLA, short Frequency ) Instancie un objet "MLX90614".
SLA : Addresse sur le bus I²C entre 0x01 et 0x7F.
SLA= 0x5A par défaut.
Frequency: Féquence du signal SCL entre 10kHz et 100kHz
Frequency = 50kHz. (par défaut)

Exemple
MLX90614 tempIR = new MLX90614();

Méthodes publiques

Syntaxe Description
double Read_TA_AsCelcius() Renvoi la température de l'air en °C.

Note
Une exception System.IO.IOException est générée avec le message "I2CBus error SLA" en cas d'échec de la communication. SLA est l'adresse du circuit.

Exemple
double temperature_A = tempIR.Read_TA_AsCelcius();
double Read_TA_AsFahrenheit() Renvoi la température de l'air en °F.

Note
Une exception System.IO.IOException est générée avec le message "I2CBus error SLA" en cas d'échec de la communication. SLA est l'adresse du circuit.

Exemple
double temperature_A = tempIR.Read_TA_AsFahrenheit();
double Read_Tobj_AsCelcius() Renvoi la température de l'objet en °C.

Note
Une exception System.IO.IOException est générée avec le message "I2CBus error SLA" en cas d'échec de la communication. SLA est l'adresse du circuit.
Exemple
double temperature_O = tempIR.Read_Tobj_AsCelcius();
double Read_Tobj_AsFahrenheit() Renvoi la température de l'objet en °F.

Note
Une exception System.IO.IOException est générée avec le message "I2CBus error SLA" en cas d'échec de la communication. SLA est l'adresse du circuit.
Exemple
double temperature_O = tempIR.Read_Tobj_AsFahrenheit();