Patent Description:
A pallet transfer system capable of sequentially processing a large number of workpieces according to a preset schedule is known. Regarding the pallet transfer system, PTL <NUM> (<CIT>) discloses "a pallet pool type machining device that can improve the flexibility and expandability in design and manufacturing and reduce cost when a device is newly constructed according to a user's request, when a device adds or expands, or when arrangement is changed".

PTL <NUM> describes a flexible manufacturing system that gives a higher priority to machining of a workpiece that is urgent. When a pallet to which the workpiece is attached is loaded on a loading station, a second controller gives a command to a conveyor to convey a pallet to which another workpiece is attached, and which is located at a standby position of a pallet changer to a pallet storage room. Then, the second controller controls the conveyor to convey the pallet to which the urgent workpiece is attached, and which is loaded on the loading station to the standby position.

The pallet transfer system includes a work station, a machine tool, a pallet storage unit, and the like. A worker attaches the workpiece to be machined to a pallet at the work station. When the work of attaching the workpiece is completed, the pallet is transferred to the machine tool, and the machining of the workpiece is started.

The pallet (hereinafter, also referred to as a "machining completed pallet") on which the completed machining of the workpiece is loaded is transferred to the work station. However, when the worker is performing some work on another pallet at the work station, the machining completed pallet cannot be transferred to the work station. In such a case, the machining completed pallet is temporarily stored in the pallet storage unit.

When the worker's work is delayed, the number of machining completed pallets staying in the pallet storage unit increases. As a result, the machined workpiece cannot be sent to a next production process, and productivity of the workpiece is lowered. Thus, a technique for appropriately controlling transfer order of the pallets is desired.

The present disclosure has been made to solve the above-mentioned problems, and an object of the present invention is to provide a pallet transfer system capable of appropriately controlling the transfer order of the pallets. Another object of the present invention is to provide a pallet transfer method capable of appropriately controlling the transfer order of the pallets. Still another object of the present invention is to provide a pallet transfer program capable of appropriately controlling the transfer order of the pallets.

According to the present invention, a pallet transfer system according to appended claim <NUM> is proposed.

According to the present invention, a pallet transfer method according to appended claim <NUM> is proposed.

According to the present invention, a control program according to appended claim <NUM> is proposed.

In a certain aspect, the transfer order of pallets can be appropriately controlled.

In the following description, the same parts and components are denoted by the same reference numeral. Their names and functions are the same. Thus, the detailed description thereof will not be repeated. The following embodiments and modifications described below may selectively be combined as appropriate.

With reference to <FIG>, a pallet transfer system <NUM> will be described. <FIG> is a view illustrating an appearance of pallet transfer system <NUM>.

As illustrated in <FIG>, pallet transfer system <NUM> includes at least one pallet storage <NUM>, at least one transfer device <NUM>, at least one machine tool <NUM>, and at least one work station <NUM>.

Pallet storage <NUM> is one of transfer destinations of a pallet PL by transfer device <NUM>, and is a location that stores pallet PL. A plurality of pallets PL can be stored in pallet storage <NUM>. Pallet storage <NUM> stores an empty pallet on which a workpiece is not loaded, a pallet on which a workpiece before machining is loaded, a pallet on which a workpiece during machining is loaded, a pallet on which a machined workpiece is loaded, and the like.

Transfer device <NUM> transfers designated pallet PL to a designated location. More specifically, transfer device <NUM> includes a rail <NUM> and a carriage <NUM>. For example, carriage <NUM> is configured to be movable along rail <NUM> by a servomotor <NUM> (see <FIG>) described later. Carriage <NUM> has a fork part <NUM> configured to be drivable in a direction orthogonal to rail <NUM> (that is, a direction orthogonal to a traveling direction of carriage <NUM>). Carriage <NUM> moves along rail <NUM> to a position of pallet PL to be transferred, and the pallet PL to be transferred is placed on carriage <NUM> using fork part <NUM>. Then, carriage <NUM> moves along rail <NUM> to the designated destination, and pallet PL to be transferred is carried into the transfer destination using fork part <NUM>.

Machine tool <NUM> is one of the transfer destinations of pallet PL by the transfer device <NUM>. Machine tool <NUM> machines the workpiece attached to pallet PL carried in according to a pre-designed machining program. When the machining of the workpiece is completed, pallet PL in machine tool <NUM> is transferred to pallet storage <NUM> or work station <NUM> by transfer device <NUM>.

Work station <NUM> is one of transfer destinations of pallet PL by transfer device <NUM>. At work station <NUM>, the worker performs various works on pallet PL that is transferred. As an example, at work station <NUM>, the worker performs the work of attaching the workpiece to be machined to the carried-in pallet PL, the work of removing the machined workpiece from pallet PL, and the like. When the work on pallet PL is completed, the worker performs an operation for instructing work completion. Based on this, transfer device <NUM> transfers pallet PL in work station <NUM> to pallet storage <NUM> or machine tool <NUM>.

<FIG> is a view illustrating an example of a device configuration of pallet transfer system <NUM>. With reference to <FIG>, an example of the device configuration of pallet transfer system <NUM> will be described.

As illustrated in <FIG>, pallet transfer system <NUM> includes a control device <NUM>, remote I/O (Input/Output) units <NUM> to <NUM>, transfer device <NUM>, machine tool <NUM>, and work station <NUM>.

"Control device <NUM>" as used herein means a device that controls pallet transfer system <NUM>. The device configuration of control device <NUM> is arbitrary. Control device <NUM> may be constructed with a single control unit or a plurality of control units. In the example of <FIG>, control device <NUM> includes a control system <NUM> and a control panel <NUM>.

