WO2006038576A1 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
WO2006038576A1
WO2006038576A1 PCT/JP2005/018265 JP2005018265W WO2006038576A1 WO 2006038576 A1 WO2006038576 A1 WO 2006038576A1 JP 2005018265 W JP2005018265 W JP 2005018265W WO 2006038576 A1 WO2006038576 A1 WO 2006038576A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
robot
battery
replenishment
execution
Prior art date
Application number
PCT/JP2005/018265
Other languages
English (en)
French (fr)
Inventor
Atsuo Orita
Naoaki Sumida
Original Assignee
Honda Motor Co., Ltd.
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 Honda Motor Co., Ltd. filed Critical Honda Motor Co., Ltd.
Priority to US11/664,004 priority Critical patent/US8027750B2/en
Publication of WO2006038576A1 publication Critical patent/WO2006038576A1/ja

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/005Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators using batteries, e.g. as a back-up power source
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/00032Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by data exchange
    • H02J7/00036Charger exchanging data with battery
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/00047Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries with provisions for charging different types of batteries
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0013Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries acting upon several batteries simultaneously or sequentially
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0042Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by the mechanical construction
    • H02J7/0044Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by the mechanical construction specially adapted for holding portable devices containing batteries
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J2310/00The network for supplying or distributing electric power characterised by its spatial reach or by the load
    • H02J2310/10The network having a local or delimited stationary reach
    • H02J2310/20The network being internal to a load
    • H02J2310/22The load being a portable electronic device

