WO2015041028A1 - 制御コントローラ及びそのプログラミング方法 - Google Patents
制御コントローラ及びそのプログラミング方法 Download PDFInfo
- Publication number
- WO2015041028A1 WO2015041028A1 PCT/JP2014/072866 JP2014072866W WO2015041028A1 WO 2015041028 A1 WO2015041028 A1 WO 2015041028A1 JP 2014072866 W JP2014072866 W JP 2014072866W WO 2015041028 A1 WO2015041028 A1 WO 2015041028A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- loop
- instruction
- operand
- control
- sequence
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
Definitions
- the present invention relates to a controller and programming method for performing sequence control and loop control.
- Automatic control of water and sewage plants includes sequence control mainly based on bit data operations such as start and stop of pumps and water treatment devices, opening and closing of valves and gates, display and operation on monitoring operation devices, and PID control of flow rate and water quality It consists of loop control mainly based on numerical data operation. The majority of automatic control of water and sewage plants is sequence control.
- sequence control soft sequence control
- hard sequence control by relay circuit
- One loop control includes signal input processing from a plant, control arithmetic processing of a process to be controlled, and output processing to a plant.
- the operation life of the water and sewage plant is more than 50 years, but the product life of the measurement and control device is as short as about 10 years, and may be reduced to several years or less due to the effects of corrosive gas and moisture.
- the measurement control device is updated to the latest product many times.
- the specification of the instrumentation control device changes with each update, and in particular, the analog signal specification, the A / D conversion specification, and the D / A conversion specification are various, and there is a reality that they are not unified even within the same plant. This is due to the difference in information communication technology, applicable standards, parts life, plant operation method, renewal budget, etc. in the renewal age. Therefore, the input processing and output processing of loop control are required to cope with various signal specifications.
- a controller that executes loop control is provided with functions required for input processing, control arithmetic processing, and output processing as subprograms, and a configuration capable of constructing a loop control main program by combining the subprograms is required. Also, it is essential to mount an arithmetic processor that can execute the loop control main program at high speed.
- sequence control is described by sequence instruction of ladder program
- loop control can be described by loop instruction
- loop instruction of ladder program is input.
- a configuration capable of selecting and executing a function based on parameters described in a ladder program is required as a multi-function instruction having a function group of processing, control arithmetic processing, and output processing.
- a sequence processor and an arithmetic processor are mounted, sequence instructions are executed by the sequence processor, and a configuration capable of executing loop instructions by the arithmetic processor is required.
- an instruction described in a ladder program is fetched by a sequence processing processor, executed by the sequence processing processor in the case of a sequence instruction, and firstly by the process control processor in a process control instruction.
- Data can be read from the address of the data memory defined in, and then the instruction can be executed.
- an instruction and an operand constituting a ladder program are stored in a program memory, and the instruction is described as capable of referring to data stored in an address of a data memory indicated by the operand.
- a multi-function loop instruction for loop control is defined for the instruction of the ladder program, and the parameter storage destination is for the operand.
- the data memory address As described above, in order to realize loop control with a multi-function instruction, it is necessary to place a parameter at the data memory address indicated by the operand. Therefore, while sequence control can be completed only by instructions and operands of the ladder program, loop control requires parameters defined in the data memory in addition to the instructions and operands of the ladder program.
- the present invention has been made in view of the circumstances of the prior art as described above, and provides a controller that describes and executes a series of loop control composed of input processing, control arithmetic processing, and output processing with a ladder program. Do.
- the controller includes a sequence processor, an arithmetic processor, and a memory
- the memory includes a ladder program and a loop control program
- the ladder program is configured by a combination of an instruction and an operand
- the sequence processor sequentially reads the ladder program, and if the ladder program instruction is a sequence instruction, the sequence processor executes the sequence instruction, and if the ladder program instruction is a loop instruction, the arithmetic processor executes the loop control program
- the loop instruction comprises at least an operand for a loop instruction that can define input processing, control operation processing and output processing.
- An aspect of a programming apparatus for displaying a ladder program of a controller as a ladder diagram, which has a corresponding relationship with a controller, includes an operand area for loop instruction for defining and displaying an operand for a loop instruction on a ladder diagram; If the program instruction is a loop instruction, the operand is defined and displayed in the loop instruction operand area.
- a series of loop control of input processing, control calculation processing and output processing can be constructed only by the loop instruction and the operand described in the ladder program, so an engineer having knowledge of the ladder program can perform sequence control and loop control. There is an effect that it is possible to easily construct a mixed control system.
- FIG. 1 is a diagram showing the configuration of a controller.
- the plant 20 is described as a water purification plant.
- a water purification plant is a plant that takes raw water from dams and rivers and produces tap water by chemical precipitation, sand filtration, and chlorine injection.
- the plant 20 has operation contacts for operating start / stop of pumps and motors of each facility, opening and closing of valves and gates, switching of transformers and capacitors, opening and closing of circuit breakers, etc., operation, stop, fully open, etc. It has a state contact for outputting a state such as full closing, on / off, normality or failure.
- the senor measures the flow rate, water level, water pressure, valve opening degree, water quality, etc., and sends an analog signal such as 1 to 5 V, 0 to 5 V, 4 to 20 mA, and the valve opening according to the external analog signal. It has an actuator that controls the number of rotations, the amount of chemical injection, and so on.
- the controller 10 inputs state contacts and an analog signal of the plant 20, executes sequence control and loop control described in a ladder program, and outputs the operation contact and the analog signal to the plant 20, thereby automatically making the plant 20 automatic.
- the sequence control is, for example, process control of start and stop of the pump, process control of water flow and washing of the filtration basin, opening and closing control of the sedimentation basin sludge valve, and control of the number of pumps and condensers.
- loop control for example, valve opening control based on flow measurement data and pump rotational speed control, drug injection amount control based on water quality measurement data, drug injection pump stroke control, valve opening based on water level measurement data Control and flow control.
- the programming device 11 is configured using, for example, a personal computer.
- the programming device 11 has a ladder program development environment capable of displaying and editing ladder programs in a ladder diagram format, produces a ladder program for executing sequence control and loop control of the plant 20, and registers the ladder program in the control controller 10.
- a loop control program development environment in a programming language such as C language is provided, a loop control program corresponding to an execution module of a loop instruction of a ladder program is created, and the loop control program is registered in the controller 10.
- the controller 10 includes a sequence processor 1, an arithmetic processor 2, a memory 3, a plant input / output 4, and a communication interface 9 and is mutually connected by a system bus 7.
- the memory 3 is a RAM (Random Access Memory) or the like, and a ladder program 4, a register 5, and a loop control program 6 are arranged.
- the sequence processor 1 is a processor dedicated to sequence control, and executes relatively simple operations such as bit logical operations and data arithmetic operations at high speed.
- the sequence processor 1 executes the sequence instruction and the loop instruction described in the ladder program 4.
- the sequence processor 1 executes arithmetic processing.
- a loop instruction is detected in the ladder program 4
- information on the loop instruction is sent to the arithmetic processor 2, and the execution right is transferred to the arithmetic processor 2, and the loop control program 6 which is an execution module of the loop instruction is executed.
- the arithmetic processor 2 is an arithmetic processor for executing complex numerical operations, and executes the loop control program 6 when acquiring information on a loop instruction and an execution right from the sequence processor 1.
- Register 5 is an area that stores bit data, word data, and longword data used by sequence instructions and loop instructions.
- the input register is “X ***”
- the output register is “Y ***”
- An address is allocated to each register for each application, such as "R ***” or "L ***”.
- data such as analog signals and status contacts from the plant 20 are stored in the input register “X” after being A / D converted at the plant input / output 8.
- Word data such as measurement data is stored in input registers XW000 to XWFFF, and bit data such as status contacts is stored in input registers X000 to XFFF.
- the data stored in the output register “Y” is output to the plant 20 via the plant input / output 8.
- the output registers YW000 to YWFFF are used to output word data, and the output registers Y000 to YFFF are used to output bit data.
- RW000 to RWFFF for word data and R000 to RFFF for bit data are allocated as calculation registers for sequence instructions.
- LW000 to LWFFF for word data and L000 to LFFF for bit data are allocated as calculation registers for loop instructions.
- the sequence instruction can access all the registers as the operation target, and the loop instruction can access the operation register as the operation target.
- the plant input / output 8 A / D converts an electric signal such as a status contact or an analog signal output from the plant 20 and stores it as bit data or word data in the input register “X” of the register 5 via the bus 7.
- an analog signal such as 1 to 5 V is A / D converted and stored as word data in the input registers XW000 to XWFFF.
- a non-voltage contact, a high-voltage contact, etc. are taken in and stored as bit data in the input registers X000 to XFFF.
- bit data and word data of an output register of the register 5 are D / A converted, and output to the plant 20 as operation contacts and analog signals.
- the word data of YW000 to YWFFF is D / A converted to an analog signal such as 1-5 V and output to an actuator installed in a plant.
- the bit data of the bit data areas Y000 to YFFF is converted into an electric signal and output to the operation contact provided in the runt 20.
- the quantization specifications of the A / D conversion and D / A conversion of the plant input / output 8 include, for example, types such as 8 bits, 12 bits, and 14 bits. The higher the quantization bit value, the higher the technical level is required, and the manufacturing cost is also high.
- the quantization specification of the plant input / output 8 varies depending on the introduction timing of each device, and this is the information communication technology level, applicable standard, reliability, plant operation policy, introduction budget, etc. during the operation period of the plant 20 This is because the environment changes significantly.
- the ladder program 4 has a configuration in which a plurality of steps consisting of an instruction and an operand are described. Instructions are roughly divided into sequence instructions and loop instructions. Sequence instructions are combined with operands to describe sequence control.
- One sequence instruction is a single-function instruction having one operation function, and, for example, an instruction exists for each operation such as bit logic operation, data arithmetic operation, data transfer, and the like.
- the operation target of the sequence instruction is the data of the register 5 defined by the operand.
- a loop instruction is combined with an operand to describe loop control.
- One loop instruction is a multi-function instruction having functions such as input processing, control arithmetic processing, and output processing necessary for one loop control. Each function is determined by the parameters defined in the operands.
- the scale of the measurement data fluctuates depending on the combination of the analog signal specification and the A / D conversion quantization specification of the plant input / output 8. Therefore, it has a function of acquiring a combination of analog signal specification and quantization specification using an operand as a parameter, and converting the scale of measurement data into a scale called a normal value that can be used in control calculation processing.
- the control calculation processing has functions such as, for example, an interference type PID, a non-interference type PID, and a ratio calculation, and designates a function to be executed from among these functions by the parameter defined in the operand.
- the loop instruction accesses the operation data area allocated to the register 5.
- the output processing functions include data conversion functions such as linear conversion, inverse linear conversion, square root extraction, power factor conversion, integration processing, first-order delay processing, and BCD conversion for operation data output from control arithmetic processing. . Specify the function to be executed from among these functions by the parameter defined in the operand.
- the operation data from the control operation processing is converted from the normalized scale to a scale that conforms to the D / A conversion quantization specification of the plant input / output 8 and the analog signal specification to the plant 20 A function is specified, and the function to be executed from among these functions is specified by the parameter defined in the operand.
- the loop control program 6 is an execution module of a loop instruction described in the ladder program 4. When activated, the loop control program 6 acquires the operands described in the ladder program 4, executes a series of loop control arithmetic processing in the order of input processing, control arithmetic processing and output processing according to the operands, and stores the result in the register 5 End the process.
- the loop control program 6 is executed by the arithmetic processor 2.
- the communication interface 9 is an interface for transmitting and receiving data between the programming device 11 and the memory 3.
- a ladder program 4 for sequence control and loop control of the plant 20 is manufactured in a ladder diagram format using a ladder program development environment of the programming device 11 and stored in the memory 3 via the communication interface 9 and the bus 7.
- the programming device 11 can also read out the ladder program 4 via the communication interface 9 and the bus 7 to display and edit instructions and operands in the form of a ladder diagram.
- the capacity of the entire control of the plant 20 is, for example, several thousand to several hundreds of thousands steps in the number of steps of the ladder program, and several hundreds to several thousand loops in the number of loop control.
- a source program of a loop control program in a programming language such as C language is created and converted into a loop control program 6 of the execution module format. It is stored in the memory 3 via the bus 7.
- the controller 10 receives the signal of the plant 20 via the plant input / output 8 and stores the signal in the register 5.
- the sequence processor 1 executes the sequence instruction described in the ladder program 4 and stores the result in the register 5.
- the sequence processor 1 detects a loop instruction described in the ladder program 4
- the sequence processor 1 causes the operation processor 2 to execute the loop operation program 6 and stores the result in the register 5.
- the data stored in the register 5 is output to the plant 20 via the plant input / output 8.
- the controller 10 executes sequence control and loop control of the plant 20.
- FIG. 2 is a time chart showing an operation example of the sequence processor 1 and the arithmetic processor 2. The operation of the sequence processor 1 and the arithmetic processor 2 will be described with reference to FIG.
- the sequence processor 1 executes the ladder program 4 in control cycles of, for example, 50 ms, 100 ms, 200 ms, and the like.
- the sequence processor 1 When detecting the timing of the control cycle, the sequence processor 1 starts execution from the leading step of the ladder program 4 and executes the sequence instruction in order of step number. When a loop instruction is detected, the execution right is transferred to the arithmetic processor 2 and the sequence processor 1 enters an execution waiting state.
- the arithmetic processor 2 starts execution of the loop control program 6 when acquiring the execution right from the sequence processor 1, and returns execution right to the sequence processor 1 when the execution of the loop control arithmetic processing is finished, and the arithmetic processor 2 executes Be in a waiting state.
- the sequence processor 1 sequentially executes the steps of the ladder program 4 again when acquiring the execution right, and when execution is completed up to the final step, it waits for execution until the next control cycle.
- FIG. 3 is a diagram showing an example of steps constituting the ladder program 4.
- Step 40 is an example in which a sequence instruction is described by one instruction and one operand.
- the step 40 comprises a step number 400, a sequence instruction 401, and a first operand 402A.
- the step number 400 is a number given in series to each step, and the first step is numbered from "0".
- the sequence instruction 401 is a single function instruction, a contact start operation “LD”, b contact start operation “LDI”, coil output operation “OUT”, serial operation “a” of a contact “AND”, parallel operation of a contact “OR Bit operation instructions such as “” and word operation instructions such as data transfer operation “MOV” and data addition operation “ADD” are defined. Further, in the first operand 402A, for example, the address of the register 5 which is the operation target of the sequence instruction 401 such as "X000" is defined.
- the sequence processor 1 reads the sequence instruction 401 and the first operand 402A from the step 40, and executes the operation defined in the sequence instruction 401 with the data of the register 5 defined in the first operand 402A as the operation target.
- FIG. 4 is a view showing an example of steps constituting the ladder program 4.
- Step 41 is an example in which one loop control is described by one loop instruction and four operands.
- the step 41 comprises a step number 410, a loop instruction 410, a first operand 412A, a second operand 412B, a third operand 412C, and a fourth operand 412D.
- the step number 410, the loop instruction 411, the first operand 412A, the second operand 412B, the third operand 412C, and the fourth operand 412D each have a size of 1 word, and step 41 has a size of 6 words Be done.
- the step number 410 is a number assigned to each step in series, and the first step is numbered from “0”.
- the loop instruction 411 is a multi-function instruction, takes in the first operand 412A, the second operand 412B, the third operand 412C, and the fourth operand 412D as parameters, and executes input processing, control operation processing, and output processing according to the parameters.
- the loop instruction 411 uses the operation register “L” in the register 5 as an operation register when executing input processing, control operation processing, and output processing.
- the calculation register is an area for storing measurement data from the plant 20, operation data to be output to the plant 20, and the like.
- a loop number is defined in the first operand 412A.
- the loop number is a number assigned to each loop control, and is unique within one controller.
- the loop instruction uses the area of the operation register according to the loop number. For example, if all areas of the operation register are LW000 to LWFFF and 16 words are reserved for each loop number, LW000 to LW00F if the loop number is "1" and LW010 if the loop number is "2". Use LW01F.
- the relative 0th word LW000 of the head address determined by the loop number is an index
- the relative 1st word LW001 is measurement data from the plant 20
- the 2nd word LW002 is operation data which is a result of loop control calculation
- 3 words Target data and the like are stored in the eye LW002.
- an A / D conversion number is defined in order to select a function for converting measurement data input via the plant input / output 8 into a scale usable in control calculation processing.
- the A / D conversion number is a number determined by a combination of the analog signal specification of the plant 20 and the quantization specification of the plant input / output 8. For example, if an analog signal of 1 to 5 V is A / D converted to 8 bits, “1”, if converting an analog signal of 1 to 5 V to 12 bit data, “2”, an analog signal of 1 to 5 V When converting to 14-bit data, "3" is used. When converting an analog signal of 0 to 5 V into 8-bit data, "4" or the like is used.
- an input data conversion number is defined in order to select a data conversion function to measurement data.
- the input data conversion number is a number for each data conversion function. For example, linear conversion is “1”, inverse linear conversion is “2”, square rooting operation for calculating flow from differential pressure is “3”, primary The delay is “4", the power factor conversion is "5", etc.
- An operation processing number is defined in the third operand 412C.
- the operation processing number is, for example, “1” in the interference type PID control, “2” in the non-interference type PID control, “3” in the ratio operation, or the like.
- the fourth operand 412D defines parameters for selecting a function required for output processing. For example, in the upper byte of the fourth operand 412D, an output data conversion number is defined to select a data conversion function for operation data from control arithmetic processing, where the output data conversion number is a linear conversion of data. Or a number of a function to perform non-linear conversion, for example, “1” for linear conversion, “2” for inverse linear conversion, and so on.
- the function to convert the operation data from the normalized scale to a scale conforming to the D / A conversion quantization specification of the plant I / O 8 and the analog signal specification to the plant 20 Define D / A conversion numbers for selection.
- the D / A conversion number is a number for defining an analog signal specification and a quantization specification. For example, when converting 8-bit data to an analog signal of 1 to 5 V, “1”, 12-bit data "2" for converting to 1 to 5V analog signal, "3” for converting 14 bit data to 1 to 5V analog signal, "3” for converting 8 bit data to 0 to 5V analog signal 4).
- the sequence processor 1 When the sequence processor 1 detects a loop instruction, it acquires loop instruction information and outputs it to the processor 2, and then transfers the right of execution to the processor 2.
- the arithmetic processor 2 acquires the execution right and the loop instruction information, and activates the loop control program 6.
- the loop control program 6 first executes acquisition processing of the first operand 412A, second operand 412B, third operand 412C, and fourth operand 412D, and then executes input processing according to the parameters of the second operand 412B, Next, control arithmetic processing is performed according to the parameter of the third operand 412C, and then the arithmetic result is stored in the register 5 according to the parameter of the fourth operand 412D.
- FIG. 5 is a diagram showing a process flow of the sequence processor 1.
- the sequence processor 1 first determines in step S110 whether it is a ladder program execution start timing. For example, when the control cycle set in advance is reached, it is determined to be the start, and the process proceeds to step S111.
- step S111 the step counter is cleared to zero so that execution can be started from step number zero.
- step S112 an instruction is read out for the step of the step counter.
- step S113 it is determined whether the instruction is "END” indicating the end of the ladder program 4. If the instruction is not "END”, the process proceeds to step S114, and if "END", the process returns to start.
- step S114 it is determined whether the instruction is a sequence instruction or a loop instruction. If the instruction is a sequence instruction, the process proceeds to step S115. If the instruction is a loop instruction, the process proceeds to S117.
- step S115 the operand is read.
- step S116 the read instruction and operand are executed.
- step S117 loop instruction information is output to the arithmetic processor 2.
- the loop instruction information is, for example, the name of the loop instruction, the address of the loop instruction in the ladder program 4, and the address of the first operand in the ladder program 4.
- step S118 the execution right is transferred to the arithmetic processor 2.
- step S119 the process waits until the execution right is acquired from the arithmetic processor 2. When the execution right is acquired, the process proceeds to step S120.
- step S120 1 is added to the step counter, and the process returns to step S112.
- the sequence processor 1 executes the ladder program 4 from the top to the end by repeatedly executing the processing from step S112 to step S120.
- FIG. 6 is a diagram showing a processing flow of the arithmetic processor 2.
- the arithmetic processor 2 first determines in step S210 whether or not the execution right has been acquired from the sequence processor 1. If the execution right is acquired, it is determined that the execution right is present, and the process proceeds to step S211 to acquire the execution right. If not, it returns to the start with no execution right.
- step S212 loop instruction information from the sequence processor 1 is acquired.
- the loop instruction information is, for example, the name of the loop instruction, the address of the first operand, or the like.
- step S212 the start address of the loop control program 6 to be executed is determined from the name of the loop instruction.
- the loop control program 6 is executed with the address of the first operand from the loop instruction information as an argument.
- step S213 after the loop control program 6 has been executed to the end, the execution right is transferred to the sequence processor 1, and the process returns to the start.
- FIG. 7 is a diagram showing a processing flow of the loop control program 6.
- the processing flow of the loop control program 6 will be described with reference to FIG. 7 with reference to FIG.
- step S600 the address of the first operand is acquired from the arithmetic processor 2.
- step S601 the first operand 412A is read out to be a loop number.
- step S602 the second operand 412B is read, and the upper byte of 412B is taken as an A / D conversion number, and the lower byte is taken as an input data conversion number.
- step S603 the third operand 412C is read out and it is set as the operation processing number.
- step S604 the fourth operand 412D is read, and the upper byte of 412D is set as the output data conversion number, and the lower byte is set as the D / A conversion number.
- step S605 the calculation register is determined from the loop number acquired in step S601, and the measurement data stored in the relative first word is read out.
- the measurement data is, for example, data obtained by A / D converting an analog signal of the plant 20 at the plant input / output 8.
- the quantization specification of A / D conversion includes, for example, types such as 8 bits, 12 bits, and 14 bits, and the measurement data has scales of 0 to 511, 0 to 4095, 0 to 16383, respectively.
- step S606 the scale of the measurement data is converted (normalized) to a scale called a normal value.
- the normal value is, for example, integer type data having a scale of 0 to 10000. If the A / D conversion number is “2”, the quantization specification is determined to be 12 bits, and the measurement data is converted from 0 to 4095 into 0 to 10000. If the A / D conversion number is “1”, the quantization specification is determined to be 8 bits, and the measurement data is converted from 0 to 511 to 0 to 10000.
- step S607 the input conversion process is executed according to the input data conversion number, for the measurement data converted into the normal value. For example, if the input data conversion number is "1”, linear conversion, if "2”, inverse linear conversion, if "3”, square rooting operation to convert differential pressure to flow rate, if "4", first-order delay calculation etc. .
- step S608 the control arithmetic processing is executed according to the arithmetic processing number for the measurement data after the input conversion processing, and the processing result is output as operation data. For example, if the operation processing number is “1”, interference type PID control, if “2”, non-interference type PID control, “3”, ratio operation or the like.
- step S609 output conversion operation processing such as scale conversion is performed on the operation data according to the output data conversion number. For example, if the output data transformation number is “1”, it is a linear transformation, if it is “2”, it is an inverse linear transformation or the like.
- step S610 the scale of the normal value is converted to the scale corresponding to the D / A conversion number for the operation data. For example, if the D / A conversion number is “1”, it is 8 bits, if it is “2”, it is 12 bits, and if it is “3”, it is 14 bits.
- step S611 the operation data is stored in the relative second word from the top of the arithmetic register, and the process is ended.
- the normal value is a data type used in the loop control arithmetic processing and has been described as an integer type 0 to 10000 scale, but the data type may be a fixed point type, a floating point type or the like.
- FIG. 8 is a diagram showing an example of a loop control function of the plant 20. As shown in FIG. A processing configuration of loop control in which the flow rate flowing through the pipe is adjusted by the butterfly valve opening will be described with reference to FIG.
- Raw water 30 taken from the dam is sent to the sedimentation basin via the pipe 20A, the orifice 21, the pipe 20B, the butterfly valve 23, and the pipe 20C.
- the orifice 21 measures the differential pressure before and after the orifice in the pipe and sends it to the differential pressure gauge 22.
- the differential pressure gauge 22 converts the differential pressure measurement data into an analog signal of 1 to 5 V and outputs the analog signal to the controller 10.
- the opening degree setting unit 24 maintains the opening degree of the butterfly valve 23 in accordance with the opening degree set by the controller 10 with an analog signal of 0 to 5V.
- the controller 10 inputs differential pressure measurement data from the differential pressure gauge 22 through the 12-bit A / D conversion 81 mounted on the plant input / output 8, and stores the data as 12-bit data in the input register XW100. Further, the controller 10 acquires 12-bit differential pressure measurement data by the ladder program 4, executes non-interference type PID control, and stores the opening operation data as the execution result as 8-bit data in the output register YW100. Do. Then, the opening degree operation data is output to the opening degree setting unit 24 via the 8-bit D / A conversion 82 mounted on the plant input / output 8.
- Step 42 is composed of a step number 420, a sequence instruction 421, a first operand 422A, and a second operand 422B, and the data of the input register XW100 defined in the first operand 422A by "MOV" defined in the sequence instruction 421 Are transferred to the calculation register LW001.
- the operation register LW 001 corresponds to measurement data of the loop number “1”.
- Step 43 is a step number 430, a loop instruction 431, a first operand 432A, a second operand 432B, and a third operand 432C. , And the fourth operand 432D.
- the loop instruction 431 uses the first operand 432A as a loop number, the second operand 432B as a parameter of input processing, the third operand 432C as a parameter of control arithmetic processing, and the fourth operand 432D as a parameter of output processing. Perform an operation
- loop control arithmetic processing of the loop instruction 431 will be described in the order of execution.
- the loop number is set to "1" by defining the first operand 432A as "0001".
- the loop control arithmetic processing uses the operation registers LW000 to LW00F for the loop number "1".
- the measurement data is read from the first LW 001 of the relative word from the head of the calculation register, and used as differential pressure measurement data.
- the A / D conversion number is set to "2". Since the A / D conversion number "2" corresponds to the function of normalizing 12-bit data, processing for converting differential pressure measurement data stored in the calculation register LW001 from 12-bit data to a normal value Run.
- the input data conversion number is set to "3" by defining the lower byte of the second operand 432B as "03". Since the input data conversion number "3" corresponds to the square rooting operation function, the square rooting operation is applied to the normalized differential pressure measurement data to execute processing to convert it into flow rate measurement data.
- the operation control number is set to "2".
- the operation control number "2" corresponds to the non-interference type PID control function, performs non-interference type PID control on the flow rate measurement data, and outputs the opening degree operation data.
- the output data conversion number is set to "1" by defining the upper byte of the fourth operand 432D as "01".
- the output data conversion number “1” corresponds to the linear conversion function, and executes a process of linear conversion of the opening degree operation data.
- the D / A conversion number is set to "1" by defining the lower byte of the fourth operand 432D as "1".
- the D / A conversion number “1” corresponds to the function of converting a normal value to 8-bit data, so the opening operation data is converted to 8-bit and the relative second word of the operation register of loop number “1” Store in LW002.
- step 43 loop control input processing, control arithmetic processing, and output processing can be constructed.
- the step 44 is composed of a step number 440, a sequence instruction 441, a first operand 442A, and a second operand 442B, and "MOV" defined in the sequence instruction 441 makes the operation register LW002 defined in the first operand 442A.
- the opening degree operation data is transferred to the operation register YW100 defined in the second operand 422B.
- the plant input / output 8 may be configured to directly store the measurement data in the operation register.
- the plant input / output 8 may directly transfer the operation data of the operation register and output the operation data to the plant 20.
- FIG. 9 is a view showing an example of a ladder diagram displayed by the programming device 11.
- a ladder diagram 200 in FIG. 9A is an example in which the ladder program 4 in FIG. 9B is displayed in a ladder diagram format using a ladder program development environment of the programming device 11.
- a ladder 201 of the ladder diagram 200 shows a process of turning on the bit data of the output register Y001 when the bit data of the input register X001 is turned on and the bit data of the input register X002 is turned on.
- the ladder 201 is composed of three sequence instructions of an a-contact start operation “LD” and an a-contact serial operation “AND” coil output operation “OUT”.
- the ladder 202 transfers the word data of the input register XW100 to the operation register LW001 according to the sequence instruction "MOV".
- the ladder 203 describes one loop control by a loop instruction 205 and four operands.
- the operand display area 206 four operands are displayed at once in the following order from the top left: loop number "0001", input processing parameter "0203", control operation processing parameter "0002", and output processing parameter "0101".
- the configuration of loop control can be easily grasped only by the ladder diagram.
- the ladder 204 transfers the data of the operation register LW002 to the output register YW100 according to the sequence instruction "MOV".
- the controller according to the present invention is not limited to the above embodiment, and the gist of the present invention In the range which does not deviate, it can deform
- other embodiments of the controller according to the present invention will be listed.
- the operand 412 of the loop instruction 411 is provided with four operands from the first to the fourth to describe a series of loop control operation processing of loop number, input processing, control operation processing, output processing.
- a single operand may be used to describe a series of loop control functions, or a plurality of operands may be provided for each input process, each control operation process, and each output process.
- the loop instruction information output from the sequence processor 1 is the address at which the operand in the ladder program 2 is stored
- the loop instruction information is stored at the address at which the loop instruction in the ladder program 2 is stored.
- the control program 6 may be a process of acquiring the subsequent operand based on the address at which the loop instruction is stored.
- the ladder program 4 may be a representation of IEC-61131 (standard of programming language of programmable controller).
- the controller according to the above-described embodiment can be applied to a control system of a social infrastructure system such as electric power, gas, traffic, and a dam, or a control system of an industrial system such as steel, chemistry, food, and distribution.
- a control system of a social infrastructure system such as electric power, gas, traffic, and a dam
- an industrial system such as steel, chemistry, food, and distribution.
- a recording device such as a Solid State Drive (SSD), an IC (Integrated Circuit) card, SD (Secure Digital) It can be stored in a recording medium such as a card or a DVD (Digital Versatile Disc).
- SSD Solid State Drive
- IC Integrated Circuit
- SD Secure Digital
- loop control can be described by a ladder program, improvement in engineering efficiency, programming and debugging efficiency, and improvement in actual trial operation adjustment efficiency can be expected.
- loop control can be visualized and described in a ladder program, and the third party can easily understand the loop control configuration, so it is highly maintainable and can be applied to a plant requiring long-term maintenance such as social infrastructure. It has the effect of
- the repair work can be simplified simply by changing the operand of the ladder program, so the repair work time is short, There is an effect that the accompanying plant down time and the alternative operation time by human beings can be minimized.
- Sequence processor 2 Operation processor 3: Memory 4: Ladder program 5: Register 6: Loop control program 7: Bus 8: Plant I / O 9: Communication interface 10: Controller 11 : Programming device, 20: Plant.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
Description
また、C言語などのプログラム言語によるループ制御プログラムの開発環境を備え、ラダープログラムのループ命令の実行モジュールに該当するループ制御プログラムを作成し、制御コントローラ10にループ制御プログラムを登録する。
命令はシーケンス命令とループ命令に大別される、
シーケンス命令はオペランドと組み合わせてシーケンス制御を記述する。1つのシーケンス命令は1つの演算機能を備えた単機能命令であり、例えば、ビット論理演算、データ四則演算、データ転送などの演算毎に命令が存在する。シーケンス命令の演算対象は、オペランドにて定義されたレジスタ5のデータである。
なお、ループ制御プログラム6は、演算プロセッサ2により実行される。
制御コントローラ10は、プラント入出力8を介してプラント20の信号を受信し、レジスタ5に格納する。シーケンスプロセッサ1はラダープログラム4に記述されたシーケンス命令を実行して、結果をレジスタ5に格納する。また、シーケンスプロセッサ1はラダープログラム4に記述されたループ命令を検出すると、演算プロセッサ2にループ演算プログラム6を実行させて、結果をレジスタ5に格納する。レジスタ5に格納されたデータは、プラント入出力8を介してプラント20へ出力される。このように、制御コントローラ10は、プラント20のシーケンス制御とループ制御を実行する。
このように、シーケンスプロセッサ1は、ステップS112からステップS120の処理を繰返し実行することで、ラダープログラム4を先頭から最終まで実行する。
A/D変換番号が「2」ならば量子化仕様は12ビットと判定して、計測データを0~4095から0~10000に変換する。また、A/D変換番号が「1」ならば量子化仕様は8ビットと判定して、計測データを0~511から0~10000に変換する。
ステップ43は、ステップ番号430、ループ命令431、第1オペランド432A、第2オペランド432B、第3オペランド432C、第4オペランド432Dから構成される。ループ命令431は、第1オペランド432Aをループ番号とし、第2オペランド432Bを入力処理のパラメータとし、第3オペランド432Cを制御演算処理のパラメータとし、第4オペランド432Dを出力処理のパラメータとして、ループ制御演算を実行する。
なお、本発明に係る制御コントローラは、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で、適宜変形することができる。以下に、本発明に係る制御コントローラの他の実施形態を列挙する。
Claims (6)
- シーケンスプロセッサと、演算プロセッサと、メモリとを備え、
前記メモリには、ラダープログラムと、ループ制御プログラムを備え、
前記ラダープログラムは、命令とオペランドの組合せにより構成され、
前記シーケンスプロセッサは、前記ラダープログラムの命令がシーケンス命令の場合は、前記シーケンスプロセッサによって前記シーケンス命令を実行し、前記ラダープログラムの命令がループ命令の場合は、前記演算プロセッサに前記ループ制御プログラムを実行させる処理を備えた、制御コントローラであって、
前記ループ命令は、少なくとも入力処理、制御演算処理、および出力処理を定義するループ命令用オペランドを具備することを特徴とする制御コントローラ。 - 請求項1記載の制御コントローラにおいて、
前記ループ制御プログラムは、前記ループ命令用オペランドを取得する処理を備え、前記ループ命令用オペランドをパラメータとして前記入力処理、前記制御演算処理および前記出力処理を実行することを特徴とする制御コントローラ。 - 請求項1記載の制御コントローラにおいて、
前記メモリには、さらにレジスタを備え、前記ループ命令用オペランドは、ループ番号を定義するオペランドを具備し、前記ループ制御プログラムは、前記ループ命令用オペランドの格納アドレスを取得する処理と、前記ループ命令用オペランドから前記ループ番号を取得する処理を備え、前記ループ番号で指定された前記レジスタを前記演算プロセッサが演算用レジスタとして使用することを特徴とする制御コントローラ。 - 請求項3記載の制御コントローラにおいて、
前記レジスタは、前記指定される各ループ番号に対応して複数のエリアを有し、前記各エリアは、少なくとも前記入力処理の対象となる計測データを格納する領域及び前記制御演算処理結果である操作データを格納する領域を備えることを特徴とする制御コントローラ。 - 請求項4記載の制御コントローラにおいて、
前記ループ命令用オペランドは、更に、入力処理のパラメータを定義するオペランド、制御演算処理のパラメータを定義するオペランド及び出力処理のパラメータを定義するオペランドを具備することを特徴とする制御コントローラ。 - シーケンスプロセッサと、演算プロセッサと、メモリとを備えた制御コントローラに接続するプログラミング装置による前記制御コントローラのプログラミング方法であって、
前記メモリには、ラダープログラムと、レジスタと、ループ制御プログラムを備え、
前記ラダープログラムは、命令とオペランドの組合せにより構成され、
前記シーケンスプロセッサは、前記ラダープログラムの命令がシーケンス命令の場合は、前記シーケンスプロセッサによって前記シーケンス命令を実行し、前記ラダープログラムの命令がループ命令の場合は、前記演算プロセッサに前記ループ制御プログラムを実行させる処理を備え、
前記プログラミング装置は、前記ラダープログラムをラダー図形で表示し、表示した前記ラダー図形の上に、少なくとも入力処理、制御演算処理および出力処理を定義するループ命令用オペランドを定義及び表示するためのループ命令用オペランドエリアを備え、前記ラダープログラムの命令が前記ループ命令の場合は、前記ループ命令用オペランドエリアに、前記ループ命令用オペランドを、入力処理パラメータ、制御演算処理パラメータ、出力処理パラメータの順に定義及び表示することを特徴とするプログラミング方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201480051197.XA CN105556405B (zh) | 2013-09-20 | 2014-09-01 | 控制器及其编程方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013195708A JP5916677B2 (ja) | 2013-09-20 | 2013-09-20 | 制御コントローラ及びそのプログラミング方法 |
JP2013-195708 | 2013-09-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015041028A1 true WO2015041028A1 (ja) | 2015-03-26 |
Family
ID=52688682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/072866 WO2015041028A1 (ja) | 2013-09-20 | 2014-09-01 | 制御コントローラ及びそのプログラミング方法 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP5916677B2 (ja) |
CN (1) | CN105556405B (ja) |
WO (1) | WO2015041028A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6568152B2 (ja) | 2017-06-30 | 2019-08-28 | ファナック株式会社 | 数値制御装置 |
JP6901430B2 (ja) * | 2018-04-09 | 2021-07-14 | ファナック株式会社 | 制御装置及び編集装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61163401A (ja) * | 1985-01-14 | 1986-07-24 | Omron Tateisi Electronics Co | プログラマブルコントロ−ラ |
JPH03144706A (ja) * | 1989-10-31 | 1991-06-20 | Hitachi Ltd | プログラマブルコントローラ |
JPH1069302A (ja) * | 1996-08-27 | 1998-03-10 | Matsushita Electric Works Ltd | Pid命令を持つプログラマブルコントローラ |
JP2001022401A (ja) * | 1999-07-09 | 2001-01-26 | Toshiba Corp | 統合コントローラ及び制御システム並びに伝送装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59205605A (ja) * | 1983-05-07 | 1984-11-21 | Hitachi Ltd | シ−ケンス制御装置 |
JPH02311903A (ja) * | 1989-05-29 | 1990-12-27 | Toshiba Corp | プログラマブルコントローラ |
JP2526690B2 (ja) * | 1990-02-27 | 1996-08-21 | 三菱電機株式会社 | プログラマブルコントロ―ラの制御方法 |
CN1102713A (zh) * | 1994-08-08 | 1995-05-17 | 张勇 | 可编程顺序控制器 |
TW539931B (en) * | 2000-11-30 | 2003-07-01 | Matsushita Electric Works Ltd | General-purpose functional circuit and general-purpose unit for programmable controller |
CN102540952B (zh) * | 2010-12-09 | 2015-05-20 | 通用电气公司 | 可编程控制器以及操作方法 |
-
2013
- 2013-09-20 JP JP2013195708A patent/JP5916677B2/ja active Active
-
2014
- 2014-09-01 CN CN201480051197.XA patent/CN105556405B/zh active Active
- 2014-09-01 WO PCT/JP2014/072866 patent/WO2015041028A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61163401A (ja) * | 1985-01-14 | 1986-07-24 | Omron Tateisi Electronics Co | プログラマブルコントロ−ラ |
JPH03144706A (ja) * | 1989-10-31 | 1991-06-20 | Hitachi Ltd | プログラマブルコントローラ |
JPH1069302A (ja) * | 1996-08-27 | 1998-03-10 | Matsushita Electric Works Ltd | Pid命令を持つプログラマブルコントローラ |
JP2001022401A (ja) * | 1999-07-09 | 2001-01-26 | Toshiba Corp | 統合コントローラ及び制御システム並びに伝送装置 |
Non-Patent Citations (1)
Title |
---|
JUN'ICHI YOSHIDA: "Sequence to Loop Seigyo no Yugo ni yoru Sochi Keiso Solution", INSTRUMENTATION, vol. 50, no. 1, 1 January 2007 (2007-01-01), pages 45 - 49 * |
Also Published As
Publication number | Publication date |
---|---|
CN105556405A (zh) | 2016-05-04 |
CN105556405B (zh) | 2017-09-22 |
JP2015060538A (ja) | 2015-03-30 |
JP5916677B2 (ja) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110837893B (zh) | 装置、方法和存储介质 | |
CN104458316B (zh) | 水电站过渡过程整体物理模型试验平台 | |
JP6959228B2 (ja) | プロセス制御システムの安全論理に対応するインターリンクされたユーザインターフェースを提供するためのシステム、非一時的コンピュータ可読媒体及び方法 | |
AU2010201386A1 (en) | Method for executing sequential function charts as function blocks in a control system | |
EP2833225A1 (en) | Systems and methods for batch device commissioning and decommissioning | |
US10838381B2 (en) | Setting system, setting device, setting method, and setting program | |
CN105302015B (zh) | 使用典型组件和适配器组件的过程控制系统 | |
CN106444613A (zh) | 一种设备驱动控制器组件的实现方法及系统 | |
JP6161752B2 (ja) | 制御コントローラ及びそのプログラミング方法 | |
WO2015041028A1 (ja) | 制御コントローラ及びそのプログラミング方法 | |
Mahato et al. | Embedded web PLC: a new advances in industrial control and automation | |
CN105156311B (zh) | 三核极速恒压变频控制方法 | |
KR20220107409A (ko) | 디지털 트윈 기반 수처리시설 점검 및 솔루션 국산화를 위한 그 방법 | |
US9229627B2 (en) | System and method for graphical rights indication | |
Ashtekar et al. | Application of Modbus to communicate the PLC and Lab VIEW for real time process control | |
Rosli et al. | Industrial lab-bench liquid level process control system paper–phase I | |
CN111406238B (zh) | 用于规划特定的工艺技术设施的方法和设备 | |
Stamatescu et al. | Innovative scada test bed infrastructure for engineering education and research | |
CN202257130U (zh) | 具逻辑控制的人机界面运动控制器 | |
Belbase | PLC BASED INDUSTRIAL POWER MANAGEMENT SYSTEM | |
Jain et al. | FIELDBUS TECHNOLOGY ON A LARGE SCALE MINERAL PROCESSING PROJECT | |
WO2021038612A1 (en) | Security assessment apparatus, security assessment method, and non-transitory computer readable medium | |
Abd Aziz | Development of Water Pressure and Distribution Monitoring System Using PLC and SCADA | |
Gupta et al. | Recent advances in web plc for industrial control and automation | |
Lakshmi | Automatic siren system using programmable logic controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201480051197.X Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14845961 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: IDP00201601702 Country of ref document: ID |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14845961 Country of ref document: EP Kind code of ref document: A1 |