Method, apparatus, system and storage medium for robot-assisted programming

CN117863170BActive Publication Date: 2026-06-09GREE ELECTRIC APPLIANCE INC OF ZHUHAI

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GREE ELECTRIC APPLIANCE INC OF ZHUHAI
Filing Date
2023-12-12
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

Existing robot programming technologies cannot quickly match the required programming data and instructions in different programming scenarios, resulting in low programming efficiency.

Method used

A robot-assisted programming method is provided, which receives and responds to the operation of the selected target programming mode, loads the target data type and target data instructions that match the robot's functional requirements, and displays the programming mode operation, data and instruction modules on the display interface to achieve rapid programming.

Benefits of technology

It enables the rapid location and loading of required data types and instructions in different programming scenarios, improving programming efficiency, meeting the personalized needs of different programmers, and supporting network sharing of custom programming modes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117863170B_ABST
    Figure CN117863170B_ABST
Patent Text Reader

Abstract

The application provides a robot-assisted programming method, device, system and storage medium. The method comprises: receiving and responding to the operation of selecting a target programming mode, loading a target data type and a target data instruction included in the target programming mode, wherein the target programming mode is a programming mode matched with the function requirement of the robot, any programming mode includes a data type and a data instruction, and the data types and / or data instructions included in different programming modes are different; and robot-assisted programming is performed by using the target data type and the target data instruction. The data type and the data instruction are matched quickly according to the function requirement of the robot, so that efficient robot-assisted programming is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot programming, and more specifically, to a method, apparatus, system, storage medium, and electronic device for robot-assisted programming. Background Technology

[0002] Robot programming offers numerous types of programming data and instructions, including motion instructions, I / O instructions, and data processing instructions. Typically, multiple programming tasks are configured for a single robot to control its movement and monitor the surrounding environment. Different tasks have different responsibilities, but only one of these tasks is a motion task (the one that controls the robot's movement), while the others can perform functions such as visual judgment, I / O monitoring, and data processing.

[0003] Existing robot programming aids include two methods. The first method involves grouping all instructions together and then categorizing them according to function. Each time an instruction is inserted, the user needs to first find the category of the instruction in the group, and then find the required instruction among the many instructions in that category before inserting it. The second method involves first typing the first few letters of the instruction using the keyboard. The editor then displays all program data, keywords, and instructions matching the first few letters through a drop-down list for the user to select. This method requires the user to be familiar with the programming instructions used beforehand.

[0004] When users need to write a program for a specific function, they often use the related instructions and data frequently. However, neither of these two methods allows users to quickly retrieve the required instructions and data in the desired scenario. For example, if a user wants to write a palletizing program, they will frequently call palletizing-related programs. However, for each program insertion, the existing methods require the user to first find the category of the palletizing instruction, and then find the required instruction from among the numerous instructions within that category; or the user first enters the first few characters of the instruction, and then the editor displays all the instructions, keywords, and program data that match those first few characters, not just the palletizing instruction. Similarly, the same applies if a user needs to write an I / O-related program. Therefore, existing programming methods do not allow users to quickly program in different scenarios. Summary of the Invention

[0005] The main objective of this application is to provide a method, apparatus, system, storage medium, and electronic device for robot-assisted programming, so as to at least solve the problem that existing robot-assisted programming technologies cannot quickly match the required programming data and programming instructions for different programming scenarios.

[0006] To achieve the above objectives, according to one aspect of this application, a method for robot-assisted programming is provided, comprising: receiving and responding to an operation of selecting a target programming mode; loading a target data type and target data instructions included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of a robot, any programming mode includes a data type and data instructions, and different programming modes include different data types and / or data instructions; and performing robot-assisted programming using the target data type and the target data instructions.

[0007] Optionally, the display interface of the execution terminal includes multiple window interfaces. The programming mode operation module, programming mode data module, and programming mode instruction module are respectively displayed in the first window interface, the second window interface, and the third window interface. The programming mode operation module includes multiple programming modes. Controls corresponding to each programming mode are displayed in the first window interface. It receives and responds to the operation of selecting a target programming mode and loads the target data type and target data instruction included in the target programming mode. This includes: receiving a first preset operation applied to the target control corresponding to the target programming mode; the programming mode data module responds to the first preset operation to load the target data type and displays the control corresponding to the target data type in the second window interface; and the programming mode instruction module responds to the first preset operation to load the target data instruction and displays the control corresponding to the target data instruction in the third window interface.

[0008] Optionally, the configuration file of each programming mode stores the corresponding data type and data instructions of the programming mode. It receives a first preset operation applied to a target control corresponding to the target programming mode. The programming mode data module loads the target data type in response to the first preset operation, and the programming mode instruction module loads the target data instruction in response to the first preset operation. This includes: receiving the first preset operation applied to the target control; the programming mode data module calling the configuration file of the target programming mode to load the target data type in response to the first preset operation; and receiving the first preset operation applied to the target control; the programming mode instruction module calling the configuration file of the target programming mode to load the target data instruction in response to the first preset operation.

[0009] Optionally, the program editing interface is displayed in the fourth window interface, and robot-assisted programming is performed using the target data type and the target data instruction, including: a first response step: responding sequentially to a first cursor movement operation and a first selection operation, inserting first template code into the program editing interface, wherein the first cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program data definition needs to be added, and the first selection operation is the operation of selecting one target data type from multiple target data types; a second response step: responding sequentially to a second cursor movement operation and a second selection operation, inserting second template code into the program editing interface, wherein the second cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program instruction needs to be added, and the second selection operation is the operation of selecting one target data instruction from multiple target data instructions, wherein the first template code and the second template code are stored in the configuration file of the target programming mode; repeating the first response step, or repeating the second response step, or alternating between the first response step and the second response step, until the robot-assisted programming is completed.

[0010] Optionally, the second window interface also displays an add data control and a delete data control. The method further includes: when any of the programming modes in the programming mode operation module is selected, a data type selection window pops up in response to a second preset operation applied to the add data control, and a data type to be added is selected in response to a third preset operation applied to the data type selection window; after any of the programming modes in the programming mode operation module is selected and any of the data types in the programming mode data module is selected, the selected data type is deleted in response to a fourth preset operation applied to the delete data control; the third window interface also displays an add command control and a delete command control. The method further includes: when any of the programming modes in the programming mode operation module is selected, a command type selection window pops up in response to a fifth preset operation applied to the add command control, and a data command to be added is selected in response to a sixth preset operation applied to the command type selection window; after any of the programming modes in the programming mode operation module is selected and any of the data commands in the programming mode command module is selected, the selected data command is deleted in response to a seventh preset operation applied to the delete command control.

[0011] Optionally, the first window interface further displays a programming mode creation control, and the method further includes: in response to an eighth preset operation applied to the programming mode creation control, a programming mode setting window pops up; in response to an operation of entering a programming mode name in the programming mode setting window, a control with the programming mode name is added to the first window interface; in response to a ninth preset operation applied to the control with the programming mode name, the newly added programming mode is selected; in response to a tenth preset operation applied to the programming mode data module, the data type of the newly added programming mode is added; and in response to an eighth preset operation applied to the programming mode instruction module, the data instruction of the newly added programming mode is added.

[0012] Optionally, the first window interface further displays at least one of the following: a delete programming mode control, a share programming mode control, and an import programming mode control. The method further includes at least one of the following: in response to an eleventh preset operation applied to any programming mode control, after selecting any programming mode, in response to a twelfth preset operation applied to the delete programming mode control, deleting any programming mode; in response to a thirteenth preset operation applied to any programming mode control, after selecting any programming mode, in response to a thirteenth preset operation applied to the share programming mode control, copying the configuration file corresponding to the programming mode to a preset path to share the configuration file to the target user who wants to import the programming mode; after the target user receives the configuration file, in response to a fourteenth preset operation applied to the import programming mode control, popping up a configuration path control; in response to the operation of inputting the preset path in the configuration path control, adding a control with the name of the programming mode to the first window interface; the programming mode data module loading the data type of the programming mode; and the programming mode instruction module loading the data instruction of the programming mode.

[0013] Optionally, after deleting any of the programming modes in response to a twelfth preset operation performed on the delete programming mode control, the method further includes: deleting the name of the programming mode from the programming mode name list; and deleting the configuration file of the programming mode in the configuration file management module.

[0014] Optionally, the first window interface further displays only the instructions and data controls for the current programming mode. The method further includes: in response to a fifteenth preset operation applied to any programming mode control, after selecting any programming mode, in response to a sixteenth preset operation applied to the instructions and data controls for the current programming mode, entering full programming mode; in full programming mode, the program editor updates the current program text and displays only the data types and data instructions included in the current programming mode; in response to a seventeenth preset operation applied to the instructions and data controls for the current programming mode, exiting full programming mode; after exiting full programming mode, the program editor updates the current program text and displays all the program text.

[0015] Optionally, the control corresponding to the programming mode is a button control, which indicates that the corresponding programming mode is selected when the button control is displayed in a preset color.

[0016] Optionally, the programming mode operation module includes a user-defined mode among the various programming modes, which includes custom data types and custom data instructions.

[0017] Optionally, when there are multiple target programming modes, robot-assisted programming is performed using the target data type and the target data instruction, including: determining the execution order of the multiple target programming modes; and performing robot-assisted programming according to the execution order using the target data type and the target data instruction in the currently selected target programming mode, wherein mode switching is performed between two adjacent target programming modes.

[0018] According to another aspect of this application, a robot-assisted programming device is provided, comprising: a receiving and responding unit, configured to receive and respond to an operation of selecting a target programming mode, and load a target data type and target data instructions included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of a robot, any programming mode includes a data type and data instructions, and different programming modes include different data types and / or data instructions; and a programming unit, configured to perform robot-assisted programming using the target data type and the target data instructions.

[0019] According to another aspect of this application, a robot-assisted programming system is provided, comprising: a programming mode operation module, including multiple programming modes, with controls corresponding to each programming mode displayed in a first window interface; a programming mode data module, displayed in a second window interface, configured to load target data types included in a target programming mode, wherein the target programming mode is a programming mode matching the functional requirements of the robot, each programming mode includes a data type and data instructions, and the data types and / or data instructions included in different programming modes are different; a programming mode instruction module, displayed in a third window interface, configured to load target data instructions included in the target programming mode; and a program editing module, including a program editing interface displayed in a fourth window interface, which invokes the target data type and the target data instructions in response to a preset operation performed on the program editing interface to perform robot-assisted programming.

[0020] Optionally, the first window interface may also display at least one of the following: switching programming mode controls, creating programming mode controls, deleting programming mode controls, sharing programming mode controls, importing programming mode controls, and displaying only the current programming mode instruction and data controls;

[0021] The second window interface also displays add data controls and delete data controls;

[0022] The third window interface also displays add command controls and delete command controls.

[0023] Optionally, the system further includes a configuration file management module, which stores configuration files for each of the programming modes.

[0024] According to another aspect of this application, a computer-readable storage medium is provided, the computer-readable storage medium including a stored program, wherein, when the program is executed, it controls the device where the computer-readable storage medium is located to perform any of the robot-assisted programming methods described above.

[0025] According to another aspect of this application, an electronic device is provided, comprising: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including a method for performing any of the robot-assisted programming methods described above.

[0026] Applying the technical solution of this application, firstly, by receiving and responding to the operation of selecting a target programming mode, the target data type and target data instructions included in the target programming mode are loaded. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and data instructions, and the data type and / or data instructions included in different programming modes are different. Then, robot-assisted programming is performed using the target data type and target data instructions. Since corresponding data types and data instructions are pre-configured for multiple programming modes, the data type and data instructions can be quickly determined after determining the programming mode that matches the functional requirements of the robot, enabling rapid programming. This is significantly superior to the following methods in the prior art: Method 1: For each program inserted, the user needs to first find the category of the instruction, and then find numerous instructions within that category, and then insert the required instruction; Method 2: The user first inputs the first few characters of the instruction, and then the editor displays all instructions, keywords, program data, etc., matching all the first few characters, not just the type of instruction the user needs. Attached Figure Description

[0027] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0028] Figure 1 A hardware structure block diagram of a mobile terminal for performing a method of robot-assisted programming according to an embodiment of this application is shown;

