Robot systems and methods for controlling robot systems

The robot system adjusts pressing force based on workpiece feedback to stabilize the force applied by the slave robot, addressing operator-induced variations and enhancing task quality.

JP2026101475APending Publication Date: 2026-06-22SUMITOMO HEAVY IND LTD

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
SUMITOMO HEAVY IND LTD
Filing Date
2024-12-10
Publication Date
2026-06-22

AI Technical Summary

Technical Problem

Conventional robot systems experience variations in pressing force applied by the slave robot due to changes in operators, leading to inconsistent work quality such as window damage or inadequate cleaning.

Method used

A robot system and control method that adjusts the pressing force based on the force applied to the workpiece, using an average value and assist mechanism to maintain consistency regardless of operator changes.

Benefits of technology

Reduces variation in pressing force applied by the slave robot, ensuring consistent work quality by maintaining the force within a predetermined range, thereby improving the quality of tasks like window wiping, desk cleaning, and floor polishing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026101475000001_ABST
    Figure 2026101475000001_ABST
Patent Text Reader

Abstract

Even when the operator changes, the variation in the pressing force applied by the slave robot against the workpiece is reduced compared to the variation in conventional technology. [Solution] The robot system comprises a master robot and a slave robot. The master robot changes its posture in response to an operator's operation. The slave robot changes its posture in accordance with the master robot's posture change and presses its workpiece against the work object as a result of this posture change. Based on the pressing force applied by the workpiece against the work object, the robot system assists the pressing force so that the variation in the pressing force is reduced even when the operator changes. Therefore, even when the operator changes, the variation in the pressing force applied by the slave robot against the work object can be reduced compared to the variation in the conventional technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technology of the present disclosure relates to a robot system and a method for controlling the robot system.

Background Art

[0002] Conventionally, a robot system has been proposed that includes a master robot whose posture changes by an operation of an operator, and a slave robot whose posture changes in accordance with the posture change of the master robot and presses a working part against a work target by the posture change. Examples of the above work include window wiping, floor polishing, etc. Note that related techniques are disclosed in Patent Document 1. Patent Document 1 discloses a technique for calculating a feature amount by creating an adjacency matrix from time-series data of a force input by an operator to a master robot, normalizing it, and calculating an eigenvector, and evaluating the correlation of the operator.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] An operator who operates the master robot is assumed to change over time or date. When the operator changes, the force with which the slave robot presses the working part against the window for window wiping may vary. When the pressing force varies in this way, the quality of the work may vary, such as the window being damaged because the pressing force is too large, or the dirt on the window not being removed because the pressing force is too small.

[0005] The present invention aims to provide a robot system and a control method for such a robot system that can reduce the variation in the pressing force applied by the slave robot against the workpiece, even when the operator changes, compared to the variation observed in conventional technologies. [Means for solving the problem]

[0006] To achieve the above objective, a first aspect of the technology of this disclosure is a robot system comprising a master robot and a slave robot. The master robot changes its posture in response to an operation by an operator. The slave robot changes its posture in response to the posture change of the master robot and presses its workpiece against the work object as a result of this posture change. Based on the pressing force applied by the workpiece against the work object, the robot system assists the pressing force so that the variation in the pressing force is reduced even when the operator changes.

[0007] The second aspect is a control method for the robot system of the first aspect. Specifically, based on the pressing force applied to the workpiece, the method assists the pressing force so that the variation in the pressing force is reduced even when the operator changes. [Effects of the Invention]

[0008] The technology of this disclosure assists the pressing force applied to the workpiece by the slave robot, based on the pressing force applied to the workpiece, so that the variation in the pressing force is reduced even when the operator changes. Therefore, even when the operator changes, the variation in the pressing force applied to the workpiece by the slave robot can be reduced compared to the variation in the conventional technology. [Brief explanation of the drawing]

