Curtain wall panel positioning confirmation method and device, electronic equipment and storage medium
By acquiring data queues using ultrasonic sensors and performing frequency domain analysis, the problem of low positioning accuracy in glass curtain walls has been solved, achieving high-precision positioning of curtain wall panels and resistance to deformation, thereby improving installation quality and safety.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HEBEI AEROSPACE INFORMATION INVESTMENT HOLDING CO LTD
- Filing Date
- 2025-12-31
- Publication Date
- 2026-04-17
AI Technical Summary
In existing technologies, the positioning of glass curtain walls relies on manual measurement, resulting in low positioning accuracy and a high susceptibility to errors. Furthermore, traditional installation techniques are unable to provide sufficient resistance to deformation, posing safety hazards.
Multiple data queues are acquired using ultrasonic sensors. Position equations are constructed through frequency domain analysis and time difference information to determine the position of the ultrasonic transmitting device. Based on these positions, the tilt angle of the curtain wall panel is confirmed, achieving high-precision positioning.
It improves the positioning accuracy of curtain wall panels, ensures installation quality and safety, enhances resistance to deformation, and reduces human error and safety hazards.
Smart Images

Figure CN121878700A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of glass curtain wall installation and positioning technology, and in particular to a method, device, electronic device and storage medium for confirming the positioning of curtain wall panels. Background Technology
[0002] Glass curtain walls, as a modern and technologically advanced architectural facade, are widely used in various high-rise buildings. They not only provide excellent natural lighting and reduce indoor lighting energy consumption, but also effectively reduce indoor-outdoor temperature differences, achieving energy conservation and improving the overall performance and quality of the building. Exposed-frame glass curtain walls, as a common type of curtain wall, are widely used in numerous construction projects due to their clear structure and convenient installation.
[0003] However, several problems urgently need to be addressed during the installation of exposed-frame glass curtain walls. These problems severely affect the installation quality, performance, and overall safety and durability of the building, limiting the further development and widespread application of exposed-frame glass curtain wall technology. In large buildings, the glass curtain walls are large in size and heavy in weight, requiring highly precise positioning and stable adhesion during installation to ensure construction safety and quality.
[0004] Current technologies for positioning glass curtain walls primarily rely on manual measurement and mechanical fixing, which is not only inefficient but also prone to inaccurate positioning due to human error. Furthermore, glass curtain walls must withstand external forces such as wind loads and seismic forces during installation and use, placing higher demands on their resistance to deformation. Traditional installation techniques often fail to provide sufficient resistance to deformation, potentially leading to safety hazards such as displacement, deformation, or even detachment of the glass curtain wall during use.
[0005] Therefore, it is necessary to develop a method for confirming the positioning of curtain wall panels. Summary of the Invention
[0006] The present invention provides a method, apparatus, electronic device and storage medium for confirming the positioning of curtain wall panels, which solves the problem of low positioning accuracy of manual measurement in the prior art.
[0007] In a first aspect, embodiments of the present invention provide a method for confirming the positioning of a curtain wall panel, comprising: Acquire multiple first ultrasonic data queues, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms; Each first ultrasonic data queue is parsed, and the obtained first time difference information representing the ultrasonic transmission and reception time difference is constructed into a first time difference array, wherein each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. The location of each ultrasonic transmitter is determined based on multiple first time difference arrays and the locations of multiple ultrasonic receivers; The first and second tilt angles of the curtain wall panel are confirmed based on the positions of multiple ultrasonic transmitting devices.
[0008] In one possible implementation, parsing each first ultrasonic data queue and constructing a first time difference array from the obtained multiple first time difference information representing the ultrasonic transceiver time difference includes: For each first ultrasound data queue, perform the following steps: Extract the identifiers of the ultrasonic transmitters traversally as identifiers to be processed; Based on the identifier to be processed, extract multiple first subcarrier frequencies of the ultrasonic transmitting device; Based on the multiple first subcarrier frequencies, multiple first data segments are extracted from the first ultrasonic data queue through frequency domain analysis. The multiple first data segments are concatenated to obtain first information; Extract the first transmission time of the ultrasonic wave from the first information; Based on the time of receiving the first information and the time of sending the first information, the first transmit / receive time difference information is determined, and the first transmit / receive time difference information and the identifier to be processed are added to the first time difference array.
[0009] In one possible implementation, the step of extracting multiple first data segments from the first ultrasonic data queue through frequency domain analysis based on the multiple first subcarrier frequencies includes: Extract a sub-queue containing the first subcarrier frequency from the first ultrasonic data queue, and use the reception time of the sub-queue as the first reception time; Obtain the basic subcarrier frequency, wherein the first subcarrier frequency is an integer multiple of the basic subcarrier frequency; The second data segment is extracted from the sub-queue based on each first subcarrier, the basic subcarrier frequency, and a first formula, wherein the first formula is:
[0010] In the formula, According to the first The second data segment extracted from the first subcarrier One data point, The number of ultrasonic data samples corresponding to each bit of data. For the first in the sub-queue One data point, The imaginary unit, It is a natural constant. Pi For the basic subcarrier frequency, The number of ultrasonic data samples corresponding to the duration of the basic subcarrier period; Extract the median of the second data segment as the segmentation threshold; The data in the second data segment is binarized according to the segmentation threshold to obtain the first data segment.
[0011] In one possible implementation, determining the position of each ultrasonic transmitter based on a plurality of first time difference arrays and the positions of a plurality of ultrasonic receivers includes: The propagation speed of ultrasound in the medium is obtained as the first velocity; For each ultrasonic transmitter, perform the following steps: Based on the identifier of the ultrasonic transmitting device, the first time difference corresponding to the ultrasonic device is extracted from the plurality of first time difference arrays respectively, and used as a plurality of target time differences; The multiple target time differences are multiplied by the first velocity to obtain multiple first distances, wherein each first distance corresponds to an ultrasonic receiving device; Based on the plurality of first distances, a positional equation is constructed regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the relationship between the first distances; The position of the ultrasonic transmitting device is determined according to the position equation.
[0012] In one possible implementation, constructing a position equation regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the relationship between the first distances based on the plurality of first distances includes:
[0013] In the formula, This indicates the location of the ultrasonic transmitter. For the first The location of the ultrasonic receiver. For ultrasonic transmitting device to the first The distance between the ultrasonic receivers.
[0014] In one possible implementation, confirming the first and second tilt angles of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices includes: Based on the positions of the plurality of ultrasonic transmitting devices, a first vector and a second vector are constructed, wherein the first vector and the second vector are not parallel; Based on the first vector and the second vector, construct the normal vector of the curtain wall panel plane; Based on the normal vector, calculate the angle between the curtain wall panel and the first reference plane and the angle between the curtain wall panel and the second reference plane, and use them as the first angle and the second angle. The first tilt angle and the second tilt angle of the curtain wall panel are confirmed based on the first included angle and the second included angle.
[0015] In one possible implementation, calculating the angles between the curtain wall panel and the first reference plane and the second reference plane, based on the normal vector, as the first angle and the second angle, includes:
[0016] In the formula, The first included angle, The second included angle, Let be the normal vector of the curtain wall panel plane. Let be the first vector. For the second vector, It is an arcsine function.
[0017] In a second aspect, embodiments of the present invention provide a curtain wall panel positioning confirmation device for implementing the curtain wall panel positioning confirmation method as described in the first aspect or any possible implementation thereof, the curtain wall panel positioning confirmation device comprising: An ultrasonic acquisition module is used to acquire multiple first ultrasonic data queues, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms. The data parsing module is used to parse each first ultrasonic data queue and construct a first time difference array from the multiple first time difference information representing the ultrasonic transceiver time difference. Each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. An ultrasonic positioning module is used to determine the position of each ultrasonic transmitter based on multiple first time difference arrays and the positions of multiple ultrasonic receivers. as well as, The panel positioning confirmation module is used to confirm the first tilt angle and the second tilt angle of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices.
[0018] Thirdly, embodiments of the present invention provide an electronic device, including a memory and a processor, wherein the memory stores a computer program executable on the processor, and the processor executes the computer program to implement the steps of the method as described in the first aspect or any possible implementation of the first aspect.
[0019] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method as described in the first aspect or any possible implementation thereof.
[0020] The beneficial effects of the embodiments of the present invention compared with the prior art are as follows: This invention discloses a method for confirming the positioning of a curtain wall panel. First, it acquires multiple first ultrasonic data queues, each corresponding to an ultrasonic receiving device. Each first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms. Then, it parses each first ultrasonic data queue, constructing a first time difference array from the multiple first time difference information representing the ultrasonic transmission and reception time differences. Each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. Next, based on the multiple first time difference arrays and the positions of the multiple ultrasonic receiving devices, the position of each ultrasonic transmitting device is determined. Finally, based on the positions of the multiple ultrasonic transmitting devices, the first and second tilt angles of the curtain wall panel are confirmed. This method is based on ultrasonic transmission information and completes the positioning of the curtain wall panel plane based on the ultrasonic transmission process. Due to the unified reference and good straightness of the ultrasonic transmission process, the positioning accuracy is high, and it is easy to operate and apply. Attached Figure Description
[0021] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a flowchart of the curtain wall panel positioning confirmation method provided in the embodiments of the present invention; Figure 2 This is an application scenario diagram of the curtain wall panel positioning confirmation method provided by the embodiments of the present invention; Figure 3 This is a schematic diagram of the ultrasonic synthesis waveform provided in the embodiments of the present invention; Figure 4This is a functional block diagram of the curtain wall panel positioning confirmation device provided in the embodiments of the present invention; Figure 5 This is a functional block diagram of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0023] In the following description, specific details such as particular system structures and techniques are set forth for illustrative purposes and not for limitation, so as to provide a thorough understanding of embodiments of the invention. However, those skilled in the art will understand that the invention can be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, and methods are omitted so as not to obscure the description of the invention with unnecessary detail.
[0024] To make the objectives, technical solutions, and advantages of the present invention clearer, specific embodiments will be described below in conjunction with the accompanying drawings.
[0025] The embodiments of the present invention will be described in detail below. This example is implemented based on the technical solution of the present invention, and provides detailed implementation methods and specific operation processes. However, the protection scope of the present invention is not limited to the following embodiments.
[0026] Figure 1 A flowchart of a curtain wall panel positioning confirmation method provided for an embodiment of the present invention.
[0027] like Figure 1 As shown, a flowchart illustrating the implementation of the curtain wall panel positioning confirmation method provided by an embodiment of the present invention is presented, and is described in detail below: In step 101, a plurality of first ultrasonic data queues are acquired, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing a plurality of ultrasonic waveforms.
[0028] In step 102, each first ultrasonic data queue is parsed, and the obtained first time difference information representing the ultrasonic transmission and reception time difference is constructed into a first time difference array, wherein each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device.
[0029] In some implementations, parsing each first ultrasonic data queue and constructing a first time difference array from the obtained multiple first time difference information representing the ultrasonic transceiver time difference includes: For each first ultrasound data queue, perform the following steps: Extract the identifiers of the ultrasonic transmitters traversally as identifiers to be processed; Based on the identifier to be processed, extract multiple first subcarrier frequencies of the ultrasonic transmitting device; Based on the multiple first subcarrier frequencies, multiple first data segments are extracted from the first ultrasonic data queue through frequency domain analysis. The multiple first data segments are concatenated to obtain first information; Extract the first transmission time of the ultrasonic wave from the first information; Based on the time of receiving the first information and the time of sending the first information, the first transmit / receive time difference information is determined, and the first transmit / receive time difference information and the identifier to be processed are added to the first time difference array.
[0030] In some implementations, the step of extracting multiple first data segments from the first ultrasonic data queue through frequency domain analysis based on the multiple first subcarrier frequencies includes: Extract a sub-queue containing the first subcarrier frequency from the first ultrasonic data queue, and use the reception time of the sub-queue as the first reception time; Obtain the basic subcarrier frequency, wherein the first subcarrier frequency is an integer multiple of the basic subcarrier frequency; The second data segment is extracted from the sub-queue based on each first subcarrier, the basic subcarrier frequency, and a first formula, wherein the first formula is:
[0031] In the formula, According to the first The second data segment extracted from the first subcarrier One data point, The number of ultrasonic data samples corresponding to each bit of data. For the first in the sub-queue One data point, The imaginary unit, It is a natural constant. Pi For the basic subcarrier frequency, The number of ultrasonic data samples corresponding to the duration of the basic subcarrier period; Extract the median of the second data segment as the segmentation threshold; The data in the second data segment is binarized according to the segmentation threshold to obtain the first data segment.
[0032] For example, such as Figure 2As shown in the figure, this figure illustrates a typical application scenario of the method of the present invention. At least three non-collinear ultrasonic transmitting devices 202 are provided on the curtain wall panel 201 in the figure. Correspondingly, at a fixed position, such as the ground, at least three non-collinear ultrasonic receiving devices 203 are provided. The coordinates of the three ultrasonic receiving devices 203 are known.
[0033] The ultrasonic transmitter 202 and the ultrasonic receiver 203 operate on strictly synchronized clocks. The ultrasonic transmitter 202 transmits ultrasonic waves carrying the transmission time and its own identification information. For a specific ultrasonic receiver 203, upon receiving the ultrasonic wave, it records the time of reception and samples the wave to form a first ultrasonic data queue. By parsing the first ultrasonic data queue, the identifier of the transmitting device and the transmission time can be extracted. Therefore, the time difference of ultrasonic wave propagation between the transmitting and receiving devices can be determined, and the distance between them can be further determined.
[0034] For a given ultrasonic transmitter 202, the distance from it to the three ultrasonic receivers 203 is known. By combining the positions of the three ultrasonic receivers 203, we can determine the position of the ultrasonic transmitter 202.
[0035] Once the positions of the three ultrasonic transmitters 202 are determined, we can determine the tilt angle of the curtain wall panel 201 by using the positions of the three ultrasonic transmitters 202, thus confirming the positioning of the curtain wall panel.
[0036] In reality, an ultrasonic transmitter is a waveform that uses ultrasonic waves as a carrier and carries multiple subcarriers. These multiple subcarriers are pre-assigned different subcarrier frequencies based on a common fundamental frequency. For example, the subcarrier frequency is 500Hz (0.5kHz). The multiple subcarrier frequencies of a certain ultrasonic transmitter are 1, 1.5, 2...kHz. Before transmitting data, the data is divided into multiple data segments, each carried by multiple subcarriers. The subcarriers are combined to form a composite waveform, which is then up-converted to ultrasonic waves for transmission (e.g., a composite waveform at 30kHz).
[0037] Upon receiving an ultrasonic waveform, the ultrasonic waveform is first down-converted (received waveform - 30kHz). The waveform obtained after down-conversion is then sampled to form the first ultrasonic data queue.
[0038] The following section will discuss the application scenarios described above in detail.
[0039] First, the ultrasonic data acquisition system is activated to simultaneously acquire multiple first ultrasonic data queues. These first ultrasonic data queues correspond one-to-one with the ultrasonic receiving devices deployed in the system; each receiving device independently acquires ultrasonic signals within its detection range and stores the acquired signals in a queue, forming its own dedicated first ultrasonic data queue. It's important to note that the core component of each first ultrasonic data queue is a first array representing multiple ultrasonic waveforms. This array not only contains key waveform information such as the amplitude and phase of the ultrasonic signal but also synchronously records the acquisition timestamp corresponding to each waveform data, providing a time reference for subsequent time difference calculations. By acquiring data in parallel through multiple receiving devices, comprehensive coverage of the detection area can be achieved, while providing ample data support for subsequent multi-source data fusion analysis, effectively improving the system's anti-interference capability and data redundancy.
[0040] After acquiring the multi-channel ultrasonic data queues, the data parsing phase begins. The core objective of this step is to perform targeted parsing on each first ultrasonic data queue, extracting the first time difference information representing the ultrasonic transceiver time difference from the complex waveform data, and then organizing all extracted first time difference information into a first time difference array. It is important to emphasize that each first time difference information has a clear correspondence, i.e., it is associated with both an ultrasonic receiver and an ultrasonic transmitter. This association ensures accurate matching of the transceiver pair during subsequent positioning and ranging based on the time difference information, avoiding data confusion. The construction of the first time difference array essentially involves structured integration of scattered time difference information, facilitating rapid data retrieval and batch processing by subsequent algorithms, laying the foundation for improving the overall system's computational efficiency.
[0041] Detailed construction process of the first time difference array In practical engineering applications, to ensure the accuracy and comprehensiveness of time difference information extraction, for each first ultrasonic data queue, the parsing operation needs to be performed step by step according to the following detailed steps to finally complete the construction of the first time difference array: Extracting identifiers to be processed: Each ultrasonic transmitter deployed in the system has a unique identifier (such as device number, dedicated frequency band code, etc.). First, following a preset traversal order (such as ascending order of device number, or order of signal transmission priority, etc.), the identifiers of the ultrasonic transmitters are extracted one by one from the system's preset transmitter identifier list, and the currently extracted identifier is defined as the identifier to be processed. The core purpose of this step is to identify the target transmitter in the current parsing stage, ensuring that subsequent data extraction and processing can accurately focus on the ultrasonic signals transmitted by that device, avoiding interference between signals from different transmitters.
[0042] Extracting the first subcarrier frequency of the target transmitting device: Based on the identifier to be processed determined in the preceding steps, the system's device parameter configuration library is used to query and extract multiple first subcarrier frequencies corresponding to the ultrasonic transmitting device. In ultrasonic communication systems, multi-subcarrier modulation technology is typically used to improve signal anti-interference capability and transmission efficiency. Each transmitting device corresponds to a specific set of subcarrier frequencies for signal transmission. These subcarrier frequencies are key features that distinguish signals from different transmitting devices. Therefore, accurately extracting the first subcarrier frequency is a prerequisite for subsequent signal separation and analysis.
[0043] Extracting the first data segment based on frequency domain analysis: Multiple first subcarrier frequencies extracted in the aforementioned process are used to selectively extract multiple first data segments corresponding to each first subcarrier frequency from the currently processed first ultrasonic data queue using frequency domain analysis. Since ultrasonic signals are affected by environmental noise (such as air turbulence, obstacle reflection interference, etc.) during transmission, direct data extraction in the time domain is susceptible to noise interference. However, frequency domain analysis decomposes the signal into a frequency dimension, enabling precise separation of the effective signal corresponding to the target subcarrier frequency, thereby improving the purity of the extracted data.
[0044] Data segment splicing to obtain the first information: The multiple first data segments extracted in the aforementioned process are sequentially spliced according to their corresponding subcarrier frequency order or signal transmission timing. Since each first data segment corresponds to only a portion of the signal information, splicing can integrate scattered effective signal fragments into complete information that can characterize a single signal transmission process of the target transmitting device, i.e., the first information. During the splicing process, the timing consistency of the data segments must be strictly ensured to avoid signal information distortion due to incorrect splicing order, which would affect the accuracy of subsequent transmission timing extraction.
[0045] Extracting the First Transmission Time: Accurately extract the first transmission time of the ultrasonic signal from the first information obtained through splicing. In actual system design, the transmitting device embeds a specific timestamp identifier (such as marking the transmission time through a specific signal modulation mode) into the transmitted ultrasonic signal. Therefore, the extraction process requires a preset timestamp parsing algorithm to identify and parse the timestamp from the first information, thereby determining the first transmission time. The accuracy of the first transmission time extraction directly affects the accuracy of subsequent time difference calculations; therefore, a high-precision time parsing algorithm must be used to minimize time extraction errors.
[0046] Calculate the time difference and update the first time difference array: First, obtain the reception time corresponding to the current first information (this time has been synchronously recorded in the timestamp of the first ultrasonic data queue). Then, calculate the first transmit / receive time difference information representing this ultrasonic transmission and reception process by using the difference between the reception time and the extracted first transmission time. Finally, associate the calculated first transmit / receive time difference information with the corresponding pending identifier (i.e., the target transmitting device identifier) and add them together to the first time difference array. Repeat the above steps until all transmitting device identifiers corresponding to the current first ultrasonic data queue have been traversed and processed, and finally obtain the complete first time difference array.
[0047] Detailed process for extracting the first data segment using frequency domain analysis In the process of extracting the first data segment through frequency domain analysis described above, in order to further improve the accuracy of effective signal extraction, the following more detailed steps need to be performed: Sub-queue extraction and first reception time record: First, the first ultrasonic data queue being processed is traversed and filtered to extract continuous data segments containing the target first subcarrier frequency, and these data segments are defined as subqueues.
[0048] like Figure 3 As shown in the figure, the target waveform 301 carrying the first subcarrier frequency of the target (the first ultrasonic data queue is acquired based on this waveform). In fact, the target waveform 301 is a composite waveform of multiple subcarriers, that is, a waveform formed by merging multiple frequency subcarriers (the aforementioned waveforms formed by merging 1, 1.5, 2…kHz waveforms). Therefore, the starting point tn of the target waveform 301 is the start time of receiving the target waveform 301. The waveform is segmented to carry 0 or 1 data, and its length is predetermined, for example, length tl. During parsing, the target waveform 301 will be divided into multiple waveform segments, each carrying one bit of data. The sampled data queue is similarly divided. In the figure, the target waveform 301 is divided into 8 segments, with a duration spanning from tn to tn+8.
[0049] The timestamp of the first data acquisition in this sub-queue is recorded as the first reception time (tn), which will serve as one of the important time bases for subsequent time difference calculations. The filtering process here requires the use of a frequency matching algorithm. By comparing the frequency characteristics of each data point in the data queue with the frequency of the target first subcarrier, the start and end positions of the sub-queue are determined to ensure that the extracted sub-queue completely contains the effective signal corresponding to the target subcarrier.
[0050] Basic subcarrier frequency acquisition Query the system's preset communication parameters to obtain the basic subcarrier frequency. In the multi-subcarrier modulation scheme of this system, all first subcarrier frequencies are set to integer multiples of the basic subcarrier frequency (i.e., the first subcarrier frequency). The first subcarrier frequency , (where the integer is positive). The core advantage of this design lies in simplifying the signal separation algorithm in the frequency domain analysis process. By using the integer multiples of the basic subcarrier frequencies, different subcarrier signals can be quickly distinguished and extracted, reducing the computational complexity of the system.
[0051] Extract the second data segment based on the first formula: For each first subcarrier frequency, combine the basic subcarrier frequency... Based on the preset first formula, the corresponding second data segment is extracted from the extracted sub-queue. The specific expression of the first formula and the meaning of each parameter are as follows:
[0052] In the formula, According to the first The second data segment extracted from the first subcarrier One data point, The number of ultrasonic data samples corresponding to each bit of data. For the first in the sub-queue One data point, The imaginary unit, It is a natural constant. Pi For the basic subcarrier frequency, This represents the number of ultrasonic data samples corresponding to the duration of the basic subcarrier period.
[0053] : indicates according to the first The second data segment extracted from the first subcarrier frequency These data points are the core intermediate data after frequency domain analysis; : Indicates the ultrasonic data sampling amount corresponding to each bit of data. Its value is determined by the system's sampling frequency and data transmission rate. It is preset to a fixed value to ensure that each bit of data can be fully sampled and to guarantee the integrity of the signal information. : indicates the first subqueue extracted in step 1. Each raw data point contains the amplitude and phase information of the signal; : Indicates the acquired basic subcarrier frequency, which is the reference frequency for frequency domain analysis; : Represents the data index in the sub-queue, with a value range from arrive This corresponds to the sampling interval for each bit of data; : Represents the number of ultrasonic data samples corresponding to the duration of the basic subcarrier period, and its calculation formula is as follows: (in The sampling frequency of the system, (The period duration of the basic subcarrier) is used to convert parameters in the frequency dimension into parameters in the data sampling dimension, ensuring consistency in the formula calculation.
[0054] Determine the segmentation threshold: Perform statistical analysis on the extracted second data segment, calculate the median of all data points in the segment, and set this median as the segmentation threshold. The reason for choosing the median as the segmentation threshold is that the median has strong robustness to outliers in the data (such as extreme data caused by sudden noise interference), can more accurately reflect the overall data distribution characteristics of the second data segment, and avoids deviations in threshold setting due to outliers.
[0055] Binarization processing yields the first data segment: Based on a determined segmentation threshold, binarization processing is performed on each data point in the second data segment. The specific processing rule is: if the value of a data point is greater than or equal to the segmentation threshold, it is converted to 1; if the value of a data point is less than the segmentation threshold, it is converted to 0. Binarization further simplifies the data characteristics, converting continuous frequency domain data into discrete binary data, i.e., the first data segment. This data segment clearly represents the modulation information of the target ultrasonic signal, providing a concise and clear data foundation for subsequent data splicing and transmission time extraction.
[0056] In step 103, the position of each ultrasonic transmitter is determined based on multiple first time difference arrays and the positions of multiple ultrasonic receivers.
[0057] In some implementations, determining the position of each ultrasonic transmitter based on a plurality of first time difference arrays and the positions of a plurality of ultrasonic receivers includes: The propagation speed of ultrasound in the medium is obtained as the first velocity; For each ultrasonic transmitter, perform the following steps: Based on the identifier of the ultrasonic transmitting device, the first time difference corresponding to the ultrasonic device is extracted from the plurality of first time difference arrays respectively, and used as a plurality of target time differences; The multiple target time differences are multiplied by the first velocity to obtain multiple first distances, wherein each first distance corresponds to an ultrasonic receiving device; Based on the plurality of first distances, a positional equation is constructed regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the relationship between the first distances; Determine the position of the ultrasonic transmitting device according to the position equation.
[0058] In some embodiments, the constructing the position equation regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the first distance relationship according to the plurality of first distances includes:
[0059] In the formula, is the position of the ultrasonic transmitting device, is the position of the th ultrasonic receiving device, is the distance from the ultrasonic transmitting device to the
[0060] th ultrasonic receiving device. Obtain the first speed (ultrasonic medium propagation speed): First, obtain the propagation speed of ultrasonic waves in the current propagation medium and define it as the first speed. The propagation speed of ultrasonic waves is significantly affected by environmental factors such as medium type, temperature, and pressure (for example, in the air at 20°C, the ultrasonic propagation speed is about 343 m / s; in water, it is about 1500 m / s). Therefore, the accuracy of this speed parameter is crucial. In practical applications, the first speed can be obtained in two ways: one is based on a preset medium parameter library and query the corresponding standard propagation speed according to the current environmental monitoring data (such as the environmental temperature collected by a temperature sensor); the other is through a calibration module built into the system, using a transceiver pair with a known distance for real-time measurement and calibration to eliminate the speed deviation caused by environmental factors and further improve the accuracy of subsequent distance calculations.
[0061] To ensure the accuracy and reliability of the calculation of the position of the transmitting device, the following standardized steps need to be performed, which mainly include five key links: propagation speed acquisition, target time difference extraction, distance conversion, equation construction, and position solution. Extracting Multiple Target Time Differences: Based on the unique identifier of the currently traversed ultrasonic transmitter, extract the first time difference information matching the identifier from the multiple first time difference arrays constructed earlier. Define these extracted time difference sets as multiple target time differences. It should be noted that the multiple first time difference arrays correspond to different ultrasonic receivers. Therefore, each target time difference uniquely associates a receiver with the currently processed transmitter; that is, each target time difference represents the "time difference between the arrival of the ultrasonic signal transmitted by the current transmitter at a certain receiver," providing a foundation for subsequent acquisition of multi-dimensional distance data. During the extraction process, accurate matching by identifier is necessary to exclude invalid or erroneous time difference data (such as abnormal time differences caused by signal interference) to ensure the validity of the target time differences.
[0062] Process each ultrasonic transmitter: Since there may be multiple ultrasonic transmitters working simultaneously in the system, each ultrasonic transmitter needs to be traversed in a preset order (such as in ascending order of device identifiers) to complete an independent position solution for each transmitter, thus avoiding data confusion between multiple devices.
[0063] Constructing a position equation: Based on the obtained first distances and the known positions of each ultrasonic receiver, a position equation for the position of the ultrasonic transmitter is constructed. The core principle of this equation is the distance formula between two points in space. By establishing a coordinate system, the positions of the transceiver devices are transformed into coordinate parameters, and a mathematical model is constructed using distance constraints.
[0064] Multiple first distances are obtained by conversion: Each extracted target time difference is multiplied by a first velocity to obtain multiple first distances. From a physical perspective, this calculation is based on the "uniform linear motion distance formula (distance = velocity × time)," where each first distance corresponds to the straight-line propagation distance from the current ultrasonic transmitter to a specific ultrasonic receiver. For example, if the target time difference is 0.002s and the first velocity is 343m / s, then the corresponding first distance is 343m / s × 0.002s = 0.686m, meaning the straight-line distance between the transmitter and receiver is approximately 0.686m. During the calculation, it is crucial to ensure that the units of velocity and time are consistent (e.g., velocity in m / s, time in s, distance in m) to avoid data distortion due to unit mismatch.
[0065] Specific Implementation Method Four: Construction Principles and Details of Position Equations Determining the transmitter's location by solving the position equation: The constructed position equation is solved to obtain the coordinate parameters of the ultrasonic transmitter, thus determining its specific location. Since multiple receiving devices can provide multiple sets of distance constraints (typically ≥3 devices, forming an overdetermined system of equations), optimization algorithms such as the least squares method are often used in practice to reduce the impact of measurement errors on the positioning results and improve the accuracy and stability of the position solution. After the solution is completed, the result can be compared with a preset position threshold to determine if the positioning is valid (e.g., whether it is within a reasonable detection range). If invalid, the process returns to re-extract the target time difference or calibrate the first velocity to ensure the reliability of the positioning result.
[0066] First, a global three-dimensional Cartesian coordinate system is established. The position of each ultrasonic receiver is pre-calibrated and stored as fixed coordinates (these coordinates can be obtained through system initialization calibration, such as by measuring with a high-precision positioning device and then entering them into the device parameter database). Assuming there are M ultrasonic receivers deployed in the system (M≥3, ensuring a unique positional solution), the unknown coordinates of the currently processed ultrasonic transmitter are: The known coordinates of the m-th ultrasonic receiver are: (m=1,2,...,M), the converted transmitting device to the nth The first distance between the receiving devices is Then, the position equation can be directly derived from the formula for the distance between two points in three-dimensional space: The core of the position equation construction process is to derive a standardized equation based on the distance formula between two points in three-dimensional space. This equation quantifies the spatial positional relationship of the transceiver devices through coordinate parameters, providing a clear mathematical model for subsequent solutions. The specific construction logic and parameter descriptions are as follows:
[0067] In the formula, This indicates the location of the ultrasonic transmitter. For the first The location of the ultrasonic receiver. For ultrasonic transmitting device to the first The distance between the ultrasonic receivers.
[0068] The detailed physical meaning and application explanation of each parameter in the formula are as follows: : No. The known coordinates of the ultrasonic receiver are part of the system's preset reference parameters. In actual deployment, to improve positioning accuracy, the coordinates of the receiver need to be precisely calibrated, and the calibration error typically needs to be controlled within the millimeter level. The spatial coordinates of the ultrasonic transmitting device to be solved in the global three-dimensional coordinate system correspond to the x-axis, y-axis and z-axis components of the coordinate system, respectively. These coordinates are the core results that need to be determined in step 103, and their accuracy directly reflects the performance index of the positioning system. The core logic of the equation: This equation essentially describes "with the first..." The receiving device is the center of the sphere, "A sphere with radius M" is defined, with multiple receiving devices corresponding to multiple spheres. The actual position of the ultrasonic transmitting device is the intersection point of these multiple spheres. When M=3, if the three spheres have no overlap error, a unique intersection point (i.e., the coordinates of the transmitting device) can be directly obtained. When M>3, an overdetermined system of equations is formed, and the optimal solution needs to be found through optimization algorithms. Data redundancy is used to improve the anti-interference capability of positioning.
[0069] : Ultrasonic transmitting device to the first The straight-line distance between the receiving devices is calculated by converting "first velocity × corresponding target time difference", which is the key constraint connecting unknown coordinates and known coordinates. The accuracy is affected by both the accuracy of time difference extraction and the accuracy of the first speed. Therefore, the errors in the time difference analysis and speed calibration steps mentioned above must be strictly controlled. In the actual construction process, attention must also be paid to the coordinate system uniformity issue: the coordinates of all receiving and transmitting devices must be based on the same global coordinate system to avoid the failure of equation construction due to inconsistencies in coordinate systems. At the same time, it is necessary to... Perform outlier detection (e.g., remove distance data that exceeds a reasonable range using the 3σ criterion) to avoid outliers causing equations to have no solution or excessively biased solutions.
[0070] In step 104, the first tilt angle and the second tilt angle of the curtain wall panel are confirmed based on the positions of the multiple ultrasonic transmitting devices.
[0071] In some embodiments, confirming the first and second tilt angles of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices includes: Based on the positions of the plurality of ultrasonic transmitting devices, a first vector and a second vector are constructed, wherein the first vector and the second vector are not parallel; Based on the first vector and the second vector, construct the normal vector of the curtain wall panel plane; Based on the normal vector, calculate the angle between the curtain wall panel and the first reference plane and the angle between the curtain wall panel and the second reference plane, and use them as the first angle and the second angle. The first tilt angle and the second tilt angle of the curtain wall panel are confirmed based on the first included angle and the second included angle.
[0072] In some embodiments, calculating the angle between the curtain wall panel and the first reference plane and the angle with the second reference plane, based on the normal vector, as the first angle and the second angle, includes:
[0073] In the formula, The first included angle, The second included angle, Let be the normal vector of the curtain wall panel plane. Let be the first vector. For the second vector, It is an arcsine function.
[0074] For example, after locating all ultrasonic transmitters, the core step of curtain wall panel attitude detection—confirmation of the first and second tilt angles—begins. In engineering scenarios such as curtain wall installation accuracy monitoring and deformation monitoring, the tilt angle of the curtain wall panel directly affects its structural stability, waterproof sealing, and appearance flatness. By setting multiple ultrasonic transmitters on the curtain wall panel, they can be equivalent to feature points on the panel. The planar attitude constructed by these feature points characterizes the attitude of the curtain wall panel. The core logic of this step is: using the positions of multiple transmitters to construct feature vectors of the panel plane, obtaining the plane normal vector through vector operations, and then combining this with a preset reference plane to calculate the included angle, ultimately confirming the double tilt angles. The specific process and implementation method are as follows: Detailed confirmation process for double tilt angle of curtain wall panels To ensure the accuracy of the tilt angle confirmation, it is necessary to proceed step by step based on the spatial relationship of the feature point positions, following the logic of "vector construction → normal vector solution → angle calculation → tilt angle confirmation". The specific sub-steps are as follows: Constructing Non-Parallel First and Second Vectors: First, select at least three non-collinear points (denoted as P1, P2, P3, etc.) from multiple ultrasonic transmitter locations. Then, construct two non-parallel spatial vectors—the first and second vectors—by combining any two different points. Key points to note: ① The requirement for fixed transmitters—multiple transmitters must be evenly distributed on the curtain wall panel and not collinear, ensuring the constructed vectors fully represent the panel's planar orientation; ② Vector construction rules—for example, constructing the first vector with P1 as the starting point and P2 as the ending point, and the second vector with P1 as the starting point and P3 as the ending point, can be expressed as: First vector = P2 - P1, Second vector = P3 - P1; ③ The significance of non-parallel constraints—if two vectors are parallel, a unique plane cannot be determined through vector operations (parallel vectors can only represent the direction of a straight line). Only non-parallel vectors can uniquely determine their plane (i.e., the curtain wall panel plane). Therefore, the non-parallelism must be verified through vector dot product (the dot product result is neither 1 nor -1, i.e., the included angle is neither 0° nor 180°).
[0075] The normal vector of the curtain wall panel plane is constructed based on two vectors: According to the principles of spatial geometry, the normal vector of the plane containing two non-parallel vectors can be obtained by performing a cross product operation on these two vectors. The core characteristic of the cross product operation is that the result (normal vector) is perpendicular to both input vectors simultaneously, and its direction follows the right-hand screw rule, which accurately represents the vertical orientation of the panel plane. In actual calculations, the first and second vectors need to be converted into three-dimensional coordinate component forms (e.g., first vector = ...). The second vector = Then, the three components of the normal vector are calculated using the cross product formula. This completes the construction of the normal vector. The normal vector is a core intermediate parameter for subsequent calculations of the angle between the panel and the reference plane; its direction and magnitude directly affect the accuracy of the angle calculation.
[0076] Calculate the first and second angles between the panel and the two reference planes: Pre-set two mutually perpendicular reference planes (usually coordinate planes of the global coordinate system, such as the XY plane as the first reference plane and the XZ plane as the second reference plane, adapting to the "horizontal-vertical" tilt angle monitoring requirements in engineering). Combined with the obtained normal vectors, calculate the angles between the curtain wall panel plane and the two reference planes, i.e., the first angle and the second angle. The core principle of this step is that the angle between a plane and a reference plane is equivalent to the supplementary angle (or complementary angle) of the angle between the normal vectors of the two planes. Trigonometric function operations can transform the component relationships of the normal vectors into plane angles.
[0077] The first and second tilt angles are determined based on the double included angles: Since the first included angle corresponds to the degree of tilt of the curtain wall panel relative to the first reference plane, and the second included angle corresponds to the degree of tilt relative to the second reference plane, the first included angle can be directly defined as the first tilt angle of the curtain wall panel, and the second included angle as the second tilt angle. It should be noted that a tilt angle threshold needs to be preset in the project (e.g., the installation accuracy requires a tilt angle deviation of no more than 0.5°). The confirmed tilt angle needs to be compared with the threshold. If it exceeds the threshold, the curtain wall panel's posture is considered abnormal and adjustment is required; if it is within the threshold range, the posture is considered acceptable.
[0078] Explanation of the formula, principle, and details for calculating included angles. The calculation of the "angle between the curtain wall panel and the reference plane" needs to be achieved through a standardized formula. This formula is based on the component relationship of the vector cross product and the derivation of the arcsine function, which can accurately transform the characteristics of the normal vector into the plane angle. The specific formula, parameter meanings, and calculation logic are as follows: Core calculation formula set:
[0079] In the formula, The first included angle, The second included angle, Let be the normal vector of the curtain wall panel plane. Let be the first vector. For the second vector, Arcsine function The detailed physical meaning, derivation logic, and calculation explanation of each parameter in the formula are as follows: Core angle parameters (final tilt angle related parameters): The angle between the curtain wall panel and the first reference plane (XY plane), i.e., the first angle, corresponds to the first tilt angle of the curtain wall panel. The XY plane is usually preset as a horizontal reference plane, therefore... Characterizes the degree of tilt of the panel in the vertical direction (Z-axis direction), for example =0° indicates that the panel is completely horizontal. The larger the value, the more pronounced the tilt of the panel in the Z-axis direction.
[0080] The angle between the curtain wall panel and the second reference plane (XZ plane), i.e., the second angle, corresponds to the second tilt angle of the curtain wall panel. The XZ plane is usually preset as a vertical reference plane, therefore... Characterizes the degree of tilt of the panel in the horizontal direction (Y-axis direction).
[0081] Normal vector component parameters (vector cross product result): The normal vector coordinate components of the curtain wall panel plane are obtained by the cross product of the first and second vectors, and serve as the core bridge connecting vector characteristics and planar attitude. Its calculation logic fully follows the component operation rules of the cross product of spatial vectors—each component of the cross product result is the difference of the cross product of different components of the two input vectors, ensuring that the normal vector is always perpendicular to the panel plane containing the first and second vectors.
[0082] Input vector component parameters (panel feature point derived parameters): The three-dimensional coordinate components of the first vector are obtained from the coordinate difference between the positions of the two ultrasonic transmitting devices (e.g., first vector = P2 - P1, if...). , ,but ).
[0083] The three-dimensional coordinate components of the second vector are obtained by the same reasoning as the coordinate difference between the positions of two other non-collinear transmitting device points (e.g., if the second vector = P3 - P1, then...). ).
[0084] The arcsine function converts the ratio of the normal vector component to the normal vector magnitude into an angle value (ranging from 0° to 90°), which perfectly matches the range of the angle between two planes (the minimum angle between two planes does not exceed 90°).
[0085] Normal vector The magnitude (i.e. the length of the normal vector) is used to normalize the components. Since the magnitude of the normal vector does not affect its direction (only its length), dividing by the magnitude can eliminate scale differences and ensure that the calculated angle is only related to the plane attitude and is independent of the vector length.
[0086] , The absolute values of the normal vector components C and B are taken because the plane angle is the "minimum positive angle" (0°~90°), while the components may be negative (determined by the vector direction). The absolute value ensures that the ratio is positive, so that the arcsine function outputs an effective angle.
[0087] Supplement to computational logic: For example, its essence is derived from the angle between the normal vector and the XY plane normal vector (i.e., the Z-axis unit vector (0,0,1)). The sine of the angle between the normal vector and the Z-axis is exactly equal to the ratio of the Z-axis component C of the normal vector to the magnitude of the normal vector. The angle corresponding to this sine value is precisely the angle between the panel and the XY plane (the plane angle and the normal vector angle are complementary, and the sine values are equivalent). Therefore, through... Can be obtained directly ; The calculation logic is similar. The angle between the corresponding normal vector and the XZ plane normal vector (Y-axis unit vector (0,1,0)) is used for calculation. Therefore, the B component is used for calculation.
[0088] In the actual calculation process, the following should be noted: ① Consistency of the sign of coordinate components - all position coordinates of the transmitting device must be based on the global coordinate system of step 103 to ensure that the vector components are calculated correctly; ② Numerical precision control - since the arcsine function is sensitive to the precision of the input ratio, sufficient decimal places (such as more than 6 digits) should be retained for the normal vector component and the magnitude to avoid errors in the angle calculation due to numerical truncation; ③ Outlier handling - if the calculated angle exceeds the reasonable range (such as outside 0°~90°), the accuracy of vector construction or the positioning of the transmitting device should be checked back to eliminate the influence of data anomalies.
[0089] The present invention provides a method for confirming the positioning of a curtain wall panel. First, it acquires multiple first ultrasonic data queues, each corresponding to an ultrasonic receiving device. Each first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms. Then, it parses each first ultrasonic data queue, constructing a first time difference array from the multiple first time difference information representing ultrasonic transmission and reception time differences. Each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. Next, based on the multiple first time difference arrays and the positions of the multiple ultrasonic receiving devices, the position of each ultrasonic transmitting device is determined. Finally, based on the positions of the multiple ultrasonic transmitting devices, the first and second tilt angles of the curtain wall panel are confirmed. This method is based on ultrasonic information transmission and completes the positioning of the curtain wall panel plane based on the ultrasonic transmission process. Due to the unified reference and good straightness of the ultrasonic transmission process, the positioning accuracy is high, and it is easy to operate and apply.
[0090] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0091] The following are embodiments of the apparatus of the present invention. For details not described in detail, please refer to the corresponding method embodiments described above.
[0092] Figure 4 This is a functional block diagram of the curtain wall panel positioning confirmation device provided in the embodiments of the present invention, with reference to... Figure 4 The curtain wall panel positioning confirmation device includes: an ultrasonic acquisition module 401, a data parsing module 402, an ultrasonic positioning module 403, and a panel positioning confirmation module 404, wherein: The ultrasonic acquisition module 401 is used to acquire multiple first ultrasonic data queues, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms. The data parsing module 402 is used to parse each first ultrasonic data queue and construct a first time difference array from the multiple first time difference information representing the ultrasonic transmission and reception time difference. Each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. The ultrasonic positioning module 403 is used to determine the position of each ultrasonic transmitter based on multiple first time difference arrays and the positions of multiple ultrasonic receivers. The panel positioning confirmation module 404 is used to confirm the first tilt angle and the second tilt angle of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices.
[0093] Figure 5 This is a functional block diagram of the electronic device provided in an embodiment of the present invention. For example... Figure 5 As shown, the electronic device 5 in this embodiment includes a processor 500 and a memory 501, wherein the memory 501 stores a computer program 502 that can run on the processor 500. When the processor 500 executes the computer program 502, it implements the steps of the various curtain wall panel positioning confirmation methods and embodiments described above, for example... Figure 1 Steps 101 to 104 are shown.
[0094] For example, the computer program 502 may be divided into one or more modules / units, which are stored in the memory 501 and executed by the processor 500 to complete the present invention.
[0095] The electronic device 5 can be a desktop computer, laptop, handheld computer, cloud server, or other computing device. The electronic device 5 may include, but is not limited to, a processor 500 and a memory 501. Those skilled in the art will understand that... Figure 5 This is merely an example of electronic device 5 and does not constitute a limitation on electronic device 5. It may include more or fewer components than shown, or combine certain components, or different components. For example, electronic device 5 may also include input / output devices, network access devices, buses, etc.
[0096] The processor 500 may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0097] The memory 501 can be an internal storage unit of the electronic device 5, such as a hard disk or memory. The memory 501 can also be an external storage device of the electronic device 5, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, the memory 501 can include both internal and external storage units of the electronic device 5. The memory 501 is used to store the computer program 502 and other programs and data required by the electronic device 5. The memory 501 can also be used to temporarily store data that has been output or will be output.
[0098] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the aforementioned method embodiments, and will not be repeated here.
[0099] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0100] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0101] In the embodiments provided by this invention, it should be understood that the disclosed devices / electronic devices and methods can be implemented in other ways. For example, the device / electronic device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0102] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.
[0103] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0104] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the above-described embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various methods and apparatus embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.
[0105] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit them. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.
Claims
1. A method for confirming the positioning of a curtain wall panel, characterized in that, include: Acquire multiple first ultrasonic data queues, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms; Each first ultrasonic data queue is parsed, and the obtained first time difference information representing the ultrasonic transmission and reception time difference is constructed into a first time difference array, wherein each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. The location of each ultrasonic transmitter is determined based on multiple first time difference arrays and the locations of multiple ultrasonic receivers; The first and second tilt angles of the curtain wall panel are confirmed based on the positions of multiple ultrasonic transmitting devices.
2. The method for confirming the positioning of curtain wall panels according to claim 1, characterized in that, The step of parsing each first ultrasonic data queue and constructing a first time difference array from the multiple first time difference information representing the ultrasonic transmission and reception time difference obtained includes: For each first ultrasound data queue, perform the following steps: Extract the identifiers of the ultrasonic transmitters traversally as identifiers to be processed; Based on the identifier to be processed, extract multiple first subcarrier frequencies of the ultrasonic transmitting device; Based on the multiple first subcarrier frequencies, multiple first data segments are extracted from the first ultrasonic data queue through frequency domain analysis. The multiple first data segments are concatenated to obtain the first information; Extract the first transmission time of the ultrasonic wave from the first information; Based on the time of receiving the first information and the time of sending the first information, the first transmit / receive time difference information is determined, and the first transmit / receive time difference information and the identifier to be processed are added to the first time difference array.
3. The method for confirming the positioning of curtain wall panels according to claim 2, characterized in that, The step of extracting multiple first data segments from the first ultrasonic data queue based on the multiple first subcarrier frequencies through frequency domain analysis includes: Extract a sub-queue containing the first subcarrier frequency from the first ultrasonic data queue, and use the reception time of the sub-queue as the first reception time; Obtain the basic subcarrier frequency, wherein the first subcarrier frequency is an integer multiple of the basic subcarrier frequency; The second data segment is extracted from the sub-queue based on each first subcarrier, the basic subcarrier frequency, and a first formula, wherein the first formula is: In the formula, According to the first The second data segment extracted from the first subcarrier One data point, The number of ultrasonic data samples corresponding to each bit of data. For the first in the sub-queue One data point, The imaginary unit, It is a natural constant. Pi For the basic subcarrier frequency, The number of ultrasonic data samples corresponding to the duration of the basic subcarrier period; Extract the median of the second data segment as the segmentation threshold; The data in the second data segment is binarized according to the segmentation threshold to obtain the first data segment.
4. The method for confirming the positioning of curtain wall panels according to claim 1, characterized in that, The step of determining the position of each ultrasonic transmitter based on multiple first time difference arrays and the positions of multiple ultrasonic receivers includes: The propagation speed of ultrasound in the medium is obtained as the first velocity; For each ultrasonic transmitter, perform the following steps: Based on the identifier of the ultrasonic transmitting device, the first time difference corresponding to the ultrasonic device is extracted from the plurality of first time difference arrays respectively, and used as a plurality of target time differences; The multiple target time differences are multiplied by the first velocity to obtain multiple first distances, wherein each first distance corresponds to an ultrasonic receiving device; Based on the plurality of first distances, a positional equation is constructed regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the relationship between the first distances; The position of the ultrasonic transmitting device is determined according to the position equation.
5. The method for confirming the positioning of curtain wall panels according to claim 4, characterized in that, The step of constructing a position equation based on the plurality of first distances regarding the position of the ultrasonic transmitting device, the position of the ultrasonic receiving device, and the relationship between the first distances includes: In the formula, This indicates the location of the ultrasonic transmitter. For the first The location of the ultrasonic receiver. For ultrasonic transmitting device to the first The distance between the ultrasonic receivers.
6. The method for confirming the positioning of curtain wall panels according to any one of claims 1-5, characterized in that, The step of confirming the first and second tilt angles of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices includes: Based on the positions of the plurality of ultrasonic transmitting devices, a first vector and a second vector are constructed, wherein the first vector and the second vector are not parallel; Based on the first vector and the second vector, construct the normal vector of the curtain wall panel plane; Based on the normal vector, calculate the angle between the curtain wall panel and the first reference plane and the angle between the curtain wall panel and the second reference plane, and use these as the first angle and the second angle. The first tilt angle and the second tilt angle of the curtain wall panel are confirmed based on the first included angle and the second included angle.
7. The method for confirming the positioning of curtain wall panels according to claim 6, characterized in that, The step of calculating the angle between the curtain wall panel and the first reference plane and the angle with the second reference plane, based on the normal vector, as the first angle and the second angle, includes: In the formula, The first included angle, The second included angle, Let be the normal vector of the curtain wall panel plane. Let be the first vector. For the second vector, It is an arcsine function.
8. A curtain wall panel positioning confirmation device, characterized in that, For implementing the curtain wall panel positioning confirmation method as described in any one of claims 1-7, the curtain wall panel positioning confirmation device comprises: An ultrasonic acquisition module is used to acquire multiple first ultrasonic data queues, wherein each first ultrasonic data queue corresponds to an ultrasonic receiving device, and the first ultrasonic data queue includes a first array representing multiple ultrasonic waveforms. The data parsing module is used to parse each first ultrasonic data queue and construct a first time difference array from the multiple first time difference information representing the ultrasonic transceiver time difference. Each first time difference information corresponds to an ultrasonic receiving device and an ultrasonic transmitting device. An ultrasonic positioning module is used to determine the position of each ultrasonic transmitter based on multiple first time difference arrays and the positions of multiple ultrasonic receivers. as well as, The panel positioning confirmation module is used to confirm the first tilt angle and the second tilt angle of the curtain wall panel based on the positions of multiple ultrasonic transmitting devices.
9. An electronic device comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 7 above.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 7 above.
Citation Information
Patent Citations
Indoor positioning method based on optical AOA and ultrasonic-assisted ranging
CN120427005A
Ultrasonic positioning method and electronic equipment
CN120722281A
Apparatus to measure gradient using ultrasonic sensor and method to measure gradient thereof
KR102078122B1
Object localization device, object localization method, and program
WO2023243348A1