[0029] Figure 2 A flowchart illustrating a robot-assisted programming method according to an embodiment of this application is shown.

[0030] Figure 3 A schematic diagram of the programming mode operation interface provided according to the embodiments of this application is shown;

[0031] Figure 4 A schematic diagram of the contents of a general motion mode configuration file provided according to an embodiment of this application is shown;

[0032] Figure 5 A schematic diagram of the programming mode configuration folder structure provided according to embodiments of this application is shown;

[0033] Figure 6 A flowchart illustrating the programming mode switching process according to an embodiment of this application is shown;

[0034] Figure 7 A flowchart illustrating programming steps in programming mode according to an embodiment of this application is shown;

[0035] Figure 8 A flowchart illustrating the cross-programming programming mode provided according to an embodiment of this application is shown;

[0036] Figure 9 A data flow diagram of the editing programming mode provided according to an embodiment of this application is shown;

[0037] Figure 10 A flowchart of editing programming mode instructions according to an embodiment of this application is shown;

[0038] Figure 11 A flowchart illustrating the creation of a programming pattern according to an embodiment of this application is shown;

[0039] Figure 12 A flowchart illustrating the deletion of programming modes according to an embodiment of this application is shown;

[0040] Figure 13 A flowchart of the sharing and import programming mode provided according to embodiments of this application is shown;

[0041] Figure 14 A flowchart illustrating the entry and exit of full-mode states according to an embodiment of this application is shown;

[0042] Figure 15 A schematic diagram of a robot-assisted programming system provided according to an embodiment of this application is shown;

[0043] Figure 16 A structural block diagram of a robot-assisted programming apparatus provided according to an embodiment of this application is shown.

[0044] The above figures include the following reference numerals:

[0045] 1. Configuration file management module; 2. Programming mode operation module; 3. Programming mode data module; 4. Programming mode instruction module; 5. Program editing module; 6. Instruction and data monitoring module. Detailed Implementation

[0046] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0047] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0048] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0049] For ease of description, the following explains some of the nouns or terms used in the embodiments of this application:

[0050] Programming Modes: Different data types and data instructions are grouped into sets. Users can only select the data types and data instructions in different programming modes to program. Data types include robtarget, jointarget, etc., and data instructions include conditional statements, loop statements, etc.

[0051] Full Programming Mode: In this mode, the program editor only displays the program data definitions and instructions contained in the current programming mode.

[0052] As described in the background section, existing robot-assisted programming technologies cannot quickly match and combine the required programming data and instructions for different programming scenarios. To solve the problem that robot-assisted programming technologies cannot quickly match and combine the required programming data and instructions for different programming scenarios, embodiments of this application provide a method, apparatus, system, storage medium, and electronic device for robot-assisted programming.

[0053] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.

