Device control method and system, computer device and storage medium

By constructing an equipment control system and utilizing the functional blocks of storage and control modules to manage different devices, the problem of unified operation and function combination of equipment is solved, thereby improving the efficiency and accuracy of equipment control.

CN115972205BActive Publication Date: 2026-06-02HUILING TECH ROBOTIC CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUILING TECH ROBOTIC CO LTD
Filing Date
2022-12-16
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

Existing technologies make it difficult to achieve unified operation and management of equipment with different functions and models, and it is also difficult to combine equipment to achieve a combination of multiple functions, which affects the equipment control process and efficiency.

Method used

A device control system is built by using a server and interactive devices. Function blocks are stored in a storage module. The control module calls the function blocks corresponding to the device operation instructions. Based on the driving parameters, the target external device is determined and driven for control, thereby realizing the unified operation and function combination of the device.

Benefits of technology

It enables unified control of different devices, improves the efficiency and accuracy of device control, can quickly and accurately identify target external devices, and supports the combination of device functions and the realization of multiple functions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115972205B_ABST
    Figure CN115972205B_ABST
Patent Text Reader

Abstract

The application provides a device control system, which comprises a server and an interactive device; the server and the interactive device are connected with an external device group; the server comprises a storage module, a control module, a first data transmission module and a second data transmission module; the external device group comprises at least one sub-external device group, and one sub-external device group comprises at least one external device; the storage module stores a plurality of function blocks, and one function block corresponds to at least one sub-external device group; the function block stores driving parameters; the control module is connected with the external device group through the first data transmission module; the control module is connected with the interactive device through the second data transmission module; the interactive device acquires a device operation instruction of a user; the control module calls at least one function block corresponding to the device operation instruction, and determines at least one external device in at least one sub-external device group from the external device group based on the driving parameters stored in the at least one function block to perform driving control.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of equipment control, and more particularly to an equipment control method, system, computer equipment, and storage medium. Background Technology

[0002] With the development of technology, different functions and models of equipment have emerged in every field. In practical use, different functions and models of equipment often use different drive functions. This makes it difficult to achieve unified operation and management of the equipment when multiple devices are connected to the same equipment control system, and it is also difficult to combine the equipment to achieve a combination of multiple functions, affecting the equipment control process and efficiency. Summary of the Invention

[0003] This application provides a device control method, system, computer device, and storage medium to solve the technical problems in existing device control technologies, such as the difficulty in achieving unified operation and management of devices and the difficulty in combining devices to achieve a combination of multiple functions.

[0004] In a first aspect, this application proposes a device control system, the system comprising: a server, an external device group, and an interactive device; the server is connected to the interactive device and the external device group; the server includes a storage module, a control module, a first data transmission module, and a second data transmission module; the external device group includes at least one sub-external device group, and each sub-external device group includes at least one external device;

[0005] The storage module is used to store multiple function blocks, and each function block corresponds to at least one sub-external device group; the function block is used to store the drive parameters corresponding to the sub-external device group;

[0006] The control module is connected to the external device group through the first data transmission module; the control module is connected to the interactive device through the second data transmission module.

[0007] The interactive device is used to acquire the user's device operation instructions, and the control module is used to call at least one of the function blocks corresponding to the device operation instructions, and to determine at least one external device from at least one of the sub-external device groups as the target external device for drive control based on the drive parameters stored in at least one function block.

[0008] In conjunction with the first aspect, in one feasible manner, the interactive device is further configured to receive data input from the user, and the control module is further configured to generate a function block corresponding to the sub-external device group based on the data information input by the user corresponding to the sub-external device group.

[0009] In conjunction with the first aspect, in one feasible manner, the control module is further configured to identify the device parameters of each external device in the external device group through the first data transmission module, and the control module determines the target external device and performs drive control by comparing the device parameters of each external device with the drive parameters stored in the function block.

[0010] In conjunction with the first aspect, in one possible implementation, the interactive device includes a display module for displaying a function block identifier corresponding to each function block; the user inputs device operation commands by operating the function block identifier.

[0011] In conjunction with the first aspect, in one feasible implementation, the storage module further stores an engineering information table, which includes start information, end information, and control information located between the start information and the end information; the control module enters the device control phase according to the start information; the control module terminates the device control phase according to the end information; the control module calls the function block according to the control information and controls the target external device based on the drive parameters.

[0012] In conjunction with the first aspect, in one feasible manner, the control module is further configured to generate the control information according to the device operation instructions and write it into the information table template to obtain the engineering information table.

[0013] In conjunction with the first aspect, in one feasible manner, the data structure of the functional block is a combination of a data interface and a dynamic link library.

[0014] Secondly, this application proposes a device control method, the method comprising:

[0015] Obtain device operation commands input by the user;

[0016] Invoke at least one function block corresponding to the device operation instruction;

[0017] Based on the driving parameters stored in the at least one functional block, at least one external device from at least one sub-external device group is determined from the external device group as the target external device for driving control.

[0018] Thirdly, this application proposes a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor causes the processor to perform the following steps:

[0019] Obtain device operation commands input by the user;

[0020] Invoke at least one function block corresponding to the device operation instruction;

[0021] Based on the driving parameters stored in the at least one functional block, at least one external device from at least one sub-external device group is determined from the external device group as the target external device for driving control.

[0022] Fourthly, this application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to perform the following steps:

[0023] Obtain device operation commands input by the user;

[0024] Invoke at least one function block corresponding to the device operation instruction;

[0025] Based on the driving parameters stored in the at least one functional block, at least one external device from at least one sub-external device group is determined from the external device group as the target external device for driving control.

