WO2015045004A1 - プログラマブルコントローラおよびプログラマブルコントローラの制御方法 - Google Patents

プログラマブルコントローラおよびプログラマブルコントローラの制御方法 Download PDF

Info

Publication number
WO2015045004A1
WO2015045004A1 PCT/JP2013/075716 JP2013075716W WO2015045004A1 WO 2015045004 A1 WO2015045004 A1 WO 2015045004A1 JP 2013075716 W JP2013075716 W JP 2013075716W WO 2015045004 A1 WO2015045004 A1 WO 2015045004A1
Authority
WO
WIPO (PCT)
Prior art keywords
programmable controller
memory
devices
mode information
network
Prior art date
Application number
PCT/JP2013/075716
Other languages
English (en)
French (fr)
Inventor
勉 堀田
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to KR1020167006499A priority Critical patent/KR101655727B1/ko
Priority to PCT/JP2013/075716 priority patent/WO2015045004A1/ja
Priority to CN201380079753.XA priority patent/CN105579920B/zh
Priority to US14/910,713 priority patent/US10054926B2/en
Priority to EP13894543.1A priority patent/EP3012700B1/en
Priority to JP2015538657A priority patent/JP5921781B2/ja
Priority to TW103101563A priority patent/TWI550372B/zh
Publication of WO2015045004A1 publication Critical patent/WO2015045004A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/21Pc I-O input output
    • G05B2219/21053Each unit, module has unique identification code, set during manufacturing, fMAC address
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25296Identification module, type connected I-O, device