[0054] The methods and embodiments provided in this application can be executed on a mobile terminal, computer terminal, or similar computing device. Taking running on a mobile terminal as an example, Figure 1This is a hardware structure block diagram of a mobile terminal for a robot-assisted programming method according to an embodiment of the present invention. Figure 1 As shown, a mobile terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. The mobile terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the mobile terminal described above. For example, the mobile terminal may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.

[0055] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the robot-assisted programming method in this embodiment of the invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the mobile terminal via a network. Examples of the aforementioned networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. The transmission device 106 is used to receive or send data via a network. Specific examples of the aforementioned networks may include wireless networks provided by the mobile terminal's communication provider. In one example, the transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to communicate with the Internet. In one example, the transmission device 106 may be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0056] This embodiment provides a method for robot-assisted programming that runs on a mobile terminal, computer terminal, or similar computing device. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Also, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0057] Figure 2 This is a flowchart of a robot-assisted programming method according to an embodiment of this application. For example... Figure 2 As shown, the method includes the following steps:

[0058] Step S201: Receive and respond to the operation of selecting the target programming mode, load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different;

[0059] The programming modes include I / O mode, visual communication mode, and computation mode;

[0060] For example, the functional requirements of a robot include controlling the robot to move goods from location A to location B, controlling the data of each goods movement by the robot, and controlling the volume of goods moved by the robot each time.

[0061] The above-mentioned target programming mode is determined according to the functional requirements of the robot. Since the corresponding data types and data instructions are pre-configured for multiple programming modes, the data types and data instructions can be quickly located after the programming mode is determined.

[0062] Step S202: Perform robot-aided programming using the target data type and the target data instructions.

[0063] The identification of the target data type and target data instructions facilitates rapid subsequent robot-assisted programming.

[0064] The robot-assisted programming method of this application first loads the target data type and target data instructions included in the target programming mode by receiving and responding to the operation of selecting a target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and data instructions, and different programming modes include different data types and / or data instructions. Then, robot-assisted programming is performed using the target data type and target data instructions. Since corresponding data types and data instructions are pre-configured for multiple programming modes, the data type and data instructions can be quickly determined after determining the programming mode that matches the robot's functional requirements, enabling rapid programming. This is significantly superior to the following methods in the prior art: Method 1: For each program inserted, the user needs to find the category of the instruction, and then find the required instruction from among many instructions within that category; Method 2: The user first inputs the first few characters of the instruction, and then the editor displays all the instructions, keywords, program data, etc., matching all the first few characters, instead of just the instruction type the user needs.

[0065] Furthermore, this modular programming approach allows beginners to learn programming more effectively and in a targeted manner. The solution not only addresses the difficulty of quickly finding the necessary programming data and instructions in different programming scenarios, but also solves the problem of complex robot programming instruction sets that make it difficult for instructors to easily tailor the teaching content to learners. Instructors can set custom programming modes based on learners' progress, assigning specific content for each stage of mastery to that mode, facilitating both teaching and practice. New learners can utilize different programming modes to improve learning efficiency and systematic approach.

[0066] Furthermore, such as Figure 3 As shown, the display interface of the execution terminal includes multiple window interfaces. The programming mode operation module 2, programming mode data module 3, and programming mode instruction module 4 are respectively displayed in the first window interface, the second window interface, and the third window interface. The programming mode operation module includes multiple programming modes. Controls corresponding to each programming mode are displayed in the first window interface. It receives and responds to the operation of selecting a target programming mode, and loads the target data type and target data instruction included in the target programming mode, including:

[0067] The programming mode data module receives a first preset operation applied to a target control corresponding to the target programming mode. In response to the first preset operation, the programming mode data module loads the target data type and displays the control corresponding to the target data type in the second window interface. In response to the first preset operation, the programming mode instruction module loads the target data instruction and displays the control corresponding to the target data instruction in the third window interface.

[0068] The first preset operation can be a single click, double click, etc., to select the target programming mode. After receiving the selection operation, the programming mode data module automatically loads the target data type and displays it. After receiving the selection operation, the programming mode instruction module automatically loads the target data instruction and displays it. For the user, only the first preset operation needs to be performed, and the subsequent steps can be automatically implemented by the terminal, which is convenient and fast.

[0069] Furthermore, the configuration file of each programming mode stores the corresponding data type and data instructions for that programming mode, receives a first preset operation applied to a target control corresponding to the target programming mode, the programming mode data module loads the target data type in response to the first preset operation, and the programming mode instruction module loads the target data instructions in response to the first preset operation, including:

[0070] The programming mode data module receives the first preset operation applied to the target control, and in response to the first preset operation, calls the configuration file of the target programming mode to load the target data type;

[0071] The programming mode instruction module receives the first preset operation applied to the target control, and in response to the first preset operation, calls the configuration file of the target programming mode to load the target data instruction.

[0072] Pre-configured configuration files are used to pre-set corresponding configuration files for various programming modes. The required data types and data instructions are configured in advance in the configuration files, and the subsequent programming mode data modules and programming mode instruction modules can be directly called to realize subsequent auxiliary programming.

[0073] Specifically, the control corresponding to the programming mode is a button control. When the button control is displayed in a preset color, it indicates that the corresponding programming mode has been selected. The preset color is displayed to prompt the user that the selection was successful.

[0074] Specifically, the programming mode operation module includes a user-defined mode among the various programming modes. The user-defined mode addresses the issue that different programming users have different programming habits, and users cannot set their own exclusive set of programming instructions according to their habits and needs. Furthermore, the user-configured custom programming mode can be shared over a network, facilitating teaching and learning.

[0075] Specifically, such as Figure 3 As shown, the programming modes include general motion mode, IO mode, palletizing mode, welding mode, visual communication mode, network communication mode, computation mode, custom mode 1, custom mode 2, and custom mode 3. When the user clicks "general motion mode", the button is lit up, indicating that the user is in general motion mode. The programming mode data module displays the data types included in general motion mode, including Jointarget and Robtarget. The programming mode instruction module also displays the instructions included in general motion mode, including HOME, MArchP, MovC, MovJ, MovP, and MovL.

[0076] Figure 4 The content of a general motion mode configuration file is shown, specifically in JSON format;

[0077] Figure 5 A programming mode configuration folder is shown, which includes various configuration files, such as a general motion mode configuration file, an IO mode configuration file, a palletizing mode configuration file, a welding mode configuration file, a visual communication mode configuration file, a network communication mode configuration file, a computation mode configuration file, a custom mode 1 configuration file, a custom mode 2 configuration file, and a custom mode 3 configuration file.

[0078] A specific mode programming mode switching process is as follows: Figure 6 As shown, in the programming mode operation module, clicking the button for the desired mode activates the button. The programming mode data module then loads the data types contained in that mode, and the programming mode instruction module loads the instruction types contained in that mode. The mode switch is then complete. This allows users to easily switch between different modes to improve programming efficiency while meeting the programming needs of the current program. In other words, different programming modes can be freely switched, allowing instructions from different programming scenarios to be interleaved to meet programming scenarios requiring the use of different types of instructions.

[0079] Specifically, the program editing interface is displayed in the fourth window interface, and robot-assisted programming is performed using the target data type and the target data instructions, including:

[0080] First response step: responding sequentially to the first cursor movement operation and the first selection operation, inserting the first template code into the program editing interface, wherein the first cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program data definition needs to be added, and the first selection operation is the operation of selecting one of the target data types from a plurality of target data types;