[0026] This application achieves the following beneficial effects: This application proposes a device control system, the system comprising: a server and an interactive device; the server is connected to the interactive device and an external device group; the server includes a storage module, a control module, a first data transmission module, and a second data transmission module; the external device group includes at least one sub-external device group, and each sub-external device group includes at least one external device; the storage module stores multiple function blocks, each function block corresponding to at least one sub-external device group; the function blocks store driving parameters corresponding to the sub-external device groups; the control module is connected to the external device group through the first data transmission module; the control module is connected to the interactive device through the second data transmission module; the interactive device acquires user device operation commands, and the control module calls at least one function block corresponding to the device operation command, and determines at least one external device from at least one sub-external device group as the target external device for drive control based on the driving parameters stored in at least one function block. This application controls the device by setting up function blocks corresponding to the device and calling function blocks corresponding to the device operation commands input by the user. This enables a unified control system for different devices and also allows different devices to perform combined functions, further improving device control efficiency. Attached Figure Description

[0027] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the structures shown in these drawings without creative effort.

[0028] Figure 1 This application provides a schematic diagram of the structure of a device control system according to an embodiment of the present application.

[0029] Figure 2 This is a schematic diagram of a function block identifier connection provided in an embodiment of this application;

[0030] Figure 3 This is a schematic diagram of a function block identifier connection provided in an embodiment of this application;

[0031] Figure 4 A schematic flowchart illustrating a device control method provided in an embodiment of this application;

[0032] Figure 5 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation

[0033] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.

[0034] The technical solution proposed in this application is applicable to the scenario of equipment control. Specifically, the technical solution of this application is applicable to controlling multiple devices through a server to realize the individual functions of the devices or controlling multiple devices to cooperate to complete complex combined functions.

[0035] In one embodiment, this application proposes a device control system, such as Figure 1 As shown, Figure 1This is a schematic diagram of the structure of a device control system provided in an embodiment of this application. The system includes: a server 10 and an interactive device 20; the server 10 is connected to the interactive device 20 and an external device group 30; the server 10 includes a storage module 101, a control module 102, a first data transmission module 103, and a second data transmission module 104; the external device group 30 includes at least one sub-external device group, and each sub-external device group includes at least one external device; the storage module 101 is used to store multiple function blocks, each function block corresponding to at least one sub-external device group, and the function block stores drive parameters corresponding to the sub-external device group; the control module 102 is connected to the external device group 30 through the first data transmission module 103; the control module 102 is connected to the interactive device 20 through the second data transmission module 104; the interactive device 20 is used to obtain user device operation commands, and the control module 102 is used to call at least one function block corresponding to the device operation command, and based on the drive parameters stored in at least one function block, determine at least one external device from at least one sub-external device group in the external device group 30 as the target external device for drive control.

[0036] The server 10 runs on a Linux or Windows operating system. The interactive device 20 is a device with functions such as information input, screen display, and information transmission; for example, the interactive device 20 can be an electronic device such as a computer or mobile phone.

[0037] The server 10 includes a first data transmission module 103, which is a data transmission port for data interaction with the external device group 30. The server 10 establishes a communication connection with the external device group 30 through the first data transmission module 103. It is understood that each external device in the external device group 30 has data transmission capabilities, used to establish a communication connection with the server 10 and receive device control commands issued by the server 10. Specifically, the server 10 obtains the device parameters of each external device in the external device group 30 through the first data transmission module 103. Then, the server 10 determines the target device from the external device group 30 based on the device parameters. Finally, the server 10 sends control commands to the target external device through the first data transmission module 103 to control the target external device to perform its functions.

[0038] The external device group 30 includes at least one sub-external device group, and each sub-external device group includes at least one external device. Specifically, the external devices included in a sub-external device group are external devices capable of performing the same function, that is, each sub-external device group includes at least one external device capable of performing the same function. For example, the external device group 30 may include a first sub-external device group, a second sub-external device group, a third sub-external device group, ..., an nth sub-external device group; the first sub-external device group may include external device a1, external device a2, external device a3, ..., external device an, and the nth sub-external device group may include external device b1, external device b2, external device b3, ..., external device bn; wherein, the first sub-external device group may be a device group capable of performing the walking function, that is, external devices a1, external device a2, external device a3, ..., external device an can all perform the walking function; the second sub-external device group may be a device group capable of performing the lifting function, that is, external devices b1, external device b2, external device b3, ..., external device bn can all perform the lifting function. The first data transmission module 103 can establish a communication connection with any one of the external devices in the external device group 30; the external device can be a robotic arm, a robotic gripper, an industrial control computer, or other equipment.

[0039] It should be noted that the above-mentioned walking and lifting functions are just examples. In the same function described in this application, the function can be a function such as "walking", or a function such as "rotate and grab", "walk and grab", or "walk, rotate and grab". This application does not specifically limit the function.

[0040] It should be noted that, in the external device group proposed in this application, the functions that the external devices in one sub-external device group can perform may be the same as or different from the functions that the external devices in another sub-external device group can perform. For example, the external devices in the first sub-external device group and the second sub-external device group can both be devices capable of performing walking functions.

[0041] Specifically, the first data transmission module 103 can be a wired transmission port or a wireless transmission port; this application does not limit it. A wireless transmission port can be a WiFi connection port, a Bluetooth connection port, etc., while a wired transmission port can be a USB connection port, an HDMI connection port, etc.

[0042] Specifically, external devices can interact with server 10 based on the RS485 / 232 communication protocol, via wired or wireless transmission.

[0043] The server 10 also includes a second data transmission module 104, which is a data transmission port for data interaction with the interactive device 20. The server 10 establishes a communication connection with the interactive device 20 through the second data transmission module 104. It is understood that the interactive device 20 is a device with information interaction capabilities, used to establish a communication connection with the server 10 and to receive device operation commands input by the user.

[0044] Specifically, the interactive device 20 can be a device with touch input, key input, or other input functions that include a display. Users can use the input function of the interactive device 20 to input device operation commands or relevant device parameters. The display module can display the user's specific operation or the input data. After receiving user input, the interactive device 20 sends the user's input commands or data to the server 10 via the second data transmission module 104.

[0045] Specifically, the second data transmission module 104 can be a wired transmission port or a wireless transmission port; this application does not limit it. A wireless transmission port can be a WiFi connection port, a Bluetooth connection port, etc., while a wired transmission port can be a USB connection port, an HDMI connection port, etc.

