protocolo de comunicação de temperatura de câmera de imagem térmica

Some customers ask if our thermal imaging cameras can display the temperature of observed objects in the video. The answer is yes.

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, minutos, segundos, and milliseconds for timestamps, and does not support years, meses, dias, 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;

Apoio, suporte

  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 horas. In a stable process environment, the packaging will not be affected by heat sources, vento, etc.;

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

Set calibration parameters

Set the calibration parameters of the movement, distância, 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 (o que for o maior valor). If it is out of range, repeat steps ③, , and ⑤.

thermal imaging camera temperature Integration communication protocol seleção

UVC protocol supplement

1. Full-screen temperature measurement real-time data

DesvioCampoTamanho(byte)ValorDescriçãoObservação
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
28ano2 Year*/Not supported displayed as 0
30month2 moon*/Not supported displayed as 0
32dayOfWeek2 0:Sunday~6:SábadoNot supported displayed as 0
34dia2 day*/Not supported displayed as 0
36hora2 Hour*/
38minuto2 minute*/
40segundo2 Second*/
42milliSecond2 millisecond*/
44u32Width4 Raw data width
48u32Height4 High naked data
52u32Len498304Channel number fixed 0
56u32Fps425Real-time upload frame rate-Currently fixed25
60u32Chan40Channel number, fixo 0
64u32TmDataMode410for4byte, 1for2byte*/
68u32TmScale4 Temperature measurement scaling ratio
72u32TmOffset40Temperature measurement offset, Currently fixed to 0
76bylsFreezedata4 Whether it is frozen data, 1-congelar, 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

