WO2020044909A1 - 産業機器の制御装置及び産業機器のデータ収集システム - Google Patents

産業機器の制御装置及び産業機器のデータ収集システム Download PDF

Info

Publication number
WO2020044909A1
WO2020044909A1 PCT/JP2019/029659 JP2019029659W WO2020044909A1 WO 2020044909 A1 WO2020044909 A1 WO 2020044909A1 JP 2019029659 W JP2019029659 W JP 2019029659W WO 2020044909 A1 WO2020044909 A1 WO 2020044909A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
data
control device
control
industrial equipment
Prior art date
Application number
PCT/JP2019/029659
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 CN201980046848.9A priority Critical patent/CN112424709B/zh
Priority to EP19853352.3A priority patent/EP3845983B1/en
Priority to JP2020540168A priority patent/JP7046320B2/ja
Publication of WO2020044909A1 publication Critical patent/WO2020044909A1/ja
Priority to US17/165,946 priority patent/US11796985B2/en

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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41885Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew

Definitions

  • the disclosed embodiments relate to a control device for an industrial device and a data collection system for the industrial device.
  • Patent Document 1 discloses a monitoring and control system including a time counter that increments for each unit execution time of processing of plant equipment state data.
  • the present invention has been made in view of such a problem, and an object of the present invention is to provide a control device for industrial equipment and a data collection system for industrial equipment that can improve the timekeeping function.
  • a control device for an industrial device that outputs a control command to the industrial device, and a higher-level control device that controls the control device, a data collection system for an industrial device
  • the control device includes: a clock device that generates a control clock of the control device; a clock counting unit that counts a clock counter value at every cycle equal to a predetermined control cycle synchronized with the control clock; and an instruction to start data acquisition.
  • a command transmission unit that transmits the control command that may include a data acquisition command to the industrial equipment at the predetermined control cycle, and a transmission time when the command transmission unit transmits the control command that includes the data acquisition command.
  • a transmission time storage unit that stores therein, and a log that generates logging data obtained by adding time information based on the transmission time to the data received from the industrial equipment.
  • a data transmission unit that transmits the logging data to the host control device, wherein the host control device has a data reception unit that receives the logging data from the control device. The system applies.
  • the timing function can be improved.
  • FIG. 1 is a diagram illustrating a schematic block configuration of a data collection system according to an embodiment.
  • FIG. 3 is a diagram illustrating a control block configuration of a controller.
  • 5 is a time chart illustrating a data transmission / reception method between a controller and a servo amplifier. It is a figure explaining the timing process of a timing counter value. It is a figure explaining the accumulation timekeeping process of a timepiece counter value. It is a figure showing logging data typically.
  • FIG. 7 is a diagram illustrating a case where a server generates counter calendar information.
  • the drive machine 1 is a machine system whose drive is controlled by the data collection system 100 and data on the drive and status of the drive machine 1 is collected. Most of the internal configuration of the driving machine 1 is a mechanism part whose operation is controlled by torque or thrust input from a motor 5 described later.
  • the driving machine 1 according to the present embodiment further includes a display device such as a lamp directly controlled by a controller 3 described later, or various actuators 6 such as a solenoid and an air cylinder.
  • the driving machine 1 also includes various switches and sensors 7 that can directly detect the state and the detected value by the controller 3 described below.
  • the server 2 (higher-level control device) is composed of, for example, a general-purpose personal computer having a memory such as a CPU, a ROM, and a RAM (not shown).
  • the command is output to a controller 3 described below via a communication network 8 such as ETHERNET (registered trademark).
  • the controller 3 (control device) is composed of a computer including a CPU, a memory such as a ROM and a RAM, and causes the driving machine 1 to perform a desired temporal operation based on a higher-level control command input from the server 2.
  • a control device that performs control as described above.
  • a motion control command for instructing a desired motion operation in real time and with high accuracy to a motor 5 described later, which is a main power source of the driving machine 1 is transmitted through a so-called field network 9. It has a motion control function of outputting to a servo amplifier 4 to be described later.
  • the lamp, various actuators 6 and the like included in the driving machine 1 are sequentially controlled via an interface such as an I / O port (see FIG. 2 described later) provided in the controller 3. It also has a sequence control function of outputting a sequence control command for instructing various operations.
  • the controller 3 of this example also has a function of sequentially reading status information, sensor values, and the like from the various switches and sensors 7 included in the driving machine 1 via an interface, such as the I / O port. (See FIG. 3 described below).
  • the servo amplifier 4 is constituted by a computer having a memory such as a CPU, a ROM, and a RAM (not shown).
  • the servo amplifier 4 drives the motor 5 described below so as to follow the motion control command received from the controller 3 in real time and with high accuracy.
  • This is a motor control device that supplies power to and controls driving.
  • the servo amplifier 4 converts various data such as a torque command generated in a process of supplying drive power and an output speed and an output position actually output from the motor as time-series trace data. It also has a function of sequentially acquiring and recording (see FIG. 3 to be described later) and outputting it to the controller 3.
  • the motor 5 is, for example, a rotary or linear motor, and generates torque or thrust for driving the operation of the driving machine 1 by the driving power supplied from the servo amplifier 4.
  • the motor 5 in this example is assumed to be a rotary type, and the motor 5 is provided with an encoder 10 for optically detecting the output position (rotational position).
  • an encoder 10 for optically detecting the output position (rotational position).
  • a linear scale or the like is provided instead of the encoder 10.
  • synchronous communication and asynchronous communication may be implemented by the same cable line using the same protocol, or may be separately implemented by synchronous communication and asynchronous communication.
  • the controller 3 generates logging data in which information on the acquisition time is added to the various data including the trace data in each individual data unit (described in detail later). Then, the server 2 that has received the logging data analyzes the data based on the individual acquisition times and performs abnormality prediction of the driving machine 1 and optimization of the control.
  • the driving machine 1, the servo amplifier 4, and the motor 5 correspond to the industrial equipment described in each claim
  • the motion control command corresponds to the control command described in each claim
  • the controller 3 performs logging.
  • a processing function unit that transmits data corresponds to a data transmission unit described in each claim
  • a processing function unit that receives logging data in the server 2 corresponds to a data reception unit described in each claim.
  • the controller 3 includes a CPU 31, a memory 32, an operation unit 33, a display unit 34, a transmitter 35, a communication control unit 36, an I / O port 37, a calendar IC 38, and a main power supply 39. ing.
  • the CPU 31 has a function of transmitting and receiving commands and information to and from each unit of the controller 3 based on various programs, data, and parameters stored in the memory 32 described later, and controlling the whole.
  • the main power supply 39 is a power supply unit that rectifies and smoothes the electric power from the external commercial power supply 11 and supplies DC power to each unit of the controller 3, for example. And a non-energized state (that is, power ON / OFF).
  • the display unit 34 includes an LED lamp, an LED segment, or a liquid crystal display (not shown) in this example, and has a function of displaying various commands and information on a state to a user.
  • the display unit 34 can display at least one of a time counter value, counter calendar information, and IC calendar information, which will be described later, by a predetermined operation input from the user via the operation unit 33. .
  • the calendar IC 38 (first calendar IC) is a dedicated integrated circuit such as an ASIC (Application Specific Integrated Circuit) having a timing function.
  • the calendar IC 38 conforms to the standard time of the time zone to which the operation place of the data collection system 100 belongs.
  • IC calendar information (first IC calendar information) represented by the absolute time of “year / month / day / hour / minute / second” is generated.
  • the calendar IC 38 is driven by an auxiliary power supply 38a such as a battery provided internally in the calendar IC 38, and is always irrespective of the energized state of the main power supply 39 (that is, ON / OFF of the power supply of the controller 3).
  • auxiliary power supply 38a such as a battery provided internally in the calendar IC 38, and is always irrespective of the energized state of the main power supply 39 (that is, ON / OFF of the power supply of the controller 3).
  • the controller 3 causes the CPU 31 to execute the three processing programs of the control processing program, the clock count processing program, and the logging data generation processing program mainly stored in the memory 32. While controlling the driving of the driving machine 1, time information with high timing accuracy can be added to data collected for data analysis.
  • the timer counting processing program refers to the IC calendar information acquired from the calendar IC 38, and independently of the IC calendar information, independently counts the timer counter value and the counter calendar information, which are timing parameters, with high timing accuracy. It is. The timing method by the timing count processing program will be described later in detail.
  • the clock processing function unit of the clock counter value executed by the CPU 31 in the clock counting processing program corresponds to the clock counting unit described in each claim.
  • the two nodes of the controller 3 and the servo amplifier 4 can individually acquire and store various data on the operation control and the state of the driving machine 1 sequentially.
  • the controller 3 itself independently detects a sensor value representing the state from the sensor 7 provided in the driving machine 1 via the I / O port 37 and records the sensor value as time-series data.
  • the CPU 31 of the controller 3 reads the sensor value at a predetermined cycle by interrupt processing originally implemented as a function on the hardware circuit.
  • the illustrated example shows a case where the controller 3 outputs a speed command calculated to be output from the motor 5 to the servo amplifier 4 as a motion control command, that is, a case where speed control is performed.
  • This motion control command is described above. It is transmitted and received from the controller 3 to the servo amplifier 4 by synchronous communication of the field network 9.
  • the communication control unit for the field network 9 provided in each of the controller 3 and the servo amplifier 4 (the communication control unit 36 shown in FIG. 2 in the case of the controller 3) has a sufficiently small phase difference with respect to each other.
  • Motion control commands are sequentially transmitted and received in a short same cycle (hereinafter, referred to as a synchronous communication cycle Ta).
  • the servo amplifier 4 performs tracking control of the motion control command received by the synchronous communication and outputs various speeds such as an output speed actually output from the motor 5 and a torque command generated in the course of the tracking control. Data is sequentially acquired and recorded as time-series trace data. As for the output speed, the output position detected from the encoder 10 may be calculated by calculation such as time differentiation.
  • the data acquisition process in the servo amplifier 4 is started when the motion start command sequentially received from the controller 3 includes a trace start command.
  • the controller 3 combines together the various trace data received from the servo amplifier 4 together with the time series data of the sensor value and the motion control command detected by the controller 3 itself, and obtains information of the acquisition time in each individual data unit. Generate the assigned logging data.
  • the type of the time-series data shown in FIG. 3 is limited due to space limitations. However, besides the illustration, the controller 3 directly outputs a sequence control command to the driving machine 1 or an output that can be detected by the servo amplifier 4.
  • Various time series data such as a position, a speed deviation, or an estimated disturbance may be included in the logging data (trace data).
  • the synchronous communication cycle Ta corresponds to a predetermined control cycle and a transmission cycle described in each claim
  • the trace start command corresponds to a data acquisition command described in each claim.
  • the controller 3 which is a control device, has the transmitter 35 that generates the control clock CLK of the controller 3, and the CPU 31 determines that the predetermined period is the same as the predetermined synchronous communication period Ta based on the control clock CLK.
  • a timer count processing program for counting the timer counter value is executed every time.
  • the counting is executed at the same cycle as the synchronous communication cycle Ta for outputting the motion control command to the industrial equipment, so that excessive consumption of the processing resources of the controller 3 can be suppressed and, for example, the abnormality prediction described above.
  • timekeeping accuracy suitable for collecting various data to be analyzed for the purpose of optimization.
  • the clock is counted by the clock counter value counted in the same cycle as the predetermined synchronous communication cycle Ta synchronized with the same control clock CLK. Therefore, there is no problem, for example, in the timing accuracy of the above data collection.
  • such a timing method will be sequentially described in detail.
  • the clock counter value is a clock parameter recorded on the memory 32 of the controller 3 and used only inside the controller 3, and is a 64-bit integer binary data in the example of the present embodiment. Be recorded.
  • a decimal point is added so that one bit corresponds to 0.01 ⁇ S.
  • the value of the time counter value is an integer value “12345” in decimal notation, it is treated as “123.45 ⁇ s” on application software. Even if one bit is assigned to 0.01 ⁇ s, a time length of about 2924 years can be measured with 64-bit data.
  • the main power supply 39 of the controller 3 does not depend on the content of the motion control command and the presence or absence of the data tracing process.
  • the timer counts up continuously and continuously. That is, the CPU 31 of the controller 3 executes the clock counting process program at every count-up cycle equal to the synchronous communication cycle Ta to count up the clock counter value by the interrupt processing implemented as a function on the hardware circuit ( (See the enlarged view of part B in the figure.)
  • the time counter value at that time is separately stored in the memory 32 as the transmission time, so that the trace data returned from the servo amplifier 4 is thereafter returned. Can be estimated based on the transmission time of the first data (the same time in the example of the present embodiment).
  • the processing function unit that stores the transmission time of the motion control command corresponds to the transmission time storage unit described in each claim.
  • processing is performed such that the clock counter value is cumulatively counted as the total elapsed time from the factory shipment of the controller 3. That is, as shown in FIG. 5, when the individual (lot) of the controller 3 is manufactured or shipped at the factory, the time counter value is initialized to “0” and reset. As described above, while the main power supply 39 of the controller 3 is in the energized state, the time counter value is always continuously counted up and timed.
  • the time counter value and the IC calendar information of the calendar IC 38 at that time are stored in a nonvolatile memory (not shown in particular) such as a flash memory or an HDD.
  • a nonvolatile memory not shown in particular
  • the immediately preceding non-energization period is determined based on the difference between the IC calendar information of the calendar IC 38 detected at that time and the IC calendar information stored in the memory 32.
  • the non-power-on period 39) ⁇ Tf is calculated, and the time counter value is added by the count-up addition value ⁇ Cf corresponding to the non-energization period ⁇ Tf.
  • the controller 3 itself counts up the time counter value in synchronization with the control clock CLK, regardless of the dedicated circuit such as the calendar IC 38.
  • Unique processing can be implemented by simple processing. The count-up is performed at the same count-up cycle as the synchronous communication cycle for outputting the motion control command to the industrial equipment, thereby suppressing excessive consumption of the processing resources of the controller 3 and, for example, as described above. Timekeeping accuracy suitable for collecting various data to be analyzed for the purpose of abnormality prediction and optimization can be ensured.
  • the clock is counted by the clock counter value counted up in the same count-up cycle as the synchronous communication synchronized with the same control clock CLK. Therefore, for example, there is no problem in the timing accuracy of the data collection. As a result, the timekeeping function of the controller 3 can be improved.
  • the time counting process for the time counter value performed in the same cycle as the synchronous communication cycle Ta is not limited to counting up, and may count down.
  • the controller 3 transmits a motion control command that may include (or may not include) a trace start command instructing the servo amplifier 4 to start acquisition of trace data, and the transmission period is the transmission cycle.
  • the time counter value is counted in the same cycle as the synchronous communication cycle Ta.
  • the controller 3 can cause the servo amplifier 4 to acquire the trace data to be analyzed for the purpose of predicting the abnormality of the driving machine 1 and optimizing the control, and the time counter is provided with a timing accuracy suitable for collecting the trace data. Can count values.
  • a counter calendar in which time information is described in an absolute time format (time represented by “year / month / day / hour / minute / second / 0.01 ⁇ s”) based on the time counter value.
  • the controller 3 can independently measure the calendar information, which is the absolute time information, with high timing accuracy, without using a dedicated circuit such as the calendar IC 38.
  • the counter calendar information is generated using time information described in other formats such as the Japanese calendar or a relative time from an arbitrary reference time, in addition to the above-described absolute time format based on the Christian era. You may.
  • a transmission time when a motion control command including a trace start command is transmitted is stored, and based on the transmission time, logging is performed by adding counter calendar information to the trace data received from the servo amplifier 4. Generate data.
  • the controller 3 processes the received trace data as logging data arranged by time, and can improve the applicability to data analysis.
  • the controller 3 adds counter calendar information to data (sequence control command, sensor value, and the like) acquired by the controller 3 itself, and includes the data in the logging data.
  • the controller 3 also adds counter calendar information corresponding to the transmission time to the data acquired by the controller 3 itself, for example, from the I / O port 37 without passing through the servo amplifier 4 or the like, and adds the data to the logging data. It can be included.
  • the controller 3 measures the time counter value as an accumulated time including the non-power-on period (non-energization period) of the main power supply 39 of the controller 3.
  • the controller 3 can acquire the time counter value detected at a certain point in time as a time that can be uniquely specified in a non-overlapping manner. For this reason, even if the clock time of the calendar IC 38 is corrected, for example, by rewinding, rewinding, or changing to the country of use, counter calendar information can be uniquely generated without being affected by the correction.
  • the present embodiment particularly has the display unit 34 for displaying at least one of the clock counter value, the counter calendar information, and the IC calendar information. Thereby, the user can visually confirm any one of the three types of timing information managed by the controller 3.
  • the time counter value is 64-bit data in which one bit (unit time period) corresponds to 0.01 ⁇ s, and the controller 3 uses the number of bits corresponding to the time length of the synchronous communication period Ta. Counts the time counter value.
  • the time counter value can be measured over a period of about ten years, which is the service life of the controller 3, and its uniqueness can be maintained.
  • the controller 3 itself generates the counter calendar information based on the time counter value measured by the controller 3, but is not limited thereto.
  • the controller 3 may assign a time counter value instead of the counter calendar information as the acquisition time in the logging data, and the server 2 that has received the logging data may generate and reassign the counter calendar information.
  • the server 2 has its own calendar IC 21 and manages the correspondence between the IC calendar information of the calendar IC 21 and the time counter value of the controller 3 in advance. Need to be kept. Then, when the logging data is received from the controller 3, the acquisition time of each data is extracted, each is converted into counter calendar information based on the above-mentioned correspondence, and replaced with the original logging data.
  • the calendar IC 21 provided in the server 2 corresponds to the second calendar IC described in each claim
  • the IC calendar information corresponds to the second IC calendar information described in each claim.
  • the counter calendar information generation processing function unit (not particularly shown) corresponds to the second calendar information generation unit described in each claim
  • the counter calendar information generated by the server 2 is the second calendar information generation unit described in each claim.
  • the processing function unit in which the CPU of the server 2 converts the time counter value into the counter calendar information corresponds to the time conversion unit described in each claim.
  • the management of the counter calendar information in a predetermined format to be added to the logging data can be assigned to the server 2, and the processing load on the controller 3 can be reduced.
  • this modification is particularly useful when one server 2 is connected to a plurality of controllers 3 having the same configuration and receives respective logging data. That is, since the calendar ICs 38 provided independently by the plurality of controllers 3 are apt to cause individually different timing errors, the acquisition time of each piece of logging data received by the server 2 is counter calendar information based on the respective IC calendar information. In this case, the same timing error easily occurs between the counter calendar information of the logging data.
  • the correspondence between the same IC calendar information and the clock counter value of each controller 3 is managed in advance based on the IC calendar information of the calendar IC provided in the server 2. deep.
  • the acquisition time of each logging data can be uniformly replaced with counter calendar information having high synchronization on the same time axis.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Theoretical Computer Science (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】コントローラの計時機能を向上する。 【解決手段】サーボアンプ4にモーション制御指令を出力するコントローラ3であって、コントローラ3は、制御クロックCLKを生成する発信器35と、制御クロックCLKに同期する同期通信周期Taと同じカウントアップ周期毎に計時カウンタ値をカウントアップする処理機能部と、トレースデータの取得開始を指示するトレース開始指令を含み得るモーション制御指令を同期通信周期Taでサーボアンプ4へ送信する処理機能部と、トレース開始指令を含むモーション制御指令を送信した際の送信時刻を記憶する処理機能部と、サーボアンプ4から受信したトレースデータに、送信時刻に基づく時刻情報を付与したロギングデータを生成する処理機能部とを有する。

Description

産業機器の制御装置及び産業機器のデータ収集システム
 開示の実施形態は、産業機器の制御装置及び産業機器のデータ収集システムに関する。
 特許文献1には、プラント機器状態データの処理の実行単位時間毎にインクリメントする時刻カウンタを備えた監視制御システムが開示されている。
特開2015-219616号公報
 しかしながら上記従来技術では、計時精度が低い場合にはデータ処理に適さず、また計時精度が過剰に高い場合には当該制御装置の制御機能全体を低下させてしまうため、適切な計時機能の向上が要望されていた。
 本発明はこのような問題点に鑑みてなされたものであり、計時機能を向上できる産業機器の制御装置及び産業機器のデータ収集システムを提供することを目的とする。
 上記課題を解決するため、本発明の一の観点によれば、産業機器に所定の制御周期毎に制御指令を出力する産業機器の制御装置であって、当該制御装置の制御クロックを生成するクロックデバイスと、前記制御クロックに基づく前記所定の制御周期と同じ周期毎に計時カウンタ値をカウントする計時カウント部と、を有する産業機器の制御装置が適用される。
 また、本発明の別の観点によれば、産業機器に制御指令を出力する産業機器の制御装置と、前記制御装置を制御する上位制御装置と、を有する産業機器のデータ収集システムであって、前記制御装置は、当該制御装置の制御クロックを生成するクロックデバイスと、前記制御クロックに同期する所定の制御周期と同じ周期毎に計時カウンタ値をカウントする計時カウント部と、データの取得開始を指示するデータ取得指令を含み得る前記制御指令を前記所定の制御周期で前記産業機器へ送信する指令送信部と、前記指令送信部が前記データ取得指令を含む前記制御指令を送信した際の送信時刻を記憶する送信時刻記憶部と、前記産業機器から受信した前記データに、前記送信時刻に基づく時刻情報を付与したロギングデータを生成するロギング部と、前記ロギングデータを前記上位制御装置へ送信するデータ送信部と、を有し、前記上位制御装置は、前記制御装置から前記ロギングデータを受信するデータ受信部を有する産業機器のデータ収集システムが適用される。
 本発明によれば、計時機能を向上できる。
実施形態のデータ収集システムの概略的なブロック構成を表す図である。 コントローラの制御ブロック構成を表す図である。 コントローラとサーボアンプ間のデータ送受手法を表すタイムチャートである。 計時カウンタ値の計時処理を説明する図である。 計時カウンタ値の累積計時処理を説明する図である。 ロギングデータを模式的に表す図である。 サーバがカウンタカレンダ情報を生成する場合を説明する図である。
 以下、一実施の形態について図面を参照しつつ説明する。
 <データ収集システムの全体構成>
 図1を参照しつつ、本実施形態に係る産業機器のデータ収集システムの全体構成の一例について説明する。
 図1は、データ収集システムの概略的なブロック構成を表している。なお本実施形態の例では、産業機器である駆動機械の駆動を制御する制御システムであるとともに、その異常予知や最適化を図ることを目的としたデータも収集可能なシステムとして説明する。図1に示すように、データ収集システム100は、駆動機械1と、サーバ2と、コントローラ3と、サーボアンプ4と、モータ5とを有している。
 駆動機械1は、当該データ収集システム100によってその駆動が制御されるとともに、その駆動や状態に関するデータが収集される対象の機械システムである。この駆動機械1の内部構成として、そのほとんどは後述のモータ5から入力されるトルクや推力によりその動作が制御される機構部分である。また本実施例における駆動機械1は、その他にも後述のコントローラ3から直接的に制御されるランプなどの表示装置、又はソレノイドやエアシリンダなどの各種アクチュエータ6を備えている。他にも駆動機械1は、その状態や検出値を後述のコントローラ3が直接的に検知可能な各種のスイッチやセンサ7なども備えている。
 サーバ2(上位制御装置)は、例えば特に図示しないCPUやROM、RAMなどのメモリを備えた汎用パーソナルコンピュータで構成され、駆動機械1に所望の工程に従った駆動動作を行わせるための上位制御指令を、例えばETHERNET(登録商標)などの通信ネットワーク8を介して後述のコントローラ3に出力する。また本実施形態の例において、このサーバ2は、ユーザからの入力操作や所定の設定条件に応じて駆動機械に関する各種データを取得するよう当該データ収集システム100全体を制御する機能や、また取得された各種データが時系列的にまとめられた後述のロギングデータをコントローラ3から受信し、それに基づいた機械学習などによるデータ解析により駆動機械1の異常予知や制御の最適化を行う機能も有している。
 コントローラ3(制御装置)は、CPUやROM、RAMなどのメモリなどを備えたコンピュータで構成され、上記サーバ2から入力された上位制御指令に基づいて駆動機械1に所望の経時的動作を行わせるよう制御する制御装置である。この動作制御機能の形態として具体的には、駆動機械1の主要動力源である後述のモータ5に対して所望のモーション動作をリアルタイムかつ高精度に指示するモーション制御指令を、いわゆるフィールドネットワーク9を介して後述のサーボアンプ4に対し出力するモーション制御機能を有している。また、他の動作制御の形態として、当該コントローラ3が備える特にI/Oポート(後述の図2参照)などのインターフェースを介して、駆動機械1が備える上記ランプや各種アクチュエータ6等に対し経時的な動作を指示するシーケンス制御指令を出力するシーケンス制御機能も有している。またこの例のコントローラ3は、特に上記I/Oポートなどのインターフェースを介して、駆動機械1が備える上記各種のスイッチやセンサ7からの状態情報やセンサ値などを逐次読み取る機能も有している(後述の図3参照)。そして本実施形態の例では、上記I/Oポートで読み取った状態情報やセンサ値等と併せて、後述のサーボアンプ4から受信した駆動機械1に関する各種データを時系列的に整理してロギングデータとして生成し、上記サーバ2へ送信する機能を有している。なお、このコントローラ3の詳細な構成や機能については後の図2で詳しく説明する。
 サーボアンプ4は、特に図示しないCPUやROM、RAMなどのメモリなどを備えたコンピュータで構成され、上記コントローラ3から受信したモーション制御指令についてリアルタイムかつ高精度に追従するよう後述のモータ5に駆動電力を給電し駆動制御するモータ制御装置である。また本実施形態の例においてサーボアンプ4は、駆動電力を給電する過程で生成されるトルク指令や、実際にモータから出力された出力速度及び出力位置等の各種データを時系列的なトレースデータとして逐次取得して記録し(後述の図3参照)、上記コントローラ3へ出力する機能も有している。
 モータ5は、例えば回転型や直動型のモータであり、サーボアンプ4から給電された駆動電力により上記駆動機械1の動作を駆動するトルクや推力を発生する。なお、この例におけるモータ5は回転型を想定しており、当該モータ5にはその出力位置(回転位置)を光学的に検出するエンコーダ10が設けられている。なお、モータ5が直動型の場合は上記エンコーダ10に代えてリニアスケールなどが設けられる。
 なお以上のシステム構成において、特にコントローラ3とサーボアンプ4との間で情報を送受させるフィールドネットワーク9においては、モーション制御指令を送受する際のリアルタイム性を確保するための同期通信と、比較的優先度の低い情報を送受するための非同期通信を切り替えて行うことが可能である(後に詳述する)。このようなフィールドネットワーク9は、同期通信と非同期通信を同一のケーブルラインで同一のプロトコルにより実装してもよいし、または同期通信と非同期通信で別体に実装してもよい。
 また、コントローラ3は、上記トレースデータを含む各種データに対しそれら個々のデータ単位で取得時刻の情報を付与したロギングデータを生成する(後に詳述する)。そしてそのロギングデータを受信したサーバ2は、個々の取得時刻に基づいたデータの解析により、駆動機械1の異常予知や制御の最適化を行う。
 なお、以上のシステム構成において、駆動機械1、サーボアンプ4、及びモータ5が各請求項記載の産業機器に相当し、モーション制御指令が各請求項記載の制御指令に相当し、コントローラ3においてロギングデータを送信する処理機能部が各請求項記載のデータ送信部に相当し、サーバ2においてロギングデータを受信する処理機能部が各請求項記載のデータ受信部に相当する。
 <コントローラの詳細構成>
 次に、上記コントローラ3の詳細な内部構成を示す制御ブロック図を図2に示す。このコントローラ3は、CPU31と、メモリ32と、操作部33と、表示部34と、発信器35と、通信制御部36と、I/Oポート37と、カレンダIC38と、主電源39を有している。
 CPU31は、後述するメモリ32に記憶された各種プログラムやデータ、パラメータに基づいて、当該コントローラ3の各部と指令や情報を送受してその全体を制御する機能を有する。
 メモリ32は、ROM、RAM、フラッシュメモリ、又はHDDなどで構成する記憶装置であり、上記CPU31が実行する各種プログラムや、そのCPU31もしくは他の機能部位から送受したデータやパラメータを記憶する。なお、本実施形態の例で当該メモリ32が記憶する情報内容などについては後に詳述する。
 主電源39は、外部の商用電源11からの電力を例えば整流、平滑して当該コントローラ3の各部に直流電力を給電する電源部であり、ユーザからの任意の操作によって当該コントローラ3全体の通電状態と非通電状態を切り替える(つまり電源のON/OFFを切り替える)スイッチ機能を有する。
 操作部33は、この例では特に図示しない各種のスイッチ類からなり、ユーザからの操作入力を受け付ける機能を有する。
 表示部34は、この例では特に図示しないLEDランプ、LEDセグメント、又は液晶ディスプレイなどからなり、ユーザに対して各種の指令や状態に関する情報を表示する機能を有する。なお本実施形態の例では、上記操作部33を介したユーザからの所定の操作入力により、当該表示部34が後述する計時カウンタ値、カウンタカレンダ情報、及びICカレンダ情報の少なくとも1つを表示できる。
 発信器35は、当該コントローラ3における同期制御用の制御クロックCLKを生成するクロックデバイスであり、本実施形態では例えば約1GHz前後の周波数で制御クロックCLKのパルスを生成し上記CPU31と後述する通信制御部36のそれぞれに入力している。
 通信制御部36は、上記通信ネットワーク8を介した上記CPU31とサーバ2との間の情報送受、及び上記フィールドネットワーク9を介した上記CPU31とサーボアンプ4との間の情報送受をそれぞれ制御する機能を有している。なおこの通信制御部36は、上述したようにフィールドネットワーク9に対して同期通信と非同期通信を切り替えて行うが、特に同期通信の場合には上記発信器35から入力された制御クロックCLKに同期した所定の制御周期でモーション制御指令等を送信する。
 I/Oポート37は、上述したように、当該コントローラ3の上記CPU31が駆動機械1のアクチュエータ6等へシーケンス制御指令を出力したり、また上記CPU31が駆動機械1のセンサ7等からセンサ値等を読み取る際に情報を送受するインターフェースである。
 カレンダIC38(第1のカレンダIC)は、計時機能を有するASIC(Application Specific Integrated Circuit)などの専用集積回路であり、この例では当該データ収集システム100の運用場所が属する時間帯の標準時刻に準拠して「年/月/日/時/分/秒」の絶対時刻で表記されたICカレンダ情報(第1のICカレンダ情報)を生成する。このカレンダIC38は、その内部に独自に備えたバッテリなどの補助電源38aで駆動しており、上記主電源39の通電状態(つまり当該コントローラ3の電源のON/OFF)に係わらず常に上記のICカレンダ情報を生成する。
 そして上記構成にある本実施形態のコントローラ3は、上記CPU31が主にメモリ32に記憶された制御処理プログラム、計時カウント処理プログラム、及びロギングデータ生成処理プログラムの3つの処理プログラムを実行することで、駆動機械1の駆動を制御しつつデータ解析用に収集したデータに計時精度の高い時刻情報を付与できる。
 制御処理プログラムは、上述したようにサーバ2から受信した上位制御指令に基づいて、サーボアンプ4に対するモーション制御指令と、駆動機械1の各種アクチュエータ6に対するシーケンス制御指令とを、それぞれ生成、送信して駆動機械1に所望の経時的動作を行わせるプログラムである。また、この制御処理プログラムでCPU31が実行するモーション制御指令の送信処理機能部が、各請求項記載の指令送信部に相当する。
 計時カウント処理プログラムは、上記カレンダIC38から取得したICカレンダ情報を参照しつつ、このICカレンダ情報とはまた別途に計時パラメータである計時カウンタ値及びカウンタカレンダ情報を高い計時精度で独自に計時するプログラムである。なお、この計時カウント処理プログラムによる計時手法については、後に詳述する。また、この計時カウント処理プログラムでCPU31が実行する計時カウンタ値の計時処理機能部が、各請求項記載の計時カウント部に相当する。
 ロギングデータ生成処理プログラムは、サーボアンプ4から受信したトレースデータとI/Oポート37で読み取った各種データとを併せて時系列的に整理し、それら個々のデータ単位に上記計時パラメータで表記した取得時刻の情報を付与してロギングデータを生成するプログラムである。なお、このロギングデータ生成処理プログラムでCPU31が実行するロギングデータの生成処理機能部が、各請求項記載のロギング部に相当する。
 なお、メモリ32にはその他多くのプログラムや各種のデータ、パラメータが記憶されているが、図中ではそれらの図示を省略している。
 <コントローラとサーボアンプ間におけるデータ送受手法について>
 次に上記データ収集システムにおけるコントローラ3とサーボアンプ4間のデータ送受手法について図3を参照しつつ説明する。上述したように、コントローラ3とサーボアンプ4の2つのノードは、それぞれ個別に駆動機械1の動作制御や状態に関する各種のデータを逐次取得して記憶可能となっている。図示する例では、コントローラ3自体がそのI/Oポート37を介して駆動機械1が備えるセンサ7からその状態を表すセンサ値を独自に検出し、時系列データとして記録される。この場合は、コントローラ3のCPU31がもともとハードウェア回路上の機能として実装されている割り込み処理により所定周期でセンサ値を読み取る。
 また図示する例では、コントローラ3がモータ5に出力させるよう演算した速度指令をモーション制御指令としてサーボアンプ4に出力する場合、すなわち速度制御を行う場合を示しており、このモーション制御指令は上述したフィールドネットワーク9の同期通信にてコントローラ3からサーボアンプ4へ送受される。このとき、コントローラ3とサーボアンプ4のそれぞれが備えているフィールドネットワーク9用の通信制御部(コントローラ3の場合は上記図2に示した通信制御部36)は、互いに位相差が十分小さくまた十分短い同一周期(以下、同期通信周期Taという)でモーション制御指令を逐次送受する。これによりコントローラ3から送信するモーション制御指令が経時的に変動する場合でも、サーボアンプ4は十分なリアルタイム性をもってそのモーション制御指令の変動に対応した追従制御を行える。そして実際の同期通信周期Ta自体は、コントローラ3の発信器35が生成する制御クロックCLKの非常に短い周期Tc(図中A部の拡大図参照;例えば数nsオーダー)をおよそ数千~数十万倍で逓倍して生成(例えば125μs)されるものであり、その制御クロックCLKの周期Tc単位で動作するCPU31及び通信制御部36は十分余裕のあるクロックマージンで同期通信周期Taに対する同期タスクを実行できる。
 そして図示する例では、サーボアンプ4は、上記同期通信で受信したモーション制御指令を追従制御した結果モータ5から実際に出力された出力速度とその追従制御の過程で生成されるトルク指令等の各種データを時系列的なトレースデータとして逐次取得して記録する。なお、出力速度については、エンコーダ10から検出した出力位置を時間微分等の演算により算出すればよい。そしてこのサーボアンプ4におけるデータの取得処理は、コントローラ3から逐次受信するモーション制御指令中にトレース開始指令が含まれていた際に開始される。
 この例におけるサーボアンプ4は、上述したモーション制御指令の追従制御を同期通信周期Taと同期する同期タスクとして実行するとともに、各種データの取得処理も同じ同期通信周期Taに同期して逐次実行する。しかし、同期通信周期Taがとても短い期間であるため、サーボアンプ4が各種トレースデータを各同期通信周期Taごとにコントローラ3へ逐次返信することは困難である。そのため、サーボアンプ4が取得したデータ容量の大きいトレースデータをコントローラ3へ返信する場合には、上記同期タスクの非実行期間中において任意のタイミングで行われる非同期通信でまとめて返信する。
 そしてコントローラ3は、当該コントローラ3自体が検出したセンサ値やモーション制御指令の時系列データとともに、サーボアンプ4から受信した各種トレースデータとを併せてまとめ、それら個々のデータ単位で取得時刻の情報を付与したロギングデータを生成する。なお、紙面の都合から図3に示す時系列データの種類は限られているが、図示する以外にもコントローラ3が駆動機械1に直接出力するシーケンス制御指令や、サーボアンプ4で検出可能な出力位置、速度偏差、又は推定外乱などの多様な時系列データをロギングデータ(トレースデータ)に含めてもよい。
 なお、同期通信周期Taが各請求項記載の所定の制御周期及び送信周期に相当し、トレース開始指令が各請求項記載のデータ取得指令に相当する。
 <本実施形態の特徴>
 以上説明したように、一般的なファクトリーオートメーションとしての産業機器システムにおいては、当該産業機器(この例の駆動機械1)に対して制御指令を出力する制御装置(この例のコントローラ3)を備える場合が多い。このような産業機器システムにおいて、近年では制御装置に高い計時精度で時間を計時可能な計時機能が要望されている。これは、例えば、産業機器システムの運用制御における異常予知や最適化を目的としたデータ解析に用いる各種データの収集にあたってその収集時刻についての高い計時精度が要求されているためである。
 これまでは、バッテリなどの補助電源で駆動する専用のカレンダIC38からそこで計時された絶対時刻表記のICカレンダ情報を読み出す構成が多く取られていた。しかし、このような個別に駆動するカレンダIC38から絶対時刻表記のICカレンダ情報を読み出す処理時間は長くかかるためその読み出し周期は大きく設定(図3に示す例では0.5s)しなければならない。加えて、既成製品のカレンダIC38の計時精度はとても低く(つまり最小計時単位の時間長が大きくて粗い;例えば1s)、また計時誤差も生じやすい(例えば1ヶ月で1分程度)ことから、上述した高い計時精度を得ることができなかった。また一方、過剰に高い計時精度で計時した場合には当該制御装置の処理リソースをムダに消費してしまい、その制御機能全体を低下させてしまう。
 これに対して本実施形態では、制御装置であるコントローラ3が、当該コントローラ3の制御クロックCLKを生成する発信器35を有し、CPU31が制御クロックCLKに基づく所定の同期通信周期Taと同じ周期毎に計時カウンタ値をカウントする計時カウント処理プログラムを実行する。
 これにより、上記カレンダIC38等の専用回路によらず、当該コントローラ3自体がその制御クロックCLKに同期して計時カウンタ値をカウントするという簡易な処理により独自の計時機能を実装することができる。そしてそのカウントが、産業機器に対してモーション制御指令を出力する同期通信周期Taと同じ周期毎で実行されることで、当該コントローラ3の処理リソースの過剰な消費を抑えつつ、例えば上述した異常予知や最適化を目的とする解析対象の各種データの収集に適した計時精度を確保できる。また、制御クロックCLKの周期自体に誤差が生じる場合(つまり計時誤差が生じる場合)でも、同一の制御クロックCLKに同期する所定の同期通信周期Taと同じ周期でカウントした計時カウンタ値で計時しているため、例えば上記のデータ収集の計時精度としては問題ない。以下、このような計時手法について順次、詳細に説明する。
 <本実施形態における計時カウント処理について>
 まず、本実施形態の例における計時カウンタ値の仕様について説明する。上述したように、計時カウンタ値はコントローラ3のメモリ32上に記録されて当該コントローラ3の内部だけで利用される計時パラメータであり、本実施形態の例では64ビット長の整数バイナリデータの形態で記録される。そしてその計時カウンタ値を上記ロギングデータ生成処理プログラムなどのアプリケーションソフトウェア上で扱う際には、1ビットが0.01μSに相当するよう小数点が付与される。具体的には、例えば計時カウンタ値の値が十進数表記の整数値「12345」である場合、アプリケーションソフトウェア上では「123.45μs」として扱われる。このように1ビットを0.01μs相当に割り当てたとしても、64ビットデータでは約2924年分の時間長を計時可能である。
 このような計時カウンタ値に対して本実施形態では、上記図3に対応する図4に示すように、モーション制御指令の内容やデータのトレース処理の有無にかかわらず当該コントローラ3の主電源39が通電状態となっている間にわたって常時継続的にカウントアップして計時する。つまりコントローラ3のCPU31が、そのハードウェア回路上の機能として実装されている割り込み処理により、同期通信周期Taと同じカウントアップ周期毎に計時カウント処理プログラムを実行して計時カウンタ値をカウントアップする(図中B部の拡大図参照)。そしてそのカウントアップ時の加算値ΔCは、同期通信周期Taの時間長に相当するビット数で加算される。例えば、同期通信周期Taが125μsである場合、計時カウンタ値に対する一回のカウントアップ加算値ΔCは十進数表記で「12500(=125.00μs)」となる。
 そして、コントローラ3がトレース開始指令を含むモーション制御指令を送信した際にその時点の計時カウンタ値を送信時刻として別途メモリ32に記憶しておくことで、その後にサーボアンプ4から返信されたトレースデータの最初のデータの取得時刻をその送信時刻に基づいて推定できる(本実施形態の例では同時刻)。なお、モーション制御指令の送信時刻を記憶する処理機能部が、各請求項記載の送信時刻記憶部に相当する。
 <計時カウンタ値の累積計時処理について>
 また本実施形態の例において、上記の計時カウント処理プログラムでは、計時カウンタ値を当該コントローラ3の工場出荷時からの総経過時間として累積的に計時するよう処理する。つまり、図5に示すように、当該コントローラ3の個体(ロット)が工場で製造される際、または出荷される際に、計時カウンタ値は「0」に初期化されてリセットされる。そして上述したように、当該コントローラ3の主電源39が通電状態となっている間は、計時カウンタ値が常時継続的にカウントアップされて計時される。
 その後にコントローラ3の主電源39が遮断(OFF)される度に、その際の計時カウンタ値とカレンダIC38のICカレンダ情報がフラッシュメモリやHDD等の不揮発性メモリ(特に図示せず)に記憶される。また主電源39が通電(ON)された度に、その際に検出したカレンダIC38のICカレンダ情報とメモリ32に記憶されているICカレンダ情報との間の差分から直前の非通電期間(主電源39の非投入期間)ΔTfを算出し、さらにその非通電期間ΔTfに相当するカウントアップ加算値ΔCfで計時カウンタ値を加算する。
 以上のように計時処理することで、当該コントローラ3の個体が工場出荷されてからの総経過時間として計時カウンタ値を計時できる。なおこの場合には、計時カウンタ値の計時誤差を抑制するために、少なくとも主電源39の非通電期間中にはカレンダIC38の時刻補正を行わないようにする。またこの計時カウンタ値は、基本的にユーザからの操作入力により任意にリセットできないようにするが、例えばユーザ非公開の特殊ツールを用いて製造メーカー側でリセットできるようにしてもよい。
 <ロギングデータについて>
 サーボアンプ4からトレースデータを受信したコントローラ3のCPU31は、上記ロギングデータ生成処理プログラムを実行することで、そのトレースデータと当該コントローラ3自体が駆動機械1から取得したデータとを併せて図6に示すようなロギングデータを生成できる。本実施形態の例では、コントローラ3自体も同期通信周期Taでデータを取得していることから、全てのデータを同じ取得開始タイミング(=送信時刻)、同じ期間、同じサンプリング周期で正規化でき、すなわちデータ同期できる。なお、コントローラ3側とサーボアンプ4側でデータのサンプリング周期が異なる場合でも、それぞれ同じ取得期間分だけデータを抽出し、同期通信周期Taを基準のサンプリング周期として標本化しなおせばよい。
 そしてこのロギングデータでは、各データ単位でその取得時刻が付与されている。具体的にはn番目(n=0、1、2、・・・)のデータの取得時刻が、上記トレース開始指令を送信した際の計時カウンタ値(=送信時刻)に、n×サンプリング周期(=同期通信周期Ta、カウントアップ加算値ΔC)を加算した計時カウンタ値を絶対時刻表記に変換したカウンタカレンダ情報で付与されている。このようにロギングデータ中における各データ単位で絶対時刻表記のカウンタカレンダ情報を取得時刻として付与されていることにより、大量のデータを取得、記憶した場合でもそのデータ単位で取得時刻を一意的に認識できる。なお、上記のカウントカレンダ情報が各請求項記載の第1のカウンタカレンダ情報に相当し、ロギングデータ生成処理プログラムでCPU31が実行するカウンタカレンダ情報の生成処理機能部が、各請求項記載の第1のカレンダ情報生成部に相当する。
 またこのカウンタカレンダ情報は、同期通信周期Taと同じカウントアップ周期で計時した計時カウンタ値に基づいて生成されているため、カレンダIC38から検出するICカレンダ情報よりも非常に高い計時精度で、かつデータ解析に適した計時精度で付与できる。また上述したように、計時カウンタ値が当該コントローラ3の個体の工場出荷時からの総経過時間として累積的に計時されていることにより、これに基づいて生成されたカウンタカレンダ情報もまた当該コントローラ3の個体において非重複で一意的に特定可能な時刻として付与できる。
 <本実施形態の効果>
 以上説明したように、本実施形態のデータ収集システム100によれば、カレンダIC38等の専用回路によらず、当該コントローラ3自体がその制御クロックCLKに同期して計時カウンタ値をカウントアップするという簡易な処理により独自の計時機能を実装することができる。そしてそのカウントアップが、産業機器に対してモーション制御指令を出力する同期通信周期と同じカウントアップ周期毎で実行されることで、当該コントローラ3の処理リソースの過剰な消費を抑えつつ、例えば上述した異常予知や最適化を目的とする解析対象の各種データの収集に適した計時精度を確保できる。また、制御クロックCLKの周期自体に誤差が生じる場合(つまり計時誤差が生じる場合)でも、同一の制御クロックCLKに同期する同期通信と同じカウントアップ周期でカウントアップした計時カウンタ値で計時しているため、例えば上記のデータ収集の計時精度としては問題ない。この結果、コントローラ3の計時機能を向上できる。なお、同期通信周期Taと同じ周期で行う計時カウンタ値への計時処理は、カウントアップに限られずカウントダウンしてもよい。
 また、本実施形態では特に、コントローラ3がサーボアンプ4に対してトレースデータの取得開始を指示するトレース開始指令を含み得る(含まない場合もある)モーション制御指令を送信し、その送信周期である同期通信周期Taと同じ周期で計時カウンタ値をカウントしている。これにより、コントローラ3は、サーボアンプ4に駆動機械1の異常予知や最適化制御を目的とした解析対象のトレースデータを取得させることができ、そのトレースデータの収集に適した計時精度で計時カウンタ値をカウントできる。
 また、本実施形態では特に、計時カウンタ値に基づいて絶対時刻の形式(「年/月/日/時/分/秒/0.01μs」で表記される時刻)で時刻情報を表記したカウンタカレンダ情報を生成する。これにより、カレンダIC38等の専用回路によらず、当該コントローラ3が独自に絶対時刻情報であるカレンダ情報を高い計時精度で計時できる。なお、カウンタカレンダ情報は、上記のような西暦準拠の絶対時刻の形式以外にも、例えば和暦準拠や任意の基準時刻からの相対時刻などのような他の形式で表記した時刻情報で生成されてもよい。
 また、本実施形態では特に、トレース開始指令を含むモーション制御指令を送信した際の送信時刻を記憶し、その送信時刻に基づいて、サーボアンプ4から受信したトレースデータにカウンタカレンダ情報を付与したロギングデータを生成する。これにより、コントローラ3は、受信したトレースデータを時刻で整理したロギングデータとして加工し、データ解析への適用度を向上できる。
 また、本実施形態では特に、コントローラ3が、駆動機械1を駆動するモータ5を駆動制御するモータ制御装置としてのサーボアンプ4へモーション制御指令を送信し、サーボアンプ4から受信したトレースデータは、サーボアンプ4が取得したモータ5の駆動制御に関するデータである。これにより、コントローラ3は、駆動機械1の異常予知や最適化制御を目的とした具体的な解析が可能なデータとしてトレースデータを収集できる。
 また、本実施形態では特に、コントローラ3が、当該コントローラ3自体で取得したデータ(シーケンス制御指令やセンサ値など)に対してもカウンタカレンダ情報を付与してロギングデータに含める。これにより、コントローラ3は、サーボアンプ4等を介さずに例えばI/Oポート37から当該コントローラ3自体で取得したデータに対しても、送信時刻に対応したカウンタカレンダ情報を付与してロギングデータに含めることが可能となる。
 また、本実施形態では特に、コントローラ3は、当該コントローラ3の主電源39の非投入期間(非通電期間)も含めた累積時間として計時カウンタ値を計時する。これにより、コントローラ3は、ある時点で検出した計時カウンタ値を非重複で一意的に特定可能な時刻として取得できる。このため、カレンダIC38の計時時刻を巻き送り、巻き戻し、又は使用国時間に変更するなどどのように補正した場合でも、その影響を受けずにカウンタカレンダ情報を一意的に生成できる。
 また、本実施形態では特に、コントローラ3は、当該コントローラ3の個体の工場製造または出荷時に計時カウンタ値をリセットする。これにより、コントローラ3は、当該コントローラ3自体が製造されてからの総経過時間として計時カウンタ値を計時できる。
 また、本実施形態では特に、主電源39と異なる補助電源での駆動で計時した時刻を表記するICカレンダ情報を生成するカレンダIC38を有し、主電源39の投入開始時にICカレンダ情報に基づいて計時カウンタ値を補正する。これにより、当該コントローラ3が非通電状態、つまり主電源39が非投入状態となっていても、その非通電期間に対応した時間差で計時カウンタ値を補正でき、その一意性を維持できる。
 また、本実施形態では特に、計時カウンタ値、カウンタカレンダ情報、及びICカレンダ情報の少なくとも1つを表示する表示部34を有している。これにより、ユーザは、コントローラ3が管理する3種類の計時情報のいずれかを視覚的に確認できる。
 また、本実施形態では特に、計時カウンタ値は、1ビット(単位時間周期)が0.01μsに相当する64ビットデータであり、コントローラ3は、同期通信周期Taの時間長に相当するビット数で計時カウンタ値をカウントする。これにより、同期通信周期Taが0.01μsもの高い計時精度で実行される場合に対しても、一般的なコンピュータで容易に扱える64ビット長(最長で約2924年分計時可能)のバイナリデータで一般的に当該コントローラ3の使用寿命とされる10年前後の期間以上に計時カウンタ値を計時でき、その一意性を維持できる。
 <変形例>
 なお、開示の実施形態は、上記に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を説明する。
 <サーバがカウンタカレンダ情報を生成する場合>
 上記実施形態では、コントローラ3が計時した計時カウンタ値に基づいて、当該コントローラ3自体でカウンタカレンダ情報を生成していたが、これに限られない。例えば、コントローラ3ではロギングデータにおける取得時刻としてカウンタカレンダ情報ではなく計時カウンタ値を付与し、そのロギングデータを受信したサーバ2がカウンタカレンダ情報を生成して付与しなおしてもよい。
 この場合には、図7に示すように、サーバ2が独自のカレンダIC21を備えており、事前にそのカレンダIC21のICカレンダ情報とコントローラ3の計時カウンタ値との対応関係を確認して管理しておく必要がある。そしてコントローラ3からロギングデータを受信した際に、各データの取得時刻を抽出してそれぞれを上記対応関係に基づいてカウンタカレンダ情報に変換し、元のロギングデータに置換する。
 なおこの場合において、サーバ2が備えるカレンダIC21が各請求項記載の第2のカレンダICに相当し、そのICカレンダ情報が各請求項記載の第2のICカレンダ情報に相当し、サーバ2のCPU(特に図示せず)が実行するカウンタカレンダ情報の生成処理機能部が各請求項記載の第2のカレンダ情報生成部に相当し、サーバ2が生成したカウンタカレンダ情報が各請求項記載の第2のカウンタカレンダ情報に相当し、サーバ2のCPUが計時カウンタ値をカウンタカレンダ情報に変換する処理機能部が各請求項記載の計時変換部に相当する。
 以上の本変形例によれば、ロギングデータに付与する所定形式表記のカウンタカレンダ情報の管理をサーバ2に分担させることができ、コントローラ3の処理負荷を軽減できる。また特に図示しないが、1つのサーバ2が、同様の構成にある複数のコントローラ3と接続してそれぞれのロギングデータを受信する場合に本変形例は特に有用である。すなわち、複数のコントローラ3がそれぞれ独自に備えるカレンダIC38は個別に異なる計時誤差が生じやすいため、サーバ2が受信したそれぞれのロギングデータの取得時間がそれぞれのICカレンダ情報に準拠したカウンタカレンダ情報である場合、それらロギングデータどうしのカウンタカレンダ情報の間にも同じ計時誤差が生じやすい。これに対して本変形例では、サーバ2が備えるカレンダICのICカレンダ情報を基準として、予めその同一のICカレンダ情報と各コントローラ3の計時カウンタ値との間のそれぞれの対応関係を管理しておく。これにより、各ロギングデータの取得時刻を一律に同じ時間軸上で高い同時性を持ったカウンタカレンダ情報に置換できる。
 なお、以上の説明において、「垂直」「平行」「平面」等の記載がある場合には、当該記載は厳密な意味ではない。すなわち、それら「垂直」「平行」「平面」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直」「実質的に平行」「実質的に平面」という意味である。
 また、以上の説明において、外観上の寸法や大きさ、形状、位置等が「同一」「同じ」「等しい」「異なる」等の記載がある場合は、当該記載は厳密な意味ではない。すなわち、それら「同一」「等しい」「異なる」とは、設計上、製造上の公差、誤差が許容され、「実質的に同一」「実質的に同じ」「実質的に等しい」「実質的に異なる」という意味である。
 また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
 1      駆動機械(産業機器)
 2      サーバ(上位制御装置)
 3      コントローラ(制御装置)
 4      サーボアンプ(産業機器、モータ制御装置)
 5      モータ(産業機器)
 6      ランプ、アクチュエータ
 7      スイッチ、センサ
 8      通信ネットワーク
 9      フィールドネットワーク
 10     エンコーダ(外部機器)
 21     カレンダIC(第2のカレンダIC)
 31     CPU
 32     メモリ
 33     操作部
 34     表示部
 35     発信器(クロックデバイス)
 36     通信制御部
 37     I/Oポート
 38     カレンダIC(第1のカレンダIC)
 38a    補助電源
 39     主電源
 100    データ収集システム
 

Claims (14)

  1.  産業機器に所定の制御周期毎に制御指令を出力する産業機器の制御装置であって、
     当該制御装置の制御クロックを生成するクロックデバイスと、
     前記制御クロックに基づく前記所定の制御周期と同じ周期毎に計時カウンタ値をカウントする計時カウント部と、
    を有することを特徴とする産業機器の制御装置。
  2.  制御対象の産業機器に対してデータの取得開始を指示するデータ取得指令を含み得る前記制御指令を当該産業機器へ送信する指令送信部と、
    を有し、
     前記所定の制御周期は、前記指令送信部が前記制御指令を産業機器へ送信する送信周期であることを特徴とする請求項1記載の産業機器の制御装置。
  3.  前記計時カウンタ値に基づいて所定の形式で時刻情報を表記した第1のカウンタカレンダ情報を生成する第1のカレンダ情報生成部と、
    を有することを特徴とする請求項2記載の産業機器の制御装置。
  4.  前記指令送信部が前記データ取得指令を含む前記制御指令を送信した際の送信時刻を記憶する送信時刻記憶部と、
     前記送信時刻に基づいて、前記産業機器から受信したデータに前記第1のカウンタカレンダ情報を付与したロギングデータを生成するロギング部と、
    を有することを特徴とする請求項3記載の産業機器の制御装置。
  5.  前記指令送信部は、
     前記産業機器を駆動するモータを駆動制御するモータ制御装置へ前記制御指令を送信し、
     前記産業機器から受信した前記データは、
     前記モータ制御装置が取得した前記モータの駆動制御に関するデータであることを特徴とする請求項4記載の産業機器の制御装置。
  6.  前記ロギング部は、
     当該制御装置自体で取得したデータに対しても前記第1のカウンタカレンダ情報を付与して前記ロギングデータに含めることを特徴とする請求項5記載の産業機器の制御装置。
  7.  前記計時カウント部は、
     当該制御装置の主電源の非投入期間も含めた累積時間として前記計時カウンタ値を計時することを特徴とする請求項3乃至6のいずれか1項に記載の産業機器の制御装置。
  8.  前記計時カウント部は、
     当該制御装置の工場出荷時に前記計時カウンタ値をリセットすることを特徴とする請求項7記載の産業機器の制御装置。
  9.  前記主電源と異なる補助電源での駆動で計時した時刻を表記する第1のICカレンダ情報を生成する第1のカレンダICを有し、
     前記計時カウント部は、前記主電源の投入開始時に前記第1のICカレンダ情報に基づいて前記計時カウンタ値を補正することを特徴とする請求項7又は8記載の産業機器の制御装置。
  10.  前記計時カウンタ値、前記第1のカウンタカレンダ情報、及び前記第1のICカレンダ情報の少なくとも1つを表示する表示部と、
    を有することを特徴とする請求項9記載の産業機器の制御装置。
  11.  前記計時カウンタ値は、
     1ビットが0.01μsに相当する64ビットデータであり、
     前記計時カウント部は、
     前記制御周期の時間長に相当するビット数で前記計時カウンタ値をカウントすることを特徴とする請求項1乃至10のいずれか1項に記載の産業機器の制御装置。
  12.  産業機器に制御指令を出力する産業機器の制御装置と、前記制御装置を制御する上位制御装置と、を有する産業機器のデータ収集システムであって、
     前記制御装置は、
     当該制御装置の制御クロックを生成するクロックデバイスと、
     前記制御クロックに同期する所定の制御周期と同じ周期毎に計時カウンタ値をカウントする計時カウント部と、
     データの取得開始を指示するデータ取得指令を含み得る前記制御指令を前記所定の制御周期で前記産業機器へ送信する指令送信部と、
     前記指令送信部が前記データ取得指令を含む前記制御指令を送信した際の送信時刻を記憶する送信時刻記憶部と、
     前記産業機器から受信した前記データに、前記送信時刻に基づく時刻情報を付与したロギングデータを生成するロギング部と、
     前記ロギングデータを前記上位制御装置へ送信するデータ送信部と、
    を有し、
     前記上位制御装置は、
     前記制御装置から前記ロギングデータを受信するデータ受信部
    を有することを特徴とする産業機器のデータ収集システム。
  13.  前記制御装置は、
     前記計時カウンタ値に基づいて所定の形式で表記した第1のカウンタカレンダ情報を生成する第1のカレンダ情報生成部と、
    を有し、
     前記ロギング部は、
     前記送信時刻に基づく時刻情報を前記第1のカウンタカレンダ情報で表記して前記データに付与することを特徴とする請求項12記載の産業機器のデータ収集システム。
  14.  前記制御装置の前記ロギング部は、
     前記送信時刻に基づく時刻情報を前記計時カウンタ値で表記して前記データに付与し、
     前記上位制御装置は、
     所定の形式で表記された計時時刻である第2のICカレンダ情報を生成する第2のカレンダICと、
     前記制御装置から受信した計時カウンタ値と前記第2のICカレンダ情報との対応関係から所定の形式で表記された第2のカウンタカレンダ情報を生成する第2のカレンダ情報生成部と、
     前記制御装置から受信した前記ロギングデータに付与された前記送信時刻に基づく時刻情報の前記計時カウンタ値を前記第2のカレンダ情報に変換する計時変換部と、
    を有することを特徴とする請求項12記載の産業機器のデータ収集システム。
     
     
PCT/JP2019/029659 2018-08-31 2019-07-29 産業機器の制御装置及び産業機器のデータ収集システム WO2020044909A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201980046848.9A CN112424709B (zh) 2018-08-31 2019-07-29 工业设备的控制装置以及工业设备的数据采集系统
EP19853352.3A EP3845983B1 (en) 2018-08-31 2019-07-29 Industrial equipment control device and industrial equipment data collecting system
JP2020540168A JP7046320B2 (ja) 2018-08-31 2019-07-29 産業機器の制御装置及び産業機器のデータ収集システム
US17/165,946 US11796985B2 (en) 2018-08-31 2021-02-03 Industrial equipment controller and industrial equipment data collection system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018163053 2018-08-31
JP2018-163053 2018-08-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/165,946 Continuation US11796985B2 (en) 2018-08-31 2021-02-03 Industrial equipment controller and industrial equipment data collection system

Publications (1)

Publication Number Publication Date
WO2020044909A1 true WO2020044909A1 (ja) 2020-03-05

Family

ID=69644179

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/029659 WO2020044909A1 (ja) 2018-08-31 2019-07-29 産業機器の制御装置及び産業機器のデータ収集システム

Country Status (5)

Country Link
US (1) US11796985B2 (ja)
EP (1) EP3845983B1 (ja)
JP (1) JP7046320B2 (ja)
CN (1) CN112424709B (ja)
WO (1) WO2020044909A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448292A (zh) * 2020-03-26 2021-09-28 株式会社安川电机 生产系统、数据发送方法和程序
JP7562051B1 (ja) 2024-02-19 2024-10-04 三菱電機株式会社 データ収集プログラム、データ収集装置、データ収集システム及びデータ収集方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010246336A (ja) * 2009-04-09 2010-10-28 Toyota Industries Corp モータ制御装置およびモータ制御方法
JP2011172350A (ja) * 2010-02-17 2011-09-01 Konica Minolta Business Technologies Inc モータ駆動装置、モータ駆動システム及びマイクロコンピュータ
JP2015219616A (ja) 2014-05-15 2015-12-07 富士電機株式会社 監視制御システム
JP2017079009A (ja) * 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラのモニタ装置
JP2018151918A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 制御装置、データ構造、情報処理方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991010176A1 (en) * 1989-12-27 1991-07-11 Kabushiki Kaisha Komatsu Seisakusho Device for preventing erroneous operation when the clock is interrupted in a controller
US5477103A (en) * 1993-06-04 1995-12-19 Cirrus Logic, Inc. Sequence, timing and synchronization technique for servo system controller of a computer disk mass storage device
JP3278335B2 (ja) * 1995-10-25 2002-04-30 白山工業株式会社 Gps時刻出力装置及びgps時刻発生装置
US6173207B1 (en) * 1997-09-22 2001-01-09 Agilent Technologies, Inc. Real-time control system with non-deterministic communication
US6552817B1 (en) * 1998-08-14 2003-04-22 Ricoh Company, Ltd. Image forming apparatus
US6998996B1 (en) * 1998-12-03 2006-02-14 Agilent Technologies, Inc. Motion control using time synchronization
JP3546427B2 (ja) * 2000-04-05 2004-07-28 日本電気株式会社 2進カウンタを使用したカレンダー付き時計
JP2003255064A (ja) * 2002-02-28 2003-09-10 Seiko Epson Corp カレンダ制御装置および電子時計
JP2004199410A (ja) * 2002-12-18 2004-07-15 Fuji Xerox Co Ltd 履歴記録装置及び方法
JP3950847B2 (ja) * 2003-12-16 2007-08-01 埼玉日本電気株式会社 クロック同期システムおよびクロック同期方法
US7983769B2 (en) * 2004-11-23 2011-07-19 Rockwell Automation Technologies, Inc. Time stamped motion control network protocol that enables balanced single cycle timing and utilization of dynamic data structures
JP4610598B2 (ja) * 2007-10-18 2011-01-12 株式会社タニタ 通信システム、時刻付与装置、時刻受取装置、プログラム、時刻付与方法および時刻訂正方法
US8762588B2 (en) * 2011-04-11 2014-06-24 Rockwell Automation Technologies, Inc. Output module for an industrial controller
JP2013168850A (ja) * 2012-02-16 2013-08-29 Toshiba Corp 分散型制御システム
CN103988137B (zh) * 2012-06-26 2016-09-07 东芝三菱电机产业系统株式会社 数据收集系统、数据收集装置、以及数据收集方法
US10108179B2 (en) * 2013-04-10 2018-10-23 Mitsubishi Electric Corporation Numerical control device, information coordination system, and information coordination program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010246336A (ja) * 2009-04-09 2010-10-28 Toyota Industries Corp モータ制御装置およびモータ制御方法
JP2011172350A (ja) * 2010-02-17 2011-09-01 Konica Minolta Business Technologies Inc モータ駆動装置、モータ駆動システム及びマイクロコンピュータ
JP2015219616A (ja) 2014-05-15 2015-12-07 富士電機株式会社 監視制御システム
JP2017079009A (ja) * 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラのモニタ装置
JP2018151918A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 制御装置、データ構造、情報処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448292A (zh) * 2020-03-26 2021-09-28 株式会社安川电机 生产系统、数据发送方法和程序
JP7562051B1 (ja) 2024-02-19 2024-10-04 三菱電機株式会社 データ収集プログラム、データ収集装置、データ収集システム及びデータ収集方法

Also Published As

Publication number Publication date
CN112424709A (zh) 2021-02-26
JP7046320B2 (ja) 2022-04-04
US11796985B2 (en) 2023-10-24
EP3845983A4 (en) 2022-05-18
CN112424709B (zh) 2024-02-09
JPWO2020044909A1 (ja) 2021-08-12
EP3845983B1 (en) 2023-12-27
EP3845983A1 (en) 2021-07-07
US20210165393A1 (en) 2021-06-03

Similar Documents

Publication Publication Date Title
US10990084B2 (en) Control apparatus, data structure, and information processing method
US20210165393A1 (en) Industrial equipment controller and industrial equipment data collection system
US20180239339A1 (en) Data collection device and computer readable medium
CN106873506A (zh) 校正装置、校正装置的控制方法、信息处理程序及记录介质
US8901870B2 (en) Synchronous control apparatus
US20220004177A1 (en) Control device and non-transitory computer-readable recording medium recording program
CN112824059B (zh) 一种编码器数据转换方法、装置及设备
JP2018151726A (ja) 制御装置およびプログラム
EP2682830A1 (en) Control device and system program, and recording medium
WO2019107022A1 (ja) 制御装置および制御方法
US12072685B2 (en) Data collection system and motor controller
US11829130B2 (en) Control apparatus and non-transitory computer readable medium for detecting abnormality occurring in subject to be monitored
US10795406B2 (en) Work device and time-measuring method of work device
JP6653088B1 (ja) 産業機器のデータ収集システム及びモータ制御装置
US10209099B2 (en) Device and method for checking a clock signal of a position measuring device
US11640150B2 (en) Communication system, communication method, and information storage medium
US11703832B2 (en) Production system, communication method, and information storage medium
CN107053169B (zh) 一种总线型智能伺服驱动系统、机器人及方法
WO2022137580A1 (ja) 制御システム、サポート装置およびラベル付与方法
JP7562051B1 (ja) データ収集プログラム、データ収集装置、データ収集システム及びデータ収集方法
Schoeberlein et al. Data Management System for Drive-based Smart Data Services
JPH0656721U (ja) マルチターンアブソリュートエンコーダ

Legal Events

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

Ref document number: 19853352

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020540168

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019853352

Country of ref document: EP

Effective date: 20210331