[0009] [Figure 1] Figure 1 is a block diagram of an example of a robot system 100. [Figure 2]Figure 2 shows an example of the postures of the master robot arm 10 and the slave robot arm 20 when the slave robot 2040 is remotely controlled by an operator operating the master robot arm 10. [Figure 3] Figure 3 is a block diagram of an example of the electrical system of the slave robot 2040. [Figure 4] Figure 4 shows an example of the processing performed by the data acquisition unit 52A, the judgment unit 52B, the calculation unit 52C, the update unit 52D, the notification unit 52E, and the assist unit 52F. [Figure 5] Figure 5 shows an example of the average value update processing program 54P1. [Figure 6] Figure 6 is a graph showing the time change of the pressing force when the slave robot arm 20 presses the work section 20p6 against the window TW due to changes in the posture of the master robot 1030 operated by three different operators (Person A, Person B, and Person C). [Figure 7] Figure 7 is a table showing an example of the contents stored in database 54D. [Figure 8] Figure 8 shows an example of the pressurization force assist processing program 54P2. [Figure 9] Figure 9 shows graph G1, which illustrates the time-series change in the pressing force when cleaning the windows of Company A's building, and graph G2, which illustrates how the pressing force is assisted to remain within a predetermined range including the average value, even when the operator changes, based on the average value of the pressing force when cleaning the windows of Company A's building. [Figure 10] Figure 10 is a table showing an example of the contents of database 54D in the first modified example. [Modes for carrying out the invention]

[0010] [Embodiment] Embodiments of the technology of this disclosure will be described below with reference to the drawings.

[0011] [First Embodiment] (composition) The configuration of the robot system 100 of this embodiment will now be described. Figure 1 is a block diagram of an example of the robot system 100. As shown in Figure 1, the robot system 100 comprises a master robot 1030 and a slave robot 2040. The master robot 1030 changes its posture in response to operation by an operator. The slave robot 2040 changes its posture in accordance with the posture change of the master robot 1030 and presses the work unit 20p6 against the window TW (see also Figure 2) by means of this posture change. The master robot 1030 comprises a master robot arm 10 and a master robot controller 30. The slave robot 2040 comprises a slave robot arm 20 and a slave robot controller 40.

[0012] When remotely controlling the slave robot 2040, the operator controls the master robot arm 10. The master robot controller 30 transmits the angle and torque information of the master robot arm 10 at that time as command values ​​to the slave robot controller 40 via wireless or wired communication. The slave robot controller 40 then controls the slave robot arm 20 so that its posture changes according to the received command values. As a result, the slave robot arm 20 presses the work unit 20p6 against the window TW.

[0013] The work in this embodiment is window wiping, but the technology disclosed herein is not limited to this, and may also be used for desk wiping or floor cleaning, for example. Specifically, window wiping is the wiping of windows in Company A's building. Desk wiping is the wiping of desks in Company B's reception room. Floor cleaning is the cleaning of the toilet floors in Company C's restrooms.

[0014] FIG. 2 is a diagram showing an example of the postures of the master robot arm 10 and the slave robot arm 20 when the operator remotely operates the slave robot 2040 by operating the master robot arm 10. As shown in FIG. 2, the master robot arm 10 includes arm portions 10p1 to 10p5 connected by a plurality of joints J11 to J14. The slave robot arm 20 includes arm portions 20p1 to 20p5 connected by a plurality of joints J21 to J24. A working portion 20p6 is attached to the tip of the arm portion 20p5. In the present embodiment, a robot using four joints is exemplified, but the number of joints is not limited to four.

[0015] In the present embodiment, the arm portion 10p1 on the proximal end side of the master robot arm 10 is fixed to a fixing body 10K fixed to the floor. The arm portion 20p1 on the proximal end side of the slave robot arm 20 is fixed to a base 20K. Wheels 20W1 and 20W2 are attached to four corners of the back surface (the surface on the floor side) of the base 20K. Therefore, the slave robot arm 20 can move on the floor.

[0016] The working portion 20p6 at the tip of the slave robot arm 20 is a tool for cleaning the surface of the desk, for example, a brush, a sponge, a mop, or a towel.

[0017] The operator grasps the arm portion 10p5 at the tip of the master robot arm 10 and applies a predetermined force to the master robot arm 10. Thereby, the command value is transmitted to the slave robot controller 40, and the slave robot controller 40 controls the posture of the slave robot arm 20. Thereby, the slave robot arm 20 presses the working portion 20p6 against the window TW.

[0018] FIG. 3 is a block diagram showing an example of the electrical system of the slave robot 2040. As shown in FIG. 3, each joint J21 to J25 of the slave robot arm 20 includes a motor 22, an encoder 24, and a torque sensor 26.

