Data transmission method and device, drone control system and drone

By running the proxy application on the first processor of the drone, acquiring and transmitting the target data of the second processor, the message packet loss problem caused by insufficient computing power of the second processor is solved, and efficient data transmission and reduced computing pressure are achieved.

CN114020483BActive Publication Date: 2025-08-08GUANGZHOU XAIRCRAFT TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202111102000.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-18
Publication Date
2025-08-08
Estimated Expiration
2041-09-18

AI Technical Summary

Technical Problem

When the second processor of the drone receives communication data from many service applications, the message packet loss occurs due to insufficient computing power.

Method used

Run the proxy application on the first processor of the drone, obtains the subscription requirements of the business application through the proxy application, and obtains target data from the second processor and transmits it to the business application, simplifies the interaction between the second processor and the business application, and transfers it to the first processor for data transmission.

Benefits of technology

It improves communication efficiency, reduces the computing pressure of the second processor, simplifies data transmission management, and improves data acquisition efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114020483B_ABST
    Figure CN114020483B_ABST
Patent Text Reader

Abstract

This application provides a data transmission method and apparatus, a drone control system, and a drone. The method is executed by a proxy application running on the drone's first processor. The method includes: obtaining subscription requirements from a business application running on the first processor and / or an external terminal communicating with the drone; obtaining subscribed target data from a second processor based on the subscription requirements; and transmitting the target data to the business application. By running the proxy application on the first processor, the technical solution of this application transfers all interaction between the first processor and / or external terminal and the second processor to the first processor, reducing the computing pressure on the second processor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of drone technology, and in particular to a method and device for data transmission, a drone control system, and a drone. Background Art

[0002] The control system architecture of a drone typically includes a brain (a first processor) and a cerebellum (a second processor), where each of the drone's execution modules can be mounted on the cerebellum. When business applications on external terminals and / or business applications on the first processor need to access internal data in the cerebellum, or need to obtain data from various execution modules mounted under the cerebellum, they need to send messages to the cerebellum to exchange data.

[0003] However, when the cerebellum receives communication data from numerous business applications, it may suffer from message packet loss due to its own insufficient computing power. Summary of the Invention

[0004] In view of this, embodiments of the present application provide a method and device for data transmission, a drone control system, and a drone, which can improve communication efficiency and reduce the computing pressure of the second processor.

[0005] In a first aspect, embodiments of the present application provide a data transmission method, performed by a proxy application running on a first processor of a drone. The method comprises: obtaining a subscription request from a service application running on the first processor and / or an external terminal communicating with the drone; obtaining subscribed target data from a second processor based on the subscription request; and transmitting the target data to the service application.

[0006] In some embodiments of the present application, obtaining subscribed target data from the second processor according to the subscription requirement includes: obtaining the subscribed target data from the second processor according to a subscription period indicated by the subscription requirement.

[0007] In certain embodiments of the present application, the method further includes: if subscription requirements for the same target data from multiple business applications are obtained, determining the greatest common divisor of the subscription periods of the multiple subscription requirements, and obtaining the target data from the second processor using the greatest common divisor as the subscription period.

[0008] In certain embodiments of the present application, multiple data warehouses are built on the second processor, and the multiple data warehouses respectively store data of at least one execution module mounted on the second processor and internal data of the second processor. The target data includes data and / or internal data of at least one execution module.

[0009] In certain embodiments of the present application, obtaining subscribed target data from the second processor according to subscription requirements includes: initiating a subscription to the second processor according to the subscription requirements, and receiving target data in a target data warehouse pushed by the second processor, where the target data warehouse is one of multiple data warehouses.

[0010] In certain embodiments of the present application, data in different data warehouses are pushed by the second processor at different frequencies, and the pushing frequency of data in the data warehouse matches the subscription period indicated in the subscription requirements of the data.

[0011] In certain embodiments of the present application, obtaining subscribed target data from the second processor according to the subscription requirement includes: sending the subscription requirement to the second processor through the subscription port; and obtaining the subscribed target data from the second processor through the subscription port.