Definitions

  • the present invention relates to a programmable controller and a programmable controller control method that facilitates the construction and operation of an automatic machine by automatically giving a device driver necessary for operation to a device connected to a network.
  • a controller such as a programmable logic controller (PLC) or a motion controller is used.
  • PLC programmable logic controller
  • Industrial automatic machines such as machine tools and industrial robots used in the FA (Factor Automation) field
  • Autonomous robots and general-purpose automatic machines such as various automatic equipment
  • controllers are connected to various input devices such as sensors and switches that input signals to the controller.
  • various output devices such as a motor and a display controlled by a controller are connected.
  • the controller is also equipped with a program that describes commands (instructions) to these input / output devices.
  • the automatic machine operates when a command (instruction) described in the program is transmitted to the input / output device.
  • the above input / output device is connected to the input / output connector (ie, input / output port) of the controller.
  • the program creator needs to accurately grasp which (and what number) input / output port of the controller is connected to which type of input / output device.
  • the software modules and operation programs used on the controller were accurately set. Otherwise, the controller cannot send the appropriate command (instruction) to the device and control it correctly.
  • the software module related to the device includes, for example, a device driver.
  • a programmable controller and various devices are connected to each other, and a device driver for controlling them is a programmable controller. And need to be applied to various devices. Therefore, workers from the connection of various devices to settings of various devices and programmable controllers, restarting when trouble occurs, are carried out by workers at the operation site of the automatic machine system, but as more devices connect, The work cost required for start-up and restarting when a problem occurs increases.
  • a plug-and-play function which is a mechanism that allows a user to use a connected device typified by USB or IEEE1394 without making any special settings, as a method for reducing the work cost when constructing a system.
  • An invention used for a programmable controller has been devised.
  • a GUID Global Unique Identifier
  • a GUID is an identifier that can uniquely identify a device in the world without duplication. In Patent Document 1, it is specified by collecting the GUID of the connected device.
  • a technology for automatically linking and using software modules necessary for a device and a device driver that is a group of device parameters and setting information is disclosed.
  • Patent Document 1 determination of a software module to be used when a plurality of software modules described above can be provided to a specific device is performed manually using a GUI.
  • a GUI graphical user interface
  • the operation by the user is assumed. For this reason, there is a problem that the cost until operation increases as the system scale increases.
  • the present invention has been made in view of the above, and even when there are a plurality of software module candidates for specifying a device driver to be linked, the device driver can be automatically linked, and the plug and play of the connected device can be performed. It aims at obtaining the programmable controller which implement
  • the present invention provides a programmable controller connected to a device to be controlled via a network, the device identifier and the device via the network.
  • a controller that requests the device to notify mode information that defines the function and operation method used by the device, and stores the identifier and the mode information that the device has notified via the network in response to the request.
  • a storage unit that stores the identifier and the mode information that the device has notified via the network in response to the request.
  • the programmable controller according to the present invention has an effect that the device can be used simply by connecting with the plug and play function, the user can easily construct the system, and the cost required for system operation can be reduced.
  • FIG. 1 is a diagram showing a configuration of a system in which various devices to be controlled and a database server are connected to a programmable controller according to an embodiment of the present invention via a network.
  • FIG. 2 is a flowchart showing a processing flow until a connected device can be used by the plug and play function in the embodiment of the present invention.
  • FIG. 3 is a flowchart showing the flow of processing of the plug and play function after the programmable controller is connected to the network in the embodiment of the present invention.
  • FIG. 4 is a diagram showing a detailed configuration of the programmable controller according to the embodiment of the present invention.
  • FIG. 5 is a diagram showing an example of a specific configuration of the system according to the embodiment of the present invention.
  • FIG. 1 shows a basic configuration in which a programmable controller 10 and devices 21, 22, and 23 which are various devices controlled by the programmable controller 10 are connected by a network 30 as a configuration of an automatic machine according to an embodiment of the present invention. It is a figure which shows a structure.
  • the devices 21, 22, and 23 are, for example, sensors, vision sensors, robots, servo motors, inverters, and the like.
  • a programmable controller 10 is a programmable controller that is the center of control of an automatic machine.
  • Devices 21, 22, and 23 are various devices that operate as system elements under the control of the programmable controller 10.
  • the network 30 is a network 30 serving as a communication medium between the programmable controller 10 and the devices 21, 22, and 23 that are various devices to be controlled.
  • the database server 40 is connected to the programmable controller 10 and the devices 21, 22, and 23 via the network 30, and the devices 21, 22, and 23, which are various devices, and device driver data corresponding to them are stored. It has a database server.
  • FIG. 1 is a simplified diagram showing an example of a specific configuration of the system shown in FIG.
  • a hub 31 exists at the center of the network 30.
  • FIG. 5 shows a state in which the devices 21, 22, and 23 are not yet connected to the network 30, but
  • FIG. 1 shows the state after all the devices 21, 22, and 23 in FIG. 5 are connected. The configuration is shown.
  • FIG. 4 is a diagram showing a detailed configuration of the programmable controller 10.
  • the programmable controller 10 includes a communication controller 60, a file system controller 61, a program execution unit 62, a link memory 50, a program memory 51, a control unit 70, and a storage unit 71.
  • the functions of the communication controller 60, the file system controller 61, the program execution unit 62, and the control unit 70 may be realized by the same CPU.
  • FIG. 2 is a flowchart showing a flow of processing of the programmable controller 10 from notification of the GUID that is an identifier and mode information that defines the function and operation method used by the device until the device is made available. is there.
  • the devices 21, 22, and 23 connected to the network 30 notify the programmable controller 10 of the GUID and mode information that are identifiers. Then, the programmable controller 10 stores the GUID and the mode information, which are the notified identifiers, in order to specify the setting for making the device usable and the device driver that is a group of one or more software modules. It memorize
  • the programmable controller 10 uniquely acquires a device driver from the database server 40 based on the GUID and the mode information that are notified identifiers stored in the storage unit 71 (step S2).
  • the database server 40 holds device driver data corresponding to various devices, and each device driver further includes one or more software modules for controlling the connected devices.
  • the programmable controller 10 can uniquely identify a software module based on mode information that defines functions and operation methods used by devices connected to the network 30 from software modules included in each device driver. It is. This eliminates the need for manual operations that have been required in the past from the connection of the device to the availability of the device.
  • the software module included in the acquired device driver and selected based on the mode information is stored in the program memory 51. Further, a control I / O memory area is allocated to the link memory 50 in the programmable controller 10 for each software module stored in the program memory 51. As a result, the software modules corresponding to the devices 21, 22, and 23 are set to be executable on the programmable controller 10 (step S3). Note that since a plurality of functions can be executed depending on the device, it is necessary to provide a plurality of software modules because software modules suitable for execution in the programmable controller 10 differ depending on the functions used. That is, there may be a plurality of software modules stored in the program memory 51 for one device. Even in such a case, each I / O memory area is allocated in the link memory 50 corresponding to each software module.
  • step S4 If the setting information necessary for the devices 21, 22, and 23 such as device parameters exists in the device driver, it is transferred to the devices 21, 22, and 23 via the network 30, and the connected devices 21, 22, and 22 are transferred. And 23 are available (step S4). That is, plug and play of the devices 21, 22, and 23 is realized.
  • the devices 21, 22, and 23 have a state of a link completion state as a state in which the device drivers are linked. When the devices 21, 22, and 23 are not in the link completion state, when their connection to the network 30 is detected or when a notification request is received from the programmable controller 10, notification of their GUID and mode information To implement.
  • the devices 21, 22, and 23 stop the notification of their GUID and mode information via the network 30 at the time when the link is completed, and the notification is received even when the notification request from the programmable controller 10 is received. Not implemented.
  • FIG. 3 is a flowchart showing a process flow of the plug and play function after the programmable controller 10 is connected to the network 30.
  • step S11 When the programmable controller 10 detects that it is connected to the network 30, the controller 70 moves to all devices connected to it via the network 30, in the example of FIG. 1, to the devices 21, 22, and 23. A notification request is transmitted (FIG. 3, step S11).
  • step S12 it is determined whether or not notifications from one or more devices have been received.
  • step S12 Yes
  • a series of processing shown in the flowchart of FIG. 2 is performed in order to make the notified devices available (step S13).
  • step S12 If the notification from the device cannot be received (step S12: No), the process goes to standby and returns to step S12.
  • step S13 it is determined whether or not all the notified devices can be used (step S14). Until all the notified devices are available (step S14: No), step S13 (procedure of FIG. 2) is repeated for all the notified devices.
  • step S14 Yes
  • the process returns to step S11 and is programmable.
  • the control unit 70 of the controller 10 controls the communication controller 60 to retransmit the notification request to the device via the network 30.
  • step S14 the programmable controller 10 transmits a notification request to the devices again via the network 30 (step S11). This makes it possible to detect device connection even when there are many situations where many devices are connected, or when receiving notifications from other devices fails.
  • the load on the network 30 may be distributed by shifting the timing of notification of the GUID and mode information that are identifiers from the device.
  • an I / O memory file having I / O information for controlling the device as the contents of the file is allocated to the link memory 50 which is a dedicated memory area for each device.
  • the link memory 50 is managed by a file system that can be used for general purposes, and manages the I / O memory file in file units via the file system controller 61.
  • an I / O memory file having the I / O memory as a file content is created on the link memory 50 in the programmable controller 10 (FIG. 2, step S3).
  • the software module operating on the programmable controller 10 included in the device driver acquired from the database server 40 in step S2 of FIG. 2 and the I / O memory file are linked and used as control information.
  • the control unit 70 controls as described above.
  • the control unit 70 controls the program execution unit 62 to refer to and change the I / O memory file via the file system controller 61.
  • the file name of the I / O memory file created in step S3 in FIG. 2 is a unique file name determined based on the GUID of the device to which the I / O memory is allocated.
  • the memory allocated to the device connected to the automatic machine system increases in management cost as the system scale increases. Therefore, by managing the I / O memory as a file as in the present embodiment, the link I / O memory is managed. This makes it easier to manage / O memory.
  • the program execution unit 62 refers to the data of the I / O memory file (device 21) allocated via the file system controller 61. After the execution of the software module for controlling the device 21 (device 21) is completed, if a change request to the I / O memory file (device 21) has occurred, the contents are written back via the file system controller 61. . Note that the program execution unit 62 may execute a software module for controlling the device, for example, using communication from the device as a trigger.
  • mode information specifying the function and operation method used by the device is provided in the information collected from the device, and combined with the GUID collect.
  • the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention in the implementation stage.
  • the above embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent requirements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment, the problem described in the column of the problem to be solved by the invention can be solved, and is described in the column of the effect of the invention. When an effect is obtained, a configuration from which this configuration requirement is deleted can be extracted as an invention.
  • the constituent elements over different embodiments may be appropriately combined.
  • the programmable controller according to the present invention is useful for a programmable controller having a plug-and-play function suitable for system construction, and is particularly suitable for construction of an automatic machine system.