[0046] The function block is a data packet stored in the storage module 101. One function block corresponds to at least one sub-external device group in the external device group 30, and one function block enables the external device to perform a function. The function block stores the device addresses of all external devices in the corresponding sub-external device group and the device's annotation description. The device's annotation description may be the device's driver parameters, including the device's function information, device address, communication protocol, driver, function interface name, etc. It can be understood that a sub-external device group can correspond to multiple function blocks simultaneously. For example, the first sub-external device group can simultaneously correspond to multiple function blocks, such as a function block for enabling the device to perform a "walking function" and a function block for enabling the device to perform a "heating function".

[0047] Specifically, after receiving the device operation command input by the user, the server 10 control module 102 calls at least one function block corresponding to the device operation command, and determines at least one external device from at least one sub-external device group as the target external device for drive control based on the drive parameters stored in the at least one function block.

[0048] For example, consider function block 1 corresponding to the first sub-external device group, function block 2 corresponding to the second sub-external device group, function block 3 corresponding to the third sub-external device group, ..., function block n corresponding to the nth sub-external device group. If the device operation command input by the user corresponds to function block 1, function block 2, and function block 3, after the server 10 receives the device operation command input by the user: the control module 102 calls function block 1 corresponding to the device operation command and determines at least one external device from the first sub-external device group in the external device group 30 for drive control based on the drive parameters stored in function block 1; and the control module 102 calls function block 2 corresponding to the device operation command and determines at least one external device from the second sub-external device group in the external device group 30 for drive control based on the drive parameters stored in function block 2; and the control module 102 calls function block 3 corresponding to the device operation command and determines at least one external device from the third sub-external device group in the external device group 30 for drive control based on the drive parameters stored in function block 3.

[0049] In one embodiment, the data structure of the functional block is a combination of a data interface and a dynamic link library.

[0050] Specifically, the data interface can be a Python data interface, and the dynamic link library can be a dynamic link library written in C++. For example, a dynamic link library is a .dll file on Windows and a .so file on Linux. It should be noted that the data interface can also be written in other programming languages, and the dynamic link library can also be written in other programming languages.

[0051] In one embodiment, the control module 102 is further configured to identify the device parameters of each external device in the external device group 30 through the first data transmission module 103, and the control module 102 determines the target external device and performs drive control by comparing the device parameters of each external device with the drive parameters stored in the function block.

[0052] Specifically, the device parameters of an external device include at least its device address. When driving and controlling an external device, the control module 102 compares the driving parameters determined from the function block with the device parameters of each external device, identifies the target external device from the external device group 30 to perform the function, and finally sends a control command to the target external device to enable it to perform the function.

[0053] Specifically, the control module 102 compares the device address in the drive parameters with the device address in the device parameters; if they are the same, it means that the external device corresponding to the device parameter is the target external device, and then the control module 102 sends control commands to the target external device through the communication protocol.

[0054] In this embodiment, by comparing the device parameters of each external device with the drive parameters stored in the function block, the target external device for implementing the function can be accurately and quickly determined, thereby improving the accuracy and security of device control.

[0055] In one embodiment, the interactive device 20 is further configured to receive data input from the user, and the control module 102 is further configured to generate a function block corresponding to the sub-external device group based on the data information input by the user corresponding to the sub-external device group.

[0056] Specifically, the function blocks in storage module 101 are standard function blocks pre-established based on data information corresponding to the sub-external device group. The data information corresponding to the sub-external device group can be the function information and communication protocol of the external device. When connecting the sub-external device group to the control system, the functions that the external devices in the sub-external device group can perform and the communication protocols applicable to the external devices are first determined. Then, the function information of the external devices and the communication protocols applicable to the external devices are sent to server 10 through interactive device 20. The control module 102 of server 10 generates a standard function block corresponding to the sub-external device group based on the function information and the communication protocols applicable to the external devices. For example, if the first sub-external device group is to be connected to the control system, and the external devices in the first sub-external device group can realize the function of moving forward, then the forward movement and the communication protocol applicable to the external devices in the first sub-external device group are sent to server 10 through interactive device 20. The control module 102 generates a standard function block corresponding to the first sub-external device group for controlling the external devices in the first sub-external device group to realize forward movement. For example, if the first sub-external device group and the second sub-external device group are to be connected to the control system, and the external devices in both the first and second sub-external device groups are capable of forward movement, then the forward movement and the communication protocols applicable to the external devices in the first and second sub-external device groups are sent to the server 10 via the interactive device 20. The control module 102 generates standard function blocks corresponding to the first and second sub-external device groups, used to control the external devices in the first and second sub-external device groups to achieve forward movement. These standard function blocks include driver parameters consisting of the functional information of the external devices in the first sub-external device group, device address, communication protocol, driver program and function interface name capable of controlling the external devices to achieve forward movement, etc.

[0057] In practical applications, after receiving a device operation command input by the user through the interactive device 20, the server 10 calls the standard function block corresponding to the device operation command, and establishes a backup function block for the standard function block. Finally, the control module 102 calls the driver parameters stored in the backup function block to drive and control the external device. It is understood that the standard function block enables the external device to perform a specific function, such as a "walking" function. It is also understood that the backup function block includes the driver parameters from the standard function block.

[0058] In one implementation, the user can also adaptively modify the functions implemented by the external device based on actual needs, building upon the specific functionality already achieved. Specifically, the user can input the association information of the external device's function parameters through the interactive device 20, and send this association information as part of the input device operation command to the server 10 to modify the driver parameters, thereby adaptively modifying the functionality implemented by the external device. Upon receiving the device operation command input by the user through the interactive device 20, the server 10's control module 102 calls the standard function block corresponding to the device operation command and establishes a backup function block. Then, it uses the association information of the function parameters to modify the driver parameters in the backup function block, making the driver parameters in the backup function block the modified driver parameters. Finally, the control module 102 calls the modified driver parameters stored in the backup function block to drive and control the external device.

