WO2024013896A1 - 数値制御装置 - Google Patents
数値制御装置 Download PDFInfo
- Publication number
- WO2024013896A1 WO2024013896A1 PCT/JP2022/027597 JP2022027597W WO2024013896A1 WO 2024013896 A1 WO2024013896 A1 WO 2024013896A1 JP 2022027597 W JP2022027597 W JP 2022027597W WO 2024013896 A1 WO2024013896 A1 WO 2024013896A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- control
- control cycle
- state
- cycle
- numerical control
- Prior art date
Links
- 230000008859 change Effects 0.000 claims description 21
- 238000004458 analytical method Methods 0.000 claims description 7
- 238000013500 data storage Methods 0.000 claims description 6
- 230000002093 peripheral effect Effects 0.000 description 29
- 238000000034 method Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000000737 periodic effect Effects 0.000 description 9
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001746 injection moulding Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4063—Monitoring general control system
Definitions
- the present invention relates to a numerical control device.
- the numerical control section inputs and outputs data to and from the motor control section, peripheral device control section, etc. at a constant control cycle.
- Data input/output is performed in a process that is periodically executed at each predetermined control cycle. In order to execute data input/output processing without delay, it is necessary to complete a plurality of processes (periodic processing) that are periodically executed within a certain control cycle.
- the numerical control device solves the above problem by dynamically changing the control period for executing periodic processing according to the state related to the operation of the numerical control device.
- One aspect of the present disclosure is a numerical control device that inputs and outputs control information to and from a controlled object, the numerical control unit inputting and outputting the control information to and from the controlled object at a predetermined control cycle. and a control cycle determination unit that compares information regarding the operating state of the numerical control device with a predetermined threshold value and determines the necessity of changing the length of the control cycle based on the comparison result. , a control period changing section that changes the length of the control period based on a determination result of the control period determining section.
- control period is dynamically changed in accordance with the state of the numerical control device during execution of processing by the numerical control device, and an uncontrollable situation due to the execution time of periodic processing exceeding the control period is prevented. It is hoped that this will no longer occur.
- FIG. 1 is a schematic hardware configuration diagram of a numerical control device according to an embodiment of the present invention.
- FIG. 1 is a block diagram schematically showing functions of a numerical control device according to a first embodiment of the present invention.
- FIG. 3 is a diagram illustrating an example of processing executed every control cycle in a normal state.
- FIG. 3 is a diagram illustrating an example of the operation of a conventional numerical control device when the amount of control information to be processed increases more than expected.
- FIG. 6 is a diagram illustrating an example of the operation of the numerical control device according to the first embodiment when the amount of control information to be processed increases.
- FIG. 2 is a block diagram schematically showing functions of a numerical control device according to a second embodiment of the present invention.
- FIG. 3 is a block diagram schematically showing functions of a numerical control device according to a third embodiment of the present invention. This is an example of display of information regarding the state and the length of the changed control cycle. This is another display example of information regarding the state and the length of the changed control cycle. This is another display example of information regarding the state and the length of the changed control cycle.
- FIG. 1 is a schematic hardware configuration diagram showing the main parts of a numerical control device according to an embodiment of the present invention.
- the numerical control device 1 according to this embodiment can be implemented as a numerical control device that controls an industrial machine 2 installed at a manufacturing site such as a factory. Examples of the industrial machine 2 include a machining center, an electric discharge machine, an injection molding machine, and a robot.
- the CPU 11 included in the numerical control device 1 is a processor that controls the numerical control device 1 as a whole.
- the CPU 11 reads a system program stored in the ROM 12 via the bus 22, and controls the entire numerical control device 1 according to the system program.
- the RAM 13 temporarily stores temporary calculation data, display data, various data input from the outside, and the like.
- the non-volatile memory 14 is composed of, for example, a memory backed up by a battery (not shown), a solid state drive (SSD), etc., and the stored state is maintained even when the power of the numerical control device 1 is turned off.
- the nonvolatile memory 14 stores data acquired from the industrial machine 2, control programs and data read from the external device 72 via the interface 15, control programs and data input via the input device 71, and the network. Control programs, data, etc. acquired from other devices via the storage device are stored.
- the control program and data stored in the non-volatile memory 14 may be expanded to the RAM 13 at the time of execution/use. Further, various system programs such as a known analysis program are written in the ROM 12 in advance.
- the interface 15 is an interface for connecting the CPU 11 of the numerical control device 1 to an external device 72 such as a USB device.
- control programs and setting data used to control the industrial machine 2 are read from the external device 72 side. Further, the control program, setting data, etc. edited in the numerical control device 1 can be stored in external storage means via the external device 72.
- a PLC (programmable logic controller) 16 executes a ladder program to control equipment attached to the industrial machine 2 (for example, multiple sensors such as a temperature sensor and a humidity sensor, actuators such as robots placed around the device, etc.) A signal is output and controlled via the I/O unit 19.
- the PLC 16 is built inside the numerical control device 1 in FIG. 1, the PLC 16 may be connected to the outside of the numerical control device 1.
- the display device 70 outputs and displays each data read into the memory, data obtained as a result of executing a program, etc. via the interface 17. Further, an input device 71 composed of a keyboard, a pointing device, etc. passes commands, data, etc. based on operations by an operator to the CPU 11 via the interface 18.
- the axis control circuit 30 for controlling the axes of the industrial machine 2 receives a command from the CPU 11 to move the axis by a predetermined amount of movement, and outputs the axis command to the servo amplifier 40. Upon receiving this command, the servo amplifier 40 drives a servo motor 50 that moves an axis of the machine tool.
- the axis servo motor 50 has a built-in position/velocity detector, and feeds back position/velocity feedback signals from this position/velocity detector to the axis control circuit 30 to perform position/velocity feedback control.
- Only one axis control circuit 30, one servo amplifier 40, and one servo motor 50 are shown in the hardware configuration diagram of FIG. 1, the actual number of axes provided in the industrial machine 2 to be controlled is only will be prepared.
- the axis control circuit 30 is built inside the numerical control device 1 in FIG. 1, the axis control circuit 30 may be connected to the outside of the numerical control device 1.
- FIG. 2 is a schematic block diagram showing functions provided in the numerical control device 1 according to the first embodiment of the present invention.
- Each function provided in the numerical control device 1 according to the present embodiment is realized by the CPU 11 provided in the numerical control device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the numerical control device 1. .
- the numerical control device 1 of this embodiment includes a numerical control section 100, a motor control section 110, a peripheral device control section 120, a control cycle determining section 130, and a control cycle changing section 140. Further, a control program 200 including commands for controlling the industrial machine 2 is stored in advance in the RAM 13 or the nonvolatile memory 14 of the numerical control device 1 .
- the numerical control unit 100 sequentially reads each block of the control program 200 and analyzes the instructions of the block. It also analyzes signals from peripheral devices of the industrial machine 2 and the like. Next, the numerical control unit 100 creates control information related to the control of the servo motor 50 and peripheral devices included in the industrial machine 2 based on the analysis result. The created control information is input/output between the motor control section 110 and the peripheral device control section 120 at a predetermined control cycle.
- the control information created by the numerical control unit 100 may be information related to axis movement for controlling each axis included in the industrial machine 2, for example. Further, the control information created by the numerical control unit 100 may be information related to a signal for controlling a peripheral device of the industrial machine 2, for example.
- the numerical control unit 100 executes each process at a predetermined control cycle (for example, 8 ms).
- a predetermined control cycle for example, 8 ms.
- the control cycle change unit 140 instructs to change the control cycle
- the numerical control unit 100 performs each process in the instructed control cycle.
- the numerical control unit 100 acquires information regarding the operational state of the numerical control device 1 from each part of the numerical control device 1.
- Information related to this state includes, for example, the control program 200 to be analyzed within the current control cycle, the block number of the control program to be analyzed within the current control cycle, and the control program to be analyzed within the current control cycle.
- the information related to the state may include a plurality of pieces of information described above.
- the numerical control unit 100 outputs information regarding these acquired states to the control cycle determination unit 130.
- the motor control unit 110 controls the servo motor 50 included in the industrial machine 2 based on the control information input from the numerical control unit 100. Further, control information related to the operation of the servo motor 50 is output to the numerical control section 100.
- the motor control unit 110 operates at a predetermined control cycle (for example, 8 ms) at the time when the numerical control device 1 starts controlling the industrial machine 2 based on the control program 200. On the other hand, when the control cycle change unit 140 instructs to change the control cycle, the motor control unit 110 performs processing at the commanded control cycle.
- the motor control unit 110 is built inside the numerical control device 1 in FIG. 2, the motor control unit 110 may be connected to the outside of the numerical control device 1.
- the peripheral device control unit 120 outputs a predetermined signal to the peripheral device of the industrial machine 2 based on the control information input from the numerical control unit 100. It also outputs control information related to signals input from peripheral devices to the numerical control unit 100.
- the peripheral device control unit 120 operates at a predetermined control cycle (for example, 8 ms) at the time when the numerical control device 1 starts controlling the industrial machine 2 based on the control program 200.
- the control cycle change unit 140 issues a command to change the control cycle
- the peripheral device control unit 120 performs processing in accordance with the commanded control cycle.
- the peripheral device control section 120 is built inside the numerical control device 1 in FIG. 2, the peripheral device control section 120 may be connected to the outside of the numerical control device 1.
- the control cycle determination unit 130 determines whether it is necessary to change the length of the control cycle related to the processing of each control unit, based on the information related to the state input from the numerical control unit 100.
- the control cycle determining unit 130 compares the information related to the state with a predetermined threshold value set in advance for the information related to the state. Then, if the information regarding the state exceeds a predetermined threshold value, it is determined that the control cycle needs to be changed. For example, it is assumed that a threshold value Th ds is set in advance for the amount of data of control information input/output between the motor control unit 110 and the peripheral device control unit 120 as information related to the state.
- control period determining section 130 compares the data amount of control information to be exchanged with each control section within the current control period inputted from the numerical control section 100 with the threshold value Th ds . If the amount of control information to be exchanged is less than or equal to the threshold value Th ds , the control cycle determination unit 130 determines that there is no need to change the control cycle. On the other hand, if the threshold Th ds is exceeded, it is determined that the length of the current control cycle needs to be changed. This determination process includes, for example, the amount of blocks of the control program 200 to be analyzed within the current control cycle, the amount of processing load related to the analysis of the blocks, the amount of signals to be processed, the amount of control information data to be created, etc. It may be done based on. Alternatively, the determination may be made in consideration of parameters related to control of the industrial machine 2. Control period determining section 130 outputs the determination result to control period changing section 140.
- the control cycle change unit 140 instructs the numerical control unit 100, motor control unit 110, and peripheral device control unit 120 to change the length of the current control cycle based on the result of the determination by the control cycle determination unit 130. .
- the length of the control cycle changed by the control cycle changing unit 140 may be set in advance for each threshold value used for determination. It is desirable that the length of this control cycle is set to a length sufficient to complete processing regarding information regarding the state. That is, for example, when the information related to the state is the input/output amount of control information, the time period is set to be long when the value is larger than the threshold value, and short when the value is smaller than the threshold value.
- the control cycle changing unit 140 instructs each control unit to return to a predetermined control cycle.
- FIG. 3 shows an example of processing executed every control cycle in a normal state.
- the numerical control unit 100 executes a program analysis process and a signal analysis process as processes executed in each control cycle.
- the numerical control unit 100 executes program analysis processing and signal analysis processing in each control cycle. In each process, input of control information, analysis processing, and output of control information created as a result are performed.
- the length of the control cycle is fixed to a preset length (8 ms in the figure).
- the numerical control section 100 executes each process within this determined control cycle and outputs the created control information to the motor control section 110 and the peripheral device control section 120.
- the motor control unit 110 and the peripheral device control unit 120 operate on the premise that control information is input at the same control cycle.
- FIG. 4 shows an example of the operation of a conventional numerical control device when the amount of control information to be processed increases more than expected.
- the number of control program blocks to be processed in the second control cycle increases, and the processing to be performed by the numerical control unit within the control cycle is not completed.
- the motor control section and the peripheral device control section operate on the assumption that control information is input at the same control cycle, so that the control information from the numerical control section is Control information cannot be received and operation becomes unstable.
- FIG. 5 shows an example of the operation of the numerical control device 1 according to this embodiment when the amount of control information to be processed increases.
- the numerical control unit 100 estimates the amount of control information to be processed in a control cycle based on the number and type of blocks of the control program 200 that have been read in advance. Then, the control period determining section 130 and the control period changing section 140 change the length of the control period according to the estimated amount of control information to be processed. In the example of FIG. 5, the length of the second control period is changed to 12 ms.
- the control period is dynamically changed according to the state of the numerical control device 1 during execution of processing, and the execution time of periodic processing exceeds the control period. It is hoped that uncontrollable situations will no longer occur. It is expected that the response with the control equipment will be as fast as possible by executing the control at a control cycle according to the state of the numerical control device 1.
- the control cycle determination unit 130 may determine whether to change the length of the control cycle in stages using a plurality of threshold values in the determination process. For example, threshold values Th ds1 , Th ds2 , Th ds3 , Th ds4 (however, , Th ds1 ⁇ Th ds2 ⁇ Th ds3 ⁇ Th ds4 ). At this time, the control period determining section 130 compares the data amount D c of control information to be exchanged with each control section within the control period inputted from the numerical control section 100 with each threshold value.
- the control cycle determination unit 130 determines that there is no need to change the control cycle. Further, if Th ds1 ⁇ D c ⁇ Th ds2 , it is determined that the control period needs to be changed by one step. Further, if Th ds2 ⁇ D c ⁇ Th ds3 , it is determined that the control period needs to be changed by two steps. Further, if Th ds3 ⁇ D c ⁇ Th ds4 , it is determined that the control period needs to be changed in three steps. Further, if Th ds4 ⁇ D c , it is determined that the control period needs to be changed in four steps.
- control cycle changing unit 140 instructs the numerical control unit 100, motor control unit 110, and peripheral device control unit 120 to change the length of the control cycle to the length set according to each stage. command to.
- the numerical control device 1 according to this modification allows flexible changes in the control cycle depending on the state of the numerical control device 1.
- FIG. 6 is a schematic block diagram showing the functions provided in the numerical control device 1 according to the second embodiment of the present invention.
- Each function provided in the numerical control device 1 according to the present embodiment is realized by the CPU 11 provided in the numerical control device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the numerical control device 1. .
- the numerical control device 1 of this embodiment includes a numerical control section 100, a motor control section 110, a peripheral device control section 120, a control cycle determining section 130, and a control cycle changing section 140. Further, a control program 200 including commands for controlling the industrial machine 2 is stored in advance in the RAM 13 or the nonvolatile memory 14 of the numerical control device 1 . Further, in the RAM 13 or nonvolatile memory 14 of the numerical control device 1, a state data storage section 210, which is an area for storing data related to the states of the numerical control device 1 and the industrial machine 2, is prepared in advance.
- the motor control section 110, peripheral device control section 120, and control cycle changing section 140 according to this embodiment operate in the same manner as each function according to the first embodiment.
- the numerical control unit 100 according to the present embodiment stores information related to the operation state acquired from each unit of the numerical control device 1 as time-series data in the state data storage unit 210. Other operations of the numerical control section 100 are similar to those of the numerical control section 100 according to the first embodiment.
- the control period determining unit 130 determines information regarding the operational state of the numerical control device 1 in the current control cycle based on time series data of information regarding the state stored in the state data storage unit 210. presume. Then, based on the estimation result, the necessity of changing the length of the control period related to the processing of each control unit is determined.
- the control cycle determination unit 130 may estimate information related to the state in the current control cycle, for example, based on a change tendency of the information related to the state. For example, if the amount of control information input and output between the numerical control section 100, motor control section 110, and peripheral device control section 120 tends to increase, the amount of control information in the current control cycle also increases. Then, it can be estimated.
- the control cycle determination unit 130 determines whether the length of the control cycle needs to be changed based on information related to the estimated state.
- the other operations of the control cycle determining section 130 are similar to those of the numerical control section 100 according to the first embodiment.
- the numerical control device 1 estimates the value of the information related to the state in the control cycle based on the information related to the state stored in the past. If the estimation accuracy improves, it becomes possible to appropriately set the period length in the control period.
- FIG. 7 is a schematic block diagram showing the functions of the numerical control device 1 according to the third embodiment of the present invention.
- Each function provided in the numerical control device 1 according to the present embodiment is realized by the CPU 11 provided in the numerical control device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the numerical control device 1. .
- the numerical control device 1 includes a numerical control section 100, a motor control section 110, a peripheral device control section 120, a control cycle determining section 130, a control cycle changing section 140, and a display section 150. Further, a control program 200 including commands for controlling the industrial machine 2 is stored in advance in the RAM 13 or the nonvolatile memory 14 of the numerical control device 1 .
- the numerical control section 100, motor control section 110, peripheral device control section 120, control period determination section 130, and control period changing section 140 operate in the same manner as each function according to the first embodiment.
- the display unit 150 displays on the display device 70 the state related to the operational state of the numerical control device 1 acquired by the numerical control unit 100 and the length of the control cycle changed by the control cycle changing unit 140. For example, as illustrated in FIG. 8, the display unit 150 displays information regarding a predetermined state and the length of the changed control period at a predetermined period (for example, a 1-second period) as an instantaneous value or an average value. The value and peak value may be displayed. Further, as illustrated in FIG.
- information regarding a predetermined state and the length of the changed control period may be displayed in a time-series graph. Furthermore, as illustrated in FIG. 10, not only information related to the overall state of the numerical control device 1 but also information related to the state of each machine group and each system may be displayed.
- the numerical control device 1 according to the present embodiment having the above configuration can easily recognize the current operating status of the numerical control device 1 because the information related to the state and the change in the value of the control cycle can be grasped at a glance. becomes possible.
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
Abstract
本開示による数値制御装置は、制御対象との間で制御情報を入出力する数値制御装置であって、所定の制御周期で制御情報を制御対象との間で入出力する数値制御部と、数値制御装置の動作の状態に係る情報と予め定めた所定の閾値とを比較し、その比較結果に基づいて制御周期の長さを変更する必要性を判定する制御周期判定部と、制御周期判定部の判定結果に基づいて、制御周期の長さを変更する制御周期変更部と、を備える。
Description
本発明は、数値制御装置に関する。
数値制御装置は、数値制御部がモータ制御部や周辺機器制御部などと一定の制御周期でデータを入出力している。データの入出力は、所定の制御周期毎に周期的に実行される処理の中で行われる。データの入出力処理を遅延なく実行するためには、一定の制御周期内で周期的に実行される複数の処理(周期処理)を完了する必要がある。
しかしながら、以下の要因により数値制御装置が実行する周期処理の数と処理量が増大している。
-機械の多軸化によるそれぞれの周期処理の処理数の増加
-機械の多機能化による周期処理の数の増加
-数値制御装置で実行されるプログラム指令の高負荷化
-高負荷となるパラメータ設定、信号設定の増加
そのため、周期処理が一定周期で完了せず、データを入出力できない場合がある。なお、高速指令を行う軸に対して制御周期を変更することで、周期処理を高速に実行することが従来行われている(例えば、特許文献1,2など)。
-機械の多軸化によるそれぞれの周期処理の処理数の増加
-機械の多機能化による周期処理の数の増加
-数値制御装置で実行されるプログラム指令の高負荷化
-高負荷となるパラメータ設定、信号設定の増加
そのため、周期処理が一定周期で完了せず、データを入出力できない場合がある。なお、高速指令を行う軸に対して制御周期を変更することで、周期処理を高速に実行することが従来行われている(例えば、特許文献1,2など)。
数値制御装置で実行される周期処理が増大した結果、一定の制御周期でデータを入出力することができず、数値制御装置として安定した機械の制御ができなくなる場合がある。一方で、制御周期内で周期処理を完了させるため制御周期を過大に設定すると、制御自体は安定するものの、制御機器との応答が遅くなるという問題が生じる。
そこで、動作状態に応じて適切な制御周期の長さを設定できる技術が望まれている。
そこで、動作状態に応じて適切な制御周期の長さを設定できる技術が望まれている。
本開示による数値制御装置は、数値制御装置の動作に係る状態に応じて、周期処理を実行するための制御周期を動的に変更することで、上記課題を解決する。
そして、本開示の一態様は、制御対象との間で制御情報を入出力する数値制御装置であって、所定の制御周期で前記制御情報を前記制御対象との間で入出力する数値制御部と、前記数値制御装置の動作の状態に係る情報と予め定めた所定の閾値とを比較し、その比較結果に基づいて前記制御周期の長さを変更する必要性を判定する制御周期判定部と、前記制御周期判定部の判定結果に基づいて、前記制御周期の長さを変更する制御周期変更部と、を備える数値制御装置である。
本開示の一態様により、数値制御装置の処理の実行において、数値制御装置の状態に応じて動的に制御周期が変更され、周期処理の実行時間が制御周期を超えることによる制御不能な状況が発生しなくなることが期待される。
以下、本発明の実施形態を図面と共に説明する。
図1は本発明の一実施形態による数値制御装置の要部を示す概略的なハードウェア構成図である。本実施形態による数値制御装置1は、工場などの製造現場に設置された産業機械2を制御する数値制御装置として実装することができる。産業機械2は、例えばマシニングセンタや放電加工機、射出成形機、ロボットなどが例示される。
図1は本発明の一実施形態による数値制御装置の要部を示す概略的なハードウェア構成図である。本実施形態による数値制御装置1は、工場などの製造現場に設置された産業機械2を制御する数値制御装置として実装することができる。産業機械2は、例えばマシニングセンタや放電加工機、射出成形機、ロボットなどが例示される。
本実施形態による数値制御装置1が備えるCPU11は、数値制御装置1を全体的に制御するプロセッサである。CPU11は、バス22を介してROM12に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って数値制御装置1全体を制御する。RAM13には一時的な計算データや表示データ、及び外部から入力された各種データ等が一時的に格納される。
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、数値制御装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、産業機械2から取得されたデータ、インタフェース15を介して外部機器72から読み込まれた制御用プログラムやデータ、入力装置71を介して入力された制御用プログラムやデータ、ネットワークを介して他の装置から取得された制御用プログラムやデータ等が記憶される。不揮発性メモリ14に記憶された制御用プログラムやデータは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、公知の解析プログラムなどの各種システム・プログラムがあらかじめ書き込まれている。
インタフェース15は、数値制御装置1のCPU11とUSB装置等の外部機器72と接続するためのインタフェースである。外部機器72側からは、例えば産業機械2の制御に用いられる制御用プログラムや設定データ等が読み込まれる。また、数値制御装置1内で編集した制御用プログラムや設定データ等は、外部機器72を介して外部記憶手段に記憶させることができる。PLC(プログラマブル・ロジック・コントローラ)16は、ラダープログラムを実行して産業機械2に取り付けられた設備(例えば、温度センサ、湿度センサ等の複数のセンサ、周辺に配置されるロボット等のアクチュエータなど)にI/Oユニット19を介して信号を出力し制御する。また、産業機械2の本体に配備された操作盤の各種スイッチや周辺装置等の信号を受け、必要な信号処理をした後、CPU11に渡す。なお、図1ではPLC16は数値制御装置1の内部に内蔵されているが、PLC16は数値制御装置1の外部に接続された形態であってもよい。
表示装置70には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース17を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置71は、オペレータによる操作に基づく指令、データ等をインタフェース18を介してCPU11に渡す。
産業機械2が備える軸を制御するための軸制御回路30はCPU11から軸を所定の移動量だけ移動させる指令を受けて、軸の指令をサーボアンプ40に出力する。サーボアンプ40はこの指令を受けて、工作機械が備える軸を移動させるサーボモータ50を駆動する。軸のサーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にフィードバックし、位置・速度のフィードバック制御を行う。なお、図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50は1つずつしか示されていないが、実際には制御対象となる産業機械2に備えられた軸の数だけ用意される。なお、図1では軸制御回路30は数値制御装置1の内部に内蔵されているが、軸制御回路30は数値制御装置1の外部に接続された形態であってもよい。
図2は、本発明の第1実施形態による数値制御装置1が備える機能を概略的なブロック図として示したものである。本実施形態による数値制御装置1が備える各機能は、図1に示した数値制御装置1が備えるCPU11がシステム・プログラムを実行し、数値制御装置1の各部の動作を制御することにより実現される。
本実施形態の数値制御装置1は、数値制御部100、モータ制御部110、周辺装置制御部120、制御周期判定部130、制御周期変更部140を備える。また、数値制御装置1のRAM13又は不揮発性メモリ14には、産業機械2を制御する指令を含む制御用プログラム200があらかじめ記憶されている。
数値制御部100は、制御用プログラム200の各ブロックを順次読み出し、該ブロックの指令を解析する。また、産業機械2の周辺装置などからの信号を解析する。次に、数値制御部100は、その解析結果に基づいて産業機械2が備えるサーボモータ50や、周辺装置などの制御に係る制御情報を作成する。そして、所定の制御周期でモータ制御部110、周辺装置制御部120との間で作成した制御情報を入出力する。数値制御部100が作成する制御情報は、例えば産業機械2が備える各軸を制御するための軸移動に係る情報であってもよい。また、数値制御部100が作成する制御情報は、例えば産業機械2の周辺装置を制御するための信号に係る情報であってもよい。数値制御装置1が制御用プログラム200に基づく産業機械2の制御を開始した時点では、数値制御部100は予め定めた所定の制御周期(例えば、8ms)でそれぞれの処理を実行する。一方、制御周期変更部140により制御周期の変更が指令されると、数値制御部100は指令された制御周期でそれぞれの処理を行う。
また、数値制御部100は、数値制御装置1の動作の状態に係る情報を数値制御装置1の各部から取得する。この状態に係る情報は、例えば今回の制御周期内において解析するべき制御用プログラム200、今回の制御周期内において解析するべき該制御用プログラムのブロック番号、今回の制御周期内において解析するべき該制御用プログラム200のブロックの量、今回の制御周期内において解析するべき該ブロックの解析に係る処理負荷量、今回の制御周期内において解析するべき処理するべき信号の量、今回の制御周期内において作成される制御情報のデータ量、今回の制御周期内においてモータ制御部110及び周辺装置制御部120との間で入出力される制御情報のデータ量、RAM13や不揮発性メモリ14、制御用プログラム200において設定される産業機械2の制御に係るパラメータなどであってもよい。状態に係る情報は、上記した情報を複数含んでいてもよい。数値制御部100は、これらの取得した状態に係る情報を、制御周期判定部130へと出力する。
モータ制御部110は、数値制御部100から入力された制御情報に基づいて、産業機械2が備えるサーボモータ50を制御する。また、サーボモータ50の動作に係る制御情報を数値制御部100に対して出力する。モータ制御部110は、数値制御装置1が制御用プログラム200に基づく産業機械2の制御を開始した時点では、予め定められた所定の制御周期(例えば、8ms)で動作する。一方、制御周期変更部140により制御周期の変更が指令されると、モータ制御部110は指令された制御周期で処理を行う。なお、図2ではモータ制御部110は数値制御装置1の内部に内蔵されているが、モータ制御部110は数値制御装置1の外部に接続された形態であってもよい。
周辺装置制御部120は、数値制御部100から入力された制御情報に基づいて、産業機械2の周辺装置に対して所定の信号を出力する。また、周辺装置から入力された信号に係る制御情報を数値制御部100に対して出力する。周辺装置制御部120は、数値制御装置1が制御用プログラム200に基づく産業機械2の制御を開始した時点では、予め定められた所定の制御周期(例えば、8ms)で動作する。一方、制御周期変更部140により制御周期の変更が指令されると、周辺装置制御部120は指令された制御周期で処理を行う。なお、図2では周辺装置制御部120は数値制御装置1の内部に内蔵されているが、周辺装置制御部120は数値制御装置1の外部に接続された形態であってもよい。
制御周期判定部130は、数値制御部100から入力された状態に係る情報に基づいて、各制御部の処理に係る制御周期の長さの変更の必要性を判定する。制御周期判定部130は、状態に係る情報と、該状態に係る情報に対して予め設定されている所定の閾値とを比較する。そして、状態に係る情報が所定の閾値を超えている場合に、制御周期を変更する必要があると判定する。例えば、状態に係る情報としてのモータ制御部110及び周辺装置制御部120との間で入出力される制御情報のデータ量に対して、予め閾値Thdsが設定されているとする。この時、制御周期判定部130は、数値制御部100から入力された今回の制御周期内において各制御部とやり取りするべき制御情報のデータ量と閾値Thdsとを比較する。そして、やり取りするべき制御情報のデータ量が閾値Thds以下である場合、制御周期判定部130は、制御周期の変更は必要ないと判定する。一方で、閾値Thdsが超えている場合、今回の制御周期の長さを変更する必要があると判定する。この判定処理は、例えば今回の制御周期内において解析するべき制御用プログラム200のブロックの量、該ブロックの解析に係る処理負荷量、処理するべき信号の量、作成される制御情報のデータ量などに基づいて行ってもよい。また、産業機械2の制御に係るパラメータを考慮した判定としてもよい。制御周期判定部130は、その判定結果を制御周期変更部140へと出力する。
制御周期変更部140は、制御周期判定部130による判定の結果に基づいて、今回の制御周期の長さを変更するように数値制御部100、モータ制御部110、周辺装置制御部120へ指令する。制御周期変更部140が変更する制御周期の長さは、判定に用いる閾値毎に予め設定されていてもよい。この制御周期の長さは、状態に係る情報に関する処理が終了するために十分な長さに設定されていることが望ましい。即ち、例えば状態に係る情報が制御情報の入出力量である場合、その値が閾値よりも大きい場合に長く、その値が閾値よりも小さい場合に短く設定する。制御周期内における数値制御部100の処理が多くなることが状態に係る情報から把握できるのであれば制御周期の長さを長くする。また、処理が少なくなることが把握できるのであれば制御周期の長さを短くする。また、制御周期変更部140は、制御周期判定部130が制御周期の変更は必要ないと判定した場合、各制御部に対して予め定められた所定の制御周期に戻すように指令する。
図3は、通常の状態において制御周期毎に実行される処理の例を示している。説明を簡単にするために、図3の例では、数値制御部100は制御周期毎に実行する処理として、プログラム解析処理及び信号解析処理を実行しているものとしている。数値制御部100は、それぞれの制御周期においてプログラム解析処理と信号解析処理を実行する。それぞれの処理では、制御情報の入力と、解析処理と、その結果として作成した制御情報の出力が行われる。通常の状態においては、制御周期の長さは予め設定された長さ(図では8ms)に固定されている。数値制御部100は、この定められた制御周期内に各処理を実行して、作成した制御情報をモータ制御部110、周辺装置制御部120へと出力している。モータ制御部110、周辺装置制御部120は、同じ制御周期で制御情報が入力されることを前提として動作する。
図4は、処理するべき制御情報の量が想定以上に増加した場合の従来技術による数値制御装置の動作例を示している。図4の例では、2番目の制御周期において処理するべき制御用プログラムのブロックが増加し、制御周期内で数値制御部がやるべき処理が完了していない。このような場合であっても、従来技術における数値制御装置では、モータ制御部及び周辺装置制御部は、同じ制御周期で制御情報が入力されることを前提として動作するため、数値制御部からの制御情報が受け取れなくなり、動作が不安定になる。
図5は、処理するべき制御情報の量が増加した場合の本実施形態による数値制御装置1の動作例を示している。図5の例では、図4の例と同様に、2番目の制御周期において処理するべき制御用プログラムのブロックが増加している。本実施形態による数値制御部100は、制御周期において処理するべき制御情報の量を、予め先読みなどしておいた制御用プログラム200のブロックの数や種類などに基づいて推定する。そして、その推定した処理すべき制御情報の量に応じて、制御周期判定部130、制御周期変更部140が制御周期の長さを変更する。図5の例では、2番目の制御周期の長さが12msに変更されている。この変更は、数値制御部100だけでなく、モータ制御部110、周辺装置制御部120にも指令される。そのため、それぞれの制御部は制御情報のデータ量(即ち、当該制御周期における処理量)が増加した場合であっても、制御周期内でタイミングを合わせて制御情報の入出力を行うことができるようになる。
上記構成を備えた本実施形態による数値制御装置1は、処理の実行において、数値制御装置1の状態に応じて動的に制御周期が変更され、周期処理の実行時間が制御周期を超えることによる制御不能な状況が発生しなくなることが期待される。数値制御装置1の状態に応じた制御周期で実行されることにより制御機器との応答が可能な限り高速になることが期待される。
本実施形態による数値制御装置1の一変形例として、制御周期判定部130は、判定処理において複数の閾値を用いて段階的な制御周期の長さの変更の判定をするようにしてもよい。例えば、状態に係る情報としてのモータ制御部110及び周辺装置制御部120との間で入出力される制御情報のデータ量に対して、予め閾値Thds1、Thds2、Thds3、Thds4(但し、Thds1<Thds2<Thds3<Thds4)が設定されているとする。この時、制御周期判定部130は、数値制御部100から入力された制御周期内において各制御部とやり取りするべき制御情報のデータ量Dcとそれぞれの閾値と比較する。そして、Dc≦Thds1である場合、制御周期判定部130は、制御周期の変更は必要ないと判定する。また、Thds1<Dc≦Thds2である場合、制御周期を1段階変更する必要があると判定する。また、Thds2<Dc≦Thds3である場合、制御周期を2段階変更する必要があると判定する。また、Thds3<Dc≦Thds4である場合、制御周期を3段階変更する必要があると判定する。また、Thds4<Dcである場合、制御周期を4段階変更する必要があると判定する。そして、この判定結果を受けた制御周期変更部140は、それぞれの段階に応じて設定された制御周期の長さへと変更するように数値制御部100、モータ制御部110、周辺装置制御部120へ指令する。本変形例による数値制御装置1は、数値制御装置1の状態に応じた柔軟な制御周期の変更が可能となる。
図6は、本発明の第2実施形態による数値制御装置1が備える機能を概略的なブロック図として示したものである。本実施形態による数値制御装置1が備える各機能は、図1に示した数値制御装置1が備えるCPU11がシステム・プログラムを実行し、数値制御装置1の各部の動作を制御することにより実現される。
本実施形態の数値制御装置1は、数値制御部100、モータ制御部110、周辺装置制御部120、制御周期判定部130、制御周期変更部140を備える。また、数値制御装置1のRAM13又は不揮発性メモリ14には、産業機械2を制御する指令を含む制御用プログラム200があらかじめ記憶されている。更に、数値制御装置1のRAM13又は不揮発性メモリ14には、数値制御装置1及び産業機械2の状態に係るデータを記憶するための領域である状態データ記憶部210があらかじめ用意されている。
本実施形態によるモータ制御部110、周辺装置制御部120、制御周期変更部140は、第1実施形態による各機能と同様の動作をする。
本実施形態による数値制御部100は、数値制御装置1の各部から取得した動作の状態に係る情報を、時系列データとして状態データ記憶部210に記憶する。数値制御部100のその他の動作は、第1実施形態による数値制御部100と同様である。
本実施形態による数値制御部100は、数値制御装置1の各部から取得した動作の状態に係る情報を、時系列データとして状態データ記憶部210に記憶する。数値制御部100のその他の動作は、第1実施形態による数値制御部100と同様である。
本実施形態による制御周期判定部130は、状態データ記憶部210に記憶されている状態に係る情報の時系列データに基づいて、今回の制御周期における数値制御装置1の動作の状態に係る情報を推定する。そして、その推定結果に基づいて、各制御部の処理に係る制御周期の長さの変更の必要性を判定する。制御周期判定部130は、例えば状態に係る情報の変化傾向に基づいて、今回の制御周期における状態に係る情報を推定してもよい。例えば、数値制御部100とモータ制御部110及び周辺装置制御部120との間で入出力される制御情報のデータ量が増加する傾向にある場合、今回の制御周期における制御情報のデータ量も増加すると推定することができる。また、減少する傾向にある場合は、今回の制御周期における制御情報のデータ量も増加すると推定することができる。別の例では、直近の所定の期間における状態に係る情報のグラフ形状と類似する形状をしている過去の期間を特定し、類似する過去の期間と同様の変化が起きるものとして状態に係る情報の値を推定するようにしてもよい。更に、状態に係る情報として制御用プログラム200の実行ブロック番号を記憶するようにしておき、同じ実行ブロックを実行している場合には他の状態に係る情報も似たような変化をするものとして制御周期における状態に係る情報を推定するようにしてもよい。そして、制御周期判定部130は、推定した状態に係る情報に基づいて制御周期の長さの変更の必要性を判定する。制御周期判定部130のその他の動作は、第1実施形態による数値制御部100と同様である。
上記構成を備えた本実施形態による数値制御装置1は、過去に記憶した状態に係る情報に基づいて、制御周期における状態に係る情報の値を推定する。推定の精度が向上すれば、制御周期における周期の長さを適切に設定することが可能となる。
図7は、本発明の第3実施形態による数値制御装置1が備える機能を概略的なブロック図として示したものである。本実施形態による数値制御装置1が備える各機能は、図1に示した数値制御装置1が備えるCPU11がシステム・プログラムを実行し、数値制御装置1の各部の動作を制御することにより実現される。
本実施形態による数値制御装置1は、数値制御部100、モータ制御部110、周辺装置制御部120、制御周期判定部130、制御周期変更部140、表示部150を備える。また、数値制御装置1のRAM13又は不揮発性メモリ14には、産業機械2を制御する指令を含む制御用プログラム200があらかじめ記憶されている。
本実施形態による数値制御部100、モータ制御部110、周辺装置制御部120、制御周期判定部130、制御周期変更部140は、第1実施形態による各機能と同様の動作をする。
本実施形態による表示部150は、数値制御部100が取得した数値制御装置1の動作の状態に係る状態及び制御周期変更部140が変更した制御周期の長さを表示装置70に表示する。表示部150は、例えば図8に例示するように、所定の状態に係る情報及び変更された制御周期の長さを、予め定めた所定の周期(例えば、1秒周期)で、瞬時値や平均値、ピーク値を表示するようにしてもよい。また、図9に例示するように、所定の状態に係る情報及び変更された制御周期の長さを時系列のグラフで表示するようにしてもよい。更に、図10に例示するように、数値制御装置1全体の状態に係る情報だけではなく、各機械グループ、各系統での状態に係る情報を表示するようにしてもよい。
本実施形態による表示部150は、数値制御部100が取得した数値制御装置1の動作の状態に係る状態及び制御周期変更部140が変更した制御周期の長さを表示装置70に表示する。表示部150は、例えば図8に例示するように、所定の状態に係る情報及び変更された制御周期の長さを、予め定めた所定の周期(例えば、1秒周期)で、瞬時値や平均値、ピーク値を表示するようにしてもよい。また、図9に例示するように、所定の状態に係る情報及び変更された制御周期の長さを時系列のグラフで表示するようにしてもよい。更に、図10に例示するように、数値制御装置1全体の状態に係る情報だけではなく、各機械グループ、各系統での状態に係る情報を表示するようにしてもよい。
上記構成を備えた本実施形態による数値制御装置1は、状態に係る情報と、制御周期の値との変化が一目で把握できるため、現在の数値制御装置1の動作状況を容易に認識することが可能となる。
以上、本発明の実施形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
1 数値制御装置
2 産業機械
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,17,18 インタフェース
16 PLC
19 I/Oユニット
22 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
70 表示装置
71 入力装置
72 外部機器
100 数値制御部
110 モータ制御部
120 周辺装置制御部
130 制御周期判定部
140 制御周期変更部
150 表示部
200 制御用プログラム
210 状態データ記憶部
2 産業機械
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,17,18 インタフェース
16 PLC
19 I/Oユニット
22 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
70 表示装置
71 入力装置
72 外部機器
100 数値制御部
110 モータ制御部
120 周辺装置制御部
130 制御周期判定部
140 制御周期変更部
150 表示部
200 制御用プログラム
210 状態データ記憶部
Claims (8)
- 制御対象との間で制御情報を入出力する数値制御装置であって、
所定の制御周期で前記制御情報を前記制御対象との間で入出力する数値制御部と、
前記数値制御装置の動作の状態に係る情報と予め定めた所定の閾値とを比較し、その比較結果に基づいて前記制御周期の長さを変更する必要性を判定する制御周期判定部と、
前記制御周期判定部の判定結果に基づいて、前記制御周期の長さを変更する制御周期変更部と、
を備える数値制御装置。 - 前記制御周期変更部は、前記状態に係る情報が前記閾値より小さい場合には制御周期の長さを短く変更し、前記状態に係る情報が前記閾値より大きい場合には制御周期の長さを長くする、
請求項1に記載の数値制御装置。 - 前記制御周期変更部が変更する制御周期の長さは、前記状態に係る情報に係る処理が終了するために十分な長さである、
請求項1に記載の数値制御装置。 - 前記状態に係る情報は、前記制御対象との間で入出力される制御情報のデータ量である、
請求項1に記載の数値制御装置。 - 前記状態に係る情報及び前記制御周期変更部が変更した制御周期の長さを表示する表示部を更に備える、
請求項1に記載の数値制御装置。 - 前記表示部は、前記状態に係る情報を前記数値制御装置全体、系統、機械グループに分けて表示する、
請求項5に記載の数値制御装置。 - 前記状態に係る情報の時系列データを記憶する状態データ記憶部を更に備え、
前記制御周期判定部は、前記状態データ記憶部に記憶された前記状態に係る情報の時系列データに基づいて前記状態に係る情報の変化を推定し、その推定結果に基づいて過去の制御周期を超えた場合の時系列データに基づいて前記制御周期の長さを変更する必要性を判定する、
請求項1に記載の数値制御装置。 - 前記状態に係る情報は、制御周期内において解析するべき制御用プログラム、制御周期内において解析するべき該制御用プログラムのブロック番号、制御周期内において解析するべき該制御用プログラムのブロックの量、制御周期内において解析するべき該ブロックの解析に係る処理負荷量、制御周期内において処理するべき信号の量、制御周期内において作成される制御情報のデータ量、制御周期内において前記制御対象との間で入出力される制御情報のデータ量、設定されている制御に係るパラメータの少なくともいずれかを含む、
請求項1に記載の数値制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/027597 WO2024013896A1 (ja) | 2022-07-13 | 2022-07-13 | 数値制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/027597 WO2024013896A1 (ja) | 2022-07-13 | 2022-07-13 | 数値制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024013896A1 true WO2024013896A1 (ja) | 2024-01-18 |
Family
ID=89536179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/027597 WO2024013896A1 (ja) | 2022-07-13 | 2022-07-13 | 数値制御装置 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024013896A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272420A (ja) * | 1995-03-29 | 1996-10-18 | Mitsubishi Electric Corp | 位置決め装置 |
JP2007249903A (ja) * | 2006-03-20 | 2007-09-27 | Yaskawa Electric Corp | モニタ装置 |
-
2022
- 2022-07-13 WO PCT/JP2022/027597 patent/WO2024013896A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272420A (ja) * | 1995-03-29 | 1996-10-18 | Mitsubishi Electric Corp | 位置決め装置 |
JP2007249903A (ja) * | 2006-03-20 | 2007-09-27 | Yaskawa Electric Corp | モニタ装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4282631B2 (ja) | テーブル形式データで運転を行う数値制御装置 | |
JP4233540B2 (ja) | テーブル形式データを用いて各軸モータを駆動する数値制御装置 | |
US5986422A (en) | Control mode changing over method for servo control system | |
US20080103625A1 (en) | Numerical controller with machining resume function | |
CN109507879B (zh) | 控制装置以及机器学习装置 | |
US7301297B2 (en) | Synchronous control device | |
WO2024013896A1 (ja) | 数値制御装置 | |
US9622201B2 (en) | Synchronization of control device | |
JP2007304714A (ja) | 数値制御装置 | |
JP2673543B2 (ja) | サーボモータの制御における誤差過大検出方式 | |
US9798316B2 (en) | Motion controller capable of specifying program execution pace | |
US10401826B2 (en) | Numerical controller facilitating measure to be taken after detection of interference | |
US9823644B2 (en) | Numerical control device and numerical control system | |
JP6077601B2 (ja) | 加工プログラムのサイクルタイムを短縮する数値制御装置 | |
CN111316178B (zh) | 用于运行数控生产系统的方法及其生产系统 | |
US9983570B2 (en) | Multiple system numerical control device | |
US11262721B2 (en) | Automatic optimization of the parameterization of a movement controller | |
US20180181101A1 (en) | Numerical controller | |
CN106970652B (zh) | 运动控制器 | |
CN111324086B (zh) | 数值控制装置 | |
CN110568821B (zh) | 数值控制装置 | |
JP7568853B2 (ja) | 制御装置及び制御システム | |
WO2022097607A1 (ja) | 制御装置 | |
CN109308050B (zh) | 数值控制装置 | |
JP7469063B2 (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: 22951110 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2024533410 Country of ref document: JP |