Abstract

実施の形態のプログラマブルコントローラ(10)は、制御対象となるデバイス(21~23)とネットワーク(30)を介して接続されるプログラマブルコントローラ(10)であって、前記ネットワーク(30)を介して、前記デバイス(21~23)の識別子並びに当該デバイス(21~23)が利用する機能及び動作方法を規定するモード情報を通知するように当該デバイス(21~23)に要求する制御部(70)と、前記要求に応じて前記デバイス(21~23)が前記ネットワーク(30)を介して通知してきた前記識別子及び前記モード情報を記憶する記憶部(71)と、を備える。

Description

プログラマブルコントローラおよびプログラマブルコントローラの制御方法
 本発明は、ネットワークに接続したデバイスに対して稼動に必要なデバイスドライバを自動的に与えることで自動機の構築・運用を容易とするプログラマブルコントローラおよびプログラマブルコントローラの制御方法に関するものである。
 以下のような自動機一般を構築する際には、例えばPLC(Programmable Logic Controller)やモーションコントローラなどのコントローラが利用される。
・FA(Factory Automation)分野で用いられる工作機械
・産業用ロボットなどの産業用自動機
・自律ロボット
・各種自動設備などの一般用途の自動機
 これらコントローラには、コントローラに信号を入力するセンサやスイッチなどの各種入力デバイスが接続される。同様にして、コントローラにより制御されるモータや表示器などの各種出力デバイスが接続される。また、コントローラには、それら入出力デバイスへの指令(指示)を記述するプログラムが搭載されている。プログラムに記述される指令(指示)が入出力デバイスに伝えられることにより、自動機は動作する。
 上記の入出力デバイスは、コントローラの入出力コネクタ(即ち、入出力ポート)に接続される。従来のコントローラを利用する場合に、プログラム作成者は、コントローラのどの(何番目の)入出力ポートにどの種類の入出力デバイスを接続するか(したか)を正確に把握する必要があった。その上で、コントローラ上で使用される、デバイスに係るソフトウェアモジュールや動作プログラムの設定が、正確に行われた。そうしなければ、コントローラが該デバイスに適切な指令(指示)を送って正しく制御することができないのである。なお、デバイスに係るソフトウェアモジュールには、例えばデバイスドライバが含まれる。
 従来、自動機のシステムを構築・運用するには、プログラマブルコントローラおよび各種デバイス(センサ,ビジョンセンサ,ロボット,サーボモータ,インバータ等)を相互に接続し、それらを制御するためのデバイスドライバをプログラマブルコントローラ及び各種デバイスへ与える必要がある。そのため、各種デバイスの接続から各種デバイスおよびプログラマブルコントローラへの設定、トラブル発生時の再稼動といった作業を自動機のシステムの稼動現場の作業者が実施しているが、接続する各種デバイスが多くなるほど、立ち上げや問題発生時の再稼動までにかかる作業コストは増大する。
 システムを構築する際の作業コストを低減する手法として、USBやIEEE1394に代表される接続したデバイスに対して、利用者が特殊な設定をすることなく利用可能とする仕組みであるプラグアンドプレイ機能をプログラマブルコントローラに利用した発明が考案されている。GUID(Global Unique Identifier)とは、世界で重複することなく一意にデバイスを識別可能な識別子のことであり、特許文献1においては、接続したデバイスのGUIDを収集することで、収集したGUIDにより特定したデバイスに対して必要なソフトウェアモジュールおよびデバイスパラメータや設定情報のまとまりであるデバイスドライバを自動的にリンクし、利用可能とする技術を開示している。
特開2002-7299号公報
 しかしながら、上記した特許文献1におけるデバイスドライバの自動リンクでは特定の状況では自動的にリンクしているとは言えず、利用者による操作を前提としている。
 例えば、デバイスによっては複数の機能を実行可能であるため、利用する機能によってプログラマブルコントローラ内で実行するのに適したソフトウェアモジュールが異なることから複数のソフトウェアモジュールを提供する必要がある。
 特許文献1においては、特定のデバイスに上述した複数のソフトウェアモジュールが提供可能な際に利用するソフトウェアモジュールの決定を、GUIを用いて人の手で行っている。すなわち、従来のプログラマブルコントローラにおいて複数のデバイスドライバが利用可能である場合は、利用者による操作を前提としていた。そのため、システム規模が大きくなると稼動までのコストが増大するという問題があった。
 本発明は、上記に鑑みてなされたものであって、リンクするデバイスドライバを特定するのに複数のソフトウェアモジュールの候補がある場合でも、デバイスドライバの自動リンクを可能とし、接続デバイスのプラグアンドプレイを実現するプログラマブルコントローラを得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、制御対象となるデバイスとネットワークを介して接続されるプログラマブルコントローラであって、前記ネットワークを介して、前記デバイスの識別子並びに当該デバイスが利用する機能及び動作方法を規定するモード情報を通知するように当該デバイスに要求する制御部と、前記要求に応じて前記デバイスが前記ネットワークを介して通知してきた前記識別子及び前記モード情報を記憶する記憶部と、を備えることを特徴とする。
 本発明にかかるプログラマブルコントローラは、プラグアンドプレイ機能により、接続するだけでデバイスが利用可能となり、ユーザのシステム構築が容易となり、システム稼動までにかかるコストを削減できるという効果を奏する。