[0081] Second response step: responding sequentially to the second cursor movement operation and the second selection operation, inserting second template code into the program editing interface, wherein the second cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program instruction needs to be added, and the second selection operation is the operation of selecting one of the target data instructions from a plurality of target data instructions, wherein the first template code and the second template code are stored in the configuration file of the target programming mode;

[0082] Repeat the first response step, or repeat the second response step, or alternately execute the first response step and the second response step until the robot-assisted programming is completed.

[0083] As described above, by repeatedly and interactively executing the first response step and the second response step, multiple first template codes and multiple second template codes are obtained from the configuration file of the target programming pattern, thereby achieving robot-assisted programming. Specifically, as follows... Figure 3 As shown.

[0084] For example, when a user clicks the "Jointarget" button in the programming mode data module, a code template for that data type is inserted at the current cursor position in the program editing module: "Jointtarget Jx0:=[0.000,0.000,0.000,0.000];". Similarly, when a user clicks the "MovJ" button in the programming mode instruction module, a code template for that instruction type is inserted at the current cursor position in program editing module 5: "MovJ( <par>,tool0,$Wobj:=wobj0,$Speed:=V100,$Acc:=acc10,$Dec:=dec5,$Cpdata:=cp20);” Then fill in the specific data in the code template.

[0085] Specifically, such as Figure 7 As shown, in the programming mode operation module, click the mode button to switch to. The button will light up, and the mode switch is complete. In the program editing area, move the cursor to the position where you want to add program data definition. In the programming mode data module, click the data type to add. The template code for that data type recorded in the configuration file will be inserted at the cursor position. In the program editing area, move the cursor to the position where you want to add instruction. In the programming mode instruction module, click the instruction type to add. The template code for that instruction type recorded in the configuration file will be inserted at the cursor position.

[0086] Specifically, when a user clicks the "IO Mode" button in the programming mode operation module, the button will be lit up, and the "General Motion Mode" button will be delit. At this time, the user will exit from "General Motion Mode" and enter "IO Mode". The programming mode data module will refresh and display the data type list exclusive to "IO Mode", and the same applies to the programming mode instruction module.

[0087] Furthermore, when there are multiple target programming modes, robot-assisted programming is performed using the target data type and the target data instructions, including:

[0088] Determine the execution order of the various target programming patterns;

[0089] Robot-assisted programming is performed according to the execution order, using the target data type and target data instruction in the currently selected target programming mode, wherein mode switching is performed between two adjacent target programming modes.

[0090] In other words, if there are multiple target programming modes, it is necessary to determine the execution order of the multiple target programming modes, and then select the corresponding target data types and target data instructions in sequence to realize robot-assisted programming.

[0091] Specifically, such as Figure 8 As shown, the process includes: clicking the mode button to switch to in the programming mode operation module (e.g., the general motion module); the button is lit up, and the mode switch is complete; moving the cursor in the program editing area to the location where the program data definition or instruction for that mode is to be added; clicking the data type or instruction to be added in the programming mode data module or programming mode instruction module; inserting the template code of that data type or instruction recorded in the configuration file at the cursor position; clicking the mode button to switch to in the programming mode operation module (e.g., the general calculation module); the button is lit up, and the mode switch is complete; moving the cursor in the program editing area to the location where the program data definition or instruction for that mode is to be added; clicking the data type or data instruction to be added in the programming mode data module or programming mode instruction module; inserting the template code of that data type or data instruction recorded in the configuration file at the cursor position. In this mode, if multiple data types or instructions to be inserted are in the same mode after switching modes, the data or instructions in that mode can be inserted continuously after switching modes before inserting the first data or instruction. Only when data or instructions in a different mode need to be inserted does it need to be switched to the next mode in the programming mode operation module. There is no need to click the button of the same mode repeatedly after inserting a data or instruction.

[0092] Furthermore, such as Figure 3 As shown, the second window interface also displays add data controls and delete data controls, and the method further includes:

[0093] When any of the programming modes in the programming mode operation module is selected, a data type selection window pops up in response to a second preset operation performed on the data addition control, and a data type to be added is selected in response to a third preset operation performed on the data type selection window.

[0094] After any programming mode in the programming mode operation module is selected and any data type in the programming mode data module is selected, the selected data type is deleted in response to a fourth preset operation performed on the delete data control.

[0095] Specifically, such as Figure 3 As shown, when the "General Motion Mode" button in the current programming mode operation module 2 is lit, when the user clicks the "Add Data" button in the programming mode data module 3, a window will pop up displaying all data types. After the user selects the data type to add to the current programming mode (General Motion Mode), the programming mode data module 3 will add an option button for that data type and write the relevant configuration information into the configuration file management module. When the user selects and lights up the "Jointarget" button and then clicks "Delete Data," the programming mode data module 3 will delete the "Jointarget" button and delete the relevant information in the configuration file of the General Motion Mode in the configuration file management module. The instructions for adding and deleting the current programming mode are performed in the programming mode instruction module 4 in the same way. The configuration file format used in this embodiment is JSON. Other file formats or other ways of recording information can also be used in other embodiments without affecting the working principle of this patent invention, and all of them fall within the protection scope of this patent.

[0096] Specifically, such as Figure 9 As shown, the process includes: activating the mode button for the data to be edited in the programming mode operation module; determining whether to add or delete data; if adding data, clicking the "Add Data" button in the programming mode data module; selecting the data type to be added in the pop-up data type selection window; if deleting data, clicking to select the data type to be deleted in the programming mode data module; and clicking the "Delete Data" button in the programming mode data module. The steps of adding and deleting data are performed at least once until the data editing in this mode is complete.

[0097] like Figure 3 As shown, the third window interface also displays add command controls and delete command controls, and the method further includes:

[0098] When any of the programming modes in the programming mode operation module is selected, a command type selection window pops up in response to a fifth preset operation on the add command control, and a data command to be added is selected in response to a sixth preset operation on the command type selection window;

[0099] After any programming mode in the programming mode operation module is selected and any data instruction in the programming mode instruction module is selected, the selected data instruction is deleted in response to a seventh preset operation performed on the delete instruction control.

[0100] Specifically, such as Figure 10 As shown, the process includes: activating the mode button for the instruction to be edited in the programming mode operation module; determining whether to add or delete the instruction; if adding an instruction, clicking the "Add Instruction" button in the programming mode instruction module; selecting the instruction type to be added in the pop-up instruction type selection window; if deleting an instruction, clicking to select the instruction type to be deleted in the programming mode instruction module; clicking the "Delete Instruction" button in the programming mode instruction module; and performing the steps of adding and deleting data at least once until the data editing in this mode is complete.

[0101] Furthermore, such as Figure 3 As shown, the first window interface also displays a control for creating a programming mode, and the method further includes:

[0102] In response to the eighth preset operation performed on the programming mode creation control, a programming mode settings window pops up. In response to the operation of entering a programming mode name in the programming mode settings window, a control with the programming mode name is added to the first window interface.

[0103] In response to a ninth preset operation performed on the control bearing the name of the programming mode, after selecting the newly added programming mode, in response to a tenth preset operation performed on the programming mode data module, the data type of the newly added programming mode is added, and in response to an eighth preset operation performed on the programming mode instruction module, the data instruction of the newly added programming mode is added.

[0104] Specifically, such as Figure 11 As shown, the process includes: clicking the "Create Programming Mode" button in the programming mode operation module; entering the programming mode name in the pop-up window, clicking OK, and closing the pop-up window; automatically adding an option button with the programming mode name to the programming mode list in the programming mode operation module; selecting and activating the button; editing data in the programming mode data module to complete the data addition; editing instructions in the programming mode data module to complete the instruction addition; and completing the creation of the programming mode.