[0012] In a second aspect, an embodiment of the present application provides a drone control system, comprising: a first processor and a second processor, the first processor being configured with a proxy application, the proxy application being used to execute the data transmission method of the first aspect above.

[0013] In a third aspect, an embodiment of the present application provides a drone, including the drone control system of the second aspect described above.

[0014] In a fourth aspect, an embodiment of the present application provides a data transmission device, comprising: a first acquisition module for acquiring the subscription requirements of a business application, where the business application runs on a first processor and / or an external terminal that communicates with a drone; a second acquisition module for acquiring subscribed target data from a second processor according to the subscription requirements; and a transmission module for transmitting the target data to the business application.

[0015] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the storage medium stores a computer program, and the computer program is used to execute the data transmission method of the first aspect mentioned above.

[0016] The embodiments of the present application provide a method and device for data transmission, a drone control system, and a drone. By running a proxy application on a first processor, the interaction between a second processor and various business applications is transferred to the inside of the first processor. The second processor does not need to interact with various business applications, but only needs to interact with the proxy application, thereby improving communication efficiency and reducing the computing pressure of the second processor. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 Schematic diagram of the structure of a drone control system provided by an exemplary embodiment of the present application.

[0018] Figure 2It is a flowchart of a data transmission method provided by an exemplary embodiment of the present application.

[0019] Figure 3 It is a structural diagram of a data transmission device provided by an exemplary embodiment of the present application.

[0020] Figure 4 It is a structural diagram of a drone control system provided by another exemplary embodiment of the present application.

[0021] Figure 5 Schematic diagram of the structure of a drone provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0022] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0023] Figure 1 FIG. 1 is a schematic diagram of the structure of a drone control system 100 provided by an exemplary embodiment of the present application. Figure 1 As shown, the drone control system 100 is located inside a drone 101 , and the drone 101 can communicate with an external terminal 200 , wherein the drone control system 100 includes a first processor 110 and a second processor 120 .

[0024] The first processor 110 can run a variety of applications, for example, it can run a proxy application 112 and at least one business application 111 (for example, business application 1 to business application N). The business application 111 can be an application for implementing a certain business of the drone, while the proxy application 112 is other application programs different from the business application, which is used to proxy the second processor 120 to connect with each business application, which will be described in detail later. The first processor 110 can be an ARM processor (Advanced RISC Machines, ARM), and the embodiment of the present application does not specifically limit the type of the first processor. When the business application 111 on the first processor 110 requires the internal data of the second processor or the data of the execution module mounted under the second processor, the business application 111 can interact with the second processor 120 to obtain the required target data.

[0025] The drone 101 may include at least one execution module 121 (e.g., execution module 1 to execution module N). These execution modules 121 may be mounted on the second processor 120, that is, at least one execution module 121 may be connected to the second processor 120. The execution module of the drone may be an electronic control module, a spraying module, a steering module, or a battery module, and the number of execution modules may be one or more. The embodiment of the present application does not specifically limit the number and type of execution modules.

[0026] In one embodiment, multiple data warehouses (not shown) can be built on the second processor 120. The multiple data warehouses can be used to store the internal data of the second processor and the data of at least one execution module 121, respectively. For example, data warehouse A can be used to store the internal data of the second processor, data warehouse B can be used to store the data of the battery module, and data warehouse C can be used to store the data of the spray module. The second processor can be a Cortex-M processor. The embodiment of the present application does not specifically limit the type of the second processor.

[0027] The external terminal 200 can be a mobile phone, tablet computer, or other device external to the drone. It can run business applications, such as applications (APPs). The external terminal 200 can communicate with the second processor 120 through the first processor 110. In this case, the first processor 110 only forwards messages, and the second processor 120 actually interacts with the external terminal 200.