図1は、本発明の実施の形態にかかるプログラマブルコントローラに制御対象となる各種デバイスとデータベースサーバがネットワークを介して接続されたシステムの構成を示す図である。 図2は、本発明の実施の形態において接続されたデバイスがプラグアンドプレイ機能により利用可能となるまでの処理の流れを示すフローチャートである。 図3は、本発明の実施の形態において、プログラマブルコントローラがネットワークに接続されてからのプラグアンドプレイ機能の処理の流れを示すフローチャートである。 図4は、本発明の実施の形態にかかるプログラマブルコントローラの詳細な構成を示す図である。 図5は、本発明の実施形態にかかるシステムの具体的な構成の一例を示す図である。
 以下に、本発明にかかるプログラマブルコントローラおよびプログラマブルコントローラの制御方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
 図1は、本発明の実施の形態における自動機の構成として、プログラマブルコントローラ10とプログラマブルコントローラ10によって制御される各種デバイスであるデバイス21,22,および23がネットワーク30によって接続されている基本的な構成を示す図である。デバイス21,22,および23とは、具体的には、例えば、センサ、ビジョンセンサ、ロボット、サーボモータ、インバータ、などである。
 図1において、プログラマブルコントローラ10は自動機の制御の中心となるプログラマブルコントローラとなっている。デバイス21,22,および23はプログラマブルコントローラ10による制御によりシステムの要素として稼動する各種デバイスである。ネットワーク30は、プログラマブルコントローラ10と被制御対象となる各種デバイスであるデバイス21,22,および23との通信媒体となるネットワーク30である。また、データベースサーバ40は、ネットワーク30を介してプログラマブルコントローラ10、デバイス21,22,および23に接続されており、各種デバイスであるデバイス21,22,および23とそれらに対応したデバイスドライバのデータを有したデータベースサーバである。
 図1は、図5に示すシステムの具体的な構成の一例を簡素化して示した図である。図5において、ネットワーク30の中心にはハブ31が存在する。図5においては、デバイス21,22,および23がネットワーク30にまだ接続されていない状態が示されているが、図1は、図5の全てのデバイス21,22,および23が接続された後の構成を示してある。
 図4は、プログラマブルコントローラ10の詳細な構成を示す図である。プログラマブルコントローラ10は、通信コントローラ60、ファイルシステムコントローラ61、プログラム実行部62、リンクメモリ50、プログラムメモリ51、制御部70、および記憶部71を備える。なお、通信コントローラ60、ファイルシステムコントローラ61、プログラム実行部62、および制御部70は同一のCPUなどによりその機能が実現されてもよい。
 次に、本実施の形態にかかるプログラマブルコントローラ10において、プラグアンドプレイ機能がどのような処理により実現されるのかについて説明する。
 図2は、デバイスから識別子であるGUIDとデバイスが利用する機能や動作方法を規定したモード情報を通知されてから、デバイスを利用可能状態とするまでのプログラマブルコントローラ10の処理の流れを示すフローチャートである。
 まず、ネットワーク30に接続されたデバイス21,22,および23は、識別子であるGUIDとモード情報をプログラマブルコントローラ10に通知する。そして、プログラマブルコントローラ10は、デバイスを利用可能とするための設定や1つ以上のソフトウェアモジュールのまとまりであるデバイスドライバを特定するために、通知された識別子であるGUIDとモード情報を図4の記憶部71に記憶する(図2、ステップS1)。
 続いて、プログラマブルコントローラ10は、記憶部71に記憶されている通知された識別子であるGUIDおよびモード情報に基づいてデータベースサーバ40から一意にデバイスドライバを取得する(ステップS2)。データベースサーバ40は、各種デバイスに対応したデバイスドライバのデータを保持しており、さらに各デバイスドライバは、接続されたデバイスを制御する1つ以上のソフトウェアモジュールを含んでいる。プログラマブルコントローラ10は、各デバイスドライバに含まれるソフトウェアモジュールの中から、ネットワーク30に接続されたデバイスが利用する機能や動作方法を規定したモード情報に基づいて、一意にソフトウェアモジュールを特定することが可能である。これにより、デバイスの接続から当該デバイスを利用可能となるまでに、従来必要であった人手による操作が不要となる。
 取得したデバイスドライバに含まれ、モード情報に基づいて選択されたソフトウェアモジュールは、プログラムメモリ51に保存される。さらに、プログラムメモリ51に保存されたソフトウェアモジュールそれぞれに対して、プログラマブルコントローラ10内のリンクメモリ50に制御用のI/Oメモリ領域を割り付ける。これにより、デバイス21,22,および23それぞれに対応するソフトウェアモジュールをプログラマブルコントローラ10上で実行可能な状態に設定する(ステップS3)。なお、デバイスによっては複数の機能を実行可能であるため、利用する機能によってプログラマブルコントローラ10内で実行するのに適したソフトウェアモジュールが異なることから複数のソフトウェアモジュールを提供する必要がある。すなわち、1つのデバイスに対して、プログラムメモリ51に保存されるソフトウェアモジュールは複数存在する場合がある。このような場合においても、各ソフトウェアモジュールに対応してそれぞれのI/Oメモリ領域をリンクメモリ50内に割り付ける。
 そして、デバイスドライバ内にデバイスパラメータ等のデバイス21,22,および23に必要な設定情報が存在する場合はネットワーク30を介してデバイス21,22,および23へ転送し、接続したデバイス21,22,および23が利用可能となる(ステップS4)。すなわち、デバイス21,22,および23のプラグアンドプレイが実現される。
 図2のステップS1における、デバイス21,22,および23からプログラマブルコントローラ10への通知のタイミングと方法について以下に説明を行う。
 デバイス21,22,および23は、デバイスドライバがリンクされた状態としてリンク完了状態という状態を有している。デバイス21,22,および23は、リンク完了状態ではない場合は、ネットワーク30への接続を検出した場合、または、プログラマブルコントローラ10からの通知要求を受けた場合に自らのGUIDおよび、モード情報の通知を実施する。
 また、デバイス21,22,および23は、リンク完了状態となった時点でネットワーク30を介した自らのGUIDおよび、モード情報の通知を停止し、プログラマブルコントローラ10からの通知要求を受けても通知を実施しない。
 図3は、プログラマブルコントローラ10がネットワーク30に接続されてからのプラグアンドプレイ機能の処理の流れを示すフローチャートである。
 プログラマブルコントローラ10は、ネットワーク30へ接続されたことを検出した場合、制御部70が、ネットワーク30を介してそれに接続される全てのデバイス、図1の例ならば、デバイス21,22,および23へ通知要求を送信する(図3、ステップS11)。
 そして、1つ以上のデバイスからの通知を受信したか否かが判定される(ステップS12)。1つ以上のデバイスからの通知を受信した場合(ステップS12:Yes)は、通知したデバイスを利用可能とするために、図2のフローチャートで示した一連の処理を実施する(ステップS13)。
 また、デバイスからの通知を受信できない場合(ステップS12:No)は、待機となり何もせずステップS12に戻る。
 ステップS13の後、通知した全てのデバイスを利用可能としたか否かが判定される(ステップS14)。通知した全てのデバイスが利用可能となるまで(ステップS14:No)は、通知した全てのデバイスに対して、ステップS13(図2の手順)を繰り返す。
 通知した全てのデバイスが利用可能となった場合(ステップS14:Yes)、すなわち、プログラマブルコントローラ10が通知した全てのデバイスに対してプラグアンドプレイの処理を実行した後は、ステップS11にもどり、プログラマブルコントローラ10の制御部70は、通信コントローラ60を制御してネットワーク30を介してデバイスへ通知要求を再度送信する。
 本実施の形態においては、通知した全てのデバイスが利用可能となった(ステップS14:Yes)後、プログラマブルコントローラ10は、再度ネットワーク30を介してデバイスへ通知要求を送信する(ステップS11)。これにより、多数のデバイスを接続する状況が多いときや、他のデバイスからの通知の受信に失敗した場合でもデバイスの接続を検出できる。
 上記の検出方法により、定期的にネットワーク30全体に対して新たに接続されたデバイスが存在するか否かを確認するために通知要求を繰り返す方法に比べて、デバイスの検出によるネットワーク30への負荷を低減することができる。
 また、デバイスからの識別子であるGUIDとモード情報の通知はタイミングをずらすことによってネットワーク30にかかる負荷を分散してもよい。
 図2のステップS3におけるリンク用のI/Oメモリ領域の割り付けについて、図4を用いて以下に説明を行う。
 ステップS3のI/Oメモリ領域の割り付けにおいては、各デバイスに専用のメモリ領域であるリンクメモリ50にデバイスを制御するためのI/O情報をファイルの内容とするI/Oメモリファイルを割り当てる。ただし、リンクメモリ50は汎用的に利用可能なファイルシステムにより管理されており、I/Oメモリファイルをファイルシステムコントローラ61を介してファイル単位で管理する。
 プラグアンドプレイ実行時の動作として、まず、I/Oメモリをファイルの内容とするI/Oメモリファイルをプログラマブルコントローラ10内のリンクメモリ50上に作成する(図2、ステップS3)。
 続いて、図2のステップS2でデータベースサーバ40から取得したデバイスドライバに含まれるプログラマブルコントローラ10上で動作するソフトウェアモジュールと、I/Oメモリファイルをリンクして制御情報として利用する。
 図4に示すように、プログラマブルコントローラ10とデバイス21,22,および23との通信実行時は、通信コントローラ60からファイルシステムコントローラ61を介して、I/Oメモリファイルの参照及び変更が実施されるように制御部70が制御する。プログラマブルコントローラ10のプログラム実行時はプログラム実行部62からファイルシステムコントローラ61を介して、I/Oメモリファイルの参照及び変更が実施されるように制御部70が制御する。
 図2のステップS3で作成されるI/Oメモリファイルのファイル名はI/Oメモリを割り当てるデバイスのGUIDをもとに決定される一意なファイル名である。
 自動機システムに接続されるデバイスに割り当てるメモリはシステム規模が増大するほど管理にかかるコストが増大するため、本実施の形態のようにI/Oメモリをファイルとして管理することにより、リンク用のI/Oメモリを管理しやすくなる。
 加えて、デバイス単位でのモニタやロギングといった機能を利用しやすくなるといった効果も見込める。
 ステップS3のI/Oメモリ領域の割り付けとデバイス21,22,および23に対応するデバイスドライバのソフトウェアモジュールとのリンクにより、例えば、デバイス21の制御用のソフトウェアモジュール(デバイス21)を実行する場合、プログラム実行部62はファイルシステムコントローラ61を介して割り付けたI/Oメモリファイル(デバイス21)のデータを参照する。デバイス21の制御用のソフトウェアモジュール(デバイス21)の実行が完了した後、 I/Oメモリファイル(デバイス21)への変更要求が発生している場合はファイルシステムコントローラ61を介して内容を書き戻す。なお、プログラム実行部62は、例えば、デバイスからの通信をトリガとして当該デバイスの制御用のソフトウェアモジュールを実行するようにしてもよい。
 以上説明したように、本実施の形態にかかるプログラマブルコントローラおよびプログラマブルコントローラの制御方法においては、デバイスから収集する情報にデバイスの利用する機能や動作方法を特定するモード情報を設けて、GUIDと合わせて収集する。これにより、リンクするデバイスドライバを特定するのに複数のソフトウェアモジュールの候補がある場合でも、デバイスが利用する機能や動作方法を規定するモード情報から一意にソフトウェアモジュールを特定することが可能となる。これにより、物理的にデバイスをネットワークに接続する以外は、人手による操作を必要とすることなくプラグアンドプレイ機能を提供できるようにする。
 さらに、本願発明は上記実施の形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上記実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施の形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。更に、異なる実施の形態にわたる構成要素を適宜組み合わせてもよい。
 以上のように、本発明にかかるプログラマブルコントローラは、システムの構築に適したプラグアンドプレイ機能を搭載したプログラマブルコントローラに有用であり、特に、自動機システムの構築に適している。
 10 プログラマブルコントローラ、21,22,23 デバイス、30 ネットワーク、40 データベースサーバ、50 リンクメモリ、51 プログラムメモリ、60 通信コントローラ、61 ファイルシステムコントローラ、62 プログラム実行部、70 制御部、71 記憶部。

