WO2021033509A1 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
WO2021033509A1
WO2021033509A1 PCT/JP2020/029093 JP2020029093W WO2021033509A1 WO 2021033509 A1 WO2021033509 A1 WO 2021033509A1 JP 2020029093 W JP2020029093 W JP 2020029093W WO 2021033509 A1 WO2021033509 A1 WO 2021033509A1
Authority
WO
WIPO (PCT)
Prior art keywords
contact
contact sensor
robot device
information processing
sensor
Prior art date
Application number
PCT/JP2020/029093
Other languages
English (en)
French (fr)
Inventor
弘樹 西條
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Publication of WO2021033509A1 publication Critical patent/WO2021033509A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Definitions

  • This disclosure relates to information processing devices, information processing methods, and programs.
  • SLAM Simultaneus Localization And Mapping
  • the information processing apparatus includes an environment recognition unit that recognizes an object existing in the environment based on a sensing result by the non-contact sensor, and the contact sensor so as to bring the contact sensor into contact with the object. Based on the device control unit that controls the position or orientation of the robot device having the above, the sensing result from the contact sensor in contact with the object, and the sensing result by the non-contact sensor, the robot device in the environment. It is provided with a self-position deriving unit for deriving information on a position or posture.
  • the information processing method is such that the computing device recognizes an object existing in the environment based on the sensing result by the non-contact sensor, and the contact sensor is brought into contact with the object.
  • the robot device in the environment is based on controlling the position or orientation of the robot device having the contact sensor, the sensing result from the contact sensor in contact with the object, and the sensing result by the non-contact sensor. It includes deriving information about the position or posture of the robot.
  • the program according to the embodiment of the present disclosure is such that the computer is brought into contact with an environment recognition unit that recognizes an object existing in the environment based on the sensing result by the non-contact sensor, and the contact sensor is brought into contact with the object.
  • the robot in the environment is based on the device control unit that controls the position or orientation of the robot device having a sensor, the sensing result from the contact sensor in contact with the object, and the sensing result by the non-contact sensor. It realizes a self-position deriving unit that derives information on the position or orientation of the device.
  • an object existing in the environment is recognized based on the sensing result by the non-contact sensor, and the contact sensor is brought into contact with the recognized object. Control the position or orientation of the robot device.
  • the information processing device, the information processing method, and the program according to the embodiment of the present disclosure are robots in the environment based on the sensing result from the contact sensor in contact with the object and the sensing result by the non-contact sensor. Information about the position or orientation of the device can be derived.
  • FIG. 1 is a schematic diagram illustrating an outline of a robot device 1 to which the technique according to the present disclosure is applied.
  • the robot device 1 to which the technique according to the present disclosure is applied includes, for example, a main body 10, a contact sensor 20, a manipulator 21, a moving mechanism 30, and a non-contact sensor 40.
  • the main body 10 includes, for example, a power unit and a control unit of the robot device 1, and is a central portion to which each part of the robot device 1 is attached.
  • the main body 10 may have a shape imitating a human upper body including a head, a neck, and a torso.
  • the manipulator 21 is, for example, an articulated robot arm attached to the main body 10.
  • the manipulator 21 may be configured with a link mechanism having joints at locations corresponding to human shoulders, elbows, and wrists.
  • the contact sensor 20 is, for example, a sensor provided at the end of the manipulator 21 and capable of detecting a pressure change to the sensor.
  • the contact sensor 20 may be a tactile sensor or a force sensor provided on an end effector (so-called effector) shaped like a human hand.
  • the contact sensor 20 can detect whether or not the end effector at the end of the manipulator 21 has come into contact with an object existing in the surrounding environment, or the gripping force of the end effector at the end of the manipulator 21 on the object.
  • the moving mechanism 30 is provided at the lower part of the main body 10, for example, and is a part responsible for moving the robot device 1.
  • the moving mechanism 30 may be a two-wheeled or four-wheeled wheel-type moving device, or may be a two-legged or four-legged moving device. Further, the moving mechanism 30 may be a hover type, a propeller type, or an endless track type moving device.
  • the non-contact sensor 40 is, for example, a sensor provided on the main body 10 or the like to detect information on the surrounding environment of the robot device 1 in a non-contact manner.
  • the non-contact sensor 40 is an imaging device such as a stereo camera, a monocular camera, a color camera, an infrared camera, or a polarized camera, an environment sensor for detecting the weather or the weather, a microphone for detecting voice, or a microphone. It may be a depth sensor such as an ultrasonic sensor, a ToF (Time of Flight) sensor, or a LiDAR (Light Detection and Ringing) sensor. Further, the non-contact sensor 40 may be a position sensor such as a GNSS (Global Navigation Satellite System) sensor.
  • GNSS Global Navigation Satellite System
  • the non-contact sensor 40 uses an imaging device capable of capturing a color image, a depth sensor such as a LiDAR sensor capable of measuring a distance to a target, or a distance between a target image and a distance. It may be an RGBD (Red, Green, Blue, Depth) sensor that can be acquired at the same time.
  • a depth sensor such as a LiDAR sensor capable of measuring a distance to a target, or a distance between a target image and a distance.
  • RGBD Red, Green, Blue, Depth
  • an RGBD (Red, Green, Blue, Dept) sensor may be provided on the head of the main body 10
  • a LiDAR sensor may be provided on the body of the main body 10.
  • the robot device 1 to which the technique according to the present disclosure is applied includes, for example, a moving mechanism 30 for moving the robot device 1 and a manipulator 21 including an end effector capable of acting on an object existing in the surrounding environment. That is, the robot device 1 may be a robot device capable of autonomous action or movement. Such a robot device 1 can perform an action or a movement based on an instruction from a user or a spontaneous trigger.
  • the accuracy of alignment and the like in the action or movement of the robot device 1 depends on the recognition accuracy of the surrounding environment by the robot device 1. Therefore, if the robot device 1 can recognize the surrounding environment with higher accuracy, the robot device 1 can further improve the accuracy of action or movement.
  • the technique according to the present disclosure improves the position accuracy of the robot device 1 in the environment recognized by the robot device 1 by using the sensing result of the contact sensor 20 in addition to the sensing result of the non-contact sensor 40. ..
  • the robot device 1 also detects the object by the contact sensor 20 by contacting the object detected by the non-contact sensor 40 from the surrounding environment with the contact sensor 20. At this time, the robot device 1 can grasp the position of the contact sensor 20 provided on the end effector of the manipulator 21 with high accuracy by using the information on the body model and the posture of the robot device 1. Therefore, the robot device 1 can determine the position of the robot device 1 by using the information on the surrounding environment detected by the non-contact sensor 40 and the position information of the contact sensor 20 that comes into contact with an object existing in the surrounding environment. It can be grasped with higher accuracy.
  • the robot device 1 can specify the position of the robot device 1 with respect to the object with higher accuracy than the indirect measurement by the non-contact sensor 40 by directly contacting the object with the contact sensor 20. According to this, the robot device 1 can recognize the self-position with respect to the surrounding environment with higher accuracy.
  • the object represents a stationary object that exists in the environment around the robot device 1 and has a size that allows the robot device 1 to come into contact with the object.
  • the robot device 1 stably makes contact with the object by the contact sensor 20. be able to.
  • FIG. 2 is a block diagram illustrating a functional configuration of the information processing apparatus 100 according to the present embodiment.
  • the information processing device 100 includes an environment recognition unit 110, a map creation unit 120, an action planning unit 130, a contact determination unit 140, an operation planning unit 150, and a device control unit 160.
  • a determination unit 170 and a self-position derivation unit 180 are provided.
  • the information processing device 100 may be provided, for example, inside the robot device 1, or may be provided outside the robot device 1 that can communicate with the robot device 1 by wire or wirelessly. Since the contact sensor 20, the moving mechanism 30, and the non-contact sensor 40 are as described with reference to FIG. 1, the description thereof is omitted here.
  • the environment recognition unit 110 recognizes the environment around the robot device 1 based on the sensing result of the non-contact sensor 40. Specifically, the environment recognition unit 110 recognizes the position, type, movement, and the like of objects existing around the robot device 1 based on the sensing result of the non-contact sensor 40. For example, the environment recognition unit 110 performs various recognition processes such as an image, a person, an object, a pattern, a position, or an attribute on the sensing result of the non-contact sensor 40 to display the environment around the robot device 1. You may recognize it.
  • the recognition process performed by the environment recognition unit 110 may be performed based on a predetermined rule, or may be performed based on an algorithm constructed by machine learning.
  • the map creation unit 120 creates an environment map representing the environment around the robot device 1 based on the recognition result of the environment recognition unit 110. Specifically, the map creation unit 120 creates an environment map showing the types and positions of objects existing around the robot device 1. For example, the map creation unit 120 creates an environment map based on the result of image recognition for an image of the environment around the robot device 1 and the result of object recognition based on the distance measurement distance from the robot device 1 to the object. You may create it.
  • the environmental map may be represented by, for example, an occupied grid map (Occupancy Grid Map), a road map (Lane Map), a point cloud map (Point Cloud Map), or the like.
  • the action planning unit 130 creates an action plan for the robot device 1 to execute a task. Specifically, the action planning unit 130 creates an action plan including a series of actions for executing a task instructed by the user or set autonomously. For example, the action planning unit 130 responds to the task of "bringing the object under the user” by “searching for the object”, “moving to the vicinity of the object", and “grasping the object”. An action plan may be created that includes a series of actions such as "moving to the vicinity of the user while holding the object” and "passing the object to the user”.
  • the contact determination unit 140 determines whether or not to bring the contact sensor 20 into contact with an object existing in the environment around the robot device 1 in order to improve the position accuracy of the robot device 1 in the environment. Specifically, the contact determination unit 140 may determine whether or not to bring the contact sensor 20 into contact with an object existing in the environment around the robot device 1 based on the content of the task executed by the robot device 1. Good.
  • the contact determination unit 140 may determine whether or not to bring the contact sensor 20 into contact with an object existing in the environment around the robot device 1 based on the content of a specific operation executed by the robot device 1. Good. For example, the contact determination unit 140 may determine whether or not to bring the contact sensor 20 into contact with the object based on various motion plans created by the motion planning unit 150 described later. In such a case, the motion planning unit 150, which will be described later, may recreate various motion plans based on the self-position of the robot device 1 updated by the contact between the contact sensor 20 and the object.
  • the contact determination unit 140 may determine that the contact sensor 20 is brought into contact with the object when the robot device 1 executes a task including movement.
  • the contact determination unit 140 may determine that the contact sensor 20 is brought into contact with the object in order to improve the accuracy of the positional relationship between the robot device 1 after movement and the object.
  • the contact determination unit 140 may determine that the contact sensor 20 is brought into contact with the object when executing a task in which the distance between the robot device 1 and the object is equal to or less than the threshold value.
  • the robot device 1 can easily bring the contact sensor 20 into contact with the object. Therefore, the robot device 1 may improve the position accuracy of the robot device 1 in the environment map by bringing the contact sensor 20 into contact with the object when approaching the object.
  • the contact determination unit 140 may determine that the contact sensor 20 is brought into contact with the object when the robot device 1 executes a task including an action on the object.
  • the action from the end effector to the object can be executed more smoothly as the recognition accuracy of the positional relationship between the robot device 1 and the object is higher. Therefore, the contact determination unit 140 may improve the recognition accuracy of the positional relationship between the robot device 1 and the object by bringing the contact sensor 20 into contact with the object before the robot device 1 acts on the object. ..
  • the object that contacts the contact sensor 20 may be an object that is in contact with the object.
  • the object with which the contact sensor 20 comes into contact may be the table on which the cup is placed.
  • the robot device 1 improves the accuracy of the self-position in the environment map, particularly the accuracy of the positional relationship between the object contacted by the contact sensor 20 and the robot device 1 through the object contacted by the contact sensor 20. Can be done. Therefore, the robot device 1 further improves the accuracy of the positional relationship between the object to be acted on and the robot device 1 by bringing the contact sensor 20 into contact with the object in contact with the object to be acted upon. be able to. According to this, the robot device 1 can act on the object more smoothly by bringing the contact sensor 20 into contact with the object in contact with the object.
  • the contact determination unit 140 makes contact. You may decide not to bring the sensor 20 into contact with the object. Bringing the contact sensor 20 into contact with an object increases the number of steps for task execution. Therefore, the contact determination unit 140 may determine that the contact sensor 20 is brought into contact with the object only when it is preferable for the execution of the task to improve the accuracy of the self-position recognized by the robot device 1.
  • the motion planning unit 150 creates various motion plans for executing each of the actions included in the action plan created by the motion planning unit 130. Specifically, the motion planning unit 150 may create a route plan for movement by the moving mechanism 30 and a trajectory plan for the end effector when moving the manipulator 21. For example, the motion planning unit 150 may define the position, the traveling direction, and the moving speed of the robot device 1 for each time, and create a route plan for avoiding obstacles included in the environment map. Further, the motion planning unit 150 may define the position, the traveling direction, and the moving speed of the end effector for each time, and create a trajectory plan of the end effector that grips the object included in the environmental map.
  • the motion planning unit 150 operates to bring the contact sensor 20 into contact with the object when the contact determination unit 140 determines that the contact sensor 20 is brought into contact with an object existing in the environment around the robot device 1. You may make a plan. After that, the motion planning unit 150 creates various motion plans for executing each of the actions included in the motion plan based on the self-position of the robot device 1 updated by the contact between the contact sensor 20 and the object. You may try again.
  • the device control unit 160 controls the operation of each part of the robot device 1.
  • the device control unit 160 can control the operation of the movement mechanism 30 of the robot device 1 and the manipulator 21.
  • the device control unit 160 when the contact determination unit 140 determines that the contact sensor 20 is brought into contact with the object, the device control unit 160 causes the contact sensor 20 to come into contact with the object.
  • the manipulator 21 is controlled so as to do so.
  • the device control unit 160 first selects an object to be contacted with the contact sensor 20 from the objects included in the environment map created based on the sensing result of the non-contact sensor 40.
  • the object that contacts the contact sensor 20 may be an object that the object on which the robot device 1 acts is in contact, as described above.
  • the object that contacts the contact sensor 20 may be an object that exists between the robot device 1 and the object, or may be an object that exists closest to the robot device 1.
  • the device control unit 160 controls the position and height of the contact sensor 20 so that the contact sensor 20 faces a part of the object that can be contacted, and then brings the robot device 1 closer to the object to make contact. Bring the sensor 20 closer to the object.
  • the device control unit 160 brings the robot device 1 closer to the object (so-called copying control) while keeping the output from the contact sensor 20 constant. ..
  • the device control unit 160 can bring the robot device 1 close to the object while bringing the contact sensor 20 into contact with the object. Therefore, when the object to be acted on is in contact with the object, the device control unit 160 can improve the position accuracy of the robot device 1 in the environment map while approaching the object.
  • the device control unit 160 may bring the contact sensor 20 into contact with the object at a plurality of points. Specifically, the device control unit 160 may control the manipulator 21 so that the contact sensor 20 contacts at least three points or more on one surface of the object or at least two points or more on one side of the object.
  • a surface is uniquely identified by coordinates of 3 or more points, and a straight line is uniquely identified by coordinates of 2 or more points. Therefore, the device control unit 160 can uniquely identify the surface or side of the object by bringing the contact sensor 20 into contact with at least three points or more on one surface of the object or at least two points or more on one side.
  • the device control unit 160 can also uniquely identify the surface or side of the object by continuously contacting the contact sensor 20 with one surface or one side of the object. For example, the device control unit 160 contacts the contact sensor 20 with one surface or one side of the object, and then scans the contact sensor 20 in one direction while keeping the contact sensor 20 in contact with the surface or one side of the object.
  • the side may be uniquely specified.
  • the device control unit 160 may bring the plurality of contact sensors 20 into contact with one side or one side of the object at the same time, and the plurality of contact sensors 20 may be brought into contact with one side or one side of the object. You may make contact with one side sequentially.
  • the state determination unit 170 determines at least one or more of the mobility and rigidity of the object based on the sensing result of the contact sensor 20. Specifically, the state determination unit 170 is at least one of the mobility or rigidity of the object based on the sensing result of the contact sensor 20, the body model of the robot device 1, the angle of each joint of the manipulator 21, and the control state. One or more states may be determined. More specifically, the state determination unit 170 determines at least one or more of the mobility or rigidity of the object by detecting the reaction force against the force applied to the object from the end effector by the contact sensor 20. You may.
  • the state determination unit 170 may determine that the elasticity of the object is high when the reaction force detected by the contact sensor 20 increases when the force for grasping the object by the end effector is increased. Further, the state determination unit 170 may determine that the rigidity of the object is high when the deformation of the object when the object is grasped by the end effector is small. Further, the state determination unit 170 may determine whether or not the object can be moved (that is, mobility) from the reaction force detected by the contact sensor 20 when the object is pushed by the end effector.
  • Information on the state of the object such as mobility or rigidity determined by the state determination unit 170 may be accumulated as a contact state map by being added to the object of the environment map.
  • information on the state of the object such as mobility or rigidity is "hard and immovable”, “elastic and immovable”, “movable with a certain force”, “easily movable”, or It may be classified and stored in several categories such as "contact is not detected”.
  • Information on the state of the object such as mobility or rigidity determined by the state determination unit 170 can be used as follows.
  • the self-position deriving unit 180 may derive the self-position of the robot device 1 by using the contact of the contact sensor 20 with an object whose mobility is less than or equal to a predetermined degree and is more difficult to move. According to this, the self-position deriving unit 180 can estimate the self-position of the robot device 1 with higher accuracy.
  • the motion planning unit 150 may create a route plan by regarding an object having high mobility among the objects included in the environment map as a movable object without considering it as an obstacle. According to this, the motion planning unit 150 can create a more optimized route plan by moving a movable object and securing a route.
  • the information processing device 100 uses the contact of the object detected by the contact sensor 20 in addition to the environment map created from the sensing result from the non-contact sensor 40 as data expressing the environment around the robot device 1.
  • a contact state map showing the state may be created. According to this, the information processing device 100 can hold the environment around the robot device 1 as more subdivided data. In addition, the information processing device 100 can improve the recognition accuracy of the environment around the robot device 1.
  • the self-position deriving unit 180 estimates the self-position of the robot device 1 based on the sensing result from the non-contact sensor 40 and the sensing result of the contact sensor 20 in contact with the object. Specifically, the self-position derivation unit 180 includes the sensing result from the contact sensor 20, the body model of the robot device 1, the self-position information derived from the angle of each joint, and the control state of each joint, and the non-contact sensor. By using the self-position information obtained by SLAM (Simultaneus Localization and Mapping) using the sensing result from 40, the self-position of the robot device 1 can be estimated by an extended Kalman filter or the like.
  • SLAM Simultaneus Localization and Mapping
  • the information processing device 100 uses the contact between the object existing in the surrounding environment and the contact sensor 20 in addition to the sensing result from the non-contact sensor 40 such as the image pickup device or the depth sensor.
  • the self-position of the robot device 1 can be estimated.
  • the information processing device 100 makes contact with the contact sensor 20 by using the contact state between the contact sensor 20 and the object, the body model of the robot device 1, the angle of each joint, and the control state of each joint.
  • the position of the robot device 1 with respect to the object can be estimated with higher accuracy. Therefore, the information processing device 100 can estimate the position of the robot device 1 on the environment map with higher accuracy by referring to the position of the robot device 1 with respect to the object and the position of the object on the environment map.
  • FIG. 3 is a flowchart illustrating an example of the entire operation of the information processing apparatus 100 according to the present embodiment.
  • the contact determination unit 140 determines whether or not the robot device 1 moves when the task is executed in the action plan created by the action planning unit 130 (S101).
  • the contact determination unit 140 determines that the contact sensor 20 is not brought into contact with the object.
  • the device control unit 160 causes the robot device 1 to execute a task by controlling the robot device 1 based on the plans created by the action planning unit 130 and the motion planning unit 150 (S111).
  • the contact determination unit 140 determines whether or not the distance between the robot device 1 and an object existing in the environment becomes equal to or less than the threshold value during task execution. Is determined (S103).
  • the contact determination unit 140 determines that the contact sensor 20 does not come into contact with the object.
  • the device control unit 160 controls the robot device 1 so as to move to the task execution position (S105), and then the robot device is based on the plans created by the action planning unit 130 and the motion planning unit 150. By controlling 1, the robot device 1 is made to execute a task (S111).
  • the contact determination unit 140 determines that the contact sensor 20 is brought into contact with the object. In such a case, the device control unit 160 causes the robot device 1 to perform contact sensing that brings the contact sensor 20 into contact with the object (S107).
  • the self-position deriving unit 180 derives information on the position or posture of the robot device 1 by further using the sensing result of the contact with the object by the contact sensor 20 in addition to the sensing result by the non-contact sensor 40 (S109). ). As a result, the accuracy of the position of the robot device 1 recognized by the robot device 1 can be further improved.
  • the device control unit 160 controls the robot device 1 based on the plans created by the action planning unit 130 and the motion planning unit 150, so that the robot device 1 can execute the task (S111).
  • the criteria for determining whether or not the contact determination unit 140 brings the contact sensor 20 into contact with the object are not limited to the above examples.
  • the contact determination unit 140 may determine whether or not to bring the contact sensor 20 into contact with the object by using another determination criterion.
  • FIG. 4 is a flowchart illustrating an example of a task execution flow.
  • FIG. 5 is a schematic diagram showing a state of task execution shown in FIG.
  • the example shown in FIGS. 4 and 5 is an example of executing the task of grasping the cup 50 placed on the table 51.
  • the contact determination unit 140 determines whether or not to bring the contact sensor 20 into contact with the object when executing the task.
  • the device control unit 160 identifies an object suitable for contact by the contact sensor 20 from the environment map created based on the sensing result of the non-contact sensor 40. (S201).
  • the device control unit 160 may specify the table 51 recognized by the sensing result of the non-contact sensor 40 as an object suitable for contact by the contact sensor 20.
  • the device control unit 160 adjusts the position of the contact sensor 20 so that the height matches the object (S203), and then controls the movement mechanism 30 to move the robot device 1 toward the object (). S205).
  • the device control unit 160 may adjust the height of the manipulator 21 including the contact sensor 20 so as to match the height of the top plate of the table 51. After that, the device control unit 160 may move the robot device 1 toward the table 51 by advancing the moving mechanism 30.
  • the device control unit 160 determines whether or not the contact sensor 20 has touched the object by checking the output from the contact sensor 20 (S207).
  • the device control unit 160 moves the robot device 1 toward the object until it is determined that the contact sensor 20 has touched the object (S207 / Yes). Further, after the contact sensor 20 comes into contact with the object, the device control unit 160 brings the robot device 1 closer to the object while maintaining the contact state between the contact sensor 20 and the object (S209).
  • the device control unit 160 brings the manipulator 21 including the contact sensor 20 into contact with the table 51 in a bent state, and from the change in the output of the contact sensor 20, the contact sensor 20 and the table 51 are topped. Contact with the plate may be detected. After that, the device control unit 160 may bring the robot device 1 closer to the table 51 while bending the manipulator 21 so that the output from the contact sensor 20 does not change.
  • the device control unit 160 moves the contact sensor 20 on the surface or a straight line of the object while maintaining the contact with the object (S211). After that, the device control unit 160 determines whether or not the number or length of contact points between the contact sensor 20 and the object has reached the target value (S213). The device control unit 160 continues to move the contact sensor 20 until it is determined that the number or length of contact points between the contact sensor 20 and the object has reached the target value (S213 / Yes).
  • the device control unit 160 may increase the contact points between the contact sensor 20 and the table 51 by moving the contact sensor 20 along the edge of the top plate of the table 51. Good.
  • the device control unit 160 creates a contact state map based on the sensing result of the contact sensor 20 in addition to the sensing result of the non-contact sensor 40 (S215).
  • the robot device 1 can recognize the position of the object with higher accuracy from the mechanism and posture of the manipulator 21 up to the contact sensor 20.
  • the device control unit 160 causes the robot device 1 to execute the task.
  • the device control unit 160 may cause the robot device 1 to execute the task of gripping the cup 50 by controlling the end effector of the manipulator 21.
  • the device control unit 160 may hold the cup 50 with the end effector of another manipulator 21 while contacting the table 51 with the contact sensor 20, and releases the contact between the contact sensor 20 and the table 51.
  • the cup 50 may be gripped by the end effector of the manipulator 21.
  • FIG. 6 is a flowchart illustrating another example of the task execution flow.
  • FIG. 7 is a schematic diagram showing a state of task execution shown in FIG.
  • the example shown in FIGS. 6 and 7 is an example of executing the task of moving through a narrow movement path.
  • the contact determination unit 140 determines whether or not there is sufficient clearance for the robot device 1 to pass through the movement path from the environment map created based on the sensing result of the non-contact sensor 40. Is determined (S301). When there is sufficient clearance in the movement path (S301 / Yes), the device control unit 160 moves the robot device 1 and ends the movement after the robot device 1 arrives at the destination (S313 / Yes) (S313 / Yes). S315). When the robot device 1 has not arrived at the destination (S313 / No), the device control unit 160 causes the robot device 1 to continue moving (S317).
  • the device control unit 160 determines whether or not there is a wall surface on one side or both sides of the movement path with a small clearance (S303).
  • the device control unit 160 controls the robot device 1 so that the contact sensor 20 comes into contact with the wall surface when passing through the movement path (S305).
  • the robot device 1 can improve the recognition accuracy of the self-position in the movement path, so that the robot device 1 can pass through the movement path having a small clearance. Therefore, after that, the device control unit 160 can continue the movement of the robot device 1 (S317).
  • the robot device 1 when the robot device 1 moves the movement path between the wall 53 and the pole 55, the robot device 1 attaches the contact sensor 20 provided on the end effector of the manipulator 21 to the wall 53. You may move while making contact. According to this, the robot device 1 can improve the accuracy of self-position estimation by contacting the wall 53 sensed by the non-contact sensor 40 with the contact sensor 20, so that the movement of a smaller clearance can be improved. It is possible to pass even if it is a route.
  • the robot device 1 may pass through the path after contacting the wall 53 once with the contact sensor 20 and then separating the contact sensor 20 from the wall 53.
  • the robot device 1 may pass through the path while constantly contacting the wall 53 with the contact sensor 20.
  • the robot device 1 maintains a constant distance from the wall 53 by controlling the movement by the moving mechanism 30 so that the position and output of the contact sensor 20 in contact with the wall 53 are constant. Is also possible. According to this, the robot device 1 can pass through the movement path with control with higher accuracy.
  • the device control unit 160 determines whether or not the clearance of the movement path is reduced by a movable obstacle. Judgment (S307).
  • the motion planning unit 150 creates an motion plan for moving the movable obstacle (S309).
  • the device control unit 160 controls the robot device 1 based on the created motion plan and moves an obstacle that reduces the clearance of the movement path (S311) to increase the clearance of the movement path. be able to. Therefore, after that, the device control unit 160 can continue the movement of the robot device 1 (S317).
  • Whether or not the obstacle can be moved may be determined based on, for example, a contact state map created based on the sensing result by the contact sensor 20.
  • the robot device 1 may confirm whether or not the obstacle can be moved by making contact with the obstacle having a small clearance by the contact sensor 20.
  • the motion planning unit 150 determines that the movement route cannot pass because the clearance is small, and causes the movement to pass through another movement route. Replan the movement plan to (S319).
  • the accuracy of the self-position recognized by the robot device 1 can be improved, so that the robot device 1 executes the task with higher accuracy. It is possible to make it. Therefore, according to the information processing device 100 according to the present embodiment, the adaptability of the robot device 1 to the existing environment such as in a home or a public facility can be improved, so that the robot device 1 can be given a more flexible task. It is possible to execute it.
  • FIG. 8 is a block diagram showing a hardware configuration example of the information processing apparatus 100 according to the present embodiment.
  • the function of the information processing apparatus 100 can be realized by the collaboration between the software and the hardware described below.
  • the functions of the environment recognition unit 110, the map creation unit 120, the action planning unit 130, the contact determination unit 140, the operation planning unit 150, the device control unit 160, the state determination unit 170, and the self-position derivation unit 180 are executed by the CPU 901. May be done.
  • the information processing device 100 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 903, and a RAM (Random Access Memory) 905.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the information processing device 100 may further include a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, or a communication device 925. .. Further, the information processing apparatus 100 may have a processing circuit such as a DSP (Digital Signal Processor) or an ASIC (Application Specific Integrated Circuit) in place of the CPU 901 or together with the CPU 901.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • the CPU 901 functions as an arithmetic processing device or a control device, and controls the operation of the information processing device 100 according to various programs recorded in the ROM 903, the RAM 905, the storage device 919, or the removable recording medium 927.
  • the ROM 903 stores a program used by the CPU 901, calculation parameters, and the like.
  • the RAM 905 temporarily stores a program used in the execution of the CPU 901, a parameter used in the execution, and the like.
  • the CPU 901, ROM 903, and RAM 905 are connected to each other by a host bus 907 composed of an internal bus such as a CPU bus. Further, the host bus 907 is connected to an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 909.
  • a PCI Peripheral Component Interconnect / Interface
  • the input device 915 is a device that receives input from a user such as a mouse, keyboard, touch panel, buttons, switches, or levers.
  • the input device 915 may be a microphone or the like that detects the user's voice.
  • the input device 915 may be, for example, a remote control device using infrared rays or other radio waves, or an externally connected device 929 corresponding to the operation of the information processing device 100.
  • the input device 915 further includes an input control circuit that outputs an input signal generated based on the information input by the user to the CPU 901. By operating the input device 915, the user can input various data to the information processing device 100 or instruct the processing operation.
  • the output device 917 is a device capable of visually or audibly presenting the information acquired or generated by the information processing device 100 to the user.
  • the output device 917 is, for example, an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), an OLED (Organic Light Emitting Display) display, a hologram, a display device such as a projector, a sound output device such as a speaker or a headphone, or a printer. It may be a printing device such as a device.
  • the output device 917 can output the information obtained by the processing of the information processing device 100 as a video such as text or an image, or a sound such as voice or sound.
  • the storage device 919 is a data storage device configured as an example of the storage unit of the information processing device 100.
  • the storage device 919 may be composed of, for example, a magnetic storage device such as an HDD (Hard Disk Drive), a semiconductor storage device, an optical storage device, an optical magnetic storage device, or the like.
  • the storage device 919 can store a program executed by the CPU 901, various data, various data acquired from the outside, and the like.
  • the drive 921 is a reading or writing device for a removable recording medium 927 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and is built in or externally attached to the information processing device 100.
  • the drive 921 can read the information recorded on the mounted removable recording medium 927 and output it to the RAM 905. Further, the drive 921 can write a record on the removable recording medium 927 mounted on the drive 921.
  • the connection port 923 is a port for directly connecting the external connection device 929 to the information processing device 100.
  • the connection port 923 may be, for example, a USB (Universal Serial Bus) port, an IEEE1394 port, or a SCSI (Small Computer System Interface) port. Further, the connection port 923 may be an RS-232C port, an optical audio terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) port, or the like.
  • the communication device 925 is, for example, a communication interface composed of a communication device for connecting to the communication network 931.
  • the communication device 925 may be, for example, a communication card for a wired or wireless LAN (Local Area Network), Bluetooth (registered trademark), or WUSB (Wireless USB). Further, the communication device 925 may be a router for optical communication, a router for ADSL (Asymmetric Digital Subscriber Line), a modem for various communications, or the like.
  • the communication device 925 can send and receive signals and the like to and from the Internet or other communication devices using a predetermined protocol such as TCP / IP.
  • the communication network 931 connected to the communication device 925 is a network connected by wire or wirelessly, and is, for example, an Internet communication network, a home LAN, an infrared communication network, a radio wave communication network, a satellite communication network, or the like. May be good.
  • the terms used in this specification include those used only for convenience of explanation and not limiting the configuration and operation.
  • the terms “right,” “left,” “top,” and “bottom” only indicate the direction on the referenced drawing.
  • the terms “inside” and “outside” indicate a direction toward the center of the attention element and a direction away from the center of the attention element, respectively. The same applies to terms similar to these and terms having a similar purpose.
  • the technology according to the present disclosure can also have the following configuration.
  • the position of the robot device 1 can be estimated by using the body model and the posture of the robot device 1 by contacting the object with the contact sensor 20. Therefore, since the information processing device 100 can estimate the self-position of the robot device 1 by further using the sensing result of the contact sensor 20 in addition to the sensing result of the non-contact sensor 40, the estimated self-position of the self-position The accuracy can be improved.
  • the effects of the techniques according to the present disclosure are not necessarily limited to the effects described herein, and may be any of the effects described in the present disclosure.
  • An environment recognition unit that recognizes objects existing in the environment based on the sensing results of the non-contact sensor
  • a device control unit that controls the position or orientation of a robot device having the contact sensor so as to bring the contact sensor into contact with the object. It is provided with a self-position deriving unit that derives information on the position or posture of the robot device in the environment based on the sensing result from the contact sensor in contact with the object and the sensing result by the non-contact sensor.
  • Information processing device (2) In the above (1), the self-position deriving unit derives the position or posture of the robot device in the environment map generated from the sensing result of the non-contact sensor based on the sensing result of the contact sensor. The information processing device described.
  • the self-position deriving unit determines the position of the robot device in the environment map based on the surface or line of the object detected by the contact of a plurality of points by the contact sensor and the information about the body model of the robot device.
  • the information processing device according to (2) above which derives a posture.
  • the information processing device according to (1) or (2) above further comprising a contact determination unit that determines whether or not to bring the contact sensor into contact with the object based on the content of a task executed by the robot device.
  • the contact determination unit determines that the contact sensor is brought into contact with the object when the distance between the robot device and the object is equal to or less than a threshold value when executing the task.
  • the contact determination unit determines that the contact sensor is brought into contact with the object when the robot device acts on the object when the task is executed.
  • the information processing device according to paragraph 1. (8) The information processing device according to (7) above, wherein the device control unit brings the contact sensor into contact with the object that comes into contact with the object.
  • the self-position deriving unit derives information on the position or posture of the robot device in the environment based on the sensing result of the contact sensor with respect to the object whose mobility is less than or equal to a predetermined degree (11). ).
  • Information processing device (13) The information processing device according to (11) or (12) above, wherein the mobility or the rigidity of the object determined by the state determination unit is used for creating a plan when a task is executed by the robot device. .. (14) The information processing device according to (13) above, wherein the object having a degree of mobility equal to or higher than a predetermined degree is treated as an obstacle capable of moving a place in creating a plan when executing a task by the robot device.
  • the non-contact sensor is at least one or more of an image pickup device and a depth sensor.
  • the contact sensor is at least one or more of a tactile sensor and a force sensor.
  • the robot device is a robot device including a moving mechanism and a manipulator.
  • Information processing including deriving information about the position or posture of the robot device in the environment based on the sensing result from the contact sensor in contact with the object and the sensing result by the non-contact sensor.
  • Method. On the computer An environment recognition unit that recognizes objects existing in the environment based on the sensing results of the non-contact sensor, A device control unit that controls the position or orientation of a robot device having the contact sensor so as to bring the contact sensor into contact with the object.
  • a self-position deriving unit that derives information on the position or posture of the robot device in the environment is realized based on the sensing result from the contact sensor in contact with the object and the sensing result by the non-contact sensor. Let the program.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本開示の一実施形態に係る情報処理装置は、非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部とを備える。