[0059] For example, taking the control of external device a1 to move forward as an example, if the user does not input the associated information of the function information "move forward" when inputting the device operation command, the control module 102 calls the corresponding standard function block, establishes a backup function block of the standard function block, and controls external device a1 to move forward according to the drive parameters of the function information "move forward" in the backup function block; if the user inputs the associated information of the function information "move forward" "walk 10m" when inputting the device operation command, the control module 102 calls the corresponding standard function block, establishes a backup function block of the standard function block, and modifies the original function information "move forward" in the backup function block to "walk forward 10m" according to the associated information "walk 10m" input by the user, and obtains the updated drive parameters containing the function information "walk forward 10m". The control module 102 controls external device a1 to move forward 10m according to the modified drive parameters of the function information "walk forward 10m" in the backup function block.

[0060] In this embodiment, by setting up function blocks corresponding to external devices and controlling the devices by calling at least one function block corresponding to the device operation commands input by the user, a unified control system can be implemented to control different devices.

[0061] In one embodiment, the interactive device 20 includes a display module for displaying a function block identifier corresponding to each function block; the user inputs device operation commands by operating the function block identifier.

[0062] The interactive device 20 includes a display module, which can be a display screen. The display screen can show function block identifiers corresponding to each function block. The function block identifiers correspond to the function blocks in the server 10. Users can input device operation commands by operating the function block identifiers displayed on the display screen.

[0063] Specifically, the display screen has a preset area, which displays a start indicator, an end indicator, and an OK button. Users can input device operation commands by manipulating the function block icons displayed on the screen: adding function block icons to the preset area by clicking or dragging, arranging the start indicator, end indicator, and function block icons in sequence, and finally clicking the OK button to complete the input of the device operation command.

[0064] In one implementation, the user can also input the association information of the function parameters via the display screen. If the user needs to input the association information of the function parameters, they can add the function block identifier to the preset area, click the function block identifier in the preset area, enter the association information of the function parameters in the input box that pops up after clicking, and finally click the OK button to send the association information of the function parameters as part of the input device operation command to the server 10.

[0065] In one implementation, the user can also input the sub-external device group number and the address of the target external device via the display screen. Since a function block corresponds to at least one sub-external device group, and a sub-external device group includes at least one external device, to ensure more accurate device control, when the user inputs device operation commands by operating the function block identifier displayed on the screen, they also need to input the sub-external device group number to be controlled and the device address of the target external device. Finally, clicking the "OK" button sends the input sub-external device group number and device address as part of the input device operation command to the server 10. For example, after the user adds a function block identifier to a preset area, clicks the function block identifier in the preset area, enters the sub-external device group number and the device address of the target external device in the pop-up input box, and finally clicks the "OK" button, sending the sub-external device group number and the device address of the target external device as part of the input device operation command to the server 10. For example, after a user adds a function block identifier to a preset area, clicking the function block identifier in the preset area will bring up a list of sub-external device group numbers and a list of device addresses. The user selects the sub-external device group number and the device address of the target external device from the list of sub-external device group numbers and the device address of the target external device, and finally clicks the OK button to send the sub-external device group number and the device address of the target external device as part of the input device operation command to the server 10.

[0066] In this embodiment, after the interactive device 20 sends a device operation command to the server 10, the control module 102 of the server 10 calls the standard function block corresponding to the function block ID from the storage module 101 according to the function block ID in the device operation command, and generates a corresponding backup function block; then, it modifies the driver parameters in the backup function block using the association information of the function parameters and the device address of the target external device; finally, the control module 102 controls the external device according to the modified driver parameters in the backup function block.

[0067] In this embodiment, the user can operate on multiple function block identifiers and combine and sort these identifiers to input device operation commands. These device operation commands instruct the server 10 to drive multiple external devices with different functions to implement the multiple functions corresponding to the function blocks. In practical applications, when operating on multiple function block identifiers, multiple operations can be performed on any one function block identifier.

[0068] The device operation instructions include a first sub-instruction and a second sub-instruction. Each time a user drags a function block identifier to a preset area and clicks on that function block identifier to input the associated information of the function parameters, the sub-external device group number, and the device address of the target external device, the interactive device 20 sends a corresponding first sub-instruction to the server 10. The first sub-instruction includes the function block ID corresponding to the function block identifier, the associated information of the function parameters, the sub-external device group number, and the device address of the target external device. After the interactive device 20 sends the first sub-instruction to the server 10, the control module 102 of the server 10 retrieves the standard function block corresponding to the function block ID from the storage module 101 based on the function block ID in the first sub-instruction and generates a corresponding backup function block. Then, it modifies the driver parameters in the backup function block using the associated information of the function parameters, the sub-external device group number, and the device address of the target external device. It should be noted that for the same function block identifier, a corresponding backup function block is generated for each operation.

[0069] Each time the user combines and sorts the function block identifiers, the interactive device 20 sends a corresponding second sub-instruction to the server 10. This second sub-instruction instructs the user to write the backup function block ID of the next function block identifier into the backup function block corresponding to the previous function block identifier. For example, if function block identifier 1 and function block identifier 2 are combined, with function block identifier 1 appearing first, the interactive device 20 will send a second sub-instruction to write the ID of the backup function block 2 corresponding to function block 2 into the backup function block 1 corresponding to function block 1. Upon receiving the second sub-instruction, server 10's control module 102 writes the ID of backup function block 2 into backup function block 1. Similarly, if function block identifier 3 is combined with function block identifier 2, with function block identifier 2 preceding it, then the interactive device 20 sends a second sub-instruction to server 10, writing the ID of backup function block 3 corresponding to function block 3 into backup function block 2. Upon receiving this second sub-instruction, server 10's control module 102 writes the ID of backup function block 3 into backup function block 2. After the user terminates the operation on the function block identifier, all the sub-instructions constitute a complete device operation instruction.