[0019] The slave robot controller 40 comprises a computer 50, a display device 62, and a communication device 64. The computer 50 includes a processor 52, an NVM (Non-volatile memory) 54, a RAM (Random Access Memory) 56, and an input / output (I / O) port 58. The processor 52, NVM 54, RAM 56, and input / output (I / O) port 58 are interconnected by a bus 60. The motors 22, encoders 24, and torque sensors 26 of each joint J21 to J25 of the slave robot arm 20, as well as the display device 62 and the communication device 64, are connected to the input / output (I / O) port 58.

[0020] The processor 52 is a processing unit that includes a DSP (Digital Signal Processor), a CPU (Central Processing Unit), and a GPU (Graphics Processing Unit). The DSP and GPU operate under the control of the CPU and are responsible for executing the processes described later. Here, a processing unit including a DSP, CPU, and GPU is given as an example of the processor 52, but this is only an example. The processor 52 may be one or more CPUs and DSPs with integrated GPU functionality, or one or more CPUs and DSPs without integrated GPU functionality, or it may be equipped with a TPU (Tensor Processing Unit).

[0021] The functional section of the processor 52 includes an input section 52A, a determination section 52B, a calculation section 52C, an update section 52D, a notification section 52E, and an assist section 52F.

[0022] NVM54 is a non-volatile memory device that stores programs and various parameters. Examples of NVM54 include flash memory (e.g., EEPROM (Electrically Erasable and Programmable Read Only Memory)). NVM54 stores the average value update processing program 54P1 and the pressing force assist processing program 54P2. NVM54 is equipped with an average value database 54D. As will be described in detail later, the database 54D (see also Figure 7) stores the average pressing forces of 3N, 2N, and 5N, respectively, for wiping the windows of Company A's building, wiping the desks in Company B's reception room, and cleaning the floors of Company C's restrooms.

[0023] RAM56 is memory that temporarily stores information and is used as work memory by the processor 52. Examples of RAM56 include DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory).

[0024] When the average value update processing program 54P1 and the pressing force assist processing program 54P2 are read from the NVM 54 to the RAM 56 and executed by the processor 52 in the RAM 56, the processor 52 functions as an acquisition unit 52A, a judgment unit 52B, a calculation unit 52C, an update unit 52D, a notification unit 52E, and an assist unit 52F.

[0025] The electrical system of master robot 1030 is the same as that of slave robot 2040, so its explanation will be omitted. Master robot 1030 and slave robot 2040 communicate with each other via a communication device.

[0026] Figure 4 shows an example of the processing performed by the data acquisition unit 52A, the judgment unit 52B, the calculation unit 52C, the update unit 52D, the notification unit 52E, and the assist unit 52F.

[0027] The input unit 52A takes in the torque detected by the torque sensors 26 of each joint J21 to J24 and calculates the force applied to the slave robot arm 20.

[0028] The determination unit 52B determines whether the slave robot arm 20 is in the process of pressing the work unit 20p6 against the window TW. If it is determined that the slave robot arm 20 is in the process of pressing the work unit 20p6 against the window TW, the calculation unit 52C calculates the pressing force applied by the slave robot arm 20 to the window TW. The determination unit 52B determines whether a predetermined time has elapsed since it was determined that the work was in progress. If a predetermined time has elapsed since it was determined that the work was in progress, the calculation unit 52C calculates the average pressing force. The determination unit 52B determines whether the calculated average is an outlier in relation to the database 54D. If the calculated average is not an outlier in relation to the database 54D, the update unit 52D updates the average value stored in the database 54D with the average value calculated in step 90.

[0029] As described above, once the pressing force is calculated, the calculation unit 52C calculates the assist amount fa. The notification unit 52E notifies that the assist is ON by displaying it on the display device 62. The assist unit 52F assists the pressing force based on the average fw so that even if the operator changes, the force remains within a predetermined range including the average fw.

[0030] (action) Next, the operation of this embodiment will be explained.

[0031] Figure 5 shows an example of the average value update processing program 54P1.

[0032] Figure 6 is a graph showing the time change of the pressing force when the slave robot arm 20 presses the work section 20p6 against the window TW due to changes in the posture of the master robot 1030 operated by three different operators (Person A, Person B, and Person C).

[0033] As described above, the operator of the master robot is expected to change depending on the time or day. When the operator changes, as shown in Figure 6, even if the same slave robot arm 20 presses the same work section 20p6 against the same window TW, the pressing force will vary depending on whether the operator is person A, person B, or person C.