OrdemCampoTamanhoValue typeDescriçãoObservação
0YUV_Data_Magic_Head4NúmeroThe magic word on the head is specified as0x050508e7
1HeaderLen4NúmeroHeader data length, in bytes, fixed to the maximum calculation
2TotalDataLen4NúmeroAll data lengths, including header data, are in bytes and are fixed to the maximum calculation.
3Channel number fixed 01NúmeroChannel number, fixo 0
4reservado30reserved3bytes
5Ano20AnoNão suportado, displayed as 0
6Mês20moon 1-12Não suportado, displayed as 0
7Day of Week20day of weekNão suportado, displayed as 0
0-Sunday 1-MondayNão suportado, displayed as 0
2-Tuesday 3-WednesdayNão suportado, displayed as 0
4-Thursday 5-FridayNão suportado, displayed as 0
6-SábadoNão suportado, displayed as 0
8Dia20dia 1-31Não suportado, displayed as 0
9Hora20Hora 0-23
10Minuto20minuto 0-59
11Segundo20Segundo 0-59
12milisegundo20milisegundo 0-999
13TMInfoPosition1BoolTemperature measurement information display location:
0-follow the rules(valor padrão)
1-Display in the upper left corner
14bShowMaxTemp1BoolWhether to display the highest temperature: 0-Do not show(valor padrão),1-show
15bShowMinTemp1BoolWhether to display the lowest temperature: 0-Do not show(valor padrão),1-show
16bShowAvgTemp1Bool0 graus Celsius (padrão)
17tempUnit1Númerotemperature unit
temp mode
1-Fahrenheit
2-Kelvin
18tempMode1NúmeroTemperature measurement mode:0-Expert temperature measurement,1-Ordinary temperature measurement
Number of temperature measurement areas
19pointTmpNum1NúmeroNumber of temperature measurement points, max.10
20boxTmpNum1NúmeroNumber of frame temperature measurements, max.10
21lineTmpNum1NúmeroNumber of line temperature measurement lines, max.1strip
22total1NúmeroThe sum of the above three currently supports the most21For the sake of subsequent expansion, do not limit the range of this number.
23reserved118Númeroreserved18bytes
The list of temperature measurement area results appears in a loop. atualmente, it supports up to 21, and the number is determined by the total above.
24Region ID1NúmeroThe list of temperature measurement area results appears in a loop. atualmente, it supports up to 21, which is determined by the total above.
25RegionEnabled1BoolZone enable
0-closure
1-turn on
26region type1NúmeroArea type
0-No zone type
1-Polygon area type
2-Linear area type
3-point area type
27Point_Num1Númeronumber 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_X4NúmeroCurrent vertex level X Axis coordinates, normalized to0-1000
29Point_Y4Númerothe current vertex is Y vertical AND Axis coordinates, normalized to0-1000
30emission Rate4NúmeroEmissivity—-Floating point numbers:[0.00, 1.00]
31distância4Númerodistância
0.3-3m
The protocol is transmitted in centimeters, and users interpret it in centimeters.
32reflectiveTemperature4NúmeroReflected temperature:
-100.0~1000.0℃ (accurate to decimal point1bit, when transmitting(actual value+100)*10Convert to non-negative integer
33min Tmp4Númerotemperatura mínima: [-40.0, 1000.0], unit Celsius
34minTmp_X4Númerominimum temperature levelXAxis coordinates, normalized to0-1000
35minTmp_Y4Númerolowest temperature verticalANDAxis coordinates, normalized to0-1000
36max Tmp4Númeromaximum temperature: [-40.0, 1000.0], unit Celsius
37maxTmp_X4Númeromaximum temperature levelXAxis coordinates, normalized to0-1000
38maxTmp_Y4Númeromaximum temperature verticalANDAxis coordinates, normalized to0-1000
39avrTmp4Númeroaverage temperature: [-40.0, 1000.0], unit Celsius

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

 CampoTamanho(byte)ValorDescriçãoObservação
 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-congelar, 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
ano20Year*/Not supporteddisplayed as0
month20moon*/Not supporteddisplayed as0
dayOfWeek200:Sunday~6:SábadoNot supporteddisplayed as0
dia20day*/Not supporteddisplayed as0
hora20Hour*/
minuto20minute*/
segundo20Second*/
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
u32Chan41Channel number, 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(DADOS2)
u32StdStamp40DSPrelative timestamp*/Not supporteddisplayed as0
ano20Year*/Not supporteddisplayed as0
month20moon*/Not supporteddisplayed as0
dayOfWeek200:Sunday~6:SábadoNot supporteddisplayed as0
dia20day*/Not supporteddisplayed as0
hora20Hour*/
minuto20minute*/
segundo20Second*/
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 reserva
f32Distance4 Measure distance
refTemp4 Reflected temperature,Switch based on reflected temperature
emissionRate4 Emissivity, [0.00, 1.0]
envTemp4 temperatura ambiente,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  
e4  
u32TempMode4 0:Expert temperature measurement, 1:Ordinary temperature measurement
resv[5]20 reserva
pointNum4 Number of temperature measurement points,maximum10indivual
boxNum4 Number of frame temperature measurements,maximum10indivual
lineNum4 Number of line temperature measurement lines,most1strip
total4 The sum of the three parties
reservado[8]32 reserva
IFR_OUTCOME_INFO*21(temperature measurement result)
habilitar1 //<Whether to enable: 0-não,1-sim
regionld1 //<areaID
reservado[2]   2 //<reserved fields
reftemp4                                    
reservedex[20]1 //<reserved fields
f32Distance4 //<distância
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
nome[32] 32 area name
emissionRate  //<Emissivity: [0.00, 1.00]                
minTmp  //<temperatura mínima: [-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  
e4  
pointNum4 Actual number of vertices of the polygon (polygon area)
IFR_POINT*12(polygon area) coordinates
X4  
e4  
 uploadType11Real-time data upload type-Full-screen temperature measurement real-time upload data type 0-JPEG;1-YUV
 res[11]440reservado
 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, e 640 X 512.
The detection distance is 150 meters and 300 metros.
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

Faça uma pergunta

← Voltar

Sua mensagem foi enviada