Robot device and position correction method
The robot device uses a force sensor to correct positional deviations in real-time, addressing assembly inaccuracies caused by vibration and wear, ensuring efficient and accurate assembly operations.
Patent Information
- Application Number
- JP2024086219
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-28
- Publication Date
- 2025-12-10
AI Technical Summary
Robot devices experience positional deviations due to factors like vibration and wear, leading to assembly inaccuracies, especially when mounted on movable bodies, requiring time-consuming image capture and processing for correction.
A robot device equipped with a force sensor on the end effector to detect positional deviations based on force information, allowing real-time correction of the movement target position without continuous imaging, using a control unit to adjust the robot arm's operation.
Enables precise and efficient assembly by correcting positional deviations in real-time, reducing processing load and maintaining assembly accuracy without prolonged image capture and processing.
Smart Images

Figure 2025179459000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a robotic device and a position correction method. [Background technology]
[0002] A robotic device used for assembling components may be required to have an alignment accuracy of, for example, 0.1 mm or less when assembling the components. When aligning such components, the robotic device mounts an imaging device on the robot arm, captures an image of a marker that serves as a reference for alignment, and calculates a correction amount based on the image information.
[0003] For example, Patent Document 1 discloses a manufacturing system that performs manufacturing work using a robot arm. The control device of this manufacturing system captures images of multiple position identification signs (markers) using multiple imaging devices provided above and below the moving body of the robot arm, and corrects the position of the end effector (moving body) relative to the workspace based on the image recognition. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6664830 Summary of the Invention [Problem to be solved by the invention]
[0005] However, when a robot device is operated after being taught to align with a component, the position of the robot device body after alignment may change from the position taught due to factors such as vibration of the robot arm itself, external disturbances, and wear of the structure, ultimately resulting in a positional deviation of the end effector, making it impossible to assemble the component. In particular, when the robot device is mounted on a movable body such as a cart, positional deviation of the movable body is likely to occur. Therefore, it is conceivable to correct the position of the component by capturing an image using an imaging device each time the robot arm transports a component. However, this requires time and effort for moving the imaging device, image processing, calculation of the correction amount, etc. This may affect the overall productivity of the product.
[0006] The present disclosure provides a technique that allows for easy correction of the position of an end effector during operation of a robot arm. [Means for solving the problem]
[0007] According to one aspect of the present disclosure, there is provided a robot device comprising: a robot arm having an end effector that holds and moves a member; a sensor provided on the robot arm that detects information related to a force generated in the end effector; and a control unit that processes the information from the sensor and controls operation of the robot arm, wherein the control unit detects information related to the force generated in the end effector when the robot arm is operating using the sensor, estimates a positional deviation of the end effector with respect to a target movement position of the end effector based on the force-related information, and corrects the target movement position for the next operation of the robot arm based on the positional deviation of the end effector. [Effects of the Invention]
[0008] According to one aspect, the position of the end effector can be easily corrected during operation of the robot arm. [Brief explanation of the drawings]
[0009] [Figure 1] FIG. 1 is an explanatory diagram schematically illustrating a robot device according to an embodiment of the present disclosure. [Figure 2] FIG. 2 is a block diagram showing the hardware configuration of a control unit of the robot device. [Figure 3] 3A is a diagram illustrating an example of an assembling operation in which a member is assembled to another member by an end effector that is not misaligned, and FIG. 3B is a diagram illustrating an example of an assembling operation in which a member is assembled to another member by an end effector that is misaligned. [Figure 4] FIG. 2 is a block diagram showing functional units formed inside a control unit. [Figure 5] 10 is a flowchart showing a control method for advance preparation of the robot device. [Figure 6] 10 is a flowchart showing a control method (position correction method) during operation of the robot device. DETAILED DESCRIPTION OF THE INVENTION
[0010] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In the drawings, the same components are denoted by the same reference numerals, and redundant explanations may be omitted.
[0011] FIG. 1 is an explanatory diagram illustrating a schematic diagram of a robot device 1 according to an embodiment of the present disclosure. As shown in FIG. 1, the robot device 1 is a device that holds and transports a component A in a product manufacturing line and performs an assembly operation in which the held component A is assembled to another component B. Note that the robot device 1 according to the present disclosure is not limited to a device that performs an assembly operation. For example, the robot device 1 may be a device that simply transports component A from a pickup position to a target movement position. When the robot device 1 operates, the installation position of the robot device 1 itself may be shifted due to vibrations, disturbances, wear of the structure of the robot device 1, and the like, which may require position correction when performing an assembly operation, transportation, or the like. Furthermore, the objects to be transported by the robot device 1 are not particularly limited and may be materials, assembled products, packages, boxes, pallets, and the like.
[0012] The robot device 1 includes a robot body 10 and a control unit 90 that controls the robot body 10. The robot body 10 includes a mobile body 11 provided at its bottom and a robot arm 20 provided at its top. The robot arm 20 according to the embodiment is a vertically multi-joint type having a base 21, a plurality of arms 22, and a plurality of joints 32 that connect the arms 22 together. However, the robot arm 20 is not limited to the vertically multi-joint type and may be, for example, a horizontally multi-joint type, and may have an extension / retraction mechanism in which an appropriate arm 22 extends and retracts to slide and move a member A.
[0013] The moving body 11 allows the entire robot body 10 to move relative to the production line stand 2 on which the component B is waiting. The production line stand 2 is not particularly limited, and may be a table on which the component B is fixed for assembling the components together, or may be a conveyor device or the like that transports the component B in an appropriate direction (for example, the Y-axis direction).
[0014] The robot device 1 configured to be movable by such a mobile body 11 can change the location of the robot body 10 within the production line area, for example, when performing high-mix low-volume production, and assemble and transport multiple types of components using a single robot body 10. This makes it possible to increase the operating rate of the robot body 10 in the production line, and promotes reductions in production costs.
[0015] The movement of the moving body 11 may be performed manually by an operator, or may be performed automatically under the control of the control unit 90. For example, the moving body 11 according to the embodiment has a plurality of (four) rolling wheels 12 as a running unit. Note that the running unit is not limited to the plurality of wheels 12, and may be, for example, a pair of crawlers (caterpillars) or a plurality of legs, or may be a rail and wheels that move on the rail, etc.
[0016] The moving body 11 also includes a housing 13 mounted on each wheel 12. A robot arm 20 is installed on the upper surface of the housing 13. Inside the housing 13, mechanisms for moving the moving body 11 (motors, drive transmission units, travel driver units, etc.) or parts of mechanisms for operating the robot arm 20 are housed. A counterweight may be provided inside the housing 13 to adjust the position of the center of gravity of the robot arm 20. Furthermore, a handle 14 or the like may be provided on the outside of the housing 13 to allow an operator to move the robot body 10.
[0017] The robot arm 20 is installed on the upper surface of the housing 13 so as to extend vertically upward. The base 21 of the robot arm 20 is formed in a cylindrical shape that protrudes slightly from the housing 13, and movably supports a plurality of arms 22 and a plurality of joints 32. The base 21 may be provided with a rotation unit 30 that rotates the entire plurality of arms 22 around a vertical axis (Z axis) of the base 21. The rotation unit 30 includes, for example, a rotation motor 31 and a motor driver (not shown), and rotates based on a control command from the control unit 90.
[0018] The multiple arms 22 include, in order from the base 21 side to the distal end side, a first arm 23, a second arm 24, a third arm 25, and an end effector 26. The multiple joint units 32 include a first joint unit 33 installed between the first arm 23 and the second arm 24, a second joint unit 34 installed between the second arm 24 and the third arm 25, and a third joint unit 35 installed between the third arm 25 and the end effector 26. It goes without saying that the number of arms 22 and joint units 32 is not particularly limited.
[0019] The multiple joints 32 are configured to be rotatable around axes perpendicular to the axes of the connected arms 22. The robot arm 20 includes joint motors 33m, 34m, and 35m and motor drivers (not shown) to rotate the first to third joints 33, 34, and 35 independently. For example, the joint motor 33m is provided in the first arm 23, the joint motor 34m is provided in the second arm 24, and the joint motor 35m is provided in the third arm 25. For example, a servo motor, a stepping motor, or the like can be used as the rotation motor 31 and the joint motors 33m, 34m, and 35m.
[0020] Based on control commands from the control unit 90, each motor driver performs servo control of the rotation motor 31 and each joint motor 33m, 34m, 35m, etc., to operate the appropriate arm 22. Furthermore, each motor driver receives information such as the rotation angle from each encoder of the rotation motor 31 and each joint motor 33m, 34m, 35m, and performs feedback control (PID control, etc.) of the rotation motor 31 and each joint motor 33m, 34m, 35m.
[0021] The end effector 26 of the robot arm 20 is installed at the tip (end) of the third arm 25 via the third joint 35. The end effector 26 according to the embodiment includes a base body 261 and multiple (two in FIG. 1 ) claws 262 protruding from the base body 261 in order to grip a component. The multiple claws 262 are configured to move toward and away from each other by a drive mechanism (not shown) provided within the base body 261. The end effector 26 stops its approach by bringing the claws 262 closer to component A and applying a predetermined load. This allows the claws 262 to grip component A sandwiched between them. With component A gripped by the end effector 26, the robot arm 20 can transport component A and assemble it to component B by moving the arms 22. After assembly, the end effector 26 releases its grip on component A by moving the claws 262 away from each other.
[0022] The end effector 26 is not limited to a configuration having multiple claws 262, and various configurations may be applied that are capable of transporting and assembling the member A. For example, the end effector 26 may be configured to include a suction pad and a suction mechanism, and to hold the member A by generating a suction force in the suction pad, or may be configured to suction and hold the member A by an electromagnetic mechanism.
[0023] The robot apparatus 1 also includes an imaging device 40 for instructing the end effector 26 of a target movement position. The imaging device 40 is configured by combining one or more of a monocular camera, a compound eye camera, a range imaging camera, a millimeter-wave radar, etc. The imaging device 40 preferably has a function capable of measuring the distance between the target movement position and the tip of the end effector 26 (the gripping position of the member A). This enables the robot apparatus 1 to set the target movement position with high accuracy. The imaging device 40 is attached to, for example, the base body 261 and is capable of constantly capturing images of the area beyond each of the claws 262. The imaging device 40 is connected to the control unit 90, and when it captures an image based on a control command from the control unit 90, it transmits the captured image information to the control unit 90.
[0024] The production line is provided with an identification information display unit M at or near the target movement position of the robot device 1, which provides position information based on an image captured by the imaging device 40. For example, the identification information display unit M is fixed at a position on the top surface of the base 2 that is easily opposed by the imaging device 40 of the robot arm 20. As an example, the identification information display unit M is provided at a position where component A is waiting before being grasped, a position where component B is waiting to assemble the grasped component A, etc.
[0025] The identification information display unit M can be a QR code (registered trademark) or an AR marker having position information. Alternatively, the identification information display unit M may utilize a structure (hole, protrusion, screw, etc.) that already exists on the production line. The control unit 90 extracts the identification information display unit M by performing image processing on the image information captured by the imaging device 40, and recognizes the target movement position of the end effector 26 based on the position information of the identification information display unit M. In particular, the position information of the identification information display unit M preferably includes information on three-dimensional coordinates on the production line. This allows the robot device 1 to recognize the target movement position in three-dimensional coordinates, thereby improving the accuracy of position control of the robot arm 20.
[0026] After the robot apparatus 1 has been moved by the movable body 11 and before the robot arm 20 is put into operation, the robot apparatus 1 can use the identification information display unit M to teach the target movement position of the end effector 26 of the robot arm 20. For example, in teaching the target movement position, the control unit 90 operates the robot arm 20 based on a preset initial setting position after the robot arm 20 has been moved by the movable body 11, thereby moving the imaging device 40 of the end effector 26. When the imaging device 40 approaches the identification information display unit M and captures an image of the identification information display unit M, the control unit 90 recognizes the position information of the identification information display unit M contained in the captured image. This allows the control unit 90 to fine-tune the position information with respect to the preset initial setting position and recognize it as the target movement position of the end effector 26. By using the recognized target movement position, the robot apparatus 1 can accurately guide the end effector 26 to the position where the member A is waiting, and stably grasp the member A with each of the claws 262. Furthermore, the robot device 1 can transport the member A gripped by the end effector 26 and properly assemble the member A to the member B waiting at the recognized movement target position.
[0027] Furthermore, the robot device 1 according to the embodiment includes a force sensor 50 that measures the force acting on the end effector 26 during the transport or assembly of the component A. The force sensor 50 is provided, for example, inside the third joint 35 and detects the force acting on the end effector 26 by supporting the end effector 26 via a detector. The force sensor 50 according to the embodiment uses a six-axis force sensor that measures forces in the X-axis, Y-axis, and Z-axis directions, as well as rotational moments around the X-axis, Y-axis, and Z-axis. As an example, the force sensor 50 may use a sensor that uses strain gauges to measure deformation acting on a structure along each axis within the sensor and converts it into force. In other words, the force sensor 50 can measure the magnitude and direction of the force acting on the end effector 26 (three-dimensional directions and rotational moments) during the transport or assembly of the component A.
[0028] The force sensor 50 is connected to the control unit 90 and, for example, while transporting member A based on a control command from the control unit 90, continuously measures the force received from the end effector 26 and transmits the measured force information (magnitude and direction of the force) to the control unit 90. By using the acquired force information, the control unit 90 is able to control the robot arm 20 with high precision. It is advisable that the control unit 90 recognizes in advance the weight of the end effector 26, the weight of member A, etc., and takes this weight information into account when using the detection results of the force sensor 50.
[0029] For example, the control unit 90 performs so-called force control, detecting force information in real time (sequentially) and controlling the robot so that an appropriate force is generated during transportation or assembly. Force control enables precise force control, such as delicately gripping an object, by feeding back the force detected in real time. The control unit 90 also performs so-called position control, calculating a position correction amount for the next cycle of operation based on the force information from the force sensor and controlling the position of the end effector 26 based on the correction amount in the next cycle. Position control does not correct force in real time, so the operation time is shorter than that of force control. The control unit 90 can perform various operations by combining the two types of control (force control and position control). For example, the control unit 90 may switch between force control and position control depending on the operation of the robot arm 20.
[0030] FIG. 2 is a block diagram showing the hardware configuration of the control unit 90 of the robot device 1. The control unit 90 is communicably connected to the robot main body 10 and controls the operation of the robot main body 10. The control unit 90 is a computer including a processor 91, a main memory device 92, an auxiliary memory device 93, an input / output interface 94, a communication interface 95, and the like. The processor 91 is one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a circuit made up of multiple discrete semiconductors, and the like. The main memory device 92 and the auxiliary memory device 93 constitute the memory of the computer. The main memory device 92 stores programs for operating the robot main body 10, and the like. The auxiliary memory device 93 temporarily stores information required for processing when the processor 91 executes a program.
[0031] Furthermore, various devices of the robot apparatus 1 are connected to the input / output interface 94. The various devices may include a user interface (for example, a monitor, a mouse, a keyboard, a touch panel, a speaker, a microphone) that can be operated and checked by an operator.
[0032] The communication interface 95 communicates information between the robot body 10 and the control unit 90 via a communication network capable of wired or wireless communication. The communication network may be any one of a WAN (Wide Area Network), a LAN (Local Area Network), a PAN (Personal Area Network), etc., or a combination of these. An example of a WAN is the Internet, an example of a LAN is IEEE802.11 or Ethernet (registered trademark), and an example of a PAN is Bluetooth (registered trademark) or NFC (Near Field Communication), etc.
[0033] In order to transport component A on the production line and perform an assembling operation of assembling component A to component B, the robot device 1 recognizes the three-dimensional coordinates of the production line using the control unit 90 and controls the operation of the robot arm 20 in accordance with these three-dimensional coordinates. The robot device 1 then performs advance preparations by teaching a target movement position of the end effector 26 in the three-dimensional coordinates, and then performs operations such as transport and assembling based on the taught target movement position.
[0034] However, in the robot main body 10 in which the robot arm 20 is installed on the movable body 11 as described above, the movable body 11 may be simply fixed and the robot arm 20 may be operated depending on the operating conditions of the production line. In this case, the movable body 11 may move due to vibrations of the robot arm 20, and the end effector 26 may be displaced from the target position of the end effector 26 taught by the imaging device 40. If the end effector 26 is displaced significantly, it may become difficult to assemble the member A that it is holding.
[0035] Here, the robot apparatus 1 can also capture an image of the identification information display section M with the imaging device 40 and correct the position of the end effector 26 every time the robot arm 20 moves. However, this requires operations for capturing images with the imaging device 40, image processing of the captured information, calculation of the correction amount, etc., which lengthens the work period and increases the processing load on the control unit 90.
[0036] Therefore, the robot device 1 according to the embodiment is configured to detect the force acting on the end effector 26 while the robot arm 20 is assembling and transporting the member A, and to correct the positional deviation of the movement target position of the member A using the detected information. The correction method using the detected information of the force acting on the end effector 26 will be specifically described below with reference to FIGS. 3(A) and 3(B). FIG. 3(A) is a diagram illustrating an example of an assembling operation in which the end effector 26 that is not misaligned assembles the member A to another member B. FIG. 3(B) is a diagram illustrating an example of an assembling operation in which the end effector 26 that is misaligned assembles the member A to another member B.
[0037] For example, the robot device 1 performs an assembly operation in which a member A held by the end effector 26 is inserted into a hole BH of a member B arranged on the stand 2. Note that the member A may be either irremovably fitted into the member B when inserted therein, or simply inserted so as to be removably inserted. The target position of the movement of the end effector 26 is previously taught based on an image of the identification information display unit M captured by the imaging device 40.
[0038] 3(A), if there is no positional deviation in the end effector 26, the control unit 90 can smoothly insert component A into hole BH of component B by operating the robot arm 20 according to the taught target movement position. Note that the assembling operation is not limited to inserting component A into hole BH, and may be various operations such as screwing component A into component B, hooking component A onto component B, pressing component A against component B, extracting component A from component B, or simply placing component A on component B.
[0039] However, as described above, when the robot arm 20 is subjected to vibrations during operation, the movable body 11 moves, causing a slight positional deviation in the end effector 26. The positional deviation of the end effector 26 becomes apparent as a positional deviation of member A relative to member B, which is the target position of movement. Note that, in addition to vibrations of the robot arm 20, factors that cause the positional deviation of the end effector 26 include external disturbances to the robot arm 20 and deterioration over time of each component of the robot arm 20.
[0040] For example, in the example shown in FIG. 3B, component A held by end effector 26 is misaligned in the negative direction of the X axis with respect to hole BH of component B. The amount of misalignment due to vibrations during operation is small, and component A held by end effector 26 can be inserted into hole BH. However, the load (force) acting on end effector 26 increases with the amount of misalignment of component A due to contact between component A and component B. For example, if component A is misaligned in the negative direction of the X axis by Δx (absolute value), a load corresponding to the amount of misalignment |Δx| is generated on end effector 26 toward the positive direction of the X axis, and force sensor 50 detects this load as detection information (force information). Conversely, if there is no misalignment, component A is smoothly inserted into hole BH of component B, and force sensor 50 does not detect a load corresponding to the misalignment (see also FIG. 3A).
[0041] Although it depends on the configuration of the robot device 1 and the configurations of member A and member B, for example, if the position of the end effector 26 is misaligned by 0.1 mm, a load of about 1.5 N will be generated when member A is assembled to member B, and the force sensor 50 will detect this load. In other words, it can be said that the control unit 90 can estimate the positional misalignment of the end effector 26 by monitoring the force information of the force sensor 50 during operation of the robot arm 20 (particularly when member A is assembled to member B). As an example, if a load that is 3 N greater than the reference load is detected during the operation of assembling members A and B, it can be estimated that the position of the end effector 26 is misaligned by 0.2 mm.
[0042] When the control unit 90 according to the embodiment estimates a positional deviation of the end effector 26 during the nth operation of assembling component A to component B, it performs control to correct the movement target position and assemble component A to component B from the next (n+1)th operation onward. That is, by controlling the current operation according to the positional deviation state (amount of positional deviation, direction of positional deviation) of the end effector 26 during the previous operation, it is possible to repeatedly fine-tune the position of the end effector 26. As a result, the robot device 1 can satisfactorily assemble components A and B together even when the assembling operation of components A and B is repeated multiple times. Moreover, the positional deviation state is estimated using force information detected by the force sensor 50 during the previous operation. Therefore, the robot device 1 can operate the robot arm 20 by position control, thereby eliminating loss of work time.
[0043] Furthermore, the control unit 90 can smoothly calculate the correction amount and correction direction of the movement target position using the force information. For example, if it is estimated based on the force information of the force sensor 50 that the positional deviation amount is |Δx| and the positional deviation direction is the negative X-axis direction, the control unit 90 can correct the movement target position by using |Δx| as the correction amount and the positive X-axis direction as the correction direction. This correction of the movement target position enables the robot device 1 to smoothly insert member A into hole BH of member B (by suppressing the generation of unnecessary force) when next assembling member A to member B.
[0044] 4 is a block diagram showing functional units formed inside the control unit 90. To perform the above control, the control unit 90 forms, for example, a teaching control unit 101 and an operation control unit 102 inside by having a processor 91 execute a program stored in a memory.
[0045] The teaching control unit 101 is a functional unit that teaches a movement target position of the end effector 26. For example, in advance preparation, the teaching control unit 101 controls the operation of the robot arm 20, and also captures an image of the identification information display unit M using the imaging device 40, and acquires (teaches) a movement target position from the captured image information. This movement target position is provided to the operation control unit 102 to be used as reference data when the robot device 1 is operated.
[0046] The operation control unit 102 is a functional unit that controls the operation of the robot device 1 during operation. The operation control unit 102 includes a robot arm control unit 103, a force information acquisition unit 104, a transport state determination unit 105, and a position correction unit 106.
[0047] The robot arm control unit 103 controls the operation of the robot arm 20 based on the movement target position provided by the teaching control unit 101 or the movement target position corrected by the position correction unit 106, which will be described later. This allows the end effector 26 to move along the movement target position in the assembling operation of gripping member A and assembling the gripped member A to member B.
[0048] The force information acquiring unit 104 performs detection using the force sensor 50 when the robot arm 20 is in operation, and acquires force information that is the detection result. The force information acquiring unit 104 also stores the acquired force information in a memory and outputs it to the transport state determining unit 105.
[0049] The transport state determination unit 105 determines whether an abnormality has occurred during transport of the member A, whether a positional deviation of the end effector 26 has occurred, or the like, based on the acquired force information. For example, the transport state determination unit 105 holds an abnormality determination threshold for determining whether a large force has been applied during transport of the member A, and determines whether an abnormality has occurred during transport of the member A by comparing the acquired force information with the abnormality determination threshold. In other words, if it determines that a force greater than a predetermined value has been applied during transport of the member A, it is possible that the force has changed due to a factor other than a positional deviation of the end effector 26 (for example, the robot arm 20 or member A interfering with something). Therefore, by comparing using the abnormality determination threshold, it is possible to eliminate abnormalities other than a positional deviation of the end effector 26 in advance.
[0050] Furthermore, the transport state determination unit 105 may store, as reference information, changes in the force information of the force sensor 50 from when the end effector 26 transports the gripped member A to when it assembles it to member B, and monitor changes in the force information relative to this reference information. The transport state determination unit 105 can determine the positional deviation of the end effector 26 based on changes in the force information relative to the reference information. As described above, the force information of the force sensor 50 includes information such as the magnitude and direction of the force applied to the end effector 26. For example, if the force changes relative to the magnitude and direction of the force in the reference information during transport or assembly of the member, the control unit 90 can estimate the positional deviation state (amount of deviation, direction of deviation) of the end effector 26 based on the change.
[0051] The position correction unit 106 uses the force information from the force sensor 50 to calculate (estimate) the positional deviation state (amount and direction of positional deviation; in other words, correction amount and correction direction) of the end effector 26 relative to the movement target position. For example, the position correction unit 106 can calculate the correction amount "mm" using a preset stiffness value "N / mm" of the end effector 26 and the force magnitude "N" of the force information. The stiffness value of the end effector 26 refers to the shape maintenance performance of various components between the installation location of the force sensor 50 and the component. This stiffness value of the end effector 26 can be calculated, for example, by experiments, simulations, etc. Alternatively, the stiffness value of the end effector 26 may be calculated by performing machine learning when the robot device 1 is operated multiple times.
[0052] 3, the position correction unit 106 can calculate the correction direction based on the direction of the force applied to the force sensor 50. Alternatively, as described above, the position correction unit 106 may obtain the correction amount and correction direction by calculating the positional deviation state (positional deviation amount, positional deviation direction) when the force information changes with respect to the magnitude and direction of the force in the reference information.
[0053] The correction amount and correction direction of the movement target position calculated by the position correction unit 106 can be said to be values that cancel out the force generated due to positional deviation of the end effector 26 during component transportation and assembly. After calculating the correction amount and correction direction of the end effector 26, the position correction unit 106 corrects the movement target position using this calculated value and stores the corrected movement target position. The robot arm control unit 103 controls the robot arm 20 using the corrected movement target position, thereby enabling successful assembly of components A and B.
[0054] The robot device 1 according to the embodiment is basically configured as described above, and its operation will be described below with reference to the flowcharts in Fig. 5 and Fig. 6. Fig. 5 is a flowchart showing a control method for advance preparation of the robot device 1. Fig. 6 is a flowchart showing a control method (position correction method) for operation of the robot device 1. Note that the following describes a pattern in which the control unit 90 automatically moves the moving body 11 of the robot body 10, but as described above, the robot body 10 may also be moved by an operator.
[0055] The control unit 90 controls steps S101 to S115 shown in FIGS.
[0056] As a preliminary preparation before assembling the components in the control method, the control unit 90 first moves the moving body 11 and places the robot body 10 at a target position on the production line (step S101).
[0057] After fixing the movable body 11, the control unit 90 starts a teaching process for teaching a target position to which the end effector 26 should move so that the robot arm 20 can transport and assemble the component A at the target position on the production line. In this case, the control unit 90 operates the robot arm 20 based on a pre-stored initial setting position, thereby moving the imaging device 40 to a position facing the identification information display unit M installed on the stand 2 of the production line (step S102).
[0058] Next, the control unit 90 causes the imaging device 40 to capture an image and acquires image information including the identification information display portion M (step S103). By performing appropriate image processing on this image information, the control unit 90 can recognize the target movement position of the end effector 26 of the robot arm 20. Note that in addition to the target movement position (X, Y, Z), the corresponding orientation (α, β, γ) may also be recognized.
[0059] In the advance preparation, the control unit 90 determines whether or not a taught movement target position already exists (step S104). If a taught movement target position does not exist (step S104: YES), the process proceeds to step S105, whereas if a taught movement target position exists (step S104: NO), the process proceeds to step S106.
[0060] In step S105, the control unit 90 instructs a new movement target position. At this time, the control unit 90 calculates the movement target position based on the imaging information read from the identification information display unit M, and stores the information in memory.
[0061] On the other hand, when a taught movement target position exists, for example, when there is a possibility that the robot device 1 has moved after the movement target position was acquired by stopping the robot device, etc., and the movement target position needs to be taught again. In this case, the control unit 90 compares the image of the taught identification information display unit M with the image of the identification information display unit M captured this time, and calculates the amount of correction and the direction of correction for the movement target position from the difference between the images (step S106). Then, the control unit 90 corrects the movement target position based on the calculated amount of correction and the direction of correction (step S107). Note that even when a movement target position already exists, the control unit 90 may perform control to switch to a movement target position obtained by newly capturing an image.
[0062] When step S105 or step S107 is completed, the control unit 90 obtains the taught movement target position and ends the advance preparation (step S108). Then, as shown in Fig. 6, the control unit 90 proceeds to the actual operation of assembling the member A by the robot device 1 based on the operation command of the worker.
[0063] In actual operation, the robot arm control unit 103 of the control unit 90 reads out the movement target position stored in the memory, operates the robot arm 20 based on this movement target position, and performs an assembling operation to assemble member A to member B (step S109). At this time, the control unit 90 performs position control in the current (Nth) operation of the robot arm 20 based on the previous (N-1th) correction information. Immediately after the completion of advance preparation, the position of the robot arm 20 is controlled using the movement target position calculated based on the imaging information.
[0064] Then, the force information acquisition unit 104 of the control unit 90 detects the force applied to the end effector 26 by the force sensor 50 during the transport of the member A, including the assembling operation, and acquires the force information (step S110).
[0065] When the force information is acquired, the transport state determination unit 105 compares the acquired force information with an abnormality determination threshold to determine whether the magnitude of the force is equal to or less than the abnormality determination threshold (step S111). If the magnitude of the force is greater than the abnormality determination threshold (step S111: NO), the process proceeds to step S112, whereas if the magnitude of the force is equal to or less than the abnormality determination threshold (step S111: YES), the process proceeds to step S113.
[0066] In step S112, the control unit 90 recognizes that an abnormality has occurred in the robot body 10, and performs processing such as emergency stopping of the operation of the robot body 10. The control unit 90 may also take measures such as notifying the operator of the abnormality via a user interface (not shown).
[0067] On the other hand, if the magnitude of the force is equal to or less than the abnormality determination threshold, it is determined that there was no abnormality in the current operation of the robot arm 20. However, the robot arm 20 may be affected by vibrations or the like during the current operation of the robot arm 20, causing a positional deviation of the end effector 26. Therefore, the position corrector 106 of the control unit 90 calculates the amount and direction of correction for the next (N+1)th) movement target position of the end effector 26 based on the force information of the force sensor 50 acquired in step S110 during the current operation (step S113). As described above, for example, the amount of correction can be calculated based on the rigidity value of the end effector 26 and the magnitude of the force used when assembling member A to member B.
[0068] Furthermore, the position correction unit 106 corrects the movement target position used in step S109 with the correction amount and correction direction calculated in step S113 (step S114). This allows the control unit 90 to obtain a highly accurate corrected movement target position based on the force information of the force sensor 50.
[0069] Thereafter, the control unit 90 determines whether or not to end production on the production line (step S115). If the assembly of the component is to be performed (step S115: NO), the process returns to step S109, and the same processing flow is repeated. On the other hand, if the assembly of component A is to be completed (step S115: YES), an end process is performed, and this processing flow is ended. In the end process, for example, it is advisable to perform processing such as storing the corrected movement target position in memory for use in the next operation.
[0070] By performing the above-described position correction method, the robot device 1 can easily correct the next movement target position of the end effector 26. In particular, when the robot arm 20 is installed on the moving body 11, the moving body 11 may move slightly, causing a positional deviation. However, by correcting such a slight positional deviation based on the force information of the force sensor 50, the movement target position can be easily fine-tuned.
[0071] The robot device 1 according to the present disclosure is not limited to the above embodiment, and various modifications are possible. For example, while the robot body 10 according to the embodiment is configured to be movable by the mobile body 11, the robot body 10 may be configured to be immovably fixed to the production line. Even in this case, the end effector 26 may be displaced due to disturbances to the robot body 10, deterioration of the robot body 10 over time, etc. In this case, the force information from the force sensor 50 can be used to correct the displacement.
[0072] Furthermore, for example, the robot device 1 is not limited to a configuration in which the force sensor 50 is used to detect force information acting on the end effector 26. For example, the robot device 1 may calculate the force acting on the end effector 26 from the torque generated at each of the multiple joints 32. The torque of each joint 32 may be determined, for example, using a detected value from a torque sensor installed in each joint 32, or using a current value from a current sensor installed in the wiring supplying power to the joint motor. In other words, the torque of each torque sensor or current sensor corresponds to information related to the force acting on the end effector 26. The control unit 90 can calculate the force acting on the end effector 26 based on the detected torque of each joint 32 and pre-stored parameters (length, stiffness value, etc.) of each arm 22.
[0073] The technical ideas and effects of the present disclosure explained in the above embodiments will be described below.
[0074] A first aspect of the present disclosure is a robot device 1 including a robot arm 20 having an end effector 26 that holds and moves a member A, a sensor (force sensor 50) provided on the robot arm 20 that detects information related to the force generated in the end effector 26, and a control unit 90 that processes the information from the sensor and controls the operation of the robot arm 20, wherein the control unit 90 detects information related to the force generated in the end effector 26 when the robot arm 20 is operating using the sensor, estimates a positional deviation of the end effector 26 from a target movement position of the end effector 26 based on the force-related information, and corrects the target movement position for the next operation of the robot arm 20 based on the positional deviation of the end effector 26.
[0075] As described above, the robot device 1 can easily correct the movement target position of the end effector 26 by estimating the positional deviation state of the end effector 26 using information related to the force detected by the sensor (force sensor 50) during operation of the robot arm 20. In other words, the robot device 1 can correct the movement target position without capturing images using the imaging device 40 or the like, thereby suppressing increases in the work period and processing load. For example, even if a positional deviation occurs in the end effector 26 during the current operation of the robot arm 20, the robot device 1 can operate the robot arm 20 so as to cancel this positional deviation in the next operation of the robot arm 20.
[0076] Furthermore, the control unit 90 detects information related to the force while the end effector 26 is holding and assembling the member A. As a result, even if a positional deviation occurs when the end effector 26 transports the member A, the control unit 90 can eliminate the positional deviation of the movement target position based on the information related to the force.
[0077] Furthermore, the control unit 90 detects information related to the force generated when member A held by the end effector 26 is assembled to another member B. As a result, even if a positional deviation occurs during the assembly operation in which member A is assembled to member B by the end effector 26, the control unit 90 can effectively correct the movement target position during this assembly operation.
[0078] Furthermore, the control unit 90 determines whether the acquired force-related information is equal to or less than the abnormality determination threshold, and if the force-related information is equal to or less than the abnormality determination threshold, estimates the positional deviation state of the end effector 26 and corrects the movement target position when the robot arm 20 operates, and stops the operation of the robot arm if the force-related information is greater than the abnormality determination threshold. This allows the robot device 1 to determine an abnormality when a large force is applied to the end effector 26, and to smoothly take measures to correct the positional deviation of the movement target position when a small force is applied to the end effector 26.
[0079] Furthermore, the robot arm 20 is mounted on the moving body 11 and includes an imaging device 40 that captures an image of the tip side of the end effector 26, and the control unit 90 captures an image using the imaging device 40 after the moving body 11 has moved, and teaches a target position for movement based on information contained in the captured image. As a result, by first teaching a target position for movement when the position of the robot arm 20 is changed by the moving body 11, it is possible to accurately obtain a target position for movement that serves as a reference when the robot device 1 operates.
[0080] The positional deviation state of the end effector 26 also includes the amount and direction of positional deviation of the end effector 26. This allows the robot device 1 to easily correct the movement target position by calculating the amount and direction of positional deviation of the end effector 26.
[0081] A second aspect of the present disclosure is a position correction method for a robot device 1 including a robot arm 20 having an end effector 26 that holds and moves a member A, and a sensor (force sensor 50) provided on the robot arm 20 that detects information related to a force generated in the end effector 26, the method including a detection step of detecting information related to a force generated in the end effector 26 when the robot arm 20 is operating using the sensor, an estimation step of estimating a positional deviation of the end effector 26 with respect to a target position of the end effector 26 based on the information related to the force detected in the detection step, and a correction step of correcting the target position of the end effector 26 when the robot arm next operates based on the positional deviation of the end effector 26 estimated in the estimation step. Even in this case, the position correction method can easily correct the position of the end effector when the robot arm is in operation.
[0082] The robot device 1 and the position correction method according to the presently disclosed embodiments are illustrative in all respects and are not limiting. The embodiments may be modified and improved in various ways without departing from the spirit and scope of the appended claims. The features described in the above-described embodiments may be configured differently and may be combined within a consistent range. [Explanation of symbols]
[0083] 1. Robotic Device 11 Mobile 20 Robot Arm 26 End Effector 40 Imaging device 50 Force Sensor 90 Control Unit A member
Claims
1. a robot arm having an end effector that holds and moves a member; a sensor provided on the robot arm for detecting information related to a force generated in the end effector; a control unit that processes information from the sensor and controls an operation of the robot arm, The control unit detecting information related to a force generated in the end effector during operation of the robot arm using the sensor; estimating a positional deviation state of the end effector with respect to a movement target position of the end effector based on the information related to the force; correcting the target movement position for the next operation of the robot arm based on the positional deviation state of the end effector; Robotic device.
2. the control unit detects information related to the force while the end effector is holding and transporting the member. The robotic device according to claim 1 .
3. the control unit detects information related to the force generated when the member held by the end effector is assembled to another member. The robotic device according to claim 2 .
4. the control unit determines whether the acquired information related to the force is equal to or less than an abnormality determination threshold; When the information relating to the force is equal to or less than the abnormality determination threshold, a positional deviation state of the end effector is estimated, and the movement target position when the robot arm operates is corrected; When the information relating to the force is greater than the abnormality determination threshold, the operation of the robot arm is stopped. The robot device according to any one of claims 1 to 3.
5. the robot arm is mounted on a moving body and includes an imaging device that captures an image of a tip end side of the end effector; the control unit, after the moving body has moved, performs imaging using the imaging device and teaches the moving target position based on information included in the imaging information. The robot device according to any one of claims 1 to 3.
6. The positional deviation state of the end effector includes a positional deviation amount and a positional deviation direction of the end effector. The robot device according to any one of claims 1 to 3.
7. a robot arm having an end effector that holds and moves a member; a sensor provided on the robot arm to detect information related to a force generated in the end effector, a detecting step of detecting, by the sensor, information related to a force generated in the end effector during operation of the robot arm; an estimation step of estimating a positional deviation state of the end effector with respect to a movement target position of the end effector based on information related to the force detected in the detection step; and a correction step of correcting the movement target position when the robot arm next operates, based on the positional deviation state of the end effector estimated in the estimation step. Position correction method.
Citation Information
Patent Citations
Manufacturing Systems
JP6664830B2