Definitions

  • the present invention relates to a robot control apparatus that causes an autonomous mobile robot to execute one or more tasks. More specifically, based on the remaining amount of the battery that is the power source of the autonomous mobile robot, the execution order of multiple tasks assigned to the autonomous mobile robot is reviewed, the task is changed, and other autonomous mobile robots of the task. This is related to a robot controller that performs multiple tasks efficiently by autonomous robots.
  • Japanese Patent Application Laid-Open No. 2001-92529 discloses a charging control system for a mobile robot that transports luggage in a manufacturing factory where FA (factory automation) is introduced.
  • the host computer manages the operation of each mobile robot, and each mobile robot is controlled to carry a package or move to a charging station according to instructions from the host computer. .
  • a mobile robot that performs a task in an environment where a person exists, such as a task in a reception task or a guidance task, causes a response (human response) due to the presence of a person during task execution. ) Often need to be done.
  • the mobile robot is performing a task (package delivery task) to deliver a package to a person
  • the person to whom the package is delivered (the target person) is not always in the same place.
  • the mobile robot needs to make a response (human response) that keeps moving until it reaches the target person.
  • a device that enables a mobile robot to efficiently execute a plurality of tasks even under conditions where there is an unpredictable factor of human response, that is, a battery that is a power source of the robot Based on the remaining amount, review the execution order of multiple tasks assigned to the robot, assign unexecuted tasks to other mobile robots, and transfer other tasks that have been difficult to perform to other mobile robots There was a need for a robot controller that efficiently performs multiple tasks with a mobile robot. Disclosure of the invention
  • the present invention relates to a robot control device that manages tasks to be executed by each robot having a moving function.
  • the robot control device includes: a battery level determination unit that determines a battery level of a plurality of predetermined battery levels based on a remaining battery level of the robot; Enter the task execution plan to be executed by the robot.
  • the task management means for reviewing the task execution order registered in the execution plan and changing the task according to the procedure determined for each battery level, and the execution plan,
  • An execution command generation unit that generates an execution command for causing the robot to execute a set task, and a transmission unit that transmits the execution command to the robot.
  • a task that is determined to be difficult to be executed by the robot by reviewing the execution order of tasks registered in the execution plan performed by the task management unit is transferred to another robot. Prefer to register in the execution plan.
  • the battery level determining means of the robot control device determines whether or not the robot needs to be replenished (replaced / charged) based on the remaining amount of the battery.
  • the battery replenishment unit When it is determined that the battery replenishment unit needs to be replenished with a battery, it selects one battery replenishment area in the middle of a plurality of battery replenishment areas prepared in advance, and selects the selected battery replenishment area as the robot.
  • Battery supply area selection unit to be set as the movement target area of the robot, the amount of battery consumed to perform the task being executed by the robot, and the amount of battery consumed to move the robot to the movement target area By comparing the threshold value obtained by taking into account the remaining battery level, the state of the battery is determined from any of a plurality of predetermined battery levels. It is preferable to have a battery level determination unit that determines whether the battery level is reached.
  • the battery replenishment area selection unit sets the movement target area based on a current position of the robot or an end position of a task being executed by the robot.
  • the task management means of the robot control device registers a movement task for moving the robot to the movement target area in the execution plan when it is determined that notch replenishment is necessary. I prefer that.
  • the task execution order registered in the execution plan of each robot is reviewed and the task is changed based on the remaining amount of the battery that is the power source of each robot.
  • FIG. 1 is a system configuration diagram of a robot control system A according to an embodiment of the present invention.
  • FIG. 2 is a block diagram of Robot R
  • FIG. 3 is a block diagram of the robot control device 3.
  • FIG. 4 is an explanatory diagram showing an example of information items in a task information database 220.
  • FIG. 5 is an explanatory diagram showing an example of a configuration of a task schedule table 230.
  • FIG. 6 is a block configuration diagram of the control means 300 and the storage means 200 of the robot control device 3.
  • FIG. 7 is an explanatory diagram for explaining processing performed in a task schedule generation unit 341
  • FIG. 8 is an explanatory diagram for explaining processing performed in a task schedule generation unit 341
  • FIG. 9 is an explanatory diagram showing an example of a task information database 220 when a notch reservation task is registered.
  • FIG. 10 (a) is an explanatory diagram showing an example of a task schedule table 230 before a notch reservation task is registered.
  • (B) is an explanatory diagram showing an example of a task schedule table 230 when a notch reservation task is registered.
  • FIG. 11 is a flowchart for explaining processing performed in the robot control device 3 when determining whether or not to insert a battery replenishment task into the task schedule of the robot R.
  • FIG. 1 is a system configuration diagram of a robot control system provided with a robot control apparatus according to the present invention.
  • the robot control system A includes a plurality of robots having a moving function. RA, RB, RC (however, if the robot is not specified, it is simply called “Robot R”).
  • Each robot R has a task execution plan (preliminarily set for each robot R in the robot controller 3). Execute the task according to the task schedule.
  • the tasks registered in the task schedule are reset based on the remaining battery level of each robot R so that multiple tasks can be efficiently executed by multiple robots R. It is configured.
  • a robot control system A is connected to a plurality of robots R, a base station 1 connected to these robot scales by radio communication, and the base station 1 via a router 2.
  • the robot control device 3 includes a robot control device 3 and a terminal 5 connected to the robot control device 3 via a network 4.
  • the robot R executes a task in accordance with an execution command input from the robot controller 3, and at least one robot R is arranged in a task execution area set in advance as an area where the robot R executes a task. ing.
  • Fig. 1 shows a robot RA performing a task (guidance task) that guides a visitor to a predetermined place such as a conference room, and a task (delivery package) to a person.
  • a robot RB that is executing (task)
  • a robot RC that is executing a task (waiting task) that is waiting for a new task to be assigned are illustrated.
  • the base station 1 mediates data exchange between the robot R and the robot control device 3.
  • the base station 1 transmits an execution command output from the robot controller 3 to the robot R, and also transmits data (status information) on the state of the robot R transmitted from the robot R and the robot R A signal (reception report signal) indicating that the execution command has been received is received and output to the robot controller 3.
  • At least one base station 1 is provided in the task execution area in order to ensure data exchange between the robot R and the robot controller 3.
  • the task execution area is set over several floors of the building, it is preferable that one base station 1 is provided for each floor. Must have multiple base stations] _ in the task execution area Is preferred.
  • the robot control device 3 sets an execution plan (task schedule) of tasks to be executed by the robot R for each robot R and, based on the battery remaining amount of the robot R, the tasks registered in the task schedule. Re-setting (reviewing task execution order or changing tasks).
  • the terminal 5 is used for registering tasks to be executed by the robot R, changing the task schedule set in the robot controller 3, and inputting robot R operation commands.
  • the robot R of this embodiment is an autonomous mobile biped robot.
  • This robot R executes a task mainly based on an execution command transmitted from the robot control device 3.
  • this robot R has a head Rl, an arm R2, and a leg R3, and the head Rl, arm R2, and leg R3 are each driven by an actuator.
  • the bipedal walking is controlled by the autonomous movement control unit 50 (see FIG. 2). Details of this bipedal walking are disclosed in, for example, Japanese Patent Application Laid-Open No. 2001-62760.
  • FIG. 2 is a block configuration diagram of the robot R.
  • the robot R has a camera C, C, a speaker S, a microphone MC, an image processing unit 10, an audio processing unit 20, A control unit 40, an autonomous movement control unit 50, a wireless communication unit 60, and a battery 70 are included.
  • the robot R has a gyro sensor SR1 and a GPS receiver SR2.
  • the cameras C and C are capable of capturing video as digital data.
  • a color CCD (Charge-Coupled Device) camera is used.
  • Cameras C and C are arranged side by side on the left and right, and the captured image is output to the image processing unit 10.
  • the cameras C and C, the speaker S, and the microphone MC are all disposed inside the head R1. [0029] [Image processing unit]
  • the image processing unit 10 processes the images taken by the cameras C and C, and recognizes the surrounding obstacles and people in order to grasp the situation around the captured image and the robot R. It is.
  • the image processing unit 10 includes a stereo processing unit l la, a moving body extraction unit l lb, and a face recognition unit 11c.
  • the stereo processing unit 11a performs pattern matching on the basis of one of the two images taken by the left and right cameras C and C, and calculates the parallax of each corresponding pixel in the left and right images to generate a difference image Then, the generated parallax image and the original image are output to the moving body extraction unit l ib. This parallax represents the distance to the object where the robot R force is also photographed.
  • the moving object extraction unit l ib extracts a moving object in the photographed image based on the data output from the stereo processing unit 11a.
  • the reason for extracting the moving object (moving object) is to recognize the person by estimating that the moving object is a person.
  • the moving object extraction unit l ib stores images of several past frames (frames), and compares the latest frame (image) with the past frames (images). Then, no-turn matching is performed, the movement amount of each pixel is calculated, and a movement amount image is generated. Then, the moving body extraction unit l ib has a person at that position when there is a pixel with a large amount of movement within a predetermined distance range from the cameras C and C from the parallax image and the movement amount image. The moving object is extracted as a parallax image only in the predetermined distance range, and the moving object image is output to the face recognition unit 11c.
  • the face recognition unit 11c extracts the extracted moving body strength skin color portion, and recognizes the position of the strength face such as its size and shape. Similarly, the hand position is also recognized from the skin color area, size, shape, and the like.
  • the position of the recognized face is output to the control unit 40 and also to the wireless communication unit 60 as information when the robot R moves and to communicate with the person. And transmitted to the robot controller 3 via the base station 1.
  • the speech processing unit 20 includes a speech synthesis unit 21a and a speech recognition unit 21b.
  • the speech synthesizer 21a is based on the speech action command determined and output by the control unit 40. This is the part that generates audio data from the text information and outputs the audio to the speaker S.
  • voice data For the generation of voice data, the correspondence between the character information stored in advance and the voice data is used.
  • the voice recognition unit 21b receives the microphone MC power voice data and stores the voice data and characters stored in advance. Based on the correspondence with the information, character information is generated from the voice data and output to the control unit 40.
  • the control unit 40 generates a signal to be output to the robot control device 3 to be described later, and based on the execution command output from the robot control device 3, each unit of the robot R (image processing unit 10, audio processing unit). 20, autonomous movement control unit 50 and radio communication unit 60)
  • the control unit 40 when receiving the execution command output from the robot controller 3, the control unit 40 generates a signal (reception report signal) indicating that the execution command has been received, and receives the reception report signal. Is output to the robot controller 3 via the wireless communication unit 60.
  • control unit 40 controls each part of the robot R (the image processing unit 10, the audio processing unit 20, the autonomous movement control unit 50, and the wireless communication unit 60) in order to execute the task specified in the execution instruction.
  • the control signal to be generated is generated, and the generated control signal is output to each part of the robot rule as necessary.
  • control unit 40 generates data (status information) related to the state of the robot R at predetermined time intervals, and outputs the generated status information to the robot control device 3 via the wireless communication unit 60. .
  • the status information is used when determining whether or not the robot R needs to be refilled in the robot controller 3 described later.
  • this status information includes battery remaining data indicating the remaining amount of the battery 70 mounted on the robot R, data indicating the battery temperature, the battery voltage value, and the battery current value. (Hereinafter collectively referred to as battery information), coordinate data indicating the current position of Robot R (position information), task ID indicating the task currently being performed by Robot R, and its progress. Data to be shown (task information) and assigned to robot R And data (robot ID) indicating a unique identification number.
  • control unit 40 is configured to (1) periodically generate and transmit status information, but (2) when the remaining battery level becomes a predetermined value or less, (3) When a signal (data request signal) requesting transmission of status information transmitted from the robot control device 3 is received, the control unit 40 may generate and transmit status information.
  • data request signal requesting transmission of status information transmitted from the robot control device 3
  • the control unit 40 may generate and transmit status information.
  • these (1) to (3) may be arbitrarily combined.
  • the autonomous movement control unit 50 includes a head control unit 51a, an arm control unit 51b, and a leg control unit 51c.
  • the head control unit 51a drives the head R1 according to the control signal input from the control unit 40, and the arm control unit 51b operates the arm unit according to the control signal input from the control unit 40.
  • R2 is driven, and the leg control unit 51c drives the leg R3 according to the instruction of the control signal input from the control unit 40.
  • the wireless communication unit 60 is a communication device that transmits and receives data to and from the robot control device 3.
  • the radio communication unit 60 has a public line communication device 6 la and a radio communication device 6 lb.
  • the public line communication device 61a is a wireless communication means using a public line such as a mobile phone line or a PHS (Personal Handyphone System) line.
  • the 6 lb wireless communication device is a short-range wireless communication means such as a wireless LAN that conforms to the IE EE802.11b standard.
  • the wireless communication unit 60 selects the public line communication device 61a or the wireless communication device 61b according to the connection request from the robot control device 3, and performs data communication with the robot control device 3.
  • the notch 70 is a power supply source necessary for the operation and processing of each part of the robot R.
  • the gyro sensor SR1 and the GPS receiver SR2 periodically generate coordinate data indicating the current position of the robot R, and output the generated coordinate data to the control unit 40. This coordinate data is used to determine the behavior of the robot R and is also used to generate the status information described above. [0040] [Robot controller]
  • the robot controller 3 in FIG. 1 mainly sets a task execution plan (task schedule) to be executed by the robot R for each robot R, and reviews the task schedule based on the remaining battery capacity of the robot R ( Task assignment change or task change).
  • task schedule a task execution plan
  • the robot controller 3 in FIG. 1 mainly sets a task execution plan (task schedule) to be executed by the robot R for each robot R, and reviews the task schedule based on the remaining battery capacity of the robot R ( Task assignment change or task change).
  • the robot control device 3 includes an input / output unit 100, a storage unit 200, and a control unit 300 as main parts.
  • the input / output means 100 is an interface for exchanging data with the robot R and the terminal 5 via the base station 1 and the network 4.
  • status information and reception report signal transmitted from the robot R a signal for requesting registration or update of a task transmitted from the terminal 5 (task request signal), and generated by an execution command generation unit 350 described later.
  • Execution command power is exchanged via this input / output means 100.
  • the input / output unit 100 outputs the status information, task request signal, and reception report signal among the input status information, task request signal, and reception report signal to the database management unit 310, and determines only the status information for the battery level. Output to means 330.
  • the storage means 200 stores information necessary for control of the robot R.
  • the storage means 200 includes a map information database 210, a task information database 220, a task schedule table 230, and a robot information database 240. And are at least remembered.
  • the map information database 210 is a database that stores map information (global map) of an area (task execution area) in which the robot R executes tasks.
  • map information database 210 information such as passages, stairs, elevators, rooms, and battery replenishment areas existing in the task execution area is registered in association with coordinate data indicating the position in the task execution area. ing. Therefore, in the case of the present embodiment, referring to the map information database 210 based on the current position of the robot R itself, the robot R arranged in the task execution area and the identification in the task execution area are identified. You can know the positional relationship with an object (target).
  • the distance from the robot R to the battery replenishment area and the direction in which the notch replenishment area is located with respect to the front of the mouth bot R can be found.
  • robot R 3 performs task execution by generating a signal (execution command) for robot R's autonomous movement and task execution command in robot controller 3. Since the robot R can be moved to a desired position in the area (for example, the start position of the task) through the shortest and optimum route, the robot R can autonomously move and execute the task by the robot R. Further, based on this positional relationship and the average moving speed of the robot R, the battery consumption and time when the robot R moves can also be calculated.
  • the update of the map information stored in the map information database 210 is set to be performed by the database management means 310 by inputting data from the terminal 5 operated by the operator !,
  • the task information database 220 is a database that stores information (task data) related to tasks to be executed by the robot R.
  • the task ID which is a unique identifier assigned to each task, the priority of the task, the importance of the task, and the robot which is the identifier of the mouth bot that executes the task ID
  • contents of tasks such as guidance and transportation, position to start the task in the task execution area (start position), position to end the task in the task execution area (end position), time required to execute the task (time required) ), Scheduled task start time (start time), scheduled task end time (end time), task status, etc. are included as information items.
  • new registration of tasks to the task information database 220 and update of the contents of information items of registered tasks are performed by inputting data from the terminal 5 operated by the operator.
  • Database management means 310 is set to perform.
  • the task schedule table 230 includes an execution order of tasks to be executed by the robot R, a task ID for identifying a task registered in the task information database 220, a task priority, a task content, It is a table that includes the task status as an information item.
  • this task schedule table 230 these information items are arranged for each robot R arranged in the task execution area, and what kind of task power is assigned to each mouth bot R in any order! / Now that you can figure out what!
  • the degree is “3”
  • each information item displayed in the task schedule table 230 is linked to the corresponding information item in the task information database 220 described above using the task ID as a reference identifier.
  • the task schedule table 230 is a database that defines the allocation of unprocessed tasks among the tasks registered in the task information database 220 to each robot R and the execution order of tasks in each robot R.
  • the task assignment and execution order shown in the task schedule table 230 are determined and changed by the task management means 340 described later.
  • the robot information database 240 is a database that stores data (status information) relating to the state of the robot R.
  • the robot information database 240 includes information (data) on the battery information, position information, task information, and the presence or absence of the drive system abnormality of the robot R as information items. It is organized in association with IDs.
  • the content of each information item stored in the robot information database 240 is updated by the database management unit 310 of the control unit 300 described later based on the status information transmitted from the robot R. .
  • control means 300 includes database management means 310, priority data generation means 320, battery level determination means 330, task management means 340, and execution instruction generation means 350. Consists of.
  • the database management means 310 performs registration of data in each database stored in the storage means 200, updating of data registered in each database, and the like. For example, when the database management means 310 is input via the status information force input / output means 100 indicating the state of the robot R, the database management means 310 refers to the robot information database 240 based on the robot ID included in the status information, and The content (data) of the information item related to the robot R specified by the ID is updated to the content (data) of the information item acquired from the status information.
  • the database management means 310 indicates that the task information included in the status information indicates that the execution of the robot R force S task has been completed, and the next task assigned to the robot R is displayed.
  • the execution command generation means 350 generates a signal (execution command request signal) that requests the execution command generation means 350 to generate an execution command that instructs the robot R to execute the task. Is output to the execution command generation means 350.
  • the database management means 310 receives a signal (task request signal) for requesting registration of a new task input at the terminal 5 via the input / output means 100.
  • Update the task information database 220 (update the contents of the information item), generate a signal (task update signal) indicating that the task information database 220 has been updated, and prioritize the generated task update signal.
  • the data is output to the data generation means 320.
  • the priority data generation means 320 determines the priority of tasks to be executed by the robot R.
  • the priority data generation means 320 is configured such that when a task update signal is input from the database management means 310, or the notch replenishment task is registered in the task information database 220 from the task management means 340. Therefore, when a signal indicating that the task information database 220 has been updated (task update signal) is input, the task is registered in the task information database 220 and is unprocessed (unexecuted). Determine task priority.
  • a signal (schedule request signal) for requesting that scheduling is performed for an unexecuted task among the tasks registered in the task information database 220 is generated and output to the task management means 340.
  • the priority of the task is determined by determining the importance of the task set when the task is registered in the task information database 220, the starting position force of the task, and the robot having V closest to the position. This is done in consideration of the separation distance between the task and the start position of the task and the time margin from the current time to the start time and end time of the task.
  • the priority data generation means 320 calculates the priority P of each task based on the following formula (1), thereby determining the priority of the task.
  • T is arbitrarily determined when a task is registered in the task information database 220.
  • the value indicating the importance of this task is set between 1.0 and 5.0 in increments of 0.5.
  • the task with the least importance is 1.0, and the importance is The tasks with the largest are 5.0, respectively.
  • N (T;) is near the start position of the task.
  • sp (n (T)) is set to take a predetermined positive value, and ⁇ is greater than a predetermined threshold value.
  • the value of “n (T;)” is set to be “0”.
  • f (T;) is a time remainder from the current time to the start time and end time of the task.
  • f (T) is set to be a value from 0 to 1
  • the maximum value is “1” until the time, and when the task end time elapses, it is set to gradually decrease to “0”!
  • the current time is before the reference time
  • the following expression (2) is satisfied, and the current time is after the reference time and the task end time elapses. If it is before, the time-dependent importance f (T) is calculated by the following formula (3), and if the current time is after the task end time, the following formula (4) is calculated.
  • KT) exp (-K ((T-T) / ⁇ ) ⁇ ' ⁇ ⁇ (2)
  • T is the time interval between the current time and the task start time, and the task start time
  • T A positive value before, and a negative value after the task start time.
  • the battery level determination means 330 is configured to store the remaining battery ( The state power of the battery 70 mounted on the robot R is determined based on the remaining battery level, which battery level corresponds to a predetermined battery level.
  • This battery level determination means 330 includes a battery replenishment determination unit 331, a battery replenishment area selection unit 332, and a battery level determination unit 333.
  • the notch replenishment determination unit 331 determines whether or not the robot R needs to be replenished (replaced or charged) with the battery 70, that is, the case where the battery replenishment is obviously not necessary is excluded. Is.
  • the notch replenishment determination unit 331 is executing the notch replenishment task from the task information included in the status information. Confirm whether or not there is a certain force, and decide whether or not it is necessary to insert the knotter replacement task into the robot R task schedule.
  • the case where the robot R is executing the notch replenishment task corresponds to the case where the notch replenishment is not necessary, and therefore the notch replenishment determination unit 331 ends the process.
  • the battery replenishment determination unit 331 obtains data indicating the remaining amount of the battery 70 (the battery remaining amount data) from the battery information included in the status information. Then, the acquired battery remaining amount data is compared with a preset first threshold value.
  • the battery replenishment determination unit 331 When the value indicated by the battery remaining amount data is less than the first threshold value, the battery replenishment determination unit 331 outputs the status information input from the input / output unit 100 to the battery replenishment area selection unit 332 To do.
  • the notch replenishment determining unit 331 ends the process.
  • the first threshold value is prepared to reduce the data processing burden in the battery level determination means 330 (robot control device 3), except when the notch replenishment is clearly unnecessary. It has been done.
  • the first threshold value is the state of the task execution area where the robot R is placed.
  • the battery replenishment area selection unit 332 determines, for the robot R specified by the robot ID included in the status information, a location (battery replenishment area) where the robot R moves for battery replenishment. It is.
  • the notch replenishment area selection unit 332 refers to the task information included in the status information, and the robot R performs some task other than the notch replenishment task. Check if the force is running.
  • the notch replenishment area selection unit 332 acquires coordinate data (current position data) indicating the current position of the robot R from the position information included in the status information.
  • the notch replenishment area selection unit 332 refers to the map information database 210 based on the current position data, and stores a plurality of battery replenishment areas (B1 to B3, see FIG. 1) preset in the task execution area. Select the battery replenishment area that is the nearest notch replenishment area from the position specified by the current position data and has a reservation for refilling the battery, and select the battery replenishment area of the robot R. Set as moving target area
  • the notch replenishment area selection unit 332 acquires a task ID indicating the task currently being executed by the robot R from the task information included in the status information. To do. Then, referring to the task information database 220 based on the task ID, the coordinate data (task end position data) indicating the position (task end position) where the task currently performed by the robot R ends is obtained. .
  • the notch replenishment area selection unit 332 refers to the map information database 210 based on the task end position data, and from among a plurality of battery replenishment areas (B1 to B3) set in advance in the task execution area, Select the battery replenishment area that is the closest notch replenishment area from the position specified by the task end position data and has no reservation for replenishment of the knotter, and move the selected battery replenishment area to the robot R movement target.
  • a plurality of battery replenishment areas B1 to B3
  • the battery replenishment area refers to another robot R Is set as a place (movement target area) where the battery moves to replenish the battery. It should be noted that whether or not there is a reservation for notch replenishment can be confirmed by referring to the task information database.
  • the notch replenishment area selection unit 332 generates movement target information including coordinate data of the movement target area and data of each information item of the status information, and the generated movement target information Is output to the battery level determination unit 333.
  • These coordinate data are used when the threshold value (second threshold value to fourth threshold value) is calculated in the battery level determination unit 333 located in the subsequent stage.
  • the movement target area is set according to whether or not the robot R is executing a task. That is, the movement target area is set based on the current position of the mouth bot R when the robot R is not executing the task, and based on the task end position when the robot R is executing the task.
  • the battery level force determined by the battery level determination unit 333 in the subsequent stage is the heel level at which the robot rule cannot perform the task currently being executed.
  • a signal (resetting request signal) for requesting resetting of the movement target area based on the current position of the robot R may be input from the battery level determination unit 333 at the subsequent stage.
  • the notch replenishment area selection unit 332 resets the movement target area based on the current position of the robot R. Then, the coordinate data of the reset movement target area (movement target alternative area) is acquired from the map information database 210, and the acquired coordinate data is output to the battery level determination unit 333.
  • the notch level determination unit 333 determines which of the plurality of battery levels (mode 1 to mode 4) defined in advance is the state force of the notch 70 of the robot R.
  • the knotter level determination unit 333 refers to the task information included in the movement target information, and the robot R Check if any task other than the battery replenishment task is currently being executed.
  • the battery level determination unit 333 determines the amount of battery consumed to perform the task that is being performed by the robot rule, and the position at which the task being executed by Robot R ends (task end).
  • the robot R's battery is calculated by comparing the threshold obtained by taking into account the amount of battery consumed for movement from the (position) to the movement target area and the value of the remaining battery data indicating the remaining battery capacity obtained from the movement target information.
  • the knotter level determination unit 333 determines the threshold value obtained by considering the amount of battery consumed by the robot R to move from the current position to the movement target area, and the remaining battery level. It is determined which battery level corresponds to the state force mode 1 to mode 4 of the battery 70 of the robot R by comparing with the value of the remaining battery level data.
  • the notch level determination unit 333 determines the amount of battery consumed to execute the task being executed by the robot R and the movement target of the robot R depending on whether the robot R is currently executing the task.
  • the threshold obtained by taking into account at least one of the amount of notch consumed to move to the area and the remaining battery data indicating the remaining amount of battery are compared.
  • Determine which battery level corresponds to mode 4.
  • three threshold values used in the battery level determination unit 333 are prepared.
  • the notch level determination unit 333 first compares the notch remaining amount data with the second threshold value Ref2, and if the notch remaining amount power is equal to or greater than the second threshold value Ref2, the robot
  • State power of R battery 70 is determined to be mode 1.
  • the remaining battery level is less than the second threshold value Re! 2
  • the remaining battery level is compared with the third threshold value Ref3, and the remaining battery level is set to the third threshold value Ref3. If this is the case, it is determined that the state force mode 2 of the knot 70 of the robot R is determined.
  • the remaining battery level is less than the third threshold value Ref3
  • the remaining battery level is compared with the fourth threshold value Ref4, and the remaining battery level is equal to or higher than the fourth threshold value Ref4. If there is a robot R State power of knotter 70 is determined to be mode 3, and if the remaining amount of knotter is less than the fourth threshold Ref4, it is determined to be mode 4.
  • the second threshold value Re! 2 and the third threshold value Refi are values for which the following equations (5) and (6) are also calculated.
  • B is the amount of battery that is the robot activity limit (minimum required for autonomous movement of the robot).
  • C is the end position or mouth of the task currently being executed by the robot.
  • the current position force of Bot R also indicates the amount of battery consumed when moving to the movement target area.
  • ⁇ and ⁇ are the amount of battery consumed by the end of the task currently being executed by Robot R and the notch margin, respectively. It is the value which added and.
  • Wr is the amount of battery that the robot rule consumes only for the movement of the end position of the task currently being executed or the current position force of the robot rule to the movement target area
  • G battery task
  • Ctask is the amount of battery consumed by robot R only for task execution until the task currently being executed by robot R is completed, and bm is the battery margin.
  • the battery replenishment area (movement target area) set in the battery replenishment area selection unit 332 in the previous stage differs depending on whether or not the robot R is executing a task.
  • the second threshold value Ref2 and the third threshold value Refi used in the battery level determination unit 333 also have different values depending on whether or not the robot R force task is being executed.
  • the movement target area has the robot scale. Since Wr in Equation (7) is set based on the battery end consumed by the robot R to move to the task end position force movement target area, it is set based on the position at which the task in progress is completed (task end position). Become.
  • the second threshold value Ref2 is set to check whether the robot R's remaining battery power is sufficient to move to the movement target area after the robot R has performed the currently assigned task.
  • the third threshold value Refi is used to check whether the robot R's remaining battery charge is sufficient to move to the movement target area after the robot R performs the currently assigned task. This corresponds to the set value.
  • the movement target area is set based on the current position of the robot R. Therefore, Wr in the equation (7)
  • the current position force is also the amount of battery consumed to move to the movement target area.
  • the second threshold value Ref2 corresponds to the value set to confirm whether the robot R's remaining battery capacity is sufficient for the robot R to move from the current position to the movement target area.
  • the threshold value Refi corresponds to the value set to check whether the robot R's remaining battery power is sufficient for the robot R to move to the current position force movement target area.
  • the equations (5) and (6) are expressed by the equations (7) and (8). From (9), the following equations (10) and (11) are obtained.
  • Ref2 BL + Wr + G (battery task) + Ctask + 2bm
  • Ref3 BL + Wr + G (battery task) + Ctask + bm
  • the fourth threshold value Ref4 is a value calculated by the following equation (12), and the fourth threshold value Ref4 is the remaining battery power of the robot R. This value is set to check whether it is enough to move from the current position (current position) to the movement target area.
  • BL is the amount of battery that is the robot activity limit (minimum required for autonomous movement of the robot).
  • Cb is the amount of knotter that the robot R consumes when moving to the target area, and bm is the knotter margin.
  • Wr is the amount of battery consumed only by robot R moving to the current position movement target area
  • G battery task
  • the battery replenishment area (movement target area) set in the battery replenishment area selection unit 332 in the previous stage differs depending on whether or not the robot R is executing a task.
  • the movement target area is determined based on the task end position!
  • the amount of battery consumed for movement to the movement target area determined based on the task end position is consumed for movement to the movement target area newly set based on the current position of Robot R.
  • the amount of knotter may be smaller.
  • the notch level determination unit 333 determines the movement target area based on the current position of the robot R.
  • a signal (resetting request signal) for requesting resetting of the key is output to the battery replenishment area selecting unit 332.
  • the notch replenishment area selection unit 332 sets the coordinate data of the moving target area (moving target alternative area) reset based on the current position of the robot R!
  • the notch level determination unit 333 obtains the amount of battery consumed when the robot scale moves to the movement target alternative area with reference to the map information data database 210, and the obtained value.
  • the Ref4 value is also calculated for the force in the above equation (12) by using this as a comparison value.
  • the comparison value is larger than the fourth threshold value, the reference value is used as the fourth threshold value as it is.
  • the notch level determination unit 333 compares the notch remaining amount value with the fourth threshold value. If the notch remaining amount power is the fourth threshold value Ref4 or more, the state of the battery 70 of the robot R Is determined to be mode 3, and if the remaining battery level is less than the fourth threshold Ref4, it is determined to be mode 4.
  • the notch level determination unit 333 determines whether the state power of the battery 70 of the robot R corresponds to one of a plurality of predetermined battery levels (mode 1 to mode 4). The determination is made by comparing the remaining amount data with a threshold value.
  • the battery level determination unit 333 indicates whether the state power of the battery 70 of the robot R corresponds to one of the above modes (mode 1, mode 2, mode 3, or mode 4).
  • Information battery mode information including at least the information and data of each information item of the movement target information described above is generated, and the generated battery mode information is output to the task management unit 340.
  • the battery level determination unit 330 of the present embodiment first compares the battery remaining amount data included in the status information with the first threshold value. If the notch remaining amount data is equal to or greater than the first threshold value, the moving target area is not set.
  • the notch replenishment area when the value indicated by the notch remaining amount data is less than the third threshold value and the robot R is executing a task, the notch replenishment area
  • the selection unit 332 sets a movement target alternative area based on the current position of the robot R.
  • the amount of battery consumed by Robot R to move to the movement target substitution area is set first. If it is less than the amount of knot consumed for the movement to the movement target area, the battery level determination means 330 sets (resets) the movement target alternative area as the movement target area.
  • the movement target area can be reset to a movement target area that consumes less battery until it reaches the robot according to the current position of the robot.
  • R can be moved to the battery replenishment area while reducing battery consumption.
  • the task management means 340 sets an execution plan (task schedule) of tasks to be executed by the robot R for each robot R, and performs task execution according to the procedure determined for each battery level (mode 1 to mode 4).
  • the execution plan is reset.
  • the task management means 340 includes a task schedule generation unit 341 and a task schedule adjustment unit 342.
  • the task schedule generation unit 341 determines the robot R that executes each task based on the priority determined for each task, and sets the execution order of tasks assigned to the robot R for each robot R. To do.
  • the task schedule generation unit 341 sets an execution plan (task schedule) of tasks to be executed by each robot R.
  • the task schedule generation unit 341 is registered in the task information database 220 and is not executed ( Get data (task data) related to unprocessed tasks. Then, the task schedule generating unit 341 groups the tasks based on the priority included in the task data.
  • group priority can be divided into group C if the priority value of the task is less than 2, group B if it is less than 2 to less than 4, and group A if it is greater than 4.
  • the task schedule generation unit 341 selects a group (in this case, loop A) that has a higher priority task power from a plurality of existing groups (group A to group C). Schedule the task.
  • the task schedule generation unit 341 assigns all combinations that specify which tasks are assigned to each of the mouth bots R arranged in the task execution area and in which order the assigned tasks are executed. I will give you. Then, the task schedule generation unit 341 obtains, for each combination, the total cost required when all tasks are executed in accordance with the assignment of tasks specified in each combination to the robot R and the execution order of the tasks. Find the combination that minimizes the overall cost.
  • This scheduling is preferably done for Robot R, who has no reservation for battery replenishment tasks! /.
  • the task schedule generation unit 341 arranges all the tasks in the task execution area according to the task schedule defined for each combination (1 to 6). Calculate the total cost required when executed by robot R (R1, R2) In the present embodiment, the total cost (C 1) is calculated using the following formula (14).
  • w is a “weight value” that determines whether to focus on operating costs or time costs, and is a value that is arbitrarily set within the range of 0 ⁇ w ⁇ l.
  • the overall cost (C) tends to focus on battery consumption.
  • C indicates the time when robot R1 starts task 12 and robot R2 performs task 1 all complete.
  • the task schedule generation unit 341 obtains the total cost (C) for each combination, and the total total (C) value obtained for the combination having the smallest value is the total total.
  • the task assignment to be specified and the task execution order are determined as a task schedule.
  • the task schedule generation unit 341 performs the same operation for the remaining groups (group B and group C) in the order of group power with the highest priority, and performs task information data base.
  • the robot R to be executed is determined based on the unprocessed tasks among the tasks that are registered in the service 220, and the execution order of the tasks assigned to the robot R is set for each robot R. .
  • the task schedule adjustment unit 342 resets the task execution plan (task schedule) according to the procedure determined for each notch level. In other words, the task schedule adjustment unit 342 adds a task (battery replenishment task) that moves to the battery replenishment area to the task schedule of the robot R when the remaining battery capacity of the robot R falls below a certain threshold. Make a reservation or let Robot R execute the battery replenishment task.
  • the task schedule adjustment unit 342 performs a process set in advance for each mode indicated in the battery mode information. .
  • the task schedule adjustment unit 342 does nothing when the state of the battery indicated by the battery mode information is mode 1 (step S4, Yes).
  • the task schedule adjustment unit 342 determines that the robot R force identified by the robot ID from the task information included in the status information, some task, For example, it is confirmed whether or not a transportation task is being executed (step S6).
  • the task schedule adjustment unit 342 refers to the task schedule table 230 and performs a task schedule for robot R. It is confirmed whether or not a task (battery replenishment task) for moving the robot R to the movement target area is registered (reserved) in the module (step S7).
  • the task schedule adjustment unit 342 When the notch replenishment task is not registered (step S7, No), the task schedule adjustment unit 342 generates data necessary for registering the notch replenishment task in the task information database 220. Based on the generated data, the notch replenishment task is registered in the task information database 220 (step S8).
  • the task schedule adjustment unit 342 refers to the task information database 220 based on the task ID included in the notch mode information, and represents coordinate data indicating the end position of the currently executing task. And the data indicating the task end time and the coordinate data of the movement target area from the battery mode information.
  • the task schedule adjustment unit 342 uses the coordinate data indicating the end position of the task and the data indicating the end time of the task as the coordinate data of the start position of the notch replenishment task and the data indicating the start time, respectively.
  • the battery replenishment task is registered in the task information database 220.
  • the priority value is set to the highest value, and the robot performing the task is specified by the robot ID, and then the notch replenishment task is registered.
  • the task schedule adjustment unit 342 generates a signal (task update signal) indicating that the task information database 220 has been updated, and uses the generated task update signal as priority data generation means 320. Output to.
  • the priority of each task registered in the task information database 220 is reset, and the task schedule is set (reset) based on the priority set at this time. Will be performed according to the procedure.
  • processing in the task schedule adjustment unit 342 is performed as shown in FIG. 9, FIG. 10 (a), and FIG.
  • the task schedule adjustment unit 342 indicates that robot R is currently running.
  • the task schedule generation unit 341 performs the task.
  • the content of the task schedule table, which was previously unsatisfactory, will be updated to the content shown in Fig. 10 (b).
  • the task schedule adjustment unit 342 refers to the task schedule table 230 and determines the task schedule of robot R.
  • the task to move the robot R to the movement target area (battery replenishment task) is registered, and it is confirmed whether or not it has the power
  • step S9 If a notch replenishment task is registered (step S9, Yes), the task schedule adjustment unit 342 executes the battery replenishment task reserved in the task schedule table 230 to cause the mouthbot R to execute it.
  • An instruction request signal is output to the execution instruction generating means 350 (see FIG. 6).
  • the execution command generation means 350 generates an execution command for executing the notch replenishment task and outputs it to the robot R.
  • step S9, No the task schedule adjustment unit 342 executes the execution requesting the generation of the execution instruction having the instruction to execute the notch replenishment task.
  • An instruction request signal (battery replenishment signal) is output to the execution instruction generation means 350.
  • the robot R identified by the robot ID such as coordinate data indicating the current position of the robot R and coordinate data indicating the movement target area, together with the battery replenishment signal is displayed in the battery replenishment area.
  • Data required to move to Battery-related data is acquired from the battery mode information input from the battery level determination unit 333 and output to the execution command generation means 350.
  • the execution command generation means 350 generates an execution command for executing the notch replenishment task and outputs it to the robot R.
  • the task schedule adjustment unit 342 determines the robot R force task specified by the robot ID from the task information included in the status information. Check if the force is running (step S16).
  • the task schedule adjustment unit 342 executes an execution command request signal (request to generate an execution command with a content to stop the task being executed) (Task stop signal) is output to the execution command generation means 350 (step S17) 0
  • the task schedule adjustment unit 342 outputs an execution instruction request signal (forced battery replenishment signal) that requests generation of an execution instruction having a content for forcibly executing the notch replenishment task to the execution instruction generation means 350. (Step S18).
  • the task schedule adjustment unit 342 outputs a forced battery replenishment signal
  • the coordinate data indicating the current position of the robot R, the coordinate data indicating the movement target area, and the like, together with the forced battery replenishment signal The data required for the robot R specified by the robot ID to move to the battery supply area (battery replenishment related data) is obtained from the battery mode information input from the battery level determination unit 333 and executed.
  • step S16 when the task is not being executed (step S16, No), the forced notch replenishment signal and the notch replenishment related data are output to the execution command generating means 250 (step S18).
  • the robot R is forced to execute the notch exchange task based on the execution command generated by the execution command generation means 350 described later.
  • the task schedule adjustment unit 342 determines whether the battery status indicated by the battery mode information is When in mode 4 (Step SI 5, No), Robot R generates a signal (emergency signal) notifying the administrator that it cannot perform the task or move to the battery replenishment area. A signal (emergency signal request signal) required for the execution command generation unit 250 is generated and output to the execution command generation unit 250.
  • a signal emergency signal request signal
  • the execution command generation means 350 generates an execution command (data) for causing the robot R to execute a task.
  • Execution instruction generation means 350 is a signal for requesting execution instruction generation (execution instruction request signal). When input from 1S database management means 310 or task adjustment unit 342, it is included in the received execution instruction request signal Based on the robot ID, the task schedule table 230 is referred to, and the task registered in the task schedule table 230 is confirmed.
  • the execution instruction generating means 350 outputs an execution instruction (data) for causing the robot R to execute the task.
  • the information is generated by referring to the data of each information item in the database 220, and the generated execution command is output to the robot R specified by the robot ID via the input / output means 100.
  • the execution command generation means 350 receives an execution command request signal (task stop signal) for requesting generation of an execution command with a content to stop the task being executed by the robot R.
  • an execution command (data) for stopping the execution of the task is generated and output to the robot R specified by the robot ID via the input / output means 100.
  • the execution instruction generation means 350 executes an execution instruction request signal (forced battery replenishment signal, battery replenishment signal) that requests generation of an execution instruction that causes a notch replenishment task to be executed, and notch replenishment related data.
  • an execution instruction (data) for executing the notch replenishment task is generated and directed to the robot R identified by the robot ID via the input / output unit 100. Output.
  • the status information power transmitted from the robot R is input to the battery level determination means 330 via the input / output means 100 of the robot controller 3, and the battery replenishment determination unit 331 of the battery level determination means 330 receives the status information Referring to the task information T and the robot ID included in, it is confirmed whether or not the robot R force notch replenishment task specified by the robot ID is being executed (step S1).
  • step Sl If the robot rule is executing a notch replenishment task (step Sl, Yes), the data processing is terminated.
  • the battery replenishment determination unit 331 uses the battery information included in the status information to indicate data indicating the remaining amount of battery (battery remaining). Amount data) and the obtained battery remaining amount data is compared with a first threshold value (step S2).
  • step S2 If the value power indicated in the notch remaining amount data is greater than or equal to the first threshold (step S2, Yes), the battery replenishment determination unit 331 ends the process.
  • the battery supply determining unit 331 uses the status information input from the input / output unit 100 as the battery supply area selecting unit 332. Output to.
  • the notch replenishment area selection unit 332 selects the battery replenishment area where the robot R is replenished from the plurality of battery replenishment areas preset in the task execution area, and the selected battery replenishment area.
  • the area is set as the movement target area (step S3).
  • the coordinate information (current position data) indicating the current location of the robot R is acquired from the position information included in the status information. Set the movement target area based on the current position data.
  • the task information power task ID included in the status information is acquired, and the task information database 220 is referred to based on the task ID.
  • coordinate data (task end position data) indicating the position where the task currently being performed by robot R is completed is obtained. Then, a movement target area is set based on the acquired task end position data.
  • the notch level determination unit 333 confirms whether the notch remaining capacity robot R is sufficient to move to the movement target area set in step S3 after performing the currently assigned task. Then, the remaining battery data is compared with the second threshold (step S4).
  • step 4 If the battery is equal to or greater than the second threshold, that is, if the remaining battery level is sufficient (step 4, Yes), information indicating that the battery level is mode 1 (notch mode) Information) is generated and output to the task management means 340.
  • Step S5 Robot R's remaining battery power If it is less than the second threshold (Step 4, No), the remaining battery power is set in Step S3 after Robot R has performed the currently assigned task. In order to confirm whether it is sufficient to move to the movement target area, the remaining battery level data is compared with the third threshold value (step S5).
  • step 5 Information indicating that the battery level is mode 2 when the value of the remaining battery level of robot R is greater than or equal to the third threshold, that is, when the remaining battery level is sufficient (step 5, Yes) (notch mode) Information) is generated and output to the task management means 140.
  • the task management means 340 confirms whether or not the robot R specified by the robot ID is executing a task (step S6).
  • step S6 If the task is being executed (step S6, Yes), the task management means 340 checks whether or not the notch supplementary task is registered in the task schedule of the robot R (step S6).
  • step S7 if a notch replenishment task is registered (step S7, Yes), the process ends, whereas if a notch replenishment task is not registered (step S7, No), the task management means 340 Register the battery replenishment task in the task information database 220 (step S7, Yes).
  • step S6 the task management means 340 confirms whether or not the power is registered in the battery replenishment task force task schedule (step S9). If a notch replenishment task is registered (step S9, Yes), an execution command for instructing execution of the reserved battery replacement task is sent from the execution command generation means 350 to the robot R specified by the robot ID. Send (step S10). Then, when a signal (reception report signal) reporting that the execution command has been received is input from the robot scale, the task information database 220 is updated by the database management means 310 (step Sl 1).
  • step S9 if a notch replenishment task is registered (step S9, No), task management means 340 generates an execution instruction (data) for executing the notch replenishment task 350 To the robot R specified by the robot ID (step S12). Then, when a signal (reception report signal) reporting that the execution command has been received is input from the robot scale, the task information database 220 is updated by the database management means 310 (step S13).
  • Step 5 No If the value of the remaining battery amount of Robot R is less than the third threshold value (Step 5, No), the movement target area is reset based on the current position of Robot R to become the movement target substitution area . Then, the amount of battery consumed by the robot rule for movement from the current position to the movement target area set in step S3, and the amount of battery consumed by the robot rule for movement from the current position to the movement target alternative area Are calculated and compared. If the amount of knot power consumed to move to the movement target alternative area is less than the amount of knot consumption consumed to move to the movement target area, the movement target substitution area is reset as the movement target area. On the other hand, if the amount of battery consumed for moving to the moving target alternative area is larger than the amount of battery consumed for moving to the moving target area, the moving target area set in step S3 is used as it is. Set as the movement target area (step S14).
  • step S where robot R is currently located (current position).
  • step S 15 the remaining battery data is compared with the fourth threshold value.
  • step 15 If the value of the remaining battery level of the robot R specified by the robot ID is equal to or greater than the fourth threshold value (step 15, Yes), the task management means 340 indicates that the robot R specified by the robot ID is tasked. Confirm whether or not the key is being executed (step S16).
  • step S16 If the task is being executed (step S16, Yes), the task management means 340 An execution command (data) for stopping execution is transmitted from the execution command generation means 350 to the robot R specified by the robot ID (step S17).
  • the task management means 340 When the task is not being executed (step S16, No), the task management means 340 generates an execution instruction (data) for forcibly executing the notch supply task, and uses the robot ID via the input / output means 100. Output to the specified robot R (step S18).
  • step 15 No If the value of the remaining battery capacity of the robot R specified by the robot ID is less than the fourth threshold value (step 15, No), the task management means 340 executes the robot R force task, The input / output means 100 outputs an emergency signal notifying the server administrator that it is impossible to move to the area.
  • the task schedule adjustment unit 342 may register the canceled task in the task information database with the highest priority, and output a task update signal 320 priority data generation means.
  • the canceled task can be preferentially assigned to another robot R, so that the canceled task can be performed.
  • Such a function is suitable when the robot R is executing a task (guide task) of guiding a canceled task force visitor to a certain place.
  • a plurality of tasks having different priorities can be efficiently executed using a plurality of robots.
  • the robot R executes a task for refilling the battery.
  • Re-setting the execution plan (task schedule) of tasks assigned to each robot R for example, assigning tasks assigned to robot R determined to require replenishment to other robots' task schedules Sort out to Therefore, even under conditions where there is an unpredictable factor of human response, the robot can efficiently execute multiple tasks.

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

