WO2015132971A1 - プログラミング装置 - Google Patents
プログラミング装置 Download PDFInfo
- Publication number
- WO2015132971A1 WO2015132971A1 PCT/JP2014/056050 JP2014056050W WO2015132971A1 WO 2015132971 A1 WO2015132971 A1 WO 2015132971A1 JP 2014056050 W JP2014056050 W JP 2014056050W WO 2015132971 A1 WO2015132971 A1 WO 2015132971A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- fbd
- component
- terminal
- recommended
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/311—Functional or applicative languages; Rewrite languages
-
- 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
- G05B19/056—Programming the PLC
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13146—Process image blocks have a relation to software function blocks
Definitions
- the present invention relates to a programming device that creates a program using an FBD (Function Block Diagram) language.
- FBD Field Block Diagram
- PLCs programmable logic controllers
- FBD programming language for the programmable logic controller defined as the standard IEC61131-3 by the International Electrotechnical Commission (IEC)
- IEC International Electrotechnical Commission
- the FBD language program describes a series of processes by placing FBD parts such as functions and function blocks and connecting them.
- Each FBD component includes an input terminal on the left side and an output terminal on the right side, and the FBD components are connected to each other via the input terminal and the output terminal.
- connection of FBD language it is possible to divide one connection line into a plurality of connections and to leave the terminals unconnected.
- the data type of the connected source terminal and the connected terminal may be different, or the terminal may not be connected to a terminal that requires connection. is there.
- Patent Document 1 discloses an invention in which, when a connection is supplied to a specified component, all unconnected terminals are automatically connected to the terminals of nearby FBD components from the top.
- FBD language programming when placing FBD parts, the user decides the placement position of the FBD parts in order to determine the placement positions of the FBD parts in consideration of the positions of the FBD parts that have already been placed from a myriad of placement positions. Takes time and programming takes time.
- connection source terminal in the connection when selecting the connection source terminal in the connection, all terminals are displayed uniformly, so it is difficult to understand the terminal with high connection priority, and it is also difficult to understand the terminal that causes the compile error. Is needed.
- connection destination terminal when selecting the connection destination terminal for wiring, all terminals are displayed uniformly, so it is difficult to understand the terminals with high connection priority, and it is difficult to understand the terminals that do not cause a compile error, so programming time Is needed.
- Patent Document 1 cannot divide one connection line into a plurality of connection lines, leave a terminal unconnected, or perform connection in consideration of a compile error.
- the present invention has been made in view of the above, and an object of the present invention is to obtain a programming device that can reduce the time required for programming in the FBD language.
- the present invention is a programming device for creating a FBD language program that describes a process by connecting a plurality of FBD parts on an editor screen.
- the component information management unit that manages the size information indicating the size, and the size information of the arranged FBD component when an operation to newly arrange the FBD component is performed on the arranged FBD component on the editor screen.
- the size information of the newly placed FBD component is acquired from the component information management unit, and a plurality of areas where the newly placed FBD component can be placed is detected based on the obtained size information, and the positions of the detected plurality of areas are detected.
- Based on the recommended order determining unit that determines the recommended priority order of component placement between multiple regions, and the recommended priority order determined by the recommended order determining unit is displayed in the multiple regions. And having a I data unit.
- the programming device detects an area where an FBD part to be placed next can be placed, and determines and displays a recommended order for each detected area, so that the placement position of the FBD part can be easily determined in a short time. There is an effect.
- FIG. 1 is a diagram showing a usage state of the first embodiment of the programming device according to the present invention.
- FIG. 2 is a diagram illustrating a hardware configuration of a computer that executes programming tool software.
- FIG. 3 is a diagram illustrating a computer functioning as a programming device.
- FIG. 4 is a flowchart showing a flow of operations of the programming device according to the first embodiment.
- FIG. 5 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the first embodiment.
- FIG. 6 is a flowchart showing a flow of operations of the programming device according to the second embodiment.
- FIG. 7 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the second embodiment.
- FIG. 8 is a flowchart showing a flow of operations of the programming device according to the third embodiment.
- FIG. 9 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the third embodiment.
- FIG. FIG. 1 is a diagram showing a usage state of the first embodiment of the programming device according to the present invention.
- the programming device 100 displays an editor screen, and accepts an FBD component placement operation on the editor screen and a connection operation between the FBD components on the editor screen, so that the user writes a program in the FBD language on the editor screen. It is a device.
- the programming device 100 is connected to the programmable logic controller 800 through the transmission line 10 when in use.
- the programming device 100 is configured by installing programming tool software in a general-purpose computer.
- FIG. 2 is a diagram illustrating a hardware configuration of a computer that executes programming tool software.
- the computer 400 includes a CPU (Central Processing Unit) 401, a RAM (Random Access Memory) 402, a ROM (Read Only Memory) 403, a storage unit 404, an input unit 405, a display unit 406, and a communication I / F (Interface) 409. .
- CPU Central Processing Unit
- RAM Random Access Memory
- ROM Read Only Memory
- CPU 401 is an arithmetic unit that executes programming tool software.
- a RAM 402 is a work area used when the CPU 401 executes a program.
- the ROM 403 stores a program (specifically, an Initial Program Loader (IPL) or the like) that is executed by the CPU 401 when the computer 400 is started up in a nonvolatile manner.
- the storage unit 404 is a device that stores information in a nonvolatile manner, and a hard disk drive, a solid state drive, or the like is applicable.
- the input unit 405 is a user interface for an operator to input information, and a pointing device (mouse, touch panel, etc.) or a keyboard can be applied.
- the display unit 406 is a device that displays information, and an LCD (Liquid Crystal Display), an OLED (Organic Light Emitting Display), or the like is applicable.
- the communication I / F 409 is an interface for communicating with the programmable logic controller 800 through the transmission path 10.
- FIG. 3 is a diagram illustrating a computer functioning as a programming device.
- an editor unit 101, a recommended order determination unit 102, and a component information management unit 103 are formed on a CPU 401.
- the storage unit 404 stores component information 104 used by the programming tool software 407 when the programming tool software 407 is installed.
- the component information 104 is component characteristic information regarding each FBD component, and includes information about the size occupied by the FBD component on the editor screen (hereinafter referred to as component size information).
- the recommended order determination unit 102 searches an area where the parts can be arranged on the editor screen, and displays a recommended order if there is a place where the parts can be arranged. The recommended order will be described later.
- the part information management unit 103 reads the part information 104 from the storage unit 404 in response to a request from the recommended order determination unit 102.
- the component information management unit 103 holds information on the type and position of components for the FBD components that are already arranged on the editor screen.
- the information on the position of the component is specifically a coordinate value on the editor screen.
- the editor unit 101 displays an editor screen on the display unit 406, and performs processing for creating and editing a sequence program in accordance with an operator operation performed on the input unit 405.
- the function of the editor unit 101 is the same as the editor function of a general programming device.
- the editor unit 101 refers to the component type and position information held by the component information management unit 103, and displays the FBD component on the editor screen.
- FIG. 4 is a flowchart showing an operation flow of the programming device according to the first embodiment.
- the user operates the input unit 405 to specify an FBD part that has been placed on the editor screen (step S201).
- the user operates the input unit 405 to give the editor unit 101 a request to place the FBD part on the editor screen (step S202).
- the editor unit 101 that has received the request to arrange the FBD part on the editor screen requests the recommended order determination unit 102 to detect the place where the FBD part is arranged.
- the recommended order determination unit 102 Upon receiving a request from the editor unit 101, the recommended order determination unit 102 receives component size information of the arranged FBD component, the designated FBD component, and the FBD component to be arranged (hereinafter referred to as arrangement target FBD component). Request to the component information management unit 103.
- the component information management unit 103 reads the component size information of each FBD component requested from the recommended order determination unit 102 from the component information 104 and returns it to the recommended order determination unit 102.
- the recommended order determination unit 102 acquires the arrangement position information of the arranged FBD parts and the designated FBD parts from the editor unit 101.
- the recommended order determination unit 102 is separated from the arranged FBD parts by a predetermined distance according to a preset algorithm, and arranged without overlapping with the arranged FBD parts. An area where the target FBD component can be placed is detected. Further, the recommended order determination unit 102 detects the uppermost coordinates of the detected area. If a plurality of areas are detected, the recommended order determination unit 102 assigns a recommended order to each detected area according to a preset algorithm (step S203).
- the fixed distance from the designated FBD component may be changeable by the user or may be a fixed value set in advance.
- the recommended order determining unit 102 transmits the determined recommended order and the coordinates of the top of each area to the editor unit 101.
- the editor unit 101 has a recommended order display field at the top of each area, and displays each item of a numerical sequence or a character string indicating an order corresponding to the recommended order numbered by the recommended order determining unit 102 on the editor screen.
- the screen display is updated so as to do so (step S204).
- a number sequence or character string indicating an order corresponding to the recommended order there is an equal number sequence having a first term of 1 and a tolerance of 1, in other words, a number sequence of natural numbers. In this case, the recommended order is displayed as a natural number starting from “1” on the editor screen.
- numerical sequences and character strings indicating an order corresponding to the recommended order alphabetic character strings such as A, B, C, D,.
- the order of the outline and each item of the numerical sequences and character strings representing the detailed order in the order may be displayed in the recommended order display column. For example, if a sequence such as 1.1, 1.2, 2.1, 2.2, 2.3, 2.4 is used, the order as a large frame is represented by the value of the first place, Detailed order can be expressed by value.
- the operation of the programming device 100 according to the first embodiment will be described with a specific example.
- a program in the FBD language is generally described so that processing proceeds from top to bottom and from left to right, and a new FBD part is placed above the already placed FBD part.
- the operation is generally not performed.
- the algorithm of the recommended order determination unit 102 is set to detect an area where the placement target FBD part can be placed only on the right side, the left side, and the lower side of the designated FBD part. Take an example.
- the algorithm of the recommended order determination unit 102 assigns the recommended order to each detected area with the highest priority in the order of right side, left side, and lower side.
- the recommended order determination unit 102 detects areas where the placement target FBD parts can be placed on the right side, the left side, and the lower side of the designated FBD parts according to a preset algorithm, and detects each detected A recommended order indicating the priority of component placement is assigned to the area in the order of right side, left side, and lower side.
- the fixed distance from the designated FBD component may be the same on the right side, the left side, and the lower side, or may be a smaller value on the lower side. This is because an input terminal and an output terminal are arranged on the right side and the left side of the FBD component, so that the program in the FBD language is easier to see if the left and right intervals are wider than the upper and lower intervals.
- the region where the placement target FBD part can be placed is detected only in the three directions of the left and right sides and the lower side.
- the recommended order so that the region where the placement target FBD part can be placed is also detected on the upper side.
- the algorithm of the determination unit 102 may be set. In this case, the algorithm of the recommended order determination unit 102 is detected from the upper side in view of the fact that generally the operation of newly arranging the FBD component is not performed on the upper side of the already placed FBD component. It is preferable to set the priority of the areas to be the lowest and number the recommended order of each area.
- FIG. 5 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the first embodiment.
- the editor screen 300 displayed on the display unit 406 includes a designated FBD part 301, an arranged FBD part 302, and a recommended order display field 303.
- the recommended order display field 303 displays the recommended order numbered by the recommended order determining unit 102.
- the recommended order determination unit 102 When the recommended order is determined, the recommended order determination unit 102 does not overlap with the placed FBD parts 302 in the placement candidate search range 304 on the right side at a certain distance from the designated FBD parts 301. Is detected, and the uppermost coordinates in the detected area are detected. Subsequently, the recommended order determination unit 102 detects an area in which the placement target FBD part can be placed without overlapping the placed FBD part 302 in the placement candidate search range 305 on the left side of the designated FBD part 301. Then, the uppermost coordinates in the detected area are detected.
- the recommended order determination unit 102 detects an area in which the placement target FBD part can be placed without overlapping the placed FBD part 302 in the placement candidate search range 306 below the designated FBD part 301. Then, the uppermost coordinates in the detected area are detected. Then, the recommended order determination unit 102 assigns the recommended order to the areas detected from the placement candidate search ranges 304 to 306 in order of the right side, the left side, and the lower side of the designated FBD part 301.
- the editor unit 101 arranges the recommended order display fields 303 1 to 303 3 at the uppermost coordinate portion of each area detected from the arrangement candidate search ranges 304 to 306, and displays the numbered recommended order.
- the recommended order display column 303 3, "3" is displayed.
- the input number and the selected recommended order display fields 303 1 to 303 3 are supported.
- the placement target FBD component is placed in the area to be played.
- the user can easily determine the arrangement position of the FBD component from an infinite number of arrangement positions in consideration of the position of the arranged FBD component. That is, according to the first embodiment, it is possible to determine the arrangement position of the FBD component in a short time.
- Embodiment 2 The configuration of the programming device according to the second embodiment of the present invention is the same as that of the first embodiment.
- the component information 104 includes terminal characteristic information (hereinafter referred to as terminal information) for the terminals of each FBD component, and the component information management unit 103 manages the terminal information of each FBD component. ing.
- the terminal information includes connection priority information set for each terminal in FBD component units in addition to the data type.
- FIG. 6 is a flowchart showing an operation flow of the programming device according to the second embodiment.
- the user operates the input unit 405 to specify an FBD part that has already been placed on the editor screen (step S401).
- the user operates the input unit 405 to give the editor unit 101 a connection execution request for the designated FBD part (step S402).
- the editor unit 101 requests the recommended order determination unit 102 to extract the terminal of the designated FBD component.
- the recommended order determination unit 102 requests the component information management unit 103 for terminal information of the designated FBD component and the FBD component already connected to the designated FBD component.
- the component information management unit 103 reads the terminal information requested from the recommended order determination unit 102 from the component information 104 and returns it to the recommended order determination unit 102. Based on the terminal information acquired from the component information management unit 103, the recommended order determination unit 102 extracts a terminal that causes a compile error from the specified FBD component, and the connection priority for each terminal acquired from the component information management unit 103. Number the recommended order according to Subsequently, the remaining terminals that do not cause a compile error are extracted, and the recommended order is assigned so that the recommended order is determined from the immediately preceding recommended order according to the connection priority for each terminal acquired from the component information management unit 103. (Step S403). As described above, the recommended order in this embodiment is that the terminal that causes the compilation error is the lowest number, and the terminal that does not cause the compilation error is the continuation number of the terminal that causes the compilation error. Will show the degree.
- the recommended order determining unit 102 transmits the recommended numbered order to the editor unit 101.
- the editor unit 101 provides a recommended order display field so as to correspond to each terminal of the designated FBD part, and updates the screen display so that the recommended order numbered by the recommended order determining unit 102 is displayed on the editor screen. (Step S404). That is, on the editor screen, the recommended order is displayed with natural numbers starting from “1”.
- FIG. 7 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the second embodiment.
- the designated FBD component 501 is displayed.
- the designated FBD component 501 has two input terminals 502 and 504 and two output terminals 503 and 505.
- the editor screen 500 displays recommended order display fields 506 1 to 506 4 .
- the recommended order determined by the recommended order determining unit 102 is displayed.
- FBD parts 507, 508, and 509 that have been connected to the designated FBD part 501 are arranged.
- the output terminal 507a and the input terminal 502 of the FBD component 507 have the same data type, and no compile error occurs when they are connected. Further, since the data type of the output terminal 508a and the input terminal 504 of the FBD component 508 are different, it is assumed that a compile error occurs when they are connected. Further, since the data type of the input terminal 509a and the output terminal 503 of the FBD component 509 is different, a compile error occurs when they are connected. Note that the output terminal 505 is not a terminal that is indispensable for connection with other FBD parts, and is in a state in which no compilation error occurs. In addition, the connection priority of each terminal of the designated FBD component 501 is the input terminal 502, the output terminal 503, the input terminal 504, and the output terminal 505 in order from the highest priority.
- the recommended order determination unit 102 acquires the terminal information of the designated FBD component 501 and FBD components 507, 508, and 509 from the component information 104 through the component information management unit 103.
- the recommended order determination unit 102 that has acquired the terminal information first extracts the output terminal 503 and the input terminal 504 as terminals that cause a compilation error.
- the recommended order determination unit 102 adopts “1” as the recommended order for the output terminal 503 and “2” as the recommended order for the input terminal 504 according to the connection priority set for the output terminal 503 and the input terminal 504. Number.
- the recommended order determination unit 102 extracts the input terminal 502 and the output terminal 505 as remaining terminals that do not cause a compile error.
- the recommended order determining unit 102 sets “3” as the recommended order of the input terminals 502 so that the serial numbers from the recommended order determined immediately before are set according to the connection priority set for the input terminal 502 and the output terminal 505. "4" as the recommended order of the output terminal 505. Thereafter, the recommended order determination unit 102 returns the recommended order to the editor unit 101.
- the editor unit 101 provides recommended order display fields 506 1 to 506 4 corresponding to the input terminals 502 and 504 and the output terminals 503 and 505 on the editor screen 500, and the recommended order acquired from the recommended order determining unit 102 is included therein. indicate. That is, the recommended sequence display column 506 1 corresponding to the input terminal 502, "3", the recommended sequence display column 506 2 corresponding to the output terminal 503, “2”, recommended sequence display column corresponding to the input terminal 504 the 506 3, "1”, the recommended sequence display column 506 4 corresponding to the output terminal 505 displays the "4".
- the input number and the selected recommended order display fields 506 1 to 506 4 are supported.
- the terminal to be selected is selected as the connection target.
- the recommended order determination unit 102 distinguishes the recommended order of the terminals in which the compilation error occurs and the recommended order of the terminals in which the compilation error does not occur, and returns it to the editor unit 101, and the editor unit 101 displays the recommended order display fields 506 1 to 506 4 .
- the recommended order of the terminals in which the compilation error occurs and the recommended order of the terminals that do not occur may be displayed in different colors. In this way, it is possible to easily determine a terminal that causes a compile error, so that the time required for programming can be shortened.
- a recommended order can be displayed in a high order from a terminal that is more likely to be reconnected.
- the priority of the terminal can be easily grasped. Thereby, a connection work can be performed efficiently.
- the recommended order determination unit 102 detects both data type match and mismatch between the terminals of the designated FBD parts and the terminals of the FBD parts already connected to the designated FBD parts, Terminals of designated FBD parts are assigned such that terminals with mismatched data types are numbered according to connection priority of connection, and terminals with matching data types are numbered according to connection priority of connection following this numbering.
- the case where the recommended priority order of the wiring work in between is determined as an example.
- the connection priority of this detection result and the obtained connection Based on the information, the recommended priority order of the wiring work between the terminals of the designated FBD part may be determined.
- Embodiment 3 The configuration of the third embodiment of the programming device according to the present invention is the same as that of the first embodiment.
- the component information 104 includes terminal characteristic information (hereinafter referred to as terminal information) for the terminals of each FBD component, and the component information management unit 103 manages the terminal information of each FBD component. ing.
- the terminal information includes data type information.
- FIG. 8 is a flowchart showing an operation flow of the programming device according to the third embodiment.
- the user When creating a program using an FBD component, the user operates the input unit 405 to specify a terminal of the FBD component that has already been arranged on the editor screen. Next, the user operates the input unit 405 to give the editor unit 101 a connection execution request for the designated terminal (step S601).
- the editor unit 101 that has received the connection execution request requests the recommended order determination unit 102 to extract terminals of FBD parts other than the FBD parts for which the terminals are specified.
- the recommended order determination unit 102 requests the component information management unit 103 for terminal information of an FBD component for which a terminal is specified and another FBD component.
- the component information management unit 103 reads the terminal information requested from the recommended order determination unit 102 from the component information 104 and returns it to the recommended order determination unit 102. Based on the terminal information acquired from the component information management unit 103, the recommended order determination unit 102 extracts a terminal that does not cause a compile error even if connected to the specified terminal, and according to the linear distance from the specified terminal Number recommended order.
- the straight line distance here is 2 points based on the xy coordinates on the editor screen of the designated terminal and the xy coordinates on the editor screen of the terminal of the FBD part other than the designated FBD part. It can be calculated as the length of the line segment between. Subsequently, the remaining terminals that cause a compilation error when connected to the specified terminal are extracted, and the recommended order is taken from the recommended order determined immediately before according to the linear distance to the specified terminal. (Step S602).
- the recommended order determining unit 102 determines the recommended order according to a predetermined rule. For example, the recommended order determining unit 102 determines the recommended order according to a rule such as giving priority to the terminal located on the upper side or the terminal located on the left side of the editor screen.
- the recommended order in this embodiment is that a terminal that does not cause a compile error is a young number, and a terminal that is a compile error is a continuation number of a terminal that does not cause a compile error. It indicates the priority of connection with.
- the recommended order determining unit 102 transmits the recommended numbered order to the editor unit 101.
- the editor unit 101 is provided with a recommended order display column corresponding to each terminal of the FBD part other than the FBD part for which the terminal is designated, and is displayed on the recommended order editor screen determined by the recommended order determining unit 102.
- the display is updated (step S603). That is, on the editor screen, the recommended order is displayed with natural numbers starting from “1”.
- FIG. 9 is a diagram illustrating an example of an editor screen displayed on the display unit by the programming device according to the third embodiment.
- FBD parts 701 to 705 are displayed on the editor screen 700.
- the FBD component 701 includes an output terminal 701a, and the FBD components 702 to 705 include input terminals 702a to 705a.
- a recommended order display field 706 is displayed on the editor screen 700. In the recommended order display fields 706 1 to 706 4 , the recommended order numbered by the recommended order determining unit 102 is displayed.
- the output terminal 701a of the FBD component 701 and the input terminal 702a of the FBD component 702 have different data types, and a compile error occurs when they are connected.
- the type is defined in IEC61131-3, there are data types such as INT that is a floating point type, REAL that is an integer type, and a BOOT type that indicates a result corresponding to a conditional expression as true or false.
- a compile error occurs when connecting input and output terminals of different types.
- the output terminal 701a of the FBD component 701 and the input terminal 703a of the FBD component 703 have different data types, and a compile error occurs when they are connected.
- the output terminal 701a of the FBD component 701 and the input terminal 704a of the FBD component 704 have the same data type, and no compile error occurs when they are connected. Furthermore, it is assumed that the output terminal 701a of the FBD component 701 and the input terminal 705a of the FBD component 705 have the same data type, and no compile error occurs when they are connected.
- the recommended order determination unit 102 acquires the terminal information of the FBD component 701 and the FBD components 702 to 705 to which the output terminal 701 a is specified from the component information 104 through the component information management unit 103.
- the recommended order determination unit 102 that has acquired the terminal information first extracts the input terminal 704a and the input terminal 705a as terminals that do not cause a compile error when connected to the output terminal 701a that is the designated terminal.
- the recommended order determining unit 102 sets “1” as the recommended order of the input terminal 704a and “2” as the recommended order of the input terminal 705a according to the short linear distance from the output terminal 701a that is the designated terminal. Numbering.
- the recommended order determination unit 102 extracts the input terminal 702a and the input terminal 703a as remaining terminals that cause a compilation error when connected to the designated output terminal 701a.
- the recommended order determining unit 102 sets “the recommended order of the input terminals 702a as the recommended order of the input terminal 702a so that the sequential number from the recommended order determined immediately before is determined according to the shortness of the linear distance from the output terminal 701a that is the designated terminal. “3” is assigned as the recommended order for the input terminal 703a. Thereafter, the recommended order determination unit 102 returns the recommended order to the editor unit 101.
- the editor unit 101 provides recommended order display fields 706 1 to 706 4 corresponding to the input terminals 702a to 705a on the editor screen 700, and displays the recommended order acquired from the recommended order determining unit 102 therein. That is, the recommended sequence display column 706 1 corresponding to the input terminal 702a, "3", the recommended sequence display column 706 2 corresponding to the input terminal 703a, "4", recommended sequence display column corresponding to the input terminal 704a the 706 3, "1”, the recommended sequence display column 706 4 corresponding to the input terminal 705a displays "2".
- the input number and the terminal corresponding to the selected recommended order display field 706 are specified.
- the connected terminal 701a is connected.
- the recommended order determination unit 102 distinguishes the recommended order of the terminals in which the compilation error occurs and the recommended order of the terminals that do not occur, and returns them to the editor unit 101, and the editor unit 101 displays the recommended order display fields 706 1 to 706 4 .
- the recommended order of the terminals in which the compilation error occurs and the recommended order of the terminals that do not occur may be displayed in different colors. In this way, it is possible to easily determine a terminal that does not cause a compile error, so that the time required for programming can be reduced.
- the recommended order determination unit 102 is a terminal of an FBD component other than the FBD component for which the terminal is designated, and a terminal whose data type matches the designated terminal is designated as the designated terminal.
- FBD parts other than the FBD part to which the terminal is specified following the numbering and the terminal whose data type does not match is specified.
- the case where the recommended priority order of the wiring work with the designated terminal is determined so that the linear distance to the terminal is assigned in ascending order is taken as an example. However, only one of the terminals that match the data type and the terminal that does not match the specified terminal is detected, and the connection between the specified terminal and the specified terminal based on this detection result and the acquired connection priority information The recommended priority order of work may be determined.
- the recommended order can be displayed in a higher order as the terminal recommended as the connection destination.
- the priority of the terminal can be easily grasped. Thereby, a connection work can be performed efficiently.
- the first to third embodiments have been described individually.
- the operations of these embodiments may be performed as a series of operations.
- the operations of Embodiments 2 and 3 are set as a series of operations and an FBD component that has already been arranged is specified on the editor screen, the recommended order is displayed on the terminal of the specified component, and one of the terminals is specified. At this time, the recommended order may be displayed on the terminals of the FBD parts other than the designated FBD part.
- the FBD parts can be arranged and connected by selecting the recommended order and the recommended order display section.
- the selection means the selection of the recommended order using the keyboard or the recommended order display using the mouse is possible. There are various options such as selection of parts, but the method is not limited to a specific method.
- the user can easily recognize the recommended arrangement position of the FBD component and the recommended connection terminal of the FBD component in programming using the FBD language. It is useful and is particularly suitable for reducing the occurrence of compilation errors.
- 10 transmission path 100 programming device, 101 editor unit, 102 recommended order determination unit, 103 component information management unit, 104 component information, 300, 500, 700 editor screen, 301,501 designated FBD component, 302 already placed FBD Parts, 303, 506, 706 Recommended order display column, 304, 305, 306 Placement candidate search range, 400 computer, 401 CPU, 402 RAM, 403 ROM, 404 storage unit, 405 input unit, 406 display unit, 407 programming tool software 409, Communication I / F, 502, 504, 702a, 703a, 704a, 705a Input terminal, 503, 505, 507a, 508a, 509a Output terminal, 507, 508, 509, 701, 702, 703 04,705 FBD parts.
- Communication I / F 502, 504, 702a, 703a, 704a, 705a Input terminal, 503, 505, 507a, 508a, 509a Output terminal, 507, 508, 509, 701, 702, 703
Abstract
Description
図1は、本発明にかかるプログラミング装置の実施の形態1の使用状態を示す図である。プログラミング装置100は、エディタ画面を表示し、エディタ画面に対するFBD部品の配置操作及びエディタ画面上でのFBD部品同士の結線操作を受け付けることによって、ユーザがエディタ画面上にFBD言語によるプログラムを記述するための装置である。プログラミング装置100は、使用時には伝送路10によってプログラマブルロジックコントローラ800と接続される。
本発明にかかるプログラミング装置の実施の形態2の構成は、実施の形態1と同様である。ただし、部品情報104には、各FBD部品の端子についての端子特性情報(以下、端子情報と表記する。)が含まれており、部品情報管理部103は、各FBD部品の端子情報を管理している。端子情報は、データ型に加え、FBD部品単位で端子ごとに設定される接続優先度の情報を含んでいる。
本発明にかかるプログラミング装置の実施の形態3の構成は、実施の形態1と同様である。ただし、部品情報104には、各FBD部品の端子についての端子特性情報(以下、端子情報と表記する。)が含まれており、部品情報管理部103は、各FBD部品の端子情報を管理している。端子情報は、データ型の情報を含んでいる。
Claims (8)
- エディタ画面上で複数のFBD部品を接続して処理を記述するFBD言語のプログラムを作成するプログラミング装置であって、
FBD部品の大きさを示すサイズ情報を管理する部品情報管理部と、
前記エディタ画面上で配置済のFBD部品に対して新たにFBD部品を配置する操作が行われた際に、配置済のFBD部品のサイズ情報及び新たに配置するFBD部品のサイズ情報を前記部品情報管理部から取得し、該取得したサイズ情報に基づき新たに配置するFBD部品を配置可能な複数の領域を検出し、該検出した複数の領域の位置に基づき複数の領域間における部品配置の推奨優先順序を決定する推奨順序決定部と、
前記推奨順序決定部が決定した前記推奨優先順序を、前記複数の領域に表示するエディタ部とを有することを特徴とするプログラミング装置。 - 前記推奨順序決定部は、予め設定されたアルゴリズムに従って前記複数の領域を検出し、前記推奨優先順序を決定することを特徴とする請求項1に記載のプログラミング装置。
- 前記推奨順序決定部のアルゴリズムは、配置済のFBD部品の右側、左側及び下側から新たに配置するFBD部品を配置可能な領域を検出し、右側、左側、下側の順に高い優先度で推奨優先順序を決定するように設定されていることを特徴とする請求項2に記載のプログラミング装置。
- 複数の端子を有するFBD部品をエディタ画面上で接続して処理を記述するFBD言語のプログラムを作成するプログラミング装置であって、
各端子に付属されるデータ型の情報及び複数の端子の結線の接続優先度の情報を、FBD部品ごとに管理する部品情報管理部と、
エディタ画面上に配置された複数のFBD部品のうちの一つを指定して結線操作が行われた際に、前記指定された第1のFBD部品に含まれる端子のデータ型の情報、前記第1のFBD部品に含まれる結線の接続優先度の情報、及び前記第1のFBD部品と結線されている第2のFBD部品に含まれる端子のデータ型の情報を部品情報管理部から取得し、該取得したデータ型の情報に基づき前記第1のFBD部品の端子と前記第2のFBD部品の端子間のデータ型の比較を行い、この比較結果と前記取得した結線の接続優先度の情報に基づき、前記第1のFBD部品の端子間における結線作業の推奨優先順序を決定する推奨順序決定部と、
前記推奨順序決定部が採番した前記推奨優先順序を、前記第1のFBD部品の各端子に対応させて表示するエディタ部とを有することを特徴とするプログラミング装置。 - 前記推奨順序決定部は、前記第1のFBD部品の端子と前記第2のFBD部品の端子間のデータ型の一致及び不一致の両方を検出し、データ型が不一致の端子が前記結線の接続優先度に従って採番され、この採番に続いてデータ型が一致する端子が前記結線の接続優先度に従って採番されるように、前記第1のFBD部品の端子間における結線作業の推奨優先順序を決定することを特徴とする請求項4に記載のプログラミング装置。
- 複数の端子を有するFBD部品をエディタ画面上で接続して処理を記述するFBD言語のプログラムを作成するプログラミング装置であって、
各端子に付属されるデータ型の情報を、FBD部品ごとに管理する部品情報管理部と、
エディタ画面上に配置された複数のFBD部品のうちの一つの端子を指定して結線操作が行われた際に、指定された端子のデータ型の情報及び前記指定された端子を有する第1のFBD部品以外のFBD部品であって前記エディタ画面上に配置済の第2のFBD部品に含まれる端子のデータ型の情報を前記部品情報管理部から取得し、該取得したデータ型の情報に基づき前記指定された端子と前記第2のFBD部品の端子間のデータ型の比較を行い、この比較結果に基づき、前記指定された端子との結線作業の推奨優先順序を決定する推奨順序決定部と、
前記推奨順序決定部が採番した前記推奨優先順序を、前記第2のFBD部品の各端子に対応させて表示するエディタ部とを有することを特徴とするプログラミング装置。 - 前記推奨順序決定部は、前記第2のFBD部品のデータ型が一致する端子が前記指定された端子との直線距離が短い順に採番され、この採番に続いて前記第2のFBD部品のデータ型が不一致の端子が前記指定された端子との直線距離が短い順に採番されるように、前記指定された端子との結線作業の推奨優先順序を決定することを特徴とする請求項6に記載のプログラミング装置。
- 前記エディタ部は、データ型が一致する端子の前記推奨優先順序と、データ型が一致しない端子の前記推奨優先順序とを異なる色で表示することを特徴とする請求項5又は7に記載のプログラミング装置。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/056050 WO2015132971A1 (ja) | 2014-03-07 | 2014-03-07 | プログラミング装置 |
US14/902,603 US9606776B2 (en) | 2014-03-07 | 2014-03-07 | Programming device |
JP2015525329A JP5829780B1 (ja) | 2014-03-07 | 2014-03-07 | プログラミング装置 |
DE112014003151.8T DE112014003151T5 (de) | 2014-03-07 | 2014-03-07 | Programmiervorrichtung |
CN201480042736.3A CN105431790B (zh) | 2014-03-07 | 2014-03-07 | 编程装置 |
KR1020167002077A KR101634063B1 (ko) | 2014-03-07 | 2014-03-07 | 프로그래밍 장치 |
TW103124501A TWI528122B (zh) | 2014-03-07 | 2014-07-17 | 程式編寫裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/056050 WO2015132971A1 (ja) | 2014-03-07 | 2014-03-07 | プログラミング装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015132971A1 true WO2015132971A1 (ja) | 2015-09-11 |
Family
ID=54054802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/056050 WO2015132971A1 (ja) | 2014-03-07 | 2014-03-07 | プログラミング装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9606776B2 (ja) |
JP (1) | JP5829780B1 (ja) |
KR (1) | KR101634063B1 (ja) |
CN (1) | CN105431790B (ja) |
DE (1) | DE112014003151T5 (ja) |
TW (1) | TWI528122B (ja) |
WO (1) | WO2015132971A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019167187A1 (ja) * | 2018-02-28 | 2019-09-06 | 三菱電機株式会社 | プログラミング支援装置、プログラミング支援方法およびプログラミング支援プログラム |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3299914A1 (de) * | 2016-09-26 | 2018-03-28 | Siemens Aktiengesellschaft | Verfahren zum erzeugen eines kontrollflussplanes |
CN110546583B (zh) * | 2018-03-28 | 2021-05-25 | 三菱电机株式会社 | 编程辅助装置及编程辅助方法 |
US11927933B2 (en) * | 2018-10-18 | 2024-03-12 | Mitsubishi Electric Corporation | Program comparison apparatus, program comparison method, and computer readable medium |
JP6950665B2 (ja) * | 2018-11-02 | 2021-10-13 | 横河電機株式会社 | エンジニアリング装置、エンジニアリング装置の制御方法及びプログラム |
JP7421280B2 (ja) | 2019-07-30 | 2024-01-24 | 三和シヤッター工業株式会社 | 建具 |
US11307554B2 (en) | 2019-11-20 | 2022-04-19 | Younes Faraj | System and method for keyword-based PLC programming |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002079886A1 (fr) * | 2001-03-29 | 2002-10-10 | Mitsubishi Denki Kabushiki Kaisha | Outil de programmation |
JP2008310390A (ja) * | 2007-06-12 | 2008-12-25 | Omron Corp | 安全コントローラのプログラム開発支援装置 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2900071B2 (ja) | 1990-06-07 | 1999-06-02 | 富士電機株式会社 | プログラマブルコントローラのプログラミング装置 |
DE19880536B4 (de) * | 1997-03-11 | 2004-08-05 | Mitsubishi Denki K.K. | Visuelles Programmierverfahren und dieses Verfahren anwendendes Pogrammiersystem |
CN100368987C (zh) * | 1999-08-31 | 2008-02-13 | 迪吉多电子股份有限公司 | 编辑装置 |
US20020080177A1 (en) | 2000-02-14 | 2002-06-27 | Julian Orbanes | Method and apparatus for converting data objects to a custom format for viewing information in virtual space |
US20020089550A1 (en) | 2000-02-14 | 2002-07-11 | Julian Orbanes | Method and apparatus for organizing hierarchical screens in virtual space |
US20020109680A1 (en) | 2000-02-14 | 2002-08-15 | Julian Orbanes | Method for viewing information in virtual space |
US20010052110A1 (en) | 2000-02-14 | 2001-12-13 | Julian Orbanes | System and method for graphically programming operators |
US20020085035A1 (en) | 2000-02-14 | 2002-07-04 | Julian Orbanes | Method and apparatus for creating custom formats for viewing information in virtual space |
US20020075311A1 (en) | 2000-02-14 | 2002-06-20 | Julian Orbanes | Method for viewing information in virtual space |
US20020089541A1 (en) * | 2000-02-14 | 2002-07-11 | Julian Orbanes | System for graphically interconnecting operators |
US8086664B2 (en) * | 2001-09-24 | 2011-12-27 | Siemens Industry, Inc. | Method and apparatus for programming programmable controllers and generating configuration data from a centralized server |
US7257620B2 (en) * | 2001-09-24 | 2007-08-14 | Siemens Energy & Automation, Inc. | Method for providing engineering tool services |
US7324856B1 (en) * | 2003-09-25 | 2008-01-29 | Rockwell Automation Technologies, Inc. | Autogeneration of code via human-machine interfaces (HMI) and self-building HMI |
JP4345576B2 (ja) | 2004-05-26 | 2009-10-14 | ヤマハ株式会社 | 信号経路設定装置および信号経路設定プログラム |
DE102008002266B4 (de) | 2007-06-12 | 2019-03-28 | Omron Corp. | Programmentwicklung-Unterstützungsvorrichtung einer Sicherheitssteuerung |
US8117424B2 (en) * | 2007-09-21 | 2012-02-14 | Siemens Industry, Inc. | Systems, devices, and/or methods for managing programmable logic controller processing |
US8327316B2 (en) * | 2008-09-30 | 2012-12-04 | Ics Triplex Isagraf Inc. | Compilation model |
US8694959B2 (en) * | 2008-09-30 | 2014-04-08 | Ics Triplex Isagraf Inc. | Multi language editor |
JP5183571B2 (ja) | 2009-06-01 | 2013-04-17 | 三菱電機株式会社 | 回路図編集装置および回路図編集プログラム |
JP2012159868A (ja) | 2011-01-28 | 2012-08-23 | Mitsubishi Electric Corp | プログラマブルロジックコントローラのプログラミング装置 |
WO2013084321A1 (ja) * | 2011-12-07 | 2013-06-13 | 三菱電機株式会社 | プログラマブル表示器用画面データ編集装置 |
WO2014051560A1 (en) * | 2012-09-26 | 2014-04-03 | Siemens Aktiengesellschaft | Providing a customized programmable logic controller to a customer |
-
2014
- 2014-03-07 JP JP2015525329A patent/JP5829780B1/ja not_active Expired - Fee Related
- 2014-03-07 US US14/902,603 patent/US9606776B2/en not_active Expired - Fee Related
- 2014-03-07 DE DE112014003151.8T patent/DE112014003151T5/de not_active Withdrawn
- 2014-03-07 WO PCT/JP2014/056050 patent/WO2015132971A1/ja active Application Filing
- 2014-03-07 CN CN201480042736.3A patent/CN105431790B/zh not_active Expired - Fee Related
- 2014-03-07 KR KR1020167002077A patent/KR101634063B1/ko active IP Right Grant
- 2014-07-17 TW TW103124501A patent/TWI528122B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002079886A1 (fr) * | 2001-03-29 | 2002-10-10 | Mitsubishi Denki Kabushiki Kaisha | Outil de programmation |
JP2008310390A (ja) * | 2007-06-12 | 2008-12-25 | Omron Corp | 安全コントローラのプログラム開発支援装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019167187A1 (ja) * | 2018-02-28 | 2019-09-06 | 三菱電機株式会社 | プログラミング支援装置、プログラミング支援方法およびプログラミング支援プログラム |
JPWO2019167187A1 (ja) * | 2018-02-28 | 2020-04-09 | 三菱電機株式会社 | プログラミング支援装置、プログラミング支援方法およびプログラミング支援プログラム |
Also Published As
Publication number | Publication date |
---|---|
US9606776B2 (en) | 2017-03-28 |
DE112014003151T5 (de) | 2016-05-12 |
CN105431790B (zh) | 2017-09-08 |
JPWO2015132971A1 (ja) | 2017-04-06 |
CN105431790A (zh) | 2016-03-23 |
KR20160014117A (ko) | 2016-02-05 |
JP5829780B1 (ja) | 2015-12-09 |
TWI528122B (zh) | 2016-04-01 |
KR101634063B1 (ko) | 2016-06-27 |
US20160196113A1 (en) | 2016-07-07 |
TW201535078A (zh) | 2015-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5829780B1 (ja) | プログラミング装置 | |
US7272825B2 (en) | Development aid device | |
JP5489958B2 (ja) | 試験テーブル生成装置及びその方法 | |
KR101889631B1 (ko) | 시퀀스 프로그램 작성 지원 장치 | |
WO2020184129A1 (ja) | 解析装置、解析方法、及び解析プログラム | |
US11960925B2 (en) | Program generating device, program generating method, and information storage medium | |
CN103399815A (zh) | 自动化测试方法和装置 | |
US20190303517A1 (en) | Simulation device | |
JP5454783B2 (ja) | Plcのプログラミングにおける変数名の入力支援方法、plcのプログラミングにおける変数名の入力支援装置、及びコンピュータプログラム | |
JP4242361B2 (ja) | 開発支援装置 | |
WO2014170992A1 (ja) | プログラミングツール | |
JP4379687B2 (ja) | シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品 | |
JP7466376B2 (ja) | 監視画面作成支援装置、監視画面作成支援方法、および監視画面作成支援プログラム | |
US20130226331A1 (en) | System construction supporting tool and system construction supporting device | |
US20190220506A1 (en) | Fine-tuning automatically label locations in engineering drawings | |
CN113711142B (zh) | 调试辅助装置、调试辅助方法、记录介质 | |
WO2020184085A1 (ja) | グラフ表示装置、グラフ表示方法、及びグラフ表示プログラム | |
EP2908194A1 (en) | Method and device for configuring hardware devices in an industrial automation system | |
JP7340494B2 (ja) | 制御コントローラのプログラム作成装置並びに方法 | |
KR101652321B1 (ko) | 관계형 db를 이용한 발전소의 루프 와이어링 다이어그램 자동 생성 시스템 및 방법 | |
TW201342234A (zh) | Plc系統設計裝置 | |
JP7063291B2 (ja) | 解析装置、解析方法、及び解析プログラム | |
JP2007128455A (ja) | プログラム部品の付属データ生成装置 | |
JP2022130297A (ja) | 情報処理装置、制御装置、制御方法、制御装置の制御方法、プログラム、記録媒体 | |
WO2018185915A1 (ja) | プログラム作成装置およびプログラム作成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201480042736.3 Country of ref document: CN |
|
ENP | Entry into the national phase |
Ref document number: 2015525329 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14884785 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14902603 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 20167002077 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 112014003151 Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14884785 Country of ref document: EP Kind code of ref document: A1 |