Data transmission method and device, program product, server and terminal equipment

By establishing a message queue telemetry transmission connection between the server and the terminal device, and automatically subscribe and transmitting stamping equipment data, the problem of difficult equipment data management in the prior art is solved, and the automated collection and management of data is realized.

CN120066818APending Publication Date: 2025-05-30NIO TECH ANHUI CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510136498.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-07
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In the prior art, the equipment data management of the stamping process is difficult, and users need to manually or semi-automatically query and download equipment data from the equipment system or industrial control machine.

Method used

Automatic subscription and transmission of data is achieved by establishing a message queue telemetry transmission connection between the server and the terminal device. The specific steps include receiving data requests, subscribing to the target publishing topic, receiving and processing the target data, and finally sending the required data to the terminal device.

Benefits of technology

It realizes automatic collection and management of stamping equipment data, reduces user operation difficulty, improves data acquisition efficiency and accuracy, and simplifies the integration and display of equipment data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120066818A_ABST
    Figure CN120066818A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of communication, and particularly relates to a data transmission method and device, a computer program product, a server and terminal equipment. The method comprises the steps that different data sources correspond to different publishing themes, and a server subscribes a corresponding target publishing theme through message queue telemetering transmission connection based on the data source of required data and sends target data of the target publishing theme to first terminal equipment. According to the method, various data of the stamping equipment can be integrated, and different publishing themes can be set for the data of different data sources, so that the server can efficiently subscribe to the publishing themes and send the required data to the terminal equipment, and scientific and convenient equipment data management is facilitated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of communication technologies, and particularly relates to a data transmission method, apparatus, computer program product, server, and terminal device. Background Art

[0002] In modern automobile manufacturing, the stamping process is an indispensable production link, and the efficient operation of stamping equipment is crucial for ensuring product quality and production efficiency. In the current application scenario, various types of equipment data in the stamping process are scattered in different equipment systems or industrial control computers, and users need to manually or semi-automatically query and download equipment data from the equipment systems or industrial control computers, resulting in relatively high difficulty in obtaining and managing the equipment data of the stamping process. Summary of the Invention

[0003] In view of this, embodiments of this application provide a data transmission method, apparatus, computer program product, server, and terminal device to solve the problem of relatively high management difficulty of equipment data in the stamping process in the prior art.

[0004] The first aspect of the embodiments of this application provides a data transmission method applied to a server. There is a Message Queuing Telemetry Transport (MQTT) connection between the server and a target device. The method may include:

[0005] Receiving a data request from a first terminal device, where the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source;

[0006] Subscribing, based on the MQTT connection, to a target publication topic corresponding to the target data source from the target device; data corresponding to different data sources corresponds to different publication topics;

[0007] Receiving the target data corresponding to the target publication topic;

[0008] Sending the target data to the first terminal device.

[0009] The second aspect of the embodiments of this application provides a data transmission method applied to a terminal device, which may include:

[0010] Sending a data request to a server, where the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source;

[0011] Receiving the target data from the server;

[0012] Determining a target display method corresponding to the target data type;

[0013] Present the target data based on the target presentation mode of the target data.

[0014] A third aspect of the embodiments of the present application provides a data transmission device applied to a server. There is a Message Queuing Telemetry Transport (MQTT) connection between the server and a target device. The device may include:

[0015] A request receiving module, configured to receive a data request from a first terminal device. The data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source.

[0016] A subscription module, configured to subscribe to a target publication topic corresponding to the target data source from the target device based on the MQTT connection. Different data sources have different publication topics.

[0017] A data receiving module, configured to receive the target data corresponding to the target publication topic.

[0018] A sending module, configured to send the target data to the first terminal device.

[0019] A fourth aspect of the embodiments of the present application provides a data transmission device applied to a terminal device, which may include:

[0020] A sending module, configured to send a data request to a server. The data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source.

[0021] A receiving module, configured to receive the target data from the server.

[0022] A presentation module, configured to present the target data based on the target presentation mode of the target data.

[0023] A fifth aspect of the embodiments of the present application provides a data transmission system, which includes a server, a terminal device, and a target device. There is an MQTT connection between the server and the target device.

[0024] The server receives a data request from a terminal device, subscribes to a target publication topic corresponding to the target data source from the target device based on the MQTT connection, receives the target data corresponding to the target publication topic, and sends the target data to the terminal device.

[0025] The terminal device sends the data request to the server and receives the target data from the server.

[0026] The target device receives a subscription request sent by the server and sends target data corresponding to the target publishing topic to the server.

[0027] In a sixth aspect of the embodiments of the present application, there is provided a computer-readable storage medium storing a computer program, which when executed by a processor implements the steps of any of the above data transmission methods.

[0028] In a seventh aspect of the embodiments of the present application, there is provided a server, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the server implements the steps of any of the above data transmission methods applied to the server.

[0029] In an eighth aspect of the embodiments of the present application, there is provided a terminal device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the terminal device implements the steps of any of the above data transmission methods applied to the terminal device.

[0030] In a ninth aspect of the embodiments of the present application, there is provided a computer program product including a computer program, which when run causes any of the above data transmission methods to be executed.

[0031] The beneficial effects of the embodiments of the present application compared with the prior art are as follows: In the embodiments of the present application, different data sources correspond to different publishing topics. The server, based on the data source of the required data, subscribes to the corresponding target publishing topic through the Message Queuing Telemetry Transport (MQTT) connection and sends the target data of the target publishing topic to the first terminal device. In the embodiments of the present application, various types of data of the stamping equipment can be integrated, and different publishing topics are set for the data from different data sources, enabling the server to efficiently subscribe to the publishing topics and send the required data to the terminal device, which helps to scientifically and conveniently manage the device data. Description of the Drawings