ロボット制御装置
技術分野
[0001] 本発明は、自律移動ロボットに一以上のタスクを実行させるロボット制御装置に関す るものである。より詳細には、自律移動ロボットの動力源であるバッテリの残量に基づ いて、自律移動ロボットに割り当てられた複数のタスクの実行順位の見直し、タスクの 変更、そしてタスクの他の自律移動ロボットへの振り分けなどを行って、自律移動ロボ ットで複数のタスクを効率良く実行するロボット制御装置に関するものである。
背景技術
[0002] 近年、自律移動可能なロボット(以下、「移動ロボット」と記載する)を用いて、荷物の 搬送業務、受付業務、そして案内業務などの各種の作業 (以下、総称して「タスク」と 記載する)を実行する試みが行われており、様々な分野で実用化されている。
[0003] 例えば、特開 2001— 92529号公報には、 FA (ファクトリーオートメーション)が導入 された製造工場内で荷物を搬送する移動ロボットの充電制御システムが開示されて いる。
この充電制御システムでは、各移動ロボットの運行をホストコンピュータが管理して おり、各移動ロボットは、ホストコンピュータの指示により、荷物の搬送や、充電ステー シヨンへ移動を行うように制御されて 、る。
[0004] このような工場内で荷物の搬送業務を行う移動ロボットは、温度や湿度などの工場 内の環境が一定に保たれて 、ること、荷物の搬送経路や搬送先が定まって 、ること から、移動ロボットが消費するバッテリの量 (バッテリ消費量)の予測が大きく外れるこ とがなぐ荷物の搬送や移動の途中でバッテリが不足して移動ロボットが停止すること が起こりにくい。
[0005] 一方、受付業務や案内業務などにおけるタスクのように、人が存在する環境下でタ スクを行う移動ロボットは、タスクの実行途中において、人が存在することに起因する 応答 (人応答)を行う必要が生じることが多 、。
[0006] 例えば、移動ロボットが移動する経路上に人がいる場合や、荷物が置いてある場合 には、移動ロボットには、人や荷物を回避するように移動経路を変更するという応答( 人応答)を行う必要が生じる
また、移動ロボットが、荷物をある人に渡すという内容のタスク (荷物配達タスク)を実 行している場合、荷物を渡す対象の人物 (対象人物)が常に同じ場所にいるとは限ら ないので、移動ロボットは、対象人物に到達するまで移動を続けるという応答 (人応答 )を行う必要が生じる。
[0007] このように、タスクを実行している途中において、移動ロボットが人応答を行うと、こ の人応答の際のバッテリ消費量が、タスクの実行に要するノ ッテリ消費量に加算され ることになる。この人応答の際のバッテリ消費量は、人応答の内容により大きく異なる ので、移動ロボットがタスクを実行する際に消費するバッテリの量 (バッテリ消費量)を 予測することは困難であった。
[0008] このように、この人応答という予期し得ない要因により、タスクを実行する際のバッテ リ消費量を一概に予測することができないので、タスクの途中でバッテリが不足してタ スクの遂行が困難となることや、移動ロボットに割当てられた総てのタスクを遂行でき なくなるといったことが、人が存在する環境下でタスクを行う移動ロボットの場合、工場 内の移動ロボットに比べて起こり易かった。
[0009] そこで、この人応答という予期し得ない要因が存在する条件の下でも、移動ロボット で複数のタスクを効率良く実行することができるようにする装置、すなわち、ロボットの 動力源であるバッテリの残量に基づいて、ロボットに割り当てられた複数のタスクの実 行順位の見直しや、未実行のタスクの他の移動ロボットへの振り分けや、遂行が困難 となったタスクの他の移動ロボットへの移管を行って、移動ロボットで複数のタスクを 効率良く実行するロボット制御装置に対する要求があった。 発明の開示
[0010] 本発明は、移動機能を備えたロボットの各々に実行させるタスクの管理を行うロボッ ト制御装置に関するものである。
このロボット制御装置は、前記ロボットのバッテリの残量に基づいて、前記バッテリの 状態が、予め規定された複数のバッテリレベルのうちのどのバッテリレベルであるかを 判定するバッテリレベル判定手段と、前記ロボットに実行させるタスクの実行計画を口 ボット毎に設定すると共に、前記バッテリレベル毎に定められた手順に従って、前記 実行計画に登録されたタスクの実行順位の見直しや、タスクの変更を行うタスク管理 手段と、前記実行計画にぉ 、て設定されたタスクを前記ロボットに実行させる実行命 令を生成する実行命令生成手段と、前記実行命令を前記ロボットに向けて送信する 送信手段とを含んで構成される。
[0011] このロボット制御装置では、前記タスク管理手段が行う前記実行計画に登録された タスクの実行順位の見直しにより、前記ロボットでの実行が困難であると判断されたタ スクを、他のロボットの実行計画に登録することが好ま 、。
[0012] さらに、このロボット制御装置の前記バッテリレベル判定手段は、前記バッテリの残 量に基づいて、前記ロボットのノ ッテリの補給 (交換 ·充電)が必要である力否かを決 定するバッテリ補給決定部と、ノ ッテリ補給が必要であると決定された場合に、予め 用意された複数のバッテリ補給エリアの中力 一つのノ ッテリ補給エリアを選択し、選 択したバッテリ補給エリアを前記ロボットの移動目標エリアとして設定するバッテリ補 給エリア選択部と、前記ロボットが実行中であるタスクの遂行に消費されるノ ッテリ量 と、前記ロボットの前記移動目標エリアへの移動に消費されるバッテリ量とを加味して 求めた閾値と、前記バッテリ残量との比較により、前記バッテリの状態が、予め規定さ れた複数のバッテリレベルのうちのどのバッテリレベルであるかを判定するバッテリレ ベル判定部とを有することが好まし 、。
[0013] ここで、前記バッテリ補給エリア選択部では、前記ロボットの現在位置若しくは前記 ロボットが実行中のタスクの終了位置に基づいて、前記移動目標エリアの設定を行う ことが好ましい。
[0014] また、このロボット制御装置の前記タスク管理手段は、ノ ッテリ補給が必要であると 決定された場合に、前記ロボットを前記移動目標エリアに移動させる移動タスクを前 記実行計画に登録することが好ま 、。
[0015] 本発明に係るロボット制御装置によれば、各ロボットの動力源であるバッテリの残量 に基づいて、各ロボットの実行計画に登録されたタスクの実行順位の見直しや、タス クの変更、遂行が困難となったタスクの他のロボットへの移管を行って、ロボットで複 数のタスクを効率良く実行することができる。よって、人応答という予期し得ない要因 が存在する条件の下でも、ロボットで複数のタスクを効率良く実行することができる。 図面の簡単な説明
[0016] [図 1]本発明の実施形態に係るロボット制御システム Aのシステム構成図である。
[図 2]ロボット Rのブロック図である
[図 3]ロボット制御装置 3のブロック構成図である。
[図 4]タスク情報データベース 220の情報項目の一例を示す説明図である。
[図 5]タスクスケジュールテーブル 230の構成の一例を示す説明図である。
[図 6]ロボット制御装置 3の制御手段 300と記憶手段 200のブロック構成図である。
[図 7]タスクスケジュール生成部 341で行われる処理を説明するための説明図である
[図 8]タスクスケジュール生成部 341で行われる処理を説明するための説明図である
[図 9]ノ ッテリ予約タスクが登録された際のタスク情報データベース 220の例を示す説 明図である。
[図 10] (a)は、ノ ッテリ予約タスクが登録される前のタスクスケジュールテーブル 230 の例を示す説明図である。(b)は、ノ ッテリ予約タスクが登録された際のタスクスケジ ユールテーブル 230の例を示す説明図である。
[図 11]ロボット Rのタスクスケジュールにバッテリ補給タスクを挿入するカゝ否かを決定 する際の、ロボット制御装置 3において行われる処理を説明するフローチャートである 発明を実施するための最良の形態
[0017] 以下、本発明の実施形態について、適宜図面を参照しながら説明する。
図 1は、本発明に係るロボット制御装置を備えたロボット制御システムのシステム構 成図である。
[0018] (ロボット制御システムの構成)
はじめに、本発明の実施形態におけるロボット制御装置が組み込まれたロボット制 御システムつ 、て説明する。
[0019] 図 1に示すように、このロボット制御システム Aは、移動機能を備えた複数のロボット RA, RB, RC (ただし、ロボットを特定しない場合は、単にロボット Rという)を有してお り、各ロボット Rは、ロボット制御装置 3においてロボット R毎に予め設定されたタスクの 実行計画 (タスクスケジュール)に従って、タスクを実行する。そして、このロボット制御 システム Aでは、各ロボット Rのバッテリの残量に基づいて、タスクスケジュールに登録 されたタスクの再設定を行って、複数のロボット Rで複数のタスクを効率良く実行する ように構成されている。
[0020] 図 1に示すように、ロボット制御システム Aは、複数のロボット Rと、これらロボット尺と 無線通信によって接続された基地局 1と、この基地局 1とルーター 2を介して接続され たロボット制御装置 3と、ロボット制御装置 3にネットワーク 4を介して接続された端末 5 とを含んで構成される。
[0021] ロボット Rは、ロボット制御装置 3から入力された実行命令に従ってタスクを実行する ものであり、ロボット Rがタスクを実行する領域として予め設定されたタスク実行エリア 内に、少なくとも一台配置されている。
ここで、図 1には、来訪者を会議室などの所定の場所に案内するという内容のタスク (案内タスク)を実行中のロボット RAと、荷物をある人に渡すという内容のタスク (荷物 配達タスク)を実行中のロボット RBと、新たなタスクが割り当てられるのを待つと ヽぅ内 容のタスク (待機タスク)を実行中のロボット RCとが、例示されている。
[0022] 基地局 1は、ロボット Rとロボット制御装置 3との間のデータ交換を仲介するものであ る。
具体的には、基地局 1は、ロボット制御装置 3から出力された実行命令をロボット R に送信すると共に、ロボット Rから送信されたロボット Rの状態に関するデータ (ステ一 タス情報)やロボット Rが実行命令を受信したことを示す信号 (受信報告信号)を受信 して、ロボット制御装置 3に出力するものである。
基地局 1は、ロボット Rとロボット制御装置 3との間のデータ交換を確実に行えるよう にするために、タスク実行エリア内に少なくとも一つ設けられて 、る。
なお、タスク実行エリアが建物の数フロアに亘つて設定されている場合には、フロア 毎に設けられていることが好ましぐ一つの基地局 1では総てのタスク実行エリアを力 バーできない場合には、複数の基地局 ]_がタスク実行エリア内に設けられていること が好ましい。
[0023] ロボット制御装置 3は、ロボット Rに実行させるタスクの実行計画(タスクスケジュール )を、ロボット R毎に設定すると共に、ロボット Rのバッテリ残量に基づいて、タスクスケ ジュールに登録されたタスクの再設定 (タスクの実行順位の見直しや、タスクの変更) を行うものである。
端末 5は、ロボット Rに実行させるタスクの登録や、ロボット制御装置 3において設定 されるタスクスケジュールの変更や、ロボット Rの動作命令の入力などを行うものであ る。
[0024] 以下、ロボット R及びロボット制御装置 3の構成についてそれぞれ詳細に説明する。
[0025] [ロボット]
本実施形態のロボット Rは、自律移動型の 2足歩行ロボットである。
このロボット Rは、主として、ロボット制御装置 3から送信された実行命令に基づいて 、タスクを実行するものである。
[0026] 図 1に示すように、このロボット Rは、頭部 Rl、腕部 R2、脚部 R3を有しており、頭部 Rl、腕部 R2、脚部 R3は、それぞれァクチユエータにより駆動され、自律移動制御部 50 (図 2参照)により 2足歩行の制御がなされる。この 2足歩行についての詳細は、例 えば特開 2001— 62760号公報に開示されている。
[0027] 図 2は、ロボット Rのブロック構成図である。
図 2に示すように、ロボット Rは、前記した頭部 Rl、腕部 R2、脚部 R3に加えて、カメ ラ C, C、スピーカ S、マイク MC、画像処理部 10、音声処理部 20、制御部 40、自律 移動制御部 50、無線通信部 60、バッテリ 70を有している。
さらに、ロボット Rの位置を検出するため、ジャイロセンサ SR1や GPS受信器 SR2を 有している。
[0028] [カメラ]
カメラ C, Cは、映像をデジタルデータとして取り込むことができるものであり、例えば カラー CCD (Charge- Coupled Device)カメラが使用される。カメラ C, Cは、左右に平 行に並んで配置され、撮影した画像は画像処理部 10に出力される。このカメラ C, C と、スピーカ S及びマイク MCとは、いずれも頭部 R1の内部に配設されている。 [0029] [画像処理部]
画像処理部 10は、カメラ C, Cが撮影した画像を処理して、撮影された画像カゝらロボ ット Rの周囲の状況を把握するため、周囲の障害物や人物の認識を行う部分である。 この画像処理部 10は、ステレオ処理部 l la、移動体抽出部 l lb、及び顔認識部 11c を含んで構成される。
ステレオ処理部 11aは、左右のカメラ C, Cが撮影した 2枚の画像の一方を基準とし てパターンマッチングを行い、左右の画像中の対応する各画素の視差を計算して視 差画像を生成し、生成した視差画像及び元の画像を移動体抽出部 l ibに出力する 。なお、この視差は、ロボット R力も撮影された物体までの距離を表すものである。
[0030] 移動体抽出部 l ibは、ステレオ処理部 11aから出力されたデータに基づき、撮影し た画像中の移動体を抽出するものである。移動する物体 (移動体)を抽出するのは、 移動する物体は人物であると推定して、人物の認識をするためである。
移動体の抽出をするために、移動体抽出部 l ibは、過去の数フレーム(コマ)の画 像を記憶しており、最も新しいフレーム (画像)と、過去のフレーム(画像)を比較して、 ノターンマッチングを行い、各画素の移動量を計算し、移動量画像を生成する。そし て、移動体抽出部 l ibは、視差画像と、移動量画像とから、カメラ C, Cから所定の距 離範囲内で、移動量の多い画素がある場合に、その位置に人物がいると推定し、そ の所定距離範囲のみの視差画像として、移動体を抽出し、顔認識部 11cへ移動体の 画像を出力する。
[0031] 顔認識部 11cは、抽出した移動体力 肌色の部分を抽出して、その大きさ、形状な ど力 顔の位置を認識する。なお、同様にして、肌色の領域と、大きさ、形状などから 手の位置も認識される。
認識された顔の位置は、ロボット Rが移動するときの情報として、また、その人とのコ ミュ-ケーシヨンを取るため、制御部 40に出力されると共に、無線通信部 60に出力さ れて、基地局 1を介して、ロボット制御装置 3に送信される。
[0032] [音声処理部]
音声処理部 20は、音声合成部 21aと、音声認識部 21bとを有している。 音声合成部 21aは、制御部 40が決定し、出力してきた発話行動の指令に基づき、 文字情報から音声データを生成し、スピーカ Sに音声を出力する部分である。音声デ ータの生成には、予め記憶している文字情報と音声データとの対応関係を利用する 音声認識部 21bは、マイク MC力 音声データが入力され、予め記憶している音声 データと文字情報との対応関係に基づき、音声データから文字情報を生成し、制御 部 40に出力するものである。
[0033] [制御部]
制御部 40は、後記するロボット制御装置 3に出力する信号を生成すると共に、ロボ ット制御装置 3から出力された実行命令に基づいて、ロボット Rの各部(画像処理部 1 0、音声処理部 20、自律移動制御部 50、及び無線通信部 60)を制御するものである
[0034] 具体的には、制御部 40は、ロボット制御装置 3から出力された実行命令を受信する と、当該実行命令を受信したことを示す信号 (受信報告信号)を生成し、受信報告信 号を無線通信部 60を介してロボット制御装置 3に出力する。
さらに、制御部 40は、実行命令において規定されるタスクを実行するために、ロボッ ト Rの各部(画像処理部 10、音声処理部 20、自律移動制御部 50、及び無線通信部 60)を制御する制御信号を生成し、生成した制御信号を、必要に応じてロボット尺の 各部に出力する。
[0035] また、制御部 40は、ロボット Rの状態に関するデータ (ステータス情報)を、所定時 間間隔毎に生成し、生成したステータス情報を無線通信部 60を介してロボット制御 装置 3に出力する。
ここで、ステータス情報とは、後記するロボット制御装置 3において、ロボット Rのバッ テリ補給が必要であるか否かを判断する際に用いられるものである。
本実施形態の場合、このステータス情報には、ロボット Rに搭載されたバッテリ 70の 残量を示すバッテリ残量データや、ノ ッテリ温度、ノ ッテリの電圧値、そしてバッテリ の電流値などを示すデータ(以下、これらを総称してバッテリ情報という)と、ロボット R の現在位置を示す座標データ (位置情報)と、ロボット Rが現在行っているタスクの内 容を示すタスク IDとその進行状況とを示すデータ (タスク情報)と、ロボット Rに割り当 てられた固有の識別番号を示すデータ(ロボット ID)とが含まれて 、る。
[0036] 本実施形態では、制御部 40がステータス情報を、 (1)定期的に生成し、送信する 態様となっているが、(2)バッテリ残量が所定値以下となった場合や、(3)ロボット制 御装置 3から送信された、ステータス情報の送信を要求する信号 (データ要求信号) を受信した場合に、制御部 40がステータス情報を生成し、送信する態様としても良い 。もちろん、これら(1)〜(3)の態様を任意に組み合わせた態様とすることも可能であ る。
[0037] [自律移動制御部]
自律移動制御部 50は、頭部制御部 51a、腕部制御部 51b、脚部制御部 51cを有し ている。
頭部制御部 51aは、制御部 40から入力される制御信号の指示に従 ヽ頭部 R1を駆 動し、腕部制御部 51bは、制御部 40から入力される制御信号の指示に従い腕部 R2 を駆動し、脚部制御部 51cは、制御部 40から入力される制御信号の指示に従い脚 部 R3を駆動する。
[0038] [無線通信部]
無線通信部 60は、ロボット制御装置 3とデータの送受信を行う通信装置である。無 線通信部 60は、公衆回線通信装置 6 la及び無線通信装置 6 lbを有している。 公衆回線通信装置 61aは、携帯電話回線や PHS (Personal Handyphone Syste)回 線などの公衆回線を利用した無線通信手段である。一方、無線通信装置 6 lbは、 IE EE802.11b規格に準拠する無線 LANなどの、近距離無線通信による無線通信手段 である。
無線通信部 60は、ロボット制御装置 3からの接続要求に従い、公衆回線通信装置 61a又は無線通信装置 61bを選択してロボット制御装置 3とデータ通信を行う。
[0039] ノ ッテリ 70は、ロボット Rの各部の動作や処理に必要な電力の供給源である。
ジャイロセンサ SR1及び GPS受信器 SR2は、ロボット Rの現在位置を示す座標デ ータを定期的に生成し、生成した座標データを制御部 40に出力する。この座標デー タは、ロボット Rの行動を決定するのに利用されると共に、前記したステータス情報の 生成に用いられる。 [0040] [ロボット制御装置]
図 1におけるロボット制御装置 3は、主として、ロボット Rに実行させるタスクの実行計 画(タスクスケジュール)を、ロボット R毎に設定すると共に、ロボット Rのバッテリ残量に 基づいて、タスクスケジュールの見直し(タスクの割り当ての変更やタスクの変更)を行 うものである。
図 3に示すように、ロボット制御装置 3は、入出力手段 100と、記憶手段 200と、制 御手段 300とを主要部として含んで構成される。
[0041] [入出力手段]
入出力手段 100は、基地局 1やネットワーク 4を介して、ロボット Rや端末 5との間で データ交換を行うためのインタフェースである。
本実施形態の場合、ロボット Rから送信されるステータス情報及び受信報告信号、 端末 5から送信されるタスクの登録や更新を要求する信号 (タスク要請信号)、そして 後述する実行命令生成手段 350において生成される実行命令力 この入出力手段 1 00を介して、やり取りされる。
入出力手段 100は、入力されるステータス情報とタスク要請信号と受信報告信号と のうち、ステータス情報とタスク要請信号と受信報告信号とをデータベース管理手段 310に出力し、ステータス情報のみをバッテリレベル判定手段 330に出力する。
[0042] [記憶手段]
記憶手段 200は、ロボット Rの制御に必要な情報を記憶するものであり、この記憶手 段 200には、地図情報データベース 210と、タスク情報データベース 220と、タスクス ケジュールテーブル 230と、ロボット情報データベース 240と、が少なくとも記憶され ている。
[0043] <地図情報データベース >
地図情報データベース 210は、ロボット Rがタスクを実行する領域 (タスク実行エリア )の地図情報(グローバルマップ)を格納するデータベースである。
この地図情報データベース 210では、タスク実行エリア内に存在するもの、例えば、 通路、階段、エレベータ、部屋、そしてバッテリ補給エリアなどの情報が、タスク実行 エリア内における位置を示す座標データと関連づけて登録されている。 [0044] したがって、本実施形態の場合、ロボット R自身の現在位置をもとに地図情報デー タベース 210を参照することで、タスク実行エリア内に配置されたロボット Rと、タスク 実行エリア内の特定物(目標)との位置関係を知ることができる。
例示すると、ロボット Rからバッテリ補給エリアまでの距離や、ノ ッテリ補給エリアが口 ボット Rの正面を基準として、どの方向に位置するかなどが判ることになる。
[0045] よって、この位置関係に基づ!/、て、ロボット Rの自律移動やタスクの実行命令する信 号 (実行命令)をロボット制御装置 3において生成することで、ロボット Rを、タスク実行 エリア内の所望の位置 (例えば、タスクの開始位置)に、最短かつ最適の経路を経て 、移動させることができるので、ロボット Rの自律移動やロボット Rによるタスクの実行が 可能となる。さらに、この位置関係とロボット Rの平均移動速度に基づいて、ロボット R が移動する際のバッテリ消費量や時間も算出することができる。
なお、本実施形態の場合、地図情報データベース 210に記憶される地図情報の更 新は、オペレータが操作する端末 5からデータを入力することで、データベース管理 手段 310が行うように設定されて!、る。
[0046] <タスク情報データベース >
タスク情報データベース 220は、ロボット Rに実行させるタスクに関する情報 (タスク データ)を記憶するデータベースである。
このタスク情報データベースには、図 4に示すように、タスク毎に割り当てられた固 有の識別子であるタスク ID、タスクの優先度、タスクの重要度、タスクを実行させる口 ボットの識別子であるロボット ID、案内や運搬などのタスクの内容、タスク実行エリア 内におけるタスクを開始する位置(開始位置)、タスク実行エリア内におけるタスクを 終了する位置(終了位置)、タスクの実行に要する時間(所要時間)、そしてタスクの 開始予定時刻(開始時刻)、タスクの終了予定時刻(終了時刻)、そしてタスクの状態 などが、情報項目として含まれている。
[0047] 本実施形態の場合、このタスク情報データベース 220へのタスクの新規登録や、登 録されたタスクの情報項目の内容の更新は、オペレータが操作する端末 5からデータ を入力することで、データベース管理手段 310が行うように設定されている。
ここで、あるユーザが荷物の運搬タスクをこのタスク情報データベース 220に登録す る場合を例に挙げて説明すると、ユーザが、タスクの内容と、開始位置と、終了位置と 、開始時刻とを端末 5から入力すると、タスク情報データベース 220には、図 4のタス ク ID= 10の欄に示すような情報項目の内容を有するタスクが登録されることになる。
[0048] <タスクスケジュールテーブル >
タスクスケジュールテーブル 230は、図 5に示すように、ロボット Rに実行させるタスク の実行順位、タスク情報データベース 220に登録されたタスクを特定するためのタス ク ID、タスクの優先度、タスクの内容、そしてタスクの状態を情報項目として含むテー ブルである。
このタスクスケジュールテーブル 230では、これら情報項目力 タスク実行エリア内 に配置されたロボット R毎に整理されており、どの様なタスク力 どのような順番で各口 ボット Rに割り当てられて!/、るのかを把握できるようになって!/、る。
[0049] ここで、図 5の場合を例に挙げて説明すると、 ID= 1で特定されるロボット Rには、タ スク ID= 3で特定されるタスクが割り当てられており、このタスクの優先度は、「3」であ り、タスクの内容は「運搬」であり、ロボット ID = 1で特定されるロボット Rがこのタスクを 実行中であることが確認できる。
そして、タスク ID = 3で特定されるタスクの次には、タスク ID = 7で特定されるタスク が予約されて 、ることが確認できる。
[0050] 本実施形態では、このタスクスケジュールテーブル 230において表示される各情報 項目は、タスク IDを参照用の識別子として、前記したタスク情報データベース 220の 対応する情報項目とリンクさせてある。
すなわち、このタスクスケジュールテーブル 230は、タスク情報データベース 220に 登録されたタスクのうちの未処理のタスクの各ロボット Rへの割り当てと、各ロボット R におけるタスクの実行順序を規定するデータベースである。
ちなみに、このタスクスケジュールテーブル 230に示されるタスクの割り当て及び実 行順序は、後記するタスク管理手段 340により決定 ·変更されるものである。
[0051] <ロボット情報データベース >
ロボット情報データベース 240は、ロボット Rの状態に関するデータ (ステータス情報 )を格納するデータベースである。 ロボット情報データベース 240には、前記したバッテリ情報、位置情報、タスク情報 、そしてロボット Rの駆動系異常の有無などに関する情報 (データ)などが情報項目と して含まれており、これら情報項目はロボット IDに関連付けて整理されている。
このロボット情報データベース 240に記憶される各情報項目の内容の更新は、ロボ ット Rから送信されたステータス情報に基づ ヽて、後記する制御手段 300のデータべ ース管理手段 310により行われる。
[0052] [制御手段]
図 3及び図 6を参照して、制御手段 300は、データベース管理手段 310と、優先度 データ生成手段 320と、ノ ッテリレベル判定手段 330と、タスク管理手段 340と、実行 命令生成手段 350とを含んで構成される。
[0053] <データベース管理手段 >
データベース管理手段 310は、記憶手段 200に記憶された各データベースへのデ ータの登録や、各データベースに登録されたデータの更新などを行うものである。 例えば、データベース管理手段 310は、ロボット Rの状態を示すステータス情報力 入出力手段 100を介して入力されると、ステータス情報に含まれるロボット IDに基づ いて、ロボット情報データベース 240を参照し、ロボット IDにより特定されるロボット R に関する情報項目の内容 (データ)を、ステータス情報から取得した情報項目の内容 (データ)に更新する。
また、データベース管理手段 310は、ステータス情報に含まれるタスク情報が、ロボ ット R力 Sタスクの実行を完了して 、ることを示して 、る場合は、ロボット Rに割り当てられ た次のタスクを当該ロボット Rに実行させるために、タスクの実行をロボット Rに命令す る実行命令の生成を実行命令生成手段 350に要求する信号 (実行命令要求信号) を生成し、生成した実行命令要求信号を実行命令生成手段 350に出力する。
[0054] さらに、データベース管理手段 310は、端末 5において入力された新規タスクの登 録ゃタスクの変更を要求する信号 (タスク要請信号)が、入出力手段 100を介して入 力されると、タスク情報データベース 220の更新 (情報項目の内容の更新)を行い、タ スク情報データベース 220の更新が行われたことを示す信号 (タスク更新信号)を生 成し、生成したタスク更新信号を優先度データ生成手段 320に出力する。 [0055] <優先度データ生成手段 >
優先度データ生成手段 320は、ロボット Rに実行させるタスクの優先度を決定するも のである。
具体的には、この優先度データ生成手段 320は、データベース管理手段 310から 、タスク更新信号が入力された場合や、タスク管理手段 340から、ノ ッテリ補給タスク がタスク情報データベース 220に登録されることにより、タスク情報データベース 220 の更新が行われたことを示す信号 (タスク更新信号)が入力された場合に、タスク情報 データベース 220に登録されて 、るタスクであって、未処理 (未実行)のタスクの優先 度を決定する。
そして、タスク情報データベース 220に登録されたタスクの中で、未実行のタスクに つ 、てのスケジューリングを行うことを要求する信号 (スケジュール要求信号)を生成 し、タスク管理手段 340に出力する。
[0056] 本実施形態の場合、タスクの優先度の決定は、タスク情報データベース 220にタス クを登録する際に設定されたタスクの重要度、タスクの開始位置力 最も近い位置に V、るロボットと当該タスクの開始位置との離間距離、現在の時刻からタスクの開始時 刻や終了時刻までの時間的余裕、をカ卩味した上で行われる。
[0057] 具体的には、優先度データ生成手段 320が、各タスクの優先度 Pを下記式(1)に基 づ 、て算出することで、タスクの優先度の決定が行われる。
[0058] Ρ = ( · ' · ·(1)
Figure imgf000016_0001
[0059] ここで、 「T 」は、タスク情報データベース 220にタスクを登録する際に任意に決定
ρπ
されたタスクの重要度である。
本実施形態では、このタスクの重要度を示す値は、 1. 0から 5. 0の間で、 0. 5刻み で設定されており、重要度の最も小さいタスクは 1. 0で、重要度が最も大きいタスクは 5. 0で、それぞれ示されている。
[0060] また、「Τ 」は、タスクの開始位置に最も近い位置にいるロボット尺が、当該タスクの
sp
開始位置まで移動するのに要する時間であり、「n (T;)」は、タスクの開始位置の近く
sp
にロボット Rが存在する場合に、当該ロボット Rにタスクを優先させて実行させるため の距離依存重要度である。 「n(T;)」の値は、ロボット Rがタスクの開始位置の近くに位置するほど、大きくなるよ sp
うに設定されており、本実施形態では、「τ」が所定の閾値以下となる場合にのみ、「
sp
n (T )」が所定の正の値をとるように設定されており、 ΓΤ」が所定の閾値よりも大きい sp sp
場合には、「n(T ;)」の値は「0」となるように設定されている。
sp
[0061] さらに、「f (T ;)」は、現在の時刻からタスクの開始時刻や終了時刻までの時間的余
err
裕に基づいて、タスクを優先させて実行させるための時間依存重要度である。
本実施形態の場合、「f (T )」は、 0〜1までの値となるように設定されており、その
err
値は、タスク開始時刻が近づくに従って急激に増加して「0」から「1」に近づき、基準 時刻(タスク開始時刻よりもタスクの実行に要する時間分だけ前の時刻)カゝらタスク終 了時刻までの間は最大値である「1」となり、タスク終了時刻が経過すると、徐々に減 少して「0」となるように設定されて!、る。
[0062] より具体的に説明すると、本実施形態の場合、現在時刻が基準時刻よりも前である 場合は下記式 (2)で、現在時刻が基準時刻以降であってタスク終了時刻が経過する 前である場合は下記式(3)で、現在時刻がタスク終了時刻以降である場合は下記式 (4)で、時間依存重要度 f (T )が算出される。
err
[0063] KT ) = exp(-K((T - T )/Τ 》 · ' · ·(2)
err err time time
KT ) = 1 · ' · ·(3)
err
KT ) = (1+οοδ(( π /Τ
rr time )(T err /C )))/2 · ' · ·(4)
e obli
[0064] ここで、 T は、現在時刻とタスク開始時刻との間の時間間隔であり、タスク開始時刻
err
の前では正の値となり、タスク開始時刻の後では負の値となる。また、 T は、タスクの
time
実行に要する時間(タスク所要時間)であり、 C は、忘却係数であり、 T = -c ·τ
obli err obli time となった場合に、 Κτ ) = oとなるように設定された係数である。
err
[0065] このように、タスクを登録する際に設定されたタスクの重要度、タスクの開始位置から 最も近 ヽ位置に!/ヽるロボット Rと当該タスクの開始位置との離間距離、現在の時刻か らタスクの開始時刻や終了時刻までの時間的余裕、を加味した上で、各タスクの優先 度 Pが算出されるので、タスクの優先度として好適な値を得ることができる。
[0066] <バッテリレベル判定手段 >
バッテリレベル判定手段 330は、図 6に示すように、ロボット Rのバッテリ 70の残量( ノ ッテリ残量)に基づいて、ロボット Rに搭載されたバッテリ 70の状態力 予め規定さ れた複数のバッテリレベルのうちの何れのバッテリレベルに該当するのかを判定する ものである。
[0067] このノ ッテリレベル判定手段 330は、バッテリ補給決定部 331と、ノ ッテリ補給エリ ァ選択部 332と、ノ ッテリレベル判定部 333とを含んで構成される。
[0068] ノ ッテリ補給決定部 331は、ロボット Rのノ ッテリ 70の補給 (交換 ·充電)が必要であ る力否かを決定するもの、すなわち、明らかにバッテリ補給が必要でない場合を除外 するものである。
具体的には、ノ ッテリ補給決定部 331は、ステータス情報が入出力手段 100から入 力されると、当該ステータス情報に含まれるタスク情報から、ロボット Rが、ノ ッテリ補 給タスクを実行中である力否かを確認し、ノ ッテリ交換タスクをロボット Rのタスクスケ ジュールに挿入する必要がある力否かを決定する。
[0069] ここで、ロボット Rがノ ッテリ補給タスクを実行中である場合は、ノ ッテリ補給が必要 でない場合に相当するので、ノ ッテリ補給決定部 331は処理を終了する。
一方、ロボット R力 Sバッテリ補給タスクを実行中でない場合、バッテリ補給決定部 33 1は、ステータス情報に含まれるバッテリ情報から、ノ ッテリ 70の残量を示すデータ( ノ ッテリ残量データ)を取得し、取得したバッテリ残量データと、予め設定された第 1 の閾値とを比較する。
[0070] バッテリ補給決定部 331は、バッテリ残量データで示される値が第 1の閾値未満で ある場合、入出力手段 100から入力されたステータス情報を、ノ ッテリ補給エリア選 択部 332に出力する。
一方、ノ ッテリ残量データで示される値が第 1の閾値以上である場合、ノ ッテリ補給 決定部 331は処理を終了する。
[0071] ここで、第 1の閾値は、ノ ッテリ補給が明らかに不要である場合を除外して、バッテリ レベル判定手段 330 (ロボット制御装置 3)におけるデータ処理の負担を軽減するた めに用意されたものである。
本実施形態の場合、第 1の閾値は、ロボット Rが配置されるタスク実行エリアの状態
、例えば、アップダウンが多い、環境が高温多湿であるといった、ノ ッテリの消費に影 響し得る要因を考慮の上、予め設定される値である。
[0072] ノ ッテリ補給エリア選択部 332は、ステータス情報に含まれるロボット IDにより特定 されるロボット Rについて、当該ロボット Rがバッテリの補給のために移動する場所 (バ ッテリ補給エリア)を決定するものである。
ノ ッテリ補給エリア選択部 332は、ノ ッテリ補給決定部 331からステータス情報が入 力されると、ステータス情報に含まれるタスク情報を参照し、ロボット Rが、ノ ッテリ補 給タスク以外の何らかのタスクを実行中である力否かを確認する。
そして、ロボット R力 Sタスクを実行中でない場合、ノ ッテリ補給エリア選択部 332は、 ステータス情報に含まれる位置情報からロボット Rの現在位置を示す座標データ (現 在位置データ)を取得する。
そして、ノ ッテリ補給エリア選択部 332は、現在位置データに基づいて地図情報デ ータベース 210を参照し、タスク実行エリア内に予め設定された複数のバッテリ補給 エリア(B1〜B3、図 1参照)の中から、現在位置データで特定される位置から最寄り のノ ッテリ補給エリアであって、ノ ッテリ補給の予約が入って ヽな ヽバッテリ補給エリ ァを選択し、選択したバッテリ補給エリアをロボット Rの移動目標エリアとして設定する
[0073] 一方、ロボット Rがタスクを実行中である場合、ノ ッテリ補給エリア選択部 332は、ス テータス情報に含まれるタスク情報から、ロボット Rが現在実行中のタスクを示すタス ク IDを取得する。そして、当該タスク IDをもとにタスク情報データベース 220を参照し 、ロボット Rが現在行って ヽるタスクが終了する位置(タスク終了位置)を示す座標デ ータ(タスク終了位置データ)を取得する。
そして、ノ ッテリ補給エリア選択部 332は、タスク終了位置データに基づいて地図 情報データベース 210を参照し、タスク実行エリア内に予め設定された複数のバッテ リ補給エリア(B1〜B3)の中から、タスク終了位置データで特定される位置から最寄 りのノ ッテリ補給エリアであって、ノ ッテリ補給の予約が入っていないバッテリ補給エリ ァを選択し、選択したバッテリ補給エリアをロボット Rの移動目標エリアとして設定する
[0074] ここで、バッテリ補給の予約が入って 、な 、バッテリ補給エリアとは、他のロボット R がバッテリの補給のために移動する場所 (移動目標エリア)として設定されて 、な!/、バ ッテリ補給エリアをいう。なお、このノ ッテリ補給の予約の有無は、タスク情報データべ ースを参照することで確認できるように構成されて 、る。
[0075] そして、ノ ッテリ補給エリア選択部 332は、移動目標エリアの座標データと、ステー タス情報の各情報項目のデータとを含んで構成される移動目標情報を生成し、生成 した移動目標情報をバッテリレベル判定部 333に出力する。
なお、これら座標データは、後段に位置するバッテリレベル判定部 333において、 閾値 (第 2の閾値〜第 4の閾値)を算出する際に利用される。
[0076] このように、本実施形態では、ロボット Rがタスクを実行中である力否かに応じて、移 動目標エリアが設定される。すなわち、ロボット Rがタスクを実行中でない場合には口 ボット Rの現在位置に基づいて、ロボット Rがタスクを実行中ある場合にはタスク終了 位置に基づいて、移動目標エリアが設定される。
そのため、タスク終了位置に基づいて移動目標エリアが設定された場合であって、 後段のバッテリレベル判定部 333において判定されたバッテリレベル力 ロボット尺が 現在実行中のタスクを遂行できな ヽレベルである場合には、後段のバッテリレベル判 断部 333から、ロボット Rの現在位置をもとに移動目標エリアを再設定することを要求 する信号 (再設定要求信号)力入力されることがある。
この場合、ノ ッテリ補給エリア選択部 332は、ロボット Rの現在位置に基づいて、移 動目標エリアを再設定する。そして、再設定された移動目標エリア (移動目標代替ェ リア)の座標データを、地図情報データベース 210から取得し、取得した座標データ をバッテリレベル判定部 333に出力する。
[0077] [バッテリレベル判定部]
ノ ッテリレベル判定部 333は、ロボット Rのノ ッテリ 70の状態力 予め規定された複 数のバッテリレベル(モード 1〜モード 4)のうちの何れに該当するのかを判定するもの である。
[0078] 具体的には、ノ ッテリレベル判定部 333は、ノ ッテリ補給エリア選択部 332から移 動目標情報が入力された場合、移動目標情報に含まれるタスク情報を参照し、ロボッ ト Rが、バッテリ補給タスク以外の何らかのタスクを現在実行中であるか否かを確認す る。
ロボット Rがタスクを実行中である場合、バッテリレベル判定部 333は、ロボット尺が 実行中であるタスクの遂行に消費するバッテリ量と、ロボット Rが実行中のタスクが終 了する位置 (タスク終了位置)から移動目標エリアへの移動に消費するバッテリ量とを 加味して求めた閾値と、移動目標情報から取得したバッテリ残量を示すバッテリ残量 データの値との比較により、ロボット Rのバッテリ 70の状態力 モード 1〜モード 4のう ちの何れのバッテリレベルに該当するのかを判定する。
一方、ロボット Rがタスクを実行中でない場合、ノ ッテリレベル判定部 333は、ロボッ ト Rが現在位置から移動目標エリアへの移動に消費するバッテリ量を加味して求めた 閾値と、ノ ッテリ残量を示すバッテリ残量データの値との比較により、ロボット Rのバッ テリ 70の状態力 モード 1〜モード 4のうちの何れのバッテリレベルに該当するのかを 判定する。
[0079] すなわち、ノ ッテリレベル判定部 333は、ロボット Rがタスクを現在実行中力否かに 応じて、ロボット Rが実行中であるタスクの遂行に消費されるバッテリ量と、ロボット Rの 移動目標エリアへの移動に消費されるノ ッテリ量との少なくとも一方を加味して求め た閾値と、ノ ッテリ残量を示すバッテリ残量データとを比較し、ロボット Rのバッテリ 70 の状態が、モード 1〜モード 4のうちの何れのバッテリレベルに該当するのかを判定 する。
[0080] 本実施形態の場合、このバッテリレベル判定部 333において用いられる閾値は 3つ 用意されている。
そして、ノ ッテリレベル判定部 333では、はじめに、ノ ッテリ残量データと第 2の閾 値 Ref2との比較が行われ、ノ ッテリ残量力 第 2の閾値 Ref2以上である場合、ロボット
Rのバッテリ 70の状態力 モード 1であると決定される。
[0081] そして、ノ ッテリ残量が第 2の閾値 Re!2未満である場合、ノ ッテリ残量と第 3の閾値 R ef3との比較が行われ、バッテリ残量が、第 3の閾値 Ref3以上である場合、ロボット Rの ノ ッテリ 70の状態力 モード 2であると決定される。
[0082] さらに、ノ ッテリ残量が第 3の閾値 Ref3未満である場合、ノ ッテリ残量と第 4の閾値 R ef4との比較が行われ、バッテリ残量が、第 4の閾値 Ref4以上である場合、ロボット Rの ノ ッテリ 70の状態力 モード 3であると決定され、ノ ッテリ残量が第 4の閾値 Ref4未満 である場合、モード 4であると決定される。
[0083] ちなみに、本実施形態の場合、前記した第 2の閾値 Re!2及び第 3の閾値 Refiは、下 記式 (5)及び (6)力もそれぞれ算出される値である。
[0084] Ref2 = B + C + α · ' · · (5)
L b
Ref3 = B + C + β · ' · · (6)
L b
[0085] ここで、 Bは、ロボットの活動限界となるバッテリ量(ロボットの自律移動に最低限必 し
要なバッテリ量)を、 Cは、ロボットが、現在実行しているタスクの終了位置若しくは口
b
ボット Rの現在位置力も移動目標エリアまで移動する際に消費するバッテリ量を示し、 α、 βは、それぞれ、ロボット Rが現在実行しているタスクの終了までに消費するバッ テリ量と、ノ ッテリマージンとを加算した値である。
なお、 C 、 α、及び βは、下記式(7)、 (8)、及び(9)のように定義される。
[0086] C = Wr + G(battery task) - - - - (7)
b
= Ctask + 2bm (8)
β = Ctask + bm (9)
[0087] ここで、 Wrは、ロボット尺が、現在実行しているタスクの終了位置若しくはロボット尺の 現在位置力も移動目標エリアまでの移動のみに消費するバッテリ量を、 G(battery ta sk)は、ロボット Rが現在実行しているタスクの終了位置若しくはロボット Rの現在位置 力も移動目標エリアまで移動する際に、移動以外の動作、例えばジェスチャーや発 話に消費するバッテリ量を、それぞれ示す。
Ctaskは、ロボット Rが現在実行しているタスクが終了するまでに、ロボット Rがタスク の実行のみに消費するバッテリ量を、 bmはバッテリマージンを示す。
[0088] 本実施形態の場合、前段のバッテリ補給エリア選択部 332において設定されるバッ テリ補給エリア (移動目標エリア)は、ロボット Rがタスクを実行中であるか否かに応じ て異なるので、このバッテリレベル判定部 333において用いられる第 2の閾値 Ref2と 第 3の閾値 Refiもまた、ロボット R力タスクを実行中である力否かに応じて異なる値とな る。
[0089] すなわち、ロボット Rがタスクを実行中である場合、移動目標エリアは、ロボット尺が 実行中のタスクを終了する位置 (タスク終了位置)に基づいて設定されるので、前記 式(7)の Wrは、ロボット Rがタスク終了位置力 移動目標エリアまでの移動に消費す るバッテリ量となる。
よって、第 2の閾値 Ref2は、ロボット Rのバッテリ残量力 ロボット Rが現在割り当てら れているタスクを遂行した後に、移動目標エリアに移動するのに十分であるかを確認 するために設定された値に相当し、第 3の閾値 Refiは、ロボット Rのバッテリ残量が、 ロボット Rが現在割り当てられているタスクを遂行した後に、移動目標エリアに移動す るのに足りるかを確認するために設定された値に相当することになる。
[0090] 一方、ロボット Rがタスクを実行中でな 、場合、移動目標エリアは、ロボット Rの現在 位置に基づいて設定されるので、前記式(7)の Wrは、ロボット Rがロボット Rの現在位 置力も移動目標エリアまでの移動に消費するバッテリ量となる。
よって、第 2の閾値 Ref2は、ロボット Rのバッテリ残量力 ロボット Rが現在の位置から 移動目標エリアに移動するのに十分であるかを確認するために設定された値に相当 し、第 3の閾値 Refiは、ロボット Rのバッテリ残量力 ロボット Rが現在の位置力 移動 目標エリアに移動するのに足りるかを確認するために設定された値に相当する。 この場合、すなわちロボット Rがタスクを実行中でない場合、タスクの実行に消費さ れるバッテリ量 Ctask = 0となるので、前記式(5)、 (6)は、前記式(7)、 (8)、そして( 9)から、それぞれ、下記式(10)、(11)のようになる。
[0091] Ref2 = BL + Wr + G(battery task) + Ctask + 2bm
= BL + Wr + G(battery task) + 2bm (10)
Ref3 = BL + Wr + G(battery task) + Ctask + bm
= BL + Wr + G(battery task) + bm (11)
[0092] また、本実施形態の場合、前記した第 4の閾値 Ref4は、下記式(12)力 算出される 値であり、この第 4の閾値 Ref4は、ロボット Rのバッテリ残量力 ロボット Rが現在位置 する場所 (現在位置)から移動目標エリアに移動するのに足りるかを確認するために 設定される値である。
[0093] Ref4 = BL + Cb + bm ·…(12)
[0094] ここで、 BLは、ロボットの活動限界となるバッテリ量(ロボットの自律移動に最低限必 要なノ ッテリ量)を、 Cbは、ロボット Rが現在の位置力も移動目標エリアまで移動する 際に消費するノ ッテリ量を、 bmは、ノ ッテリマージンをそれぞれ示す。
なお、 Cbは下記式(13)のように表される。
[0095] Cb = Wr + G(battery task) · · · · (13)
[0096] ここで、 Wrは、ロボット Rが現在の位置力 移動目標エリアまでの移動のみに消費 するバッテリ量を、 G(battery task)は、ロボット Rが現在の位置から移動目標エリアま で移動する際に、移動以外の動作、例えばジェスチャーや発話に消費するバッテリ 量を、それぞれ示す。
[0097] 本実施形態の場合、前段のバッテリ補給エリア選択部 332において設定されるバッ テリ補給エリア (移動目標エリア)は、ロボット Rがタスクを実行中であるか否かに応じ て異なり、ロボット R力 Sタスクを実行中である場合、移動目標エリアは、タスク終了位置 に基づ!/、て決定されて 、る。
そのため、タスク終了位置に基づいて決定された移動目標エリアへの移動に消費さ れるバッテリ量よりも、ロボット Rの現在位置に基づいて新たに設定し直した移動目標 エリアへの移動に消費されるノ ッテリ量の方が少なくなる場合がある。
[0098] そこで、ノ ッテリ残量が第 3の閾値 Ref4未満であって、ロボット Rがタスクを実行中で ある場合、ノ ッテリレベル判定部 333は、ロボット Rの現在位置をもとに移動目標エリ ァを再設定することを要求する信号 (再設定要求信号)を、バッテリ補給エリア選択部 332に出力する。
[0099] そして、ノ ッテリ補給エリア選択部 332が再設定要求信号に従って、ロボット Rの現 在位置に基づ!/ヽて再設定した移動目標エリア (移動目標代替エリア)の座標データ 力 ノ ッテリ補給エリア選択部 332から入力されると、ノ ッテリレベル判定部 333は、 ロボット尺が、移動目標代替エリアまで移動する際に消費するバッテリ量を地図情報 データデータベース 210を参照して求め、求めた値を用いて前記式(12)力も Ref4値 を算出し、これを比較値とする。
[0100] そして、比較値と、タスク終了位置に基づいて設定された移動目標エリアまでの移 動に消費されるバッテリ量を用いて前記式(12)力も算出された Ref4値 (基準値)とを 比較し、比較値の方が基準値よりも小さい場合、この比較値を第 4の閾値 Ref4として 再設定する。
一方、比較値の方が前記第 4閾値よりも大きい場合は、基準値をそのまま第 4閾値 とす
る。
[0101] そして、ノ ッテリレベル判定部 333は、ノ ッテリ残量の値と、第 4の閾値とを比較し、 ノ ッテリ残量力 第 4の閾値 Ref4以上である場合、ロボット Rのバッテリ 70の状態が、 モード 3であると決定し、ノ ッテリ残量が第 4の閾値 Ref4未満である場合、モード 4で あると決定する。
[0102] このように、ノ ッテリレベル判定部 333は、ロボット Rのバッテリ 70の状態力 予め規 定された複数のバッテリレベル(モード 1〜モード 4)のうちの何れに該当するのかを、 ノ ッテリ残量データと閾値との比較により判定する。
[0103] そして、ノ ッテリレベル判定部 333は、ロボット Rのバッテリ 70の状態力 前記したモ ード(モード 1、モード 2、モード 3、そしてモード 4)のうちの何れに該当するのかを示 す情報と、前記した移動目標情報の各情報項目のデータとを少なくとも含んで構成さ れる情報 (バッテリモード情報)を生成し、生成したバッテリモード情報をタスク管理手 段 340に出力する。
[0104] 前記したように、本実施形態のバッテリレベル判定手段 330では、ステータス情報 が入力されると、はじめに、ステータス情報に含まれるバッテリ残量データと第 1の閾 値とを比較する。そして、ノ ッテリ残量データが第 1の閾値以上である場合には、移 動目標エリアの設定を行わな 、ようにして 、る。
これは、ノ ッテリ補給が明らかに不要の場合を除外することで、バッテリ補給決定部 331の後段に位置するバッテリ補給エリア選択部 332での処理や、バッテリレベル判 定部 333での閾値との比較処理による負担を軽減して、ロボット制御装置 3自身の処 理効率を向上させるためである。
[0105] また、本実施の形態では、ノ ッテリ残量データで示される値が第 3の閾値未満であ る場合であって、ロボット Rがタスクを実行中であるときは、ノ ッテリ補給エリア選択部 332において、ロボット Rの現在位置に基づいて移動目標代替エリアを設定する。そ して、ロボット Rが移動目標代替エリアまでの移動に消費するバッテリ量が、先に設定 された移動目標エリアまでの移動に消費されるノ ッテリ量よりも少ない場合、バッテリ レベル判定手段 330において、移動目標代替エリアを移動目標エリアとして設定 (再 設定)する。
これにより、ロボット Rバッテリ残量が少ない場合であっても、ロボットの現在位置に 応じて、到達するまでのバッテリ消費量が少ない移動目標エリアに、移動目標エリア を再設定することできるので、ロボット Rをバッテリ消費量を抑えつつバッテリ補給エリ ァに移動させることができる。
[0106] <タスク管理手段 >
タスク管理手段 340は、ロボット Rに実行させるタスクの実行計画 (タスクスケジユー ル)をロボット R毎に設定すると共に、バッテリレベル(モード 1〜モード 4)毎に定めら れた手順に従って、タスクの実行計画の再設定を行うものである。
このタスク管理手段 340は、タスクスケジュール生成部 341と、タスクスケジュール調 整部 342とを含んで構成される。
[0107] [タスクスケジュール生成部]
タスクスケジュール生成部 341は、タスク毎に決定された優先度に基づいて、各タス クを実行するロボット Rを決定すると共に、ロボット Rに割り当てられたタスクの実行順 序を、ロボット R毎に設定するものである。
すなわち、タスクスケジュール生成部 341は、各ロボット Rに実行させるタスクの実行 計画 (タスクスケジュール)を設定するものである。
[0108] 具体的には、タスクスケジュール生成部 341は、優先度データ生成手段 320からス ケジュール要求信号が入力されると、タスク情報データベース 220に登録されて 、る タスクの中から、未実行 (未処理)のタスクに関するデータ(タスクデータ)を取得する。 そして、タスクスケジュール生成部 341は、タスクデータに含まれる優先度に基づい て、タスクをグループ分けする。
[0109] ここで、タスクの優先度の値力 2未満の場合はグループ Cと、 2以上〜 4未満の場 合はグループ Bと、 4以上の場合はグループ Aであるとグループ分けすることが決めら れている場合であって、図 7に示すように、タスク ID= 10〜タスク ID= 15のタスクが 未実行であり、優先度データ生成手段 320で決定されたタスクの優先度の値力 そ れぞれ図中にお 、て示す値である場合を例に挙げて説明すると、タスクスケジュール 生成部 341は、タスク ID力 D= 11のタスクと ID= 13のタスクとをグループ Cに、タス ク ID力 D= 10のタスクとタスク ID力 D= 15のタスクとをグループ Bに、タスク ID力 D = 12のタスクと、 ID = 14のタスクのタスクとをグループ Aに振り分ける。
[0110] 続!、て、タスクスケジュール生成部 341は、複数存在するグループ(グループ A〜 グループ C)の中から、優先度の高いタスク力 構成されるグループ (この場合、ダル ープ A)のタスクについて、スケジューリングを行う。
具体的には、タスクスケジュール生成部 341は、タスク実行エリア内に配置された口 ボット Rの各々に、どのタスクを割り当て、かつ割り当てたタスクをどの順番で行わせる のかを規定する組合せを総て挙げる。そして、タスクスケジュール生成部 341は、各 組み合わせにおいて規定されるタスクのロボット Rへの割当て及びタスクの実行順序 に従って総てのタスクを実行した場合に必要とされる全体コストを組合せごとに求め、 求めた全体コストが最小となる組み合わせを検索する。
なお、このスケジューリングは、バッテリ補給タスクの予約が入っていないロボット R につ 、て行うことが好まし!/、。
[0111] ここで、タスク実行エリア内に配置されたロボット Rが 2台(Rl、 R2)であり、上記した グループ Aに含まれるタスクが、タスク ID = 12のタスクと、タスク ID = 14のタスクの合 計 2つのタスクである場合を例に挙げて説明をする。
この場合、ロボット R1と R2に対して行われるタスクの割り当てと実行順序の組み合 わせは、図 8に示すように、 6通り存在することになる。
この図 8では、ロボット毎にタスクを実行させる順番が規定されており、組合せ 1では 、ロボット R2が、タスク ID = 12のタスクを先に実行し、タスク ID = 14のタスクを続いて 実行する場合が示されている。さら〖こ、組合せ 3では、ロボット R1が、タスク ID= 12の タスクを、ロボット R2がタスク ID = 14のタスクをそれぞれ実行する場合が示されてい る。
[0112] よって、この図 8に示す例の場合、タスクスケジュール生成部 341は、各組合せ(1 〜6)に規定されるタスクスケジュールに従って、総てのタスクを、タスク実行エリア内 に配置されたロボット R(R1、 R2)で実行した場合に必要となる全体コストを算出する [0113] 本実施形態の場合、全体コスト (C )は、下記式(14)を用いて算出される。
total
[0114] C = wC + (l-w)-C · ' · ·(14)
total all all complete
[0115] 前記式(14)において、「C 」は、総てのタスクを終了するまでに、ロボット制御シス
all
テム Aに含まれる総てのロボット Rが消費するバッテリの総量 (動作コスト)であり、「C
all
」は、総てのタスクを終了するまでに、各ロボットに割り当てられた全タスクのうち complete
の、一番最初に行われるタスクの開始予定時刻から一番最後に行われるタスクの終 了予定時刻までの時間(時間コスト)である。
さらに、「w」は、動作コストと時間コストのどちらに重点を置くかを決める「重み値」で あり、 0≤w≤lの範囲内で任意に設定される値である。ここで、 「w」値が大きいと、全 体コスト (C )において、バッテリ消費量を重視する傾向が大きくなり、小さいと、総て
total
のタスク遂行するまでに要する時間(所要時間)を重視する傾向が大きくなる。
[0116] 具体的に説明すると、図 8の組合せ 3の場合、「C 」は、ロボット R1がタスク 12を実
all
行する際に消費するバッテリ量と、ロボット R2がタスク 14を実行する際に消費するバ ッテリ量とを加算した値である。
また、「C 」は、ロボット R1がタスク 12を開始する時刻と、ロボット R2がタスク 1 all complete
4を開始する時刻のうちの早いほうの時刻から、ロボット R1がタスク 12を終了する時 刻と、ロボット R2がタスク 14を終了する時刻のうちの遅いほうの時刻までの時間であ る。
また、図 8の組合せ 2の場合、「C 」は、ロボット R2がタスク 14を開始してからタスク 1
all
2を終了するまでに消費するバッテリ量の値であり、「C 」は、ロボット R2がタス
all complete
ク 14を開始する時刻から、ロボット R2がタスク 12を終了する時刻までの時間である。
[0117] よって、本実施形態の場合、タスクスケジュール生成部 341は、組合せ毎に全体コ スト(C )を求め、求めた全体コスト(C )の値が、最も小さくなる組合せにおいて規 total total
定されるタスクの割り当て、及びタスクの実行順序を、タスクスケジュールとして決定 する。
[0118] タスクスケジュール生成部 341は、同様の操作を、残りのグループ(グループ B及び グループ C)について、優先度の高いグループ力 順に行って、タスク情報データべ ース 220に登録されて!、るタスクのうちの未処理のタスクにっ 、て、実行するロボット Rを決定すると共に、ロボット Rに割り当てられたタスクの実行順序を、ロボット R毎に 設定する。
[0119] [タスクスケジュール調整部]
タスクスケジュール調整部 342は、ノ ッテリレベル毎に定められた手順に従って、タ スクの実行計画(タスクスケジュール)の再設定を行うものである。言い換えると、タス クスケジュール調整部 342は、ロボット Rのバッテリ残量がある閾値以下となった場合 に、当該ロボット Rのタスクスケジュールに、ノ ッテリ補給エリアに移動するタスク(バッ テリ補給タスク)を予約することや、ロボット Rにバッテリ補給タスクを実行させるように するものである。
[0120] 具体的に説明すると、タスクスケジュール調整部 342は、バッテリレベル判定部 333 からバッテリモード情報が入力されると、当該バッテリモード情報において示されるモ ード毎に予め設定された処理を行う。
なお、理解を容易にするために、図 11のフローチャートを適宜参照しながら、以下 にタスクスケジュール調整部 342において行われるモード毎の処理を説明する。
[0121] <モード 1である場合 >
タスクスケジュール調整部 342は、バッテリモード情報で示されるバッテリの状態が モード 1である場合 (ステップ S4、 Yes)は、何もしない。
これは、ノ ッテリモード情報に含まれたロボット IDにより特定されるロボット Rのバッ テリ 70の残量が足りており、ノ ッテリ補給タスクを挿入するする必要がないからである
[0122] <モード 2である場合 >
タスクスケジュール調整部 342は、バッテリモード情報で示されるバッテリの状態が モード 2である場合 (ステップ S5、 Yes)、ステータス情報に含まれるタスク情報から、 ロボット IDにより特定されるロボット R力 何らかのタスク、例えば運搬タスク、を実行中 であるか否かを確認する(ステップ S6)。
そして、ロボット Rがタスクを実行中である場合 (ステップ S6、 Yes)、タスクスケジュ ール調整部 342は、タスクスケジュールテーブル 230を参照し、ロボット Rのタスクスケ ジュールの中に、ロボット Rを移動目標エリアに移動させるタスク (バッテリ補給タスク) が登録 (予約)されて 、るか否かを確認する (ステップ S 7)。
[0123] ノ ッテリ補給タスクが登録されていない場合には (ステップ S7、 No)、タスクスケジュ ール調整部 342は、ノ ッテリ補給タスクのタスク情報データベース 220への登録に必 要なデータを生成し、生成したデータに基づいて、ノ ッテリ補給タスクをタスク情報デ ータベース 220に登録する(ステップ S8)。
[0124] 具体的には、タスクスケジュール調整部 342は、ノ ッテリモード情報に含まれるタス ク IDに基づいて、タスク情報データベース 220を参照して、現在実行中のタスクの終 了位置を示す座標データと、タスクの終了時刻を示すデータを取得すると共に、バッ テリモード情報の中から移動目標エリアの座標データを取得する。
続いて、タスクスケジュール調整部 342は、タスクの終了位置を示す座標データ及 びタスクの終了時刻を示すデータを、それぞれ、ノ ッテリ補給タスクの開始位置の座 標データ及び開始時刻を示すデータとして、バッテリ補給タスクをタスク情報データ ベース 220に登録する。この際、ノ ッテリ補給タスクの情報項目のうち、優先度の値を 最高値に設定すると共に、当該タスクを行うロボットをロボット IDにより特定した上で、 ノ ッテリ補給タスクの登録を行う。
[0125] これと同時に、タスクスケジュール調整部 342は、タスク情報データベース 220の更 新が行われたことを示す信号 (タスク更新信号)を生成し、生成したタスク更新信号を 優先度データ生成手段 320に出力する。これにより、タスク情報データベース 220に 登録された各タスクの優先度が再設定され、この際に設定された優先度に基づいて 、タスクスケジュールの設定 (再設定) 1S タスクスケジュール生成部 341において、 前記した手順に従って行われることになる。
[0126] ここで、タスクスケジュール調整部 342における処理を、図 9、図 10 (a)、及び図 10
(b)を参照して、ロボット ID= 1で特定されるロボット Rのタスクスケジュールにバッテリ 補給タスクを挿入する場合を例に挙げて説明すると、タスクスケジュール調整部 342 は、ロボット Rが現在実行中のタスク(タスク ID= 10、図 9参照)の情報項目のデータ を参照して、タスク ID = 18で示される情報項目の内容を有するバッテリ補給タスクを 、タスク情報データベースに 220に登録する。 図 9から明らかなように、タスク ID = 10で示されるタスクの終了位置力 ノ ッテリ補 給タスク(タスク ID= 18)の開始位置に、タスク ID = 10で示されるタスクの終了時刻 力 ノ ッテリ補給タスク (タスク ID = 18)の開始時刻に、それぞれ設定されている。そ して、優先度が最高値である「9」に設定されており、ロボット Rを識別する識別子であ るロボット IDの情報項目の欄には、ロボット ID (ID= 1)が入力されていることが判る。
[0127] その結果、図 10 (a)、 (b)を参照して、タスク ID = 18で特定されるタスクがタスク情 報データベース 220に登録された後に、タスクスケジュール生成部 341で行われるタ スクスケジュールの設定(再設定)により、ロボット ID= 1で特定されるロボット Rのタス クスケジュールにバッテリ補給タスクが挿入され、ノ ッテリ補給タスクの挿入前には、 図 10 (a)に示すような内容であったタスクスケジュールテーブルの内容が、図 10 (b) に示すような内容に更新されることになる。
[0128] 一方、ロボット IDにより特定されるロボット R力 何らかのタスクを実行中でない場合 ( ステップ S6、 No)、タスクスケジュール調整部 342は、タスクスケジュールテーブル 2 30を参照し、ロボット Rのタスクスケジュールの中に、ロボット Rを移動目標エリアに移 動させるタスク (バッテリ補給タスク)が登録されて 、る力否かを確認する (ステップ S9
) o
[0129] ノ ッテリ補給タスクが登録されて 、る場合 (ステップ S9、 Yes)、タスクスケジュール 調整部 342は、タスクスケジュールテーブル 230に予約されたバッテリ補給タスクを口 ボット Rに実行させるために、実行命令要求信号を実行命令生成手段 350に出力す る(図 6参照)。これにより、実行命令生成手段 350において、ノ ッテリ補給タスクを実 行させる実行命令が生成され、ロボット Rに出力されることになる。
[0130] 一方、ノ ッテリ補給タスクが登録されていない場合には (ステップ S9、 No)、タスクス ケジュール調整部 342は、ノ ッテリ補給タスクの実行を命令する内容の実行命令の 生成を要求する実行命令要求信号 (バッテリ補給信号)を、実行命令生成手段 350 に出力する。
ここで、バッテリ補給信号を出力する場合、このバッテリ補給信号と共に、ロボット R の現在位置を示す座標データと、移動目標エリアを示す座標データなどの、ロボット I Dにより特定されるロボット Rがバッテリ補給エリアに移動するために必要なデータ (バ ッテリ補給関連データ)を、ノ ッテリレベル判定部 333から入力されたバッテリモード 情報から取得し、実行命令生成手段 350に出力する。
これにより、実行命令生成手段 350において、ノ ッテリ補給タスクを実行させる実行 命令が生成され、ロボット Rに出力されることになる。
[0131] <モード 3である場合 >
タスクスケジュール調整部 342は、バッテリモード情報で示されるバッテリの状態が モード 3である場合 (ステップ S 15、 Yes)、ステータス情報に含まれるタスク情報から、 ロボット IDにより規定されるロボット R力 タスクを実行中である力否かを確認する (ス テツプ S 16)。
[0132] ロボット尺が、タスクを実行中である場合 (ステップ S16、 Yes)、タスクスケジュール 調整部 342は、実行中のタスクを中止させる内容の実行命令の生成を要求する実 行命令要求信号 (タスク中止信号)を、実行命令生成手段 350に出力する (ステップ S17) 0
続いて、タスクスケジュール調整部 342は、ノ ッテリ補給タスクを強制的に実行させ る内容の実行命令の生成を要求する実行命令要求信号 (強制バッテリ補給信号)を 、実行命令生成手段 350に出力する (ステップ S18)。
[0133] ここで、タスクスケジュール調整部 342は、強制バッテリ補給信号を出力する場合、 この強制ノ ッテリ補給信号と共に、ロボット Rの現在位置を示す座標データと、移動目 標エリアを示す座標データなどの、ロボット IDにより特定されるロボット Rがバッテリ補 給エリアに移動するために必要なデータ (バッテリ補給関連データ)を、バッテリレべ ル判定部 333から入力されたバッテリモード情報から取得し、実行命令生成手段 35 0に出力する
一方、タスクを実行中でない場合は (ステップ S16、 No)、強制ノ ッテリ補給信号と、 ノ ッテリ補給関連データとを実行命令生成手段 250に出力する (ステップ S 18)。
[0134] これにより、ロボット Rは、後記する実行命令生成手段 350において生成される実行 命令に基づいて、ノ ッテリ交換タスクを強制的に実行させられることになる。
[0135] くモード 4である場合 >
タスクスケジュール調整部 342は、バッテリモード情報で示されるバッテリの状態が モード 4である場合 (ステップ SI 5、 No)、ロボット Rがタスクの遂行も、バッテリ補給ェ リアへの移動も不可能であることを管理者に通知する信号 (緊急信号)を生成するよう に実行命令生成手段 250に要求する信号 (緊急信号要求信号)を生成し、これを実 行命令生成手段 250に出力する。
[0136] <実行命令生成手段 >
実行命令生成手段 350は、ロボット Rにタスクを実行させるための実行命令 (データ )を生成するものである。
[0137] 実行命令生成手段 350は、実行命令の生成を要求する信号 (実行命令要求信号) 1S データベース管理手段 310やタスク調整部 342から入力された場合に、受信した 実行命令要求信号に含まれるロボット IDをもとに、タスクスケジュールテーブル 230を 参照し、当該タスクスケジュールテーブル 230に登録されたタスクを確認する。
そして、実行命令生成手段 350は、ロボット IDにより特定されるロボット Rに割り当て られた未実行のタスクが存在する場合、当該タスクをロボット Rに実行させるための実 行命令 (データ)を、タスク情報データベース 220の各情報項目のデータを参照して 生成し、生成した実行命令を、入出力手段 100を介して、ロボット IDにより特定される ロボット Rに向けて出力する。
[0138] また、実行命令生成手段 350は、ロボット Rが実行中のタスクを中止させる内容の実 行命令の生成を要求する実行命令要求信号 (タスク中止信号)が、タスクスケジユー ル調整部 342から入力された場合に、タスクの実行を中止させる実行命令 (データ) を生成し、入出力手段 100を介して、ロボット IDにより特定されるロボット Rに向けて 出力する。
[0139] さらに、実行命令生成手段 350は、ノ ッテリ補給タスクを実行させる内容の実行命 令の生成を要求する実行命令要求信号 (強制バッテリ補給信号、バッテリ補給信号) と、ノ ッテリ補給関連データとが、タスクスケジュール調整部 342から入力された場合 に、ノ ッテリ補給タスクを実行させる実行命令 (データ)を生成し、入出力手段 100を 介して、ロボット IDにより特定されるロボット Rに向けて出力する。
これにより、実行命令を受信したロボット Rは、実行命令において規定されるタスク( ノ ッテリ補給タスク)を行うことになる。 [0140] [ロボット制御装置 3における処理]
次に、図 5及び図 11を主に参照して、ロボット Rのタスクスケジュールにバッテリ補給 タスクを挿入するか否かを決定する際の、ロボット制御装置 3において行われる処理 について説明する。
[0141] はじめに、ロボット Rから発信されたステータス情報力 ロボット制御装置 3の入出力 手段 100を介してバッテリレベル判定手段 330に入力され、バッテリレベル判定手段 330のバッテリ補給決定部 331は、ステータス情報に含まれるタスク情報 Tとロボット I Dとを参照し、ロボット IDにより特定されるロボット R力 ノ ッテリ補給タスクを実行中で ある力否かを確認する (ステップ S 1)。
[0142] ロボット尺が、ノ ッテリ補給タスクを実行中である場合 (ステップ Sl、 Yes)、データ処 理を終了する。
一方、ロボット Rが、ノ ッテリ補給タスクを実行中でない場合 (ステップ Sl、 No)、バ ッテリ補給決定部 331は、ステータス情報に含まれるバッテリ情報から、ノ ッテリの残 量を示すデータ (バッテリ残量データ)を取得し、取得したバッテリ残量データを第 1 の閾値と比較する (ステップ S2)。
ノ ッテリ残量データにおいて示された値力 第 1の閾値以上である場合 (ステップ S 2、 Yes)、バッテリ補給決定部 331は、処理を終了する。
一方、ノ ッテリ残量が、第 1の閾値未満である場合 (ステップ S2、 No)、バッテリ補 給決定部 331は、入出力手段 100から入力されたステータス情報を、バッテリ補給ェ リア選択部 332に出力する。
[0143] ノ ッテリ補給エリア選択部 332は、タスク実行エリア内で予め設定された複数のバッ テリ補給エリアの中から、ロボット Rのノ ッテリ補給を行うバッテリ補給エリアを選択し、 選択したバッテリ補給エリアを、移動目標エリアとして設定する (ステップ S3)。
この際、ロボット尺が、ノ ッテリ補給タスク以外の何らかのタスクを実行中でない場合 、ステータス情報に含まれる位置情報カゝらロボット Rの現在地を示す座標データ(現 在位置データ)を取得し、取得した現在位置データに基づ ヽて移動目標エリアを設 定する。一方、何らかのタスクを実行中である場合、ステータス情報に含まれるタスク 情報力 タスク IDを取得し、当該タスク IDをもとにタスク情報データベース 220を参 照し、ロボット Rが現在行って ヽるタスクが終了する位置を示す座標データ(タスク終 了位置データ)を取得する。そして、取得したタスク終了位置データに基づいて移動 目標エリアを設定する。
[0144] ノ ッテリレベル判定部 333は、ノ ッテリ残量力 ロボット Rが現在割り当てられている タスクを遂行した後に、ステップ S3において設定された移動目標エリアに移動するの に十分であるかを確認するために、ノ ッテリ残量データと第 2の閾値とを比較する (ス テツプ S4)。
[0145] ロボット Rのバッテリ残量力 第 2の閾値以上である場合、すなわち、ノ ッテリ残量が 十分である場合 (ステップ 4、 Yes)、バッテリレベルがモード 1であることを示す情報( ノ ッテリモード情報)を生成し、タスク管理手段 340に出力する。
[0146] ロボット Rのバッテリ残量力 第 2の閾値未満である場合 (ステップ 4、 No)、バッテリ 残量が、ロボット Rが現在割り当てられているタスクを遂行した後に、ステップ S3にお いて設定された移動目標エリアに移動するのに足りるかを確認するために、バッテリ 残量データと、第 3の閾値とを比較する (ステップ S5)。
[0147] ロボット Rのバッテリ残量の値が第 3の閾値以上である場合、すなわち、バッテリ残 量が足りる場合 (ステップ 5、 Yes)、バッテリレベルがモード 2であることを示す情報( ノ ッテリモード情報)を生成し、タスク管理手段 140に出力する。
すると、タスク管理手段 340は、ロボット IDにより特定されるロボット Rがタスクを実行 中であるか否かを確認する (ステップ S6)。
[0148] タスクを実行中である場合 (ステップ S6、 Yes)、タスク管理手段 340は、ノ ッテリ補 給タスクがロボット Rのタスクスケジュールに登録されて 、るか否かを確認し (ステップ
57)、ノ ッテリ補給タスクが登録されている場合 (ステップ S7、 Yes)、処理を終了する 一方、ノ ッテリ補給タスクが登録されていない場合 (ステップ S7、 No)、タスク管理 手段 340は、ノ ッテリ補給タスクをタスク情報データベース 220に登録する (ステップ
58)。
[0149] 一方、タスクを実行中でない場合 (ステップ S6、 No)、タスク管理手段 340は、バッ テリ補給タスク力 タスクスケジュールに登録されて 、る力否かを確認し (ステップ S9) 、ノ ッテリ補給タスクが登録されている場合 (ステップ S9、 Yes)、予約されたバッテリ 交換タスクの実行を命令する実行命令を、実行命令生成手段 350から、ロボット IDに より特定されるロボット Rに送信させる (ステップ S10)。そして、ロボット尺から、当該実 行命令を受信したことを報告する信号 (受信報告信号)が入力されると、タスク情報デ ータベース 220が、データベース管理手段 310により更新される (ステップ Sl l)。
[0150] 一方、ノ ッテリ補給タスクが登録されて ヽな 、場合 (ステップ S9、 No)、タスク管理 手段 340は、ノ ッテリ補給タスクを実行させる実行命令 (データ)を、実行命令生成手 段 350から、ロボット IDにより特定されるロボット Rに送信させる (ステップ S12)。そし て、ロボット尺から、当該実行命令を受信したことを報告する信号 (受信報告信号)が 入力されると、タスク情報データベース 220が、データベース管理手段 310により更 新される (ステップ S 13)。
[0151] ロボット Rのバッテリ残量の値が第 3の閾値未満である場合 (ステップ 5、 No)、ロボッ ト Rの現在位置に基づいて移動目標エリアを再設定して移動目標代替エリアとする。 そして、ロボット尺が、現在の位置からステップ S3において設定された移動目標エリア への移動に消費するバッテリ量と、ロボット尺が、現在の位置から移動目標代替エリア への移動に消費するバッテリ量とをそれぞれ算出し、これらを比較する。そして、移動 目標代替エリアへの移動に消費されるノ ッテリ量力 移動目標エリアへの移動に消 費されるノ ッテリ量よりも少ない場合は、移動目標代替エリアを移動目標エリアとして 再設定する。一方、移動目標代替エリアへの移動に消費されるバッテリ量が、移動目 標エリアへの移動に消費されるノ ッテリ量よりも多い場合は、ステップ S3において設 定された移動目標エリアを、そのまま移動目標エリアとする (ステップ S 14)。
[0152] そして、バッテリ残量が、ロボット Rが現在位置する場所 (現在位置)から、ステップ S
14において設定された移動目標エリアに移動するのに足りるかを確認するために、 ノ ッテリ残量データと、第 4の閾値とを比較する (ステップ S 15)。
[0153] ロボット IDにより特定されるロボット Rのバッテリ残量の値が第 4の閾値以上である場 合 (ステップ 15、 Yes)、タスク管理手段 340は、ロボット IDにより特定されるロボット R がタスクを実行中であるカゝ否かを確認する (ステップ S 16)。
タスクを実行中である場合 (ステップ S16、 Yes)、タスク管理手段 340は、タスクの 実行を中止させる実行命令 (データ)を、実行命令生成手段 350から、ロボット IDによ り特定されるロボット Rに送信させる (ステップ S 17)。
タスクを実行中でない場合 (ステップ S16、 No)、タスク管理手段 340は、ノ ッテリ補 給タスクを強制的に実行させる実行命令 (データ)を生成し、入出力手段 100を介し て、ロボット IDにより特定されるロボット Rに向けて出力する(ステップ S18)。
[0154] ロボット IDにより特定されるロボット Rのバッテリ残量の値が第 4の閾値未満である場 合 (ステップ 15、 No)、タスク管理手段 340は、ロボット R力タスクの実行も、移動目標 エリアへの移動も不可能であることをサーバの管理者に通知する緊急信号を、入出 力手段 100から出力させる。
[0155] 以上、本発明の実施形態について説明したが、本発明は前記実施形態に限定さ れず、本発明の要旨を逸脱しない範囲で適宜設計変更可能である。
[0156] 例えば、前記した実施の形態の場合、ノ ッテリレベル判定手段 330において、ロボ ット R力タスクを実行している際に、バッテリレベルがモード 3であると判定された場合
、実行中のタスクを中止してバッテリ補給タスクを行うように設定されている。
この際に、タスクスケジュール調整部 342は、中止されたタスクを、最も高い優先度 でタスク情報データベースに登録し、タスク更新信号を優先データ生成手段 320〖こ 出力する構成としても良い。
この場合、中止されたタスクを、優先して、他のロボット Rに割り当てることができるの で、中止されたタスクの遂行が可能となる。このような機能は、中止されたタスク力 来 訪者をある場所に案内をするというタスク (案内タスク)をロボット Rが実行している場 合に好適である。
[0157] 以上説明したように、本発明に係るロボット制御装置によると、優先度の異なる複数 のタスクを、複数台のロボットを用いて、効率よく実行することができる。
また、ロボット Rのバッテリ残量を随時確認しながら、ロボット Rのバッテリ補給が必要 であるか否かを判断し、必要である場合は、ロボット Rにバッテリ補給のためのタスクを 実行させると共に、各ロボット Rに割り当てられたタスクの実行計画 (タスクスケジユー ル)の再設定、例えば、ノ ッテリ補給が必要であると判断されたロボット Rに割り当てら れたタスクを、他のロボットのタスクスケジュールへの振り分けなどを行う。 よって、人応答という予期し得ない要因が存在する条件の下でも、ロボットで複数の タスクを効率良く実行することができる。