[0028] It should be noted that the first processor may be provided with a wireless communication module, which may be a mobile communication module such as a 4G / 5G module, or a local area network communication module such as WiFi or Bluetooth. The first processor may establish a connection with an external terminal through the wireless communication module.

[0029] It should be noted that the structure of the above-mentioned drone is only shown to facilitate understanding of the principles of the present application, and the embodiments of the present application are not limited to this.

[0030] Figure 2 It is a flowchart of a data transmission method provided by an exemplary embodiment of the present application. Figure 2 The method may be executed by an agent application running on the first processor of the drone. Figure 2 As shown, the data transmission method includes the following contents.

[0031] 210: Obtaining subscription requirements of a business application, where the business application runs on the first processor and / or an external terminal communicating with the drone.

[0032] Specifically, a proxy application can be built inside the first processor, wherein the proxy application can act as a proxy for the second processor, and be used to connect the second processor to various business applications on behalf of the second processor. The proxy application can be used to receive subscription requirements sent by the business application of the first processor, or to receive subscription requirements sent by the business application of an external terminal, or to receive subscription requirements sent by multiple business applications, where the multiple business applications may include the business application of the first processor and the business application of the external terminal. After obtaining the subscription requirements of the business application, the proxy application can send the subscription requirements to the second processor. The proxy application can also be used to receive target data corresponding to the subscription requirements pushed by the second processor.

[0033] The first processor can run a business application, where the number of business applications can be one or more, and the embodiments of the present application do not specifically limit the number of business applications. A business application can be a process at the software level. The types of multiple business applications can be the same or different, and the embodiments of the present application do not specifically limit the types of business applications.

[0034] The first processor may also include a communication module, such as a 4G module, a WiFi module, etc., and the embodiment of the present application does not specifically limit the type of the communication module. The first processor can communicate with the business application in the external terminal through the communication module to obtain the communication data (such as subscription requirements) of the business application in the external terminal, and send the required target data to the external terminal. It should be noted that the business application of the external terminal can be an application APP. The number of business applications of the external terminal can be one or more, and the embodiment of the present application does not specifically limit the number of business applications.

[0035] For example, the first processor of the drone can communicate with the APP of the mobile phone through the communication module to obtain the subscription requirements sent by the mobile phone APP.

[0036] The subscription requirement can be used to subscribe to the data of at least one execution module connected to the second processor and / or the internal data of the second processor. The subscription requirement can be used to indicate the target data and the subscription period, where the unit of the subscription period can be milliseconds. For example, the subscription requirement can be to subscribe to the spraying data of the spraying module (i.e., the execution module mounted on the second processor) in 30 milliseconds. The number of subscription requirements can be one or more, and the embodiment of the present application does not specifically limit the form and number of subscription requirements.

[0037] In one embodiment, the number of subscription requests may be one, i.e., one subscription request sent by a service application of a first processor or an external terminal. The number of subscription requests may also be multiple, i.e., multiple subscription requests sent simultaneously or non-simultaneously by service applications of multiple first processors or external terminals. It should be noted that details regarding the processing of multiple subscription requests are described in the following embodiments.

[0038] 220: Obtain subscribed target data from the second processor according to the subscription requirement.

[0039] Specifically, the proxy application on the first processor receives a subscription request sent by the first processor and / or a business application of an external terminal, and sends the subscription request to the second processor to obtain the target data corresponding to the subscription request. The proxy application receives the target data pushed by the second processor according to the subscription period indicated in the subscription request. After receiving the target data pushed by the second processor, the proxy application stores the target data in the first processor.

[0040] For example, the proxy application synchronously stores the received target data required for the subscription in a buffer of the proxy application.

[0041] 230: Transmit the target data to the business application.

[0042] Specifically, the proxy application on the first processor sends target data to the first processor that sent the subscription request and / or the service application on the external terminal according to the subscription period indicated in the subscription request. The target data may include data of at least one execution module mounted on the second processor and / or internal data of the second processor.

