Mobile robot

The mobile robot's configuration with a support portion and propulsion unit control allows for stable and efficient work by overcoming posture distortion issues and increasing applied force and torque.

WO2025069874A1PCT designated stage expired Publication Date: 2025-04-03THK CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/030640
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-29
Filing Date
2024-08-28
Publication Date
2025-04-03

AI Technical Summary

Technical Problem

Flying robots are prone to posture distortion due to reaction forces from objects during work, making it difficult to maintain desired position and posture, and limiting the force and torque that can be applied.

Method used

A mobile robot configuration with a support portion that contacts a contact surface and controls the propulsion unit to press the robot against the surface, ensuring stable work operations by generating greater force and torque.

Benefits of technology

This configuration allows for stable application of greater force and torque during work, maintaining the robot's desired posture and increasing working efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024030640_03042025_PF_FP_ABST
    Figure JP2024030640_03042025_PF_FP_ABST
Patent Text Reader

Abstract

The present invention comprises: a body having a plurality of propulsion units that generate propulsion force by means of driving of rotor blades; a plurality of supports that are provided to the body and are capable of supporting at least a portion of the body by coming into contact with a prescribed contact surface; an operation part that performs a prescribed operation; and a control part that, when the operation part performs the prescribed operation, generates force for pressing the plurality of supports against the prescribed contact surface by driving the propulsion units.
Need to check novelty before this filing date? Find Prior Art

Description

Mobile robot

[0001] The present invention relates to a mobile robot capable of flight.

[0002] In recent years, unmanned aerial vehicles (UAVs) have been used for a variety of purposes, and their development has been actively pursued. Examples of UAVs include radio-controlled unmanned helicopters and so-called drones. For example, agricultural applications of drones include spraying pesticides, observing crop growth using an onboard camera, and generating air currents to protect crops from frost damage (see, for example, Patent Document 1). Furthermore, to enable UAVs to be used for a wide range of purposes beyond agriculture, development of flying robots is also underway, with arms or the like attached to the UAVs to perform specific tasks (see, for example, Patent Document 2).

[0003] Furthermore, Patent Document 3 discloses a mobile robot that flies using a propulsion unit and walks while remaining in contact with the ground. This mobile robot walks on two legs, and if a sensor detects that the robot body is tilting too much while walking, the propulsion unit is used to control the robot's posture so that the tilt falls within a predetermined angle range.

[0004] JP 2018-000015 A International Publication No. 2016 / 193666 A Japanese Patent No. 6733965 A

[0005] It is conceivable to attach an end effector to a robot to perform a task on an object. However, because flying robots are relatively lightweight, they are prone to losing their posture due to the reaction force from the object during the task. Furthermore, when performing a task while flying, it is not easy to generate a reaction force corresponding to the task force, task torque, and external disturbance. As a result, the position and posture of the robot performing the task may not match the desired position and posture. Furthermore, in order to maintain the position and posture, the force and torque that can be applied to the object during the task are limited.

[0006] The present invention has been made in consideration of the above-mentioned problems, and aims to provide a robot technology that allows a robot that performs work while coming into contact with a contact surface to stably apply greater force and torque.

[0007] In order to solve the above problems, the present invention employs a configuration in which the mobile robot of the present invention is provided with a support unit that contacts the contact surface and controls the propulsion unit. Furthermore, the mobile robot is provided with a control unit that controls the propulsion unit to press the mobile robot against the contact surface when the working unit performs work. This configuration allows the mobile robot to perform stable work operations.

[0008] In detail, the mobile robot of the present invention comprises a main body having a plurality of propulsion units that generate propulsive force by driving rotors, a plurality of support parts provided on the main body and capable of contacting a predetermined contact surface to support at least a portion of the main body, a working unit that performs a predetermined task, and a control unit that, when the working unit performs the predetermined task, drives the propulsion units to generate a force that presses the plurality of support parts against the predetermined contact surface.

[0009] In a robot that performs work while coming into contact with a contact surface, it is possible to apply a larger force and torque stably.

[0010] FIG. 1 is a diagram showing a schematic configuration of a mobile robot according to a first embodiment. FIG. 2 is a functional block diagram visualizing functional units formed in the mobile robot according to the first embodiment. FIG. 3 is a diagram for explaining changes in stability of the main body unit when performing a work operation according to the first embodiment. FIG. 4 is a diagram showing a schematic view of changes in position and magnitude of normal force (total normal force at the contact surface) as viewed from the Y-axis direction according to the first embodiment. FIG. 5 is a diagram showing a schematic view of a support region and a target region according to the first embodiment. FIG. 6 is a flowchart showing an example of a process for calculating rotor thrust performed by a second control unit according to the first embodiment. FIG. 7 is a diagram showing a schematic configuration of a mobile robot according to a second embodiment. FIG. 8 is a diagram showing a schematic configuration of a mobile robot according to a third embodiment. FIG. 9 is a diagram showing a mobile robot according to the third embodiment as viewed from the Y-axis direction.

[0011] The mobile robot of this embodiment can generate propulsion to raise or lower the main body by using multiple propulsion units provided on the main body. Each propulsion unit has a rotor, and the propulsion force of that propulsion unit is determined by the rotation of the rotor. The arrangement of multiple propulsion units on the main body can be designed as desired. The mobile robot may be configured to fly (ascend, descend, turn, etc.) depending on the balance of the propulsion forces of the propulsion units provided on the main body. The multiple propulsion units provided on the main body may all be of the same type, or different types may be mixed. Furthermore, propulsion may be generated by a method other than rotors.

[0012] In this disclosure, the posture of a mobile robot during work is kept stable by the propulsion unit. That is, the propulsion unit is used to generate a reaction force during work, thereby improving the stability of the mobile robot's posture during work. Specifically, the propulsion unit presses (pressures) the robot body against the contact surface, thereby keeping fluctuations in the position and magnitude of the normal force during work within an allowable range. This allows the mobile robot to maintain a desired posture during work.

