WO2022237323A1 - Scheduling system and method for robot, robot, and customization method - Google Patents
Scheduling system and method for robot, robot, and customization method Download PDFInfo
- Publication number
- WO2022237323A1 WO2022237323A1 PCT/CN2022/081974 CN2022081974W WO2022237323A1 WO 2022237323 A1 WO2022237323 A1 WO 2022237323A1 CN 2022081974 W CN2022081974 W CN 2022081974W WO 2022237323 A1 WO2022237323 A1 WO 2022237323A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- attribute
- components
- operations
- standard
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 225
- 230000008569 process Effects 0.000 claims abstract description 154
- 230000009471 action Effects 0.000 claims description 91
- 238000012795 verification Methods 0.000 claims description 38
- 230000003993 interaction Effects 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 3
- 238000011017 operating method Methods 0.000 claims 1
- 238000003032 molecular docking Methods 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 15
- 230000002159 abnormal effect Effects 0.000 description 9
- 239000000463 material Substances 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007599 discharging Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
Definitions
- the present invention relates to the technical field of robots, in particular, to a scheduling system for robots, a robot including the scheduling system, a scheduling method for robots, corresponding computer equipment and computer-readable storage media, and customized for A method for a scheduling system for robots.
- the present application seeks to provide a solution to the above-mentioned need to solve or at least alleviate at least some of the above-mentioned problems.
- a scheduling system for robots which includes:
- a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes an operation sequence formed by a plurality of operations, at least in part each of said operations has at least one attribute, each of said attributes has an attribute value;
- the process engine is configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process.
- a robot which includes the scheduling system of the first aspect above.
- a scheduling method for a robot which includes:
- an operational flow for said robot comprising one or more components arranged in a predetermined order, each said component comprising a sequence of operations formed by at least some of said operations has at least one attribute, each of said attributes having an attribute value;
- An instruction is issued based on the generated operation flow to control the robot to operate according to the operation flow.
- a computer device which includes a memory and a processor, and computer instructions are stored on the memory, and when executed by the processor, the computer instructions cause the scheduling method of the third aspect above be executed.
- a non-transitory computer-readable storage medium on which computer instructions are stored, and when executed by a processor, the computer instructions cause the above-mentioned scheduling method of the third aspect to be executed.
- a method of customizing a scheduling system for a robot which includes:
- Create a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes a plurality of operations formed a sequence of operations, at least some of said operations each having at least one attribute, each of said attributes having an attribute value; and,
- the scheduling system includes the process generation module and the process engine.
- the solution of the invention supports customization and adjustment of the robot scheduling system and flexible scheduling of the robots according to needs. Utilizing the scheme of the present invention, by generating operation sequences based on operations/actions, that is, components, and arranging the components in order to generate operation procedures, it is possible to generate specific applications for robots in a relatively simple, efficient and convenient manner.
- the operation process is used to schedule the robot, which improves the flexibility and cheapness of the robot.
- the solution of the present invention helps robot service providers to customize and deliver the robot dispatching system according to the robot's expected application scenarios and/or user needs in an efficient, convenient, and cost-effective manner.
- FIG. 1 is a diagram schematically showing a scheduling system for a robot according to an embodiment of the present invention
- FIG. 2 is a diagram schematically showing a scheduling system for robots according to another embodiment of the present invention.
- Fig. 3 is a flowchart schematically showing a scheduling method for a robot according to an embodiment of the present invention.
- Fig. 4 is a flowchart schematically showing a method for customizing a scheduling system for robots according to an embodiment of the present invention.
- robots mentioned in the present invention may also be referred to as “intelligent robots” and “automatically guided vehicles”, which should be broadly understood as including autonomous and self-driving vehicles used in various environments, including but Not limited to mobile robots, such as self-navigating mobile robots, inertial navigation robots, remote-controlled mobile robots, and/or robots guided by laser targeting, vision systems, and/or landmarks.
- mobile robots such as self-navigating mobile robots, inertial navigation robots, remote-controlled mobile robots, and/or robots guided by laser targeting, vision systems, and/or landmarks.
- the robot in the present invention can also be regarded as a kind of self-driving vehicle.
- Standard action refers to the abstract encapsulation of the existing actions that the robot can perform.
- Standard actions may be predefined by the robot service provider by packaging together at least one instruction for the robot.
- Pre-defined standard actions can be stored in the standard action-attribute library, and can be called to generate an operation process; afterward, when the robot is controlled to operate according to the generated operation process, instructions can be issued directly to make the robot perform at least one of the standard actions instructions without programming.
- Such standard actions may include, for example but not limited to, navigation, jacking, voice broadcast, feeding rack, discharging rack, docking, following, switching pages, and the like.
- a particular robot may be configured to perform some or all of the predefined standard actions, depending on the configuration and configuration of the robot.
- a particular robot may be equipped with various devices/equipment required by the robot to perform the operations/standard actions it is intended to perform, including but not limited to: Required devices/equipment, such as movable chassis, visual sensors, motion sensors, etc.; devices required for jacking operations, such as jacking devices, etc.; devices required for voice broadcast operations, such as speaker devices, etc.; docking operations Required equipment/devices, such as bodywork platforms, docking devices, etc.; devices required to perform page switching operations, such as monitors, etc.
- “navigation” may refer to receiving route instructions from a control system or a system administrator, detecting the road surface through sensors (eg, cameras) provided on the robot, and controlling the movable chassis of the robot to follow the route instructions.
- the “navigation” action can also include, for example, detecting obstacles through sensors or navigation maps (eg, GPS maps) to realize automatic obstacle avoidance functions, or realizing route re-planning functions based on navigation maps when it is detected that the robot has deviated from the navigation route.
- “Jacking” refers to the operation of lifting devices (such as support plates or pillars, etc.) installed on the robot to rise or fall, so as to realize the loading/unloading of goods by the robot.
- “Voice broadcast” means that the robot broadcasts voice prompts according to the predetermined number of cycles, voice broadcast content and optional interval time.
- “Feeding rack” means that the robot drives from a position in front of the rack to directly under the rack according to a predetermined direction and travel distance, so that the goods can be unloaded from the robot and placed on the rack through the jacking device or placed on the rack by the jacking device. The material rack is unloaded and loaded onto the robot.
- “Exit rack” means that the robot drives out of the rack from directly below the rack according to the predetermined direction and travel distance.
- “Docking” refers to docking the robot or the upper loading platform of the robot with the material platform of the device to be docked (such as conveyor belts, rollers, trays, racks, shelves, etc.) Or from the device to be docked to the robot, which can include jacking docking, positive docking, side docking, etc., which can be used to realize the automatic handling of materials such as heavy materials in storage or production lines, shelf handling, automatic storage systems and roller transfers. Loading and unloading etc. "Follow” means that the robot follows the set follow target.
- “Switching pages” means that the robot automatically switches the human-computer interaction page and displays it on the display of the robot.
- the "process engine” mentioned in the present invention can be understood as a device for controlling the operation and action execution of the robot, and can issue instructions to make the robot's action execution device/mechanism (such as for performing navigation, jacking, and voice broadcasting) , feeding frame, discharging frame, docking, following, switching page action devices/mechanisms) operate accordingly to perform corresponding actions.
- a process engine may be implemented in hardware, software, firmware, or any suitable combination thereof, as appropriate.
- the process engine can be regarded as a part of the robot control system, specifically the part used to control the operation and action execution of the robot.
- the robot control system can also control other aspects of the robot.
- Fig. 1 shows a scheduling system 100 for robots according to an embodiment of the present invention.
- the scheduling system 100 includes a process generation module 101 and a process engine 102 .
- the process generation module 101 is communicatively coupled with the process engine 102 .
- the process generation module 101 can be used to generate an operation process for the robot.
- the operation flow may include one or more components arranged in a predetermined order, each of the components may include an operation sequence formed by a plurality of operations, each of at least some of the operations has at least one attribute, each of said attributes have an attribute value.
- component may also be referred to as “operation component” or "action component”.
- each operation included in the component may correspond to a predefined standard action, and at least one attribute of each operation having at least one attribute may be one of the attributes of the standard action corresponding to the operation. Some or all attributes.
- the properties of standard actions can be predefined. It will be further described later.
- the process engine 102 can be configured to issue instructions based on the operation process generated by the process generation module 101 to control the robot to operate according to the operation process.
- the operation process generated by the process generation module 101 may be based on the expected application scenario of the robot, each of the components may have an associated target point in the expected application scenario, and may be related to the It is related to the type and/or business requirements of the above target sites.
- Target points can be pre-defined. According to the situation, each target point in the expected application scenario may have a specified type, a specified business requirement, or both, so as to facilitate associating the component with the corresponding target point according to the operation sequence included in the component.
- Types of target points may include, for example but not limited to, automatic loading points, automatic unloading points, automatic pickup points, automatic obstacle avoidance points, and the like.
- the business requirements of the target point may include, for example but not limited to: the robot arrives at the target point and loads materials from the rack at the target point; the robot arrives at the target point and unloads the material onto the rack at the target point; The target point, picking up goods from the shelf at the target point; the robot reaches the target point, avoiding obstacles at the target point; etc. It should be noted that not any sequence of operations constitutes a "component" of the present invention. For example, if a sequence of operations is not associated with any predefined target points, the sequence of operations is not a "component" of the present invention.
- the expected application scenario of the robot is that the robot automatically navigates to a loading point for loading, and then automatically navigates to a corresponding unloading point for unloading.
- the process generation module 101 can generate an operation process "automatic one-to-one process".
- the operation process includes two components “automatic loading point” and “automatic unloading point”, among which: the component “automatic loading point” is used for the robot to perform the following operations: navigate to the loading point position, and automatically drive forward to feed the specified safe distance Rack, using jacking to automatically load the rack (or the goods on the rack), its operation sequence may include: navigation, switching pages, cyclic voice broadcast, feeding rack, switching pages, jacking and cyclic voice broadcast; the component “auto "Unloading point” is used for the robot to perform the following operations: navigate to the unloading point, use jacking to automatically unload the material rack (or goods) on it, and automatically drive forward a specified safe distance from the unloading rack.
- the component “automatic loading point” is used for the robot to perform the following operations: navigate to the loading point position, and automatically drive forward to feed the specified safe distance Rack, using jacking to automatically load the rack (or the goods on the rack), its operation sequence may include: navigation, switching pages, cyclic voice broadcast, feeding rack, switching pages
- the operation sequence includes: navigation , switch page, loop voice broadcast, jacking, loop voice broadcast, discharge rack, switch page and loop voice broadcast. It can be seen that the components “automatic loading point” and “automatic unloading point” are respectively related to the type of the target point and business requirements.
- a component is composed of a plurality of operations, it does not exclude the case that a component is formed of a single operation.
- the generation of the operation flow by the flow generation module 101 may be triggered by a trigger event.
- the triggering event can be various possible events, including events that may occur on the robot service provider side and events that may occur on the robot end user side, such as events related to the process orchestration operation of the dispatching system developer, and events related to the end user side of the robot. Events related to orchestration operations.
- the triggering event includes: the process generation module 101 receives a user input associated with generating an operation process.
- “user input” should be broadly understood as various possible inputs, which can come from any possible operator, including but not limited to developers at the robot service provider side, operators at the end user side of the robot, etc.
- the process generation module 101 may receive user input through a human-computer interaction interface equipped with the robot.
- Fig. 2 shows a scheduling system 200 for robots according to another embodiment of the present invention.
- the scheduling system 200 includes a process generation module 201 , a process engine 202 , a standard action-attribute library 203 , a verification module 204 and a human-computer interaction interface 205 .
- the process generation module 201 is communicatively coupled with the process engine 202 , the standard action-attribute library 203 and the human-computer interaction interface 205 .
- the human-computer interaction interface 205 is communicatively coupled with the authentication module 204 .
- the process generation module 201 can be used to create one or more components based on the standard actions and their attributes stored in the standard action-attribute library 203, and arrange the one or more components in a predetermined order to Generate operation procedures.
- Each of the components includes a sequence of operations formed by a plurality of standard actions, each of at least some of the operations has at least one attribute, and each of the attributes has an attribute value.
- the process engine 202 can be configured to issue instructions based on the operation process generated by the process generation module 201 to control the robot to operate according to the operation process.
- the standard action-attribute library 203 can be used to store predefined standard actions and store each attribute of each standard action having at least one attribute. In one embodiment, as shown in Table 1 below, the standard action-attribute library 203 stores: names of predefined standard actions; descriptions of standard actions; and attributes of standard actions.
- the standard action-attribute library 203 can store the attribute value range and/or attribute value type of one or some attributes, which is beneficial, for example, to help the robot Properly limit the execution of actions, identify invalid attribute values, avoid unreasonable operations of the robot and the consequences related thereto.
- the attribute value may be considered invalid.
- the standard action "loop voice broadcast” you can define an attribute value type for its attribute "voice broadcast content", such as "text”; for the standard action "lift”, you can define its attribute "distance” Define a property value range, such as "10mm to -30mm".
- the standard action-attribute library 203 may store the default attribute value of one or some of the attributes, which is beneficial to simplify the process of orchestrating the process. For example, for the standard action of "docking", a default attribute value such as "3" can be specified for its attribute “number of dockings”.
- the operation in the component corresponding to the standard action can have all of the standard action's predefined All or some of the properties.
- its predefined attributes include three attributes: cycle times, voice broadcast content and interval time.
- the attribute "number of cycles" of the operation corresponding to the standard action is "1" in the operation sequence of the component generated by calling the standard action
- the operation corresponding to the standard action may only include the three attributes Two of them are "Number of Loops" and "Voice Announcement Content". At this time, for this operation, the attribute "Interval Time” is unnecessary and does not need to be configured.
- the process generation module 201 may also be configured to receive user input associated with editing the operation process; and, in response thereto, edit the generated operation process.
- the process generation module 201 may have a process editing interface (not shown) for receiving the user input. Editing of the operation process may include, for example but not limited to: creating a new operation process, deleting the created operation process; modifying the created operation process, including, for example but not limited to, changing one or some components included in the operation process order, add one or more components in the operation process, delete one or some components included in the operation process, modify one or some components included in the operation process.
- Modifying a component may include, for example but not limited to: changing the order of one or some operations included in the component, adding one or more operations in the component, deleting one or some operations included in the component, Modifies one or more operations included in this component.
- Modifying an operation may include, for example but not limited to: adding an attribute of the operation, deleting one or some attributes of the operation, changing an attribute value of one or some attributes of the operation, and so on. Editing of the operation procedure may be performed by the procedure generation module 201 in response to user input received through the human-computer interaction interface 205 .
- the user input may be performed by, for example but not limited to, user's check, click, drag, delete, data input operation and the like.
- optional items such as optional components, operations (such as standard actions), attributes, and attribute values
- an editing area may be presented for the user to input data (such as the attribute value).
- the verification module 204 may be used to verify the operation process generated by the process generation module 201, at least one component included in the operation process, and/or the execution status of at least one operation in at least one component included in the operation process to generate a verification result, And the verification result is provided to the human-computer interaction interface 205 of the robot for presentation.
- the first situation that the verification module 204 can be used for is the situation that the robot operates according to the generated operation flow, the components included in the operation flow and/or the operations included in the components.
- the verification module 204 may receive, for example, execution-related information detected by sensors installed on the robot, and perform verification based on the received execution-related information—for example, judge whether the robot successfully executes the relevant information based on the execution-related information.
- the robot When it is judged that the robot has successfully executed the action, it generates a verification result of passing the verification and sends it to the human-computer interaction interface 205; when it judges that the robot has not successfully executed the action, it generates a verification result of failure The result is verified and sent to the human-computer interaction interface 205 .
- the second situation that the verification module 204 can be used for is the case of performing simulated verification using a simulator and/or based on pre-configured rules.
- the simulator can be pre-configured and can be used to simulate the operation of the robot according to the generated operation process, the components included in the operation process and/or the operations included in the components and give the simulated operation results.
- the verification module 204 can generate a verified verification result and send it to the human-computer interaction interface 205, when the simulated operation result indicates that the robot has not When the action is successfully executed, the verification module 204 may generate a verification result of verification failure and send it to the human-computer interaction interface 205 .
- the pre-configured rules can define one or more conditions related to the rationality of the operation process, components and/or operations, so as to be used to judge the operation process generated by the process generation module, the components included in the operation process and/or the operation process Included components contain operations that make sense.
- the rationality may include, for example but not limited to: the rationality of the range and/or type of one or some attribute values of a single operation/action; the rationality of the sequence of actions reflected in the sequence of operations included in a single component the rationality of the sequence among the components included in the operation process; etc.
- the conditions may define, for example but not limited to: the valid range and/or type of one or some attribute values of a single operation/action; the invalid range and/or type of one or some attribute values of a single operation/action; The previous operation/standard action to be performed before performing an operation/standard action; the next operation/standard action to be performed after performing an operation/standard action; possible reasonable sequence of operations; unreasonable sequence of operations; execution The previous component/operation/standard action to be performed before a certain component; the next component/operation/standard action to be performed after a certain component is executed; possible reasonable component sequences; unreasonable component sequences; etc.
- the verification module 204 can generate a verification result that passes the verification and send To the human-computer interaction interface 205, when it is judged according to the pre-configured rules that the generated operation flow, the components included in the operation flow and/or the operations contained in the components included in the operation flow are unreasonable, the verification module 204 can generate a verification failure The result is verified and sent to the human-computer interaction interface 205 .
- the jacking operation is required after the operation of the feed rack.
- the verification module 204 can obtain a verification result of verification failure according to this rule. Although not shown, it is possible that the verification module 204 is communicatively coupled with the flow generation module 201, depending on circumstances.
- the human-computer interaction interface 205 may be various possible human-computer interaction interface devices such as a display, a keyboard, a mouse, a cursor, etc., or any suitable combination thereof.
- the human-computer interaction interface 205 includes a touch screen display.
- the process generation module 201 may have an attribute value receiving interface (not shown).
- the property value receiving interface may be used to receive property values from an external system cooperating with the robot.
- the process generation module 201 may send the attribute value to an external system cooperating with the robot via its attribute value receiving interface, at this time, the attribute value receiving interface may be referred to as an "attribute value sending and receiving interface".
- Such external systems may include various external systems that may cooperate with the robot, such as, but not limited to, the device to be docked that cooperates with the docking device of the robot or the system to which it belongs, the object that cooperates with the lifting device of the robot, such as a rack Or shelves or the systems they belong to, such as storage systems, additional robots, etc.
- the scheduling system of the present invention may further include an exception process module (not shown).
- the abnormal process module can be used to store the abnormal processing process, and the abnormal processing process can be used in the case of abnormal operation of the robot. It is possible for the robot to have an abnormal situation during the operation process generated by the process generation module.
- the abnormal situation may include, for example but not limited to, the robot cannot successfully complete a certain operation in the operation process, and the power of the robot is not enough to complete the operation process. All operations etc.
- Such abnormal situations can be detected based on, for example, execution-related information detected by sensors provided on the robot.
- the process engine may receive such execution-related information and judge whether the execution of the operation process generated by the process generation module by the robot is normal based on the received execution-related information, and determine that an abnormal situation occurs when the judgment result is negative.
- the process engine may be communicatively coupled to the exception flow module, or the exception flow module may be part of the process engine.
- the process engine can invoke the exception handling process stored in the exception process module, and issue instructions based on the exception handling process to control the robot to operate according to the exception handling process.
- Exception handling processes can be pre-defined. For different exception situations, the same or different exception handling procedures may be defined, and in the latter case, the defined exception handling procedures may be based on the specific exception situations targeted.
- An exception handling flow can consist of a single operation/action or a sequence of multiple operations/actions.
- the exception handling process can indicate, for example but not limited to: the robot remains still at the current location and performs a circular voice broadcast to indicate that there is a fault in the execution of the operation; the robot returns to the standby area from the current location; the robot travels to the charging station according to the defined specific routing information district; etc.
- the robot of the present invention may be equipped with the above-mentioned scheduling system, and include a corresponding execution system to execute the operations included in the operation flow generated by the flow generation module of the scheduling system.
- Fig. 3 schematically shows a scheduling method S300 for a robot according to an embodiment of the present invention.
- the scheduling method S300 may include steps S301 and S302.
- step S301 an operation process for the robot is generated, the operation process includes one or more components arranged in a predetermined order, each of the components includes an operation sequence formed by a plurality of operations, at least part of the operations Each of has at least one attribute, each of which has an attribute value.
- an instruction is issued based on the generated operation flow to control the robot to operate according to the operation flow.
- each operation in step S301 corresponds to a predefined standard action
- the at least one attribute of each operation having at least one attribute is one of the attributes of the standard action corresponding to the operation
- Standard actions and their attributes can be stored in a standard action-attribute library.
- step S301 may include steps S3012 and S3014.
- step S3012 one or more components are established based on the standard actions and their attributes stored in the standard action-attribute library.
- the one or more components are arranged in a predetermined sequence to generate an operation flow.
- Fig. 4 schematically shows a method S400 of customizing a scheduling system for robots according to an embodiment of the present invention.
- the method S400 may include steps S401 and S402.
- a process generation module is created, the process generation module is configured to generate an operation process for the robot, the operation process includes one or more components arranged in a predetermined order, each of the components includes multiple A sequence of operations formed by at least some of the operations each having at least one attribute and each of the attributes having an attribute value.
- step S402 a process engine is created, and the process engine is configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process.
- the created process generation module and process engine can form a scheduling system for robots.
- the method for customizing the scheduling system for robots of the present invention further includes providing a standard action-attribute library (not shown), which is used to store a plurality of predefined standard actions and Each attribute of each of said standard actions having at least one attribute is stored.
- the process generation module may be configured to: establish each of the one or more components based on the standard actions and their attributes stored in the standard action-attribute library, and create each of the one or more components according to the predetermined The one or more components are sequenced to generate the operational flow.
- the method for customizing a scheduling system for a robot of the present invention further includes providing a standard component library, which is used to store a plurality of predefined standard components, each standard component defining a standard action sequence .
- the process generation module may be configured to: when generating the operation process, directly use one or more standard components stored in the standard component library as all At least some of the components.
- the above-mentioned standard action-attribute library and/or standard component library can be authorized to the end user of the robot, so that the standard action-attribute library and/or standard component library in the standard action-attribute library can be selected on the end user side through the human-computer interaction interface of the robot
- the standard components in are used to orchestrate operational processes.
- the method of customizing a scheduling system for robots of the present invention may optionally include at least some of the following steps and features:
- the operation process is based on the expected application scenario of the robot, each component included in the operation process has an associated target point in the expected application scenario, and is related to the type of the target point and/or or business requirements.
- the process editing interface is used to receive user input associated with editing an operation process
- the process generating module is configured to: receive and edit via the process editing interface user input associated with an operational procedure; and, in response thereto, editing said operational procedure that has been generated.
- a step of configuring a verification module for the scheduling system the verification module being configured to verify at least one operation included in the operation process, at least one component and/or the execution status of the operation process to generate a verification result, and the The verification results are provided to the human-computer interaction interface of the robot for presentation.
- FIGS. 1 and 2 are only exemplary illustrations of some structures related to the solution of the present invention, and do not constitute a computer device or processor embodying the solution of the present invention. or as defined by computer program instructions.
- a specific computer device, processor or computer program instructions may include more or fewer components or modules than shown in the figures, or some components or modules may be combined or split, or may have a different arrangement of components or modules.
- each step of the dispatching method of the present invention described above can be executed by corresponding components or units of the dispatching system of the present invention.
- each module/unit of the scheduling system for robots of the present invention may be fully or partially realized by software, hardware, firmware or a combination thereof.
- Each of the modules/units can be embedded in the processor of the computer device in the form of hardware or firmware or independent of the processor, and can also be stored in the memory of the computer device in the form of software for the processor to call to execute the various modules. Operation of modules/units.
- Each of the modules/units may be realized as an independent component or module, or two or more modules/units may be realized as a single component or module.
- a computer device comprising a memory and a processor, the memory having stored thereon computer instructions executable by the processor, the computer instructions, when executed by the processor, instructing the processing
- the device performs the steps of the method of the present invention.
- the computer device may broadly be a server, a terminal, or any other electronic device with necessary computing and/or processing capabilities.
- the computer device may include a processor, memory, network interface, communication interface, etc. connected by a system bus.
- the processor of the computer device may be used to provide the necessary calculation, processing and/or control capabilities.
- the memory of the computer device may include non-volatile storage media and internal memory. An operating system, a computer program, etc. may be stored in or on the non-volatile storage medium.
- the internal memory can provide an environment for the operation of the operating system and computer programs in the non-volatile storage medium.
- the network interface and communication interface of the computer equipment can be used to connect and communicate with external equipment through the network.
- the computer program executes the steps of the method of the present invention when executed by a processor.
- the invention can be implemented as a computer-readable storage medium having stored thereon computer instructions which, when executed by a processor, cause the steps of the method of the invention to be performed.
- the computer instructions are distributed over a plurality of computer devices or processors coupled over a network such that the computer instructions are stored, accessed and executed in a distributed fashion by one or more computer devices or processors .
- a single method step/operation, or two or more method steps/operations may be performed by a single computing device or processor or by two or more computing devices or processors.
- One or more method steps/actions may be performed by one or more computing devices or processors, and one or more other method steps/operations may be performed by one or more other computing devices or processors.
- One or more computer devices or processors may perform a single method step/action, or two or more method steps/operations.
- nonvolatile memory examples include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, magnetic tape, floppy disk, magneto-optical data Storage devices, optical data storage devices, hard drives, solid state drives, etc.
- volatile memory examples include random access memory (RAM), external cache memory, and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Human Computer Interaction (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Manipulator (AREA)
Abstract
Provided are a scheduling system (100) for a robot, a robot comprising a scheduling system (100), a scheduling method for a robot, a corresponding computer device and computer-readable storage medium, and a method for customizing a scheduling system (100) for a robot. The scheduling system (100) comprises: a process generation module (101) configured to generate an operation process for a robot, wherein the operation process comprises one or more components arranged in a predetermined sequence, each component comprises one operation sequence formed by a plurality of operations, each of at least some of the operations has at least one attribute, and each attribute has an attribute value; and a process engine (102) configured to issue an instruction on the basis of the operation process so as to control the robot to operate according to the operation process. The solution supports the customization and adjustment of a scheduling system (100) for a robot and the flexible scheduling of a robot according to requirements, and also helps a robot service provider to efficiently and conveniently customize the scheduling system (100) for a robot.
Description
本发明涉及机器人技术领域,具体而言,涉及一种用于机器人的调度系统、包括该调度系统的机器人、用于机器人的调度方法和相应的计算机设备和计算机可读存储介质,以及定制用于机器人的调度系统的方法。The present invention relates to the technical field of robots, in particular, to a scheduling system for robots, a robot including the scheduling system, a scheduling method for robots, corresponding computer equipment and computer-readable storage media, and customized for A method for a scheduling system for robots.
目前,智能机器人在多个行业中得到了广泛应用,所述行业如物流业、制造业等。在不同的行业中,或者在相同行业的不同应用中,需要根据具体应用场景的不同对机器人进行不同的调度。因此,存在根据具体的应用需求定制机器人调度系统和调整对机器人的调度的需要。这带来了一些挑战。例如,对于机器人服务商而言,在进行定制开发时,通常面临研发投入大、交付周期长、部署工作繁琐等问题,随着项目来源不断快速增加,研发、交付方面的压力越来越大。另外,如何使得用户能根据需要安排或自行调整机器人的调度方式也是一个问题。At present, intelligent robots are widely used in many industries, such as logistics industry, manufacturing industry and so on. In different industries, or in different applications in the same industry, robots need to be scheduled differently according to specific application scenarios. Therefore, there is a need to customize the robot scheduling system and adjust the scheduling of robots according to specific application requirements. This presents some challenges. For example, for robot service providers, when conducting customized development, they usually face problems such as large R&D investment, long delivery cycle, and cumbersome deployment work. With the rapid increase of project sources, the pressure on R&D and delivery is increasing. In addition, how to enable users to arrange or adjust the scheduling mode of robots according to their needs is also a problem.
发明内容Contents of the invention
本申请旨在提供一种针对上述需要的解决方案,以解决或至少缓解上述问题中的至少一些。The present application seeks to provide a solution to the above-mentioned need to solve or at least alleviate at least some of the above-mentioned problems.
具体地,根据本发明的第一方面,提供一种用于机器人的调度系统,其包括:Specifically, according to a first aspect of the present invention, a scheduling system for robots is provided, which includes:
流程生成模块,被配置为生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes an operation sequence formed by a plurality of operations, at least in part each of said operations has at least one attribute, each of said attributes has an attribute value; and
流程引擎,被配置为基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。The process engine is configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process.
根据本发明的第二方面,提供一种机器人,其包括上述第一方面的调度系统。According to a second aspect of the present invention, a robot is provided, which includes the scheduling system of the first aspect above.
根据本发明的第三方面,提供一种用于机器人的调度方法,其包括:According to a third aspect of the present invention, there is provided a scheduling method for a robot, which includes:
生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和generating an operational flow for said robot, said operational flow comprising one or more components arranged in a predetermined order, each said component comprising a sequence of operations formed by at least some of said operations has at least one attribute, each of said attributes having an attribute value; and
基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。An instruction is issued based on the generated operation flow to control the robot to operate according to the operation flow.
根据本发明的第四方面,提供一种计算机设备,其包括存储器和处理器,所述存储器上存储有计算机指令,所述计算机指令在由所述处理器执行时导致上述第三方面的调度方法被执行。According to a fourth aspect of the present invention, there is provided a computer device, which includes a memory and a processor, and computer instructions are stored on the memory, and when executed by the processor, the computer instructions cause the scheduling method of the third aspect above be executed.
根据本发明的第五方面,提供一种非暂时性计算机可读存储介质,其上存储有计算机指令,所述计算机指令在由处理器执行时导致上述第三方面的调度方法被执行。According to a fifth aspect of the present invention, there is provided a non-transitory computer-readable storage medium on which computer instructions are stored, and when executed by a processor, the computer instructions cause the above-mentioned scheduling method of the third aspect to be executed.
根据本发明的第六方面,提供一种定制用于机器人的调度系统的方法,其包括:According to a sixth aspect of the present invention, there is provided a method of customizing a scheduling system for a robot, which includes:
创建流程生成模块,所述流程生成模块被配置为生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和,Create a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes a plurality of operations formed a sequence of operations, at least some of said operations each having at least one attribute, each of said attributes having an attribute value; and,
创建流程引擎,所述流程引擎被配置为基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作,creating a process engine configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process,
其中,所述调度系统包括所述流程生成模块和所述流程引擎。Wherein, the scheduling system includes the process generation module and the process engine.
本发明的方案支持根据需要对机器人调度系统进行定制和调整以及对机器人进行灵活调度。利用本发明的方案,通过基于操作/动作生成操作序列即组件、将组件按顺序编排以生成操作流程,能够以相对简单、高效和方便的方式根据具体的应用有针对性地生成用于机器人的操作流 程以便对机器人进行调度,提高了机器人的使用灵活性和便宜性。另外,本发明的方案有助于机器人服务商以高效、便利、成本有效的方式根据机器人的预期应用场景和/或用户需求定制和交付机器人调度系统。The solution of the invention supports customization and adjustment of the robot scheduling system and flexible scheduling of the robots according to needs. Utilizing the scheme of the present invention, by generating operation sequences based on operations/actions, that is, components, and arranging the components in order to generate operation procedures, it is possible to generate specific applications for robots in a relatively simple, efficient and convenient manner. The operation process is used to schedule the robot, which improves the flexibility and cheapness of the robot. In addition, the solution of the present invention helps robot service providers to customize and deliver the robot dispatching system according to the robot's expected application scenarios and/or user needs in an efficient, convenient, and cost-effective manner.
以示例的方式参考以下附图描述本发明的非限制性且非穷举性实施例,其中:Non-limiting and non-exhaustive embodiments of the invention are described by way of example with reference to the following figures, in which:
图1是示意性示出根据本发明一实施例的用于机器人的调度系统的图;FIG. 1 is a diagram schematically showing a scheduling system for a robot according to an embodiment of the present invention;
图2是示意性示出根据本发明另一实施例的用于机器人的调度系统的图;2 is a diagram schematically showing a scheduling system for robots according to another embodiment of the present invention;
图3是示意性示出根据本发明一实施例的用于机器人的调度方法的流程图;以及Fig. 3 is a flowchart schematically showing a scheduling method for a robot according to an embodiment of the present invention; and
图4是示意性示出根据本发明一实施例的定制用于机器人的调度系统的方法的流程图。Fig. 4 is a flowchart schematically showing a method for customizing a scheduling system for robots according to an embodiment of the present invention.
为了使本发明的上述以及其他特征和优点更加清楚,下面结合附图进一步描述本发明。应当理解,本文给出的具体实施例是出于向本领域技术人员解释的目的,仅是示例性的,而非限制性的。In order to make the above and other features and advantages of the present invention clearer, the present invention will be further described below in conjunction with the accompanying drawings. It should be understood that the specific embodiments given herein are for the purpose of explaining to those skilled in the art, and are only exemplary rather than restrictive.
在以下描述中,阐述了许多具体细节以提供对本发明的透彻理解。然而,对于本领域普通技术人员来说将明显的是,不需要采用所述具体细节来实践本发明。在其他情况下,未详细描述众所周知的步骤或操作,以避免模糊本发明。In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one of ordinary skill in the art that these specific details need not be employed to practice the present invention. In other instances, well-known steps or operations have not been described in detail in order not to obscure the invention.
本发明中提到的“机器人”亦可以被称为“智能机器人”和“自动导引车辆”,应被广义地理解为囊括在各种各样的环境中使用的自主自动驾驶车辆,包括但不限于移动机器人,诸如自动导航移动机器人、惯性导航机器人、遥控移动机器人和/或由激光定靶、视觉系统和/或路标导引的机器人。本发明中的机器人也可以看作一种自动驾驶车辆。The "robots" mentioned in the present invention may also be referred to as "intelligent robots" and "automatically guided vehicles", which should be broadly understood as including autonomous and self-driving vehicles used in various environments, including but Not limited to mobile robots, such as self-navigating mobile robots, inertial navigation robots, remote-controlled mobile robots, and/or robots guided by laser targeting, vision systems, and/or landmarks. The robot in the present invention can also be regarded as a kind of self-driving vehicle.
本发明中提到的“标准动作”指的是对机器人能执行的现有动作的抽象封装。标准动作可以由机器人服务商通过将针对机器人的至少一条指令封装在一起来预先定义。预先定义的标准动作可被存储在标准动作-属性库中,可以被调用来生成操作流程;之后,在控制机器人按照生成的操作流程运作时可以直接发出指令使机器人执行标准动作所对应的至少一条指令,而无需进行编程。这样的标准动作可以包括例如但不限于导航、顶升、语音播报、进料架、出料架、对接、跟随、切换页面等。可以理解的是,特定的机器人可以被配置为能执行预先定义的标准动作中的部分或全部,取决于该机器人的配置和构造。例如,特定的机器人可以配备有该机器人执行其预期要执行的操作/标准动作所需的各种装置/设备,包括但不限于:执行导航、进料架、出料架和/或跟随动作所需的装置/设备,如可移动底盘、视觉传感器、运动传感器等;执行顶升操作所需的装置,如顶升装置等;执行语音播报操作所需的装置,如喇叭装置等;执行对接操作所需的设备/装置,如上装平台、对接装置等;执行切换页面操作所需的装置,如显示器等。The "standard action" mentioned in the present invention refers to the abstract encapsulation of the existing actions that the robot can perform. Standard actions may be predefined by the robot service provider by packaging together at least one instruction for the robot. Pre-defined standard actions can be stored in the standard action-attribute library, and can be called to generate an operation process; afterward, when the robot is controlled to operate according to the generated operation process, instructions can be issued directly to make the robot perform at least one of the standard actions instructions without programming. Such standard actions may include, for example but not limited to, navigation, jacking, voice broadcast, feeding rack, discharging rack, docking, following, switching pages, and the like. It will be appreciated that a particular robot may be configured to perform some or all of the predefined standard actions, depending on the configuration and configuration of the robot. For example, a particular robot may be equipped with various devices/equipment required by the robot to perform the operations/standard actions it is intended to perform, including but not limited to: Required devices/equipment, such as movable chassis, visual sensors, motion sensors, etc.; devices required for jacking operations, such as jacking devices, etc.; devices required for voice broadcast operations, such as speaker devices, etc.; docking operations Required equipment/devices, such as bodywork platforms, docking devices, etc.; devices required to perform page switching operations, such as monitors, etc.
本文中,“导航”可以指从控制系统或系统管理员接收路线指令,通过设置在机器人上的传感器(例如,摄像机)检测路面并控制机器人的可移动底盘遵循该路线指令移动。“导航”动作还可以包括例如通过传感器或者导航地图(例如,GPS地图)检测障碍物以实现自动避障功能,或者在检测到机器人已经偏离导航路线时根据导航地图实现重新规划路线功能等。“顶升”指的是操作安装在机器人上的顶升装置(例如支撑板或支柱等)上升或下降,从而实现机器人装载/卸下货物。“语音播报”指的是机器人按照预定的循环次数、语音播报内容以及可选的间隔时间播报语音提示。“进料架”指的是机器人从料架前的一个位置按照预定的方向和行驶距离驶入料架的正下方,以便后续通过顶升装置将货物从机器人卸载并放置到料架上或者从料架卸下货物并装载到机器人上。“出料架”指的是机器人从料架的正下方按照预定的方向和行驶距离驶出料架。“对接”指的是将机器人或者机器人的上装平台与待对接装置的物料平台(诸如传送带、辊筒、托盘、料架、货架等)以一定精度进行对接以便将物料从机器人传输到待对接装置或者从待对接装置传输到机器人,可以包括顶升对接、正对接、侧向对接等,可用于实现仓储或生产线的物料如重型物料的自动搬运、货架搬运、自动仓储系统和辊筒传送的自 动装卸等。“跟随”指的是机器人跟随设定的跟随目标行驶。“切换页面”指的是机器人自动切换人机交互页面并且将其显示在机器人的显示器上。Herein, "navigation" may refer to receiving route instructions from a control system or a system administrator, detecting the road surface through sensors (eg, cameras) provided on the robot, and controlling the movable chassis of the robot to follow the route instructions. The "navigation" action can also include, for example, detecting obstacles through sensors or navigation maps (eg, GPS maps) to realize automatic obstacle avoidance functions, or realizing route re-planning functions based on navigation maps when it is detected that the robot has deviated from the navigation route. "Jacking" refers to the operation of lifting devices (such as support plates or pillars, etc.) installed on the robot to rise or fall, so as to realize the loading/unloading of goods by the robot. "Voice broadcast" means that the robot broadcasts voice prompts according to the predetermined number of cycles, voice broadcast content and optional interval time. "Feeding rack" means that the robot drives from a position in front of the rack to directly under the rack according to a predetermined direction and travel distance, so that the goods can be unloaded from the robot and placed on the rack through the jacking device or placed on the rack by the jacking device. The material rack is unloaded and loaded onto the robot. "Exit rack" means that the robot drives out of the rack from directly below the rack according to the predetermined direction and travel distance. "Docking" refers to docking the robot or the upper loading platform of the robot with the material platform of the device to be docked (such as conveyor belts, rollers, trays, racks, shelves, etc.) Or from the device to be docked to the robot, which can include jacking docking, positive docking, side docking, etc., which can be used to realize the automatic handling of materials such as heavy materials in storage or production lines, shelf handling, automatic storage systems and roller transfers. Loading and unloading etc. "Follow" means that the robot follows the set follow target. "Switching pages" means that the robot automatically switches the human-computer interaction page and displays it on the display of the robot.
本发明中提到的“流程引擎”可以被理解为用于控制机器人的操作和动作执行的装置,可以发出指令以使机器人的动作执行装置/机构(如用于执行导航、顶升、语音播报、进料架、出料架、对接、跟随、切换页面动作的装置/机构)相应地运作,以执行相应的动作。根据情况,流程引擎可以硬件、软件、固件或其任意合适组合实现。流程引擎可以被视为机器人控制系统的一部分,具体是用于控制机器人的操作和动作执行的部分。除了控制机器人的操作和动作执行外,机器人控制系统还可以控制机器人的其他方面。The "process engine" mentioned in the present invention can be understood as a device for controlling the operation and action execution of the robot, and can issue instructions to make the robot's action execution device/mechanism (such as for performing navigation, jacking, and voice broadcasting) , feeding frame, discharging frame, docking, following, switching page action devices/mechanisms) operate accordingly to perform corresponding actions. A process engine may be implemented in hardware, software, firmware, or any suitable combination thereof, as appropriate. The process engine can be regarded as a part of the robot control system, specifically the part used to control the operation and action execution of the robot. In addition to controlling the operation and execution of actions of the robot, the robot control system can also control other aspects of the robot.
图1示出了根据本发明一实施例的用于机器人的调度系统100。如图1所示,调度系统100包括流程生成模块101和流程引擎102。流程生成模块101与流程引擎102通信地耦合。Fig. 1 shows a scheduling system 100 for robots according to an embodiment of the present invention. As shown in FIG. 1 , the scheduling system 100 includes a process generation module 101 and a process engine 102 . The process generation module 101 is communicatively coupled with the process engine 102 .
流程生成模块101可以用于生成用于所述机器人的操作流程。这里,所述操作流程可以包括按预定顺序编排的一个或多个组件,每个所述组件可以包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值。这里,“组件”亦可以被称为“操作组件”或“动作组件”。The process generation module 101 can be used to generate an operation process for the robot. Here, the operation flow may include one or more components arranged in a predetermined order, each of the components may include an operation sequence formed by a plurality of operations, each of at least some of the operations has at least one attribute, each of said attributes have an attribute value. Here, "component" may also be referred to as "operation component" or "action component".
在一个实施例中,组件所包括的每个操作可以对应于一个预先定义的标准动作,具有至少一个属性的每个所述操作的至少一个属性可以是该操作所对应的标准动作的属性中的部分或全部属性。标准动作的属性可以是预先定义的。稍后将进一步描述。In one embodiment, each operation included in the component may correspond to a predefined standard action, and at least one attribute of each operation having at least one attribute may be one of the attributes of the standard action corresponding to the operation. Some or all attributes. The properties of standard actions can be predefined. It will be further described later.
流程引擎102可以用于基于流程生成模块101生成的操作流程发出指令以控制所述机器人按所述操作流程运作。The process engine 102 can be configured to issue instructions based on the operation process generated by the process generation module 101 to control the robot to operate according to the operation process.
在一个实施例中,流程生成模块101生成的操作流程可以基于所述机器人的预期应用场景,每个所述组件可以具有在所述预期应用场景中的相关联的目标点位,并且可以与所述目标点位的类型和/或业务要求相关。目标点位可以是预先定义的。根据情况,预期应用场景中的每个目标点位可以具有指定的类型、指定的业务要求或二者,以方便根据组件所包括的操作序列,将该组件与相应的目标点位相关联。目标点位的类 型可以包括例如但不限于自动装载点、自动卸载点、自动取货点、自动避障点等。目标点位的业务要求可以包括例如但不限于:机器人到达目标点位、从目标点位的料架上装载物料;机器人到达目标点位、将物料卸载到目标点位的料架上;机器人到达目标点位、从目标点位的货架上取货;机器人到达目标点位、避开目标点位的障碍物;等。需要说明的是,并非任意操作序列都构成本发明的“组件”。例如,如果一个操作序列不与预先定义的任何目标点位相关联,该操作序列不是本发明的“组件”。In one embodiment, the operation process generated by the process generation module 101 may be based on the expected application scenario of the robot, each of the components may have an associated target point in the expected application scenario, and may be related to the It is related to the type and/or business requirements of the above target sites. Target points can be pre-defined. According to the situation, each target point in the expected application scenario may have a specified type, a specified business requirement, or both, so as to facilitate associating the component with the corresponding target point according to the operation sequence included in the component. Types of target points may include, for example but not limited to, automatic loading points, automatic unloading points, automatic pickup points, automatic obstacle avoidance points, and the like. The business requirements of the target point may include, for example but not limited to: the robot arrives at the target point and loads materials from the rack at the target point; the robot arrives at the target point and unloads the material onto the rack at the target point; The target point, picking up goods from the shelf at the target point; the robot reaches the target point, avoiding obstacles at the target point; etc. It should be noted that not any sequence of operations constitutes a "component" of the present invention. For example, if a sequence of operations is not associated with any predefined target points, the sequence of operations is not a "component" of the present invention.
在一个实施例中,机器人的预期应用场景为机器人自动导航到装载点进行装载,然后自动导航到对应的卸载点进行卸载。针对该预期应用场景,流程生成模块101可以生成操作流程“流程自动一对一”。该操作流程包括两个组件“自动装载点”和“自动卸载点”,其中:组件“自动装载点”用于机器人执行以下操作:导航到装载点点位,自动向前行驶指定的安全距离进料架,使用顶升自动装载料架(或料架上的货物),其操作序列可以包括:导航、切换页面、循环语音播报、进料架、切换页面、顶升以及循环语音播报;组件“自动卸载点”用于机器人执行以下操作:导航到卸载点点位,使用顶升自动卸下其上的料架(或货物),自动向前行驶指定的安全距离出料架,其操作序列包括:导航、切换页面、循环语音播报、顶升、循环语音播报、出料架、切换页面以及循环语音播报。可以看出,组件“自动装载点”和“自动卸载点”分别与其目标点位的类型和业务要求相关。In one embodiment, the expected application scenario of the robot is that the robot automatically navigates to a loading point for loading, and then automatically navigates to a corresponding unloading point for unloading. For this expected application scenario, the process generation module 101 can generate an operation process "automatic one-to-one process". The operation process includes two components "automatic loading point" and "automatic unloading point", among which: the component "automatic loading point" is used for the robot to perform the following operations: navigate to the loading point position, and automatically drive forward to feed the specified safe distance Rack, using jacking to automatically load the rack (or the goods on the rack), its operation sequence may include: navigation, switching pages, cyclic voice broadcast, feeding rack, switching pages, jacking and cyclic voice broadcast; the component "auto "Unloading point" is used for the robot to perform the following operations: navigate to the unloading point, use jacking to automatically unload the material rack (or goods) on it, and automatically drive forward a specified safe distance from the unloading rack. The operation sequence includes: navigation , switch page, loop voice broadcast, jacking, loop voice broadcast, discharge rack, switch page and loop voice broadcast. It can be seen that the components "automatic loading point" and "automatic unloading point" are respectively related to the type of the target point and business requirements.
尽管上文描述了组件“自动装载点”和“自动卸载点”包括动作“切换页面”和“循环语音播报”,但这两个动作不是必需的,可以是根据情况可选的。Although it is described above that the components "automatic loading point" and "automatic unloading point" include the actions "switch page" and "loop voice broadcast", these two actions are not required and may be optional according to the situation.
尽管在上面的实施例中,描述了组件由多个操作编排而成,但并不排除一个组件由单个操作形成的情形。Although in the above embodiments, it is described that a component is composed of a plurality of operations, it does not exclude the case that a component is formed of a single operation.
在一个实施例中,流程生成模块101对操作流程的生成可以由一触发事件触发。该触发事件可以是各种可能的事件,包括机器人服务商侧可能发生的事件和机器人最终用户侧可能发生的事件,如与调度系统开发人员的流程编排操作有关的事件、与机器人最终用户侧的流程编排操作有关的事件。在一个实施例中,所述触发事件包括:流程生成模块101接收到与生成操作流程相关联的用户输入。这里,“用户输入”应被广义 地理解为各种可能的输入,可以来自任何可能的操作者,包括例如但不限于机器人服务商侧的开发人员、机器人最终用户侧的操作人员等。在一个实施例中,流程生成模块101可以通过机器人所配备的人机交互接口来接收用户输入。In one embodiment, the generation of the operation flow by the flow generation module 101 may be triggered by a trigger event. The triggering event can be various possible events, including events that may occur on the robot service provider side and events that may occur on the robot end user side, such as events related to the process orchestration operation of the dispatching system developer, and events related to the end user side of the robot. Events related to orchestration operations. In one embodiment, the triggering event includes: the process generation module 101 receives a user input associated with generating an operation process. Here, "user input" should be broadly understood as various possible inputs, which can come from any possible operator, including but not limited to developers at the robot service provider side, operators at the end user side of the robot, etc. In one embodiment, the process generation module 101 may receive user input through a human-computer interaction interface equipped with the robot.
图2示出了根据本发明另一实施例的用于机器人的调度系统200。如图2所示,调度系统200包括流程生成模块201、流程引擎202、标准动作-属性库203、验证模块204和人机交互接口205。流程生成模块201与流程引擎202、标准动作-属性库203和人机交互接口205通信地耦合。另外,人机交互接口205与验证模块204通信地耦合。Fig. 2 shows a scheduling system 200 for robots according to another embodiment of the present invention. As shown in FIG. 2 , the scheduling system 200 includes a process generation module 201 , a process engine 202 , a standard action-attribute library 203 , a verification module 204 and a human-computer interaction interface 205 . The process generation module 201 is communicatively coupled with the process engine 202 , the standard action-attribute library 203 and the human-computer interaction interface 205 . Additionally, the human-computer interaction interface 205 is communicatively coupled with the authentication module 204 .
在图2的情况下,流程生成模块201可以用于基于存储在标准动作-属性库203中的标准动作及其属性建立一个或多个组件,以及按预定顺序编排所述一个或多个组件以生成操作流程。每个所述组件包括多个标准动作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值。In the case of FIG. 2, the process generation module 201 can be used to create one or more components based on the standard actions and their attributes stored in the standard action-attribute library 203, and arrange the one or more components in a predetermined order to Generate operation procedures. Each of the components includes a sequence of operations formed by a plurality of standard actions, each of at least some of the operations has at least one attribute, and each of the attributes has an attribute value.
流程引擎202可以用于基于流程生成模块201生成的操作流程发出指令以控制所述机器人按所述操作流程运作。The process engine 202 can be configured to issue instructions based on the operation process generated by the process generation module 201 to control the robot to operate according to the operation process.
标准动作-属性库203可以用于存储预先定义的标准动作以及存储具有至少一个属性的每个标准动作的每个属性。在一个实施例中,如下表1所示,标准动作-属性库203中存储有:预先定义的标准动作的名称;标准动作的描述;标准动作的属性。根据表1,对于标准动作“顶升”,存在预先定义的属性:方向和距离;对于标准动作“对接”,存在预先定义的属性:对接方式、对接精度和对接次数;对于标准动作“循环语音播报”,存在预先定义的属性:循环次数、语音播报内容和间隔时间;对于标准动作“导航”,存在预先定义的属性:方向和距离;对于标准动作“出料架”,存在预先定义的属性:方向和距离;对于标准动作“进料架”,存在预先定义的属性:方向和距离;对于标准动作“跟随”,存在预先定义的属性:跟随模式、开始和停止;标准动作“切换页面”可以不具有属性。The standard action-attribute library 203 can be used to store predefined standard actions and store each attribute of each standard action having at least one attribute. In one embodiment, as shown in Table 1 below, the standard action-attribute library 203 stores: names of predefined standard actions; descriptions of standard actions; and attributes of standard actions. According to Table 1, for the standard action "jacking", there are predefined attributes: direction and distance; for the standard action "docking", there are predefined attributes: docking method, docking accuracy and docking times; for the standard action "looping voice "Broadcast", there are predefined attributes: cycle times, voice broadcast content and interval time; for the standard action "navigation", there are predefined attributes: direction and distance; for the standard action "outlet rack", there are predefined attributes : direction and distance; for the standard action "feed rack", there are predefined attributes: direction and distance; for the standard action "follow", there are predefined attributes: follow mode, start and stop; the standard action "switch page" Can have no attributes.
表1Table 1
可选地,对于某个或某些标准动作,标准动作-属性库203可以存储其某个或某些属性的属性值范围和/或属性值类型,这是有利的,例如有助于对机器人的动作执行进行合适地限定、识别无效的属性值、避免机器人进行不合理的操作以及与此有关的后果。例如,若根据用户输入的属性值不在相应的属性值范围内和/或不属于相应的属性值类型,该属性值可以被认为是无效的。例如,对于“循环语音播报”这一标准动作,可以为其属性“语音播报内容”定义一个属性值类型,例如“文本”;对于“顶升”这一标准动作,可以为其属性“距离”定义一个属性值范围,例如“10mm至-30mm”。另外,可选地,对于某个或某些标准动作,标准动作-属性库203可以存储其某个或某些属性的默认属性值,这有利于简化流程编排过程。例如,对于“对接”这一标准动作,可以为其属性“对接次数”指定一个默认属性值,例如“3”。Optionally, for one or some standard actions, the standard action-attribute library 203 can store the attribute value range and/or attribute value type of one or some attributes, which is beneficial, for example, to help the robot Properly limit the execution of actions, identify invalid attribute values, avoid unreasonable operations of the robot and the consequences related thereto. For example, if the attribute value input by the user is not within the corresponding attribute value range and/or does not belong to the corresponding attribute value type, the attribute value may be considered invalid. For example, for the standard action "loop voice broadcast", you can define an attribute value type for its attribute "voice broadcast content", such as "text"; for the standard action "lift", you can define its attribute "distance" Define a property value range, such as "10mm to -30mm". In addition, optionally, for one or some standard actions, the standard action-attribute library 203 may store the default attribute value of one or some of the attributes, which is beneficial to simplify the process of orchestrating the process. For example, for the standard action of "docking", a default attribute value such as "3" can be specified for its attribute "number of dockings".
当某个标准动作被调用以生成组件并被包括在该组件中作为其操作序列中的一个操作时,根据情况,该组件中对应于该标准动作的操作可以具有该标准动作的预先定义的所有属性中的全部或部分。例如,对于“循环语音播报”这一标准动作,其预先定义的属性包括三个属性:循 环次数、语音播报内容和间隔时间。当在该标准动作被调用所生成的组件的操作序列中该标准动作所对应的操作的属性“循环次数”为“1”时,该标准动作所对应的该操作可以仅包括所述三个属性中的两个,即“循环次数”和“语音播报内容”;此时,对于该操作,属性“间隔时间”是不必要的、不必配置的。When a standard action is invoked to generate a component and is included in the component as an operation in its sequence of operations, the operation in the component corresponding to the standard action can have all of the standard action's predefined All or some of the properties. For example, for the standard action "loop voice broadcast", its predefined attributes include three attributes: cycle times, voice broadcast content and interval time. When the attribute "number of cycles" of the operation corresponding to the standard action is "1" in the operation sequence of the component generated by calling the standard action, the operation corresponding to the standard action may only include the three attributes Two of them are "Number of Loops" and "Voice Announcement Content". At this time, for this operation, the attribute "Interval Time" is unnecessary and does not need to be configured.
在一个实施例中,流程生成模块201还可以用于接收与编辑操作流程相关联的用户输入;以及,响应于此,编辑已生成的操作流程。例如,流程生成模块201可以具有用于接收该用户输入的流程编辑接口(未示出)。对操作流程的编辑可以包括例如但不限于:创建新的操作流程,删除已创建的操作流程;修改已创建的操作流程,包括例如但不限于改变该操作流程所包括的某个或某些组件的顺序、在该操作流程中增加一个或多个组件、删除该操作流程中包括的某个或某些组件、修改该操作流程中包括的某个或某些组件。修改某个组件可以包括例如但不限于:改变该组件所包括的某个或某些操作的顺序、在该组件中增加一个或多个操作、删除该组件中包括的某个或某些操作、修改该组件中包括的某个或某些操作。修改某个操作可以包括例如但不限于:增加该操作的属性、删除该操作的某个或某些属性、改变该操作的某个或某些属性的属性值等。对操作流程的编辑可以由流程生成模块201响应于通过人机交互接口205接收的用户输入进行。取决于人机交互接口205和/或相应的用户界面的设计,所述用户输入可以通过例如但不限于用户的勾选、点击、拖拽、删除、数据输入操作等进行。例如,用户界面中可以呈现可选项(如可选的组件、操作(如标准动作)、属性、属性值)供用户选择并呈现编辑区供用户在其中输入数据(如属性值)。In one embodiment, the process generation module 201 may also be configured to receive user input associated with editing the operation process; and, in response thereto, edit the generated operation process. For example, the process generation module 201 may have a process editing interface (not shown) for receiving the user input. Editing of the operation process may include, for example but not limited to: creating a new operation process, deleting the created operation process; modifying the created operation process, including, for example but not limited to, changing one or some components included in the operation process order, add one or more components in the operation process, delete one or some components included in the operation process, modify one or some components included in the operation process. Modifying a component may include, for example but not limited to: changing the order of one or some operations included in the component, adding one or more operations in the component, deleting one or some operations included in the component, Modifies one or more operations included in this component. Modifying an operation may include, for example but not limited to: adding an attribute of the operation, deleting one or some attributes of the operation, changing an attribute value of one or some attributes of the operation, and so on. Editing of the operation procedure may be performed by the procedure generation module 201 in response to user input received through the human-computer interaction interface 205 . Depending on the design of the human-computer interaction interface 205 and/or the corresponding user interface, the user input may be performed by, for example but not limited to, user's check, click, drag, delete, data input operation and the like. For example, optional items (such as optional components, operations (such as standard actions), attributes, and attribute values) may be presented in the user interface for the user to select and an editing area may be presented for the user to input data (such as the attribute value).
验证模块204可以用于验证流程生成模块201生成的操作流程、该操作流程所包括的至少一个组件和/或该操作流程所包括的至少一个组件中的至少一个操作的执行状态以生成验证结果,以及将所述验证结果提供给所述机器人的人机交互接口205供呈现。验证模块204可以用于的第一情形是机器人按照生成的操作流程、该操作流程包括的组件和/或该组件包括的操作运作的情形。对于第一情形,验证模块204可以接收例如通过设置在机器人上的传感器检测到的执行相关信息,并基于接收到的执行相关信息进行验证——例如,基于此执行相关信息判断机器人是否成功执行相关的操作流程、组件和/或操作所对应的动作,当判断机 器人成功执行动作时,生成验证通过的验证结果并且发送到人机交互接口205,当判断机器人未成功执行动作时,生成验证失败的验证结果并且发送到人机交互接口205。验证模块204可以用于的第二情形是利用模拟器和/或基于预先配置的规则进行模拟验证的情形。模拟器可以是经预先配置的,可以用于模拟机器人按照生成的操作流程、该操作流程包括的组件和/或该组件包括的操作运作并给出模拟运作结果。当模拟运作结果指示机器人成功执行相关的操作流程、组件和/或操作所对应的动作时,验证模块204可以生成验证通过的验证结果并且发送到人机交互接口205,当模拟运作结果指示机器人未成功执行动作时,验证模块204可以生成验证失败的验证结果并且发送到人机交互接口205。预先配置的规则可以限定与操作流程、组件和/或操作的合理性相关的一个或多个条件,从而用于判断流程生成模块生成的操作流程、该操作流程包括的组件和/或该操作流程包括的组件所包含的操作是否合理。所述合理性可以包括例如但不限于:单个操作/动作的某个或某些属性值的范围和/或类型的合理性;单个组件所包括的操作序列所反映的动作之间的顺序的合理性;操作流程所包括的组件之间的顺序的合理性;等。所述条件可以限定例如但不限于:单个操作/动作的某个或某些属性值的有效范围和/或类型;单个操作/动作的某个或某些属性值的无效范围和/或类型;执行某个操作/标准动作之前需执行的上一操作/标准动作;执行某个操作/标准动作之后需执行的下一操作/标准动作;可能的合理的操作序列;不合理的操作序列;执行某个组件之前需执行的上一组件/操作/标准动作;执行某个组件之后需执行的下一组件/操作/标准动作;可能的合理的组件序列;不合理的组件序列;等。当根据预先配置的规则判断流程生成模块201生成的操作流程、该操作流程包括的组件和/或该操作流程包括的组件所包含的操作合理时,验证模块204可以生成验证通过的验证结果并且发送到人机交互接口205,当根据预先配置的规则判断生成的操作流程、该操作流程包括的组件和/或该操作流程包括的组件所包含的操作不合理时,验证模块204可以生成验证失败的验证结果并且发送到人机交互接口205。例如,根据预先配置的规则,在进行进料架的操作之后需要进行顶升操作。若在某个组件所包括的操作序列中,在“进料架”之后的操作是“对接”,验证模块204可以根据此规则得到验证失败的验证结果。尽管未示出,根据情况,验证模块204与流程生成模块201通信地耦合是可能的。The verification module 204 may be used to verify the operation process generated by the process generation module 201, at least one component included in the operation process, and/or the execution status of at least one operation in at least one component included in the operation process to generate a verification result, And the verification result is provided to the human-computer interaction interface 205 of the robot for presentation. The first situation that the verification module 204 can be used for is the situation that the robot operates according to the generated operation flow, the components included in the operation flow and/or the operations included in the components. For the first situation, the verification module 204 may receive, for example, execution-related information detected by sensors installed on the robot, and perform verification based on the received execution-related information—for example, judge whether the robot successfully executes the relevant information based on the execution-related information. When it is judged that the robot has successfully executed the action, it generates a verification result of passing the verification and sends it to the human-computer interaction interface 205; when it judges that the robot has not successfully executed the action, it generates a verification result of failure The result is verified and sent to the human-computer interaction interface 205 . The second situation that the verification module 204 can be used for is the case of performing simulated verification using a simulator and/or based on pre-configured rules. The simulator can be pre-configured and can be used to simulate the operation of the robot according to the generated operation process, the components included in the operation process and/or the operations included in the components and give the simulated operation results. When the simulated operation result indicates that the robot successfully executes the relevant operation process, component and/or action corresponding to the operation, the verification module 204 can generate a verified verification result and send it to the human-computer interaction interface 205, when the simulated operation result indicates that the robot has not When the action is successfully executed, the verification module 204 may generate a verification result of verification failure and send it to the human-computer interaction interface 205 . The pre-configured rules can define one or more conditions related to the rationality of the operation process, components and/or operations, so as to be used to judge the operation process generated by the process generation module, the components included in the operation process and/or the operation process Included components contain operations that make sense. The rationality may include, for example but not limited to: the rationality of the range and/or type of one or some attribute values of a single operation/action; the rationality of the sequence of actions reflected in the sequence of operations included in a single component the rationality of the sequence among the components included in the operation process; etc. The conditions may define, for example but not limited to: the valid range and/or type of one or some attribute values of a single operation/action; the invalid range and/or type of one or some attribute values of a single operation/action; The previous operation/standard action to be performed before performing an operation/standard action; the next operation/standard action to be performed after performing an operation/standard action; possible reasonable sequence of operations; unreasonable sequence of operations; execution The previous component/operation/standard action to be performed before a certain component; the next component/operation/standard action to be performed after a certain component is executed; possible reasonable component sequences; unreasonable component sequences; etc. When it is judged according to the pre-configured rules that the operation process generated by the process generation module 201, the components included in the operation process, and/or the operations contained in the components included in the operation process are reasonable, the verification module 204 can generate a verification result that passes the verification and send To the human-computer interaction interface 205, when it is judged according to the pre-configured rules that the generated operation flow, the components included in the operation flow and/or the operations contained in the components included in the operation flow are unreasonable, the verification module 204 can generate a verification failure The result is verified and sent to the human-computer interaction interface 205 . For example, according to pre-configured rules, the jacking operation is required after the operation of the feed rack. If in the operation sequence included in a certain component, the operation after the "feeding rack" is "docking", the verification module 204 can obtain a verification result of verification failure according to this rule. Although not shown, it is possible that the verification module 204 is communicatively coupled with the flow generation module 201, depending on circumstances.
人机交互接口205可以是各种可能的人机交互接口装置如显示器、键盘、鼠标、光标等,或其任意合适组合。在一个实施例中,人机交互接口205包括触摸屏显示器。The human-computer interaction interface 205 may be various possible human-computer interaction interface devices such as a display, a keyboard, a mouse, a cursor, etc., or any suitable combination thereof. In one embodiment, the human-computer interaction interface 205 includes a touch screen display.
在一个实施例中,流程生成模块201可以具有属性值接收接口(未示出)。所述属性值接收接口可以用于从与所述机器人协作的外部系统接收属性值。可选地,流程生成模块201可以经由其属性值接收接口向与所述机器人协作的外部系统发送属性值,此时该属性值接收接口可以被称为“属性值收发接口”。这样的外部系统可以包括各种可能与所述机器人配合的外部系统,例如但不限于与机器人的对接装置配合的待对接装置或其所属的系统、与机器人的顶升装置配合的对象如料架或货架或其所属的系统如仓储系统、另外的机器人等。In one embodiment, the process generation module 201 may have an attribute value receiving interface (not shown). The property value receiving interface may be used to receive property values from an external system cooperating with the robot. Optionally, the process generation module 201 may send the attribute value to an external system cooperating with the robot via its attribute value receiving interface, at this time, the attribute value receiving interface may be referred to as an "attribute value sending and receiving interface". Such external systems may include various external systems that may cooperate with the robot, such as, but not limited to, the device to be docked that cooperates with the docking device of the robot or the system to which it belongs, the object that cooperates with the lifting device of the robot, such as a rack Or shelves or the systems they belong to, such as storage systems, additional robots, etc.
在一个实施例中,本发明的调度系统还可以包括异常流程模块(未示出)。异常流程模块可以用于存储异常处理流程,所述异常处理流程可用于机器人运作出现异常的情形。机器人在按照流程生成模块生成的操作流程运作期间出现异常情形是可能的,异常情形可以包括例如但不限于机器人不能成功完成操作流程中的某个操作、机器人的电力不足以执行完操作流程中的全部操作等。这样的异常情形可以基于例如通过设置在机器人上的传感器检测到的执行相关信息来检测。例如,流程引擎可以接收这样的执行相关信息并基于接收到的执行相关信息判断机器人对流程生成模块生成的操作流程的执行是否正常,并在判断结果为否定的情况下确定出现异常情形。流程引擎可与异常流程模块通信地耦合,或者异常流程模块是流程引擎的一部分。在机器人运作出现异常的情况下,流程引擎可以调用存储在异常流程模块中的异常处理流程,并基于该异常处理流程发出指令以控制所述机器人按所述异常处理流程运作。异常处理流程可以是预先定义的。针对不同的异常情形,可以定义相同或不同的异常处理流程,在后者的情况下,定义的异常处理流程可以基于所针对的特定异常情形。异常处理流程可以包括单个操作/动作或多个操作/动作的序列。异常处理流程可以指示例如但不限于:机器人在当前所在处保持不动并进行循环语音播报以指示操作执行出现故障;机器人从当前所在处回到待命区;机器人按照定义的特定路由信息行进至充电区;等。In an embodiment, the scheduling system of the present invention may further include an exception process module (not shown). The abnormal process module can be used to store the abnormal processing process, and the abnormal processing process can be used in the case of abnormal operation of the robot. It is possible for the robot to have an abnormal situation during the operation process generated by the process generation module. The abnormal situation may include, for example but not limited to, the robot cannot successfully complete a certain operation in the operation process, and the power of the robot is not enough to complete the operation process. All operations etc. Such abnormal situations can be detected based on, for example, execution-related information detected by sensors provided on the robot. For example, the process engine may receive such execution-related information and judge whether the execution of the operation process generated by the process generation module by the robot is normal based on the received execution-related information, and determine that an abnormal situation occurs when the judgment result is negative. The process engine may be communicatively coupled to the exception flow module, or the exception flow module may be part of the process engine. In the case of an abnormal operation of the robot, the process engine can invoke the exception handling process stored in the exception process module, and issue instructions based on the exception handling process to control the robot to operate according to the exception handling process. Exception handling processes can be pre-defined. For different exception situations, the same or different exception handling procedures may be defined, and in the latter case, the defined exception handling procedures may be based on the specific exception situations targeted. An exception handling flow can consist of a single operation/action or a sequence of multiple operations/actions. The exception handling process can indicate, for example but not limited to: the robot remains still at the current location and performs a circular voice broadcast to indicate that there is a fault in the execution of the operation; the robot returns to the standby area from the current location; the robot travels to the charging station according to the defined specific routing information district; etc.
本发明的机器人可以配备有上述的调度系统,并且包括相应的执行 系统以执行调度系统的流程生成模块生成的操作流程所包括的操作。The robot of the present invention may be equipped with the above-mentioned scheduling system, and include a corresponding execution system to execute the operations included in the operation flow generated by the flow generation module of the scheduling system.
图3示意性示出了根据本发明一实施例的用于机器人的调度方法S300。调度方法S300可以包括步骤S301和S302。Fig. 3 schematically shows a scheduling method S300 for a robot according to an embodiment of the present invention. The scheduling method S300 may include steps S301 and S302.
在步骤S301,生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值。In step S301, an operation process for the robot is generated, the operation process includes one or more components arranged in a predetermined order, each of the components includes an operation sequence formed by a plurality of operations, at least part of the operations Each of has at least one attribute, each of which has an attribute value.
在S302,基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。In S302, an instruction is issued based on the generated operation flow to control the robot to operate according to the operation flow.
在一个实施例中,步骤S301中的每个操作对应于一个预先定义的标准动作,具有至少一个属性的每个所述操作的所述至少一个属性是该操作所对应的标准动作的属性中的部分或全部属性。标准动作及其属性可以存储在标准动作-属性库中。在此情况下,步骤S301可以包括步骤S3012和S3014。在步骤S3012,基于存储在标准动作-属性库中的标准动作及其属性建立一个或多个组件。在步骤S3014,按预定顺序编排所述一个或多个组件以生成操作流程。In one embodiment, each operation in step S301 corresponds to a predefined standard action, and the at least one attribute of each operation having at least one attribute is one of the attributes of the standard action corresponding to the operation Some or all attributes. Standard actions and their attributes can be stored in a standard action-attribute library. In this case, step S301 may include steps S3012 and S3014. In step S3012, one or more components are established based on the standard actions and their attributes stored in the standard action-attribute library. In step S3014, the one or more components are arranged in a predetermined sequence to generate an operation flow.
图4示意性示出根据本发明一实施例的定制用于机器人的调度系统的方法S400。方法S400可以包括步骤S401和S402。Fig. 4 schematically shows a method S400 of customizing a scheduling system for robots according to an embodiment of the present invention. The method S400 may include steps S401 and S402.
在步骤S401,创建流程生成模块,所述流程生成模块被配置为生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值。In step S401, a process generation module is created, the process generation module is configured to generate an operation process for the robot, the operation process includes one or more components arranged in a predetermined order, each of the components includes multiple A sequence of operations formed by at least some of the operations each having at least one attribute and each of the attributes having an attribute value.
在步骤S402,创建流程引擎,所述流程引擎被配置为基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。In step S402, a process engine is created, and the process engine is configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process.
创建的流程生成模块和流程引擎可以形成用于机器人的调度系统。The created process generation module and process engine can form a scheduling system for robots.
在一个实施例中,本发明的定制用于机器人的调度系统的方法还包括提供标准动作-属性库(未示出),所述标准动作-属性库用于存储多个预先定义的标准动作以及存储具有至少一个属性的每个所述标准动作的每个属性。在此情况下,所述流程生成模块可以被配置为:基于存储在所述标准动作-属性库中的标准动作及其属性建立所述一个或多个组件 中的每个,以及按所述预定顺序编排所述一个或多个组件以生成所述操作流程。In one embodiment, the method for customizing the scheduling system for robots of the present invention further includes providing a standard action-attribute library (not shown), which is used to store a plurality of predefined standard actions and Each attribute of each of said standard actions having at least one attribute is stored. In this case, the process generation module may be configured to: establish each of the one or more components based on the standard actions and their attributes stored in the standard action-attribute library, and create each of the one or more components according to the predetermined The one or more components are sequenced to generate the operational flow.
在一个实施例中,本发明的定制用于机器人的调度系统的方法还包括提供标准组件库,所述标准组件库用于存储多个预先定义的标准组件,每个标准组件定义一个标准动作序列。在此情况下,所述流程生成模块可以被配置为:在生成操作流程时,直接使用存储在所述标准组件库中的一个或多个标准组件作为用于按顺序编排以生成操作流程的全部组件中的至少部分。In one embodiment, the method for customizing a scheduling system for a robot of the present invention further includes providing a standard component library, which is used to store a plurality of predefined standard components, each standard component defining a standard action sequence . In this case, the process generation module may be configured to: when generating the operation process, directly use one or more standard components stored in the standard component library as all At least some of the components.
上述标准动作-属性库和/或标准组件库可以被授权给机器人的最终用户,使得在最终用户侧可以通过机器人的人机交互接口选择标准动作-属性库中的标准动作和/或标准组件库中的标准组件用于编排操作流程。The above-mentioned standard action-attribute library and/or standard component library can be authorized to the end user of the robot, so that the standard action-attribute library and/or standard component library in the standard action-attribute library can be selected on the end user side through the human-computer interaction interface of the robot The standard components in are used to orchestrate operational processes.
本发明的定制用于机器人的调度系统的方法可以可选地包括以下步骤和特征中的至少一些:The method of customizing a scheduling system for robots of the present invention may optionally include at least some of the following steps and features:
-将定制的调度系统提供给机器人的最终用户的步骤,其中,在将所述调度系统提供给所述机器人的最终用户之前,利用所述流程生成模块生成用于所述机器人的操作流程。- The step of providing a customized dispatch system to an end user of a robot, wherein an operation procedure for said robot is generated using said procedure generation module before said dispatch system is provided to an end user of said robot.
-所述操作流程基于所述机器人的预期应用场景,所述操作流程包括的每个组件具有在所述预期应用场景中的相关联的目标点位,并且与所述目标点位的类型和/或业务要求相关。- the operation process is based on the expected application scenario of the robot, each component included in the operation process has an associated target point in the expected application scenario, and is related to the type of the target point and/or or business requirements.
-为所述流程生成模块设置流程编辑接口的步骤,所述流程编辑接口用于接收与编辑操作流程相关联的用户输入,所述流程生成模块被配置为:经由所述流程编辑接口接收与编辑操作流程相关联的用户输入;以及,响应于此,编辑已生成的所述操作流程。- a step of setting a process editing interface for the process generating module, the process editing interface is used to receive user input associated with editing an operation process, and the process generating module is configured to: receive and edit via the process editing interface user input associated with an operational procedure; and, in response thereto, editing said operational procedure that has been generated.
-为所述流程生成模块设置属性值接收接口的步骤,所述属性值接收接口用于从与所述机器人协作的外部系统接收属性值。- A step of setting an attribute value receiving interface for the process generation module, the attribute value receiving interface being used to receive attribute values from an external system cooperating with the robot.
-为所述调度系统配置验证模块的步骤,所述验证模块被配置为验证操作流程包括的至少一个操作、至少一个组件和/或所述操作流程的执行状态以生成验证结果,以及将所述验证结果提供给所述机器人的人机交互接口供呈现。- a step of configuring a verification module for the scheduling system, the verification module being configured to verify at least one operation included in the operation process, at least one component and/or the execution status of the operation process to generate a verification result, and the The verification results are provided to the human-computer interaction interface of the robot for presentation.
本领域普通技术人员应理解,图1和图2中示出的示意图仅仅是对 与本发明的方案相关的部分结构的示例性说明,并不构成对体现本发明的方案的计算机设备、处理器或计算机程序指令的限定。具体的计算机设备、处理器或计算机程序指令可以包括比图中所示更多或更少的部件或模块,或者组合或拆分某些部件或模块,或者可具有不同的部件或模块布置。Those of ordinary skill in the art should understand that the schematic diagrams shown in Figures 1 and 2 are only exemplary illustrations of some structures related to the solution of the present invention, and do not constitute a computer device or processor embodying the solution of the present invention. or as defined by computer program instructions. A specific computer device, processor or computer program instructions may include more or fewer components or modules than shown in the figures, or some components or modules may be combined or split, or may have a different arrangement of components or modules.
应理解,本文中前述关于本发明的调度系统所描述的具体特征、操作和细节也可类似地应用于本发明的方法,或者,反之亦然。另外,上文描述的本发明的调度方法的每个步骤可由本发明的调度系统的相应部件或单元执行。It should be understood that the specific features, operations and details previously described herein with respect to the scheduling system of the present invention may also be similarly applied to the method of the present invention, or vice versa. In addition, each step of the dispatching method of the present invention described above can be executed by corresponding components or units of the dispatching system of the present invention.
应理解,本发明的用于机器人的调度系统的各个模块/单元可全部或部分地通过软件、硬件、固件或其组合来实现。所述各模块/单元各自可以硬件或固件形式内嵌于计算机设备的处理器中或独立于所述处理器,也可以软件形式存储于计算机设备的存储器中以供处理器调用来执行所述各模块/单元的操作。所述各模块/单元各自可以实现为独立的部件或模块,或者两个或更多个模块/单元可实现为单个部件或模块。It should be understood that each module/unit of the scheduling system for robots of the present invention may be fully or partially realized by software, hardware, firmware or a combination thereof. Each of the modules/units can be embedded in the processor of the computer device in the form of hardware or firmware or independent of the processor, and can also be stored in the memory of the computer device in the form of software for the processor to call to execute the various modules. Operation of modules/units. Each of the modules/units may be realized as an independent component or module, or two or more modules/units may be realized as a single component or module.
在一个实施例中,提供了一种计算机设备,其包括存储器和处理器,所述存储器上存储有可由处理器执行的计算机指令,所述计算机指令在由所述处理器执行时指示所述处理器执行本发明的方法的各步骤。该计算机设备可以广义地为服务器、终端,或任何其他具有必要的计算和/或处理能力的电子设备。在一个实施例中,该计算机设备可包括通过系统总线连接的处理器、存储器、网络接口、通信接口等。该计算机设备的处理器可用于提供必要的计算、处理和/或控制能力。该计算机设备的存储器可包括非易失性存储介质和内存储器。该非易失性存储介质中或上可存储有操作系统、计算机程序等。该内存储器可为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口和通信接口可用于与外部的设备通过网络连接和通信。该计算机程序被处理器执行时执行本发明的方法的步骤。In one embodiment, there is provided a computer device comprising a memory and a processor, the memory having stored thereon computer instructions executable by the processor, the computer instructions, when executed by the processor, instructing the processing The device performs the steps of the method of the present invention. The computer device may broadly be a server, a terminal, or any other electronic device with necessary computing and/or processing capabilities. In one embodiment, the computer device may include a processor, memory, network interface, communication interface, etc. connected by a system bus. The processor of the computer device may be used to provide the necessary calculation, processing and/or control capabilities. The memory of the computer device may include non-volatile storage media and internal memory. An operating system, a computer program, etc. may be stored in or on the non-volatile storage medium. The internal memory can provide an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The network interface and communication interface of the computer equipment can be used to connect and communicate with external equipment through the network. The computer program executes the steps of the method of the present invention when executed by a processor.
本发明可以实现为一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令在由处理器执行时导致本发明的方法的步骤被执行。在一个实施例中,所述计算机指令被分布在网络耦合的多个计算机设备或处理器上,以使得所述计算机指令由一个或多个计算机设备或处理器以分布式方式存储、访问和执行。单个方法步骤/操作,或者两个或更多 个方法步骤/操作,可以由单个计算机设备或处理器或由两个或更多个计算机设备或处理器执行。一个或多个方法步骤/操作可以由一个或多个计算机设备或处理器执行,并且一个或多个其他方法步骤/操作可以由一个或多个其他计算机设备或处理器执行。一个或多个计算机设备或处理器可以执行单个方法步骤/操作,或执行两个或更多个方法步骤/操作。The invention can be implemented as a computer-readable storage medium having stored thereon computer instructions which, when executed by a processor, cause the steps of the method of the invention to be performed. In one embodiment, the computer instructions are distributed over a plurality of computer devices or processors coupled over a network such that the computer instructions are stored, accessed and executed in a distributed fashion by one or more computer devices or processors . A single method step/operation, or two or more method steps/operations, may be performed by a single computing device or processor or by two or more computing devices or processors. One or more method steps/actions may be performed by one or more computing devices or processors, and one or more other method steps/operations may be performed by one or more other computing devices or processors. One or more computer devices or processors may perform a single method step/action, or two or more method steps/operations.
本领域普通技术人员可以理解,本发明的方法的全部或部分步骤可以通过计算机指令来指示相关的硬件如计算机设备或处理器完成,所述的计算机指令可存储于非暂时性计算机可读存储介质中,该计算机指令被执行时导致本发明的方法的步骤被执行。根据情况,本文中对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器的示例包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘等。易失性存储器的示例包括随机存取存储器(RAM)、外部高速缓冲存储器等。Those skilled in the art can understand that all or part of the steps of the method of the present invention can be completed by computer instructions to instruct related hardware such as computer equipment or processors, and the computer instructions can be stored in a non-transitory computer-readable storage medium In this case, the computer instructions, when executed, cause the steps of the method of the present invention to be performed. Any reference herein to memory, storage, databases, or other media may include non-volatile and/or volatile memory, as appropriate. Examples of nonvolatile memory include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, magnetic tape, floppy disk, magneto-optical data Storage devices, optical data storage devices, hard drives, solid state drives, etc. Examples of volatile memory include random access memory (RAM), external cache memory, and the like.
以上描述的各技术特征可以任意地组合。尽管未对这些技术特征的所有可能组合进行描述,但这些技术特征的任何组合都应当被认为由本说明书涵盖,只要这样的组合不存在矛盾。The technical features described above can be combined arbitrarily. Although not all possible combinations of these technical features have been described, any combination of these technical features should be considered to be covered by this specification as long as there is no contradiction in such a combination.
尽管结合实施例对本发明进行了描述,但本领域技术人员应理解,上文的描述和附图仅是示例性而非限制性的,本发明不限于所公开的实施例。在不偏离本发明的精神的情况下,各种改型和变体是可能的。Although the present invention has been described in conjunction with the embodiments, those skilled in the art should understand that the above description and drawings are only illustrative and not restrictive, and the present invention is not limited to the disclosed embodiments. Various modifications and variations are possible without departing from the spirit of the invention.
Claims (24)
- 一种用于机器人的调度系统,包括:A scheduling system for robots, comprising:流程生成模块,被配置为生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes an operation sequence formed by a plurality of operations, at least in part each of said operations has at least one attribute, each of said attributes has an attribute value; and流程引擎,被配置为基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。The process engine is configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process.
- 根据权利要求1所述的调度系统,其中,所述操作流程基于所述机器人的预期应用场景,每个所述组件具有在所述预期应用场景中的相关联的目标点位,并且与所述目标点位的类型和/或业务要求相关。The dispatching system according to claim 1, wherein said operation process is based on an expected application scenario of said robot, each said component has an associated target point in said expected application scenario, and is connected to said Depending on the type of target site and/or business requirements.
- 根据权利要求1所述的调度系统,其中,所述操作流程的生成由一触发事件触发,所述触发事件包括:所述流程生成模块接收到与生成操作流程相关联的用户输入。The scheduling system according to claim 1, wherein the generation of the operation flow is triggered by a trigger event, and the trigger event includes: the flow generation module receives a user input associated with generating the operation flow.
- 根据权利要求1所述的调度系统,其中,所述流程生成模块还被配置为:接收与编辑操作流程相关联的用户输入;以及,响应于此,编辑已生成的所述操作流程。The scheduling system according to claim 1, wherein the procedure generation module is further configured to: receive user input associated with editing an operation procedure; and, in response thereto, edit the generated operation procedure.
- 根据权利要求1-4中任一项所述的调度系统,其中,每个所述操作对应于一个预先定义的标准动作,具有至少一个属性的每个所述操作的所述至少一个属性是该操作所对应的标准动作的属性中的部分或全部属性,所述调度系统还包括标准动作-属性库,所述标准动作-属性库用于存储多个预先定义的标准动作以及存储每个所述标准动作的每个属性,其中所述流程生成模块被配置为:基于存储在所述标准动作-属性库中的标准动作及其属性建立所述一个或多个组件中的每个,以及按所述预定顺序编 排所述一个或多个组件以生成所述操作流程。The scheduling system according to any one of claims 1-4, wherein each said operation corresponds to a predefined standard action, said at least one attribute of each said operation having at least one attribute is the To operate part or all of the attributes of the corresponding standard actions, the scheduling system further includes a standard action-attribute library, the standard action-attribute library is used to store a plurality of predefined standard actions and store each of the Each attribute of a standard action, wherein the process generation module is configured to: establish each of the one or more components based on the standard action and its attributes stored in the standard action-attribute library, and Arranging the one or more components in the predetermined order to generate the operational flow.
- 根据权利要求1-4中任一项所述的调度系统,其中,所述流程生成模块具有属性值接收接口,所述属性值接收接口用于从与所述机器人协作的外部系统接收属性值。The scheduling system according to any one of claims 1-4, wherein the process generation module has an attribute value receiving interface, and the attribute value receiving interface is used to receive attribute values from an external system cooperating with the robot.
- 根据权利要求1-4中任一项所述的调度系统,其中,所述调度系统还包括:The dispatching system according to any one of claims 1-4, wherein the dispatching system further comprises:验证模块,被配置为验证至少一个所述操作、至少一个所述组件和/或所述操作流程的执行状态以生成验证结果,以及将所述验证结果提供给所述机器人的人机交互接口供呈现。A verification module configured to verify at least one of the operations, at least one of the components and/or the execution status of the operation process to generate a verification result, and provide the verification result to the human-computer interaction interface of the robot for presented.
- 一种机器人,包括根据权利要求1至7中任一项所述的调度系统。A robot comprising the dispatching system according to any one of claims 1-7.
- 一种用于机器人的调度方法,包括:A scheduling method for a robot comprising:生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和generating an operational flow for said robot, said operational flow comprising one or more components arranged in a predetermined order, each said component comprising a sequence of operations formed by at least some of said operations has at least one attribute, each of said attributes having an attribute value; and基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作。An instruction is issued based on the generated operation flow to control the robot to operate according to the operation flow.
- 根据权利要求9所述的调度方法,其中,所述操作流程基于所述机器人的预期应用场景,每个所述组件具有在所述预期应用场景中的相关联的目标点位,并且与所述目标点位的类型和/或业务要求相关。The scheduling method according to claim 9, wherein the operation process is based on an expected application scenario of the robot, each of the components has an associated target point in the expected application scenario, and is related to the Depending on the type of target site and/or business requirements.
- 根据权利要求9所述的调度方法,其中,所述操作流程的生成由一触发事件触发,所述触发事件包括:接收到与生成操作流程相关联的用户输入。The scheduling method according to claim 9, wherein the generation of the operation flow is triggered by a trigger event, and the trigger event includes: receiving a user input associated with generating the operation flow.
- 根据权利要求9所述的调度方法,其中,所述调度方法还包括:接收与编辑操作流程相关联的用户输入;以及,响应于此,编辑已生成的所述操作流程。The scheduling method according to claim 9, wherein the scheduling method further comprises: receiving user input associated with editing an operation procedure; and, in response thereto, editing the generated operation procedure.
- 根据权利要求9-12中任一项所述的调度方法,其中,每个所述操作对应于一个预先定义的标准动作,具有至少一个属性的每个所述操作的所述至少一个属性是该操作所对应的标准动作的属性中的部分或全部属性,其中生成所述操作流程包括:基于存储在标准动作-属性库中的标准动作及其属性建立所述一个或多个组件中的每个,以及按所述预定顺序编排所述一个或多个组件以生成所述操作流程,所述标准动作-属性库用于存储多个预先定义的标准动作以及存储每个所述标准动作的每个属性。The scheduling method according to any one of claims 9-12, wherein each said operation corresponds to a predefined standard action, said at least one attribute of each said operation having at least one attribute is the Operating some or all of the attributes of the corresponding standard action, wherein generating the operation flow includes: establishing each of the one or more components based on the standard actions and their attributes stored in the standard action-attribute library , and arranging the one or more components in the predetermined order to generate the operation process, the standard action-attribute library is used to store a plurality of predefined standard actions and store each of the standard actions Attributes.
- 根据权利要求9-12中任一项所述的调度方法,其中,生成所述操作流程包括:从与所述机器人协作的外部系统接收属性值。The scheduling method according to any one of claims 9-12, wherein generating the operation flow comprises: receiving attribute values from an external system cooperating with the robot.
- 根据权利要求9-12中任一项所述的调度方法,其中,所述调度方法还包括:验证至少一个所述操作、至少一个所述组件和/或所述操作流程的执行状态以生成验证结果,以及将所述验证结果提供给所述机器人的人机交互接口供呈现。The scheduling method according to any one of claims 9-12, wherein the scheduling method further comprises: verifying the execution status of at least one of the operations, at least one of the components and/or the operation process to generate a verification results, and providing the verification results to a human-computer interaction interface of the robot for presentation.
- 一种计算机设备,包括存储器和处理器,所述存储器上存储有计算机指令,所述计算机指令在由所述处理器执行时导致根据权利要求9至15中任一项所述的调度方法被执行。A computer device comprising a memory and a processor, the memory having stored thereon computer instructions which, when executed by the processor, cause the scheduling method according to any one of claims 9 to 15 to be performed .
- 一种非暂时性计算机可读存储介质,其上存储有计算机指令,所述计算机指令在由处理器执行时导致根据权利要求9-15中任一项所述的调度方法被执行。A non-transitory computer-readable storage medium having stored thereon computer instructions which, when executed by a processor, cause the scheduling method according to any one of claims 9-15 to be executed.
- 一种定制用于机器人的调度系统的方法,包括:A method of customizing a scheduling system for a robot, comprising:创建流程生成模块,所述流程生成模块被配置为生成用于所述机器人的操作流程,所述操作流程包括按预定顺序编排的一个或多个组件,每个所述组件包括多个操作形成的一个操作序列,至少部分所述操作中的每个具有至少一个属性,每个所述属性具有一个属性值;和,Create a flow generation module configured to generate an operation flow for the robot, the operation flow includes one or more components arranged in a predetermined order, each of the components includes a plurality of operations formed a sequence of operations, at least some of said operations each having at least one attribute, each of said attributes having an attribute value; and,创建流程引擎,所述流程引擎被配置为基于生成的所述操作流程发出指令以控制所述机器人按所述操作流程运作,creating a process engine configured to issue instructions based on the generated operation process to control the robot to operate according to the operation process,其中,所述调度系统包括所述流程生成模块和所述流程引擎。Wherein, the scheduling system includes the process generation module and the process engine.
- 根据权利要求18所述的方法,还包括:将定制的所述调度系统提供给所述机器人的最终用户,其中,在将所述调度系统提供给所述机器人的最终用户之前,利用所述流程生成模块生成用于所述机器人的操作流程。The method of claim 18, further comprising: providing the dispatch system customized to an end user of the robot, wherein prior to providing the dispatch system to the end user of the robot, utilizing the process The generation module generates an operation procedure for the robot.
- 根据权利要求19所述的方法,其中,所述操作流程基于所述机器人的预期应用场景,每个所述组件具有在所述预期应用场景中的相关联的目标点位,并且与所述目标点位的类型和/或业务要求相关。The method according to claim 19, wherein said operating procedure is based on an intended application scenario of said robot, each said component has an associated target point in said expected application scenario, and is connected to said target Depending on the type of site and/or business requirements.
- 根据权利要求19所述的方法,还包括:为所述流程生成模块设置流程编辑接口,所述流程编辑接口用于接收与编辑操作流程相关联的用户输入,其中所述流程生成模块还被配置为:经由所述流程编辑接口接收与编辑操作流程相关联的用户输入;以及,响应于此,编辑已生成的所述操作流程。The method according to claim 19, further comprising: setting a process editing interface for the process generating module, the process editing interface is used to receive user input associated with editing an operation process, wherein the process generating module is further configured To: receive user input associated with editing an operational procedure via the procedure editing interface; and, in response thereto, edit the generated operational procedure.
- 根据权利要求18-21中任一项所述的方法,还包括:The method according to any one of claims 18-21, further comprising:提供标准动作-属性库,所述标准动作-属性库用于存储多个预先定义的标准动作以及存储具有至少一个属性的每个标准动作的每个属性,其中每个所述操作对应于一个预先定义的标准动作,具有至少一个属性的每个所述操作的所述至少一个属性是该操作所对应的标准动作的属性中的部分或全部属性,所述流程生成模块被配置为:基于存储在所述标准动作-属性库中的标准动作及其属性建立所述一个或多个组件中的每个,以及按 所述预定顺序编排所述一个或多个组件以生成所述操作流程。providing a standard action-attribute library for storing a plurality of predefined standard actions and storing each attribute of each standard action having at least one attribute, wherein each said operation corresponds to a predefined A defined standard action, the at least one attribute of each operation having at least one attribute is part or all of the attributes of the standard action corresponding to the operation, and the process generation module is configured to: based on the The standard actions and their attributes in the standard action-attribute library establish each of the one or more components, and arrange the one or more components in the predetermined order to generate the operation flow.
- 根据权利要求18-21中任一项所述的方法,还包括:为所述流程生成模块设置属性值接收接口,所述属性值接收接口用于从与所述机器人协作的外部系统接收属性值。The method according to any one of claims 18-21, further comprising: setting an attribute value receiving interface for the process generation module, the attribute value receiving interface being used to receive an attribute value from an external system cooperating with the robot .
- 根据权利要求18-21中任一项所述的方法,还包括:为所述调度系统配置验证模块,所述验证模块被配置为验证至少一个所述操作、至少一个所述组件和/或所述操作流程的执行状态以生成验证结果,以及将所述验证结果提供给所述机器人的人机交互接口供呈现。The method according to any one of claims 18-21, further comprising configuring the dispatching system with a verification module configured to verify at least one of the operations, at least one of the components and/or all The execution status of the operation process is analyzed to generate a verification result, and the verification result is provided to the human-computer interaction interface of the robot for presentation.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523154.9 | 2021-05-13 | ||
CN202110523154.9A CN115344009A (en) | 2021-05-13 | 2021-05-13 | Scheduling system and method for robot, robot and customization method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022237323A1 true WO2022237323A1 (en) | 2022-11-17 |
Family
ID=83946863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/081974 WO2022237323A1 (en) | 2021-05-13 | 2022-03-21 | Scheduling system and method for robot, robot, and customization method |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115344009A (en) |
WO (1) | WO2022237323A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118260341A (en) * | 2022-12-26 | 2024-06-28 | 北京嘀嘀无限科技发展有限公司 | Service processing method, device, computer equipment, storage medium and program product |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080091301A1 (en) * | 2004-11-26 | 2008-04-17 | Abb Research Ltd. | System And A Method For Controlling Movements Of An Industrial Robot |
CN106647763A (en) * | 2017-01-06 | 2017-05-10 | 深圳优地科技有限公司 | Robot scheduling method, apparatus and server |
CN106843113A (en) * | 2017-03-16 | 2017-06-13 | 中智科创机器人有限公司 | Robot dispatching method, device and system |
CN109583709A (en) * | 2018-11-09 | 2019-04-05 | 同济大学 | A kind of automatic parking robot group method for scheduling task |
CN110286673A (en) * | 2019-05-23 | 2019-09-27 | 北京京东尚科信息技术有限公司 | Storage task processing method, device, warehousing system and storage medium |
CN111079990A (en) * | 2019-11-29 | 2020-04-28 | 炬星科技(深圳)有限公司 | Cluster robot scheduling method, device, system, equipment and computer readable storage medium |
CN112256018A (en) * | 2020-07-16 | 2021-01-22 | 北京京东乾石科技有限公司 | Robot scheduling processing method, device, equipment and storage medium |
US20210129327A1 (en) * | 2019-11-05 | 2021-05-06 | BioSero Inc. | Automated Control of Multi-Process Using Robotic Equipment For Complex Workflows |
CN112766663A (en) * | 2020-12-31 | 2021-05-07 | 北京云迹科技有限公司 | Robot scheduling method and device |
-
2021
- 2021-05-13 CN CN202110523154.9A patent/CN115344009A/en active Pending
-
2022
- 2022-03-21 WO PCT/CN2022/081974 patent/WO2022237323A1/en active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080091301A1 (en) * | 2004-11-26 | 2008-04-17 | Abb Research Ltd. | System And A Method For Controlling Movements Of An Industrial Robot |
CN106647763A (en) * | 2017-01-06 | 2017-05-10 | 深圳优地科技有限公司 | Robot scheduling method, apparatus and server |
CN106843113A (en) * | 2017-03-16 | 2017-06-13 | 中智科创机器人有限公司 | Robot dispatching method, device and system |
CN109583709A (en) * | 2018-11-09 | 2019-04-05 | 同济大学 | A kind of automatic parking robot group method for scheduling task |
CN110286673A (en) * | 2019-05-23 | 2019-09-27 | 北京京东尚科信息技术有限公司 | Storage task processing method, device, warehousing system and storage medium |
US20210129327A1 (en) * | 2019-11-05 | 2021-05-06 | BioSero Inc. | Automated Control of Multi-Process Using Robotic Equipment For Complex Workflows |
CN111079990A (en) * | 2019-11-29 | 2020-04-28 | 炬星科技(深圳)有限公司 | Cluster robot scheduling method, device, system, equipment and computer readable storage medium |
CN112256018A (en) * | 2020-07-16 | 2021-01-22 | 北京京东乾石科技有限公司 | Robot scheduling processing method, device, equipment and storage medium |
CN112766663A (en) * | 2020-12-31 | 2021-05-07 | 北京云迹科技有限公司 | Robot scheduling method and device |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118260341A (en) * | 2022-12-26 | 2024-06-28 | 北京嘀嘀无限科技发展有限公司 | Service processing method, device, computer equipment, storage medium and program product |
Also Published As
Publication number | Publication date |
---|---|
CN115344009A (en) | 2022-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022007572A1 (en) | Robot scheduling method, apparatus and system, device, and storage medium | |
WO2020034879A1 (en) | Task processing method, apparatus, and system | |
AU2017438902B2 (en) | Touch control method and apparatus | |
US20210039917A1 (en) | Elevator control | |
WO2022237323A1 (en) | Scheduling system and method for robot, robot, and customization method | |
CN111861609B (en) | System, method and device for canceling order and electronic equipment | |
CN111213367B (en) | Load control method and device | |
CN112454369A (en) | Robot control method and device | |
JP2017055400A (en) | System and method for providing notification based on location deviation | |
CN112288355A (en) | Robot-based express cabinet distribution method and device, server and storage medium | |
CN105677229A (en) | Mobile terminal and tough control operation method thereof | |
US20230359978A1 (en) | Article transport method, control device, transport vehicle and computer storage medium | |
CN104102367A (en) | Information processing method and device | |
CN113256363B (en) | Information processing method and device and electronic equipment | |
US20110072128A1 (en) | Automated presence ranking for communications networks | |
JP2021010164A (en) | Method and apparatus for processing notification using notification preset | |
CN109408182B (en) | Method and device for skipping preset page, storage medium and terminal | |
CN115936552A (en) | Order service recommendation method, device, equipment and storage medium | |
CN109783261A (en) | The collapse processing method and processing device of terminal applies, electronic equipment, storage medium | |
CN110497406B (en) | Equipment grouping method, device, equipment and medium | |
CN110209910B (en) | Index switching scheduling method and scheduling device | |
CN114301110A (en) | Robot battery power calibration method and device, electronic equipment and storage medium | |
CN112241297A (en) | Data display method, system, computer equipment and readable storage medium | |
CN111221009B (en) | Switching method of positioning chip, mobile terminal and computer storage medium | |
CN104573504B (en) | A kind of method and apparatus for running application in iOS related systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22806293 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22806293 Country of ref document: EP Kind code of ref document: A1 |