Description

情報処理装置、情報処理方法、及びプログラム
 本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
 近年、自律的に移動し、様々な作業を行うロボット装置の開発が進められている。また、このようなロボット装置を家庭内、又は公共施設内に導入し、ロボット装置にユーザの行動を支援させることが検討されている。
 所定の空間内でロボット装置を自律的に移動させるためには、ロボット装置に周囲の環境を認識させ、かつ環境内における自己位置を推定させることが重要となる。このような環境認識、及び自己位置推定の技術としては、例えば、カメラの位置及び姿勢と、カメラの画像に映る特徴点の位置とを同時に推定することで、ロボット装置の周囲に存在する物体の配置を表す環境地図を動的に生成するSLAM(Simultaneous Localization And Mapping)という技術が知られている(例えば、特許文献1)。
特開2011-209203号公報
 このようなロボット装置では、ロボット装置の環境に対する行動、又は移動の精度を高めることが望まれる。そのためには、環境地図におけるロボット装置の自己位置の精度を高めることが望まれる。
 よって、環境内においてロボット装置が認識する自身の位置又は姿勢の精度をより高めることが望ましい。
 本開示の一実施形態に係る情報処理装置は、非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによるセンシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部とを備えるものである。
 本開示の一実施形態に係る情報処理方法は、演算装置によって、非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識することと、前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御することと、前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出することとを含むものである。
 本開示の一実施形態に係るプログラムは、コンピュータに、非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部とを実現させるものである。
 本開示の一実施形態に係る情報処理装置、情報処理方法、及びプログラムでは、非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識し、認識したオブジェクトに接触センサを接触させるようにロボット装置の位置又は姿勢を制御する。これにより、本開示の一実施形態に係る情報処理装置、情報処理方法、及びプログラムは、オブジェクトに接触した接触センサからのセンシング結果と、非接触センサによるセンシング結果とに基づいて、環境内におけるロボット装置の位置又は姿勢に関する情報を導出することができる。