[0013] A mobile robot is provided with multiple support units, so that its main body is supported against a predetermined contact surface. The support units may support the main body in the vertical direction or in a direction other than the vertical. In the former case, the support units may be configured as legs that contact the contact surface and allow the main body to walk on it. In the latter case, the contact surface may be a surface located above the mobile robot. In this case, the contact surface may be, for example, a surface of a ceiling, beam, eaves, or the like of a structure. The contact surface may also be a surface that includes a vertical component. In this case, the contact surface may be, for example, a surface of a wall, pillar, or the like of a structure.

[0014] The predetermined task performed by the working unit includes a task that involves contact with an object. When the working unit performs a task while in contact with the object, it receives a reaction force from the object. Examples of tasks include tasks using a robot arm or sensing tasks using a sensor. The reaction force from the object that accompanies the task may cause the mobile robot's posture to become unstable. Therefore, when the mobile robot performs a task on an object, it is necessary to ensure an appropriate reaction force. For example, increasing the mass of the mobile robot could be considered to ensure reaction forces due to gravity and friction, but there is a limit to how much mass can be increased due to the need to reduce the weight of the mobile robot. In contrast, in this disclosure, the propulsion unit presses the mobile robot against the contact surface to ensure the reaction force. This increases the apparent mass of the mobile robot.

[0015] In this way, the reaction force required for the work can be obtained, and the position and posture of the mobile robot can be kept stable, thereby further increasing the working force and working torque.

[0016] In addition, the control unit may set the propulsion force generated by the propulsion unit so that the position of the sum of normal forces at the specified contact surface generated in the multiple support parts by driving the propulsion unit is within a support area corresponding to the contact positions at which the multiple support parts contact the specified contact surface.

[0017] Generally, methods for controlling the posture of a mobile robot include controlling the trajectory of the robot's center of gravity to maintain static and dynamic stability. In methods for controlling the position of the center of gravity to maintain static stability, static stability is determined based on whether the projected point of the center of gravity is included in the support area (support polygon) formed by the feet. The support area is an area on the contact surface defined by the contact points of the support parts that are in contact with the contact surface. On the other hand, in methods for controlling the trajectory of the center of gravity to maintain dynamic stability, dynamic stability is determined based on whether the center of pressure (equivalent to the zero moment point (ZMP)) within the support area is included in the support area (support polygon) formed by the feet. This disclosure focuses on the relationship between the projected point of the center of gravity, the center of pressure, and the support area.

[0018] In other words, by using the propulsion unit to statically and dynamically adjust the trajectory of the center of pressure within the support area while the mobile robot is working, the stability of the mobile robot's posture during work can be improved. Specifically, by using the propulsion unit to pressurize the robot body against the contact surface, the frictional force at the contact point of the contact surface required for work is ensured, and fluctuations in the position and magnitude of the sum of normal forces within the support area during work are kept within an allowable range. This allows the mobile robot to maintain a desired posture during work.

[0019] The control unit may also set a target region within the support region as a target position for the sum of the normal forces, and adjust the propulsion force generated by the propulsion unit so that the sum of the normal forces is located within the target region. This target region is set so that the sum of the normal forces does not move outside the support region even if an unexpected force is applied to the mobile robot due to, for example, an external disturbance. By setting such a target region, the sum of the normal forces can be prevented from moving outside the support region even if the mobile robot is affected by, for example, an external disturbance, thereby further improving the stability of the mobile robot.

[0020] Furthermore, when the number of predetermined support parts among the plurality of support parts that are in contact with the predetermined contact surface is three or more, the support area may be a polygonal area formed by connecting the contact points between each of the predetermined support parts and the predetermined contact surface. If the propulsion unit generates a propulsive force such that the sum of the normal forces is located within the polygonal area, it is possible to prevent the mobile robot from losing its posture.

[0021] Furthermore, the control unit may set the thrust generated by the propulsion unit so as to generate a frictional force that causes the plurality of support units to remain stationary on the predetermined contact surface when performing the predetermined task. It is conceivable that the mobile robot may slip on the contact surface due to a reaction force from an object. In response to this, by sufficiently increasing the thrust generated by the propulsion unit, the frictional force at the contact points becomes sufficiently large, thereby ensuring the frictional force required for the task. This prevents the mobile robot from slipping on the contact surface.

[0022] Furthermore, the plurality of support parts may be a plurality of legs attached to the main body so as to be able to support the weight of the main body. The legs may be configured to be able to walk. As another example, the legs may be configured to only support the weight of the main body but not be able to walk. By having legs, the mobile robot can perform work in a landed state.

[0023] Specific embodiments of the present invention will be described below with reference to the drawings. The dimensions, materials, shapes, numbers, relative positions, etc. of the components described in the present embodiments are not intended to limit the technical scope of the invention unless otherwise specified.

[0024] <First Embodiment> Fig. 1 is a diagram showing the external configuration of a mobile robot 10, and Fig. 2 is a diagram showing functional blocks included in the mobile robot 10. The main body 13 of the mobile robot 10 is formed to include a portion mainly related to the flying motion of the mobile robot 10, a portion mainly related to the walking motion of the mobile robot 10, and a portion mainly related to the working motion of the mobile robot 10. That is, in this embodiment, the mobile robot 10 is configured to be able to perform flying motion, walking motion, and working motion.

[0025] First, the structure related to flight will be described. Multiple propulsion units 12 are mounted on the main body 13 via multiple bridge members 14. In the example shown in FIG. 1 , four propulsion units 12 are mounted on the main body 13. However, the number of propulsion units 12 is not limited to four, as long as the mobile robot 10 can fly. In this embodiment, when the mobile robot 10 is in a reference attitude with respect to a contact surface (e.g., the ground) FL, a rotor plane formed by connecting the center points of the rotors 121 of the four propulsion units 12 is parallel to the contact surface FL, and each of the four propulsion units 12 is arranged on the rotor plane with rotational symmetry around the main body 13. In other words, each of the four propulsion units 12 is arranged on the rotor plane with line symmetry across a predetermined center line or with point symmetry around a predetermined point. Furthermore, all four propulsion units 12 have the same height from the contact surface FL. In this reference position, all four legs 11 (described later) are in a predetermined position so that the main body 13 is not inclined relative to the contact surface FL.