[0043] It can be seen from this that the embodiment of the present application transfers the interaction work between the second processor and various business applications to the inside of the first processor by running the proxy application on the first processor. The second processor does not need to interact with each business application, but only needs to interact with the proxy application, thereby improving communication efficiency and reducing the computing pressure of the second processor.

[0044] In an embodiment of the present application, obtaining subscribed target data from the second processor according to the subscription requirement includes: obtaining the subscribed target data from the second processor according to a subscription period indicated by the subscription requirement.

[0045] Specifically, the proxy application on the first processor sends a subscription request to the second processor according to the subscription period indicated by the subscription request, where the subscription request can be used to subscribe to internal data of the second processor and data of at least one execution module mounted on the second processor. The proxy application receives the target data corresponding to the subscription request pushed by the second processor according to the subscription period indicated by the subscription request.

[0046] In one embodiment, a subscription port can be established within the first processor, i.e., the subscription port is located within the first processor. An agent application on the first processor obtains target data required for a subscription request from the second processor via the subscription port on the first processor according to the subscription period indicated by the subscription request. The agent application on the first processor can also receive target data required for a subscription request, pushed by the second processor according to the subscription period indicated by the subscription request, via the subscription port.

[0047] It can be seen from this that in the embodiment of the present application, the proxy application can obtain target data through the subscription period indicated by the subscription demand and provide it to the corresponding business application, thereby meeting the business application's demand for data in a timely and effective manner.

[0048] In one embodiment of the present application, the method further includes: if subscription requirements for the same target data from multiple business applications are obtained, determining the greatest common divisor of subscription periods of the multiple subscription requirements, and obtaining the target data from the second processor using the greatest common divisor as the subscription period.

[0049] Specifically, during the subscription process, when the proxy application on the first processor receives multiple subscription requests sent by the first processor of the drone and / or multiple service applications on the external terminal, and at least two of the multiple subscription requests subscribe to the same target data, the proxy application on the first processor can first determine the greatest common divisor of the multiple subscription periods indicated in the multiple subscription requests. This greatest common divisor is used as the subscription period shared by the multiple subscription requests, and a subscription is performed on the second processor to obtain the target data in the second processor.

[0050] It should be noted that the subscription requirement can be used to indicate the target data and the subscription period, where the subscription period can be in milliseconds or seconds. The embodiment of the present application does not specifically limit the unit of the subscription period.

[0051] By taking the greatest common divisor of the subscription cycles of each business application for the same data as the final subscription cycle, the proxy application only needs to subscribe to data according to one subscription cycle, without having to use a different subscription cycle for each business application to subscribe to data. This simplifies the management of business application subscription data and improves the efficiency of data transmission.

[0052] In one embodiment, a plurality of data warehouses may be constructed on the second processor, and the plurality of data warehouses respectively store data of at least one execution module mounted on the second processor and internal data of the second processor.

[0053] For example, the proxy application may determine a greatest common divisor of the multiple subscription periods indicated in the multiple subscription requirements. The proxy application may also determine, based on the multiple target data in the multiple subscription requirements, that the multiple target data corresponds to a single data warehouse in the second processor. The greatest common divisor is used as the subscription period for the multiple subscription requirements, and the proxy application subscribes to the single data warehouse in the second processor to obtain the target data included in the single data warehouse.

[0054] For example, subscription requirement A requires a subscription period of 10 milliseconds to subscribe to the data in data warehouse 1. Subscription requirement B requires a subscription period of 30 milliseconds to subscribe to the data in data warehouse 1. In this case, the greatest common divisor of the subscription periods corresponding to subscription requirements A and B is 10. Therefore, the proxy application can subscribe to data warehouse 1 in the second processor with a subscription period of 10 milliseconds.

[0055] It should be noted that the first processor and / or external terminal can subscribe to the required data through the proxy application. The proxy application will calculate the required target data based on multiple subscription requirements. At the same time, the proxy application will subscribe to the subscription period of the same data warehouse to the second processor according to the greatest common divisor of the multiple subscription periods.