[0032] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0033] Figure 1 Schematic diagram of device data transmission from the stamping equipment to the controller;

[0034] Figure 2Schematic diagram for implementing device data transmission using the MQTT protocol;

[0035] Figure 3 Flowchart of an embodiment of a data transmission method applied to a server in an embodiment of the present application;

[0036] Figure 4 Flowchart of an embodiment of a data transmission method applied to a terminal device in an embodiment of the present application;

[0037] Figure 5 Schematic diagram for editing the http request node;

[0038] Figure 6 Schematic diagram of each display interface of the terminal device;

[0039] Figure 7 Overall schematic diagram of the data transmission process;

[0040] Figure 8 Structural diagram of an embodiment of a data transmission device applied to a server in an embodiment of the present application;

[0041] Figure 9 Structural diagram of an embodiment of a data transmission device applied to a terminal device in an embodiment of the present application;

[0042] Figure 10 Schematic block diagram of a server in an embodiment of the present application;

[0043] Figure 11 Schematic block diagram of a terminal device in an embodiment of the present application. Detailed implementation manners

[0044] To make the inventive purpose, features, and advantages of the present application more obvious and understandable, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the embodiments described below are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present application.

[0045] It should be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, wholes, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.

[0046] It should also be understood that the terms used in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application. As used in the specification of this application and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include the plural forms.

[0047] It should be further understood that the term "and / or" used in the specification of this application and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0048] As used in this specification and the appended claims, the term "if" can be interpreted as "when", "once", "in response to determining" or "in response to detecting" depending on the context. Similarly, the phrases "if determined" or "if [the described condition or event] is detected" can be interpreted as meaning "once determined", "in response to determining", "once [the described condition or event] is detected" or "in response to detecting [the described condition or event]" depending on the context.

[0049] In addition, in the description of this application, the terms "first", "second", "third", etc. are only used for distinguishing descriptions and cannot be understood as indicating or implying relative importance.

[0050] In modern automobile manufacturing, the stamping process is an indispensable production link, and the efficient operation of stamping equipment is crucial for ensuring product quality and production efficiency. In the current application scenario, various types of equipment data of the stamping process are scattered in different equipment systems or industrial control computers, and users need to manually or semi-automatically query and download the equipment data from the equipment systems or industrial control computers, resulting in greater difficulty in obtaining and managing the equipment data of the stamping process.

[0051] In view of this, the embodiments of this application provide a data transmission method, device, computer program product, server and terminal device to solve the problem of relatively large management difficulty of the equipment data of the stamping process in the prior art.

[0052] In the actual application scenario, there may be one or more stamping devices running in the workshop. The stamping devices can generate various types of equipment data. By collecting and displaying the equipment data, it can help managers better understand the operation of the stamping devices and is conducive to scientific and efficient workshop management.

[0053] In the embodiments of this application, a programmable logic controller (PLC) can be used to control and manage the stamping devices, and the PLC can collect the equipment data generated by the stamping devices, such as Figure 1as shown

[0054] For example, a PLC can control and manage a stamping device, and collect and integrate the device data of the stamping device; for another example, a PLC can control and manage two or more stamping devices, and collect the device data of the multiple stamping devices.

[0055] In a specific implementation manner of the embodiment of the present application, in order to improve the efficiency of data collection, each device data can be specifically transmitted from the stamping device to the PLC by using the S7 protocol and the Open Platform Communications Unified Architecture (OPC UA) protocol; among them, the S7 protocol ensures the efficient communication between the stamping device and the PLC, and the OPC UA protocol provides a standardized data exchange interface, which is suitable for the integration of stamping devices from different manufacturers. By configuring the OPC UA protocol gateway and writing a data transmission program, efficient transmission between the stamping device and the PLC can be achieved.

[0056] The above device data may include, but is not limited to, production data (such as the number of stampings, production cycle, or output), device status data (such as operating status, fault code, or maintenance status), alarm data (such as abnormal pressure data or abnormal temperature data), sensor data (such as pressure sensor data, temperature sensor data, position sensor data, or speed sensor data), energy consumption data (such as power consumption data, air pressure consumption data, or water cooling consumption data), process parameter data (such as stamping force, stamping speed, die clearance, or material thickness), quality inspection data (such as dimension inspection data or quality data), environmental data (such as workshop temperature, workshop humidity, or workshop air quality), and other one or more types of data.

[0057] After that, the server can obtain the required data from the PLC and send the data to the terminal device for the user to manage and analyze the data.

[0058] Considering that the network environment in the stamping workshop may be poor, therefore, in the embodiment of the present application, the data transmission between the PLC and the server can be realized based on the Message Queuing Telemetry Transport (MQTT) protocol; since the data packets transmitted by the MQTT protocol are small and occupy less network bandwidth, it can better adapt to the network environment in the stamping workshop.

[0059] Specifically, the PLC can send each device data to a message middleware Broker running MQTT or a device running an extensible Erlang MQTT middleware (Erlang MQTT eXtensible, EMQX). Broker and EMQX are the media for data storage and data reception and distribution in the MQTT protocol. For ease of description, hereinafter, the message middleware Broker and EMQX are referred to as message middleware, and the device running the message middleware is referred to as the target device. Among them, the target device can be any kind of computing device, and the embodiments of the present application do not limit this. For example, the target device can be a desktop computer, and the message middleware can be run on this desktop computer.

