News
Can thermal imaging cameras be homemade?
Add time:2024/07/25
Browse:620
Share:

Main Hardware Components:

ESP32 Wrover module from Lattice, equipped with 8Mb flash memory and PSRAM

MLX90640 Far Infrared Thermal Sensor Array Sensor

2.4-inch TFT display with a resolution of 320x240 ILI9341 driver

WCH Electronics CH340K USB - UART controller

TP4056 Lithium Ion Charger IC

MIC5219-3.3YM5 3.3v LDO

AO3401 P-channel MOSFET

ONsemi 2N7002DW Dual N-channel MOSFET

S8050 Transistor SOT-23

ON Semiconductor SS34 Schottky Diode 40V 3A SMA

SD card reader

Type C USB connector 16-pin

Resistors, capacitors, LEDs, cables, and other accessories

The most important device for a thermal imager is the thermal imaging sensor, mainly selected from the following three models: Panasonic's AMG8833, MLX90640, and Melexis' MLX90641. Although AMG8833 is the cheapest, its resolution is only 8x8, while MLX90640 provides a resolution of 32x24, and MLX90641 provides a resolution of 16x12. Considering the price and other factors, MLX90640 is chosen.

Schematic Design:

The complete circuit diagram of the DIY thermal imager is shown below. 

complete circuit diagram of the DIY thermal imager.png


KiCad was used to design the schematic and PCB for this project. The complete files can be found in the GitHub repository.

To facilitate understanding of all the content, the schematic is divided into different parts and all contents are marked accordingly.

Firstly, the power supply part. It consists of a USB C connector for power input and programming, a power path controller built with AO3041 MOSFET, a 3.3V regulator built with TP4056 charge controller, and a battery charging circuit. A voltage divider is used to measure the battery voltage. The power switch is connected to the enable pin of the 3.3V LDO.

USB Input and Power Path Control and 3.3V Regulator.png

ESP32 SoC.png

Next is the main circuit, including the ESP32 SoC, USB to UART controller, and MLX90640 image sensor. The programming circuit uses the CH340K chip for USB communication. Dual N-channel MOSFETs are used for the automatic reset circuit. MLX90640 is connected to ESP32 via I2C. An additional I2C port is also provided for emergencies.

MLX90640 image sensor and Ecternal 12C.png

USB-UART Programming Circult Auto Reset Circuit.png

Lastly, the display, micro SD card, and button input. The display is connected to ESP32 using the hardware HSPI bus. The micro SD interface uses the VSPI pins on the ESP32 module. When detecting buttons, a simple button connected to GPIO and ground is used.

Navlgation Switches SD Card.png

PCB Design

KiCad was used to design the PCB, and a simple two-layer layout is sufficient. This is the 3D view of the PCB.

3D view of the PCB.png

Fully assembled PCB:

Fully assembled PCB.png

3D Printed Parts:

3D Printed Parts.png

A cool-looking 3D printed enclosure was designed for the DIY thermal imager. All 3D printing part files can be downloaded from the provided GitHub/Thingyverse link.

How to Use the Thermal Imager:

Thermal Imager main screen.png

On the main screen, you can see the thermal image itself as well as the minimum, maximum, and midpoint temperatures and the battery icon.

The following figure shows the setup screen of the DIY thermal imager. There are 7 options for settings, the selected option will be displayed in green text, while other options will be displayed in white text. You can change the selection by pressing the middle button. You can adjust the value of the selected option using the up/+ or down/- buttons.

thermal imager screen setting.png

The specific performance parameters of this thermal imager are as follows:

· Image sensor resolution: 32x24.

· Sensor field of view (FoV): 55°x35°

· Temperature measurement range: -40 to 300°C

· Operating temperature range: -40°C to 85°C.

· Adjustable refresh rate - 4Hz to 32Hz.

· 10 different colors.

· 5 different interpolation modes.

· Easy-to-use GUI.

· 2.4-inch TFT display with a resolution of 320x240.

· Thermal images can be saved to an SD card.

· Built-in battery and charging circuit.

The following are some images taken with the thermal imager

images taken with the thermal imager 1.png


images taken with the thermal imager 2.png