Robot track measuring system, robot track measuring method and robot driving method
The robot trajectory measurement system addresses the challenge of calculating robot trajectories by using markers, imaging units, and trajectory calculation units, achieving high accuracy and cost-effectiveness in trajectory calculation and actual work precision.
Patent Information
- Application Number
- JP2023194709
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-15
- Publication Date
- 2025-05-27
AI Technical Summary
It is technically difficult to calculate the trajectory of a robot using a laser tracker.
A robot trajectory measurement system that includes a plurality of markers arranged on a robot arm, an imaging unit to image the markers during operation, and a trajectory calculation unit to calculate the robot arm's trajectory based on the acquired images.
Enables high-accuracy calculation of the robot arm's trajectory using optical motion capture technology, reducing the cost compared to systems using laser trackers and allowing for precise actual work.
Smart Images

Figure 2025081142000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a robot trajectory measurement system, a robot trajectory measurement method, and a robot driving method.
Background Art
[0002] Patent Document 1 discloses a robot control system that adjusts the position and inclination of a robot hand using a laser tracker.
[0003] The robot control system described in Patent Document 1 includes a robot, a stereo camera, a position detection device, and a control device. The robot has a robot hand that grips a clip and a robot body portion that supports the robot hand. The stereo camera is disposed at a position where it can image the bottom surface of the clip gripped by the robot hand. The position detection device includes a laser tracker, a reflector installed on the robot hand, and a reflector installed on the stereo camera. The laser tracker irradiates laser light to each reflector and receives the laser light reflected by each reflector to acquire the three-dimensional position of each reflector, and based on the three-dimensional position of each reflector, acquires the three-dimensional position of the robot hand.
[0004] The control device includes a calculation unit and a robot control unit. The calculation unit calculates the coordinate information of the imaged clip and the position and inclination of the clip with respect to the stereo camera based on the image acquired by the stereo camera.
[0005] On the one hand, the robot control unit adjusts the position of the robot hand with respect to the stereo camera based on the three-dimensional position of the robot hand acquired by the laser tracker, and moves the robot hand to the fixed imaging position. Further, the robot control unit adjusts the position and inclination of the robot hand based on the position and inclination of the robot hand with respect to the stereo camera calculated by the calculation unit. Furthermore, the robot control unit controls the robot hand so that the clip held by the robot hand moves along the movement path.
Prior Art Documents
Patent Documents
[0006]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0007] However, it is technically difficult to calculate the trajectory of the robot using a laser tracker.
Means for Solving the Problems
[0008] The robot trajectory measurement system of the present invention includes a plurality of markers arranged on a robot arm, an imaging unit that images the plurality of markers during the operation of the robot arm, and a trajectory calculation unit that calculates the trajectory of the robot arm based on the image acquired by the imaging unit.
[0009] The robot trajectory measurement method of the present invention arranges a plurality of markers on a robot arm, performs motion capture for tracking the markers based on an image obtained by the imaging unit imaging the plurality of markers during the operation of the robot arm, and calculates the trajectory of the robot arm based on the result of the motion capture.
[0010] The robot driving method of the present invention arranges a plurality of markers on a robot arm, During the operation of the robot arm, motion capture is performed to track the markers based on an image obtained by an imaging unit capturing the plurality of markers, and the trajectory of the robot arm is calculated based on the result of the motion capture. The driving conditions of the robot arm are changed so that the difference between the calculated trajectory and the target trajectory becomes small. The robot arm is driven under the changed driving conditions.
Brief Description of the Drawings
[0011]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Modes for Carrying Out the Invention
[0012] Hereinafter, the robot trajectory measurement system, the robot trajectory measurement method, and the robot driving method of the present invention will be described in detail based on the embodiments shown in the accompanying drawings.
[0013] FIG. 1 is an overall view of a robot system according to a preferred embodiment. FIG. 2 is a side view showing a robot included in the robot system shown in FIG. 1. FIG. 3 is a plan view showing a moving stage included in the robot shown in FIG. 2. FIG. 4 is a perspective view showing a print head included in the robot shown in FIG. 2. FIG. 5 is a perspective view showing an orbit detection jig included in the robot shown in FIG. 2. FIG. 6 is a flowchart showing a process of calculating an orbit. FIG. 7 is a flowchart showing a process of controlling a robot.
[0014] The robot system 1 shown in FIG. 1 is applied to, for example, a printing system that performs a printing operation on a workpiece W. However, the application example of the robot system 1 is not particularly limited. The robot system 1 includes a robot 2 having a robot arm 22, an information processing device 4 that generates a drive command for the robot 2, a control device 3 that controls the drive of the robot 2 based on the drive command generated by the information processing device 4, and a robot orbit measurement system 5 that calculates the orbit of the robot arm 22.
[0015] In such a robot system 1, first, the target orbit of the robot arm 22 during actual work is taught, and a drive command is generated in the information processing device 4 based on the teaching result. Next, the control device 3 actually operates the robot arm 22 based on the drive command. At this time, the robot orbit measurement system 5 calculates the actual orbit, which is the actual orbit of the robot arm 22, using an optical motion capture technique. Then, the information processing device 4 compares the actual orbit with the target orbit, and if the deviation exceeds the allowable range, the drive command is changed so that the deviation between the actual orbit and the target orbit becomes smaller, preferably, so that the actual orbit and the target orbit match, and an actual drive command is generated. Then, during actual work, the control device 3 controls the drive of the robot arm 22 based on the actual drive command.
[0016] According to such a system, since the actual trajectory is calculated by motion capture, the calculation of the actual trajectory can be performed with high accuracy. Further, for example, a robot trajectory measurement system 5 can be introduced at a lower cost than a laser tracker as described in the prior art.
[0017] Hereinafter, each part constituting the robot system 1 will be described in order.
[0018] ≪Robot≫ As shown in FIG. 2, the robot 2 is a six-axis vertical articulated robot having six drive axes, and includes a base 21 fixed to a mounting table, a floor, etc., and a robot arm 22 rotatably connected to the base 21. The robot arm 22 includes a robot arm main body 220, a moving stage 23 disposed at the tip of the robot arm main body 220, and an end effector 24 disposed on the moving stage 23.
[0019] The robot arm main body 220 has a configuration in which six arms 221, 222, 223, 224, 225, and 226 are rotatably connected in this order from the base 21 side, and includes six joints J1, J2, J3, J4, J5, and J6. Specifically, the arm 221 is rotatably connected to the base 21 via the joint J1, the arm 222 is rotatably connected to the arm 221 via the joint J2, the arm 223 is rotatably connected to the arm 222 via the joint J3, the arm 224 is rotatably connected to the arm 223 via the joint J4, the arm 225 is rotatably connected to the arm 224 via the joint J5, and the arm 226 is rotatably connected to the arm 225 via the joint J6.
[0020] Among the joints J1 to J6, joints J2, J3, and J5 are bending joints, respectively, and joints J1, J4, and J6 are torsion joints, respectively. Each of the joints J1, J2, J3, J4, J5, and J6 is provided with a drive mechanism including a motor, a speed reducer that decelerates the rotation of the motor to increase torque and outputs it, and an encoder that detects the amount of rotation of the joint. By moving each of the joints J1, J2, J3, J4, J5, and J6 independently, the robot arm main body 220 can be moved in a desired direction at a desired posture and speed.
[0021] The moving stage 23 is disposed at the tip of the robot arm main body 220, that is, on the arm 226. The moving stage 23 is used, for example, for position correction of the end effector 24. As shown in FIG. 3, the moving stage 23 includes a base 230 supported by the arm 226, a first stage 231 that linearly moves in a first direction A with respect to the base 230, and a second stage 232 that linearly moves in a second direction B orthogonal to the first direction A with respect to the first stage 231. The end effector 24 is disposed on the second stage 232.
[0022] The moving stage 23 further includes a first stage drive unit 235 that moves the first stage 231 along the first direction A with respect to the base 230, and a second stage drive unit 236 that moves the second stage 232 along the second direction B with respect to the first stage 231. The first and second stage drive units 235 and 236 each include a piezoelectric actuator 237 that is driven by utilizing the expansion and contraction of a piezoelectric element by energization, and the vibration of the piezoelectric actuator 237 is transmitted to the first and second stages 231 and 232 to move them. By using the piezoelectric actuator 237 in this way, the moving amount and moving speed of the first and second stages 231 and 232 can be controlled finely and with high precision, and the switching of the moving direction can also be made sensitive. In addition, the size and weight of the moving stage 23 can be reduced. Therefore, the position correction of the end effector 24 can be performed more accurately.
[0023] However, the configuration of the moving stage 23 is not particularly limited. For example, the first and second stage driving units 235 and 236 may be configured to use a driving source other than the piezoelectric actuator 237, such as a motor that rotates when energized. Further, the moving stage 23 may further include a third stage that linearly moves in a direction orthogonal to the first direction A and the second direction B, or a fourth stage that rotates around an axis orthogonal to the first direction A and the second direction B. Also, the moving stage 23 may be omitted. In this case, the end effector 24 may be directly arranged on the arm 226 of the robot arm main body 220.
[0024] The end effector 24 is arranged on the second stage 232. Also, as shown in FIGS. 4 and 5, the end effector 24 includes a print head 25 used during actual work by the robot 2, that is, during printing work on the workpiece W, and a trajectory detection jig 26 used during teaching of the robot 2, and these are selectively used according to the situation.
[0025] The print head 25 shown in FIG. 4 is used during actual work by the robot 2, that is, during printing work on the workpiece W. The print head 25 is a piezo-driven inkjet head. The piezo-driven inkjet has an ink chamber, a diaphragm that forms part of the wall surface of the ink chamber, a piezo element that vibrates the diaphragm, and a nozzle 251 connected to the ink chamber. In such a configuration, when a voltage is applied to the piezo element to vibrate the piezo element, the diaphragm vibrates and the ink in the ink chamber is ejected from the nozzle 251. A plurality of such nozzles 251 are arranged side by side on the tip surface of the print head 25, and by independently controlling the ejection / non-ejection of ink from each nozzle 251 for each control cycle, a desired image can be printed on the workpiece W.
[0026] However, the configuration of the print head 25 is not particularly limited. For example, the print head 25 is not limited to the piezo drive method described above, and may be a thermal method using the film boiling phenomenon of ink, a bubble ejection method that generates bubbles in the ink by applying heat to eject the ink, an electrostatic actuator method that displaces and vibrates a diaphragm by electrostatic force to eject the ink, or other inkjet heads.
[0027] The trajectory detection jig 26 shown in FIG. 5 is used during teaching of the robot 2. The trajectory detection jig 26 has a shape and weight corresponding to the print head 25. More preferably, it has a center of gravity position similar to that of the print head 25. Such a trajectory detection jig 26 includes a plate-shaped base 261 connected to the second stage 232, a plurality of rod-shaped pins 262 extending from the base 261, and a weight 264 disposed on the base 261. In addition, a spherical marker 50 is provided at the tip of each pin 262. Note that the marker 50 is an element included in the robot trajectory measurement system 5.
[0028] The base 261 is plate-shaped and has a front surface and a back surface that are in a front-back relationship. The markers 50 are arranged on the front surface side, and the weight 264 is arranged on the back surface side. In this way, by arranging the markers 50, the weight 264, and the base 261 on opposite sides of each other, the degree of freedom in installing the markers 50 increases. Therefore, the robot trajectory measurement system 5 can accurately track and label each marker 50. However, the shape of the base 261 and the position of the markers 50 with respect to the base 261 are not particularly limited, and can be appropriately set according to the configuration of the end effector used during actual work, the target trajectory, and the like.
[0029] The weight 264 is provided to bring the weight and the center of gravity position of the jig 26 for orbit detection closer to, preferably to match, those of the print head 25. That is, the weight 264 is arranged such that the weight difference from the jig 26 for orbit detection and the deviation amount of the center of gravity position are each smaller than those without the weight 264. According to such a configuration, by attaching the jig 26 for orbit detection to the robot arm main body 220, parameters such as torsion, deflection, and vibration generated in the robot 2 when attaching the print head 25 to the robot arm main body 220 and performing actual work can be reproduced more accurately on the actual orbit. That is, the deviation between the actual orbit of the robot arm 22 when the print head 25 is attached and moved along the target orbit and the orbit of the robot arm 22 when the jig 26 for orbit detection is attached and moved along the target orbit can be reduced. Therefore, the orbit of the robot 2 during actual work can be brought closer to, preferably matched with, the target orbit more accurately.
[0030] In addition, for example, when the end effector 24 used in actual work is not the print head 25 but a hand or the like that grips the workpiece W, the arrangement and weight of the weight 264 may be set in consideration of the weight of the workpiece W and the gripping position of the workpiece W. That is, the arrangement and weight of the weight 264 may be set based on the total weight and the center of gravity position of the hand in the state of gripping the workpiece W. Thereby, the deviation between the orbit of the robot arm 22 during actual work and the orbit of the robot arm 22 when the jig 26 for orbit detection is attached and moved along the target orbit can be further reduced.
[0031] Each marker 50 is imaged by a plurality of cameras 51 included in the robot trajectory measurement system 5 and is used to calculate the trajectory of the robot arm 22 using optical motion capture technology. Therefore, by connecting each marker 50 and the base 261 via the pin 262 and separating each marker 50 from the base 261, it becomes difficult for each marker 50 to be hidden by the base 261 as seen from at least one camera 51, and the trajectory of the robot arm 22 can be calculated with higher accuracy. Note that the positional relationship between each marker 50 and the TCP (Tool Center Point) set at the tip of the robot arm main body 220 is known through prior measurement or the like. Each marker 50 is spherical and is composed of a retroreflective material. However, the shape and constituent material of each marker 50 are not particularly limited.
[0032] Each pin 262 is thinner than the diameter of the marker 50 and is preferably as thin as possible as long as it can maintain its rigidity. Thereby, it becomes difficult for each marker 50 to be in the shadow of the pin 262 as seen from at least one camera 51, and the trajectory of the robot arm 22 can be calculated with even higher accuracy.
[0033] However, the configuration of the trajectory detection jig 26 is not particularly limited. For example, at least one marker 50 may be directly arranged on the base 261 without passing through the pin 262, or may be arranged via a member other than the pin 262. Also, the weight 264 may be arranged on the surface side or may be omitted.
[0034] The markers 50 are arranged in three or more on the trajectory detection jig 26. By arranging three or more markers 50 on the trajectory detection jig 26, the orientation of the plane defined by the three markers 50 can be calculated. Therefore, it becomes possible to calculate the trajectory including the position and orientation of the robot arm 22 using the optical motion capture technology. Depending on the orientation of the trajectory detection jig 26, there is a possibility that at least one marker 50 may be in the shadow of the robot arm 22 as viewed from at least one camera 51. Therefore, in the present embodiment, four or more, specifically five markers 50 are arranged on the trajectory detection jig 26. And at each position on the target trajectory, it is configured such that at least three markers 50 are simultaneously imaged by at least two or more cameras 51. That is, while the trajectory detection jig 26 is being moved along the target trajectory, at all times, each of at least three markers 50 is configured to be simultaneously imaged by at least two or more cameras 51.
[0035] Further, the five markers 50 are each arranged along a plane F including the central axis of the arm 226, that is, the rotation axis O6 of the joint J6. In this way, by arranging the five markers 50 along the plane F, it becomes difficult for the markers 50 to come into contact with the robot arm 22 during the operation of the robot arm 22.
[0036] Further, the five markers 50 include one marker 50a located on the rotation axis O6 and four markers 50b spaced apart from the rotation axis O6. By arranging them in such a manner, the five markers 50 can be dispersed and arranged on the plane F. As a result, it becomes easier for the robot trajectory measurement system 5 to identify each marker 50, and tracking and labeling of each marker 50 can be performed accurately. In particular, in this embodiment, a rectangle is defined by the four markers 50b, and the marker 50a is located at the center of the rectangle. That is, the five markers 50 are arranged in a grid pattern. By arranging them in such a manner, it becomes even easier for the robot trajectory measurement system 5 to identify each marker 50, and tracking and labeling of each marker 50 can be performed more accurately.
[0037] Note that the separation distance between two adjacent markers 50 is not particularly limited. For example, it is preferably at least five times the diameter of the marker 50. Thereby, it becomes easier for the robot trajectory measurement system 5 to identify each marker 50, and tracking and labeling of each marker 50 can be performed accurately. Alternatively, the diameters of the respective markers 50 may be made different from each other. Thereby, it becomes easier for the robot trajectory measurement system 5 to identify each marker 50, and tracking and labeling of each marker 50 can be performed accurately.
[0038] However, the configuration of the marker 50 is not particularly limited. For example, the number of markers 50 may be three or four, or may be six or more. Also, at least one marker 50 may be arranged so as to be displaced from the plane F. Further, the arrangement position of the marker 50 is not limited to a dedicated jig, and may be arranged on an actual working tool, and the fixing method may be pasting.
[0039] Although the robot 2 has been described above, the robot 2 is not particularly limited. For example, it may be a horizontal articulated robot (scalar robot).
[0040] ≪Control device 3≫ As shown in FIG. 1, the control device 3 is electrically connected to the robot 2 and controls the driving of the robot 2. Specifically, the control device 3 controls the driving of the robot arm main body 220, the moving stage 23, and the print head 25 independently or in conjunction based on the operation command from the information processing device 4. Such a control device 3 is composed of, for example, a computer and has a processor (CPU) that processes information, a memory communicably connected to the processor, and an external interface for connecting to an external device. Various programs executable by the processor are stored in the memory, and the processor can read and execute the programs stored in the memory and the like.
[0041] ≪Robot Trajectory Measurement System 5≫ As shown in FIG. 1, the robot trajectory measurement system 5 calculates the trajectory of the robot arm 22 using optical motion capture technology. The robot trajectory measurement system 5 includes a plurality of markers 50 arranged on the trajectory detection jig 26, cameras 51 as a plurality of imaging units, and a trajectory calculation unit 52 that calculates the trajectory of the robot arm 22 based on the images acquired by each camera 51.
[0042] The markers 50 are as described above, and the description here is omitted.
[0043] The camera 51 irradiates infrared light toward the marker 50, for example, and captures an image by the infrared light. As described above, since each marker 50 is composed of a retroreflective material, the marker 50 reflects more infrared light toward the camera 51. Therefore, in the image captured by the camera 51, the marker is brighter, that is, displayed white. Then, by binarizing the image into a portion having a whiteness of a certain level or more and other portions, the position of the marker 50 in the image can be accurately detected.
[0044] Such cameras 51 are arranged at least in two or more positions within the robot three-dimensional coordinates set for the robot 2. Thereby, the trajectory of the robot arm 22 can be calculated using the optical motion capture technology. In particular, in the present embodiment, three or more cameras 51 are arranged. Thereby, at each position on the target trajectory, each of at least three markers 50 can be simultaneously imaged by at least two or more cameras 51 more reliably. Each camera 51 is calibrated, and the correspondence between the two-dimensional coordinates of each camera 51 and the robot three-dimensional coordinates is known. The calibration method is not particularly limited, but a method (self-estimation) of estimating the camera parameters of each camera 51 by non-linear optimization by moving a wand (calibrator) in which three reference markers are arranged within the robot three-dimensional coordinates and imaging the state with the camera 51 can be used.
[0045] The plurality of cameras 51 are arranged so as to surround the movable area of the robot arm 22 while preventing contact with the robot arm 22. In other words, the plurality of cameras 51 are arranged scattered in six directions, that is, front and back, left and right, and up and down, with respect to the movable area of the robot arm 22. Thereby, the markers 50 on the trajectory detection jig 26 can be imaged from various directions using the plurality of cameras 51. Therefore, at each position on the target trajectory, each of at least three markers 50 can be simultaneously imaged by at least two or more cameras 51 more reliably. That is, while moving the trajectory detection jig 26 along the target trajectory, each of at least three markers 50 can always be simultaneously imaged by at least two or more cameras 51. As a result, the actual trajectory of the trajectory detection jig 26 can be accurately measured.
[0046] Furthermore, the plurality of cameras 51 are irregularly arranged around the movable area of the robot arm 22. Specifically, they are arranged such that the position, orientation, distance, etc. with respect to the movable area are irregular. By arranging the plurality of cameras 51 irregularly in this way, the calibration of the cameras 51 described above can be performed with high accuracy. However, it is desirable to arrange the plurality of cameras 51 so that there are no blind spots. Also, when they are arranged regularly, it is desirable to arrange them three-dimensionally.
[0047] The trajectory calculation unit 52 detects the position and orientation of the robot arm 22 at each time based on the images acquired by each camera 51, and calculates the actual trajectory of the robot arm 22 by connecting these in time series. Specifically, as shown in FIG. 6, first, the trajectory calculation unit 52 picks up the images captured by each camera 51 at the time t1 when the operation of the robot arm 22 along the target trajectory starts. Next, the trajectory calculation unit 52 picks up at least three or more markers 50 shown in at least two of the picked-up plurality of images. Hereinafter, the picked-up marker 50 will also be referred to as a "selected marker 500".
[0048] Next, for each of the selected markers 500, the trajectory calculation unit 52 picks up two or more images in which the selected marker 500 appears. Hereinafter, the picked-up images will also be referred to as "selected images". Next, for each of the selected markers 500, the trajectory calculation unit 52 calculates the three-dimensional coordinates of the selected marker 500 from the two-dimensional coordinates of the selected marker 500 in each selected image and the camera parameters of the camera 51 that acquired each selected image, that is, the position and orientation on the robot three-dimensional coordinates, based on the principle of triangulation. Next, the trajectory calculation unit 52 calculates the position and orientation of the robot arm 22 at the time t1 based on the calculated coordinates of each selected marker 500.
[0049] Until the operation of the robot arm 22 along the target trajectory ends, the trajectory calculation unit 52 repeatedly calculates the position and orientation of the robot arm 22 by the above method for each calculation cycle. Then, after the operation of the robot arm 22 along the target trajectory ends, by connecting in time series all the calculated positions and orientations of the robot arm 22, the actual trajectory of the robot arm 22, that is, the actual trajectory, when the robot arm 22 is operated along the target trajectory is calculated.
[0050] As described above, the method for calculating the actual trajectory of the robot arm 22 by the trajectory calculation unit 52 has been explained. However, the method for calculating the actual trajectory of the robot arm 22 is not particularly limited as long as an optical motion capture technique is used.
[0051] ≪Information Processing Device 4≫ As shown in FIG. 1, the information processing device 4 is electrically connected to the control device 3 and transmits a drive command for controlling the drive of the robot 2 to the control device 3. Such an information processing device 4 is composed of, for example, a computer and has a processor (CPU) for processing information, a memory communicably connected to the processor, and an external interface for connecting to an external device. Various programs executable by the processor are stored in the memory, and the processor can read and execute the programs and the like stored in the memory.
[0052] Further, the information processing device 4 includes a drive command generation unit 41 for generating a drive command, a trajectory acquisition unit 42 for acquiring the actual trajectory of the robot arm 22 calculated by the robot trajectory measurement system 5, and an analysis unit 43 for analyzing the actual trajectory of the robot arm 22 acquired by the trajectory acquisition unit 42.
[0053] The drive command generation unit 41 generates drive commands for realizing the target trajectory of the robot arm 22 during actual operation created using a teaching pendant or other teaching device, that is, the drive conditions of the robot 2. Then, the drive command generation unit 41 transmits the generated drive commands to the control device 3. The control device 3 controls the drive of the robot 2 with the trajectory detection jig 26 attached as the end effector 24 based on the drive commands received from the drive command generation unit 41. Thereby, the robot arm 22 moves along the target trajectory. And the actual trajectory of the robot arm 22 during this movement is calculated by the robot trajectory measurement system 5.
[0054] The trajectory acquisition unit 42 receives the actual trajectory of the robot arm 22 calculated by the robot trajectory measurement system 5 from the robot trajectory measurement system 5. Then, the analysis unit 43 analyzes the actual trajectory of the robot arm 22 received by the trajectory acquisition unit 42. Specifically, the analysis unit 43 detects the difference between the actual trajectory and the target trajectory of the robot arm 22. Furthermore, the analysis unit 43 identifies the cause of the detected difference. For example, the analysis unit 43 identifies whether the difference between the actual trajectory and the target trajectory is caused by the deflection or torsion of the robot arm 22, or is caused by the vibration of the robot arm 22, etc. The identification can be performed, for example, based on the frequency components included in the actual trajectory.
[0055] Returning to the description of the drive command generation unit 41, the drive command generation unit 41 changes the drive commands based on the analysis result of the analysis unit 43 so that the actual trajectory approaches, preferably coincides with, the target trajectory. That is, the drive command generation unit 41 changes the drive commands so that the difference between the actual trajectory and the target trajectory becomes smaller. For example, for the deviation caused by the deflection or torsion of the robot arm 22, the drive parameters for at least one of the joints J1 to J6 of the robot arm body 220 are changed, and for the deviation caused by the vibration of the robot arm 22, the drive parameters for the moving stage 23 are changed. Then, the changed drive commands are saved as actual drive commands. The drive parameters are not particularly limited, but for example, a position command indicating the position at a predetermined time can be mentioned.
[0056] When the information processing apparatus 4 causes the robot 2 to perform actual work, it transmits an actual drive command to the control device 3. Then, the control device 3 controls the drive of the robot 2 based on the received actual drive command, thereby causing the robot 2 with the print head 25 attached as the end effector 24 to perform actual work.
[0057] Note that the drive command may be changed not just once but multiple times. That is, an actual drive command may be generated by repeating a plurality of correction steps including calculation of an actual trajectory, comparison between the actual trajectory and the target trajectory, and change of the drive command. In this way, by repeating trial and error, the actual trajectory can be brought closer to, preferably made to coincide with, the target trajectory.
[0058] The configuration of the robot system 1 has been described above. According to such a robot system 1, since the trajectory of the robot arm 22 is calculated using the optical motion capture technology, the trajectory of the robot arm 22 can be calculated with high accuracy. Therefore, the difference between the actual trajectory and the target trajectory can be easily reduced, enabling highly accurate actual work. Also, compared with a system that detects the trajectory using a laser tracker as in the prior art, the system can be constructed at low cost.
[0059] Next, a robot driving method in the robot system 1 will be described. Note that the robot driving method includes a robot trajectory measurement method. As shown in FIG. 7, the robot driving method includes a marker arrangement step S1 of arranging a plurality of markers 50 on the robot arm 22, an actual trajectory calculation step S2 of calculating the actual trajectory of the robot arm 22, a drive condition change step S3 of changing the drive conditions of the robot arm 22 so that the difference between the actual trajectory and the target trajectory becomes small, and a drive step S4 of driving the robot arm 22 under the changed drive conditions. Among these, the marker arrangement step S1 and the actual trajectory calculation step S2 constitute the robot trajectory measurement method.
[0060] ≪Marker Arrangement Step S1≫ In the marker arrangement step S1, as the end effector 24, the orbit detection jig 26 is attached to the robot arm main body 220.
[0061] <<Actual orbit calculation step S2>> In the actual orbit calculation step S2, first, the control device 3 drives the robot arm 22 along the target orbit based on the drive command received from the information processing device 4. Next, the robot orbit measurement system 5 performs motion capture for tracking and labeling the marker 50 based on the images obtained by imaging the marker 50 by two or more cameras 51 during the operation of the robot arm 22, and calculates the actual orbit of the robot arm 22 based on the result of the motion capture. The details of the method for calculating the actual orbit of the robot arm 22 are as described above.
[0062] <<Drive condition change step S3>> In the drive condition change step S3, first, the information processing device 4 detects the difference between the calculated actual orbit of the robot arm 22 and the target orbit. Then, based on the detected difference, the information processing device 4 changes the drive command, that is, the drive condition, so that the difference between the actual orbit and the target orbit becomes smaller, and generates an actual drive command. In this embodiment, the actual orbit calculation step S2 and the drive condition change step S3 are repeatedly performed until the difference between the actual orbit and the target orbit falls within the allowable range. Then, the drive command when it falls within the allowable range is set as the actual drive command.
[0063] <<Drive step S4>> In the drive step S4, first, as the end effector 24, the print head 25 is attached to the robot arm main body 220. Next, the control device 3 controls the drive of the robot arm 22 based on the actual drive command generated by the information processing device 4, and causes the robot 2 to execute the actual work.
[0064] The robot driving method has been described above. According to such a robot driving method, since the trajectory of the robot arm 22 is calculated using the optical motion capture technology, the trajectory of the robot arm 22 can be calculated with high precision. Therefore, the difference between the actual trajectory and the target trajectory can be easily reduced, and high-precision actual work becomes possible. In addition, compared with an apparatus for detecting a trajectory using a laser tracker as in the prior art, a system can be constructed at low cost.
[0065] As described above, the robot trajectory measurement system 5 includes a plurality of markers 50 arranged on the robot arm 22, a camera 51 as an imaging unit that images the plurality of markers 50 during the operation of the robot arm 22, and a trajectory calculation unit 52 that calculates the trajectory of the robot arm 22 based on the image acquired by the camera 51. In this way, by calculating the trajectory of the robot arm 22 using the motion capture technology, the trajectory of the robot arm 22 can be calculated with high precision. Furthermore, compared with an apparatus for detecting a trajectory using a laser tracker as in the prior art, a system can be constructed at low cost.
[0066] Also, as described above, three or more cameras 51 are arranged at intervals from each other. Thereby, at each position on the target trajectory, each of at least three markers 50 can be reliably imaged simultaneously by at least two or more cameras 51.
[0067] Also, as described above, three or more cameras 51 are arranged so as to surround the robot arm 22. Thereby, at each position on the target trajectory, each of at least three markers 50 can be reliably imaged simultaneously by at least two or more cameras 51.
[0068] Also, as described above, three or more cameras 51 are irregularly arranged around the robot arm 22. Thereby, the calibration of the camera 51 can be accurately performed. Furthermore, there is also an effect of reducing dead angles during robot trajectory observation.
[0069] Also, as described above, the robot arm 22 includes a robot arm body 220 having a plurality of arms 221 to 226 connected via a plurality of joints J1 to J6, and an end effector 24 connected to the tip of the robot arm body 220, and three or more markers 50 are arranged on the end effector 24. Thereby, the trajectory of the end effector 24 can be accurately calculated. During actual work, since the end effector 24 performs a predetermined work on the workpiece W, by accurately calculating the trajectory of the end effector 24, the deviation between the end effector 24 and the workpiece W can be made smaller, and the actual work can be performed accurately.
[0070] Also, as described above, the three or more markers 50 are arranged along a plane F including a rotation axis O6 which is the central axis of the arm 226 located at the foremost end of the robot arm body 220. Thereby, when the robot arm 22 operates, it becomes difficult for the marker 50 to contact the robot arm 22.
[0071] Also, as described above, the three or more markers 50 include a marker 50a arranged on the rotation axis O6 and a marker 50b arranged at a distance from the rotation axis O6. Thereby, since the plurality of markers 50 can be dispersed and arranged on the plane F, it becomes easier for the robot trajectory measurement system 5 to identify each marker 50, and tracking (tracking) and labeling (identification) of each marker 50 can be performed accurately.
[0072] Also, as described above, the end effector 24 has a base 261 connected to an arm 226 located at the tip of the robot arm main body 220, and a plurality of rod-shaped pins 262 protruding from the base 261. And a marker 50 is disposed at the tip of the pin 262. As a result, the marker 50 is disposed at a distance from the base 261. Therefore, when viewed from at least one camera 51, each marker 50 is less likely to be hidden by the shadow of the base 261, and the trajectory of the robot arm 22 can be calculated with higher accuracy.
[0073] Also, as described above, the robot trajectory measurement method arranges a plurality of markers 50 on the robot arm 22, and during the operation of the robot arm 22, performs motion capture for tracking the markers 50 based on an image obtained by the camera 51 as an imaging unit capturing the plurality of markers 50, and calculates the trajectory of the robot arm 22 based on the result of the motion capture. In this way, by calculating the trajectory of the robot arm 22 using the motion capture technology, the trajectory of the robot arm 22 can be calculated with high accuracy.
[0074] Also, as described above, the robot driving method arranges a plurality of markers 50 on the robot arm 22, and during the operation of the robot arm 22, performs motion capture for tracking the markers 50 based on an image obtained by the camera 51 as an imaging unit capturing the plurality of markers 50, calculates the trajectory of the robot arm 22 based on the result of the motion capture, changes the driving conditions of the robot arm 22 so that the difference between the calculated trajectory and the target trajectory becomes small, and drives the robot arm 22 under the changed driving conditions. In this way, by calculating the trajectory of the robot arm 22 using the motion capture technology, the trajectory of the robot arm 22 can be calculated with high accuracy. Therefore, the difference between the actual trajectory and the target trajectory can be easily reduced, and high-precision actual work becomes possible.
[0075] As described above, the robot trajectory measurement system, the robot trajectory measurement method, and the robot driving method of the present invention have been described with respect to the illustrated embodiments. However, the present invention is not limited thereto, and the configuration and process of each part can be replaced with any configuration and process having the same function. Further, any other arbitrary configuration and process may be added to the present invention.
Explanation of Signs
[0076] 1…Robot system, 2…Robot, 21…Base, 22…Robot arm, 220…Robot arm main body, 221…Arm, 222…Arm, 223…Arm, 224…Arm, 225…Arm, 226…Arm, 23…Moving stage, 230…Base, 231…First stage, 232…Second stage, 235…First stage drive unit, 236…Second stage drive unit, 237…Piezoelectric actuator, 24…End effector, 25…Printing head, 251…Nozzle, 26…Fixture for trajectory detection, 261…Base, 262…Pin, 264…Weight, 3…Control device, 4…Information processing device, 41…Drive command generation unit, 42…Trajectory acquisition unit, 43…Analysis unit, 5…Robot trajectory measurement system, 50…Marker, 50a…Marker, 50b…Marker, 51…Camera, 52…Trajectory calculation unit, A…First direction, B…Second direction, F…Plane, J1…Joint, J2…Joint, J3…Joint, J4…Joint, J5…Joint, J6…Joint, O6…Rotation axis, S1…Marker arrangement step, S2…Actual trajectory calculation step, S3…Drive condition change step, S4…Drive step, t1…Time, W…Work
Claims
1. A plurality of markers arranged on a robotic arm, an imaging unit that images the plurality of markers during operation of the robotic arm, and an orbit calculation unit that calculates the orbit of the robotic arm based on an image acquired by the imaging unit. A robotic orbit measurement system characterized by having these components.
2. The number of the markers is three or more, The robotic orbit measurement system according to claim 1, having a plurality of the imaging units.
3. The robotic orbit measurement system according to claim 2, wherein three or more of the imaging units are arranged spaced apart from each other.
4. The robotic orbit measurement system according to claim 3, wherein three or more of the imaging units are arranged so as to surround the robotic arm.
5. The robotic orbit measurement system according to claim 3, wherein three or more of the imaging units are arranged irregularly around the robotic arm.
6. The robotic arm includes a robotic arm body having a plurality of arms connected via a plurality of joints, and an end effector connected to the tip of the robotic arm body, The robotic orbit measurement system according to claim 2, wherein the three or more markers are arranged on the end effector.
7. The robotic orbit measurement system according to claim 6, wherein the three or more markers are arranged along a plane including the central axis of the arm located at the foremost end of the robotic arm body.
8. The robotic orbit measurement system according to claim 7, including the marker arranged on the central axis and the marker arranged spaced apart from the central axis.
9. The end effector has a base connected to the arm located at the foremost end of the robotic arm, and a plurality of rod-shaped pins protruding from the base, and the marker is arranged at the tip of the pin. The robotic orbit measurement system according to claim 6.
10. Arranging a plurality of markers on a robotic arm, Performing motion capture for tracking the markers based on an image obtained by an imaging unit imaging the plurality of markers during operation of the robotic arm, and calculating the orbit of the robotic arm based on the result of the motion capture. A robotic orbit measurement method characterized by these steps.
11. Arranging a plurality of markers on a robotic arm, During the operation of the robot arm, perform motion capture to track the markers based on an image obtained by the imaging unit capturing the plurality of markers, calculate the trajectory of the robot arm based on the result of the motion capture, change the driving conditions of the robot arm so that the difference between the calculated trajectory and the target trajectory becomes small, and drive the robot arm under the changed driving conditions. A robot driving method characterized by this.
Citation Information
Patent Citations
Robot control system and robot control method
JP2017226023A