{"product_id":"mikroe-3194","title":"IR Grid 2 click","description":"\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eDue to the small number of external components it requires, as well as the low pin count and widely used I2C digital interface, this sensor is an ideal solution for building a range of thermal detection applications. IR Grid 2 click can be used for a wide range of applications, including thermal scanners, precise contactless thermal measurement, thermal leaks in homes, industrial temperature control of moving parts, other types of heated object localization, human presence, and similar applications that require accurate contactless thermal measurement, or thermal imaging.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eHow does it work?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eIR Grid 2 click is equipped with the \u003ca href=\"https:\/\/download.mikroe.com\/documents\/datasheets\/MLX90640.pdf\"\u003eMLX90640\u003c\/a\u003e, a 32x24 IR array sensor, from \u003ca href=\"https:\/\/www.melexis.com\/en\"\u003eMelexis\u003c\/a\u003e. This sensor contains 8 Kbit EEPROM, used to store all the compensation and calibration parameters, along with some editable user parameters, such as the config registers, I2C address and similar. These sensors can measure temperature relative to the cold junction temperature, and for this reason, the MLX90640 IR sensor incorporates a PTAT (Proportional to Absolute Temperature) compensation sensor. The device also contains the power supply voltage measurement feature, allowing power supply monitoring. It is recommended that the supply voltage stay as accurate as possible, which is taken care of if used with the MikroElektronika development systems. The IR sensor array, as well as the PTAT sensor readings, are sampled by the internal Analog to Digital Converter (ADC) and stored to RAM, which can be accessed via the I2C interface. The resolution of the ADC can be programmed between 16 bits and 19bits. \u003cbr\u003e \u003cimg src=\"https:\/\/www.mikroe.com\/img\/cms\/ir-grid-2-click-inside-image.jpg\" alt=\"\"\u003e\u003c\/p\u003e\n\u003cp\u003eThe MLX90640 IR sensor used on this Click board™ has a Field of View (FOV) of 55?x32?, with the IR sensing elements arranged in a 32x28 grid. Each sensor measures the temperature in its individual FOV, allowing the host MCU to build a thermal image or calculate the temperature at each spot of the viewed scene. The measurement results are stored to RAM. The entire RAM area is divided in two pages, with access patterns controlled by the configuration registers (chess pattern, or interleaved pattern). The compensation parameters stored in the EEPROM are factory calibrated for chess pattern access, yielding the most accurate results when using this mode. The chess pattern mode is selected by default.\u003c\/p\u003e\n\u003cp\u003eThe configuration and control registers allow to set the operational parameters of the IR grid sensor. These registers contain bits that control the behavior of the sensor IC: the refresh rate, the ADC resolution, measurement mode (continuous or step mode), sleep mode, I2C mode (FM or FM+), etc. On restart, the data from the corresponding copies of these register locations in EEPROM is mirrored to the operational register locations in RAM, preparing the device to be instantly operated. This allows changing of the default values, since they are actually stored in EEPROM, rather than being hard-coded into the device.\u003c\/p\u003e\n\u003cp\u003eBesides the default working parameters, the EEPROM area contains all the compensation parameters for each IR element, necessary for completing the accurate thermal calculations. Those calculations include ambient temperature calculation, pixel offset calculation, pixel to pixel sensitivity difference compensation, object emissivity compensation, and object temperature calculation. The datasheet of the MLX90640 IR sensor contains equations which use these parameters stored in EEPROM. However, this Click board™ is supplied with the library, which contains functions that simplify working with this sensor, saving time.\u003c\/p\u003e\n\u003cp\u003eTwo modes of operation are available: the device can continuously sample data from the IR elements, with the programmed refresh rate (up to 64 frames per second), or it can take one frame, by sampling the selected page. The status byte contains flags that indicate that the reading of a specific page is done.\u003c\/p\u003e\n\u003cp\u003eIt should be noted that the sensor measures the IR emissivity of an object, so it is to be expected that some materials cannot be accurately measured by this sensor due to their low emissivity, such as the aluminum. To better understand the emissivity property of the materials, a person wearing clothes, can be taken as an example: the measured temperature will reflect the clothes temperature, rather than the body temperature itself, which is known to be about 37 ?C Care should be taken not to expose the Click board™ to a cold or hot air flow, as it will cause false readings of the real temperature. This sensor requires the temperature across the sensor package to be constant. \u003c\/p\u003e\n\u003cp\u003eThe MLX90640 IR sensor uses 3.3V for optimal results. While the power for the IR sensor itself is taken from the 3.3V mikroBUS™ rail, in order to support MCUs which use 5V compatible logic levels, the Click board™ comes equipped with PCA9306, a bi-directional I2C level translator IC, produced by Texas Instruments. This allows the logic voltage level to be selected by the SMD jumper labeled as VCC SEL. Besides I2C bus lines, no additional lines of the mikroBUS™ are used. I2C bus lines are routed to the respective pins of the mikroBUS™.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSpecifications\u003c\/strong\u003e\u003c\/p\u003e\n\u003ctable\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eType\u003c\/td\u003e\n\u003ctd\u003eOptical\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eApplications\u003c\/td\u003e\n\u003ctd\u003eIt can be used for thermal scanners, precise contactless thermal measurement, thermal leaks in homes, industrial temperature control of moving parts, other types of heated object localization, human presence, and other similar applications\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOn-board modules\u003c\/td\u003e\n\u003ctd\u003eMLX90640, a 32x24 IR grid array sensor with EEPROM, and a FOV of 55?x32?, from Melexis; PCA9306, a bi-directional I2C level translator, from Texas Instruments\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eKey Features\u003c\/td\u003e\n\u003ctd\u003e768 factory calibrated sensors, capable of contactless measuring of temperature up to 300?C, integrated 8Kbit of EEPROM for storing configuration and compensation parameters, programmable refresh rate up to 64Hz, and more\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eInterface\u003c\/td\u003e\n\u003ctd\u003eI2C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eInput Voltage\u003c\/td\u003e\n\u003ctd\u003e3.3V,5V\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCompatibility\u003c\/td\u003e\n\u003ctd\u003emikroBUS\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eClick board size\u003c\/td\u003e\n\u003ctd\u003eM (42.9 x 25.4 mm)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePinout diagram\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eThis table shows how the pinout on \u003cstrong\u003eIR Grid 2 click\u003c\/strong\u003e corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).\u003c\/p\u003e\n\u003ctable style=\"width: 549px;\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth\u003eNotes\u003c\/th\u003e\n\u003cth\u003ePin\u003c\/th\u003e\n\u003cth colspan=\"4\"\u003e\u003ca href=\"http:\/\/www.mikroe.com\/mikrobus\/\"\u003e\u003cimg src=\"https:\/\/cdn.mikroe.com\/img\/mikrobus\/mikroBUS-logo-black.png\" alt=\"Mikrobus logo.png\"\u003e\u003c\/a\u003e\u003c\/th\u003e\n\u003cth\u003ePin\u003c\/th\u003e\n\u003cth\u003eNotes\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e1\u003c\/td\u003e\n\u003ctd\u003eAN\u003c\/td\u003e\n\u003ctd\u003ePWM\u003c\/td\u003e\n\u003ctd\u003e16\u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e2\u003c\/td\u003e\n\u003ctd\u003eRST\u003c\/td\u003e\n\u003ctd\u003eINT\u003c\/td\u003e\n\u003ctd\u003e15\u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e3\u003c\/td\u003e\n\u003ctd\u003eCS\u003c\/td\u003e\n\u003ctd\u003eRX\u003c\/td\u003e\n\u003ctd\u003e14\u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e4\u003c\/td\u003e\n\u003ctd\u003eSCK\u003c\/td\u003e\n\u003ctd\u003eTX\u003c\/td\u003e\n\u003ctd\u003e13\u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e5\u003c\/td\u003e\n\u003ctd\u003eMISO\u003c\/td\u003e\n\u003ctd\u003eSCL\u003c\/td\u003e\n\u003ctd\u003e12\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003eSCL\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003eI2C Clock\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e \u003c\/td\u003e\n\u003ctd\u003eNC\u003c\/td\u003e\n\u003ctd\u003e6\u003c\/td\u003e\n\u003ctd\u003eMOSI\u003c\/td\u003e\n\u003ctd\u003eSDA\u003c\/td\u003e\n\u003ctd\u003e11\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003eSDA\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003eI2C Data\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePower supply\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003e3.3V\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003e7\u003c\/td\u003e\n\u003ctd\u003e3.3V\u003c\/td\u003e\n\u003ctd\u003e5V\u003c\/td\u003e\n\u003ctd\u003e10\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003e5V\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003ePower Supply\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGround\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003eGND\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003e8\u003c\/td\u003e\n\u003ctd\u003eGND\u003c\/td\u003e\n\u003ctd\u003eGND\u003c\/td\u003e\n\u003ctd\u003e9\u003c\/td\u003e\n\u003ctd\u003e\u003cstrong\u003eGND\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd\u003eGround\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp\u003e\u003cbr\u003e \u003cstrong\u003eOnboard jumpers and settings\u003c\/strong\u003e\u003c\/p\u003e\n\u003ctable\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth\u003eLabel\u003c\/th\u003e\n\u003cth\u003eName\u003c\/th\u003e\n\u003cth\u003eDefault\u003c\/th\u003e\n\u003cth\u003eDescription\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePWR\u003c\/td\u003e\n\u003ctd\u003ePWR\u003c\/td\u003e\n\u003ctd\u003e-\u003c\/td\u003e\n\u003ctd\u003ePower LED indicator\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eVCC SEL\u003c\/td\u003e\n\u003ctd\u003eVCC SEL\u003c\/td\u003e\n\u003ctd\u003eLeft\u003c\/td\u003e\n\u003ctd\u003ePower supply voltage selection: left position 3.3V, right position 5V\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSoftware support\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWe provide a library for the IR Grid 2 click on our \u003ca href=\"https:\/\/libstock.mikroe.com\/projects\/view\/2563\/ir-grid-2-click\"\u003eLibStock\u003c\/a\u003e page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eLibrary Description\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eThe library contains all the necessary functions for successful work with IR Grid 2 click.\u003cbr\u003e \u003cbr\u003e Key functions :\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003ccode\u003evoid irgrid2_init()\u003c\/code\u003e - Functions for initialization chip\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003ccode\u003evoid irgrid2_getPixelTemperature(float *Ta, float *pixelTemp)\u003c\/code\u003e - Functions for reads Ambient temperature and pixel temperature\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e\u003cstrong\u003eExample description\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eThe application is composed of three sections :\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eSystem Initialization - Initializes I2C module and USB UART for data logging\u003c\/li\u003e\n\u003cli\u003eApplication Initialization - Initializes driver init and IR Grid 2 module\u003c\/li\u003e\n\u003cli\u003eApplication Task - (code snippet) - Reads the temperature of all pixels and creates a pixel temperature matrix that logs on usbuart every 500ms\u003c\/li\u003e\n\u003cli\u003enote : The sensor needs about 4 minutes for calibration\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cpre\u003evoid applicationTask()\n{\nirgrid2_getPixelTemperature(\u0026amp;Ta,\u0026amp;pixelTemp[0]);\n\nmikrobus_logWrite(\"Ambient temperature: \",_LOG_TEXT);\nFloatToStr(Ta,demoText);\nmikrobus_logWrite(demoText,_LOG_LINE);\nmikrobus_logWrite(\" \", _LOG_LINE);\nmikrobus_logWrite(\"--- Pixel temperature matrix 32x24 ---\", _LOG_LINE);\n\nfor ( cnt = 0 ; cnt \u0026lt; 768 ; cnt++)\n{\nFloatToStr(pixelTemp[cnt],demoText);\ndemoText[ 5 ] = 0 ;\nmikrobus_logWrite(demoText, _LOG_TEXT);\nmikrobus_logWrite(\"|\", _LOG_TEXT);\nDelay_1ms();\nif(((cnt % 32) == 0) \u0026amp;\u0026amp; (cnt \u0026gt; 0))\n{\nmikrobus_logWrite(\" \", _LOG_LINE);\n}\n}\nmikrobus_logWrite(\" \", _LOG_LINE);\nDelay_ms( 500 );\n}\u003c\/pre\u003e\n\u003cp\u003e\u003cbr\u003e The full application code, and ready to use projects can be found on our \u003ca href=\"https:\/\/libstock.mikroe.com\/projects\/view\/2563\/ir-grid-2-click\"\u003eLibStock \u003c\/a\u003epage.\u003cbr\u003e \u003cbr\u003e Other mikroE Libraries used in the example:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eI2C\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e\u003cstrong\u003eAdditional notes and information\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eDepending on the development board you are using, you may need \u003ca href=\"https:\/\/shop.mikroe.com\/usb-uart-click\"\u003eUSB UART click\u003c\/a\u003e, \u003ca href=\"https:\/\/shop.mikroe.com\/usb-uart-2-click\"\u003eUSB UART 2 click\u003c\/a\u003e or \u003ca href=\"https:\/\/shop.mikroe.com\/rs232-click\"\u003eRS232 click\u003c\/a\u003e to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika \u003ca href=\"https:\/\/shop.mikroe.com\/compilers\"\u003ecompilers\u003c\/a\u003e, or any other terminal application of your choice, can be used to read the message.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003emikroSDK\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eThis click board is supported with \u003ca href=\"https:\/\/www.mikroe.com\/mikrosdk\"\u003emikroSDK\u003c\/a\u003e - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the \u003ca href=\"https:\/\/libstock.mikroe.com\/projects\/view\/2249\/mikrosdk\"\u003eLibStock\u003c\/a\u003e and installed for the compiler you are using.\u003cbr\u003e \u003cbr\u003e For more information about mikroSDK, visit the \u003ca href=\"https:\/\/www.mikroe.com\/mikrosdk\"\u003eofficial page\u003c\/a\u003e.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eDownloads\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"http:\/\/www.mikroe.com\/mikrobus\/\" target=\"_blank\"\u003e mikroBUS™ Standard specification \u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/libstock.mikroe.com\/projects\/view\/2249\/mikrosdk\" target=\"_blank\"\u003e LibStock: mikroSDK \u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/download.mikroe.com\/documents\/brochure\/click-brochure-avg-2018-web.pdf\"\u003e Click Boards™ Catalog\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/download.mikroe.com\/documents\/2d-3d-files\/ir-grid-2-click-2d-and-3d-files-v101.zip\"\u003e IR Grid 2 click 2D and 3D files\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/download.mikroe.com\/documents\/datasheets\/MLX90640.pdf\"\u003e MLX90640 datasheet\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/download.mikroe.com\/documents\/add-on-boards\/click\/ir-grid-2\/ir-grid-2-click-schematic-v100.pdf\"\u003e IR Grid 2 click schematic\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e\u003ca href=\"https:\/\/libstock.mikroe.com\/projects\/view\/2563\/ir-grid-2-click\" target=\"_blank\"\u003e IR Grid 2 click Libstock Library \u003c\/a\u003e\u003c\/p\u003e","brand":"MikroElektronika","offers":[{"title":"Default Title","offer_id":47400887976219,"sku":"MIKROE-3194","price":7879.0,"currency_code":"INR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0676\/3325\/0587\/products\/ir-grid-2-click-thickbox_default-22xq57ZcUIxas012.jpg?v=1701962091","url":"https:\/\/mgsl.in\/products\/mikroe-3194","provider":"MG Super Labs","version":"1.0","type":"link"}