[0105] Furthermore, such as Figure 3 As shown, the first window interface also displays at least one of the following: deleting the programming mode control, sharing the programming mode control, and importing the programming mode control. The method further includes at least one of the following:

[0106] In response to the eleventh preset operation applied to any programming mode control, after selecting any programming mode, in response to the twelfth preset operation applied to the delete programming mode control, any programming mode is deleted.

[0107] Specifically, such as Figure 12 As shown, the steps include: clicking the button to select the programming mode to be deleted in the programming mode operation module; clicking the "Delete Programming Mode" button in the programming mode operation module; and completing the deletion of the programming mode.

[0108] In response to the thirteenth preset operation applied to any programming mode control, after selecting any programming mode, in response to the thirteenth preset operation applied to the share programming mode control, the configuration file corresponding to the programming mode is copied to a preset path to share the configuration file with the target user who wants to import the programming mode. After the target user receives the configuration file, in response to the fourteenth preset operation applied to the import programming mode control, a configuration path control pops up. In response to the operation of entering the preset path in the configuration path control, a control with the name of the programming mode is added to the first window interface. The programming mode data module loads the data type of the programming mode, and the programming mode instruction module loads the data instruction of the programming mode.

[0109] Specifically, such as Figure 13 As shown, the process includes: clicking the button to select the programming mode to be shared in the programming mode operation module; clicking the "Share Programming Mode" button in the programming mode operation module; the configuration document of the corresponding programming mode being copied to the path specified by the sharing user; the sharing user sending the configuration document to the user who needs to import the programming mode; the importing user (equivalent to the target user) receiving the configuration file; the importing user clicking the "Import Programming Mode" button in the programming mode operation module; entering the path where the configuration file is located in the pop-up configuration path selection dialog box, clicking OK and closing the dialog box; an option button with the name of the programming mode being automatically added to the programming mode list in the programming mode operation module; the programming mode data module loading the data types contained in the mode; the programming mode instruction module loading the instruction types contained in the mode; and the programming mode import being completed. Accordingly, the system in this application will store the configuration file in the configuration file management module, and then add a button with the name of the programming mode to the programming mode name list in the programming mode operation module. The programming mode data module and the programming mode instruction module can then display the data and instruction types of the programming mode.

[0110] Furthermore, after deleting any of the programming modes in response to a twelfth preset operation acting on the delete programming mode control, the method further includes:

[0111] Remove the name of the programming mode from the list of programming mode names;

[0112] Delete the configuration file for the programming mode in the configuration file management module.

[0113] That is, the configuration file of the programming mode changes as the state of the programming mode changes.

[0114] Furthermore, such as Figure 3 As shown, the first window interface also displays only the instructions and data controls for the current programming mode, and the method further includes:

[0115] In response to the fifteenth preset operation applied to any programming mode control, after selecting any of the programming modes, in response to the sixteenth preset operation applied to the control that only displays the current programming mode instructions and data, the program enters the full programming mode. In the full programming mode, the program editor updates the current program text and only displays the data types and data instructions included in the current programming mode.

[0116] In response to the seventeenth preset operation applied to the instruction and data control that only displays the current programming mode, the full programming mode is exited. After exiting the full programming mode, the program editor updates the current program text and displays all the program text.

[0117] This full programming mode setting solves the problem of users finding it difficult to proofread programs that are too long. In full programming mode, the program editor only displays the program data definitions and instructions contained in the current programming mode, making it easier for users to proofread programs.

[0118] Specifically, such as Figure 14 As shown, the steps include: clicking the button to select the desired programming mode in the programming mode operation module; clicking "Show only current programming mode instructions and data" in the programming mode operation module to enter full programming mode; the program editor updates the current program text, displaying only the instructions and data definitions contained in this programming mode; clicking "Deselect" in the programming mode operation module to enter full programming mode; and the program editor updates the current program text, displaying all program text for this program.

[0119] This application also provides a robot-assisted programming system, such as... Figure 15 As shown, it includes:

[0120] The programming mode operation module 2 includes multiple programming modes, and controls corresponding to each programming mode are displayed in the first window interface;

[0121] Programming mode data module 3, displayed in the second window interface, is configured to load the target data type included in the target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different.

[0122] Programming mode instruction module 4, displayed in the third window interface, is configured to load the target data instructions included in the target programming mode;

[0123] The program editing module 5 includes a program editing interface displayed in the fourth window interface, which calls the target data type and the target data instruction in response to a preset operation performed on the program editing interface to perform robot-assisted programming.

[0124] Furthermore, the system also includes: a configuration file management module 1, which stores configuration files for each of the programming modes.

[0125] Furthermore, the system also includes: an instruction and data monitoring module 6, which is a low-level monitoring and distribution module;

[0126] Furthermore, such as Figure 3 As shown, the first window interface also displays at least one of the following: switching programming mode controls, creating programming mode controls, deleting programming mode controls, sharing programming mode controls, importing programming mode controls, and only displaying the current programming mode instruction and data controls;

[0127] Specifically, when the "General Motion Mode" button of the current programming mode operation module is lit up, the user can enter full programming mode by clicking the "Show only current programming mode instructions and data" button. At this time, the configuration file management module retrieves the configuration file of the current programming mode and reads the corresponding configuration information to provide to the instruction and data monitoring module. This module will monitor and match the code in the program editing module, displaying the data type definitions and instruction codes of the current programming mode and hiding the code of non-current programming modes. When the user clicks the "Show only current programming mode instructions and data" button again, the button will be de-illuminated and the user will exit full programming mode. At this time, the complete code will be displayed in the program editing module.

[0128] Specifically, when the "General Motion Mode" button in the current programming mode operation module is lit up, clicking the "Delete Programming Mode" button in the programming mode operation module will delete the "General Motion Mode" button from the programming mode name list in the programming mode operation module, and delete the configuration file for that programming mode in the configuration file management module.

[0129] The second window interface also displays add data controls and delete data controls;

[0130] The third window interface also displays add command controls and delete command controls.

[0131] The robot-assisted programming system of this application has pre-configured corresponding data types and data instructions for multiple programming modes, so after determining the programming mode that matches the functional requirements of the robot, it can quickly determine the data types and data instructions.

[0132] To enable those skilled in the art to better understand the technical solution of this application, the implementation process of the robot-assisted programming method of this application will be described in detail below with reference to specific embodiments.

[0133] This embodiment relates to a specific robot-assisted programming system, such as... Figure 15 As shown, it includes six modules: configuration file management module 1, programming mode operation module 2, programming mode data module 3, programming mode instruction module 4, program editing module 5, and instruction and data monitoring module 6. It not only solves the problem of not being able to quickly find the required programming data and instructions in different programming scenarios, but also addresses the issue of complex robot programming instruction sets, making it difficult for instructors to easily define teaching content for learners. Furthermore, this invention proposes a full programming mode, solving the problem of difficulty for users to proofread programs that are too long.

[0134] Functions and workflows of each module:

[0135] The configuration file management module 1 manages and reads the configuration files for each programming mode, and provides the corresponding configuration files when a user shares a programming mode. The configuration file management module 1 reads the configuration files for each programming mode, provides all programming mode names to the programming mode operation module 2 for display, provides the data types for each programming mode to the programming mode data module 3 for display, and provides the corresponding program templates to the programming mode data module 3. When the user clicks on the corresponding data type, the template is inserted into the program editing module 5. It also provides the instruction types for each programming mode to the programming mode instruction module 4 for display, and provides the corresponding program templates to the programming mode instruction module 4. When the user clicks on the corresponding instruction type, the template is inserted into the program editing module 5.