Control system <NUM> is a main computer that controls pallet transfer system <NUM>. Control panel <NUM> controls various industrial devices that automate the machining process. Control panel <NUM> includes a PLC <NUM>.

Control system <NUM> and PLC <NUM> are connected to a network NW1. Control system <NUM> and PLC <NUM> may be connected by wire or wireless. EtherNET (registered trademark) and the like will be adopted for network NW1. Control system <NUM> transmits a control command to PLC <NUM> through network NW1. The control command specifies pallet PL to be transferred, the transfer destination of pallet PL, the transfer start/stop of pallet PL, and the like.

Remote I/O units <NUM> to <NUM> and PLC <NUM> are connected to a network NW2. Preferably a field network that performs fixed-period communication guaranteeing a data arrival time is used as network NW2. EtherCAT (registered trademark), EtherNet/IP (registered trademark), CC-Link (registered trademark), CompoNet (registered trademark), and the like are adopted as the field network that performs the fixed-period communication.

Transfer device <NUM> includes at least one servo driver <NUM> and at least one servomotor <NUM>. Remote I/O unit <NUM> is installed in or around transfer device <NUM>. Remote I/O unit <NUM> mediates data exchange between various drive units (for example, servo driver <NUM>) in transfer device <NUM> and PLC <NUM>. Servo driver <NUM> receives a control command from PLC <NUM> through remote I/O unit <NUM> at regular intervals, and drives and controls servomotor <NUM> according to the control command. As an example, one servomotor <NUM> drives and controls carriage <NUM> (see <FIG>), and another servomotor <NUM> drives and controls above-mentioned fork part <NUM> (see <FIG>).

Servo driver <NUM> sequentially receives an input of a target rotation speed (or a target position) from PLC <NUM>, and controls servomotor <NUM> such that servomotor <NUM> rotates at the target rotation speed. More specifically, servo driver <NUM> calculates an actual rotation speed (or an actual position) of servomotor <NUM> from a feedback signal of an encoder (not illustrated) for servomotor <NUM>, increases the rotation speed of servomotor <NUM> when the actual rotation speed is smaller than the target rotation speed, and decreases the rotation speed of servomotor <NUM> when the actual rotation speed is larger than the target rotation speed. In this manner, servo driver <NUM> brings the rotation speed of servomotor <NUM> closer to the target rotation speed while sequentially receiving feedback of the rotation speed of servomotor <NUM>. As a result, transfer device <NUM> can move pallet PL to any transfer destination.

Machine tool <NUM> includes a CNC (Computer Numerical Control) <NUM>, a servo driver <NUM>, and a servomotor <NUM>. Remote I/O unit <NUM> is installed in or around machine tool <NUM>. Remote I/O unit <NUM> mediates the data exchange between various drive units (for example, CNC <NUM>) in machine tool <NUM> and PLC <NUM>. Similarly to servo driver <NUM>, servo driver <NUM> receives a control command from PLC <NUM> through remote I/O unit <NUM> at regular intervals, and drives and controls servomotor <NUM> according to the control command.

Work station <NUM> includes an operation terminal 500A that accepts an operation by the worker. Remote I/O unit <NUM> is installed in or around work station <NUM>. Remote I/O unit <NUM> mediates the data exchange between operation terminal 500A and PLC <NUM>. A worker's work content for operation terminal 500A is transmitted to PLC <NUM> through remote I/O unit <NUM> at regular intervals.

Control device <NUM> of control system <NUM> transfers the pallet to which the machined workpiece is attached (that is, the machining completed pallet) to work station <NUM>. At this point, when the worker is working on another pallet at work station <NUM>, control device <NUM> cannot transfer the machining completed pallet to work station <NUM>. Usually, in such a case, the machining completed pallet is temporarily stored in pallet storage <NUM>. However, the number of machining completed pallets staying in pallet storage <NUM> increases as the worker's work is delayed. As a result, the machined workpiece cannot be sent to a next production process, and productivity of the workpiece is lowered.

For this reason, when the machining completed pallet can be transferred to work station <NUM>, control device <NUM> forcedly carries out the in-process pallet from work station <NUM>. Then, control device <NUM> carries the machining completed pallet in work station <NUM>, and the worker removes the machined workpiece from the carried-in machining completed pallet. In this way, the machined workpiece can be transmitted to the next production process by giving priority to the transfer of the machining completed pallet to work station <NUM>. As a result, the productivity of the workpiece is improved.

With reference to <FIG>, specific examples of such a transfer process will be described. <FIG> are views illustrating an example of a work process in pallet transfer system <NUM> in time series.

With reference to <FIG>, it is assumed that the transfer timing of a pallet PL5 in pallet storage <NUM> arrives at timing T1. Based on this, controller <NUM> of control system <NUM> moves carriage <NUM> to a front of pallet PL5. Then, control device <NUM> drives fork part <NUM> (see <FIG>) of carriage <NUM>, and puts pallet PL5 on carriage <NUM> (step S1).

Then, control device <NUM> moves carriage <NUM> to a front of work station <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM>, and carries pallet PL5 in work station <NUM> (step S2). Based on the fact that pallet PL5 is carried in work station <NUM>, a worker U starts the work of attaching a workpiece W5 to pallet PL5.

With reference to <FIG>, it is assumed that machining timing of a workpiece W2 attached to pallet PL2 arrives at timing T2. Based on this, control device <NUM> moves carriage <NUM> to a front of pallet PL2. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to place pallet PL2 on carriage <NUM> (step S5).