[0034] To clean the window TW by pressing the work unit 20p6 against it using the slave robot arm 20, the operator starts operating the master robot arm 10 at time t0. The master robot controller 30 transmits the angle and torque information of the master robot arm 10 at that time as command values ​​to the slave robot controller 40 via wireless or wired communication. The slave robot controller 40 then controls the slave robot arm 20 so that its posture changes according to the received command values. As a result, the slave robot arm 20 presses the work unit 20p6 against the window TW.

[0035] The average value update processing program 54P1 starts when the average value update processing start button (not shown) is turned on. The processor 52 executes the average value update processing and the average value update processing method by executing the average value update processing program 54P1. The start button may be a physical switch or a button that appears on a monitor of a display device.

[0036] In step 82, the input unit 52A takes in the torque detected by the torque sensors 26 of each joint J21 to J24 and calculates the force applied to the slave robot arm 20.

[0037] Alternatively, a sensor may be provided on the work section 20p6 to directly detect the pressing force applied when the work section 20p6 is pressed against the window TW.

[0038] In step 84, the determination unit 52B determines whether the slave robot arm 20 is pressing the work unit 20p6 against the window TW by determining whether the force value calculated in step 82 is equal to or greater than a predetermined value.

[0039] If it is not determined that the slave robot arm 20 is pressing the work unit 20p6 against the window TW, the average value update process returns to step 82.

[0040] Steps 82 and 84 are performed in the pressure determination interval T1 (between time t1 and t2).

[0041] If it is determined that the slave robot arm 20 is in the process of pressing the work unit 20p6 against the window TW, the average value update process proceeds to step 86. In Figure 6, the time at which it is determined that the slave robot arm 20 is in the process of pressing the work unit 20p6 against the window TW is time t2.

[0042] In step 86, the calculation unit 52C calculates the pressing force that the slave robot arm 20 applies to the work unit 20p6 against the window TW.

[0043] Specifically, for example, when the slave robot arm 20 presses the work section 20p6 against the window TW, the slave robot arm 20 receives a reaction force from the window TW, and each joint J21 to J24 receives a force. This force is detected by the torque sensors 26 at each joint J21 to J24.

[0044] The calculation unit 52C calculates the reaction force from the window TW acting on the slave robot arm 20 from the torques detected by the torque sensors 26 of each joint J21 to J24, as the pressing force with which the slave robot arm 20 presses the work section 20p6 against the window TW.

[0045] In step 88, the determination unit 52B determines whether a predetermined time has elapsed since the completion of the process in step 84.

[0046] Here, the predetermined time is the evaluation interval T2 for the pressing force.

[0047] If it is determined that a predetermined time (the pressure evaluation interval T2) has not elapsed since the completion of the process in step 84 (time t2), the average value update process returns to step 86.

[0048] If it is determined that a predetermined time has elapsed since the completion of step 84, the average value update process proceeds to step 90.

[0049] In step 90, the calculation unit 52C calculates the average of the pressing force calculated in step 86 from the time the processing in step 84 is completed until the predetermined time has elapsed. In Figure 6, the time when the predetermined time has elapsed from the time the processing in step 84 is completed is time t3.

[0050] In step 92, the determination unit 52B determines whether the average calculated in step 90 is an outlier in the database 54D by determining whether it deviates by a predetermined value or more from the average value stored in the database 54D.

[0051] If the average calculated in step 90 is determined to be an outlier in database 54D, the average update process proceeds to step 94.

[0052] In step 94, the update unit 52D updates the average value stored in the database 54D with the average value calculated in step 90.

[0053] Specifically, let's assume that the average value L already stored in database 54D was calculated using the formula L = N / n, where n is the number of average values ​​and N is the sum of the n average values. If the average calculated in step 90 is m, the update unit 52D calculates K (= [(N+m) / (n+1)]) and stores this value K in place of the average value L. The value K is fw in Figure 6. If the value K is 3N, then 3N is stored as the average pressing force when wiping the windows TW of Company A's building, as shown in Figure 7.

[0054] If the average calculated in step 90 is not determined to be an outlier in database 54D, the average update process skips step 94.

[0055] The average value update process ends when the processing in step 94 is completed, or when the determination in step 90 is positive.