[0136] The programming mode operation module 2 lists and displays the names of all programming modes provided by the configuration file management module 1 to the user, and provides interactive methods for the user to issue commands to switch programming modes, create programming modes, delete programming modes, share programming modes, import programming modes, and enter full programming mode. When the user switches programming modes through the programming mode operation module 2, the module will notify the programming mode data module 3 and the programming mode instruction module 4 to refresh the corresponding programming mode data list and instruction list. When the user creates, deletes, or shares a programming mode through the programming mode operation module 2, the module will notify the configuration file management module 1 to create, delete, or copy the corresponding configuration file. When the user enters full programming mode through the programming mode operation module 2, the module will notify the instruction and data monitoring module 6 to retrieve the data types and instruction types contained in the current programming mode from the configuration file management module 1, and then filter the program in the program editing module 5, displaying only the definitions of the data types and instruction codes contained in the current programming mode to facilitate centralized verification of the data and instructions in that programming mode by the user.

[0137] Programming Mode Data Module 3 lists and displays all data types currently selected by the user in the Programming Mode Operation Module 2. When the user clicks on a corresponding data type, the relevant code template provided by Configuration File Management Module 1 is inserted into Program Editing Module 5. Programming Mode Data Module 3 allows users to edit data types within the current programming mode, including adding and deleting data types, enabling the programming mode to be customized according to user needs and habits.

[0138] The programming mode instruction module 4 lists all instruction types for the current programming mode switched by the user in the programming mode operation module 2. When the user clicks on a corresponding instruction type, the corresponding code template provided by the configuration file management module 1 is inserted into the program editing module 5. The programming mode instruction module 4 allows users to edit instruction types in the current programming mode, including adding and deleting instruction types, so that the programming mode can be customized according to the user's needs and habits.

[0139] The program editing module 5 is used to allow users to input and edit robot code, and to display the code of the current programming mode when entering full programming mode.

[0140] The instruction and data monitoring module 6 is used to obtain the data types and instruction types contained in the current programming mode from the configuration file management module 1 when the user enters the full programming mode. Then, it filters the program in the program editing module 5 and only displays the definitions of the data types and instruction codes contained in the current programming mode, so that the user can centrally verify the data and instructions in the programming mode.

[0141] This application also provides a robot-assisted programming apparatus. It should be noted that the robot-assisted programming apparatus of this application can be used to execute the robot-assisted programming method provided in this application. This apparatus is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0142] Furthermore, the interaction methods mentioned in the embodiments of this application, such as switching programming modes, deleting programming modes, creating programming modes, entering full programming mode, and editing programming modes, can be changed to other interaction methods. For example, when deleting a programming mode, the interaction method of selecting the programming mode to be deleted through a pop-up window can also replace the interaction methods mentioned in this embodiment. The interaction methods are varied and do not affect the implementation of the present invention.

[0143] The configuration file format used in this embodiment is JSON, but other file formats or other ways of recording information can also be used.

[0144] The following describes the robot-assisted programming apparatus provided in the embodiments of this application.

[0145] Figure 16 This is a schematic diagram of a robot-assisted programming apparatus according to an embodiment of this application. Figure 16 As shown, the device includes:

[0146] The receiving response unit 161 is used to receive and respond to the operation of selecting the target programming mode, and load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different.

[0147] Programming unit 162 is used to perform robot-assisted programming using the target data type and the target data instruction.

[0148] The robot-assisted programming device of this application receives and responds to the operation of selecting a target programming mode, and loads the target data type and target data instructions included in the target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and data instructions, and different programming modes include different data types and / or data instructions. The programming unit uses the target data type and target data instructions to perform robot-assisted programming. Since corresponding data types and data instructions are pre-configured for multiple programming modes, the data type and data instructions can be quickly determined after determining the programming mode that matches the robot's functional requirements. This is significantly superior to the following methods in the prior art: Method 1: For each program inserted, the user needs to find the category of the instruction, and then find the required instruction from the numerous instructions within that category; Method 2: The user first inputs the first few characters of the instruction, and then the editor displays all the instructions, keywords, program data, etc., matching the first few characters, instead of just the instruction of the type the user needs.

[0149] Furthermore, the display interface of the execution terminal includes multiple window interfaces. The programming mode operation module, programming mode data module, and programming mode instruction module are respectively displayed in the first window interface, the second window interface, and the third window interface. The programming mode operation module includes multiple programming modes, and the controls corresponding to each programming mode are displayed in the first window interface. The receiving response unit is also used to receive a first preset operation applied to the target control corresponding to the target programming mode. The programming mode data module loads the target data type in response to the first preset operation and displays the control corresponding to the target data type in the second window interface. The programming mode instruction module loads the target data instruction in response to the first preset operation and displays the control corresponding to the target data instruction in the third window interface.

[0150] Furthermore, the configuration file for each programming mode stores the corresponding data type and data instructions for that programming mode, and the receiving response unit includes a first receiving response module and a second receiving response module.

[0151] The first receiving and responding module is used to receive the first preset operation applied to the target control, and in response to the first preset operation, to call the configuration file of the target programming mode to load the target data type;

[0152] The second receiving and response module is used to receive the first preset operation applied to the target control, and in response to the first preset operation, to call the configuration file of the target programming mode to load the target data instruction.

[0153] Furthermore, the program editing interface is displayed in the fourth window interface, and the programming unit includes a first response module, a second response module, and an execution module.

[0154] The first response module is used to execute the first response step: responding sequentially to the first cursor movement operation and the first selection operation, inserting the first template code into the program editing interface, wherein the first cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program data definition needs to be added, and the first selection operation is the operation of selecting one of the target data types from a plurality of target data types;

[0155] The second response module is used to execute the second response step: responding sequentially to the second cursor movement operation and the second selection operation, inserting the second template code into the program editing interface, wherein the second cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program instruction needs to be added, and the second selection operation is the operation of selecting one of the target data instructions from a plurality of target data instructions, wherein the first template code and the second template code are stored in the configuration file of the target programming mode;

[0156] Repeat the first response step, or repeat the second response step, or alternately execute the first response step and the second response step until the robot-assisted programming is completed.

[0157] In some solutions, the second window interface also displays add data controls and delete data controls. The device further includes a first response unit and a second response unit.

[0158] The first response unit is used to pop up a data type selection window in response to a second preset operation on the data addition control when any of the programming modes in the programming mode operation module is selected, and to select the data type to be added in response to a third preset operation on the data type selection window.

[0159] The second response unit is used to delete the selected data type in response to a fourth preset operation performed on the delete data control after any programming mode in the programming mode operation module is selected and any data type in the programming mode data module is selected.

[0160] The third window interface also displays add command controls and delete command controls. The device further includes a third response unit and a fourth response unit.

[0161] The third response unit is used to pop up an instruction type selection window in response to a fifth preset operation on the add instruction control when any of the programming modes in the programming mode operation module is selected, and to select the data instruction to be added in response to a sixth preset operation on the instruction type selection window.

[0162] The fourth response unit is used to delete the selected data instruction in response to a seventh preset operation acting on the delete instruction control after any of the programming modes in the programming mode operation module is selected and any of the data instructions in the programming mode instruction module is selected.

[0163] Furthermore, the first window interface also displays controls for creating a programming mode, and the device further includes a fifth response unit and a sixth response unit.

[0164] The fifth response unit is used to respond to the eighth preset operation acting on the programming mode creation control, pop up the programming mode setting window, and respond to the operation of entering the programming mode name in the programming mode setting window, add a control with the programming mode name to the first window interface.

[0165] The sixth response unit is used to respond to a ninth preset operation on the control with the name of the programming mode, after selecting the newly added programming mode, to respond to a tenth preset operation on the programming mode data module to add the data type of the newly added programming mode, and to respond to an eighth preset operation on the programming mode instruction module to add the data instruction of the newly added programming mode.

[0166] Furthermore, the first window interface also displays at least one of the following: delete programming mode control, share programming mode control, and import programming mode control. The device further includes at least one of the following: a seventh response unit and an eighth response unit.

[0167] The seventh response unit is used to respond to the eleventh preset operation applied to any programming mode control, after selecting any programming mode, and to respond to the twelfth preset operation applied to the delete programming mode control, to delete any programming mode.

[0168] The eighth response unit is used to respond to the thirteenth preset operation applied to any programming mode control. After selecting any programming mode, in response to the thirteenth preset operation applied to the share programming mode control, the configuration file corresponding to the programming mode is copied to a preset path to share the configuration file to the target user who wants to import the programming mode. After the target user receives the configuration file, in response to the fourteenth preset operation applied to the import programming mode control, a configuration path control pops up. In response to the operation of entering the preset path in the configuration path control, a control with the name of the programming mode is added to the first window interface. The programming mode data module loads the data type of the programming mode, and the programming mode instruction module loads the data instruction of the programming mode.

[0169] Furthermore, the device also includes a first deletion unit and a second deletion unit.

[0170] The first deletion unit is used to delete the name of the programming mode in the programming mode name list after deleting any programming mode in response to a twelfth preset operation performed on the deletion programming mode control;

[0171] The second deletion unit is used to delete the configuration files for the programming mode in the configuration file management module.

[0172] Furthermore, the first window interface also displays only the instructions and data controls for the current programming mode, and the device further includes a ninth response unit and a tenth response unit.

[0173] The ninth response unit is used to respond to the fifteenth preset operation applied to any programming mode control. After selecting any programming mode, it responds to the sixteenth preset operation applied to the control that only displays the current programming mode instructions and data, and enters the full programming mode. In the full programming mode, the program editor updates the current program text and only displays the data types and data instructions included in the current programming mode.

[0174] The tenth response unit is used to respond to the seventeenth preset operation acting on the instruction and data control that only displays the current programming mode, to exit the full programming mode. After exiting the full programming mode, the program editor updates the current program text and displays all the program text.

[0175] Specifically, the control corresponding to the programming mode is a button control, and when the button control is displayed in a preset color, it indicates that the corresponding programming mode is selected.

[0176] In addition, the programming mode operation module includes a user-defined mode among the various programming modes, which includes custom data types and custom data instructions.

[0177] Furthermore, the programming unit includes a determination module and a programming module.

[0178] The determination module is used to determine the execution order of multiple target programming modes when there are multiple target programming modes;

[0179] The programming module is used to perform robot-assisted programming according to the execution order, using the target data type and target data instruction in the currently selected target programming mode, wherein mode switching is performed between two adjacent target programming modes.

[0180] The robot-assisted programming device includes a processor and a memory. The aforementioned receiving and response units and programming units are all stored as program units in the memory, and the processor executes the program units stored in the memory to achieve the corresponding functions. All of the above modules are located in the same processor; alternatively, the various modules may be located in different processors in any combination.

[0181] The processor contains a kernel, which retrieves the corresponding program unit from memory. One or more kernels can be configured, and adjusting kernel parameters can address the problem that existing robot-aided programming technologies cannot quickly match the required programming data and instructions for different programming scenarios.

[0182] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0183] This invention provides a computer-readable storage medium including a stored program, wherein the program controls the device containing the computer-readable storage medium to execute the robot-assisted programming method during runtime.

[0184] Specifically, methods for robot-assisted programming include:

[0185] Step S201: Receive and respond to the operation of selecting the target programming mode, load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different;

[0186] Step S202: Perform robot-aided programming using the target data type and the target data instructions.

[0187] This invention provides a processor for running a program, wherein the program executes the robot-assisted programming method during runtime.

[0188] Specifically, methods for robot-assisted programming include:

[0189] Step S201: Receive and respond to the operation of selecting the target programming mode, load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different;

[0190] Step S202: Perform robot-aided programming using the target data type and the target data instructions.

[0191] This invention provides an electronic device, including: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include methods for performing any of the robot-assisted programming methods described above.

[0192] This invention provides a device including a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs at least the following steps. The device described herein may be a server, PC, PAD, mobile phone, etc.

[0193] Step S201: Receive and respond to the operation of selecting the target programming mode, load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different;

[0194] Step S202: Perform robot-aided programming using the target data type and the target data instructions.

[0195] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having at least the following method steps:

[0196] Step S201: Receive and respond to the operation of selecting the target programming mode, load the target data type and target data instruction included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different;

[0197] Step S202: Perform robot-aided programming using the target data type and the target data instructions.

[0198] It is obvious to those skilled in the art that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those described herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0199] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0200] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0201] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0202] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0203] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0204] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0205] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0206] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0207] As can be seen from the above description, the embodiments of this application achieve the following technical effects:

[0208] 1) The method for performing robot-assisted programming in this application firstly loads the target data type and target data instructions included in the target programming mode by receiving and responding to the operation of selecting a target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and data instructions, and different programming modes include different data types and / or data instructions. Then, robot-assisted programming is performed using the target data type and target data instructions. Since corresponding data types and data instructions are pre-configured for multiple programming modes, the data type and data instructions can be quickly determined after determining the programming mode that matches the functional requirements of the robot, enabling rapid programming. This is significantly superior to the following methods in the prior art: Method 1: For each program inserted, the user needs to find the category of the instruction, and then find the required instruction from the numerous instructions within that category; Method 2: The user first inputs the first few characters of the instruction, and then the editor displays all the instructions, keywords, program data, etc., matching the first few characters, instead of just the instruction type the user needs.

[0209] 2) The robot-assisted programming system of this application has pre-configured corresponding data types and data instructions for multiple programming modes, so after determining the programming mode that matches the functional requirements of the robot, it can quickly determine the data types and data instructions.

[0210] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.< / par>

Claims

1. A method for robot-assisted programming, characterized in that, include: The system receives and responds to the operation of selecting a target programming mode, and loads the target data type and target data instructions included in the target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and data instructions, and the data type and / or data instructions included in different programming modes are different. Robot-aided programming is performed using the target data type and the target data instructions. The execution terminal's display interface includes multiple window interfaces. A programming mode operation module, a programming mode data module, and a programming mode instruction module are respectively displayed in a first window interface, a second window interface, and a third window interface. The programming mode operation module includes multiple programming modes, and controls corresponding to each programming mode are displayed in the first window interface. It receives and responds to the operation of selecting a target programming mode, loading the target data type and target data instruction included in the target programming mode. This includes: receiving a first preset operation applied to the target control corresponding to the target programming mode; the programming mode data module responding to the first preset operation loading the target data type and displaying the control corresponding to the target data type in the second window interface; and the programming mode instruction module responding to the first preset operation loading the target data instruction and displaying the control corresponding to the target data instruction in the third window interface.

2. The method according to claim 1, characterized in that, Each programming mode's configuration file stores the corresponding data type and data instructions for that programming mode. It receives a first preset operation applied to a target control corresponding to the target programming mode. The programming mode data module loads the target data type in response to the first preset operation, and the programming mode instruction module loads the target data instructions in response to the first preset operation, including: The programming mode data module receives the first preset operation applied to the target control, and in response to the first preset operation, calls the configuration file of the target programming mode to load the target data type; The programming mode instruction module receives the first preset operation applied to the target control, and in response to the first preset operation, calls the configuration file of the target programming mode to load the target data instruction.