[0026] Each propulsion unit 12 has a rotor, which is a rotating blade, and an actuator for rotating the rotor. All four propulsion units 12 are the same type of unit, but the actuators in each propulsion unit 12 can be controlled independently. This allows for appropriate control of the thrust provided by each propulsion unit 12, thereby enabling appropriate control of the flight attitude, flight speed, and other aspects of the mobile robot 10. Furthermore, the actuators in each propulsion unit 12 can also be controlled independently during pressurization control, which will be described later. The mobile robot 10 is also equipped with sensors (flight sensors) 15 required for flight operations and sensors (contact sensors 16) required for walking operations, a battery 17 (see FIG. 2 ) for supplying drive power to the sensors and the actuators of each propulsion unit 12, and a control device that controls the power supply from the battery 17 to the actuators. The control device incorporates two control units, a first control unit 100 and a second control unit 200, the details of which will be described later.

[0027] Next, a structure related to walking motion will be described. The mobile robot 10 has four legs 11 (four legs) configured to be able to walk. The legs 11 are an example of a support unit. In the example shown in FIG. 1 , four legs 11 are provided on the main body 13, but as long as walking motion is possible, the number of legs 11 is not limited to four, and may be two, three, or five or more legs 11.

[0028] As an example of the leg 11, an enlarged view of the leg 11 is shown in FIG. 1 . The leg 11 includes a ground contact portion 111 that contacts the ground when the mobile robot 10 walks, a link portion 113 rotatably connected to the ground contact portion 111 via a joint 112, a hip joint portion 114 rotatably connected to the link portion 113 via the joint 112, and a plurality of actuators (not shown) that drive and control the rotation of each joint 112. The joints 112 associated with the link portion 113 are designed in terms of their rotational directions (rotational directions around the roll axis and pitch axis) according to the expected walking motion. However, the configuration of the leg 11 is not limited to this. The hip joint 114 is connected to the lower side of the main body 13 via a specific joint 112 that is rotatable relative to the main body 13. The specific joint 112 is configured to be rotatable around the yaw axis. The specific joint 112 may also be configured to be rotatable around the roll axis or pitch axis.

[0029] The legs 11 configured in this manner are structures that enable the mobile robot 10 to walk while supporting the mobile robot 10's own weight against the contact surface FL.

[0030] Next, a structure related to work operations will be described. The mobile robot 10 has one robot arm 30 configured to be able to perform work operations. The robot arm 30 is an example of a working unit. As an example of the robot arm 30, an enlarged view of the robot arm 30 is shown in FIG. 1 . The robot arm 30 includes a hand mechanism 31, an arm mechanism 32, and a base 33. The hand mechanism 31 is attached to one end of the arm mechanism 32, and the other end of the arm mechanism 32 is attached via a joint 321 to the base 33 located below the main body 13. The robot arm 30 is connected to the main body 13 so as to be rotatable relative to the main body 13. The arm mechanism 32 has multiple link units 322 connected via the joints 321. The arm mechanism 32 has multiple actuators (not shown) that drive and control the rotation of each joint 321. The hand mechanism 31 includes, for example, two parallel fingers 311 and an actuator (not shown) that drives the fingers 311. The arm mechanism 32 can move the hand mechanism 31 to a desired position by changing the angle of each joint 321. This allows the arm mechanism 32 to move the hand mechanism 31, for example, to a position where the hand mechanism 31 can come into contact with the object W. The rotation direction of the joint 321 related to the link unit 322 is designed according to the expected work operation. Note that the configuration of the robot arm 30 is not limited to this. In the example shown in FIG. 1 , one robot arm 30 is provided on the main body 13. However, the number of robot arms 30 is not limited to one, and two or more robot arms 30 may be provided as long as the work operation can be performed. Furthermore, other working units may be attached to the main body 13 in addition to the robot arm 30.

[0031] <Control Unit of Mobile Robot 10> Next, the control configuration of the mobile robot 10 will be described with reference to Fig. 2. The mobile robot 10 has a control unit including a first control unit 100 and a second control unit 200. The control unit is a computer having an arithmetic processing unit and a memory. Each functional unit is formed by the mobile robot 10 executing a predetermined control program.

[0032] First, the first control unit 100 will be described. The first control unit 100 is a functional unit that controls the walking and flying movements of the mobile robot 10 using the legs 11 and the propulsion units 12. Specifically, the first control unit 100 controls the actuators provided on the legs 11 for walking and also controls the propulsion units 12 for flying. The first control unit 100 controls the thrust of the four propulsion units 12 based on environmental information related to the flight state of the mobile robot 10, which is detected by the flight sensors 15. Examples of the environmental information include the angular velocity of the main body 13 detected by a gyro sensor corresponding to three axes (yaw axis, pitch axis, and roll axis), not shown, and the tilt of the main body 13 detected by an acceleration sensor corresponding to the same three axes, not shown. The first control unit 100 uses the environmental information acquired from these sensors to feedback-control the tilt of the main body 13 of the mobile robot 10 so that it is in a state suitable for flight. Furthermore, the environmental information may include an azimuth angle, which is the orientation of the main body 13 in the absolute coordinate system (i.e., the orientation of the main body of the mobile robot 10) when the orientation of the earth's axis is used as the reference, and this azimuth angle can be detected by an azimuth angle sensor.

[0033] Here, when flying the main body 13 of the mobile robot 10 forward, backward, leftward, or rightward, the first control unit 100 reduces the rotation speed of the actuator of the propulsion unit 12 in the direction of travel and increases the rotation speed of the actuator of the propulsion unit 12 on the opposite side to the direction of travel, causing the main body of the mobile robot 10 to lean forward relative to the direction of travel and move in the desired direction. Also, when turning the main body of the mobile robot 10 in the air, the first control unit 100 controls the output according to the rotation direction of the rotor 121 based on the turning direction of the main body 13 of the mobile robot 10. For example, when turning the main body 13 of the mobile robot 10 to the right, the first control unit 100 reduces the output of the actuator corresponding to the rotor 121 rotating to the right and increases the output of the actuator corresponding to the rotor 121 rotating to the left.

