Robot Curved Surface Copying Control Method
By installing the work tool on the robot's hand and using an approximate mathematical formula to determine the normal direction of the virtual shape, the work tool is controlled to contact the target workpiece along the normal direction, and the problem of complex and damage to the contour of flexible objects in the prior art is solved, and the effect of simplifying pre-preparation and efficient contour is achieved.
Patent Information
- Application Number
- CN202080087036.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-12-16
- Filing Date
- 2020-12-15
- Publication Date
- 2025-06-10
- Estimated Expiration
- 2040-12-15
AI Technical Summary
The prior art requires complex scanning and measurement in advance when using robots to shape the curved surfaces of flexible target workpieces, and may damage the soft objects.
By installing the work tool on the robot's hand and determining the normal direction of the virtual shape using an approximate mathematical formula, the work tool is controlled to contact the target workpiece along the normal direction, and the contour control is achieved.
The pre-preparation process is simplified, and the curved surface of flexible objects can be properly conjured, avoid damage, and improve the efficiency and accuracy of conjugation.
Smart Images

Figure CN115210048B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a control for a robot to follow a curved surface. Background Art
[0002] So far, a control method for a robot to follow the curved surface of a target workpiece has been well-known. The robot performs a prescribed operation on the surface of a target workpiece having a three-dimensional free-form surface with a working tool mounted on its front end. Patent Document 1 discloses such a control method for the surface of a pipeline.
[0003] The structure of the control method for the surface of a pipeline in Patent Document 1 is such that while causing the front end of a force control robot to contact the surface of a pipeline as a target workpiece and moving it, the shape of the pipeline cross-section is measured based on the movement trajectory of the front end, thereby obtaining shape information and position information, creating a model of the pipeline, and correcting the relative position error between the pipeline and the force control robot based on the created pipeline model.
[0004] Patent Document 1: Japanese Patent Laid-Open No. 7-210230 Summary of the Invention
[0005] However, the structure of Patent Document 1 requires obtaining the shape information of the target workpiece in advance by scanning while contacting the surface of the target workpiece for measurement. Therefore, the preparatory work such as obtaining the shape information of the target workpiece is complicated. And there is room for improvement, that is, when a soft object such as a balloon is used as the target workpiece, although the shape information is obtained by scanning while contacting its surface, there is a possibility that the balloon will be damaged by the scanning.
[0006] In view of the above, an object of the present invention is to provide a robot curved surface following control method that can appropriately follow a curved surface even when the target workpiece is soft.
[0007] The problem to be solved by the present invention is as described above. Hereinafter, the method for solving this problem and its effects will be described.
[0008] According to the viewpoint of the present invention, a method for controlling a robot to follow a curved surface is provided. The method for controlling a robot to follow a curved surface is used to control a robot, which includes a hand, an arm, and a control unit. An operating tool is mounted on the hand of the robot. The arm is connected to the hand. The control unit controls the movements of the hand and the arm. The method for controlling a robot to follow a curved surface performs processes including a normal direction determination step and an operating tool posture control step. In the normal direction determination step, according to a mathematical formula approximating the shape of a target workpiece having a curved surface, the normal direction of the virtual shape at the virtual position where the operating tool mounted on the hand contacts the virtual shape represented by the mathematical formula is obtained. In the operating tool posture control step, at the position on the surface of the target workpiece corresponding to the virtual position, that is, the corresponding position, the operating tool mounted on the hand contacts the target workpiece in a posture along the normal direction determined in the normal direction determination step.
[0009] Therefore, it is possible to perform operations while enabling the robot to appropriately follow the curved surface of the target workpiece, and it is possible to simplify the preprocessing. Moreover, even when the target workpiece is a flexible object, its surface can still be followed well.
[0010] According to the present invention, the preprocessing can be simplified, and even when the target workpiece is flexible, the curved surface can still be appropriately followed. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 FIG. is a side view showing the appearance of a robot following the surface of a balloon to which the method for controlling a robot to follow a curved surface according to an embodiment of the present invention is applied.
[0012] Figure 2 FIG. is a diagram showing the process of preprocessing performed by a preprocessing device.
[0013] Figure 3 FIG. is a diagram showing the appearance of projecting a two-dimensional operation trajectory onto the surface of a sphere.
[0014] Figure 4 FIG. is a flowchart showing an example of the process of an operation performed by the robot during the operation.
[0015] Figure 5 FIG. is a side view for explaining pen movement control.
[0016] Figure 6 FIG. is a perspective view for explaining pen movement control.
[0017] Figure 7 FIG. is a side view showing the height adjustment of the tip of the pen. DETAILED DESCRIPTION OF THE INVENTION
[0018] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. Figure 1 Fig. 4 is a side view showing the appearance of the surface of the balloon W being profiled by the robot 100 which applies the robot curved surface profiling control method according to one embodiment of the present invention.
[0019] Figure 1 The illustrated robot 100 is configured as a vertical articulated robot, for example. The robot 100 can perform operations such as assembling, machining, painting, and cleaning on a target workpiece. The robot 100 includes a support base 11, an articulated arm (arm portion) 12, an end effector (hand) 13, and a control unit 10.
[0020] The support base 11 is used to fix the robot 100. Electric motors (not shown) for driving each joint are arranged in the articulated arm 12. The robot 100 can move, for example, the end effector 13 (working tool 15) in a three-dimensional space by driving the joints of the articulated arm 12 via the electric motors. And, encoders are provided at each joint, and the encoders detect the rotation angles of the electric motors for driving the articulated arm 12 and the end actuator 13.
[0021] The control unit 10 described later can calculate the movement trajectory of the end effector 13 and the like based on the rotation angles of the electric motors detected by the encoders. And, the control unit 10 can reproduce a certain posture of the robot 100 by storing the output of the encoders of that posture (that is, the rotation angles of the respective electric motors) and controlling the rotation of the respective electric motors with the stored rotation angles.
[0022] The end effector 13 is attached to the front end of the articulated arm 12. A working tool 15 corresponding to the operation content is detachably attached to the end effector 13. The operation of the end effector 13 is controlled according to an operation instruction from the control unit 10. The end effector 13 can move its position and posture in a three-dimensional space by driving the articulated arm 12. It should be noted that when the end effector 13 directly contacts the target workpiece to act, the end effector 13 serves as the working tool.
[0023] A force sensor 14 is attached to the end effector 13. The force sensor 14 can detect the force applied to the working tool 15 which is attached to the end effector 13.
[0024] The force sensor 14 may be configured to detect torque instead of or in addition to detecting force. The force sensor 14 only needs to be able to detect the pressing force on the target workpiece, and may also be installed at a position between the end effector 13 and the articulated arm 12 where the working tool 15 and the like are installed.
[0025] The control unit 10 is used to control the postures, movements, etc. of the multi-joint arm 12 and the end effector 13. The control unit 10 is composed of a well-known computer structure, including an operation processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC or FPGA, a storage unit such as ROM, RAM, HDD, and a communication unit that can communicate with external devices. Programs executed by the operation processing unit, various set thresholds input from external devices via the communication unit, various data related to surface profiling, etc. are stored in the storage unit.
[0026] Based on the detection value of the force sensor 14, the control unit 10 obtains the external force acting on the working tool 15, and by controlling the electric motor (not shown) that drives the multi-joint arm 12, while pressing the working tool 15 against the surface of the target workpiece, the working tool 15 is moved along a pre-set working trajectory to make this external force a certain value (a specified threshold or within a specified threshold range). That is, the control unit 10 controls the pressing force of the working tool 15 against the surface of the target workpiece, and at the same time, makes the working tool 15 move in imitation of the surface shape of the target workpiece.
[0027] Next, taking the case of drawing an arbitrary illustration on the surface (specifically, the upper surface) of the balloon W as the target workpiece as an example, the robot surface profiling control method of this embodiment will be described in detail. In this example, the working tool 15 installed on the end effector 13 is Figure 5 the drawing pen 15a shown.
[0028] As Figure 2 shown, the robot surface profiling control method of this embodiment uses the preprocessing device 2 ( Figure 1 ) to perform preprocessing such as determining the approximate shape of the shape of the target workpiece for profiling (the outer peripheral shape of the balloon W). And in this robot surface profiling control method, during the operation (drawing), the control unit 10 of the robot 100 calculates the data related to the posture and movement of the end effector 13 (and even the pen 15a) according to the approximate shape obtained in the preprocessing, and at the same time controls the movement of the pen 15a.
[0029] As Figure 1 shown, the preprocessing device 2 includes an approximate shape determination unit 21, a mathematical formula operation unit 22, and a working trajectory creation unit 23. The preprocessing device 2 can be separately provided from the control unit 10 of the robot 100, for example.
[0030] The preprocessing device 2 is a well-known computer configuration, including an arithmetic processing unit such as a microcontroller, CPU, MPU, PLC, DSP, ASIC, or FPGA, a storage unit such as ROM, RAM, HDD, and a communication unit capable of communicating with external devices. Programs and the like executed by the arithmetic processing unit are stored in the storage unit. Through the cooperation of this hardware and software, the preprocessing device 2 can function as an approximate shape determination unit 21, a mathematical formula operation unit 22, and a working trajectory creation unit 23.
[0031] The approximate shape determination unit 21 performs Figure 2 the first preparation step S101 of the preliminary preparation shown. In the first preparation step S101, the approximate shape determination unit 21 analyzes the shape information of the balloon W and determines an approximate shape (virtual shape) that approximates the shape of the balloon W. Since the actual shape of the balloon W is a three-dimensional shape, the approximate shape is also a three-dimensional shape. The three-dimensional shape information of the balloon W can be obtained, for example, by acquiring images with multiple cameras (not shown) and analyzing the multiple images, where the multiple cameras are arranged around the position where the balloon W is disposed. Instead of multiple cameras, the shape information of the balloon W can also be obtained from three-dimensional point cloud data acquired by a three-dimensional laser scanner or the like.
[0032] The determination of the approximate shape can be performed, for example, in such a way that the error between the surface position of the approximate shape and the surface position of the actual balloon W is within a specified threshold. The threshold of the error is determined in consideration of the accuracy required for the operation. The approximate shape is selected from a plurality of predefined geometric three-dimensional shapes (e.g., sphere, ellipsoid, cylinder, cone, prism, etc.). In the present embodiment, the approximate shape approximating the balloon W is determined as, for example, Figure 1 the sphere 3 shown. The determination of the approximate shape can be automatically performed, for example, by a learned model pre-constructed by machine learning. When the size, shape, and installation position of the balloon W are pre-determined (roughly), the analysis of the shape information can be omitted, and the approximate shape pre-set by an operator or the like can be directly used.
[0033] The mathematical formula operation unit 22 performs Figure 2 the second preparation step S102 and the third preparation step S103 of the preliminary preparation shown. In the second preparation step S102, the mathematical formula operation unit 22 acquires a shape mathematical formula that represents the approximate shape determined by the approximate shape determination unit 21. The correspondence between the type of the approximate shape and the shape mathematical formula is pre-stored in the preprocessing device 2. When the approximate shape is the sphere 3, the obtained shape mathematical formula becomes, for example, the following formula (1).
[0034]
Mathematical formula 1
[0035]
[0036] wherein R is the radius of the sphere 3. (X C , Y C , Z C ) is the center of the sphere 3. (x, y, z) are the position coordinates representing a certain point on the surface of the sphere 3.
[0037] Moreover, in the third preparation step S103, the mathematical operation unit 22 obtains a normal mathematical formula, which is a mathematical formula representing the normal vector at an arbitrary position on the surface of the approximate shape determined in the first preparation step S101. The correspondence between the type of approximate shape and the normal mathematical formula is the same as the correspondence between the type of approximate shape and the shape mathematical formula, and is pre-stored in the pre-processing device 2. When the approximate shape is the sphere 3, the obtained normal mathematical formula becomes, for example, the following formula (2). The normal vector obtained by formula (2) is a vector from each position on the surface of the sphere 3 towards the center (X C , Y C , Z C ) of the sphere 3.
[0038]
Mathematical formula 2
[0039]
[0040] The mathematical operation unit 22, for example, sends the parameters representing the obtained normal mathematical formula to the control unit 10 of the robot 100 via the communication unit. At this time, the control unit 10 calculates the normal vector at each position of the operation plan (drawing plan) on the surface of the sphere 3 (or the balloon W) using this formula (2).
[0041] The first preparation step S101, the second preparation step S102, and the third preparation step S103 correspond to the normal direction determination step.
[0042] The operation trajectory creation unit 23 performs Figure 2 the fourth preparation step S104 of the above-mentioned preliminary preparation. In the fourth preparation step S104, the operation trajectory creation unit 23 transforms the two-dimensional operation trajectory 5 input from an external device (or input by an operator) into a three-dimensional operation trajectory 6 along the surface of the approximate shape of the sphere 3. In the example described this time, this operation trajectory (two-dimensional operation trajectory 5 or three-dimensional operation trajectory 6) is the trajectory of the line constituting the illustration of the drawing plan. The three-dimensional operation trajectory 6 can also be said to be composed of each of the virtual contact points (virtual positions) where the pen 15a contacts the balloon W (in other words, the sphere 3) assuming that the shape of the actual balloon W coincides with the approximate shape.
[0043] The two-dimensional operation locus 5 is represented in the form of a vector graphic. The two-dimensional operation locus 5 can be created by an operator using drawing software, or can be automatically created by image processing of image data captured by an appropriate camera. The two-dimensional operation locus 5 can represent, for example, a combination of coordinates indicating the positions of points in the XY two-dimensional coordinate system and information indicating whether to draw (strokes) as data arranged in the moving order of the pen 15a. Considering the completion of drawing a shape with a curved surface, the distance between points is defined as being short enough.
[0044] As Figure 3 shown, the operation locus creation unit 23 creates a three-dimensional operation locus 6 by projecting each point constituting the input two-dimensional operation locus 5 onto the surface of the sphere 3 and obtaining the position coordinates of each of the resulting projected points. Through this transformation, the three-dimensional operation locus 6 becomes data that represents, for example, a combination of coordinates indicating the positions of points in the three-dimensional coordinate system and information indicating whether to draw at that point, arranged in the moving order of the pen 15a. However, the method of creating the three-dimensional operation locus 6 (or data such as position coordinates related to the three-dimensional operation locus 6) is not limited to the above. Each point coordinate in the three-dimensional operation locus 6 can be regarded as a virtual contact point, which is the point where the pen 15a touches the surface of the virtual sphere 3 obtained by approximation.
[0045] Hereinafter, an arbitrary virtual contact point will be referred to as a first virtual contact point, and the next virtual contact point of the first virtual contact point will be referred to as a second virtual contact point. Since each virtual contact point of the three-dimensional operation locus 6 corresponds to each point of the two-dimensional operation locus 5, the distance between the first virtual contact point and the second virtual contact point is short enough. Therefore, the vector from the first virtual contact point to the second virtual contact point actually becomes a direction within a plane perpendicular to the normal direction at the first virtual contact point (in other words, within the plane tangent to the surface of the sphere 3 at the first virtual contact point). In this way, the direction from a virtual contact point to the next virtual contact point is always the tangent direction with respect to the approximately shaped sphere 3.
[0046] As will be described in detail later, since the actual traveling direction of the pen 15a is defined based on the above vector, this vector will sometimes be referred to as the pen traveling direction vector (operation tool traveling direction vector) hereinafter. The pen traveling direction vector corresponds to the difference between two sequentially adjacent virtual contact points. Therefore, the three-dimensional operation locus 6 usually contains data of a lot of virtual contact points, and this data series can be regarded as a group of a lot of pen traveling direction vectors.
[0047] The operation locus creation unit 23 sends the obtained three-dimensional operation locus 6 to the control unit 10 (or the numerical operation unit 22) of the robot 100 via the communication unit.
[0048] After the above-mentioned preliminary preparations are completed, the actual drawing operation is disclosed. Usually, an illustration consists of many drawings (strokes). Hereinafter, for the sake of simple explanation, the process from the start to the end of one drawing is focused on for explanation.
[0049] When starting to draw on the upper surface of the balloon W, the robot 100 moves the pen 15a so that the tip of the pen 15a is located sufficiently separated upward from the first virtual contact point (drawing start point) and at a position corresponding to the virtual contact point in the vertical direction. And the robot 100 adjusts the posture of the pen 15a to be consistent with the normal direction at the virtual contact point.
[0050] Then, the robot 100 maintains the posture of the pen 15a and, while monitoring the detection value of the force sensor 14, moves the pen 15a downward. When moving the pen 15a downward, finally, the pen 15a contacts the actual balloon W, and the resulting force is detected by the force sensor 14. During the movement, when the detection value of the force sensor 14 reaches a specified value, the downward movement of the pen 15a stops. The position of the tip of the pen 15a when the movement stops (which can be regarded as the position of the actual pen 15a) can be lower than the virtual contact point or higher than the virtual contact point.
[0051] Then, the robot 100 moves the pen 15a. The direction of this movement is the direction from the current virtual contact point to the next virtual contact point. As described above, this direction can be said to correspond to the tangent direction of the three-dimensional operation trajectory 6. The robot 100 adjusts the posture of the pen 15a to be consistent with the tangent direction at the new virtual contact point during this movement. And during this process, the vertical position of the pen 15a (that is, the contact strength between the tip of the pen 15a and the balloon W) is adjusted according to the detection value of the force sensor 14.
[0052] When reaching the last virtual contact point, the robot 100 moves the pen 15a upward, and as a result, the pen 15a leaves the actual balloon W. As described above, a line is drawn on the surface of the balloon W by the pen 15a. In this way, while the robot 100 absorbs the error between the shape of the sphere 3 at the virtual contact point and the actual balloon W, it traces the pen 15a along the outer peripheral surface of the actual balloon W while performing the drawing work.
[0053] In Figure 4 the processing for implementing the above actions is shown as a flowchart. Hereinafter, this processing is explained. However, Figure 4 the flowchart shown is an example, and the order or content of the processing can be changed.
[0054] When starting the drawing operation, first, for each virtual contact point included in the three-dimensional operation trajectory 6, the control unit 10 of the robot 10 calculates the normal vector at the virtual contact point using the above formula (2) for the purpose of performing the drawing operation (step S201).
[0055] Then, the control unit 10 determines whether there is a virtual contact point whose processing is not completed (that is, whether the drawing operation has been completed) (step S202). This determination is to repeatedly perform the subsequent processing for all virtual contact points. Therefore, the processing after step S203 described below is repeatedly executed until the processing of all virtual contact points (that is, the drawing operation) is completed.
[0056] In the determination of step S202, when it is determined that the drawing operation has not been completed, the control unit 10 determines whether the virtual contact point processed during this cycle time is the first virtual contact point (step S203).
[0057] In the determination of step S203, when the processed virtual contact point is the first virtual contact point, after adjusting the posture of the pen 15a along the normal vector at the virtual contact point (step S205), the control unit 10 moves the pen 15a to make the pen 15a approach the balloon W (steps S206 and S207). The control unit 10 stops the movement of the pen 15a at the position where the force applied to the pen 15a becomes a specified threshold value (or within the specified threshold value range) according to the detection value of the force sensor 14. That is, the control unit 10 makes the pen 15a contact the balloon W with an appropriate pressing force in a posture consistent with the normal vector of the first virtual contact point (steps S206 and S207). As described above, since the sphere 3 is an approximate shape of the balloon W, the actual contact point (corresponding position) between the pen 15a and the balloon W does not coincide with the virtual contact point in most cases. Then, the process returns to step S202 to perform the processing for the next virtual contact point.
[0058] In the determination of step S203, when it is determined that this cycle time is not the processing of the first virtual contact point, the pen 15a is moved from the previous virtual contact point to the current virtual contact point (step S204). Since the distance between the two virtual contact points is short enough, the moving distance of the pen 15a is short. And the moving direction of the pen 15a is along the plane (tangent plane) that contains the previous virtual contact point and is perpendicular to the normal vector of the virtual contact point.
[0059] Next, referring to Figures 5 to 7 , with the pen 15a starting from Figure 5An example of moving the virtual contact point (k-1) shown to the virtual contact point (k) is used to detail the process shown in step S203. The virtual contact point (k-1) corresponds to the previous virtual contact point, and the virtual contact point (k) corresponds to the current virtual contact point. In Figure 5 etc., for easier understanding of the explanation, the virtual contact points (k-1) and (k) adjacent in the processing sequence are exaggeratedly drawn to be far apart.
[0060] In Figure 5 the normal vector z T (k-1) of the previous virtual contact point (k-1) is shown. And, in Figure 5 the vector g T (k-1) in the direction from the previous virtual contact point (k-1) to the current virtual contact point (k) is shown. In Figure 5 the vector g T (k-1) does not have the same orientation as the straight line connecting the previous virtual contact point (k-1) and the current virtual contact point (k), which is due to the above-mentioned exaggerated representation.
[0061] Hereinafter, a three-dimensional operation tool coordinate system will be temporarily considered. This operation tool coordinate system is redefined every time the virtual contact point of the object to be processed changes. In this operation tool coordinate system, the plane ( Figure 6 the tangent plane TP) that contains the previous virtual contact point (k-1) and is perpendicular to the normal vector zT(k-1) is set as the XY plane. And, in this operation tool coordinate system, the direction along the normal vector becomes the Z axis. In this operation tool coordinate system, the vector gT(k-1) at the virtual contact point (k-1) can be expressed, for example, by the following formula (3).
[0062]
Equation 3
[0063]
[0064] where dx T is the movement amount command value of the x-axis of the operation tool coordinate system. dy T is the movement amount command value of the y-axis of the operation tool coordinate system. From the fact that the Z coordinate is always zero in formula (3), it can be seen that the obtained vector g T (k-1) is contained in the tangent plane TP. Therefore, this vector g T (k-1) can be called a tangent vector.
[0065] The control unit 10 moves the pen 15a from the current actual position to a new position along the tangent vector obtained above by controlling the robot 10. Further, while moving the pen 15a or after moving the pen 15a, the control unit 10 aligns the posture of the pen 15a with the normal vector of the current virtual contact point (the virtual contact point (k) in the above example) (step S205).
[0066] Then, the control unit 10 determines whether it is necessary to adjust the height of the tip of the pen 15a (that is, the contact state between the tip of the pen 15a and the balloon W) based on the detection value of the force sensor 14 (step S206).
[0067] For example, when the detection value of the force sensor 14 exceeds a specified threshold value (or the maximum value of a specified threshold value range), the control unit 10 determines that it is necessary to adjust the height of the pen 15a, and retracts the tip of the pen 15a upward (that is, in a direction away from the balloon W) while keeping the posture of the pen 15a unchanged.
[0068] Further, when the detection value of the force sensor 14 is equal to or less than the specified threshold value (or the minimum value of the specified threshold value range), the control unit 10 determines that it is necessary to adjust the height of the pen 15a, and advances the tip of the pen 15a downward (that is, in a direction approaching the balloon W) while keeping the posture of the pen 15a unchanged.
[0069] In the Figure 5 example, the pen 15a that has moved along the vector from the previous virtual contact point (k - 1) to the current virtual contact point (k) assumes a shape that has sunk into the actual balloon W. Therefore, the pen 15a is moved upward so as to contact the balloon W in an appropriate contact state. On the contrary, it is also possible that the moved pen 15a is away from the actual balloon W. At this time, the pen 15a is moved downward so as to contact the balloon W in an appropriate contact state.
[0070] The downward direction corresponds to the direction of entering the inside from the sphere 3, and the upward direction corresponds to the direction of retracting outward from the sphere 3. It should be noted that in practice, since the height of the pen 15a is adjusted each time it moves a sufficiently short distance, there is no case where the pen 15a damages the balloon W or the pen 15a leaves the balloon W and the drawing is interrupted.
[0071] Further, in the determination in step S206, when it is determined that it is not necessary to adjust the height of the tip of the pen 15a (that is, the detection value of the force sensor 14 is within the specified threshold value (or within the specified threshold value range)), the process returns to step S202, and the control unit 10 processes the next virtual contact point.
[0072] The above step S205, step S206, and step S207 correspond to an operating tool posture control step.
[0073] In this way, by using the robot curved surface profiling control method of the present invention, even without pre-measuring the surface shape of the target workpiece in advance, the working tool 15 mounted on the end effector 13 of the robot 100 can perform operations while profiling the curved surface of the target workpiece.
[0074] As described above, the robot curved surface profiling control method of the present embodiment is used to control the robot 100, which includes an end effector 13 equipped with a pen 15a, a multi-joint arm 12 connected to the end effector 13, and a control unit 10 that controls the movements of the end effector 13 and the multi-joint arm 12. This robot curved surface profiling control method performs processes including a normal direction determination step and a working tool posture control step. In the normal direction determination step, based on a mathematical formula approximating the shape of the balloon W with a curved surface, the normal direction of the sphere 3 at the virtual contact point where the pen 15a mounted on the end effector 13 touches the sphere 3 represented by the mathematical formula is obtained. In the working tool posture control step, at the actual contact point on the surface of the balloon W corresponding to the virtual contact point, the pen 15a mounted on the end effector 13 is made to contact the balloon W in a posture along the normal direction determined in the normal direction determination step.
[0075] Therefore, while simplifying the pre-preparation process, the robot 100 can perform operations while appropriately profiling the target workpiece such as the balloon W. Moreover, even for a soft object such as a balloon, its surface can be profiled well.
[0076] Furthermore, a force sensor 14 is provided on the robot 100 to which the robot curved surface profiling control method of the present embodiment is applied. In the robot curved surface profiling control method, the path along which the pen 15a travels along the surface of the sphere 3 represented by a mathematical formula is expressed as a set of pen travel direction vectors representing the movement in the tangential plane TP perpendicular to the normal direction. In the working tool attitude control step, the pen 15a in the posture along the normal direction is moved along each pen travel direction vector, and based on the detection value of the force sensor 14, the position of the pen 15a is corrected in the direction of advancing inward from the sphere 3 or the direction of retreating outward from the sphere 3.
[0077] Therefore, the contact force with respect to the target workpiece such as the balloon W can be maintained at a constant value.
[0078] Also, in the robot curved surface profiling control method of the present embodiment, in the working tool posture control step, when the detected value of the force sensor 14 exceeds a specified threshold value, while maintaining the posture of the pen 15a, the pen 15a is moved to one side in the position correction direction (the upper side in the height direction). When the detected value of the force sensor 14 is below the specified threshold value, while maintaining the posture of the pen 15a, the pen 15a is moved to the other side in the position correction direction (the lower side in the height direction). The position correction direction is constant regardless of the normal direction of the sphere 3.
[0079] Therefore, the contact force with respect to a target workpiece such as the balloon W can be maintained at a constant value through simple control.
[0080] As described above, the preferred embodiments of the present invention have been described, and the structure can be changed as follows, for example.
[0081] The control unit 10 may also execute part or all of the processing performed by the pre-processing device 2, such as creating a work trajectory. When the control unit 10 performs all the processing performed by the pre-processing device 2, the pre-processing device 2 may be omitted.
[0082] The normal vector and / or the tangent vector of each virtual contact point constituting the three-dimensional work trajectory 6 may also be calculated by the pre-processing device 2 in advance preparation.
[0083] The illustration may be drawn not on the upper surface of the balloon W but on the side surface or the like. At this time, the direction (position correction direction) in which the pen 15a is moved according to the detected value of the force sensor 14 is different from the up-down direction. In the above example, the position correction direction is constant regardless of the normal direction, and the pen 15a may also be moved in the direction of the normal vector according to the detected value of the force sensor 14.
[0084] The robot curved surface profiling control method of the present invention can be applied to scale work, polishing work, coating work, work of applying cream to the surface of a cake (especially the curved side surface), forming work of the applied cream, and masonry work on the curved surface of a wall.
[0085] Description of reference symbols
[0086] 10 - control unit; 12 - multi-joint arm (arm part); 13 - end effector (hand part); 15 - working tool; 15a - pen (working tool); W - balloon (target workpiece); 100 - robot.
Claims
1. A robot curved surface profiling control method for controlling a robot, the robot including a hand mounted with a working tool, an arm connected to the hand, and a control unit for controlling the movements of the hand and the arm, characterized in that : the robot curved surface profiling control method performs processes including a normal direction determination step and a working tool posture control step, in the normal direction determination step, according to a mathematical formula approximating the three-dimensional shape of a balloon as a target workpiece having a curved surface, the normal direction of the virtual shape at the virtual position where the working tool mounted on the hand contacts the three-dimensional virtual shape represented by the mathematical formula is obtained, in the working tool posture control step, at a position on the surface of the balloon corresponding to the virtual position, i.e., the corresponding position, the working tool mounted on the hand is made to contact the balloon in a posture along the normal direction determined in the normal direction determination step, a force sensor is provided on the robot or the working tool, the path for the working tool to travel along the surface of the virtual shape represented by the mathematical formula is represented as a set of working tool travel direction vectors, and the working tool travel direction vectors represent the movement in the direction of the orientation in a plane perpendicular to the normal direction, in the working tool posture control step, while moving the working tool in the posture along the normal direction along each working tool travel direction vector, according to the detection value of the force sensor, the position of the working tool is corrected in the direction of advancing inward from the virtual shape or the direction of retreating outward from the virtual shape.
2. The robot curved surface profiling control method according to claim 1, characterized in that : in the working tool posture control step, when the detection value of the force sensor exceeds a specified threshold value, while maintaining the posture of the working tool, the working tool is moved to one side in the position correction direction, when the detection value of the force sensor is below the specified threshold value, while maintaining the posture of the working tool, the working tool is moved to the other side in the position correction direction, the position correction direction is constant regardless of the normal direction of the virtual shape.
Citation Information
Patent Citations
Pipe surface copying control method using force control robot
JP1995210230A