[0056] From this, it can be seen that the embodiment of the present application uses the greatest common divisor as the subscription period shared by multiple subscription requirements, so that the embodiment of the present application can meet the subscription requirements of multiple business applications with one subscription period, simplifying the management of business application subscription data and improving the efficiency of data transmission.

[0057] In one embodiment of the present application, multiple data warehouses are built on the second processor. Different data warehouses can be used to store different data. For example, data warehouse A can be used to store the internal data of the second processor, and data warehouse B can be used to store battery module data. Different data warehouses can also be used to store the same data. For example, data warehouse A and data warehouse B are both used to store the internal data of the second processor. The multiple data warehouses respectively store data of at least one execution module mounted on the second processor and the internal data of the second processor. The target data includes data and / or internal data of at least one execution module.

[0058] Specifically, multiple data warehouses can be built within the second processor of the drone. The second processor can divide the data warehouse into multiple numbered data warehouses based on the type of data within the second processor and the data type of at least one execution module mounted on the second processor.

[0059] For example, multiple data warehouses can be in the form of data warehouse 1, data warehouse 2...data warehouse N. The embodiment of the present application does not specifically limit the form of the data warehouse.

[0060] In one embodiment, there is a one-to-one correspondence between the plurality of data repositories and at least one execution module and internal data of the second processor.

[0061] The second processor loads the internal data of the second processor and the data of at least one execution module mounted under the second processor into multiple data warehouses. In other words, one data warehouse (or a numbered data warehouse) corresponds to the data of one execution module or internal module.

[0062] For example, if at least one execution module includes a spray module, a steering engine module, and a battery module, the data of the spray module may be stored in data warehouse 1, the data of the steering engine module may be stored in data warehouse 2, and the data of the battery module may be stored in data warehouse 3.

[0063] In one embodiment, the target data may include data of at least one execution module and / or internal data, wherein the specific data included in the target data may be flexibly adjusted according to subscription requirements.

[0064] As can be seen, the present embodiment of the present invention stores the data of the second processor in the corresponding data warehouse according to the data type, so as to facilitate the classification and storage of data and the subsequent push of target data. For example, a subscription period can be associated with the data warehouse, so that the second processor can push the data in the data warehouse to the proxy application according to the subscription period corresponding to the data warehouse.

[0065] In one embodiment of the present application, obtaining subscribed target data from the second processor according to subscription requirements includes: initiating a subscription to the second processor according to the subscription requirements, and receiving target data in a target data warehouse pushed by the second processor, where the target data warehouse is one of multiple data warehouses.

[0066] Specifically, the proxy application on the first processor can determine the target data warehouse corresponding to the target data based on the target data indicated in the subscription requirement. The proxy application sends the subscription requirement to the second processor, and the second processor can push the target data stored in the target data warehouse to the proxy application based on the subscription requirement, so that the proxy application obtains the target data in the target data warehouse. The proxy application can receive the target data pushed by the second processor according to the subscription period indicated by the subscription requirement. The target data warehouse is one of the multiple data warehouses in the second processor.

[0067] For example, a subscription request is to subscribe to data in Data Warehouse 1 with a subscription cycle of 50 milliseconds. In this case, the proxy application sends the subscription request to the second processor to subscribe to the data in Data Warehouse 1. The second processor then pushes the data in Data Warehouse 1 to the proxy application according to the subscription cycle. The proxy application then stores the data and pushes the data to the business application of the first processor or external terminal according to the subscription cycle.

[0068] It should be noted that the proxy application may also send multiple subscription requirements for data in different data warehouses to the second processor, and the actual situation may be flexibly set according to the content of the subscription requirements.

[0069] For example, a subscription request is to subscribe to data a in data warehouse 1 and data b in data warehouse 2 with a subscription period of 50 milliseconds. In this case, the proxy application can send this subscription request to the second processor. Based on this subscription request, the second processor can push data a and b stored in data warehouse 1 and data warehouse 2 to the proxy application according to the subscription period indicated by the subscription request. The proxy application then stores data a and b and pushes data a and b to the business application corresponding to the first processor or external terminal according to the subscription period.