[0034] Next, the walking motion executed by the first control unit 100 will be described. The first control unit 100 is also a functional unit that controls the actuators provided on the four legs 11 for walking when the mobile robot 10 walks. When performing walking, the first control unit 100 uses environmental information that indicates whether the ground contact portion 111 of each leg 11 is in contact with the contact surface FL, as detected by the contact sensor 16. In this embodiment, the predetermined walking control program used by the first control unit 100 for walking on the contact surface FL acquires as little information as possible about the environment surrounding the mobile robot 10 and uses the detection values ​​from the contact sensor 16 to simplify walking control of the mobile robot 10.

[0035] Specifically, the actuators provided at each joint 112 of the leg 11 are provided with encoders (not shown) that detect state quantities related to the respective rotational states (such as the rotational position and rotational speed of the actuator's rotation shaft). Note that sensors other than encoders may also be used. The first control unit 100 then feedback-controls the actuators of the leg 11 based on the state quantities of each actuator detected by the encoder of each actuator so that the mobile robot 10 can walk in accordance with movement instructions provided to the mobile robot 10.

[0036] Furthermore, during walking control, the contact sensors 16 detect whether the ground contact portions 111 of the legs 11 are in contact with the contact surface FL. When the robot arm 30 performs work on an object W, the reaction force from the object W increases the possibility that the legs 11 will slip or that the mobile robot 10 will tilt and fall over. In order to prevent such slippage of the legs 11 and tilting of the mobile robot 10, in this embodiment, the second control unit 200 performs pressure control. Note that the walking motion described above is not essential in this embodiment. For example, after landing by flying motion, the mobile robot 10 can perform a work motion without performing a walking motion.

[0037] <Pressure Control> The following describes the pressure control performed by the second control unit 200. Pressure control is a control that uses the rotor thrust of the propulsion unit 12 to press the mobile robot 10 against the contact surface FL before starting a work operation in order to maintain a stable posture of the mobile robot 10 during work. Specifically, pressure control is a control that uses the thrust of the propulsion unit 12 to press (pressurize) the robot body against the contact surface FL, thereby ensuring the frictional force at the contact portion of the contact surface FL required for work and also confining the position of the normal force during work within the support area SS. Hereinafter, the term "normal force" refers to the sum of normal forces at the contact surface. The position of the normal force is the position of the center of pressure of the mobile robot 10 relative to the contact surface FL. The support area SS is an area on the contact surface FL that is defined by the contact portions of the legs 11 that are in contact with the contact surface FL. That is, the support area SS is defined by connecting with straight lines the portions of each leg 11 that are in contact with the contact surface FL. In the pressurization control according to the first embodiment, the rotor 121 of the propulsion unit 12 is rotated in the opposite direction to that during flight control, thereby applying a downward force to the mobile robot 10 in advance.

[0038] Here, referring to FIG. 3 , changes in the stability of the main body 13 when a task is being performed (when the mobile robot 10 is performing a task using the robot arm 30) will be described. FIG. 3 shows an example in which the mobile robot 10 manipulates a cylindrical object W. All four legs 11 are in contact with the contact surface FL. Consider a case in which the mobile robot 10 performs a task o(r, f, t) at a certain position r, which requires a task force f and a task torque t. The task o(r, f, t) may include inertial resistance in the sense of D'Alembert's principle. Note that the position r, task force f, and task torque t for the task o(r, f, t) are assumed to be given in advance.

[0039] In the following description, an XYZ Cartesian coordinate system is established with the center of gravity of the mobile robot 10 as the reference. The XY plane is a horizontal plane, parallel to the contact surface FL. The direction from the center of gravity of the mobile robot 10 toward the object W is defined as the X-axis direction, the vertical direction as the Z-axis direction, and the direction perpendicular to the XZ plane as the Y-axis direction. For simplicity, we assume that the rotor plane formed by connecting the center points of the four propulsion units 12 and the contact surface FL are parallel to the XY plane. The direction from the main body 13 toward the contact surface FL is defined as the downward direction. The direction from the main body 13 toward the object W is defined as the forward direction. Figure 3 shows an example in which the mobile robot 10 pushes the object W in the X-axis direction. Here, Figure 4 is a schematic diagram showing the change in position and magnitude of the normal force fn as viewed from the Y-axis direction.

[0040] 3, when the position of the normal force fn is located inside the support region SS, the mobile robot 10 is stably supported by the four legs 11. On the other hand, when the position of the normal force fn is not located inside the support region SS, the mobile robot 10 is not stably supported by the four legs 11. Therefore, in this case, there is a risk that the mobile robot 10 will tip over.

[0041] To prevent the mobile robot 10 from tipping over due to the normal force fn being positioned outside the support area SS, the present embodiment uses four propulsion units 12 to press the mobile robot 10 against the contact surface FL. As a result, the actual position of the normal force relative to the contact surface FL of the mobile robot 10 is displaced, thereby displacing the position of the normal force within the support area SS and preventing the mobile robot 10 from tipping over. In this embodiment, the second control unit 200 calculates the propulsive force to be applied by the propulsion units 12 and generates that propulsive force in advance during work.

[0042] The support area SS is a closed area formed to include the contact point of the leg 11 where the ground contact portion 111 actually contacts the contact surface FL. As an example, the support area SS may be a polygonal area with the contact point as a vertex. In that case, in FIG. 3 , the support area SS is formed as a rectangle. Furthermore, from the viewpoint of optimally supporting the mobile robot 10, the support area SS may be formed into a shape that is further reduced inward compared to the shape shown in FIG. 3 . This will be described later. Note that the support area SS can be determined in advance by configuring each joint 112 of each leg 11 to stop at a predetermined angle during work operations.

[0043] It is assumed that when the mobile robot 10 pushes the object W (o(r, f, t)), the normal force fn acting on the support area SS fluctuates by dfn, and the position rn of the normal force fn fluctuates by drn. Here, the normal forces fn and (fn+dfn) are set to a magnitude sufficient to generate static friction in the support area SS, and the positional fluctuation drn of the normal force fn is set to a magnitude that prevents the position of the normal force fn from deviating from the support area SS. It is assumed that the static friction force is sufficient to keep the mobile robot 10 stationary.

[0044] If a horizontal downward force of any magnitude and position can be applied to the mobile robot 10 while it is performing task o(r, f, t), the normal force required for task o(r, f, t) can be obtained. In other words, by using rotor thrust to press the mobile robot 10 against the contact surface FL, the position of the normal force can be shifted, and the posture of the mobile robot 10 can be kept stable.

[0045] Next, we will calculate the normal force when performing task o (ro, fo, to). The symbols in the following equations are defined as follows. Also, the state of the mobile robot 10, the support area SS, the working force, and the working torque, excluding the rotor thrust, are assumed to be given. Here, the sum of the rotor thrusts of multiple propulsion units is simply referred to as rotor thrust. Similarly, the contact surface normal force fn and the contact surface friction force fr will also refer to their sums on the contact surface. For simplicity, we will also show the case where the rotor thrust fz only has a downward component on the Z axis. ro: [rox, roy, roz]: Working force position rn: [rnx, rny, -h]: Normal force position rv: [rvx, rvy, rvz]: Rotor thrust position fo: [fox, foy, foz]: Working force fn: [0, 0, fnz]: Contact surface normal force fr: [frx, fry, 0]: Contact surface friction force fv: [0, 0, fvz]: Rotor thrust fi: [fix, fiy, fiz]: Inertia force fg: [0, 0, fgz]: Gravity to: [tox, toy, toz]: Working torque ti: [tix, tiy, tiz]: Inertia torque tr: [0, 0, trz]: Friction torque h: Height from contact surface FL to center of gravity

[0046] First, let's consider the equations of motion for translational and rotational motion. The equation of motion for parallel motion is as follows: mx'''' + (ω×v) = fn + fr + fv + fg + fo After rearranging, we can obtain the following equation: 0 = fn + fr + fv + fg + fo - mx'''' + (ω×v) After further rearranging, we can obtain the following equation: 0 = fn + fr + fv + fg + fo - fi...Equation 1

[0047] Furthermore, the equation of motion for rotational motion is as follows: Jθ"" + (ω x Jω) = (ro x fo) + to + (rn x fn) + (rn x fr) + tr + (rv x fv) Transforming this gives the following equation: 0 = (ro x fo) + to + (rn x fn) + (rn x fr) + tr + (rv x fv) - Jθ"" - (ω x Jω) Transforming this further gives the following equation: 0 = (ro x fo) + to + (rn x fn) + (rn x fr) + tr + (rv x fv) - ti ... Equation 2

[0048] According to the above equation 1, the following relationship holds for translational motion: [0,0,0] = fn + fr + fv + fg + fo - fi Considering each of the X, Y, and Z components, the following relationship holds: [0,0,0] = [frx + fox - fix, fry + foy - fiy, fvz + foz + fnz - fiz + fgz] Therefore, the following relationship holds: [frx = fix - fox, fry = fiy - foy, fnz = (-fvz) - foz + fiz - fgz]

[0049] From the above, the following relationships can be obtained: Friction force in the X-axis direction: frx = fix - fox (Equation 3) Friction force in the Y-axis direction: fry = fiy - foy (Equation 4) Normal force: fnz = (-fvz) - foz + fiz - fgz (Equation 5)

[0050] From the above equation 2, the following relationship holds for rotational motion: [0,0,0] = cpro(rn,fn) + cpro(rn,fr) + cpro(rv,fv) + cpro(ro,fo) + to + tr + ti, where cpro(x,y) represents the cross product calculation of a three-dimensional vector. Considering each component of X, Y and Z, the following relationship holds: [0,0,0]=[tox-tix+fvz×rvy-foy×roz+foz×roy+((-fvz)-f oz+fiz-fgz)rny+(fiy-foy)h, toy-tiy-fvz×rvx+fox×roz-f oz×rox-((-fvz)-foz+fiz-fgz)rnx-(fix-fox)h, trz+toz-tiz-fox×roy+foy×rox-(fix-fox)rny+(fiy-foy)rnx]...Formula 6

[0051] From the above equation 6, the normal force position (rnx) in the X-axis direction is calculated as follows: rnx = -[toy - tiy - fvz x rvx + fox x roz - foz x rox + (fox - fix) h] / [fvz + foz - fiz + fgz] ...Equation 7

[0052] The normal force position (rny) in the Y-axis direction is expressed as follows: rny = [tox - tix + fvz x rvy - foy x roz + foz x roy + (fiy - foy) h] / [fvz + foz - fiz + fgz] (Equation 8)

[0053] The friction torque (trz) is expressed as follows: trz = -[fvz(toz - tiz + fiy x rvx + foy(rox - rvx)) + foz(toz - tiz + fiy x rox) + fgz(toz - tiz) + fiz(tiz - toz) + foy(toy - tiy - fiz x rox + fgz x rox) + fiy(tiy - toy)] +(fox-fix)tox+(fix-fox)tix+(fox-fix)fvz×rvy+(fix×foy-fiy×fox)roz +((-fox×fvz)-fix×foz+fiz×fox-fgz×fox)roy] / [fvz+foz-fiz+fgz]...Formula 9

