Information processing apparatus
By designing an information processing device that includes coordinate data acquisition, parameter generation and machine learning models, the automation problem of industrial machinery action parameter adjustment in the prior art is solved, and efficient and accurate action parameter adjustment is achieved.
Patent Information
- Application Number
- CN202380058352.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-01-13
- Filing Date
- 2023-07-19
- Publication Date
- 2025-03-21
AI Technical Summary
When controlling the movement of industrial machinery such as multi-axis robots, it is difficult for the prior art to automatically adjust the action parameters of the drive device, resulting in vibration and trajectory deviations, and the adjustment process depends on manual trial and error.
An information processing device is designed to automatically generate and adjust action parameters through components such as coordinate data acquisition, parameter generation, status data acquisition, index data calculation, sample storage, parameter search and model learning, and use machine learning models to estimate appropriate action parameters.
It realizes automatic operation parameter adjustment, reduces the dependence of manual trial and error, improves the operation efficiency and accuracy of industrial machinery, and is suitable for various industrial machinery with large individual differences.
Smart Images

Figure CN119678110A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to an information processing device that automatically adjusts an operation parameter of an operation of a driving device for controlling an industrial machine or the like for positioning a production facility. Background Art
[0002] Patent document 1 discloses a parameter adjustment device that applies appropriate control parameters according to an action instruction of an industrial machine. The parameter adjustment device described in Patent document 1 generates a model for estimating optimal control parameters from the state data by machine learning based on state data including an instruction of at least one of speed, acceleration, and jerk during the action of the industrial machine and the optimal parameters of the action obtained from a controller that controls the industrial machine, obtains appropriate action parameters from the model according to the action instruction, and applies the action parameters. Prior art literature Patent Literature
[0003] Patent Document 1: Japanese Patent Application Publication No. 2020-35159 Summary of the invention Technical problem to be solved by the invention
[0004] When controlling the movement of industrial machinery such as multi-axis robots, it is necessary to adjust control parameters, including gain parameters, in order to correct vibration and trajectory deviation during the movement of the industrial machinery. On the other hand, in order to properly adjust the control parameters, not only knowledge about control and sensors is required, but also experience in dealing with individual differences in industrial machinery is required. Therefore, the adjustment of control parameters is still done manually through trial and error.
[0005] Patent document 1 proposes a parameter adjustment device that sets more appropriate control parameters based on speed, acceleration, jerk, etc. instructions for industrial machinery such as machine tools and robots. However, for example, in positioning between pre-set coordinates, if the industrial machinery is expected to move as quickly as possible in order to shorten the action time, it is also necessary to adjust the speed, acceleration, and jerk to appropriate values.
[0006] In particular, when the stiffness and vibration characteristics of the positioning device as the control object vary significantly depending on the current position and posture of the positioning device, if a set of control parameters fixed for the entire positionable area is used, it is difficult to shorten the action time overall because poor posture conditions must be taken into account.
[0007] The present disclosure has been made to solve the above-mentioned problems, and an object of the present disclosure is to estimate operation parameters (control parameters) suitable for the operation of the drive device, instead of adjusting by manual trial and error as in the past. Technical solutions to technical problems
[0008] The information processing device involved in the present disclosure is an information processing device of a driving device controlled by a controller, and the information processing device includes: a coordinate data acquisition unit, which acquires coordinate data representing the action coordinates of the driving device from the outside; a parameter generation unit, which generates action parameters for controlling the driving device by the controller; a parameter storage unit, which stores the action parameters; a state data acquisition unit, which acquires state data representing the state of the driving device that is acting according to the action parameters; an indicator data calculation unit, which calculates indicator data based on the state data, and the indicator data is used as an indicator for determining whether the action parameters are appropriate; a sample storage unit, which stores sample data obtained by associating the action parameters with the indicator data; a parameter search unit, which uses the sample data to search for action parameters estimated to be appropriate based on the indicator data; and a model learning unit, which uses learning data obtained by associating the action parameters estimated to be appropriate by the parameter search unit with the coordinate data to generate a learning model, and the learning model is used to infer action parameters suitable for performing the action of the coordinate data, that is, appropriate parameters, based on the coordinate data. Effects of the Invention
[0009] According to the present disclosure, action parameters are generated by inputting coordinate data into a coordinate data acquisition unit, index data is calculated based on state data based on the action parameters, and action parameters estimated to be appropriate are searched based on the index data. Then, a learning model for estimating appropriate parameters based on the coordinate data is generated using learning data obtained by associating the action parameters estimated to be appropriate with the coordinate data. That is, a learning model for estimating appropriate parameters based on the coordinate data can be generated only by inputting the coordinate data into an information processing device. Therefore, the action parameters suitable for performing the action of the coordinate data can be estimated by simply inputting the coordinate data into the learning model, without the need to adjust the parameters by manual trial and error as in the past. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 Schematically shows an example of the overall configuration of a control system including a parameter adjustment device (information processing device). Figure 2 is a diagram showing an example of parameter generation. Figure 3 is a diagram showing an example of sample data. Figure 4 This is a diagram schematically showing an example of learning by the model learning unit (part 1). Figure 5 This is a flowchart showing an example of a processing procedure for generating a learning model. Figure 6 This is a flowchart showing an example of a detailed flow of processing for generating sample data. Figure 7 This is a flowchart showing an example of a detailed flow of a process for generating learning data. Figure 8 This is a diagram (part 1) showing an example of output of appropriate parameters. Fig. 9 An example of a processing procedure for outputting appropriate parameters is shown. Fig.10 This is a diagram schematically showing an example of the configuration of a parameter adjustment device (part 1). Fig.11 This is a diagram schematically showing an example of the structure of the parameter adjustment device (part 2). Fig.12 This is a diagram schematically showing an example of learning by the model learning unit (part 2). Fig.13 This is a diagram showing an example of output of appropriate parameters (part 2). Fig.14 This is a diagram showing an example of the structure of an industrial machine. Fig.15 It is a diagram showing an example of the structure of the angle adjustment device. Fig.16 It is a perspective view showing an example of the structure of a parallel link mechanism. Fig.17 It is a diagram that uses straight lines to represent a set of linkage mechanisms. DETAILED DESCRIPTION
[0011] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. In the following drawings, the same reference numerals are given to the same or corresponding parts, and their description will not be repeated.
[0012] Figure 1 It is a diagram schematically showing an example of the overall configuration of a control system 1 including a parameter adjustment device 5 (information processing device) according to the present embodiment.
[0013] The control system 1 includes an industrial machine 2, a controller 3, a sensor 4, and a parameter adjustment device 5. The industrial machine 2 includes a drive device (an actuator such as a motor or a pneumatic cylinder) as a control target of the controller 3. The industrial machine 2 is, for example, a multi-axis robot or a machine tool used in production equipment.
[0014] The controller 3 controls the action (positioning action, etc.) of the industrial machine 2 according to the preset action parameters. The action parameters are speed-related parameters such as the speed and acceleration of the industrial machine 2 during its action, and control parameters for controlling the industrial machine 2. The control parameters are, for example, gain parameters, state feedback coefficients, and robust control parameters in PID control.
[0015] The controller 3 can obtain the state data of the industrial machine 2. The state data is data indicating the state of the industrial machine 2 when it is in motion, such as a signal generated by a program pre-assembled in the controller 3, a current value flowing through the motor as a control object, feedback signals such as tracking error, etc. The parameter adjustment device 5 can obtain the state data of the industrial machine 2 from the controller 3.
[0016] A plurality of coordinate data are set in the controller 3. The coordinate data is data obtained by combining the start point coordinate and the end point coordinate set when the industrial machine 2 is operated. For example, when the control object of the controller 3 is the motor of the industrial machine 2, the coordinate data may be data obtained by combining the start point angle and the end point angle of the output shaft of the motor.
[0017] The sensor 4 detects the state data of the industrial machine 2. The sensor 4 is, for example, an acceleration sensor. The parameter adjustment device 5 can obtain the state data of the industrial machine 2 not only from the controller 3 but also from the sensor 4 as needed. The sensor 4 may be omitted.
[0018] The parameter adjustment device 5 is an information processing device that uses the coordinate data of the industrial machine 2 as input and outputs appropriate parameters of the industrial machine 2. Appropriate parameters are action parameters that are suitable for the industrial machine 2 to perform an action of a certain coordinate data. In the present embodiment, whether the action parameters are appropriate is determined based on the index data calculated by the index data calculation unit 50 described later. That is, the index data is data that serves as an index for evaluating whether the action parameters are appropriate. For example, when the industrial machine 2 performs a positioning action, the index data may be the duration of the positioning action, the maximum amplitude of the vibration after the positioning action is completed, the vibration time, the cumulative value of the position deviation, or a combination thereof. For example, in the case where the index data is the duration of the positioning action, among the action parameters, the action parameter that determines that the duration of the positioning action falls within a preset threshold is appropriate.
[0019] The parameter adjustment device 5 includes a coordinate data acquisition unit 10, a parameter generation unit 20, a parameter storage unit 30, a state data acquisition unit 40, an indicator data calculation unit 50, a sample storage unit 60, a parameter search unit 70, a model learning unit 80, a model storage unit 90 and a parameter output unit 100.
[0020] When receiving the coordinate acquisition instruction from the sample storage unit 60, the coordinate data acquisition unit 10 acquires the coordinate data not stored in the sample storage unit 60 from the controller 3. For example, the coordinate data acquisition unit 10 compares the coordinate data stored in the sample storage unit 60 with the coordinate data stored in the controller 3, and when there is coordinate data not stored in the sample storage unit 60 among the coordinate data stored in the controller 3, the coordinate data not stored in the sample storage unit 60 is acquired from the controller 3.
[0021] When the coordinate data acquisition unit 10 acquires coordinate data from the controller 3, it determines whether to use the coordinate data in the learning phase or in the application phase. The learning phase is a phase in which a learning model for estimating appropriate parameters from the coordinate data is generated. The application phase is a phase in which appropriate parameters are output by inputting coordinate data into the learning model generated in the learning phase. For example, when the coordinate acquisition instruction received from the sample storage unit 60 includes information indicating the purpose of use of the coordinate data, the coordinate data acquisition unit 10 determines whether to use the coordinate data acquired from the controller 3 in the learning phase or in the application phase based on the purpose of use included in the coordinate acquisition instruction.
[0022] [Learning phase] When the coordinate data acquired from the controller 3 is used in the "learning phase", the parameter adjustment device 5 generates a learning model with the coordinate data as input and the appropriate parameters as output in two steps. In the first step, the parameter search unit 70 described later searches for appropriate parameters for each of the multiple coordinate data (actions) set in the controller 3. In the second step, the model learning unit 80 described later uses machine learning to generate a learning model with the coordinate data as input and the appropriate parameters as output based on multiple combinations of the coordinate data and the appropriate parameters of the coordinate data (learning data). The generation of the learning model will be described in detail below.
[0023] When the coordinate data acquisition unit 10 determines that the coordinate data acquired from the controller 3 is to be used in the “learning phase”, the coordinate data acquisition unit 10 outputs a parameter generation command together with the coordinate data to the parameter generation unit 20 .
[0024] Whenever receiving coordinate data and a parameter generation command from the coordinate data acquisition unit 10 , the parameter generation unit 20 generates a first predetermined number of motion parameters for the received coordinate data, and stores the generated first predetermined number of motion parameters together with the coordinate data in the parameter storage unit 30 .
[0025] For example, the parameter generation unit 20 generates action parameters sampled using a probability distribution such as a uniform distribution from a search range of action parameters that is preset before generating the learning model. In addition, the search range of the action parameters may be, for example, a range between a lower limit value and an upper limit value of the action parameters that are preset before generating the learning model.
[0026] The number of action parameters generated for each coordinate data (i.e., the above-mentioned "first prescribed number") is set according to the parameter search method of the parameter search unit 70 described later. Specifically, the first prescribed number is set to a value greater than the number required for the parameter search unit 70 described later to search for appropriate candidate parameters for each coordinate data. For example, an appropriate value can be set externally as the first prescribed number. When Bayesian optimization is used as a search method for the parameter search unit 70 to search for appropriate candidate parameters, the number of action parameters generated for each coordinate data (the first prescribed number) can be set to "1", considering that Bayesian optimization can search for appropriate values even from a single data. Therefore, compared with the case where a regression model other than Bayesian optimization is used as a search method for appropriate parameters, the number of action parameters generated can be reduced.
[0027] When the number of motion parameters generated for each coordinate data (first predetermined number) is two or more, the parameter generating unit 20 adds a sequence tag to each of the two or more generated motion parameters. The sequence tag indicates the order in which the controller 3 operates the industrial machine 2.
[0028] Figure 2 1 is a diagram showing an example of parameter generation when the first specified number is n (n is an integer greater than or equal to 2), that is, when n action parameters are generated for certain coordinate data and n sequence labels are respectively assigned to the n action parameters. The n sequence labels are represented by, for example, consecutive integer values from 1 to n. The parameter generation unit 20 stores the n (first specified number) action parameters with sequence labels together with the coordinate data in the parameter storage unit 30. In addition, the value of the first specified number may be a fixed value or a variable value that changes according to the coordinate data.
[0029] Back to Figure 1 If the parameter storage unit 30 stores a certain coordinate data, the Figure 2 The controller 3 receives the first specified number of action parameters of the sequence tag shown, and then outputs an action instruction containing these data to the controller 3.
[0030] When the controller 3 receives the motion instruction from the parameter storage unit 30, the controller 3 controls the industrial machine 2 so that the motion of the coordinate data included in the motion instruction is sequentially executed in the order indicated by the sequence tag by using the first predetermined number of motion parameters included in the motion instruction. Thus, while changing the motion parameters, the motion of one coordinate data included in the motion instruction is executed the same number of times as the first predetermined number.
[0031] When outputting an operation instruction to the controller 3, the parameter storage unit 30 also outputs the operation instruction to the index data calculation unit 50. At this time, the parameter storage unit 30 adds a tag indicating that the output source of the operation instruction is the parameter storage unit 30 to the operation instruction.
[0032] The state data acquisition unit 40 acquires state data of the industrial machine 2 from the controller 3 or the sensor 4 while the industrial machine 2 is operated by the controller 3 , and outputs a calculation command together with the acquired state data to the index data calculation unit 50 .
[0033] When receiving status data and calculation instructions from the status data acquisition unit 40, the indicator data calculation unit 50 calculates indicator data using the acquired status data, and acquires action parameters when the status data acquisition unit 40 acquires the status data from the parameter storage unit 30 or the parameter search unit 70 described later.
[0034] As described above, the index data is data that is an index for evaluating whether the action parameters are appropriate, such as the duration of the positioning action of the industrial machine 2. For example, when the controller 3 continuously sends a signal as one of the status data during the action of the industrial machine 2, the duration of continuously sending the signal can be set as the index data (the duration of the positioning action).
[0035] In addition, there may be more than two types of index data. For example, although the above-mentioned duration is an index about the operation time of the industrial machine 2, in addition to this, an index that takes into account the residual vibration during positioning may also be calculated, and the combination of the two data of the operation time and the residual vibration may be used as one index data. Regarding the combination method, for example, the values of two or more indicators may be linearly combined, or the values of each indicator may be maintained.
[0036] In addition, as an index representing the residual vibration, for example, an index obtained by processing data acquired from an acceleration sensor provided at the front end of the industrial machine 2 can be considered. Alternatively, torque data can be acquired from a drive device for controlling the industrial machine 2, and a value obtained by linearly combining the vibration amplitude of the torque data and the attenuation rate of the torque waveform can be used as an index representing the residual vibration.
[0037] In addition, the indicator data calculation unit 50 determines whether the acquired action parameter is an action parameter acquired from the parameter storage unit 30 or an action parameter (an appropriate candidate parameter described later) acquired from the parameter search unit 70. For example, when the acquired action parameter is labeled with a label indicating an output source, the indicator data calculation unit 50 determines whether the acquired action parameter is an action parameter acquired from the parameter storage unit 30 or an action parameter acquired from the parameter search unit 70 by referring to the label.
[0038] When the action parameters obtained are action parameters obtained from the parameter storage unit 30, the indicator data calculation unit 50 generates sample data that associates the obtained action parameters with the indicator data, labels the sample data with labels indicating the action parameters obtained from the parameter storage unit 30 and the action (coordinate data) of each sample data, and stores them in the sample storage unit 60.
[0039] The process when the action parameter acquired by the index data calculation unit 50 is the action parameter (appropriate candidate parameter described later) searched by the parameter search unit 70 will be described in detail later.
[0040] The above series of sample data generation processing is performed for each of the plurality of coordinate data received by the parameter generation unit 20 from the coordinate data acquisition unit 10. Therefore, a plurality of (first predetermined number) sample data are stored in the sample storage unit 60 for each coordinate data.
[0041] The sample storage unit 60 sends the stored sample data to the parameter search unit 70. At this time, the sample storage unit 60 sends all (more than a first predetermined number) of the stored sample data to the parameter search unit 70 for each coordinate data.
[0042] The parameter search unit 70 has a function of estimating (searching) appropriate parameters for each of the plurality of coordinate data based on the received sample data when receiving the sample data from the sample storage unit 60. Specifically, the parameter search unit 70 includes a search model construction unit 71, a search model storage unit 72, and a parameter estimation unit 73.
[0043] When the sample data is acquired from the sample storage unit 60, the search model construction unit 71 generates a search model using the sample data acquired from the sample storage unit 60. The search model is a regression model that infers a black box function using an action parameter as input and outputs index data. In addition, the search model is generated for each of the plurality of coordinate data.
[0044] Then, the search model construction unit 71 outputs the generated search model together with the coordinate data assigned to the sample data as a search model to the search model storage unit 72. Thus, the search model storage unit 72 stores a plurality of search models corresponding to each of the plurality of coordinate data.
[0045] When storing the search model generated by the search model construction unit 71 , the search model storage unit 72 outputs a parameter estimation instruction to the parameter estimation unit 73 .
[0046] When receiving the parameter estimation instruction from the search model storage unit 72, the parameter estimation unit 73 estimates the action parameters estimated to be appropriate (action parameters that are candidates for appropriate parameters, hereinafter also referred to as "appropriate candidate parameters") based on the search model stored in the search model storage unit 72. Then, the parameter estimation unit 73 outputs an action instruction for causing the industrial machine 2 to execute the action of the coordinate data used to estimate the appropriate candidate parameters to the controller 3, and outputs the estimated appropriate candidate parameters to the indicator data calculation unit 50.
[0047] For example, the parameter search unit 70 may use Bayesian optimization to estimate appropriate candidate parameters. In this case, first, a Gaussian process regression model is generated in the search model construction unit 71, and the generated Gaussian process regression model is stored in the search model storage unit 72 as a search model. Thereafter, in the parameter estimation unit 73, Bayesian optimization is implemented by using the search model to estimate (search) appropriate candidate parameters. The search method itself performed by Bayesian optimization is already known in papers, etc., so its detailed description is omitted here.
[0048] In addition, when the indicator data holds the values of two or more indicators in the form of a set, a multi-objective optimization algorithm can be used to estimate appropriate candidate parameters. Since multi-objective optimization is well known in papers, etc., a detailed description is omitted here. For example, if Bayesian optimization is used in the estimation of appropriate candidate parameters, the Pareto solution based on two or more indicators can be estimated as an appropriate candidate parameter by using EHVI (Expected Hypervolume Improvement) in the acquisition function.
[0049] In addition, the estimation method for estimating the appropriate candidate parameter is not limited to Bayesian optimization. For example, a neural network may be used as a regression model, and a gradient method may be used as an optimization method. Alternatively, a method may be used in which a function having an action parameter as an input and index data as an output is drawn using a spline curve, and a parameter corresponding to one of the peaks is estimated as an appropriate parameter.
[0050] When receiving the action parameter (appropriate candidate parameter) from the parameter search unit 70, the indicator data calculation unit 50 calculates the indicator data using the state data acquired from the state data acquisition unit 40, and uses the calculated indicator data to determine whether the action parameter acquired from the parameter search unit 70 is an appropriate parameter. For example, the indicator data calculation unit 50 compares the calculated indicator data with the pre-set indicator data for comparison, and when it is considered that the calculated indicator data is significantly improved relative to the indicator data for comparison, it is determined that the action parameter (appropriate candidate parameter) received from the parameter search unit 70 is an appropriate parameter.
[0051] For example, when the index data is only one kind of index, the index data calculation unit 50 quantifies the difference d between the calculated index data y and the index data ys for comparison using the following equation (1).
[0052] d=1-y / ys··· (1) Then, when the difference d calculated by the formula (1) falls within the preset threshold, the index data calculation unit 50 determines that the received action parameter (appropriate candidate parameter) is an appropriate parameter. On the other hand, when the difference d calculated by the formula (1) does not fall within the preset threshold, the index data calculation unit 50 determines that the received action parameter (appropriate candidate parameter) is not an appropriate parameter.
[0053] When the indicator data maintains the values of two or more indicators in the form of a set, for example, the difference d of each indicator is calculated by performing the above formula (1) on the indicators constituting the indicator data respectively. If the value obtained by adding the difference d calculated for each indicator falls within a preset threshold, it is judged to be an appropriate parameter.
[0054] When the received action parameter (appropriate candidate parameter) is an appropriate parameter, the indicator data calculation unit 50 labels the sample data obtained by associating the action parameter with the indicator data with a label indicating that the action parameter in the sample data is obtained from the parameter search unit 70, the action of the sample data (coordinate data), and a label indicating that the action parameter in the sample data is an appropriate parameter, and stores the sample data in the sample storage unit 60.
[0055] On the other hand, when the received action parameters (appropriate candidate parameters) are not appropriate parameters, the indicator data calculation unit 50 labels the sample data obtained by separating the action parameters and the indicator data with a label indicating that the action parameters in the sample data are obtained from the parameter search unit 70, the action of the sample data (coordinate data), and a label indicating that the action parameters in the sample data are not appropriate parameters, and stores the sample data in the sample storage unit 60.
[0056] In addition, each label marked on the sample data can be composed of a binary integer such as "0" or "1". In addition, multiple labels marked on the sample data can be integrated into one label. For example, when the action parameter in the sample data is an action parameter obtained from the parameter storage unit 30, it can be assigned a value of "0", when the action parameter in the sample data is an action parameter searched by the parameter search unit 70 and is not an appropriate parameter, it can be assigned a value of "1", and when the action parameter in the sample data is an action parameter searched by the parameter search unit 70 and is an appropriate parameter, it can be assigned a value of "2", that is, a three-valued integer can be assigned. In this way, the number of labels marked on the sample data can be reduced.
[0057] Figure 3 2 is a diagram showing an example of sample data stored in the sample storage unit 60 . Figure 3 , an example of generating a plurality of sample data for each of a plurality of actions 1, 2, ... (a plurality of coordinate data 1, 2, ...) is shown.
[0058] The sample data of action 1 (coordinate data 1) includes n sample data obtained by performing action 1 n times based on n action parameters generated by the parameter generation unit 20, and m sample data obtained by performing action 1 m times based on m action parameters estimated by the parameter search unit 70, totaling (n+m) sample data.
[0059] Furthermore, the n sample data including the action parameters generated by the parameter generation unit 20 are labeled with a label indicating that they are generated by the parameter generation unit 20 and a label indicating coordinate data 1. On the other hand, the m sample data including the action parameters estimated by the parameter search unit 70 are labeled with a label indicating that they are estimated by the parameter search unit 70, a label indicating coordinate data 1, and a label indicating whether they are appropriate parameters.
[0060] The sample data of action 2 corresponding to coordinate data 2 is also the same as the sample data of action 1. Specifically, the sample data of action 2 contains a total of (p+q) sample data including p sample data of p action parameters generated by the parameter generation unit 20 and q sample data of q action parameters estimated by the parameter search unit 70.
[0061] Furthermore, the n sample data including the action parameters generated by the parameter generation unit 20 are labeled with a label indicating that they are generated by the parameter generation unit 20 and a label indicating the coordinate data 2. The q sample data including the action parameters estimated by the parameter search unit 70 are labeled with a label indicating that they are estimated by the parameter search unit 70, a label indicating the coordinate data 2, and a label indicating whether they are appropriate parameters.
[0062] exist Figure 3 In the example shown, for action 1 (coordinate data 1), the action parameter included in the (n+m)th sample data is determined to be an appropriate parameter. Also, for action 2 (coordinate data 2), the action parameter included in the (p+q)th sample data is determined to be an appropriate parameter. This combination of coordinate data and appropriate parameters for the coordinate data is used as learning data to generate a learning model by the model learning unit 80 described later.
[0063] In addition, Figure 3In the example shown, two sets of (coordinate data 1, motion parameter n+m) and (coordinate data 2, motion parameter p+q) are shown as learning data, but in reality, the sample storage unit 60 stores a second predetermined number of learning data set according to the model learning method of the model learning unit 80 described later. The "second predetermined number" of learning data stored in the sample storage unit 60 is set to a value greater than the number required for the model learning unit 80 described later to generate a learning model.
[0064] Back to Figure 1 When the second specified number of learning data is stored in the sample storage unit 60 , the sample storage unit 60 sends a model learning instruction to the model learning unit 80 .
[0065] When receiving the model learning instruction from the sample storage unit 60, the model learning unit 80 generates a learning model that uses the coordinate data as input and outputs appropriate parameters using the second predetermined amount of learning data stored in the sample storage unit 60. The model learning unit 80 generates the learning model by, for example, deep learning using a neural network. The model learning unit 80 stores the generated learning model in the model storage unit 90.
[0066] Figure 4 Schematically shows an example of learning by the model learning unit 80 . Figure 4 The learning model shown is a regression model obtained by machine learning (for example, deep learning using a neural network). Figure 4 As shown, the model learning unit 80 performs machine learning using r (a second predetermined number) pieces of learning data (combinations of coordinate data and appropriate parameters) to generate a learning model that uses the coordinate data as input and outputs the appropriate parameters.
[0067] Figure 5 1 is a flowchart showing an example of a processing procedure for generating a learning model in the learning phase by the parameter adjustment device 5. This flow starts when the coordinate data acquired by the coordinate data acquisition unit 10 from the controller 3 is determined to be used in the "learning phase".
[0068] First, the coordinate data acquisition unit 10 outputs a parameter generation command to the parameter generation unit 20 together with the coordinate data acquired from the controller 3 (step S10 ).
[0069] Next, the parameter generating unit 20 generates a first predetermined number of motion parameters for the coordinate data received from the coordinate data acquiring unit 10 , and stores the generated first predetermined number of motion parameters in the parameter storing unit 30 together with the coordinate data (step S20 ).
[0070] Next, the parameter storage unit 30 performs processing to generate sample data (step S30).
[0071] Figure 6 is a diagram showing the process for generating sample data ( Figure 5 A flowchart of an example of a detailed process of step S30).
[0072] The parameter storage unit 30 refers to the sequence tag, identifies the motion parameter to be processed this time from the first predetermined number of stored motion parameters, and generates a motion command including the identified motion parameter and coordinate data (step S31 ).
[0073] Next, the parameter storage unit 30 outputs the generated operation command to the controller 3 (step S32 ). Thereby, the controller 3 operates the industrial machine 2 according to the operation command.
[0074] Next, the state data acquisition unit 40 acquires the state data of the industrial machine 2 from the controller 3 or the sensor 4 while the industrial machine 2 is being operated by the controller 3 (step S33 ).
[0075] Next, the state data acquisition unit 40 outputs a calculation command together with the acquired state data to the index data calculation unit 50 (step S34 ). As a result, the index data calculation unit 50 calculates the index data.
[0076] Next, the index data calculation unit 50 adds a tag indicating that the action parameter is generated by the parameter generation unit 20 to the sample data in which the action parameter and the index data are associated, and stores the sample data in the sample storage unit 60 (step S35 ).
[0077] Return to Figure 5 , the indicator data calculation unit 50 determines whether the number of sample data stored in the sample storage unit 60 has reached the first specified number (step S40). When the number of sample data has not reached the first specified number ("No" in step S40), the indicator data calculation unit 50 repeats the process of step S30 while sequentially changing the action parameters to be processed according to the sequence label until the sample data reaches the first specified number.
[0078] When the sample data reaches the first predetermined number (Yes in step S40 ), a process of generating learning data is executed (step S50 ).
[0079] Figure 7 is a diagram showing the process for generating learning data ( Figure 5 A flowchart of an example of a detailed process of step S50).
[0080] First, the parameter search unit 70 uses all (more than a first specified number) of stored sample data to generate a search model that takes action parameters as input and outputs indicator data, and stores the generated search model in the search model storage unit 72 (step S51).
[0081] Next, the parameter search unit 70 estimates appropriate candidate parameters for the coordinate data received from the coordinate data acquisition unit 10 using the search model stored in the search model storage unit 72 (step S52 ).
[0082] Next, the parameter search unit 70 generates an operation command including the estimated appropriate candidate parameters and coordinate data, and outputs the generated operation command to the controller 3 (step S53). Thus, the controller 3 operates the industrial machine 2 according to the operation command.
[0083] Next, the state data acquisition unit 40 acquires the state data of the industrial machine 2 from the controller 3 or the sensor 4 while the industrial machine 2 is being operated by the controller 3 (step S54 ).
[0084] Next, the state data acquisition unit 40 outputs a calculation command together with the acquired state data to the index data calculation unit 50 (step S55 ). As a result, the index data calculation unit 50 calculates the index data.
[0085] Next, the index data calculation unit 50 determines whether the current appropriate candidate parameter is an appropriate parameter using the calculated index data (step S56 ).
[0086] When it is determined that the appropriate candidate parameter of this time is not an appropriate parameter ("No" in step S56), the indicator data calculation unit 50 adds a label indicating that it is an appropriate candidate parameter obtained from the parameter search unit 70 and a label indicating that it is not an appropriate parameter to the sample data obtained by associating the appropriate candidate parameter of this time with the indicator data, and stores the sample data in the sample storage unit 60 (step S57). Thereafter, the process returns to step S51, and the processes of steps S51 to S56 are repeated until the appropriate candidate parameter determined to be an appropriate parameter is estimated.
[0087] Then, when a suitable candidate parameter that is determined to be a suitable parameter is inferred ("Yes" in step S56), the indicator data calculation unit 50 labels the sample data obtained by associating the suitable candidate parameter with the indicator data with a label indicating that it is an action parameter generated by the parameter search unit 70 and a label indicating that it is a suitable parameter, and stores the sample data as learning data in the sample storage unit 60 (step S58).
[0088] Return to Figure 5, the indicator data calculation unit 50 determines whether the number of learning data stored in the sample storage unit 60 has reached the second specified number (a value greater than the number required by the model learning unit 80 to generate the learning model) (step S60). When the number of learning data stored in the sample storage unit 60 has not reached the second specified number ("No" in step S60), the coordinate data acquisition unit 10 acquires new coordinate data different from the coordinate data stored in the sample storage unit 60 from the controller 3 (step S70). Thereafter, the process returns to step S20, and the processes of steps S20 to S60 are repeated until the number of learning data stored in the sample storage unit 60 reaches the second specified number.
[0089] When the number of learning data stored in the sample storage unit 60 reaches the second specified number ("Yes" in step S60), the model learning unit 80 uses the second specified number of learning data stored in the sample storage unit 60 to generate a learning model with coordinate data as input and motion parameters as output (step S80), and stores the generated learning model in the model storage unit 90 (step S90).
[0090] [Application phase] Next, the processing in the application phase will be described. When the coordinate data acquired from the controller 3 is determined to be used in the “application phase”, the coordinate data acquisition unit 10 outputs a parameter output command to the parameter output unit 100 .
[0091] Figure 8 1 is a diagram showing an example of outputting appropriate parameters by the parameter output unit 100. When receiving a parameter output instruction from the coordinate data acquisition unit 10, the parameter output unit 100 inputs the coordinate data acquired from the coordinate data acquisition unit 10 into the learning model stored in the model storage unit 90, thereby outputting appropriate parameters for the coordinate data.
[0092] Fig. 9 An example of a process procedure in which the parameter adjustment device 5 outputs appropriate parameters in the application phase is shown. This flow starts when the coordinate data acquired by the coordinate data acquisition unit 10 from the controller 3 is determined to be used in the "application phase".
[0093] First, the coordinate data acquisition unit 10 outputs the coordinate data acquired from the controller 3 to the parameter output unit 100 (step S100 ).
[0094] Next, the parameter output unit 100 inputs the coordinate data acquired by the coordinate data acquisition unit 10 into the learning model stored in the model storage unit 90 , and acquires appropriate parameters corresponding to the input coordinate data (step S110 ).
[0095] The parameter adjustment device 5 described above has the following features. (1) The parameter adjustment device 5 involved in this embodiment includes: a coordinate data acquisition unit 10, which is used to acquire coordinate data representing the action coordinates of the industrial machinery 2; a parameter generation unit 20, which generates action parameters for the controller 3 to control the industrial machinery 2; a parameter storage unit 30, which is used to store the action parameters and output action instructions including the action parameters to the controller 3; a state data acquisition unit 40, which is used to acquire state data of the industrial machinery 2 that is acting according to the action parameters; an indicator data calculation unit 50, which calculates indicator data as an indicator for judging whether the action parameters are appropriate based on the state data; a sample storage unit 60, which is used to store sample data that associates the action parameters with the indicator data; a parameter search unit 70, which uses the sample data to search for action parameters that are estimated to be appropriate based on the indicator data; and a model learning unit 80, which uses the learning data obtained by associating the action parameters estimated to be appropriate by the parameter search unit 70 with the coordinate data to generate a learning model for estimating appropriate parameters based on the coordinate data.
[0096] In the above structure, the action parameters are generated by inputting the coordinate data into the coordinate data acquisition unit 10, the index data is calculated based on the state data based on the action parameters, and the action parameters estimated to be appropriate are searched based on the index data. Then, the learning data obtained by associating the action parameters estimated to be appropriate with the coordinate data is used to generate a learning model for estimating appropriate parameters based on the coordinate data. That is, only by inputting the coordinate data into the parameter adjustment device 5, a learning model for estimating appropriate parameters based on the coordinate data can be generated. Therefore, only by inputting the coordinate data into the learning model, the appropriate parameters can be estimated, without adjusting the parameters by manual trial and error as in the past.
[0097] (2) The parameter adjustment device 5 involved in this embodiment also includes: a model storage unit 90, which is used to store the learning model generated by the model learning unit 80; and a parameter output unit 100, which outputs appropriate parameters by inputting the coordinate data acquired by the coordinate data acquisition unit 10 into the learning model stored in the model storage unit 90.
[0098] Therefore, only by inputting the coordinate data to the parameter adjustment device 5, appropriate parameters can be output.
[0099] (3) In addition, the parameter search unit 70 issues an instruction to the controller 3 to control the industrial machine 2 using the action parameters estimated as appropriate by the parameter search unit 70. The state data acquisition unit 40 acquires state data (search state data) indicating the state of the industrial machine 2 when the industrial machine 2 is caused to operate with the action parameters estimated as appropriate by the parameter search unit 70. The index data calculation unit 50 calculates index data based on the search state data. The sample storage unit 60 stores data obtained by associating the action parameters determined as appropriate based on the search state data with the coordinate data as learning data. The model learning unit 80 generates a learning model by using the learning data stored in the sample storage unit 60.
[0100] In the above configuration, the action parameters estimated as appropriate by the parameter search unit 70 are not directly used as learning data, but the index data is calculated based on the state data (search state data) when the industrial machine 2 is actually operated with the action parameters estimated as appropriate by the parameter search unit 70, and the action parameters determined as appropriate based on the index data are used as learning data. Therefore, compared with the case where the action parameters estimated as appropriate by the parameter search unit 70 are directly used as learning data, a learning model can be generated more appropriately.
[0101] (4) In addition, the indicator data calculation unit 50 calculates two or more indicators based on the search status data, and uses the combination of the calculated two or more indicators as the indicator data. The parameter search unit 70 uses a multi-objective optimization method to infer the action parameters that are judged to be appropriate based on the individual indicators that constitute the indicator data.
[0102] This makes it possible to estimate more appropriate parameters than when a value obtained by linearly combining a plurality of indices into one is used as index data.
[0103] (5) Furthermore, the parameter generation unit 20 generates a first predetermined number of operation parameters set according to the parameter search method of the parameter search unit 70 .
[0104] This can prevent the number of operations of the industrial machine 2 for the purpose of searching by the parameter search unit 70 from increasing unnecessarily. Therefore, the time required for the parameter adjustment device 5 to generate the search model can be shortened.
[0105] (6) Furthermore, when the sample storage unit 60 stores the second predetermined number of learning data set according to the model learning method of the model learning unit 80 , the model learning unit 80 generates a learning model using the second predetermined number of learning data.
[0106] This can prevent the number of operations of the industrial machine 2 for generating a learning model by the model learning unit 80 from being increased unnecessarily. Therefore, the time required for the parameter adjustment device 5 to generate a learning model can be shortened.
[0107] (7) In addition, the parameter search unit 70 includes: a search model construction unit 71, which uses the sample data stored in the sample storage unit 60 to generate a search model for inferring indicator data based on action parameters; a search model storage unit 72, which stores the search model; and a parameter estimation unit 73, which searches for action parameters that are estimated to be appropriate based on the indicator data inferred using the search model.
[0108] As a result, the relationship between the action parameters and the index data can be grasped by the search model, so that appropriate parameters can be searched more efficiently.
[0109] (8) In addition, the state data acquisition unit 40 acquires torque data from the drive device that causes the industrial machine 2 to operate, and the index data calculation unit 50 uses the linear combination of the torque vibration amplitude value and the attenuation rate of the torque waveform calculated based on the torque data as an index of the residual vibration of the industrial machine 2 after positioning.
[0110] Thus, even when an acceleration sensor cannot be installed due to limitations of an end effector mounted on an industrial machine, an index of residual vibration can be calculated.
[0111] Furthermore, by using the torque data, even if the reduction ratio of the speed reducer constituting the positioning device is large, the data of the residual vibration can be obtained.
[0112] Furthermore, by considering not only the vibration amplitude value of the torque but also the attenuation rate of the torque waveform, it is possible to more appropriately calculate an index representing the degree of residual vibration.
[0113] In addition, although the parameter adjustment device 5 involved in this embodiment includes the structures of (1) to (8) above, the parameter adjustment device involved in the present disclosure only needs to include at least the structure of (1) above, and is not necessarily limited to including all the structures of (2) to (8) above. For example, the parameter adjustment device involved in the present disclosure may be a combination of the structure of (1) above and at least one of the structures of (2) to (8) above.
[0114] [Modification 1] The parameter adjustment device 5 according to the above-described embodiment includes both a configuration for generating a learning model in a learning phase and a configuration for outputting appropriate parameters in an application phase.
[0115] In contrast, the structure for generating a learning model in the learning phase and the structure for outputting appropriate parameters in the application phase can be divided into different devices.
[0116] Fig.101 is a diagram schematically showing an example of the configuration of parameter adjustment device 5A according to Modification 1. Parameter adjustment device 5A according to Modification 1 is obtained by removing “parameter output unit 100” which is not used in the learning phase but is used in the application phase from parameter adjustment device 5 according to the above embodiment.
[0117] Fig.11 1 is a diagram schematically showing an example of the structure of a parameter adjustment device 5B according to the present modification 1. The parameter adjustment device 5B according to the present modification 1 is a device in which the coordinate data acquisition unit 10, the model storage unit 90, and the parameter output unit 100 used in the application phase are retained compared to the parameter adjustment device 5 according to the above-mentioned embodiment, and other parts are removed.
[0118] Thus, the structure for generating a learning model in the learning phase and the structure for outputting appropriate parameters in the application phase can be divided into different devices. As described above, the hardware of the structure for outputting appropriate parameters in the application phase can be reduced. Fig.11 The parameter adjustment device 5B shown in FIG. 5B) can improve the required performance, thereby reducing costs.
[0119] [Modification 2] In the above embodiment, the example in which the learning model generated by the model learning unit 80 is a single regression model is described (see Figure 4 ), but the learning model generated by the model learning unit 80 is not limited to a single regression model.
[0120] Fig.12 Schematically shows an example of learning performed by the model learning unit 80A according to the second modification. Fig.12 As shown, the model learning unit 80A involved in this modification example 2 generates a classification model and multiple regression models as learning models. For example, the classification model is a model for clustering as a classification method of unsupervised machine learning. The multiple regression models are general machine learning regression models such as multivariate regression models.
[0121] like Fig.12 As shown, the model learning unit 80A learns a classification model for classifying the r learning data into a plurality of groups by using the r coordinate data in the learning data. The criterion for the classification model to group the coordinate data is, for example, the distance between the start point coordinate and the end point coordinate. In this case, the classification model is generated so that the coordinate data is classified into two groups, for example, a group with a longer distance and a group with a shorter distance.
[0122] The generated classification model outputs a plurality of groups consisting of at least one learning data. Therefore, for each of the plurality of groups, a regression model is generated that takes the coordinate data as input and outputs appropriate parameters.
[0123] In this learning method, since the learning data is classified into multiple groups, the learning amount of each regression model can be reduced, and the time required to generate the learning model can be shortened. For example, when a Gaussian process regression model is used in the regression model, the more the number of divisions of the classification model is, the smaller the order of the calculation amount of the inverse matrix of the covariance matrix required for learning the hyperparameters of the kernel function and estimating the appropriate parameters for the unknown coordinate data is, so the time required to learn each regression model can be shortened.
[0124] In addition, the coordinate data used as model input for learning can be converted into feature vectors as needed. For example, when the industrial machine 2 is a robot having three-axis degrees of freedom consisting of an orthogonal coordinate system of the X-axis, Y-axis, and Z-axis, and the starting point coordinates (Xs, Ys, Zs) and the end point coordinates (Xg, Yg, Zg) can be set as coordinate data, the coordinate data can be converted into the difference (ΔX, ΔY, ΔZ) between the coordinates of each axis.
[0125] Fig.13 FIG. 1 is a diagram showing an example of outputting appropriate parameters by the parameter output unit 100A according to the second modification. Fig.12 The learning model shown in the example outputs appropriate parameters. Specifically, Fig.13 As shown, the parameter output unit 100A determines the group to which the coordinate data belongs by inputting the coordinate data into the classification model, and outputs appropriate parameters for the coordinates by inputting the coordinate data into the regression model corresponding to the determined group.
[0126] As described above, the learning model generated by the model learning unit 80 is not limited to a single regression model, and may be, for example, a classification model or a plurality of regression models.
[0127] (Structural example of industrial machinery 2) Hereinafter, a configuration example of the industrial machine 2 to which the above-described parameter adjustment device 5 (information processing device) is just applied will be described.
[0128] Fig.14 2 is a diagram showing an example of the structure of the industrial machine 2. Fig.14 The industrial machine 2 is a pickup device for picking up a workpiece 220 from a placement position. The industrial machine 2 can pick up a workpiece 220 placed on a workpiece placement table 214 or inside a container 213 in an arbitrary posture. The industrial machine 2 includes a photographing device 209 capable of changing a photographing direction of photographing the workpiece 220 and a pickup unit 210 capable of changing an approaching direction of approaching the workpiece 220. The photographing device 209 and the pickup unit 210 are controlled by a controller 3.
[0129] The imaging device 209 images at least one workpiece 220. The pickup unit 210 approaches the workpiece 220 from the approach direction and picks up the workpiece 220. Most of the workpieces 220 to be picked up are randomly stacked in the workpiece container 213 on the workpiece placement table 214.
[0130] The industrial machine 2 further includes a positioning mechanism 247 and an angle adjustment device 208. The positioning mechanism 247 is composed of a rotating mechanism 207 and a linear motion unit 204. A photographing device 209 and a pickup unit 210 are mounted on the angle adjustment device 208. The positioning mechanism 247 is configured to be able to adjust the relative position of the angle adjustment device 208 relative to the workpiece 220. The spatial position of the rotating mechanism 207 can be changed by the linear motion unit 204 having three orthogonal axes.
[0131] The linear motion unit 204 includes a first electric actuator 204X, a second electric actuator 204Y, and a third electric actuator 204Z corresponding to the X-axis, the Y-axis, and the Z-axis orthogonal to each other. The rotation mechanism 207 is attached to the output portion 206 of the third electric actuator 204Z.
[0132] The angle adjustment device 208 is mounted on the rotating mechanism 207. The angle adjustment device 208 can be rotated by the rotating mechanism 207. In addition, the imaging device 209 and the pickup unit 210 are mounted to the link hub on the distal end side of the angle adjustment device 208. The angle adjustment device 208 is configured to be able to arbitrarily adjust the optical axis direction of the imaging device 209 and the approach direction of the pickup unit 210.
[0133] Fig.15 2 is a diagram showing an example of the structure of the angle adjustment device 208 . Fig.15 The angle adjustment device 208 shown includes a parallel linkage mechanism 230 and an actuator 231 . Fig.16 2 is a perspective view showing an example of the structure of the parallel link mechanism 230. Fig.15 extracted and shown in Fig.16 One of the three sets of linkage mechanisms 234 is shown as a representative one.
[0134] like Fig.15 , Fig.16 As shown, the industrial machine 2 further includes a first link hub 232 and a second link hub 233 on which a camera 209 and a pickup unit 210 are mounted. The positioning mechanism 247 is configured to change the position of the first link hub 232. The angle adjustment device 208 connects the first link hub 232 and the second link hub 233.
[0135] The angle adjustment device 208 includes a parallel link mechanism 230 that supports the imaging device 209 and the pickup unit 210 in a changeable manner, and an actuator 231 for posture control that operates the parallel link mechanism 230. The actuator 231 can change Fig.15 The angle α in .
[0136] Reference Fig.15 , Fig.16 In the parallel link mechanism 230 , the second link hub 233 on the distal end side is connected to the first link hub 232 on the proximal end side through the three-link mechanism 234 so as to be able to change its posture. Fig.14 The photographing device 209 and the pickup portion 210 shown are mounted to the second link hub 233 on the distal end side. In addition, although the parallel link mechanism 230 having three sets of link mechanisms 234 is shown here, the number of link mechanisms 234 may be four or more.
[0137] Each link mechanism 234 includes a base end link member 235, a distal end end link member 236, and a central link member 237. The link mechanism 234 is a four-link link mechanism including four rotation pairs. The base end and distal end end link members 235 and 236 have an L-shape.
[0138] One end of the end link member 235 on the base end side is rotatably connected to the first link hub 232 on the base end side. One end of the end link member 236 on the distal end side is rotatably connected to the second link hub 233 on the distal end side. The other ends of the end link members 235 and 236 are rotatably connected to both ends of the central link member 237, respectively.
[0139] The parallel link mechanism 230 has a structure of combining two spherical link mechanisms. The central axes of the rotation pairs of the end link members 235, 236 and the central link member 237 may have a certain intersection angle γ ( Fig.15 ), or may be parallel to each other.
[0140] Fig.17 The figure shows a group of link mechanisms 234 using straight lines. The three groups of link mechanisms 234 can be represented by models with the same geometric shape.
[0141] The first link hub 232 at the base end, the second link hub 233 at the distal end, and the three-link mechanism 234 constitute a dual-degree-of-freedom mechanism. In the dual-degree-of-freedom mechanism, the second link hub 233 at the distal end has dual degrees of freedom that can rotate freely around two orthogonal axes relative to the first link hub 232 at the base end. The two orthogonal axes are Fig.17The rotation axis (center axis QA) of the turning angle φ and the rotation axis (axis passing through point O and orthogonal to center axis QA and center axis QB) of the bending angle θ are shown. The turning angle φ is the angle formed by the straight line formed by the projection of the reference line passing through the intersection of center axis QA and center axis QB of the second connecting rod hub 233 on the plane perpendicular to the center axis QA of the first connecting rod hub 232. The bending angle θ is the angle formed by the center axis QA of the first connecting rod hub 232 and the center axis QB of the second connecting rod hub 233. In this dual degree of freedom mechanism, although the structure is compact, the movable range of the second connecting rod hub 233 on the distal end side relative to the first connecting rod hub 232 on the base end side becomes larger.
[0142] The bending angle θ can be adjusted only by the movement of the link mechanism 234, unlike the multi-joint robot that requires the movement of multiple joints. Therefore, the parallel link mechanism 230 can move faster than the multi-joint robot. Fig.16 The parallel linkage mechanism 230 is used to collect image data required for machine learning, and compared with a multi-joint robot, a large amount of image data can be collected in a short time.
[0143] Fig.15 The actuator 231 for posture control of the angle adjustment device 208 shown is a rotary actuator including a speed reduction mechanism. The actuator 231 is coaxially arranged with the rotation shaft 242 on the surface of the base end member 240 of the first connecting rod hub 232. The actuator 231 and the speed reduction mechanism are integrally arranged, and the speed reduction mechanism is fixed to the base end member 240. On the three-set connecting rod mechanism 234, a speed reduction mechanism for changing the rotation shaft 242 can be arranged. Fig.16 Although three actuators 231 for posture control are provided at angles α1 to α3 in the embodiment, it is not necessary to provide three actuators 231. If the actuators 231 for posture control are provided in at least two of the three sets of link mechanisms 234, the posture of the second link hub 233 on the distal end side relative to the first link hub 232 on the proximal end side can be determined.
[0144] The parameter adjustment device 5 (information processing device) is preferably applied to Figures 14 to 17 Positioning control of a multi-axis robot such as the industrial machine 2 shown.
[0145] All contents of the embodiments disclosed this time should be considered as illustrative rather than limiting. The scope of the present disclosure should be considered to be indicated not by the description of the above embodiments but by the claims, and include all changes within the meaning and scope equivalent to the claims. Description of symbols
[0146] 1 control system, 2 industrial machinery, 3 controller, 4 sensor, 5, 5A, 5B parameter adjustment device, 10 coordinate data acquisition unit, 20 parameter generation unit, 30 parameter storage unit, 40 state data acquisition unit, 50 index data calculation unit, 60 sample storage unit, 70 parameter search unit, 71 search model construction unit, 72 search model storage unit, 73 parameter estimation unit, 80, 80A model learning unit, 90 model storage unit, 100, 100A parameter output unit, 204 linear motion unit, 204X first electric dynamic actuator, 204Y third electric actuator, 204Z third electric actuator, 206 output unit, 207 rotating mechanism, 208 angle adjustment device, 209 shooting device, 210 picking unit, 213 container, 214 workpiece placement table, 220 workpiece, 230 parallel connecting rod mechanism, 231 actuator, 232 first connecting rod hub, 233 second connecting rod hub, 234 connecting rod mechanism, 235, 236 end connecting rod components, 237 central connecting rod component, 240 base end component, 242 rotating shaft, 247 positioning mechanism.
Claims
1. An information processing device is an information processing device of a driving device controlled by a controller, characterized in that: include: a coordinate data acquisition unit that acquires coordinate data representing the motion coordinates of the drive device from the outside; a parameter generating unit for generating an action parameter for controlling the driving device by the controller; a parameter storage unit, which stores the action parameters and outputs an action instruction including the action parameters to the controller; a state data acquisition unit that acquires state data indicating a state of the drive device that is operating according to the operation parameter; an index data calculation unit that calculates index data based on the state data, the index data serving as an index for determining whether the action parameter is appropriate; a sample storage unit that stores sample data obtained by associating the action parameter with the index data; a parameter search unit that uses the sample data to search for an action parameter that is estimated to be appropriate based on the indicator data; as well as A model learning unit generates a learning model using learning data obtained by associating action parameters estimated as appropriate by the parameter search unit with the coordinate data, the learning model being used to estimate action parameters, i.e., appropriate parameters, suitable for performing an action according to the coordinate data based on the coordinate data.
2. The information processing device according to claim 1, wherein: Also includes: A model storage unit, the model storage unit storing the learning model generated by the model learning unit; as well as A parameter output unit outputs the appropriate parameter by inputting the coordinate data acquired by the coordinate data acquisition unit into the learning model stored in the model storage unit.
3. The information processing device according to claim 1 or 2, characterized in that: The parameter search unit issues a command to the controller so that the drive device is controlled using the operation parameters estimated to be appropriate by the parameter search unit. The state data acquisition unit acquires search state data indicating a state of the drive device when the drive device is operated with the operation parameters estimated by the parameter search unit to be appropriate. The index data calculation unit calculates the index data based on the search status data, The sample storage unit stores data obtained by associating the action parameter determined to be appropriate based on the search status data with the coordinate data as the learning data, The model learning unit generates the learning model using the learning data stored in the sample storage unit.
4. The information processing device according to claim 1 or 2, characterized in that: The state data acquisition unit acquires search state data indicating a state of the drive device when the drive device is operated with the operation parameters estimated by the parameter search unit to be appropriate. The index data calculation unit calculates two or more indexes based on the search status data, and sets a combination of the two or more calculated indexes as the index data; The parameter search unit estimates the operation parameters determined to be appropriate using a multi-objective optimization method based on the respective indices constituting the index data.
5. The information processing device according to claim 1 or 2, characterized in that: The parameter generation unit generates a first predetermined number of motion parameters set according to a parameter search method of the parameter search unit.
6. The information processing device according to claim 1 or 2, characterized in that: When the sample storage unit stores a second predetermined number of learning data set according to the model learning method of the model learning unit, the model learning unit generates the learning model using the second predetermined number of learning data.
7. The information processing device according to claim 1 or 2, characterized in that: The parameter search unit comprises: a search model construction unit that generates a search model for estimating the index data from the action parameter using the sample data stored in the sample storage unit; A search model storage unit that stores the search model; and A parameter estimating unit searches for an operation parameter estimated to be appropriate based on the indicator data estimated using the search model.
8. The information processing device according to claim 1 or 2, characterized in that: The state data acquisition unit acquires torque data from the driving device. The index data calculation unit uses a linear combination of a torque vibration amplitude value and an attenuation rate of a torque waveform calculated based on the torque data as an index representing residual vibration of the drive device after positioning.
9. The information processing device according to claim 1 or 2, characterized in that: The model learning unit generates a classification model for classifying the learning data stored in the sample storage unit into a plurality of groups, and a plurality of regression models provided to correspond to the plurality of groups, respectively.
Citation Information
Patent Citations
Parameter adjustor
JP2020035159A