[0070] It should be noted that when the business applications of the first processor and / or external terminal (such as brain applications and / or mobile phone apps) all subscribe to data from the proxy application, the communication between the first processor and / or external terminal and the second processor is simplified to the second processor only needing to push the target data in the subscribed data warehouse to the proxy application according to the subscription cycle. There is no longer any direct interaction between the first processor and / or external terminal and the second processor. The communication of the second processor is only connected to the proxy application, which is equivalent to the proxy application having all the data of the second processor. The first processor and / or external terminal is isolated from the communication with the second processor, which increases the communication efficiency and reduces the communication bandwidth of the second processor, thereby reducing the computing pressure of the cerebellum.

[0071] As can be seen, in this embodiment of the application, the proxy application sends the subscription request to the second processor, and the second processor then pushes the target data stored in the target data warehouse to the proxy application based on the subscription request, thereby improving the efficiency of data acquisition. At the same time, the proxy application pushes the target data to the corresponding business application based on the subscription cycle, increasing communication efficiency and reducing the communication bandwidth of the second processor.

[0072] In one embodiment of the present application, data in different data warehouses are pushed by the second processor at different frequencies, and the pushing frequency of the data in the data warehouse matches the subscription period indicated in the subscription requirements of the data.

[0073] Specifically, a subscription port can be built in the first processor, that is, the subscription port is located inside the first processor. The agent application on the first processor can send a subscription request to the second processor through the subscription port on the first processor according to the target data indicated by the subscription request, so as to obtain the target data in the target data warehouse of the second processor.

[0074] The proxy application on the first processor can also receive, through the subscription port, target data in the target data warehouse pushed by the second processor according to the subscription period indicated in the subscription requirement. The subscription port can support different data warehouses to push at different frequencies, and the embodiment of the present application does not specifically limit the frequency used by the data warehouse. The push frequency of the data in the data warehouse can match the subscription period indicated in the subscription requirement of the data, and the data can be the target data.

[0075] It can be seen from this that the embodiment of the present application enables the second processor to push data in different data warehouses at different frequencies through the subscription port, ensuring that data is pushed on demand and reducing the bandwidth occupied by communication.

[0076] In an embodiment of the present application, obtaining subscribed target data from the second processor according to the subscription requirement includes: sending the subscription requirement to the second processor through the subscription port; and obtaining the subscribed target data from the second processor through the subscription port.

[0077] Specifically, a subscription port can be established in the first processor. It should be noted that, through the established subscription port, the business application on the first processor and / or the external terminal can subscribe to the data on the second processor through various subscription methods, such as shared memory communication subscription, TCP / IP communication subscription, etc. The embodiment of the present application does not specifically limit the subscription method.

[0078] When a service application on the first processor and / or an external terminal sends a subscription request, the proxy application on the first processor can receive the subscription request. Furthermore, the proxy application on the first processor can send the subscription request to the second processor via the subscription port to obtain data from at least one execution module on the second processor and / or internal data of the second processor.

[0079] After receiving the subscription request sent by the proxy application, the second processor pushes the target data indicated by the subscription request to the proxy application on the first processor through the subscription port according to the subscription period indicated in the subscription request, so that the proxy application can store the target data. For example, the proxy application synchronously stores the target data required for the received subscription in the buffer of the proxy application, and pushes the target data to the business application of the first processor and / or the external terminal according to the subscription period indicated by the subscription request.

[0080] In one embodiment, the second processor further includes multiple data warehouses, and data of at least one execution module mounted on the second processor and internal data of the second processor are respectively stored in the multiple data warehouses. The proxy application on the first processor can determine a target data warehouse among the multiple data warehouses on the second processor based on a subscription request sent by a business application. The proxy application on the first processor can send the subscription request to the second processor via a subscription port. The proxy application receives target data from the target data warehouse pushed by the second processor according to the subscription period indicated by the subscription request.