Then, control device <NUM> moves carriage <NUM> to a front of machine tool <NUM>. After that, control device <NUM> drives fork part <NUM> of carriage <NUM> to carry pallet PL2 in machine tool <NUM> (step S6).

Based on the fact that pallet PL2 is carried in machine tool <NUM>, control system <NUM> transmits a machining start command to machine tool <NUM>. Machine tool <NUM> receives the machining start command to start the machining of workpiece W2 attached to pallet PL2 (step S7).

As a result, as illustrated in <FIG>, at timing T3, the work of attaching pallet PL5 by worker U (step S11) and the processing of machining workpiece W2 by machine tool <NUM> (step S12) are performed in parallel.

As illustrated in <FIG>, it is assumed that the machining of workpiece W2 by machine tool <NUM> is completed before the work of attaching workpiece W5 by worker U at the timing T4. Based on this, control device <NUM> forcedly carries out in-process pallet PL5 from work station <NUM>. That is, in the state where pallet PL2 (first pallet) is in machine tool <NUM> and pallet PL5 (second pallet) is in work station <NUM>, the machining of workpiece W2 attached to pallet PL2 is completed. At that point, control device <NUM> forcedly transfers pallet PL5 from work station <NUM> to pallet storage <NUM>.

More specifically, control device <NUM> moves carriage <NUM> to a front of work station <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to put pallet PL5 on carriage <NUM> (step S15). Then, control device <NUM> moves carriage <NUM> to a front of a temporary shelter of pallet storage <NUM>. For example, the temporary shelter is any unoccupied space in pallet storage <NUM>. Preferably, the temporary shelter is the unoccupied space closest to work station <NUM>. After that, control device <NUM> drives fork part <NUM> of carriage <NUM> to store pallet PL5 in the temporary shelter of pallet storage <NUM> (step S16).

As illustrated in <FIG>, it is assumed that the transfer of pallet PL5 to the temporary shelter is completed at timing T5. Based on this, control device <NUM> transfers pallet PL2 from machine tool <NUM> to work station <NUM>.

More specifically, control device <NUM> moves carriage <NUM> to a front of machine tool <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to place pallet PL2 on carriage <NUM> (step S21). Then, control device <NUM> moves carriage <NUM> to a front of work station <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to carry pallet PL2 in work station <NUM> (step S22). Based on the fact that pallet PL2 is carried in work station <NUM>, worker U starts the work of removing workpiece W2 from pallet PL2 (step S23).

As illustrated in <FIG>, it is assumed that the work of removing workpiece W2 from pallet PL2 is completed at timing T6. Based on this, control device <NUM> transfers pallet PL2 from work station <NUM> to pallet storage <NUM>. More specifically, control device <NUM> moves carriage <NUM> to a front of work station <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to put pallet PL2 on carriage <NUM> (step S26). Then, control device <NUM> moves carriage <NUM> to a front of the unoccupied space in pallet storage <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to store pallet PL2 in the unoccupied space in pallet storage <NUM> (step S27).

As illustrated in <FIG>, it is assumed that the storage of pallet PL2 is completed at timing T7. Based on this, control device <NUM> transfers temporarily sheltered pallet PL5 from the pallet storage <NUM> to work station <NUM>.

More specifically, control device <NUM> moves carriage <NUM> to a front of temporarily sheltered pallet PL5. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to put pallet PL5 on carriage <NUM> (step S31). Then, control device <NUM> moves carriage <NUM> to a front of work station <NUM>. Then, control device <NUM> drives fork part <NUM> of carriage <NUM> to carry pallet PL5 in work station <NUM> (step S32). Based on the fact that pallet PL5 is carried in work station <NUM>, worker U resumes the work of attaching workpiece W5 to pallet PL5.

As described above, when in-process pallet PL5 is in work station <NUM> in the state where pallet PL2 on which machined workpiece W2 is loaded can be transferred, control device <NUM> forcedly carries out in-process pallet PL5 from work station <NUM>, and carries pallet PL2 on which machined workpiece W2 is loaded in work station <NUM>. The machined workpiece can be sent to the next production process by prioritizing the transfer of pallet PL2 on which machined workpiece W2 is loaded. As a result, the productivity of the workpiece is improved.

Preferably, before starting the forced transfer of in-process pallet PL5, control device <NUM> accepts selection for permitting or refusing interruption of the attaching work to pallet PL5. That is, control device <NUM> accepts the selection for permitting or refusing the forced transfer of pallet PL5. For example, a selection screen for permitting or refusing the forced transfer is displayed on a display <NUM> (see <FIG>) of operation terminal 500A installed in work station <NUM>.

Worker U selects either permission or refusal of the forced transfer on the selection screen displayed on display <NUM> of operation terminal 500A. The permission or refusal of the forced transfer may be selected by a touch operation on display <NUM> or by an input operation on an input device connected to operation terminal 500A.

When the permission of the forced transfer is selected, control device <NUM> starts transfer of in-process pallet PL5 from work station <NUM> to pallet storage <NUM>. On the other hand, when the refusal of the forced transfer is selected, control device <NUM> interrupts the forced transfer of in-process pallet PL5, and stores pallet PL2 on which machined workpiece W2 is loaded in pallet storage <NUM>.

In this manner, control device <NUM> receives the permission from worker U for the forced transfer of in-process pallet PL5, thereby suppressing the forced transfer of the pallet such that the workpiece attaching work is completed shortly afterwards.

The method for transferring machining completed pallet PL2 is not limited to the examples illustrated in <FIG>. In the following description, first to third modifications of the method for transferring machining completed pallet PL2 will be described in order.

The first modification of the method for transferring machining completed pallet PL2 will be described below.

Although the example in which the transfer of machining completed pallet PL2 to work station <NUM> is executed after the forced transfer of in-process pallet PL5 is completed, machining completed pallet PL2 may be transferred in parallel with the transfer of in-process pallet PL5. That is, control device <NUM> may execute the transfer of pallet PL2 from machine tool <NUM> to work station <NUM> in parallel with the transfer of pallet PL5 from work station <NUM> to pallet storage <NUM>.

In this case, transfer device <NUM> includes a plurality of carriages <NUM>. Each carriage <NUM> may be driven on different transfer paths, or may be driven on a common transfer path. When the transfer path is shared, control device <NUM> controls the drive of the plurality of carriages <NUM> such that carriages <NUM> do not collide with each other.

The second modification of the method for transferring the machining completed pallet will be described below.

The example in which the forced transfer of in-process pallet PL5 is started after the machining of workpiece W2 is completed is described. However, the forced transfer of in-process pallet PL5 may be started before the machining of workpiece W2 is completed.

As an example, control device <NUM> starts the forced transfer of pallet PL5 from work station <NUM> to pallet storage <NUM> when the machining of workpiece W2 attached to pallet PL2 is completed within a predetermined time (for example, within <NUM> to <NUM> minutes) from a present time. When the machining of workpiece W2 is completed, work station <NUM> transfers pallet PL2 from machine tool <NUM> to work station <NUM> after the transfer of pallet PL5 from work station <NUM> to pallet storage <NUM> is completed. Alternatively, when the machining of workpiece W2 is completed, work station <NUM> transfers pallet PL2 from machine tool <NUM> to work station <NUM> in parallel with the transfer of pallet PL5 from work station <NUM> to pallet storage <NUM>.

Preferably, control device <NUM> compares a scheduled machining completion time of the machining of workpiece W2 with a scheduled work completion time of the work of attaching workpiece W5 to pallet PL5, and decides whether to forcedly transfer in-process pallet PL5 based on the comparison result. As an example, when the machining completion time is earlier than the work completion time, control device <NUM> forcedly transfers in-process pallet PL5. On the other hand, when the machining completion time is later than the work completion time, control device <NUM> does not forcedly transfer in-process pallet PL5. The method for estimating the machining completion time will be described later.

For example, the work completion time is estimated based on history information <NUM> (see <FIG>) described later. Information about work information is stored in history information <NUM>. As an example, in history information <NUM>, personal identification information for identifying the worker, work identification information indicating a type of the work performed by the worker, and a work time required for the work are associated with a type of the workpiece. Based on the reception of a machining instruction of the workpiece, control device <NUM> refers to history information <NUM> to acquire the work time associated with the workpiece to be worked. When there are a plurality of such working hours, the control device <NUM> calculates the average of the acquired working hours. Control device <NUM> adds the work time to the work start time for the workpiece to be worked, and estimates the addition result as the work completion time.

The third modification of the method for transferring the machining completed pallet will be described below.

When there are a plurality of machining completed pallets, control device <NUM> determines the transfer order of each of the machining completed pallets according to the priority of the workpiece loaded on each of the machining completed pallets. For example, the transfer order is determined based on workpiece information <NUM> illustrated in <FIG> is a view illustrating an example of the data structure of workpiece information <NUM>.

As illustrated in <FIG>, workpiece information <NUM> defines various pieces of information related to the machining and transfer of the workpiece. For example, the various pieces of information defined in workpiece information <NUM> are previously set by a user. As an example, workpiece information <NUM> defines a transfer priority, a setup work time, and a machining time according to the type of the workpiece. The transfer priority indicates the priority of the transfer order. The setup work time indicates the time required to attach the workpiece to the pallet. The machining time indicates the time required for machine tool <NUM> to machine the workpiece.

When there are a plurality of machining completed pallets, control device <NUM> refers to workpiece information <NUM> to specify a transfer priority of the workpiece to be loaded on each of the machining completed pallets. Then, control device <NUM> transfers the machining completed pallet on which the workpiece having a higher transfer priority is loaded over other machining completed pallets.

As described above, control device <NUM> forcedly transfers the in-process pallet located in work station <NUM> when the machining of the workpiece is completed or when the machining of the workpiece is completed within a predetermined time. In order to perform such forced transfer, control device <NUM> needs to grasp the machining completion time of the workpiece. The machining completion time of the workpiece can be estimated by various methods. In the following description, specific examples <NUM> to <NUM> of the method for estimating the machining completion time of the workpiece will be described in order.

With reference to <FIG>, the specific example <NUM> of a method for estimating the machining completion time will be described.

Based on the reception of the machining instruction of the workpiece, the control device <NUM> of the pallet transfer system <NUM> refers to the workpiece information <NUM> shown in <FIG> and acquires the machining time associated with the workpiece to be machined. Control device <NUM> adds the machining time acquired from workpiece information <NUM> to the machining start time of the workpiece to be machined, and estimates the addition result as the machining completion time.

The specific example <NUM> of the method for estimating the machining completion time will be described below.

In the specific example <NUM>, control device <NUM> of pallet transfer system <NUM> estimates the machining completion time of the workpiece based on history information <NUM> (see <FIG>) described later. As an example, history information <NUM> stores the actual machining time required for the machining of the workpiece by each type of the workpiece.

