teplotní komunikační protokol termovizní kamery

Some customers ask if our thermal imaging cameras can display the temperature of observed objects in the video. Odpověď je ano.

The following pictures show the highest, lowest, and average temperatures in the video from the thermal imaging camera.

thermal imaging camera temperature communication protocol Maximum minimum average temperature
thermal imaging camera temperature communication protocol 1
thermal imaging camera temperature communication protocol 2

thermal imaging camera temperature communication protocol docking guide

Communication identification

According to the own development environment, complete the access of the device and realize communication(If the time stamp needs to be aligned in the plan, it needs to be corrected every time the computer is turned on, and it needs to be corrected at least once a day);

Time calibration

To find the full-screen temperature measurement data of a certain frame of the movement, it is necessary to access the device to perform time calibration on the module to ensure real-time performance;

It should be noted this movement only supports hours, minut, sekundy, and milliseconds for timestamps, and does not support years, měsíce, dny, and days of the week (displayed as 0 in the corresponding data format).

Data acquisition

The module provides different video streaming and temperature measurement data acquisition methods. According to your own needs, you can select the corresponding data type and process and present it on the host;

Podpěra, podpora

  1. Full-screen temperature measurement real-time data;
  2. YUV real-time streaming data;
  3. Full-screen temperature measurement + YUV real-time streaming data;

(see attached page for details)

Temperature measurement calibration

After integration and deployment into the whole machine, the temperature rise may affect the temperature measurement accuracy of the temperature measurement movement. It is necessary to place the temperature measurement module in the device after the heat engine has stabilized, and then perform temperature measurement calibration to ensure The accuracy of the whole machine product.

[One-click calibration]

Electric heating engine

The equipment is integrated into the whole machine. The electric heating engine needs to be stabilized before calibration. It is recommended to take more than 2 hodiny. In a stable process environment, the packaging will not be affected by heat sources, vítr, atd.;

It is necessary to use a black body to set four temperatures of 35°C, 60C, 100C, and 200°C as subsequent temperature measurement calibration points;

Set calibration parameters

Set the calibration parameters of the movement, vzdálenost, blackbody emissivity, calibration point temperature

Calibration temperature acquisition

Take the complete product, at the set distance, align the center of the thermal imaging screen with the black body at different temperature points to obtain the temperature, and wait for the return to complete (once for each temperature point);

One-click correction

After obtaining the calibration point, perform a one-click correction operation;

Accuracy inspection

After completing the correction, inspect each calibration temperature point to see if the measurement accuracy is within ±1.5°C or ±1.5% of the reading (kteroukoli je větší hodnota). If it is out of range, repeat steps ③, , and ⑤.

thermal imaging camera temperature Integration communication protocol výběr

UVC protocol supplement

1. Full-screen temperature measurement real-time data

OffsetPoleVelikost(byte)HodnotaPopisPoznámka
0u32MagicNo4the frame sequence number,The frame sequence number uploaded in real time is a continuously increasing even number.10001002, 1004, 10060x70827773FRMIofascllcode*/
4u32HeaderSize4 HEADlength*/
8u32StreamType4 data typeRTData:SeeSTREAM_TYPE_E*/
12u32StreamLen4 DATAlength(Including the front4byte) */           
16u32RTDataType4 1-14bitNaked data; 2-Full screen temperature measurement result data; 3-YUVdata*/
20u32FrmNum4 Not supported displayed as 0
24u32StdStamp4 DSPrelative timestamp*/Not supportedDisplayed as 0
28rok2 Year*/Not supported displayed as 0
30month2 moon*/Not supported displayed as 0
32dayOfWeek2 0:Sunday~6:sobotaNot supported displayed as 0
34den2 day*/Not supported displayed as 0
36hodina2 Hour*/
38minuta2 minute*/
40druhý2 Second*/
42milliSecond2 millisecond*/
44u32Width4 Raw data width
48u32Height4 High naked data
52u32Len498304Channel number fixed 0
56u32Fps425Real-time upload frame rate-Currently fixed25
60u32Chan40Číslo kanálu, opravené 0
64u32TmDataMode410for4byte, 1for2byte*/
68u32TmScale4 Temperature measurement scaling ratio
72u32TmOffset40Temperature measurement offset, Currently fixed to 0
76bylsFreezedata4 Whether it is frozen data, 1-zmrazit, 0Not frozen
124res[12]  480reserved bytes
128u32CrcVal4 The structure check code verifies the data in front of the structure

2. YUV real-time streaming data

