JP5992776B2 - Programmable controller, program creation support device, program, and basic unit - Google Patents

Programmable controller, program creation support device, program, and basic unit Download PDF

Info

Publication number
JP5992776B2
JP5992776B2 JP2012194556A JP2012194556A JP5992776B2 JP 5992776 B2 JP5992776 B2 JP 5992776B2 JP 2012194556 A JP2012194556 A JP 2012194556A JP 2012194556 A JP2012194556 A JP 2012194556A JP 5992776 B2 JP5992776 B2 JP 5992776B2
Authority
JP
Japan
Prior art keywords
unit
extension
connection
basic unit
units
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012194556A
Other languages
Japanese (ja)
Other versions
JP2014052672A (en
Inventor
賢一 島田
賢一 島田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Keyence Corp
Original Assignee
Keyence Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Keyence Corp filed Critical Keyence Corp
Priority to JP2012194556A priority Critical patent/JP5992776B2/en
Publication of JP2014052672A publication Critical patent/JP2014052672A/en
Application granted granted Critical
Publication of JP5992776B2 publication Critical patent/JP5992776B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Description

本発明はプログラマブルコントローラに関する。   The present invention relates to a programmable controller.

工場等に設置される各種のアクチュエータを統括的に制御するための制御装置として、プログラマブルコントローラ(PLC)が知られている。PLCでは、統合的な制御を司る基本ユニットに、複数種類の拡張ユニットを接続可能である(例えば特許文献1)。拡張ユニットとしては、例えば、入出力点数を拡張する入出力ユニット、通信機能を付加する通信ユニット、センサ信号を処理するセンサユニット等が知られている。   A programmable controller (PLC) is known as a control device for comprehensively controlling various actuators installed in a factory or the like. In the PLC, a plurality of types of extension units can be connected to a basic unit that controls integrated control (for example, Patent Document 1). As the expansion unit, for example, an input / output unit that extends the number of input / output points, a communication unit that adds a communication function, a sensor unit that processes a sensor signal, and the like are known.

ラダープログラムに代表される制御プログラムを実行する上で、基本ユニットは、実際に接続されている拡張ユニットを認識した上で、制御プログラム上で定義されている拡張ユニットとの対応関係を識別することになる。   When executing a control program such as a ladder program, the basic unit recognizes the extension unit that is actually connected, and identifies the correspondence with the extension unit defined in the control program. become.

特開2011−28563号公報JP 2011-28563 A

ここで、ユニット構成が基本的に同じ派生的な複数種類のシステムの制御プログラムを開発する場合、システム間で制御プログラムを流用することで、開発効率を向上できる場合がある。   Here, when developing a control program for a plurality of types of systems having basically the same unit configuration, the development efficiency may be improved by diverting the control program between systems.

例えば、将来的に想定されているユニット構成に対して、現時点ではその一部の拡張ユニットを用いないユニット構成を採用し、一部の拡張ユニットを除く他の拡張ユニットについては同じ処理を実行させる場合である。この例の場合、将来のユニット構成を前提として制御プログラムを作成すれば、この制御プログラムを現時点のユニット構成に流用できる場合がある。   For example, for a unit configuration that is assumed in the future, a unit configuration that does not use some of the extension units at this time is adopted, and the same processing is executed for other extension units other than some extension units. Is the case. In this example, if a control program is created on the assumption of a future unit configuration, this control program may be diverted to the current unit configuration.

しかし、将来のシステム構成と現時点のシステム構成とが一部異なるため、将来のユニット構成を前提とした制御プログラムでは、制御プログラム上で定義されている拡張ユニットと実際に接続されている拡張ユニットとの対応関係に齟齬が生じて実行できない。   However, because the future system configuration is partly different from the current system configuration, the control program that assumes the future unit configuration is the same as the extension unit that is defined in the control program and the extension unit that is actually connected. Can't be executed due to a flaw in the correspondence.

そこで、制御プログラム上の識別情報を修正した上で流用することが考えれるが、手間を要し、制御プログラムの流用による開発効率の向上効果が薄れることになる。   Therefore, it can be considered that the identification information on the control program is corrected and then diverted. However, it takes time and the effect of improving the development efficiency by diverting the control program is diminished.

本発明の目的は、異なるユニット構成間で制御プログラムを流用するに際して、制御プログラム上の識別情報の修正手間を減らし、開発効率を高めることにある。   An object of the present invention is to reduce the trouble of correcting identification information on a control program and to improve development efficiency when diverting a control program between different unit configurations.

本発明によれば、基本ユニットと、該基本ユニットに接続される複数の拡張ユニットとを有し、外部に接続されるプログラム作成支援装置から送信された該基本ユニット及び該複数の拡張ユニットに対する設定情報を取得し、取得した設定情報に基づき動作するプログラマブルコントローラにおいて、
前記プログラム作成支援装置にて作成され、前記プログラマブルコントローラに送られる前記設定情報は、
前記複数の拡張ユニットの各々を識別するための順序性をもつ識別情報、及び、該識別情報により識別される拡張ユニットに対する処理が記述された制御プログラムと、
前記基本ユニットへの接続が想定される複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を示すユニット構成と、
前記ユニット構成に含まれる複数の拡張ユニットの中から、前記基本ユニットに対する接続未確定である接続未確定拡張ユニットを指定する指定情報と、
が含まれており、
前記プログラム作成支援装置から前記設定情報を取得する設定情報取得手段と、
前記プログラマブルコントローラにおいて前記基本ユニットに実際に接続されている複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を特定する特定手段と、
前記特定手段により特定された複数の拡張ユニットの種類と、前記設定情報取得手段により取得した前記設定情報に含まれる前記ユニット構成における複数の拡張ユニットの種類とを、前記基本ユニットに対する接続順序に沿って照合するとともに、該設定情報に含まれる前記指定情報にて指定された前記接続未確定拡張ユニットについては、該接続未確定拡張ユニットの種類に加えて、該設定情報に含まれる前記ユニット構成における接続順序に沿って次の拡張ユニットの種類も併せて照合する照合手段と、
前記照合手段の照合結果に基づいて、前記プログラマブルコントローラにおいて前記接続未確定拡張ユニットに対応する拡張ユニットが前記基本ユニットに実際に接続されていない場合、該拡張ユニットに割り当てるべき識別情報を欠番にした上で、前記基本ユニットに対する接続順序に沿って該拡張ユニットの次の拡張ユニットに対して該欠番にした識別情報の次の識別情報が割り当てられるように、前記特定手段により特定された複数の拡張ユニットの各々に対して前記識別情報を割り当てる割当手段と、
前記割当手段により割り当てを飛ばした識別情報に対応する特定の命令が処理対象から除外されるように前記制御プログラムを実行する制御手段と、
を備えることを特徴とするプログラマブルコントローラが提供される。
According to the present invention, the basic unit and the setting for the plurality of extension units transmitted from the program creation support apparatus connected to the outside have a basic unit and a plurality of extension units connected to the basic unit. In a programmable controller that acquires information and operates based on the acquired setting information,
Created by the program creation support apparatus, the setting information sent to the programmable controller,
Identification information having order for identifying each of the plurality of extension units , and a control program in which processing for the extension unit identified by the identification information is described;
A unit configuration indicating a type of each of the plurality of extension units assumed to be connected to the basic unit , and a connection order of each of the plurality of extension units to the basic unit ;
From among the plurality of expansion units contained in the unit configuration, the specifying information connection to the basic unit to specify the connection undetermined expansion unit is unconfirmed,
Is included,
Setting information acquisition means for acquiring the setting information from the program creation support device;
A specifying means for specifying a type of each of the plurality of extension units actually connected to the basic unit in the programmable controller, and a connection order of each of the plurality of extension units to the basic unit ;
The types of the plurality of extension units specified by the specifying unit and the types of the plurality of extension units in the unit configuration included in the setting information acquired by the setting information acquisition unit are arranged in the order of connection to the basic unit. For the unconfirmed connection extension unit specified in the specification information included in the setting information, in addition to the type of the connection unconfirmed extension unit, the unit configuration included in the setting information Collation means for collating the types of the next expansion units along the connection order ;
Based on the collation result of the collation means, when the extension unit corresponding to the unconfirmed connection extension unit is not actually connected to the basic unit in the programmable controller, identification information to be assigned to the extension unit is omitted. In the above, a plurality of extensions specified by the specifying means so that the next identification information of the identification information that has been numbered is assigned to the next extension unit of the extension unit in the order of connection to the basic unit. Assigning means for assigning said identification information to each of the units;
Control means for executing the control program so that a specific instruction corresponding to the identification information skipped by the assigning means is excluded from processing targets ;
The programmable controller is provided, characterized in that it comprises a.

本発明によれば、異なるユニット構成間で制御プログラムを流用するに際して、制御プログラム上の識別情報の修正手間を減らし、開発効率を高めることができる。   ADVANTAGE OF THE INVENTION According to this invention, when diverting a control program between different unit structures, the effort of correction of the identification information on a control program can be reduced, and development efficiency can be improved.

本発明の一実施形態に係る基本ユニットの外観図。The external view of the basic unit which concerns on one Embodiment of this invention. 図1の基本ユニット、拡張ユニット及び支援装置のブロック図。The block diagram of the basic unit of FIG. 1, an expansion unit, and a support apparatus. (A)は支援装置の処理例を示すフローチャート、(B)及び(C)は基本ユニットの処理例を示すフローチャート。(A) is a flowchart showing a processing example of the support device, (B) and (C) are flowcharts showing a processing example of the basic unit. (A)は支援装置における設定画面例を示す図、(B)はユニット設定情報の例を示す図。(A) is a figure which shows the example of a setting screen in a assistance apparatus, (B) is a figure which shows the example of unit setting information. 支援装置における編集画面例を示す図。The figure which shows the example of an edit screen in a assistance apparatus. 識別情報の割り当ての説明図。Explanatory drawing of allocation of identification information. 識別情報の割り当ての説明図。Explanatory drawing of allocation of identification information. 識別情報の割り当ての説明図。Explanatory drawing of allocation of identification information. 識別情報の割り当ての説明図。Explanatory drawing of allocation of identification information. 基本ユニットの処理例を示すフローチャート。The flowchart which shows the process example of a basic unit. コントロールリレーの定義例を示す図。The figure which shows the example of a definition of a control relay.

<構成例>
図1は本発明の一実施形態に係る基本ユニット100の外観図である。本実施形態の場合、基本ユニット100は、CPUユニットを構成しており、その筐体上部には端子台1が設けられている。端子台1は複数の出力端子及び複数の入力端子を含む。出力端子には出力機器が、入力端子には入力機器が、それぞれ接続可能である。出力機器にはリレー、ソレノイド、モータ等のアクチュエータ、或いは、アクチュエータのドライバが含まれる。入力機器にはセンサ、或いは、センサの信号処理回路が含まれる。
<Configuration example>
FIG. 1 is an external view of a basic unit 100 according to an embodiment of the present invention. In the case of this embodiment, the basic unit 100 constitutes a CPU unit, and the terminal block 1 is provided on the top of the housing. The terminal block 1 includes a plurality of output terminals and a plurality of input terminals. An output device can be connected to the output terminal, and an input device can be connected to the input terminal. Output devices include actuators such as relays, solenoids, and motors, or actuator drivers. The input device includes a sensor or a signal processing circuit of the sensor.

接続部2は、拡張ユニット(不図示)を接続するための拡張バスである。図1では接続部2は、端子保護用のカバー部材2aで覆われており、カバー部材2aを取り外すことで露出する。拡張ユニットには更に拡張ユニットを接続することが可能であり、接続部2は複数の拡張ユニットを直列的に接続することが可能である。こうして基本ユニット100と複数の拡張ユニットとを含むPLCを構築することができる。なお、本実施形態では、複数の拡張ユニットを直列的に接続するようにしているが、例えば並列的に接続してもよいし、基本ユニット100を中心として拡張ユニットをスター型に接続してもよく、接続形態は問われない。   The connection unit 2 is an expansion bus for connecting an expansion unit (not shown). In FIG. 1, the connection part 2 is covered with a cover member 2a for protecting terminals, and is exposed by removing the cover member 2a. An extension unit can be further connected to the extension unit, and the connection unit 2 can connect a plurality of extension units in series. In this way, a PLC including the basic unit 100 and a plurality of extension units can be constructed. In the present embodiment, a plurality of extension units are connected in series. However, for example, they may be connected in parallel, or the extension units may be connected in a star shape with the basic unit 100 as the center. Well, the connection form is not questioned.

基本ユニット100の筐体正面には表示部3、操作部4、接続部5が設けられている。表示部3はデバイス情報等、各種の情報を表示可能である。操作部4は複数のボタンから構成され、表示部3の表示内容の切り替えなど、ユーザの指示を基本ユニット100に対して手動入力可能となっている。接続部5には、基本ユニット100と外部機器との有線通信を可能とする通信ケーブルが接続される。また、その他、エラー通知用のLED等が設けられてもよい。   A display unit 3, an operation unit 4, and a connection unit 5 are provided on the front surface of the base unit 100. The display unit 3 can display various information such as device information. The operation unit 4 is composed of a plurality of buttons, and a user's instruction such as switching display contents on the display unit 3 can be manually input to the basic unit 100. A communication cable that enables wired communication between the basic unit 100 and an external device is connected to the connection unit 5. In addition, an error notification LED or the like may be provided.

図2は基本ユニット100、外部機器としてのプログラム作成支援装置200(以下、支援装置200という。)、及び、拡張ユニット300のブロック図である。支援装置200は、例えば、パソコンであり、ユーザによる制御プログラムの作成を支援する作成支援プログラムがインストールされている。   FIG. 2 is a block diagram of the basic unit 100, a program creation support apparatus 200 (hereinafter referred to as support apparatus 200) as an external device, and an expansion unit 300. The support device 200 is, for example, a personal computer, and a creation support program that supports creation of a control program by the user is installed.

支援装置200は、制御部50を備える。制御部50はCPU51、記憶部52、IF(インタフェース)部53を含む。記憶部52は、例えば、ROM、RAM、ハードディスクであり、上記の作成支援プログラムはこの記憶部52に格納可能である。IF部53は、例えば、表示部60、操作部61に対するI/Oインタフェース、基本ユニット100との通信のための通信インタフェースを含む。表示部60はユーザに情報を表示する。操作部61は、例えば、キーボード、マウス等である。   The support device 200 includes a control unit 50. The control unit 50 includes a CPU 51, a storage unit 52, and an IF (interface) unit 53. The storage unit 52 is, for example, a ROM, a RAM, or a hard disk, and the above creation support program can be stored in the storage unit 52. The IF unit 53 includes, for example, a display unit 60, an I / O interface for the operation unit 61, and a communication interface for communication with the basic unit 100. The display unit 60 displays information to the user. The operation unit 61 is, for example, a keyboard or a mouse.

基本ユニット100は、制御部10、記憶部20、ASIC30、を含む。制御部10は例えば汎用の1チップマイコンであり、CPU11、記憶部12、IF部13を含む。記憶部12は、例えば、ROM、RAMである。IF部13は、例えば、表示部3、操作部4に対するI/Oインタフェース、支援装置200との通信のための通信インターフェースを含む。   The basic unit 100 includes a control unit 10, a storage unit 20, and an ASIC 30. The control unit 10 is a general-purpose one-chip microcomputer, for example, and includes a CPU 11, a storage unit 12, and an IF unit 13. The storage unit 12 is, for example, a ROM or a RAM. The IF unit 13 includes, for example, a display unit 3, an I / O interface for the operation unit 4, and a communication interface for communication with the support apparatus 200.

記憶部20は、本実施形態の場合、フラッシュROM21と、SDRAM(シンクロナスダイナミックRAM)22と、を含むが、他の種類のメモリでもよく、1つのメモリでもよい。フラッシュROM21には、例えば、支援装置200からダウンロードされる、制御プログラム(中間コード)及び後述する各種の設定の情報を含む設定情報、或いは、後述する各処理のプログラムが格納される。また、中間コードをコンパイルするプログラムも格納可能である。SDRAM22には、例えば、実行形式の制御プログラムが格納される。記憶部20はデバイスとしても利用可能であるが、記憶部12をデバイスとして利用することで、デバイス情報の読み書き時間を短縮できる。   In the present embodiment, the storage unit 20 includes a flash ROM 21 and an SDRAM (Synchronous Dynamic RAM) 22, but may be another type of memory or a single memory. The flash ROM 21 stores, for example, a control program (intermediate code) downloaded from the support device 200 and setting information including various setting information described later, or a program for each processing described later. A program for compiling intermediate code can also be stored. For example, an execution format control program is stored in the SDRAM 22. The storage unit 20 can also be used as a device, but by using the storage unit 12 as a device, the device information read / write time can be shortened.

制御動作中、CPU11は、SDRAM22に記憶された実行形式の制御プログラムを読み出し、実行する。CPU11は、例えば、入力端子からの情報を取得し、入力機器からの入力状態を示すデバイス情報を更新する(入力リフレッシュ)。その後、制御プログラムを1スキャン実行しつつ、その中で記憶部12のデバイス情報(出力機器への出力状態を示すデバイス情報)を更新する。そして、更新後のデバイス情報のうち、出力端子を介して接続される出力機器用のデバイス情報を出力端子から出力する(出力リフレッシュ)。これらの処理を繰り返していくことで、制御が実行されることになる。ASIC30は、接続部2を介した拡張ユニット300との通信処理に特化した回路である。   During the control operation, the CPU 11 reads out and executes the execution type control program stored in the SDRAM 22. For example, the CPU 11 acquires information from the input terminal and updates device information indicating an input state from the input device (input refresh). Thereafter, while executing one scan of the control program, the device information (device information indicating the output state to the output device) in the storage unit 12 is updated therein. In the updated device information, the device information for the output device connected through the output terminal is output from the output terminal (output refresh). Control is executed by repeating these processes. The ASIC 30 is a circuit specialized for communication processing with the expansion unit 300 via the connection unit 2.

各拡張ユニット300は、ASIC301、接続部302及び303を備え、その拡張ユニットの機能に応じた不図示の回路を更に備える。ASIC301は、接続部302及び303を介して、基本ユニット100或いは他の拡張ユニット300との通信処理に特化した回路である。接続部302は基本ユニット100又は他の拡張ユニット300に接続される拡張バスであり、接続部303は他の拡張ユニット300の接続部302に接続される拡張バスである。   Each expansion unit 300 includes an ASIC 301 and connection units 302 and 303, and further includes a circuit (not shown) corresponding to the function of the expansion unit. The ASIC 301 is a circuit specialized for communication processing with the basic unit 100 or another extension unit 300 via the connection units 302 and 303. The connection unit 302 is an expansion bus connected to the basic unit 100 or another expansion unit 300, and the connection unit 303 is an expansion bus connected to the connection unit 302 of the other expansion unit 300.

図2に示すように、基本ユニット100の接続部2と、拡張ユニット100の接続部302とを接続し、更に、その接続部303を別の拡張ユニット100の接続部302に接続し、順次拡張ユニット100を接続していくことで、基本ユニット100の接続部2に複数の拡張ユニット100を直列に接続することができる。   As shown in FIG. 2, the connection unit 2 of the basic unit 100 and the connection unit 302 of the extension unit 100 are connected, and the connection unit 303 is connected to the connection unit 302 of another extension unit 100 to sequentially expand. By connecting the units 100, a plurality of extension units 100 can be connected in series to the connection portion 2 of the basic unit 100.

<処理例>
次に、基本ユニット100のCPU11が実行する処理例、及び、支援装置200のCPU51が実行する処理例、について説明する。まず、支援装置200の処理例について説明する。
<Processing example>
Next, a processing example executed by the CPU 11 of the basic unit 100 and a processing example executed by the CPU 51 of the support apparatus 200 will be described. First, a processing example of the support device 200 will be described.

<支援装置の処理例>
図3(A)は支援装置200の処理例を示すフローチャートである。本実施形態では、制御プログラムの作成の前提として、まず、ユニット構成の設定を行う。S1では、操作部61に対するユーザの操作に基づいて、ユニット構成を設定する。ユニット構成の設定とは、制御プログラム上で想定される基本ユニット100と拡張ユニット(想定拡張ユニットとも言う。)300に関する設定であり、基本ユニット100に対する想定拡張ユニットの接続態様の設定及び各想定拡張ユニットの個別設定等である。詳細は後述する。
<Example of support device processing>
FIG. 3A is a flowchart illustrating a processing example of the support device 200. In this embodiment, as a premise for creating a control program, first, a unit configuration is set. In S <b> 1, the unit configuration is set based on a user operation on the operation unit 61. The unit configuration setting is a setting related to the basic unit 100 and the expansion unit (also referred to as an assumed expansion unit) 300 assumed in the control program, and the connection mode setting of the assumed expansion unit to the basic unit 100 and each assumed expansion. For example, individual unit settings. Details will be described later.

S2では、操作部61に対するユーザの操作に基づいて、制御プログラムを編集する。ここでは、ユーザによるラダー図の作成を支援し、受け付ける。その一例については後述する。   In S <b> 2, the control program is edited based on a user operation on the operation unit 61. Here, the creation of a ladder diagram by the user is supported and accepted. One example will be described later.

S3では、操作部61に対するユーザの指示によって、S1で設定したユニット構成の情報及びS2で編集した制御プログラム(中間コード)を含む設定情報(プロジェクトデータとも言う。)を基本ユニット100に送信する。このプロジェクトデータは基本ユニット100のフラッシュROM21に格納される。こうして基本ユニット100は、設定情報を取得することになる。   In S3, in accordance with a user instruction to the operation unit 61, the unit configuration information set in S1 and the setting information (also referred to as project data) including the control program (intermediate code) edited in S2 are transmitted to the basic unit 100. This project data is stored in the flash ROM 21 of the basic unit 100. In this way, the basic unit 100 acquires the setting information.

<ユニット構成の設定>
S1のユニット構成の設定について図4(A)を参照して説明する。図4(A)は表示部60の表示例を示す。構成表示部70には、ユーザが現在選択しているユニット構成が表示される。同図の例では、基本ユニット100と、ユーザが選択した5つの想定拡張ユニット300と、エンドユニットと、から構成される暫定的なPLCの構成が表示されている。なお、本実施形態ではエンドユニットを設けているが、これを省略することは勿論可能である。
<Unit configuration settings>
The setting of the unit configuration in S1 will be described with reference to FIG. FIG. 4A shows a display example of the display unit 60. The configuration display unit 70 displays the unit configuration currently selected by the user. In the example of the figure, a provisional PLC configuration including the basic unit 100, five assumed expansion units 300 selected by the user, and end units is displayed. In the present embodiment, the end unit is provided, but it is of course possible to omit it.

5つの想定拡張ユニット300は4種類の想定拡張ユニットを含み、説明の便宜上、拡張ユニットの種類はA〜Dで示している。つまり、想定拡張ユニットBは2つあり、他の想定拡張ユニットA、C及びDはそれぞれ1つずつである。種類とは、例えば、拡張ユニットの型式を単位として区別することができる。なお、特に図示しないが基本ユニット100についてもユーザが選択可能である。エンドユニットは、PLCの終端を特定するためのユニットであり、最端部に位置する拡張ユニットに接続される。   The five assumed extension units 300 include four kinds of assumed extension units. For convenience of explanation, the types of extension units are indicated by AD. That is, there are two assumed expansion units B, and each of the other assumed expansion units A, C, and D is one. The type can be distinguished by, for example, the type of the extension unit as a unit. Although not particularly shown, the user can select the basic unit 100 as well. The end unit is a unit for specifying the end of the PLC, and is connected to the extension unit located at the end.

ユニット選択表示部73には、ユーザが選択可能な想定拡張ユニット300の種類が、機能毎に区分けされて表示されている。例えば同図の例では、I/Oユニット、アナログユニットといった機能毎の区分けで表示されている。ユーザは、好みの拡張ユニットを選択し、追加ボタン74を操作するか構成表示部70にドラッグ操作すると、構成表示部70に表示されているPLCに追加される。   In the unit selection display unit 73, the types of assumed expansion units 300 that can be selected by the user are displayed classified by function. For example, in the example shown in the figure, the display is divided into functions such as an I / O unit and an analog unit. When the user selects a desired extension unit and operates the add button 74 or drags it to the configuration display unit 70, the user is added to the PLC displayed on the configuration display unit 70.

識別情報表示部71には、各想定拡張ユニット300の識別情報が表示される。識別情報は制御プログラム上で各拡張ユニットを識別ための情報である。本実施形態の場合、識別情報は、基本ユニット100に対する接続の順番で規定される割当ルールに従って自動的に割り当てられる。この方式は、比較的簡便に拡張ユニットを識別できるという利点がある。同図の例では基本ユニット100側から、#1、#2...と番号で識別情報が割り当てられているが、接続の順番に従っていれば番号以外(例えば、a、b、c等)でもよい。なお、基本ユニット100には便宜的に#0が割り当てられている。   In the identification information display unit 71, identification information of each assumed expansion unit 300 is displayed. The identification information is information for identifying each expansion unit on the control program. In the case of this embodiment, the identification information is automatically assigned according to an assignment rule defined by the order of connection to the basic unit 100. This method has an advantage that the expansion unit can be identified relatively easily. In the example shown in the figure, from the basic unit 100 side, # 1, # 2,. . . The identification information is assigned by the number, but other than the number (for example, a, b, c, etc.) may be used as long as the connection order is followed. The basic unit 100 is assigned # 0 for convenience.

ユーザは、例えば、表示されている想定拡張ユニット300を選択してドラッグ操作を行うことで、想定拡張ユニット300の接続の順番を変更することができ、この場合、識別情報はリナンバされる。また、ユーザは、構成表示部70に表示されている想定拡張ユニット300を選択して、取消ボタン75を操作すると、構成表示部70に表示されているPLCから、その想定拡張ユニット300を削除でき、この場合、識別情報はリナンバされる。   For example, the user can change the connection order of the assumed expansion units 300 by selecting the displayed expected expansion unit 300 and performing a drag operation. In this case, the identification information is renumbered. Further, when the user selects the assumed expansion unit 300 displayed on the configuration display unit 70 and operates the cancel button 75, the assumed expansion unit 300 can be deleted from the PLC displayed on the configuration display unit 70. In this case, the identification information is renumbered.

予約表示部72は、想定拡張ユニット300毎に接続予約が選択されている否かを示す。同図の例では、#1の想定拡張ユニットAについて接続予約が選択されている。接続予約とは、実際には接続されない可能性があることをユーザが宣言しておくものである。すなわち、基本ユニットと接続未確定の拡張ユニットであることをユーザが宣言しておくものである。ユーザは、構成表示部70に表示されている想定拡張ユニット300を選択して、接続予約ボタン76を操作することで接続予約の対象となる接続未確定拡張ユニットを指定することができ、その拡張ユニット300について接続予約が受け付けられる。   The reservation display unit 72 indicates whether connection reservation is selected for each assumed expansion unit 300. In the example of the figure, connection reservation is selected for the assumed expansion unit A # 1. In the connection reservation, the user declares that there is a possibility that the connection is not actually made. That is, the user declares that the extension unit is not yet connected to the basic unit. The user can select the assumed expansion unit 300 displayed on the configuration display unit 70 and operate the connection reservation button 76 to specify a connection unconfirmed expansion unit that is a connection reservation target. A connection reservation is accepted for the unit 300.

この接続予約機能は、制御プログラムの流用を容易にすることを目的としたものである。例えば、将来のユニット構成に含まれるが、現時点で想定しているPLCには含まれない拡張ユニット300について、この接続予約をしておく。すると、将来のユニット構成を想定した制御プログラムを作成すれば、現時点で想定しているPLCに対してその制御プログラムを流用することが容易になる。詳細は後述する。   This connection reservation function is intended to facilitate the diversion of the control program. For example, this connection reservation is made for the extension unit 300 that is included in the future unit configuration but is not included in the currently assumed PLC. Then, if a control program that assumes a future unit configuration is created, it becomes easy to divert that control program to the PLC that is currently assumed. Details will be described later.

次に、ユーザは、構成表示部70に表示されている想定拡張ユニット300を選択して、個別設定ボタン77を操作すると、その想定拡張ユニットの個別設定を行う画面が表示され(不図示)、その詳細設定が行える。詳細設定は、例えば、アナログユニットの場合、そのレンジ等を含み、拡張ユニット300が実際に動作する際に必要な設定である。   Next, when the user selects the assumed expansion unit 300 displayed on the configuration display unit 70 and operates the individual setting button 77, a screen for individually setting the assumed expansion unit is displayed (not shown). Detailed settings can be made. For example, in the case of an analog unit, the detailed settings include the range and the like, and are necessary settings when the expansion unit 300 actually operates.

ユーザが設定ボタン78を操作すると、ユニット構成の設定が確定し、ユニット設定情報が作成される。ユニット設定情報は、S1のユニット構成の設定においてユーザが設定した内容を示し、少なくとも図4(B)に示すユニット設定情報D1を含む。   When the user operates the setting button 78, the unit configuration setting is confirmed and unit setting information is created. The unit setting information indicates contents set by the user in the setting of the unit configuration in S1, and includes at least unit setting information D1 shown in FIG.

図4(B)に示すユニット設定情報D1は、ユーザがこれから作成する制御プログラムで想定される、基本ユニット100に対する想定拡張ユニットの接続態様を示しており、順番情報、種類及び接続予約情報を含む。順番情報は、基本ユニット100に対する各想定拡張ユニット300の接続の順番を示す。本実施形態の場合、識別情報が想定拡張ユニット300の接続の順番を示しているため、これを順番情報として用いているが、接続の順番を特定可能であればどのような情報であってもよい。なお、図4(B)の例は、図4(A)のPLCの構成例のまま、設定内容が確定した場合を想定している。また、本実施形態では、識別情報を順番情報として用いているが、要するに、各ユニットを識別し得る識別情報であればよい。   The unit setting information D1 shown in FIG. 4B shows the connection mode of the assumed expansion unit to the basic unit 100, which is assumed in the control program to be created by the user, and includes order information, type, and connection reservation information. . The order information indicates the order of connection of each assumed expansion unit 300 to the basic unit 100. In this embodiment, since the identification information indicates the connection order of the assumed expansion unit 300, this is used as the order information. However, any information can be used as long as the connection order can be specified. Good. In the example of FIG. 4B, it is assumed that the setting content is confirmed with the configuration example of the PLC of FIG. In this embodiment, the identification information is used as the order information. In short, any identification information that can identify each unit may be used.

図4(B)のユニット設定情報D1から、基本ユニット100に対して拡張ユニット300が5台接続され、基本ユニット100側から順に、その種類がA、B、B、C、Dであることが認識可能となっている。また、接続予約情報から、#1の拡張ユニットAは、接続未確定拡張ユニットとして接続予約が設定されていることが認識可能となっている。このユニット設定情報D1は、記憶部52に保存され、S3の送信処理において制御プログラムと共に基本ユニット100に送信される。基本ユニット100では、受信したユニット設定情報D1をフラッシュROM21或いは記憶部12に格納しておくことが可能である。   From the unit setting information D1 in FIG. 4B, five extension units 300 are connected to the basic unit 100, and the types are A, B, B, C, and D in order from the basic unit 100 side. It can be recognized. Also, from the connection reservation information, it is possible to recognize that the connection reservation is set for the extension unit A # 1 as an unconfirmed connection extension unit. This unit setting information D1 is stored in the storage unit 52 and transmitted to the basic unit 100 together with the control program in the transmission process of S3. In the basic unit 100, the received unit setting information D1 can be stored in the flash ROM 21 or the storage unit 12.

<制御プログラムの編集>
S2の制御プログラムの編集例について図5を参照して説明する。図5は表示部60の表示例を示す。編集領域80には、ユーザの操作に基づいてラダー図が表示される。その際、想定拡張ユニット300に関わる処理については識別情報でその想定拡張ユニット300が特定されて記述される。同図のラダー図80aは#1の想定拡張ユニットAの処理を例示している。機能ボタン群81は、ユーザによるラダー図の作成を簡便化する機能ボタン群であり、例えば、定型的なラダー図のシンボル描画をボタン操作によって可能とする。
<Edit control program>
An example of editing the control program in S2 will be described with reference to FIG. FIG. 5 shows a display example of the display unit 60. In the editing area 80, a ladder diagram is displayed based on a user operation. At this time, the processing related to the assumed expansion unit 300 is specified and described by the identification information. The ladder diagram 80a of the figure illustrates the processing of the # 1 assumed expansion unit A. The function button group 81 is a function button group that simplifies the creation of a ladder diagram by the user. For example, symbols of a standard ladder diagram can be drawn by a button operation.

図5に示すように、想定拡張ユニットAの処理は、想定拡張ユニットを識別するための識別情報(#1)に基づく特定の命令であると言える。実際のラダープログラムは、数百行〜数千行のものまで幅広くあり、この特定命令もあらゆるところに散らばっている。従来は、想定拡張ユニットAが基本ユニット100に接続されている場合、例えば想定拡張ユニットCの処理を記述するためには、識別情報(#4)を用いて記述する必要があった。   As shown in FIG. 5, it can be said that the process of the assumed expansion unit A is a specific command based on the identification information (# 1) for identifying the assumed expansion unit. The actual ladder program has a wide range from hundreds to thousands of lines, and this specific instruction is scattered everywhere. Conventionally, when the assumed expansion unit A is connected to the basic unit 100, for example, in order to describe the processing of the assumed expansion unit C, it has been necessary to describe using the identification information (# 4).

一方、想定拡張ユニットAが基本ユニット100に接続されていない場合、基本ユニット100から順番に、想定拡張ユニットBに#1、想定拡張ユニットBに#2、想定拡張ユニットCに#3、想定拡張ユニットDに#4の各ユニット番号が振られるため、例えば拡張ユニットCの処理を記述するためには、識別情報(#3)を用いて記述する必要があった。ということは、ユーザは、拡張ユニットAが基本ユニットに接続される場合とされない場合との2つのケースを想定して、2種類の制御プログラムを保存しておく、つまり、2重管理をしなければならず、手間が掛かっていた。2重管理を避けるためには、各ケースで、制御プログラムのユニット番号を書き換える必要があり、しかも場合によっては何十箇所も修正する必要があり、非常に手間が掛かっていた。   On the other hand, when the assumed expansion unit A is not connected to the basic unit 100, in order from the basic unit 100, the assumed expansion unit B is # 1, the assumed expansion unit B is # 2, the assumed expansion unit C is # 3, and the assumed expansion Since each unit number of # 4 is assigned to the unit D, for example, in order to describe the processing of the extension unit C, it is necessary to describe using the identification information (# 3). This means that the user must store two types of control programs, assuming that the expansion unit A is connected to the basic unit and not, that is, do double management. It took a lot of work. In order to avoid double management, it was necessary to rewrite the unit number of the control program in each case, and in some cases, it was necessary to correct dozens of places, which was very laborious.

本実施形態に係る基本ユニット100は、このような手間を省くものとして有用である。なお、本実施形態では、識別情報の一例として「ユニット番号」を用いているが、他にも例えば、ユニット番号と対応付けられたリレー番号とする等、種々の態様が可能である。   The basic unit 100 according to the present embodiment is useful as a device that saves such trouble. In the present embodiment, “unit number” is used as an example of identification information, but various other forms such as a relay number associated with a unit number are possible.

ラダー図が完成すると、ユーザの指示により、支援装置200はラダー図を中間コード(例えばニモニックコード)に変換する。中間コードは記憶部52に保存され、S3の送信処理においてユニット設定情報と共に基本ユニット100に送信される。基本ユニット100では、受信した中間コードをフラッシュROM21に格納しておくことが可能である。   When the ladder diagram is completed, the support apparatus 200 converts the ladder diagram into an intermediate code (for example, a mnemonic code) according to a user instruction. The intermediate code is stored in the storage unit 52 and transmitted to the basic unit 100 together with the unit setting information in the transmission process of S3. In the basic unit 100, the received intermediate code can be stored in the flash ROM 21.

<基本ユニットの処理例>
次に、基本ユニット100の処理例について説明する。まず、基本ユニット100が、これに接続されている拡張ユニット300を認識し、ユニット設定情報と照合して、識別情報を割り当てる処理について図3(B)を参照して説明する。図3(B)は照合・割当処理を示すフローチャートであり、基本ユニット100の電源投入時やプロジェクトデータを更新した場合等に実行される。
<Example of basic unit processing>
Next, a processing example of the basic unit 100 will be described. First, a process in which the basic unit 100 recognizes the extension unit 300 connected thereto, collates it with the unit setting information, and assigns identification information will be described with reference to FIG. FIG. 3B is a flowchart showing the collation / allocation process, which is executed when the basic unit 100 is turned on or when the project data is updated.

S11では実際のユニット構成を特定する処理を行う。ここでは、接続部2を介した拡張ユニット300との通信により、接続部2に実際に接続されている拡張ユニット300である、実拡張ユニット300を特定する。本実施形態の場合、特定内容には、実拡張ユニット300の種類と、基本ユニット100に対する接続の順番が含まれる。これらを特定できれば、通信の手法はどのようなものでもよい。例えば、基本ユニット100側にある実拡張ユニット300から順に、エンドユニット側の端部の実拡張ユニット300まで、順々に実拡張ユニット300の種類を取得する方法がある。   In S11, processing for specifying the actual unit configuration is performed. Here, the actual expansion unit 300 that is the expansion unit 300 actually connected to the connection unit 2 is specified by communication with the expansion unit 300 via the connection unit 2. In the case of the present embodiment, the specific contents include the type of the actual extension unit 300 and the order of connection to the basic unit 100. As long as these can be specified, any communication method may be used. For example, there is a method of acquiring the type of the actual expansion unit 300 sequentially from the actual expansion unit 300 on the basic unit 100 side to the actual expansion unit 300 at the end on the end unit side.

つまり、基本ユニット100が隣の想定拡張ユニット300に接続確認コマンドを送り、そのレスポンスに基づいて、その想定拡張ユニット300をユニット番号#1とする。また、基本ユニット100は、ユニット番号#1の隣の想定拡張ユニット300に接続確認コマンドを送り、そのレスポンスに基づいて、その想定拡張ユニット300をユニット番号#2とする。これを繰り返せば、全ての想定拡張ユニット300に対してユニット番号を割り当てることができる。一方で、実拡張ユニット300が基本ユニット300に自身の種類と接続位置とを通知する方法でも良い。   That is, the basic unit 100 sends a connection confirmation command to the adjacent assumed expansion unit 300, and sets the assumed expansion unit 300 to unit number # 1 based on the response. The basic unit 100 sends a connection confirmation command to the assumed extension unit 300 adjacent to the unit number # 1, and sets the assumed extension unit 300 to the unit number # 2 based on the response. By repeating this, unit numbers can be assigned to all assumed expansion units 300. On the other hand, the actual extension unit 300 may notify the basic unit 300 of its type and connection position.

S12では、S12ではユニット設定情報D1と、S11で特定された実ユニット構成とを照合する。具体例は後述する。照合が成立した場合はS13へ進み、成立しない場合はS14へ進む。S13では、S11で認識された各実拡張ユニット300に識別情報を割り当てる。識別情報及び対応する実拡張ユニット300の種類は、SDRAM22或いは記憶部12に、実際のユニット構成の設定情報(以下、実ユニット設定情報ともいう。)として保存する。   In S12, the unit setting information D1 and the actual unit configuration specified in S11 are collated in S12. Specific examples will be described later. If the verification is established, the process proceeds to S13, and if not, the process proceeds to S14. In S13, identification information is assigned to each real extension unit 300 recognized in S11. The identification information and the corresponding type of the actual expansion unit 300 are stored in the SDRAM 22 or the storage unit 12 as actual unit configuration setting information (hereinafter also referred to as actual unit setting information).

この識別情報は、制御プログラムを実行する上で実拡張ユニット300を区別するためのものであり、図4(A)を参照して説明したユニット構成の設定の場合と同じ割当ルールで割り当てることを基本とする。なお、割当ルールは本実施形態で説明したルールに限られず、様々な方式を採用可能である。   This identification information is for distinguishing the actual expansion unit 300 in executing the control program, and is assigned according to the same assignment rule as the unit configuration setting described with reference to FIG. Basic. The allocation rule is not limited to the rule described in the present embodiment, and various methods can be adopted.

S14ではエラー処理を行う。ここでは、例えば、実拡張ユニット300に対する識別情報の割り当てを行わず、識別情報の割り当てに失敗したことを表示部3による表示によって報知する。以上により一単位の処理を終了する。   In S14, error processing is performed. Here, for example, the identification information is not assigned to the actual expansion unit 300, and the fact that the assignment of the identification information has failed is notified by display on the display unit 3. Thus, one unit of processing is completed.

<割り当て例>
次に、S12の照合及びS13の割り当ての具体例を図6〜図9を参照して説明する。まず、図6の例について説明する。
<Example of assignment>
Next, specific examples of collation in S12 and allocation in S13 will be described with reference to FIGS. First, the example of FIG. 6 will be described.

図6において、実接続情報D2は、S11における実ユニット構成の特定結果である。図6の例では、実接続情報D2は、4つの実拡張ユニット300が接続されており、その種類は基本ユニット100側から順に、B、B、C、Dであることを示している。支援装置200からダウンロードされたユニット設定情報D1は図4(B)に例示したものと同様である。   In FIG. 6, the actual connection information D2 is a result of specifying the actual unit configuration in S11. In the example of FIG. 6, the actual connection information D2 indicates that four actual expansion units 300 are connected, and the types are B, B, C, and D in order from the basic unit 100 side. The unit setting information D1 downloaded from the support apparatus 200 is the same as that illustrated in FIG.

S12の照合では、例えば、まず、接続の順番で1番目の拡張ユニット300の種類を比較する。すると、実接続情報D2では種類がBであり、ユニット設定情報D1ではAであるから両者は一致しない。しかし、ユニット設定情報D1では接続の順番で1番目の拡張ユニットAに接続予約が設定されており、実際には接続されていない可能性がある。そこで、ユニット設定情報D1の2番目の拡張ユニット300と比較する。すると、拡張ユニット300の種類がBであり、実接続情報D2の1番目の拡張ユニット300の種類と一致している。   In the collation in S12, for example, first, the type of the first extension unit 300 is compared in the order of connection. Then, since the type is B in the actual connection information D2 and A in the unit setting information D1, the two do not match. However, in the unit setting information D1, a connection reservation is set for the first extension unit A in the order of connection, and there is a possibility that the unit is not actually connected. Therefore, it is compared with the second extension unit 300 of the unit setting information D1. Then, the type of the extension unit 300 is B, which matches the type of the first extension unit 300 in the actual connection information D2.

続いて、実接続情報D2の2〜4番目の拡張ユニット300の種類と、ユニット設定情報D1の3〜5番目の拡張ユニット300の種類とを順次比較するといずれも一致している。   Subsequently, when the types of the second to fourth expansion units 300 in the actual connection information D2 and the types of the third to fifth expansion units 300 in the unit setting information D1 are sequentially compared, they all match.

よって、照合は成立したものと判断し、割り当て結果は情報D3とする。つまり、接続予約情報で特定される接続未確定拡張ユニットである想定拡張ユニットAの接続が、実接続情報D2から確認されなかったので、想定拡張ユニットAの接続の順番に相当する順番(1番)を飛ばした順番(2番〜)で割当ルールを適用する。その結果、各実拡張ユニットB、B、C、Dには、識別情報#2、#3、#4、#5をそれぞれ割り当てる。これにより、識別情報の割り当てに齟齬が生じることを防止できる。その結果、制御プログラムを流用しても、書き換えが不要になり、開発効率を高めることができる。   Therefore, it is determined that the verification has been established, and the allocation result is information D3. That is, since the connection of the assumed expansion unit A that is the unconfirmed connection expansion unit specified by the connection reservation information has not been confirmed from the actual connection information D2, the order corresponding to the connection order of the assumed expansion unit A (No. 1 ) Are applied in the order of skipping (No. 2). As a result, identification information # 2, # 3, # 4, and # 5 are assigned to each real extension unit B, B, C, and D, respectively. Thereby, it is possible to prevent wrinkles from occurring in the assignment of identification information. As a result, even if the control program is diverted, rewriting becomes unnecessary and development efficiency can be improved.

なお、図6を用いて説明した方法は一例であって、その他にも例えば、実接続情報D2に基づいて、まずは仮の識別情報として、#1,#2,#3,#4を割り当てる。そして、想定拡張ユニットAが接続予約情報で特定される想定拡張ユニットであることに基づいて、#1を欠番とし、#2,#3,#4,#5と割り当てし直す。これにより、割り当て結果の情報D3と同様の結果が得られる。   Note that the method described with reference to FIG. 6 is an example. In addition, for example, based on the actual connection information D2, first, # 1, # 2, # 3, and # 4 are assigned as temporary identification information. Then, based on the assumption that the assumed extension unit A is the assumed extension unit specified by the connection reservation information, # 1 is a missing number, and # 2, # 3, # 4, and # 5 are reassigned. As a result, a result similar to the allocation result information D3 is obtained.

次に、図7の例について説明する。図7において、実接続情報D2は、5つの実拡張ユニット300が接続されており、その種類は基本ユニット100側から順に、A、B、B、C、Dであることを示している。ユニット設定情報D1は図4(B)に例示したものと同様である。   Next, the example of FIG. 7 will be described. In FIG. 7, the actual connection information D2 indicates that five actual expansion units 300 are connected, and the types are A, B, B, C, and D in order from the basic unit 100 side. The unit setting information D1 is the same as that illustrated in FIG.

図6の例の場合と同様に、まず、接続の順番で1番目の拡張ユニット300の種類を比較する。すると、実接続情報D2では種類がAであり、ユニット設定情報D1ではAであるから両者は一致している。しかし、ユニット設定情報D1では接続の順番で1番目の拡張ユニットAに接続予約が設定されており、実際には接続されていない可能性がある。そこで、ユニット設定情報D1の2番目の拡張ユニット300と比較する。すると、拡張ユニット300の種類がBであり、実接続情報D2の1番目の拡張ユニット300の種類と一致しない。よって、この場合は、接続予約がされていた拡張ユニットAが実際に接続されていると判断できる。   As in the case of the example of FIG. 6, first, the types of the first extension units 300 are compared in the order of connection. Then, since the type is A in the actual connection information D2 and A in the unit setting information D1, the two match. However, in the unit setting information D1, a connection reservation is set for the first extension unit A in the order of connection, and there is a possibility that the unit is not actually connected. Therefore, it is compared with the second extension unit 300 of the unit setting information D1. Then, the type of the extension unit 300 is B, which does not match the type of the first extension unit 300 in the actual connection information D2. Therefore, in this case, it can be determined that the extension unit A that has been reserved for connection is actually connected.

続いて、実接続情報D2の2〜5番目の拡張ユニット300の種類と、ユニット設定情報D1の2〜5番目の拡張ユニット300の種類とを順次比較するといずれも一致している。   Subsequently, when the types of the second to fifth extension units 300 in the actual connection information D2 are sequentially compared with the types of the second to fifth extension units 300 in the unit setting information D1, they all match.

よって、照合は成立したものと判断し、割り当て結果は情報D3とする。つまり、図7の例では、接続予約情報で特定される接続未確定拡張ユニットである想定拡張ユニットAの接続が、実接続情報D2から確認されたので、そのままの順番で割当ルールを適用する。その結果、各実拡張ユニットA、B、B、C、Dには、識別情報#1、#2、#3、#4、#5をそれぞれ割り当てる。これにより、識別情報の割り当てに齟齬が生じることを防止できる。   Therefore, it is determined that the verification has been established, and the allocation result is information D3. That is, in the example of FIG. 7, since the connection of the assumed expansion unit A, which is the unconfirmed connection extension unit specified by the connection reservation information, has been confirmed from the actual connection information D2, the allocation rules are applied in the same order. As a result, identification information # 1, # 2, # 3, # 4, and # 5 are assigned to each real extension unit A, B, B, C, and D, respectively. Thereby, it is possible to prevent wrinkles from occurring in the assignment of identification information.

ここで、図6の例と図7の例とでは、拡張ユニットAの存在の有無のみが異なり、残りの拡張ユニットB、B、C、Dについては種類が同じである。そこで、拡張ユニットAが存在することを前提として接続予約を設定して制御プログラムを作成しておけば、拡張ユニットAが実際には無い場合(図6の例の場合)にも、この制御プログラムを流用できる。その際、拡張ユニットの識別情報を修正することは不要である。このように本実施形態では、異なるユニット構成間で制御プログラムを流用するに際して、識別情報の割り当てに齟齬が生じることを防止することができる。   Here, the example of FIG. 6 and the example of FIG. 7 differ only in the presence or absence of the expansion unit A, and the types of the remaining expansion units B, B, C, and D are the same. Therefore, if a connection program is set and a control program is created on the assumption that the expansion unit A exists, this control program can be used even when the expansion unit A does not actually exist (in the example of FIG. 6). Can be diverted. At that time, it is not necessary to correct the identification information of the expansion unit. As described above, in the present embodiment, it is possible to prevent the occurrence of wrinkles in assignment of identification information when diverting a control program between different unit configurations.

なお、このように本実施形態では、ユニット番号(識別情報の一例)の割り当てを工夫することで、簡易に制御プログラムの流用が可能なプログラマブルコントローラを実現することができる。例えば識別情報がa,b,c等の数字以外であっても、本発明は適用可能である。例えば図6において、ユニット設定情報D1の順番情報が左から順にa,b,c,d,eであり、接続予約情報で特定される想定拡張ユニットがAであると仮定した場合、照合結果に基づいて割り当て処理を行うと、aを割り当てず、左から順にb,c,d,eが割り当てられる。その結果、制御プログラムを実行する際に、制御プログラムに記述されたb〜eの識別情報を書き換える必要がなくなる(もし、左から順番にa,b,c,dと割り当てられると、識別情報を書き換えなければならない)。   In addition, in this embodiment, the programmable controller which can divert a control program simply can be implement | achieved by devising allocation of a unit number (an example of identification information) in this way. For example, the present invention can be applied even if the identification information is other than numbers such as a, b, and c. For example, in FIG. 6, when it is assumed that the order information of the unit setting information D1 is a, b, c, d, e in order from the left and the assumed extension unit specified by the connection reservation information is A, When the allocation process is performed based on the above, b, c, d, and e are allocated in order from the left without a being allocated. As a result, when executing the control program, it is not necessary to rewrite the identification information of b to e described in the control program (if a, b, c, d are assigned in order from the left, the identification information is Must be rewritten).

但し、制御プログラムに識別情報aの記述は残されているため、基本ユニット100は、この識別情報aに基づく特定の命令は処理対象から除外されるように制御プログラムを実行する。例えば、識別情報aに基づく特定の命令をスキップ(無視、省略)してもよいし、事前に識別情報aに基づく特定の命令を無効化してもよい。また、基本ユニット100のCPU11は、識別情報aに基づく特定の命令を実行しても実行結果を拡張ユニットに向けて出力しないようにしてもよいし、或いは、基本ユニット100のCPU11は、識別情報aに基づく特定の命令を実行して実行結果を実拡張ユニット300に向けて出力するが、ASIC30においてこの出力をブロックし、実質的に実拡張ユニット300が実行結果を受信しないような構成にしてもよい。   However, since the description of the identification information a remains in the control program, the basic unit 100 executes the control program so that the specific command based on the identification information a is excluded from the processing target. For example, a specific command based on the identification information a may be skipped (ignored or omitted), or a specific command based on the identification information a may be invalidated in advance. In addition, the CPU 11 of the basic unit 100 may not output the execution result to the expansion unit even if a specific instruction based on the identification information a is executed. Alternatively, the CPU 11 of the basic unit 100 may A specific instruction based on a is executed and an execution result is output to the actual extension unit 300, but this output is blocked in the ASIC 30 so that the actual extension unit 300 does not substantially receive the execution result. Also good.

このように、本実施形態に係る基本ユニット100は、照合結果に基づいて、接続予約情報で特定される想定拡張ユニットAが存在しない場合、制御プログラムにおいて想定拡張ユニットを識別するための識別情報(上述の例では、#1やa)に基づく特定の命令が処理対象から除外されるように動作する。   Thus, the basic unit 100 according to the present embodiment, based on the collation result, when there is no assumed extension unit A specified by the connection reservation information, the identification information for identifying the assumed extension unit in the control program ( In the above-described example, the specific command based on # 1 and a) operates so as to be excluded from the processing target.

次に図8の例について説明する。図8において、実接続情報D2は、4つの実拡張ユニット300が接続されており、その種類は基本ユニット100側から順に、C、B、C、Dであることを示している。ユニット設定情報D1は図4(B)に例示したものと同様である。   Next, the example of FIG. 8 will be described. In FIG. 8, the actual connection information D2 indicates that four actual extension units 300 are connected, and the types are C, B, C, and D in order from the basic unit 100 side. The unit setting information D1 is the same as that illustrated in FIG.

図6、図7の例の場合と同様に、まず、接続の順番で1番目の拡張ユニット300の種類を比較する。すると、実接続情報D2では種類がAであり、ユニット設定情報D1ではCであるから両者は一致しない。しかし、ユニット設定情報D1では接続の順番で1番目の拡張ユニットAに接続予約が設定されており、実際には接続されていない可能性がある。   As in the case of the examples of FIGS. 6 and 7, first, the types of the first extension units 300 are compared in the order of connection. Then, since the type is A in the actual connection information D2 and C in the unit setting information D1, the two do not match. However, in the unit setting information D1, a connection reservation is set for the first extension unit A in the order of connection, and there is a possibility that the unit is not actually connected.

そこで、ユニット設定情報D1の2番目の拡張ユニット300と比較する。すると、拡張ユニット300の種類がBであり、実接続情報D2の1番目の拡張ユニット300の種類と一致しない。よって、この場合は、ユニット設定情報D1で想定されていないユニット構成であり、制御プログラムが実行不可能であるとしてエラーとする(図3(B)のS14)。   Therefore, it is compared with the second extension unit 300 of the unit setting information D1. Then, the type of the extension unit 300 is B, which does not match the type of the first extension unit 300 in the actual connection information D2. Therefore, in this case, the unit configuration is not assumed in the unit setting information D1, and an error is assumed that the control program cannot be executed (S14 in FIG. 3B).

このようにして拡張ユニット300の種類を照合することで、拡張ユニット300の接続ミスや、別システムに誤って制御プログラムやユニット設定情報をダウンロードしたことを検知することができる。   By checking the type of the extension unit 300 in this way, it is possible to detect a connection error of the extension unit 300 or that a control program or unit setting information has been downloaded by mistake to another system.

次に図9の例について説明する。図9において、実接続情報D2は、4つの実拡張ユニット300が接続されており、その種類は基本ユニット100側から順に、A、B、C、Dであることを示している。ユニット設定情報D1は図4(B)に例示したものと接続予約情報のみが異なり、#2の想定拡張ユニットBが接続予約対象となっている。   Next, the example of FIG. 9 will be described. In FIG. 9, the actual connection information D2 indicates that four actual expansion units 300 are connected, and the types are A, B, C, and D in order from the basic unit 100 side. The unit setting information D1 is different from that illustrated in FIG. 4B only in connection reservation information, and the # 2 assumed expansion unit B is a connection reservation target.

図6〜図8の例の場合と同様に、まず、接続の順番で1番目の拡張ユニット300の種類を比較する。すると、実接続情報D2では種類がAであり、ユニット設定情報D1でもAであるから両者は一致する。   As in the example of FIGS. 6 to 8, first, the types of the first extension units 300 are compared in the order of connection. Then, since the type is A in the actual connection information D2, and the unit setting information D1 is also A, the two match.

次に、接続の順番で2番目の拡張ユニット300の種類を比較する。すると、実接続情報D2では種類がBであり、ユニット設定情報D1でもBであるから両者は一致する。しかし、ユニット設定情報D1では接続の順番で2番目の想定拡張ユニットBに接続予約が設定されており、実際には接続されていない可能性がある。   Next, the types of the second extension units 300 are compared in the order of connection. Then, since the type is B in the actual connection information D2, and the unit setting information D1 is also B, the two match. However, in the unit setting information D1, a connection reservation is set for the second assumed expansion unit B in the connection order, and there is a possibility that the unit is not actually connected.

そこで、ユニット設定情報D1の3番目の想定拡張ユニット300と比較する。すると、その種類がBであり、実接続情報D2の2番目の実拡張ユニット300の種類と一致する。この場合は、接続予約がされていた拡張ユニットBが実際には接続されていないと判断することとする。   Therefore, it is compared with the third assumed expansion unit 300 of the unit setting information D1. Then, the type is B, which matches the type of the second real extension unit 300 in the real connection information D2. In this case, it is determined that the extension unit B that has been reserved for connection is not actually connected.

続いて、実接続情報D2の3〜4番目の拡張ユニット300の種類と、ユニット設定情報D1の4〜5番目の拡張ユニット300の種類とを順次比較するといずれも一致している。   Subsequently, when the types of the third to fourth expansion units 300 in the actual connection information D2 and the types of the fourth to fifth expansion units 300 in the unit setting information D1 are sequentially compared, they all match.

よって、照合は成立したものと判断し、割り当て結果は情報D3とする。つまり、接続予約情報で特定される#2の想定拡張ユニットBの接続が、実接続情報D2から確認されなかったので、#2の想定拡張ユニットBの接続の順番に相当する順番(2番)を飛ばした順番(1番、3番〜)で割当ルールを適用する。その結果、各実拡張ユニットA、B、C、Dには、識別情報#1、#3、#4、#5をそれぞれ割り当てる。これにより、識別情報の割り当てに齟齬が生じることを防止できる。   Therefore, it is determined that the verification has been established, and the allocation result is information D3. That is, since the connection of the # 2 assumed expansion unit B specified by the connection reservation information has not been confirmed from the actual connection information D2, the order corresponding to the connection order of the # 2 assumed expansion unit B (No. 2) The allocation rules are applied in the order of skipping (No. 1, No. 3). As a result, identification information # 1, # 3, # 4, and # 5 are assigned to each real extension unit A, B, C, and D, respectively. Thereby, it is possible to prevent wrinkles from occurring in the assignment of identification information.

<接続予約された拡張ユニットの処理>
接続予約された接続未確定拡張ユニットである想定拡張ユニット300が実際には接続されていなかった場合、その拡張ユニット300に関する命令を上記の通り処理対象から除外することで、制御プログラムを正常に実行できる。
<Processing of expansion units reserved for connection>
When the assumed expansion unit 300 that is a connection unconfirmed expansion unit that has been reserved for connection is not actually connected, the control program is executed normally by excluding the instruction related to the expansion unit 300 from the processing target as described above. it can.

そこで、制御プログラムの実行の際、実ユニット設定情報を参照して、接続未確定拡張ユニットが実際に存在するかを確認して処理を分岐させることができる。この処理は、例えば、制御プログラムの中間コードをコンパイルする際に設定できる。   Therefore, when executing the control program, it is possible to branch the processing by referring to the actual unit setting information and confirming whether or not an unconfirmed connection extension unit actually exists. This process can be set, for example, when compiling the intermediate code of the control program.

図3(C)は基本ユニット100が制御プログラムの中間コードを実行形式のコードに変換する変換処理の例を示している。この変換は、実ユニット設定情報を設定した後、フラッシュROM21に格納してあるコンパイラをCPU11が実行することで行うことができ、実行形式の制御プログラムのコードは、上記の通り、SDRAM22に格納することができる。   FIG. 3C shows an example of conversion processing in which the basic unit 100 converts the intermediate code of the control program into an executable code. This conversion can be performed by the CPU 11 executing the compiler stored in the flash ROM 21 after setting the actual unit setting information, and the code of the execution format control program is stored in the SDRAM 22 as described above. be able to.

S21では、1単位分の中間コードを読み出し、S22ではこれを実行形式コードに変換する。その際、拡張ユニット300に関する処理については、実ユニット設定情報に基づいて、拡張ユニット300が存在するか(実行可能か)を判断する処理を組み込み、存在しない場合には特定の処理(後述する未確認時の処理)を実行させるようにする。対象とする拡張ユニット300は、少なくとも接続予約の対象となっている接続未確認拡張ユニットであるが、本実施形態では全拡張ユニット300を対象としている。   In S21, an intermediate code for one unit is read, and in S22, this is converted into an executable code. At this time, for the processing related to the extension unit 300, a process for determining whether the extension unit 300 exists (executable) is incorporated based on the actual unit setting information. Time processing). The target expansion unit 300 is at least a connection unconfirmed expansion unit that is a target of connection reservation, but in this embodiment, all the expansion units 300 are targeted.

S23では、全中間コードについて変換が完了したかを判定し、完了していない場合はS21へ戻って同様の処理を繰り返す。   In S23, it is determined whether conversion has been completed for all intermediate codes. If not, the process returns to S21 and the same processing is repeated.

次に、こうして実行形式のコードに変換された制御プログラムを基本ユニット100が実行する場合の処理について図10を参照して説明する。   Next, processing in the case where the basic unit 100 executes the control program thus converted into the executable code will be described with reference to FIG.

S31では、制御プログラムから命令語を取得する。S32では、S31の命令語のオペランドで指定された拡張ユニット300が実際に存在するか否かを実ユニット設定情報に基づき判別する。この処理は上述したS22の処理の際に組み込まれたものである。拡張ユニット300が存在する場合はS33へ進み、命令語の処理を実行する。つまり、この命令語が処理対象から除外されずに動作する。存在しない場合はS34へ進み、未確認時の処理を行う。   In S31, an instruction word is acquired from the control program. In S32, it is determined based on the actual unit setting information whether or not the extension unit 300 specified by the operand of the instruction word in S31 actually exists. This process is incorporated in the process of S22 described above. If the expansion unit 300 exists, the process proceeds to S33 to execute the instruction word processing. That is, this command word operates without being excluded from the processing target. If it does not exist, the process proceeds to S34, and the process when not confirmed is performed.

S34では、その命令語を実行せずにS35へ進む。つまり、この命令語が処理対象から除外されるように動作する。なお、上述したように、その命令語を実行しても、その実行結果が拡張ユニット300に伝わらなければ足りる。その際、実際に存在していない拡張ユニット300の処理を実行しなかったことを報知してもよい。報知は、例えば、表示部3による表示であってもよいし、エラーLEDやエラーリレー等による報知でもよい。報知を行うことで、拡張ユニット300の有無を認識し、その認識結果に基づいて制御プログラムが実行されていることをユーザに認識させることができる。   In S34, the instruction word is not executed and the process proceeds to S35. That is, it operates so that this instruction word is excluded from the processing target. As described above, even if the instruction word is executed, it is sufficient if the execution result is not transmitted to the expansion unit 300. In that case, you may alert | report that the process of the expansion unit 300 which does not actually exist was not performed. The notification may be, for example, display by the display unit 3, or may be notification by an error LED or an error relay. By performing the notification, the presence or absence of the extension unit 300 can be recognized, and the user can be made aware that the control program is being executed based on the recognition result.

S35では、制御プログラムの全命令語の処理が完了したか否かを判定し該当しない場合はS31へ戻って次の命令語を処理し、該当する場合は1単位の処理(1スキャン)を終了する。   In S35, it is determined whether or not processing of all instruction words in the control program has been completed. If not, the process returns to S31 to process the next instruction word, and if applicable, ends one unit of processing (one scan). To do.

本例では、コンパイル時に実行可能判断を組み込む方式としたが、ラダー図の作成時に、そのプログラムの文法上、拡張ユニット300が実際に接続されていることを条件とした処理の定義を許容するようにしてもよい。   In this example, an executable judgment is incorporated at the time of compilation. However, when creating a ladder diagram, it is allowed to define a process on the condition that the extension unit 300 is actually connected in the grammar of the program. It may be.

例えば、図11の例では、図5に例示したラダー図80aについて、#1の想定拡張ユニットが実際に存在するか否かを判断するコントロールリレーCRが追加されており、#1の想定拡張ユニットが実際に存在することを条件として後続の処理を実行させるように定義されている。この場合も、コントロールリレーCRの対象は接続予約の対象である拡張ユニットに限る必要はない。   For example, in the example of FIG. 11, a control relay CR that determines whether or not the assumed extension unit # 1 actually exists is added to the ladder diagram 80a illustrated in FIG. Is defined so that subsequent processing is executed on the condition that it actually exists. Also in this case, the target of the control relay CR need not be limited to the expansion unit that is the target of the connection reservation.

このようなプログラミングを可能とすることで、ユーザの意図どおりに実行可能判断を行うようにすることができる。   By enabling such programming, it is possible to make an executable determination as intended by the user.

なお、本実施形態では、拡張ユニット300が実際には接続されていなかった場合、その拡張ユニット300に関する制御プログラムの処理を実行しないようにしたが、例えば、制御プログラムの処理は実行するが、出力リフレッシュにおいて、その拡張ユニット300に対してデータを出力しない、という方策も採用可能である。   In the present embodiment, when the expansion unit 300 is not actually connected, the control program process related to the expansion unit 300 is not executed. For example, the control program process is executed, but the output is not performed. It is also possible to adopt a measure not to output data to the expansion unit 300 in the refresh.

Claims (8)

基本ユニットと、該基本ユニットに接続される複数の拡張ユニットとを有し、外部に接続されるプログラム作成支援装置から送信された該基本ユニット及び該複数の拡張ユニットに対する設定情報を取得し、取得した設定情報に基づき動作するプログラマブルコントローラにおいて、
前記プログラム作成支援装置にて作成され、前記プログラマブルコントローラに送られる前記設定情報は、
前記複数の拡張ユニットの各々を識別するための順序性をもつ識別情報、及び、該識別情報により識別される拡張ユニットに対する処理が記述された制御プログラムと、
前記基本ユニットへの接続が想定される複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を示すユニット構成と、
前記ユニット構成に含まれる複数の拡張ユニットの中から、前記基本ユニットに対する接続未確定である接続未確定拡張ユニットを指定する指定情報と、
が含まれており、
前記プログラム作成支援装置から前記設定情報を取得する設定情報取得手段と、
前記プログラマブルコントローラにおいて前記基本ユニットに実際に接続されている複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を特定する特定手段と、
前記特定手段により特定された複数の拡張ユニットの種類と、前記設定情報取得手段により取得した前記設定情報に含まれる前記ユニット構成における複数の拡張ユニットの種類とを、前記基本ユニットに対する接続順序に沿って照合するとともに、該設定情報に含まれる前記指定情報にて指定された前記接続未確定拡張ユニットについては、該接続未確定拡張ユニットの種類に加えて、該設定情報に含まれる前記ユニット構成における接続順序に沿って次の拡張ユニットの種類も併せて照合する照合手段と、
前記照合手段の照合結果に基づいて、前記プログラマブルコントローラにおいて前記接続未確定拡張ユニットに対応する拡張ユニットが前記基本ユニットに実際に接続されていないと判断された場合、該拡張ユニットに割り当てるべき識別情報を欠番にした上で、前記基本ユニットに対する接続順序に沿って該拡張ユニットの次の拡張ユニットに対して該欠番にした識別情報の次の識別情報が割り当てられるように、前記特定手段により特定された複数の拡張ユニットの各々に対して前記識別情報を割り当てる割当手段と、
前記割当手段により割り当てを飛ばした識別情報に対応する特定の命令が処理対象から除外されるように前記制御プログラムを実行する制御手段と、
を備えることを特徴とするプログラマブルコントローラ。
It has a basic unit and a plurality of extension units connected to the basic unit, and acquires and acquires setting information for the basic unit and the plurality of extension units transmitted from the program creation support apparatus connected to the outside In the programmable controller that operates based on the set information,
Created by the program creation support apparatus, the setting information sent to the programmable controller,
Identification information having order for identifying each of the plurality of extension units , and a control program in which processing for the extension unit identified by the identification information is described;
A unit configuration indicating a type of each of the plurality of extension units assumed to be connected to the basic unit , and a connection order of each of the plurality of extension units to the basic unit ;
From among the plurality of expansion units contained in the unit configuration, the specifying information connection to the basic unit to specify the connection undetermined expansion unit is unconfirmed,
Is included,
Setting information acquisition means for acquiring the setting information from the program creation support device;
A specifying means for specifying a type of each of the plurality of extension units actually connected to the basic unit in the programmable controller, and a connection order of each of the plurality of extension units to the basic unit ;
The types of the plurality of extension units specified by the specifying unit and the types of the plurality of extension units in the unit configuration included in the setting information acquired by the setting information acquisition unit are arranged in the order of connection to the basic unit. For the unconfirmed connection extension unit specified in the specification information included in the setting information, in addition to the type of the connection unconfirmed extension unit, the unit configuration included in the setting information Collation means for collating the types of the next expansion units along the connection order ;
Identification information to be assigned to the extension unit when it is determined that the extension unit corresponding to the unconfirmed connection extension unit is not actually connected to the basic unit in the programmable controller based on the check result of the check means Is specified by the specifying means so that the identification information next to the identification information assigned to the extension unit is assigned to the next extension unit of the extension unit in the order of connection to the basic unit. Assigning means for assigning the identification information to each of the plurality of extension units;
Control means for executing the control program so that a specific instruction corresponding to the identification information skipped by the assigning means is excluded from processing targets ;
Programmable controller, characterized in that it comprises a.
前記割当手段は、前記照合手段の照合結果に基づいて、前記プログラマブルコントローラにおいて前記接続未確定拡張ユニットに対応する拡張ユニットが前記基本ユニットに実際に接続されている場合に、該拡張ユニットを含めて、前記特定手段により特定された複数の拡張ユニットの各々に対して前記識別情報を割り当てることを特徴とする請求項1に記載のプログラマブルコントローラ。 Said assigning means, based on the collation result of the collating means, when said expansion unit corresponding to the connection undetermined expansion unit in the programmable controller is actually connected to the base unit, including the extension unit The programmable controller according to claim 1, wherein the identification information is assigned to each of a plurality of expansion units specified by the specifying unit . 前記特定の命令を処理対象から除外して動作したことを報知する報知手段を備えた、
ことを特徴とする請求項1または2に記載のプログラマブルコントローラ。
Provided with an informing means for informing that the specific command was excluded from processing and operated.
The programmable controller according to claim 1 or 2 characterized by things.
前記制御プログラムの中間コードを、前記接続未確定拡張ユニットに関する処理について、該接続未確定拡張ユニットが実際に存在するか否かを判断する処理を含む、実行形式のコードに変換する変換手段を備えた、
ことを特徴とする請求項1乃至のいずれか1項に記載のプログラマブルコントローラ。
Conversion means for converting the intermediate code of the control program into an executable code including processing for determining whether or not the connection unconfirmed extension unit actually exists for processing related to the connection unconfirmed expansion unit The
The programmable controller according to any one of claims 1 to 3 .
請求項1に記載のプログラマブルコントローラの基本ユニットに接続可能なプログラム作成支援装置であって、
前記接続未確定拡張ユニットの対象となる拡張ユニットの、ユーザによる指定を受け付ける指定受付手段と、
前記指定受付手段で受け付けた前記接続未確定拡張ユニットを示す情報を含む前記設定情報を前記基本ユニットに送信する手段と、
を備えたことを特徴とするプログラム作成支援装置。
A program creation support device connectable to the basic unit of the programmable controller according to claim 1,
Designation accepting means for accepting designation by the user of the extension unit that is the target of the unconfirmed extension unit;
Means for transmitting the setting information including information indicating the unconfirmed connection extension unit received by the designation receiving means to the basic unit;
A program creation support apparatus characterized by comprising:
ユーザの操作に基づいて、制御プログラムを編集する編集手段を備え、
前記編集手段は、
前記接続未確定拡張ユニットが実際に前記基本ユニットに接続されていることを条件とした処理の定義を許容する、
ことを特徴とする請求項に記載のプログラム作成支援装置。
An editing means for editing the control program based on a user operation,
The editing means includes
Allows definition of processing on condition that the unconfirmed extension unit is actually connected to the basic unit;
The program creation support apparatus according to claim 5 .
請求項1に記載のプログラマブルコントローラの基本ユニットに接続可能なプログラム作成支援装置を、
前記接続未確定拡張ユニットの対象となる拡張ユニットの、ユーザによる指定を受け付ける指定受付手段、
前記指定受付手段で受け付けた前記接続未確定拡張ユニットを示す情報を含む前記設定情報を前記基本ユニットに送信する手段、
として機能させるプログラム。
A program creation support device connectable to the basic unit of the programmable controller according to claim 1,
Designation accepting means for accepting designation by the user of the extension unit that is the target of the unconfirmed extension unit;
Means for transmitting the setting information including information indicating the unconfirmed extension unit received by the designation receiving means to the basic unit;
Program to function as.
基本ユニットと、該基本ユニットに接続される複数の拡張ユニットとを有し、外部に接続されるプログラム作成支援装置から送信された該基本ユニット及び該複数の拡張ユニットに対する設定情報を取得し、取得した設定情報に基づき動作するプログラマブルコントローラにおける基本ユニットであって、
前記プログラム作成支援装置にて作成され、前記プログラマブルコントローラに送られる前記設定情報は、
前記複数の拡張ユニットの各々を識別するための順序性をもつ識別情報、及び、該識別情報により識別される拡張ユニットに対する処理が記述された制御プログラムと、
前記基本ユニットへの接続が想定される前記複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を示すユニット構成を示すユニット構成と、
前記ユニット構成に含まれる複数の拡張ユニットの中から、前記基本ユニットに対する接続未確定である接続未確定拡張ユニットを指定する指定情報と、
が含まれており、
前記プログラム作成支援装置から前記設定情報を取得する設定情報取得手段と、
前記プログラマブルコントローラにおいて前記基本ユニットに実際に接続されている複数の拡張ユニットの各々の種類、及び、該複数の拡張ユニットの各々の前記基本ユニットに対する接続順序を特定する特定手段と、
前記特定手段により特定された複数の拡張ユニットの種類と、前記設定情報取得手段により取得した前記設定情報に含まれる前記ユニット構成における複数の拡張ユニットの種類とを、前記基本ユニットに対する接続順序に沿って照合するとともに、該設定情報に含まれる前記指定情報にて指定された前記接続未確定拡張ユニットについては、該接続未確定拡張ユニットの種類に加えて、該設定情報に含まれる前記ユニット構成における接続順序に沿って次の拡張ユニットの種類も併せて照合する照合手段と、
を備え、
前記照合手段の照合結果に基づいて、前記プログラマブルコントローラにおいて前記接続未確定拡張ユニットに対応する拡張ユニットが前記基本ユニットに実際に接続されていないと判断された場合、該拡張ユニットに割り当てるべき識別情報を欠番にした上で、前記基本ユニットに対する接続順序に沿って該拡張ユニットの次の拡張ユニットに対して該欠番にした識別情報の次の識別情報が割り当てられるように、前記特定手段により特定された複数の拡張ユニットの各々に対して前記識別情報を割り当てる割当手段と、
前記割当手段により割り当てを飛ばした識別情報に対応する特定の命令が処理対象から除外されるように前記制御プログラムを実行する制御手段と、
を備えることを特徴とする基本ユニット。
It has a basic unit and a plurality of extension units connected to the basic unit, and acquires and acquires setting information for the basic unit and the plurality of extension units transmitted from the program creation support apparatus connected to the outside A basic unit in a programmable controller that operates based on the set information ,
Created by the program creation supporting device, the Setting Information sent to the programmable controller,
Identification information having order for identifying each of the plurality of extension units , and a control program in which processing for the extension unit identified by the identification information is described;
A unit configuration indicating a unit configuration indicating a type of each of the plurality of extension units assumed to be connected to the basic unit , and a connection order of each of the plurality of extension units to the basic unit ;
From among the plurality of expansion units contained in the unit configuration, the specifying information connection to the basic unit to specify the connection undetermined expansion unit is unconfirmed,
Is included,
Setting information acquisition means for acquiring the setting information from the program creation support device;
A specifying means for specifying a type of each of the plurality of extension units actually connected to the basic unit in the programmable controller, and a connection order of each of the plurality of extension units to the basic unit ;
The types of the plurality of extension units specified by the specifying unit and the types of the plurality of extension units in the unit configuration included in the setting information acquired by the setting information acquisition unit are arranged in the order of connection to the basic unit. For the unconfirmed connection extension unit specified in the specification information included in the setting information, in addition to the type of the connection unconfirmed extension unit, the unit configuration included in the setting information Collation means for collating the types of the next expansion units along the connection order ;
With
Identification information to be assigned to the extension unit when it is determined that the extension unit corresponding to the unconfirmed connection extension unit is not actually connected to the basic unit in the programmable controller based on the check result of the check means Is specified by the specifying means so that the identification information next to the identification information assigned to the extension unit is assigned to the next extension unit of the extension unit in the order of connection to the basic unit. Assigning means for assigning the identification information to each of the plurality of extension units;
Control means for executing the control program so that a specific instruction corresponding to the identification information skipped by the assigning means is excluded from processing targets ;
Basic unit, characterized in that it comprises a.
JP2012194556A 2012-09-04 2012-09-04 Programmable controller, program creation support device, program, and basic unit Active JP5992776B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012194556A JP5992776B2 (en) 2012-09-04 2012-09-04 Programmable controller, program creation support device, program, and basic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012194556A JP5992776B2 (en) 2012-09-04 2012-09-04 Programmable controller, program creation support device, program, and basic unit

Publications (2)

Publication Number Publication Date
JP2014052672A JP2014052672A (en) 2014-03-20
JP5992776B2 true JP5992776B2 (en) 2016-09-14

Family

ID=50611145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012194556A Active JP5992776B2 (en) 2012-09-04 2012-09-04 Programmable controller, program creation support device, program, and basic unit

Country Status (1)

Country Link
JP (1) JP5992776B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016030968A1 (en) * 2014-08-26 2016-03-03 三菱電機株式会社 Equipment management device, equipment management method, and program
JP5843932B1 (en) * 2014-09-12 2016-01-13 三菱電機株式会社 Programmable controller
JP6484015B2 (en) * 2014-12-02 2019-03-13 株式会社キーエンス Programmable logic controller and control method thereof
JP6470955B2 (en) * 2014-12-08 2019-02-13 株式会社キーエンス Programmable controller and programmable controller expansion unit
JP6535459B2 (en) * 2014-12-08 2019-06-26 株式会社キーエンス Programmable logic controller, basic unit, control method and program
US10175673B2 (en) 2015-04-06 2019-01-08 Mitsubishi Electric Corporation Programmable controller system
JP6757386B2 (en) 2018-10-23 2020-09-16 株式会社キーエンス Programmable logic controller and program creation support device
JP7374380B1 (en) * 2022-10-26 2023-11-06 三菱電機株式会社 Programmable controllers and manufacturing systems

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1039904A (en) * 1996-07-26 1998-02-13 Toyo Electric Mfg Co Ltd Programmable controller
JP3733737B2 (en) * 1998-03-31 2006-01-11 富士電機機器制御株式会社 Programmable controller and recording medium
JP5153437B2 (en) * 2008-04-24 2013-02-27 三菱電機株式会社 Control program creation device

Also Published As

Publication number Publication date
JP2014052672A (en) 2014-03-20

Similar Documents

Publication Publication Date Title
JP5992776B2 (en) Programmable controller, program creation support device, program, and basic unit
JP5039428B2 (en) Programmable controller and PLC system
US20120169479A1 (en) Rfid system, rfid cable system, and rfid cable laying method
JP5859173B1 (en) Engineering tool, program editing device, and program editing system
EP1956449A2 (en) Numerical controller
JP4877068B2 (en) Software development support program, software development support method
US20070078538A1 (en) Debug device
JP5849592B2 (en) Programmable controller system, programming device thereof, programmable controller, program, and debugging method
US20150277413A1 (en) System construction support apparatus
US11165745B2 (en) Control system, controller, and control method
JP5992777B2 (en) Programmable controller, program creation support device, and program
JP3805776B2 (en) Graphical programming device and programmable display
US11960925B2 (en) Program generating device, program generating method, and information storage medium
JP6245429B2 (en) Program development support apparatus and computer program
JP5153437B2 (en) Control program creation device
JP4767309B2 (en) Information processing apparatus, information processing method, and computer program
EP3101537A1 (en) Control device, control system, control method for control device, and control method for control system
JP6469330B1 (en) MONITOR SUPPORT DEVICE, MONITOR SUPPORT METHOD, AND MONITOR SUPPORT PROGRAM
JP5962086B2 (en) PLC system, information display method, PLC, and maintenance apparatus
JP5978775B2 (en) PROGRAMMABLE CONTROLLER, ITS SUPPORT DEVICE, PROGRAM, PROGRAM TRANSFER METHOD
CN113094071B (en) Micro control unit, control method thereof and firmware upgrading method thereof
JP2009193276A (en) Ladder program creation device and ladder program creation execution system using it
JP4462402B2 (en) Program development support apparatus, processing method, program and recording medium for programmable controller
CN112860307B (en) Version management system, method and non-volatile computer readable recording medium
CN114730167B (en) PLC system construction auxiliary program, operation terminal readable storage medium, and PLC system construction auxiliary device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150311

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20150319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160729

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160818

R150 Certificate of patent or registration of utility model

Ref document number: 5992776

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250