Based on the reception of the machining instruction of the workpiece, control device <NUM> refers to history information <NUM> to acquire the machining time associated with the workpiece to be machined. When there are a plurality of such machining times, control device <NUM> calculates an average of the acquired machining times. Control device <NUM> adds the machining time to the machining start time of the workpiece to be machined, and estimates the addition result as the machining completion time.

In the specific example <NUM>, control device <NUM> pre-reads a machining program <NUM> (see <FIG>) described later to estimate the machining completion time of the workpiece.

As an example, control device <NUM> of pallet transfer system <NUM> acquires an instruction group called till a step indicating the machining completion from an executing step in machining program <NUM>, and calculates a total execution time required to execute the instruction group. For example, the total execution time is calculated based on execution time information in which the execution time is defined for each type of the instruction. Control device <NUM> adds the total execution time to the machining start time of the workpiece to be machined, and estimates the addition result as the machining completion time.

With reference to <FIG>, a data sharing method between various devices constituting pallet transfer system <NUM> will be described. <FIG> is a conceptual view schematically illustrating a cooperative relationship of various devices constituting pallet transfer system <NUM>.

As described above, control system <NUM> and PLC <NUM> are connected to network NW1 such as Ethernet. Remote I/O units <NUM> to <NUM> and PLC <NUM> are connected to network NW2 that is a field network.

A frame <NUM> is transmitted to network NW2. Frame <NUM> orbits network NW2 at predetermined control cycles. Remote I/O units <NUM> to <NUM> and PLC <NUM> share various data through frame <NUM>.

For example, frame <NUM> includes a data area 71A for PLC <NUM>, a data area 71B for transfer device <NUM> connected to remote I/O unit <NUM>, and a data area 71C for machine tool <NUM> connected to remote I/O unit <NUM>, and a data area 71D for operation terminal 500A connected to remote I/O unit <NUM>.

Data area 71A of frame <NUM> is an area in which PLC <NUM> writes various data. A transfer instruction of pallet PL and the like are written in data area 71A. The transfer instruction includes a transfer destination of pallet PL. For example, the transfer destination is expressed by an identification number indicating a storage location in pallet storage <NUM> (for example, an ID (Identification) indicating the storage location) or an identification number identifying machine tool <NUM> (for example, the ID of the machine tool). Various data written in data area 71A by PLC <NUM> can be referred to by various devices connected to network NW2.

Data area 71B of frame <NUM> is an area in which remote I/O unit <NUM> writes various data related to transfer device <NUM>. Various data written in data area 71B are referred to by various devices connected to network NW2.

Data area 71C of frame <NUM> is an area in which remote I/O unit <NUM> writes various data related to machine tool <NUM>. Various data written in data area 71C are referred to by various devices connected to network NW2.

For example, data area 71D of frame <NUM> is an area in which remote I/O unit <NUM> writes operation contents for operation terminal 500A. As an example, the selection result of permission or refusal for the forced transfer of the pallet from work station <NUM> is written in data area 71D of frame <NUM>.

With reference to <FIG>, a hardware configuration of control system <NUM> will be described. <FIG> is a schematic diagram illustrating an example of the hardware configuration of control system <NUM>.

Control system <NUM> includes a processor <NUM>, a ROM (Read Only Memory) <NUM>, a RAM (Random Access Memory) <NUM>, a communication interface <NUM>, a display interface <NUM>, an input interface <NUM>, and a storage device <NUM>. These components are connected to a bus <NUM>.

For example, processor <NUM> is constructed with at least one integrated circuit. For example, the integrated circuit may be constructed with at least one CPU (Central Processing Unit), at least one GPU (Graphics Processing Unit), at least one ASIC (Application Specific Integrated Circuit), at least one FPGA (Field Programmable Gate Array), or a combination thereof.

Processor <NUM> controls a motion of control system <NUM> by executing various programs such as a pallet transfer program <NUM> and an operating system. Processor <NUM> reads pallet transfer program <NUM> from storage device <NUM> or ROM <NUM> to RAM <NUM> based on the reception of the execution instruction of pallet transfer program <NUM>. RAM <NUM> functions as a working memory, and temporarily stores various data necessary for executing pallet transfer program <NUM>.

A LAN (Local Area Network), an antenna, and the like are connected to communication interface <NUM>. Control system <NUM> is connected to network NW1 through communication interface <NUM>. As a result, control system <NUM> exchanges data with an external device connected to network NW1. For example, the external device includes a control panel <NUM>, a server (not illustrated), and the like. Control system <NUM> may be configured so as to download pallet transfer program <NUM> from the external device.

Display <NUM> is connected to display interface <NUM>. Display interface <NUM> sends an image signal that displays an image to display <NUM> according to a command from processor <NUM> or the like. For example, display <NUM> is a liquid crystal display, an organic EL (Electro Luminescence) display, or other display devices. Display <NUM> may be configured integrally with control system <NUM>, or may be configured separately from control system <NUM>.

An input device <NUM> is connected to input interface <NUM>. For example, input device <NUM> is a mouse, a keyboard, a touch panel, or other devices capable of accepting user operations. Input device <NUM> may be integrally configured with control system <NUM>, or may be configured separately from control system <NUM>.

For example, storage device <NUM> is a storage medium such as a hard disk or a flash memory. Storage device <NUM> stores pallet transfer program <NUM>, schedule information <NUM>, workpiece information <NUM>, history information <NUM>, and the like. Transfer order of the pallet (or the workpiece), a machining priority of the pallet (or the workpiece), and the like are defined in schedule information <NUM>. The storage location of various data stored in storage device <NUM> is not limited to storage device <NUM>, but may be stored in a storage area (for example, cache memory) of the processor <NUM>, ROM <NUM>, RAM <NUM>, an external device (for example, a server), and the like.