[0060] Here, a data transmission system can be specifically implemented according to the MQTT protocol. The data transmission system can include a server, a terminal device, and a target device. The message middleware can be run on the target device. The target device and the server can be connected through MQTT. The PLC can publish device data to the target device, and the server can subscribe to relevant published topics (topics) through the target device. The target device can then send data to the server so that the server sends the required data to the terminal device, thereby triggering the terminal device to display the data, as Figure 2 shown.

[0061] After the target device receives each device data sent by the PLC, the message middleware in the target device can determine the corresponding published topic according to the data source of each device data. The name of the published topic can include the data source of the corresponding device data. Among them, the data source of the device data can include the production place and data type of the device data. The device data of each data source can correspond to a published topic, and the device data of different data sources can correspond to different published topics.

[0062] For example, the production place of a certain device data is the stamping workshop of Factory A, and the data type of the device data is production data. Accordingly, it can be determined that the name of the device data is "Factory A / Stamping Workshop / Production Data". The corresponding code for this example can be:

[0063] / / publisher.js

[0064] var mqtt=require('mqtt')

[0065] var client=mqtt.connect('mqtt: / / mqtt.eclipse.org',{

[0066] clientId:"mqtt_sample_publisher_1",

[0067] clean: false

[0068] [[ID=5}}

[0069] client.on('connect', function (connack)) {

[0070] if (connack.returnCode == 0) {

[0071] client.publish("Factory A / Stamping Workshop / Production Data

[0072] ", JSON.stringify({ *: *}), { qos: 1}, function (err) {

[0073] if (err == undefined) {

[0074] console.log("Publish finished")

[0075] client.end()

[0076] } else {

[0077] console.log("Publish failed")

[0078] }

[0079] }

[0080] } else {

[0081] console.log('Connection failed: $(connack.returnCode}')

[0082] }

[0083] }

[0084] Through standardized naming, the server can efficiently determine the publication topics to be subscribed to and obtain the required device data based on the names of the data.

[0085] In a specific implementation manner of the embodiment of the present application, the naming process of the device data can also be executed by the PLC; specifically, the PLC can determine the publication topics corresponding to the device data based on the production locations and data types respectively corresponding to the received device data, and can send each publication topic to the message middleware of the target device. The detailed process can refer to the above description and will not be elaborated here.

[0086] After that, the server can subscribe to relevant publishing topics from the message middleware. When the target device receives device data corresponding to the relevant publishing topics (i.e., after the relevant publishing topics publish data), the target device can push the published data to the server, and the server can receive the required data and send the data to the terminal device to enable the terminal device to perform data display, facilitating the user to view the device data.

[0087] Next, the data transmission method of the embodiment of the present application will be described from the perspectives of the server and the terminal device respectively.

[0088] It should be noted that both the server and the terminal device in the present application can be computing devices such as workstations, desktop computers, notebooks, palmtop computers, tablets, smart phones, etc., or other computing devices.

[0089] Specifically, please refer to Figure 3 An embodiment of a data transmission method applied to a server in the embodiment of the present application may include steps S301 to S304:

[0090] Step S301, receive a data request from the first terminal device.

[0091] After the server receives the data request sent by the first terminal device, it will subscribe to the publishing topic based on the data request; wherein, the data request includes the data source of the data required by the first terminal device (hereinafter referred to as the target data source).

[0092] Specifically, the server can parse the data request from the first terminal device to obtain the parsed data request, and extract the target data source from the parsed data request; then, the server can subscribe to the publishing topic based on the target data source.

[0093] Step S302, subscribe to the target publishing topic corresponding to the target data source from the target device based on the Message Queuing Telemetry Transport connection.

[0094] In the embodiment of the present application, there is an MQTT connection between the server and the target device. The server can subscribe to relevant publishing topics from the target device, thereby obtaining the required data and sending the required data to the first terminal device.

[0095] Since the data source of the device data corresponds to the publishing topic; therefore, the server can determine the publishing topic to be subscribed based on the target data source (hereinafter referred to as the target publishing topic).

[0096] Specifically, the server may send a subscription list acquisition request to the target device, and the subscription list acquisition request is used to instruct the target device to send a subscription list to the server, and the subscription list includes at least one publication topic.

[0097] After receiving the subscription list sent by the target device, the server may determine, from the subscription list, the publication topic corresponding to the target data source, and this publication topic is the target publication topic.

[0098] For example, the subscription list includes publication topic 1, publication topic 2, and publication topic 3; among them, the name of publication topic 1 is "Factory B / Stamping Workshop / Production Data", the name of publication topic 2 is "Factory B / Stamping Workshop / Alarm Data", and the name of publication topic 3 is "Factory B / Stamping Workshop / Equipment Status Data"; if the production location in the target data source is the stamping workshop of Factory B and the data type in the target data source is alarm data, then the publication topic corresponding to the target data source can be determined from the subscription list as "Factory B / Stamping Workshop / Alarm Data" (i.e., publication topic 2).

[0099] After that, the server may generate a corresponding subscription request based on the target publication topic, and the subscription request includes the target publication topic; after that, the server may send the subscription request to the target device based on the MQTT connection to instruct the target device to send the data corresponding to the target publication topic (hereinafter referred to as the target data) to the server.

[0100] In a specific implementation manner of the embodiment of the present application, in order to improve the reliability of data transmission and optimize the usage of network resources, the server may determine the Quality of Service (QoS) of the target publishing topic based on factors such as the importance of the required data, the network environment, or resource consumption. Subsequently, based on the server QoS of the target publishing topic, the target publishing topic can be subscribed to. Specifically, a corresponding subscription request can be generated based on the target publishing topic and the corresponding QoS. The subscription request includes the target publishing topic and the QoS of the target publishing topic, and the subscription request can be sent to the target device to request subscribing to the target publishing topic. If the QoS corresponding to the target publishing topic is larger, it indicates that the reliability of the data corresponding to the target publishing topic (hereinafter referred to as target data) during transmission is higher, but at the same time, it may also bring higher latency and communication overhead. If the QoS corresponding to the target publishing topic is smaller, it indicates that the reliability of the target data during transmission is lower, but at the same time, the latency and communication overhead it brings may also be lower. When the value of the QoS corresponding to the target publishing topic is 0, the target device will only send the target data to the server once, regardless of whether the target data is successfully received by the server. When the value of the QoS corresponding to the target publishing topic is 1, the target device will send the target data to the server at least once, so that the target data can be received by the server at least once. When the value of the QoS corresponding to the target publishing topic is 2, the target device will ensure that the target data is exactly received by the server once, without the loss or repeated transmission of the target data. By setting the corresponding QoS for the target publishing topic, the network load and transmission reliability can be better balanced, thus being able to adapt to various transmission environments and user requirements to a large extent.

[0101] As an example, if the importance of the required data is relatively low, for example, environmental data such as workshop temperature or workshop humidity will not cause serious impacts even if data is occasionally lost, the value of the QoS corresponding to the target publishing topic can be determined to be 0. If the importance of the required data is relatively high, for example, device status data such as operating status or maintenance status is relatively important and receiving repeated commands does not cause impacts, the value of the QoS corresponding to the target publishing topic can be determined to be 1. For example, alarm data such as abnormal pressure data or abnormal temperature data is crucial for the normal operation of stamping equipment, so the value of the QoS corresponding to the target publishing topic can be determined to be 2.

[0102] As another example, if the network stability between the target device and the server is high, it can be considered that the probability of the target data being lost during transmission is small. Therefore, the value of QoS corresponding to the target publishing topic can be determined to be 0; if the network stability between the target device and the server is moderate, it can be considered that there is a certain probability that the data will be lost during transmission. At this time, the value of QoS corresponding to the target publishing topic can be determined to be 1; if the network stability between the target device and the server is low, it can be considered that there is a high probability that the data will be lost during transmission. Therefore, the value of QoS corresponding to the target publishing topic can be determined to be 2.

[0103] As another example, if the available network resources of the target device or the server are few, or the device is in a low-bandwidth network, it is necessary to maintain a low communication overhead during data publishing and receiving. Therefore, the value of QoS corresponding to the target publishing topic can be determined to be 0; if the resources of the target device or the server are moderate, it is allowed to maintain a moderate communication overhead during data publishing and receiving. Therefore, the value of QoS corresponding to the target publishing topic can be determined to be 1; if the available network resources of the target device or the server are large, it is allowed to maintain a large communication overhead during data publishing and receiving. Therefore, the value of QoS corresponding to the target publishing topic can be determined to be 2.

[0104] Step S303: Receive the target data corresponding to the target publishing topic.

[0105] Step S304: Send the target data to the first terminal device.

[0106] After receiving the subscription request sent by the server, the target device can push the data published in the target publishing topic (hereinafter referred to as the target data) to the server if there is data published in the target publishing topic.

[0107] After receiving the target data, the server can send the target data to the first terminal device to trigger the first terminal device to display the target data. Accordingly, automatic collection and transfer of device data can be achieved without manual operation by the user, which can reduce labor costs and improve the user experience, laying a foundation for the scientific supervision of the stamping workshop.

[0108] In a specific implementation manner of the embodiment of the present application, the server can communicate with the first terminal device based on the HyperText Transfer Protocol (HTTP).

[0109] When the user needs to view the data corresponding to the target data source, a corresponding instruction can be triggered on the first terminal device (for example, clicking on the corresponding control on the display interface of the first terminal device) to trigger the first terminal device to send a data request to the server. Among them, the data request can be used to instruct the server to send the target data corresponding to the target data source to the first terminal device. The first terminal device can send this data request to the server. After receiving this data request, the server can subscribe to this target data from the target device and then send this target data to the first terminal device to trigger the first terminal device to display this target data.

[0110] If the target data includes alarm data, the server can send the target data to the second terminal device to trigger the second terminal device to display the target data; among them, the second terminal device and the first terminal device can be the same terminal device or different terminal devices.

[0111] As an example, the first terminal device can be a computer and the second terminal device can be a mobile phone. Then, after receiving the alarm data, the server can send the alarm data to the user's mobile phone, so that the user can conveniently view the alarm data through the mobile phone and make a timely response, which helps to maintain the normal operation of the system.

[0112] In a specific implementation manner of the embodiment of the present application, before sending the target data to the first terminal device, the server can also perform data processing on the target data to obtain the processed target data; after that, the server can send the processed target data to the first terminal device to trigger the first terminal device to display the processed target data; the above data processing process can include, but is not limited to, one or more processing methods such as data cleaning, data conversion, or data verification.

[0113] For example, when the target data is collected, it may be affected by factors such as environmental interference and equipment failure, resulting in noise data in the target data; therefore, the server can perform data cleaning on the target data to improve the accuracy of the target data; for example, the server can filter out the target data that is significantly higher or lower than the data average value to obtain the filtered target data, and can send the filtered target data to the first terminal device to trigger the first terminal device to display the filtered target data.

[0114] For another example, target data is usually sent to a server in a specific format (such as binary, string, etc.), and this specific format may not meet the format requirements of the target data for the first terminal device. Therefore, after receiving the target data, the server can perform data conversion on the target data, converting the target data from this specific format to a preset unified format to obtain the converted target data. For example, if the target data received by the server is temperature data in binary format, and the first terminal device requires the temperature data to be in floating-point format, then the server can convert the temperature data in binary format to temperature data in floating-point format to meet the requirements of the first terminal device. Another example is that if the target data received by the server is date and time in string format, and the first terminal device requires the date and time to be in a standard format, then the server can convert the date and time in string format to date and time in standard format to meet the requirements of the first terminal device. After that, the server can send the converted target data to the first terminal device to instruct the first terminal device to display the converted target data.

[0115] For another example, if a sensor fails or an error occurs during data transmission, target data outside a reasonable range may be collected. Therefore, after receiving the target data, the server can perform data verification on the target data, filtering out the data outside the reasonable range to obtain the filtered target data. After that, the server can send the filtered target data to the first terminal device to trigger the first terminal device to display the filtered target data.

[0116] Next, the data transmission method of the embodiments of the present application will be described from the perspective of the terminal device. Specifically, please refer to Figure 4 One embodiment of a data transmission method applied to a terminal device in the embodiments of the present application may include steps S401 to S403:

[0117] Step S401, send a data request to the server.

[0118] When a user needs to view the target data corresponding to the target data source, a corresponding instruction can be triggered on the terminal device (such as clicking a control on the display interface of the terminal device) to trigger the terminal device to generate a data request. After that, the terminal device can send this data request to the server to request the server to send the target data corresponding to the target data source to the terminal device, and the data acquisition instruction may include the target data source.

[0119] It should be understood that the terminal device referred to here may be the first terminal device or the second terminal device mentioned above.

[0120] As an example, the terminal device can set an http request node to send a corresponding data request to the server to request the server to send the target data to the terminal device. For example, Figure 5 as shown, the request method can be set to "POST", and the address can be set to the corresponding address of the server, which is "https: / / xxx" here.

[0121] Step S402: Receive the target data from the server.

[0122] Step S403: Display the target data based on the target display method of the target data.

[0123] After receiving the target data sent by the server, the terminal device can display the target data on the display interface of the terminal device.

[0124] As an example, the terminal device can display the target data in a preset front-end interface, which can be the interface of an application or the interface of a website. For example, the terminal device can display the target data in the interface of a corresponding application (such as email, SMS). After the user logs in or opens the application, the target data can be viewed; for another example, the terminal device can display the target data in the interface of a web page (such as an online management system) for managing device data. After the user logs in or opens the web page, the target data can be viewed.

[0125] In the above example, the interface for displaying the target data can be built based on any one of the user interface (UI) building tools. The building tools can include but are not limited to Node-Red, n8n, ThingsBoard, etc. After building the interface for displaying the target data, the target data can be displayed in the interface; after the user logs in to the interface, the target data can be viewed.

[0126] Since the target data of different data types may have different data characteristics or user requirements, therefore, the embodiments of the present application can also set different display methods for the target data of different data types.

[0127] After receiving the target data, the terminal device can determine the corresponding display method (hereinafter referred to as the target display method) corresponding to the target data type based on the data type of the target data (hereinafter referred to as the target data type).

[0128] For example, the data collected by sensors usually has the characteristics of continuity or discreteness. Continuous data (such as temperature) is suitable for being displayed in the form of a line chart. Through the line chart, the changing trend of the data over time can be clearly reflected; while discrete data (such as the number of equipment failures) is suitable for being displayed in the form of a bar chart. Through the bar chart, the data sizes in different time periods can be compared more intuitively.

[0129] For another example, managers usually need detailed data information for in-depth data analysis. Therefore, if the user is a manager, they may hope to view richer data details. Thus, if the user is a manager, the data details can be displayed in the form of multi-dimensional data views, advanced statistical charts (such as box plots), etc.

[0130] For another example, if the user is an ordinary user (such as an ordinary consumer or a businessperson), they may be more concerned about the subjectivity and understandability of the data. Therefore, if the user is an ordinary user, they may need to display relatively simplified data information; for example, display the simplified data in the form of intuitive charts (such as pie charts, bar charts), etc.

[0131] The display methods in the embodiments of the present application may include but are not limited to display methods of charts such as line charts, bar charts, pie charts, or scatter plots, as well as display methods of text. The embodiments of the present application do not limit this and can be specifically and contextually set according to actual needs.

[0132] In a specific implementation manner of the embodiments of the present application, a mapping relationship (hereinafter referred to as the first mapping relationship) between the data type and the display method can also be constructed based on the data of each data type and the corresponding display methods respectively; for example, the data of data type 1 needs to be displayed in the way of display method 2, the data of data type 2 needs to be displayed in the way of display method 4, the data of data type 3 needs to be displayed in the way of display method 1, and the data of data type 4 needs to be displayed in the way of display method 3; accordingly, the following first mapping relationship shown in the table can be constructed:

[0133] Data type Display method Data type 1 Display method 2 Data type 2 Display method 4 Data type 3 Display method 1 Data type 4 Display method 3

[0134] In this example, if the target data type is data type 3, the display method corresponding to data type 3 can be determined from the first mapping relationship as display method 1. Therefore, display method 1 can be determined as the target display method. Through the first mapping relationship, the target display method can be efficiently determined, which helps to improve the user experience.

[0135] After determining the target display method, the terminal device can use the target display method to display the target data.

[0136] In a specific implementation manner of the embodiment of the present application, before presenting the target data, the terminal device may first perform data processing on the target data based on the target data type to obtain the processed target data; thereafter, the processed target data may be presented using the target presentation method. Accordingly, the interpretability of the target data can be improved, and the supervision difficulty for users can be reduced.

[0137] The above data processing process may include, but is not limited to, data aggregation or data annotation and other processing processes.

[0138] For example, data aggregation data processing may be performed on environmental data; for instance, based on the workshop temperature and workshop humidity per minute in the environmental data, the average workshop temperature and average workshop humidity per hour may be calculated respectively, and the maximum and minimum values corresponding to the workshop temperature and workshop humidity within each hour may be determined to obtain the aggregated data.

[0139] For another example, data annotation may be performed on device data; for instance, based on the operating status in the device status data in a day, the overall device status for that day may be determined; specifically, if the operating status throughout the day is "normal operation", the overall device status for that day may be determined as "normal operation" and corresponding annotation may be made (such as by text or color); if there is data with "fault" in the operating status in a day, the overall device status for that day may be determined as "abnormal operation" and corresponding annotation may be made.

[0140] As an example, a mapping relationship (hereinafter referred to as the second mapping relationship) between the data type and the data processing process may also be constructed based on the data of each data type and the corresponding data processing processes respectively; for example, the data of data type 1 needs to be processed according to data processing process 2, the data of data type 2 needs to be processed according to data processing process 3, the data of data type 3 needs to be processed according to data processing process 1, and the data of data type 4 needs to be processed according to data processing process 4. Accordingly, the following second mapping relationship shown in the table can be constructed:

[0141] Data type Data processing process Data type 1 Data processing process 2 Data type 2 Data processing process 3 Data type 3 Data processing process 1 Data type 4 Data processing process 4

[0142] In this example, if the target data type is data type 3, the data processing process corresponding to data type 3 can be determined from the second mapping relationship as data processing process 4. Thereafter, the target data can be processed according to data processing process 4. Through the second mapping relationship, the data processing process corresponding to the target data can be efficiently determined, which helps to improve the timeliness of the subsequent data presentation process.

[0143] In a specific implementation manner of the embodiment of the present application, multiple display interfaces can also be set up based on actual management needs, and corresponding target data can be displayed on different display interfaces. For example, based on the management needs of the stamping process, the device data in the stamping workshop can be classified and displayed according to dimensions such as stamping lines, stamping workshops, stamping device power, stamping power, stamping production information, and stamping production lines. Each display dimension can correspond to a display interface. Accordingly, users can view the corresponding display interfaces according to their needs, so as to more effectively monitor and optimize each link of stamping production, which helps to improve the user experience and supervision efficiency.

[0144] As an example, the display interfaces corresponding to the dimensions of stamping lines, stamping workshops, stamping device power, stamping power, stamping production information, and stamping production lines can be as shown in FIG. 6. Among them, the display interface of the stamping line dimension can display the production data and device status data of each stamping device (including stamping machines, die heating systems, cooling systems, conveying devices, etc.) and auxiliary devices in the stamping production line; the display interface of the stamping workshop dimension can display the production data and device status data of multiple stamping production lines; the display interface corresponding to the dimension of stamping device power can display the device status data, sensor data, and energy consumption data of each stamping device; the display interface of the stamping power dimension can display the device status data and energy consumption data of each stamping machine; the display interface of the stamping production information dimension can display the production data and quality inspection data in the stamping production process; the display interface of the stamping production line dimension can display the production data, device status data, energy consumption data, and quality inspection data of each stamping device in the stamping production line.

[0145] In a specific implementation manner of the embodiment of the present application, the target device can also send each device data received from the PLC to a preset database (such as a MySQL database) for storage and backup. Optionally, the server or terminal device can also regularly read each device data within a specific time period from the database, and can perform data analysis based on the read device data to learn about the characteristics and trends in the stamping production process. For example, statistical analysis can be performed on the read alarm data, and the trends of alarm duration and the number of device alarms can be reflected through line charts. The top N device alarm reasons with the most occurrences and the top N alarm durations with the longest time can also be reflected through a visual list.

[0146] For ease of understanding, the overall process of data transmission in the embodiment of the present application will be briefly introduced below with reference to the accompanying drawings.

[0147] Please refer to Figure 7, embodiments of the present application can implement the publication and subscription of device data based on the MQTT protocol; specifically, each stamping device and PLC in the stamping workshop are the device layer in the data transmission process. The stamping devices can generate various device data, and the PLC can collect various device data; the message middleware of MQTT is the transmission layer in the data transmission process, which can realize the transfer of device data. Here, the message middleware can run on the target device, and there is an MQTT connection between the server and the target device; the server and the terminal device are the application layer in the data transmission process, and can perform consumption behaviors such as processing, analyzing, and displaying based on the device data.

[0148] Specifically, the stamping devices can send the generated various device data to the PLC; after the PLC collects the device data, it can send the device data to the message middleware of the target device.

[0149] The server can subscribe to the target publication topic from the target device. When data is published to the target publication topic, the target device can push the published data to the server; then, the server can send the published data (i.e., the target data) to the terminal device.

[0150] In this example, the terminal device A (i.e., the first terminal device) sends a data request to the server to request the server to send the target data to the terminal device A; after obtaining the target data, the server can send the target data to the terminal device A so that the terminal device A can display the target data; in addition, since the target data includes alarm data, the server can also send the target data to the terminal device B (i.e., the second terminal device) and can display the data through the terminal device B so that the user can view the alarm data in a timely manner through the terminal device B.

[0151] In addition, the target device can also store the various device data received from the PLC in the database for backup; when the device data is lost, the lost device data can be obtained from the database for data recovery, thereby enhancing the system robustness; in addition, backing up the data also facilitates the server or the terminal device to regularly analyze the various device data, which helps to improve the utilization rate of historical device data.

[0152] In summary, in embodiments of the present application, different data sources correspond to different publication topics. The server subscribes to the corresponding target publication topic through the Message Queuing Telemetry Transport connection based on the data source of the required data, and sends the target data of the target publication topic to the first terminal device. In embodiments of the present application, various data of the stamping devices can be integrated, and different publication topics are set for the data of different data sources, so that the server can efficiently subscribe to the publication topic and send the required data to the terminal device, which helps to scientifically and conveniently manage the device data.

[0153] It should be understood that the magnitudes of the sequence numbers of the steps in the above embodiments do not imply the order of execution. The order of execution of each process should be determined according to its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.

[0154] Corresponding to a data transmission method described in the above embodiments, Figure 8 FIG. shows a structural diagram of an embodiment of a data transmission device applied to a server provided by an embodiment of the present application.

[0155] In an embodiment of the present application, a data transmission device applied to a server may include:

[0156] A request receiving module 801, configured to receive a data request from a first terminal device, where the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source;

[0157] A subscription module 802, configured to subscribe to a target publication topic corresponding to the target data source from the target device based on the Message Queuing Telemetry Transport (MQTT) connection; data corresponding to different data sources corresponds to different publication topics;

[0158] A data receiving module 803, configured to receive the target data corresponding to the target publication topic;

[0159] A sending module 804, configured to send the target data to the first terminal device.

[0160] In a specific implementation manner of an embodiment of the present application, the device further includes:

[0161] An obtaining module, configured to obtain a subscription list; the subscription list includes at least one publication topic;

[0162] A determining module, configured to determine the target publication topic corresponding to the target data source from the subscription list.

[0163] In a specific implementation manner of an embodiment of the present application, the device further includes:

[0164] A determining module, configured to determine the server quality level of the target publication topic;

[0165] The subscription module is configured to send a subscription request to the target device based on the Message Queuing Telemetry Transport (MQTT) connection, where the subscription request includes the target publication topic and the server quality level, and the subscription request requests to subscribe to the target publication topic according to the server quality level.

[0166] In a specific implementation manner of the embodiment of the present application, the device further includes:

[0167] A processing module, configured to perform data processing on the target data to obtain the processed target data;

[0168] The sending module is configured to send the processed target data to the first terminal device.

[0169] In a specific implementation manner of the embodiment of the present application, the target data includes alarm data, and the sending module is further configured to send the target data to a second terminal device to trigger the second terminal device to display the target data.

[0170] Corresponding to the data transmission method described in the foregoing embodiment, Figure 9 FIG. shows a structural diagram of an embodiment of a data transmission device applied to a terminal device provided by an embodiment of the present application.

[0171] In the embodiment of the present application, a data transmission device applied to a terminal device may include:

[0172] A sending module 901, configured to send a data request to a server, where the data request includes a target data source, and the data request requests to obtain the target data corresponding to the target data source;

[0173] A receiving module 902, configured to receive the target data from the server;

[0174] A display module 903, configured to display the target data based on a target display manner of the target data.

[0175] In a specific implementation manner of the embodiment of the present application, the device further includes:

[0176] A determination module, configured to determine the target display manner based on a first mapping relationship and a target data type of the target data; wherein, the first mapping relationship is a mapping relationship between a data type and a display manner.

[0177] Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the devices, modules, and units described above can refer to the corresponding processes in the foregoing method embodiments, and will not be elaborated herein.

[0178] In the above embodiments, the descriptions of the respective embodiments have their own emphases. For parts not detailed or recorded in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.

[0179] Figure 10The figure shows a schematic block diagram of a server provided by an embodiment of the present application. For the sake of convenience of description, only the parts related to the embodiment of the present application are shown.

[0180] As Figure 10 shown, the server 10 of this embodiment includes: a processor 100, a memory 101, and a computer program 102 stored in the memory 101 and executable on the processor 100. When the processor 100 executes the computer program 102, the steps in the above-mentioned embodiments of each data transmission method are implemented, such as Figure 3 the steps S301 to S304 shown. Alternatively, when the processor 100 executes the computer program 102, the functions of each module / unit in the above-mentioned device embodiments are implemented, such as Figure 8 the functions of the modules 801 to 804 shown.

[0181] Exemplarily, the computer program 102 can be divided into one or more modules / units. The one or more modules / units are stored in the memory 101 and executed by the processor 100 to complete the present application. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, and these instruction segments are used to describe the execution process of the computer program 102 in the server 10.

[0182] Those skilled in the art can understand that Figure 10 this is only an example of the server 10 and does not constitute a limitation on the server 10. It may include more or fewer components than shown in the figure, or combine certain components, or different components. For example, the server 10 may further include input / output devices, network access devices, buses, etc.

[0183] The processor 100 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.

[0184] The memory 101 may be an internal storage unit of the server 10, such as the hard disk or memory of the server 10. The memory 101 may also be an external storage device of the server 10, such as a plug-in hard disk equipped on the server 10, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Further, the memory 101 may also include both the internal storage unit of the server 10 and external storage devices. The memory 101 is used to store the computer program and other programs and data required by the server 10. The memory 101 may also be used to temporarily store data that has been output or is to be output.

[0185] Figure 11 FIG. shows a schematic block diagram of a terminal device provided by an embodiment of the present application. For ease of description, only parts related to the embodiment of the present application are shown.

[0186] As Figure 11 shown, the terminal device 11 of this embodiment includes: a processor 110, a memory 111, and a computer program 112 stored in the memory 111 and executable on the processor 110. When the processor 110 executes the computer program 112, the steps in the above-mentioned various data transmission method embodiments are implemented, such as Figure 4 the steps S401 to S403 shown. Alternatively, when the processor 110 executes the computer program 112, the functions of each module / unit in the above-mentioned various device embodiments are implemented, such as Figure 9 the functions of the modules 901 to 903 shown.

[0187] Exemplarily, the computer program 112 may be divided into one or more modules / units. The one or more modules / units are stored in the memory 111 and executed by the processor 110 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 112 in the terminal device 11.

[0188] Those skilled in the art can understand that Figure 11 merely examples of the terminal device 11, which do not constitute a limitation on the terminal device 11, may include more or fewer components than shown in the figure, or combine certain components, or different components. For example, the terminal device 11 may further include input / output devices, network access devices, a bus, etc.

[0189] The processor 110 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.

[0190] The memory 111 may be an internal storage unit of the terminal device 11, such as the hard disk or memory of the terminal device 11. The memory 111 may also be an external storage device of the terminal device 11, such as a plug-in hard disk equipped on the terminal device 11, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Further, the memory 111 may also include both the internal storage unit of the terminal device 11 and the external storage device. The memory 111 is used to store the computer program and other programs and data required by the terminal device 11. The memory 111 may also be used to temporarily store data that has been output or will be output.

[0191] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above division of each functional unit and module is used as an example. In actual applications, the above functions can be allocated to different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiments can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of this application. The specific working processes of the units and modules in the above system can refer to the corresponding processes in the foregoing method embodiments and will not be elaborated herein.

[0192] In the above embodiments, the descriptions of the respective embodiments have their own emphases. For the parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0193] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. A professional technician can use different methods for each specific application to implement the described functions, but such implementation should not be considered to exceed the scope of this application.

[0194] In the embodiments provided in this application, it should be understood that the disclosed device / terminal device and method can be implemented in other ways. For example, the device / terminal device embodiments described above are only illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, 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 displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the devices or units can be in electrical, mechanical or other forms.

[0195] The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they can be located in one place or distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0196] In addition, the functional units in each embodiment of this application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.