[0056] As shown in Figure 7, the average pressing force used when wiping the windows of Company A's building is recorded as 3N in database 54D. In addition to window wiping, other tasks include wiping desks and cleaning floors. As a result of the average pressing force update process described above, the average pressing forces used when wiping desks in Company B's reception room and cleaning the floors of Company C's restrooms are recorded as 2N and 5N in database 54D, respectively.

[0057] Figure 8 shows an example of the pressing force assist processing program 54P2. Figure 9 shows graph G1, which shows the time-series change in the pressing force when a certain operator is wiping the windows of Company A's building, and graph G2, which shows how the pressing force is assisted so that it stays within a predetermined range including statistical values, even when the operator changes, based on the average pressing force (fw(3N)) when wiping the windows of Company A's building.

[0058] The assist processing program 54P2 starts when the assist processing start button (not shown) is turned on after the average value update process (see Figure 5) is completed. The processor 52 executes the assist processing and assist processing method by running the assist processing program 54P2.

[0059] Even after the average value update process is complete, the operator continues to operate the master robot arm 10. The slave robot arm 20 continues to press its work unit 20p6 against the window TW.

[0060] The assist processing program 54P2 executes steps 82 to 86 of the average value update processing program 54P1.

[0061] For example, as shown in Figure 9, when the operator operates the master robot arm 10, the pressing force applied by the slave robot arm 20 to press the work unit 20p6 against the window TW may be higher than fw. Specifically, the pressing force fn calculated in step 86 may be greater than fw.

[0062] In step 96, the calculation unit 52C calculates the assist amount fa. Specifically, the calculation unit 52C reads fw (=3N), which is stored in the database 54D as the average pressing force when wiping the windows of Company A's building, and calculates the assist amount fa (=fn-fw). fw is a statistical value of the pressing force, specifically the average, calculated so that the variation in pressing force is small even if the operator changes.

[0063] In step 98, the notification unit 52E notifies the user that assist is ON by displaying it on the display device 62. Assist ON means that the slave robot arm 20 is activated to assist in bringing the force with which it presses the work unit 20p6 against the window TW closer to fw. This allows the operator to know that even if the force they apply to the master robot arm 10 is too large or too small, their own pressing force will approach that of other operators. Therefore, the operator knows that they do not need to adjust the force they apply to the master robot arm 10 to prevent it from being too large or too small. Thus, the operator is freed from having to make such adjustments.

[0064] In step 100, the assist unit 52F assists the pressing force, based on the pressing force applied to the work unit 20p6 against the window TW, so that the variation in the pressing force is reduced even if the operator changes. Specifically, the assist unit 52F assists the pressing force, based on the average fw, so that even if the operator changes, the pressing force remains within a predetermined range including the average fw.

[0065] More specifically, the assist unit 52F assists the pressing force so that the pressing force approaches the average fw. That is, when the operator operates the master robot arm 10, the slave robot arm 20 controls the motors 22 of each joint J21 to J24 so that the pressing force that presses the work unit 20p6 against the window TW is reduced by the assist amount fa. As a result, the pressing force in graph G1 is reduced by fa, as shown in graph G2.

[0066] In step 102, the determination unit 52B determines whether the assist operation has been completed by determining whether or not a start button (not shown) has been operated.

[0067] If it is determined that the assistance work has not been completed, the assistance process returns to step 100.

[0068] If it is determined that the assistance work is complete, the assistance process will terminate.

[0069] (effect) As explained above, in this embodiment, based on the average fw of the pressing force applied to the work unit 20p6 against the window TW, the system assists in bringing the pressing force closer to fw even when the operator changes. Specifically, the assist amount fa is calculated as the difference between the pressing force fn applied by the operator and fw, and the system assists in bringing the pressing force applied by the operator closer to the value obtained by subtracting the assist amount fa, that is, closer to the average fw. Therefore, even when the operator changes, the variation in the pressing force applied by the slave robot to the work unit can be made smaller than the variation in the conventional technology.

[0070] In the above embodiment, the slave robot arm 20 assists in applying the pressing force that presses the work unit 20p6 against the window TW. Therefore, the operator does not need to operate the master robot arm 10 so that the pressing force applied by the slave robot arm 20 to the work unit 20p6 against the window TW becomes the above average value. Consequently, the operator can freely operate the slave robot arm 20.