Claims (7)

  1.  制御対象となるデバイスとネットワークを介して接続されるプログラマブルコントローラであって、
     前記ネットワークを介して、前記デバイスの識別子並びに当該デバイスが利用する機能及び動作方法を規定するモード情報を通知するように当該デバイスに要求する制御部と、
     前記要求に応じて前記デバイスが前記ネットワークを介して通知してきた前記識別子及び前記モード情報を記憶する記憶部と、
     を備える
     ことを特徴とするプログラマブルコントローラ。
  2.  前記識別子及び前記モード情報に基づいて、データベースサーバから取得したデバイスドライバに含まれる前記デバイスを制御する1つ以上のソフトウェアモジュールを保持するプログラムメモリを備える
     ことを特徴とする請求項1に記載のプログラマブルコントローラ。
  3.  前記デバイスを制御するためのI/O情報が記載されるI/Oメモリファイルを保持するリンクメモリを備え、
     前記リンクメモリに前記ソフトウェアモジュールに対応する前記I/Oメモリファイルを保持するためのI/Oメモリ領域を割り付ける
     ことを特徴とする請求項2に記載のプログラマブルコントローラ。
  4.  前記I/Oメモリファイルを管理するファイルシステムコントローラと、
     前記ソフトウェアモジュールの実行時には、前記ファイルシステムコントローラを介して前記I/Oメモリファイルを参照及び変更するプログラム実行部と、
     を備える
     ことを特徴とする請求項3に記載のプログラマブルコントローラ。
  5.  前記プログラム実行部は、前記デバイスからの通信をトリガとして前記ソフトウェアモジュールを実行する
     ことを特徴とする請求項4に記載のプログラマブルコントローラ。
  6.  プログラマブルコントローラに接続されているデバイスに対して、前記デバイスの識別子並びに当該デバイスが利用する機能及び動作方法を規定するモード情報を通知するように要求するステップと、
     前記要求に応じて前記デバイスが通知してきた前記識別子及び前記モード情報を記憶するステップと、
     前記識別子及び前記モード情報に基づいて、前記プログラマブルコントローラに接続されたデータベースサーバからデバイスドライバに含まれる前記デバイスを制御する1つ以上のソフトウェアモジュールを取得するステップと、
     前記ソフトウェアモジュールに対応して前記デバイスを制御するためのI/O情報を記憶する領域を確保するステップと、
     前記ソフトウェアモジュールの実行時には、前記I/Oメモリ情報を参照及び変更するステップと、
     を備える
     ことを特徴とするプログラマブルコントローラの制御方法。
  7.  前記I/O情報を記憶する領域を確保するステップの後に、前記プログラマブルコントローラに接続されているデバイスに対して、前記デバイスの識別子並びに当該デバイスが利用する機能及び動作方法を規定するモード情報を通知するように要求するステップをさらに備える
     ことを特徴とする請求項6に記載のプログラマブルコントローラの制御方法。