[0197] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, to implement all or part of the processes in the above-described embodiment methods of this application, it can also be completed by instructing relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above-described various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in the form of source code, object code, executable file, or some intermediate form, etc. The computer-readable storage medium can include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disc, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium, etc. It should be noted that the content included in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable storage medium does not include electrical carrier signals and telecommunication signals.

[0198] The above-described embodiments are only used to illustrate the technical solutions of this application, rather than to limit them; although this application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the various embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A data transmission method, characterized in that: Applied to a server, wherein a message queue telemetry transmission connection is provided between the server and a target device, the method comprising: Receiving a data request from a first terminal device, the data request including a target data source, the data request requesting to obtain target data corresponding to the target data source; Subscribe to the target publishing topic corresponding to the target data source to the target device based on the message queue telemetry transmission connection; data from different data sources corresponds to different publishing topics; Receiving the target data corresponding to the target publishing topic; The target data is sent to the first terminal device.

2. The data transmission method according to claim 1, characterized in that: Before subscribing to the target publishing topic corresponding to the target data source to the target device based on the message queue telemetry transmission connection, the method further includes: Obtain a subscription list; the subscription list includes at least one publishing topic; The target publishing topic corresponding to the target data source is determined from the subscription list.

3. The data transmission method according to claim 2, characterized in that: Before subscribing to the target publishing topic corresponding to the target data source to the target device based on the message queue telemetry transmission connection, the method further includes: Determining a server quality level for the target publishing topic; The subscribing to the target publishing topic corresponding to the target data source to the target device based on the message queue telemetry transmission connection includes: A subscription request is sent to the target device based on the message queue telemetry transmission connection, the subscription request includes the target publishing topic and the server quality level, and the subscription request requests to subscribe to the target publishing topic according to the server quality level.