ObjednatPoleVelikostValue typePopisPoznámka
0YUV_Data_Magic_Head4ČísloThe magic word on the head is specified as0x050508e7
1HeaderLen4ČísloHeader data length, in bytes, fixed to the maximum calculation
2TotalDataLen4ČísloAll data lengths, including header data, are in bytes and are fixed to the maximum calculation.
3Channel number fixed 01ČísloČíslo kanálu, opravené 0
4Rezervováno30reserved3bytes
5Rok20RokNení podporováno, displayed as 0
6Měsíc20moon 1-12Není podporováno, displayed as 0
7Day of Week20day of weekNení podporováno, displayed as 0
0-Sunday 1-MondayNení podporováno, displayed as 0
2-Tuesday 3-WednesdayNení podporováno, displayed as 0
4-Thursday 5-FridayNení podporováno, displayed as 0
6-sobotaNení podporováno, displayed as 0
8Den20den 1-31Není podporováno, displayed as 0
9Hodina20Hodina 0-23
10Minuta20minuta 0-59
11Druhý20Druhý 0-59
12milisekunda20milisekunda 0-999
13TMInfoPosition1BoolTemperature measurement information display location:
0-follow the rules(výchozí hodnota)
1-Display in the upper left corner
14bShowMaxTemp1BoolWhether to display the highest temperature: 0-Do not show(výchozí hodnota),1-show
15bShowMinTemp1BoolWhether to display the lowest temperature: 0-Do not show(výchozí hodnota),1-show
16bShowAvgTemp1Bool0 stupně Celsia (standardní)
17tempUnit1Číslotemperature unit
temp mode
1-Fahrenheit
2-Kelvin
18tempMode1ČísloTemperature measurement mode:0-Expert temperature measurement,1-Ordinary temperature measurement
Number of temperature measurement areas
19pointTmpNum1ČísloNumber of temperature measurement points, max.10
20boxTmpNum1ČísloNumber of frame temperature measurements, max.10
21lineTmpNum1ČísloNumber of line temperature measurement lines, max.1strip
22celkový1ČísloThe sum of the above three currently supports the most21For the sake of subsequent expansion, do not limit the range of this number.
23reserved118Čísloreserved18bytes
The list of temperature measurement area results appears in a loop. V současné době, podporuje až 21, and the number is determined by the total above.
24Region ID1ČísloThe list of temperature measurement area results appears in a loop. V současné době, podporuje až 21, which is determined by the total above.
25RegionEnabled1BoolZone enable
0-closure
1-turn on
26region type1ČísloArea type
0-No zone type
1-Polygon area type
2-Linear area type
3-point area type
27Point_Num1Číslonumber of valid vertices, Most supported10 coordinates of valid vertices
 Within a single temperature measurement rule, the vertex coordinates of the temperature measurement rule, here according to the abovePoint_NumDetermine how many vertex coordinates to send