Pallet transfer program <NUM> may be provided not as a stand-alone program, but as a part of any program. In this case, the transfer control processing by pallet transfer program <NUM> is performed in cooperation with an arbitrary program. Even a program that does not include such a part of modules does not deviate from the purpose of pallet transfer program <NUM> according to the present embodiment. Further, some or all of the functions provided by pallet transfer program <NUM> may be performed by dedicated hardware. Further, control system <NUM> may be configured in a form of what is called cloud service in which at least one server executes a part of the processing of pallet transfer program <NUM>.

With reference to <FIG>, an example of the hardware configuration of PLC <NUM> will be described. <FIG> is a block diagram illustrating a main hardware configuration of PLC <NUM>.

PLC <NUM> includes a processor <NUM>, a ROM (Read Only Memory) <NUM>, a RAM (Random Access Memory) <NUM>, communication interfaces <NUM>, <NUM>, and a storage device <NUM>.

Processor <NUM> is constructed with at least one integrated circuit. For example, the integrated circuit is constructed with at least one CPU, at least one MPU (Micro Processing Unit), at least one ASIC, at least one FPGA, or a combination thereof.

Processor <NUM> controls the motions of transfer device <NUM> and machine tool <NUM> by executing various programs such as a control program <NUM>. Processor <NUM> reads control program <NUM> from storage device <NUM> to ROM <NUM> based on the reception of an execution instruction of control program <NUM>. RAM <NUM> functions as a working memory, and temporarily stores various data necessary for the execution of control program <NUM>.

A LAN, an antenna, and the like are connected to communication interface <NUM>. PLC <NUM> is connected to network NW1 through communication interface <NUM>. As a result, PLC <NUM> exchanges data with an external device connected to network NW1. For example, the external device includes control system <NUM>, a server (not illustrated), and the like.

Communication interface <NUM> is an interface connected to network NW2 that is a field network. PLC <NUM> exchanges data with an external device connected to network NW2 through communication interface <NUM>. For example, the external device includes remote I/O units <NUM> to <NUM> and the like.

For example, storage device <NUM> is a storage medium such as a hard disk or a flash memory. Storage device <NUM> stores control program <NUM> and the like. The storage location of control program <NUM> is not limited to storage device <NUM>, but may be stored in the storage area (for example, a cache area) of processor <NUM>, ROM <NUM>, RAM <NUM>, an external device (for example, a server), or the like.

Control program <NUM> may be provided not as a stand-alone program, but as a part of any program. In this case, the control processing according to the present embodiment is performed in cooperation with an arbitrary program. Even a program that does not include such a part of modules does not deviate from the purpose of control program <NUM> according to the present embodiment. Further, some or all of the functions provided by control program <NUM> may be performed by dedicated hardware. Further, PLC <NUM> may be configured in a form of what is called cloud service in which at least one server executes a part of the processing of control program <NUM>.

With reference to <FIG>, an example of the hardware configuration of machine tool <NUM> will be described. <FIG> is a block diagram illustrating a main hardware configuration of machine tool <NUM>.

Machine tool <NUM> includes a CNC <NUM>, a ROM <NUM>, a RAM <NUM>, a field bus controller <NUM>, a display interface <NUM>, an input interface <NUM>, servo drivers 411A to 411D, servomotors 412A to 412D, encoders 413A to 413D, ball screws 414A, 414B, and a main shaft <NUM> that attaches tools. These devices are connected through a bus (not illustrated).

CNC <NUM> is constructed with at least one integrated circuit. For example, the integrated circuit is constructed with at least one CPU, at least one MPU, at least one ASIC, at least one FPGA, or a combination thereof.

CNC <NUM> controls the motion of machine tool <NUM> by executing various programs such as machining program <NUM>. CNC <NUM> reads machining program <NUM> from storage device <NUM> in ROM <NUM> based on the reception of the execution instruction of machining program <NUM>. RAM <NUM> functions as a working memory, and temporarily stores various data necessary for executing machining program <NUM>.

Field bus controller <NUM> is an interface that conducts communication with PLC <NUM> through remote I/O unit <NUM>. CNC <NUM> exchanges data with PLC <NUM> through field bus controller <NUM>.

Display interface <NUM> is connected to a display device such as a display <NUM>, and sends an image signal that displays an image to display <NUM> according to a command from CNC <NUM> or the like. For example, display <NUM> is a liquid crystal display, an organic EL display, or other display devices.

Input interface <NUM> may be connected to an input device <NUM>. For example, input device <NUM> is a mouse, a keyboard, a touch panel, or other input devices capable of accepting user operations.

CNC <NUM> controls servo driver 411A according to machining program <NUM>. Servo driver 411A sequentially receives the input of the target rotation speed (or the target position) from CNC <NUM>, controls servomotor 412A so that servomotor 412A rotates at the target rotation speed, and drives a workpiece installation table (not illustrated) in an X-axis direction. More specifically, servo driver 411A calculates the actual rotation speed (or actual position) of servomotor 412A from a feedback signal of encoder 413A, increases the rotation speed of servomotor 412A when the actual rotation speed is smaller than the target rotation speed, and decreases the rotation speed of servomotor 412A when the actual rotation speed is larger than the target rotation speed. In this way, servo driver 411A brings the rotation speed of servomotor 412A close to the target rotation speed while sequentially receiving feedback of the rotation speed of servomotor 412A. Servo driver 411A moves the workpiece installation table connected to ball screw 414A in the X-axis direction, and moves the workpiece installation table to an arbitrary position in the X-axis direction.