本開示に係る技術の適用対象であるロボット装置1の概要を説明する模式図である。 本開示の一実施形態に係る情報処理装置100の機能構成を説明するブロック図である。 同実施形態に係る情報処理装置100の動作全体の一例を説明するフローチャート図である。 同実施形態に係る情報処理装置100におけるタスク実行の流れの一例を説明するフローチャート図である。 図4で示すタスク実行の様子を示す模式図である。 同実施形態に係る情報処理装置100におけるタスク実行の流れの他の例を説明するフローチャート図である。 図6で示すタスク実行の様子を示す模式図である。 同実施形態に係る情報処理装置100のハードウェア構成例を示すブロック図である。
 以下、本開示における実施形態について、図面を参照して詳細に説明する。以下で説明する実施形態は本開示の一具体例であって、本開示にかかる技術が以下の態様に限定されるものではない。また、本開示の各図に示す各構成要素の配置、寸法、及び寸法比等についても、各図に示すものに限定されるものではない。
 なお、説明は以下の順序で行う。
 1.本開示に係る技術の概要
 2.情報処理装置の構成例
 3.情報処理装置の動作例
 4.ハードウェア構成例
 5.付記
 <1.本開示に係る技術の概要>
 図1を参照して、本開示に係る技術の概要について説明する。図1は、本開示に係る技術の適用対象であるロボット装置1の概要を説明する模式図である。
 図1に示すように、本開示に係る技術が適用されるロボット装置1は、例えば、本体10と、接触センサ20と、マニピュレータ21と、移動機構30と、非接触センサ40とを備える。
 本体10は、例えば、ロボット装置1の動力部、及び制御部を備え、ロボット装置1の各部が取り付けられる中心部位である。本体10は、頭部、首、及び胴体を含む人間の上半身を模した形状であってもよい。
 マニピュレータ21は、例えば、本体10に取り付けられた多関節型のロボットアームである。例えば、マニピュレータ21は、人間の肩、肘、及び手首に対応する箇所に関節を有するリンク機構で構成されてもよい。
 接触センサ20は、例えば、マニピュレータ21の終端部に設けられ、センサへの圧力変化を検出可能なセンサである。接触センサ20は、人間の手を模した形状のエンドエフェクタ(いわゆる効果器)に設けられた触覚センサ又は力覚センサであってもよい。接触センサ20は、周囲の環境に存在するオブジェクトにマニピュレータ21の終端のエンドエフェクタが接触したか否か、又はマニピュレータ21の終端のエンドエフェクタによるオブジェクトへの把持力などを検出することができる。
 移動機構30は、例えば、本体10の下部に設けられ、ロボット装置1の移動を担う部位である。移動機構30は、二輪又は四輪の車輪式の移動装置であってもよく、二脚又は四脚の脚式の移動装置であってもよい。さらには、移動機構30は、ホバー式、プロペラ式、又は無限軌道式の移動装置であってもよい。
 非接触センサ40は、例えば、本体10などに設けられ、ロボット装置1の周囲の環境に関する情報を非接触にて検出するセンサである。具体的には、非接触センサ40は、ステレオカメラ、単眼カメラ、カラーカメラ、赤外線カメラ、若しくは偏光カメラなどの撮像装置、天候若しくは気象等を検出するための環境センサ、音声を検出するマイクロフォン、又は超音波センサ、ToF(Time of Flight)センサ、若しくはLiDAR(Light Detection and Ranging)センサなどの深度センサであってもよい。さらには、非接触センサ40は、GNSS(Global Navigation Satellite System)センサなどの位置センサであってもよい。
 より具体的には、非接触センサ40は、カラー画像を撮像することが可能な撮像装置、対象までの距離を測定することが可能なLiDARセンサなどの深度センサ、又は対象の画像と距離とを同時に取得することが可能なRGBD(Red,Green,Blue,Depth)センサであってもよい。例えば、図1に示すように、ロボット装置1では、本体10の頭部にRGBD(Red,Green,Blue,Depth)センサが設けられ、本体10の胴体にLiDARセンサが設けられてもよい。
 本開示に係る技術が適用されるロボット装置1は、例えば、ロボット装置1を移動させる移動機構30と、周囲の環境に存在するオブジェクトに作用可能なエンドエフェクタを備えるマニピュレータ21とを有する。すなわち、ロボット装置1は、自律的な行動又は移動が可能なロボット装置であってもよい。このようなロボット装置1は、ユーザからの指示、又は自発的なトリガに基づいて、行動又は移動を行うことができる。
 ここで、ロボット装置1の行動又は移動における位置合わせなどの精度は、ロボット装置1による周囲の環境の認識精度に依存する。したがって、ロボット装置1が周囲の環境をより高い精度で認識することができれば、ロボット装置1は、行動又は移動の精度をより高めることができる。本開示に係る技術は、非接触センサ40のセンシング結果に加えて、接触センサ20のセンシング結果を用いることで、ロボット装置1が認識する環境内におけるロボット装置1の位置精度を向上させるものである。
 具体的には、ロボット装置1は、非接触センサ40にて周囲の環境から検出したオブジェクトに接触センサ20にて接触することで、接触センサ20でも該オブジェクトを検出する。このとき、ロボット装置1は、ロボット装置1の身体モデル、及び姿勢に関する情報を用いることで、マニピュレータ21のエンドエフェクタに設けられた接触センサ20の位置を高い精度で把握することができる。したがって、ロボット装置1は、非接触センサ40にて検出した周囲の環境の情報と、周囲の環境に存在するオブジェクトに接触する接触センサ20の位置情報とを用いることで、ロボット装置1の位置をより高い精度で把握することができる。
 すなわち、ロボット装置1は、接触センサ20にてオブジェクトと直接接触することで、非接触センサ40による間接的な測定よりも高い精度で、オブジェクトに対するロボット装置1の位置を特定することができる。これによれば、ロボット装置1は、周囲の環境に対する自己位置をより高い精度で認識することができるようになる。
 なお、オブジェクトとは、ロボット装置1の周囲の環境に存在し、かつロボット装置1が接触できる程度の大きさを有する静止物体を表す。オブジェクトがより可動性が低く(すなわち、動きにくく)、かつより剛直性が高い(すなわち、変形しにくい)物体である場合、ロボット装置1は、接触センサ20によるオブジェクトへの接触を安定して行うことができる。
 以下では、上記で概要を説明した本開示に係る技術を実現する情報処理装置について具体的に説明する。
 <2.情報処理装置の構成例>
 まず、図2を参照して、本開示の一実施形態に係る情報処理装置の構成例について説明する。図2は、本実施形態に係る情報処理装置100の機能構成を説明するブロック図である。
 図2に示すように、情報処理装置100は、環境認識部110と、地図作成部120と、行動計画部130と、接触判断部140と、動作計画部150と、装置制御部160と、状態判断部170と、自己位置導出部180とを備える。情報処理装置100は、例えば、ロボット装置1の内部に設けられてもよく、ロボット装置1と有線又は無線で通信可能なロボット装置1の外部に設けられてもよい。なお、接触センサ20、移動機構30、及び非接触センサ40については、図1を参照して説明したとおりであるため、ここでの説明は省略する。
 環境認識部110は、非接触センサ40のセンシング結果に基づいて、ロボット装置1の周囲の環境を認識する。具体的には、環境認識部110は、非接触センサ40のセンシング結果に基づいて、ロボット装置1の周囲に存在するオブジェクトの位置、種類、及び動きなどを認識する。例えば、環境認識部110は、非接触センサ40のセンシング結果に対して、画像、人物、物体、パターン、位置、又は属性等の各種の認識処理を行うことで、ロボット装置1の周囲の環境を認識してもよい。なお、環境認識部110にて行う認識処理は、所定のルールに基づいて行われてもよく、機械学習にて構築されたアルゴリズムに基づいて行われてもよい。
 地図作成部120は、環境認識部110の認識結果に基づいて、ロボット装置1の周囲の環境を表す環境地図を作成する。具体的には、地図作成部120は、ロボット装置1の周囲に存在するオブジェクトの種類、及び位置を表す環境地図を作成する。例えば、地図作成部120は、ロボット装置1の周囲の環境を撮像した画像に対する画像認識の結果、及びロボット装置1からオブジェクトまでの測距距離に基づいた物体認識の結果に基づいて、環境地図を作成してもよい。環境地図は、例えば、占有格子地図(Occupancy Grid Map)、道路地図(Lane Map)、又は点群地図(Point Cloud Map)などにて表されてもよい。
 行動計画部130は、ロボット装置1がタスクを実行するための行動計画を作成する。具体的には、行動計画部130は、ユーザから指示された、又は自律的に設定したタスクを実行するための一連の行動を含む行動計画を作成する。例えば、行動計画部130は、「対象物をユーザの下に持ってくる」というタスクに対して、「対象物を探す」、「対象物の近傍に移動する」、「対象物を把持する」、「対象物を把持したままユーザの近傍に移動する」、及び「ユーザに対象物を渡す」という一連の行動を含む行動計画を作成してもよい。
 接触判断部140は、環境内においてロボット装置1が認識する自身の位置精度を高めるために、ロボット装置1の周囲の環境に存在するオブジェクトに接触センサ20を接触させるか否かを判断する。具体的には、接触判断部140は、ロボット装置1が実行するタスクの内容に基づいて、接触センサ20をロボット装置1の周囲の環境に存在するオブジェクトに接触させるか否かを判断してもよい。
 また、接触判断部140は、ロボット装置1が実行する具体的な動作の内容に基づいて、接触センサ20をロボット装置1の周囲の環境に存在するオブジェクトに接触させるか否かを判断してもよい。例えば、接触判断部140は、後述する動作計画部150にて作成された各種の動作計画に基づいて、接触センサ20をオブジェクトに接触させるか否かを判断してもよい。このような場合、後述する動作計画部150は、接触センサ20とオブジェクトとの接触によって更新されたロボット装置1の自己位置に基づいて、各種の動作計画を作成し直してもよい。
 例えば、接触判断部140は、ロボット装置1が移動を含むタスクを実行する場合、接触センサ20をオブジェクトに接触させることを判断してもよい。ロボット装置1が移動する場合、ロボット装置1と、周囲の環境に存在するオブジェクトとの位置関係が変わり、環境地図内におけるロボット装置1の位置精度が低下する可能性がある。そのため、接触判断部140は、移動後のロボット装置1と、オブジェクトとの位置関係の精度を高めるために、接触センサ20をオブジェクトに接触させることを判断してもよい。
 また、接触判断部140は、ロボット装置1とオブジェクトとの距離が閾値以下となるタスクを実行する場合、接触センサ20をオブジェクトに接触させることを判断してもよい。ロボット装置1がオブジェクトに接近する場合、ロボット装置1は、接触センサ20をオブジェクトに接触させることが容易となる。したがって、ロボット装置1は、オブジェクトに接近する際に、接触センサ20をオブジェクトに接触させることで、環境地図内におけるロボット装置1の位置精度を向上させてもよい。
 さらに、接触判断部140は、ロボット装置1が対象物への作用を含むタスクを実行する場合、接触センサ20をオブジェクトに接触させることを判断してもよい。エンドエフェクタから対象物への作用は、ロボット装置1と対象物との位置関係の認識精度が高いほど、より円滑に実行することが可能である。そのため、接触判断部140は、ロボット装置1から対象物への作用を行う前に接触センサ20をオブジェクトに接触させることで、ロボット装置1と対象物との位置関係の認識精度を高めてもよい。
 このとき、接触センサ20を接触させるオブジェクトは、対象物と接触しているオブジェクトであってもよい。例えば、対象物がテーブルの上に置かれたカップである場合、接触センサ20を接触させるオブジェクトは、カップを載せているテーブルであってもよい。
 ロボット装置1は、接触センサ20にて接触したオブジェクトを介して、環境地図内の自己位置の精度、特に、接触センサ20にて接触したオブジェクトとロボット装置1との位置関係の精度を向上させることができる。そのため、ロボット装置1は、作用の対象となる対象物と接しているオブジェクトに接触センサ20を接触させることにより、作用の対象となる対象物とロボット装置1との位置関係の精度をより向上させることができる。これによれば、ロボット装置1は、対象物と接しているオブジェクトに接触センサ20を接触させることにより、より円滑に対象物への作用を行うことが可能となる。
 なお、ロボット装置1にて実行されるタスクが周囲の環境の見回り、又はユーザとのコミュニケーション等のロボット装置1にて認識される自己位置に依らないタスクである場合、接触判断部140は、接触センサ20をオブジェクトに接触させないことを判断してもよい。接触センサ20をオブジェクトに接触させることは、タスク実行のための工程を増加させることになる。そのため、接触判断部140は、ロボット装置1にて認識される自己位置の精度を向上させることがタスクの実行上好ましい場合に限り、接触センサ20をオブジェクトに接触させることを判断してもよい。
 動作計画部150は、行動計画部130にて作成された行動計画に含まれる行動の各々を実行するための各種の動作計画を作成する。具体的には、動作計画部150は、移動機構30による移動のための経路計画、及びマニピュレータ21を動かす際のエンドエフェクタの軌道計画を作成してもよい。例えば、動作計画部150は、時刻ごとのロボット装置1の位置、進行方向、及び移動速度を規定し、環境地図に含まれる障害物を回避する経路計画を作成してもよい。また、動作計画部150は、時刻ごとのエンドエフェクタの位置、進行方向、及び移動速度を規定し、環境地図に含まれる対象物を把持するエンドエフェクタの軌道計画を作成してもよい。
 また、動作計画部150は、接触判断部140にて接触センサ20をロボット装置1の周囲の環境に存在するオブジェクトに接触させることが判断された場合、接触センサ20をオブジェクトに接触させるための動作計画を作成してもよい。この後、動作計画部150は、接触センサ20とオブジェクトとの接触によって更新されたロボット装置1の自己位置に基づいて、行動計画に含まれる行動の各々を実行するための各種の動作計画を作成し直してもよい。
 装置制御部160は、ロボット装置1の各部の動作を制御する。例えば、装置制御部160は、ロボット装置1の移動機構30、及びマニピュレータ21の動作を制御することができる。具体的には、本実施形態に係る情報処理装置100では、接触判断部140にて接触センサ20をオブジェクトに接触させることが判断された場合、装置制御部160は、接触センサ20がオブジェクトに接触するようにマニピュレータ21を制御する。
 例えば、装置制御部160は、まず、非接触センサ40のセンシング結果に基づいて作成された環境地図に含まれるオブジェクトから、接触センサ20を接触させるオブジェクトを選択する。
 このとき、接触センサ20を接触させるオブジェクトは、上述したように、ロボット装置1が作用を及ぼす対象物が接触しているオブジェクトであってもよい。または、接触センサ20を接触させるオブジェクトは、ロボット装置1と対象物との間に存在するオブジェクトであってもよく、ロボット装置1の最も近くに存在するオブジェクトであってもよい。
 次に、装置制御部160は、接触センサ20が接触可能なオブジェクトの一部と対向するように接触センサ20の位置及び高さを制御した後、ロボット装置1をオブジェクトに接近させることで、接触センサ20をオブジェクトに接近させる。オブジェクトとの接触によって接触センサ20から出力が検出された場合、装置制御部160は、接触センサ20からの出力を一定としながら、ロボット装置1をオブジェクトにさらに接近させる(いわゆる、倣い制御を行う)。
 これによれば、装置制御部160は、オブジェクトに接触センサ20を接触させつつ、ロボット装置1を該オブジェクトに接近させることができる。したがって、作用の対象となる対象物がオブジェクトに接触している場合、装置制御部160は、対象物に接近しながら、環境地図内におけるロボット装置1の位置精度を高めることができる。
 ここで、装置制御部160は、接触センサ20をオブジェクトに接触させる場合、接触センサ20を複数点でオブジェクトに接触させてもよい。具体的には、装置制御部160は、接触センサ20がオブジェクトの一面の少なくとも3点以上、又はオブジェクトの一辺の少なくとも2点以上に接触するように、マニピュレータ21を制御してもよい。
 一般的に、面は3点以上の座標によって一意に特定され、直線は2点以上の座標によって一意に特定される。そのため、装置制御部160は、オブジェクトの一面の少なくとも3点以上、又は一辺の少なくとも2点以上に接触センサ20を接触させることで、オブジェクトの面又は辺を一意に特定することができる。
 また、装置制御部160は、接触センサ20をオブジェクトの一面又は一辺に連続的に接触させることによっても、オブジェクトの面又は辺を一意に特定することができる。例えば、装置制御部160は、接触センサ20をオブジェクトの一面又は一辺の1点に接触させた後、接触センサ20を一面又は一辺に接触させたまま一方向に走査することで、オブジェクトの面又は辺を一意に特定してもよい。
 なお、ロボット装置1に接触センサ20が複数存在する場合、装置制御部160は、複数の接触センサ20をオブジェクトの一面又は一辺に同時に接触させてもよく、複数の接触センサ20をオブジェクトの一面又は一辺に順次接触させてもよい。
 状態判断部170は、接触センサ20のセンシング結果に基づいて、オブジェクトの可動性又は剛直性の少なくともいずれか1つ以上を判断する。具体的には、状態判断部170は、接触センサ20のセンシング結果、ロボット装置1の身体モデル、マニピュレータ21の各関節の角度及び制御状態に基づいて、オブジェクトの可動性又は剛直性の少なくともいずれか1つ以上の状態を判断してもよい。より具体的には、状態判断部170は、エンドエフェクタからオブジェクトに加えた力に対する反力を接触センサ20にて検出することで、オブジェクトの可動性又は剛直性の少なくともいずれか1つ以上を判断してもよい。
 例えば、状態判断部170は、エンドエフェクタにてオブジェクトを掴む力を増大させた際に接触センサ20にて検出される反力が増大する場合、オブジェクトの弾性が高いと判断してもよい。また、状態判断部170は、エンドエフェクタにてオブジェクトを掴んだ際のオブジェクトの変形が小さい場合、オブジェクトの剛直性が高いと判断してもよい。また、状態判断部170は、エンドエフェクタにてオブジェクトを押した際に接触センサ20にて検出される反力から、オブジェクトを動かせるかどうか(すなわち、可動性)を判断してもよい。
 状態判断部170にて判断されたオブジェクトの可動性又は剛直性等の状態に関する情報は、環境地図のオブジェクトに付加されることで、接触状態地図として蓄積されてもよい。また、オブジェクトの可動性又は剛直性等の状態に関する情報は、「固く、かつ動かない」、「弾力があり、かつ動かない」、「一定以上の力で動かせる」、「容易に動かせる」、又は「接触が検知されない」等のいくつかのカテゴリに分類されて記憶されてもよい。
 状態判断部170にて判断されたオブジェクトの可動性又は剛直性等の状態に関する情報は、以下のように用いられ得る。
 例えば、後述する自己位置導出部180は、可動性が所定の度合以下であり、より動きにくいオブジェクトに対する接触センサ20の接触を用いて、ロボット装置1の自己位置を導出してもよい。これによれば、自己位置導出部180は、ロボット装置1の自己位置をより高い精度で推定することができる。
 また、動作計画部150は、環境地図に含まれるオブジェクトのうち、可動性が高いオブジェクトについては、障害物とみなさず、移動可能なオブジェクトとみなして経路計画を作成してもよい。これによれば、動作計画部150は、移動可能なオブジェクトを動かして経路を確保することで、より最適化された経路計画を作成することができる。
 さらに、情報処理装置100は、ロボット装置1の周囲の環境を表現するデータとして、非接触センサ40からのセンシング結果から作成された環境地図に加えて、接触センサ20にて検出されたオブジェクトの接触状態を示す接触状態地図を作成してもよい。これによれば、情報処理装置100は、ロボット装置1の周囲の環境をより細分化されたデータとして保持することが可能となる。また、情報処理装置100は、ロボット装置1の周囲の環境に対する認識精度を向上させることができる。
 自己位置導出部180は、非接触センサ40からのセンシング結果と、オブジェクトに接触した接触センサ20のセンシング結果とに基づいて、ロボット装置1の自己位置を推定する。具体的には、自己位置導出部180は、接触センサ20からのセンシング結果、ロボット装置1の身体モデル、各関節の角度、及び各関節の制御状態から導出される自己位置情報と、非接触センサ40からのセンシング結果を用いたSLAM(Simultaneous Localization and Mapping)にて得られる自己位置情報とを用いることで、拡張カルマンフィルタ等にてロボット装置1の自己位置を推定することができる。
 以上の構成によれば、情報処理装置100は、撮像装置又は深度センサ等の非接触センサ40からのセンシング結果に加えて、周囲の環境に存在するオブジェクトと接触センサ20との接触を用いて、ロボット装置1の自己位置を推定することができる。具体的には、情報処理装置100は、接触センサ20とオブジェクトとの接触状態、ロボット装置1の身体モデル、各関節の角度、及び各関節の制御状態を用いることで、接触センサ20が接触するオブジェクトに対するロボット装置1の位置をより高い精度で推定することができる。したがって、情報処理装置100は、オブジェクトに対するロボット装置1の位置と、環境地図における該オブジェクトの位置とを参照することで、環境地図におけるロボット装置1の位置をより高い精度で推定することができる。
 <3.情報処理装置の動作例>
 続いて、図3~図7を参照して、本実施形態に係る情報処理装置100の動作の流れについて説明する。
 まず、図3を参照して、本実施形態に係る情報処理装置100の動作全体の流れについて説明する。図3は、本実施形態に係る情報処理装置100の動作全体の一例を説明するフローチャート図である。
 図3に示すように、まず、接触判断部140は、行動計画部130が作成した行動計画において、タスク実行に際してロボット装置1が移動するか否かを判断する(S101)。
 タスク実行に際してロボット装置1が移動しない場合(S101/No)、接触判断部140は、接触センサ20をオブジェクトに接触させないことを判断する。このような場合、装置制御部160は、行動計画部130、及び動作計画部150が作成した計画に基づいてロボット装置1を制御することで、ロボット装置1にタスクを実行させる(S111)。
 タスク実行に際してロボット装置1が移動する場合(S101/Yes)、接触判断部140は、さらに、タスク実行の際にロボット装置1と、環境に存在するオブジェクトとの距離が閾値以下になるか否かを判断する(S103)。
 タスク実行の際にロボット装置1とオブジェクトとの距離が閾値以下にならない場合(S103/No)、接触判断部140は、接触センサ20をオブジェクトに接触させないことを判断する。このような場合、装置制御部160は、タスク実行位置に移動するようにロボット装置1を制御し(S105)、その後、行動計画部130、及び動作計画部150が作成した計画に基づいてロボット装置1を制御することで、ロボット装置1にタスクを実行させる(S111)。
 タスク実行の際にロボット装置1とオブジェクトとの距離が閾値以下になる場合(S103/Yes)、接触判断部140は、接触センサ20をオブジェクトに接触させることを判断する。このような場合、装置制御部160は、接触センサ20をオブジェクトに接触させる接触センシングをロボット装置1に実行させる(S107)。
 その後、自己位置導出部180は、非接触センサ40によるセンシング結果に加えて、接触センサ20によるオブジェクトへの接触のセンシング結果をさらに用いて、ロボット装置1の位置又は姿勢に関する情報を導出する(S109)。これにより、ロボット装置1が認識するロボット装置1の位置の精度をより高めることができる。その後、装置制御部160によって、行動計画部130、及び動作計画部150が作成した計画に基づいてロボット装置1を制御することで、ロボット装置1にタスクを実行させることができる(S111)。
 なお、接触判断部140が接触センサ20をオブジェクトに接触させるか否かを判断する基準は、上記例示に限定されない。接触判断部140は、他の判断基準を用いて、接触センサ20をオブジェクトに接触させるか否かを判断してもよい。
 次に、図4及び図5を参照して、接触センサ20による接触センシングを用いたタスク実行の一例について説明する。図4は、タスク実行の流れの一例を説明するフローチャート図である。図5は、図4で示すタスク実行の様子を示す模式図である。図4及び図5で示す一例は、テーブル51上に置かれたコップ50を把持するというタスクを実行する例である。
 図4に示すように、まず、接触判断部140は、タスク実行に際して接触センサ20をオブジェクトに接触させるか否かを判断する。接触センサ20をオブジェクトに接触させることが判断された場合、装置制御部160は、非接触センサ40のセンシング結果に基づいて作成された環境地図から、接触センサ20による接触に適したオブジェクトを特定する(S201)。
 例えば、図5に示すように、装置制御部160は、接触センサ20による接触に適したオブジェクトとして、非接触センサ40のセンシング結果にて認識されたテーブル51を特定してもよい。
 次に、装置制御部160は、オブジェクトと高さが合うように接触センサ20の位置を調整した(S203)後、移動機構30を制御することで、オブジェクトに向かってロボット装置1を移動させる(S205)。
 例えば、図5に示すように、装置制御部160は、接触センサ20を備えるマニピュレータ21の高さをテーブル51の天板の高さと合うように調整してもよい。その後、装置制御部160は、移動機構30を前進させることで、テーブル51に向かってロボット装置1を移動させてもよい。
 続いて、装置制御部160は、接触センサ20からの出力を確認することで、接触センサ20がオブジェクトに接触したか否かを判断する(S207)。装置制御部160は、接触センサ20がオブジェクトに接触したと判断される(S207/Yes)まで、ロボット装置1をオブジェクトに向かって移動させる。さらに、装置制御部160は、接触センサ20がオブジェクトに接触した後、接触センサ20とオブジェクトとの接触状態を維持したまま、ロボット装置1をオブジェクトにさらに接近させる(S209)。
 例えば、図5に示すように、装置制御部160は、接触センサ20を備えるマニピュレータ21を撓ませた状態でテーブル51に接触させ、接触センサ20の出力の変化から接触センサ20とテーブル51の天板との接触を検出してもよい。その後、装置制御部160は、接触センサ20からの出力が変わらないようにマニピュレータ21を屈曲させながら、ロボット装置1をテーブル51にさらに接近させてもよい。
 次に、装置制御部160は、オブジェクトとの接触を維持したまま、接触センサ20をオブジェクトの面上又は直線上で移動させる(S211)。その後、装置制御部160は、接触センサ20とオブジェクトとの接触箇所の数、又は長さが目標値に到達したか否かを判断する(S213)。装置制御部160は、接触センサ20とオブジェクトとの接触箇所の数、又は長さが目標値に到達したと判断される(S213/Yes)まで、接触センサ20の移動を継続する。
 例えば、図5に示すように、装置制御部160は、テーブル51の天板の縁に沿うように接触センサ20を移動させることで、接触センサ20とテーブル51との接触箇所を増加させてもよい。
 続いて、装置制御部160は、非接触センサ40のセンシング結果に加えて、接触センサ20のセンシング結果にさらに基づいて接触状態地図を作成する(S215)。これにより、ロボット装置1は、接触センサ20までのマニピュレータ21の機構及び姿勢からオブジェクトの位置をより高い精度で認識することができる。
 その後、装置制御部160は、ロボット装置1にタスクを実行させる。例えば、図5に示すように、装置制御部160は、マニピュレータ21のエンドエフェクタを制御することで、ロボット装置1にコップ50を把持するタスクを実行させてもよい。このとき、装置制御部160は、接触センサ20にてテーブル51に接触しながら他のマニピュレータ21のエンドエフェクタにてコップ50を把持してもよく、接触センサ20とテーブル51との接触を解除した後、マニピュレータ21のエンドエフェクタにてコップ50を把持してもよい。
 図6及び図7を参照して、接触センサ20による接触センシングを用いたタスク実行の他の例について説明する。図6は、タスク実行の流れの他の例を説明するフローチャート図である。図7は、図6で示すタスク実行の様子を示す模式図である。図6及び図7で示す一例は、狭い移動経路を通過して移動するというタスクを実行する例である。
 図6に示すように、まず、接触判断部140は、非接触センサ40のセンシング結果に基づいて作成された環境地図から、移動経路にロボット装置1が通過する十分なクリアランスが存在するか否かを判断する(S301)。移動経路に十分なクリアランスが存在する場合(S301/Yes)、装置制御部160は、ロボット装置1を移動させ、ロボット装置1が目的地に到着した(S313/Yes)後、移動を終了させる(S315)。ロボット装置1が目的地に到着していない場合(S313/No)、装置制御部160は、ロボット装置1に移動を継続させる(S317)。
 一方、移動経路に十分なクリアランスが存在しない場合(S301/No)、装置制御部160は、クリアランスが小さい移動経路の片側又は両側に壁面があるか否かを判断する(S303)。移動経路の片側又は両側に壁面が存在する場合(S303/Yes)、装置制御部160は、該移動経路の通過時に壁面に接触センサ20を接触させるようにロボット装置1を制御する(S305)。これにより、ロボット装置1は、移動経路における自己位置の認識精度を向上させることができるため、クリアランスが小さい移動経路を通過することが可能である。したがって、その後、装置制御部160は、ロボット装置1の移動を継続することができる(S317)。
 例えば、図7に示すように、ロボット装置1が壁53とポール55との間の移動経路を移動する場合、ロボット装置1は、マニピュレータ21のエンドエフェクタに設けられた接触センサ20を壁53に接触させながら移動してもよい。これによれば、ロボット装置1は、非接触センサ40にてセンシングした壁53に接触センサ20にて接触することで、自己位置の推定の精度を向上させることができるため、より小さなクリアランスの移動経路であっても通過することが可能となる。
 なお、ロボット装置1は、接触センサ20にて一度壁53に接触した後、壁53から接触センサ20を離して経路を通過してもよい。または、ロボット装置1は、接触センサ20にて壁53に常に接触しながら経路を通過してもよい。このような場合、ロボット装置1は、壁53に接触する接触センサ20の位置及び出力が一定となるように移動機構30による移動を制御することで、壁53からの距離を一定に維持することも可能である。これによれば、ロボット装置1は、より高い精度による制御にて移動経路を通過することができる。
 ここで、クリアランスが小さい移動経路のいずれの側にも壁面が存在しない場合(S303/No)、装置制御部160は、移動可能な障害物によって該移動経路のクリアランスが小さくなっているか否かを判断する(S307)。移動可能な障害物によって移動経路のクリアランスが小さくなっている場合(S307/Yes)、動作計画部150は、移動可能な障害物を移動させる動作計画を作成する(S309)。その後、装置制御部160は、作成された動作計画に基づいてロボット装置1を制御し、移動経路のクリアランスを小さくしている障害物を移動させることで(S311)、移動経路のクリアランスを大きくすることができる。したがって、その後、装置制御部160は、ロボット装置1の移動を継続することができる(S317)。
 障害物が移動可能な否かは、例えば、接触センサ20によるセンシング結果に基づいて作成された接触状態地図に基づいて判断されてもよい。または、ロボット装置1は、クリアランスを小さくしている障害物に対して接触センサ20による接触を行うことで、該障害物が移動可能か否かを確認してもよい。
 移動不可な障害物によって移動経路のクリアランスが小さくなっている場合(S307/No)、動作計画部150は、該移動経路はクリアランスの小さいため通過できないと判断し、別の移動経路を通過するように移動計画を再計画する(S319)。
 以上にて説明したように、本実施形態に係る情報処理装置100によれば、ロボット装置1の認識する自己位置の精度を向上させることができるため、ロボット装置1にタスクをより高い精度で実行させることが可能である。したがって、本実施形態に係る情報処理装置100によれば、家庭内又は公共施設内等の既存の環境に対するロボット装置1の適応能力を向上させることができるため、ロボット装置1にさらに柔軟なタスクを実行させることが可能である。
 <4.ハードウェア構成例>
 さらに、図8を参照して、本実施形態に係る情報処理装置100のハードウェア構成について説明する。図8は、本実施形態に係る情報処理装置100のハードウェア構成例を示すブロック図である。
 本実施形態に係る情報処理装置100の機能は、ソフトウェアと、以下で説明するハードウェアとの協働によって実現され得る。例えば、環境認識部110、地図作成部120、行動計画部130、接触判断部140、動作計画部150、装置制御部160、状態判断部170、及び自己位置導出部180の機能は、CPU901により実行されてもよい。
 図8に示すように、情報処理装置100は、CPU(Central Processing Unit)901、ROM(Read Only Memory)903、及びRAM(Random Access Memory)905を含む。
 また、情報処理装置100は、ホストバス907、ブリッジ909、外部バス911、インターフェース913、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923、又は通信装置925をさらに含んでもよい。さらに、情報処理装置100は、CPU901に替えて、又はCPU901と共に、DSP(Digital Signal Processor)、又はASIC(Application Specific Integrated Circuit)などの処理回路を有してもよい。
 CPU901は、演算処理装置、又は制御装置として機能し、ROM903、RAM905、ストレージ装置919、又はリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置100の動作を制御する。ROM903は、CPU901が使用するプログラム、及び演算パラメータなどを記憶する。RAM905は、CPU901の実行において使用するプログラム、及びその実行の際に使用するパラメータなどを一時的に記憶する。
 CPU901、ROM903、及びRAM905は、CPUバスなどの内部バスにて構成されるホストバス907により相互に接続される。さらに、ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続される。
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、又はレバーなどのユーザからの入力を受け付ける装置である。なお、入力装置915は、ユーザの音声を検出するマイクロフォンなどであってもよい。入力装置915は、例えば、赤外線、又はその他の電波を利用したリモートコントロール装置であってもよく、情報処理装置100の操作に対応した外部接続機器929であってもよい。
 入力装置915は、ユーザが入力した情報に基づいて生成した入力信号をCPU901に出力する入力制御回路をさらに含む。ユーザは、入力装置915を操作することによって、情報処理装置100に対して各種データの入力、又は処理動作の指示を行うことができる。
 出力装置917は、情報処理装置100にて取得又は生成された情報をユーザに対して視覚的、又は聴覚的に提示することが可能な装置である。出力装置917は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、OLED(Organic Light Emitting Diode)ディスプレイ、ホログラム、若しくはプロジェクタなどの表示装置、スピーカ若しくはヘッドホンなどの音出力装置、又はプリンタ装置などの印刷装置であってもよい。出力装置917は、情報処理装置100の処理により得られた情報をテキスト若しくは画像などの映像、又は音声若しくは音響などの音として出力することができる。
 ストレージ装置919は、情報処理装置100の記憶部の一例として構成されたデータ格納装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)などの磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどにより構成されてもよい。ストレージ装置919は、CPU901が実行するプログラム、各種データ、又は外部から取得した各種データなどを格納することができる。
 ドライブ921は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体927の読み取り又は書き込み装置であり、情報処理装置100に内蔵、又は外付けされる。例えば、ドライブ921は、装着されているリムーバブル記録媒体927に記録されている情報を読み出してRAM905に出力することができる。また、ドライブ921は、装着されているリムーバブル記録媒体927に記録を書き込むことができる。
 接続ポート923は、外部接続機器929を情報処理装置100に直接接続するためのポートである。接続ポート923は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、又はSCSI(Small Computer System Interface)ポートなどであってもよい。また、接続ポート923は、RS-232Cポート、光オーディオ端子、又はHDMI(登録商標)(High-Definition Multimedia Interface)ポートなどであってもよい。接続ポート923は、外部接続機器929と接続されることで、情報処理装置100と外部接続機器929との間で各種データの送受信を行うことができる。
 通信装置925は、例えば、通信ネットワーク931に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置925は、例えば、有線若しくは無線LAN(Local Area Network)、Bluetooth(登録商標)、又はWUSB(Wireless USB)用の通信カードなどであってもよい。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、又は各種通信用のモデムなどであってもよい。
 通信装置925は、例えば、インターネット、又は他の通信機器との間で、TCP/IPなどの所定のプロトコルを用いて信号などを送受信することができる。通信装置925に接続される通信ネットワーク931は、有線又は無線によって接続されたネットワークであり、例えば、インターネット通信網、家庭内LAN、赤外線通信網、ラジオ波通信網、又は衛星通信網などであってもよい。
 なお、コンピュータに内蔵されるCPU901、ROM903、及びRAM905などのハードウェアに上記の情報処理装置100と同等の機能を発揮させるためのプログラムも作成可能である。また、該プログラムを記録したコンピュータに読み取り可能な記録媒体も提供可能である。
 <5.付記>
 以上、本開示の一実施形態を挙げて、本開示にかかる技術を説明した。ただし、本開示にかかる技術は、上記実施の形態等に限定されるものではなく、種々の変形が可能である。
 さらに、各実施形態で説明した構成および動作の全てが本開示の構成および動作として必須であるとは限らない。たとえば、各実施形態における構成要素のうち、本開示の最上位概念を示す独立請求項に記載されていない構成要素は、任意の構成要素として理解されるべきである。
 本明細書および添付の特許請求の範囲全体で使用される用語は、「限定的でない」用語と解釈されるべきである。例えば、「含む」又は「含まれる」という用語は、「含まれるものとして記載されたものに限定されない」と解釈されるべきである。「有する」という用語は、「有するものとして記載されたものに限定されない」と解釈されるべきである。
 本明細書で使用した用語には、単に説明の便宜のために用いたものであって、構成および動作を限定したものではないものが含まれる。たとえば、「右」、「左」、「上」、「下」といった用語は、参照している図面上での方向を示しているにすぎない。また、「内側」、「外側」という用語は、それぞれ、注目要素の中心に向かう方向、注目要素の中心から離れる方向を示す。これらに類似する用語や同様の趣旨の用語についても同様である。
 なお、本開示にかかる技術は、以下のような構成を取ることも可能である。以下の構成を備える本開示にかかる技術によれば、接触センサ20にてオブジェクトへ接触することで、ロボット装置1の身体モデル、及び姿勢を用いてロボット装置1の位置を推定することができる。よって、情報処理装置100は、非接触センサ40のセンシング結果に加えて、接触センサ20のセンシング結果をさらに用いて、ロボット装置1の自己位置を推定することができるため、推定される自己位置の精度を向上させることができる。本開示にかかる技術が奏する効果は、ここに記載された効果に必ずしも限定されるものではなく、本開示中に記載されたいずれの効果であってもよい。