[0070] In one implementation, the user can drag multiple function block identifiers to a preset area of ​​the display screen, and connect them sequentially using arrows to arrange them in order. Then, clicking the "OK" button completes the input of the device operation command. When the same function block identifier is dragged to the preset area multiple times, one function block identifier will be displayed in the preset area each time it is dragged; for example, if function block identifier 3 is dragged to the preset area three times, then three function block identifiers 3 will be displayed in the preset area. The direction of the arrows indicates the order in which the functions are executed, that is, the order in which the control module 102 calls the function blocks. The preset area can be any area of ​​the display screen.

[0071] For example, the display screen shows function block identifier 1, function block identifier 2, function block identifier 3... function block identifier n, a start identifier, and an end identifier. Function block identifier 1, function block identifier 2, function block identifier 3... function block identifier n correspond to function block 1, function block 2, function block 3... function block n, respectively. The start identifier corresponds to the starting function block, and the end identifier corresponds to the ending function block. Figure 2 As shown, Figure 2 This is a schematic diagram of a function block identifier connection provided in an embodiment of this application. The user drags function block identifier 1 once, function block identifier 2 twice, function block identifier 3 once, and function block identifier 4 once to a preset area; and:

[0072] The start identifier and function block identifier 1 are connected by arrow 1. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the backup function block 1 into the start function block. Arrow 1 is used to indicate that the first function block to be called is the backup function block 1.

[0073] The function block identifier 1 and the first function block identifier 2 are connected by arrow 2. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the first backup function block 2 into the backup function block 1. Arrow 2 is used to indicate that the backup function block 2 is called after the backup function block 1 is called.

[0074] The first function block identifier 2 and function block identifier 3 are connected by arrow 3. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the backup function block 3 into the first backup function block 2. Arrow 3 is used to indicate that the backup function block 3 is called after the first backup function block 2 is called.

[0075] Function block identifier 3 and function block identifier 4 are connected by arrow 4. Interactive device 20 sends a second sub-instruction to server 10. Control module 102 of server 10 writes the ID of backup function block 4 into backup function block 3. Arrow 4 is used to indicate that backup function block 4 is called after backup function block 3 is called.

[0076] The function block identifier 4 and the second function block identifier 2 are connected by arrow 5. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the second backup function block 2 into the backup function block 4. Arrow 5 is used to indicate that the second backup function block 2 is called after the backup function block 4 is called.

[0077] Connect function block identifier 2 and termination identifier via arrow 6. Interactive device 20 sends a second sub-instruction to server 10. Control module 102 of server 10 writes the ID of the termination function block into the second backup function block 2. Arrow 2 is used to indicate that control is terminated after the second backup function block 2 is invoked.

[0078] It should be noted that the sorting of function block identifiers by arrows and labels described in this embodiment is only an example. In actual applications, other methods may be used. This application does not limit the method of sorting function block identifiers.

[0079] It should be noted that, in this embodiment, inputting the association information of the function parameters of the corresponding function block by clicking the function block identifier in the preset area is only one implementation method. The association information of the function parameters can also be input by automatically popping up a parameter input box when the function parameters of the corresponding function block can be modified. This application does not limit the method of inputting the association information of the function parameters.

[0080] In this embodiment, function block identifiers are displayed on the screen. By combining the function block identifiers, function blocks can be combined, thereby achieving unified scheduling of different function blocks and realizing complex functions composed of multiple functions, further improving equipment control efficiency.

[0081] In one embodiment, the storage module 101 also stores a standard judgment program block for performing judgment functions, which stores a judgment program for performing the judgment functions. After connecting the two function block identifiers with an arrow, the user can input judgment conditions by clicking the arrow. After receiving the device control operation command, the server 10's control module 102 calls the standard judgment program block, then updates the judgment program using the judgment conditions and generates a backup judgment program block. When controlling the external device, the control module 102 also collects the execution result parameters of the external device. The control module 102 calls the backup judgment program block to judge the execution result parameters, obtains the judgment result, and calls the next function block based on the judgment result.

[0082] Specifically, such as Figure 3 As shown, Figure 3 This is a schematic diagram of a function block identifier connection provided in an embodiment of this application. The display screen shows function block identifier 1, function block identifier 2, function block identifier 3... function block identifier n, a start identifier, and an end identifier. The user drags function block identifier 1 once, function block identifier 2 once, function block identifier 3 once, and function block identifier 4 once into a preset area; and:

[0083] The start identifier and function block identifier 1 are connected by arrow 1. If the user does not click arrow 1 to input the judgment condition, the interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the backup function block 1 into the start function block. Arrow 1 is used to indicate that the first function block called is the backup function block 1.

[0084] Function block identifier 1 and function block identifier 2 are connected by arrow 2. If the user does not click arrow 2 to input the judgment condition, the interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of backup function block 2 into backup function block 1. Arrow 2 is used to indicate that backup function block 2 is called after backup function block 1 is called.

[0085] Function block identifier 2 is connected to function block identifiers 3 and 4 via arrow 3. The user clicks arrow 3 to input judgment conditions. In this embodiment, the user inputs a first judgment condition and a second judgment condition, where the first judgment condition is used to determine whether to call backup function block 2 again, and the second judgment condition is used to determine whether to call backup function block 3 or backup function block 4. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the backup judgment program block into backup function block 2, and executes the first judgment condition in the backup judgment program block. In the judgment procedure of the device, the ID of backup function block 3 and the ID of backup function block 4 are written into the judgment procedure of the backup judgment procedure block to execute the judgment procedure of the second judgment condition; specifically, in one implementation, the server 10 may call the backup judgment procedure block to first judge the first judgment condition. If the execution result parameter does not meet the first judgment condition, the backup function block 2 is called again. If the execution result parameter meets the first judgment condition, the second judgment condition is judged. If the execution result parameter meets the second judgment condition, the backup function block 3 is called. If the execution result parameter does not meet the second judgment condition, the backup function block 4 is called.