By the same motor control, servo driver 411B moves the workpiece installation table connected to ball screw 414B in a Y-axis direction according to the control command from CNC <NUM>, and moves the workpiece installation table to an arbitrary position in the Y-axis direction. By the same motor control, servo driver 411C moves main shaft <NUM> in a Z-axis direction according to the control command from CNC <NUM>, and moves main shaft <NUM> to an arbitrary position in the Z-axis direction. By the same motor control, servo driver 411D controls the rotation speed of main shaft <NUM> according to the control command from CNC <NUM>.

For example, storage device <NUM> is a storage medium such as a hard disk or a flash memory. Storage device <NUM> stores machining program <NUM> and the like. The storage location of machining program <NUM> is not limited to storage device <NUM>, but may be stored in the storage area (for example, a cache area) of CNC <NUM>, ROM <NUM>, RAM <NUM>, an external device (for example, a server), or the like.

With reference to <FIG>, the hardware configuration of operation terminal 500A will be described. <FIG> is a schematic diagram illustrating an example of the hardware configuration of operation terminal 500A.

Operation terminal 500A includes a processor <NUM>, a ROM <NUM>, a RAM <NUM>, a communication interface <NUM>, a display interface <NUM>, an input interface <NUM>, and a storage device <NUM>. These components are connected to a bus <NUM>.

For example, processor <NUM> is constructed with at least one integrated circuit. For example, the integrated circuit may be constructed with at least one CPU, at least one GPU, at least one ASIC, at least one FPGA, or a combination thereof.

Processor <NUM> controls the motion of operation terminal 500A by executing various programs such as a control program <NUM> and the operating system. Processor <NUM> reads control program <NUM> from storage device <NUM> or ROM <NUM> to RAM <NUM> based on the reception of the execution instruction of control program <NUM>. RAM <NUM> functions as a working memory, and temporarily stores various data necessary for the execution of control program <NUM>.

A LAN, an antenna, and the like are connected to communication interface <NUM>. Operation terminal 500A is connected to networks NW1, NW2 through communication interface <NUM>. As a result, operation terminal 500A exchanges data with external devices connected to networks NW1, NW2. For example, the external device includes control panel <NUM>, a server (not illustrated), and the like. Operation terminal 500A may be configured so that control program <NUM> can be downloaded from the external device.

A display <NUM> is connected to display interface <NUM>. Display interface <NUM> sends an image signal that displays an image to display <NUM> according to a command from processor <NUM> or the like. Display <NUM> displays a selection screen that accepts the permission or refusal of forced transmission of the in-process pallet at work station <NUM> or the like. For example, display <NUM> is a liquid crystal display, an organic EL display, or other display devices. Display <NUM> may be configured integrally with operation terminal 500A, or may be configured separately from operation terminal 500A.

An input device <NUM> is connected to input interface <NUM>. For example, input device <NUM> is a mouse, a keyboard, a touch panel, or other devices capable of accepting a user operation. Input device <NUM> may be configured integrally with operation terminal 500A, or may be configured separately from operation terminal 500A.

For example, storage device <NUM> is a storage medium such as a hard disk or a flash memory. Storage device <NUM> stores control program <NUM> and the like. The storage location of control program <NUM> is not limited to the storage device <NUM>, but may be stored in the storage area (for example, cache memory) of processor <NUM>, ROM <NUM>, RAM <NUM>, an external device (for example, a server), or the like.

Control program <NUM> may be provided as a stand-alone program, but as a part of an arbitrary program. In this case, the control processing by control program <NUM> is performed in cooperation with an arbitrary program. Even a program that does not include such a part of modules does not deviate from the purpose of control program <NUM> according to the present embodiment. Further, some or all of the functions provided by control program <NUM> may be performed by dedicated hardware. Further, operation terminal 500A may be configured in a form of what is called cloud service in which at least one server executes a part of the processing of control program <NUM>.

With reference to <FIG>, a control flowchart of control device <NUM> of pallet transfer system <NUM> will be described. <FIG> is a flowchart illustrating a part of processing executed by control device <NUM>. The control processing illustrated in <FIG> is executed in parallel with the normal pallet transfer processing.

In step S <NUM>, control device <NUM> determines whether or not the machining of the workpiece at machine tool <NUM> is completed. For example, whether or not the machining is completed is determined based on a machining state variable defined in machining program <NUM> (see <FIG>). For example, the machining state variable indicates "TRUE" during the machining and "FALSE" during non-machining. CNC <NUM> writes the value of the machining state variable in frame <NUM> (see <FIG>), and the value of the machining state variable is transmitted to control device <NUM> at regular intervals. For example, control device <NUM> determines that the machining of the workpiece is completed in machine tool <NUM> based on a change of the value of the machining state variable from "TRUE" to "FALSE".

When determining that the machining of the workpiece in machine tool <NUM> is completed (YES in step S110), control device <NUM> switches the control to step S120. Otherwise (NO in step S110), control device <NUM> ends the processing in <FIG>.

In step S120, control device <NUM> determines whether or not work station <NUM> is unoccupied. Whether or not work station <NUM> is unoccupied is determined based on a work state variable defined in pallet transfer program <NUM>. For example, the work state variable indicates a first value (for example, TRUE) during the work, and indicates a second value (for example, FALSE) during non-work. The value of the work state variable is written in frame <NUM> (see <FIG>), and transmitted to control device <NUM> at regular intervals. For example, control device <NUM> determines that work station <NUM> is unoccupied when the value of the work state variable indicates the first value.