(1)
 非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、
 前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、
 前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部と
を備えた、情報処理装置。
(2)
 前記自己位置導出部は、前記接触センサの前記センシング結果に基づいて、前記非接触センサの前記センシング結果から生成された環境地図内における前記ロボット装置の位置又は姿勢を導出する、上記(1)に記載の情報処理装置。
(3)
 前記自己位置導出部は、前記接触センサによる複数点の接触によって検出された前記オブジェクトの面又は線と、前記ロボット装置の身体モデルに関する情報とに基づいて、前記環境地図内における前記ロボット装置の位置又は姿勢を導出する、上記(2)に記載の情報処理装置。
(4)
 前記ロボット装置が実行するタスクの内容に基づいて、前記オブジェクトに前記接触センサを接触させるか否かを判断する接触判断部をさらに備える、上記(1)又は(2)に記載の情報処理装置。
(5)
 前記接触判断部は、前記タスクの実行に際して前記ロボット装置が移動する場合、前記オブジェクトに前記接触センサを接触させることを判断する、上記(4)に記載の情報処理装置。
(6)
 前記接触判断部は、前記タスクの実行に際して前記ロボット装置と前記オブジェクトとの距離が閾値以下となる場合、前記オブジェクトに前記接触センサを接触させることを判断する、上記(4)又は(5)に記載の情報処理装置。