[0054] The second control unit 200 determines the rotor thrust fv to be generated by the four propulsion units 12 at each time so that the normal force position (rnx) in the X-axis direction and the normal force position (rny) in the Y-axis direction, which change during work operation, always fall within the support region SS. Note that a certain amount of margin may be provided to prevent the normal force position rn from immediately deviating from the support region SS due to external disturbances or the like. For example, a target region TS smaller than the support region SS may be set within the support region SS, and the rotor thrust fv to be applied by the propulsion units 12 may be calculated so that the normal force position falls within this target region TS.

[0055] FIG. 5 is a diagram schematically illustrating the support area SS and the target area TS according to the first embodiment. The target area TS is set so as to prevent the position of the normal force from moving outside the support area SS even when subjected to external disturbances such as wind. Therefore, the target area TS may be set according to the location where the mobile robot 10 performs a task and the type of task. For example, the target area TS may be made smaller in locations more susceptible to external disturbances. The smaller the target area TS, the less likely the normal force position will deviate from the support area SS even if it shifts. For example, because outdoors are more susceptible to wind than indoors, the target area TS outdoors may be made relatively small.

[0056] 5, when the position of the normal force is P1 outside the target region TS, the second control unit 200 may adjust the rotor thrust force fv so that, for example, a point P2 where a line connecting the position P1 of the normal force and the center of gravity P0 of the target region TS intersects with the boundary line of the target region TS is set as a target. For example, the normal force positions according to the above equations 7 and 8 may be partially differentiated with respect to the rotor thrust force fv and the rotor thrust position rv, respectively, to examine the direction of change, and the rotor thrust force fv and the rotor thrust position rv may be determined by repeatedly increasing or decreasing the normal force positions by small amounts so as to move in the desired direction.