[0081] It can be seen from this that the embodiment of the present application makes it more convenient for the first processor and the external terminal to obtain data by subscribing to the data in the second processor in a subscription manner.

[0082] Figure 3 FIG. 1 is a schematic diagram of a data transmission device provided by an exemplary embodiment of the present application. Figure 3 As shown, the data transmission device 300 includes: a first acquisition module 310, a second acquisition module 320 and a transmission module 330.

[0083] The first acquisition module 310 is used to obtain the subscription requirements of the business application, which runs on the first processor and / or the external terminal communicating with the drone; the second acquisition module 320 is used to obtain the subscribed target data from the second processor according to the subscription requirements; and the transmission module 330 is used to transmit the target data to the business application.

[0084] An embodiment of the present application provides a device for data transmission. By running a proxy application on a first processor, the interaction between the second processor and various business applications is transferred to the inside of the first processor. The second processor does not need to interact with various business applications, but only needs to interact with the proxy application, thereby improving communication efficiency and reducing the computing pressure of the second processor.

[0085] According to an embodiment of the present application, the second acquisition module 320 is configured to acquire subscribed target data from the second processor according to a subscription period indicated by a subscription requirement.

[0086] According to one embodiment of the present application, the second acquisition module 320 is used to determine the greatest common divisor of the subscription periods of multiple subscription requirements if subscription requirements for the same target data from multiple business applications are obtained, and obtain the target data from the second processor using the greatest common divisor as the subscription period.

[0087] According to one embodiment of the present application, multiple data warehouses are built on the second processor, and the multiple data warehouses respectively store data of at least one execution module mounted on the second processor and internal data of the second processor. The target data includes data and / or internal data of at least one execution module.

[0088] According to an embodiment of the present application, the second acquisition module 320 is used to initiate a subscription to the second processor according to the subscription demand, and receive target data in the target data warehouse pushed by the second processor, where the target data warehouse is one of multiple data warehouses.

[0089] According to an embodiment of the present application, data in different data warehouses are pushed by the second processor at different frequencies, and the pushing frequency of the data in the data warehouse matches the subscription period indicated in the subscription requirements of the data.

[0090] According to an embodiment of the present application, the second acquisition module 320 is further configured to send the subscription request to the second processor through the subscription port; and obtain the subscribed target data from the second processor through the subscription port.

[0091] It should be understood that the specific working processes and functions of the first acquisition module 310, the second acquisition module 320 and the transmission module 330 in the above embodiment can refer to the above Figures 1 to 2 To avoid repetition, the description of the data transmission method provided in the embodiment will not be repeated here.

[0092] Figure 4 It is a structural diagram of a drone control system provided by another exemplary embodiment of the present application.

[0093] Reference Figure 4 The drone 400 includes a first processor 410 and a second processor 420, wherein the first processor 410 further includes an agent application 411. In addition, the agent application 411 in the first processor 410 is configured to execute instructions to perform the above-mentioned data transmission method.

[0094] The drone 400 may also include a power supply component configured to perform power management for the drone 400, a wired or wireless network interface configured to connect the drone 400 to a network, and an input / output (I / O) interface. The drone 400 may operate based on an operating system stored in the memory 430, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or the like.

[0095] An embodiment of the present invention provides a non-transitory computer-readable storage medium, see Figure 4When the proxy application 411 of the first processor 410 of the drone 400 executes the above-mentioned instructions, the drone 400 is able to perform a data transmission method, including: obtaining data of the second processor from the second processor of the drone through the proxy application on the first processor of the drone, and the proxy application is used to provide data as a proxy for the second processor; when the data of the second processor needs to be obtained, the data is obtained from the proxy application.

[0096] Figure 5 Schematic diagram of the structure of a drone provided by an exemplary embodiment of the present application. Figure 5 The UAV 500 includes a UAV control system 510, wherein the UAV control system 510 is the above-mentioned Figure 4 For details on the drone control system described in the embodiment, please refer to Figure 4 To avoid repetition, the embodiments are not described here in detail.