(7)
 前記接触判断部は、前記タスクの実行に際して前記ロボット装置から対象物への作用が行われる場合、前記オブジェクトに前記接触センサを接触させることを判断する、上記(4)~(6)のいずれか一項に記載の情報処理装置。
(8)
 前記装置制御部は、前記対象物と接触する前記オブジェクトに前記接触センサを接触させる、上記(7)に記載の情報処理装置。
(9)
 前記装置制御部は、前記接触センサを前記オブジェクトに接触させた後、前記接触センサからの出力を一定としながら前記ロボット装置を前記オブジェクトに接近させる、上記(8)に記載の情報処理装置。
(10)
 前記装置制御部は、前記オブジェクトに前記接触センサを接触させながら、前記ロボット装置に前記タスクを実行させる、上記(4)~(9)のいずれか一項に記載の情報処理装置。
(11)
 前記接触センサの前記センシング結果に基づいて前記オブジェクトの可動性又は剛直性の少なくともいずれか1つ以上を判断する状態判断部をさらに備える、上記(1)~(10)のいずれか一項に記載の情報処理装置。
(12)
 前記自己位置導出部は、前記可動性が所定の度合以下の前記オブジェクトに対する前記接触センサの前記センシング結果に基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する、上記(11)に記載の情報処理装置。