[0057] During operation, the mobile robot 10 may receive a reaction force from the object W, which may cause the legs 11 to slip on the contact surface FL. In response, by setting the frictional force at the contact portion to a sufficiently high value, the legs 11 can be prevented from slipping. Therefore, the second control unit 200 may set the normal force so that the frictional force at the contact portion is greater than the frictional force obtained from Equations 3 and 4. The coefficient of friction at the contact portion FL is assumed to be given in advance. For example, because the frictional force at the contact portion is proportional to the static friction coefficient and the normal force, the second control unit 200 may set the normal force so that the frictional force determined by the static friction coefficient and the normal force is greater than the frictional force obtained from Equations 3 and 4. Similarly, the normal force may be set so that the friction torque around the Z axis is greater than the friction torque obtained from Equation 9.

[0058] FIG. 6 is a flowchart showing an example of a process for calculating rotor thrust executed by the second control unit 200 according to the first embodiment. The routine shown in FIG. 6 is executed by the second control unit 200 at a predetermined timing before the mobile robot 10 performs a task. In step S101, the second control unit 200 calculates a force and a torque corresponding to the task. The force and the torque corresponding to the task may be stored in advance in a memory included in the second control unit 200. Alternatively, information related to the task may be input by an operator. Next, in step S102, the second control unit 200 calculates a friction force and a normal force to be generated. At this time, the second control unit 200 calculates the friction force and the normal force to be generated based on Equations 3, 4, 5, and 9.

[0059] In step S103, the second control unit 200 calculates a normal force for generating the friction force calculated in step S102. The second control unit 200 calculates the normal force so that the friction force determined by the static friction coefficient and the normal force is greater than the friction force obtained from Equations 3 and 4. Furthermore, in step S104, the second control unit 200 calculates a rotor thrust for generating the normal force. The second control unit 200 calculates a rotor thrust that can generate both the normal force calculated in step S102 and the normal force calculated in step S103.

[0060] In step S105, the second control unit 200 determines whether the position of the normal force is within the target region TS. The position of the normal force is calculated based on Equations 7 and 8. If the determination in step S105 is affirmative, the rotor thrust calculated in step S104 is confirmed. On the other hand, if the determination in step S105 is negative, the process proceeds to step S106. Then, in step S106, the second control unit 200 adjusts the position of the normal force. At this time, the second control unit 200 adjusts the rotor thrust, for example, by targeting point P2 where a line connecting the calculated position P1 of the normal force and the center of gravity P0 of the target region TS intersects with the boundary line of the target region TS. Thereafter, the second control unit 200 ends this routine.

[0061] 6 is executed before the start of actual work. Then, at the time of starting actual work, the second control unit 200 controls the propulsion unit 12 so that the rotor thrust becomes the one calculated in step S104 or step S106. Note that if the influence of disturbances is not taken into consideration, the processing in steps S105 and S106 may be omitted.

[0062] The second control unit 200 may determine whether the normal force is within an allowable range for the mechanical strength of the mobile robot 10, and if it is outside the allowable range, may output a warning without performing pressurization control. The second control unit 200 may also perform feedback control of the rotor thrust by sensing the ground reaction force, the body attitude angle, the relative velocity with respect to the support area, and the like during a work operation. For example, the second control unit 200 may detect slippage at the contact point using an appropriate sensor and perform feedback control of the rotor thrust. This enables dynamic response to unexpected disturbances and environmental changes. Furthermore, the second control unit 200 may also perform feedback control of the rotor thrust by measuring the position and magnitude of the normal force within the actual support area SS using an appropriate sensor. This enables dynamic response to unexpected disturbances and environmental changes, such as by appropriately adjusting the position and magnitude of the normal force.

[0063] As described above, according to the first embodiment, the thrust of the propulsion unit 12 can press the mobile robot 10 against the contact surface FL while the mobile robot 10 is working. This provides the reaction force necessary for the work, preventing the mobile robot 10 from slipping on the contact surface FL or losing its posture during work. This further increases the working force and working torque. High-precision positioning and posture determination is also possible, improving the accuracy of the work. Furthermore, since the use of environmental information and the like is minimized in the pressurization control of the mobile robot 10, stable work operations are achieved despite the use of fewer sensors. Furthermore, the control of the robot arm 30 itself may be the same as conventional control, reducing development costs.

[0064] Second Embodiment In the second embodiment, an example will be described in which the contact surface FL is located above the mobile robot 10, such as on the ceiling of a structure. FIG. 7 is a diagram showing the schematic configuration of the mobile robot 10 according to the second embodiment. The mobile robot 10 according to the second embodiment is configured to be symmetrical to the mobile robot 10 according to the first embodiment with respect to the XY plane. In other words, the mobile robot 10 according to the second embodiment has a shape obtained by inverting the mobile robot 10 according to the first embodiment upside down. The mobile robot 10 according to the second embodiment performs a working operation while performing a flying operation. In the second embodiment, the rotation direction of the rotor 121 is the same when performing a flying operation and when performing a working operation.

[0065] In FIG. 7 , an XYZ Cartesian coordinate system is established with the center of gravity of the mobile robot 10 as the reference. The XY plane is a horizontal plane, parallel to the contact surface FL in this case. The direction from the center of gravity of the mobile robot 10 toward the object W is the X-axis direction, the vertical direction is the Z-axis direction, and the direction perpendicular to the XZ plane is the Y-axis direction. In the second embodiment, the object W protrudes downward from the contact surface FL in the Z-axis direction (vertical direction). During work operations, the propulsion units 12 generate rotor thrust so that the legs 11 of the mobile robot 10 are pressed against the contact surface FL. The contact surface FL is perpendicular to the vertical direction, and a rotor plane formed by connecting the center points of the rotors 121 of the four propulsion units 12 is parallel to the contact surface FL.