28Point_X4ČísloCurrent vertex level X Axis coordinates, normalized to0-1000
29Point_Y4Číslothe current vertex is Y vertical AND Axis coordinates, normalized to0-1000
30emission Rate4ČísloEmissivity—-Floating point numbers:[0.00, 1.00]
31vzdálenost4Číslovzdálenost
0.3-3m
The protocol is transmitted in centimeters, and users interpret it in centimeters.
32reflectiveTemperature4ČísloReflected temperature:
-100.0~1000.0℃ (accurate to decimal point1bit, when transmitting(actual value+100)*10Convert to non-negative integer
33min Tmp4Číslominimální teplota: [-40.0, 1000.0], unit Celsius
34minTmp_X4Číslominimum temperature levelXAxis coordinates, normalized to0-1000
35minTmp_Y4Číslolowest temperature verticalANDAxis coordinates, normalized to0-1000
36max Tmp4Číslomaximum temperature: [-40.0, 1000.0], unit Celsius
37maxTmp_X4Číslomaximum temperature levelXAxis coordinates, normalized to0-1000
38maxTmp_Y4Číslomaximum temperature verticalANDAxis coordinates, normalized to0-1000
39avrTmp4Čísloaverage temperature: [-40.0, 1000.0], unit Celsius

3.Full-screen temperature measurement + YUV real-time streaming data

 PoleVelikost(byte)HodnotaPopisPoznámka
 u32MagicNo4 0x70827773FRMIofascllcode*/
 u32HeaderSize4 HEADlength*/
 u32StreamType4 data typeRTData:SeeSTREAM_TYPE_E
 u32StreamLen4 DATAlength(Including the front4byte) */        
 bIFRYuv4 Whether to carryYUVpicture*/
STREAM_FS_SUPPLE_INFO_TEMP
Real-time temperature data additional information structure
u32TmDataMode410for4byte, 1for2byte*/
u32TmScale4 Temperature measurement scaling ratio
u32TmOffset40Temperature measurement offset,Currently fixed to0
bylsFreezedata4 Whether it is frozen data, 1-zmrazit, 0Not frozen
STREAM_RT_DATA_INFO_S
Real-time temperature data output structure
u32RTDataType4 1-14bitNaked data; 2-Full screen temperature measurement result data; 3-YUVdata*/
u32FrmNum4 frame sequence number,The frame sequence number uploaded in real time is a continuously increasing even number.10001002, 1004, 1006
u32StdStamp40DSPrelative timestamp*/Not supporteddisplayed as0
rok20Year*/Not supporteddisplayed as0
month20moon*/Not supporteddisplayed as0
dayOfWeek200:Sunday~6:sobotaNot supporteddisplayed as0
den20day*/Not supporteddisplayed as0
hodina20Hour*/
minuta20minute*/
druhý20Second*/
milliSecond20millisecond*/
u32Width4 Raw data width*/
u32Height4 High naked data*/
u32Len498304The length of the real-time temperature measurement matrix,in bytes,Plus4bytes,like4BytesfloatThermometry matrix: 256*192*2
u32Fps425Real-time upload frame rate-Currently fixed25
u32Chan41Číslo kanálu, fixed1
RT_YUV_DATA_INFO_S
real timeYUVThe output structure of
u32FrmNum4 frame sequence number,The frame sequence number uploaded in real time is a continuously increasing even number.1000, 1002, 1004, 1006
u32Width4 YUVData width
u32Height4 YUVHigh data
u32Len4 YUVData length(DATA2)
u32StdStamp40DSPrelative timestamp*/Not supporteddisplayed as0
rok20Year*/Not supporteddisplayed as0
month20moon*/Not supporteddisplayed as0
dayOfWeek200:Sunday~6:sobotaNot supporteddisplayed as0
den20day*/Not supporteddisplayed as0
hodina20Hour*/
minuta20minute*/
druhý20Second*/
milliSecond20millisecond*/
IFR_REALTIME_TM_OUTCOME_UPLOAD_INFOOutput structure of real-time temperature measurement informationtempUnit4 temperature unit,Default Celsius,Mainly used for uploading
refTempkey1 Reflective temperature switch
res[3]3 rezervovat
f32Distance4 Measure distance
refTemp4 Reflected temperature,Switch based on reflected temperature
emissionRate4 Emissivity, [0.00, 1.0]
envTemp4 teplota okolí,When there is no temperature sense, it is obtained from the temperature measurement algorithm library.
minTmp4 Full screen minimum temperature
maxTmp4 Full screen maximum temperature
avrTmp4 Full screen average temperature
IFR_POINT*3(Save the highest and lowest temperature coordinates in the test results,normalized to0-1000,array subscript: 0-maximum temperature, 1-lowest temperature, 2-average temperature)
x4  
a4  
u32TempMode4 0:Expert temperature measurement, 1:Ordinary temperature measurement
resv[5]20 rezervovat
pointNum4 Number of temperature measurement points,maximum10indivual
boxNum4 Number of frame temperature measurements,maximum10indivual
lineNum4 Number of line temperature measurement lines,most1strip
celkový4 The sum of the three parties
Rezervováno[8]32 rezervovat
IFR_OUTCOME_INFO*21(temperature measurement result)
umožnit1 //<Whether to enable: 0-Ne,1-Ano
regionld1 //<areaID
Rezervováno[2]   2 //<reserved fields
reftemp4                                    
reservedex[20]1 //<reserved fields
f32Distance4 //<vzdálenost
u8res1 //<reserved fields
u8maxTmpStat1 //See the maximum temperature stateTM_TEMP_STAT_E
u8minTmpStat1 //See the lowest temperature statusTM_TEMP_STAT_E
u8avgTmpStat1 //Average temperature temperature status seeTM_TEMP_STAT_E
regiontype4 Area type
název[32] 32 area name
emissionRate  //<Emissivity: [0.00, 1.00]                
minTmp  //<minimální teplota: [-40.0, 1000.0],Unit Celsius
maxTmp  //<maximum temperature: [-40.0, 1000.0],Unit Celsius
avrTmp  //<average temperature: [-40.0, 1000.0],Unit Celsius
diffTmp  //<temperature difference: [0.0, 1040.0],Unit Celsius
IFR_POINT*2(Save the highest and lowest temperature coordinates in the test results,normalized to0-1000,array subscript:0-maximum temperature, 1-lowest temperature)
x4  
a4  
pointNum4 Actual number of vertices of the polygon (polygon area)
IFR_POINT*12(polygon area) coordinates
x4  
a4  
 uploadType11Real-time data upload type-Full-screen temperature measurement real-time upload data type 0-JPEG;1-YUV
 res[11]440Rezervováno
 u32CrcVal4 The structure check code verifies the data in front of the structure

Thermal imaging cameras are now also used on drones.
They find targets hidden at night, in the grass, or in the forest.
There are three main types of pixels: 256 x 192, 384 x 288, a 640 x 512.
The detection distance is 150 meters and 300 metry.
The thermal imaging camera also has a normal video output interface and a USB output interface.
There is usually also a serial port interface for sending commands to the camera to adjust parameters. such as zoom in, zoom out, and video color.
It is small in size and can replace common visible light cameras.

Post from File VF-202401

Položit otázku

← Zpět

Děkujeme za Vaši odpověď. ✨