The present application claims the benefit of priority from Japanese Patent Application No. 2022-186707 filed on Nov. 22, 2022. The entire disclosure of the above application is incorporated herein by reference.
The present disclosure relates to a track generation device configured to generate a track of a fluid discharge unit that discharges a fluid, and a fluid application system including the track generation device.
Conventionally, there has been known a discharge amount control device configured to detect a change in application speed of an application nozzle that discharges a fluid and control a discharge amount of the fluid based on the detected value.
The present disclosure provides a track generation device configured to generate a track of a fluid discharge unit that discharges a fluid for applying the fluid to a surface of an object along a target application track. The track generation device includes a storage unit and a track generation unit. The storage unit stores a time-series model indicating a relationship between the track of the fluid discharge unit and an application track of the fluid in consideration of behavior of the fluid due to a viscosity, and the relationship is learned based on an actual track of the fluid discharge unit and an actual application track of the fluid. The track generation unit is configured to generate the track of the fluid discharge unit corresponding to the target application track using the time-series model upon reception of the target application track. The present disclosure also provides a fluid application system including the track generation device and the fluid discharge unit.
Objects, features and advantages of the present disclosure will become apparent from the following detailed description made with reference to the accompanying drawings. In the drawings:
Next, a relevant technology is described only for understanding the following embodiments. A discharge amount control device according to the relevant technology detects a change (decrease or increase) in application speed of an application nozzle that discharges a highly viscous fluid (for example, an adhesive), and controls the discharge amount based on the detected value.
In the discharge amount control device described above, since the application speed of the application nozzle becomes slow in a corner application portion, the discharge amount of the adhesive is reduced when the application nozzle moves from a straight application portion to the corner application portion, and the discharge amount of the adhesive is increased when the application nozzle moves from the corner application portion to the straight application portion. In such a case, it is possible to eliminate excess or deficiency of the adhesive application over the entire application portion.
In a case where the fluid discharged by the fluid discharge unit such as the application nozzle has a viscosity sufficient to maintain a state in which the fluid is connected from the fluid discharge unit to a surface of an object, there is a possibility that the fluid cannot be applied along a target application track only by determining a track of the fluid discharge unit according to the target application track. This is because the application position of the fluid discharged from the fluid discharge unit is affected by the movement of the fluid discharge unit after being discharged. For example, in a case where the fluid discharge unit changes the track from a straight track to a curved track along the target application track, the application track of the discharged fluid may curve inward from the target application track due to the influence of the fluid discharge unit moving along the curved track.
A track generation device according to an aspect of the present disclosure is configured to generating a track of a fluid discharge unit that discharges a fluid for applying the fluid to a surface of an object along a target application track. The fluid discharged by the fluid discharge unit has a viscosity that maintains a state in which the fluid is connected from the fluid discharge unit to the surface of the object. The track generation device includes a storage unit and a track generation unit. The storage unit stores a time-series model indicating a relationship between the track of the fluid discharge unit and an application track of the fluid in consideration of behavior of the fluid due to the viscosity, and the relationship is learned based on an actual track of the fluid discharge unit and an actual application track of the fluid. The track generation unit is configured to generate the track of the fluid discharge unit corresponding to the target application track using the time-series model upon reception of the target application track.
The track generation device described above is configured to generate the track of the fluid discharge unit corresponding to the target application track using the time-series model. The time-series model is learned based on the actual track of the fluid discharge unit and the actual application track of the fluid, and indicates the relationship between the track of the fluid discharge unit and the application track of the fluid in consideration of the behavior of the fluid due to the viscosity. Therefore, by using the time-series model that is learned, it is possible to generate the track of the fluid discharge unit capable of applying the fluid along the target application track.
A fluid application system according to another aspect of the present disclosure includes a fluid discharge unit, a track generation device, and a control device. The fluid discharge unit is configured to discharge a fluid for applying the fluid to a surface of an object along a target application track. The fluid discharged by the fluid discharge unit has a viscosity that maintains a state in which the fluid is connected from the fluid discharge unit to the surface of the object. The track generation device is configured to generate a track of the fluid discharge unit, and includes a storage unit and a track generation unit. The storage unit stores a time-series model indicating a relationship between the track of the fluid discharge unit and an application track of the fluid in consideration of behavior of the fluid due to the viscosity, and the relationship is learned based on an actual track of the fluid discharge unit and an actual application track of the fluid. The track generation unit is configured to generate the track of the fluid discharge unit corresponding to the target application track using the time-series model upon reception of the target application track. The control device is configured to move the fluid discharge unit along the track generated by the track generation device while making the fluid discharge unit discharge the fluid.
The fluid application system described above can apply the fluid to the surface of the object along the target application track even if the fluid has the viscosity sufficient to maintain the state in which the fluid is connected from the fluid discharge unit to the surface of the object.
A track generation device according to another aspect of the present disclosure is configured to generate a track of an application nozzle that discharges a fluid for applying the fluid to a surface of an object along a target application track. The fluid discharged by the application nozzle has a viscosity that maintains a state in which the fluid is connected from the application nozzle to the surface of the object. The track generation device includes a computer configured to: store a time-series model indicating a relationship between the track of the application nozzle and an application track of the fluid in consideration of behavior of the fluid due to the viscosity, the relationship being learned based on an actual track of the application nozzle and an actual application track of the fluid; and generate the track of the application nozzle corresponding to the target application track using the time-series model upon reception of the target application track.
Hereinafter, preferred embodiments of the present disclosure will be described with reference to the drawings. Note that the same or similar components are denoted by the same reference numerals throughout a plurality of drawings, and description thereof may be omitted.
As illustrated in
The application nozzle 30 discharges the fluid 38 from a tip thereof toward the object 50. Inside the application nozzle 30, a control valve for controlling an application flow rate of the fluid 38 is provided. In the present embodiment, the flow rate of the fluid 38 is adjusted by the control valve so that the fluid 38 is discharged from the application nozzle 30 at a constant flow rate. The discharge of the fluid 38 from the application nozzle 30 can be started and ended by the control valve.
The tank 34 stores the fluid 38 while maintaining the viscosity of the fluid 38. The tank 34 is provided with the pump 36 that delivers the fluid 38 in the tank 34 toward the application nozzle 30. When the pump 36 is driven, the fluid 38 is supplied from the tank 34 to the application nozzle 30 via the hose 32.
The robot 40 supports the application nozzle 30 at an end of a robot arm such that the application nozzle 30 is maintained in a state of being perpendicular to the surface of the object 50. The robot 40 moves the application nozzle 30 so that an application track of the fluid 38 discharged from the application nozzle 30 onto the surface of the object 50 matches with a target application track that is instructed. At this time, for example, the robot 40 moves the application nozzle 30 at a constant speed while keeping the height of the application nozzle 30 from the surface of the object 50 constant. In the following description, a track drawn by the movement of the application nozzle 30 is referred to as a nozzle track. However, since the application nozzle 30 is supported by the robot arm, the nozzle track can also be referred to as a robot track.
The control device 20 is configured using a known computer including, for example, a CPU, a ROM, a RAM, and the like. The control device 20 outputs control signals to various actuators of the robot 40 by executing a program stored in the ROM, for example, and controls the posture and the moving direction of the robot 40. Specifically, the control device 20 controls the robot 40 so that the application nozzle 30 moves along the nozzle track generated by the track generation device 10. The control device 20 also controls the start and stop of the discharge of the fluid 38 from the application nozzle 30. A specific control process executed by the control device 20 will be described in detail later.
The track generation device 10 is configured using, for example, a known computer including a CPU, a ROM, a RAM, and the like, similarly to the control device 20. The track generation device 10 executes, for example, a program stored in the ROM to generate a nozzle track corresponding to the target application track using a time-series model described later, and provides the nozzle track to the control device 20.
The time-series model learning unit 11 learns the model parameters of the time-series model using the track of the application nozzle 30 when the application nozzle 30 is moved while discharging the fluid 38 from the application nozzle 30 so that the application track of the fluid 38 has a predetermined pattern shape and the application track of the fluid 38 that is actually obtained as learning data. The predetermined pattern includes, for example, a combination of a linear track and a curved track. A learning accuracy of the time-series model (model parameter) is improved by obtaining a large number of pieces of learning data using a plurality of types of pattern shapes having different curve radii of the curved track.
In the present embodiment, as the time-series model, a time-series model is used in which an application position at which the fluid 38 discharged from the application nozzle 30 is applied to the surface of the object 50 is estimated from at least a plurality of planned track positions representing a planned track of the application nozzle 30 and a plurality of application track positions representing the application track of the fluid 38 that is applied to the surface of the object 50. Hereinafter, the time-series model will be described in detail.
For example, as illustrated in
Y
0=α+β1X1+β2X2+β3X3+γ1Y1+γ2Y2+γ3Y3+ε [Equation 1]
In Equation 1, a is an intercept, β1 to β3 are weights for the planned track positions X1, X2, and X3 of the application nozzle 30, γ1 to γ3 are weights for the application track positions Y1, Y2, and Y3, and ε is an error. These α, β1 to β3, γ1 to γ3, and ε are collectively referred to as model parameters. This model is an autoregressive model as an example of the time-series model.
In S100, learning data including the track of the application nozzle 30 when the application nozzle 30 is actually moved and the application track of the fluid 38 obtained at that time is acquired from, for example, the control device 20. In S110, model parameters of the time-series model are determined based on the learning data. The model parameters can be estimated by maximum likelihood estimation using a least squares method or the like based on the learning data. As a result, the time-series model to which the estimated model parameters are applied most reliably represents the relationship between the track of the application nozzle 30 and the application track of the fluid 38 in the learning data. In S120, the learned time-series model, that is, the estimated (determined) model parameters are stored in the time-series model storage unit 12.
When the viscosity of the fluid 38, the height from the surface of the object 50 to the application nozzle 30, or the like changes, the behavior due to the viscosity of the fluid 38 also changes, and as a result, the application position of the fluid 38 also changes. Therefore, a plurality of types of time-series models may be learned and stored in the time-series model storage unit 12 for each type of the fluid 38 and/or each time an application condition such as a set value of the height of the application nozzle 30 from the surface of the object 50 or a moving speed of the application nozzle 30 is changed. In this case, an optimum time-series model may be specified according to the type of the fluid 38, the height and the moving speed of the application nozzle 30, and the like, and the specified time-series model may be read from the time-series model storage unit 12.
Here, a learning accuracy of the time-series model, in other words, an estimation accuracy of the model parameters can be increased with increase in the number of pieces of learning data. However, actually repeating the application of the fluid 38 by the fluid application system 100 in order to obtain a large amount of learning data is not an efficient method. Therefore, in the present embodiment, the learning data including the track of the application nozzle 30 when the application nozzle 30 is actually moved and the application track of the fluid 38 obtained at that time is subjected to at least one mathematical process of inversion, rotation, reduction, and enlargement to augment the learning data.
For example, it is assumed that the nozzle track of the application nozzle 30 and the actual application track of the fluid 38 as illustrated in
Regarding the learning data, it is preferable to perform a normalization process of position and/or angle on the learning data including the nozzle track of the application nozzle 30 and the application track of the fluid 38.
The normalization process of position means, for example, as illustrated in
The normalization process of angle means, for example, as illustrated in
By performing such normalization process of position and/or angle, the position dependency and/or angle dependency of the learning data is eliminated, and the values of the learning data can be handled uniformly without depending on the shape of the nozzle track and/or the application track. Therefore, the learning accuracy of the time-series model can be improved.
By using the time-series model learned in this manner, the application track generation unit 15 can obtain the application track of the fluid 38 with respect to the planned track of the application nozzle 30. Hereinafter, an example of a specific method of estimating the application track of the fluid 38 with respect to the planned track of the application nozzle 30 will be described with reference to
As illustrated in
By repeating the estimation of the application position Y0 of the fluid 38 by the application track generation unit 15 in this manner, the application track generation unit 15 can estimate the application track of the fluid 38 obtained when the application nozzle 30 is moved along the planned track.
Note that the number of the planned track positions X1, X2, and X3 and the application track positions Y1, Y2, and Y3 as the time-series data included in the time-series model is not limited to three. That is, the number of planned track positions and the number of application track positions may be, for example, two or four or more. The number of planned track positions and the number of application track positions may be the same or different. Furthermore, the time-series model may include variables other than the above-described time-series data and model parameters.
The time-series model described above can be easily modeled because it is not necessary to mathematize the physical behavior of the application nozzle 30 or the fluid 38. Furthermore, there is an advantage that it is possible to cope with unlearned behavior by the robustness of the time-series model.
Next, a process for generating the nozzle track corresponding to the target application track using the time-series model, which is executed in the track generation device 10, will be described with reference to the flowchart of
In S200, the target application track acquisition unit 13 acquires the target application track of the fluid 38 applied to the surface of the object 50. The target application track is input to the track generation device 10 by an operator, for example.
In S210, the robot track generation unit 14 initially sets the track of the application nozzle 30 (that is, the robot track) so as to match with the target application track that is acquired.
In S220, the application track generation unit 15 estimates the application track of the fluid 38 obtained when the application nozzle 30 is moved along the set track while discharging the fluid 38 using the time-series model stored in the time-series model storage unit 12. In the estimation of the application track of the fluid 38, as described above, the application positions of the plurality of fluids 38 are estimated while updating the plurality of planned track positions X1, X2, and X3 and the plurality of application track positions Y1, Y2, and Y3 to be substituted into the time-series model along the set track of the application nozzle 30 and the application track of the fluid 38. The application track of the fluid 38 is estimated to trace the plurality of estimated application positions of the fluid 38.
In S230, the robot track generation unit 14 compares the application track of the fluid 38 estimated by the application track generation unit 15 with the acquired target application track, and determines whether or not the difference between the estimated application track and the target application track falls within a predetermined allowable range.
Here, when the fluid 38 discharged by the application nozzle 30 has a viscosity sufficient to maintain a state of being connected from the application nozzle 30 to the surface of the object 50, the application track of the fluid 38 may deviate from the track of the application nozzle 30. For example, as shown in
Therefore, when it is determined that the difference between the estimated application track and the target application track exceeds the predetermined allowable range in S230 described above, the process proceeds to S240, and the robot track generation unit 14 corrects the track of the application nozzle 30 so that the difference between the estimated application track and the target application track becomes small, in other words, so that the estimated application track approaches the target application track. Then, the application track generation unit 15 acquires the corrected nozzle track from the robot track generation unit 14, and estimates the application track obtained by the corrected track of the application nozzle 30 in the process of S220.
For example, as shown in
When the robot track generation unit 14 determines that the difference between the estimated application track and the target application track falls within the predetermined allowable range in S230, the track of the application nozzle 30 used when the estimated application track is obtained is determined as the track of the application nozzle 30 (robot track) corresponding to the target application track in S250. The determined track of the application nozzle 30 is output to the control device 20.
Next, a process for controlling the robot 40 so that the application nozzle 30 is moved along the track of the application nozzle 30 generated by the track generation device 10, which is executed in the control device 20, will be described with reference to the flowchart of
In S300, the control device 20 acquires the track of the application nozzle 30 corresponding to the target application track from the track generation device 10. In S310, the control device 20 outputs a control signal for driving the robot 40 based on the acquired track of the application nozzle 30 so that the track of the application nozzle 30 follows the acquired track. The control device 20 controls the control valve of the application nozzle 30 so that the fluid 38 of a constant flow rate is discharged from the application nozzle 30 while the application nozzle 30 is moved along the acquired nozzle track. As a result, normally, the application track of the fluid 38 that is applied to the object 50 matches with the target application track.
However, for example, even in a case where the type of the fluid 38 is the same, there may be a case where the actual application track of the fluid 38 does not match with the target application track even when the application nozzle 30 is moved along the acquired nozzle track due to deterioration of the fluid 38, environmental change such as a temperature change and a humidity change, or the like.
In order to cope with the above-described issue, in S320, the application track of the fluid 38 actually applied to the surface of the object 50 is detected using a detector such as a camera. Then, in S330, it is determined whether the magnitude of the deviation between the actual application track and the target application track is equal to or greater than a predetermined threshold value. In this determination process, when it is determined that the magnitude of the deviation between the actual application track and the target application track is equal to or greater than the predetermined threshold value, the process of S340 is executed. In S340, the control device 20 instructs the time-series model learning unit 11 of the track generation device 10 to update the learning data so as to add the nozzle track used for controlling the robot 40 and the actual application track to the learning data, and to update the time-series model by performing relearning of the time-series model on the basis of the updated learning data.
Accordingly, even when deterioration of the fluid 38, the environmental change such as the temperature change or the humidity change, or the like occurs, the time-series model can be adapted to the environmental change or the like by updating the time-series model. Therefore, by using the updated time-series model, it is possible to apply the fluid 38 to the object 50 so as to match the target application track.
The processes of S320 to S340 may be executed only for a predetermined period from the start of the operation of the fluid application system 100. This is because, if there is no deviation between the target application track and the actual application track due to an influence of the environmental change or the like at the start of operation of the fluid application system 100, there is a low possibility that a deviation between the target application track and the actual application track occurs due to an influence of the environmental change or the like during subsequent operation of the fluid application system 100. However, the processes of S320 to S340 may be continuously executed during the operation of the fluid application system 100.
Furthermore, a predetermined period from the start of the operation of the fluid application system 100 may be set as an acquisition period of learning data regardless of whether or not there is a deviation between the target application track and the actual application track, and the time-series model may be updated based on the learning data to which the learning data acquired in the acquisition period is added.
As described above, as the predetermined update condition for instructing the update of the time-series model, it is possible to adopt the occurrence of the deviation between the target application track and the actual application track, the start of the operation of the fluid application system 100, or the like.
Next, a fluid application system 100 including a track generation device 110 according to a second embodiment of the present disclosure will be described. Since the overall configuration of the fluid application system 100 according to the present embodiment is similar to the overall configuration of the fluid application system 100 according to the first embodiment, the description thereof will be omitted.
The above-described first embodiment adopts the time-series model in which the application position at which the fluid 38 discharged from the application nozzle 30 is applied to the surface of the object 50 is estimated from at least the plurality of planned track positions representing the planned track of the application nozzle 30 and the plurality of application track positions representing the application track of the fluid 38 applied to the surface of the object 50.
On the other hand, the present embodiment adopts, as shown in
Then, using the time-series model described above, a robot track generation unit (RBT TRK GEN) 114 illustrated in
In this manner, the robot track generation unit 114 repeats the estimation of the position to which the application nozzle 30 should move, and thus the robot track generation unit 114 can estimate the track of the application nozzle 30 for obtaining the target application track on the basis of the target application track. Configurations and functions other than the track generation device 110 of the second embodiment are similar to those of the first embodiment.
Similarly to the time-series model learning unit 11 of the track generation device 10 according to the first embodiment, the time-series model learning unit 111 learns the model parameters of the time-series model using, as learning data, the track of the application nozzle 30 when the application nozzle 30 is moved while discharging the fluid 38 from the application nozzle 30 so that the application track of the fluid 38 has a predetermined pattern shape and the actually obtained application track of the fluid 38. The learned time-series model (model parameters) is stored in the time-series model storage unit 112.
However, the time-series model of the second embodiment is different from the time-series model of the first embodiment in that the output is the position to which the application nozzle 30 should move, and the input time-series data is the plurality of application track positions representing the target application track to which the fluid 38 should be applied following the application track of the fluid 38 applied to the surface of the object 50, and the plurality of past track positions representing the past track including the latest past track position of the application nozzle 30.
Next, a process for generating the nozzle track corresponding to the target application track using the time-series model, which is executed in the track generation device 110 according to the second embodiment, will be described with reference to a flowchart of
In S400, the target application track acquisition unit 113 acquires the target application track of the fluid 38 applied to the surface of the object 50. The target application track is input to the track generation device 110 by an operator, for example.
In S410, the robot track generation unit 114 estimates the track of the application nozzle 30 corresponding to the acquired target application track using the time-series model stored in the time-series model storage unit 112. When estimating the track of the application nozzle 30, the robot track generation unit 114 estimates the positions to which the application nozzle 30 should move while updating the plurality of application track positions and the plurality of past track positions to be substituted into the time-series model along the target application track and the past nozzle track, respectively, as described above. The track of the application nozzle 30 corresponding to the acquired target application track is estimated to trace the estimated positions to which the application nozzle 30 should move.
In S420, the robot track generation unit 114 determines the estimated track of the application nozzle 30 as a nozzle track corresponding to the target application track, and outputs the nozzle track to the control device 20.
While preferred embodiments of the present disclosure have been described above, the present disclosure is not limited in any way by the embodiments described above, and may be carried out with various modifications without departing from the scope of the subject matter of the present disclosure.
For example, the computer constituting the track generation devices 10 and 110 and/or the control device 20 may be realized by a dedicated computer having a processor programmed to execute one or more functions by a computer program. Alternatively, the computer constituting the track generation devices 10 and 110 and/or the control device 20 may be realized by a dedicated hardware logic circuit. Alternatively, the computer constituting the track generation devices 10 and 110 and/or the control device 20 may be realized by one or more dedicated computers configured by a combination of a processor that executes a computer program and one or more hardware logic circuits. The hardware logic circuit is, for example, an application specific integrated circuit (ASIC) or a field-programmable gate array (FPGA).
The storage medium for storing the computer program is not limited to the ROM. Furthermore, the computer program may be stored in a computer-readable non-transitionary tangible storage medium as an instruction executed by the computer. For example, the program may be stored in a flash memory. Furthermore, the form of the storage medium may be changed as appropriate. The storage medium is not limited to a configuration provided on a circuit board, and may be an optical disk, a hard disk drive, a memory card, or the like.
In the above-described embodiments, the application nozzle 30 corresponds to a fluid discharge unit. The time-series model storage unit 12 and the time-series model storage unit 112 correspond to a storage unit. The robot track generation unit 14, the application track generation unit 115, and the robot track generation unit 114 correspond to a track generation unit. The process in S210 corresponds to a track setting unit. The process in S220 corresponds to an application track estimation unit. The process in S240 corresponds to a track correction unit. The process in S250 and the processes in S410 and S420 correspond to a track output unit. The process in S320 corresponds to a detection unit. The process in S340 corresponds to an update instruction unit.
Number | Date | Country | Kind |
---|---|---|---|
2022-186707 | Nov 2022 | JP | national |