[0066] The pressurization control according to this embodiment is a control that uses the thrust of the propulsion unit 12 to pressurize the aircraft against the contact surface FL, thereby ensuring the frictional force at the contact portion of the contact surface FL required for work that cannot be achieved by gravity, and furthermore, locating the position of the normal force during work within the support area SS. The support area SS is an area on the contact surface FL that is defined by the contact portions of the legs 11 that are in contact with the contact surface FL. In the pressurization control, the propulsion unit 12 applies an upward force to the main body 13 in advance. The calculation formula for the normal force is omitted here, as it differs from the first embodiment in that the gravity component is in the opposite direction. As in the first embodiment, a target area TS may be set within the support area SS, and the normal force may be set so that it falls within the target area TS.

[0067] In this way, the desired normal force can be obtained by pressing the mobile robot 10 against the upper contact surface FL. In other words, the reaction force required for the work can be obtained, which prevents the mobile robot 10 from slipping on the contact surface FL or losing its posture during work.

[0068] Third Embodiment In the third embodiment, an example will be described in which the contact surface FL is located, for example, in front of the mobile robot 10, such as on a wall of a structure. FIG. 8 is a diagram showing the schematic configuration of the mobile robot 10 according to the third embodiment. In the following description, an XYZ Cartesian coordinate system is defined based on the center of gravity of the mobile robot 10. The YZ plane is a horizontal plane, perpendicular to the contact surface FL. The vertical direction is defined as the X-axis direction. The contact surface FL is parallel to the vertical direction (X-axis direction). The Z-axis is perpendicular to the contact surface FL, and the XY plane is parallel to the contact surface FL. FIG. 9 shows the mobile robot 10 as viewed from the Y-axis direction. A rotor plane B formed by connecting the center points of the rotors 121 of the four propulsion units 12 is inclined at an angle A1 with respect to the contact surface FL. The mobile robot 10 according to the third embodiment does not need to include legs 11. On the other hand, the mobile robot 10 according to the third embodiment has an extended bridge member 14. Contact portions 141 are arranged at the ends of the bridge members 14. The contact portions 141 are arranged so that a line connecting the contact portions 141 arranged on adjacent bridge members 14 is positioned outside the rotor 121 of the propulsion unit 12. Two protective portions 142 are arranged on each contact portion 141 to prevent the rotor 121 from coming into contact with the contact surface FL.

[0069] Additionally, a support shaft 40 is disposed on the top of the main body 13. The support shaft 40 contacts the contact surface FL to support the mobile robot 10 when the mobile robot 10 performs work. A support portion 41, which is a member that contacts the contact surface FL, is disposed at the tip of the support shaft 40. In FIG. 8 , the support shaft 40 is disposed so as to extend diagonally upward from the top of the main body 13 parallel to the XZ plane. When the robot arm 30 performs work, the support portion 41 of the support shaft 40 contacts the contact surface FL together with two contact portions 141 disposed on the contact surface FL side. The lengths of the bridge member 14 and the support shaft 40 and the angle of the support shaft 40 relative to the main body 13 are set so that the rotor 121 of the propulsion unit 12 does not contact the contact surface FL at this time.

[0070] Assume that the mobile robot 10 configured in this manner moves horizontally, for example, in the Z-axis direction, toward the contact surface FL. At this time, flight control is performed by the first control unit 100. Then, for example, when the two contact portions 141 come into contact with the contact surface FL, the mobile robot 10 tilts around the contact portions 141. At this time, the main body 13 rotates upward around the contact portions 141. This rotation causes the support portion 41 to come into contact with the contact surface FL. In this state, even if an attempt is made to move the mobile robot 10 further horizontally, the mobile robot 10 will hover in that position due to the reaction forces acting on the support portions 41 and the two contact portions 141.

[0071] Here, as in the first embodiment, the support area SS is considered. As shown in FIG. 8 , the support area SS according to the third embodiment is formed into a triangle defined by the contact areas of the support portion 41 and the two contact portions 141. If the normal force is located within the support area SS, the mobile robot 10 can hover stably. Furthermore, even during work by the robot arm 30, the posture can be stabilized by performing pressure control to increase the normal force in advance.

[0072] As in the first embodiment, the normal force fn and the normal force position rn are calculated based on the equation of motion. Note that the symbols in the following equations are defined as follows. Also, the state of the mobile robot 10, excluding the rotor thrust, the support area SS, the working force, and the working torque are assumed to be given. ro: [rox, roy, roz]: Working force position rn: [rnx, rny, -h]: Normal force position (corresponding to r above) rv: [rvx, rvy, rvz]: Rotor thrust position fo: [fox, foy, foz]: Working force fn: [0, 0, fnz]: Contact surface normal force (corresponding to f above) fr: [frx, fry, 0]: Contact surface friction force fv: [fvx, 0, fvz]: Rotor thrust fi: [fix, fiy, fiz]: Inertia force fg: [fgz, 0, 0]: Gravity to: [tox, toy, toz]: Working torque ti: [tix, tiy, tiz]: inertia torque tr: [0, 0, trz]: friction torque h: height from contact surface FL to center of gravity Note that the rotor thrust position rv is a point on the rotor plane B, and the rotor thrust fv is a vector perpendicular to the rotor plane with the rotor thrust position rv as its starting point.

[0073] According to Equation 1 derived in the first embodiment, the following relationship holds in translational motion: [0,0,0] = fn + fr + fv + fg + fo - fi Considering each of the X, Y, and Z components, the following relationship holds: [0,0,0] = [fvx + frx + fox - fix + fgz, fry + foy - fiy, fvz + foz + fnz - fiz] Therefore, the following relationship holds: [frx = - fvx - fox + fix - fgz, fry = fiy - foy, fnz = - fvz - foz + fiz]

[0074] From the above, the following relationships can be obtained: Friction force in the X-axis direction: frx = -fvx - fox + fix - fgz (Equation 10) Friction force in the Y-axis direction: fry = fiy - foy (Equation 11) Normal force: fnz = -fvz - foz + fiz (Equation 12)

