Unmanned aerial vehicle communication method based on visible light communication and related device thereof
Through the UAV communication method based on visible light communication, the UAV is used as the VLC gateway to realize the data transmission stability and reliability of self-powered sensor nodes, solve the problem of sensor node failure and intrusion, and ensure the real-time debugging and security of the network.
Patent Information
- Application Number
- CN202510496631.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-21
- Publication Date
- 2025-07-18
AI Technical Summary
In the existing wireless sensor network, the communication module of the self-powered sensor node fails to cause the node to be lost, and the intrusion node threatens network security, making it difficult for maintenance personnel to debug and monitor in real time.
The UAV communication method based on visible light communication is adopted, and the UAV is used as the VLC gateway to preprocess and reorder the binary data through digital pulse interval modulation, and the data frame is transmitted using the UAV's optical module and data recovery is performed on the receiving end to achieve reliable data transmission.
It improves the performance of the uplink line and the stability of the transmission process, ensuring real-time debugging and network security of sensor nodes.
Smart Images

Figure CN120342482A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technologies, and in particular, to a drone communication method based on visible light communication and related devices thereof. Background Art
[0002] With the development of wireless sensor networks, practical self-powered sensors are applied to fields such as forest fire monitoring and building monitoring. In these applications, the self-powered sensors are usually deployed in a remote or hard-to-reach area, and a wireless link is used to build a data network. According to the original network infrastructure, sensor maintenance personnel can also retrieve the current status of the sensors in real time and debug faulty sensors online.
[0003] In the related art, if the communication module of a self-powered sensor node fails, then this node will be lost; even in the case of sensor node intrusion, the online debugging of these sensor nodes will cause more serious network security problems due to the leakage of core code. These intrusive self-powered nodes will continuously threaten the entire network because they have the ability to obtain environmental information. Maintenance personnel must abandon these sensor nodes but still do not know what problems they have.
[0004] Therefore, a new communication method is needed to improve the stability and transmission speed during the communication process. Summary of the Invention
[0005] To solve or partially solve the problems existing in the related art, this application provides a drone communication method based on visible light communication and related devices thereof, which can improve the performance of the uplink and enhance the stability and reliability of the transmission process.
[0006] In a first aspect of this application, a drone communication method based on visible light communication is provided, including: based on digital pulse interval modulation, a sending end preprocesses binary data to obtain a plurality of data packets, where each data packet contains a plurality of hexadecimal data; after reordering the hexadecimal data in the data packets at the sending end, a plurality of data frames are obtained, and a plurality of the data frames are sent to a drone through a light source; the drone receives a plurality of the data frames from the sending end and performs data recovery processing on the data frames to obtain the original binary data.
[0007] In combination with the first aspect, in a possible implementation manner of the first aspect, the preprocessing of the binary data by the sending end based on digital pulse interval modulation to obtain a plurality of data packets includes: splitting the binary data into a plurality of half-byte symbols, where a plurality of the half-byte symbols correspond to a plurality of the hexadecimal data, and a plurality of the data packets are obtained according to a plurality of the half-byte symbols, and each data packet contains at least one of the half-byte symbols.
[0008] In combination with the first aspect, in a possible implementation manner of the first aspect, after reordering the hexadecimal data in the data packet at the sending end, a plurality of data frames are obtained, including: grouping the binary data in the data packet according to the values corresponding to the hexadecimal data to obtain a plurality of data groups, each data group is set with a q-flag, and the position value of each data group is recorded; sorting the plurality of hexadecimal data from the smallest to the largest, and performing a modulo 4 operation on the sorted hexadecimal data to obtain processed hexadecimal data; and obtaining a plurality of data frames according to the processed hexadecimal data and the position values of the data groups.
[0009] In combination with the first aspect, in a possible implementation manner of the first aspect, the drone receives a plurality of the data frames from the sending end and performs data recovery processing on the data frames to obtain the binary original data, including: the effective receiving area of the camera unit of the drone receives the optical signal sent by the light source, and obtains the average light intensity of each pixel row from the optical signal to obtain the data frame, the optical signal includes the data frame; and performing data recovery processing on the data frame according to the position value of the data group, the q-flag, the number of pulse gaps of the q-flag, and the number of gaps in the DPIM symbol to obtain the binary original data.
[0010] In combination with the first aspect, in a possible implementation manner of the first aspect, it further includes: the value of the q-flag is not less than 1 or not greater than 4.
[0011] In combination with the first aspect, in a possible implementation manner of the first aspect, it further includes: the value of the number of gaps v in the DPIM symbol is 0 ≤ v ≤ 15.
[0012] A drone communication device based on visible light communication provided in the second aspect of the present application includes a processing module for preprocessing binary data at the sending end based on digital pulse interval modulation to obtain a plurality of data packets, where the data packets contain a plurality of hexadecimal data; a sorting module for reordering the hexadecimal data in the data packets at the sending end to obtain a plurality of data frames, and sending the plurality of data frames to the drone through a light source; and a receiving module for the drone to receive a plurality of the data frames from the sending end and perform data recovery processing on the data frames to obtain the binary original data.
[0013] In combination with the second aspect, in a possible implementation manner of the second aspect, the processing module is further configured to split the binary data into a plurality of nibble symbols, the plurality of nibble symbols corresponding to a plurality of the hexadecimal data, and obtain a plurality of data packets according to the plurality of nibble symbols, where at least one of the nibble symbols is included in the data packet.
[0014] In combination with the second aspect, in a possible implementation manner of the second aspect, the sorting module is further configured to group the binary data in the data packet according to the values corresponding to the hexadecimal data to obtain a plurality of data groups, each data group is set with a q-flag, and the position value of each data group is recorded; sort the plurality of hexadecimal data from the smallest to the largest, and perform a modulo-4 operation on the sorted hexadecimal data to obtain processed hexadecimal data; obtain a plurality of data frames according to the processed hexadecimal data and the position value of the data group.
[0015] In combination with the second aspect, in a possible implementation manner of the second aspect, the receiving module is further configured to receive the optical signal sent by the light source in the effective receiving area of the camera unit of the drone, and obtain the average light intensity of each pixel row from the optical signal to obtain the data frame, where the optical signal includes the data frame; perform data recovery processing on the data frame according to the position value of the data group, the q-flag, the number of pulse gaps of the q-flag, and the number of gaps in the DPIM symbol to obtain the binary original data.
[0016] A third aspect of the present application provides an electronic device, including:
[0017] a processor; and
[0018] a memory, on which executable code is stored, and when the executable code is executed by the processor, the processor is caused to execute the method as described above.
[0019] A fourth aspect of the present application provides a computer-readable storage medium, on which executable code is stored, and when the executable code is executed by a processor of an electronic device, the processor is caused to execute the method as described above.
[0020] A fifth aspect of the present application provides a computer program product, including computer programs / instructions, and when the computer programs / instructions are executed by a processor, the method as described above is implemented.
[0021] The technical solution provided by the present application may include the following beneficial effects:
[0022] A method and related device for drone communication based on visible light communication according to the present application include: based on digital pulse interval modulation, a transmitting end preprocesses binary data to obtain a plurality of data packets, where each data packet contains a plurality of hexadecimal data; after reordering the hexadecimal data in the data packets at the transmitting end, a plurality of data frames are obtained, and the plurality of data frames are sent to the drone through a light source; the drone receives the plurality of data frames from the transmitting end, performs data recovery processing on the data frames to obtain the original binary data, which can improve the performance of the uplink and enhance the stability and reliability of the transmission process.
[0023] It should be understood that the above general description and the following detailed description are merely exemplary and explanatory, and cannot limit the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] By describing the exemplary embodiments of the present application in more detail in conjunction with the drawings, the above and other objects, features, and advantages of the present application will become more apparent. Among them, in the exemplary embodiments of the present application, the same reference numerals generally represent the same components.
[0025] Figure 1 is a schematic flowchart of a method for drone communication based on visible light communication shown in an embodiment of the present application;
[0026] Figure 2 is a schematic structural diagram of a device for drone communication based on visible light communication shown in an embodiment of the present application;
[0027] Figure 3 is a schematic structural diagram of an electronic device shown in an embodiment of the present application;
[0028] Figure 4 is a schematic flowchart of binary data sorting shown in an embodiment of the present application;
[0029] Figure 5 is a schematic diagram of binary data sorting and recording position values shown in an embodiment of the present application;
[0030] Figure 6 is a schematic diagram of the effective acceptance area of the camera unit of the drone shown in an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0031] The embodiments of the present application will be described in more detail below with reference to the drawings. Although the embodiments of the present application are shown in the drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to make the present application more thorough and complete, and to convey the scope of the present application fully to those skilled in the art.
[0032] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The singular forms "a", "the", and "said" used in this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0033] It should be understood that although the terms "first", "second", "third", etc. may be used in this application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of this application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Thus, the features defined with "first" and "second" may explicitly or implicitly include one or more of such features. In the description of this application, the meaning of "a plurality" is two or more unless otherwise specifically defined.
[0034] In the related art, with the development of wireless sensor networks, practical self-powered sensors are applied to fields such as forest fire monitoring and building monitoring. In these applications, the self-powered sensors are usually deployed in a remote or hard-to-reach area and use a wireless link to build a data network. According to its original network infrastructure, sensor maintenance personnel can also retrieve the current status of the sensors in real time and debug faulty sensors online. However, if the communication module of the self-powered sensor node fails, then this node will be lost; even in the event of sensor node intrusion, the online debugging of these sensor nodes will cause more serious network security problems due to the leakage of the core code. These intruded self-powered nodes will continuously threaten the entire network because they have the ability to obtain environmental information. Maintenance personnel have to abandon these sensor nodes but still do not know what problems they have. Due to the popularity of optical semiconductors, most self-powered sensor nodes are now equipped with optical modules such as LEDs and ambient light sensors to achieve environmental sensing tasks. This enables the sensors to have the potential for visible light communication (VLC) and establishes a simple network to complete the debugging of faulty nodes.
[0035] In view of the above problems, the embodiments of this application provide a drone communication method based on visible light communication, which can improve the performance of the uplink and enhance the stability and reliability of the transmission process.
[0036] The technical solutions of the embodiments of this application are described in detail below with reference to the accompanying drawings.
[0037] Figure 1 It is a schematic flowchart of the drone communication method based on visible light communication shown in the embodiments of this application.
[0038] See Figure 1 , a drone communication method based on visible light communication, including:
[0039] S110: Based on digital pulse interval modulation, the sending end preprocesses binary data to obtain a number of data packets, and each data packet contains a number of hexadecimal data.
[0040] Specifically, due to the directional propagation characteristics of visible light communication, and the communication distance is generally between 0.2m and 1.5m, it is difficult to achieve beyond this range. With the development of drone technology, using a drone platform equipped with a camera and an LED can overcome physical space obstacles, making it possible to use visible light communication to online debug and repair Internet of Things node devices deployed in the wild. Existing drones are fully functional, highly reliable, and have strong communication capabilities. Even in the wild, the cloud server can communicate with the drone in real time through wireless communication. Therefore, the drone can become a bridge for communication between the cloud server and Internet of Things devices.
[0041] The drone can be used as a VLC gateway to forward sensor status data (from faulty sensor nodes) and debugging codes (from cloud services). Existing drones have complete communication and image sampling functions. On the one hand, this communication ability ensures real-time data exchange with the remote cloud server. Therefore, by flying near the site of the faulty sensor node, the drone is regarded as a bridge between the cloud server and the self-powered sensor. On the other hand, the drone has sufficient optical modules, such as cameras and flashlights, to sense and emit visible light respectively. This means that the drone as a VLC gateway: for the downlink, the flashlight of the camera sends the repair code to the ambient light sensor of the self-powered sensor node and completes wireless reprogramming; for the uplink, through the LED of the node, the debugging information is uploaded to the drone, and the drone uses the camera to receive it. It can include two links, the uplink is responsible for receiving the debugging information sent by the Internet of Things device, and the downlink is responsible for sending the required debugging code to the Internet of Things device. The sending end receives data from the drone (receiving end).
[0042] Specifically, digital pulse interval modulation is DPIM. DPIM uses pulse time slots and empty time slots to represent data, and the pulse time slot is regarded as the start flag of the DPIM symbol. A DPIM symbol encoding M-bit data is represented by k low-power time slots, followed by a pulse time slot, where 1 ≤ k ≤ L and L = 2^M. A DPIM symbol contains 4 bits (M = 4) in the VDIU, so the maximum number of slots L is 16. VDIU (VLC-Based Debugging Information Upload) is a debugging information upload method based on visible light communication (VLC), designed specifically for self-powered sensor nodes. This method transmits debugging data through visible light and is suitable for low-power, wireless sensor network environments. The preprocessing is to convert the binary data of the original debugging information into hexadecimal data units in groups of four bits (for example, 1011 is converted to B).
[0043] In a possible implementation, based on digital pulse interval modulation, the sender preprocesses the binary data to obtain a number of data packets, including: splitting the binary data into a number of nibble symbols, where a number of nibble symbols correspond to a number of hexadecimal data, and obtaining a number of data packets according to the number of nibble symbols. Each data packet contains at least one nibble symbol.
[0044] Specifically, the binary data can be sorted and grouped. The binary data is the original data and can be divided into a number of data packets with n nibble symbols. The n nibble symbols correspond to n hexadecimal data, and each data packet can contain n hexadecimal data.
[0045] S120: After reordering the hexadecimal data in the data packet at the sender, a number of data frames are obtained, and a number of data frames are sent to the drone through the light source.
[0046] Specifically, after reordering the hexadecimal data, a number of data frames can be obtained. The data units are arranged in ascending order of hexadecimal values to generate a continuous sequence (for example, [3, 5, A, B] is sorted as [3, 5, A, B]).
[0047] In a possible implementation, the binary data in the data packet is grouped according to the corresponding values of the hexadecimal data to obtain a number of data groups. Each data group is set with a q-flag mark, and the position value of each data group is recorded; the number of hexadecimal data is sorted from smallest to largest, and the sorted hexadecimal data is modulo 4 operated to obtain the processed hexadecimal data; according to the processed hexadecimal data and the position value of the data group, a number of data frames are obtained.
[0048] Such as Figure 4 AndFigure 5 As shown, specifically, n hexadecimal data can be sorted from the smallest to the largest hexadecimal data. This ensures that the data marked with the same q-flag is continuous, and the position value of each data group is recorded. Then, a modulo-4 operation is performed on each sorted hexadecimal data. Performing a modulo-4 operation on the sorted data (for example, the result of B(11) modulo 4 is 3) generates compressed data with a value range of 0 - 3, and the result range is [0000B, 0011B], where B is a binary number. To represent the data within the range, the channel modulation requires the fewest time slots compared to other ranges (such as [0100, 0111]). Since the order of the hexadecimal data is disturbed after sorting, it is necessary to pre-record the position value of each data group and compress the number of time slots representing the position, and then process the position value. The range of these position values is [1, n], and each position value is subtracted by n / 2, that is, the number of transmission bits is reduced through differential coding (for example, subtracting the current value from the median). The subtracted result consists of an absolute value and a positive / negative sign.
[0049] Specifically, after processing, each data packet is converted into a data frame that can be received by the effective reception area of the drone. Each data frame has a frame header, which indicates the start of the data frame. To reduce the inter-symbol interference in the data frame, guard slots are added to further separate the symbols other than the start flag. Guard time slots (with a width 1.2 - 1.5 times that of a single time slot) are inserted in the data frame to isolate adjacent symbols to reduce interference. Each data group (a hexadecimal data) is marked with a q-flag. To optimize DPIM, the start flag of the DPIM symbol is used to represent the q-flag, so the start flag has different numbers of pulse time slots.
[0050] Specifically, after reordering the data in the data packet, the hexadecimal data with the same q-flag mark in the data packet is continuous. If the same q flag is used for the current data and the previous data, the q-flag mark of the current symbol can be deleted, and the pulse time slots of the subsequent identifiers can be omitted. This means that the start flag should be replaced by an empty time slot. Due to data frame compression source coding, it indicates that only the empty slot signal DPIM symbol of v%4 + q-flag mark is required, where v is a DPIM symbol represented by a decimal value, %4 is a mathematical expression of modulo 4, f is the number of pulse slots, 0 ≤ v ≤ 15, and 1 ≤ q-flag mark ≤ 4. However, the number of slots required for each data by DPIM is p, where 0 ≤ v ≤ 15. Data packet and sorting: Convert the binary data into hexadecimal data packets in groups of four bits and arrange them in ascending numerical order to reduce duplicate identifiers. Modulo 4 compression and position coding: Perform modulo 4 operations on the sorted hexadecimal data to generate compressed data, and reduce the transmission overhead of position information through differential coding. Dynamic time slot allocation: Dynamically omit the pulse time slots of duplicate identifiers according to the continuity of the packet identifier (q-flag), and insert guard time slots to reduce inter-symbol interference.
[0051] In a possible implementation, the value of the q-flag mark is not less than 1 or not greater than 4.
[0052] In a possible implementation, the value of the number of voids v in the DPIM symbol is 0 ≤ v ≤ 15.
[0053] S130: The drone receives several data frames from the sending end, performs data recovery processing on the data frames, and obtains the binary original number.
[0054] As Figure 6 shown, specifically, as the rolling shutter camera gradually scans, the optical signal sent by the LED flashing becomes bright and dark stripes in the ERA. After the imaging unit of the drone finishes collecting the visible light sent by the light source at the sending end, the receiver of the drone starts demodulation. The receiver collects the average light intensity of each pixel row in the effective reception area (ERA) of the imaging unit to obtain the transmitted data frame. And, apply threshold binary to transmit the data frame to a binary sequence. After threshold binary processing, use the first empty time slot in the ERA to obtain the unit width of a single time slot. By monitoring the length of the first empty time slot, the width of the time slot can be obtained. The high-level power represents the combination of the guard slot and the start flag (which is also the q-flag mark). Given the unit width of the time slot, by analyzing the width of the high-order power, the q-flag mark, the number of pulse slots of the q-flag mark, and the number of voids v in a DPIM symbol can be obtained, and the binary data can be obtained through the following formula
[0055] r data=(v + 4×(qflag - 1)), qflag ∈ {1, 2, 3, 4}
[0056] r data is the restored original decimal number. The original binary data can be obtained. After restoring it to a binary number, hexadecimal data can be automatically obtained by taking every 4 bits, and then converting the hexadecimal to binary. qflag is the number marked by qflag.
[0057] In a possible implementation, due to the unstable frame rate of the camera, the position of the frame header appearing on the image is likely to move. Therefore, a frame synchronization scheme based on a Temporal Convolutional Network (TCN) can be used to predict the position of the frame header and alleviate the phenomenon of data frame offset. Specifically:
[0058] Step 1: Since the position of the data frame header determines the starting position of this data frame in the effective reception area, the header of the data frame should appear in the upper half of the effective reception area as much as possible, so that the stripes representing the data completely appear in the effective reception area. The receiving end is equipped with an LED to send an LED signal, and the transmitting end is configured with an ambient light sensor to receive the LED signal from the receiving end. In the transmission preparation stage, the LED at the transmitting end lights up, and the camera at the receiving end first takes a picture and calculates the starting position l of the LED in the picture start and the ending position l end . And the average time t for sampling one row of pixels can be obtained according to the following formula perline :
[0059]
[0060] where t frame is the time required for the camera to obtain one frame of data, and l frame is the vertical resolution of the picture;
[0061] Step 2: Divide the picture into three parts according to the effective reception area, as Figure 3 shown. The pre part and the after part in the figure are the upper and lower non - transmission areas. When the data frame appears in this part, data loss will occur. The time t pre and t after required for the camera to sample the upper and lower non - transmission areas can be estimated according to the above parameters:
[0062]
[0063] L pre and L after are the pixel widths of the upper and lower non - transmission areas respectively. At the same time, the time t effect required for the camera to sample the entire effective reception area can also be obtained:
[0064]
[0065] After the parameter calculation is completed, the drone starts to send the LED synchronization signal to the transmitter. After receiving the signal, the transmitter starts to transmit. The receiver starts timing with a timer every time the camera starts sampling. Only when the timer is at t effect the LED at the receiver is turned on during the time period. The transmitter uses an ambient light sensor to receive the LED signal and only starts sending data when the signal sent by the receiver is detected. Through experiments, it is found that when the transmission time is limited to i×t effect (i ∈ [0.2, 0.4]), the probability that the data frame completely appears in the effective reception area is the highest;
[0066] Step 3: To solve the sequence problem, a causal convolution module is introduced in the TCN. In this module, the output at time t is only convolved with the elements at time t and earlier in the previous layer. The more historical information needs to be returned, the more hidden layers are required. However, there is a problem with causal convolution in traditional convolutional networks: the length of the constructed time model is limited by the size of the convolutional kernel, and additional layers should be linearly stacked to obtain longer dependencies. Therefore, a dilated convolution module is introduced in the TCN. Intermittent sampling is performed during sampling, and the receptive field is controlled by setting the dilation factor d. In this way, a larger receptive field can be obtained with fewer layers. A residual module is introduced in the TCN, and an identity mapping of cross-layer connection is added to connect two dilated convolution layers, which can better solve the problem of gradient disappearance or gradient explosion that easily occurs in deep networks;
[0067] Step 4: To ensure the reliability of transmission, the synchronization frequency is reduced from the original once per frame to once every 20 frames. Then, a real-time frame header position parsing module is introduced in the drone to obtain the current frame header position, and the 5 frame header positions of the current image and historical images are stored as a set of data for the input of the subsequent frame header prediction;
[0068] Step 5: Finally, the stored frame header data is used as the input and brought into the trained TCN model to output the predicted frame header position. If it exceeds 40% of the reception area, it is defaulted that the data transmission is incomplete and active synchronization needs to be performed using the downlink;
[0069] A method for drone communication based on visible light communication in the present application includes: based on digital pulse interval modulation, a sender preprocesses binary data to obtain a number of data packets, where each data packet contains a number of hexadecimal data; after reordering the hexadecimal data in the data packets at the sender, a number of data frames are obtained, and a number of data frames are sent to the drone through a light source; the drone receives a number of data frames from the sender, performs data recovery processing on the data frames to obtain the original binary data, which can improve the performance of the uplink and enhance the stability and reliability of the transmission process.
[0070] In the present application, data is grouped and compressed in source coding to generate corresponding flag bits, and the DPIM modulation format is optimized according to the flag bits in channel modulation, reducing the number of time slots required for the original transmission. Finally, two types of transmission information, namely data information and location information, are generated, and the receiver decodes by combining them, greatly improving the transmission rate. In addition, the present application also uses downlink transmission to synchronize the uplink, ensuring that the data transmitted by the Internet of Things devices can be received by the rolling shutter camera carried by the VLC gateway, reducing the possibility of data loss.
[0071] Corresponding to the foregoing method embodiments for implementing application functions, the present application also provides a drone communication device, an electronic device, and corresponding embodiments based on visible light communication.
[0072] Figure 2 It is a schematic structural diagram of drone communication based on visible light communication shown in the embodiments of the present application.
[0073] See Figure 2 , a drone communication device 200 based on visible light communication includes:
[0074] A processing module 210, which is used to preprocess binary data at the sender based on digital pulse interval modulation to obtain a number of data packets, where each data packet contains a number of hexadecimal data.
[0075] In a possible implementation manner, the processing module 210 is further used to split the binary data into a number of half-byte symbols, where the number of half-byte symbols corresponds to a number of hexadecimal data, and a number of data packets are obtained according to the number of half-byte symbols, and each data packet contains at least one half-byte symbol.
[0076] A sorting module 220, which is used to reorder the hexadecimal data in the data packets at the sender to obtain a number of data frames, and send a number of data frames to the drone through a light source.
[0077] In a possible implementation, the sorting module 220 is further configured to group the binary data in the data packet according to the values corresponding to the hexadecimal data, obtaining a plurality of data groups, each data group being set with a q-flag, and recording the position value of each data group; sorting the plurality of hexadecimal data from the smallest to the largest, and performing a modulo 4 operation on the sorted hexadecimal data to obtain processed hexadecimal data; and obtaining a plurality of data frames according to the processed hexadecimal data and the position values of the data groups.
[0078] The receiving module 230 is configured to receive, by the drone, a plurality of data frames from a sending end, and perform data recovery processing on the data frames to obtain binary original data.
[0079] In a possible implementation, the receiving module 230 is further configured to receive, in an effective receiving area of the camera unit of the drone, an optical signal sent by a light source, and obtain the average light intensity of each pixel row from the optical signal to obtain a data frame, the optical signal including the data frame; and perform data recovery processing on the data frame according to the position value of the data group, the q-flag, the number of pulse gaps of the q-flag, and the number of gaps in the DPIM symbol to obtain binary original data.
[0080] Regarding the device in the above embodiments, the specific manners in which each module performs operations have been described in detail in the embodiments related to the method, and will not be elaborated herein.
[0081] Figure 3 is a schematic structural diagram of an electronic device shown in an embodiment of the present application.
[0082] See Figure 3 , the electronic device 300 includes a memory 310 and a processor 320.
[0083] The processor 320 may be a central processing unit (CPU), or may also be 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. The general-purpose processor may be a microprocessor, or the processor may also be any conventional processor, etc.
[0084] The memory 310 may include various types of storage units, such as system memory, read-only memory (ROM), and permanent storage devices. Among them, the ROM can store static data or instructions required by the processor 320 or other modules of the computer. The permanent storage device can be a readable and writable storage device. The permanent storage device can be a non-volatile storage device that does not lose the stored instructions and data even when the computer is powered off. In some embodiments, the permanent storage device uses a mass storage device (such as a magnetic or optical disk, flash memory) as the permanent storage device. In some other embodiments, the permanent storage device can be a removable storage device (such as a floppy disk, optical drive). The system memory can be a readable and writable storage device or a volatile readable and writable storage device, such as dynamic random access memory. The system memory can store some or all of the instructions and data required by the processor during operation. In addition, the memory 310 can include any combination of computer-readable storage media, including various types of semiconductor storage chips (such as DRAM, SRAM, SDRAM, flash memory, programmable read-only memory), and magnetic disks and / or optical disks can also be used. In some embodiments, the memory 310 can include removable storage devices that are readable and / or writable, such as compact discs (CDs), read-only digital versatile discs (such as DVD-ROM, dual-layer DVD-ROM), read-only Blu-ray discs, high-density discs, flash memory cards (such as SD cards, mini SD cards, Micro-SD cards, etc.), magnetic floppy disks, etc. The computer-readable storage medium does not include carrier waves and instantaneous electronic signals transmitted wirelessly or wiredly.
[0085] Executable code is stored on the memory 310, and when the executable code is processed by the processor 320, it can cause the processor 320 to execute some or all of the methods described above.
[0086] In addition, the method according to the present application can also be implemented as a computer program or a computer program product, which includes computer program code instructions for executing some or all of the above steps of the method according to the present application.
[0087] Alternatively, the present application can also be implemented as a computer-readable storage medium (or a non-transitory machine-readable storage medium or a machine-readable storage medium), on which executable code (or a computer program or computer instruction code) is stored. When the executable code (or the computer program or computer instruction code) is executed by a processor of an electronic device (or a server, etc.), it causes the processor to execute some or all of the steps of the method according to the present application.
[0088] The embodiments of the present application have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, the practical application, or the improvement of technologies in the market, or to enable other ordinary skill in the art to understand the embodiments disclosed herein.
Claims
1. A drone communication method based on visible light communication, characterized in that, Including: Based on digital pulse interval modulation, the sending end preprocesses binary data to obtain a plurality of data packets, and each data packet contains a plurality of hexadecimal data; After the sending end reorders the hexadecimal data in the data packets, a plurality of data frames are obtained, and a plurality of the data frames are sent to the drone through a light source; The drone receives a plurality of the data frames from the sending end, and performs data recovery processing on the data frames to obtain the binary data.
2. The method according to claim 1, wherein Based on digital pulse interval modulation, the preprocessing of binary data by the sending end to obtain a plurality of data packets includes: The binary data is split into a plurality of half-byte symbols, and the plurality of half-byte symbols correspond to the plurality of hexadecimal data, and a plurality of the data packets are obtained according to the plurality of half-byte symbols, and each data packet contains at least one of the half-byte symbols.
3. The method according to claim 2, wherein After the sending end reorders the hexadecimal data in the data packets, obtaining a plurality of data frames includes: The binary data in the data packets is grouped according to the values corresponding to the hexadecimal data to obtain a plurality of data groups, each data group is set with a q-flag, and the position value of each data group is recorded; The plurality of hexadecimal data are sorted from smallest to largest, and a modulo 4 operation is performed on the sorted hexadecimal data to obtain processed hexadecimal data; According to the processed hexadecimal data and the position values of the data groups, a plurality of data frames are obtained.
4. The method according to claim 3, characterized in that, The drone receives a plurality of the data frames from the sending end, and performs data recovery processing on the data frames to obtain the original binary data, including: The effective receiving area of the camera unit of the drone receives the optical signal sent by the light source, and obtains the average light intensity of each pixel row from the optical signal to obtain the data frame, and the optical signal includes the data frame; According to the position value of the data group, the q-flag, the number of pulse gaps of the q-flag, and the number of gaps in the DPIM symbol, data recovery processing is performed on the data frame to obtain the original binary data.
5. The method according to claim 3, wherein Further including: The value of the q-flag is not less than 1 or not greater than 4.
6. The method according to claim 4, wherein Further including: The value of the number of gaps v in the DPIM symbol is 0 ≤ v ≤ 15.
7. A drone communication device based on visible light communication, characterized in that, Including: A processing module, configured to preprocess binary data at the sending end based on digital pulse interval modulation to obtain a plurality of data packets, and each data packet contains a plurality of hexadecimal data; A sorting module, configured to reorder the hexadecimal data in the data packets at the sending end to obtain a plurality of data frames, and send a plurality of the data frames to the drone through a light source; A receiving module, configured to enable the drone to receive a plurality of the data frames from the sending end, and perform data recovery processing on the data frames to obtain the original binary data.
8. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by a processor, the method according to any one of claims 1-6 is implemented.
9. An electronic device, characterized in that, Including: A processor; And A memory having executable code stored thereon, which, when executed by the processor, causes the processor to execute the method according to any one of claims 1-6.
10. A computer-readable storage medium, characterized in that: There is executable code stored thereon, which, when executed by the processor of an electronic device, causes the processor to execute the method according to any one of claims 1-6.