[0071] In the above embodiment, since the average value is used, the pressing force is neither too large nor too small, so the quality of the work can be improved.

[0072] In the above embodiment, the value (difference) obtained by subtracting the average fw from the pressing force fn applied by the operator is calculated as the assist amount fa, and the pressing force applied by the operator is made to be the value obtained by subtracting the assist amount fa, that is, it is assisted so as to approach the average fw. The reason for reducing the pressing force by only the assist amount fa in this way is that even if the work object is the same, the dirt state may be different depending on the day, so it is necessary to allow fluctuations in the pressing force. For example, when there is a lot of dirt, the operator increases the pressing force relatively to remove more dirt. However, if the pressing force is set to a constant value, the window will be wiped with a constant force regardless of the dirt state, and it will not be possible to allow work according to the dirt state. Therefore, this embodiment can allow work according to the dirt state.

[0073] In the above operator, fn > fw, but for another operator, fn < fw may also occur. In this case (fn < fw), specifically, the value (difference) obtained by subtracting the pressing force fn applied by the operator from the average fw is calculated as the assist amount fa, and the pressing force applied by the operator is made to be the value obtained by adding the assist amount fa, that is, it is assisted so as to approach the average fw.

[0074] [Modification Example] Next, various modification examples of this embodiment will be described. Since the configurations of each modification example are the same as those of the above embodiment, the description thereof will be omitted. Since the operations of each modification example are substantially the same as those of the above embodiment, mainly the different parts will be described below.

[0075] (First Modification Example) In the above embodiment, as shown in FIG. 7, in the database 54D, 3 N, 2 N, and 5 N are stored as the averages of the pressing forces when wiping the windows TW of Company A's building, wiping the desks in the reception room of Company B, and cleaning the floor of the toilet of Company C, respectively.

[0076] The technologies described herein are not limited to those described herein.

[0077] Figure 10 is a table showing an example of the contents stored in database 54D of the first modified example. As shown in Figure 10, database 54D of the first modified example stores the following information in addition to the average pressing force for each of the following tasks: window wiping in Company A's building, desk wiping in Company B's reception room, and floor cleaning in Company C's restrooms. These include the type of work object, the attributes of the work area, and physical quantities representing the movement state of the work area.

[0078] The types of objects to be worked on ("objects") are specifically "windows," "desks," and "floors."

[0079] The attributes of the work area are specifically the weight of the work area 20p6 ("tool weight") and the "moisture content." The "object" and "tool weight" are predetermined. The "moisture content" is measured by installing a humidity sensor in the work area 20p6.

[0080] Specifically, the "weight of the tool" is "30g", "20g", and "100g". The "moisture content" is "50ml", "50ml", and "200ml".

[0081] Physical quantities representing the movement state of the work unit include, for example, the movement speed and movement period of the work unit 20p6. The movement speed, movement period, etc., are calculated from the position of the work unit 20p6 at each time point, based on signals from the encoders 24 of each joint J21 and J22.

[0082] The amount of pressure applied during the task varies depending on the type of work being done, and this pressure also varies depending on the operator.

[0083] Therefore, we provide assistance in applying pressure to each of these elements.

[0084] In this first modified example, the pressing force is assisted according to the average pressing force, the type of workpiece, the attributes of the workpiece, and the physical quantities representing the movement state of the workpiece. Therefore, the pressing force can be appropriately assisted according to the work content and the content of the workpiece.

[0085] (Second variation) In the embodiments described above and the first modification, the average value of the pressing force is used, but the technology of this disclosure is not limited thereto, and other statistical values ​​may be used. Here, the statistical value is a value selected based on a set of data on the pressing force applied to the workpiece, and may be any value between the maximum and minimum values, the median between the maximum and minimum values, the mode between the maximum and minimum values, or the difference between the maximum and minimum values, in addition to the mean.

[0086] Using the median, mode, and difference statistics mentioned above helps to avoid applying too much or too little pressure, thus improving the quality of the work.

[0087] Thus, the technology of this disclosure uses statistical values, including the average value, to assist the pressing force so that it falls within a predetermined range that includes the statistical value. The predetermined range that includes the statistical value is, for example, a range of 10%, 15%, 20%, 25%, or 30% above or below the statistical value.

