WO2020149414A1 - ロボット制御システム及びロボット制御方法 - Google Patents

ロボット制御システム及びロボット制御方法 Download PDF

Info

Publication number
WO2020149414A1
WO2020149414A1 PCT/JP2020/001599 JP2020001599W WO2020149414A1 WO 2020149414 A1 WO2020149414 A1 WO 2020149414A1 JP 2020001599 W JP2020001599 W JP 2020001599W WO 2020149414 A1 WO2020149414 A1 WO 2020149414A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
work
unit
information
support information
Prior art date
Application number
PCT/JP2020/001599
Other languages
English (en)
French (fr)
Inventor
半田 博幸
光司 曽我部
慶太 嶌本
勝 足立
平田 亮吉
Original Assignee
株式会社安川電機
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社安川電機 filed Critical 株式会社安川電機
Priority to EP20741650.4A priority Critical patent/EP3912769A4/en
Priority to CN202080009228.0A priority patent/CN113329850A/zh
Priority to JP2020566511A priority patent/JP7251555B2/ja
Publication of WO2020149414A1 publication Critical patent/WO2020149414A1/ja
Priority to US17/369,965 priority patent/US11931895B2/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39212Select between autonomous or teleoperation control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40153Teleassistance, operator assists, controls autonomous robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40195Tele-operation, computer assisted manual operation