[0097] All of the above optional technical solutions can be arbitrarily combined to form optional embodiments of the present application, and will not be described in detail here.

[0098] Those skilled in the art will appreciate that the units and algorithm steps of each example 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 performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0099] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0100] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0101] The units described as separate components may or may not be physically separate, and 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 these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0102] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0103] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program check codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0104] It should be noted that, in the description of this application, unless otherwise specified, “plurality” means two or more.

[0105] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A data transmission method, characterized in that: The drone includes a first processor and a second processor, wherein the first processor includes a proxy application, the proxy application being used to transmit data between the second processor of the drone and a business application on behalf of the second processor of the drone, and the method comprising: The proxy application obtains a subscription requirement of the service application, where the service application runs on the first processor and / or an external terminal communicating with the drone; The proxy application obtains subscribed target data from the second processor according to the subscription period indicated by the subscription requirement, and stores the target data in the first processor; The proxy application sends the target data to the business application that sends the subscription request according to the subscription period indicated in the subscription request, The target data includes data of at least one execution module mounted on the second processor and / or internal data of the second processor.

2. The data transmission method according to claim 1, characterized in that The method further comprises: If subscription requirements for the same target data from multiple business applications are obtained, the greatest common divisor of subscription periods of the multiple subscription requirements is determined, and the target data is obtained from the second processor using the greatest common divisor as the subscription period.

3. The data transmission method according to claim 1, wherein: A plurality of data warehouses are built on the second processor, and the plurality of data warehouses respectively store the data of the at least one execution module mounted on the second processor and the internal data of the second processor.

4. The data transmission method according to claim 3, characterized in that: The proxy application obtains subscribed target data from the second processor according to the subscription period indicated by the subscription requirement, including: The proxy application initiates a subscription to the second processor according to the subscription requirement, and receives the target data in a target data warehouse pushed by the second processor, where the target data warehouse is one of the multiple data warehouses.

5. The data transmission method according to claim 4, characterized in that: The data in different data warehouses are pushed by the second processor at different frequencies, and the pushing frequency of the data in the data warehouse matches the subscription period indicated in the subscription requirement of the data.

6. The data transmission method according to claim 1, characterized in that: The proxy application obtains subscribed target data from the second processor according to the subscription period indicated by the subscription requirement, including: Sending the subscription request to the second processor through a subscription port; The subscribed target data is obtained from the second processor through the subscription port.

7. A UAV control system, characterized in that: include: A first processor and a second processor, wherein the first processor is configured with a proxy application, and the proxy application is used to transmit data between the second processor of the drone and the business application on behalf of the second processor, and to execute the data transmission method described in any one of claims 1 to 6.

8. A drone, characterized in that: Comprising the drone control system as described in claim 7.

9. A data transmission device, characterized in that: The drone includes a first processor and a second processor, wherein the first processor includes a proxy application, and the proxy application is used to transmit data between the second processor of the drone and the business application on behalf of the second processor. Wherein, the device further comprises: A first acquisition module is configured to acquire, through the proxy application, a subscription requirement of a service application, wherein the service application runs on a first processor and / or an external terminal communicating with the drone; a second acquisition module, configured to acquire, through the proxy application, subscribed target data from the second processor according to the subscription period indicated by the subscription requirement, and store the target data in the first processor; a transmission module, configured to send the target data to the business application that sends the subscription requirement through the proxy application according to the subscription period indicated in the subscription requirement, The target data includes data of at least one execution module mounted on the second processor and / or internal data of the second processor.

10. A computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the data transmission method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and system for realizing resource sharing of terminal equipment

    CN101729557A

  • Intelligent multi-rotor UAV based on on-board computer and realization method thereof

    CN108062108A

  • Multi-container-based asymmetric processing system suitable for ubiquitous power Internet of Things edge terminal

    CN111600936A