[0088] (Third variation) In the embodiment described above, the pressing force is assisted by reducing the pressing force applied by the slave robot arm 20 to the window TW by an assist amount fa (=fn-fw).

[0089] However, the technologies described herein are not limited to these.

[0090] For example, in the third modified example, the slave robot arm 20 may assist in ensuring that the pressing force with which it presses the workpiece 20p6 against the window TW is constant, such as a statistical value (e.g., the mean).

[0091] This allows the robot to assist in ensuring that the pressing force remains constant even if the operator applies too much or too little force to the master robot arm 10, thereby improving the quality of the work.

[0092] (Fourth variation) In the embodiment described above, the assist amount fa is calculated by subtracting the pressing force fn (at a certain timing when the slave robot arm 20 presses the work unit 20p6 against the window TW) from the average fw.

[0093] However, the technologies described herein are not limited to these.

[0094] For example, the assist amount fa may be calculated by multiplying the pressing force fn by the value required for the pressing force applied by the slave robot arm 20 to press the work unit 20p6 against the window TW to equal the above average value. Specifically, the value required for the pressing force applied by the slave robot arm 20 to press the work unit 20p6 against the window TW to equal the above average value is calculated as follows. The assist amount fa, which is the value required for the pressing force applied by the slave robot arm 20 to press the work unit 20p6 against the window TW to be the above average value, is calculated from the following formula, where fn is the pressing force and fw is the average pressing force. fa=fw / fn

[0095] (Fifth variation) In the embodiment described above, the system includes an average value update processing program 54P1 and a pressing force assist processing program 54P2, and after executing the average value update processing, the pressing force assist processing is executed.

[0096] However, the technologies described herein are not limited to these.

[0097] For example, the pressing force assist process may be performed first, and after step 102, steps 92 and 94 may be performed using the value calculated in step 86.

[0098] In the above embodiment, the pressing force is not assisted during the process of updating the average value in database 54D, but in the fifth modification, the pressing force can be assisted at all times. This can improve the quality of the work.

[0099] (Sixth variation) In the above embodiment, the slave robot arm 20 assists in applying the pressing force that presses the work unit 20p6 against the window TW.

[0100] However, the technologies described herein are not limited to these.

[0101] For example, the command value obtained by the operator operating the master robot arm 10 may be assisted so that the pressing force approaches a statistical value.

[0102] This reduces the computational load on the slave robot controller 40. [Explanation of Symbols]

[0103] 10 Master Robot Arm 10K fixed body 10p1~10p5 Arm section 20 Slave Robot Arms 20K base 20p1~20p5 Arm section 20p6 working part 20W1 wheels 20W2 wheels 22 motors 24 IOS 26 Torque Sensor 30 Master Robot Controllers 40 Slave Robot Controllers 50 Computers 52 processors 52A Intake section 52B Judgment section 52C Calculation Unit 52D update section 52E News Department 52F Assist Unit 54D Database 54P1 Average Value Update Processing Program 54P2 Assist Processing Program 58 Input / Output (I / O) Ports 60 bus 62 Display device 64 Communication equipment 100 Robot Systems 1030 Master Robot 2040 Slave Robot J11-J14 joints J21~J25 Joints

Claims

1. A robot system comprising a master robot whose posture changes in response to an operator's operation, and a slave robot whose posture changes in response to the posture change of the master robot and which presses its workpiece against the work object as a result of that posture change, Based on the pressing force applied to the workpiece, the pressing force is assisted so that the variation in the pressing force is reduced even when the operator changes. Robot system.

2. The robot system according to claim 1, which calculates a statistical value of the pressing force so that the variation in pressing force is reduced even if the operator changes, and assists the amount of pressing so that it falls within a predetermined range that includes the statistical value.

3. The aforementioned statistical value is the average value of the pressing force. The robot system according to claim 2.

4. Based on the aforementioned statistical values, the type of work object, the attributes of the work unit, and at least one physical quantity representing the movement state of the work unit, the pressing force is assisted. The robot system according to claim 2.

5. A control method for a robot system comprising a master robot whose posture changes in response to an operator's operation, and a slave robot whose posture changes in response to the posture change of the master robot and which presses its workpiece against the work object as a result of the posture change, Based on the pressing force applied to the workpiece, the pressing force is assisted so that the variation in the pressing force is reduced even when the operator changes. A method for controlling a robotic system.