(13)
 前記状態判断部にて判断された前記オブジェクトの前記可動性又は前記剛直性は、前記ロボット装置によるタスク実行の際の計画作成に用いられる、上記(11)又は(12)に記載の情報処理装置。
(14)
 可動性が所定の度合以上の前記オブジェクトは、前記ロボット装置によるタスク実行の際の計画作成において、場所を移動させることが可能な障害物として扱われる、上記(13)に記載の情報処理装置。
(15)
 前記非接触センサは、撮像装置、又は深度センサの少なくともいずれか1つ以上である、上記(1)~(14)のいずれか一項に記載の情報処理装置。
(16)
 前記接触センサは、触覚センサ、又は力覚センサの少なくともいずれか1つ以上である、上記(1)~(15)のいずれか一項に記載の情報処理装置。
(17)
 前記ロボット装置は、移動機構、及びマニピュレータを備えるロボット装置である、上記(1)~(16)のいずれか一項に記載の情報処理装置。
(18)
 演算装置によって、
 非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識することと、
 前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御することと、
 前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出することと
を含む、情報処理方法。
(19)
 コンピュータに、
 非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、
 前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、
 前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部と
を実現させる、プログラム。
 本出願は、日本国特許庁において2019年8月21日に出願された日本特許出願番号第2019-151075号を基礎として優先権を主張するものであり、この出願のすべての内容を参照によって本出願に援用する。
 当業者であれば、設計上の要件や他の要因に応じて、種々の修正、コンビネーション、サブコンビネーション、および変更を想到し得るが、それらは添付の請求の範囲やその均等物の範囲に含まれるものであることが理解される。