Claims

請求の範囲
[1] 移動機能を備えたロボットに実行させるタスクの管理を行うロボット制御装置であつ て、
前記ロボットのノ ッテリの残量に基づいて、前記バッテリの状態力 予め規定された 複数のバッテリレベルのうちのどのバッテリレベルであるかを判定するバッテリレベル 判定手段と、
前記ロボットに実行させるタスクの実行計画をロボット毎に設定すると共に、前記バ ッテリレベル毎に定められた手順に従って、前記実行計画に登録されたタスクの実行 計画の再設定を行うタスク管理手段と、
前記実行計画において設定されたタスクを前記ロボットに実行させる実行命令を生 成する実行命令生成手段と
前記実行命令を前記ロボットに向けて送信する送信手段と
を含むロボット制御装置。
[2] 前記タスク管理手段は、前記タスク管理手段が行う前記実行計画に登録されたタス クの実行計画の再設定の際に、前記ロボットでの実行が困難であると判断されたタス クを、他のロボットの実行計画に登録する
ことを特徴とする請求の範囲第 1項に記載のロボット制御装置。
[3] 前記バッテリレベル判定手段は、
前記バッテリ残量に基づ 、て、前記ロボットのバッテリの補給が必要である力否かを 決定するバッテリ補給決定部と、
ノ ッテリ補給が必要であると決定された場合に、予め用意された複数のバッテリ補 給エリアの中から一つのバッテリ補給エリアを選択し、選択したバッテリ補給エリアを 前記ロボットの移動目標エリアとして設定するバッテリ補給エリア選択部と
前記ロボットが実行中であるタスクの遂行に消費されるノ ッテリ量と、前記ロボットの 前記移動目標エリアへの移動に消費されるバッテリ量との少なくとも一方を加味して 求めた少なくとも一つの閾値と、前記バッテリ残量との比較により、前記バッテリの状 態力 予め規定された複数のバッテリレベルのうちのどのバッテリレベルであるかを判 定するバッテリレベル判定部と を有することを特徴とする請求の範囲第 1項又は請求の範囲第 2項に記載のロボット 制御装置。
[4] 前記バッテリ補給エリア選択部では、前記ロボットの現在位置若しくは前記ロボット が実行中のタスクの終了位置に基づいて、前記移動目標エリアの設定を行う ことを特徴とする請求の範囲第 3項に記載のロボット制御装置。
[5] 前記タスク管理手段は、前記バッテリ補給決定部でバッテリ補給が必要であると決 定された場合に、
前記ロボットを前記移動目標エリアに移動させる移動タスクを前記実行計画に登録 する
ことを特徴とする請求の範囲第 3項又は請求の範囲第 4項に記載のロボット制御装置
PCT/JP2005/018265 2004-10-01 2005-10-03 ロボット制御装置 WO2006038576A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/664,004 US8027750B2 (en) 2004-10-01 2005-10-03 Robot control apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004289623A JP4460411B2 (ja) 2004-10-01 2004-10-01 ロボット制御装置
JP2004-289623 2004-10-01