3. The method according to claim 1, characterized in that, The program editing interface is displayed in the fourth window interface. Robot-assisted programming is performed using the target data type and the target data instructions, including: First response step: responding sequentially to the first cursor movement operation and the first selection operation, inserting the first template code into the program editing interface, wherein the first cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program data definition needs to be added, and the first selection operation is the operation of selecting one of the target data types from a plurality of target data types; Second response step: responding sequentially to the second cursor movement operation and the second selection operation, inserting second template code into the program editing interface, wherein the second cursor movement operation is the operation of moving the cursor to the position in the program editing interface where the program instruction needs to be added, and the second selection operation is the operation of selecting one of the target data instructions from a plurality of target data instructions, wherein the first template code and the second template code are stored in the configuration file of the target programming mode; Repeat the first response step, or repeat the second response step, or alternately execute the first response step and the second response step until the robot-assisted programming is completed.

4. The method according to claim 1, characterized in that, The second window interface also displays add data controls and delete data controls, and the method further includes: When any of the programming modes in the programming mode operation module is selected, a data type selection window pops up in response to a second preset operation performed on the data addition control, and a data type to be added is selected in response to a third preset operation performed on the data type selection window. After any programming mode in the programming mode operation module is selected and any data type in the programming mode data module is selected, the selected data type is deleted in response to a fourth preset operation performed on the delete data control. The third window interface also displays add command controls and delete command controls, and the method further includes: When any of the programming modes in the programming mode operation module is selected, a command type selection window pops up in response to a fifth preset operation performed on the add command control, and a data command to be added is selected in response to a sixth preset operation performed on the command type selection window; After any programming mode in the programming mode operation module is selected and any data instruction in the programming mode instruction module is selected, the selected data instruction is deleted in response to a seventh preset operation performed on the delete instruction control.

5. The method according to claim 1, characterized in that, The first window interface also displays a control for creating a programming mode, and the method further includes: In response to the eighth preset operation performed on the programming mode creation control, a programming mode settings window pops up. In response to the operation of entering a programming mode name in the programming mode settings window, a control with the programming mode name is added to the first window interface. In response to a ninth preset operation performed on the control bearing the name of the programming mode, after selecting the newly added programming mode, in response to a tenth preset operation performed on the programming mode data module, the data type of the newly added programming mode is added, and in response to an eighth preset operation performed on the programming mode instruction module, the data instruction of the newly added programming mode is added.

6. The method according to claim 1, characterized in that, The first window interface also displays at least one of the following: deleting the programming mode control, sharing the programming mode control, and importing the programming mode control. The method further includes at least one of the following: In response to the eleventh preset operation applied to any programming mode control, after selecting any programming mode, in response to the twelfth preset operation applied to the delete programming mode control, any programming mode is deleted. In response to the thirteenth preset operation applied to any programming mode control, after selecting any programming mode, in response to the thirteenth preset operation applied to the share programming mode control, the configuration file corresponding to the programming mode is copied to a preset path to share the configuration file with the target user who wants to import the programming mode. After the target user receives the configuration file, in response to the fourteenth preset operation applied to the import programming mode control, a configuration path control pops up. In response to the operation of entering the preset path in the configuration path control, a control with the name of the programming mode is added to the first window interface. The programming mode data module loads the data type of the programming mode, and the programming mode instruction module loads the data instruction of the programming mode.

7. The method according to claim 6, characterized in that, After deleting any of the programming modes in response to a twelfth preset operation acting on the delete programming mode control, the method further includes: Remove the name of the programming mode from the list of programming mode names; Delete the configuration file for the programming mode in the configuration file management module.

8. The method according to claim 1, characterized in that, The first window interface also displays only the instructions and data controls for the current programming mode, and the method further includes: In response to the fifteenth preset operation applied to any programming mode control, after selecting any of the programming modes, in response to the sixteenth preset operation applied to the control that only displays the current programming mode instructions and data, the program enters the full programming mode. In the full programming mode, the program editor updates the current program text and only displays the data types and data instructions included in the current programming mode. In response to the seventeenth preset operation applied to the instruction and data control that only displays the current programming mode, the full programming mode is exited. After exiting the full programming mode, the program editor updates the current program text and displays all the program text.

9. The method according to any one of claims 1 to 8, characterized in that, The control corresponding to the programming mode is a button control, which indicates that the corresponding programming mode is selected when the button control is displayed in a preset color.

10. The method according to any one of claims 1 to 8, characterized in that, The programming mode operation module includes multiple programming modes, including a user-defined mode, which includes custom data types and custom data instructions.

11. The method according to any one of claims 1 to 8, characterized in that, When there are multiple target programming modes, robot-assisted programming is performed using the target data type and the target data instructions, including: Determine the execution order of the various target programming patterns; Robot-assisted programming is performed according to the execution order, using the target data type and target data instruction in the currently selected target programming mode, wherein mode switching is performed between two adjacent target programming modes.

12. A robot-assisted programming device, characterized in that, include: A receiving response unit is configured to receive and respond to an operation that selects a target programming mode, and load the target data type and target data instructions included in the target programming mode, wherein the target programming mode is a programming mode that matches the functional requirements of the robot, any programming mode includes a data type and data instructions, and the data type and / or data instructions included in different programming modes are different. The programming unit is used to perform robot-assisted programming using the target data type and the target data instructions; The execution terminal's display interface includes multiple window interfaces. The programming mode operation module, programming mode data module, and programming mode instruction module are respectively displayed in the first window interface, the second window interface, and the third window interface. The programming mode operation module includes multiple programming modes, and controls corresponding to each programming mode are displayed in the first window interface. The receiving response unit is further configured to receive a first preset operation applied to the target control corresponding to the target programming mode. The programming mode data module loads the target data type in response to the first preset operation and displays the control corresponding to the target data type in the second window interface. The programming mode instruction module loads the target data instruction in response to the first preset operation and displays the control corresponding to the target data instruction in the third window interface.

13. A robot-assisted programming system, characterized in that, include: The programming mode operation module includes multiple programming modes, and controls corresponding to each programming mode are displayed in the first window interface; The programming mode data module, displayed in the second window interface, is configured to load the target data type included in the target programming mode. The target programming mode is a programming mode that matches the functional requirements of the robot. Each programming mode includes a data type and a data instruction, and the data type and / or the data instruction included in different programming modes are different. The programming mode instruction module, displayed in the third window interface, is configured to load the target data instructions included in the target programming mode; The program editing module includes a program editing interface displayed in the fourth window interface, which calls the target data type and the target data instruction in response to a preset operation performed on the program editing interface to perform robot-assisted programming.

14. The system according to claim 13, characterized in that, The first window interface also displays at least one of the following: switching programming mode controls, creating programming mode controls, deleting programming mode controls, sharing programming mode controls, importing programming mode controls, and displaying only the current programming mode instruction and data controls; The second window interface also displays add data controls and delete data controls; The third window interface also displays add command controls and delete command controls.

15. The system according to claim 13, characterized in that, The system also includes: The configuration file management module stores the configuration files for each of the programming modes.

16. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein, when the program is executed, it controls the device containing the computer-readable storage medium to perform the robot-assisted programming method according to any one of claims 1 to 11.

17. An electronic device, characterized in that, include: One or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including a method for performing robot-assisted programming as described in any one of claims 1 to 11.