When determining that work station <NUM> is unoccupied (YES in step S120), control device <NUM> switches the control to step S122. Otherwise (NO in step S120), control device <NUM> switches the control to step S130.

In step S122, control device <NUM> transfers the machining completed pallet from machine tool <NUM> to work station <NUM>.

In step S130, control device <NUM> determines whether or not the permission of the forced transfer is accepted. For example, the selection screen indicating permitting or refusing the forced transfer is displayed on display <NUM> (see <FIG>) of operation terminal 500A. Control device <NUM> switches the control to step S132 when the permission of the forced transfer is selected on the selection screen (YES in step S130). Otherwise (NO in step S130), control device <NUM> switches the control to step S134.

In step S132, control device <NUM> stores the machining completed pallet located in machine tool <NUM> in the unoccupied space of pallet storage <NUM>. When there are a plurality of unoccupied spaces in pallet storage <NUM>, control device <NUM> stores the machining completed pallets in the unoccupied space closest to work station <NUM>.

In step S134, control device <NUM> carries out the in-process pallet from work station <NUM>, and temporarily stores the pallet in the unoccupied space of pallet storage <NUM>. When there are a plurality of unoccupied spaces in pallet storage <NUM>, control device <NUM> shelters the in-process pallet in the unoccupied space closest to work station <NUM>.

In step S136, control device <NUM> carries the machining completed pallet located in machine tool <NUM> in work station <NUM> based on the completion of the shelter processing of the in-process pallet.

In step S140, control device <NUM> determines whether or not the work of removing the machined workpiece for the pallet carried in work station <NUM> is completed. As an example, control device <NUM> determines that the removal work is completed based on detection of pressing of a work completion button (not illustrated) provided in work station <NUM>. The work completion button may be a physical button or a button displayed on a touch panel or the like. The completion of the removal work may be detected by detection means other than the work completion button. When determining that the work of removing the machined workpiece is completed (YES in step S <NUM>), control device <NUM> switches the control to step S142. Otherwise (NO in step S <NUM>), control device <NUM> executes the processing in step S140 again.

In step S142, control device <NUM> carries out the empty pallet from work station <NUM>, and stores the empty pallet in the unoccupied space of pallet storage <NUM>.

In step S144, control device <NUM> carries the pallet temporarily sheltered into pallet storage <NUM> in step S134 in work station <NUM>.

In the above description, in step S110, control device <NUM> determines whether or not the machining of the workpiece in machine tool <NUM> is completed. Alternatively, whether or not the machining of the workpiece is completed within a predetermined time from the present may be determined. That is, in step S <NUM>, control device <NUM> determines whether or not the machining of the workpiece in the machine tool <NUM> is about to end. In this case, control device <NUM> switches the control to step S120 when determining that the machining of the workpiece is completed within the predetermined time from the present (YES in step S110). Otherwise (NO in step S110), control device <NUM> ends the processing in <FIG>.

As described above, when the machining completed pallet can be transferred to work station <NUM>, control device <NUM> of pallet transfer system <NUM> forcedly carries out the in-process pallet in work station <NUM> from work station <NUM>. Then, control device <NUM> carries the machining completed pallet in work station <NUM>, and the worker removes the machined workpiece from the carried-in machining completed pallet. In this way, the machined workpiece can be sent to the next production process by prioritizing the transfer of the machining completed pallet to work station <NUM>. As a result, the productivity of the workpiece is improved.

It should be considered that the disclosed embodiment is an example in all respects and not restrictive. The scope of the present invention is not defined by the description above, but the claims, and it is intended that all modifications within the scope of the claims are included in the present invention.

Claim 1:
A pallet transfer system (<NUM>) comprising:
a transfer device (<NUM>) configured to transfer a pallet (PL) to which a workpiece is attachable;
a pallet storage (<NUM>) that is one of pallet transfer destinations by the transfer device (<NUM>) and configured to store a plurality of pallets (PL);
a work station (<NUM>) that is one of the pallet transfer destinations by the transfer device (<NUM>), where a worker can perform work of attaching the workpiece to the pallet (PL) transferred from the pallet storage (<NUM>), wherein the work station (<NUM>) comprises an operation terminal (500A) with a display (<NUM>) configured to display a selection screen allowing the worker to provide a selection for permission or refusal;
a machine tool (<NUM>) that is one of the pallet transfer destinations by the transfer device (<NUM>) and configured to machine the workpiece attached to the pallet (PL) at the work station (<NUM>); and
a control device (<NUM>) configured to control the transfer device (<NUM>),
wherein the control device (<NUM>) is configured to execute:
processing for accepting the selection for permission or refusal of interruption of the attaching work to a second pallet (PL5) when the machining of the workpiece (W2) attached to a first pallet (PL2) is completed in a state where the first pallet (PL2) of the plurality of pallets (PL) is in the machine tool (<NUM>) and the second pallet (PL5) of the plurality of pallets (PL) is in the work station (<NUM>);
processing for transferring the second pallet (PL5) from the work station (<NUM>) to the pallet storage (<NUM>) based on the acceptance of the selection for the permission;
processing for transferring the first pallet (PL2) from the machine tool (<NUM>) to the work station (<NUM>) after the completion of transfer of the second pallet (PL5) from the work station (<NUM>) to the pallet storage (<NUM>), or in parallel with the transfer of the second pallet (PL5) from the work station (<NUM>) to the pallet storage (<NUM>); and
processing for transferring the first pallet (PL2) from the machine tool (<NUM>) to the pallet storage (<NUM>) based on the acceptance of the selection for the refusal.