Publications (1)

Publication Number Publication Date
WO2006038576A1 true WO2006038576A1 (ja) 2006-04-13

Family

ID=36142649

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/018265 WO2006038576A1 (ja) 2004-10-01 2005-10-03 ロボット制御装置

Country Status (3)

Country Link
US (1) US8027750B2 (ja)
JP (1) JP4460411B2 (ja)
WO (1) WO2006038576A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107601194A (zh) * 2017-09-30 2018-01-19 樱花电梯(中山)有限公司 一种电梯装置、机电控制模组及电梯自动清扫***
CN110790097A (zh) * 2018-08-03 2020-02-14 通力股份公司 向输送机***生成控制信号
JP2020518906A (ja) * 2017-04-28 2020-06-25 ロブアート ゲーエムベーハーROBART GmbH ロボットのナビゲーションの方法
US12023814B2 (en) 2018-07-27 2024-07-02 Sony Corporation Mobile object and control method

Families Citing this family (187)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8220710B2 (en) * 2006-06-19 2012-07-17 Kiva Systems, Inc. System and method for positioning a mobile drive unit
US7912574B2 (en) 2006-06-19 2011-03-22 Kiva Systems, Inc. System and method for transporting inventory items
US20130302132A1 (en) 2012-05-14 2013-11-14 Kiva Systems, Inc. System and Method for Maneuvering a Mobile Drive Unit
JP5040186B2 (ja) * 2006-06-22 2012-10-03 富士通株式会社 案内ロボットおよび案内方法
JP4886572B2 (ja) * 2007-03-29 2012-02-29 本田技研工業株式会社 ロボット
JP5105051B2 (ja) * 2007-04-05 2012-12-19 Necアクセステクニカ株式会社 ロボット
US8989468B2 (en) * 2007-05-25 2015-03-24 Definiens Ag Generating an anatomical model using a rule-based segmentation and classification process
JP4976224B2 (ja) * 2007-07-26 2012-07-18 パナソニック株式会社 作業ロボットシステム
JP4474569B2 (ja) * 2007-11-07 2010-06-09 Necアクセステクニカ株式会社 充電制御装置、充電制御システム及びそれらに用いる充電制御方法並びにそのプログラム
EP2249998B1 (en) 2008-01-28 2013-03-20 Seegrid Corporation Methods for real-time interaction with robots
US8838268B2 (en) * 2008-01-28 2014-09-16 Seegrid Corporation Service robot and method of operating same
US8433442B2 (en) * 2008-01-28 2013-04-30 Seegrid Corporation Methods for repurposing temporal-spatial information collected by service robots
US8755936B2 (en) * 2008-01-28 2014-06-17 Seegrid Corporation Distributed multi-robot system
US9064222B2 (en) 2010-05-14 2015-06-23 The Boeing Company Real time mission planning
TW201227190A (en) * 2010-12-28 2012-07-01 Hon Hai Prec Ind Co Ltd System and method for controlling robots via cloud computing
JP5640832B2 (ja) * 2011-03-10 2014-12-17 ソニー株式会社 制御装置、制御方法および実行装置
US20120256752A1 (en) * 2011-04-06 2012-10-11 James William Musser System and method to extend operating life of rechargable batteries using battery charge management
US9494341B2 (en) * 2011-05-27 2016-11-15 Solarcity Corporation Solar tracking system employing multiple mobile robots
US9367770B2 (en) 2011-08-30 2016-06-14 Digimarc Corporation Methods and arrangements for identifying objects
US11288472B2 (en) 2011-08-30 2022-03-29 Digimarc Corporation Cart-based shopping arrangements employing probabilistic item identification
US8307061B1 (en) * 2011-10-27 2012-11-06 Google Inc. System and method for determining manufacturer instructions executable by a robotic device
US9008839B1 (en) * 2012-02-07 2015-04-14 Google Inc. Systems and methods for allocating tasks to a plurality of robotic devices
DE202012100666U1 (de) * 2012-02-27 2013-03-05 Husqvarna Ab Robotergartenwerkzeugführungssystem
US10054933B2 (en) * 2012-03-27 2018-08-21 Sirqul, Inc. Controlling distributed device operations
US9651950B2 (en) * 2012-07-18 2017-05-16 The Boeing Company Mission re-planning for coordinated multivehicle task allocation
US9214021B2 (en) * 2012-10-09 2015-12-15 The Boeing Company Distributed position identification
US9397518B1 (en) * 2013-02-22 2016-07-19 Daniel Theobald Wirelessly transferring energy to a mobile device
US10546204B1 (en) 2013-03-05 2020-01-28 Amazon Technologies, Inc. Item information discovery with a wearable device
WO2014138472A2 (en) * 2013-03-06 2014-09-12 Robotex Inc. System and method for collecting and processing data and for utilizing robotic and/or human resources
US9313261B2 (en) 2013-03-07 2016-04-12 Qualcomm Incorporated System and methods of transferring tasks from a first mobile device to a second mobile device
US10949804B2 (en) 2013-05-24 2021-03-16 Amazon Technologies, Inc. Tote based item tracking
US10860976B2 (en) 2013-05-24 2020-12-08 Amazon Technologies, Inc. Inventory tracking
US10984372B2 (en) 2013-05-24 2021-04-20 Amazon Technologies, Inc. Inventory transitions
US10176513B1 (en) 2013-06-26 2019-01-08 Amazon Technologies, Inc. Using gestures and expressions to assist users
US10268983B2 (en) 2013-06-26 2019-04-23 Amazon Technologies, Inc. Detecting item interaction and movement
US10176456B2 (en) 2013-06-26 2019-01-08 Amazon Technologies, Inc. Transitioning items from a materials handling facility
US10296814B1 (en) 2013-06-27 2019-05-21 Amazon Technologies, Inc. Automated and periodic updating of item images data store
JP2015016531A (ja) * 2013-07-12 2015-01-29 株式会社ダイヘン 操作装置
US10353982B1 (en) 2013-08-13 2019-07-16 Amazon Technologies, Inc. Disambiguating between users
US10366306B1 (en) 2013-09-19 2019-07-30 Amazon Technologies, Inc. Item identification among item variations
US10515309B1 (en) 2013-09-20 2019-12-24 Amazon Technologies, Inc. Weight based assistance determination
US10664795B1 (en) 2013-09-20 2020-05-26 Amazon Technologies, Inc. Weight based item tracking
US10796358B1 (en) 2013-09-24 2020-10-06 Amazon Technologies, Inc. Identifying companion gestures and behavior
US20150084584A1 (en) * 2013-09-26 2015-03-26 Motorola Solutions, Inc. Wireless charging control for multiple electronic devices
US9517559B2 (en) * 2013-09-27 2016-12-13 Honda Motor Co., Ltd. Robot control system, robot control method and output control method
US11615460B1 (en) 2013-11-26 2023-03-28 Amazon Technologies, Inc. User path development
US10510109B1 (en) 2013-12-09 2019-12-17 Amazon Technologies, Inc. Controlling routing of output information to output devices
US10438259B1 (en) 2013-12-09 2019-10-08 Amazon Technologies, Inc. Propagating and presenting user specific information
US10322881B1 (en) 2013-12-17 2019-06-18 Amazon Technologies, Inc. Notifying users to provide picked items to a drop off location for processing
US8825226B1 (en) * 2013-12-17 2014-09-02 Amazon Technologies, Inc. Deployment of mobile automated vehicles
US10319021B1 (en) 2013-12-17 2019-06-11 Amazon Technologies, Inc. Notifying users of item expiration
US10713614B1 (en) 2014-03-25 2020-07-14 Amazon Technologies, Inc. Weight and vision based item tracking
US10657411B1 (en) 2014-03-25 2020-05-19 Amazon Technologies, Inc. Item identification
US10040628B1 (en) 2014-03-25 2018-08-07 Amazon Technologies, Inc. Item replacement assistance
US10332183B1 (en) 2014-03-28 2019-06-25 Amazon Technologies, Inc. Fulfilling items to users
US10163149B1 (en) 2014-03-28 2018-12-25 Amazon Technologies, Inc. Providing item pick and place information to a user
JP6062079B2 (ja) 2014-05-30 2017-01-18 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 無人型航空輸送機(uav)の動作を制御するための制御器および方法ならびに乗り物
US10140483B1 (en) 2014-06-17 2018-11-27 Amazon Technologies, Inc. Antenna embedded inventory shelf
US10410170B1 (en) 2014-06-18 2019-09-10 Amazon Technologies, Inc. Propagating and expiring presentation information
US10303133B1 (en) 2014-06-23 2019-05-28 Amazon Technologies, Inc. Presenting predicted items to users
US11030541B1 (en) 2014-06-24 2021-06-08 Amazon Technologies, Inc. Proactive resolution of event information
US10242393B1 (en) 2014-06-24 2019-03-26 Amazon Technologies, Inc. Determine an item and user action in a materials handling facility
US10339493B1 (en) 2014-06-24 2019-07-02 Amazon Technologies, Inc. Associating users with totes
US9636825B2 (en) * 2014-06-26 2017-05-02 Robotex Inc. Robotic logistics system
US10176449B1 (en) 2014-08-08 2019-01-08 Amazon Technologies, Inc. Timeout durations for radio frequency identification tags
US10769579B1 (en) 2014-09-08 2020-09-08 Amazon Technologies, Inc. Tote association
US10268984B1 (en) 2014-09-29 2019-04-23 Amazon Technologies, Inc. Inventory item release locations
US11851279B1 (en) 2014-09-30 2023-12-26 Amazon Technologies, Inc. Determining trends from materials handling facility information
US10169660B1 (en) 2014-12-19 2019-01-01 Amazon Technologies, Inc. Counting inventory items using image analysis
US10169677B1 (en) 2014-12-19 2019-01-01 Amazon Technologies, Inc. Counting stacked inventory using image analysis
US10671856B1 (en) 2014-12-19 2020-06-02 Amazon Technologies, Inc. Detecting item actions and inventory changes at an inventory location
US9996818B1 (en) 2014-12-19 2018-06-12 Amazon Technologies, Inc. Counting inventory items using image analysis and depth information
US10134004B1 (en) 2014-12-23 2018-11-20 Amazon Technologies, Inc. Processing image data from a camera cluster
US10438277B1 (en) 2014-12-23 2019-10-08 Amazon Technologies, Inc. Determining an item involved in an event
US10475185B1 (en) 2014-12-23 2019-11-12 Amazon Technologies, Inc. Associating a user with an event
US10291862B1 (en) 2014-12-23 2019-05-14 Amazon Technologies, Inc. Camera hierarchy for monitoring large facilities
US10552750B1 (en) 2014-12-23 2020-02-04 Amazon Technologies, Inc. Disambiguating between multiple users
US10108157B1 (en) 2014-12-23 2018-10-23 Amazon Technologies, Inc. Reducing power consumption and data transmission
US10696454B1 (en) 2014-12-26 2020-06-30 Amazon Technologies, Inc. Combination carrying device
US9358684B1 (en) * 2015-02-18 2016-06-07 Merry Electronics Co., Ltd. Wireless transmission device and robot arm using the same
US10586203B1 (en) 2015-03-25 2020-03-10 Amazon Technologies, Inc. Segmenting a user pattern into descriptor regions for tracking and re-establishing tracking of a user within a materials handling facility
US10679177B1 (en) 2015-03-25 2020-06-09 Amazon Technologies, Inc. Using depth sensing cameras positioned overhead to detect and track a movement of a user within a materials handling facility
US10810539B1 (en) 2015-03-25 2020-10-20 Amazon Technologies, Inc. Re-establishing tracking of a user within a materials handling facility
US11205270B1 (en) 2015-03-25 2021-12-21 Amazon Technologies, Inc. Collecting user pattern descriptors for use in tracking a movement of a user within a materials handling facility
JP2015147091A (ja) * 2015-04-17 2015-08-20 シャープ株式会社 自走式掃除機
US10891736B1 (en) 2015-06-23 2021-01-12 Amazon Technologies, Inc. Associating an agent with an event using motion analysis
US10388019B1 (en) 2015-06-23 2019-08-20 Amazon Technologies, Inc. Associating an agent with an event based on multiple inputs
US10787187B1 (en) 2015-06-26 2020-09-29 Amazon Technologies, Inc. Self-bagging carts
US9911290B1 (en) 2015-07-25 2018-03-06 Gary M. Zalewski Wireless coded communication (WCC) devices for tracking retail interactions with goods and association to user accounts
US10592742B1 (en) 2015-09-28 2020-03-17 Amazon Technologies, Inc. Agent re-identification
US10037449B1 (en) 2015-09-29 2018-07-31 Amazon Technologies, Inc. Inventory tracking using RFID
US10089505B1 (en) 2015-09-29 2018-10-02 Amazon Technologies, Inc. Inventory tracking using RFID
US10262172B1 (en) 2015-09-29 2019-04-16 Amazon Technologies, Inc. Inventory tracking using RFID
US10121121B1 (en) 2015-12-28 2018-11-06 Amazon Technologies, Inc. Smart shelves
SG11201805378XA (en) * 2016-01-04 2018-07-30 Zhejiang Libiao Robots Co Ltd Method and device for returning robots from site
US9840154B2 (en) 2016-04-01 2017-12-12 Locus Robotics Corporation Electrical charging system for a robot
JP6786912B2 (ja) * 2016-07-05 2020-11-18 富士ゼロックス株式会社 移動ロボットおよび移動制御システム
US11300662B1 (en) 2016-12-27 2022-04-12 Amazon Technologies, Inc. Detecting and locating interactions using LIDAR devices
US10839203B1 (en) 2016-12-27 2020-11-17 Amazon Technologies, Inc. Recognizing and tracking poses using digital imagery captured from multiple fields of view
JP6764796B2 (ja) * 2017-01-26 2020-10-07 株式会社日立製作所 ロボット制御システムおよびロボット制御方法
JP6624139B2 (ja) * 2017-03-24 2019-12-25 カシオ計算機株式会社 自律移動装置、自律移動方法及びプログラム
US10943465B1 (en) 2017-03-28 2021-03-09 Amazon Technologies, Inc. Device notification and aggregation
US10482625B1 (en) 2017-03-28 2019-11-19 Amazon Technologies, Inc. Calibration of networked imaging devices to a global color space
US10699421B1 (en) 2017-03-29 2020-06-30 Amazon Technologies, Inc. Tracking objects in three-dimensional space using calibrated visual cameras and depth cameras
US10223591B1 (en) 2017-03-30 2019-03-05 Amazon Technologies, Inc. Multi-video annotation
US20180365616A1 (en) * 2017-06-20 2018-12-20 Walmart Apollo, Llc Systems and methods for management of inventory audits
US10913604B2 (en) * 2017-06-21 2021-02-09 Locus Robotics Corp. System and method for queuing robots destined for one or more processing stations
US11257057B1 (en) 2017-06-22 2022-02-22 Amazon Technologies, Inc. Secure dual-monitor point-of-sale system
US10491808B1 (en) 2017-06-27 2019-11-26 Amazon Technologies, Inc. Detecting sunlight in images
US10650246B1 (en) 2017-06-27 2020-05-12 Amazon Technologies, Inc. System for determining a camera radiance
US10863105B1 (en) 2017-06-27 2020-12-08 Amazon Technologies, Inc. High dynamic range imaging for event detection and inventory management
WO2019005951A1 (en) 2017-06-29 2019-01-03 Walmart Apollo, Llc SYSTEMS AND METHODS FOR REALIZING AND MONITORING ASSET INSPECTIONS
US11188095B1 (en) * 2017-07-31 2021-11-30 AI Incorporated Systems and methods for sending scheduling information to a robotic device
CN107688344B (zh) * 2017-08-22 2021-04-23 广东美的智能机器人有限公司 机器人的休眠控制方法及其装置
US11884485B1 (en) * 2017-09-13 2024-01-30 AI Incorporated Autonomous refuse container
US10579064B2 (en) 2017-09-22 2020-03-03 Locus Robotics Corp. Autonomous robot charging profile selection
US10399443B2 (en) 2017-09-22 2019-09-03 Locus Robotics Corp. Autonomous robot charging station
US11232294B1 (en) 2017-09-27 2022-01-25 Amazon Technologies, Inc. Generating tracklets from digital imagery
US10368313B2 (en) * 2017-10-31 2019-07-30 Zebra Technologies Corporation System, method and apparatus for battery allocation
US11175650B2 (en) * 2017-11-03 2021-11-16 Drishti Technologies, Inc. Product knitting systems and methods
US11328513B1 (en) 2017-11-07 2022-05-10 Amazon Technologies, Inc. Agent re-verification and resolution using imaging
JP7095262B2 (ja) * 2017-11-10 2022-07-05 株式会社安川電機 プログラミング支援装置、ロボットシステム及びプログラム生成方法
US10956726B1 (en) 2017-12-12 2021-03-23 Amazon Technologies, Inc. Obfuscating portions of video data
US11030442B1 (en) 2017-12-13 2021-06-08 Amazon Technologies, Inc. Associating events with actors based on digital imagery
US10664962B1 (en) 2017-12-13 2020-05-26 Amazon Technologies, Inc. Determining direction of illumination
US11284041B1 (en) 2017-12-13 2022-03-22 Amazon Technologies, Inc. Associating items with actors based on digital imagery
US10699152B1 (en) 2017-12-13 2020-06-30 Amazon Technologies, Inc. Image data illumination detection
CN110309993B (zh) * 2018-03-27 2022-04-05 杭州海康机器人技术有限公司 一种自动导引运输车agv任务分配方法及装置
US10678228B2 (en) * 2018-04-04 2020-06-09 Invia Robotics, Inc. Autonomous robots performing concerted operation based on shared sensory access and holistic flow of information
US10999524B1 (en) 2018-04-12 2021-05-04 Amazon Technologies, Inc. Temporal high dynamic range imaging using time-of-flight cameras
JP7052546B2 (ja) * 2018-05-11 2022-04-12 トヨタ自動車株式会社 自律移動システム、自律移動体、充電ドック、制御方法、及びプログラム
CN110580014B (zh) * 2018-06-11 2021-03-30 北京京东尚科信息技术有限公司 用于控制自动导引运输车的方法、装置和***
US10674063B2 (en) 2018-06-20 2020-06-02 Amazon Technologies, Inc. Synchronizing time-of-flight cameras
US10708484B2 (en) 2018-06-20 2020-07-07 Amazon Technologies, Inc. Detecting interference between time-of-flight cameras using modified image sensor arrays
US11468698B1 (en) 2018-06-28 2022-10-11 Amazon Technologies, Inc. Associating events with actors using digital imagery and machine learning
US11482045B1 (en) 2018-06-28 2022-10-25 Amazon Technologies, Inc. Associating events with actors using digital imagery and machine learning
US11468681B1 (en) 2018-06-28 2022-10-11 Amazon Technologies, Inc. Associating events with actors using digital imagery and machine learning
GB2575462B (en) 2018-07-10 2021-10-20 Sony Interactive Entertainment Inc Apparatus, system and method of controlling a robotic device
US10681338B1 (en) 2018-07-24 2020-06-09 Amazon Technologies, Inc. Detecting interference in depth images captured using overlapping depth cameras
JP7068463B2 (ja) * 2018-07-27 2022-05-16 株式会社日立ハイテク 自動分析システム
JP7067374B2 (ja) 2018-08-29 2022-05-16 トヨタ自動車株式会社 充電管理装置及び充電管理システム、充電管理方法
US11013140B1 (en) 2018-09-25 2021-05-18 Amazon Technologies, Inc. Wall-mounted cable housing assemblies
CN109240251B (zh) * 2018-11-19 2024-05-14 炬星科技(深圳)有限公司 分布式机器人的调度决策方法
US11386306B1 (en) 2018-12-13 2022-07-12 Amazon Technologies, Inc. Re-identification of agents using image analysis and machine learning
US10915783B1 (en) 2018-12-14 2021-02-09 Amazon Technologies, Inc. Detecting and locating actors in scenes based on degraded or supersaturated depth data
US10805556B1 (en) 2019-01-22 2020-10-13 Amazon Technologies, Inc. Storage units with shifted-lens cameras
EP3696744A1 (en) * 2019-02-13 2020-08-19 Robert Bosch GmbH Safeguarding resources of physical entites in a shared environment
US11263564B2 (en) 2019-02-21 2022-03-01 Samsung Electronics Co., Ltd. Mobile service robots scheduling utilizing merged tasks
CN109933076A (zh) * 2019-04-22 2019-06-25 贵州翰凯斯智能技术有限公司 一种基于无人驾驶的移动多功能车***及使用方法
JP7353796B2 (ja) * 2019-05-17 2023-10-02 ヤンマーパワーテクノロジー株式会社 作業車両用の自動走行システム
US11580785B1 (en) 2019-06-10 2023-02-14 Amazon Technologies, Inc. Detecting interactions with non-discretized items and associating interactions with actors using digital images
US11927472B1 (en) 2019-06-26 2024-03-12 Amazon Technologies, Inc. Modular storage systems
US10894627B1 (en) 2019-08-09 2021-01-19 Amazon Technologies, Inc. Pinch-sealed adhesive sleeves
CN112398886B (zh) * 2019-08-14 2024-01-23 北京极智嘉科技股份有限公司 机器人、机器人通讯管理方法及存储介质
CN110427036A (zh) * 2019-08-14 2019-11-08 成都普诺思博科技有限公司 一种商用清洁机器人的云端管理***
KR20190106864A (ko) * 2019-08-27 2019-09-18 엘지전자 주식회사 로봇을 충전하기 위한 방법 및 시스템
JP7003979B2 (ja) * 2019-09-06 2022-01-21 日本電気株式会社 制御装置、制御方法、およびプログラム
US11109310B1 (en) 2019-09-17 2021-08-31 Amazon Technologies, Inc. Infrastructure-based access point load balancing
US11012601B1 (en) 2019-09-23 2021-05-18 Amazon Technologies, Inc. Dual camera module systems
KR20210061138A (ko) * 2019-11-19 2021-05-27 주식회사 엘지화학 배터리 관리 시스템 및 그 제어방법
US11083102B1 (en) 2019-12-10 2021-08-03 Amazon Technologies, Inc. Modular distribution frames and assemblies
US12026619B1 (en) 2019-12-11 2024-07-02 Amazon Technologies, Inc. Slimmable neural network architecture search optimization
US11587384B1 (en) 2019-12-13 2023-02-21 Amazon Technologies, Inc. Group determination and association
SG10201914066TA (en) * 2019-12-31 2021-07-29 Delta Electronics Int’L Singapore Pte Ltd Automated guided vehicle management system and method
US11410122B1 (en) 2020-01-31 2022-08-09 Amazon Technologies, Inc. Determining inventory levels using switch-equipped strips and patterns of activated or deactivated indicators
JP7409474B2 (ja) * 2020-02-25 2024-01-09 日本電気株式会社 制御装置、制御方法及びプログラム
US11398094B1 (en) 2020-04-06 2022-07-26 Amazon Technologies, Inc. Locally and globally locating actors by digital cameras and machine learning
US11443516B1 (en) 2020-04-06 2022-09-13 Amazon Technologies, Inc. Locally and globally locating actors by digital cameras and machine learning
JP7487552B2 (ja) * 2020-05-20 2024-05-21 セイコーエプソン株式会社 充電方法および充電システム
JP2021189644A (ja) * 2020-05-28 2021-12-13 株式会社日立ビルシステム 充電管理システム、及び方法
EP3979021A1 (en) * 2020-09-30 2022-04-06 Ricoh Company, Ltd. Scheduling system, scheduling method, and carrier means
JP7136277B2 (ja) * 2020-09-30 2022-09-13 株式会社リコー スケジューリングシステム、スケジューリング方法およびプログラム
US11896144B1 (en) 2020-12-03 2024-02-13 Amazon Technologies, Inc. Determining inventory levels using rotatable counting devices and visual imagery
US11514766B1 (en) 2020-12-10 2022-11-29 Amazon Technologies, Inc. Detecting interactions with storage units based on RFID signals and auxiliary signals
JP7494748B2 (ja) * 2021-02-01 2024-06-04 トヨタ自動車株式会社 ロボット制御システム、ロボット制御方法、及びプログラム
DE112021006985T5 (de) 2021-02-02 2023-11-30 Mitsubishi Electric Corporation Arbeitsplan-erzeugungsvorrichtung und arbeitsplan-erzeugungsverfahren
KR20220112470A (ko) * 2021-02-04 2022-08-11 엘지전자 주식회사 이동 로봇에 포함된 복수의 배터리를 방전시키는 방법 및 그 이동 로봇
CN113219966A (zh) * 2021-04-01 2021-08-06 深圳市优必选科技股份有限公司 机器人的控制方法、装置、通信设备及存储介质
CN113305833B (zh) * 2021-05-13 2022-05-24 深圳优地科技有限公司 机器人控制方法、装置、终端和存储介质
US11940320B1 (en) 2021-06-25 2024-03-26 Amazon Technologies, Inc. Compressing load signal transmissions
US11635167B1 (en) 2021-09-09 2023-04-25 Amazon Technologies, Inc. Quick-connect camera mounts with multiple degrees of freedom
US11483479B1 (en) 2021-09-24 2022-10-25 Amazon Technologies, Inc. Targeted image stabilization
CN114243823B (zh) * 2021-12-09 2023-10-31 上海擎朗智能科技有限公司 一种充电方法、机器人及控制装置
JP7499226B2 (ja) 2021-12-14 2024-06-13 清水建設株式会社 制御装置
CN114285129B (zh) * 2021-12-28 2024-04-02 上海擎朗智能科技有限公司 充电匹配方法、装置及存储介质
WO2023180885A1 (en) 2022-03-23 2023-09-28 Ricoh Company, Ltd. Information processing system, autonomous traveling body, information processing apparatus, method for controlling autonomous traveling body and recording medium
US11893847B1 (en) 2022-09-23 2024-02-06 Amazon Technologies, Inc. Delivering items to evaluation rooms while maintaining customer privacy

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573142A (ja) * 1991-05-10 1993-03-26 Shinko Electric Co Ltd 移動ロボツトシステムにおける制御方法
JP2000042959A (ja) * 1998-07-28 2000-02-15 Denso Corp 移動ロボットシステムの充電制御装置
JP2005262378A (ja) * 2004-03-18 2005-09-29 Oki Electric Ind Co Ltd 自律ロボットおよびその制御方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367456A (en) * 1985-08-30 1994-11-22 Texas Instruments Incorporated Hierarchical control system for automatically guided vehicles
JPH0789287B2 (ja) * 1985-11-07 1995-09-27 三菱電機株式会社 ロボットのプログラミング方法
JP2679346B2 (ja) * 1990-03-28 1997-11-19 神鋼電機株式会社 移動ロボットシステムにおける充電制御方式
JP2001092529A (ja) 1999-09-21 2001-04-06 Denso Corp 移動ロボットの充電制御システム
US6374155B1 (en) * 1999-11-24 2002-04-16 Personal Robotics, Inc. Autonomous multi-platform robot system
JP2002222033A (ja) * 2001-01-29 2002-08-09 Nec Corp 省電力システム、タスク省電力処理方法、及びそのプログラム
US7206753B2 (en) * 2001-05-04 2007-04-17 Axxon Robotics, Llc Methods for facilitating a retail environment
US6498454B1 (en) * 2001-05-24 2002-12-24 Advanced Micro Devices Automatic battery recharging station for AGVs
JP4032793B2 (ja) * 2002-03-27 2008-01-16 ソニー株式会社 充電システム及び充電制御方法、ロボット装置、及び充電制御プログラム及び記録媒体
JP2003291083A (ja) * 2002-03-28 2003-10-14 Toshiba Corp ロボット装置、ロボット制御方法及びロボット配送システム
JP2003340757A (ja) * 2002-05-24 2003-12-02 Mitsubishi Heavy Ind Ltd ロボット
US6625539B1 (en) * 2002-10-22 2003-09-23 Electricab Taxi Company Range prediction in fleet management of electric and fuel-cell vehicles
US6895292B2 (en) * 2003-04-28 2005-05-17 Palo Alto Research Center Inc. Predictive and preemptive planning and scheduling for different job priorities system and method
US7133746B2 (en) * 2003-07-11 2006-11-07 F Robotics Acquistions, Ltd. Autonomous machine for docking with a docking station and method for docking
KR100506926B1 (ko) * 2003-07-16 2005-08-09 삼성전자주식회사 단일경로용 작업시스템 및 그 제어방법
US7376487B2 (en) * 2003-11-25 2008-05-20 International Business Machines Corporation Nesting negotiation for self-mobile devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573142A (ja) * 1991-05-10 1993-03-26 Shinko Electric Co Ltd 移動ロボツトシステムにおける制御方法
JP2000042959A (ja) * 1998-07-28 2000-02-15 Denso Corp 移動ロボットシステムの充電制御装置
JP2005262378A (ja) * 2004-03-18 2005-09-29 Oki Electric Ind Co Ltd 自律ロボットおよびその制御方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020518906A (ja) * 2017-04-28 2020-06-25 ロブアート ゲーエムベーハーROBART GmbH ロボットのナビゲーションの方法
CN107601194A (zh) * 2017-09-30 2018-01-19 樱花电梯(中山)有限公司 一种电梯装置、机电控制模组及电梯自动清扫***
CN107601194B (zh) * 2017-09-30 2023-10-31 樱花电梯(中山)有限公司 一种电梯装置、机电控制模组及电梯自动清扫***
US12023814B2 (en) 2018-07-27 2024-07-02 Sony Corporation Mobile object and control method
CN110790097A (zh) * 2018-08-03 2020-02-14 通力股份公司 向输送机***生成控制信号
CN110790097B (zh) * 2018-08-03 2024-03-15 通力股份公司 向输送机***生成控制信号