[0075] From Equation 2 derived in the first embodiment, the following relationship holds for rotational motion: [0,0,0] = cpro(rn,fn) + cpro(rn,fr) + cpro(rv,fv) + cpro(ro,fo) + to + tr - ti where cpro(x,y) represents the cross product calculation of a three-dimensional vector. Considering each component of X, Y and Z, the following relationship holds: [0,0,0]=[tox-tix+fvz×rvy-foy×roz+foz×roy+(-fvz-foz+fiz)r ny+(fiy-foy)h, toy-tiy+fvx×rvz-fvz×rvx+fox×roz-foz×rox-(- fvz-foz+fiz)rnx-(-fvx-fox+fix-fgz)h,trz+toz-tiz-fvx×rvy- fox×roy+foy×rox-(-fvx-fox+fix-fgz)rny+(fiy-foy)rnx]...Formula 13

[0076] From the above equation 13, the normal force position (rnx) in the X-axis direction is given as follows: rnx = [toy - tiy + fvx x rvz - fvz x rvx + fox x roz - foz x rox + (fvx + fox - fix + fgz) h] / [fvz + foz - fiz] ...Equation 14

[0077] The normal force position (rny) in the Y-axis direction is expressed as follows: rny = [tox - tix + fvz x rvy - foy x roz + foz x roy + (fiy - foy) h] / [fvz + foz - fiz] (Equation 15)

[0078] The friction torque (trz) is given as follows: trz = -[fvz(toz - tiz + fiy x rvx + foy(rox - rvx)) + foz(toz - tiz + fiy x rox) + fiz(tiz - toz) + foy(toy - tiy + fvx x rvz - fiz x rox) + fiy(-toy + tiy - fvx rvz) + (fvx + fox - fix + fgz) tox + (-fvx - fox + fix - fgz) tix+((fox-fix+fgz)fvz-foz×fvx+fiz×fvx)rvy+(foy(-fvx+fix-fgz)-fiy ×fox)roz+(-fox×fvz+foz(fvx-fix+fgz)+fiz×fox)roy] / [fvz+foz-fiz]...Formula 16

[0079] The second control unit 200 then determines the rotor thrust fv to be generated by the four propulsion units 12 at each time point so that the normal force position (rnx) in the X-axis direction and the normal force position (rny) in the Y-axis direction, which change during work operation, fall within the support region SS. As in the first embodiment, a target region TS may be set within the support region SS, and the rotor thrust fv to be applied by the propulsion units 12 may be calculated so that the normal force position falls within this target region TS.

[0080] Furthermore, similarly to the first embodiment, the second control unit 200 may set the normal force so as to obtain a frictional force greater than the frictional force obtained from Equations 10 and 11. Similarly, the normal force may be set so that the friction torque around the Z axis is greater than the friction torque obtained from Equation 16.

[0081] Although the third embodiment has been described as an example in which one support shaft 40 is provided, the number of support shafts 40 is not limited to one and may be two or more. Even when multiple support shafts 40 are provided, it is not necessary for all of the support shafts 40 to be in contact with the contact surface FL. It is sufficient that the support area SS can be formed. In the third embodiment, the bridge member 14 is extended to provide the contact portion 141. Alternatively, three or more support shafts 40 may be provided, thereby eliminating the need to extend the bridge member 14. That is, the support area SS may be formed by only the multiple support shafts 40. Furthermore, if the mobile robot 10 has multiple robot arms 30, the main body 13 may be supported by any of the robot arms 30.

[0082] As described above, according to the third embodiment, even if the contact surface FL is located, for example, in front of the mobile robot 10, the rotor thrust of the propulsion unit 12 can press the mobile robot 10 against the contact surface FL while the mobile robot 10 is flying. This makes it possible to obtain the reaction force required for work, thereby preventing the mobile robot 10 from slipping on the contact surface FL or losing its posture during work. This further increases the working force and working torque. Furthermore, since highly accurate positioning and posture determination is possible, the accuracy of work can be improved.

[0083] 10: Mobile robot, 11: Legs, 12: Propulsion unit, 13: Main body, 14: Bridge member, 15: Flight sensor, 17: Battery, 30: Robot arm, W: Object, 100: First control unit, 200: Second control unit, FL: Contact surface, SS: Support area, TS: Target area

Claims

1. A mobile robot comprising: a main body having a plurality of propulsion units that generate propulsive force by driving rotors; a plurality of support parts provided on the main body and capable of supporting the main body by contacting a predetermined contact surface; a working unit that performs a predetermined task; and a control unit that, when the working unit performs the predetermined task, drives the propulsion units to generate a force pressing the plurality of support parts against the predetermined contact surface.

2. The mobile robot described in claim 1, wherein the control unit sets the propulsion force generated by the propulsion unit so that the position of the sum of normal forces on the specified contact surface generated in the multiple support parts by driving the propulsion unit is within a support area corresponding to the contact positions where the multiple support parts come into contact with the specified contact surface.

3. The mobile robot described in claim 2, wherein the control unit sets a target area within the support area as a target position for the sum of the normal forces, and adjusts the propulsion force generated by the propulsion unit so that the position of the sum of the normal forces is within the target area.

4. A mobile robot as described in claim 2, wherein when the number of specified support parts among the plurality of support parts that are in contact with the specified contact surface is three or more, the support area is a polygonal area formed by connecting the contact points between each of the specified support parts and the specified contact surface.

5. The mobile robot according to claim 1, wherein the control unit sets the propulsive force generated by the propulsion unit so as to generate a frictional force that causes the multiple support parts to come to rest on the specified contact surface when performing the specified task.

6. The mobile robot according to claim 1, wherein the plurality of support parts are a plurality of legs attached to the main body part so as to be capable of supporting the weight of the main body part.

Citation Information

Patent Citations

  • Intelligent flying robot capable of perching on walls at different inclination angles

    CN105667779A

  • Drone

    JP2018108818A

  • Flight type injector and coating method

    JP2019136651A

  • Flying object and inspection method

    JP2022114325A

  • Ground manipulation system and method for fixing an aircraft

    US20190202554A1