Definitions

  • the present disclosure relates to a robot control system and a robot control method.
  • Patent Document 1 a first stage in which the robot stops in the middle of a reproducing operation based on a work program registered in advance, a second stage in which a direct operation of the robot is permitted, and a third stage in which the robot is guided by the direct operation
  • a robot guidance method which includes a step, a fourth step of prohibiting a direct operation of the robot, and a fifth step of continuously activating a reproducing operation based on a work program.
  • the present disclosure provides a system effective for efficient collaboration between robots and humans.
  • a robot control system stores a teacher storage unit that stores information of a plurality of teachers, and a teacher storage unit that stores support information when the robot needs support information to continue work.
  • a selection unit for selecting any of the plurality of teachers to be used, an environment information transmission unit for transmitting the robot environment information to the teacher selected by the selection unit via the network line, and a teacher selected by the selection unit.
  • a support information receiving unit that receives support information via a network line.
  • a robot control method stores information of a plurality of teachers, and when one of the plurality of teachers is required when support information is required to keep the robot working. It comprises selecting, transmitting the robot environment information to the selected teacher via the network line, and receiving support information from the selected teacher via the network line.
  • the robot control system 1 shown in FIG. 1 is a control system that enables a robot and a teacher to cooperate with each other via a network line.
  • the robot control system 1 controls the robot to perform a predetermined work, and selects one of a plurality of teachers when support information is required for the robot to continue the work. , Send the robot environment information to the selected teacher via the network line, receive the support information from the selected teacher via the network line, and continue the work based on the support information. It is configured to control a robot and to perform.
  • the work to be performed by the robot There is no particular limitation on the work to be performed by the robot. Specific examples of the work to be executed by the robot include working, assembling, and carrying work.
  • the work to be executed by the robot is not limited to the work in the industrial field.
  • the work to be performed by the robot may be an agricultural work such as sowing, harvesting, leaf scraping, and pesticide spraying.
  • the robot control system 1 is interposed between a plurality of robot devices 10 and a plurality of teaching terminals 40.
  • the robot device 10 includes a robot 20 and a robot controller 30.
  • the robot 20 is, for example, a vertical articulated robot, and has a base 21, a tip 22, and an articulated arm 23.
  • the base 21 is installed in the work area.
  • the base 21 may be installed in a vehicle that can move within the work area.
  • the tip 22 holds a working tool. Specific examples of the tool include a gripping hand and various tools.
  • the articulated arm 23 changes the position and posture of the tip portion 22 with respect to the base 21 by using a plurality of actuators (for example, electric actuators) as power sources.
  • a plurality of actuators for example, electric actuators
  • the robot controller 30 controls the robot 20 to operate according to the operation command.
  • the operation command includes, for example, a movement command of the tip portion 22 and a movement instruction of the tool according to the movement of the tip portion 22.
  • the movement command for the distal end portion 22 is a command for changing the position and posture of the distal end portion 22, and includes a plurality of target positions/postures (target position/posture for the distal end portion 22) arranged in time series.
  • the teaching terminal 40 is a terminal used by a teacher, and may be any terminal as long as it can receive and display environment information and input and transmit support information. Specific examples of the teaching terminal 40 include a smartphone, a tablet computer, a personal computer, and the like.
  • the robot control system 1 includes an edge controller 100 and a collaboration controller 200.
  • the edge controller 100 is connected to the robot controller 30 by wire or wirelessly.
  • the edge controller 100 generates an operation command for causing the robot 20 to perform a predetermined work based on the environmental information of the robot 20, and transmits the operation command to the robot controller 30.
  • the edge controller 100 stores a work model that outputs work instruction information of the robot 20 corresponding to the environment information in response to the input of the environment information of the robot 20, the environment information of the robot 20, and the work model.
  • the edge controller 100 When it is determined that the work of the robot 20 based on the work instruction information is possible, the edge controller 100 generates an operation command based on the work instruction information and outputs it to the robot controller 30. When it is determined that the work of the robot 20 based on the work instruction information is impossible, the edge controller 100 generates an operation command based on the support information and outputs it to the robot controller 30.
  • the collaboration controller 200 is connected to the plurality of teaching terminals 40 via the network line 50.
  • the collaboration controller 200 may be connected to the edge controller 100 via a wired or wireless dedicated line, or may be connected to the edge controller 100 via a network line 50.
  • the network line 50 may be a local area network or a wide area network (for example, the Internet).
  • the collaboration controller 200 stores information of a plurality of teachers, selects one of the plurality of teachers in response to a request for support information from the edge controller 100, and teaches terminals of the selected teachers. 40 to the environment information of the robot 20 via the network line 50, to receive the support information based on the environment information from the teaching terminal 40 of the selected teacher via the network line 50, and the received support information Are transmitted to the edge controller 100.
  • specific configurations of the edge controller 100 and the collaboration controller 200 will be exemplified.
  • the edge controller 100 has a functional configuration (hereinafter referred to as “functional module”), a model storage unit 111, an environment information acquisition unit 112, a work instruction derivation unit 113, and a work instruction.
  • the storage unit 114, the reliability derivation unit 115, the work availability determination unit 116, the support request unit 117, the support information reception unit 118, the operation command generation unit 121, and the operation command transmission unit 122 are included.
  • the model storage unit 111 stores a plurality of work models corresponding to the plurality of robots 20.
  • the work model outputs the work instruction information of the robot 20 corresponding to the environment information in response to the input of the environment information of the robot 20.
  • the environment information is information indicating the state of the environment around the robot 20. Specific examples of the environmental information include two-dimensional or three-dimensional image information.
  • the work instruction information includes information necessary for specifying the work content such as a work target in the environment around the robot 20.
  • the work instruction information may include a plurality of numerical values that respectively indicate the degrees of recommendation of the plurality of objects as work targets.
  • the work instruction information may be the above operation instruction.
  • the work model is constructed by machine learning.
  • a specific example of the work model is a neural network that uses the environment information as an input vector and the work instruction information as an output vector.
  • the neural network has an input layer, one or more intermediate layers, and an output layer.
  • the input layer outputs the input vector as it is to the next intermediate layer.
  • the intermediate layer converts the input from the previous layer by the activation function and outputs it to the next layer.
  • the output layer converts the input from the intermediate layer farthest from the input layer by the activation function, and outputs the conversion result as an output vector.
  • the work model may be any work model as long as it outputs work instruction information at least in response to input of environment information, and is not necessarily limited to a neural network.
  • the work model may be a function derived based on statistical analysis or the like.
  • the work model may be configured to output work instruction information including the operation instruction.
  • the work model may include an algorithm for generating a movement command of the tip portion 22 in which a collision between the robot 20 and a peripheral object does not occur by a random trial of simulation.
  • the environment information acquisition unit 112 acquires the environment information of the robot 20 from the robot controller 30.
  • the work instruction derivation unit 113 derives work instruction information for the robot 20 based on the environment information of the robot 20 acquired by the environment information acquisition unit 112 and the work model stored in the model storage unit 111. For example, the work instruction derivation unit 113 inputs the environment information of the robot 20 into the work model, and obtains the work instruction information output by the work model in response to this.
  • the work instruction storage unit 114 stores the work instruction information derived by the work instruction derivation unit 113.
  • the reliability deriving unit 115 derives the reliability of the work instruction information. For example, the reliability deriving unit 115 derives the reliability based on the difference between the recommended degree of the work object and the recommended degree (hereinafter, referred to as “desired object”) and other objects. .. Specifically, the reliability deriving unit 115 trusts as the difference in recommendation degree between the favorite object and another object increases (that is, as the recommendation degree of the favorite object relatively increases). Increase the degree.
  • the reliability derivation unit 115 may derive the reliability based on the operation of the robot 20 according to the operation command. For example, the reliability deriving unit 115 may derive the reliability based on a simulation of the operation of the robot 20 according to the operation command. For example, the reliability deriving unit 115 may lower the reliability as the distance between the robot 20 and the peripheral object at the time when the moving robot 20 and the peripheral object approach each other becomes smaller.
  • the work availability determination unit 116 determines the work availability of the robot 20 based on the work instruction information based on the environment information of the robot 20 acquired by the environment information acquisition unit 112 and the work model stored in the model storage unit 111. For example, the workability determination unit 116 allows (permits) the work of the robot 20 based on the work instruction information when the reliability derived by the reliability deriving unit 115 exceeds a predetermined threshold, and the reliability is concerned. When it is below the threshold value, the work of the robot 20 based on the work instruction information is prohibited (prohibited).
  • the support request unit 117 requests the collaboration controller 200 to transmit the support information when the work availability determination unit 116 determines that the work of the robot 20 based on the work instruction information is prohibited.
  • the support requesting unit 117 transmits the environment information of the robot 20 to the collaboration controller 200 when requesting the transmission of the support information.
  • the support request unit 117 may further transmit the difficulty level of providing the support information to the collaboration controller 200 when requesting the transmission of the support information.
  • the support requesting unit 117 may calculate the difficulty level based on the reliability. For example, the support requesting unit 117 may increase the difficulty level as the reliability level decreases.
  • the support information receiving unit 118 receives the support information transmitted by the collaboration controller 200 in response to the request from the support requesting unit 117.
  • the support information includes information necessary for specifying the work content, like the work instruction information.
  • the support information may include an operation command.
  • the operation command generation unit 121 generates the operation command based on the work instruction information or the support information. For example, the operation command generation unit 121 generates a movement command for the tip 22 and an operation command for a tool according to the movement of the tip 22 so as to execute the work content specified by the work instruction information or the support information. ..
  • the operation instruction generation unit 121 selects the operation instruction based on the work instruction information or the operation instruction based on the support information based on the determination result by the work availability determination unit 116.
  • the motion command transmitting unit 122 transmits the motion command generated by the motion command generating unit 121 to the robot controller 30.
  • the edge controller 100 stores environment information of the robot 20 and work results of the robot 20 as learning data, and updates the work model in the model storage unit 111 by machine learning based on the accumulated learning data. It may be configured to further execute and. Further, the edge controller 100 may be configured such that, when the work model of any one of the robots 20 is updated, the updated content of the work model is also reflected in the work models of the other robots 20.
  • the edge controller 100 further includes, as functional modules, a performance information acquisition unit 123, a learning data storage unit 124, a model update unit 125, an update content reflection unit 126, and a performance information transmission unit 127.
  • the performance information acquisition unit 123 acquires work performance information related to the work result of the robot 20.
  • the work record information includes work instruction information or support information, and success/failure information indicating success or failure of the work performed by the robot 20 that operates according to the work instruction information or support information.
  • the success/failure information include information indicating the presence/absence of an alarm in the robot controller 30.
  • the work performance information may further include efficiency information indicating the efficiency of work performed by the robot 20 that operates according to the work instruction information or the support information.
  • efficiency information include the working time of the robot 20 measured by the robot controller 30.
  • the performance information acquisition unit 123 acquires work instruction information or support information from the operation command generation unit 121, and acquires success/failure information and efficiency information from the robot controller 30.
  • the learning data storage unit 124 stores the environment information of the robot 20 and the work record information of the robot 20 corresponding to the environment information as learning data. For example, the learning data storage unit 124 acquires the environment information of the robot 20 from the environment information acquisition unit 112, and acquires the work performance information of the robot 20 corresponding to the environment information from the performance information acquisition unit 123 and stores it.
  • the learning data storage unit 124 may store learning data for each robot 20. In other words, the learning data storage unit 124 may store a plurality of learning data sets (a set of learning data) respectively corresponding to the plurality of robots 20.
  • the model updating unit 125 updates the work model in the model storage unit 111 by machine learning (for example, deep learning) based on the learning data accumulated by the learning data accumulating unit 124. For example, the model updating unit 125 sets the parameters of the work model (for example, the weight of the activation function) based on the learning data so as to increase the adequacy of the work instruction information output by the work model in response to the input of the environment information. Update. More specifically, the model update unit 125 updates the parameters of the work model by repeatedly applying the environment information of the robot 20 and the work record of the robot 20 corresponding to the environment information to the work model.
  • the update content reflecting unit 126 reflects the update contents of the work model in the work model of any of the other robots 20.
  • the update content reflecting unit 126 updates the work model of another robot 20 that performs the same type of work as the robot 20 to the updated work model.
  • the performance information transmission unit 127 transmits the work performance information acquired by the performance information acquisition unit 123 to the collaboration controller 200.
  • the work record information transmitted by the record information transmitter 127 is used for the evaluation of the teacher as described later.
  • the collaboration controller 200 includes, as functional modules, a teacher storage unit 211, a support request acquisition unit 212, a teaching request unit 213, a selection unit 214, an environment information transmission unit 215, and support information. It has a receiver 216 and a support information transmitter 217.
  • the teacher storage unit 211 stores information on a plurality of teachers.
  • the instructor information includes, for example, instructor identification information and instructor access information.
  • the access information is information indicating a destination of information transmission to the teacher, such as an electronic mail address.
  • the instructor information may include work type information that can be taught by the instructor.
  • the work type that can be taught by the instructor means a work type in which the instructor can determine in what procedure the robot 20 should perform the work.
  • the type of work that the teacher can teach is determined according to the teacher's specialized knowledge or skill. For example, a teacher who has cutting expertise or skills, but not welding expertise or skills, can teach cutting, but not teaching welding.
  • the support request acquisition unit 212 acquires a support information transmission request from the edge controller 100 (support request unit 117).
  • the support information transmission request includes the environmental information of the robot 20.
  • the support information transmission request may further include the degree of difficulty of providing the support information.
  • the teaching request unit 213 requests the plurality of teachers stored in the teacher storage unit 211 to transmit the support information via the network line 50.
  • the case where the support information is necessary means that the robot 20 cannot continue the work without the support information.
  • a specific example of the case where the support information is necessary is a case where the edge controller 100 prohibits the work of the robot 20 based on the work instruction information.
  • the teaching request unit 213 delivers a message requesting support information transmission to the teaching terminals 40 of the plurality of teachers.
  • the selection unit 214 selects any of the plurality of teachers stored in the model storage unit 111 as the sender of the support information.
  • the selection unit 214 may select any of the plurality of teachers based on the work type information that the teacher can teach and the work type of the robot 20. For example, the selection unit 214 may select a teacher who can teach the work type of the robot 20 from the plurality of teachers.
  • the selection unit 214 may select any of the plurality of teachers based on the speed of response to the request from the teaching request unit 213. For example, the selection unit 214 may preferentially select a teacher who responds quickly to the request from the teaching request unit 213. Further, the selection unit 214 may select any of the plurality of teachers by combining a plurality of selection criteria (for example, the selection criteria based on the work type and the selection criteria based on the speed of response).
  • the environment information transmission unit 215 transmits the environment information of the robot 20 to the instructor selected by the selection unit 214 (hereinafter, referred to as “selected instructor”) via the network line 50.
  • the environment information transmission unit 215 transmits the environment information received from the edge controller 100 (support request unit 117) to the teaching terminal 40 of the selected teacher.
  • the teaching terminal 40 of the selected teacher displays the environment information of the robot 20, and transmits the support information input by the selected teacher based on the environment information to the collaboration controller 200.
  • the support information receiving unit 216 receives support information from the selected teacher via the network line 50. For example, the support information receiving unit 216 receives the support information transmitted by the teaching terminal 40 of the selected teacher.
  • the support information transmitting unit 217 transmits the support information received by the support information receiving unit 216 to the edge controller 100.
  • the support information transmitted by the support information transmission unit 217 is received by the support information reception unit 118 described above.
  • the collaboration controller 200 derives the adequacy of the support information based on the existing data before the work of the robot 20 based on the support information, and determines whether or not the support information can be adopted based on the adequacy. May be further configured to perform.
  • the collaboration controller 200 further includes a pre-evaluation unit 221 and a supportability determination unit 222 as functional modules.
  • the prior evaluation unit 221 derives the adequacy of the support information (hereinafter, referred to as “advance adequacy”) based on existing data before the robot 20 works based on the support information.
  • the existing data include the support information itself which is the target of derivation of the prior adequacy, and the past record of the support information transmitted by the selected teacher (for example, the posterior adequacy described later).
  • the prior evaluation unit 221 derives the prior adequacy based on whether or not the work target object indicated by the support information is an appropriate object as the work target. For example, when an object that is fixed in a space and is clearly untransportable is an object to be transported, the preliminary evaluation unit 221 lowers the preliminary suitability.
  • the support availability determination unit 222 determines whether or not to adopt the support information based on the advance adequacy of the support information derived by the advance evaluation unit 221. For example, the support propriety determination unit 222 determines that the support information can be adopted when the advance adequacy of the support information exceeds a predetermined adoption threshold, and the support adequacy of the support information is below the adoption threshold. , The support information cannot be adopted. When the supportability determination unit 222 determines that the support information cannot be adopted, the support information transmission unit 217 is prohibited from transmitting the support information.
  • the collaboration controller 200 derives the adequacy of the support information based on the work result of the robot 20 after the work of the robot 20 based on the support information, and derives the score of the teacher of the support information based on the adequacy. May be further configured to select any of the plurality of teachers based on the score.
  • the collaboration controller 200 further includes, as functional modules, a performance information reception unit 231, an ex-post evaluation unit 232, and a score derivation unit 233.
  • the achievement information receiving unit 231 receives work achievement information indicating the work result of the robot 20 based on the support information from the achievement information transmitting unit 127.
  • the ex-post evaluation unit 232 derives the adequacy of the support information (hereinafter, referred to as “ex post adequacy”) based on the work performance information received by the performance information reception unit 231. For example, the posterior evaluation unit 232 increases the posterior adequacy when the success/failure information indicates the success of the work by the robot 20 as compared to the case where the success/failure information indicates the failure of the work by the robot 20. Further, the posterior evaluation unit 232 increases the posterior adequacy as the work efficiency indicated by the efficiency information increases.
  • the score deriving unit 233 derives the teacher's score of the support information based on the posterior adequacy calculated by the ex-post evaluation unit 232. For example, the score derivation unit 233 raises the teacher's score as the posterior suitability increases.
  • the selecting unit 214 may select any of the plurality of teachers based on the score derived by the score deriving unit 233. For example, the selection unit 214 may preferentially select a teacher with a high score derived by the score derivation unit 233. In this case, the selection unit 214 uses a plurality of teachings based on a combination of a selection criterion based on the height of the score and another selection criterion (for example, the selection criterion based on the work type and the selection criterion based on the response speed). Any one of them may be selected.
  • the collaboration controller 200 stores the teaching record value, which is a reference for calculating the reward amount for the teacher for the transmission of the support information, and the teacher in association with each other, and the work of the robot 20 based on the support information is executed. Each time, the teaching result value of the teacher of the support information may be updated according to the work. Further, the collaboration controller 200 stores the usage record value, which is a calculation standard of the charge amount according to the usage of the support information, and the robot 20 in association with each other, and executes the work of the robot 20 based on the support information. It may be configured to further execute, every time, updating the usage record value of the robot 20 according to the work. For example, the collaboration controller 200 further includes, as functional modules, a teaching record storage unit 241, a teaching record update unit 242, a usage record storage unit 243, and a usage record update unit 244.
  • the teaching record storage unit 241 stores the teaching record value and the teacher in association with each other.
  • the teaching achievement value is a value indicating the transmission achievement of the support information used for causing the robot 20 to continue the work.
  • the teaching actual value may include the evaluation result of the posterior adequacy by the posterior evaluation unit 232, or may include the cumulative value of the posterior adequacy.
  • the score deriving unit 233 may refer to the teaching record storage unit 241 and derive the teacher's score based on the teaching record value.
  • the score derivation unit 233 may use the teaching actual value itself as the teacher's score, or may perform a predetermined calculation on the teaching actual value to calculate the teacher's score.
  • the teaching result update unit 242 updates the teaching result value of the teacher of the support information according to the work. For example, the teaching result update unit 242, every time the posterior evaluation unit 232 derives the posterior adequacy of the support information, sets a value (hereinafter, referred to as an “added value”) that correlates to the posterior adequacy as the teacher of the support information. Is added to the teaching actual value of. Therefore, each time the work of the robot 20 based on the support information is executed, the teaching actual value of the teacher of the support information increases, and the increase amount increases as the posterior adequacy increases.
  • the teaching result update unit 242 may change the addition value to the teaching result value of the teacher of the support information based on the difficulty level of providing the support information. For example, the teaching record update unit 242 may increase the added value as the difficulty level of providing the support information increases.
  • the usage record storage unit 243 stores the usage record value and the robot 20 in association with each other.
  • the usage record value may include the evaluation result of the adequacy by the ex-post evaluation unit 232.
  • the usage record updating unit 244 updates the usage record value of the robot 20 each time the work of the robot 20 based on the support information is executed according to the work. For example, the usage record updating unit 244, each time the posterior evaluation unit 232 derives the posterior adequacy of the support information, the usage record value of the robot 20 that uses the support information, and a value that correlates to the posterior adequacy (hereinafter, "Additional value”) is added.
  • the usage record updating unit 244 may change the addition value to the usage record value of the robot 20 that uses the support information, based on the difficulty level of providing the support information. For example, the usage record updating unit 244 may increase the added value as the difficulty level of providing the support information increases.
  • FIG. 4 is a block diagram illustrating the hardware configuration of the edge controller 100 and the collaboration controller 200.
  • the edge controller 100 includes a circuit 190.
  • the circuit 190 includes at least one processor 191, a memory 192, a storage 193, and a communication port 194.
  • the storage 193 is a storage medium such as at least one hard disk or a non-volatile memory.
  • the storage 193 stores a work model that outputs work instruction information of the robot 20 corresponding to the environment information in response to the input of the environment information of the robot 20, and based on the environment information and the work model of the robot 20.
  • a program is stored that causes the edge controller 100 to request support information when it is determined that work is impossible.
  • the storage 193 stores a program for configuring the functional module of the edge controller 100 described above.
  • the memory 192 temporarily stores the program loaded from the storage 193, the calculation result by the processor 191, and the like.
  • the processor 191 configures each functional module of the edge controller 100 by executing the above program in cooperation with the memory 192.
  • the communication port 194 performs network communication with the robot controller 30 and the collaboration controller 200 in response to a command from the processor 191.
  • the collaboration controller 200 includes a circuit 290.
  • the circuit 290 includes at least one processor 291, memory 292, storage 293, and communication port 294.
  • the storage 293 is a storage medium such as at least one hard disk or a non-volatile memory.
  • the storage 293 stores information of a plurality of teachers, selects one of the plurality of teachers in response to a request for support information from the edge controller 100, and stores the teaching terminal 40 of the selected teacher.
  • the environment information of the robot 20 is transmitted via the network line 50, the support information based on the environment information is received from the teaching terminal 40 of the selected teacher via the network line 50, and the received support information is edged.
  • a program that causes the collaboration controller 200 to execute transmission to the controller 100 is stored.
  • the storage 293 stores a program for configuring the functional modules of the collaboration controller 200 described above.
  • the memory 292 temporarily stores the program loaded from the storage 293, the calculation result by the processor 291, and the like.
  • the processor 291 constitutes each functional module of the collaboration controller 200 by executing the above program in cooperation with the memory 292.
  • the communication port 294 performs network communication with the teaching terminal 40 and the edge controller 100 in response to a command from the processor 291.
  • the storage 293 does not necessarily have to be built in the collaboration controller 200.
  • the storage 293 may be an external storage (for example, cloud) connected to the communication port 294 via the network line 50.
  • the control procedure includes an operation command output procedure executed by the edge controller 100, a work model update procedure executed by the edge controller 100, and support information reception procedure executed by the collaboration controller 200.
  • the control procedure includes an operation command output procedure executed by the edge controller 100, a work model update procedure executed by the edge controller 100, and support information reception procedure executed by the collaboration controller 200.
  • each procedure will be illustrated in detail.
  • the output procedure of the operation command includes deriving work instruction information to the robot 20 based on the environment information of the robot 20 and the work model, and work instruction information based on the environment information of the robot 20 and the work model. Based on the work instruction information, and when it is determined that the robot 20 can work based on the work instruction information, generate an operation command based on the work instruction information and output the operation command to the robot controller 30. And determining that the work of the robot 20 based on the work instruction information is impossible, requesting the support information, generating an operation command based on the support information, and outputting the operation command to the robot controller 30.
  • FIG. 5 is a flowchart illustrating an output procedure of operation commands executed by the edge controller 100 for one robot 20.
  • the edge controller 100 first executes steps S01 and S02.
  • the environment information acquisition unit 112 acquires the environment information of the robot 20 from the robot controller 30.
  • the work instruction derivation unit 113 derives work instruction information for the robot 20 based on the environment information of the robot 20 acquired by the environment information acquisition unit 112 and the work model stored in the model storage unit 111.
  • the work instruction derivation unit 113 inputs the environment information of the robot 20 into the work model, obtains the work instruction information output from the work model in accordance with this, and writes the work instruction information in the work instruction storage unit 114.
  • step S03 the reliability deriving unit 115 derives the reliability of the work instruction information.
  • step S04 the work availability determination unit 116 determines whether the work availability of the robot 20 based on the work instruction information is based on the environment information of the robot 20 acquired by the environment information acquisition unit 112 and the work model stored in the model storage unit 111. To judge. For example, the work availability determination unit 116 determines that the work of the robot 20 based on the work instruction information is possible when the reliability derived by the reliability deriving unit 115 exceeds a predetermined threshold, and the reliability is the relevant value. When it is below the threshold value, it is determined that the work of the robot 20 based on the work instruction information is impossible.
  • step S05 the motion command generator 121 generates a motion command for the robot 20 based on the work command information.
  • the operation command generation unit 121 generates a movement command for the tip portion 22 and a tool operation instruction according to the movement of the tip portion 22 so as to execute the work content specified by the work instruction information.
  • step S04 the edge controller 100 executes steps S06, S07, and S08.
  • step S06 the support requesting unit 117 requests the collaboration controller 200 to send support information.
  • the support requesting unit 117 also transmits environment information of the robot 20 to the teacher to refer to the collaboration controller 200.
  • step S07 the support information receiving unit 118 receives the support information transmitted by the collaboration controller 200 in response to the request from the support requesting unit 117.
  • step S08 the motion command generation unit 121 generates a motion command for the robot 20 based on the support information.
  • the operation command generation unit 121 generates a movement command for the tip portion 22 and a tool operation instruction corresponding to the movement of the tip portion 22 so as to execute the work content specified by the support information.
  • step S09 the motion command transmission unit 122 outputs the motion command generated by the motion command generation unit 121 to the robot controller 30.
  • the robot controller 30 controls the robot 20 according to the operation command output from the operation command transmission unit 122.
  • the work based on the work instruction information or the support information is executed by the robot 20. This completes the operation command output procedure.
  • the edge controller 100 repeats the above procedure for each of the plurality of robots 20.
  • the procedure of updating the work model is to accumulate the environment information of the robot 20 and the work result of the robot 20 as learning data, and update the work model of the model storage unit 111 by machine learning based on the accumulated learning data. And that the updated contents of the work model of the robot 20 are reflected in the work models of other robots 20.
  • FIG. 6 is a flowchart illustrating an update procedure executed by the edge controller 100 for the work model of one robot 20.
  • the edge controller 100 first executes steps S11, S12, and S13.
  • step S11 the performance information acquisition unit 123 waits for the operation command generation unit 121 to generate the operation command.
  • step S12 the performance information acquisition unit 123 acquires work performance information related to the work result of the robot 20 according to the operation command.
  • the performance information acquisition unit 123 acquires work instruction information or support information from the operation command generation unit 121, and acquires the success/failure information, efficiency information, and the like from the robot controller 30.
  • the performance information transmission unit 127 transmits the work performance information acquired by the performance information acquisition unit 123 to the collaboration controller 200.
  • the edge controller 100 executes steps S14 and S15.
  • the learning data storage unit 124 stores the environment information of the robot 20, the work record information of the robot 20 corresponding to the environment information, and the learning data.
  • the learning data accumulating unit 124 acquires the environment information of the robot 20 from the environment information acquiring unit 112, acquires the work record information of the robot 20 corresponding to the environment information from the record information acquiring unit 123, and acquires them as the learning data. Accumulate as.
  • the model updating unit 125 confirms whether or not the number of pieces of data accumulated by the learning data accumulating unit 124 (the number of environment information and work record information of the robot 20) exceeds a predetermined learnable number.
  • the number of data here is the number of data accumulated after the latest work model (work model stored in the model storage unit 111) is obtained.
  • step S15 If it is determined in step S15 that the number of pieces of data does not exceed the predetermined learnable number, the edge controller 100 returns the process to step S11.
  • the edge controller 100 executes steps S16 and S17.
  • step S16 the model updating unit 125 updates the work model in the model storage unit 111 by machine learning based on the learning data accumulated by the learning data accumulating unit 124.
  • step S17 the update content reflecting unit 126 reflects the update content of the work model of the robot 20 in step S16 in the work model of any other robot 20.
  • the edge controller 100 repeats the above procedure for each work model of the plurality of robots 20.
  • the procedure for receiving the support information is to select one of the plurality of teachers in response to a request for the support information from the edge controller 100 and to connect the robot 20 to the teaching terminal 40 of the selected teacher via the network line 50.
  • receiving the support information based on the environment information from the teaching terminal 40 of the selected teacher via the network line 50, and transmitting the received support information to the edge controller 100.
  • the collaboration controller 200 executes steps S21, S22, S23 and S24.
  • step S21 the support request acquisition unit 212 acquires the support information transmission request from the support request unit 117.
  • step S22 the teaching request unit 213 extracts a teacher who can teach the work type of the robot 20 targeted by the support information from the plurality of teachers stored in the teacher storage unit 211.
  • the teacher extracted by the teaching request unit 213 will be referred to as a “candidate teacher”.
  • the teaching request unit 213 requests the candidate teachers extracted in step S22 to transmit the support information via the network line 50.
  • step S24 the score derivation unit 233 waits for a response from the candidate teacher.
  • the score derivation unit 233 may wait for responses from a plurality of candidate teachers.
  • the collaboration controller 200 executes steps S25 and S26.
  • step S25 the score derivation unit 233 derives the score of the candidate teacher who has responded to the teaching request, based on the posterior adequacy calculated by the posterior evaluation unit 232.
  • the score deriving unit 233 refers to the teaching record storage unit 241 and derives the score of the candidate teacher based on the teaching record value.
  • step S26 the selection unit 214 selects one of the candidate teachers as the sender of the support information.
  • the selection unit 214 may select any of the plurality of teachers based on the score derived by the score derivation unit 233.
  • the selection unit 214 selects one of a plurality of teachers based on a combination of a selection criterion based on the height of the score and another selection criterion (for example, a selection criterion based on the work type and a selection criterion based on the speed of response). May be selected.
  • the environment information transmission unit 215 transmits the environment information of the robot 20 to the selected teacher (teacher selected by the selection unit 214) via the network line 50.
  • the support information receiving unit 216 receives support information from the selected teacher via the network line 50.
  • step S31 the preliminary evaluation unit 221 derives the preliminary adequacy of the support information based on the existing data.
  • the support availability determination unit 222 determines whether or not to adopt the support information based on the advance adequacy derived by the advance evaluation unit 221. For example, the support availability determination unit 222 determines whether or not the advance adequacy level exceeds a predetermined adoption threshold value.
  • step S32 If it is determined in step S32 that the support information cannot be adopted, the collaboration controller 200 returns the process to step S24. After that, acquisition of support information and determination of adoption/non-adoption based on advance adequacy are repeated until the support/approval determination unit 222 determines that the support information is adoptable.
  • step S32 If it is determined in step S32 that the support information can be adopted, the collaboration controller 200 executes steps S33 and S34.
  • step S33 the support information transmitting unit 217 transmits the support information determined to be adoptable to the edge controller 100.
  • step S34 the performance information receiving unit 231 receives the work performance information indicating the work result of the robot 20 based on the support information from the performance information transmitting unit 127.
  • step S35 the posterior evaluation unit 232 derives the post-post-article adequacy of the support information based on the work performance information received by the performance information receiving unit 231.
  • step S36 the teaching record update unit 242 adds a value correlated with the posterior adequacy of the support information to the teaching record value of the teacher of the support information, and the usage record updating unit 244 causes the posterity adequacy of the support information.
  • a value correlated with is added to the actual usage value of the robot 20 using the support information. This completes the procedure for receiving support information.
  • the collaboration controller 200 repeats the above procedure.
  • the teacher storage unit 211 that stores information about a plurality of teachers and the teacher storage when the robot 20 needs the support information to continue the work.
  • a selection unit 214 for selecting one of the plurality of teachers stored in the unit 211; and an environment information transmission unit 215 for transmitting the environment information of the robot 20 to the teacher selected by the selection unit 214 via the network line 50.
  • a support information receiving unit 216 that receives support information from the teacher selected by the selecting unit 214 via the network line 50.
  • the robot control system 1 it is possible to receive support information from a plurality of teachers via the network line 50. Therefore, even if there is no teacher who is always on standby, the support information can be acquired early and the work of the robot 20 can be continued. Further, since each teacher does not have to stand by near the robot 20 at all times, he/she can perform his/her own work. Therefore, it is effective for efficient cooperation between the robot 20 and a person.
  • the robot control system 1 determines the adequacy of the support information derived by the pre-evaluation unit 221 and the pre-evaluation unit 221 that derives the adequacy of the support information based on the existing data before the work of the robot 20 based on the support information.
  • a support availability determination unit 222 that determines availability of the support information based on the support information may be further provided. In this case, it is possible to improve the reliability of the work of the robot 20 based on the support information by disabling the support information with low appropriateness while receiving the support information widely provided from a plurality of teachers.
  • the robot control system 1 derives the adequacy of the support information based on the work result of the robot 20 after the work of the robot 20 based on the support information, and the adequacy of the support information derived by the ex-post evaluation unit 232.
  • a score deriving unit 233 for deriving a score of the teacher of the support information, and the selecting unit 214 selects one of the plurality of teachers based on the score derived by the score deriving unit 233. You may. In this case, the reliability of the work of the robot 20 based on the support information is improved by giving priority to the teachers who tend to provide highly appropriate support information while receiving support information widely from a plurality of teachers. Can be made.
  • the instructor information stored in the instructor storage unit 211 includes information on work types that can be taught, and the selection unit 214 uses a plurality of teaches based on the information on work types that can be taught and the work types of the robot 20. Any one of them may be selected. In this case, the reliability of the work of the robot 20 based on the support information is further improved by giving a wide range of support information from a plurality of teachers and giving priority to a teacher suitable for the work type targeted by the support information. Can be made.
  • the robot control system 1 further includes a teaching request unit 213 that requests the plurality of teachers stored in the teacher storage unit 211 to transmit the support information via the network line 50 when the support information is required, and the selection is performed.
  • the unit 214 may select any of the plurality of teachers based on the speed of response to the request from the teaching request unit 213. In this case, by giving priority to the teacher who responds quickly, the teacher can be prompted to provide the support information more quickly. Therefore, the work efficiency of the robot 20 can be further improved.
  • the robot control system 1 executes a work of the robot 20 based on the teaching result storage unit 241 that stores the teaching result value, which is a calculation reference of the reward amount for the transmission of the support information, and the teacher in association with each other, and the support information.
  • the teaching record updating unit 242 may be further provided for updating the teaching record value of the teacher of the support information according to the work.
  • the teacher can be more actively provided with the support information by correlating the teaching record with the reward amount. Therefore, the work efficiency of the robot 20 can be further improved.
  • the robot control system 1 includes a usage record storage unit 243 that stores the usage record value, which serves as a calculation reference of the charge amount according to the usage of the support information, and the robot 20, and the work of the robot 20 based on the support information. It may further include a usage record updating unit 244 that updates the usage record value of the robot 20 each time the job is executed. In this case, effective utilization of the support information can be promoted by a reasonable charge according to the usage record.
  • the robot control system 1 includes a model storage unit 111 that stores a work model that outputs work instruction information of the robot 20 corresponding to the environment information in response to input of the environment information of the robot 20, environment information of the robot 20, Based on the work instruction deriving unit 113 that derives work instruction information to the robot 20 based on the work model stored in the model storage unit 111, the environment information of the robot 20, and the work model stored in the model storage unit 111.
  • a work availability determination unit 116 that determines the workability of the robot 20 based on the work instruction information, and requests support information when the work availability determination unit 116 determines that the work of the robot 20 is impossible based on the work instruction information.
  • the support requesting unit 117 may be further provided. In this case, the burden on the teacher can be further reduced by utilizing the autonomous operation of the robot 20 and reducing the situation where the support information is required.
  • the robot control system 1 uses the learning data storage unit 124 that stores environment information of the robot 20 and the work results of the robot 20 as learning data, and machine learning based on the learning data stored by the learning data storage unit 124. It may further include a model updating unit 125 that updates the work model. In this case, the burden on the teacher can be gradually reduced by improving the autonomy of the robot 20 by machine learning.
  • the robot control system 1 includes an update content reflecting unit 126 that, when the model updating unit 125 updates any work model, reflects the update content of the work model on the work model of the other robot 20 of the robot 20. Further, it may be provided. In this case, the autonomy of each robot 20 can be promptly improved by sharing the latest work model.
  • Robot control system 20... Robot, 50... Network line, 111... Model storage unit, 113... Work instruction derivation unit, 116... Work availability determination unit, 117... Support request unit, 124... Learning data storage unit, 125... Model update unit 126...Update content reflection unit 211...Teacher storage unit 213...Teaching request unit 214...Selection unit 215...Environmental information transmission unit 216...Support information reception unit 221...Preliminary evaluation unit 222 ... Support availability determination unit, 232... Ex-post evaluation unit, 233... Score derivation unit, 241... Teaching result storage unit, 242... Teaching result updating unit, 243... Utilization result storing unit, 244... Utilization result updating unit.

Abstract

ロボット制御システム1は、複数の教示者の情報を記憶する教示者記憶部211と、ロボット20に作業を継続させるためにサポート情報が必要である場合に、教示者記憶部211が記憶する複数の教示者のいずれかを選択する選択部214と、選択部214が選択した教示者に、ネットワーク回線50を介してロボット20の環境情報を送信する環境情報送信部215と、選択部214が選択した教示者からネットワーク回線50を介してサポート情報を受信するサポート情報受信部216と、を備える。

Description

ロボット制御システム及びロボット制御方法
 本開示は、ロボット制御システム及びロボット制御方法に関する。
 特許文献1には、ロボットが予め登録された作業プログラムに基づく再生動作の途中で停止する第1段階と、ロボットのダイレクト操作を許可する第2段階と、ダイレクト操作によりロボットを誘導動作させる第3段階と、ロボットのダイレクト操作を禁止する第4段階と、ロボットが作業プログラムに基づく再生動作を継続起動する第5段階からなるロボット誘導方法が開示されている。
特開2006-82185号公報
 本開示は、ロボットと人との効率的な協働に有効なシステムを提供する。
 本開示の一側面に係るロボット制御システムは、複数の教示者の情報を記憶する教示者記憶部と、ロボットに作業を継続させるためにサポート情報が必要である場合に、教示者記憶部が記憶する複数の教示者のいずれかを選択する選択部と、選択部が選択した教示者に、ネットワーク回線を介してロボットの環境情報を送信する環境情報送信部と、選択部が選択した教示者からネットワーク回線を介してサポート情報を受信するサポート情報受信部と、を備える。
 本開示の他の側面に係るロボット制御方法は、複数の教示者の情報を記憶することと、ロボットに作業を継続させるためにサポート情報が必要である場合に、複数の教示者のいずれかを選択することと、選択した教示者に、ネットワーク回線を介してロボットの環境情報を送信することと、選択した教示者からネットワーク回線を介してサポート情報を受信することと、を備える。
 本開示によれば、ロボットと人との効率的な協働に有効なシステムを提供することができる。
ロボット制御システムの全体構成を例示する模式図である。 エッジコントローラの機能的な構成を例示するブロック図である。 コラボレーションコントローラの機能的な構成を例示するブロック図である。 エッジコントローラ及びコラボレーションコントローラのハードウェア構成を例示するブロック図である。 動作指令の出力手順を例示するフローチャートである。 作業モデルの更新手順を例示するフローチャートである。 サポート情報の受信手順を例示するフローチャートである。
 以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
〔ロボット制御システム〕
 図1に示すロボット制御システム1は、ネットワーク回線を介したロボットと教示者との協働を可能にする制御システムである。ロボット制御システム1は、所定の作業を実行させるようにロボットを制御することと、ロボットに作業を継続させるためにサポート情報が必要である場合に、複数の教示者のいずれかを選択することと、選択した教示者に、ネットワーク回線を介してロボットの環境情報を送信することと、選択した教示者からネットワーク回線を介してサポート情報を受信することと、サポート情報に基づいて作業を継続させるようにロボットを制御することと、を実行するように構成されている。ロボットに実行させる作業に特に制限はない。ロボットに実行させる作業の具体例としては、加工、組み立て、搬送作業等が挙げられる。ロボットに実行させる作業は、工業分野における作業に限られない。例えばロボットに実行させる作業は、種まき、収穫、葉掻き及び農薬散布等の農作業であってもよい。
 例えばロボット制御システム1は、複数のロボット装置10と、複数の教示端末40との間に介在する。ロボット装置10は、ロボット20と、ロボットコントローラ30とを有する。ロボット20は、例えば垂直多関節ロボットであり、基台21と、先端部22と、多関節アーム23とを有する。基台21は、作業エリアに設置される。基台21は、作業エリア内を移動可能な車両に設置されていてもよい。先端部22は、作業用のツールを保持する。ツールの具体例としては、把持用のハンド及び各種工具等が挙げられる。多関節アーム23は、複数のアクチュエータ(例えば電動アクチュエータ)を動力源として基台21に対する先端部22の位置及び姿勢を変更する。
 ロボットコントローラ30は、動作指令に従って動作させるようにロボット20を制御する。動作指令は、例えば先端部22の移動指令と、先端部22の移動に応じたツールの動作指令とを含む。先端部22の移動指令は、先端部22の位置及び姿勢の変更指令であり、時系列に並ぶ複数の目標位置・姿勢(先端部22の目標位置・姿勢)を含む。教示端末40は、教示者が用いる端末であり、環境情報の受信及び表示と、サポート情報の入力及び送信が可能であればいかなる端末であってもよい。教示端末40の具体例としては、スマートフォン、タブレットコンピュータ、及びパーソナルコンピュータ等が挙げられる。
 例えばロボット制御システム1は、エッジコントローラ100と、コラボレーションコントローラ200とを備える。エッジコントローラ100は、有線又は無線によりロボットコントローラ30に接続されている。エッジコントローラ100は、ロボット20の環境情報に基づいて、ロボット20に所定の作業を実行させるための動作指令を生成し、ロボットコントローラ30に送信する。例えばエッジコントローラ100は、ロボット20の環境情報の入力に応じて、当該環境情報に対応したロボット20の作業指示情報を出力する作業モデルを記憶することと、ロボット20の環境情報と、作業モデルとに基づいてロボット20への作業指示情報を導出することと、ロボット20の環境情報と、作業モデルとに基づいて作業指示情報に基づくロボット20の作業可否を判定することと、作業指示情報に基づくロボット20の作業が不可であると判定した場合にサポート情報を要求することとを実行するように構成されている。
 作業指示情報に基づくロボット20の作業が可であると判定した場合、エッジコントローラ100は作業指示情報に基づく動作指令を生成してロボットコントローラ30に出力する。作業指示情報に基づくロボット20の作業が不可であると判定した場合、エッジコントローラ100はサポート情報に基づく動作指令を生成してロボットコントローラ30に出力する。
 コラボレーションコントローラ200は、ネットワーク回線50を介して複数の教示端末40と接続されている。コラボレーションコントローラ200は、有線又は無線の専用回線を介してエッジコントローラ100と接続されていてもよいし、ネットワーク回線50を介してエッジコントローラ100と接続されていてもよい。ネットワーク回線50は、ローカルエリアネットワークであってもよいし、ワイドエリアネットワーク(例えばインターネット)であってもよい。
 コラボレーションコントローラ200は、複数の教示者の情報を記憶することと、エッジコントローラ100からのサポート情報の要求に応じて、複数の教示者のいずれかを選択することと、選択した教示者の教示端末40にネットワーク回線50を介してロボット20の環境情報を送信することと、選択した教示者の教示端末40からネットワーク回線50を介して環境情報に基づくサポート情報を受信することと、受信したサポート情報をエッジコントローラ100に送信することとを実行するように構成されている。以下、エッジコントローラ100及びコラボレーションコントローラ200の具体的な構成を例示する。
(エッジコントローラ)
 図2に示すように、エッジコントローラ100は、機能上の構成(以下、「機能モジュール」という。)として、モデル記憶部111と、環境情報取得部112と、作業指示導出部113と、作業指示記憶部114と、信頼度導出部115と、作業可否判定部116と、サポート要求部117と、サポート情報受信部118と、動作指令生成部121と、動作指令送信部122とを有する。
 モデル記憶部111は、複数のロボット20にそれぞれ対応する複数の上記作業モデルを記憶する。上述したように、作業モデルは、ロボット20の環境情報の入力に応じて、当該環境情報に対応したロボット20の作業指示情報を出力する。環境情報は、ロボット20の周辺環境の状態を示す情報である。環境情報の具体例としては、二次元又は三次元の画像情報等が挙げられる。作業指示情報は、ロボット20の周辺環境における作業対象物等、作業内容の特定に必要な情報を含む。ロボット20の周辺環境に、作業対象となり得る複数の物体が存在している場合、作業指示情報は、複数の物体の作業対象物としての推奨度をそれぞれ示す複数の数値を含んでいてもよい。作業指示情報は、上記動作指令であってもよい。
 作業モデルは、機械学習により構築される。作業モデルの具体例としては、上記環境情報を入力ベクトルとし、上記作業指示情報を出力ベクトルとするニューラルネットワークが挙げられる。ニューラルネットワークは、入力層と、一層又は複数層の中間層と、出力層とを有する。入力層は、入力ベクトルをそのまま次の中間層に出力する。中間層は、一つ前の層からの入力を活性化関数により変換して次の層に出力する。出力層は、入力層から最も遠い中間層からからの入力を活性化関数により変換し、変換結果を出力ベクトルとして出力する。作業モデルは、少なくとも環境情報の入力に応じて作業指示情報を出力する限りいかなるものであってもよく、必ずしもニューラルネットワークに限られない。例えば作業モデルは統計的解析等に基づき導出された関数であってもよい。
 作業モデルは、上記動作指令を含む作業指示情報を出力するように構成されていてもよい。この場合、作業モデルは、シミュレーションのランダム試行により、ロボット20と周辺物体との衝突が生じない先端部22の移動指令を生成するアルゴリズムを含んでもよい。
 環境情報取得部112は、ロボット20の環境情報をロボットコントローラ30から取得する。作業指示導出部113は、環境情報取得部112が取得したロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいてロボット20への作業指示情報を導出する。例えば作業指示導出部113は、ロボット20の環境情報を作業モデルに入力し、これに応じて作業モデルが出力する作業指示情報を得る。作業指示記憶部114は、作業指示導出部113が導出した作業指示情報を記憶する。
 信頼度導出部115は、作業指示情報の信頼度を導出する。例えば信頼度導出部115は、上記作業対象物としての推奨度が最高である物体(以下、「本命物体」という。)と、他の物体との推奨度の差に基づいて信頼度を導出する。具体的に、信頼度導出部115は、本命物体と、他の物体との推奨度の差が大きくなるのに応じて(すなわち本命物体の推奨度が相対的に高くなるのに応じて)信頼度を高くする。
 作業指示情報が上記動作指令である場合、信頼度導出部115は、動作指令に従ったロボット20の動作に更に基づいて信頼度を導出してもよい。例えば信頼度導出部115は、動作指令に従ったロボット20の動作のシミュレーションに基づいて信頼度を導出してもよい。例えば信頼度導出部115は、動作中のロボット20と周辺物体とが最接近する時点におけるロボット20と周辺物体との間隔が小さくなるのに応じて信頼度を低くしてもよい。
 作業可否判定部116は、環境情報取得部112が取得したロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいて、作業指示情報に基づくロボット20の作業可否を判定する。例えば作業可否判定部116は、信頼度導出部115が導出する信頼度が所定の閾値を超えている場合には作業指示情報に基づくロボット20の作業を可とし(許可し)、信頼度が当該閾値を下回っている場合には作業指示情報に基づくロボット20の作業を不可とする(禁止する)。
 サポート要求部117は、作業可否判定部116により作業指示情報に基づくロボット20の作業が不可とされた場合に、コラボレーションコントローラ200にサポート情報の送信を要求する。サポート要求部117は、サポート情報の送信の要求に際して、ロボット20の環境情報をコラボレーションコントローラ200に送信する。サポート要求部117は、サポート情報の送信の要求に際して、更にサポート情報の提供の難易度をコラボレーションコントローラ200に送信してもよい。この場合、サポート要求部117は、信頼度に基づいて難易度を算出してもよい。例えばサポート要求部117は、信頼度が低くなるほど難易度を高くしてもよい。
 サポート情報受信部118は、サポート要求部117からの要求に応じてコラボレーションコントローラ200が送信したサポート情報を受信する。例えばサポート情報は、作業指示情報と同様に、作業内容の特定に必要な情報を含む。サポート情報が動作指令を含んでいてもよい。
 動作指令生成部121は、作業指示情報又はサポート情報に基づいて上記動作指令を生成する。例えば動作指令生成部121は、作業指示情報又はサポート情報により特定される作業内容を実行させるように、先端部22の移動指令と、先端部22の移動に応じたツールの動作指令とを生成する。作業指示情報及びサポート情報が動作指令を含む場合、動作指令生成部121は、作業可否判定部116による判定結果に基づいて、作業指示情報に基づく動作指令又はサポート情報に基づく動作指令を選択する。動作指令送信部122は、動作指令生成部121が生成した動作指令をロボットコントローラ30に送信する。
 エッジコントローラ100は、ロボット20の環境情報と、ロボット20の作業結果とを学習用データとして蓄積することと、蓄積した学習用データに基づく機械学習により、モデル記憶部111の作業モデルを更新することとを更に実行するように構成されていてもよい。また、エッジコントローラ100は、いずれかのロボット20の作業モデルを更新した場合に、当該作業モデルの更新内容を他のロボット20の作業モデルにも反映させるように構成されていてもよい。例えばエッジコントローラ100は、機能モジュールとして、実績情報取得部123と、学習データ蓄積部124と、モデル更新部125と、更新内容反映部126と、実績情報送信部127とを更に有する。
 実績情報取得部123は、ロボット20の作業結果に関する作業実績情報を取得する。例えば作業実績情報は、作業指示情報又はサポート情報と、作業指示情報又はサポート情報に応じて動作したロボット20による作業の成否を示す成否情報とを含む。成否情報の具体例としては、ロボットコントローラ30におけるアラームの有無を示す情報等が挙げられる。
 作業実績情報は、作業指示情報又はサポート情報に応じて動作したロボット20による作業の効率を示す効率情報を更に含んでもよい。効率情報の具体例としては、ロボットコントローラ30において計測されたロボット20の作業時間等が挙げられる。例えば実績情報取得部123は、作業指示情報又はサポート情報を動作指令生成部121から取得し、成否情報及び効率情報をロボットコントローラ30から取得する。
 学習データ蓄積部124は、ロボット20の環境情報と、当該環境情報に応じたロボット20の作業実績情報とを学習用データとして蓄積する。例えば学習データ蓄積部124は、ロボット20の環境情報を環境情報取得部112から取得し、当該環境情報に応じたロボット20の作業実績情報を実績情報取得部123から取得して蓄積する。学習データ蓄積部124は、ロボット20ごとに学習用データを蓄積してもよい。換言すると、学習データ蓄積部124は、複数のロボット20にそれぞれ対応する複数の学習用データセット(学習用データの集合)を蓄積してもよい。
 モデル更新部125は、学習データ蓄積部124が蓄積した学習用データに基づく機械学習(例えばディープラーニング)により、モデル記憶部111の作業モデルを更新する。例えばモデル更新部125は、環境情報の入力に応じて作業モデルが出力する作業指示情報の適正度を高めるように、学習用データに基づいて作業モデルのパラメータ(例えば上記活性化関数の重み)を更新する。より具体的に、モデル更新部125は、ロボット20の環境情報と、当該環境情報に応じたロボット20の作業実績とを作業モデルに繰り返しあてはめることで、作業モデルのパラメータを更新する。
 更新内容反映部126は、モデル更新部125がいずれかのロボット20の作業モデルを更新した場合に、当該作業モデルの更新内容を他のいずれかのロボット20の作業モデルにも反映させる。例えば更新内容反映部126は、モデル更新部125がいずれかのロボット20の作業モデルを更新した場合に、当該ロボット20と同種の作業を行う他のロボット20の作業モデルを、更新された作業モデルで上書きする。実績情報送信部127は、実績情報取得部123が取得した作業実績情報をコラボレーションコントローラ200に送信する。実績情報送信部127が送信する作業実績情報は、後述するように教示者の評価に用いられる。
(コラボレーションコントローラ)
 図3に示すように、コラボレーションコントローラ200は、機能モジュールとして、教示者記憶部211と、サポート要求取得部212と、教示要求部213と、選択部214と、環境情報送信部215と、サポート情報受信部216と、サポート情報送信部217とを有する。
 教示者記憶部211は、複数の教示者の情報を記憶する。教示者の情報は、例えば教示者の識別情報と、教示者へのアクセス情報とを含む。アクセス情報は、例えば電子メールアドレス等、教示者への情報送信先を示す情報である。教示者の情報は、当該教示者が教示可能な作業種別の情報を含んでもよい。教示者が教示可能な作業種別とは、ロボット20にいかなる手順で作業を遂行させるべきかを当該教示者が判断し得る作業種別を意味する。教示者が教示可能な作業種別は、教示者の専門知識又は技能等に応じて定まる。例えば切削加工の専門知識又は技能を有するが、溶接の専門知識又は技能を有しない教示者によれば、切削加工の教示が可能であるが、溶接の教示は不可能である。
 サポート要求取得部212は、エッジコントローラ100(サポート要求部117)からのサポート情報の送信要求を取得する。上述のように、サポート情報の送信要求は、ロボット20の環境情報を含む。サポート情報の送信要求は、サポート情報の提供の難易度を更に含んでいてもよい。教示要求部213は、サポート情報が必要である場合に、教示者記憶部211が記憶する複数の教示者にネットワーク回線50を介してサポート情報の送信を要求する。サポート情報が必要である場合とは、サポート情報がなければロボット20に作業を継続させられない場合を意味する。サポート情報が必要である場合の具体例としては、エッジコントローラ100において上記作業指示情報に基づくロボット20の作業が不可とされる場合が挙げられる。例えば教示要求部213は、サポート要求取得部212がサポート情報の送信要求を取得した場合に、サポート情報の送信を要求するメッセージを上記複数の教示者の教示端末40に配信する。
 選択部214は、モデル記憶部111が記憶する複数の教示者のいずれかを、サポート情報の送信者として選択する。選択部214は、教示者が教示可能な作業種別の情報と、ロボット20の作業種別とに基づいて複数の教示者のいずれかを選択してもよい。例えば選択部214は、上記複数の教示者から、ロボット20の作業種別を教示可能な教示者を選択してもよい。選択部214は、教示要求部213からの要求への応答の速さに基づいて複数の教示者のいずれかを選択してもよい。例えば選択部214は、教示要求部213からの要求への応答が速い教示者を優先して選択してもよい。また、選択部214は、複数の選択基準(例えば上記作業種別に基づく選択基準及び応答の速さに基づく選択基準)の組み合わせにより複数の教示者のいずれかを選択してもよい。
 環境情報送信部215は選択部214が選択した教示者(以下、「被選択教示者」という。)に、ネットワーク回線50を介してロボット20の環境情報を送信する。例えば環境情報送信部215は、エッジコントローラ100(サポート要求部117)から受信した環境情報を、被選択教示者の教示端末40に送信する。被選択教示者の教示端末40は、ロボット20の環境情報を表示し、当該環境情報に基づいて被選択教示者が入力したサポート情報をコラボレーションコントローラ200に送信する。
 サポート情報受信部216は、被選択教示者からネットワーク回線50を介してサポート情報を受信する。例えばサポート情報受信部216は、被選択教示者の教示端末40が送信したサポート情報を受信する。サポート情報送信部217は、サポート情報受信部216が受信したサポート情報をエッジコントローラ100に送信する。サポート情報送信部217が送信したサポート情報は、上述したサポート情報受信部118により受信される。
 コラボレーションコントローラ200は、サポート情報に基づくロボット20の作業前に、既存のデータに基づいてサポート情報の適正度を導出することと、当該適正度に基づいて当該サポート情報の採用可否を判定することとを更に実行するように構成されていてもよい。例えばコラボレーションコントローラ200は、機能モジュールとして、事前評価部221とサポート可否判定部222とを更に有する。
 事前評価部221は、サポート情報に基づくロボット20の作業前に、既存のデータに基づいてサポート情報の適正度(以下、「事前適正度」という。)を導出する。既存のデータの具体例としては、事前適正度の導出対象となるサポート情報自体、及び被選択教示者による過去のサポート情報の送信実績(例えば後述の事後適正度)等が挙げられる。例えば事前評価部221は、サポート情報が示す作業対象物が、作業対象として適切な物体であるか否か等に基づいて事前適正度を導出する。例えば空間に固定されていて明らかに搬送不可能な物体が搬送の作業対象物とされている場合、事前評価部221は事前適正度を低くする。
 サポート可否判定部222は、事前評価部221が導出したサポート情報の事前適正度に基づいて、当該サポート情報の採用可否を判定する。例えばサポート可否判定部222は、サポート情報の事前適正度が所定の採用閾値を超えている場合に、当該サポート情報を採用可とし、サポート情報の事前適正度が当該採用閾値を下回っている場合に、当該サポート情報を採用不可とする。サポート可否判定部222が、サポート情報を採用不可とした場合、サポート情報送信部217による当該サポート情報の送信は禁止される。
 コラボレーションコントローラ200は、サポート情報に基づくロボット20の作業後に、当該ロボット20の作業結果に基づいてサポート情報の適正度を導出することと、当該適正度に基づいてサポート情報の教示者のスコアを導出することとを更に実行し、スコアに基づいて複数の教示者のいずれかを選択するように構成されていてもよい。例えばコラボレーションコントローラ200は、機能モジュールとして、実績情報受信部231と、事後評価部232と、スコア導出部233とを更に有する。
 実績情報受信部231は、サポート情報に基づくロボット20の作業結果を示す作業実績情報を上記実績情報送信部127から受信する。事後評価部232は、実績情報受信部231が受信した作業実績情報に基づいてサポート情報の適正度(以下、「事後適正度」という。)を導出する。例えば事後評価部232は、上記成否情報がロボット20による作業の成功を示している場合に、成否情報がロボット20による作業の失敗を示している場合に比較して事後適正度を高くする。また、事後評価部232は、上記効率情報により示される作業効率が高くなるのに応じて事後適正度を高くする。
 スコア導出部233は、事後評価部232が導出した事後適正度に基づいて、当該サポート情報の教示者のスコアを導出する。例えばスコア導出部233は、事後適正度が高くなるのに応じて教示者のスコアを高くする。
 選択部214は、スコア導出部233が導出したスコアに基づいて複数の教示者のいずれかを選択してもよい。例えば選択部214は、スコア導出部233が導出したスコアの高い教示者を優先して選択してもよい。この場合、選択部214は、スコアの高さに基づく選択基準と、他の選択基準(例えば上記作業種別に基づく選択基準及び応答の速さに基づく選択基準)との組み合わせに基づいて複数の教示者のいずれかを選択してもよい。
 コラボレーションコントローラ200は、サポート情報の送信に対する教示者への報酬額の算出基準となる教示実績値と、教示者とを対応付けて記憶することと、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該サポート情報の教示者の教示実績値を更新することと、を更に実行するように構成されていてもよい。また、コラボレーションコントローラ200は、サポート情報の利用に応じた課金額の算出基準となる利用実績値と、ロボット20とを対応付けて記憶することと、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該ロボット20の利用実績値を更新することと、を更に実行するように構成されていてもよい。例えばコラボレーションコントローラ200は、機能モジュールとして、教示実績記憶部241と、教示実績更新部242と、利用実績記憶部243と、利用実績更新部244とを更に有する。
 教示実績記憶部241は、上記教示実績値と、教示者とを対応付けて記憶する。例えば教示実績値は、ロボット20に作業を継続させるために用いられたサポート情報の送信実績を示す値である。教示実績値は、事後評価部232による事後適正度の評価結果を含んでいてもよいし、事後適正度の累積値を含んでいてもよい。この場合、例えばスコア導出部233は、教示実績記憶部241を参照し、教示実績値に基づいて教示者のスコアを導出してもよい。スコア導出部233は、教示実績値自体を教示者のスコアとしてもよいし、教示実績値に所定の演算を施して教示者のスコアを算出してもよい。
 教示実績更新部242は、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該サポート情報の教示者の教示実績値を更新する。例えば教示実績更新部242は、事後評価部232がサポート情報の事後適正度を導出する度に、当該事後適正度に相関する値(以下、「加算値」という。)を当該サポート情報の教示者の教示実績値に加算する。このため、サポート情報に基づくロボット20の作業が実行される度に当該サポート情報の教示者の教示実績値が増加し、その増加幅は上記事後適正度が高いほど大きくなる。教示実績更新部242は、サポート情報の提供の難易度に基づいて、当該サポート情報の教示者の教示実績値に対する加算値を変化させてもよい。例えば教示実績更新部242は、サポート情報の提供の難易度が高くなるほど加算値を高くしてもよい。
 利用実績記憶部243は、上記利用実績値と、ロボット20とを対応付けて記憶する。利用実績値は、事後評価部232による適正度の評価結果を含んでいてもよい。利用実績更新部244は、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該ロボット20の利用実績値を更新する。例えば利用実績更新部244は、事後評価部232がサポート情報の事後適正度を導出する度に、当該サポート情報を利用したロボット20の利用実績値に、当該事後適正度に相関する値(以下、「加算値」という。)を加算する。このため、サポート情報に基づくロボット20の作業が実行される度に当該ロボット20の利用実績値が増加し、その増加幅は上記事後適正度が高いほど大きくなる。利用実績更新部244は、サポート情報の提供の難易度に基づいて、当該サポート情報を利用したロボット20の利用実績値に対する加算値を変化させてもよい。例えば利用実績更新部244は、サポート情報の提供の難易度が高くなるほど加算値を高くしてもよい。
(エッジコントローラ及びコラボレーションコントローラのハードウェア構成)
 図4は、エッジコントローラ100及びコラボレーションコントローラ200のハードウェア構成を例示するブロック図である。エッジコントローラ100は、回路190を備える。回路190は、少なくとも一つのプロセッサ191と、メモリ192と、ストレージ193と、通信ポート194とを含む。ストレージ193は、例えば少なくとも一つのハードディスク又は不揮発性メモリ等の記憶媒体である。例えばストレージ193は、ロボット20の環境情報の入力に応じて、当該環境情報に対応したロボット20の作業指示情報を出力する作業モデルを記憶することと、ロボット20の環境情報と作業モデルとに基づいてロボット20への作業指示情報を導出することと、ロボット20の環境情報と作業モデルとに基づいて作業指示情報に基づくロボット20の作業可否を判定することと、作業指示情報に基づくロボット20の作業が不可であると判定された場合にサポート情報を要求することとをエッジコントローラ100に実行させるプログラムを記憶している。例えばストレージ193は、上述したエッジコントローラ100の機能モジュールを構成するためのプログラムを記憶している。メモリ192は、ストレージ193からロードしたプログラム及びプロセッサ191による演算結果等を一時的に記憶する。プロセッサ191は、メモリ192と協働して上記プログラムを実行することで、エッジコントローラ100の各機能モジュールを構成する。通信ポート194は、プロセッサ191からの指令に応じ、ロボットコントローラ30及びコラボレーションコントローラ200との間でネットワーク通信を行う。
 コラボレーションコントローラ200は、回路290を備える。回路290は、少なくとも一つのプロセッサ291と、メモリ292と、ストレージ293と、通信ポート294とを含む。ストレージ293は、例えば少なくとも一つのハードディスク又は不揮発性メモリ等の記憶媒体である。ストレージ293は、複数の教示者の情報を記憶することと、エッジコントローラ100からのサポート情報の要求に応じて複数の教示者のいずれかを選択することと、選択した教示者の教示端末40にネットワーク回線50を介してロボット20の環境情報を送信することと、選択した教示者の教示端末40からネットワーク回線50を介して環境情報に基づくサポート情報を受信することと、受信したサポート情報をエッジコントローラ100に送信することとをコラボレーションコントローラ200に実行させるプログラムを記憶している。例えばストレージ293は、上述したコラボレーションコントローラ200の機能モジュールを構成するためのプログラムを記憶している。メモリ292は、ストレージ293からロードしたプログラム及びプロセッサ291による演算結果等を一時的に記憶する。プロセッサ291は、メモリ292と協働して上記プログラムを実行することで、コラボレーションコントローラ200の各機能モジュールを構成する。通信ポート294は、プロセッサ291からの指令に応じ、教示端末40及びエッジコントローラ100との間でネットワーク通信を行う。ストレージ293は、必ずしもコラボレーションコントローラ200に内蔵されていなくてもよい。例えばストレージ293は、ネットワーク回線50を介して通信ポート294に接続された外部のストレージ(例えばクラウド)であってもよい。
〔ロボット制御手順〕
 続いて、ロボット制御方法の一例として、ロボット制御システム1が実行する制御手順を説明する。この制御手順は、エッジコントローラ100が実行する動作指令の出力手順と、エッジコントローラ100が実行する作業モデルの更新手順と、コラボレーションコントローラ200が実行するサポート情報の受信手順とを含む。以下、各手順を詳細に例示する。
(動作指令の出力手順)
 動作指令の出力手順は、ロボット20の環境情報と、上記作業モデルとに基づいてロボット20への作業指示情報を導出することと、ロボット20の環境情報と、作業モデルとに基づいて作業指示情報に基づくロボット20の作業可否を判定することと、作業指示情報に基づくロボット20の作業が可であると判定した場合に、作業指示情報に基づく動作指令を生成してロボットコントローラ30に出力することと、作業指示情報に基づくロボット20の作業が不可であると判定した場合に、サポート情報を要求し、サポート情報に基づく動作指令を生成してロボットコントローラ30に出力することとを含む。
 図5は、一つのロボット20に対してエッジコントローラ100が実行する動作指令の出力手順を例示するフローチャートである。図5に示すように、エッジコントローラ100は、まずステップS01,S02を実行する。ステップS01では、環境情報取得部112が、ロボット20の環境情報をロボットコントローラ30から取得する。ステップS02では、作業指示導出部113が、環境情報取得部112が取得したロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいてロボット20への作業指示情報を導出する。例えば作業指示導出部113は、ロボット20の環境情報を作業モデルに入力し、これに応じて作業モデルが出力する作業指示情報を得て作業指示記憶部114に書き込む。
 次に、エッジコントローラ100は、ステップS03,S04を実行する。ステップS03では、信頼度導出部115が作業指示情報の信頼度を導出する。ステップS04では、作業可否判定部116が、環境情報取得部112が取得したロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいて、作業指示情報に基づくロボット20の作業可否を判定する。例えば作業可否判定部116は、信頼度導出部115が導出する信頼度が所定の閾値を超えている場合には作業指示情報に基づくロボット20の作業が可であると判定し、信頼度が当該閾値を下回っている場合には作業指示情報に基づくロボット20の作業が不可であると判定する。
 ステップS04において作業指示情報に基づくロボットの作業が可であると判定した場合、エッジコントローラ100はステップS05を実行する。ステップS05では、動作指令生成部121が、作業指示情報に基づいてロボット20の動作指令を生成する。例えば動作指令生成部121は、作業指示情報により特定される作業内容を実行させるように、先端部22の移動指令と、先端部22の移動に応じたツールの動作指令とを生成する。
 ステップS04において作業指示情報に基づくロボットの作業が不可であると判定した場合、エッジコントローラ100は、ステップS06,S07,S08を実行する。ステップS06では、サポート要求部117が、コラボレーションコントローラ200にサポート情報の送信を要求する。また、サポート要求部117は、教示者に参照させるためのロボット20の環境情報をコラボレーションコントローラ200に送信する。ステップS07では、サポート情報受信部118が、サポート要求部117からの要求に応じてコラボレーションコントローラ200が送信したサポート情報を受信する。ステップS08では、動作指令生成部121が、サポート情報に基づいてロボット20の動作指令を生成する。例えば動作指令生成部121は、サポート情報により特定される作業内容を実行させるように、先端部22の移動指令と、先端部22の移動に応じたツールの動作指令とを生成する。
 ステップS05,S08の次に、エッジコントローラ100は、ステップS09を実行する。ステップS09では、動作指令生成部121が生成した動作指令を、動作指令送信部122がロボットコントローラ30に出力する。ロボットコントローラ30は、動作指令送信部122から出力された動作指令に従ってロボット20を制御する。これにより、作業指示情報又はサポート情報に基づく作業がロボット20により実行される。以上で動作指令の出力手順が完了する。エッジコントローラ100は、複数のロボット20のそれぞれに対して、以上の手順を繰り返す。
(作業モデルの更新手順)
 作業モデルの更新手順は、ロボット20の環境情報と、ロボット20の作業結果とを学習用データとして蓄積することと、蓄積した学習用データに基づく機械学習により、モデル記憶部111の作業モデルを更新することと、当該ロボット20の作業モデルの更新内容を他のロボット20の作業モデルにも反映させることとを含む。
 図6は、一つのロボット20の作業モデルに対してエッジコントローラ100が実行する更新手順を例示するフローチャートである。図6に示すように、エッジコントローラ100は、まずステップS11,S12,S13を実行する。ステップS11では、実績情報取得部123が、動作指令生成部121による上記動作指令の生成を待機する。ステップS12では、実績情報取得部123が、上記動作指令に従ったロボット20の作業結果に関する作業実績情報を取得する。例えば実績情報取得部123は、作業指示情報又はサポート情報を動作指令生成部121から取得し、上記成否情報及び効率情報等をロボットコントローラ30から取得する。ステップS13では、実績情報送信部127が、実績情報取得部123が取得した作業実績情報をコラボレーションコントローラ200に送信する。
 次に、エッジコントローラ100は、ステップS14,S15を実行する。ステップS14では、学習データ蓄積部124が、ロボット20の環境情報と、当該環境情報に応じたロボット20の作業実績情報と上記学習用データとして蓄積する。例えば学習データ蓄積部124は、ロボット20の環境情報を環境情報取得部112から取得し、当該環境情報に応じたロボット20の作業実績情報を実績情報取得部123から取得し、これらを学習用データとして蓄積する。ステップS15では、モデル更新部125が、学習データ蓄積部124が蓄積したデータ数(ロボット20の環境情報及び作業実績情報の数)が、所定の学習可能数を超えたか否かを確認する。ここでのデータ数は、最新の作業モデル(モデル記憶部111が記憶している作業モデル)が得られた時点以降に蓄積されたデータ数である。
 ステップS15においてデータ数が所定の学習可能数を超えていないと判定した場合、エッジコントローラ100は、処理をステップS11に戻す。ステップS15においてデータ数が所定の学習可能数を超えたと判定した場合、エッジコントローラ100は、ステップS16,S17を実行する。ステップS16では、モデル更新部125が、学習データ蓄積部124が蓄積した学習用データに基づく機械学習により、モデル記憶部111の作業モデルを更新する。ステップS17では、更新内容反映部126が、ステップS16におけるロボット20の作業モデルの更新内容を、他のいずれかのロボット20の作業モデルに反映させる。エッジコントローラ100は、複数のロボット20のそれぞれの作業モデルに対して、以上の手順を繰り返す。
(サポート情報の受信手順)
 サポート情報の受信手順は、エッジコントローラ100からのサポート情報の要求に応じて、複数の教示者のいずれかを選択することと、選択した教示者の教示端末40にネットワーク回線50を介してロボット20の環境情報を送信することと、選択した教示者の教示端末40からネットワーク回線50を介して環境情報に基づくサポート情報を受信することと、受信したサポート情報をエッジコントローラ100に送信することとを含む。
 例えば図7に示すように、コラボレーションコントローラ200は、ステップS21,S22,S23,S24を実行する。ステップS21では、サポート要求取得部212が、サポート要求部117からのサポート情報の送信要求を取得する。ステップS22では、教示要求部213が、サポート情報が対象とするロボット20の作業種別を教示可能な教示者を、教示者記憶部211が記憶する複数の教示者から抽出する。以下、教示要求部213が抽出した教示者を「候補教示者」という。ステップS23では、教示要求部213が、ステップS22において抽出された候補教示者に、ネットワーク回線50を介してサポート情報の送信を要求する。ステップS24では、スコア導出部233が、候補教示者からの応答を待機する。スコア導出部233は、複数の候補教示者からの応答を待機してもよい。
 次に、コラボレーションコントローラ200は、ステップS25,S26を実行する。ステップS25では、スコア導出部233が、教示要求に応答した候補教示者のスコアを、以前に事後評価部232が導出した上記事後適正度に基づいて導出する。例えばスコア導出部233は、教示実績記憶部241を参照し、上記教示実績値に基づいて候補教示者のスコアを導出する。ステップS26では、選択部214が、候補教示者のいずれかを、サポート情報の送信者として選択する。例えば選択部214は、スコア導出部233が導出したスコアに基づいて複数の教示者のいずれかを選択してもよい。
 次に、コラボレーションコントローラ200は、ステップS27,S28を実行する。選択部214は、スコアの高さに基づく選択基準と、他の選択基準(例えば上記作業種別に基づく選択基準及び応答の速さに基づく選択基準)との組み合わせに基づいて複数の教示者のいずれかを選択してもよい。ステップS27では、環境情報送信部215が、被選択教示者(選択部214が選択した教示者)に、ネットワーク回線50を介してロボット20の環境情報を送信する。ステップS28では、サポート情報受信部216が、被選択教示者からネットワーク回線50を介してサポート情報を受信する。
 次に、コラボレーションコントローラ200は、ステップS31,S32を実行する。ステップS31では、事前評価部221が、既存のデータに基づいてサポート情報の上記事前適正度を導出する。ステップS32では、サポート可否判定部222が、事前評価部221が導出した事前適正度に基づいて、当該サポート情報の採用可否を判定する。例えばサポート可否判定部222は、事前適正度が所定の採用閾値を超えているか否かを判定する。
 ステップS32においてサポート情報が採用不可であると判定した場合、コラボレーションコントローラ200は、処理をステップS24に戻す。以後、サポート可否判定部222によりサポート情報が採用可であると判定されるまで、サポート情報の取得と、事前適正度に基づく採用可否の判定とが繰り返される。
 ステップS32においてサポート情報が採用可であると判定した場合、コラボレーションコントローラ200は、ステップS33,S34を実行する。ステップS33では、サポート情報送信部217が、採用可と判定されたサポート情報をエッジコントローラ100に送信する。ステップS34では、実績情報受信部231が、サポート情報に基づくロボット20の作業結果を示す作業実績情報を上記実績情報送信部127から受信する。
 次に、コラボレーションコントローラ200は、ステップS35,S36を実行する。ステップS35では、事後評価部232が、実績情報受信部231が受信した作業実績情報に基づいてサポート情報の上記事後適正度を導出する。ステップS36では、教示実績更新部242が、サポート情報の事後適正度に相関する値を、当該サポート情報の教示者の教示実績値に加算し、利用実績更新部244が、サポート情報の事後適正度に相関する値を、当該サポート情報を利用したロボット20の利用実績値に加算する。以上でサポート情報の受信手順が完了する。コラボレーションコントローラ200は以上の手順を繰り返す。
〔本実施形態の効果〕
 以上に説明したように、ロボット制御システム1は、複数の教示者の情報を記憶する教示者記憶部211と、ロボット20に作業を継続させるためにサポート情報が必要である場合に、教示者記憶部211が記憶する複数の教示者のいずれかを選択する選択部214と、選択部214が選択した教示者に、ネットワーク回線50を介してロボット20の環境情報を送信する環境情報送信部215と、選択部214が選択した教示者からネットワーク回線50を介してサポート情報を受信するサポート情報受信部216と、を備える。
 このロボット制御システム1によれば、複数の教示者から、ネットワーク回線50を介してサポート情報の提供を受けることが可能である。このため、常時待機している教示者がいなくても、サポート情報を早期に取得してロボット20の作業を継続させることができる。また、各教示者は、ロボット20の近くに常時待機する必要がないので、各自の作業を遂行することが可能である。従って、ロボット20と人との効率的な協働に有効である。
 ロボット制御システム1は、サポート情報に基づくロボット20の作業前に、既存のデータに基づいてサポート情報の適正度を導出する事前評価部221と、事前評価部221が導出したサポート情報の適正度に基づいて、当該サポート情報の採用可否を判定するサポート可否判定部222と、を更に備えていてもよい。この場合、複数の教示者から幅広くサポート情報の提供を受けつつ、適正度の低いサポート情報を採用不可とすることで、サポート情報に基づくロボット20の作業の信頼性を向上させることができる。
 ロボット制御システム1は、サポート情報に基づくロボット20の作業後に、ロボット20の作業結果に基づいてサポート情報の適正度を導出する事後評価部232と、事後評価部232が導出したサポート情報の適正度に基づいて、当該サポート情報の教示者のスコアを導出するスコア導出部233と、を更に備え、選択部214は、スコア導出部233が導出したスコアに基づいて複数の教示者のいずれかを選択してもよい。この場合、複数の教示者から幅広くサポート情報の提供を受けつつ、適正度の高いサポート情報を提供する傾向のある教示者を優先することで、サポート情報に基づくロボット20の作業の信頼性を向上させることができる。
 教示者記憶部211が記憶する教示者の情報は、教示可能な作業種別の情報を含み、選択部214は、教示可能な作業種別の情報と、ロボット20の作業種別とに基づいて複数の教示者のいずれかを選択してもよい。この場合、複数の教示者から幅広くサポート情報の提供を受けつつ、サポート情報が対象とする作業種別に適した教示者を優先することで、サポート情報に基づくロボット20の作業の信頼性を更に向上させることができる。
 ロボット制御システム1は、サポート情報が必要である場合に、教示者記憶部211が記憶する複数の教示者にネットワーク回線50を介してサポート情報の送信を要求する教示要求部213を更に備え、選択部214は、教示要求部213からの要求への応答の速さに基づいて複数の教示者のいずれかを選択してもよい。この場合、応答の早い教示者を優先することで、より迅速なサポート情報の提供を教示者に促すことができる。このため、ロボット20の作業の効率を更に向上させることができる。
 ロボット制御システム1は、サポート情報の送信に対する報酬額の算出基準となる教示実績値と、教示者とを対応付けて記憶する教示実績記憶部241と、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該サポート情報の教示者の教示実績値を更新する教示実績更新部242と、を更に備えていてもよい。この場合、教示実績と報酬額とを相関させることで、より積極的なサポート情報の提供を教示者に促すことができる。このため、ロボット20の作業の効率を更に向上させることができる。
 ロボット制御システム1は、サポート情報の利用に応じた課金額の算出基準となる利用実績値と、ロボット20とを対応付けて記憶する利用実績記憶部243と、サポート情報に基づくロボット20の作業が実行される度に、当該作業に応じて当該ロボット20の利用実績値を更新する利用実績更新部244と、を更に備えていてもよい。この場合、利用実績に応じた合理的な課金によって、サポート情報の有効活用を促すことができる。
 ロボット制御システム1は、ロボット20の環境情報の入力に応じて、当該環境情報に対応したロボット20の作業指示情報を出力する作業モデルを記憶するモデル記憶部111と、ロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいてロボット20への作業指示情報を導出する作業指示導出部113と、ロボット20の環境情報と、モデル記憶部111が記憶する作業モデルとに基づいて作業指示情報に基づくロボット20の作業可否を判定する作業可否判定部116と、作業可否判定部116により作業指示情報に基づくロボット20の作業が不可であると判定された場合にサポート情報を要求するサポート要求部117と、を更に備えていてもよい。この場合、ロボット20の自律動作を活用し、サポート情報が必要となる状況を削減することで、教示者の負担を更に軽減することができる。
 ロボット制御システム1は、ロボット20の環境情報と、ロボット20の作業結果とを学習用データとして蓄積する学習データ蓄積部124と、学習データ蓄積部124が蓄積した学習用データに基づく機械学習により、作業モデルを更新するモデル更新部125とを更に備えていてもよい。この場合、機械学習によりロボット20の自律性を向上させることによって、教示者の負担を徐々に軽減することができる。
 ロボット制御システム1は、モデル更新部125がいずれかの作業モデルを更新した場合に、当該作業モデルの更新内容を上記ロボット20の他のロボット20の作業モデルにも反映させる更新内容反映部126を更に備えていてもよい。この場合、最新の作業モデルの共有により、各ロボット20の自律性を迅速に向上させることができる。
 以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変形が可能である。
 1…ロボット制御システム、20…ロボット、50…ネットワーク回線、111…モデル記憶部、113…作業指示導出部、116…作業可否判定部、117…サポート要求部、124…学習データ蓄積部、125…モデル更新部、126…更新内容反映部、211…教示者記憶部、213…教示要求部、214…選択部、215…環境情報送信部、216…サポート情報受信部、221…事前評価部、222…サポート可否判定部、232…事後評価部、233…スコア導出部、241…教示実績記憶部、242…教示実績更新部、243…利用実績記憶部、244…利用実績更新部。

Claims (11)

  1.  複数の教示者の情報を記憶する教示者記憶部と、
     ロボットに作業を継続させるためにサポート情報が必要である場合に、教示者記憶部が記憶する複数の教示者のいずれかを選択する選択部と、
     前記選択部が選択した教示者に、ネットワーク回線を介して前記ロボットの環境情報を送信する環境情報送信部と、
     前記選択部が選択した教示者からネットワーク回線を介して前記サポート情報を受信するサポート情報受信部と、を備えるロボット制御システム。
  2.  前記サポート情報に基づく前記ロボットの作業前に、既存のデータに基づいて前記サポート情報の適正度を導出する事前評価部と、
     前記事前評価部が導出した前記サポート情報の適正度に基づいて、当該サポート情報の採用可否を判定するサポート可否判定部と、を更に備える請求項1記載のロボット制御システム。
  3.  前記サポート情報に基づく前記ロボットの作業後に、前記ロボットの作業結果に基づいて前記サポート情報の適正度を導出する事後評価部と、
     前記事後評価部が導出した前記サポート情報の適正度に基づいて、当該サポート情報の教示者のスコアを導出するスコア導出部と、を更に備え、
     前記選択部は、前記スコア導出部が導出したスコアに基づいて前記複数の教示者のいずれかを選択する、請求項1又は2記載のロボット制御システム。
  4.  前記教示者記憶部が記憶する前記教示者の情報は、教示可能な作業種別の情報を含み、
     前記選択部は、前記教示可能な作業種別の情報と、前記ロボットの作業種別とに基づいて前記複数の教示者のいずれかを選択する、請求項1~3のいずれか一項記載のロボット制御システム。
  5.  前記サポート情報が必要である場合に、前記教示者記憶部が記憶する前記複数の教示者にネットワーク回線を介して前記サポート情報の送信を要求する教示要求部を更に備え、
     前記選択部は、前記教示要求部からの要求への応答の速さに基づいて前記複数の教示者のいずれかを選択する、請求項1~4のいずれか一項記載のロボット制御システム。
  6.  前記サポート情報の送信に対する報酬額の算出基準となる教示実績値と、教示者とを対応付けて記憶する教示実績記憶部と、
     前記サポート情報に基づく前記ロボットの作業が実行される度に、当該作業に応じて当該サポート情報の教示者の前記教示実績値を更新する教示実績更新部と、を更に備える請求項1~5のいずれか一項記載のロボット制御システム。
  7.  前記サポート情報の利用に応じた課金額の算出基準となる利用実績値と、前記ロボットとを対応付けて記憶する利用実績記憶部と、
     前記サポート情報に基づく前記ロボットの作業が実行される度に、当該作業に応じて当該ロボットの前記利用実績値を更新する利用実績更新部と、を更に備える請求項6記載のロボット制御システム。
  8.  前記ロボットの環境情報の入力に応じて、当該環境情報に対応した前記ロボットの作業指示情報を出力する作業モデルを記憶するモデル記憶部と、
     前記ロボットの環境情報と、前記モデル記憶部が記憶する前記作業モデルとに基づいて前記ロボットへの作業指示情報を導出する作業指示導出部と、
     前記ロボットの環境情報と、前記モデル記憶部が記憶する前記作業モデルとに基づいて前記作業指示情報に基づく前記ロボットの作業可否を判定する作業可否判定部と、
     前記作業可否判定部により前記作業指示情報に基づく前記ロボットの作業が不可であると判定された場合に前記サポート情報を要求するサポート要求部と、を更に備える、請求項1~7のいずれか一項記載のロボット制御システム。
  9.  前記ロボットの環境情報と、前記ロボットの作業結果とを学習用データとして蓄積する学習データ蓄積部と、
     前記学習データ蓄積部が蓄積した前記学習用データに基づく機械学習により、前記作業モデルを更新するモデル更新部とを更に備える、請求項8記載のロボット制御システム。
  10.  前記モデル更新部がいずれかの前記作業モデルを更新した場合に、当該作業モデルの更新内容を前記ロボットの他のロボットの作業モデルにも反映させる更新内容反映部を更に備える、請求項9記載のロボット制御システム。
  11.  複数の教示者の情報を記憶することと、
     ロボットに作業を継続させるためにサポート情報が必要である場合に、前記複数の教示者のいずれかを選択することと、
     選択した教示者に、ネットワーク回線を介して前記ロボットの環境情報を送信することと、
     選択した教示者からネットワーク回線を介して前記サポート情報を受信することと、を備えるロボット制御方法。
PCT/JP2020/001599 2019-01-18 2020-01-17 ロボット制御システム及びロボット制御方法 WO2020149414A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP20741650.4A EP3912769A4 (en) 2019-01-18 2020-01-17 ROBOT CONTROL SYSTEM AND ROBOT CONTROL METHOD
CN202080009228.0A CN113329850A (zh) 2019-01-18 2020-01-17 机器人控制系统和机器人控制方法
JP2020566511A JP7251555B2 (ja) 2019-01-18 2020-01-17 ロボット制御システム及びロボット制御方法
US17/369,965 US11931895B2 (en) 2019-01-18 2021-07-08 Robot control system and robot control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019007251 2019-01-18
JP2019-007251 2019-01-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/369,965 Continuation US11931895B2 (en) 2019-01-18 2021-07-08 Robot control system and robot control method

Publications (1)

Publication Number Publication Date
WO2020149414A1 true WO2020149414A1 (ja) 2020-07-23

Family

ID=71613375

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/001599 WO2020149414A1 (ja) 2019-01-18 2020-01-17 ロボット制御システム及びロボット制御方法

Country Status (5)

Country Link
US (1) US11931895B2 (ja)
EP (1) EP3912769A4 (ja)
JP (1) JP7251555B2 (ja)
CN (1) CN113329850A (ja)
WO (1) WO2020149414A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220134557A1 (en) * 2020-10-30 2022-05-05 Sintokogio, Ltd. Control device, robot control system, program, and control method
CN114633260B (zh) * 2022-05-20 2022-08-02 广东科佩克机器人有限公司 一种远程控制工业机器人作业的方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006082185A (ja) 2004-09-16 2006-03-30 Yaskawa Electric Corp ロボット誘導方法
JP2014081813A (ja) * 2012-10-17 2014-05-08 Kobe Steel Ltd 作業者支援システム、作業者支援方法、及びコンピュータプログラム
JP2016062549A (ja) * 2014-09-22 2016-04-25 富士通株式会社 スケジューリング方法、スケジューリング支援装置およびコンピュータプログラム
US9802317B1 (en) * 2015-04-24 2017-10-31 X Development Llc Methods and systems for remote perception assistance to facilitate robotic object manipulation
WO2018098490A1 (en) * 2016-11-28 2018-05-31 Brain Corporation Systems and methods for remote operating and/or monitoring of a robot
JP2018171663A (ja) * 2017-03-31 2018-11-08 ファナック株式会社 行動情報学習装置、ロボット制御システム及び行動情報学習方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3768174B2 (ja) * 2002-07-24 2006-04-19 ファナック株式会社 ワーク取出し装置
JP5911299B2 (ja) * 2011-12-27 2016-04-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
JP5928923B2 (ja) * 2012-04-02 2016-06-01 株式会社安川電機 ロボットシステム及び作業設備
JP6157066B2 (ja) * 2012-06-11 2017-07-05 キヤノン株式会社 画像処理装置、物体取出システム、画像処理方法及びプログラム
WO2014089316A1 (en) * 2012-12-06 2014-06-12 International Electronic Machines Corporation Human augmentation of robotic work
CN204209273U (zh) * 2014-08-29 2015-03-18 应城骏腾发自动焊接装备有限公司 机器人缝焊机
US9486921B1 (en) * 2015-03-26 2016-11-08 Google Inc. Methods and systems for distributing remote assistance to facilitate robotic object manipulation
WO2016189924A1 (ja) * 2015-05-28 2016-12-01 株式会社日立製作所 ロボット操作装置およびプログラム
WO2018146687A1 (en) * 2017-02-12 2018-08-16 Commonsense Robotics Ltd. Human-assisted robotic picking apparatus ‎
US10464212B2 (en) * 2017-03-28 2019-11-05 Amazon Technologies, Inc. Method and system for tele-operated inventory management system
US20180356817A1 (en) * 2017-06-07 2018-12-13 Uber Technologies, Inc. System and Methods to Enable User Control of an Autonomous Vehicle
JP6886869B2 (ja) * 2017-06-09 2021-06-16 川崎重工業株式会社 動作予測システム及び動作予測方法
EP3659000A4 (en) * 2017-07-28 2021-04-14 Nuro, Inc. FLEXIBLE COMPARTMENT DESIGN IN AN AUTONOMOUS OR SEMI-AUTONOMOUS VEHICLE
US20210116907A1 (en) * 2018-03-18 2021-04-22 Driveu Tech Ltd. Device, System, and Method of Autonomous Driving and Tele-Operated Vehicles
JP7154823B2 (ja) * 2018-05-28 2022-10-18 キヤノン株式会社 情報処理装置、ロボット制御装置、情報処理方法及びプログラム
US11214265B2 (en) * 2018-08-22 2022-01-04 Phantom Auto Inc. Vehicle teleoperator ranking and selection
US11112790B2 (en) * 2018-12-21 2021-09-07 GM Global Technology Operations LLC Micro-authorization of remote assistance for an autonomous vehicle

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006082185A (ja) 2004-09-16 2006-03-30 Yaskawa Electric Corp ロボット誘導方法
JP2014081813A (ja) * 2012-10-17 2014-05-08 Kobe Steel Ltd 作業者支援システム、作業者支援方法、及びコンピュータプログラム
JP2016062549A (ja) * 2014-09-22 2016-04-25 富士通株式会社 スケジューリング方法、スケジューリング支援装置およびコンピュータプログラム
US9802317B1 (en) * 2015-04-24 2017-10-31 X Development Llc Methods and systems for remote perception assistance to facilitate robotic object manipulation
WO2018098490A1 (en) * 2016-11-28 2018-05-31 Brain Corporation Systems and methods for remote operating and/or monitoring of a robot
JP2018171663A (ja) * 2017-03-31 2018-11-08 ファナック株式会社 行動情報学習装置、ロボット制御システム及び行動情報学習方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3912769A4

Also Published As

Publication number Publication date
JP7251555B2 (ja) 2023-04-04
US11931895B2 (en) 2024-03-19
CN113329850A (zh) 2021-08-31
US20210339392A1 (en) 2021-11-04
JPWO2020149414A1 (ja) 2021-12-23
EP3912769A1 (en) 2021-11-24
EP3912769A4 (en) 2023-01-18

Similar Documents

Publication Publication Date Title
US10207407B1 (en) Robotic operation libraries
WO2020149414A1 (ja) ロボット制御システム及びロボット制御方法
Yang et al. Multi-UAV cooperative search using an opportunistic learning method
Spaan Cooperative active perception using POMDPs
JP2009018411A (ja) ロボットを制御する方法および装置
CN110940341A (zh) 路径规划方法、机器人及计算机可读存储介质
US20240001553A1 (en) Robotic arm control method, robot and it’s controller
Sukthankar et al. Intelligent agents as teammates
US20210349470A1 (en) Dynamically refining markers in an autonomous world model
WO2018113263A1 (zh) 机器人的控制方法、系统和装置及机器人
JP6543430B1 (ja) 作業支援システム、作業支援サーバ、作業状況判定装置、作業者用デバイス及び作業対象機器
CN112327828A (zh) 路径规划方法、装置及计算机可读存储介质
KR20190119225A (ko) 각각의 인공지능을 탑재한 복수의 로봇을 포함하는 로봇 시스템
Harbin et al. Model-driven simulation-based analysis for multi-robot systems
JP2020082314A (ja) 学習装置、ロボット制御装置、及びロボット制御システム
Verstaevel et al. Principles and experimentations of self-organizing embedded agents allowing learning from demonstration in ambient robotic
Tamilselvi et al. Q learning for mobile robot navigation in indoor environment
US20090150317A1 (en) Information processing apparatus, information processing method and program
US20220214663A1 (en) Multi-agent autonomous instruction generation for manufacturing
JP7236356B2 (ja) 制御プラットフォーム及び制御システム
JP7431092B2 (ja) 制御プラットフォーム及び制御方法
Udugama Mini bot 3D: A ROS based Gazebo Simulation
CN114529010A (zh) 一种机器人自主学习方法、装置、设备及存储介质
AU2020227025A1 (en) An asset management system
KR101858108B1 (ko) 로봇을 위한 동작 시뮬레이션 장치 및 방법

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: 20741650

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020566511

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020741650

Country of ref document: EP

Effective date: 20210818