PCT/JP2013/075716 2013-09-24 2013-09-24 プログラマブルコントローラおよびプログラマブルコントローラの制御方法 WO2015045004A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020167006499A KR101655727B1 (ko) 2013-09-24 2013-09-24 프로그래머블 컨트롤러 및 프로그래머블 컨트롤러의 제어 방법
PCT/JP2013/075716 WO2015045004A1 (ja) 2013-09-24 2013-09-24 プログラマブルコントローラおよびプログラマブルコントローラの制御方法
CN201380079753.XA CN105579920B (zh) 2013-09-24 2013-09-24 可编程控制器以及可编程控制器的控制方法
US14/910,713 US10054926B2 (en) 2013-09-24 2013-09-24 Programmable controller and control method of programmable controller
EP13894543.1A EP3012700B1 (en) 2013-09-24 2013-09-24 Programmable controller and control method for programmable controller
JP2015538657A JP5921781B2 (ja) 2013-09-24 2013-09-24 プログラマブルコントローラおよびプログラマブルコントローラの制御方法
TW103101563A TWI550372B (zh) 2013-09-24 2014-01-16 可程式控制器及可程式控制器之控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/075716 WO2015045004A1 (ja) 2013-09-24 2013-09-24 プログラマブルコントローラおよびプログラマブルコントローラの制御方法

Publications (1)

Publication Number Publication Date
WO2015045004A1 true WO2015045004A1 (ja) 2015-04-02

Family

ID=52742218

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/075716 WO2015045004A1 (ja) 2013-09-24 2013-09-24 プログラマブルコントローラおよびプログラマブルコントローラの制御方法

Country Status (7)