[0086] The function block identifier 3 and the termination identifier are connected by arrow 4. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the termination function block into the backup function block 3. Arrow 4 is used to indicate that control is terminated after the backup function block 3 is called.

[0087] The function block identifier 4 and the termination identifier are connected by arrow 5. The interactive device 20 sends a second sub-instruction to the server 10. The control module 102 of the server 10 writes the ID of the termination function block into the backup function block 4. Arrow 5 is used to indicate that control is terminated after the backup function block 4 is invoked.

[0088] In one embodiment, the storage module 101 further stores an engineering information table, which includes start information, end information, and control information located between the start information and the end information; the control module 102 enters the device control stage according to the start information; the control module 102 terminates the device control stage according to the end information; the control module 102 calls the function block according to the control information and controls the target external device based on the drive parameters.

[0089] Specifically, the control module 102 is also used to generate the control information according to the equipment operation instructions and write it into the information table template to obtain the engineering information table.

[0090] The start information is a start function block containing a start control character, and the end information is a end function block containing a stop control character.

[0091] Specifically, after the user inputs a device operation command, the control module 102 stores the backup function block generated according to the device operation command into the information table template to obtain the project information table. The backup function block stored in the project information table includes information input according to the first sub-instruction and the second sub-instruction, wherein the start function block stores the ID of the first backup function block to be called. Specifically, the backup function block is stored as control information between the start information and the end information.

[0092] After the user completes the input of the device control command, the control module 102 traverses the engineering information table; after recognizing the control start character, it enters the device control stage, and calls the first backup function block that needs to be called according to the ID of the backup function block in the start function block to start the control of the device. After calling multiple backup function blocks, the control of the device is terminated after recognizing the control termination character in the termination function block.

[0093] In one embodiment, the implementation of the combined function is illustrated by taking an external device group 30 comprising a robotic arm device group 1, a robotic arm device group 2, a robotic gripper device group, and an industrial control computer device group as an example. Specifically, robotic arm device group 1 includes robotic arms 11, 12, and 13, and the robotic arms in robotic arm device group 1 are capable of rotation; robotic arm device group 2 includes robotic arms 21, 22, and 23, and the robotic arms in robotic arm device group 2 are capable of rotation; the robotic gripper device group includes robotic grippers 1, 2, and 3, and the robotic grippers in the robotic gripper device group are capable of grasping; the industrial control computer device group includes industrial control computers 1, 2, and 3, and the industrial control computers in the industrial control computer device group are capable of industrial control. Specifically, this is assuming the user wants to control robotic arm 23, robotic gripper 2, and industrial control computer 2.

[0094] When connecting robotic arm equipment group 1, robotic arm equipment group 2, robotic gripper equipment group, and industrial computer equipment group to the control system, the equipment parameters of robotic arm equipment group 1, robotic arm equipment group 2, robotic gripper equipment group, and industrial computer equipment group are first input to server 10 through interactive device 20. Server 10 generates standard function block A corresponding to robotic arm equipment group 1 and robotic arm equipment group 2 based on the equipment information of robotic arm equipment group 1 and robotic arm equipment group 2, generates standard function block B corresponding to robotic gripper equipment group based on the equipment information of robotic gripper equipment group, and generates standard function block C corresponding to industrial computer equipment group based on the equipment information of industrial computer equipment group. In addition, the display screen of interactive device 20 will display the function block identifier a of standard function block A, the function block identifier b of standard function block B, the function block identifier c of standard function block C, the start identifier of the start function block, and the end identifier of the stop function block.

[0095] When controlling the equipment, the user operates function block identifiers a, b, and c through the interactive device 20 to add function block identifiers a, b, and c to the preset area of ​​the display screen; clicking on function block identifier a selects the robot arm device group 2 number from the displayed list containing robot arm device group 1 number and robot arm device group 2 number, and selects the robot arm 23 address as the target robot arm address from the displayed list containing robot arm 21 address, robot arm 22 address, and robot arm 23 address, and enters the association information of the function information corresponding to robot arm 23 in the displayed input box. After completion, the server 10 generates a backup function block A' corresponding to the standard function block A, and modifies the drive parameters in the backup function block A' using the robot arm device group 2 number selected by the user, the target robot arm address, and the entered association information to obtain a backup function block A' with modified drive parameters; similarly, a backup function block B' with modified drive parameters and a backup function block C' with modified drive parameters can be obtained;

[0096] After the user clicks the function block identifier to complete the information selection and input, the function block identifiers a, b, and c, the start identifier, and the end identifier need to be connected by arrows to determine the order of controlling the robotic arm 23, the robotic gripper 2, and the industrial computer 2. If the connection is made in the order of start identifier, function block identifier a, b, c, and end identifier, the server 10 will write the ID of backup function block A' into the start function block, the ID of backup function block B' into backup function block A', the ID of backup function block C' into backup function block B', and the ID of the end function block into backup function block C'. Then, the server 10 will store these backup function blocks in the project information table.

[0097] First, server 10 reads the ID of backup function block A' from the start function block and retrieves backup function block A'. Server 10 then drives and controls the robotic arm 23 according to the modified drive parameters in backup function block A'. Next, server 10 reads the ID of backup function block B' from backup function block A' and retrieves backup function block B'. ​​Server 10 then drives and controls the robotic gripper 2 according to the modified drive parameters in backup function block B'. ​​Then, server 10 reads the ID of backup function block C' from backup function block B' and retrieves backup function block C'. Server 10 then drives and controls the industrial computer 2 according to the modified drive parameters in backup function block C'. Finally, server 10 reads the ID of the termination function block from backup function block C' and retrieves the termination function block to end the control of the equipment.