Also Published As

Publication number Publication date
US8027750B2 (en) 2011-09-27
JP2006106919A (ja) 2006-04-20
JP4460411B2 (ja) 2010-05-12
US20080109114A1 (en) 2008-05-08

Similar Documents

Publication Publication Date Title
WO2006038576A1 (ja) ロボット制御装置
US20190345000A1 (en) Robotic destination dispatch system for elevators and methods for making and using same
JP4621073B2 (ja) ロボット制御装置
JP4377744B2 (ja) ロボット制御装置
JP6875228B2 (ja) ロボット調達装置、及びロボット調達方法
CN110723609B (zh) 电梯控制方法、装置、***、计算机设备和存储介质
JP6825537B2 (ja) 送迎システム
JP4616664B2 (ja) ロボット制御装置、ロボット制御方法およびロボット制御プログラム、ならびに移動ロボット
CN111847150A (zh) 一种机器人乘梯的控制方法、机器人、服务器及***
JP6996659B2 (ja) エレベーター連動装置
CN105836554A (zh) 电梯预约方法及装置
JPWO2017029982A1 (ja) 移動体、情報処理装置、移動体システム、情報処理方法および情報処理プログラム
JP2019537730A (ja) ナビゲーションデータを生成し、対象物を搬送する方法及びシステム
KR20120102464A (ko) 전기자동차 충전 예약 시스템
CN114256940B (zh) 一种多机器人充电调度方法、装置及***
JP2018147359A (ja) サービス提供システムおよび要求受付ロボット
US20230315117A1 (en) Mobile body control device, mobile body control method, and non-transitory computer-readable storage medium
WO2021075499A1 (ja) 駐車支援装置、駐車場システム、及び駐車支援方法
CN109427001B (zh) 移动电源的租借管理设备及方法
WO2021191981A1 (ja) エレベーターシステム
JP6778847B1 (ja) 貨物ポート管理システム、貨物ポート管理方法、及びプログラム
WO2022153411A1 (ja) 案内システム
CN115783915A (zh) 一种楼宇设备的控制方法、***、设备及存储介质
TW201913506A (zh) 移動電源的租借管理設備及方法
JP6791309B1 (ja) 携帯端末及びプログラム

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 11664004

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 05788092

Country of ref document: EP

Kind code of ref document: A1

WWP Wipo information: published in national office

Ref document number: 11664004

Country of ref document: US