CN117580685A - Control of a tool mounted on a robotic arm - Google Patents
Control of a tool mounted on a robotic arm Download PDFInfo
- Publication number
- CN117580685A CN117580685A CN202280045870.3A CN202280045870A CN117580685A CN 117580685 A CN117580685 A CN 117580685A CN 202280045870 A CN202280045870 A CN 202280045870A CN 117580685 A CN117580685 A CN 117580685A
- Authority
- CN
- China
- Prior art keywords
- tool
- control signal
- relative position
- robotic arm
- workpiece
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 78
- 239000013598 vector Substances 0.000 claims description 24
- 238000009659 non-destructive testing Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 5
- 238000005259 measurement Methods 0.000 claims description 4
- 239000003973 paint Substances 0.000 claims description 3
- 238000005498 polishing Methods 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 description 13
- 238000012360 testing method Methods 0.000 description 12
- 238000013459 approach Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000001066 destructive effect Effects 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 238000004801 process automation Methods 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Landscapes
- Manipulator (AREA)
Abstract
Control of a tool mounted on a robotic arm. A method of controlling the position of a tool mounted on a robotic arm includes projecting an image onto a workpiece from a projector mounted on the tool or robotic arm. The images are detected using a camera mounted on the tool or robotic arm. The image is used to determine the relative position of the tool with respect to the workpiece and the relative position is provided as an input to a controller configured to compare the relative position to a predetermined value. If the relative position is not equal to the predetermined value, a control signal is sent to the position controller to move the tool to a new position in which the relative position of the tool is closer to the predetermined value. Alternatively, if the relative position is equal to a predetermined value, a control signal is sent to the position controller to maintain the tool in its current position.
Description
Technical Field
The present disclosure relates to a method of controlling a tool mounted on a robotic arm. In particular, the present disclosure relates to a method of controlling the position of a tool relative to the relative position of the tool with respect to a workpiece.
Background
Modern horizontal axis wind turbines typically include a tower supporting a nacelle on which a rotor is mounted. The rotor typically includes a hub that supports three equally spaced blades. Blades typically have airfoil shapes designed to optimize efficiency and reduce drag.
Wind turbine blades are typically made of composite materials and may have a span (length from root to tip) in the range of 20m to 80m or more. The airfoil shape of a wind turbine blade results in a highly complex blade geometry, with no similar cross-sectional shape along the length of the blade from root to tip.
Almost all stages of the manufacturing process are manually completed by highly skilled technicians. The use of manual production methods that facilitate automated production techniques is largely due to the difficulty in reliably and reproducibly holding such large and complex blades precisely in the same position and orientation during each manufacturing process, which is critical to the reliance on fixed computer inputs and machine path control to guide the automation of the automated system. In addition, post-production processes, such as non-destructive ultrasonic testing, require precise control of tool position and orientation in order to obtain reliable data.
It is against this background that the present invention has been developed.
Disclosure of Invention
The present invention provides a method of controlling the position of a tool relative to a workpiece, wherein the tool is mounted on a robotic arm, and wherein the position of the tool is steerable by a plurality of motors controlled by one or more motor controllers, the method comprising:
projecting an image onto the workpiece from a projector mounted on the tool or on the robotic arm, wherein the projected image comprises a line;
detecting the projected image using a camera mounted on the tool or on the robotic arm;
determining a relative position of the tool with respect to the workpiece using the detected image; and
providing the determined relative position as an input to a relative position controller, wherein the relative position controller is configured to:
comparing the determined relative position of the tool to a predetermined value or range of predetermined values; and
if the determined relative position of the tool is not equal to or within the predetermined value range, issuing a relative position control signal to a tool position controller, wherein the relative position control signal comprises instructions to move the tool to a new position in which the relative position of the tool is closer to the predetermined value or to the predetermined value range; or alternatively
If the determined relative position of the tool is equal to or within the predetermined value, a relative position control signal is sent to a tool position controller, wherein the relative position control signal comprises instructions to maintain the tool in its current relative position,
wherein the tool position controller is configured to determine a motor control signal using the relative position control signal, and wherein the tool position controller is configured to issue the motor control signal to the one or more motor controllers.
This method is advantageous because it ensures the correct positioning of the tool relative to the workpiece, which is critical to ensuring a quality, repeatable manufacturing process.
Optionally, the method may include:
providing a computer-readable main path control model;
generating a main control signal using the main path control model;
providing the master control signal as an input to the tool position controller, wherein the tool position controller is configured to:
the motor control signal is determined using the master control signal and the relative position control signal.
Combining the relative position control signal with the master control signal allows for a more efficient system that only has to fine tune its motion relative to the master model.
The motor control signal is determined using the master control signal and the relative position control signal, optionally including a preferential superposition of the master control signal and the relative position control signal.
Determining the relative position of the tool with respect to the workpiece using the detected images may comprise determining a relative angular position between the tool and the workpiece, and wherein the step of issuing a relative position control signal comprises issuing a relative position control signal comprising instructions to bring the relative angular position closer to a predetermined value or closer to a predetermined range of values.
Precise control of the angle of the tool relative to the workpiece helps ensure optimal and correct use of the tool. This is particularly beneficial for tools that require precise angular orientations relative to the workpiece (e.g., non-destructive testing equipment).
In one example, determining the relative angular position of the tool with respect to the workpiece using the detected image includes determining a tangent to the workpiece.
Alternatively, the relative position of the tool may be determined with respect to a particular feature of the tool.
Using the detected image to determine a tangent to the workpiece optionally includes: determining a location of a vertex of a portion of a surface of the workpiece; and determining a tangent to the workpiece at the vertex.
A portion of the surface of the workpiece may correspond to a field of view of the camera.
In one example, the method includes providing the determined relative position as an input to a tool speed controller, wherein the tool speed controller is configured to:
comparing the determined relative position of the tool with a second predetermined value or with a second predetermined range of values; and
if the determined relative position of the tool is greater than or not within a second predetermined value, issuing a speed control signal comprising instructions to move the tool toward the new position at a first rate of change of relative position; or alternatively
If the determined relative position of the tool is less than or equal to or within a second predetermined value, a speed control signal is issued that includes instructions to move the tool toward the new position at a second relative position change rate, wherein the second relative position change rate is less than the first relative position change rate,
wherein the tool position controller is configured to use the speed control signal to determine the motor control signal.
This approach is advantageous because it allows the tool to approach the workpiece relatively quickly when the tool is positioned away from the workpiece, and it allows the tool to move relatively slowly when the tool is near the workpiece. This allows finer motion control at approach time without losing overall processing speed.
Optionally, the tool speed controller is integral with the relative tool position controller.
The method optionally includes repeating the method until the determined relative position of the tool is equal to or within a predetermined value.
The method may include determining a relative position of the tool with respect to the workpiece at a predetermined frequency.
In one example, the projector is a laser projector.
Optionally, the camera is a digital camera and the detected image is converted into a computer readable format.
The method optionally includes:
determining a magnitude of a force vector applied by the tool to the workpiece;
providing the determined magnitude of the force vector as an input to a force controller, wherein the force controller is configured to:
comparing the determined magnitude of the force vector with a predetermined value or range of predetermined values; and
issuing a force control signal if the determined magnitude of the force vector is not equal to or within a predetermined value range, wherein the force control signal includes instructions to bring the magnitude of the force closer to or closer to the predetermined value range; or alternatively
If the determined magnitude of the force vector is equal to or within a predetermined value, a force control signal is issued, wherein the force control signal comprises instructions to hold the tool in its current relative position,
wherein the tool position controller is configured to use the force control signal to determine the motor control signal.
This approach is advantageous because it prevents the tool from applying excessive forces to the workpiece during operation, potentially damaging the workpiece.
The force controller may be integral with the relative tool position controller.
In one example, the method includes repeating the method until the determined magnitude of the force vector is equal to or within a predetermined value.
Optionally, the method comprises determining the magnitude of the force vector at a predetermined frequency.
Optionally, the tool position controller is configured to inhibit movement of the tool toward the workpiece if the determined magnitude of the force vector is greater than or equal to a predetermined maximum value.
Determining the magnitude of the force vector may include determining a sum of force vectors applied to the tool by the motor.
In one example, determining the magnitude of the force vector includes obtaining a force measurement from a force sensor located between the tool and the robotic arm.
In another aspect, the invention includes a robotic arm comprising:
a tool mounted on the robotic arm;
a plurality of motors configured to manipulate the robotic arm and/or the tool;
a projector mounted on the tool or on the robotic arm;
a camera mounted on the tool or on the mounting robotic arm; and
apparatus adapted to perform the steps of the above method.
Optionally, the robotic arm comprises a force sensor between the tool and the robotic arm and means adapted to perform the steps of the above method.
Optionally, the tool comprises a nondestructive testing device, a paint applicator, an abrasive tool, or a polishing tool.
In a further aspect, the invention provides a computer program comprising instructions for causing a robotic arm to perform the steps of the above method.
In yet another aspect, the present invention provides a computer readable medium having the computer program described above stored thereon.
Within the scope of the present application it is expressly intended that the various aspects, embodiments, examples and alternatives set out in the preceding paragraphs, in the claims and/or in the following description and drawings, and in particular the various features thereof, may be employed independently or in any combination. That is, features of all embodiments and/or any embodiments may be combined in any manner and/or combination unless such features are incompatible. Applicant reserves the right to alter any originally presented claim or submit any new claim accordingly, including the right to modify any originally presented claim to depend on any other claim and/or incorporate any feature of any other claim, although not originally claimed in this manner.
Drawings
Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
FIG. 1 shows a schematic view of a wind turbine;
FIG. 2 shows a schematic view of a wind turbine blade;
FIG. 3 shows a schematic view of a cross section through a wind turbine blade;
FIG. 4 shows a schematic view of a tool held by a robotic arm in the vicinity of a wind turbine blade;
FIG. 5 shows a schematic view of a tool suitable for use with the present invention;
FIG. 6 shows a schematic view of laser line projection on the wind turbine blade of FIG. 4;
FIG. 7 illustrates a cross-sectional view of the wind turbine blade of FIG. 4;
FIG. 8 illustrates a cross-sectional view of the wind turbine blade of FIG. 4, wherein the robotic arm is schematically shown holding a tool near the wind turbine blade;
FIG. 9 shows a schematic diagram of a control system for a robotic arm; and
fig. 10 shows a schematic diagram of a system architecture suitable for implementing the control system of fig. 9.
Detailed Description
The following detailed description refers to the accompanying drawings that show, by way of illustration, specific details and embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention as defined in the appended claims.
Fig. 1 shows a wind turbine 1. The wind turbine 1 comprises a nacelle 2 supported on a substantially vertical tower 4, the tower 4 itself comprising a plurality of tower sections 5. The nacelle 2 houses a number of functional components including a gearbox and a generator (not shown), and the nacelle 2 supports a main rotor device 6. The main rotor device 6 comprises a hub 8 and a plurality of wind turbine blades 10 connected to the hub 8. In this example, the wind turbine 1 comprises three wind turbine blades 10.
Fig. 2 shows a schematic isometric view of wind turbine 10, and fig. 3 shows a cross section through wind turbine 10. The wind turbine comprises a root end 12 and a tip end 11. The root end 12 is configured to be attached to the hub 8. The leading edge 14 and the trailing edge 16 extend between the root end 12 and the tip end 14. The leeward pod 20 extends from the leading edge 14 to the trailing edge 16 on the leeward side of the blade 10, and the windward pod 22 extends from the leading edge 14 to the trailing edge 16 on the windward side of the blade 10. The structural beams 18 extending along a substantial portion of the blade length are located between the leeward pod 20 and the windward pod 22.
Modern wind turbine blades, such as the wind turbine blade 10 shown in fig. 1-3, have airfoil shapes in order to increase efficiency and reduce drag. The airfoil shape of the wind turbine blade 10 results in a highly complex blade geometry, with no similar cross-sectional shape along the length of the blade from the root end 12 to the tip end 14. As discussed above, this, together with the large length of modern wind turbine blades, presents a problem in terms of automating the manufacturing and testing processes, as it is difficult to reliably and reproducibly accurately position successive wind turbine blades 10 at the same location and orientation during each manufacturing or testing process. Process automation relies on fixed computer inputs and machine path control to guide the automation system. Thus, if the work piece (in this case a wind turbine blade) is not positioned exactly in the correct position, the automated process may not achieve the desired result. In the worst case, if any part of the automation system is inadvertently in contact with the wind turbine blade 10, or if too much force is applied to the wind turbine blade 10, the wind turbine blade 10 may be damaged during the automation process. Examples of manufacturing processes that may benefit from automation are sanding and painting operations.
Not only does the manufacturing operation benefit from automation. Test operations such as non-destructive ultrasonic testing also benefit from automation if the parameters of the test equipment can be reliably set and repeated by the automated system. Ultrasonic testing is commonly used in wind turbine manufacturing to detect any voids in the adhesive connection between the beams 18 and the inner surfaces of the leeward pod 20 and the windward pod 22. In order to make the results of the ultrasonic testing reliable, it is critical that the ultrasonic testing tool be positioned perpendicular to the surface of the wind turbine blade 10 at each point where a reading is to be taken.
Fig. 4 shows a schematic view of a portion of a wind turbine blade 10 during an automatic ultrasonic non-destructive testing process in which a robotic arm 30 supports an ultrasonic non-destructive testing tool 40 proximate to an outer surface 23 of a windward nacelle 22 of the wind turbine blade 10. The robotic arm 30 includes a plurality of substantially rigid links 32, the links 32 being connected at movable joints 34 such that the links 32 are movable relative to one another to position the tool 40 in a testing position proximate the outer surface 23 of the windward pod 22. The tool 40 is mounted to a bracket 36 (see fig. 5) at the unsupported end of the robotic arm 30. The brackets 36 are connected to the robotic arm 30 by joints 34 to allow precise positioning of the tool proximate to the outer surface 23 of the wind turbine blade 10.
As will be appreciated by those skilled in the art of process automation, the robotic arm 30 may be mounted on a movable support (not shown) such that the robotic arm is movable relative to the wind turbine blade 10. Further, it should be appreciated that the rigid links 32 may be telescoping such that they may change length, and the joints 34 may be configured to allow the rigid links 32 to move in all rotational degrees of freedom relative to one another. The rigid links 32 and joints 34 of the robotic arm are actuated by motors (not shown) controlled by one or more motor controllers.
It should be appreciated that the robotic arm 30 may be configured to position the tool 40 proximate any outer surface of the wind turbine blade 10, and that placement of the tool proximate the outer surface 23 of the windward pod 22 as shown in fig. 4 is by way of example only.
Fig. 5 shows the tool 40 mounted on the bracket 36. The tool 40 is an ultrasonic non-destructive testing tool comprising an ultrasonic transmitter 41 surrounded by a plurality of ultrasonic receivers 42. The tool 40 is connected to a signal processor configured to compile data obtained by the tool 40 into a form that can be interpreted automatically or manually.
As is well known in the art of ultrasonic non-destructive testing, it is critical to precisely position the tool 40 relative to the surface of the workpiece to be inspected. In this case, the surface of the work piece is the outer surface 23 of the wind turbine 10. To ensure reliable data collection, it is of paramount importance that the precise distance and orientation of the tool 40 relative to the workpiece be correct. In particular, it is critical that the ultrasonic waves emitted by the ultrasonic emitter 41 enter the surface of the workpiece in a direction perpendicular to the surface of the workpiece. This ensures that the sound waves penetrate symmetrically into the workpiece. In view of the fact that ultrasonic non-destructive testing relies on the time difference between the emission of sound waves into the workpiece and the receipt of sound waves reflected back by the internal structure of the workpiece, it is apparent that symmetric propagation of sound waves into the workpiece is critical to the accuracy of the collected data.
The ultrasonic transmitter 41 is located at a tool origin 50 that coincides with a robot tool origin defined by a Cartesian coordinate system 24 having an x-axis 48 and a y-axis 49. Tool 40 includes a tool arm 39 extending along an x-axis 48 away from a tool center 50. A guide 43 comprising a laser projector 44 and a digital camera 47 is mounted on the tool arm 39. The laser projector 44 is configured to project a plane of laser light 45 toward the tool origin 50 such that the laser line 46 is projected onto the workpiece in use. The camera 47 is configured to detect the laser line 46 and to communicate the size and shape of the detected laser line 46 as input to the tool position control system.
Referring again to fig. 4, in use, the robotic arm 30 moves the tool 40 along a tool path 38, the tool path 38 extending from the leading edge side of the wind turbine blade 10 towards the trailing edge side of the wind turbine blade 10, and vice versa. As the robotic arm 30 moves the tool 40 along the path 38, the tool 40 scans the strip of the wind turbine blade 10. Once the tool 40 has been moved along the path 38, the robotic arm 30 moves the tool 40 in the spanwise direction of the wind turbine blade 10 so that adjacent strips of the wind turbine blade 10 may be scanned. In this way, the entire surface of the wind turbine blade 10, or a specific portion thereof, may be scanned by the tool 40. To optimize the efficiency of tool movement, the tool 40 travels in one direction along the path 38 (e.g., from the leading edge 14 to the trailing edge 16) in one pass of the tool 40 and in the opposite direction along the path 38 (e.g., from the trailing edge 16 to the leading edge 14) in a subsequent pass. This operation is repeated until the desired scan area is covered by tool 40.
Fig. 6 shows a schematic view of the plane of a laser light 45 generating a laser line 46 on the surface 23 of the wind turbine blade 10. The robotic arm 30 and tool 40 are omitted from this view for clarity. As can be seen in fig. 6, the plane of the laser light 45 is projected in a direction perpendicular to the tool path 38.
As shown in fig. 7, the camera 47 has a defined field of view 51, the field of view 51 being shown in an enlarged view in the detail of fig. 7. As described above, the outer surface 23 of the wind turbine blade 10 includes a number of complex curves. This is illustrated in fig. 7 by the convex curve of the outer surface 23 at the tool position along the path 38 corresponding to the field of view 51. As described above, in order to obtain accurate and reliable readings from the non-destructive ultrasonic testing tool 40, it is critical that the tool 40 be oriented such that the ultrasonic waves enter the surface of the workpiece in a direction perpendicular to the surface of the workpiece. In the case of a convex curved surface as shown in fig. 7, the ultrasonic waves have to enter the work piece in a direction parallel to the normal 52 of the tangent 53 to the surface 23 of the wind turbine blade 10. Thus, referring to fig. 5, in practice, the z-axis (not shown) perpendicular to the x-axis 48 and y-axis 49 of the robotic cartesian coordinate system 24 must be parallel to the normal 52 to the surface 23 in order for the tool 40 to obtain high integrity data as it passes over the surface 23.
The projection of the laser line 46 onto the surface 23 of the wind turbine 10 is used to determine the position and orientation of the tool 40 relative to the surface 23. In one example, the distance of tool 40 from surface 23 may be determined by detecting laser lines 46 on surface 23 using camera 47 and converting the detected image into a computer readable format. In one approach, the number of pixels occupied by the laser line 46 in the detected image may be used to determine the distance of the camera 47 from the laser line 46. This may be done by using a look-up table or by direct calculation or by any other suitable method known to a person skilled in the art. Because the distance of the laser projector relative to the tool center 50 is known, the distance from the surface 23 of the wind turbine blade 10 to the tool center 50 along the z-axis of the robotic Cartesian coordinate system 24 can be calculated. Other methods of determining the distance of tool 40 from surface 23 from image data collected by camera 47 are also known in the art and may be used without prejudice in place of the distance-determining pixel method described above.
As described above, the projection of laser line 46 onto surface 23 is also used to determine the orientation of tool 40 relative to surface 23. In one example, the image data collected by the camera 47 is processed using methods known in the art to determine a tangent 53 to the surface 23 at a point intersecting the laser line 46 and the x-axis 48 of the robot coordinate system 24. In an alternative method, the image data collected by the camera 47 may be processed using methods known in the art to determine the location of the vertices of the laser line 46, where the tangent line 53 may then be determined. In yet another example, a combination of these methods may be used such that any difference between the calculated tangent 53 at the intersection of the x-axis 48 and the laser line 46 may be compared to the calculation of the tangent 53 at the vertex. Appropriate adjustments may be made if desired. Other methods of determining the orientation of tool 40 relative to surface 23 from image data collected by camera 47 may be used without prejudice in lieu of the methods described above.
Once the tangent 53 has been determined, the normal 52 to the surface 23 can be determined and the z-axis of the robot cartesian coordinate system 24 aligned therewith. In one example, a control system (described below) may operate under the same assumption that the normal 52 to the surface 23 is at the tool center 50 as at the laser line 46. Alternatively, tangent 53 and normal 52 data may be stored and recalled for later use. For example, data about tangent 53 and normal 52 to surface 23 may be determined and stored at one pass of tool 40 over surface 23 and then recalled for use in a subsequent pass of tool 40 over surface 23. Since the distance deltas between the tool center 50 and the laser line projection 46 is known, the most appropriate tangential line 53 and normal line 52 measurements can be selected based on the current position of the tool 40. This is useful, for example, where the curvature or other characteristics of the surface are variable over the field of view 51 of the camera 47.
As described above, if the tool 40 applies excessive pressure to the surface 23, the tool 40 may damage the surface 23 of the wind turbine blade. To prevent this possibility, the robotic arm 30 may also be provided with a force sensor (not shown) located between the tool 40 and the robotic arm 30. The force sensor is configured to sense a resultant force vector applied by the tool 40 to the surface 23 as the tool 40 passes over the surface 23.
An alternative method of determining the force applied by tool 40 to surface 23 is shown in fig. 8. In fig. 8, the illustrated robotic arm 30 includes three rigid links 32a,32b,32c,32d and four joints 34a,34b,34c,34d. To determine the resultant force vector applied to surface 23 by tool 40, the sum of the moments applied by the motor to each joint 34a,34b,34c,34d may be calculated. In one method known to those skilled in the art, a baseline measurement of motor current consumption is made for all angles of joints 34a,34b,34c,34d, and a change calculation is made to calculate the force applied to surface 23 by measuring motor load at high frequency during use.
It is known to control the path of a robotic system in an automated process in a number of ways, including: manual programming, wherein the automated machine motion is programmed using spatial coordinate assignments referencing the position of the robotic joint relative to known points in space; laser array scanning/computed tomography, wherein a point cloud is generated using advanced laser surface scanning and converted into an artificial part surface; tool path control based on CAD/CAM model; and an on-board touch trainer, wherein the robot is placed in an idle mode and manually guided by a person to train the path taken by the robot. Each of these known methods has the disadvantage that they are either too stiff and therefore unsuitable for use with wind turbine blades that are difficult to position accurately in space, or too time and labor intensive to use with large structures such as wind turbine blades. These problems can be overcome by using feedback received from the guiding means 43.
Fig. 9 shows a schematic flow diagram of a control system 60 suitable for use with the tool 40 and the robotic arm 30 described above. In step 61, the tool 40 is positioned according to the primary path control model that has been generated by one of the methods described above. The tool 40 is positioned relative to the tool center 50. In step 62, the distance of tool 40 from surface 23 is determined using the data produced by camera 47 when it detects laser line 46. If the distance of tool 40 is greater than a predetermined distance X, tool 40 is moved toward surface 23 at speed A (predetermined distance X may be referred to as a second predetermined distance). This is represented by steps 63 and 64. Alternatively, if the distance between tool 40 and surface 23 is less than X, tool 40 is moved toward surface 23 at a speed B, where speed B is less than speed a. This is represented by steps 63 and 65.
Next, at step 66, the distance of tool 40 from surface 23 is determined. If the distance of tool 40 is greater than the predetermined distance Y, tool 40 is moved toward surface 23 at a speed B. This is represented by steps 67 and 65. Alternatively, if the distance between the tool 40 and the surface 23 is less than or equal to Y, the approaching of the tool 40 is stopped. This is indicated by steps 67 and 68.
The magnitude and direction of the force applied by the tool 40 to the surface 23 is determined directly by using force sensors, or indirectly by the sum of the moments applied to the tool 40 by the motors actuating the joints 34a,34b,34c,34d of the robotic arm 30, step 69. If the force is greater than the predetermined force Z, tool 40 is moved away from surface 23 to a distance greater than Y. This is represented by steps 70 and 71. The process then returns to step 65. Alternatively, if the force is less than or equal to Z, the normal 52 of the surface 23 is calculated, or the normal 52 of the surface 23 is retrieved from a store of pre-measured normals. This is represented by steps 70 and 72.
At step 73, it is determined whether the z-axis of the robot Cartesian coordinate system 24 is parallel to the normal 52. If not, the orientation of tool 40 is moved so that the z-axis is more nearly parallel to normal 52. This is represented by steps 73 and 74. This cycle is repeated until the z-axis is parallel to normal 52.
If/when the z-axis is parallel to normal 52, tool 40 is operated to obtain a reading at step 75. Tool 40 is then moved to the next position according to the main path control model, as shown in steps 76 and 61. The process is then repeated until the last point specified by the main path control model. If desired, the process may move directly from step 61 to step 66 in a second and subsequent iteration, as indicated by the dashed line in FIG. 9.
Fig. 10 shows a schematic diagram of an exemplary system architecture 80 suitable for implementing the control system 60. In the exemplary architecture 80, the camera 47 detects the laser lines 46 on the surface 23 of the wind turbine blade 10 and provides input signals 81 to an image processor 82, the image processor 82 being configured to determine one or more relative positions of the tool 40 relative to the surface 23 using any suitable method known to those skilled in the art. The image processor 83 may be configured to determine the distance of the tool 40 from the surface 23, and/or the angle of the tool 40 relative to a tangent 53 or normal 52 to the surface 23. The image processor 82 then provides the determined relative position of the tool 40 as an input 83 to a relative position controller 84.
The relative position controller 84 is configured to issue a relative position control signal 85 based on whether the determined relative position of the tool 40 is greater than or less than a predetermined value or within a predetermined range. The relative position control signal 85 is provided as an input to the tool position controller 86.
Alternatively, the image processor 82 may provide the determined relative position of the tool 40 as an input 83 to the tool speed controller 87. The tool speed controller 87 is configured to issue a speed control signal 88 based on whether the determined relative distance of the tool 40 is greater than or less than a predetermined value or within a predetermined range. The speed control signal 88 is provided as an input to the tool position controller 86.
Alternatively, a force reading 89 may be provided to the force controller 90. As described above, the force readings 89 may be obtained from force sensors located between the tool 40 and the robotic arm 30, or the force readings may be calculated from the sum of motor torques at each joint 34a,34 c,34d of the robotic arm 30. The force controller 90 is configured to issue a force control signal 91 based on whether the measured or calculated force reading 89 is greater than or less than a predetermined value or within a predetermined range. The force control signal 91 is provided as an input to the tool position controller 86.
The main path control mode 92 is used to provide a main control signal 93 as an input to the tool position controller 86, the tool position controller 86 being configured to determine a motor control signal 94 based on the relative position control signal 85 and the main control signal 93 (and optionally also based on the speed control signal 88 and/or the force control signal 91).
The main control signal 93 and the relative position control signal 85 may be used to determine the motor control signal 94 by a preferential superposition method of the main control signal 93 and the relative position control signal 85, which methods are well known to those skilled in the art.
The motor control signals 94 are provided as inputs 94 to one or more motor controllers 95, the motor controllers 95 controlling the motors to control the position of the tool 40 relative to the surface 23 of the wind turbine blade 10.
It will be apparent to those skilled in the art that the example system architecture 80 is merely an example, and that many different system architectures may be used. In particular, any one or more of the image processor 82, the relative position controller 84, the tool speed controller 87, the force controller 90, the tool position controller 86, and the motor controller 95 may be implemented by one or more computer systems programmed to control the movement of the tool 40.
It is not necessary that the laser projector 45 face the tool center 50. In another embodiment (not shown), the laser 45 may be directed away from the tool center. Similarly, it is not necessary that the camera 47 and/or laser projector 45 be mounted on the tool 40. The camera 47 and/or the laser projector 45 may be mounted on the robotic arm 30. Assuming that the relative position between the tool center 50 and the laser projector 45 is known, the necessary calculations can be performed.
A light source other than a laser may be used to project an image onto the workpiece. Similarly, shapes other than single lines, such as circles or rectangles, may be projected.
As noted above, the tool control methods disclosed herein may be used to control tools other than non-destructive testing tools. Examples include paint applicators, sanders, and polishers.
It will be clear to those skilled in the art that the use of the described techniques is not limited to wind turbine blade testing and manufacturing, or is generally not limited to composite component manufacturing. The described techniques may be used in any application in which it is desirable to automate a process that requires accurate positioning of a tool on a workpiece attachment.
Claims (27)
1. A method of controlling a position of a tool (40) relative to a workpiece (10), wherein the tool (40) is mounted on a robotic arm (30), and wherein a position of the tool (40) is steerable by a plurality of motors (34), the plurality of motors (34) being controlled by one or more motor controllers (95), the method comprising:
projecting an image (46) onto the workpiece (10) from a projector (44) mounted on the tool (40) or on the robotic arm (30), wherein the projected image (46) comprises lines;
detecting the projected image (46) using a camera (47) mounted on the tool (40) or on the robotic arm (30);
determining a relative position of the tool (40) with respect to the workpiece (10) using the detected image (46); and
providing the determined relative position as an input (83) to a relative position controller (84),
wherein the relative position controller (84) is configured to:
comparing the determined relative position of the tool (40) with a predetermined value or range of predetermined values; and
-if the determined relative position of the tool (40) is not equal to or within the predetermined value range, issuing a relative position control signal (85) to a tool position controller (86), wherein the relative position control signal (85) comprises instructions to move the tool (40) to a new position in which the relative position of the tool (40) is closer to the predetermined value or to the predetermined value range; or alternatively
-issuing a relative position control signal (85) to the tool position controller (86) if the determined relative position of the tool (40) is equal to or within the predetermined value, wherein the relative position control signal (85) comprises instructions to keep the tool (40) in its current relative position,
wherein the tool position controller (86) is configured to determine a motor control signal (94) using the relative position control signal (85), and wherein the tool position controller (86) is configured to issue the motor control signal (94) to the one or more motor controllers (95).
2. The method according to claim 1, the method comprising:
providing a computer-readable main path control model (92);
-generating a main control signal (93) using the main path control model (92);
-providing the main control signal (93) as an input to the tool position controller (86), wherein the tool position controller (86) is configured to:
-determining the motor control signal (94) using the main control signal (93) and the relative position control signal (85).
3. The method of claim 2, wherein determining the motor control signal (94) using the main control signal (93) and the relative position control signal (85) comprises a preferential superposition of the main control signal (93) and the relative position control signal (85).
4. The method according to any one of the preceding claims, wherein determining the relative position of the tool (40) with respect to the workpiece (10) using the detected image (46) comprises determining a relative angular position between the tool (40) and the workpiece (10), and wherein the step of issuing the relative position control signal (85) comprises issuing a relative position control signal (85), the relative position control signal (85) comprising instructions to bring the relative angular position closer to the predetermined value or closer to the predetermined range of values.
5. The method of claim 4, wherein determining the relative angular position of the tool (40) relative to the workpiece (10) using the detected image (46) comprises determining a tangent (53) to the workpiece (10).
6. The method according to any of the preceding claims, wherein the relative position of the tool (40) is determined with respect to a specific feature of the tool (40).
7. The method of claim 5, wherein determining the tangent (53) to the workpiece (10) using the detected image (46) comprises: determining a position of a vertex of a portion of a surface (23) of the workpiece (10); and determining the tangent (53) to the workpiece (10) at the vertex.
8. The method of claim 7, wherein the portion of the surface (23) of the workpiece (10) corresponds to a field of view (51) of the camera (47).
9. The method of any of the preceding claims, comprising providing the determined relative position as an input to a tool speed controller (87), wherein the tool speed controller (87) is configured to:
comparing the determined relative position of the tool (40) with a second predetermined value or with a second predetermined range of values; and
-issuing a speed control signal (88) if the determined relative position of the tool (40) is greater than or not within the second predetermined value, the speed control signal comprising instructions to move the tool (40) towards the new position at a first rate of change of relative position; or alternatively
Issuing a speed control signal (88) if the determined relative position of the tool (40) is less than or equal to the second predetermined value or within the second predetermined range of values, the speed control signal comprising instructions to move the tool (40) towards the new position at a second relative position change rate, wherein the second relative position change rate is less than the first relative position change rate,
wherein the tool position controller (86) is configured to use the speed control signal (88) to determine the motor control signal (94).
10. The method of claim 9, wherein the tool speed controller (87) is integral with the relative tool position controller (84).
11. The method according to any of the preceding claims, comprising repeating the method until the determined relative position of the tool (40) is equal to or within the predetermined value.
12. The method according to any one of the preceding claims, comprising determining the relative position of the tool (40) with respect to the workpiece (10) at a predetermined frequency.
13. The method of any of the preceding claims, wherein the projector (44) is a laser projector.
14. The method according to any one of the preceding claims, wherein the camera (47) is a digital camera, and wherein the detected image (46) is converted into a computer readable format.
15. The method according to any of the preceding claims, the method comprising:
determining a magnitude of a force vector applied to the workpiece by the tool (40);
providing the determined magnitude of the force vector as an input (89) to a force controller (90), wherein the force controller (90) is configured to:
comparing the determined magnitude of the force vector with a predetermined value or range of predetermined values; and
issuing a force control signal (91) if the determined magnitude of the force vector is not equal to or within the predetermined value range, wherein the force control signal (91) comprises instructions to bring the magnitude of the force closer to or closer to the predetermined value range; or alternatively
Issuing a force control signal (91) if the determined magnitude of the force vector is equal to or within the predetermined value, wherein the force control signal (91) comprises instructions to hold the tool (40) in its current relative position,
wherein the tool position controller (86) is configured to determine the motor control signal (94) using the force control signal (91).
16. The method of claim 15, wherein the force controller (90) is integral with the relative tool position controller (84).
17. A method according to claim 15 or 16, comprising repeating the method until the determined magnitude of the force vector is equal to or within the predetermined value.
18. The method of claim 17, comprising determining the magnitude of the force vector at a predetermined frequency.
19. The method of any of claims 15 to 18, wherein the tool position controller (86) is configured to prohibit movement of the tool (40) toward the workpiece (10) if the determined magnitude of the force vector is greater than or equal to a predetermined maximum value.
20. The method of any of claims 15 to 19, wherein determining the magnitude of the force vector comprises determining a sum of force vectors applied to the tool (40) by the motor (34).
21. The method of any of claims 15 to 20, wherein determining the magnitude of the force vector comprises obtaining a force measurement from a force sensor located between the tool (40) and the robotic arm (30).
22. A robotic arm (30), the robotic arm comprising:
-a tool (40) mounted on the robotic arm (30);
-a plurality of motors (34) configured to operate the robotic arm (30) and/or the tool (40);
a projector (44) mounted on the tool (40) or on the robotic arm (30);
-a camera (47) mounted on the tool (40) or on the robotic arm (30); and
apparatus adapted to perform the steps of the method of any one of claims 1 to 20.
23. The robotic arm (30) of claim 22, comprising a force sensor between the tool (40) and the robotic arm (30) and means adapted to perform the steps of the method of claim 21.
24. The robotic arm (30) of claim 22 or 23, wherein the tool (40) comprises a non-destructive testing device, a paint applicator, an abrasive tool, or a polishing tool.
25. A computer program comprising instructions for causing a robotic arm (30) of claim 22 to perform the steps of the method of any one of claims 1 to 20.
26. A computer program comprising instructions for causing a robotic arm (30) of claim 23 to perform the steps of the method of any one of claims 1 to 21.
27. A computer readable medium on which a computer program according to claim 25 or 26 is stored.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163211581P | 2021-06-17 | 2021-06-17 | |
US63/211,581 | 2021-06-17 | ||
DKPA202170415 | 2021-08-18 | ||
PCT/DK2022/050121 WO2022262917A1 (en) | 2021-06-17 | 2022-06-07 | Control of a tool mounted on a robotic arm |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117580685A true CN117580685A (en) | 2024-02-20 |
Family
ID=89888657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280045870.3A Pending CN117580685A (en) | 2021-06-17 | 2022-06-07 | Control of a tool mounted on a robotic arm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117580685A (en) |
-
2022
- 2022-06-07 CN CN202280045870.3A patent/CN117580685A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107052950B (en) | A kind of complex-curved sanding and polishing system and method | |
Mineo et al. | Robotic path planning for non-destructive testing–A custom MATLAB toolbox approach | |
CA2012449C (en) | Machine vision system | |
US5536916A (en) | Method for performing automatic alignment-adjustment of laser robot and the device | |
US20070251072A1 (en) | Adaptive machining and weld repair process | |
EP1760427B1 (en) | Methods for measuring the nozzle flow area between gas turbine engine vanes | |
CN106903663B (en) | A kind of positioning and marking method, the apparatus and system of the built-in part of revolving shell | |
JP2008539431A (en) | Method for scanning the surface of a workpiece | |
WO2018082346A1 (en) | Method and device for correcting the shape of deformed blade by laser peening | |
CN114485488B (en) | Automatic measurement system and measurement method for exhaust area of turbine guider | |
US10139806B2 (en) | Systems and methods for coordinate transformation using non-destructive imaging | |
CN108274187A (en) | A kind of complex curved surface parts defect repair system and restorative procedure | |
JP5001330B2 (en) | Curved member measurement system and method | |
EP3567340A1 (en) | Visual inspection arrangement | |
CN112376045A (en) | Three-dimensional repair method and system for irregular geometric shapes | |
US9409278B2 (en) | Method and system for the ply-by-ply machining of a component made of composite material, by applying energy | |
CN116372305A (en) | Extensible automatic solder coating system and method | |
Yao et al. | Two-sided ultrasonic surface rolling process of aeroengine blades based on on-machine noncontact measurement | |
JP2007292474A (en) | Three-dimensional shape measuring device | |
US5345687A (en) | Noncontact tracing control device | |
US20240308083A1 (en) | Control of a tool mounted on a robotic arm | |
CN117580685A (en) | Control of a tool mounted on a robotic arm | |
CN110006339A (en) | A kind of antenna reflector answers material die face precision on-position measure method and system | |
CN111300490A (en) | Robot track generation system and method based on depth vision sensor | |
Gong et al. | Optimal profile generation in distorted surface finishing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |