NUMERICAL CONTROLLER

Abstract: A numerical controller which controls multiple spindles through a plurality of channels (10, 20, 30). When the machining program of the first channel (10) is stopped in response to a single block signal (6), the machining programs of other channels (20, 30) are placed under the feed-holding condition. This makes it possible to maintain synchronism in executing the whole machining program and to prevent the machining from losing balance and from interfering.

Description: Technical Field The present invention relates to a numerical control system having a plurality of channels, and more particularly to a numerical control system with improved control over a single block mode of operation. Background Art There have widely been used numerical control systems for controlling a number of axes or spindles with a plurality of channels (functional arrangements). Such numerical control systems include a numerical control system for controlling a four-axis lathe having two spindles and two tool rests. A workpiece can be machined at a high speed by the spindles or tool rests. With the multiple-channel numerical control system, when a single block signal is on, the machining program for a channel is interrupted after a single block, the execution of which is first finished, and the machining program for another channel is executed. Therefore, the execution of the machining program for one channel is stopped, and the execution of the machining program for another channel is continued. As a result, the machining programs for the channels are not synchronized, the workpiece is machined out of balance, and a machining interference occurs. In view of the aforesaid problems of the conventional numerical control systems, it is an object of the present invention to provide a numerical control system with improved control over a single block mode of operation. According to a first aspect of the present invention, there is provided a numerical control system for controlling a plurality of axes with a plurality of channels each having the function of a numerical control apparatus, the system comprising: means for receiving a single block signal; and, means for interrupting a machining program of a first channel in response to said single block signal being received; characterised by: single block control means for controlling the plurality of channels so that, when the machining program for the first channel is interrupted, machining programs for the other channels are suspended. According to a second aspect of the present invention, there is provided a method of controlling a numerical control system having a plurality of axes with a plurality of channels each having the function of a numerical control apparatus, the method comprising the steps of: receiving a single block signal; and, interrupting a machining program of a first channel in response to said single block signal being received; characterised by: controlling the plurality of channels so that, when the machining program for the first channel is interrupted, machining programs for the other channels are suspended. At the time the machining program for the first channel is interrupted after a single block, the feeding of commands of the machining program for the other channels is held. The machining programs for the channels are therefore held in synchronism with each other. In the drawings: FIG. 1 is a block diagram of a numerical control system according to the present invention; and, FIG. 2 is a timing chart of operation of the numerical control system. Best Mode for Carrying Out the Invention An embodiment of the present invention will hereinafter be described with reference to the drawings. FIG. 1 shows in block form a numerical control system according to the present invention. A channel bus 1 comprises a multiple-channel master bus interconnecting a plurality of channels. The channel bus 1 has a number slots 1a, 1b, ... 1g to which the channels (described later) are connected. A CRT/MDI unit 2 can display data and graphic information for the numerical control system and also receive data from a keyboard thereof. Each of axis control modules 3, 4 can control servomotors for 2 or 3 axes. An I/O circuit 5 receives and transmits input and output signals. A single block signal SB6 from a control panel is applied to the I/O circuit 5. Actually, the signals applied to the I/O circuit 5 are first processed by a PC (programmable controller) contained in the numerical control system, and then transferred to the channels. The PC (programmable controller) is omitted from illustration in FIG. 1. Each of channels 10, 20, 30 has a function equivalent to the function of a conventional numerical control apparatus. Thus, one channel can read, decode, and execute numerical control commands. Each channel can also control a component such as the CRT/MDI unit 2 or the like. Therefore, each individual channel can process commands for a certain number of axes which a conventional numerical control apparatus has processed. For example, to control a numerically controlled lathe having two heads, the channel I 10 can control a first spindle, an X1 axis, and a Z1 axis, the channel II 20 can control a second spindle, an X2 axis, and a Z2 axis, and the channel III 30, as a master channel, can perform the control of the entire system for monitoring the other channels, for example. The channel I 10 also controls the CRT/MDI unit 2 through the channel bus 1. These channels 10, 20, 30 are connected to the channel bus 1 and share their processing operation. If one of the channels runs short of its processing ability, part of the processing operation thereof is transferred to another channel. For example, while the channel I 10 is executing interpolation at very small intervals and the channel II 20 is executing linear interpolation, part of preprocessing operations for the interpolation carried out by the channel I 10 may be executed by the channel II 20. Therefore, the processing abilities of the channels can be balanced so that the processing operation will not be brought out of equilibrium. The channel III 30 as a master channel performs the control of the entire system such as for determining the priority with respect to use of the channel bus 1 and monitoring the other channels. The channel III 30 can of course control the spindles and axes. If the number of tasks to be processed by the channel III 30 is increased to the point where it can no longer perform the control of the entire system, and any of the other channels still has a processing ability left, then the channel III 30 can transfer its master function to the other channel. FIG. 2 shows a timing sequence of operation of the numerical control system. When a single block signal is on at a time t1 while a block 2 of a machining program for the channel 1 is being executed, the machining program for the channel 1 is interrupted in a single block mode of operation at a time t2 after the block 2. Even while a block 2 of a machining program for the channel 2 is being executed, the feeding of commands of the machining program is held at the time t2. The feeding of commands of machining programs for the other channels is also held. Therefore, the feeding of commands of the machining programs for all channels is held at the time t2. When a cycle starting button is then pressed, the execution of the machining programs for the channels is resumed. As a result, the machining programs for all channels are interrupted and resumed synchronously in the single block mode of operation. Therefore, machining balance is achieved and machining interference is avoided. In the above description, the single block signal is commonly used by all channels. However, the same control can be performed by applying single block signals to the respective channels. That is, when the machining program for any one of the channels is first interrupted after a single block, the feeding of commands of the machining programs for the other channels is held. With the present invention, as described above, at the time the machining program for one channel is interrupted after a single block, the feeding of commands of the machining programs for other channels is held. Consequently, the machining programs for the numerical control system having a plurality of channels can be executed in synchronism, so that the machining process is prevented from being unbalanced and machining interference is avoided.

Claims: A numerical control system for controlling a plurality of axes with a plurality of channels each having the function of a numerical control apparatus, the system comprising: means (5) for receiving a single block signal (SB); and, means for interrupting a machining program of a first channel (10) in response to said single block signal being received; characterised by: single block control means (30) for controlling the plurality of channels so that, when the machining program for the first channel is interrupted, machining programs for the other channels are suspended. A system according to claim 1, comprising means for providing said single block signal commonly to all of the channels. A system according to claim 1, comprising means for providing respective single block signals to corresponding ones of the channels. A method of controlling a numerical control system having a plurality of axes with a plurality of channels each having the function of a numerical control apparatus, the method comprising the steps of: receiving a single block signal (SB); and, interrupting a machining program of a first channel (10) in response to said single block signal being received; characterised by: controlling the plurality of channels so that, when the machining program for the first channel is interrupted, machining programs for the other channels are suspended.

Inventors: FUJIBAYASHI KENTARO, HIDAKA YOSATO, KAWAMURA HIDEAKI, FUJIBAYASHI, KENTARO, HIDAKA, YOSATO, KAWAMURA, HIDEAKI
Applicants: FANUC LTD, FANUC LTD.
Application year: 1989
Main classification: G05B19
IPC codes: G05B19