4. The data transmission method according to any one of claims 1 to 3, characterized in that: After receiving the target data corresponding to the target publishing topic, the method further includes: Performing data processing on the target data to obtain the processed target data; The sending the target data to the first terminal device includes: Send the processed target data to the first terminal device.

5. The data transmission method according to any one of claims 1 to 3, characterized in that: The method further comprises: The target data includes alarm data, and the target data is sent to the second terminal device to trigger the second terminal device to display the target data.

6. A data transmission method, characterized in that: Applied to a terminal device, the method comprises: Sending a data request to a server, wherein the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source; receiving the target data from the server; The target data is displayed based on the target display mode of the target data.

7. The data transmission method according to claim 6, characterized in that: The target display mode based on the target data, before displaying the target data, the method further includes: Determining a target display mode of the target data based on the first mapping relationship and the target data type of the target data; The first mapping relationship is a mapping relationship between a data type and a display method.

8. A data transmission device, characterized in that: Applied to a server, a message queue telemetry transmission connection is provided between the server and a target device, and the device comprises: A request receiving module, configured to receive a data request from a first terminal device, wherein the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source; A subscription module, used to subscribe to a target publishing topic corresponding to the target data source to the target device based on the message queue telemetry transmission connection; data from different data sources corresponds to different publishing topics; A data receiving module, used for receiving the target data corresponding to the target publishing topic; A sending module is used to send the target data to the first terminal device.

9. A data transmission device, characterized in that: Applied to a terminal device, the device comprises: A sending module, used to send a data request to a server, wherein the data request includes a target data source, and the data request requests to obtain target data corresponding to the target data source; A receiving module, used for receiving the target data from the server; A display module is used to display the target data based on the target display mode of the target data.

10. A computer program product, characterized in that The invention comprises a computer program, which, when being executed, enables the data transmission method according to any one of claims 1 to 7 to be executed.

11. A server comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the server implements the steps of the data transmission method according to any one of claims 1 to 5.

12. A terminal device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the terminal device implements the steps of the data transmission method according to any one of claims 6 to 7.