Claims (19)

  1.  非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、
     前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、
     前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部と
    を備えた、情報処理装置。
  2.  前記自己位置導出部は、前記接触センサの前記センシング結果に基づいて、前記非接触センサの前記センシング結果から生成された環境地図内における前記ロボット装置の位置又は姿勢を導出する、請求項1に記載の情報処理装置。
  3.  前記自己位置導出部は、前記接触センサによる複数点の接触によって検出された前記オブジェクトの面又は線と、前記ロボット装置の身体モデルに関する情報とに基づいて、前記環境地図内における前記ロボット装置の位置又は姿勢を導出する、請求項2に記載の情報処理装置。
  4.  前記ロボット装置が実行するタスクの内容に基づいて、前記オブジェクトに前記接触センサを接触させるか否かを判断する接触判断部をさらに備える、請求項1に記載の情報処理装置。
  5.  前記接触判断部は、前記タスクの実行に際して前記ロボット装置が移動する場合、前記オブジェクトに前記接触センサを接触させることを判断する、請求項4に記載の情報処理装置。
  6.  前記接触判断部は、前記タスクの実行に際して前記ロボット装置と前記オブジェクトとの距離が閾値以下となる場合、前記オブジェクトに前記接触センサを接触させることを判断する、請求項4に記載の情報処理装置。
  7.  前記接触判断部は、前記タスクの実行に際して前記ロボット装置から対象物への作用が行われる場合、前記オブジェクトに前記接触センサを接触させることを判断する、請求項4に記載の情報処理装置。
  8.  前記装置制御部は、前記対象物と接触する前記オブジェクトに前記接触センサを接触させる、請求項7に記載の情報処理装置。
  9.  前記装置制御部は、前記接触センサを前記オブジェクトに接触させた後、前記接触センサからの出力を一定としながら前記ロボット装置を前記オブジェクトに接近させる、請求項8に記載の情報処理装置。
  10.  前記装置制御部は、前記オブジェクトに前記接触センサを接触させながら、前記ロボット装置に前記タスクを実行させる、請求項4に記載の情報処理装置。
  11.  前記接触センサの前記センシング結果に基づいて前記オブジェクトの可動性又は剛直性の少なくともいずれか1つ以上を判断する状態判断部をさらに備える、請求項1に記載の情報処理装置。
  12.  前記自己位置導出部は、前記可動性が所定の度合以下の前記オブジェクトに対する前記接触センサの前記センシング結果に基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する、請求項11に記載の情報処理装置。
  13.  前記状態判断部にて判断された前記オブジェクトの前記可動性又は前記剛直性は、前記ロボット装置によるタスク実行の際の計画作成に用いられる、請求項11に記載の情報処理装置。
  14.  可動性が所定の度合以上の前記オブジェクトは、前記ロボット装置によるタスク実行の際の計画作成において、場所を移動させることが可能な障害物として扱われる、請求項13に記載の情報処理装置。
  15.  前記非接触センサは、撮像装置、又は深度センサの少なくともいずれか1つ以上である、請求項1に記載の情報処理装置。
  16.  前記接触センサは、触覚センサ、又は力覚センサの少なくともいずれか1つ以上である、請求項1に記載の情報処理装置。
  17.  前記ロボット装置は、移動機構、及びマニピュレータを備えるロボット装置である、請求項1に記載の情報処理装置。
  18.  演算装置によって、
     非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識することと、
     前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御することと、
     前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出することと
    を含む、情報処理方法。
  19.  コンピュータに、
     非接触センサによるセンシング結果に基づいて環境内に存在するオブジェクトを認識する環境認識部と、
     前記オブジェクトに接触センサを接触させるように、前記接触センサを有するロボット装置の位置又は姿勢を制御する装置制御部と、
     前記オブジェクトと接触した前記接触センサからのセンシング結果と、前記非接触センサによる前記センシング結果とに基づいて、前記環境内における前記ロボット装置の位置又は姿勢に関する情報を導出する自己位置導出部と
    を実現させる、プログラム。
