WO2020189344A1 - 制御装置および制御プログラム - Google Patents

制御装置および制御プログラム Download PDF

Info

Publication number
WO2020189344A1
WO2020189344A1 PCT/JP2020/009713 JP2020009713W WO2020189344A1 WO 2020189344 A1 WO2020189344 A1 WO 2020189344A1 JP 2020009713 W JP2020009713 W JP 2020009713W WO 2020189344 A1 WO2020189344 A1 WO 2020189344A1
Authority
WO
WIPO (PCT)
Prior art keywords
axis
control
command position
command
operation amount
Prior art date
Application number
PCT/JP2020/009713
Other languages
English (en)
French (fr)
Inventor
正樹 浪江
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to KR1020217029731A priority Critical patent/KR20210129126A/ko
Priority to EP20773857.6A priority patent/EP3944033B1/en
Priority to US17/437,035 priority patent/US11697129B2/en
Priority to CN202080019227.4A priority patent/CN113614653B/zh
Publication of WO2020189344A1 publication Critical patent/WO2020189344A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05DPROCESSES FOR APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05D1/00Processes for applying liquids or other fluent materials
    • B05D1/26Processes for applying liquids or other fluent materials performed by applying the liquid or other fluent material from an outlet device in contact with, or almost in contact with, the surface
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05CAPPARATUS FOR APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05C5/00Apparatus in which liquid or other fluent material is projected, poured or allowed to flow on to the surface of the work
    • B05C5/02Apparatus in which liquid or other fluent material is projected, poured or allowed to flow on to the surface of the work the liquid or other fluent material being discharged through an outlet orifice by pressure, e.g. from an outlet device in contact or almost in contact, with the work
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05DPROCESSES FOR APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05D1/00Processes for applying liquids or other fluent materials
    • B05D1/26Processes for applying liquids or other fluent materials performed by applying the liquid or other fluent material from an outlet device in contact with, or almost in contact with, the surface
    • B05D1/265Extrusion coatings
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05DPROCESSES FOR APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05D3/00Pretreatment of surfaces to which liquids or other fluent materials are to be applied; After-treatment of applied coatings, e.g. intermediate treating of an applied coating preparatory to subsequent applications of liquids or other fluent materials
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/402Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45013Spraying, coating, painting
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49231Keep tool, probe at constant distance from workpiece surface

Definitions

  • This technology relates to control devices and control programs.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2004-298697 (Patent Document 1), even when the surface of the substrate has waviness, the die head for discharging the coating liquid is sufficiently close to the substrate to form a uniform coating film on the substrate.
  • the coating method to be applied is disclosed.
  • the step of measuring the shape of the surface of the substrate before coating and the distance between the die head for discharging the coating liquid and the substrate are adjusted based on the measurement result of the shape, and the die head for discharging the coating liquid is used as the surface of the substrate. It has a step of moving it according to the shape of.
  • the die head for discharging the coating liquid is moved up and down while following the shape of the surface of the substrate while moving the die head for discharging the coating liquid in the direction parallel to the substrate. Therefore, the mechanism for moving the coating liquid discharging die head in the direction parallel to the substrate and the mechanism for moving the coating liquid discharging die head up and down are controlled to be linked with each other.
  • Patent Document 1 does not consider the difference in control response delay between the two mechanisms.
  • the undulation gradient of the surface of the object is large, or when the moving speed of the controlled object is high, the controlled object cannot be made to follow the shape of the surface of the object with high accuracy.
  • the present disclosure has been made in view of the above problems, and an object of the present disclosure is to provide a control device and a control program capable of accurately following the shape of the surface of an object to be controlled.
  • the control device is connected to a plurality of drive devices for changing the relative positional relationship between the object and the controlled object that executes a predetermined process on the surface of the object, and has a control cycle.
  • the operation amount is output to a plurality of drive devices each time.
  • the plurality of drive devices include a first drive device for moving the controlled object relative to the object along a plane facing the surface of the object, and a controlled object along an orthogonal axis orthogonal to the plane. Includes a second drive device for relative movement with respect to.
  • the control device includes a first generation unit, a first control unit, a second generation unit, and a second control unit.
  • the first generation unit generates the first command position on the plane of the controlled object in each control cycle based on the target trajectory.
  • the first control unit is subjected to model prediction control using a first dynamic characteristic model and a first command position showing the relationship between the first operation amount output to the first drive device and the position on the plane of the controlled object. Generate one operation amount.
  • the second generation unit generates the second command position on the orthogonal axis of the control target in each control cycle.
  • the second control unit uses model prediction control using a second dynamic characteristic model and a second command position that show the relationship between the second operation amount output to the second drive device and the position on the orthogonal axis of the controlled object.
  • Generate a second manipulation amount The second generation unit generates the second command position so that the distance between the controlled object and the surface of the object becomes constant based on the shape data indicating the surface shape of the object and the first command position.
  • the control target is moved according to the operation amount generated by the model prediction control.
  • the second command position on the orthogonal axis in each control cycle is generated based on the shape data and the first command position.
  • the controlled object can be made to follow the shape of the surface of the work W with high accuracy.
  • the first drive device moves the controlled object relative to the object along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object on the first axis.
  • the shape data indicates the position on the orthogonal axis of the foot of the perpendicular line drawn from the point to the orthogonal axis for each of the plurality of points on the line where the first axis is projected on the surface of the object.
  • the second generation unit selects from a plurality of points two points sandwiching the processing target point on the surface of the target object to be processed when the control target is located at the first command position.
  • the second generation unit obtains the position on the orthogonal axis of the foot of the perpendicular line drawn from the processing target point to the orthogonal axis by the interpolation calculation using the positions of the two selected points on the orthogonal axis, and determines the position of the processing target point on the orthogonal axis.
  • a second command position is generated based on the position on the orthogonal axis.
  • the position on the orthogonal axis of the foot of the perpendicular line drawn from the processing target point to the above orthogonal axis is determined by the interpolation calculation. Can be asked. Then, the second command position is generated based on the position on the orthogonal axis. In this way, the second command position corresponding to the first command position can be easily generated according to the surface shape of the object.
  • the first drive device moves the controlled object relative to the object along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object on the first axis.
  • the shape data indicates the position on the orthogonal axis of the foot of the perpendicular line drawn from the point to the orthogonal axis for each of the plurality of points on the line where the first axis is projected on the surface of the object.
  • the second generation unit selects and selects the point closest to the processing target point on the surface of the target object to be processed when the control target is located at the first command position from a plurality of points.
  • a second command position is generated based on the position of the point on the orthogonal axis.
  • the second command position is easily generated by reading the data of the point closest to the processing target point from the shape data. As a result, the calculation load for generating the second command position can be suppressed.
  • the first drive device moves the controlled object relative to the object along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object on the first axis.
  • the plurality of drive devices further include a third drive device for moving the controlled object relative to the object along a second axis on a plane different from the first axis.
  • the control device includes a third generation unit that generates a third command position on the second axis of the control target in each control cycle based on the target trajectory, and a third operation amount and a control target that are output to the third drive device.
  • the second generation unit generates the second command position based on the third command position in addition to the shape data and the first command position.
  • the controlled object can move to an arbitrary position on the plane facing the surface of the object according to the first command position and the third command position.
  • the second command position on the orthogonal axis in each control cycle is generated based on the shape data, the first command position, and the third command position.
  • the controlled object can be made to follow the shape of the surface of the work W with high accuracy.
  • the shape data indicates the position on the orthogonal axis of the foot of the perpendicular line drawn from the point to the orthogonal axis for each of the plurality of points on the surface of the object.
  • the second generation unit is located around the processing target point on the surface of the object to be processed when the control target is located at the first command position and the third command position from among a plurality of points. Select at least three points.
  • the second generation unit obtains the position on the orthogonal axis of the foot of the perpendicular line drawn from the processing target point to the orthogonal axis by the interpolation calculation using the positions of at least three selected points on the orthogonal axis, and the processing target point.
  • a second command position is generated based on the position on the orthogonal axis of.
  • the second command position is generated based on the position on the orthogonal axis.
  • the first command position and the second command position corresponding to the third command position can be easily generated according to the surface shape of the object.
  • the control program is connected to a plurality of drive devices for changing the relative positional relationship between the object and the controlled object that executes a predetermined process on the surface of the object, and has a control cycle.
  • This is a program for realizing a control device that outputs an operation amount to a plurality of drive devices each time.
  • the plurality of drive devices include a first drive device for moving the controlled object relative to the object along a plane facing the surface of the object, and a controlled object along an orthogonal axis orthogonal to the plane. Includes a second drive device for relative movement with respect to.
  • the control program causes the computer to perform the first to fourth steps.
  • the first step is a step of generating a first command position on the plane of the controlled object in each control cycle based on the target trajectory.
  • the second step is based on model prediction control using the first dynamic characteristic model and the first command position, which show the relationship between the first operation amount output to the first drive device and the position on the plane of the controlled object. It is a step of generating one operation amount.
  • the third step is a step of generating a second command position on the orthogonal axis of the controlled object in each control cycle.
  • the fourth step is based on model prediction control using a second dynamic characteristic model and a second command position that show the relationship between the second operation amount output to the second drive device and the position on the orthogonal axis of the controlled object. This is the step of generating the second operation amount.
  • the third step is to generate a second command position so that the distance between the controlled object and the surface of the object is constant, based on the shape data indicating the surface shape of the object and the first command position. Including.
  • the controlled object can be made to follow the shape of the surface of the object with high accuracy.
  • the controlled object can be made to follow the shape of the surface of the object with high accuracy.
  • FIG. 1 is a schematic diagram showing a configuration example of a control system to which a control device according to the present embodiment is applied.
  • FIG. 2 is a diagram showing a moving example of the coating device 300 provided in the control system 1 shown in FIG.
  • the control system 1 of the example shown in FIG. 1 is a system for applying a coating liquid to the surface of an object (hereinafter, referred to as “work W”), and has a transport device 2 for transporting the work W and shape measurement. It includes a sensor 3, a coating device 300, a plurality of servo drivers 200, and a control device 100.
  • the control system is not limited to the example shown in FIG. 1, and may be a system that executes some processing (for example, laser processing, imaging of an inspection image, etc.) on the surface of the work W.
  • a laser processing machine is provided instead of the coating device 300, and when imaging an inspection image on the surface of the work W, the coating device 300 An imaging device is provided instead.
  • the work W in the example shown in FIG. 1 is a substrate.
  • the thickness direction of the work W will be the Z-axis direction
  • the two axes orthogonal to the Z-axis will be the X-axis and the Y-axis.
  • the transport device 2 has, for example, a transport belt on which the work W is placed, and by driving the transport belt, the work W is transported in the order of the shape measurement sensor 3 to the coating device 300.
  • the transport device 2 temporarily stops the transport of the work W when the work W is located below the shape measurement sensor 3 and the coating device 300.
  • the transport device 2 restarts the transport of the work W after the shape measurement of the work W by the shape measurement sensor 3 and the coating process of the work W by the coating device 300 are completed.
  • the shape measurement sensor 3 is a sensor that measures the surface shape of the work W, and is composed of, for example, a two-dimensional laser displacement sensor.
  • the shape measurement sensor 3 measures the surface shape for each work W, and transmits the shape data obtained by the measurement to the control device 100.
  • the shape measurement sensor 3 measures, for example, the position on the Z axis of the foot of the perpendicular line drawn from a plurality of points on the surface of the work W.
  • the plurality of points on the surface of the work W are located at equal intervals, for example, on a line in which the X axis is projected onto the surface of the work W along the Z axis.
  • the coating device 300 has a coating head 302, and the coating liquid is applied to the surface of the work W from the coating head 302.
  • the coating device 300 moves the servomotor 304X for moving the coating head 302 along the X axis on the XY plane facing the surface of the work W, and the coating head 302 along the Z axis orthogonal to the XY plane. It has a servomotor 304Z for the purpose.
  • the plurality of servo drivers 200 are drive devices for changing the relative positional relationship between the work W and the coating head 302, and include the servo drivers 200X and 200Z.
  • the servo drivers 200X and 200Z are provided corresponding to the servomotors 304X and 304Z, respectively, and drive the corresponding servomotors. That is, the servo driver 200X drives the servomotor 304X to move the coating head 302 along the X axis on the XY plane facing the surface of the work W. As a result, the coating head 302 moves relative to the work W along the X-axis direction.
  • the servo driver 200Z drives the servomotor 304Z to move the coating head 302 along the Z axis orthogonal to the XY plane. As a result, the coating head 302 moves relative to the work W along the Z-axis direction.
  • the servo drivers 200X and 200Z generate a drive signal for the corresponding servomotor based on the command value (command position or command speed) from the control device 100 and the feedback value from the corresponding servomotor.
  • the servo drivers 200X and 200Z drive the corresponding servomotors by outputting the drive signal generated to the corresponding servomotors.
  • the servo drivers 200X and 200Z receive an output signal from an encoder coupled to the rotation shaft of the corresponding servo motor as a feedback value. From the feedback value, the position, rotation phase, rotation speed, cumulative rotation speed, etc. of the servomotor can be detected.
  • the control device 100 is connected to a plurality of servo drivers 200 and controls the plurality of servo drivers 200. Specifically, the control device 100 outputs the operation amounts MVX and MVZ to the servo drivers 200X and 200Z, respectively, and performs movement control to move the coating head 302. Data including the amount of operation can be exchanged between the control device 100 and the servo drivers 200X and 200Z.
  • FIG. 1 shows a configuration example in which the control device 100 and the servo drivers 200X and 200Z are communicated and connected via a fieldbus.
  • the present invention is not limited to such a configuration example, and any communication form can be adopted as long as the algorithm described below is realized.
  • the control device 100 and the servo drivers 200X and 200X may be directly connected by a signal line.
  • the control device 100 generates the operation amounts MVX and MVZ to be output to the servo drivers 200X and 200Z by model prediction control for each control cycle.
  • the control device 100 outputs the generated operation amounts MVX and MVZ as command values (designated position or command speed) to the servo drivers 200X and 200Z, respectively.
  • the control device 100 generates a first command position on the X-axis of the coating head 302 in each control cycle based on the target trajectory.
  • the control device 100 outputs an operation amount to the servo driver 200X by model prediction control using a first dynamic characteristic model and a first command position indicating the relationship between the operation amount MVX and the position of the coating head 302 on the X axis. Generate MVX.
  • the control device 100 generates a second command position on the Z axis of the coating head 302 in each control cycle.
  • the control device 100 outputs an operation amount to the servo driver 200Z by model prediction control using a second dynamic characteristic model showing the relationship between the operation amount MVZ and the position of the coating head 302 on the Z axis and the second command position. Generate MVZ.
  • the control device 100 generates a second command position so that the distance between the coating head 302 and the surface of the work W becomes constant based on the shape data measured by the shape measurement sensor 3 and the first command position.
  • control device 100 controls the movement of the coating head 302 by model prediction control.
  • the second command position on the Z axis in each control cycle is generated based on the shape data.
  • the coating head 302 can be made to follow the shape of the surface of the work W with high accuracy.
  • control device hardware configuration example The control device 100 according to the present embodiment may be implemented by using a PLC (programmable controller) as an example.
  • the processing described later may be realized by the processor executing the control program (including the system program and the user program described later) stored in advance.
  • FIG. 3 is a schematic diagram showing an example of the hardware configuration of the control device 100 according to the present embodiment.
  • the control device 100 includes a processor 102 such as a CPU (Central Processing Unit) and an MPU (Micro-Processing Unit), a chipset 104, a main memory 106, a flash memory 108, and an external network. It includes a controller 116, a memory card interface 118, field bus controllers 122, 124, an external network controller 116, and a memory card interface 118.
  • the processor 102 reads the system program 110 and the user program 112 stored in the flash memory 108, expands them in the main memory 106, and executes them to realize arbitrary control over the controlled object.
  • the processor 102 executes the system program 110 and the user program 112
  • the processor 102 executes the output of the operation amount to the servo driver 200, the processing related to the data communication via the fieldbus, and the like, which will be described later.
  • the system program 110 includes an instruction code for providing basic functions of the control device 100 such as data input / output processing and execution timing control.
  • the user program 112 is arbitrarily designed according to the control target, and includes a sequence program 112A for executing sequence control and a motion program 112B for executing motion control.
  • a function block is a component of a program executed by the control device 100, and means a modularized program element used a plurality of times.
  • the chipset 104 realizes the processing of the control device 100 as a whole by controlling each component.
  • the fieldbus controller 122 is an interface for exchanging data with various devices connected to the control device 100 through the fieldbus. As an example of such a device, a shape measurement sensor 3 is connected. The shape data received from the shape measurement sensor 3 by the fieldbus controller 122 is stored in a storage device such as a flash memory 108.
  • the fieldbus controller 124 is an interface for exchanging data with various devices connected to the controller 100 through the fieldbus. As an example of such a device, a servo driver 200 is connected.
  • the fieldbus controllers 122 and 124 can give arbitrary commands to the connected devices and can acquire arbitrary data (including measured values) managed by the devices.
  • the fieldbus controller 122 also functions as an interface for exchanging data with the shape measurement sensor 3.
  • the fieldbus controller 124 also functions as an interface for exchanging data with the servo driver 200.
  • the external network controller 116 controls the exchange of data through various wired / wireless networks.
  • the memory card interface 118 is configured so that the memory card 120 can be attached and detached, and data can be written to and read from the memory card 120.
  • FIG. 4 is a schematic diagram showing an example of the functional configuration of the servo driver and the control device according to the present embodiment.
  • the servo drivers 200X and 200Z include subtractors 210X and 210Z and feedback control units 212X and 212Z, respectively.
  • the subtractor 210X receives the operation amount MVX from the control device 100 as a command value (command position or command speed), and receives the output signal from the encoder coupled to the servomotor 304X as a feedback value.
  • the subtractor 210Z receives the operation amount MVZ from the control device 100 as a command value (command position or command speed), and receives the output signal from the encoder coupled to the servomotor 304Z as a feedback value.
  • the subtractors 210X and 210Z calculate the deviation between the received command value and the feedback value.
  • the feedback control units 212X and 212Z execute control operations according to the deviations output from the subtractors 210X and 210Z, respectively.
  • the feedback control units 212X and 212Z execute the control calculation according to the position control loop and the speed control loop.
  • the feedback control units 212X and 212Z execute a control calculation according to the speed control loop.
  • the command speed is calculated according to the position deviation between the measurement position of the servomotor obtained from the feedback value and the command position given by the control device 100.
  • the torque value is calculated according to the speed deviation between the command speed and the measured speed of the servomotor obtained from the feedback value.
  • the feedback control units 212X and 212Z output a current command for generating the torque of the calculated torque value to the servomotor.
  • control device function configuration example> As shown in FIG. 4, the control device 100 includes a storage unit 130, an X-axis command generation module 140, a Z-axis command generation module 150, and model prediction control modules 142 and 152.
  • model predictive control is referred to as "MPC (Model Predictive Control)".
  • the storage unit 130 is composed of the flash memory 108 and the main memory 106 shown in FIG. 3, and stores the shape data 132 for each work W received from the shape measurement sensor 3.
  • the X-axis command generation module 140 generates a first command position (hereinafter, referred to as “command position SPX”) on the X-axis of the coating head 302 in each control cycle according to a target trajectory created in advance.
  • the X-axis command generation module 140 outputs the generated command position SPX to the model prediction control module 142 and the Z-axis command generation module 150.
  • the X-axis command generation module 140 generates time-series data of the command position SPX from the target trajectory, and reads the command position SPX of each control cycle from the time-series data.
  • the control device 100 may store in advance the time-series data of the command position SPX that defines the target trajectory.
  • the X-axis command generation module 140 may access the time-series data of the command position SPX stored in advance. In this way, the command position SPX for each control cycle may be sequentially calculated from the target trajectory according to a predetermined calculation formula, or may be stored in advance in the form of time series data.
  • the Z-axis command generation module 150 is on the Z-axis of the coating head 302 in each control cycle so that the distance between the coating head 302 and the surface of the work W becomes constant based on the shape data 132 and the command position SPX.
  • a second command position (hereinafter referred to as "command position SPZ") is generated. A specific method for generating the command position SPZ will be described later.
  • the model prediction control module 142 outputs to the servo driver 200X by model prediction control using the first dynamic characteristic model showing the relationship between the operation amount MVX and the position of the coating head 302 on the X axis and the command position SPX. Generate a quantity MVX.
  • the model prediction control module 142 generates the operation amount MVX so that the position of the coating head 302 on the X axis coincides with the command position SPX.
  • the model prediction control module 152 is on the Z-axis of the coating head 302 by model prediction control using the second dynamic characteristic model showing the relationship between the operation amount MVZ and the position of the coating head 302 on the Z-axis and the command position SPZ.
  • the operation amount MVZ to be output to the servo driver 200Z is generated so that the position of is matched with the command position SPZ.
  • the first dynamic characteristic model and the second dynamic characteristic model are created by prior tuning.
  • a dynamic characteristic model is created based on the input value (operation amount) and the output value (measurement position of the coating head 302) obtained in the tuning.
  • the first dynamic characteristic model and the second dynamic characteristic model are represented by, for example, the following function P (z -1 ).
  • the function P (z -1 ) is a discrete-time transfer function that combines a dead time element and an nth-order lag element.
  • the variable a 1 ⁇ a n and the variable b 1 ⁇ b m of the dead time d and n-order lag element of the dead time element is determined as model parameters.
  • the waste time is the time from when an input value is given until the corresponding output appears (that is, the delay time from input to output).
  • the optimum values may also be determined for the order n and the order m.
  • Such a model parameter creation process (that is, system identification) may be executed by the least squares method or the like.
  • the output y when the manipulated variable MVX is given to the variable u of y P (z -1 ) * u so as to coincide with the measurement position on the X axis of the coating head 302 (that is, an error).
  • Each value of the model parameters defining the first dynamic characteristic model is determined (so that is minimized).
  • the values of the model parameters that define the second dynamic characteristic model are determined.
  • a dynamic characteristic model showing the relationship between the operation amount MVX and the position of the servomotor 304X may be used as the first dynamic characteristic model.
  • the vibration of the coating head 302 is negligibly small, the position of the coating head 302 on the Z axis and the position of the servomotor 304Z have a one-to-one relationship. Therefore, a dynamic characteristic model showing the relationship between the operation amount MVZ and the position of the servomotor 304Z may be used as the second dynamic characteristic model.
  • Model prediction control is control that generates an operation amount so that the position of the control target (here, the coating head 302) in the prediction horizon matches the target trajectory. For example, the amount of change in the control amount of the control object required to match the position of the control object in the predicted horizon with the target trajectory is determined, and the operation amount for generating the change amount in the output of the dynamic characteristic model is calculated. To. A known method can be adopted as model predictive control.
  • FIG. 5 is a diagram showing an example of the surface shape of the work W.
  • FIG. 6 is a diagram showing an example of shape data of the surface of the work W.
  • FIG. 7 is a diagram showing an example of time change of the command position SPX.
  • FIG. 8 is a diagram illustrating a method of generating a command position SPZ by interpolation calculation.
  • FIG. 9 is a diagram showing an example of time series data of the command position SPX and the command position SPZ.
  • FIG. 10 is a diagram showing an example of time change of the command position SPZ.
  • FIG. 5 shows the surface shape of the work W having a length of 1000 mm in the X-axis direction. As shown in FIG. 5, the surface of the work W is wavy and undulating along the X-axis direction.
  • FIG. 6 shows an example of shape data 132 obtained by measuring the surface shape of the work W shown in FIG. 5 by the shape measurement sensor 3.
  • the shape data 132 includes each data element 134 of a plurality of points on a line in which the X-axis is projected onto the surface of the work W.
  • the plurality of points are evenly spaced (1 mm) along the X-axis direction.
  • the data element 134 is the position on the X-axis of the foot of the perpendicular line descending from the point on the surface of the corresponding work W to the X-axis (hereinafter, referred to as "X-axis position") and downward from the point to the Z-axis.
  • Z-axis position The position on the Z-axis of the foot of the perpendicular line (hereinafter, referred to as "Z-axis position") is shown.
  • the X-axis position is shown with reference to the foot of a perpendicular line drawn from one end of the line projected on the surface of the work W to the X-axis.
  • the Z-axis position is indicated with reference to a position separated by a predetermined distance along the Z-axis from the upper surface of the transport belt of the transport device 2.
  • the X-axis command generation module 140 generates time-series data of the command position SPX for each control cycle from, for example, a target trajectory which is a fifth-order trajectory.
  • the Z-axis command generation module 150 generates a command position SPZ corresponding to the command position SPX for each control cycle based on the shape data 132 shown in FIG.
  • the command position SPX of the i-th control cycle is referred to as the command position SPX (i)
  • the command position SPZ of the i-th control cycle is referred to as the command position SPZ (i).
  • the Z-axis command generation module 150 has two points in the shape data 132 that sandwich the processing target point on the surface of the work W to be coated when the coating head 302 is located at the command position SPX (i). Select the first data element and the second data element corresponding to, respectively.
  • the servo driver 200X controls the servomotor 304X so that the coating liquid ejection port of the coating head 302 is located at the command position. Further, it is assumed that the coating liquid is ejected from the coating liquid ejection port in the Z-axis direction. In this case, the projection point of the command position SPX (i) on the surface of the work W becomes the processing target point when the coating head 302 is located at the command position SPX (i). Therefore, as shown in FIG.
  • the Z-axis command generation module 150 has the same position as the command position SPX (i) or one side (for example, the negative side) of the command position SPX (i) from the shape data 132. Select the first data element that is at and indicates the X-axis position closest to the command position SPX (i). Further, the Z-axis command generation module 150 has a second shape data 132 that is on one side (for example, the positive side) of the command position SPX and indicates the X-axis position closest to the command position SPX (i). Select a data element.
  • the projection point of the command position SPX (i) on the surface of the work W and the coating head 302 are set to the command position SPX ( It may not match the processing target point when it is located in i).
  • the first data element and the second data element corresponding to the two points sandwiching the processing target point are selected from the shape data 132 in consideration of the difference between the projection point and the processing target point. Be selected.
  • the Z-axis command generation module 150 performs an interpolation calculation using the selected first data element and the second data element, for example, according to the following [Equation 2], the projection point of the command position SPX (i) on the surface of the work W.
  • the position Z (i) on the Z axis of the foot of the perpendicular line drawn from the above is obtained.
  • WX (j) indicates the X-axis position indicated by the first data element.
  • WZ (j) indicates the Z-axis position indicated by the first data element.
  • WX (j + 1) indicates the X-axis position indicated by the second data element.
  • WZ (j + 1) indicates the Z-axis position indicated by the second data element (see FIG. 8).
  • the Z-axis command generation module 150 is on the Z-axis of the foot of the perpendicular line drawn from the processing target point (projection point of the command position SPX (i) to the surface of the work W) obtained as described above to the Z-axis.
  • the command position SPZ (i) is generated based on the position Z (i).
  • the Z-axis command generation module 150 may generate a position separated from the position Z (i) by a certain distance in the Z-axis direction as the command position SPZ (i).
  • the constant distance is set according to a desired clearance in the Z-axis direction between the surface of the work W and the coating head 302.
  • a desired clearance is set to 0 (that is, a case where the position Z (i) is set to the command position SPZ (i)) will be described.
  • FIG. 9 shows the time series data of the command position SPZ for each control cycle (1 ms) generated by the above calculation.
  • the command position SPZ is generated as follows.
  • the Z-axis command generation module 150 selects a data element 134a (see FIG. 6) that is on the negative side of the command position SPX and indicates the X-axis position closest to the command position SPX as the first data element. Further, the Z-axis command generation module 150 selects a data element 134b (see FIG. 6) which is on the positive side of the command position SPX and indicates the X-axis position closest to the command position SPX as the second data element.
  • the Z-axis command generation module 150 generates the command position SPZ according to the above [Equation 2] by the interpolation calculation using the selected data elements 134a and 134b.
  • FIG. 10 shows a graph of the time series data of the command position SPZ shown in FIG.
  • FIG. 11 is a flowchart showing a processing procedure of the control device according to the present embodiment.
  • the step shown in FIG. 11 may be realized by the processor 102 of the control device 100 executing a control program (including the system program 110 and the user program 112 shown in FIG. 2).
  • control device 100 generates a command position SPX for each control cycle according to a predetermined target trajectory (step S1).
  • control device 100 calculates the command position SPZ for each control cycle based on the shape data 132 and the command position SPX for each control cycle (step S2).
  • control device 100 determines whether or not to start the control (step S3). For example, the control device 100 may check the states of the servo drivers 200X and 200Z, the coating device 300, and other devices, and may determine that the movement control is started when the preparation completion notification is received from each device. If it is determined that the control is not started (NO in step S3), the process of the control device 100 is returned to step S3.
  • step S3 When it is determined that the control is to be started (YES in step S3), the control device 100 performs model prediction control using the first dynamic characteristic model and the command position SPX in step S4, and the operation amount to be output to the servo driver 200X. Calculate MVX. Further, in step S4, the control device 100 performs model prediction control using the second dynamic characteristic model and the command position SPZ, and calculates the operation amount MVZ to be output to the servo driver 200Z.
  • step S5 determines whether or not the control should be terminated.
  • the control device 100 may determine that the control is terminated when the position of the coating head 302 reaches the end point of the target trajectory. If it is determined that the control is not terminated (NO in step S5), the processing of the control device 100 is returned to step S4. As a result, step S4 is repeated every control cycle.
  • step S5 When it is determined that the control is terminated (YES in step S5), the process of the control device 100 ends.
  • FIG. 12 is a diagram showing the source code executed in step S2.
  • j indicates the data number of the data element 134 in the shape data 132, and can take an integer from 0 to DNW.
  • DNW indicates the maximum value of the number of the data element 134 in the shape data 132.
  • js indicates the start number of j in the FOR statement.
  • i indicates the number of the control cycle and can take an integer from 0 to DNC.
  • DNC indicates the maximum value of the data number in the time series data of the command position SPX generated from the target trajectory.
  • X (i) indicates the command position SPX in the i-th control cycle.
  • Z (i) indicates the position on the Z axis of the foot of the perpendicular line drawn from the projection point (processing target point) of the command position SPX on the surface of the work W to the Z axis, and is the command position SPZ in the i-th control cycle. Used as.
  • FIG. 12 shows the source code when the coating head 302 is moved in one direction along the X axis. Therefore, when calculating the command position SPZ (i) in the i-th control cycle, among the plurality of data elements 134 included in the shape data 132, the command position SPZ (i) in the (i-1) th control cycle -1) Data elements before the data element used in the calculation are not used. Therefore, the first data element and the second data element are selected from the data elements after the data element used when calculating the command position SPZ (i-1) in the (i-1) th control cycle. As a result, the calculation load is reduced as compared with the case where the first data element and the second data element are selected from all the data elements.
  • Simulation result> A simulation was performed to verify the effect of the control device 100 according to the present embodiment.
  • FIG. 13 is a diagram showing an example of a simulation result when the command position SPX shown in FIG. 7 is given to the servo driver 200X as a command value.
  • FIG. 14 is a diagram showing an example of a simulation result when the command position SPZ shown in FIG. 10 is given to the servo driver 200Z as a command value.
  • FIG. 15 shows a simulation when the operation amount MVX (here, the speed command is shown) generated by the model prediction control using the command position SPX shown in FIG. 7 and the first dynamic characteristic model is given to the servo driver 200X. It is a figure which shows the example of the result.
  • FIG. MVX here, the speed command is shown
  • FIG. 16 shows a simulation when the operation amount MVZ (here, the speed command is shown) generated by the model prediction control using the command position SPZ shown in FIG. 10 and the second dynamic characteristic model is given to the servo driver 200Z. It is a figure which shows the example of the result. 13 to 16 show simulation results when the surface of the work W has the shape shown in FIG. 5 and the control period is 1 ms. Further, FIGS. 15 and 16 show simulation results when the predicted horizon is 6 ms.
  • MVZ the speed command is shown
  • FIGS. 13 to 16 show the deviation between the command position and the actual position of the coating head 302.
  • the position deviation becomes large when the moving speed is high.
  • FIGS. 15 and 16 it was confirmed that the position deviation became substantially 0 by performing the model prediction control.
  • FIG. 17 is a diagram showing simulation results at X-axis positions 50 to 75 mm of the movement loci of the coating head when the command positions shown in FIGS. 7 and 11 are given to the servo drivers 200X and 200Z as command values, respectively.
  • FIG. 18 is a diagram showing simulation results at X-axis positions 550 to 575 mm of the movement loci of the coating head when the command positions shown in FIGS. 7 and 11 are given to the servo drivers 200X and 200Z as command values, respectively.
  • FIG. 19 is a diagram showing simulation results at X-axis positions 50 to 75 mm of the movement loci of the coating head when the operation amounts MVX and MVZ generated by the model prediction control are applied to the servo drivers 200X and 200Z, respectively.
  • FIG. 18 is a diagram showing simulation results at X-axis positions 50 to 75 mm of the movement loci of the coating head when the operation amounts MVX and MVZ generated by the model prediction control are applied to the servo drivers 200X
  • 20 is a diagram showing simulation results at X-axis positions 550 to 575 mm of the movement loci of the coating head when the operation amounts MVX and MVZ generated by the model prediction control are applied to the servo drivers 200X and 200Z, respectively.
  • 17 to 20 show the shape of the work W together with the movement locus of the coating head 302. The simulation was performed with the desired clearance in the Z-axis direction between the surface of the work W and the coating head 302 set to 0.
  • the control device 100 includes an X-axis command generation module 140, a model prediction control module 142, a Z-axis command generation module 150, and a model prediction control module 152.
  • the X-axis command generation module 140 generates a command position SPX on the X-axis of the coating head 302 in each control cycle based on the target trajectory.
  • the model prediction control module 142 is operated by model prediction control using the first dynamic characteristic model showing the relationship between the operation amount MVX output to the servo driver 200X and the position of the coating head 302 on the X axis and the command position SPX. Generate a quantity MVX.
  • the Z-axis command generation module 150 generates a command position SPZ on the Z-axis of the coating head 302 in each control cycle.
  • the model prediction control module 152 is operated by model prediction control using a second dynamic characteristic model showing the relationship between the operation amount MVZ output to the servo driver 200Z and the position of the coating head 302 on the Z axis and the command position SPZ. Generate a quantity MVZ.
  • the Z-axis command generation module 150 generates a command position SPZ so that the distance between the coating head 302 and the surface of the work W becomes constant based on the shape data 132 indicating the surface shape of the work W and the command position SPX. ..
  • the control device 100 having the above configuration controls the movement of the coating head 302 by model prediction control. At this time, the command position SPZ on the Z axis in each control cycle is generated based on the shape data. As a result, the coating head 302 can be made to follow the shape of the surface of the work W with high accuracy.
  • the shape data 132 indicates the position on the Z-axis of the foot of the perpendicular line drawn from the point to the Z-axis for each of the plurality of points on the line where the X-axis is projected on the surface of the work W.
  • the Z-axis command generation module 150 selects two points from the above-mentioned plurality of points that sandwich the processing target point on the surface of the work W to be coated when the coating head 302 is located at the command position SPX. select.
  • the Z-axis command generation module 150 performs an interpolation calculation using the positions of the two selected points on the Z-axis, and Z of the foot of the perpendicular line drawn from the point where the command position SPX is projected on the surface of the work W to the Z-axis.
  • the position on the axis is obtained, and the command position SPZ is generated based on the position on the Z axis.
  • the position of the foot on the Z axis can be obtained.
  • the command position SPZ is generated based on the position on the Z axis. In this way, the command position SPZ corresponding to the command position SPX can be easily generated according to the surface shape of the work W.
  • the coating device 300 includes a servomotor 304X that moves the coating head 302 along the X axis on the XY plane facing the surface of the work W.
  • the coating device 300 may include, instead of the servomotor 304X, a servomotor that rotates the coating head 302 along the XY plane about a reference axis orthogonal to the XY plane.
  • the control system 1 includes a servo driver that drives the servo motor instead of the servo driver 200X.
  • control device 100 may include a command generation module that generates a command angle with respect to the reference axis instead of the X-axis command generation module 140.
  • the control device 100 outputs to the servo driver by model prediction control using a dynamic characteristic model indicating the relationship between the operation amount and the rotation position of the coating head 302 and a command angle.
  • a model predictive control module that generates a quantity may be provided.
  • the shape measurement sensor 3 is a two-dimensional laser displacement sensor, and measures the Z-axis positions of a plurality of points at equal intervals along the X-axis direction on the surface of the work W. In this case, as shown in FIG. 6, the X-axis positions indicated by the plurality of data elements included in the shape data 132 are evenly spaced.
  • a one-dimensional laser displacement sensor may be used as the shape measurement sensor 3.
  • the Z-axis positions of a plurality of points on the surface of the work W are measured while moving the shape measurement sensor 3 in the X-axis direction in the same manner as the coating head 302. It is preferable to move the shape measurement sensor 3 in the X-axis direction along the same target trajectory as the coating head 302. As a result, the interval of the X-axis positions indicated by the plurality of data elements included in the shape data 132 substantially coincides with the interval of the time series data of the command position SPX.
  • the Z-axis command generation module 150 selects a data element corresponding to the point closest to the processing target point when the coating head 302 is located at the command position SPX of the control cycle from the shape data. You can select it. For example, the Z-axis command generation module 150 selects a data element indicating the X-axis position closest to the command position SPX from the shape data for each control cycle. The Z-axis command generation module 150 may generate the Z-axis position indicated by the selected data element as the command position SPZ of the control cycle. As described above, the Z-axis command generation module 150 does not need to perform the interpolation calculation according to the above [Equation 2]. As a result, the calculation load of the Z-axis command generation module 150 is reduced.
  • the coating device 300 moves the coating head 302 only along the X axis on the XY plane facing the surface of the work W.
  • the coating device 300 may further include a servomotor that moves the coating head 302 along the Y axis on the XY plane facing the surface of the work W.
  • FIG. 21 is a schematic diagram showing an example of the functional configuration of the control system according to the modified example 3.
  • the coating device 300 has a servomotor 304Y in addition to the servomotors 304X and 304Z.
  • the servomotor 304Y moves the coating head 302 (see FIG. 1) in the Y-axis direction. As a result, the coating head 302 moves relative to the work W along the Y-axis direction.
  • the control system 1A according to the third modification includes a servo driver 200Y for driving the servo motor 304Y in addition to the servo drivers 200X and 200Z.
  • the servo driver 200Y includes a subtractor 210Y and a feedback control unit 212Y.
  • the subtractor 210Y receives the operation amount MVY from the control device 100 as a command value (command position or command speed), and receives an output signal from the encoder coupled to the servomotor 304Y as a feedback value.
  • the subtractor 210Y calculates the deviation between the command value and the feedback value.
  • the feedback control unit 212Y executes a control operation according to the deviation output from the subtractor 210Y.
  • the control system 1A includes the control device 100A instead of the control device 100.
  • the control device 100A includes a Z-axis command generation module 150A instead of the Z-axis command generation module 150, and further includes a Y-axis command generation module 160 and a model prediction control module 162. It's different.
  • the storage unit 130 stores the shape data 133 instead of the shape data 132.
  • the Y-axis command generation module 160 generates a third command position (hereinafter, referred to as “command position SPY”) on the Y-axis of the coating head 302 in each control cycle according to a target trajectory created in advance.
  • the Y-axis command generation module 160 outputs the generated command position SPY to the model prediction control module 162.
  • the Y-axis command generation module 160 generates time-series data of the command position SPY from the target trajectory, and reads the command position SPY of each control cycle from the time-series data.
  • the control device 100A may store in advance the time series data of the command position SPY that defines the target trajectory.
  • the Y-axis command generation module 160 may access the time-series data of the command position SPY stored in advance. In this way, the command position SPY for each control cycle may be sequentially calculated from the target trajectory according to a predetermined calculation formula, or may be stored in advance in the form of time series data.
  • the model prediction control module 162 outputs to the servo driver 200Y by model prediction control using a third dynamic characteristic model showing the relationship between the operation amount MVY and the position of the coating head 302 on the Y axis and the command position SPY. Generate a quantity MVY.
  • the third dynamic characteristic model is created by the same method as the first dynamic characteristic model.
  • FIG. 22 is a diagram showing an example of shape data in the modified example 3.
  • the shape data 133 includes each data element 135 of a plurality of points arranged in a grid pattern on the surface of the work W.
  • the data element 135 includes the X-axis position of the foot of the perpendicular line descending from the point on the surface of the corresponding work W to the X-axis and the position of the foot of the perpendicular line descending from the point to the Y-axis on the Y-axis (hereinafter, "" It is referred to as "Y-axis position”) and the Z-axis position of the foot of the perpendicular line drawn from the point to the Z-axis.
  • the Z-axis command generation module 150A generates the command position SPZ in each control cycle based on the shape data 133 and the command positions SPX and SPY so that the distance between the coating head 302 and the surface of the work W becomes constant. ..
  • FIG. 23 is a diagram illustrating a method of generating the command position SPZ in the modification 3.
  • the Z-axis command generation module 150A is located around the processing target point on the surface of the work W to be applied when the coating head 302 is located at the command position SPX and the command position SPY from the shape data 133. Select the data element 135 corresponding to the four points.
  • the servo drivers 200X and 200Y control the servomotors 304X and 304Y, respectively, so that the coating liquid ejection port of the coating head 302 is located at the command position. Further, it is assumed that the coating liquid is ejected from the coating liquid ejection port in the Z-axis direction.
  • the Z-axis command generation module 150A selects the data element 135 corresponding to the four points located around the projection point. In the example shown in FIG.
  • (X-axis position and Y-axis position) are (WX (jx), WY (jy)), (WX (jx + 1), WY (jy)), (WX (jx), WY ( Data elements 135 of four points, which are jy + 1)), (WX (jx + 1), WY (jy + 1)), are selected.
  • the Z-axis command generation module 150A performs an interpolation calculation using the data elements 135 of the four selected points, and for example, according to the following [Equation 3], the foot of the perpendicular line drawn from the projection point (processing target point) to the Z-axis. The position Z (i) on the Z axis is obtained.
  • WZ (jx, jy) is a Z-axis position included in the data element of the point where (X-axis position, Y-axis position) is (WX (jx), WY (jy)).
  • WZ (jx + 1, jy) is a Z-axis position included in the data element of the point where (X-axis position, Y-axis position) is (WX (jx + 1, WY)).
  • WZ (jx, jy + 1) is a Z-axis position included in the data element of the point where (X-axis position, Y-axis position) is (WX (jx), WY (jy + 1)).
  • WZ (jx + 1, jy + 1) is a Z-axis position included in the data element of the point where (X-axis position, Y-axis position) is (WX (jx + 1), WY (jy + 1)).
  • the Z-axis command generation module 150 has a command position SPZ (i) based on the position Z (i) on the Z-axis of the foot of the perpendicular line drawn from the projection point (processing target point) to the Z-axis obtained as described above. ) Is generated.
  • the Z-axis command generation module 150 is the data elements 135 of the upper three points close to the processing target point (here, the projection point). May be selected. Then, the Z-axis command generation module 150 performs an interpolation calculation using the data elements of the three selected points, and the foot of the perpendicular line drawn from the projection point of the command position SPX (i) to the surface of the work W on the Z-axis. The position Z (i) on the Z axis is obtained.
  • the storage unit 130 stores the shape data 132 and 133 measured by the shape measurement sensor 3.
  • the storage unit 130 may store shape data indicating the shape of the surface of the work W, which is generated from the design data of the work W.
  • shape data generated from the design data can be used.
  • the plurality of servo drivers 200 are assumed to move the coating head 302. However, the plurality of servo drivers 200 may change the relative positional relationship between the work W and the coating head 302.
  • the plurality of servo drivers 200 may be configured to move the work W while the coating head 302 is fixed. For example, the work W may be placed on the XZ stage. In this case, the servo driver 200X controls the movement of the XZ stage in the X-axis direction to move the coating head 302 relative to the work W along the X-axis direction.
  • the servo driver 200Z controls the movement of the XZ stage in the Z-axis direction to move the coating head 302 relative to the work W along the Z-axis direction.
  • the work W may be placed on the XYZ stage.
  • the servo driver 200Y controls the movement of the XYZ stage in the Y-axis direction to move the coating head 302 relative to the work W along the Y-axis direction.
  • the servo driver 200X controls the movement of one of the coating head 302 and the work W (for example, the coating head 302) in the X-axis direction
  • the servo driver 200Z controls the movement of the other of the coating head 302 and the work W (for example, the coating head 302).
  • the movement of the work W) in the Z-axis direction may be controlled.
  • the servo driver 200Y may control the movement of any one of the coating head 302 and the work W in the Y-axis direction.
  • the plurality of drive devices (200, 200X, 200Y, 200Z) move the controlled object (302) relative to the object (W) along a plane facing the surface of the object (W).
  • the control device (100, 100A) is Based on the target trajectory, the first generation unit (140) that generates the first command position on the plane of the control target (302) in each control cycle, and Model prediction using the first dynamic characteristic model showing the relationship between the first operation amount output to the first drive device (200X) and the position of the controlled object (302) on the plane and the first command position.
  • a second control unit (152) that generates the second operation amount by predictive control is provided.
  • the second generation unit (150) has a control target (302) and a surface of the target object (W) based on the shape data indicating the surface shape of the target object (W) and the first command position.
  • the first drive device (200X) moves the controlled object (302) relative to the object (W) along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object (302) on the first axis.
  • the shape data indicates the position on the orthogonal axis of the foot of the perpendicular line drawn from the point to the orthogonal axis for each of the plurality of points on the line where the first axis is projected on the surface of the object (W).
  • the second generation unit (150) From the plurality of points, two points sandwiching a processing target point on the surface of the target object (W) to be processed when the control target (302) is located at the first command position. Select and By interpolation calculation using the positions of the two selected points on the orthogonal axis, the position of the foot of the perpendicular line drawn from the processing target point to the orthogonal axis is obtained on the orthogonal axis.
  • the control device (100) according to configuration 1, which generates the second command position based on the position of the processing target point on the orthogonal axis.
  • the first drive device (200X) moves the controlled object (302) relative to the object (W) along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object (302) on the first axis.
  • the shape data indicates the position on the orthogonal axis of the foot of the perpendicular line drawn from the point to the orthogonal axis for each of the plurality of points on the line where the first axis is projected onto the surface of the object.
  • the second generation unit (150) From the plurality of points, the point closest to the processing target point on the surface of the target object (W) to be processed when the control target (302) is located at the first command position is selected. Selected, The control device (100) according to configuration 1, which generates the second command position based on the position of the selected point on the orthogonal axis.
  • the first drive device (200X) moves the controlled object (302) relative to the object (W) along the first axis on the plane.
  • the first command position indicates a position on the first axis.
  • the first dynamic characteristic model shows the relationship between the first operation amount and the position of the controlled object (302) on the first axis.
  • the plurality of drive devices (200, 200X, 200Y, 200Z) move the controlled object (302) relative to the object (W) along a second axis on the plane different from the first axis.
  • a third generation unit (160) that generates a third command position on the second axis of the control target (302) in each control cycle based on the target trajectory.
  • a third dynamic characteristic model showing the relationship between the third operation amount output to the third drive device (200Y) and the position of the controlled object (302) on the second axis and the third command position were used.
  • a third control unit (162) that generates the third operation amount by model prediction control is further provided.
  • the shape data indicates, for each of the plurality of points on the surface of the object, the position of the foot of the perpendicular line drawn from the point to the orthogonal axis on the orthogonal axis.
  • the second generation unit (150) Among the plurality of points, when the control target (302) is located at the first command position and the third command position, the processing target on the surface of the target object (W) to be the target of the predetermined processing. Select at least three points located around the points and select By interpolation calculation using the positions of the selected at least three points on the orthogonal axis, the positions of the foot of the perpendicular line drawn from the processing target point to the orthogonal axis are obtained on the orthogonal axis.
  • the control device (100A) according to configuration 4, which generates the second command position based on the position of the processing target point on the orthogonal axis.
  • the plurality of drive devices (200, 200X, 200Y, 200Z) move the controlled object (302) relative to the object (W) along a plane facing the surface of the object (W).
  • the control program is applied to the computer.
  • the step of generating the second command position is based on the shape data indicating the surface shape of the object (W) and the first command position, and the surfaces of the control target (302) and the object (W).
  • a control program including a step of generating the second command position so that the distance to and from is constant.

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Numerical Control (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

制御装置は、目標軌道に基づいて、各制御周期における制御対象の平面上の第1指令位置を生成する第1生成部と、第1動特性モデルと第1指令位置とを用いたモデル予測制御により第1操作量を生成する第1制御部と、各制御周期における制御対象の直交軸上の第2指令位置を生成する第2生成部と、第2動特性モデルと第2指令位置とを用いたモデル予測制御により第2操作量を生成する第2制御部とを備える。第2生成部は、対象物の表面形状を示す形状データと第1指令位置とに基づいて、制御対象と対象物の表面との距離が一定になるように第2指令位置を生成する。これにより、制御対象は対象物の表面の形状に精度良く追従する。

Description

制御装置および制御プログラム
 本技術は、制御装置および制御プログラムに関する。
 特開2004-298697号公報(特許文献1)は、基板の表面にうねりがある場合であっても、塗布液吐出用ダイヘッドを基板に十分に近接させて、基板上に均一な塗布膜を形成する塗布方法を開示している。当該塗布方法は、塗布前における基板の表面の形状を測定する工程と、形状の測定結果に基づいて、塗布液吐出用ダイヘッドと基板との間隔を調節して塗布液吐出用ダイヘッドを基板の表面の形状に追従させて移動させる工程とを有する。
特開2004-298697号公報
 特許文献1では、塗布液吐出用ダイヘッドを基板に平行な方向に移動させながら、基板の表面の形状に追従させて塗布液吐出用ダイヘッドを上下移動させている。そのため、塗布液吐出用ダイヘッドを基板に平行な方向に移動させる機構と塗布液吐出用ダイヘッドを上下移動させる機構とが互いに連係するように制御される。
 このような2つの機構を互いに連係させて動作させる場合、当該2つの機構間の制御応答遅れの差異が問題となる。しかしながら、特許文献1では、2つの機構間の制御応答遅れの差異について考慮されていない。2つの機構間で制御応答遅れに差異がある場合、制御対象となるダイヘッドを対象物となる基板の表面の形状に精度良く追従させることができなくなる。特に、対象物の表面のうねりの勾配が大きい場合、あるいは、制御対象の移動速度が速い場合に、制御対象を対象物の表面の形状に精度良く追従させることができなくなる。
 本開示は、上記の問題に鑑みてなされたものであり、その目的は、制御対象を対象物の表面の形状に精度良く追従させることができる制御装置および制御プログラムを提供することである。
 本開示の一例によれば、制御装置は、対象物と当該対象物の表面に対して所定処理を実行する制御対象との相対位置関係を変更するための複数のドライブ装置に接続され、制御周期毎に複数のドライブ装置に操作量を出力する。複数のドライブ装置は、対象物の表面に対向する平面に沿って制御対象を対象物に対して相対移動させるための第1ドライブ装置と、平面に直交する直交軸に沿って制御対象を対象物に対して相対移動させるための第2ドライブ装置とを含む。制御装置は、第1生成部と、第1制御部と、第2生成部と、第2制御部とを備える。第1生成部は、目標軌道に基づいて、各制御周期における制御対象の平面上の第1指令位置を生成する。第1制御部は、第1ドライブ装置に出力する第1操作量と制御対象の平面上の位置との関係を示す第1動特性モデルと第1指令位置とを用いたモデル予測制御により、第1操作量を生成する。第2生成部は、各制御周期における制御対象の直交軸上の第2指令位置を生成する。第2制御部は、第2ドライブ装置に出力する第2操作量と制御対象の直交軸上の位置との関係を示す第2動特性モデルと第2指令位置とを用いたモデル予測制御により、第2操作量を生成する。第2生成部は、対象物の表面形状を示す形状データと第1指令位置とに基づいて、制御対象と対象物の表面との距離が一定になるように第2指令位置を生成する。
 この開示によれば、モデル予測制御によって生成された操作量に従って制御対象が移動される。このとき、形状データと第1指令位置とに基づいて、各制御周期における上記の直交軸上の第2指令位置が生成される。その結果、制御対象をワークWの表面の形状に精度良く追従させることができる。
 上述の開示において、第1ドライブ装置は、平面上の第1軸に沿って制御対象を対象物に対して相対移動させる。第1指令位置は、第1軸上の位置を示す。第1動特性モデルは、第1操作量と制御対象の第1軸上の位置との関係を示す。形状データは、第1軸を対象物の表面に投影した線上の複数の点の各々について、当該点から直交軸に下した垂線の足の直交軸上の位置を示す。第2生成部は、複数の点の中から、制御対象が第1指令位置に位置するときに所定処理の対象となる対象物の表面上の処理対象点を挟む2つの点を選択する。第2生成部は、選択された2つの点の直交軸上の位置を用いた補間計算により、処理対象点から直交軸に下した垂線の足の直交軸上の位置を求め、処理対象点の直交軸上の位置に基づいて、第2指令位置を生成する。
 この開示によれば、処理対象点のデータが形状データに含まれない場合であっても、補間計算により、当該処理対象点から上記の直交軸に下した垂線の足の直交軸上の位置を求めることができる。そして、当該直交軸上の位置に基づいて、第2指令位置が生成される。このように、対象物の表面形状に応じて第1指令位置に対応する第2指令位置を容易に生成することができる。
 上述の開示において、第1ドライブ装置は、平面上の第1軸に沿って制御対象を対象物に対して相対移動させる。第1指令位置は、第1軸上の位置を示す。第1動特性モデルは、第1操作量と制御対象の第1軸上の位置との関係を示す。形状データは、第1軸を対象物の表面に投影した線上の複数の点の各々について、当該点から直交軸に下した垂線の足の直交軸上の位置を示す。第2生成部は、複数の点の中から、制御対象が第1指令位置に位置するときに所定処理の対象となる対象物の表面上の処理対象点に最も近い点を選択し、選択された点の直交軸上の位置に基づいて、第2指令位置を生成する。
 この開示によれば、形状データから、処理対象点に最も近い点のデータを読み出すことにより、容易に第2指令位置が生成される。その結果、第2指令位置を生成する演算負荷を抑制できる。
 上述の開示において、第1ドライブ装置は、平面上の第1軸に沿って制御対象を対象物に対して相対移動させる。第1指令位置は、第1軸上の位置を示す。第1動特性モデルは、第1操作量と制御対象の第1軸上の位置との関係を示す。複数のドライブ装置は、第1軸と異なる平面上の第2軸に沿って制御対象を対象物に対して相対移動させるための第3ドライブ装置をさらに含む。制御装置は、目標軌道に基づいて、各制御周期における制御対象の第2軸上の第3指令位置を生成する第3生成部と、第3ドライブ装置に出力する第3操作量と制御対象の第2軸上の位置との関係を示す第3動特性モデルと第3指令位置とを用いたモデル予測制御により、第3操作量を生成する第3制御部とをさらに備える。第2生成部は、形状データおよび第1指令位置に加えて第3指令位置に基づいて第2指令位置を生成する。
 この開示によれば、制御対象は、第1指令位置および第3指令位置に従って、対象物の表面に対向する平面上の任意の位置に移動することができる。このとき、形状データと第1指令位置と第3指令位置とに基づいて、各制御周期における上記の直交軸上の第2指令位置が生成される。その結果、制御対象をワークWの表面の形状に精度良く追従させることができる。
 上述の開示において、形状データは、対象物の表面上の複数の点の各々について、当該点から直交軸に下した垂線の足の直交軸上の位置を示す。第2生成部は、複数の点の中から、制御対象が第1指令位置および第3指令位置に位置するときに所定処理の対象となる対象物の表面上の処理対象点の周囲に位置する少なくとも3つの点を選択する。第2生成部は、選択された少なくとも3つの点の直交軸上の位置を用いた補間計算により、処理対象点から直交軸に下した垂線の足の直交軸上の位置を求め、処理対象点の直交軸上の位置に基づいて、第2指令位置を生成する。
 この開示によれば、補間計算により、処理対象点から上記の直交軸に下した垂線の足の直交軸上の位置を求めることができる。そして、当該直交軸上の位置に基づいて、第2指令位置が生成される。このように、対象物の表面形状に応じて第1指令位置および第3指令位置に対応する第2指令位置を容易に生成することができる。
 本開示の一例によれば、制御プログラムは、対象物と当該対象物の表面に対して所定処理を実行する制御対象との相対位置関係を変更するための複数のドライブ装置に接続され、制御周期毎に複数のドライブ装置に操作量を出力する制御装置を実現するためのプログラムである。複数のドライブ装置は、対象物の表面に対向する平面に沿って制御対象を対象物に対して相対移動させるための第1ドライブ装置と、平面に直交する直交軸に沿って制御対象を対象物に対して相対移動させるための第2ドライブ装置とを含む。制御プログラムは、コンピュータに、第1~第4のステップを実行させる。第1のステップは、目標軌道に基づいて、各制御周期における制御対象の平面上の第1指令位置を生成するステップである。第2のステップは、第1ドライブ装置に出力する第1操作量と制御対象の平面上の位置との関係を示す第1動特性モデルと第1指令位置とを用いたモデル予測制御により、第1操作量を生成するステップである。第3のステップは、各制御周期における制御対象の直交軸上の第2指令位置を生成するステップである。第4のステップは、第2ドライブ装置に出力する第2操作量と制御対象の直交軸上の位置との関係を示す第2動特性モデルと第2指令位置とを用いたモデル予測制御により、第2操作量を生成するステップである。第3のステップは、対象物の表面形状を示す形状データと第1指令位置とに基づいて、制御対象と対象物の表面との距離が一定になるように第2指令位置を生成するステップを含む。
 この開示によっても、制御対象を対象物の表面の形状に精度良く追従させることができる。
 本開示によれば、制御対象を対象物の表面の形状に精度良く追従させることができる。
本実施の形態に従う制御装置が適用される制御システムの構成例を示す模式図である。 図1に示す制御システムに備えられる塗布装置の移動例を示す図である。 本実施の形態に従う制御装置のハードウェア構成の一例を示す模式図である。 本実施の形態に係るサーボドライバおよび制御装置の機能構成の一例を示す模式図である。 ワークWの表面形状の一例を示す図である。 ワークWの表面の形状データの一例を示す図である。 指令位置SPXの時間変化の一例を示す図である。 補間計算により指令位置SPZを生成する方法を説明する図である。 指令位置SPXおよび指令位置SPZの時系列データの一例を示す図である。 指令位置SPZの時間変化の一例を示す図である。 本実施の形態に従う制御装置の処理手順を示すフローチャートである。 ステップS2において実行されるソースコードを示す図である。 図7に示す指令位置SPXを指令値としてサーボドライバ200Xに与えたときのシミュレーション結果の例を示す図である。 図10に示す指令位置SPZを指令値としてサーボドライバ200Zに与えたときのシミュレーション結果の例を示す図である。 図6に示す指令位置SPXと第1動特性モデルとを用いたモデル予測制御により生成された操作量MVXをサーボドライバ200Xに与えたときのシミュレーション結果の例を示す図である。 図10に示す指令位置SPZと第2動特性モデルとを用いたモデル予測制御により生成された操作量MVZをサーボドライバ200Zに与えたときのシミュレーション結果の例を示す図である。 図7,11に示す指令位置を指令値としてサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置50~75mmにおけるシミュレーション結果を示す図である。 図7,11に示す指令位置を指令値としてサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置550~575mmにおけるシミュレーション結果を示す図である。 モデル予測制御により生成された操作量MVX,MVZをサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置50~75mmにおけるシミュレーション結果を示す図である。 モデル予測制御により生成された操作量MVX,MVZをサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置550~575mmにおけるシミュレーション結果を示す図である。 変形例3に係る制御システムの機能構成の一例を示す模式図である。 変形例3における形状データの一例を示す図である。 変形例3における指令位置SPZの生成方法を説明する図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
 §1 適用例
 まず、図1および図2を参照して、本発明が適用される場面の一例について説明する。図1は、本実施の形態に従う制御装置が適用される制御システムの構成例を示す模式図である。図2は、図1に示す制御システム1に備えられる塗布装置300の移動例を示す図である。
 図1に示す例の制御システム1は、対象物(以下、「ワークW」と称する。)の表面に対して塗布液を塗布するシステムであり、ワークWを搬送する搬送装置2と、形状計測センサ3と、塗布装置300と、複数のサーボドライバ200と、制御装置100とを備える。ただし、制御システムは、図1に示す例に限定されず、ワークWの表面に対して何らかの処理(例えば、レーザ加工、検査用画像の撮像など)を実行するシステムであればよい。ワークWの表面に対してレーザ加工を行なう場合には、塗布装置300の代わりにレーザ加工機が備えられ、ワークWの表面に対して検査用画像の撮像を行なう場合には、塗布装置300の代わりに撮像装置が備えられる。図1に示す例のワークWは、基板である。
 以下、ワークWの厚み方向をZ軸方向とし、Z軸に直交する2つの軸をX軸およびY軸とする。
 搬送装置2は、例えばワークWが載置される搬送ベルトを有し、搬送ベルトを駆動することにより形状計測センサ3から塗布装置300の順にワークWを搬送する。搬送装置2は、ワークWが形状計測センサ3および塗布装置300の下方に位置したときに、ワークWの搬送を一旦停止する。搬送装置2は、形状計測センサ3によるワークWに対する形状計測および塗布装置300によるワークWに対する塗布処理が完了した後に、ワークWの搬送を再開する。
 形状計測センサ3は、ワークWの表面形状を計測するセンサであり、例えば2次元レーザ変位センサによって構成される。形状計測センサ3は、ワークWごとに表面形状を計測し、計測によって得られた形状データを制御装置100に送信する。形状計測センサ3は、例えばワークWの表面上の複数の点からZ軸に下した垂線の足のZ軸上の位置を計測する。ワークWの表面上の複数の点は、例えばX軸をワークWの表面にZ軸に沿って投影した線上において等間隔に位置する。
 塗布装置300は、塗布ヘッド302を有し、塗布ヘッド302からワークWの表面に塗布液を塗布する。塗布装置300は、ワークWの表面に対向するXY平面上のX軸に沿って塗布ヘッド302を移動させるためのサーボモータ304Xと、XY平面に直交するZ軸に沿って塗布ヘッド302を移動させるためのサーボモータ304Zとを有する。
 複数のサーボドライバ200は、ワークWと塗布ヘッド302との相対位置関係を変更するためのドライブ装置であり、サーボドライバ200X,200Zを含む。サーボドライバ200X,200Zは、サーボモータ304X,304Zにそれぞれ対応して設けられ、対応するサーボモータを駆動する。すなわち、サーボドライバ200Xは、サーボモータ304Xを駆動して、ワークWの表面に対向するXY平面上のX軸に沿って塗布ヘッド302を移動させる。これにより、塗布ヘッド302は、X軸方向に沿ってワークWに対して相対移動する。サーボドライバ200Zは、サーボモータ304Zを駆動して、XY平面に直交するZ軸に沿って塗布ヘッド302を移動させる。これにより、塗布ヘッド302は、Z軸方向に沿ってワークWに対して相対移動する。
 サーボドライバ200X,200Zは、制御装置100からの指令値(指令位置または指令速度)と、対応するサーボモータからのフィードバック値とに基づいて、対応するサーボモータに対する駆動信号を生成する。サーボドライバ200X,200Zは、対応するサーボモータに生成した駆動信号を出力することにより、対応するサーボモータを駆動する。
 例えば、サーボドライバ200X,200Zは、対応するサーボモータの回転軸に結合されたエンコーダからの出力信号をフィードバック値として受ける。フィードバック値により、サーボモータの位置、回転位相、回転速度、累積回転数などを検出できる。
 制御装置100は、複数のサーボドライバ200に接続され、複数のサーボドライバ200を制御する。具体的には、制御装置100は、サーボドライバ200X,200Zに操作量MVX,MVZをそれぞれ出力して、塗布ヘッド302を移動させる移動制御を行なう。制御装置100とサーボドライバ200X,200Zとの間では、操作量を含むデータの遣り取りが可能になっている。
 図1には、制御装置100とサーボドライバ200X,200Zとがフィールドバスを介して通信接続されている構成例を示す。但し、このような構成例に限らず、以下に説明するようなアルゴリズムが実現されるものであれば、任意の通信形態を採用することができる。例えば、制御装置100とサーボドライバ200X,200Xとの間を直接信号線で接続するようにしてもよい。
 制御装置100は、制御周期毎に、モデル予測制御によってサーボドライバ200X,200Zにそれぞれ出力する操作量MVX,MVZを生成する。制御装置100は、生成した操作量MVX,MVZを指令値(指定位置または指令速度)としてサーボドライバ200X,200Zにそれぞれ出力する。
 制御装置100は、目標軌道に基づいて、各制御周期における塗布ヘッド302のX軸上の第1指令位置を生成する。制御装置100は、操作量MVXと塗布ヘッド302のX軸上の位置との関係を示す第1動特性モデルと第1指令位置とを用いたモデル予測制御により、サーボドライバ200Xに出力する操作量MVXを生成する。
 制御装置100は、各制御周期における塗布ヘッド302のZ軸上の第2指令位置を生成する。制御装置100は、操作量MVZと塗布ヘッド302のZ軸上の位置との関係を示す第2動特性モデルと第2指令位置とを用いたモデル予測制御により、サーボドライバ200Zに出力する操作量MVZを生成する。
 制御装置100は、形状計測センサ3によって計測された形状データと第1指令位置とに基づいて、塗布ヘッド302とワークWの表面との距離が一定になるように第2指令位置を生成する。
 このように、制御装置100は、モデル予測制御により塗布ヘッド302の移動制御を行なう。このとき、形状データに基づいて各制御周期におけるZ軸上の第2指令位置が生成される。その結果、図2に示されるように、塗布ヘッド302をワークWの表面の形状に精度良く追従させることができる。
 §2 具体例
 次に、本実施の形態に係る制御装置100の具体例について説明する。
 <A.制御装置のハードウェア構成例>
 本実施の形態に従う制御装置100は、一例として、PLC(プログラマブルコントローラ)を用いて実装されてもよい。制御装置100は、予め格納された制御プログラム(後述するような、システムプログラムおよびユーザプログラムを含む)をプロセッサが実行することで、後述するような処理が実現されてもよい。
 図3は、本実施の形態に従う制御装置100のハードウェア構成の一例を示す模式図である。図3に示されるように、制御装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、メインメモリ106と、フラッシュメモリ108と、外部ネットワークコントローラ116と、メモリカードインターフェイス118と、フィールドバスコントローラ122,124と、外部ネットワークコントローラ116と、メモリカードインターフェイス118とを含む。
 プロセッサ102は、フラッシュメモリ108に格納されたシステムプログラム110およびユーザプログラム112を読み出して、メインメモリ106に展開して実行することで、制御対象に対する任意の制御を実現する。プロセッサ102がシステムプログラム110およびユーザプログラム112を実行することで、後述するような、サーボドライバ200への操作量の出力、フィールドバスを介したデータ通信に係る処理などを実行する。
 システムプログラム110は、データの入出力処理や実行タイミング制御などの、制御装置100の基本的な機能を提供するための命令コードを含む。ユーザプログラム112は、制御対象に応じて任意に設計され、シーケンス制御を実行するためのシーケンスプログラム112Aおよびモーション制御を実行するためのモーションプログラム112Bを含む。ユーザプログラム112において、ファンクションブロックが定義されることで、本実施の形態に従う処理および機能が実現される。ファンクションブロックは、制御装置100で実行されるプログラムのコンポーネントであり、複数回使用するプログラムエレメントをモジュール化したものを意味する。
 チップセット104は、各コンポーネントを制御することで、制御装置100全体としての処理を実現する。
 フィールドバスコントローラ122は、制御装置100とフィールドバスを通じて連結される各種デバイスとデータを遣り取りするインターフェイスである。このようなデバイスの一例として、形状計測センサ3が接続されている。フィールドバスコントローラ122によって形状計測センサ3から受けた形状データは、フラッシュメモリ108等の記憶装置に格納される。
 フィールドバスコントローラ124は、制御装置100とフィールドバスを通じて連結される各種デバイスとデータを遣り取りするインターフェイスである。このようなデバイスの一例として、サーボドライバ200が接続されている。
 フィールドバスコントローラ122,124は、接続されているデバイスに対して任意の指令を与えることができるとともに、デバイスが管理している任意のデータ(計測値を含む)を取得することができる。また、フィールドバスコントローラ122は、形状計測センサ3との間でデータを遣り取りするためのインターフェイスとしても機能する。フィールドバスコントローラ124は、サーボドライバ200との間でデータを遣り取りするためのインターフェイスとしても機能する。
 外部ネットワークコントローラ116は、各種の有線/無線ネットワークを通じたデータの遣り取りを制御する。メモリカードインターフェイス118は、メモリカード120を着脱可能に構成されており、メモリカード120に対してデータを書込み、メモリカード120からデータを読出すことが可能になっている。
 <B.サーボドライバ>
 図4は、本実施の形態に係るサーボドライバおよび制御装置の機能構成の一例を示す模式図である。図4に示されるように、サーボドライバ200X,200Zは、減算器210X,210Zとフィードバック制御部212X,212Zとをそれぞれ含む。
 減算器210Xは、制御装置100からの操作量MVXを指令値(指令位置または指令速度)として受けるとともに、サーボモータ304Xに結合されたエンコーダからの出力信号をフィードバック値として受ける。同様に、減算器210Zは、制御装置100からの操作量MVZを指令値(指令位置または指令速度)として受けるとともに、サーボモータ304Zに結合されたエンコーダからの出力信号をフィードバック値として受ける。減算器210X、210Zは、受けた指令値とフィードバック値との偏差を演算する。
 フィードバック制御部212X,212Zは、減算器210X,210Zから出力される偏差に応じた制御演算をそれぞれ実行する。フィードバック制御部212X,212Zは、制御装置100から受ける操作量が指令位置である場合、位置制御ループおよび速度制御ループに従う制御演算を実行する。フィードバック制御部212X,212Zは、制御装置100から受ける操作量が指令速度である場合、速度制御ループに従う制御演算を実行する。
 位置制御ループに従う制御演算では、フィードバック値により得られるサーボモータの計測位置と制御装置100から与えられる指令位置との位置偏差に応じた指令速度が演算される。
 速度制御ループに従う制御演算では、指令速度とフィードバック値から得られるサーボモータの計測速度との速度偏差に応じたトルク値が演算される。フィードバック制御部212X,212Zは、演算されたトルク値のトルクを発生させるための電流指令をサーボモータに出力する。
 <C.制御装置の機能構成例>
 図4に示されるように、制御装置100は、記憶部130と、X軸指令生成モジュール140と、Z軸指令生成モジュール150と、モデル予測制御モジュール142,152とを備える。図中においては、モデル予測制御を「MPC(Model Predictive Control)」と記す。
 記憶部130は、図3に示すフラッシュメモリ108およびメインメモリ106によって構成され、形状計測センサ3から受けたワークWごとの形状データ132を記憶する。
 X軸指令生成モジュール140は、予め作成された目標軌道に従って、各制御周期における塗布ヘッド302のX軸上の第1指令位置(以下、「指令位置SPX」と称する。)を生成する。X軸指令生成モジュール140は、生成した指令位置SPXをモデル予測制御モジュール142およびZ軸指令生成モジュール150に出力する。
 X軸指令生成モジュール140は、目標軌道から指令位置SPXの時系列データを生成し、各制御周期の指令位置SPXを当該時系列データから読出す。もしくは、制御装置100は、目標軌道を規定する指令位置SPXの時系列データを予め記憶しておいてもよい。この場合には、X軸指令生成モジュール140は、予め記憶された指令位置SPXの時系列データにアクセスすればよい。このように、制御周期毎の指令位置SPXは、目標軌道から予め定められた計算式に従って逐次演算されてもよいし、時系列データの形で予め格納されていてもよい。
 Z軸指令生成モジュール150は、形状データ132と指令位置SPXとに基づいて、塗布ヘッド302とワークWの表面との距離が一定になるように、各制御周期における塗布ヘッド302のZ軸上の第2指令位置(以下、「指令位置SPZ」と称する。)を生成する。指令位置SPZの具体的な生成方法について後述する。
 モデル予測制御モジュール142は、操作量MVXと塗布ヘッド302のX軸上の位置との関係を示す第1動特性モデルと指令位置SPXとを用いたモデル予測制御により、サーボドライバ200Xに出力する操作量MVXを生成する。モデル予測制御モジュール142は、塗布ヘッド302のX軸上の位置が指令位置SPXに一致するように操作量MVXを生成する。
 モデル予測制御モジュール152は、操作量MVZと塗布ヘッド302のZ軸上の位置との関係を示す第2動特性モデルと指令位置SPZとを用いたモデル予測制御により、塗布ヘッド302のZ軸上の位置が指令位置SPZに一致するようにサーボドライバ200Zに出力する操作量MVZを生成する。
 第1動特性モデルおよび第2動特性モデルは、事前のチューニングにより作成される。チューニングにおいて得られた入力値(操作量)と出力値(塗布ヘッド302の計測位置)とに基づいて動特性モデルが作成される。
 第1動特性モデルおよび第2動特性モデルは、例えば以下の関数P(z-1)で示される。関数P(z-1)は、むだ時間要素と、n次遅れ要素とを組み合わせた離散時間伝達関数である。関数P(z-1)で示される動特性モデルにおいては、むだ時間要素のむだ時間dならびにn次遅れ要素の変数a~aおよび変数b~bがモデルパラメータとして決定される。むだ時間とは、入力値が与えられてから、それに応じた出力が現れるまでの時間(つまり、入力から出力までの遅れ時間)である。なお、次数nおよび次数mについても最適な値が決定されてもよい。
Figure JPOXMLDOC01-appb-M000001
 このようなモデルパラメータの作成処理(すなわち、システム同定)は、最小二乗法などにより実行されてもよい。
 具体的には、y=P(z-1)*uの変数uに操作量MVXを与えたときの出力yが、塗布ヘッド302のX軸上の計測位置と一致するように(すなわち、誤差が最小になるように)、第1動特性モデルを規定するモデルパラメータの各々の値が決定される。同様に、y=P(z-1)*uの変数uに操作量MVZを与えたときの出力yが、塗布ヘッド302Z軸上の計測位置と一致するように(すなわち、誤差が最小になるように)、第2動特性モデルを規定するモデルパラメータの各々の値が決定される。
 なお、塗布ヘッド302の振動が無視できる程度に小さい場合、塗布ヘッド302のX軸上の位置とサーボモータ304Xの位置とは一対一の関係にある。そのため、操作量MVXとサーボモータ304Xの位置との関係を示す動特性モデルを第1動特性モデルとして用いてもよい。同様に、塗布ヘッド302の振動が無視できる程度に小さい場合、塗布ヘッド302のZ軸上の位置とサーボモータ304Zの位置とは一対一の関係にある。そのため、操作量MVZとサーボモータ304Zの位置との関係を示す動特性モデルを第2動特性モデルとして用いてもよい。
 モデル予測制御は、予測ホライズンにおける制御対象(ここでは塗布ヘッド302)の位置が目標軌道に一致するように操作量を生成する制御である。例えば、予測ホライズンにおける制御対象の位置を目標軌道に一致させるために必要な制御対象の制御量の変化量が決定され、当該変化量を動特性モデルの出力に発生させるための操作量が演算される。モデル予測制御として公知の手法が採用され得る。
 <D.指令位置SPZの生成の具体例>
 図5~図10を参照して、指令位置SPZの生成の具体例について説明する。図5は、ワークWの表面形状の一例を示す図である。図6は、ワークWの表面の形状データの一例を示す図である。図7は、指令位置SPXの時間変化の一例を示す図である。図8は、補間計算により指令位置SPZを生成する方法を説明する図である。図9は、指令位置SPXおよび指令位置SPZの時系列データの一例を示す図である。図10は、指令位置SPZの時間変化の一例を示す図である。
 図5には、X軸方向の長さが1000mmであるワークWの表面形状が示される。図5に示されるように、ワークWの表面は、X軸方向に沿って波状に起伏している。
 図6には、図5に示すワークWの表面形状を形状計測センサ3が計測することにより得られた形状データ132の一例が示される。図6に示されるように、形状データ132は、X軸をワークWの表面上に投影した線上の複数の点の各々のデータ要素134を含む。複数の点は、X軸方向に沿って等間隔(1mm)である。データ要素134は、対応するワークWの表面上の点からX軸へ下した垂線の足のX軸上の位置(以下、「X軸位置」と称する。)と、当該点からZ軸へ下した垂線の足のZ軸上の位置(以下、「Z軸位置」と称する。)とを示す。なお、X軸位置は、X軸をワークWの表面上に投影した線の一端からX軸に下した垂線の足を基準として示される。Z軸位置は、搬送装置2の搬送ベルトの上面からZ軸に沿って所定距離だけ離れた位置を基準として示される。
 X軸指令生成モジュール140は、図7に示されるように、例えば5次軌道である目標軌道から、制御周期毎の指令位置SPXの時系列データを生成する。
 Z軸指令生成モジュール150は、図6に示される形状データ132に基づいて、制御周期毎の指令位置SPXに対応する指令位置SPZを生成する。以下、i番目の制御周期の指令位置SPXを指令位置SPX(i)とし、i番目の制御周期の指令位置SPZを指令位置SPZ(i)とする。
 Z軸指令生成モジュール150は、形状データ132の中から、塗布ヘッド302が指令位置SPX(i)に位置するときに塗布処理の対象となるワークWの表面上の処理対象点を挟む2つの点にそれぞれ対応する第1データ要素および第2データ要素を選択する。本実施の形態では、サーボドライバ200Xは、塗布ヘッド302の塗布液噴出口が指令位置に位置するようにサーボモータ304Xを制御するものとする。さらに、塗布液噴出口からZ軸方向に塗布液が噴出されるものとする。この場合、指令位置SPX(i)のワークWの表面への投影点が、塗布ヘッド302が指令位置SPX(i)に位置するときの処理対象点となる。そのため、図8に示されるように、Z軸指令生成モジュール150は、形状データ132の中から、指令位置SPX(i)と同じ位置または指令位置SPX(i)よりも一方側(例えば負側)にあり、かつ、指令位置SPX(i)に最も近いX軸位置を示す第1データ要素を選択する。さらに、Z軸指令生成モジュール150は、形状データ132の中から、指令位置SPXよりも一方側(例えば正側)にあり、かつ、指令位置SPX(i)に最も近いX軸位置を示す第2データ要素を選択する。
 なお、指令位置SPXと塗布ヘッド302の塗布液噴出口の位置との関係や塗布方向に応じて、指令位置SPX(i)のワークWの表面への投影点と塗布ヘッド302が指令位置SPX(i)に位置するときの処理対象点とが一致しない場合があり得る。このような場合には、投影点と処理対象点との差分を考慮して、形状データ132の中から、処理対象点を挟む2つの点にそれぞれ対応する第1データ要素および第2データ要素が選択される。
 Z軸指令生成モジュール150は、選択した第1データ要素および第2データ要素を用いた補間計算により、例えば以下の[数2]に従って、指令位置SPX(i)のワークWの表面への投影点からZ軸に下した垂線の足のZ軸上の位置Z(i)を求める。
Figure JPOXMLDOC01-appb-M000002
 [数2]において、WX(j)は、第1データ要素で示されるX軸位置を示す。WZ(j)は、第1データ要素で示されるZ軸位置を示す。WX(j+1)は、第2データ要素で示されるX軸位置を示す。WZ(j+1)は、第2データ要素で示されるZ軸位置を示す(図8参照)。
 Z軸指令生成モジュール150は、上記のようにして求めた、処理対象点(指令位置SPX(i)のワークWの表面への投影点)からZ軸に下した垂線の足のZ軸上の位置Z(i)に基づいて指令位置SPZ(i)を生成する。具体的には、Z軸指令生成モジュール150は、位置Z(i)から一定距離だけZ軸方向に離れた位置を指令位置SPZ(i)として生成すればよい。当該一定距離は、ワークWの表面と塗布ヘッド302との間のZ軸方向の所望のクリアランスに応じて設定される。なお、以下では、説明を簡略化するために、所望のクリアランスを0とした場合(すなわち、位置Z(i)を指令位置SPZ(i)とする場合)について説明する。
 図9には、上記のような演算によって生成された制御周期(1ms)毎の指令位置SPZの時系列データが示される。図6および図9に示す例では、例えばデータNo.501の制御周期について、以下のようにして指令位置SPZが生成される。Z軸指令生成モジュール150は、指令位置SPXよりも負側にあり、かつ、指令位置SPXに最も近いX軸位置を示すデータ要素134a(図6参照)を第1データ要素として選択する。さらに、Z軸指令生成モジュール150は、指令位置SPXよりも正側にあり、かつ、指令位置SPXに最も近いX軸位置を示すデータ要素134b(図6参照)を第2データ要素として選択する。Z軸指令生成モジュール150は、選択したデータ要素134a、134bを用いた補間計算により、上記の[数2]に従って、指令位置SPZを生成する。
 図10には、図9に示す指令位置SPZの時系列データをグラフ化した図が示される。塗布ヘッド302を図7に示す指令位置SPXに従ってX軸方向に移動させるとともに、図10に示す指令位置SPZに従ってZ軸方向に移動させることにより、塗布ヘッド302は、ワークWの表面形状に追従して移動できる。
 <E.処理手順>
 次に、本実施の形態に従う制御装置100による処理手順の概要について説明する。図11は、本実施の形態に従う制御装置の処理手順を示すフローチャートである。図11に示すステップは、制御装置100のプロセッサ102が制御プログラム(図2に示すシステムプログラム110およびユーザプログラム112を含む)を実行することで実現されてもよい。
 まず、制御装置100は、予め定められた目標軌道に従って、制御周期毎の指令位置SPXを生成する(ステップS1)。
 次に、制御装置100は、形状データ132と制御周期毎の指令位置SPXとに基づいて、制御周期毎の指令位置SPZを計算する(ステップS2)。
 その後、制御装置100は、制御を開始するか否かを判断する(ステップS3)。例えば、制御装置100は、サーボドライバ200X,200Z、塗布装置300および他の機器の状態を確認し、各機器から準備完了の通知を受けたことにより、移動制御を開始すると判断すればよい。制御を開始しないと判断した場合(ステップS3でNO)、制御装置100の処理はステップS3に戻される。
 制御を開始すると判断した場合(ステップS3でYES)、制御装置100は、ステップS4において、第1動特性モデルと指令位置SPXとを用いたモデル予測制御を行ない、サーボドライバ200Xに出力する操作量MVXを計算する。さらに、制御装置100は、ステップS4において、第2動特性モデルと指令位置SPZとを用いたモデル予測制御を行ない、サーボドライバ200Zに出力する操作量MVZを計算する。
 次に、制御装置100は、制御を終了すべきか否かを判断する(ステップS5)。制御装置100は、塗布ヘッド302の位置が目標軌道の終点に到達した場合に、制御を終了すると判断すればよい。制御を終了しないと判断した場合(ステップS5においてNO)、制御装置100の処理は、ステップS4に戻される。これにより、ステップS4が制御周期毎に繰り返される。
 制御を終了すると判断した場合(ステップS5においてYES)、制御装置100の処理は終了する。
 図12は、ステップS2において実行されるソースコードを示す図である。図11において、jは、形状データ132におけるデータ要素134のデータ番号を示し、0~DNWの整数を取り得る。DNWは、形状データ132におけるデータ要素134の番号の最大値を示す。jsは、FOR文におけるjの開始番号を示す。iは、制御周期の番号を示し、0~DNCの整数を取り得る。DNCは、目標軌道から生成される指令位置SPXの時系列データにおけるデータ番号の最大値を示す。X(i)は、i番目の制御周期における指令位置SPXを示す。Z(i)は、指令位置SPXのワークWの表面への投影点(処理対象点)からZ軸に下した垂線の足のZ軸上の位置を示し、i番目の制御周期における指令位置SPZとして使用される。
 図12には、塗布ヘッド302をX軸に沿って一方向に移動させる場合のソースコードが示される。そのため、i番目の制御周期における指令位置SPZ(i)を計算する際には、形状データ132に含まれる複数のデータ要素134のうち、(i-1)番目の制御周期における指令位置SPZ(i-1)を計算する際に用いたデータ要素より前のデータ要素は使用されない。従って、(i-1)番目の制御周期における指令位置SPZ(i-1)を計算する際に用いたデータ要素以降のデータ要素の中から第1データ要素および第2データ要素が選択される。これにより、全てのデータ要素の中から第1データ要素および第2データ要素を選択する場合に比べて、演算負荷が軽減される。
 <F.シミュレーション結果>
 本実施の形態に係る制御装置100の効果を検証するためにシミュレーションを行なった。
 図13は、図7に示す指令位置SPXを指令値としてサーボドライバ200Xに与えたときのシミュレーション結果の例を示す図である。図14は、図10に示す指令位置SPZを指令値としてサーボドライバ200Zに与えたときのシミュレーション結果の例を示す図である。図15は、図7に示す指令位置SPXと第1動特性モデルとを用いたモデル予測制御により生成された操作量MVX(ここでは、速度指令を示す)をサーボドライバ200Xに与えたときのシミュレーション結果の例を示す図である。図16は、図10に示す指令位置SPZと第2動特性モデルとを用いたモデル予測制御により生成された操作量MVZ(ここでは、速度指令を示す)をサーボドライバ200Zに与えたときのシミュレーション結果の例を示す図である。図13~図16には、ワークWの表面が図5に示す形状を有し、制御周期を1msとしたときのシミュレーション結果が示される。また、図15および図16には、予測ホライズンを6msとしたときのシミュレーション結果が示される。
 図13~図16には、指令位置と塗布ヘッド302の実位置との偏差が示される。図13および図14に示されるように、モデル予測制御を行なわずに指令位置を指令値として直接サーボドライバに与えた場合には、移動速度が大きい場合に位置偏差が大きくなる。これに対し、図15および図16に示されるように、モデル予測制御を行なうことにより、位置偏差が略0になることが確認された。
 図17は、図7,11に示す指令位置を指令値としてサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置50~75mmにおけるシミュレーション結果を示す図である。図18は、図7,11に示す指令位置を指令値としてサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置550~575mmにおけるシミュレーション結果を示す図である。図19は、モデル予測制御により生成された操作量MVX,MVZをサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置50~75mmにおけるシミュレーション結果を示す図である。図20は、モデル予測制御により生成された操作量MVX,MVZをサーボドライバ200X,200Zにそれぞれ与えたときの塗布ヘッドの移動軌跡のうちX軸位置550~575mmにおけるシミュレーション結果を示す図である。図17~図20には、塗布ヘッド302の移動軌跡と合わせてワークWの形状も示される。なお、ワークWの表面と塗布ヘッド302との間のZ軸方向の所望のクリアランスを0としてシミュレーションを行なった。
 図17および図18に示されるように、モデル予測制御を行なわずに指令位置を指令値として直接サーボドライバに与えた場合には、ワーク形状と塗布ヘッド302の移動軌跡とにずれが見られる。これに対し、図19および図20に示されるように、モデル予測制御を行なうことにより、ワーク形状と塗布ヘッド302の移動軌跡とのずれが大幅に低減しており、塗布ヘッド302がワークWの表面の形状に追従して移動している。
 <G.利点>
 以上のように、本実施の形態に係る制御装置100は、X軸指令生成モジュール140と、モデル予測制御モジュール142と、Z軸指令生成モジュール150と、モデル予測制御モジュール152とを備える。X軸指令生成モジュール140は、目標軌道に基づいて、各制御周期における塗布ヘッド302のX軸上の指令位置SPXを生成する。モデル予測制御モジュール142は、サーボドライバ200Xに出力する操作量MVXと塗布ヘッド302のX軸上の位置との関係を示す第1動特性モデルと指令位置SPXとを用いたモデル予測制御により、操作量MVXを生成する。Z軸指令生成モジュール150は、各制御周期における塗布ヘッド302のZ軸上の指令位置SPZを生成する。モデル予測制御モジュール152は、サーボドライバ200Zに出力する操作量MVZと塗布ヘッド302のZ軸上の位置との関係を示す第2動特性モデルと指令位置SPZとを用いたモデル予測制御により、操作量MVZを生成する。Z軸指令生成モジュール150は、ワークWの表面形状を示す形状データ132と指令位置SPXとに基づいて、塗布ヘッド302とワークWの表面との距離が一定になるように指令位置SPZを生成する。
 上記の構成の制御装置100は、モデル予測制御により塗布ヘッド302の移動制御を行なう。このとき、形状データに基づいて各制御周期におけるZ軸上の指令位置SPZが生成される。その結果、塗布ヘッド302をワークWの表面の形状に精度良く追従させることができる。
 形状データ132は、X軸をワークWの表面に投影した線上の複数の点の各々について、当該点からZ軸に下した垂線の足のZ軸上の位置を示す。Z軸指令生成モジュール150は、上記の複数の点の中から、塗布ヘッド302が指令位置SPXに位置するときに塗布処理の対象となるワークWの表面上の処理対象点を挟む2つの点を選択する。Z軸指令生成モジュール150は、選択された2つの点のZ軸上の位置を用いた補間計算により、指令位置SPXをワークWの表面に投影した点からZ軸に下した垂線の足のZ軸上の位置を求め、当該Z軸上の位置に基づいて、指令位置SPZを生成する。
 上記の構成により、塗布ヘッド302が指令位置SPXに位置するときの処理対象点のデータが形状データ132に含まれない場合であっても、補間計算により、処理対象点からZ軸に下した垂線の足のZ軸上の位置を求めることができる。そして、当該Z軸上の位置に基づいて、指令位置SPZが生成される。このように、ワークWの表面形状に応じて指令位置SPXに対応する指令位置SPZを容易に生成することができる。
 <H.変形例>
 <H-1.変形例1>
 上記の説明では、塗布装置300は、ワークWの表面に対向するXY平面上のX軸に沿って塗布ヘッド302を移動させるサーボモータ304Xを備えるものとした。しかしながら、塗布装置300は、サーボモータ304Xの代わりに、XY平面上に沿って塗布ヘッド302をXY平面に直交する基準軸を中心に回動させるサーボモータを備えてもよい。この場合、制御システム1は、サーボドライバ200Xの代わりに、当該サーボモータを駆動するサーボドライバを備える。さらに、制御装置100は、X軸指令生成モジュール140の代わりに、基準軸に対する指令角度を生成する指令生成モジュールを備えればよい。制御装置100は、モデル予測制御モジュール142の代わりに、操作量と塗布ヘッド302の回動位置との関係を示す動特性モデルと指令角度とを用いたモデル予測制御により、サーボドライバに出力する操作量を生成するモデル予測制御モジュールを備えればよい。
 <H-2.変形例2>
 上記の説明では、形状計測センサ3が2次元レーザ変位センサであり、ワークWの表面上のX軸方向に沿った等間隔の複数の点のZ軸位置を計測するものとした。この場合、図6に示されるように、形状データ132に含まれる複数のデータ要素で示されるX軸位置は、等間隔となる。
 しかしながら、形状計測センサ3として1次元レーザ変位センサを用いてもよい。この場合、形状計測センサ3を塗布ヘッド302と同様にX軸方向に移動させながら、ワークWの表面上の複数の点のZ軸位置が計測される。形状計測センサ3を塗布ヘッド302と同じ目標軌道に沿ってX軸方向に移動させることが好ましい。これにより、形状データ132に含まれる複数のデータ要素で示されるX軸位置の間隔は、指令位置SPXの時系列データの間隔と略一致する。そのため、Z軸指令生成モジュール150は、各制御周期について、形状データの中から、塗布ヘッド302が当該制御周期の指令位置SPXに位置するときの処理対象点に最も近い点に対応するデータ要素を選択すればよい。たとえば、Z軸指令生成モジュール150は、各制御周期について、形状データの中から指令位置SPXに最も近いX軸位置を示すデータ要素を選択する。Z軸指令生成モジュール150は、選択したデータ要素で示されるZ軸位置を当該制御周期の指令位置SPZとして生成すればよい。このように、Z軸指令生成モジュール150は、上記の[数2]に従った補間計算を行なう必要がない。その結果、Z軸指令生成モジュール150の演算負荷が軽減される。
 <H-3.変形例3>
 上記の説明では、塗布装置300は、ワークWの表面に対向するXY平面上においてX軸に沿ってのみ塗布ヘッド302を移動させるものとした。しかしながら、塗布装置300は、ワークWの表面に対向するXY平面上のY軸に沿って塗布ヘッド302を移動させるサーボモータをさらに備えていてもよい。
 図21は、変形例3に係る制御システムの機能構成の一例を示す模式図である。図21に示されるように、塗布装置300は、サーボモータ304X,304Zに加えて、サーボモータ304Yを有する。サーボモータ304Yは、塗布ヘッド302(図1参照)をY軸方向に移動させる。これにより、塗布ヘッド302は、Y軸方向に沿ってワークWに対して相対移動する。
 変形例3に係る制御システム1Aは、サーボドライバ200X,200Zに加えて、サーボモータ304Yを駆動するためのサーボドライバ200Yを備える。
 サーボドライバ200Yは、減算器210Yとフィードバック制御部212Yとを含む。減算器210Yは、制御装置100から操作量MVYを指令値(指令位置または指令速度)として受けるとともに、サーボモータ304Yに結合されたエンコーダからの出力信号をフィードバック値として受ける。減算器210Yは、指令値とフィードバック値との偏差を演算する。フィードバック制御部212Yは、フィードバック制御部212X,212Zと同様に、減算器210Yから出力される偏差に応じた制御演算を実行する。
 変形例3に係る制御システム1Aは、制御装置100の代わりに制御装置100Aを備える。制御装置100Aは、制御装置100と比較して、Z軸指令生成モジュール150の代わりにZ軸指令生成モジュール150Aを備えるとともに、Y軸指令生成モジュール160とモデル予測制御モジュール162とをさらに備える点で相違する。さらに、記憶部130は、形状データ132の代わりに形状データ133を記憶する。
 Y軸指令生成モジュール160は、予め作成された目標軌道に従って、各制御周期における塗布ヘッド302のY軸上の第3指令位置(以下、「指令位置SPY」と称する。)を生成する。Y軸指令生成モジュール160は、生成した指令位置SPYをモデル予測制御モジュール162に出力する。
 Y軸指令生成モジュール160は、目標軌道から指令位置SPYの時系列データを生成し、各制御周期の指令位置SPYを当該時系列データから読出す。もしくは、制御装置100Aは、目標軌道を規定する指令位置SPYの時系列データを予め記憶しておいてもよい。この場合には、Y軸指令生成モジュール160は、予め記憶された指令位置SPYの時系列データにアクセスすればよい。このように、制御周期毎の指令位置SPYは、目標軌道から予め定められた計算式に従って逐次演算されてもよいし、時系列データの形で予め格納されていてもよい。
 モデル予測制御モジュール162は、操作量MVYと塗布ヘッド302のY軸上の位置との関係を示す第3動特性モデルと指令位置SPYとを用いたモデル予測制御により、サーボドライバ200Yに出力する操作量MVYを生成する。第3動特性モデルは、第1動特性モデルと同様の方法により作成される。
 図22は、変形例3における形状データの一例を示す図である。形状データ133は、ワークWの表面上において格子状に配置された複数の点の各々のデータ要素135を含む。データ要素135は、対応するワークWの表面上の点からX軸へ下した垂線の足のX軸位置と、当該点からY軸に下した垂線の足のY軸上の位置(以下、「Y軸位置」と称する。)と、当該点からZ軸に下した垂線の足のZ軸位置とを示す。
 Z軸指令生成モジュール150Aは、形状データ133と指令位置SPX、SPYとに基づいて、塗布ヘッド302とワークWの表面との距離が一定になるように、各制御周期における指令位置SPZを生成する。
 図23は、変形例3における指令位置SPZの生成方法を説明する図である。Z軸指令生成モジュール150Aは、形状データ133の中から、塗布ヘッド302が指令位置SPXおよび指令位置SPYに位置するときに塗布処理の対象となるワークWの表面上の処理対象点の周囲に位置する4つの点に対応するデータ要素135を選択する。ここで、サーボドライバ200X,200Yは、塗布ヘッド302の塗布液噴出口が指令位置に位置するようにサーボモータ304X、304Yをそれぞれ制御するものとする。さらに、塗布液噴出口からZ軸方向に塗布液が噴出されるものとする。この場合、指令位置SPX、SPYによって示されるXY平面上の点をワークWの表面にZ軸方向に沿って投影した点(投影点)が、塗布ヘッド302が指令位置SPX,SPYに位置するときの処理対象点となる。そのため、Z軸指令生成モジュール150Aは、当該投影点の周囲に位置する4つの点に対応するデータ要素135を選択する。図23に示す例では、(X軸位置,Y軸位置)がそれぞれ(WX(jx),WY(jy)),(WX(jx+1),WY(jy)),(WX(jx),WY(jy+1)),(WX(jx+1),WY(jy+1))である4つの点のデータ要素135が選択される。
 Z軸指令生成モジュール150Aは、選択した4つの点のデータ要素135を用いた補間計算により、例えば以下の[数3]に従って、投影点(処理対象点)からZ軸に下した垂線の足のZ軸上の位置Z(i)を求める。[数3]において、WZ(jx,jy)は、(X軸位置,Y軸位置)が(WX(jx),WY(jy))である点のデータ要素に含まれるZ軸位置である。WZ(jx+1,jy)は、(X軸位置,Y軸位置)が(WX(jx+1),WY(jy))である点のデータ要素に含まれるZ軸位置である。WZ(jx,jy+1)は、(X軸位置,Y軸位置)が(WX(jx),WY(jy+1))である点のデータ要素に含まれるZ軸位置である。WZ(jx+1,jy+1)は、(X軸位置,Y軸位置)が(WX(jx+1),WY(jy+1))である点のデータ要素に含まれるZ軸位置である。
Figure JPOXMLDOC01-appb-M000003
 Z軸指令生成モジュール150は、上記のようにして求めた、投影点(処理対象点)からZ軸に下した垂線の足のZ軸上の位置Z(i)に基づいて指令位置SPZ(i)を生成する。
 なお、形状データ133から4つの点のデータ要素135が選択されるものとしたが、Z軸指令生成モジュール150は、処理対象点(ここでは、投影点)に近い上位3つの点のデータ要素135を選択してもよい。そして、Z軸指令生成モジュール150は、選択した3つの点のデータ要素を用いた補間計算により、指令位置SPX(i)のワークWの表面への投影点からZ軸に下した垂線の足のZ軸上の位置Z(i)を求める。
 <H-4.変形例4>
 上記の説明では、記憶部130には、形状計測センサ3によって計測された形状データ132,133が格納されるものとした。しかしながら、記憶部130には、ワークWの設計データから生成された、ワークWの表面の形状を示す形状データが格納されてもよい。例えば、意図的にうねりが形成された表面を有し、かつ、表面形状の個体差が無視できる程度に小さいワークWの場合、設計データから生成された形状データを利用することができる。
 <H-5.変形例5>
 上記の説明では、複数のサーボドライバ200は、塗布ヘッド302を移動させるものとした。しかしながら、複数のサーボドライバ200は、ワークWと塗布ヘッド302との相対位置関係を変更するものであればよい。塗布ヘッド302が固定されている状態において、複数のサーボドライバ200は、ワークWを移動させるように構成されてもよい。例えば、ワークWがXZステージに載置されてもよい。この場合、サーボドライバ200Xは、XZステージのX軸方向の移動を制御することにより、X軸方向に沿って塗布ヘッド302をワークWに対して相対移動させる。サーボドライバ200Zは、当XZステージのZ軸方向の移動を制御することにより、Z軸方向に沿って塗布ヘッド302をワークWに対して相対移動させる。あるいは、ワークWがXYZステージに載置されてもよい。この場合、サーボドライバ200Yは、XYZステージのY軸方向の移動を制御することにより、Y軸方向に沿って塗布ヘッド302をワークWに対して相対移動させる。
 もしくは、サーボドライバ200Xは、塗布ヘッド302およびワークWのうちの一方(例えば塗布ヘッド302)のX軸方向の移動を制御し、サーボドライバ200Zは、塗布ヘッド302およびワークWのうちの他方(例えばワークW)のZ軸方向の移動を制御してもよい。さらに、サーボドライバ200Yは、塗布ヘッド302およびワークWのうちのいずれかのY軸方向の移動を制御してもよい。
 <I.付記>
 以上のように、本実施の形態および変形例は以下のような開示を含む。
 (構成1)
 対象物(W)と当該対象物(W)の表面に対して所定処理を実行する制御対象(302)との相対位置関係を変更するための複数のドライブ装置(200,200X,200Y,200Z)に接続され、制御周期毎に前記複数のドライブ装置(200,200X,200Y,200Z)に操作量を出力する制御装置(100,100A)であって、
 前記複数のドライブ装置(200,200X,200Y,200Z)は、前記対象物(W)の表面に対向する平面に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させるための第1ドライブ装置(200X)と、前記平面に直交する直交軸に沿って前記制御対象を前記対象物(W)に対して相対移動させるための第2ドライブ装置(200Z)とを含み、
 前記制御装置(100,100A)は、
 目標軌道に基づいて、各制御周期における前記制御対象(302)の前記平面上の第1指令位置を生成する第1生成部(140)と、
 前記第1ドライブ装置(200X)に出力する第1操作量と前記制御対象(302)の前記平面上の位置との関係を示す第1動特性モデルと前記第1指令位置とを用いたモデル予測制御により、前記第1操作量を生成する第1制御部(142)と、
 各制御周期における前記制御対象(302)の前記直交軸上の第2指令位置を生成する第2生成部(150)と、
 前記第2ドライブ装置(200Z)に出力する第2操作量と前記制御対象(302)の前記直交軸上の位置との関係を示す第2動特性モデルと前記第2指令位置とを用いたモデル予測制御により、前記第2操作量を生成する第2制御部(152)とを備え、
 前記第2生成部(150)は、前記対象物(W)の表面形状を示す形状データと前記第1指令位置とに基づいて、前記制御対象(302)と前記対象物(W)の表面との距離が一定になるように前記第2指令位置を生成する、制御装置(100,100A)。
 (構成2)
 前記第1ドライブ装置(200X)は、前記平面上の第1軸に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させ、
 前記第1指令位置は、前記第1軸上の位置を示し、
 前記第1動特性モデルは、前記第1操作量と前記制御対象(302)の前記第1軸上の位置との関係を示し、
 前記形状データは、前記第1軸を前記対象物(W)の表面に投影した線上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
 前記第2生成部(150)は、
  前記複数の点の中から、前記制御対象(302)が前記第1指令位置に位置するときに前記所定処理の対象となる前記対象物(W)の表面上の処理対象点を挟む2つの点を選択し、
  選択された前記2つの点の前記直交軸上の位置を用いた補間計算により、前記処理対象点から前記直交軸に下した垂線の足の前記直交軸上の位置を求め、
  前記処理対象点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、構成1に記載の制御装置(100)。
 (構成3)
 前記第1ドライブ装置(200X)は、前記平面上の第1軸に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させ、
 前記第1指令位置は、前記第1軸上の位置を示し、
 前記第1動特性モデルは、前記第1操作量と前記制御対象(302)の前記第1軸上の位置との関係を示し、
 前記形状データは、前記第1軸を前記対象物の表面に投影した線上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
 前記第2生成部(150)は、
  前記複数の点の中から、前記制御対象(302)が前記第1指令位置に位置するときに前記所定処理の対象となる前記対象物(W)の表面上の処理対象点に最も近い点を選択し、
  選択された点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、構成1に記載の制御装置(100)。
 (構成4)
 前記第1ドライブ装置(200X)は、前記平面上の第1軸に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させ、
 前記第1指令位置は、前記第1軸上の位置を示し、
 前記第1動特性モデルは、前記第1操作量と前記制御対象(302)の前記第1軸上の位置との関係を示し、
 前記複数のドライブ装置(200,200X,200Y,200Z)は、前記第1軸と異なる前記平面上の第2軸に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させるための第3ドライブ装置(200Y)をさらに含み、
 前記制御装置(100A)は、
 前記目標軌道に基づいて、各制御周期における前記制御対象(302)の前記第2軸上の第3指令位置を生成する第3生成部(160)と、
 前記第3ドライブ装置(200Y)に出力する第3操作量と前記制御対象(302)の前記第2軸上の位置との関係を示す第3動特性モデルと前記第3指令位置とを用いたモデル予測制御により、前記第3操作量を生成する第3制御部(162)とをさらに備え、
 前記第2生成部(150)は、前記形状データおよび前記第1指令位置に加えて前記第3指令位置に基づいて前記第2指令位置を生成する、構成1に記載の制御装置(100A9。
 (構成5)
 前記形状データは、前記対象物の表面上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
 前記第2生成部(150)は、
  前記複数の点の中から、前記制御対象(302)が前記第1指令位置および前記第3指令位置に位置するときに前記所定処理の対象となる前記対象物(W)の表面上の処理対象点の周囲に位置する少なくとも3つの点を選択し、
  選択された前記少なくとも3つの点の前記直交軸上の位置を用いた補間計算により、前記処理対象点から前記直交軸に下した垂線の足の前記直交軸上の位置を求め、
  前記処理対象点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、構成4に記載の制御装置(100A)。
 (構成6)
 対象物(W)と当該対象物(W)の表面に対して所定処理を実行する制御対象(302)との相対位置関係を変更するための複数のドライブ装置(200,200X,200Y,200Z)に接続され、制御周期毎に前記複数のドライブ装置(200,200X,200Y,200Z)に操作量を出力する制御装置(100,100A)を実現するための制御プログラムであって、
 前記複数のドライブ装置(200,200X,200Y,200Z)は、前記対象物(W)の表面に対向する平面に沿って前記制御対象(302)を前記対象物(W)に対して相対移動させるための第1ドライブ装置(200X)と、前記平面に直交する直交軸に沿って前記制御対象を前記対象物(W)に対して相対移動させるための第2ドライブ装置(200Z)とを含み、
 前記制御プログラムは、コンピュータに、
 目標軌道に基づいて、各制御周期における前記制御対象(302)の前記平面上の第1指令位置を生成するステップと、
 前記第1ドライブ装置(200X)に出力する第1操作量と前記制御対象(302)の前記平面上の位置との関係を示す第1動特性モデルと前記第1指令位置とを用いたモデル予測制御により、前記第1操作量を生成するステップと、
 各制御周期における前記制御対象(302)の前記直交軸上の第2指令位置を生成するステップと、
 前記第2ドライブ装置(200Z)に出力する第2操作量と前記制御対象(302)の前記直交軸上の位置との関係を示す第2動特性モデルと前記第2指令位置とを用いたモデル予測制御により、前記第2操作量を生成するステップとを備え、
 前記第2指令位置を生成するステップは、前記対象物(W)の表面形状を示す形状データと前記第1指令位置とに基づいて、前記制御対象(302)と前記対象物(W)の表面との距離が一定になるように前記第2指令位置を生成するステップを含む、制御プログラム。
 本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1,1A 制御システム、2 搬送装置、3 形状計測センサ、100,100A 制御装置、102 プロセッサ、104 チップセット、106 メインメモリ、108 フラッシュメモリ、110 システムプログラム、112 ユーザプログラム、112A シーケンスプログラム、112B モーションプログラム、116 外部ネットワークコントローラ、118 メモリカードインターフェイス、120 メモリカード、122,124 フィールドバスコントローラ、130 記憶部、132,133 形状データ、134,134a,134b,135 データ要素、140 X軸指令生成モジュール、142,152,162 モデル予測制御モジュール、150,150A Z軸指令生成モジュール、160 Y軸指令生成モジュール、200,200X,200Y,200Z サーボドライバ、210X,210Y,210Z 減算器、212X,212Y,212Z フィードバック制御部、300 塗布装置、302 塗布ヘッド、304X,304Y,304Z サーボモータ。

Claims (6)

  1.  対象物と当該対象物の表面に対して所定処理を実行する制御対象との相対位置関係を変更するための複数のドライブ装置に接続され、制御周期毎に前記複数のドライブ装置に操作量を出力する制御装置であって、
     前記複数のドライブ装置は、前記対象物の表面に対向する平面に沿って前記制御対象を前記対象物に対して相対移動させるための第1ドライブ装置と、前記平面に直交する直交軸に沿って前記制御対象を前記対象物に対して相対移動させるための第2ドライブ装置とを含み、
     前記制御装置は、
     目標軌道に基づいて、各制御周期における前記制御対象の前記平面上の第1指令位置を生成する第1生成部と、
     前記第1ドライブ装置に出力する第1操作量と前記制御対象の前記平面上の位置との関係を示す第1動特性モデルと前記第1指令位置とを用いたモデル予測制御により、前記第1操作量を生成する第1制御部と、
     各制御周期における前記制御対象の前記直交軸上の第2指令位置を生成する第2生成部と、
     前記第2ドライブ装置に出力する第2操作量と前記制御対象の前記直交軸上の位置との関係を示す第2動特性モデルと前記第2指令位置とを用いたモデル予測制御により、前記第2操作量を生成する第2制御部とを備え、
     前記第2生成部は、前記対象物の表面形状を示す形状データと前記第1指令位置とに基づいて、前記制御対象と前記対象物の表面との距離が一定になるように前記第2指令位置を生成する、制御装置。
  2.  前記第1ドライブ装置は、前記平面上の第1軸に沿って前記制御対象を前記対象物に対して相対移動させ、
     前記第1指令位置は、前記第1軸上の位置を示し、
     前記第1動特性モデルは、前記第1操作量と前記制御対象の前記第1軸上の位置との関係を示し、
     前記形状データは、前記第1軸を前記対象物の表面に投影した線上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
     前記第2生成部は、
      前記複数の点の中から、前記制御対象が前記第1指令位置に位置するときに前記所定処理の対象となる前記対象物の表面上の処理対象点を挟む2つの点を選択し、
      選択された前記2つの点の前記直交軸上の位置を用いた補間計算により、前記処理対象点から前記直交軸に下した垂線の足の前記直交軸上の位置を求め、
      前記処理対象点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、請求項1に記載の制御装置。
  3.  前記第1ドライブ装置は、前記平面上の第1軸に沿って前記制御対象を前記対象物に対して相対移動させ、
     前記第1指令位置は、前記第1軸上の位置を示し、
     前記第1動特性モデルは、前記第1操作量と前記制御対象の前記第1軸上の位置との関係を示し、
     前記形状データは、前記第1軸を前記対象物の表面に投影した線上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
     前記第2生成部は、
      前記複数の点の中から、前記制御対象が前記第1指令位置に位置するときに前記所定処理の対象となる前記対象物の表面上の処理対象点に最も近い点を選択し、
      選択された点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、請求項1に記載の制御装置。
  4.  前記第1ドライブ装置は、前記平面上の第1軸に沿って前記制御対象を前記対象物に対して相対移動させ、
     前記第1指令位置は、前記第1軸上の位置を示し、
     前記第1動特性モデルは、前記第1操作量と前記制御対象の前記第1軸上の位置との関係を示し、
     前記複数のドライブ装置は、前記第1軸と異なる前記平面上の第2軸に沿って前記制御対象を前記対象物に対して相対移動させるための第3ドライブ装置をさらに含み、
     前記制御装置は、
     前記目標軌道に基づいて、各制御周期における前記制御対象の前記第2軸上の第3指令位置を生成する第3生成部と、
     前記第3ドライブ装置に出力する第3操作量と前記制御対象の前記第2軸上の位置との関係を示す第3動特性モデルと前記第3指令位置とを用いたモデル予測制御により、前記第3操作量を生成する第3制御部とをさらに備え、
     前記第2生成部は、前記形状データおよび前記第1指令位置に加えて前記第3指令位置に基づいて前記第2指令位置を生成する、請求項1に記載の制御装置。
  5.  前記形状データは、前記対象物の表面上の複数の点の各々について、当該点から前記直交軸に下した垂線の足の前記直交軸上の位置を示し、
     前記第2生成部は、
      前記複数の点の中から、前記制御対象が前記第1指令位置および前記第3指令位置に位置するときに前記所定処理の対象となる前記対象物の表面上の処理対象点の周囲に位置する少なくとも3つの点を選択し、
      選択された前記少なくとも3つの点の前記直交軸上の位置を用いた補間計算により、前記処理対象点から前記直交軸に下した垂線の足の前記直交軸上の位置を求め、
      前記処理対象点の前記直交軸上の位置に基づいて、前記第2指令位置を生成する、請求項4に記載の制御装置。
  6.  対象物と当該対象物の表面に対して所定処理を実行する制御対象との相対位置関係を変更するための複数のドライブ装置に接続され、制御周期毎に前記複数のドライブ装置に操作量を出力する制御装置を実現するための制御プログラムであって、
     前記複数のドライブ装置は、前記対象物の表面に対向する平面に沿って前記制御対象を前記対象物に対して相対移動させるための第1ドライブ装置と、前記平面に直交する直交軸に沿って前記制御対象を前記対象物に対して相対移動させるための第2ドライブ装置とを含み、
     前記制御プログラムは、コンピュータに、
     目標軌道に基づいて、各制御周期における前記制御対象の前記平面上の第1指令位置を生成するステップと、
     前記第1ドライブ装置に出力する第1操作量と前記制御対象の前記平面上の位置との関係を示す第1動特性モデルと前記第1指令位置とを用いたモデル予測制御により、前記第1操作量を生成するステップと、
     各制御周期における前記制御対象の前記直交軸上の第2指令位置を生成するステップと、
     前記第2ドライブ装置に出力する第2操作量と前記制御対象の前記直交軸上の位置との関係を示す第2動特性モデルと前記第2指令位置とを用いたモデル予測制御により、前記第2操作量を生成するステップとを備え、
     前記第2指令位置を生成するステップは、前記対象物の表面形状を示す形状データと前記第1指令位置とに基づいて、前記制御対象と前記対象物の表面との距離が一定になるように前記第2指令位置を生成するステップを含む、制御プログラム。
PCT/JP2020/009713 2019-03-20 2020-03-06 制御装置および制御プログラム WO2020189344A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020217029731A KR20210129126A (ko) 2019-03-20 2020-03-06 제어 장치 및 제어 프로그램
EP20773857.6A EP3944033B1 (en) 2019-03-20 2020-03-06 Control device and control program
US17/437,035 US11697129B2 (en) 2019-03-20 2020-03-06 Control device and non-transitory computer readable recording medium
CN202080019227.4A CN113614653B (zh) 2019-03-20 2020-03-06 控制装置及记录介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-052750 2019-03-20
JP2019052750A JP7024751B2 (ja) 2019-03-20 2019-03-20 制御装置および制御プログラム

Publications (1)

Publication Number Publication Date
WO2020189344A1 true WO2020189344A1 (ja) 2020-09-24

Family

ID=72521031

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/009713 WO2020189344A1 (ja) 2019-03-20 2020-03-06 制御装置および制御プログラム

Country Status (6)

Country Link
US (1) US11697129B2 (ja)
EP (1) EP3944033B1 (ja)
JP (1) JP7024751B2 (ja)
KR (1) KR20210129126A (ja)
CN (1) CN113614653B (ja)
WO (1) WO2020189344A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004298697A (ja) 2003-03-28 2004-10-28 Dainippon Printing Co Ltd 塗布方法及び塗布装置
JP2007152261A (ja) * 2005-12-06 2007-06-21 Shibaura Mechatronics Corp ペースト塗布装置、ペースト塗布方法及びこれを用いた表示パネルの製造装置
JP2018151889A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 処理装置、パラメータ調整方法、及びパラメータ調整プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256597B1 (en) * 1998-07-10 2001-07-03 General Electric Company Three dimensional spray coating method and simulation
JP2005138013A (ja) 2003-11-05 2005-06-02 Seiko Epson Corp 液滴吐出装置の制御方法及び液滴吐出装置
US7596420B2 (en) * 2006-06-19 2009-09-29 Asml Netherlands B.V. Device manufacturing method and computer program product
JP6511715B2 (ja) * 2013-10-31 2019-05-15 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、及びロボット
WO2015083275A1 (ja) * 2013-12-05 2015-06-11 三菱電機株式会社 軌跡測定装置、数値制御装置および軌跡測定方法
JP2015223550A (ja) * 2014-05-27 2015-12-14 株式会社Sat 塗布装置及び塗布方法
JP2016099665A (ja) * 2014-11-18 2016-05-30 株式会社東芝 視点位置算出装置、画像生成装置、視点位置算出方法、画像生成方法、視点位置算出プログラム、及び、画像生成プログラム
JP6484108B2 (ja) * 2015-05-22 2019-03-13 株式会社ミツトヨ 形状測定装置の制御方法
JP6786255B2 (ja) * 2016-04-27 2020-11-18 キヤノン株式会社 形状測定方法、形状測定装置、およびデータ処理方法
JP2018072225A (ja) * 2016-10-31 2018-05-10 オムロン株式会社 制御システム、その制御方法およびそのプログラム
JP2018072222A (ja) * 2016-10-31 2018-05-10 オムロン株式会社 制御システム、その制御方法およびそのプログラム
JP6834528B2 (ja) * 2017-01-25 2021-02-24 オムロン株式会社 制御装置、制御プログラムおよび制御システム
JP6173628B1 (ja) * 2017-01-30 2017-08-02 株式会社ミツトヨ 形状測定装置の制御方法
JP6798425B2 (ja) * 2017-05-30 2020-12-09 セイコーエプソン株式会社 ロボット制御方法、及びロボットシステム
JP2019021087A (ja) * 2017-07-19 2019-02-07 オムロン株式会社 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004298697A (ja) 2003-03-28 2004-10-28 Dainippon Printing Co Ltd 塗布方法及び塗布装置
JP2007152261A (ja) * 2005-12-06 2007-06-21 Shibaura Mechatronics Corp ペースト塗布装置、ペースト塗布方法及びこれを用いた表示パネルの製造装置
JP2018151889A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 処理装置、パラメータ調整方法、及びパラメータ調整プログラム

Also Published As

Publication number Publication date
EP3944033B1 (en) 2023-10-18
EP3944033A1 (en) 2022-01-26
EP3944033A4 (en) 2022-12-14
KR20210129126A (ko) 2021-10-27
JP2020154743A (ja) 2020-09-24
JP7024751B2 (ja) 2022-02-24
CN113614653B (zh) 2024-04-09
US20220176402A1 (en) 2022-06-09
CN113614653A (zh) 2021-11-05
US11697129B2 (en) 2023-07-11

Similar Documents

Publication Publication Date Title
US10386794B2 (en) Control device, storage medium, and control system by creating internal model of control target
CN110462531B (zh) 用于控制机器操作的模型预测控制系统和方法
JP2018001393A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP2019215633A (ja) 制御システム、制御装置、画像処理装置およびプログラム
WO2020189344A1 (ja) 制御装置および制御プログラム
WO2022149241A1 (ja) シミュレーションプログラム、シミュレーション装置、およびシミュレーション方法
US11977370B2 (en) System and method for minimizing non-productive idle times within an automation process
JP2019215635A (ja) 制御システム、制御装置、画像処理装置およびプログラム
WO2020189343A1 (ja) 制御システムおよび制御プログラム
Zhang et al. Auto-calibration and online-adjustment of the kinematic uncertainties for redundantly actuated cable-driven parallel robots
WO2020162199A1 (ja) 制御装置、モデル作成方法および制御プログラム
WO2020162200A1 (ja) 制御装置および制御プログラム
JPH0699373A (ja) ロボット制御装置
CN116348822B (zh) 包含仿真程序的计算机记录介质、仿真装置及仿真方法
JP6863497B1 (ja) コントローラシステムおよびその制御方法
Athira et al. Neural network based fault reduction in wafer scanning system
JP7059957B2 (ja) 制御装置および制御プログラム
WO2020162202A1 (ja) 制御装置および制御プログラム
Bachiller et al. A modular scheme for controller design and performance evaluation in 3D visual servoing
JP2019215634A (ja) 制御システム、制御装置およびプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20773857

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20217029731

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020773857

Country of ref document: EP

Effective date: 20211020