[0098] This application proposes a device control system, the system comprising: a server 10 and an interactive device 20; the server 10 is connected to the interactive device 20 and an external device group 30; the server 10 includes a storage module 101, a control module 102, a first data transmission module 103, and a second data transmission module 104; the external device group 30 includes at least one sub-external device group, each sub-external device group including at least one external device; the storage module 101 stores multiple function blocks, each function block corresponding to a sub-external device group, and each function block stores drive parameters corresponding to the sub-external device group; the control module 102 is connected to the external device group 30 through the first data transmission module 103; the control module 102 is connected to the interactive device 20 through the second data transmission module 104; the interactive device 20 is used to acquire user device operation commands, and the control module 102 is used to call at least one function block corresponding to the device operation command, and based on the drive parameters stored in at least one function block, determine at least one external device from at least one sub-external device group in the external device group 30 as the target external device for drive control. This application controls the device by setting up function blocks corresponding to the device and calling function blocks corresponding to the device operation commands input by the user. This enables a unified control system for different devices and also allows different devices to perform combined functions, further improving device control efficiency.

[0099] This application proposes a device control method, such as Figure 4 As shown, Figure 4 This is a flowchart illustrating a device control method provided in an embodiment of this application. The method includes:

[0100] Step 401: Obtain the device operation command input by the user;

[0101] Step 402: Invoke at least one function block corresponding to the device operation instruction;

[0102] Step 403: Based on the driving parameters stored in the at least one functional block, determine at least one external device from at least one sub-external device group from the external device group as the target external device for driving control.

[0103] Among them, the device control method provided in the embodiments of this application is based on the appendix Figure 1 -Appendix Figure 2 The aforementioned equipment control system is implemented.

[0104] The interactive device 20 includes a display module, which can be a display screen. The display screen can show function block identifiers corresponding to each function block. The function block identifiers correspond to the function blocks in the server 10. Users can input device operation commands by operating the function block identifiers displayed on the display screen.

[0105] Specifically, the display screen has a preset area, which displays a start indicator, an end indicator, and an OK button. Users can input device operation commands by manipulating the function block icons displayed on the screen: adding function block icons to the preset area by clicking or dragging, arranging the start indicator, end indicator, and function block icons in sequence, and finally clicking the OK button to complete the input of the device operation command.

[0106] In one implementation, the user can also input the association information of the function parameters via the display screen. If the user needs to input the association information of the function parameters, they can add the function block identifier to the preset area, click the function block identifier in the preset area, enter the association information of the function parameters in the input box that pops up after clicking, and finally click the OK button to send the association information of the function parameters as part of the input device operation command to the server 10.

[0107] In one implementation, the user can also input the sub-external device group number and the address of the target external device via the display screen. Since a function block corresponds to at least one sub-external device group, and a sub-external device group includes at least one external device, to ensure more accurate device control, when the user inputs device operation commands by operating the function block identifier displayed on the screen, they also need to input the sub-external device group number to be controlled and the device address of the target external device. Finally, clicking the "OK" button sends the input sub-external device group number and device address as part of the input device operation command to the server 10. For example, after the user adds a function block identifier to a preset area, clicks the function block identifier in the preset area, enters the sub-external device group number and the device address of the target external device in the pop-up input box, and finally clicks the "OK" button, sending the sub-external device group number and the device address of the target external device as part of the input device operation command to the server 10. For example, after a user adds a function block identifier to a preset area, clicking the function block identifier in the preset area will bring up a list of sub-external device group numbers and a list of device addresses. The user selects the sub-external device group number and the device address of the target external device from the list of sub-external device group numbers and the device address of the target external device, and finally clicks the OK button to send the sub-external device group number and the device address of the target external device as part of the input device operation command to the server 10.

[0108] Users can operate on multiple function block identifiers and combine and sort these identifiers to input device operation commands. These commands instruct the server 10 to drive multiple external devices with different functions to perform the functions corresponding to the function blocks. In practical applications, when operating on multiple function block identifiers, multiple operations can be performed on any single function block identifier.

[0109] The device operation instructions include a first sub-instruction and a second sub-instruction. Each time a user drags a function block identifier to a preset area and clicks on that function block identifier to input the associated information of the function parameters, the sub-external device group number, and the device address of the target external device, the interactive device 20 sends a corresponding first sub-instruction to the server 10. The first sub-instruction includes the function block ID corresponding to the function block identifier, the associated information of the function parameters, the sub-external device group number, and the device address of the target external device. After the interactive device 20 sends the first sub-instruction to the server 10, the control module 102 of the server 10 retrieves the standard function block corresponding to the function block ID from the storage module 101 based on the function block ID in the first sub-instruction and generates a corresponding backup function block. Then, it modifies the driver parameters in the backup function block using the associated information of the function parameters, the sub-external device group number, and the device address of the target external device. It should be noted that for the same function block identifier, a corresponding backup function block is generated for each operation. It should be noted that if the user inputs the association information of the function parameters of the corresponding function block, the association information of the function parameters in the first sub-instruction will not be empty. When the control module 10 recognizes that the association information is not empty, it will write the association information of the function parameters into the backup function block to modify the function information in the driver parameters. If the user does not input the association information of the function parameters of the corresponding function block, the association information of the function parameters in the first sub-instruction will be empty. When the control module 10 recognizes that the association information is empty, it will not modify the function information in the driver parameters.

[0110] Each time the user combines and sorts the function block identifiers, the interactive device 20 sends a corresponding second sub-instruction to the server 10. This second sub-instruction instructs the user to write the backup function block ID of the next function block identifier into the backup function block corresponding to the previous function block identifier. For example, if function block identifier 1 and function block identifier 2 are combined, with function block identifier 1 appearing first, the interactive device 20 will send a second sub-instruction to write the ID of the backup function block 2 corresponding to function block 2 into the backup function block 1 corresponding to function block 1. Upon receiving the second sub-instruction, server 10's control module 102 writes the ID of backup function block 2 into backup function block 1. Similarly, if function block identifier 3 is combined with function block identifier 2, with function block identifier 2 preceding it, then the interactive device 20 sends a second sub-instruction to server 10, writing the ID of backup function block 3 corresponding to function block 3 into backup function block 2. Upon receiving this second sub-instruction, server 10's control module 102 writes the ID of backup function block 3 into backup function block 2. After the user terminates the operation on the function block identifier, all the sub-instructions constitute a complete device operation instruction.

[0111] In one implementation, the user can drag multiple function block icons to a preset area on the display screen, connect the multiple function block icons in sequence using arrows to sort the function block icons, and then click the OK button to complete the input of device operation commands.

[0112] It should be noted that the sorting of function block identifiers by arrows and labels described in this embodiment is only an example. In actual applications, other methods may be used. This application does not limit the method of sorting function block identifiers.

[0113] It should be noted that, in this embodiment, inputting the association information of the function parameters of the corresponding function block by clicking the function block identifier in the preset area is only one implementation method. The association information of the function parameters can also be input by automatically popping up a parameter input box when the function parameters of the corresponding function block can be modified. This application does not limit the method of inputting the association information of the function parameters.

[0114] Specifically, the storage module 101 also stores an engineering information table, which includes start information, end information, and control information located between the start information and the end information; the control module 102 enters the device control stage according to the start information; the control module 102 terminates the device control stage according to the end information; the control module 102 calls the function block according to the control information and controls the target external device based on the drive parameters.

[0115] Specifically, the control module 102 is also used to generate the control information according to the equipment operation instructions and write it into the information table template to obtain the engineering information table.

[0116] The start information is a start function block containing a start control character, and the end information is a end function block containing a stop control character.

[0117] Specifically, after the user inputs a device operation command, the control module 102 stores the backup function block generated according to the device operation command into the information table template to obtain the project information table. The backup function block stored in the project information table includes information input according to the first sub-instruction and the second sub-instruction, wherein the start function block stores the ID of the first backup function block to be called. Specifically, the backup function block is stored as control information between the start information and the end information.

[0118] After the user completes the input of the device control command, the control module 102 traverses the engineering information table; after recognizing the control start character, it enters the device control stage, and calls the first backup function block that needs to be called according to the ID of the backup function block in the start function block to start the control of the device. After calling multiple backup function blocks, the control of the device is terminated after recognizing the control termination character in the termination function block.

[0119] This application enables the combination of function blocks by combining function block identifiers, thereby achieving unified scheduling of different function blocks, realizing complex functions composed of multiple functions, and further improving equipment control efficiency.

[0120] like Figure 5 As shown, in one embodiment, is an internal structural diagram of a computer device. This computer device may be a device control system, or a terminal or server connected to a device control system. Figure 5 As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and may also store a computer program that, when executed by the processor, enables the processor to implement a device control method. The internal memory may also store a computer program that, when executed by the processor, enables the processor to implement a device control method. The network interface is used for communication with external devices. Those skilled in the art will understand that… Figure 5 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0121] In one embodiment, the device control method provided in this application can be implemented as a computer program, and the computer program can be implemented as follows: Figure 5 It runs on the computer device shown. The computer device's memory can store the various program templates that make up the device's control system.

[0122] A computer device includes a memory and a processor. The memory stores a computer program that, when executed by the processor, causes the processor to perform the following steps: acquiring a device operation instruction input by a user; invoking at least one function block corresponding to the device operation instruction; and determining at least one external device from at least one sub-external device group as a target external device for drive control based on drive parameters stored in the at least one function block.

[0123] A computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to perform the following steps: acquiring a device operation instruction input by a user; invoking at least one function block corresponding to the device operation instruction; and determining at least one external device from at least one sub-external device group as the target external device for drive control based on drive parameters stored in the at least one function block.

[0124] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.

[0125] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.

Claims

1. An apparatus control system characterized by comprising: The system includes: a server and an interactive device; the server is connected to the interactive device and an external device group; the server includes a storage module, a control module, a first data transmission module and a second data transmission module; the external device group includes at least one sub-external device group, each sub-external device group includes at least one external device, and the external devices included in a sub-external device group are external devices capable of performing the same function; The storage module stores multiple function blocks, each function block corresponding to at least one sub-external device group. Each function block stores driver parameters corresponding to the sub-external device group, including the device's function information, device address, communication protocol, driver program, and function interface name. The storage module also stores a project information table, which includes start information, end information, and control information between the start and end information. The control module enters the device control phase based on the start information. The control module terminates the device control phase based on the end information. The control module calls the function block based on the control information and controls the target external device based on the driver parameters. The control module is connected to the external device group through the first data transmission module; the control module is connected to the interactive device through the second data transmission module. The interactive device is used to acquire the user's device operation instructions. The control module is used to call at least one of the function blocks corresponding to the device operation instructions, and to determine at least one external device from at least one sub-external device group as the target external device for drive control based on the drive parameters stored in at least one function block. The interactive device is also used to receive user data input, and the control module is also used to generate a function block corresponding to the sub-external device group based on the data information input by the user corresponding to the sub-external device group.

2. The system of claim 1, wherein, The control module is also used to identify the device parameters of each external device in the external device group through the first data transmission module. The control module determines the target external device and performs drive control by comparing the device parameters of each external device with the drive parameters stored in the function block.

3. The system of claim 1, wherein, The interactive device includes a display module, which displays a function block identifier corresponding to each function block; the user inputs device operation commands by operating the function block identifier.

4. The system according to claim 1, characterized in that, The control module is also used to generate the control information according to the equipment operation instructions and write it into the information table template to obtain the engineering information table.

5. The system according to claim 1, characterized in that, The data structure of the functional block is a combination of a data interface and a dynamic link library.

6. A device control method, characterized in that, The method is applied to the system as described in any one of claims 1 to 5, the method comprising: Obtain device operation commands input by the user; Invoke at least one function block corresponding to the device operation instruction; Based on the driving parameters stored in the at least one functional block, at least one external device from at least one sub-external device group is determined from the external device group as the target external device for driving control.

7. A computer device, characterized in that, It includes a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of the method as described in claim 6.

8. A computer-readable storage medium, characterized in that, The system contains a computer program that, when executed by a processor, causes the processor to perform the steps of the method as described in claim 6.