PCT/JP2020/029093 2019-08-21 2020-07-29 情報処理装置、情報処理方法、及びプログラム WO2021033509A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-151075 2019-08-21
JP2019151075 2019-08-21

Publications (1)

Publication Number Publication Date
WO2021033509A1 true WO2021033509A1 (ja) 2021-02-25

Family

ID=74661040

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/029093 WO2021033509A1 (ja) 2019-08-21 2020-07-29 情報処理装置、情報処理方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2021033509A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022185761A1 (ja) * 2021-03-04 2022-09-09 ソニーグループ株式会社 情報処理システム、情報処理方法および情報処理装置
IT202100017570A1 (it) * 2021-07-02 2023-01-02 Fastweb S P A Apparato robotico per eseguire operazioni di manutenzione su un componente elettronico

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017136677A (ja) * 2015-07-29 2017-08-10 キヤノン株式会社 情報処理装置、情報処理方法、ロボット制御装置及びロボットシステム
JP2018501973A (ja) * 2014-12-09 2018-01-25 アイオロス ロボティクスAeolus Robotics ロボット接触知覚

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018501973A (ja) * 2014-12-09 2018-01-25 アイオロス ロボティクスAeolus Robotics ロボット接触知覚
JP2017136677A (ja) * 2015-07-29 2017-08-10 キヤノン株式会社 情報処理装置、情報処理方法、ロボット制御装置及びロボットシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022185761A1 (ja) * 2021-03-04 2022-09-09 ソニーグループ株式会社 情報処理システム、情報処理方法および情報処理装置
IT202100017570A1 (it) * 2021-07-02 2023-01-02 Fastweb S P A Apparato robotico per eseguire operazioni di manutenzione su un componente elettronico
WO2023275845A1 (en) * 2021-07-02 2023-01-05 Fastweb S.P.A. Robotic apparatus for performing maintenance operations on an electronic component

Similar Documents

Publication Publication Date Title
US11580724B2 (en) Virtual teach and repeat mobile manipulation system
CN109551476B (zh) 结合云服务系统的机器人系统
EP3749492A2 (en) Positioning a robot sensor for object classification
US20190184569A1 (en) Robot based on artificial intelligence, and control method thereof
WO2021033509A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2003285288A (ja) 充電システム及び充電制御方法、ロボット装置、充電装置、及び充電制御プログラム及び記録媒体
JP2003269937A (ja) 障害物認識装置、障害物認識方法、及び障害物認識プログラム並びに移動型ロボット装置
JP2005508761A (ja) ロボット知能のアーキテクチャ
WO2008001793A1 (fr) Dispositif de robot et son procédé de commande
US11703872B2 (en) Machine learning method and mobile robot
JP2003266345A (ja) 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置
WO2019047415A1 (zh) 轨迹跟踪方法和装置、存储介质、处理器
US11642780B2 (en) Monitoring of surface touch points for precision cleaning
JP2003266349A (ja) 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置
US20240153314A1 (en) Engagement Detection and Attention Estimation for Human-Robot Interaction
JP2022518880A (ja) ロボットがトラップ状態から脱出するように制御する方法、装置、ロボット
Silva et al. Navigation and obstacle avoidance: A case study using Pepper robot
Kragic et al. A framework for visual servoing
US20230226698A1 (en) Robot teleoperation control device, robot teleoperation control method, and storage medium
JP7272521B2 (ja) ロボット教示装置、ロボット制御システム、ロボット教示方法、及びロボット教示プログラム
JP5076081B2 (ja) 集団状態推定システムおよび集団注意制御システムならびにアクティブセンシングシステム
JP2022132905A (ja) ジェスチャ認識装置、移動体、ジェスチャ認識方法、およびプログラム
JP6707255B2 (ja) サービス提供ロボットシステム
US20240075628A1 (en) Remote control system, remote control method, and control program
US20240075623A1 (en) Remote control system, remote control method, and control program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20853736

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20853736

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP