Control device, development support device and development support program
The control device and development support system provide versatile control of dancer mechanisms by using calculation modules to adjust torque and tension, addressing the inefficiency of mechanism-specific programs, enhancing control accuracy and ease of program creation.
Patent Information
- Application Number
- JP2021127659
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-03
- Publication Date
- 2025-08-13
- Estimated Expiration
- 2041-08-03
AI Technical Summary
Existing control systems for dancer mechanisms, such as those involving dancer rollers, lack versatility in creating user programs, necessitating specific programs for each type of mechanism, which is inefficient and limits flexibility.
A control device and development support system that includes calculation modules for different dancer mechanisms, allowing for a common control module independent of the dancer mechanism, which calculates compensation parameters based on motor drive information to adjust torque and tension, enabling versatile control of both pendulum and linear-motion dancer mechanisms.
Enables more generalized control of dancer mechanisms by eliminating the need for mechanism-specific user programs, improving control accuracy and ease of program creation across various dancer mechanisms.
Smart Images

Figure 0007722027000007 
Figure 0007722027000008 
Figure 0007722027000009
Abstract
Description
[Technical Field]
[0001] The present invention relates to a control device, a development support device, and a development support program. [Background technology]
[0002] In the field of FA (Factory Automation), PLCs (Programmable Logic Controllers) are widely used as control devices for various facilities and machines. The control operations performed by PLCs include logical operations using TRUE / FALSE information and arithmetic operations according to formulas created for specific applications.
[0003] By using arithmetic operations, it is possible to realize control operations for controlling actuators such as motors in accordance with physical equations that simulate mechanical elements, for example.
[0004] For example, Patent Publication No. 6844727 (Patent Document 1) discloses a conveying control device and a conveying control program that can appropriately control the pressure of a dancer roller in response to changes in acceleration and speed, thereby maintaining the tension of the conveyed material at an approximately constant level. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent No. 6844727 Summary of the Invention [Problem to be solved by the invention]
[0006] There is a demand for an environment in which more versatile programs can be created, such as the transport control program disclosed in Japanese Patent No. 6844727 (Patent Document 1). In particular, because there are several types of dancer mechanisms that include dancer rollers, there is a demand for a development environment in which more versatile user programs can be created.
[0007] An object of the present invention is to provide a solution that can more generally realize control of a dancer mechanism including dancer rollers. [Means for solving the problem]
[0008] A control device according to one embodiment controls a dancer mechanism that adjusts the torque applied to the dancer rollers by driving a motor, thereby adjusting the tension acting on a workpiece being transported in contact with the dancer rollers. The control device includes a calculation module configured depending on the dancer mechanism and a common control module independent of the dancer mechanism. The calculation module is configured to calculate compensation parameters based on information related to the drive of the motor. The compensation parameters include an additional torque that the motor must generate due to a force acting on a mechanism element driven by the motor. The control module includes a first module that estimates a torque component used to change the tension acting on the workpiece based on the information related to the drive of the motor, a second module that calculates a tension command value based on the estimated torque component, and a third module that calculates a torque command value for the motor from the result of adding each torque included in the compensation parameter to the calculated tension command value.
[0009] With this configuration, by configuring one or more calculation modules for each dancer mechanism, the control module can be used independently of the dancer mechanism, eliminating the need to create a user program for controlling the dancer mechanism for each dancer mechanism, thereby enabling more versatile control of the dancer mechanism.
[0010] The calculation module may be any one of a plurality of calculation modules configured for different dancer mechanisms. The plurality of calculation modules may include a first calculation module configured for a pendulum-motion dancer mechanism and a second calculation module configured for a linear-motion dancer mechanism. This configuration makes it easier to create user programs required for control of both pendulum-motion dancer mechanisms and linear-motion dancer mechanisms, which are typical dancer mechanisms.
[0011] Each of the first calculation module and the second calculation module may be implemented as a function, which makes it easier to use the first calculation module and the second calculation module in a user program.
[0012] The calculation module may be configured to calculate the torque required to generate tension of the target tension value. A second module of the control module may calculate a tension command value based on the torque required to generate the target tension value and the estimated torque component. With this configuration, torque is adjusted as a control target for generating tension of the target tension value, thereby improving control accuracy.
[0013] The calculation module configured for a pendulum motion dancer mechanism may be configured to refer to the correspondence relationship between the angle of the dancer rollers and the rate of change of tension, and to correct the target tension value based on the current angle of the dancer rollers. This configuration makes it possible to improve control accuracy even for a mechanism such as a pendulum motion dancer mechanism in which the change in tension generated in the workpiece due to the movement of the dancer rollers is nonlinear.
[0014] The calculation module may be configured to calculate the torque required to generate the target tension value according to a calculation formula appropriate for the dancer mechanism in question, thereby reducing the influence of structural differences between the dancer mechanisms.
[0015] The first module of the control modules may be configured to calculate a torque corresponding to the inertia of the mechanism element driven by the motor based on the total inertia of the dancer mechanism and the angular velocity of the motor. With this configuration, by calculating the torque corresponding to the inertia of the mechanism element driven by the motor, it is possible to control the workpiece to generate tension of the target tension value without measuring the actual tension generated in the workpiece.
[0016] The calculation module may be configured to calculate the total inertia of the dancer mechanism from mechanical parameters that indicate the mechanical characteristics of the dancer mechanism. With this configuration, the total inertia can be automatically calculated from the mechanical parameters even if the total inertia is not known in advance.
[0017] According to another embodiment, there is provided a development support device that provides an environment for developing a user program to be executed by a control device. The development support device includes: a plurality of calculation modules configured depending on dancer mechanisms that adjust the torque applied to the dancer rollers by driving the motor, thereby adjusting the tension acting on a workpiece being transported in contact with the dancer rollers; and a common control module that is independent of the dancer mechanisms. The calculation modules are configured to calculate compensation parameters based on information related to the drive of the motor. The compensation parameters include an additional torque that the motor must generate due to a force acting on a mechanism element driven by the motor. The control modules include a first module that estimates a torque component used to change the tension acting on the workpiece based on information related to the drive of the motor; a second module that calculates a tension command value based on the estimated torque component; and a third module that calculates a torque command value for the motor from the result of adding each torque included in the compensation parameter to the calculated tension command value.
[0018] According to yet another embodiment, there is provided a development support program for realizing a development support device that provides an environment for developing a user program to be executed by a control device. The development support program includes a plurality of calculation modules configured depending on dancer mechanisms that adjust the torque applied to the dancer rollers by driving the motor, thereby adjusting the tension generated in a workpiece transported in contact with the dancer rollers, and a common control module that is independent of the dancer mechanisms. The calculation modules are configured to calculate compensation parameters based on information related to the drive of the motor. The compensation parameters include an additional torque that the motor must generate due to a force generated in a mechanism element driven by the motor. The control modules include a first module that estimates a torque component used to change the tension generated in the workpiece based on the information related to the drive of the motor, a second module that calculates a tension command value based on the estimated torque component, and a third module that calculates a torque command value for the motor from the result of adding each torque included in the compensation parameter to the calculated tension command value. [Effects of the Invention]
[0019] According to the present invention, it is possible to more generally realize control of the dancer mechanism including the dancer rollers. [Brief explanation of the drawings]
[0020] [Figure 1] 1 is a schematic diagram showing an overview of a control system according to an embodiment of the present invention; [Figure 2] 1 is a schematic diagram illustrating an outline of a system configuration of a control system according to an embodiment of the present invention. [Figure 3] 1 is a schematic diagram illustrating an example of a hardware configuration of a PLC according to an embodiment of the present invention. [Figure 4] 1 is a schematic diagram illustrating an example of a hardware configuration of a development support device according to an embodiment of the present invention; [Figure 5] FIG. 2 is a schematic diagram showing an example of a dancer mechanism controlled by the control system according to the present embodiment. [Figure 6]FIG. 10 is a schematic diagram showing another example of a dancer mechanism controlled by the control system according to the present embodiment. [Figure 7] FIG. 2 is a schematic diagram showing an example of the configuration of a program module for realizing dancer control of the control system according to the present embodiment. [Figure 8] FIG. 2 is a schematic diagram showing an example of the configuration of a control loop related to dancer control in the control system according to the present embodiment. [Figure 9] FIG. 10 is a diagram for explaining the correction process of the tension target value in the pendulum motion compensation parameter calculation module of the control system according to the present embodiment. [Figure 10] FIG. 10 is a diagram for explaining the calculation process of the compensation parameters in the pendulum motion type compensation parameter calculation module of the control system according to the present embodiment. [Figure 11] 10 is a flowchart showing a processing procedure in a pendulum motion type compensation parameter calculation module of the control system according to the present embodiment. [Figure 12] 10 is a diagram for explaining the calculation process of a compensation parameter 190 in a linear action compensation parameter calculation module of the control system according to the present embodiment. FIG. [Figure 13] 10 is a flowchart showing a processing procedure in a linear action compensation parameter calculation module of the control system according to the present embodiment. [Figure 14] 4 is a flowchart showing a processing procedure in a dancer control module of the control system according to the present embodiment. [Figure 15] FIG. 10 is a diagram showing a function as an implementation example of a pendulum motion type compensation parameter calculation module of the control system according to the present embodiment. [Figure 16] FIG. 10 is a diagram showing a function as an implementation example of a linear action compensation parameter calculation module of the control system according to the present embodiment. [Figure 17] FIG. 2 is a diagram showing a function block as an example of implementation of a dancer control module of the control system according to the present embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0021] The embodiments of the present technology will be described in detail with reference to the drawings. For the same or corresponding parts in the drawings, the same reference numerals are given and their descriptions will not be repeated.
[0022] <A. Application Example> First, an example of a scenario to which the present invention is applied will be described. FIG. 1 is a schematic diagram showing an overview of a control system 1 according to the present embodiment. Referring to FIG. 1, a PLC 100, which is an example of a control device of the control system 1, controls a dancer mechanism.
[0023] The dancer mechanism (dancer mechanism 50A and / or dancer mechanism 50B) adjusts the tension generated in the workpiece 30 conveyed in contact with the dancer roller 52 by adjusting the torque applied to the dancer roller 52 by driving a motor. As the motor, any type of motor may be used, but in the following description, an example in which a servo motor 22 is adopted as a typical example is shown.
[0024] The PLC 100 can control both the pendulum motion type dancer mechanism 50A and the linear motion type dancer mechanism 50B, for example.
[0025] The dancer mechanism 50A includes a dancer arm 56, a dancer roller 52 provided at one end of the dancer arm 56, and a counterbalance 54 provided at the other end of the dancer arm 56. The dancer arm 56 is rotationally driven by a servo motor 22. The servo driver 20 drives the servo motor 22 according to a command from the PLC 100.
[0026] The dancer mechanism 50B includes a base 60 and a dancer roller 52 configured to be movable in the longitudinal direction of the base 60. An engagement mechanism with the dancer roller 52 existing inside the base 60 is rotationally driven by a servo motor 22. The servo driver 20 drives the servo motor 22 according to a command from the PLC 100.
[0027] One or more compensation parameter calculation modules (corresponding to calculation modules) configured depending on the dancer mechanism are available in PLC 100. More specifically, PLC 100 includes pendulum motion type compensation parameter calculation module 170 configured for pendulum motion type dancer mechanism 50A, and linear motion type compensation parameter calculation module 180 configured for linear motion type dancer mechanism 50B.
[0028] Each of the compensation parameter calculation modules (the pendulum motion type compensation parameter calculation module 170 and the linear motion type compensation parameter calculation module 180) periodically calculates compensation parameters 190 according to a calculation formula appropriate for the target dancer mechanism. That is, the compensation parameter calculation module is configured to calculate the compensation parameters 190 based on information related to the drive of the motor. The compensation parameters 190 include an additional torque that the servo motor 22 must generate due to a force acting on the mechanism elements (including the dancer rollers and related mechanical structures) driven by the servo motor 22.
[0029] While the compensation parameter calculation module depends on the target dancer mechanism, dancer control module 150 and torque control module 160, which receive compensation parameters 190 and control servo driver 20 and servo motor 22, are common and do not depend on the target dancer mechanism. In other words, dancer control module 150 and torque control module 160 correspond to common control modules that do not depend on the dancer mechanism.
[0030] In the control system 1 according to this embodiment, the dancer control module 150 and the torque control module 160 are common and independent of the target dancer mechanism, and therefore can be implemented using common or nearly identical source code independent of the dancer mechanism.
[0031] Regarding mechanical or electrical differences between dancer mechanisms, it can be addressed by preparing a compensation parameter calculation module corresponding to each dancer mechanism. That is, regardless of what kind of dancer mechanism is targeted, by constructing a compensation parameter calculation module for calculating the compensation parameter 190 according to a physical formula or the like corresponding to the target dancer mechanism, other parts of the source code and the like can be commonly used, so that the control for the dancer mechanism can be realized more generally.
[0032] <B. Control System Configuration> Next, the configuration of the control system 1 according to the present embodiment will be described.
[0033] (b1: Overall Configuration) FIG. 2 is a schematic diagram outlining the system configuration of the control system 1 according to the present embodiment. Referring to FIG. 2, the control system 1 includes a PLC 100 and a development support device 200 connected to the PLC 100.
[0034] The PLC 100 executes a user program to collect data from devices connected to the field network 10, execute control calculations using the collected data, and output part or all of the execution results of the control calculations to devices connected to the field network 10, etc., and execute control calculations.
[0035] In the example shown in FIG. 2, the PLC 100 is connected to the remote I / O device 12 and the servo driver 20 via the field network 10.
[0036] For the field network 10, protocols for industrial networks such as EtherCAT (registered trademark) and EtherNet / IP can be used.
[0037] The remote I / O device 12 is connected to field devices 14 such as sensors and actuators, transmits data measured by the sensors to the PLC 100, and outputs command signals to the actuators and the like according to the data received from the PLC 100.
[0038] The servo driver 20 drives the servo motor 22 in accordance with the data received from the PLC 100 and transmits data measured by the servo motor 22 and the like to the PLC 100 .
[0039] The PLC 100 may be connected to the HMI 300 and the server device 400 via a higher-level network 16. The higher-level network 16 may use a protocol for industrial networks such as EtherNet / IP.
[0040] The development support device 200 provides an environment for developing a user program to be executed by the PLC 100. Typically, the development support device 200 may be realized by a general-purpose computer executing a development support program 214 as described below.
[0041] (b2:PLC100) Fig. 3 is a schematic diagram showing an example of the hardware configuration of a PLC 100 according to this embodiment. Referring to Fig. 3, the PLC 100 includes a processor 102, a main memory 104, a storage 110, a memory card interface 120, a host network controller 106, a field network controller 108, a local bus controller 116, and a USB (Universal Serial Bus) controller 124 that provides a USB interface. These components are connected via a processor bus 118.
[0042] The processor 102 corresponds to an arithmetic processing unit that executes a user program, and is composed of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), etc. Specifically, the processor 102 reads out a system program 112 and a user program 114 stored in the storage 110, expands them in the main memory 104, and executes them to realize control calculations for a control target.
[0043] The main memory 104 is configured by a volatile storage device such as a dynamic random access memory (DRAM) or a static random access memory (SRAM), for example.
[0044] The storage 110 is configured by, for example, a nonvolatile storage device such as an SSD (Solid State Drive) or an HDD (Hard Disk Drive). The storage 110 stores a system program 112 for realizing basic functions, a user program 114 created according to the control target, and the like.
[0045] System programs 112 include instructions for providing an execution environment in which user programs 114 run.
[0046] The user program 114 is a program in which instructions for implementing control calculations are written, and typically includes sequence instructions and motion instructions. The user program 114 may be written in any of the languages defined in IEC 61131-3. However, the user program 114 may also include a program written in a manufacturer-specific language other than the languages defined in IEC 61131-3.
[0047] The memory card interface 120 accepts a memory card 122, which is an example of a removable storage medium. The memory card interface 120 is capable of reading and writing any data from and to the memory card 122.
[0048] The upper network controller 106 exchanges data with any information processing device (such as the HMI 300 and server device 400 shown in FIG. 2) via the upper network 16.
[0049] The field network controller 108 exchanges data with each device via the field network 10 .
[0050] The local bus controller 116 exchanges data with any functional unit 130 included in the PLC 100 via the local bus 126. The functional unit 130 may include, for example, an analog I / O unit responsible for inputting and / or outputting analog signals, a digital I / O unit responsible for inputting and / or outputting digital signals, and a counter unit that receives pulses from an encoder or the like.
[0051] The USB controller 124 exchanges data with any information processing device (such as the development support device 200) via a USB connection.
[0052] (b2: Development support device 200) Fig. 4 is a schematic diagram showing an example of the hardware configuration of development support device 200 according to this embodiment. Referring to Fig. 4, development support device 200 includes a processor 202 such as a CPU or MPU, a main memory 204, a storage 210, a network controller 220, a USB controller 224, an input unit 226, and a display unit 228. These components are connected via a bus 208.
[0053] The processor 202 reads out various programs stored in the storage 210, expands them in the main memory 204, and executes them to realize the processing required by the development support device 200.
[0054] The storage 210 is configured with, for example, an HDD or SSD. The storage 210 typically stores an OS 212 and a development support program 214. Note that the storage 210 may store necessary programs other than the programs shown in FIG. 4.
[0055] The development support program 214 realizes processes such as creating and editing the user program 114, generating corresponding object code from the source code of the user program 114, and debugging.
[0056] The development support program 214 includes a dancer control module 150, a torque control module 160, a pendulum motion type compensation parameter calculation module 170, and a linear motion type compensation parameter calculation module 180. These modules may be implemented by being stored in a library accessible from the development support program 214. These modules may be stored in the development support device 200 in the form of object code that can be executed directly by the PLC 100, or may be stored in the development support device 200 in the form of source code. If these modules are stored in the form of source code, the development support device 200 may generate the corresponding object code.
[0057] The network controller 220 exchanges data with any information processing device via any network.
[0058] The USB controller 224 exchanges data with any information processing device via a USB connection.
[0059] The input unit 226 is configured with a mouse, keyboard, touch panel, etc., and receives instructions from the user. The display unit 228 is configured with a display, various indicators, etc., and outputs processing results from the processor 202, etc.
[0060] The development support device 200 may have an optical drive 206. The optical drive 206 reads a program from a recording medium 207 (e.g., an optical recording medium such as a DVD (Digital Versatile Disc)) that non-temporarily stores a computer-readable program, and stores it in a storage 210 or the like.
[0061] Various programs executed on the development support device 200 may be installed via a computer-readable recording medium 207, or may be installed by downloading from an arbitrary server on the network.
[0062] In FIGS. 3 and 4, configuration examples are shown in which necessary functions are provided by one or more processors executing a program. However, some or all of these provided functions may be implemented using a dedicated hardware circuit (e.g., an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array)).
[0063] The development support device 200 may be realized as a single information processing device, or some or all of the necessary functions may be realized using a plurality of processor resources.
[0064] <C. Dancer Mechanism> Next, a dancer mechanism, which is an application example of the control system 1 according to the present embodiment, will be described.
[0065] FIG. 5 is a schematic diagram showing an example of a dancer mechanism controlled by the control system 1 according to the present embodiment. The dancer mechanism 50 is arranged during the process of conveying a film-like workpiece 30, and changes the torque generated by a motor 20 so that the tension generated in the workpiece 30 becomes a specified target value. FIG. 5(A) shows an example of a pendulum motion type dancer mechanism, and FIG. 5(B) shows an example of a linear motion type dancer mechanism.
[0066] 5(A), dancer mechanism 50A includes dancer arm 56, dancer roller 52 provided at one end of dancer arm 56, and counter balancer 54 provided at the other end of dancer arm 56. Dancer arm 56 is rotationally driven by servo motor 22. Servo driver 20 drives servo motor 22 in accordance with commands from PLC 100.
[0067] The length of the buffer changes depending on the difference between the amount of movement of the workpiece 30 on the supply side (upstream side) and the amount of movement on the consumption side (downstream side). The dancer arm 56 operates in conjunction with the torque generated by the servo motor 22, causing the dancer rollers 52 to move along an arc whose axis is the center of rotation of the dancer arm 56 according to the buffer amount. The dancer rollers 52 apply a thrust force to the workpiece 30, thereby changing the tension generated in the workpiece 30.
[0068] The PLC 100 adjusts the torque generated by the servo motor 22 so that a specified target tension is generated in the workpiece 30. In the dancer mechanism 50A shown in Fig. 5(A), in order to move the dancer rollers 52, a torque sufficient to counteract the force due to the rotational moment is required in addition to the force in the gravitational direction due to the weight of the dancer rollers 52.
[0069] 5(B), the dancer mechanism 50B includes a base 60 and dancer rollers 52 configured to be movable in the longitudinal direction of the base 60. An engagement mechanism with the dancer rollers 52, located inside the base 60, is rotationally driven by a servo motor 22. The servo driver 20 drives the servo motor 22 in accordance with commands from the PLC 100.
[0070] The length of the buffer changes depending on the difference between the amount of movement of the workpiece 30 on the supply side (upstream side) and the amount of movement on the consumption side (downstream side). The dancer arm 56 operates in conjunction with the torque generated by the servo motor 22, causing the dancer rollers 52 to move along the longitudinal direction of the base 60 according to the buffer amount. In the example shown in FIG. 5(B), the dancer rollers 52 move in the vertical direction on the page. The dancer rollers 52 apply a thrust force to the workpiece 30, thereby changing the tension generated in the workpiece 30.
[0071] The PLC 100 adjusts the torque generated by the servo motor 22 so that a specified target tension is generated in the workpiece 30. In the dancer mechanism 50B shown in Fig. 5(B), in order to move the dancer rollers 52, a torque sufficient to counteract the force in the gravitational direction due to the weight of the dancer rollers 52 is required.
[0072] FIG. 6 is a schematic diagram showing another example of a dancer mechanism controlled by the control system 1 according to the present embodiment.
[0073] 6(A), dancer mechanism 50C includes a dancer arm 56A and a dancer roller 52 provided at one end of dancer arm 56A. Dancer arm 56A is rotationally driven by servo motor 22. As dancer arm 56A rotates in conjunction with the rotation of servo motor 22, dancer roller 52 moves along an arc centered at the fulcrum of dancer arm 56A.
[0074] 6(B), dancer mechanism 50D includes a dancer arm 56B, a dancer roller 52A provided at one end of dancer arm 56B, and a dancer roller 52B provided at the other end of dancer arm 56B. Dancer arm 56B is rotationally driven by servo motor 22. As dancer arm 56B rotates in conjunction with the rotation of servo motor 22, dancer rollers 52A and 52B move in opposite directions along an arc whose axis is the center of rotation of dancer arm 56B.
[0075] 6(C), dancer mechanism 50E includes a base 60A, a connecting member 62 configured to be movable in the longitudinal direction of base 60A, dancer rollers 52C provided at one end of connecting member 62, and dancer rollers 52D provided at the other end of connecting member 62. An engagement mechanism with connecting member 62 located inside base 60A is rotationally driven by servo motor 22. Connecting with the rotation of servo motor 22, connecting member 62 moves linearly, causing dancer rollers 52C and 52D to move in a direction parallel to the moving direction of connecting member 62.
[0076] 5 and 6, the positions of the dancer rollers 52C, 52D change passively depending on the difference between the amount of movement on the supply side (upstream side) and the amount of movement on the consumption side (downstream side) of the dancer rollers 52. The tension generated in the film-like workpiece 30 is adjusted by changing the torque generated by the servo motor 22 that applies thrust to the dancer rollers 52.
[0077] <D.プログラムモジュール> Next, a program module for realizing control of the dancer mechanism shown in FIGS. 5 and 6 (hereinafter also referred to as "dancer control") will be described.
[0078] 7 is a schematic diagram showing an example configuration of program modules for realizing dancer control in control system 1 according to the present embodiment. Referring to Fig. 7, control system 1 includes, as program modules for realizing dancer control, dancer control module 150, torque control module 160, pendulum motion type compensation parameter calculation module 170, and linear motion type compensation parameter calculation module 180.
[0079] In control system 1 according to the present embodiment, dancer control module 150 and torque control module 160 can be commonly used regardless of the type of dancer mechanism.
[0080] Dancer control module 150 receives compensation parameters 190 from pendulum motion type compensation parameter calculation module 170 and / or linear motion type compensation parameter calculation module 180 , and periodically calculates a torque command value based on compensation parameters 190 .
[0081] Torque control module 160 periodically calculates a control command value (e.g., current value or number of pulses) for servo driver 20 in accordance with the torque command value from dancer control module 150 so that the torque generated by servo motor 22 matches the torque command value.
[0082] Any of a plurality of compensation parameter calculation modules configured for different dancer mechanisms is logically connected to dancer control module 150 and torque control module 160. These compensation parameter calculation modules include pendulum motion type compensation parameter calculation module 170 configured for a pendulum motion type dancer mechanism, and linear motion type compensation parameter calculation module 180 configured for a linear motion type dancer mechanism.
[0083] Pendulum motion type compensation parameter calculation module 170 is a program module created in accordance with the physical behavior of a pendulum motion type dancer mechanism. Linear motion type compensation parameter calculation module 180 is a program module created in accordance with the physical behavior of a linear motion type dancer mechanism. Pendulum motion type compensation parameter calculation module 170 and linear motion type compensation parameter calculation module 180 each periodically calculate compensation parameters 190 based on tension target values 173, 183 and axis information 174, 184 (state values of servo motor 22 driven by servo driver 20).
[0084] The axis information 174 includes the position (or angle) of the servo motor 22, the rotational speed (or angular velocity) of the servo motor 22, and the acceleration (or angular acceleration) of the servo motor 22. The axis information 174 may be calculated based on a feedback signal from an encoder attached to the servo motor 22, or may be calculated based on a control command value from the servo driver 20.
[0085] Here, the compensation parameters 190 are parameters used in calculating a torque command to compensate for tension fluctuations occurring in the workpiece 30. More specifically, the compensation parameters 190 indicate factors to be considered in the calculation, in addition to the force calculated by conversion from the target tension value, when adjusting the torque generated by the motor 22 so that the tension occurring in the workpiece 30 coincides with the target tension value. The compensation parameters 190 include, for example, a gravity compensation torque 192, a Coulomb friction compensation torque 194, and a viscous friction compensation torque 196 as torques that the servo motor 22 must additionally generate due to forces occurring in the mechanical elements driven by the servo motor 22. The compensation parameters 190 may include at least one of these three types of torque. The torques included in the compensation parameters 190 may be selected appropriately depending on the required control accuracy, etc.
[0086] The gravity compensation torque 192 corresponds to the torque that the servo motor 22 must additionally generate due to the gravity acting on the mechanism elements driven by the servo motor 22. The gravity compensation torque 192 reflects the gravity acting on the dancer rollers and the members connected to the dancer rollers.
[0087] The Coulomb friction compensation torque 194 corresponds to the torque that the servo motor 22 must additionally generate due to the Coulomb friction that occurs in the mechanism elements driven by the servo motor 22. The Coulomb friction compensation torque 194 reflects the Coulomb friction that occurs when the dancer rollers move.
[0088] The viscous friction compensation torque 196 corresponds to the torque that the servo motor 22 must additionally generate due to the viscous friction occurring in the mechanical elements driven by the servo motor 22. The viscous friction compensation torque 196 reflects the viscous friction that occurs when adjusting the position of the dancer roller. The acceleration energy parameter reflects the energy for accelerating or decelerating the dancer roller.
[0089] The compensation parameter 190 may further include an acceleration energy parameter. The control system 1 according to the present embodiment does not depend on the type of the dancer mechanism, and commonly uses the dancer control module 150 and the torque control module 160, while a program module for calculating the compensation parameter 190 according to the type of the dancer mechanism is prepared. Therefore, a program can be created generically for various dancer mechanisms.
[0090] <E. Dancer Control> Next, the processing content of the dancer control executed by the control system 1 according to the present embodiment will be described.
[0091] (e1: Control Loop) FIG. 8 is a schematic diagram showing a configuration example of a control loop related to the dancer control of the control system 1 according to the present embodiment. Referring to FIG. 8, the dancer control module 150 mainly constitutes a feedback loop of a torque command value based on the angular velocity of the servo motor 22 and the compensation parameter 190.
[0092] More specifically, the dancer control module 150 includes an external force estimation module 154, a PI control module 152, and a torque command value calculation module 155.
[0093] The external force estimation module 154 estimates an external force estimated value 159, which is a torque component used to change the tension generated in the workpiece 30, based on information related to the driving of the servo motor 22. More specifically, the external force estimation module 154 calculates the external force estimated value 159, which is a component of the torque generated by the servo motor 22 that is an external force (specified load) for adjusting the tension generated in the workpiece 30, based on the tension command value 156, the angular velocity of the servo motor 22, and the total inertia 198.
[0094] More specifically, the external force estimation module 154 calculates the torque due to inertia of the dancer mechanism by multiplying the total inertia 198 of the target dancer mechanism by the angular acceleration of the servo motor 22, and calculates the external force estimation value 159 by subtracting the calculated torque due to inertia from the tension command value 156 (see also the following equations (1) and (4)). Here, the torque due to inertia corresponds to the torque corresponding to the inertia of the mechanism element driven by the servo motor 22.
[0095] The PI control module 152 calculates a tension command value 156 based on an external force estimated value 159 (an estimated torque component used to change the tension acting on the workpiece 30). More specifically, the PI control module 152 receives an input of the difference between the torque-converted tension target value 199 and the external force estimated value 159, and outputs a value calculated by a PI (proportional integral) calculation as the tension command value 156. The subtractor 151 calculates the difference between the torque-converted tension target value 199 and the external force estimated value 159.
[0096] The torque-converted tension target value 199 corresponds to the torque required to generate the tension of the corrected tension target value 177. In other words, the torque-converted tension target value 199 is a torque target value set for the dancer control module 150. The PI control module 152 then calculates the tension command value 156 based on the torque required to generate the tension target value 173 (the torque-converted tension target value 199) and the estimated torque component (the external force estimated value 159).
[0097] The adder 153 adds the compensation parameters 190 (gravity compensation torque 192, Coulomb friction compensation torque 194, and viscous friction compensation torque 196) to the tension command value 156.
[0098] The torque command value calculation module 155 calculates a torque command value 158 for the servo motor 22 from the result of adding each torque included in the compensation parameters 190 to the calculated tension command value 156. More specifically, the torque command value calculation module 155 calculates the torque command value 158 from a compensated tension command value 157 obtained by adding the compensation parameters 190 (gravity compensation torque 192, Coulomb friction compensation torque 194, and viscous friction compensation torque 196) to the tension command value 156. The torque command value calculation module 155 calculates the torque command value 158 in accordance with the control parameters 140 that are set in advance.
[0099] The torque control module 160 calculates a control command value for the servo driver 20 according to the torque command value 158 .
[0100] (e2: Pendulum motion compensation parameter calculation module 170) Next, the processing contents of the pendulum motion compensation parameter calculation module 170 will be described.
[0101] The pendulum action type compensation parameter calculation module 170 periodically corrects the nonlinearity of the effect on the tension caused by the movement of the dancer rollers 52 along the arc, and periodically calculates the compensation parameters 190.
[0102] 9 is a diagram for explaining the correction process of the tension target value in the pendulum motion compensation parameter calculation module 170 of the control system 1 according to this embodiment. Referring to FIG. 9, the pendulum motion compensation parameter calculation module 170 includes a change rate calculation module 175.
[0103] The change rate calculation module 175 refers to the external force correction table 172 to calculate the tension change rate 176 corresponding to the current dancer angle θ [rad].
[0104] The external force correction table 172 defines the correspondence between the dancer angle θ [rad] and the tension change rate 176 (0 to 100 [%]) with respect to the reference angle of the dancer mechanism (θ0 = 0 [rad]). The change rate calculation module 175 refers to the correspondence defined by the external force correction table 172 and calculates the tension change rate 176 that corresponds to the current dancer angle θ [rad].
[0105] The corrected tension target value 177 [N] is calculated as tension target value 173 [N] × tension change rate [%] / 100. Therefore, a multiplier 178 multiplies the tension target value 173 by the tension change rate 176 output from the change rate calculation module 175.
[0106] In this way, the compensation parameter calculation module (pendulum motion type compensation parameter calculation module 170) configured for a pendulum motion type dancer mechanism is configured to refer to the correspondence relationship (external force correction table 172) between the dancer roller angle (dancer angle θ) and the tension change rate, and to correct the target tension value 173 based on the current angle of the dancer roller (dancer angle θ).
[0107] FIG. 10 is a diagram for explaining the calculation process of the compensation parameter 190 in the pendulum motion compensation parameter calculation module 170 of the control system 1 according to this embodiment.
[0108] 10, the pendulum motion type dancer mechanism includes dancer rollers 52 and counter balancer 54 provided on both ends of dancer arm 56. Since dancer rollers 52, counter balancer 54, and dancer arm 56 each have mass, when servo motor 22 rotates dancer arm 56 with torque τ, the following equation of motion is established in terms of dancer angle θ (the state in which dancer arm 56 is horizontal is defined as the reference angle (θ0 = 0 [rad])) and angular velocity ω, as shown in Equation (1) below:
[0109]
number
[0110] Moreover, the total inertia I in equation (1) can be calculated according to the following equation (2).
[0111]
number
[0112] In this way, the pendulum motion type compensation parameter calculation module 170 is configured to calculate the total inertia I of the dancer mechanism from the mechanical parameters 171 indicating the mechanical characteristics of the dancer mechanism.
[0113] Furthermore, the torque G(θ) due to gravity in equation (1) can be calculated according to the following equation (3).
[0114]
number
[0115] In other words, the torque τ generated by the servo motor 22 can be considered to be the sum of (1) torque due to inertia, (2) torque due to gravity, (3) torque due to Coulomb friction, (4) torque due to viscous friction, and (5) torque corresponding to an external force (specified load).
[0116] The pendulum motion type compensation parameter calculation module 170 periodically calculates (2) the torque due to gravity (gravity compensation torque 192), (3) the torque due to Coulomb friction (Coulomb friction compensation torque 194), and (4) the torque due to viscous friction (viscous friction compensation torque 196), and outputs them to the torque control module 160 as compensation parameters 190.
[0117] On the other hand, (1) the torque due to inertia is calculated by the external force estimation module 154 of the torque control module 160. Therefore, the pendulum motion type compensation parameter calculation module 170 outputs the value of the total inertia I required to calculate (1) the torque due to inertia to the torque control module 160 as the total inertia 198.
[0118] Furthermore, (5) the torque corresponding to the external force (specified load) is output to the torque control module 160 as a torque-converted tension target value 199. At this time, the corrected tension target value 177 (see FIG. 9) is used as the external force F. In this way, the pendulum motion compensation parameter calculation module 170 is configured to calculate the torque (torque-converted tension target value 199) required to generate the tension target value 173 according to a calculation formula appropriate for the target dancer mechanism.
[0119] Fig. 11 is a flowchart showing the processing procedure in the pendulum motion compensation parameter calculation module 170 of the control system 1 according to this embodiment. Each step shown in Fig. 11 is realized by the processor 102 of the PLC 100 executing object code corresponding to the pendulum motion compensation parameter calculation module 170. Note that, in the case where the development support device 200 provides a simulation environment, the steps may also be realized by the processor 202 of the development support device 200 executing object code corresponding to the pendulum motion compensation parameter calculation module 170.
[0120] 11, when the pendulum motion compensation parameter calculation module 170 is called (YES in step S100), the PLC 100 acquires the current dancer angle θ (step S102). Then, the PLC 100 references the external force correction table 172 to calculate the tension change rate 176 corresponding to the current dancer angle θ (step S104), and multiplies the tension target value 173 by the calculated tension change rate 176 to calculate the corrected tension target value 177 (step S106).
[0121] The PLC 100 refers to the machine parameters 171 to calculate the total inertia I (step S108), and sets the calculated total inertia I as the value of the total inertia 198 (step S110).
[0122] The PLC 100 refers to the machine parameters 171, calculates the torque G(θ) due to gravity from the current dancer angle θ (step S112), and sets the calculated torque G(θ) due to gravity as the value of the gravity compensation torque 192 (step S114).
[0123] The PLC 100 acquires the current angular velocity ω of the servo motor 22 (step S116), and calculates the torque Csgn(ω) due to Coulomb friction from the current angular velocity ω of the servo motor 22 by referring to the machine parameters 171 (step S118). Then, the PLC 100 sets the calculated torque Csgn(ω) as the value of the Coulomb friction compensation torque 194 (step S120).
[0124] The PLC 100 refers to the machine parameters 171, calculates the torque Dω due to viscous friction from the current angular velocity ω of the servo motor 22 (step S122), and sets the calculated torque Dω due to viscous friction as the value of the viscous friction compensation torque 196 (step S124).
[0125] The PLC 100 calculates the torque FL1 / cosθ corresponding to the external force from the corrected tension target value 177, the machine parameters 171, and the current dancer angle θ (step S126), and sets the calculated torque FL1 / cosθ corresponding to the external force as the value of the torque-converted tension target value 199 (step S128).
[0126] Finally, the PLC 100 outputs the gravity compensation torque 192, the Coulomb friction compensation torque 194, the viscous friction compensation torque 196, the total inertia 198, and the torque-converted tension target value 199 (step S130). Then, the process returns to the caller.
[0127] (e3: linear motion compensation parameter calculation module 180) Next, the processing contents of the linear motion compensation parameter calculation module 180 will be described.
[0128] The linear motion compensation parameter calculation module 180 periodically calculates the compensation parameters 190 as the dancer rollers 52 move linearly.
[0129] FIG. 12 is a diagram for explaining the calculation process of the compensation parameter 190 in the linear operation compensation parameter calculation module 180 of the control system 1 according to this embodiment.
[0130] 12, the linear motion type dancer mechanism includes dancer rollers 52 that move along a linear motion direction. Here, the angle that the linear motion direction makes with respect to a plane horizontal to the ground is also referred to as the motion angle φ [rad].
[0131] Since the dancer rollers 52 have mass, when the servo motor 22 linearly moves the dancer rollers 52 with torque τ, the following equation of motion (4) holds for the velocity v:
[0132]
number
[0133] Moreover, the total inertia I in equation (4) can be calculated according to the following equation (5).
[0134]
number
[0135] Furthermore, the torque G due to gravity in equation (4) can be calculated according to the following equation (6).
[0136]
number
[0137] In other words, the torque τ generated by the servo motor 22 can be considered to be the sum of (1) torque due to inertia, (2) torque due to gravity, (3) torque due to Coulomb friction, (4) torque due to viscous friction, and (5) torque corresponding to an external force (specified load).
[0138] The pendulum motion type compensation parameter calculation module 170 periodically calculates (2) the torque due to gravity (gravity compensation torque 192), (3) the torque due to Coulomb friction (Coulomb friction compensation torque 194), and (4) the torque due to viscous friction (viscous friction compensation torque 196), and outputs them to the torque control module 160 as compensation parameters 190.
[0139] On the other hand, (1) the torque due to inertia is calculated by the external force estimation module 154 of the torque control module 160. Therefore, the pendulum motion type compensation parameter calculation module 170 outputs the value of the total inertia I required to calculate (1) the torque due to inertia to the torque control module 160 as the total inertia 198.
[0140] Furthermore, (5) the torque corresponding to the external force (specified load) is output to the torque control module 160 as a torque-converted tension target value 199. In this way, the linear motion compensation parameter calculation module 180 is configured to calculate the torque (torque-converted tension target value 199) required to generate the tension target value 173 according to a calculation formula appropriate for the target dancer mechanism.
[0141] Fig. 13 is a flowchart showing the processing procedure in the linear motion compensation parameter calculation module 180 of the control system 1 according to this embodiment. Each step shown in Fig. 13 is realized by the processor 102 of the PLC 100 executing object code corresponding to the linear motion compensation parameter calculation module 180. Note that, in the case where the development support device 200 provides a simulation environment, the steps may also be realized by the processor 202 of the development support device 200 executing object code corresponding to the linear motion compensation parameter calculation module 180.
[0142] Referring to FIG. 13, when the linear operation compensation parameter calculation module 180 is called (YES in step S200), the PLC 100 calculates the total inertia I by referring to the machine parameters 171 (step S202), and sets the calculated total inertia I as the value of the total inertia 198 (step S204).
[0143] The PLC 100 refers to the machine parameters 171 to calculate the torque G due to gravity (step S206), and sets the calculated torque G due to gravity as the value of the gravity compensation torque 192 (step S208).
[0144] The PLC 100 acquires the current speed v of the dancer rollers 52 (step S210), and calculates the torque Csgn(v) due to Coulomb friction from the current speed v of the dancer rollers 52 by referring to the machine parameters 171 (step S212). Then, the PLC 100 sets the calculated torque Csgn(v) as the value of the Coulomb friction compensation torque 194 (step S214).
[0145] The PLC 100 refers to the machine parameters 171, calculates the torque Dv due to viscous friction from the current speed v of the dancer roller 52 (step S216), and sets the calculated torque Dv due to viscous friction as the value of the viscous friction compensation torque 196 (step S218).
[0146] The PLC 100 calculates the torque ηRLF / 2π corresponding to the external force from the tension target value 173 and the machine parameters 171 (step S220), and sets the calculated torque ηRLF / 2π corresponding to the external force as the value of the tension target value 199 converted into torque (step S222).
[0147] Finally, the PLC 100 outputs the gravity compensation torque 192, the Coulomb friction compensation torque 194, the viscous friction compensation torque 196, the total inertia 198, and the torque-converted tension target value 199 (step S224). Then, the process returns to the caller.
[0148] (e4: Dancer control module 150) Next, the processing contents of dancer control module 150 will be described.
[0149] Figure 14 is a flowchart showing the processing procedure in dancer control module 150 of control system 1 according to this embodiment. Each step shown in Figure 14 is realized by processor 102 of PLC 100 executing object code corresponding to dancer control module 150. Note that, in cases where development support device 200 provides a simulation environment, the steps may also be realized by processor 202 of development support device 200 executing object code corresponding to dancer control module 150.
[0150] Referring to FIG. 14, when dancer control module 150 is called (YES in step S300), PLC 100 acquires gravity compensation torque 192, Coulomb friction compensation torque 194, viscous friction compensation torque 196, total inertia 198, and torque-converted tension target value 199 (step S302).
[0151] The PLC 100 acquires the current angular velocity ω of the servo motor 22 (step S304), and calculates the external force estimated value 159 from the current angular velocity ω of the servo motor 22, the total inertia 198, and the previous tension command value 156 (step S306). More specifically, the PLC 100 calculates the torque due to the inertia of the dancer mechanism from the total inertia 198 and the current angular velocity ω of the servo motor 22, and calculates the external force estimated value 159 from the difference between the calculated torque due to inertia and the previous tension command value 156.
[0152] The PLC 100 calculates the difference between the torque-converted tension target value 199 and the calculated external force estimated value 159 (step S308), and calculates the tension command value 156 from the difference calculated by PI calculation (step S310). The PLC 100 adds the gravity compensation torque 192, the Coulomb friction compensation torque 194, and the viscous friction compensation torque 196 to the calculated tension command value 156 to calculate the compensated tension command value 157 (step S312).
[0153] The PLC 100 calculates the torque command value 158 from the calculated compensated tension command value 157 (step S314). Then, the process returns to the caller.
[0154] Note that the calculated torque command value 158 is used to calculate the control command value for the servo driver 20 by executing the object code corresponding to the torque control module 160.
[0155] <F. Implementation Example> Next, an implementation example of the above-described program module will be described. For example, it can be implemented as a function and a function block according to IEC61131-3. More specifically, the compensation parameter calculation module (the pendulum motion type compensation parameter calculation module 170 and the linear motion type compensation parameter calculation module 180) may be implemented as a function.
[0156] FIG. 15 is a diagram showing a function 270 as an implementation example of the pendulum motion type compensation parameter calculation module 170 of the control system 1 according to the present embodiment. Referring to FIG. 15, the function 270 can be set with an axis variable 271, a machine parameter variable 272, an external force correction table variable 273, and a compensation parameter variable 274 as input / output variables, and a tension target value variable 275 as an input variable.
[0157] The axis variable 271 stores an identification value for specifying the target servo driver 20 and servo motor 22.
[0158] The machine parameter variable 272 may be defined as a structure variable, for example. The machine parameter variable 272 may store the inertia of the dancer roller, the dancer arm parameter, the counterbalance parameter, the Coulomb friction, the Coulomb friction speed, and the viscous friction coefficient.
[0159] Here, the dancer arm parameters may store a dancer arm length, a dancer arm mass, a dancer roller rotation radius, and a dancer roller mass, while the counter balancer parameters may store a counter balancer arm length, a counter balancer arm mass, a counter balancer rotation radius, and a counter balancer mass.
[0160] The external force correction table variable 273 may be defined as, for example, a structure variable. The external force correction table variable 273 may store a data set of the dancer angle θ [rad] and the tension change rate (0 to 100 [%]).
[0161] The compensation parameter variable 274 may be defined as, for example, a structure variable. The compensation parameter variable 274 may store a gravity compensation torque 192, a Coulomb friction compensation torque 194, a viscous friction compensation torque 196, a total inertia 198, and a torque-converted tension target value 199.
[0162] The tension target value variable 275 stores the tension target value. 16 is a diagram showing a function 280 as an implementation example of the linear operation compensation parameter calculation module 180 of the control system 1 according to this embodiment. Referring to Fig. 16, an axis variable 281, a machine parameter variable 282, and a compensation parameter variable 283 can be set as input / output variables in the function 280, and a tension target value variable 284 can be set as an input variable.
[0163] The axis variable 281 stores an identification value for identifying the target servo driver 20 and servo motor 22.
[0164] The machine parameter variable 282 may be defined as, for example, a structure variable, and may store the inertia of the dancer shaft, the movement amount per rotation, the load mass, the counter balancer mass, the efficiency, the reduction ratio, the operating angle, the Coulomb friction, the Coulomb friction velocity, and the viscous friction coefficient.
[0165] The compensation parameter variable 283 may be defined as a structure variable, for example. The compensation parameter variable 283 may store the gravity compensation torque 192, the Coulomb friction compensation torque 194, the viscous friction compensation torque 196, the total inertia 198, and the tension target value 199 in torque conversion.
[0166] The tension target value variable 284 stores the tension target value. FIG. 17 is a diagram showing a function block 250 as an implementation example of the dancer control module 150 of the control system 1 according to the present embodiment. Referring to FIG. 17, the function block 250 can be set with an axis variable 251, a compensation parameter variable 252, and a control parameter variable 253 as input variables, and a torque variable 254 as an output variable.
[0167] The axis variable 251 stores an identification value for identifying the target servo driver 20 and servo motor 22.
[0168] The compensation parameter variable 252 may be defined as a structure variable, for example. The compensation parameter variable 283 may store the gravity compensation torque 192, the Coulomb friction compensation torque 194, the viscous friction compensation torque 196, the total inertia 198, and the tension target value 199 in torque conversion.
[0169] The control parameter variable 253 may be defined as a structure variable, for example. The control parameter variable 253 may store the rated torque, the torque limit value, the filter frequency, and the feedback gain.
[0170] The torque variable 254 stores the torque command value 158. <G. Supplementary Note> The present embodiment as described above includes the following technical ideas.
[0171] [Configuration 1] a control device (100) for controlling dancer mechanisms (50A, 50B, 50C, 50D, 50E) that adjust the torque applied to dancer rollers (52, 52A, 52B, 52C, 52D) by driving a motor (22), thereby adjusting the tension generated in a workpiece (30) that is conveyed in contact with the dancer rollers, a calculation module (170, 180) configured depending on the dancer mechanism; a common control module (150, 160) independent of the dancer mechanism; the calculation module is configured to calculate compensation parameters (190) based on information about the operation of the motor; the compensation parameters include a torque that the motor must additionally generate due to a force acting on a mechanical element driven by the motor; The control module a first module (154) that estimates a torque component used to change the tension applied to the workpiece based on information about the operation of the motor; a second module (152) that calculates a tension command value (156) based on the estimated torque component; a third module (155) that calculates a torque command value for the motor from a result of adding each torque included in the compensation parameters to the calculated tension command value.
[0172] [Configuration 2] the calculation module is one of a plurality of calculation modules each configured for a different dancer mechanism, 10. The control device of claim 1, wherein the plurality of calculation modules includes a first calculation module (170) configured for a pendulum-type dancer mechanism and a second calculation module (180) configured for a linear-type dancer mechanism.
[0173] [Configuration 3] The control device according to configuration 2, wherein each of the first calculation module and the second calculation module is implemented as a function (270, 280).
[0174] [Configuration 4] The calculation module is configured to calculate a torque (199) required to generate a tension of the tension target value; The control device according to any one of configurations 1 to 3, wherein the second module of the control module calculates the tension command value based on a torque required to generate the tension target value and the estimated torque component.
[0175] [Configuration 5] The control device according to configuration 4, wherein the calculation module configured for the pendulum-action dancer mechanism (50A) is configured to correct the target tension value based on the current angle of the dancer rollers, by referring to the correspondence relationship (172) between the angle of the dancer rollers and the tension change rate.
[0176] [Configuration 6] 6. The control device of claim 4 or 5, wherein the calculation module is configured to calculate the torque required to generate the target tension value according to a calculation formula appropriate for the target dancer mechanism.
[0177] [Configuration 7] The control device according to any one of configurations 1 to 6, wherein the first module of the control module is configured to calculate a torque corresponding to the inertia of a mechanism element driven by the motor based on a total inertia (198) of the dancer mechanism and an angular velocity of the motor.
[0178] [Configuration 8] 8. The control device according to claim 7, wherein the calculation module is configured to calculate a total inertia of the dancer mechanism from mechanical parameters (171, 181) indicative of mechanical characteristics of the dancer mechanism.
[0179] [Configuration 9] A development support device (200) that provides an environment for developing a user program (114) to be executed by a control device (100), a plurality of calculation modules (170, 180) configured depending on dancer mechanisms (50A, 50B, 50C, 50D, 50E) that adjust the torque applied to the dancer rollers (52, 52A, 52B, 52C, 52D) by driving the motor (22), thereby adjusting the tension generated in the workpiece (30) that is being conveyed in contact with the dancer rollers; a common control module (150, 160) independent of the dancer mechanism; the calculation module is configured to calculate compensation parameters (190) based on information about the operation of the motor; the compensation parameters include a torque that the motor must additionally generate due to a force acting on a mechanical element driven by the motor; The control module a first module (154) that estimates a torque component used to change the tension applied to the workpiece based on information about the operation of the motor; a second module (152) that calculates a tension command value (156) based on the estimated torque component; a third module (155) that calculates a torque command value for the motor from the result of adding each torque included in the compensation parameters to the calculated tension command value.
[0180] [Configuration 10] A development support program (214) for realizing a development support device (200) that provides an environment for developing a user program (114) to be executed by a control device (100), The development assistance program a plurality of calculation modules (170, 180) configured depending on dancer mechanisms (50A, 50B, 50C, 50D, 50E) that adjust the torque applied to the dancer rollers (52, 52A, 52B, 52C, 52D) by driving the motor (22), thereby adjusting the tension generated in the workpiece (30) that is being conveyed in contact with the dancer rollers; a common control module (150, 160) independent of the dancer mechanism; The calculation module is configured to calculate a compensation parameter (190) based on information regarding driving of the motor. The compensation parameter includes torque that the motor must additionally generate due to the force generated in the mechanical element driven by the motor. The control module includes a first module (154) that estimates a torque component used to change the tension generated in the workpiece based on information regarding driving of the motor, a second module (152) that calculates a tension command value (156) based on the estimated torque component, and a third module (155) that calculates a torque command value for the motor from the result of adding each torque included in the compensation parameter to the calculated tension command value.
[0181] <H. Advantages> In the control system 1 according to the present embodiment, the processing that changes depending on the dancer mechanism is assigned to the compensation parameter calculation module (the pendulum motion type compensation parameter calculation module 170 and / or the linear motion type compensation parameter calculation module 180), and the common processing that does not depend on the dancer mechanism is assigned to the dancer control module 150 and the torque control module 160, so that the control for the dancer mechanism can be realized more generally. In addition, it becomes easier to cope with various dancer mechanisms.
[0182] It should be considered that the embodiments disclosed this time are illustrative in all respects and not restrictive. The scope of the present invention is shown not by the above description but by the claims, and it is intended that all modifications within the meaning and scope equivalent to the claims are included.
Explanation of Reference Numerals
[0183] 1 Control system, 10 Field network, 12 Remote I / O device, 14 Field device, 16 Upper network, 20 Servo driver, 22 Servo motor, 30 Work, 50, 50A, 50B, 50C, 50D, 50E Dancer mechanism, 52, 52A, 52B, 52C, 52D Dancer roller, 54 Counter balancer, 56, 56A, 56B Dancer arm, 58 Guide roller, 60, 60A Base, 62 Connecting member, 100 PLC, 102, 202 Processor, 104, 204 Main memory, 106 Upper network controller, 108 Field network controller, 110, 210 Storage, 112 System program, 114 User program, 116 Local bus controller, 118 Processor bus, 120 Memory card interface, 122 Memory card, 124, 224 USB controller, 126 local bus, 130 functional unit, 140 control parameters, 150 dancer control module, 151 subtractor, 152 control module, 153 adder, 154 external force estimation module, 155 torque command value calculation module, 156 tension command value, 157 compensated tension command value, 158 torque command value, 159 external force estimation value, 160 torque control module, 170 pendulum motion type compensation parameter calculation module, 171 machine parameters, 172 external force correction table, 173, 183 tension target value, 174, 184 axis information, 175 change rate calculation module, 176 tension change rate, 177 compensated tension target value, 178 multiplier, 180 linear motion type compensation parameter calculation module, 190 compensation parameters, 192 gravity compensation torque, 194 Coulomb friction compensation torque, 196 Viscous friction compensation torque, 198 Total inertia, 199 Torque converted tension target value, 200 Development support device, 206 Optical drive, 207 Recording medium, 208 Bus, 212 OS, 214 Development support program, 220 Network controller, 226 Input section, 228 Display section, 250 Function block, 251, 271, 281 Axis variable, 252, 274, 283 Compensation parameter variable, 253 Control parameter variable, 254 Torque variable, 270, 280 Function, 272,282 Machine parameter variables, 273 External force correction table variables, 275, 284 Tension target value variables, 300 HMI, 400 Server device.
Claims
1. a control device for controlling a dancer mechanism that adjusts the torque applied to the dancer rollers by driving a motor, thereby adjusting the tension generated in a workpiece that is in contact with the dancer rollers and is being transported, a calculation module configured depending on the dancer mechanism; a common control module independent of the dancer mechanism, the calculation module is configured to calculate a compensation parameter based on information relating to the drive of the motor, the compensation parameter including an additional torque that the motor must generate due to a force generated in a mechanism element driven by the motor; The control module a first module that estimates a torque component used to change the tension applied to the workpiece based on information about the drive of the motor; a second module that calculates a tension command value based on the estimated torque component; a third module that calculates a torque command value for the motor from a result of adding each torque included in the compensation parameters to the calculated tension command value, the calculation module is one of a plurality of calculation modules each configured for a different dancer mechanism, the plurality of calculation modules include a first calculation module configured for a pendulum motion type dancer mechanism and a second calculation module configured for a linear motion type dancer mechanism; The control device, wherein the first calculation module and the second calculation module output the compensation parameters respectively for different input parameters.
2. The control device according to claim 1 , wherein each of the first calculation module and the second calculation module is implemented as a function.
3. the calculation module is configured to calculate a torque required to generate a tension of a tension target value; The control device according to claim 1 or 2, wherein the second module of the control module calculates the tension command value based on a torque required to generate the target tension value and the estimated torque component.
4. 4. The control device according to claim 3, wherein the calculation module configured for a pendulum-motion type dancer mechanism is configured to correct the target tension value based on a current angle of the dancer rollers, by referring to a correspondence relationship between the angle of the dancer rollers and a tension change rate.
5. The control device according to claim 3 or 4, wherein the calculation module is configured to calculate the torque required to generate the target tension value according to a calculation formula that corresponds to a target dancer mechanism.
6. 6. The control device according to claim 1, wherein the first module of the control module is configured to calculate a torque corresponding to an inertia of a mechanism element driven by the motor, based on a total inertia of the dancer mechanism and an angular velocity of the motor.
7. The control device according to claim 6 , wherein the calculation module is configured to calculate a total inertia of the dancer mechanism from a mechanical parameter indicative of a mechanical characteristic of the dancer mechanism.
8. A development support device that provides an environment for developing a user program to be executed on a control device, a plurality of calculation modules configured depending on a dancer mechanism that adjusts the torque applied to the dancer rollers by driving a motor, thereby adjusting the tension generated in the workpiece being conveyed in contact with the dancer rollers; a common control module independent of the dancer mechanism, the calculation module is configured to calculate compensation parameters based on information about the driving of the motor, the compensation parameters including a torque that the motor must additionally generate due to a force generated in a mechanism element driven by the motor; The control module a first module that estimates a torque component used to change the tension applied to the workpiece based on information about the drive of the motor; a second module that calculates a tension command value based on the estimated torque component; a third module that calculates a torque command value for the motor from a result of adding each torque included in the compensation parameters to the calculated tension command value, the calculation module is one of a plurality of calculation modules each configured for a different dancer mechanism, the plurality of calculation modules include a first calculation module configured for a pendulum motion type dancer mechanism and a second calculation module configured for a linear motion type dancer mechanism; The development support device, wherein the first calculation module and the second calculation module output the compensation parameters for different input parameters.
9. A development support program for realizing a development support device that provides an environment for developing a user program to be executed by a control device, The development assistance program a plurality of calculation modules configured depending on a dancer mechanism that adjusts the torque applied to the dancer rollers by driving a motor, thereby adjusting the tension generated in the workpiece being conveyed in contact with the dancer rollers; a common control module independent of the dancer mechanism, the calculation module is configured to calculate a compensation parameter based on information relating to the drive of the motor, the compensation parameter including an additional torque that the motor must generate due to a force generated in a mechanism element driven by the motor; The control module a first module that estimates a torque component used to change the tension applied to the workpiece based on information about the drive of the motor; a second module that calculates a tension command value based on the estimated torque component; a third module that calculates a torque command value for the motor from a result of adding each torque included in the compensation parameters to the calculated tension command value, the calculation module is one of a plurality of calculation modules each configured for a different dancer mechanism, the plurality of calculation modules include a first calculation module configured for a pendulum motion type dancer mechanism and a second calculation module configured for a linear motion type dancer mechanism; the first calculation module and the second calculation module output the compensation parameters for different input parameters, respectively.
Citation Information
Patent Citations
Method for operating a web processing machine with flying roll change
DE102013224324A1
Tension control device
JP1993043099A
Tension controller for reversible rolling mill
JP1998034204A
Strip winding device and method
JP1998310297A
Method and device for controlling speed in continuous treatment line
JP2008155249A