Country Link
US (1) US10054926B2 (ja)
EP (1) EP3012700B1 (ja)
JP (1) JP5921781B2 (ja)
KR (1) KR101655727B1 (ja)
CN (1) CN105579920B (ja)
TW (1) TWI550372B (ja)
WO (1) WO2015045004A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019159761A (ja) * 2018-03-13 2019-09-19 ファナック株式会社 数値制御装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6325630B2 (ja) 2016-10-28 2018-05-16 ファナック株式会社 ラダーライブラリ管理装置
JP7130369B2 (ja) * 2017-12-18 2022-09-05 日本電産サンキョー株式会社 ロボットシステム
DE102018111606A1 (de) * 2018-05-15 2019-11-21 Hermann Müller Verfahren zur Montage eines Roboter-gestützten Bearbeitungssystems und Vorrichtung hierfür

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007299A (ja) 2000-06-21 2002-01-11 Mitsubishi Electric Corp デバイス制御プログラム開発手段及び実行手段
JP2002269024A (ja) * 2001-03-14 2002-09-20 Omron Corp 制御機器並びに拡張ボード及び通信ユニット
JP2009145970A (ja) * 2007-12-11 2009-07-02 Canon Inc ドライバ管理装置、ドライバ管理方法、及びコンピュータプログラム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4138718A (en) 1977-11-14 1979-02-06 Allen-Bradley Company Numerical control system with downloading capability
US5675830A (en) 1994-02-28 1997-10-07 Eaton Corporation Addressing scheme for control network having remote address request device
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
JP3499740B2 (ja) 1998-03-17 2004-02-23 株式会社デジタル グラフィックエディター及びエディタープログラムを記録したコンピュータ読み取り可能な記録媒体
JP2000163259A (ja) 1998-12-01 2000-06-16 Babcock Hitachi Kk シミュレータ・制御ロジック構築ツール
US7130701B1 (en) 2000-05-24 2006-10-31 Schneider Automation Inc. System for remote configuration monitoring of an industrial control system
US8145634B2 (en) * 2002-01-29 2012-03-27 National Instruments Corporation Patent marking system
JP4547614B2 (ja) 2003-10-28 2010-09-22 横河電機株式会社 フィールドバスシステム
JP2007536634A (ja) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US20060064385A1 (en) 2004-08-18 2006-03-23 Susnjara Kenneth J System for purchasing CNC program-use licenses over the internet, utilizing the CNC machine control
KR100642182B1 (ko) * 2004-12-01 2006-11-02 주식회사 터보테크 단일씨피유를 이용한 씨앤씨시스템
JP2006252486A (ja) * 2005-03-14 2006-09-21 Omron Corp プログラマブル・コントローラ・システム
EP2228698B1 (en) 2005-03-14 2012-06-27 Omron Corporation Programmable controller system
CN100430848C (zh) 2005-08-24 2008-11-05 沈阳中科博微自动化技术有限公司 基于基金会现场总线高速以太网的可编程控制器系统
JP2009080736A (ja) 2007-09-27 2009-04-16 Koyo Electronics Ind Co Ltd Plc構築方法
JP2009093258A (ja) 2007-10-04 2009-04-30 Koyo Electronics Ind Co Ltd シーケンスプログラム作成方式
CN101452639A (zh) * 2007-11-30 2009-06-10 中国科学院沈阳自动化研究所 一种以太网数据采集传输方法及系统
DE102008010864A1 (de) * 2008-02-25 2009-08-27 Endress + Hauser Process Solutions Ag Verfahren zum Betreiben eines Feldgerätes
US8307093B2 (en) * 2008-06-25 2012-11-06 Microsoft Corporation Remote access between UPnP devices
DE102009012832A1 (de) 2009-03-02 2010-09-09 Khs Ag Verfahren und Vorrichtung zur automatischen Einbindung von Sensorvorrichtungen in eine zentrale Steuerung
US8457320B2 (en) 2009-07-10 2013-06-04 Alon Konchitsky Wind noise classifier
JP5508078B2 (ja) 2010-03-23 2014-05-28 メタウォーター株式会社 プログラム作成支援装置および方法ならびにプログラム
MX2013001013A (es) 2010-07-30 2013-03-07 Leviton Manufacturing Co Operacion y configuracion de sistema de control distribuido.
JP5308418B2 (ja) * 2010-09-08 2013-10-09 株式会社日立産機システム プログラマブルロジックコントローラ
BR112013008053B1 (pt) * 2011-04-01 2021-01-26 Siemens Aktiengesellschaft controlador lógico programável e método para operar um controlador lógico programável

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007299A (ja) 2000-06-21 2002-01-11 Mitsubishi Electric Corp デバイス制御プログラム開発手段及び実行手段
JP2002269024A (ja) * 2001-03-14 2002-09-20 Omron Corp 制御機器並びに拡張ボード及び通信ユニット
JP2009145970A (ja) * 2007-12-11 2009-07-02 Canon Inc ドライバ管理装置、ドライバ管理方法、及びコンピュータプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3012700A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019159761A (ja) * 2018-03-13 2019-09-19 ファナック株式会社 数値制御装置
US10878672B2 (en) 2018-03-13 2020-12-29 Fanuc Corporation Numerical controller

Also Published As

Publication number Publication date
CN105579920A (zh) 2016-05-11
JPWO2015045004A1 (ja) 2017-03-02
TWI550372B (zh) 2016-09-21
TW201512795A (zh) 2015-04-01
JP5921781B2 (ja) 2016-05-24
US20160209823A1 (en) 2016-07-21
CN105579920B (zh) 2018-04-17
EP3012700A1 (en) 2016-04-27
EP3012700B1 (en) 2019-01-02
KR20160032275A (ko) 2016-03-23
EP3012700A4 (en) 2016-12-07
US10054926B2 (en) 2018-08-21
KR101655727B1 (ko) 2016-09-07

Similar Documents

Publication Publication Date Title
US8433827B2 (en) Method for configuring fieldbus stations
US20130138818A1 (en) Method for accessing an automation system and system operating according to the method
US20150362903A1 (en) Control device and method of operating control device
US20150205280A1 (en) Process controller and updating method thereof
JP5921781B2 (ja) プログラマブルコントローラおよびプログラマブルコントローラの制御方法
CN103645678A (zh) 一种实时响应网络控制系统
JP2002268707A (ja) コントローラ及びツール並びにそれらにより構成されるシステム
US20060069452A1 (en) Configuration of modules in automation systems
CN102809948A (zh) 用于块实例化的系统和方法
US20220179386A1 (en) Control device
JP5792866B2 (ja) プロフィバスdpのマスタ装置
US11165745B2 (en) Control system, controller, and control method
US8301273B2 (en) Method for providing functions in an industrial automation system, control program and industrial automation system
CN109906440B (zh) 处理控制系统中的具有分开的冗余方案的多核心设备
CN113508346B (zh) 控制装置以及软件的部署方法
US20150236901A1 (en) Control system management apparatus
JP5725974B2 (ja) 受配電監視制御システム
US10878690B2 (en) Unified status and alarm management for operations, monitoring, and maintenance of legacy and modern control systems from common user interface
JP2006011511A (ja) 複数装置のデータ相互アクセス方法および複数装置を有するシステム
US11622015B2 (en) Method for configuring an OPC UA PubSub subscriber, automation system, computer program and computer-readable medium
WO2019244327A1 (ja) 管理装置、管理方法及びプログラム
Mayama et al. Design of firmware update system of RT-Middleware for embedded system
WO2023248074A1 (en) Infrastructure management system
JP6371651B2 (ja) データ記録システムおよび方法
JP6002021B2 (ja) スレーブ機器

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201380079753.X

Country of ref document: CN

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

Ref document number: 13894543

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015538657

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2013894543

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14910713

Country of ref document: US

ENP Entry into the national phase

Ref document number: 20167006499

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE