JP2020184169A - Control device - Google Patents

Control device Download PDF

Info

Publication number
JP2020184169A
JP2020184169A JP2019087862A JP2019087862A JP2020184169A JP 2020184169 A JP2020184169 A JP 2020184169A JP 2019087862 A JP2019087862 A JP 2019087862A JP 2019087862 A JP2019087862 A JP 2019087862A JP 2020184169 A JP2020184169 A JP 2020184169A
Authority
JP
Japan
Prior art keywords
memory
determination unit
block
control device
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019087862A
Other languages
Japanese (ja)
Other versions
JP7303014B2 (en
Inventor
慎也 小川
Shinya Ogawa
慎也 小川
遠藤 勝博
Katsuhiro Endo
勝博 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019087862A priority Critical patent/JP7303014B2/en
Publication of JP2020184169A publication Critical patent/JP2020184169A/en
Application granted granted Critical
Publication of JP7303014B2 publication Critical patent/JP7303014B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Numerical Control (AREA)

Abstract

To provide a control device capable of executing a process by efficiently utilizing a memory even if a complex option function is required.SOLUTION: A control device 1 according to the present invention includes: a control command detail determining unit 120 that determines a process required in a block of an NC program 200 on the basis of the block read from the NC program 200 in advance and of the mechanical structure of a machine; a utilization plan deciding unit 130 that decides a plan for obtaining the necessary process, extracting the obtained process on a memory, and releasing an unnecessary process from the memory on the basis of the determination by the control command detail determining unit 120; a process obtaining unit 140 that obtains the necessary process on the basis of the decided plan by the utilization plan deciding unit 130; and a memory managing unit 150 that executes an extraction of the process on the memory and a release of the unnecessary process from the memory on the basis of the decided plan by the utilization plan deciding unit 130.SELECTED DRAWING: Figure 2

Description

本発明は、制御装置に関し、特に効率よくメモリを活用できる制御装置に関する。 The present invention relates to a control device, and more particularly to a control device capable of efficiently utilizing a memory.

従来、旋盤、研削盤、マシニングセンタなどの多種の工作機械において、多様化する用途、目的に応じて、さまざまな機能を実現するためのプロセスが開発され、個々の工作機械に拡張的に搭載されてきた。本発明においてプロセスとは、制御システムを構成する上位サーバや制御装置において、NCプログラムの解析や実行、システムの管理、ユーザの作業支援を行うために実行されるシステム・プログラムの実行単位のことを意味する。プロセスの例としては、事前にNCプログラムから実行形式データを生成する前処理プロセスや、加工に関する基本的な情報を表示するための基本画面プロセス、工作機械に取り付けられている工具を管理するための工具管理プロセス等が挙げられる。 Conventionally, in various machine tools such as lathes, grinders, and machining centers, processes for realizing various functions have been developed according to diversifying applications and purposes, and have been expandedly installed in individual machine tools. It was. In the present invention, a process is an execution unit of a system program executed to analyze and execute an NC program, manage a system, and support a user's work on a higher-level server or control device constituting a control system. means. Examples of processes include a pre-processing process that generates executable data from an NC program in advance, a basic screen process for displaying basic information about machining, and a tool for managing tools attached to a machine tool. The tool management process and the like can be mentioned.

汎用的な工作機械に、こうした様々なプロセスを追加的に搭載することにより、これらプロセスを展開するための大容量メモリと、これらプロセスを実行するための高性能CPUを搭載する必要があり、工作機械のコストが上がる原因となっていた。また、複数の工作機械を用いて加工を行う際に、たとえ同一の設定をする場合であっても作業者はそれぞれの工作機械の画面を見ながら入力装置を操作して設定をする必要があるため、これが作業効率低下の原因の一つとなっていた。 By additionally mounting these various processes on a general-purpose machine tool, it is necessary to mount a large-capacity memory for deploying these processes and a high-performance CPU for executing these processes. It was the cause of the increase in the cost of the machine. Further, when machining using a plurality of machine tools, the operator needs to operate the input device while looking at the screen of each machine tool to make the settings even if the same settings are made. Therefore, this was one of the causes of the decrease in work efficiency.

一方で、近年ではネットワーク技術の発展により、工場の工作機械をホストコンピュータやセルコントローラといった上位サーバに接続し、サーバからの加工指示や、制御命令に従って稼動するシステムが増えている。また、クラウドシステムのように、サーバ上でプロセスを実行し、その結果を工作機械で利用する形態もある。 On the other hand, in recent years, with the development of network technology, an increasing number of systems connect factory machine tools to higher-level servers such as host computers and cell controllers and operate according to processing instructions and control instructions from the servers. There is also a form in which a process is executed on a server and the result is used by a machine tool, as in a cloud system.

こうした中、特許文献1により、複数の工作機械の運転に必要とされるプロセスを、上位サーバと工作機械とのどちらで実行するのがシステム全体として効率がよいのかを決定するプロセス実行環境決定機構を上位サーバ上に設け、該プロセス実行環境決定機構が生産計画装置などから入力された情報に基づいて、各プロセスの最適な実行環境を決定する技術が提供された。 Under these circumstances, according to Patent Document 1, a process execution environment determination mechanism that determines whether it is more efficient for the entire system to execute the process required for operating a plurality of machine tools on either the upper server or the machine machine. Was provided on the upper server, and the process execution environment determination mechanism determines the optimum execution environment of each process based on the information input from the production planning device or the like.

特開2019−036020号公報JP-A-2019-036020

工作機械の運転に必要とされる各々のプロセスの実行環境が決定され、各々の工作機械の運転を開始する場合、工作機械を実行環境とするプロセスについては、自動運転が開始される前に上位サーバから工作機械に取得する。しかしながら、例えばある工作機械において多くの複雑なオプション機能が必要となる加工を行う場合には、そのオプション機能を提供するために必要とされるプロセスを全て予め取得しておく必要がある。この様な場合、当該工作機械には高性能CPUや大容量メモリが必要となる。このように、工作機械で行われる加工内容によっては、プロセス単位で実行環境を決定することによる効果が見込めない場合がある。
そこで、複雑なオプション機能が必要となる場合においてもメモリを効率良く利用してプロセスを実行することができる制御装置が望まれている。
When the execution environment of each process required for the operation of the machine tool is determined and the operation of each machine tool is started, the process using the machine tool as the execution environment is ranked higher before the automatic operation is started. Get from the server to the machine tool. However, for example, in the case of performing machining that requires many complicated optional functions in a certain machine tool, it is necessary to acquire all the processes required to provide the optional functions in advance. In such a case, the machine tool requires a high-performance CPU and a large-capacity memory. As described above, depending on the processing content performed by the machine tool, the effect of determining the execution environment for each process may not be expected.
Therefore, there is a demand for a control device that can execute a process by efficiently using a memory even when a complicated optional function is required.

本発明の一態様による制御装置は、自動運転中に、必要なプロセスの取得と不要になったプロセスの解放を動的に行い、小容量のメモリを効率的に使用できるような運用方法を決定することで、上記課題を解決する。 The control device according to one aspect of the present invention dynamically acquires necessary processes and releases unnecessary processes during automatic operation, and determines an operation method that enables efficient use of a small amount of memory. By doing so, the above problem is solved.

そして、本発明の一態様は、機械を制御するためのNCプログラムのブロックによる指令を解析及び実行をする複数のプロセスを管理する制御装置において、前記NCプログラムから先読みされたブロック及び前記機械の機械構成に基づいて、前記NCプログラムのブロックにおいて必要となるプロセスの判定を行う制御指令内容判定部と、前記制御指令内容判定部における前記判定に基づき、必要となるプロセスの取得及びメモリ上への展開と、不要となるプロセスのメモリからの解放の計画を決定する活用計画決定部と、前記活用計画決定部が決定した計画に基づいて、必要となるプロセスを取得するプロセス取得部と、前記活用計画決定部が決定した計画に基づいて、前記プロセス取得部が取得したプロセスのメモリへの展開と、不要となるプロセスのメモリからの解放を実行するメモリ管理部と、を備えた制御装置である。 Then, one aspect of the present invention is a block pre-read from the NC program and a machine of the machine in a control device that manages a plurality of processes that analyze and execute a command by a block of an NC program for controlling a machine. Based on the configuration, the control command content determination unit that determines the process required in the NC program block, and the control command content determination unit obtains the necessary process and deploys it on the memory based on the determination. A utilization plan determination unit that determines a plan for releasing unnecessary processes from memory, a process acquisition unit that acquires necessary processes based on a plan determined by the utilization plan determination unit, and the utilization plan. It is a control device including a memory management unit that expands a process acquired by the process acquisition unit into memory and releases unnecessary processes from memory based on a plan determined by the determination unit.

本発明の一態様によれば、多くの複雑なオプション機能が必要となる加工を行う場合においても、小容量のメモリを効率的に使用して、多くのプロセスを実行することが可能となる。 According to one aspect of the present invention, it is possible to efficiently use a small amount of memory to execute many processes even when performing processing that requires many complicated optional functions.

一実施形態による制御装置の要部を示すハードウェア構成図である。It is a hardware block diagram which shows the main part of the control device by one Embodiment. 一実施形態による制御装置の概略的な機能ブロック図である。It is a schematic functional block diagram of the control device by one Embodiment. 必要となるプロセスの判定に用いるテーブルを例示する図である。It is a figure which exemplifies the table used for the determination of the required process. 活用計画決定部により決定される活用計画の例を示す図である。It is a figure which shows the example of the utilization plan decided by the utilization plan determination department. プロセス取得先設定テーブルの例を示す図である。It is a figure which shows the example of the process acquisition destination setting table. プロセス取得優先テーブルの例を示す図である。It is a figure which shows the example of the process acquisition priority table. プロセス解放優先テーブルの例を示す図である。It is a figure which shows the example of the process release priority table.

以下、本発明の実施形態を図面と共に説明する。
図1は本発明の一実施形態による制御装置の要部を示す概略的なハードウェア構成図である。本発明の制御装置1は、例えばNCプログラムに基づいて工作機械等の産業機械を制御する制御装置として実装することができる。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a schematic hardware configuration diagram showing a main part of a control device according to an embodiment of the present invention. The control device 1 of the present invention can be implemented as a control device that controls an industrial machine such as a machine tool based on, for example, an NC program.

本実施形態による制御装置1が備えるCPU11は、制御装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムや、ネットワークを介して上位サーバ等のプロセス保管場所から取得したシステム・プログラムをバス20を介して読み出し、該システム・プログラムに従って制御装置1全体を制御する。RAM13には一時的な計算データや表示データ、及び外部から入力された各データ等が一時的に格納される。 The CPU 11 included in the control device 1 according to the present embodiment is a processor that controls the control device 1 as a whole. The CPU 11 reads the system program stored in the ROM 12 and the system program acquired from a process storage location such as a host server via the network via the bus 20, and controls the entire control device 1 according to the system program. .. Temporary calculation data, display data, each data input from the outside, and the like are temporarily stored in the RAM 13.

不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、制御装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれたNCプログラムやラダープログラム、表示器/MDIユニット70を介して入力されたNCプログラムやラダープログラム等が記憶される。不揮発性メモリ14に記憶された各プログラムや各データは、実行時/利用時にはRAM13に展開されても良い。また、NCプログラム等の実行やシステムの管理、作業者の支援のために必要とされるプロセスは、主としてRAM13上に展開される。 The non-volatile memory 14 is composed of, for example, a memory backed up by a battery (not shown), an SSD (Solid State Drive), or the like, and the storage state is maintained even when the power of the control device 1 is turned off. The non-volatile memory 14 stores NC programs and ladder programs read from the external device 72 via the interface 15, NC programs and ladder programs input via the display / MDI unit 70, and the like. Each program and each data stored in the non-volatile memory 14 may be expanded in the RAM 13 at the time of execution / use. In addition, the processes required for execution of NC programs and the like, system management, and support of workers are mainly developed on the RAM 13.

インタフェース15は、制御装置1のCPU11とUSB装置等の外部機器72と接続するためのインタフェースである。外部機器72側からは工作機械の制御に用いられるNCプログラムやラダープログラムや各パラメータ等が読み込まれる。また、制御装置1内で編集したNCプログラムやラダープログラムや各パラメータ等は、外部機器72を介して外部記憶手段に記憶させることができる。PMC(プログラマブル・マシン・コントローラ)16は、ラダープログラムを実行して工作機械及び該工作機械の周辺装置(例えば、工具交換装置や、ロボット等のアクチュエータ、工作機械に取付けられているセンサ等)にI/Oユニット17を介して信号を出力し制御する。また、工作機械の本体に配備された操作盤の各種スイッチや周辺装置等の信号を受け、必要な信号処理をした後、CPU11に渡す。 The interface 15 is an interface for connecting the CPU 11 of the control device 1 and an external device 72 such as a USB device. The NC program, ladder program, parameters, etc. used for controlling the machine tool are read from the external device 72 side. Further, the NC program, the ladder program, each parameter, etc. edited in the control device 1 can be stored in the external storage means via the external device 72. The PMC (programmable machine controller) 16 executes a ladder program to the machine tool and peripheral devices of the machine tool (for example, a tool changer, an actuator such as a robot, a sensor attached to the machine tool, etc.). A signal is output and controlled via the I / O unit 17. In addition, it receives signals from various switches and peripheral devices on the operation panel installed in the main body of the machine tool, performs necessary signal processing, and then passes them to the CPU 11.

表示器/MDIユニット70はタッチパネルとしての機能を備えたディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース18は表示器/MDIユニット70のキーボードやタッチパネルからの入力を受けてCPU11に渡す。インタフェース19は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤71に接続されている。 The display / MDI unit 70 is a manual data input device provided with a display, keyboard, etc. having a function as a touch panel, and the interface 18 receives input from the keyboard or touch panel of the display / MDI unit 70 and passes it to the CPU 11. .. The interface 19 is connected to an operation panel 71 provided with a manual pulse generator or the like used when manually driving each axis.

制御装置1は、インタフェース21を介して有線/無線のネットワーク7と接続されている。ネットワーク7には、少なくとも1つの上位サーバ5が接続され、制御装置1との間で相互にデータのやり取りを行っている。 The control device 1 is connected to the wired / wireless network 7 via the interface 21. At least one upper server 5 is connected to the network 7 and exchanges data with the control device 1 with each other.

工作機械が備える軸を制御するための軸制御回路30はCPU11からの軸の移動指令量を受けて、軸の指令をサーボアンプ40に出力する。サーボアンプ40はこの指令を受けて、工作機械が備える軸を移動させるサーボモータ50を駆動する。軸のサーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にフィードバックし、位置・速度のフィードバック制御を行う。なお、図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50は1つずつしか示されていないが、実際には制御対象となる工作機械に備えられた軸の数だけ用意される。 The axis control circuit 30 for controlling the axis included in the machine tool receives the axis movement command amount from the CPU 11 and outputs the axis command to the servo amplifier 40. In response to this command, the servo amplifier 40 drives the servomotor 50 that moves the shaft included in the machine tool. The shaft servomotor 50 has a built-in position / speed detector, feeds back the position / speed feedback signal from the position / speed detector to the shaft control circuit 30, and performs position / speed feedback control. In the hardware configuration diagram of FIG. 1, only one axis control circuit 30, a servo amplifier 40, and a servo motor 50 are shown, but in reality, only the number of axes provided in the machine tool to be controlled Be prepared.

スピンドル制御回路60は、主軸回転指令を受け、スピンドルアンプ61にスピンドル速度信号を出力する。スピンドルアンプ61はこのスピンドル速度信号を受けて、工作機械のスピンドルモータ62を指令された回転速度で回転させ、工具を駆動する。スピンドルモータ62にはポジションコーダ63が結合され、ポジションコーダ63が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはCPU11によって読み取られる。 The spindle control circuit 60 receives a spindle rotation command and outputs a spindle speed signal to the spindle amplifier 61. Upon receiving this spindle speed signal, the spindle amplifier 61 rotates the spindle motor 62 of the machine tool at the commanded rotation speed to drive the tool. A position coder 63 is coupled to the spindle motor 62, and the position coder 63 outputs a feedback pulse in synchronization with the rotation of the spindle, and the feedback pulse is read by the CPU 11.

図2は、本発明の第1実施形態による制御装置1の概略的な機能ブロック図である。図2に示した各機能ブロックは、図1に示した制御装置1が備えるCPU11がシステム・プログラムを実行し、制御装置1の各部の動作を制御することにより実現される。 FIG. 2 is a schematic functional block diagram of the control device 1 according to the first embodiment of the present invention. Each functional block shown in FIG. 2 is realized by the CPU 11 included in the control device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the control device 1.

本実施形態の制御装置1は、先読み部100、制御部110、制御指令内容判定部120、活用計画決定部130、プロセス取得部140、メモリ管理部150を備える。制御装置1の不揮発性メモリ14上には、工作機械2を制御するための数値制御指令が含まれるNCプログラム200が予め記憶されている。 The control device 1 of the present embodiment includes a look-ahead unit 100, a control unit 110, a control command content determination unit 120, a utilization plan determination unit 130, a process acquisition unit 140, and a memory management unit 150. An NC program 200 including a numerical control command for controlling the machine tool 2 is stored in advance on the non-volatile memory 14 of the control device 1.

先読み部100は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理が行われることで実現される。先読み部100は、NCプログラム200のブロックを先読みする機能手段である。先読み部が先読みしたブロックに係る情報は、制御部110による工作機械2の制御に用いられると共に、制御指令内容判定部120による制御指令の内容の判定に用いられる。 The look-ahead unit 100 is realized by executing a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1 and performing arithmetic processing mainly by the CPU 11 using the RAM 13 and the non-volatile memory 14. .. The look-ahead unit 100 is a functional means for pre-reading a block of the NC program 200. The information related to the block read ahead by the look-ahead unit is used for controlling the machine tool 2 by the control unit 110, and is also used for determining the content of the control command by the control command content determination unit 120.

制御部110は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理と、軸制御回路、スピンドル制御回路、PMCを用いた工作機械の各部の制御処理、インタフェース18,19を介した入出力処理が行われることで実現される。制御部110は、先読み部100が先読みしたNCプログラム200のブロックを解析し、その解析結果に基づいて工作機械2の各部を制御する機能手段である。制御部110は、RAM13上に配置されるプロセスを呼び出すことで、先読みされたブロックの解析及び解析された指令の実行を行う。制御部110は、例えば先読みされたブロックを解析するためにRAM13上に展開された前処理プロセスを呼び出し、該プロセスによるブロックの解析を実行する。制御部110は、例えば先読みされたブロックが工作機械2の各軸を駆動させるように指令している場合には、RAM13上に展開された基本軸制御プロセスを呼び出し、制御周期毎に軸角度の変化量としての指令データを生成してサーボモータ50やスピンドルモータ62に対して出力する。また、制御部110は、例えば先読みされたブロックが工作機械2の取り付けられた周辺装置を動作させるように指令している場合には、RAM13上に展開された該周辺装置に係るプロセスを呼び出し、該周辺装置を動作させる所定の信号を生成してPMC16に出力する。この様に、制御部110は、工作機械2の各部を動作させるために必要とされる機能を、RAM13上に展開されたプロセスを呼び出すことにより実行する。制御部110は、先読みされたブロックによる指令を行うために必要とされるプロセスがRAM13上に展開されていない場合には、該プロセスが展開されるまで先読みされたブロックによる指令の実行を待ち、プロセスが展開された時点で該指令の実行を開始する。この時、制御部110は、予め定めた所定時間だけ待った段階で必要とされるプロセスがRAM13上に展開されない場合には、アラートを出力するようにしても良い。 The control unit 110 executes a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1, and mainly performs arithmetic processing using the RAM 13 and the non-volatile memory 14 by the CPU 11, and the axis control circuit and spindle control. It is realized by performing control processing of each part of the machine tool using a circuit and PMC, and input / output processing via interfaces 18 and 19. The control unit 110 is a functional means that analyzes the block of the NC program 200 that has been read ahead by the look-ahead unit 100 and controls each part of the machine tool 2 based on the analysis result. The control unit 110 analyzes the pre-read block and executes the analyzed command by calling the process arranged on the RAM 13. The control unit 110 calls, for example, a preprocessing process developed on the RAM 13 to analyze the pre-read block, and executes the analysis of the block by the process. For example, when the read-ahead block commands each axis of the machine tool 2 to be driven, the control unit 110 calls the basic axis control process developed on the RAM 13 and determines the axis angle for each control cycle. Command data as the amount of change is generated and output to the servo motor 50 and the spindle motor 62. Further, for example, when the read-ahead block commands the peripheral device to which the machine tool 2 is attached to operate, the control unit 110 calls the process related to the peripheral device deployed on the RAM 13. A predetermined signal for operating the peripheral device is generated and output to the PMC 16. In this way, the control unit 110 executes the functions required for operating each part of the machine tool 2 by calling the process developed on the RAM 13. If the process required to issue the command by the pre-read block is not expanded on the RAM 13, the control unit 110 waits for the execution of the command by the pre-read block until the process is expanded. Execution of the directive is started when the process is deployed. At this time, the control unit 110 may output an alert if the required process is not expanded on the RAM 13 after waiting for a predetermined time.

制御指令内容判定部120は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理が行われることで実現される。制御指令内容判定部120は、先読み部100により先読みされたNCプログラムのブロックや、制御対象となる工作機械2の機械構成等の情報に基づいて、先読みされた各ブロックで必要になるプロセスの判定を行う機能手段である。制御指令内容判定部120は、NCプログラム200から先読みされたブロックによる移動指令の種類や動作モードの種類、工作機械の機械構成に基づいて、NCプログラム200の各ブロックにおいていずれの機能が必要とされるのかを判定する。制御装置1の不揮発性メモリ14の設定領域には、例えば図3に例示されるように、工作機械の機械構成や数値制御指令の種類に関連付けて、必要となるプロセスが設定されている。制御指令内容判定部120は、この様な設定と、工作機械の機械構成、及び先読みされたNCプログラムの各ブロックを突き合わせて、いずれのブロックにおいてどの様なプロセスが必要であるのかを判定するようにしても良い。 The control command content determination unit 120 executes a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1, and mainly performs arithmetic processing using the RAM 13 and the non-volatile memory 14 by the CPU 11. It will be realized. The control command content determination unit 120 determines the process required for each pre-read block based on information such as the NC program block pre-read by the pre-read unit 100 and the machine configuration of the machine tool 2 to be controlled. It is a functional means to perform. The control command content determination unit 120 is required to have any function in each block of the NC program 200 based on the type of the movement command by the block read ahead from the NC program 200, the type of the operation mode, and the machine configuration of the machine tool. Determine if it is. In the setting area of the non-volatile memory 14 of the control device 1, for example, as illustrated in FIG. 3, necessary processes are set in association with the machine configuration of the machine tool and the type of numerical control command. The control command content determination unit 120 compares such a setting with each block of the machine tool machine configuration and the pre-read NC program, and determines what kind of process is required in which block. You can do it.

活用計画決定部130は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理が行われることで実現される。活用計画決定部130は、制御指令内容判定部120による判定に基づいて、NCプログラム200の実行中のどのタイミングで必要となるプロセスの取得を行い、どのタイミングで不要となったプロセスの解放をするのかを示す活用計画を決定する機能手段である。活用計画決定部130は、NCプログラム200内のブロックにおいて、所定のプロセスが必要となる指令が最初に現れたブロックが実行される前に、該プロセスを取得してRAM13上に展開するように活用計画を決定する。また、活用計画決定部130は、NCプログラム200内のブロックにおいて、所定のプロセスが必要となる指令があるブロック以降に出現しない場合、該プロセスを必要とする指令が最後に現れた次のブロックが実行された後に、該プロセスをRAM13上から解放する様に活用計画を決定する。 The utilization plan determination unit 130 is realized by executing a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1 and performing arithmetic processing mainly by the CPU 11 using the RAM 13 and the non-volatile memory 14. Will be done. Based on the determination by the control command content determination unit 120, the utilization plan determination unit 130 acquires the required process at which timing during the execution of the NC program 200, and releases the unnecessary process at which timing. It is a functional means to determine the utilization plan that indicates whether or not. The utilization plan determination unit 130 utilizes the block in the NC program 200 so as to acquire the process and deploy it on the RAM 13 before the block in which the command requiring the predetermined process first appears is executed. Decide on a plan. Further, in the block in the NC program 200, when the utilization plan determination unit 130 does not appear after a block having a command requiring a predetermined process, the next block in which the command requiring the process appears last appears. After being executed, the utilization plan is determined so as to release the process from the RAM 13.

活用計画決定部130が決定する活用計画は、所定のプロセスが必要となるブロックが実行されるタイミングにおいて、該プロセスがRAM13上に展開されているように決定されることが望ましい。この様な目的のために、活用計画決定部130は、ブロックが先読みされて、該ブロックについて制御指令内容判定部120が必要となるプロセスを判定したタイミングにおいて、RAM13のメモリ領域が十分に空いている場合には、該プロセスを即取得してRAM13上に展開するように活用計画を決定するようにしても良い。また、活用計画決定部130は、先読みされたブロックにおいて活用計画決定部130は、所定のプロセスが必要となるブロックの、予め定めた余裕ブロック数前のブロックが実行されるタイミングで、該プロセスを取得してRAM13上に展開するように活用計画を決定するようにしても良い。 It is desirable that the utilization plan determined by the utilization plan determination unit 130 is determined so that the process is deployed on the RAM 13 at the timing when the block requiring the predetermined process is executed. For such a purpose, the utilization plan determination unit 130 has sufficiently free memory area of the RAM 13 at the timing when the block is read ahead and the control command content determination unit 120 determines the process requiring the block. If so, the utilization plan may be determined so that the process is immediately acquired and deployed on the RAM 13. In addition, the utilization plan determination unit 130 determines the process at the timing when the block before the predetermined number of spare blocks of the block requiring the predetermined process is executed in the pre-read block. The utilization plan may be determined so as to acquire and deploy on the RAM 13.

活用計画決定部130が決定する活用計画は、NCプログラムの実行に利用されない所定のプロセスが効率よくRAM13上から解放されるように決定されることが望ましい。この様な目的のために、活用計画決定部130は、NCプログラム200内のブロックにおいて、所定のプロセスが必要となる指令が予め定めた所定の経過ブロック数出現しない場合に、該プロセスをRAM13上から解放する様に活用計画を決定するようにしても良い。 It is desirable that the utilization plan determined by the utilization plan determination unit 130 is determined so that a predetermined process that is not used for executing the NC program is efficiently released from the RAM 13. For such a purpose, the utilization plan determination unit 130 transfers the process on the RAM 13 when the command requiring the predetermined process does not appear in the predetermined number of elapsed blocks in the blocks in the NC program 200. You may decide the utilization plan so as to release from.

図4は、活用計画決定部130が決定する活用計画の例を示す図である。なお、図4では、説明を簡単にするために、活用計画決定部130が、前処理プロセス、基本軸制御プロセス、同時5軸制御プロセス、穴あけサイクルプロセスについて、その取得と解放のタイミングを決定する例を説明する。図4に示されたNCプログラムには、N1400ブロックにおいて同時5軸制御プロセスを必要とする指令が現れ、N2100ブロック以降においては同時5軸制御プロセスを必要とする指令が出現しないものとする。また、N2650ブロック以降のブロックには、穴あけサイクルを指令するブロックが含まれている。この様なNCプログラムを実行する場合、活用計画決定部130は、NCプログラムの実行が開始されると、先読みされたブロックに対する制御指令内容判定部120の判定に基づいて、全ての指令の処理に必要とされる前処理プロセスと、N0001ブロック以降での送り指令の実行に必要とされる基本軸制御プロセスとを取得してRAM13上に展開するように計画する。また、活用計画決定部130は、N1400ブロック以降に現れる同時5軸制御に係る指令により必要とされる同時5軸制御プロセスを、N1400ブロックが実行されるまでに取得してRAM13上に展開するように活用計画を決定する。その後、活用計画決定部130は、N2110ブロック以降において同時5軸制御プロセスを必要とする指令が現れないと判定した時点で、同時5軸制御プロセスをRAM13上から解放するように活用計画を決定する。最後に、活用計画決定部130は、N2650ブロック以降に現れる穴あけサイクル指令により必要とされる穴あけサイクルプロセスを、N2650ブロックが実行されるまでに取得してRAM13上に展開するように活用計画を決定する。 FIG. 4 is a diagram showing an example of a utilization plan determined by the utilization plan determination unit 130. In FIG. 4, in order to simplify the explanation, the utilization plan determination unit 130 determines the acquisition and release timings of the preprocessing process, the basic axis control process, the simultaneous 5-axis control process, and the drilling cycle process. An example will be described. In the NC program shown in FIG. 4, it is assumed that a command requiring a simultaneous 5-axis control process appears in the N1400 block, and a command requiring a simultaneous 5-axis control process does not appear in the N2100 block and thereafter. Further, the blocks after the N2650 block include a block that commands a drilling cycle. When executing such an NC program, when the execution of the NC program is started, the utilization plan determination unit 130 processes all the commands based on the determination of the control command content determination unit 120 for the pre-read block. It is planned to acquire the required preprocessing process and the basic axis control process required to execute the feed command after the N0001 block and deploy them on the RAM 13. Further, the utilization plan determination unit 130 acquires the simultaneous 5-axis control process required by the command related to the simultaneous 5-axis control appearing after the N1400 block by the time the N1400 block is executed and deploys it on the RAM 13. Decide on a utilization plan. After that, the utilization plan determination unit 130 determines the utilization plan so as to release the simultaneous 5-axis control process from the RAM 13 when it is determined that the command requiring the simultaneous 5-axis control process does not appear after the N2110 block. .. Finally, the utilization plan determination unit 130 determines the utilization plan so as to acquire the drilling cycle process required by the drilling cycle command appearing after the N2650 block and deploy it on the RAM 13 by the time the N2650 block is executed. To do.

プロセス取得部140は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるROM12、RAM13、不揮発性メモリ14を用いた演算処理、インタフェース15を介した入力処理、インタフェース21を介した通信処理等が行われることで実現される。プロセス取得部140は、NCプログラム200のブロックによる指令の実行に必要とされるプロセスを取得する機能手段である。プロセス取得部140は、活用計画決定部130が決定した活用計画に従って、ネットワーク7を介して上位サーバ5等のプロセス保管場所からプロセスを取得する。プロセス取得部140は、必要なプロセスをROM12や不揮発性メモリ14から読み出して取得するようにしても良い。また、プロセス取得部140は、必要なプロセスを外部機器72から読み出して取得するようにしても良い。制御装置1の不揮発性メモリの設定領域には、例えば図5に例示されるように、それぞれのプロセスの取得先を設定するプロセス取得先設定テーブルが予め記憶されており、プロセス取得部140は、このプロセス取得先設定テーブルを参照して、各プロセスの取得先を決定するようにすれば良い。 The process acquisition unit 140 executes a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1, and mainly performs arithmetic processing using the ROM 12, the RAM 13, and the non-volatile memory 14 by the CPU 11, via the interface 15. It is realized by performing the input processing, the communication processing via the interface 21, and the like. The process acquisition unit 140 is a functional means for acquiring the process required for executing the command by the block of the NC program 200. The process acquisition unit 140 acquires the process from the process storage location such as the upper server 5 via the network 7 according to the utilization plan determined by the utilization plan determination unit 130. The process acquisition unit 140 may read the necessary process from the ROM 12 or the non-volatile memory 14 and acquire it. Further, the process acquisition unit 140 may read the necessary process from the external device 72 and acquire it. In the setting area of the non-volatile memory of the control device 1, for example, as illustrated in FIG. 5, a process acquisition destination setting table for setting the acquisition destination of each process is stored in advance, and the process acquisition unit 140 stores the process acquisition destination setting table. The acquisition destination of each process may be determined by referring to this process acquisition destination setting table.

メモリ管理部150は、図1に示した制御装置1が備えるCPU11がROM12から読み出したシステム・プログラムを実行し、主としてCPU11によるRAM13、不揮発性メモリ14を用いた演算処理が行われることで実現される。メモリ管理部150は、RAM13上に展開されるプロセスを管理する機能手段である。メモリ管理部150は、プロセス取得部140が取得したプロセスをRAM13上へ展開する。また、メモリ管理部150は、活用計画決定部130が決定した活用計画に従って、RAM13上に展開されているプロセスを解放する。 The memory management unit 150 is realized by executing a system program read from the ROM 12 by the CPU 11 included in the control device 1 shown in FIG. 1 and performing arithmetic processing mainly by the CPU 11 using the RAM 13 and the non-volatile memory 14. To. The memory management unit 150 is a functional means for managing the process developed on the RAM 13. The memory management unit 150 develops the process acquired by the process acquisition unit 140 on the RAM 13. Further, the memory management unit 150 releases the process developed on the RAM 13 according to the utilization plan determined by the utilization plan determination unit 130.

上記構成を備えた制御装置1では、NCプログラム200の自動運転中に、先読みしたブロックを解析して、工作機械の制御等に必要とされるプロセスを必要なタイミングでメモリ上へと展開し、不要なプロセスは適宜メモリ上から解放する。そのため、制御装置1では、工作機械の自動運転中に、NCプログラム200のブロックによる指令や工作機械の機械構成等に基づいて、必要となるプロセスの動的な取得/解放のタイミングを行うことができる。ユーザは、NCプログラム200内に、プロセスの取得/解放の指令を明記しなくとも、自動的に必要となるプロセスの取得/解放が行われる。 In the control device 1 having the above configuration, during the automatic operation of the NC program 200, the pre-read block is analyzed, and the process required for controlling the machine tool or the like is expanded on the memory at the required timing. Unnecessary processes are released from the memory as appropriate. Therefore, in the control device 1, during the automatic operation of the machine tool, the timing of dynamically acquiring / releasing the required process can be performed based on the command by the block of the NC program 200, the machine configuration of the machine tool, and the like. it can. The user automatically acquires / releases the required process without specifying the process acquisition / release command in the NC program 200.

本実施形態による制御装置1の一変形例として、活用計画決定部130は、プロセスを取得してRAM13上に展開する優先順位を登録するためのプロセス取得優先テーブルを用いて活用計画を決定するようにしても良い。 As a modification of the control device 1 according to the present embodiment, the utilization plan determination unit 130 determines the utilization plan using the process acquisition priority table for registering the priority order for acquiring the process and deploying it on the RAM 13. You can do it.

図6は、プロセス取得優先テーブルの例を示す図である。プロセス取得優先テーブルは、例えば取得対象となるプロセスと、該プロセスの取得の優先順位とを関連付けたテーブルとして定義できる。プロセス取得優先テーブルは、NCプログラム200の実行開始時には空のテーブルとして用意される。NCプログラム200が実行されて、先読み部100によるブロックの先読みが行われ、制御指令内容判定部120による必要なプロセスの判定が行われると、活用計画決定部130は、先読みされたブロックの順番で優先順位を付けてプロセス取得優先テーブルに登録する。プロセス取得部140は、プロセス取得優先テーブルに取得対象プロセスが登録されると、優先順位の高い順にプロセスの取得を実行し、取得したプロセスがRAM13上に展開されると、該プロセスをプロセス取得優先テーブルから削除し、他のプロセスの優先順位を繰り上げる。プロセス取得部140及びメモリ管理部150は、現在のRAM13に空きがある限りプロセスの取得及びRAM13上への展開を行う。そして、RAM13に空きが無い場合は、取得優先テーブルを保持したまま、RAM13に空きができるまでプロセスの取得及び展開を保留する。本実施例のプロセス取得優先テーブルは、通信速度が遅い環境等で上位サーバからプロセスの取得が即時に行えない場合や、次に取得するべきプロセスを展開するための十分な空き容量が一時的にRAM13に無い場合等に用いると有効である。 FIG. 6 is a diagram showing an example of a process acquisition priority table. The process acquisition priority table can be defined as, for example, a table in which the process to be acquired and the acquisition priority of the process are associated with each other. The process acquisition priority table is prepared as an empty table at the start of execution of the NC program 200. When the NC program 200 is executed, the pre-reading unit 100 pre-reads the blocks, and the control command content determination unit 120 determines the necessary process, the utilization plan determination unit 130 in the order of the pre-read blocks. Prioritize and register in the process acquisition priority table. When the acquisition target process is registered in the process acquisition priority table, the process acquisition unit 140 executes the acquisition of the processes in descending order of priority, and when the acquired process is expanded on the RAM 13, the process acquisition priority is given to the process. Remove from the table and raise the priority of other processes. The process acquisition unit 140 and the memory management unit 150 acquire the process and expand it on the RAM 13 as long as the current RAM 13 has free space. Then, when there is no free space in the RAM 13, the acquisition and expansion of the process are suspended until the RAM 13 becomes free while holding the acquisition priority table. In the process acquisition priority table of this example, when the process cannot be acquired immediately from the upper server in an environment where the communication speed is slow, or when there is enough free space to deploy the process to be acquired next, there is temporary space. It is effective when used when it is not in the RAM 13.

本実施形態による制御装置1の他の変形例として、活用計画決定部130は、プロセスをRAM13上から解放する優先順位を登録するためのプロセス解放優先テーブルを用いて活用計画を決定するようにしても良い。 As another modification of the control device 1 according to the present embodiment, the utilization plan determination unit 130 determines the utilization plan by using the process release priority table for registering the priority of releasing the process from the RAM 13. Is also good.

図7は、プロセス解放優先テーブルの例を示す図である。プロセス解放優先テーブルは、例えば解放対象となるプロセスと、該プロセスが最後に呼び出されたブロックに係る情報とを関連付けたテーブルとして定義できる。プロセス解放優先テーブルは、NCプログラム200の実行開始時には空のテーブルとして用意される。NCプログラム200が実行されて、プロセス取得部140によりプロセスの取得が行われ、メモリ管理部150によりプロセスのRAM13上への展開が行われると、該プロセスに係る情報がプロセス解放優先テーブルに登録される。プロセス解放優先テーブルに登録されたプロセスが制御部110により呼び出されるたびに、プロセス解放優先テーブルの最後に呼び出されたブロックに係る情報は0ブロック前に更新される。また、NCプログラム200の実行が進むたびに、プロセス解放優先テーブルに登録されている各プロセスの最後に呼び出されたブロックに係る情報を1増加させる。この最後に呼び出されたブロックに係る情報は、当該プロセスを解放する際の逆の優先度として機能する。そして、プロセス取得優先テーブルに取得対象プロセスが登録されている場合であって、RAM13に取得対象プロセスを展開する十分な空きがない場合、メモリ管理部150は、プロセス解放優先テーブルにおいて、最後に呼び出されたブロックが最も過去のものである解放対象プロセスをメモリから解放する。メモリ管理部150は、解放したプロセスをプロセス解放優先テーブルから削除する。プロセス解放優先テーブルには、それぞれのプロセスが専有するメモリ量を関連付けて登録するようにしても良い。この様に構成した場合、例えば取得対象プロセスに必要となるメモリ量と最後に呼び出されたブロックに係る情報の双方を判断材料として、解放対象とするプロセスを決定することが出来る。なお、一部のNCプログラム200の実行に必須となるプロセスについては、プロセス解放優先テーブルに登録しないようにしても良い。 FIG. 7 is a diagram showing an example of a process release priority table. The process release priority table can be defined as, for example, a table in which the process to be released is associated with the information related to the block in which the process was last called. The process release priority table is prepared as an empty table at the start of execution of the NC program 200. When the NC program 200 is executed, the process acquisition unit 140 acquires the process, and the memory management unit 150 expands the process onto the RAM 13, the information related to the process is registered in the process release priority table. To. Every time the process registered in the process release priority table is called by the control unit 110, the information related to the last called block in the process release priority table is updated before 0 blocks. Further, each time the execution of the NC program 200 progresses, the information related to the last called block of each process registered in the process release priority table is incremented by 1. The information related to this last called block serves as the reverse priority when releasing the process. Then, when the acquisition target process is registered in the process acquisition priority table and there is not enough free space in the RAM 13 to expand the acquisition target process, the memory management unit 150 is finally called in the process release priority table. Releases the process to be released, whose oldest block is the oldest, from memory. The memory management unit 150 deletes the released process from the process release priority table. The amount of memory occupied by each process may be associated and registered in the process release priority table. With this configuration, for example, the process to be released can be determined using both the amount of memory required for the acquisition target process and the information related to the last called block as judgment materials. Note that the processes essential for the execution of some NC programs 200 may not be registered in the process release priority table.

なお、プロセス取得優先テーブルと、プロセス解放優先テーブルは併用することも可能である。プロセス取得優先テーブルと、プロセス解放優先テーブルを併用する際には、それぞれのテーブルに登録されているプロセスに応じて、プロセスの取得や解放、プロセスの優先順位の付与を制御するようにしても良い。
例えば、活用計画決定部130がプロセス取得優先テーブルに対して新たにプロセスを登録する際に、登録に先立ってプロセス解放優先テーブルを参照し、これから登録しようとするプロセスと同一のプロセスがプロセス解放優先テーブルに登録されている場合、即ち該プロセスが既にRAM13上に展開されている場合、該プロセスをプロセス取得優先テーブルに登録する代わりに、プロセス解放優先テーブルにおける該プロセスの最後に呼び出されたブロックに係る情報を0ブロック前(最も優先度の低い値)へと更新するようにしても良い。また、これとは逆に、メモリ管理部150がプロセスをRAM13から解放する際に、該プロセスを解放するに先立ってプロセス登録優先テーブルを参照し、これから解放しようとするプロセスと同一のプロセスがプロセス登録優先テーブルに所定の優先順位以上で登録されている場合、該プロセスをRAM13から解放せずに、プロセス解放優先テーブルにおける該プロセスの最後に呼び出されたブロックに係る情報を0ブロック前(最も優先度の低い値)へと更新するようにしても良い。このような制御をすることで、NCプログラム200から先読みされたブロックの解析結果から、近いタイミングで使用されることが判明しているプロセスを不用意に解放してしまうことを防止することができる。
It is also possible to use the process acquisition priority table and the process release priority table together. When the process acquisition priority table and the process release priority table are used together, process acquisition and release, and process priority assignment may be controlled according to the processes registered in each table. ..
For example, when the utilization plan determination unit 130 newly registers a process in the process acquisition priority table, the process release priority table is referred to prior to registration, and the same process as the process to be registered is given priority to process release. If it is registered in the table, that is, if the process is already expanded on RAM 13, instead of registering the process in the process acquisition priority table, it is in the last called block of the process in the process release priority table. The relevant information may be updated to 0 blocks before (lowest priority value). On the contrary, when the memory management unit 150 releases the process from the RAM 13, the process registration priority table is referred to before the process is released, and the same process as the process to be released from now on is the process. When the process is registered in the registration priority table with a predetermined priority or higher, the information related to the last called block of the process in the process release priority table is displayed 0 blocks before (highest priority) without releasing the process from the RAM 13. It may be updated to a value with a low degree). By performing such control, it is possible to prevent the process that is known to be used at a near timing from being inadvertently released from the analysis result of the block read ahead from the NC program 200. ..

本実施形態による制御装置1の一変形例として、活用計画決定部130は、NCプログラム200の実行開始時において、NCプログラム200のブロックを全て先読みし、プロセスの取得及び展開並びに解放の活用計画をNCプログラム200の実行開始時に決定するようにしても良い。この様に構成した場合、プロセスの必要なタイミング及び不要となるタイミングが予め把握できるため、不要となったプロセスを積極的にRAM13上から解放したり、一時的に不要となったプロセスをRAM13上から積極的に解放し、再度必要となった場合に改めて該プロセスの取得及び展開を行うようにしたりする等、メモリをより効率よく利用することができる。 As a modification of the control device 1 according to the present embodiment, the utilization plan determination unit 130 pre-reads all the blocks of the NC program 200 at the start of execution of the NC program 200, and acquires and deploys the process and releases the utilization plan. It may be decided at the start of execution of the NC program 200. With such a configuration, since the necessary timing and the unnecessary timing of the process can be grasped in advance, the unnecessary process can be positively released from the RAM 13 or the temporarily unnecessary process can be released from the RAM 13. The memory can be used more efficiently, for example, by positively releasing the process from the above and reacquiring and expanding the process when it is needed again.

以上、本発明の実施の形態について説明したが、本発明は上記した実施の形態の例にのみ限定されるものでなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では、1つの系統を制御する(1つの制御部110で制御される)制御装置を例として説明しているが、例えば、複数の系統を制御する場合においても本願発明の技術は活用可能である。このような場合、それぞれの系統を制御するためのNCプログラム200のブロックで必要とされるプロセスは各系統の制御において共有される。そのため、活用計画決定部130は、複数のNCプログラム200のそれぞれのブロックにおいて必要とされるプロセスを考慮して、プロセスの取得及び展開並びに解放のタイミングを計画する。これにより、複数の系統を制御する制御装置において、より効率的にプロセスによるメモリの利用を管理することができるようになる。
Although the embodiments of the present invention have been described above, the present invention is not limited to the examples of the above-described embodiments, and can be implemented in various embodiments by making appropriate changes.
For example, in the above-described embodiment, a control device that controls one system (controlled by one control unit 110) is described as an example, but for example, even when controlling a plurality of systems, the present invention is described. Technology is available. In such a case, the process required in the block of NC program 200 for controlling each system is shared in the control of each system. Therefore, the utilization plan determination unit 130 plans the timing of acquisition, deployment, and release of the process in consideration of the process required in each block of the plurality of NC programs 200. As a result, in the control device that controls a plurality of systems, it becomes possible to more efficiently manage the use of memory by the process.

1 制御装置
2 工作機械
5 上位サーバ
7 ネットワーク
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15,18,19,21 インタフェース
16 PMC
17 I/Oユニット
20 バス
30 軸制御回路
40 サーボアンプ
50 サーボモータ
60 スピンドル制御回路
61 スピンドルアンプ
62 スピンドルモータ
63 ポジションコーダ
70 表示器/MDIユニット
71 操作盤
72 外部機器
100 先読み部
110 制御部
120 制御指令内容判定部
130 活用計画決定部
140 プロセス取得部
150 メモリ管理部
200 NCプログラム
1 Control device 2 Machine tool 5 Upper server 7 Network 11 CPU
12 ROM
13 RAM
14 Non-volatile memory 15, 18, 19, 21 interface 16 PMC
17 I / O unit 20 Bus 30 Axis control circuit 40 Servo amplifier 50 Servo motor 60 Spindle control circuit 61 Spindle amplifier 62 Spindle motor 63 Position coder 70 Display / MDI unit 71 Operation panel 72 External device 100 Look-ahead unit 110 Control unit 120 Control Command content judgment unit 130 Utilization plan determination unit 140 Process acquisition department 150 Memory management department 200 NC program

Claims (3)

機械を制御するためのNCプログラムのブロックによる指令を解析及び実行をする複数のプロセスを管理する制御装置において、
前記NCプログラムから先読みされたブロック及び前記機械の機械構成に基づいて、前記NCプログラムのブロックにおいて必要となるプロセスの判定を行う制御指令内容判定部と、
前記制御指令内容判定部における前記判定に基づき、必要となるプロセスの取得及びメモリ上への展開と、不要となるプロセスのメモリからの解放の計画を決定する活用計画決定部と、
前記活用計画決定部が決定した計画に基づいて、必要となるプロセスを取得するプロセス取得部と、
前記活用計画決定部が決定した計画に基づいて、前記プロセス取得部が取得したプロセスのメモリへの展開と、不要となるプロセスのメモリからの解放を実行するメモリ管理部と、
を備えた制御装置。
In a control device that manages multiple processes that analyze and execute instructions from blocks of NC programs to control machines.
Based on the block read ahead from the NC program and the machine configuration of the machine, a control command content determination unit that determines the process required for the block of the NC program, and a control command content determination unit.
Based on the determination in the control command content determination unit, the utilization plan determination unit that determines a plan for acquiring and deploying necessary processes in memory and releasing unnecessary processes from memory, and
Based on the plan decided by the utilization plan decision department, the process acquisition department that acquires the necessary processes and
Based on the plan decided by the utilization plan determination unit, the memory management unit that expands the process acquired by the process acquisition unit into the memory and releases the unnecessary process from the memory.
Control device equipped with.
前記活用計画決定部は、あるブロックが必要とするプロセスを、あるブロックの予め定めた余裕ブロック数前の他のブロックが実行されるタイミングで、取得及びメモリ上への展開をするように計画する、
請求項1に記載の制御装置。
The utilization plan determination unit plans to acquire and expand the process required by a certain block on the memory at the timing when another block before a predetermined number of spare blocks of the certain block is executed. ,
The control device according to claim 1.
前記活用計画決定部は、メモリに展開されている所定のプロセスが予め定めた経過ブロック数だけ呼び出されない場合に、該プロセスを不要となるプロセスとしてメモリから解放するように計画する、
請求項1に記載の制御装置。
When a predetermined process expanded in the memory is not called by a predetermined number of elapsed blocks, the utilization plan determination unit plans to release the process from the memory as an unnecessary process.
The control device according to claim 1.
JP2019087862A 2019-05-07 2019-05-07 Control device Active JP7303014B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019087862A JP7303014B2 (en) 2019-05-07 2019-05-07 Control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019087862A JP7303014B2 (en) 2019-05-07 2019-05-07 Control device

Publications (2)

Publication Number Publication Date
JP2020184169A true JP2020184169A (en) 2020-11-12
JP7303014B2 JP7303014B2 (en) 2023-07-04

Family

ID=73045547

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019087862A Active JP7303014B2 (en) 2019-05-07 2019-05-07 Control device

Country Status (1)

Country Link
JP (1) JP7303014B2 (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61248107A (en) * 1985-04-25 1986-11-05 Okuma Mach Works Ltd Operation system for large capacity part program in numerical controller
JPS6319007A (en) * 1986-07-12 1988-01-26 Niigata Eng Co Ltd Data transfer method in numerical controller
JPH03167603A (en) * 1989-11-28 1991-07-19 Mitsubishi Electric Corp Pre-read controller for nc program
JPH03233603A (en) * 1990-02-09 1991-10-17 Mitsubishi Electric Corp Automatic programming device for numerical control
JPH04137002A (en) * 1990-09-28 1992-05-12 Makino Milling Mach Co Ltd Nc program managing method for working system
JPH08314523A (en) * 1995-05-23 1996-11-29 Fanuc Ltd Numerical controller
JPH11149307A (en) * 1997-11-17 1999-06-02 Yaskawa Electric Corp Robot controller provided with secondary storage device
JP2014063389A (en) * 2012-09-21 2014-04-10 Fanuc Ltd Numerical control device having inter-system waiting function
JP2015219599A (en) * 2014-05-14 2015-12-07 ファナック株式会社 Numerical control device with retraction function
JP2017211872A (en) * 2016-05-26 2017-11-30 ファナック株式会社 Numerical controller equipped with program correction assist function for resolving alarm
JP2018005304A (en) * 2016-06-27 2018-01-11 ファナック株式会社 Numerical control device dynamically switching time constant of acceleration/deceleration filter
JP2019079244A (en) * 2017-10-24 2019-05-23 ファナック株式会社 Numeric control device

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61248107A (en) * 1985-04-25 1986-11-05 Okuma Mach Works Ltd Operation system for large capacity part program in numerical controller
JPS6319007A (en) * 1986-07-12 1988-01-26 Niigata Eng Co Ltd Data transfer method in numerical controller
JPH03167603A (en) * 1989-11-28 1991-07-19 Mitsubishi Electric Corp Pre-read controller for nc program
JPH03233603A (en) * 1990-02-09 1991-10-17 Mitsubishi Electric Corp Automatic programming device for numerical control
JPH04137002A (en) * 1990-09-28 1992-05-12 Makino Milling Mach Co Ltd Nc program managing method for working system
JPH08314523A (en) * 1995-05-23 1996-11-29 Fanuc Ltd Numerical controller
JPH11149307A (en) * 1997-11-17 1999-06-02 Yaskawa Electric Corp Robot controller provided with secondary storage device
JP2014063389A (en) * 2012-09-21 2014-04-10 Fanuc Ltd Numerical control device having inter-system waiting function
JP2015219599A (en) * 2014-05-14 2015-12-07 ファナック株式会社 Numerical control device with retraction function
JP2017211872A (en) * 2016-05-26 2017-11-30 ファナック株式会社 Numerical controller equipped with program correction assist function for resolving alarm
JP2018005304A (en) * 2016-06-27 2018-01-11 ファナック株式会社 Numerical control device dynamically switching time constant of acceleration/deceleration filter
JP2019079244A (en) * 2017-10-24 2019-05-23 ファナック株式会社 Numeric control device

Also Published As

Publication number Publication date
JP7303014B2 (en) 2023-07-04

Similar Documents

Publication Publication Date Title
JP2916796B2 (en) CNC device for controlling multiple machine tools
US7155303B2 (en) Numeric control method and numeric control system
US20140364989A1 (en) Controller for controlling machine tool and robot
JP4097670B2 (en) Monitor device for machine tools
JP2010123122A (en) Method for creating part program
EP0511395A1 (en) Conversational type numerical control equipment
JP2004318762A (en) Numerical control device
US4992712A (en) Control device for industrial machine
US10809700B2 (en) Numerical controller
JP2020184169A (en) Control device
CN109388102B (en) Control system and upper server
US6397123B1 (en) Numerical control apparatus
JP2006313559A (en) Operation method of numerical control machine tool equipment
JP6787951B2 (en) Numerical control device
JP6693988B2 (en) Processing program editing device
CN112019097A (en) Slave unit and servo drive system
JPH02213905A (en) Input/output control system
EP0553349A1 (en) Cnc system for controlling a plurality of machines
JP7283875B2 (en) Numerical controller
JP3460747B2 (en) Numerical control unit
EP0360190B1 (en) Control device for industrial machine
JPH0643920A (en) Tool control system
JP7256703B2 (en) Controllers, control systems, and machine learning devices
JP3460426B2 (en) Robot controller
JP6568152B2 (en) Numerical controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230126

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230622

R150 Certificate of patent or registration of utility model

Ref document number: 7303014

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150