WO2016140120A1 - 仕分け装置、コンピュータプログラム、仕分け方法 - Google Patents

仕分け装置、コンピュータプログラム、仕分け方法 Download PDF

Info

Publication number
WO2016140120A1
WO2016140120A1 PCT/JP2016/055361 JP2016055361W WO2016140120A1 WO 2016140120 A1 WO2016140120 A1 WO 2016140120A1 JP 2016055361 W JP2016055361 W JP 2016055361W WO 2016140120 A1 WO2016140120 A1 WO 2016140120A1
Authority
WO
WIPO (PCT)
Prior art keywords
cpu
products
product
weight
loaded
Prior art date
Application number
PCT/JP2016/055361
Other languages
English (en)
French (fr)
Inventor
徹也 石原
眞 星野
清水 三希夫
健一 廣畑
磐夫 江尻
竜樹 原
Original Assignee
スキューズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by スキューズ株式会社 filed Critical スキューズ株式会社
Priority to JP2017503435A priority Critical patent/JPWO2016140120A1/ja
Publication of WO2016140120A1 publication Critical patent/WO2016140120A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed

Definitions

  • the present invention relates to a sorting device for sorting cooked foods for each delivery destination.
  • Prepared foods such as bento boxes, rice balls, and sandwiches manufactured at food factories are sorted at each shipping destination store, loaded into a transport container (transport container) and delivered.
  • a sorting apparatus for instructing cooked foods to be introduced for each transport container Patent Document 1.
  • the transport container is referred to as “banju”.
  • the conventional sorting apparatus does not consider how to arrange each cooked food within the weight when sorting a plurality of types of cooked food according to the weight.
  • the lunch box moved within the weight due to truck vibration during delivery and sudden braking to avoid danger Problems such as crushing rice balls occur.
  • the present invention has been made in view of such circumstances.
  • the purpose is to provide a sorting device that sorts cooked foods in consideration of the arrangement within the weight.
  • the sorting device disclosed in the present specification is a determining unit that determines the number of loaded products and the loading position for each weight in the sorting device that sorts the products based on the dimensions of the products, the number of orders, and the number of weights. And, according to the type of the product, the ranking unit that ranks the products for each number of weights, and the determination unit determined so that the products are arranged in order according to a predetermined direction of the number of weights And a changing unit that changes the loading position of the product.
  • the sorting apparatus is one of the components of the food system.
  • the food system is an information system that manages the manufacture and delivery of cooked foods sold at convenience stores (hereinafter referred to as convenience stores), supermarkets, department stores, and the like.
  • the cooked food hereinafter referred to as “product” includes lunch boxes, rice balls, sandwiches, and confectionery such as cream puffs and eclairs.
  • the weight is a rectangular parallelepiped box including a rectangular bottom plate and a side plate (peripheral wall) extending substantially perpendicularly from the periphery of the bottom plate.
  • FIG. 1 is a block diagram illustrating a configuration example of the food system 1.
  • the food system 1 includes a store POS (point of sale system) device 2, an order management system 3, a food production system 4, a sorting system 5, and a delivery service system 6.
  • the store POS device 2 and the order management system 3 are connected by, for example, a dedicated line.
  • the order management system 3 and the food production system 4 are also connected by, for example, a dedicated line.
  • the food production system 4, the sorting system 5, and the delivery service system 6 are connected by, for example, a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, a telephone line, a satellite line, and the like.
  • LAN Local Area Network
  • WAN Wide Area Network
  • the store POS device 2 is a computer related to a POS at a convenience store.
  • the number of the store POS apparatuses 2 is three, for example. However, there are at least as many store POS devices 2 as there are convenience stores.
  • the store POS device 2 transmits ordering information on products for sale to customers to the order management system 3.
  • the order management system 3 is a system for managing order information from the store POS device 2, that is, order information.
  • the order management system 3 transmits the order information received from the store POS device 2 to the food production system 4.
  • the food manufacturing system 4 is a system that manages manufacturing operations and manufacturing apparatuses for manufacturing products to be delivered to a convenience store.
  • the food manufacturing system 4 receives product order information from the order management system 3.
  • the sorting system 5 is a system that manages the sorting operation or the sorting device 10 and the transporting device 20 that sorts the products manufactured by the food manufacturing system 4 for each delivery destination store.
  • the delivery flight system 6 is a system that manages truck flights that deliver products sorted by store. The goods sorted for each store are delivered to the store by truck service in accordance with instructions from the delivery system 6.
  • the food production system 4, the sorting system 5, and the delivery service system 6 transmit and receive information to each other, and manage products that are delivered to the store in cooperation with each other.
  • the sorting system 5 includes a sorting device 10 and a transport device 20.
  • the sorting device 10 and the transport device 20 are connected to each other by wire or wireless.
  • the sorting apparatus 10 is a computer such as a mainframe or a workstation.
  • the sorting device 10 sorts the products for each store, and instructs the transport device 20 how to load the products into the weight.
  • the conveyance device 20 is a self-running traveling robot having an arm, a picking robot, or the like.
  • the transport device 20 loads the products into the number of each store according to the instruction of the sorting device 10.
  • FIG. 2 is a block diagram illustrating a hardware configuration example of the sorting apparatus 10.
  • the sorting apparatus 10 includes a CPU (Central Processing Unit) (determination unit, ranking unit, change unit, first acquisition unit, second acquisition unit, single item determination unit, determination unit) 11, ROM (Read Only Memory) 12, and RAM. (Random Access Memory) 13 and hard disk 14 are included.
  • the sorting apparatus 10 includes a disk drive 15, a communication unit 16, a display unit 17, and an operation unit 18. Each component of the sorting apparatus 10 is connected via a bus 10b.
  • the CPU 11 controls each component of the sorting device 10.
  • the CPU 11 reads a program (computer program) 10P stored in the hard disk 14 into the RAM 13 and executes the program 10P.
  • the ROM 12 is a non-volatile semiconductor memory or a read-only storage medium other than the semiconductor memory.
  • the ROM 12 stores BIOS (Basic Input / Output System) executed by the CPU 11 when the sorting apparatus 10 is activated, firmware, and the like.
  • BIOS Basic Input / Output System
  • the RAM 13 is a main storage device.
  • the RAM 13 temporarily stores work variables, data, and the like necessary during the process of the CPU 11.
  • the RAM 13 may be replaced with a flash memory, a memory card, or the like.
  • the hard disk 14 is an auxiliary storage device.
  • the hard disk 14 stores a program 10P executed by the CPU 11.
  • the hard disk 14 may be mounted inside the sorting apparatus 10 or may be placed outside the sorting apparatus 10.
  • the hard disk 14 is replaced with an optical disk 10d such as a flash memory capable of storing a large amount of information, a CD (Compact Disc), a DVD (Digital Versatile Disk), or a BD (Blu-ray (registered trademark) Disc). May be.
  • an optical disk 10d such as a flash memory capable of storing a large amount of information, a CD (Compact Disc), a DVD (Digital Versatile Disk), or a BD (Blu-ray (registered trademark) Disc). May be.
  • the disk drive 15 is a recording device that reads information from the optical disk 10d, which is an external storage medium, and records the read information on the optical disk 10d.
  • the communication unit 16 is a modem or a LAN (Local Area Network) card. The communication unit 16 transmits / receives information to / from the order management system 3, each component in the food production system 4, the sorting system 5, and the delivery service system 6. The sorting apparatus 10 is also connected to the Internet via the communication unit 16.
  • the display unit 17 includes a screen such as a liquid crystal display or an organic EL (Electro-Luminescence) display, and displays various screens related to the program 10P according to instructions from the CPU 11.
  • a screen such as a liquid crystal display or an organic EL (Electro-Luminescence) display, and displays various screens related to the program 10P according to instructions from the CPU 11.
  • the operation unit 18 is an input device such as a keyboard, a mouse, and a touch panel provided on the screen of the display unit 17 where the user performs various inputs.
  • the operation unit 18 generates an input signal based on an operation by the user.
  • the generated input signal is output to the CPU 11 via the bus 10b.
  • the CPU 11 may read the program 10P from the optical disk 10d via the disk drive 15.
  • the CPU 11 may read the program 10P from an external information processing apparatus or storage device via the communication unit 16.
  • a semiconductor memory 10m such as a flash memory storing the program 10P may be mounted in the sorting apparatus 10.
  • FIG. 3 is an explanatory diagram showing an example of the record layout of the product database 141.
  • the product database 141 is stored in, for example, the hard disk 14.
  • the product database 141 includes a product code column, a product name column, a category column, a column, a row, a height column, a gap column, a weight column, a shape column, a stackability column, and a column number column.
  • the product code string stores a code (identification information) that uniquely specifies a product.
  • the product name column stores the product name.
  • the category column stores symbols, numbers, etc. indicating the category (type) of the product.
  • A be a category of products that are in a container such as a lunch box and are not easily crushed.
  • B be the category of products that are not in containers such as rice balls but are difficult to deform.
  • C be the category of products that are not in a container, such as cream puffs, and that are easily crushed.
  • the column stores the vertical dimension value of the product.
  • the row stores the horizontal dimension value of the product.
  • the height column stores the dimension value of the product height.
  • the gap row stores the dimension value of the gap to be provided between the product and the next product or the wall of the watch weight when the product is loaded on the watch.
  • the weight column stores the weight of the product.
  • the shape column stores symbols, numbers, and the like indicating the shape of the product.
  • the stackability column stores the value of a stackability flag that indicates whether or not products can be stacked when they are stacked in order.
  • a value of 1 indicates that stacking is possible.
  • a value of 0 indicates that stacking is not possible.
  • the column of number of stages stores the number of stages that can be stacked (allowable number of stages).
  • FIG. 4 is an explanatory diagram showing an example of the record layout of the order information database 142.
  • the order information database 142 is stored in the hard disk 14, for example.
  • the order information database 142 includes a store code column, a product code column, and an order quantity column.
  • the store code string stores the code of the store associated with the order information, that is, the store that placed the order.
  • the product code string stores the code of the ordered product.
  • the order quantity column stores the quantity ordered (order quantity).
  • product database 141 and the order information database 142 are stored in the hard disk 14, they are not limited thereto. It may be stored in the order management system 3 or the food production system 4 other than the sorting device 10, or may be stored in a database device accessible from other sorting devices 10.
  • the CPU 11 of the sorting apparatus 10 reads the order information from the order information database 142 (step S1).
  • the CPU 11 divides the read order information into store codes and selects a store to be processed (step S2).
  • the CPU 11 sets the size of the load for loading the product as a variable.
  • the CPU 11 sets the value of the vertical dimension of the weight in the variable G, the value of the horizontal dimension of the weight in the variable H, and the value of the height dimension of the weight in the variable I (step S3).
  • Each of the dimensions is an internal dimension of a weight that defines a storage space for the product.
  • the CPU 11 selects one of the products manufactured by the food manufacturing system 4 and waiting for sorting for each store (step S4).
  • the CPU 11 reads information on the selected product (step S5).
  • the CPU 11 determines whether or not the selected product is a product ordered from the processing target store (step S6). If the CPU 11 determines that the selected product is not an ordered product (NO in step S6), the process returns to step S4.
  • the CPU 11 determines that the selected product is an ordered product (YES in step S6), the CPU 11 sets the size of the product as a variable.
  • the CPU 11 sets the value of the vertical dimension of the product in the variable C, the value of the horizontal dimension of the product in the variable D, the value of the height dimension of the product in the variable E, and the value of the gap dimension of the product in the variable F. (Step S7).
  • step S8 calculates the number (the number of loading) of loading the selected product. This loading number calculation process will be described later.
  • the CPU 11 determines whether there is a remaining number (step S9). That is, it is determined whether or not it is possible to load products for the number of orders. If the CPU 11 determines that there is a remaining number (YES in step S9), it sets a new weight and sets the size of the weight to each variable (step S10). This process is the same process as step S3 described above. The CPU 11 returns the process to step S8.
  • step S9 When it is determined that there is no remaining number (NO in step S9), the CPU 11 determines whether there is another unprocessed product (step S11). If the CPU 11 determines that there is another product (YES in step S11), the CPU 11 determines whether there is a margin in the number (step S12). If the CPU 11 determines that there is room in the weight (YES in step S12), the process returns to step S4. If the CPU 11 determines that there is no allowance for the weight (NO in step S12), it sets a new weight and sets the size of the weight to each variable (step S13). This process is the same as the above-described step S3 and step S10. The CPU 11 returns the process to step S4.
  • step S11 When the CPU 11 determines that there is no other product (NO in step S11), the CPU 11 instructs the transfer device 20 on the loading method (step S14). The CPU 11 determines whether there is an unprocessed store or a store that has not been processed (step S15). If the CPU 11 determines that there is an unprocessed store or a store that has not been processed (YES in step S15), the process returns to step S2. If the CPU 11 determines that there are no unprocessed stores and stores that have not been processed (NO in step S15), the sorting process is terminated.
  • CPU11 when CPU11 performs step S4, when manufacture of no goods matched with the process target store is not completed, CPU11 returns a process to step S2 and performs the process about another store. Also good. If some products associated with the store to be processed have been sorted, but the remaining products have not been manufactured and cannot be loaded, the processing for that store is interrupted, You may perform the process of the other store which has not completed the sorting process.
  • FIG. 7 and 8 are flowcharts showing an example of the procedure of the loading number calculation process.
  • the CPU 11 performs a loading determination process (step S21).
  • 9 to 15 are flowcharts showing an example of the procedure of the loading determination process.
  • the CPU 11 calculates how many items can be loaded in the horizontal direction when the horizontal direction of the product is matched with the horizontal direction of the weight.
  • the horizontal dimension of the weight is H
  • the horizontal dimension of the product is D
  • a gap of a dimension F (a gap of a predetermined dimension) is provided between adjacent products, so the CPU 11 obtains Nc1 by the equation (1) (step S41).
  • Nc1 H div (D + F) (1)
  • the operator div is an operator for obtaining the integer part of the divided quotient.
  • step S42 determines whether Nc1 is greater than 0 (step S42). If the CPU 11 determines that Nc1 is greater than 0 (YES in step S42), the CPU 11 determines whether equation (2) is satisfied (step S43).
  • the operator mod is an operator for obtaining a remainder of division.
  • step S45 when Formula (2) is materialized (it is YES at step S43), ie, when a clearance gap is securable. If the expression (2) does not hold (NO in step S43), that is, if the gap cannot be secured, the CPU 11 reduces the number Nc1 loaded in the horizontal direction (step S44).
  • the CPU 11 calculates how many items can be loaded in the vertical direction when the horizontal direction of the product is aligned with the horizontal direction of the weight.
  • the vertical dimension of the weight is G
  • the vertical dimension of the product is C
  • a gap of size F is provided between the adjacent products, so the CPU 11 obtains Nr1 by Expression (3) (step S45).
  • Nr1 G div (C + F) (3)
  • step S46 determines whether Nr1 is greater than 0 (step S46). If the CPU 11 determines that Nr1 is greater than 0 (YES in step S46), the CPU 11 determines whether equation (4) is satisfied (step S47).
  • step S49 when Formula (4) is materialized (it is YES at step S47), ie, when a clearance gap is securable.
  • the expression (4) is established (NO in step S47), that is, when the gap cannot be secured, the CPU 11 reduces the number Nr1 loaded in the vertical direction (step S48).
  • the CPU 11 multiplies the number Nc1 that can be loaded in the horizontal direction by the number Nr1 that can be loaded in the vertical direction, and calculates the number N1 of products that can be loaded (step S49).
  • the CPU 11 determines that Nc1 is 0 or less (NO in step S42), or Nr1 is determined to be 0 or less (NO in step S46)
  • the CPU 11 sets the number N1 that can be loaded to 0 (step S50), and performs the processing step.
  • FIG. 16 is an explanatory diagram showing an example of the intermediate result of the loading determination process.
  • FIG. 16 shows a plan view of the number of goods loaded with goods. In the example shown in FIG. 16, the case where goods are loaded in the right direction and the left direction from the lower left is shown. There is a marginal space (empty space) in the upper part and the right part of FIG. Next, the CPU 11 tries to load the spare space with the direction of the product changed.
  • FIGS. 17A and 17B are explanatory views showing an example of a margin space of a number. 17A and 17B are plan views similar to FIG. The upper right portion of FIGS. 17A and 17B is a portion where two extra spaces overlap. Therefore, when considering the loading of products into the marginal space, consider when overlapping portions are included in the vertical marginal space as shown in FIG. 17A and when overlapping portions are included in the horizontal marginal space as shown in FIG. 17B. There is a need. The former process will be described.
  • the CPU 11 calculates the number Nc11 of products that can be loaded in the horizontal direction and the number Nr11 of products that can be loaded in the vertical direction in the marginal space where the vertical dimension is G 'and the horizontal dimension is H-H' (step S52).
  • the CPU 11 determines whether or not a gap can be secured at the end in the horizontal direction (step S54). If the CPU 11 determines that a gap can be secured (YES in step S54), the process proceeds to step S56. If the CPU 11 determines that a gap cannot be secured (NO in step S54), the number Nc11 is decreased (step S55).
  • the CPU 11 calculates the number Nc12 of products that can be loaded in the horizontal direction and the number Nr12 of products that can be loaded in the vertical direction in the marginal space where the vertical dimension is G and the horizontal dimension is H '(step S56).
  • step S58 determines that a gap can be secured (YES in step S58). If the CPU 11 determines that a gap can be secured (YES in step S58), the process proceeds to step S60. If the CPU 11 determines that the gap cannot be secured (NO in step S58), the number Nr12 is decreased (step S59). The CPU 11 calculates the number N1 'of products that can be loaded in the two extra spaces (step S60).
  • the CPU 11 performs processing when the overlapping portion is included in the horizontally long space as shown in FIG. 17B.
  • the CPU 11 calculates the number Nc13 of products that can be loaded in the horizontal direction and the number Nr13 of products that can be loaded in the vertical direction in the marginal space where the vertical dimension is G 'and the horizontal dimension is H (step S61).
  • the CPU 11 determines whether or not a gap can be secured at the lateral end (step S63). If the CPU 11 determines that a gap can be secured (YES in step S63), the process proceeds to step S65. If the CPU 11 determines that the gap cannot be secured (NO in step S63), the number Nc13 is decreased (step S64).
  • the CPU 11 calculates the number Nc14 of products that can be loaded in the horizontal direction and the number Nr14 of products that can be loaded in the vertical direction in the marginal space where the vertical dimension is G-G 'and the horizontal dimension is H' (step S65).
  • step S67 If the CPU 11 determines that a gap can be secured (YES in step S67), the process proceeds to step S69. If the CPU 11 determines that a gap cannot be secured (NO in step S67), the number Nr14 is decreased (step S68). The CPU 11 calculates the number N1 ′′ of products that can be loaded in the two spare spaces (step S69).
  • the CPU 11 calculates how many items can be loaded in the horizontal direction when the vertical direction of the product is aligned with the horizontal direction of the weight.
  • the horizontal dimension of the weight is H
  • the vertical dimension of the product is C
  • a gap of size F is provided between the adjacent products, so the CPU 11 obtains Nc2 from Equation (5) (step S70).
  • Nc2 H div (C + F) (5)
  • step S71 determines whether Nc2 is greater than 0 (step S71). If the CPU 11 determines that Nc2 is greater than 0 (YES in step S71), the CPU 11 determines whether equation (6) is satisfied (step S72).
  • step S74 when Formula (6) is materialized (it is YES at step S72), ie, when a clearance gap is securable.
  • the CPU 11 reduces the number Nc2 loaded in the horizontal direction (step S73).
  • the CPU 11 calculates how many items can be loaded in the vertical direction when the vertical direction of the product is aligned with the horizontal direction of the weight.
  • the vertical dimension of the weight is G
  • the horizontal dimension of the product is D
  • a gap of size F is provided between the adjacent products, so the CPU 11 obtains Nr2 from Equation (7) (step S74).
  • Nr2 G div (D + F) (7)
  • step S75 determines whether Nr2 is greater than 0 (step S75). If the CPU 11 determines that Nr2 is greater than 0 (YES in step S75), the CPU 11 determines whether or not equation (8) is satisfied (step S76).
  • step S78 when Formula (8) is materialized (it is YES at step S76), ie, when a clearance gap is securable.
  • the CPU 11 reduces the number Nr2 loaded in the vertical direction (step S77).
  • the CPU 11 multiplies the number Nc2 that can be loaded in the horizontal direction by the number Nr2 that can be loaded in the vertical direction to calculate the number N2 that can be loaded by the product (step S78).
  • the CPU 11 determines that Nc2 is 0 or less (NO in step S71) or Nr2 is determined to be 0 or less (NO in step S75)
  • the CPU 11 sets the number N2 that can be loaded to 0 (step S80), and performs the process step. Move to S99.
  • the CPU 11 calculates the vertical dimension G ′′ and the horizontal dimension H ′′ of the spare space (step S79). Similar to the above, when considering loading products into the marginal space, when overlapping portions are included in the vertical marginal space as shown in FIG. 17A and when overlapping portions are included in the horizontal marginal space as shown in FIG. 17B We will divide and consider. The former process will be described.
  • the CPU 11 calculates the number Nc21 of products that can be loaded in the horizontal direction and the number Nr21 of products that can be loaded in the vertical direction in a marginal space where the vertical dimension is G ′′ and the horizontal dimension is H ⁇ H ′′ (step S81).
  • the CPU 11 determines that Nc21 and Nr21 are not 0 (NO in step S82)
  • the CPU 11 determines whether or not a gap can be secured at the lateral end (step S83). If the CPU 11 determines that a gap can be secured (YES in step S83), the process proceeds to step S85. If the CPU 11 determines that the gap cannot be secured (NO in step S83), the number Nc21 is decreased (step S84).
  • step S85 The CPU 11 calculates the number Nc22 of products that can be loaded in the horizontal direction and the number Nr22 of products that can be loaded in the vertical direction in a marginal space where the vertical dimension is G and the horizontal dimension is H ′′ (step S85).
  • step S87 If the CPU 11 determines that a gap can be secured (YES in step S87), the process proceeds to step S89. If the CPU 11 determines that a gap cannot be secured (NO in step S87), the number Nr22 is reduced (step S88). The CPU 11 calculates the number N2 'of products that can be loaded in the two extra spaces (step S89).
  • the CPU 11 performs processing when the overlapping portion is included in the horizontally long margin space as in FIG. 17B.
  • the CPU 11 calculates the number Nc23 of products that can be loaded in the horizontal direction and the number Nr23 of products that can be loaded in the vertical direction in the marginal space where the vertical dimension is G ′′ and the horizontal dimension is H (step S90).
  • step S92 determines whether or not a gap can be secured at the lateral end. If the CPU 11 determines that a gap can be secured (YES in step S92), the process proceeds to step S94. If the CPU 11 determines that the gap cannot be secured (NO in step S92), the number Nc23 is decreased (step S93).
  • the CPU 11 calculates the number Nc24 of products that can be loaded in the horizontal direction and the number Nr24 of products that can be loaded in the vertical direction in a marginal space where the vertical dimension is G-G "and the horizontal dimension is H" (step S94).
  • step S96 If the CPU 11 determines that a gap can be secured (YES in step S96), the process proceeds to step S98. If the CPU 11 determines that the gap cannot be secured (NO in step S96), the number Nr24 is reduced (step S97). The CPU 11 calculates the number N2 ′′ of products that can be loaded in the two spare spaces (step S98).
  • the CPU 11 determines whether or not the number N1 of products that can be loaded when the horizontal direction of the product is aligned with the horizontal direction of the weight is 0 (step S99). If the CPU 11 determines that the number N1 is 0 (YES in step S99), the process proceeds to step S103. When the CPU 11 determines that the number N1 is not 0 (NO in step S99), the CPU 11 determines in which pattern the number increases with respect to the number of products that can be loaded in the spare space studied in the two patterns (step S100). .
  • step S100 When the CPU 11 determines that the number N1 ′ in the first studied pattern is larger than the number N1 ′′ in the second examined pattern (YES in step S100), the CPU 11 determines that the number N1 ′ into which the product can be loaded is N1 ′. And flag1 is set to 1 (step S101). When the CPU 11 determines that the number N1 ′′ in the second studied pattern is greater than or equal to the number N1 ′ in the first studied pattern (NO in step S100), the CPU 11 determines that the number N1 into which the product can be loaded is N1. '' Is added and flag1 is set to 2 (step S102).
  • the CPU 11 determines whether or not the number N2 of products that can be loaded when the vertical direction of the products is aligned with the horizontal direction of the weight is 0 (step S103). If the CPU 11 determines that the number N2 is 0 (YES in step S103), the process proceeds to step S107. When the CPU 11 determines that the number N2 is not 0 (NO in step S103), the CPU 11 determines in which pattern the number increases with respect to the number of products that can be loaded in the spare space examined in the two patterns (step S104). .
  • step S104 When the CPU 11 determines that the number N2 ′ in the first studied pattern is larger than the number N2 ′′ in the second studied pattern (YES in step S104), the CPU 11 determines that the number N2 ′ into which the product can be loaded is N2 ′. And flag2 is set to 1 (step S105). When the CPU 11 determines that the number N2 ′′ in the second studied pattern is greater than or equal to the number N2 ′ in the first studied pattern (NO in step S104), the CPU 11 determines that the number N2 into which the product can be loaded is N2 '' Is added and flag2 is set to 2 (step S106).
  • step S107 determines whether the number N1 and N2 which can load goods is 0 (step S107). If the CPU 11 determines that the number N1 or N2 is not 0 (NO in step S107), it determines whether N1 is greater than N2 (step S108). If the CPU 11 determines that N1 is greater than N2 (YES in step S108), the CPU 11 sets N1 as the maximum number N of products to be stacked and sets flag to 1 (step S109). If the CPU 11 determines that N1 is N2 or less (NO in step S108), the CPU 11 sets N2 as the maximum number N of products that can be loaded, and sets flag to 2 (step S110).
  • the CPU11 memorize
  • the vertical dimension value and the horizontal dimension value of the spare space where the product is not loaded are updated to the variable G indicating the vertical dimension of the weight and the variable H indicating the horizontal dimension (step S111).
  • the CPU 11 ends the loading determination process and returns the process to the caller. Thereby, the CPU 11 treats the extra space as a pseudo weight, and determines whether or not other products can be loaded in the subsequent processing.
  • FIG. 18 is an explanatory view showing an example of the number of goods in the middle of loading the product.
  • FIG. 18 is a plan view of the weight.
  • a product P1 is loaded in a rectangular area having a vertical dimension G-G 'and a horizontal dimension H-H'
  • a product P2 is loaded in a rectangular area having a vertical dimension G and a horizontal dimension H '.
  • a rectangular area having a vertical dimension G 'and a horizontal dimension H-H' is a marginal space in which products are not yet loaded.
  • step S107 If the CPU 11 determines that the numbers N1 and N2 are 0 (YES in step S107), the CPU 11 sets the number N of products to be loaded to 0 (step S112) and returns the process to the caller.
  • step S22 the CPU 11 determines whether or not a product can be loaded (step S22).
  • the CPU 11 determines whether or not the number N of products that can be loaded is zero. If the CPU 11 determines that loading is not possible, that is, the number N is 0 (NO in step S22), the loading number calculation process ends, and the process returns to the caller.
  • the CPU 11 determines whether the selected product can be stacked (step S23). This determination is made based on the stackability flag included in the product information. If the CPU 11 determines that stacking is possible, that is, the stackability flag is 1 (YES in step S23), the CPU 11 sets the number of stages to 2 (step S24). Further, the CPU 11 subtracts the height dimension E of the product from the variable I indicating the height dimension of the weight. Furthermore, the CPU 11 subtracts the number that can be loaded from the remaining number of products. The CPU 11 determines whether or not the number of stages is equal to or less than the allowable number of stages for stacking (step S25).
  • This determination uses the value of the number of stages included in the product information.
  • the CPU 11 determines whether there is a margin for further stacking products. That is, the CPU 11 determines whether or not the value of IE is 0 or more (step S26). If the CPU 11 determines that there is a margin for further stacking of products and the IE value is 0 or more (YES in step S26), the CPU 11 determines whether the remaining number is larger than the loadable number. (Step S27). When the remaining number is larger than the loadable number (YES in step S27), the CPU 11 subtracts the loadable number from the remaining number (step S28). The CPU 11 subtracts E from the value of I and increases the number of stages by 1 (step S29). CPU11 returns a process to step S25.
  • step S25 If the CPU 11 determines that the number of steps exceeds the allowable number of steps (NO in step S25), or if the CPU 11 determines that there is not enough room to stack one more product (NO in step S26), the number of steps is set to 1. Decrease (step S32) and return the processing to the caller.
  • CPU 11 sets the remaining number to 0 (step S30) when the remaining number is equal to or less than the loadable number (NO in step S27).
  • the CPU 11 subtracts E from I (step S31).
  • the CPU 11 reduces the number of stages by 1 (step S32), and returns the process to the caller.
  • step S33 determines whether or not the remaining number is larger than the loadable number. If the remaining number is larger than the loadable number (YES in step S33), the CPU 11 subtracts the loadable number from the remaining number (step S34) and returns the process to the caller. If the remaining number is less than or equal to the loadable number (NO in step S33), the CPU 11 sets the remaining number to 0 (step S35) and returns the process to the caller.
  • FIG. 19 is an explanatory diagram showing an example of the loading layout obtained by the loading number calculation process.
  • FIG. 19 is a plan view of the weight.
  • the vertical direction is the Y axis with the corner of the bottom left of the page as the origin, and the horizontal direction intersecting it is the X axis.
  • the example shown in FIG. 19 shows a layout in which cream puffs, hamburger lunches, rice balls / plums, Makunouchi lunch boxes, rice balls / rice cakes are loaded.
  • the area in which each product is loaded is a rectangle and is defined by the coordinate value of the lower left point and the coordinate value of the upper right point. Further, it is assumed that the number is loaded with the left side of the paper facing the front side of the truck.
  • FIG. 20 is an explanatory diagram showing an example of the record layout of the loading area database 143.
  • the loading area database 143 includes a store code column, a flight name column, a watch number column, a product code column, a product name column, a number column, a coordinate 1 column, and a coordinate 2 column.
  • the store code string stores a store code corresponding to the loading area.
  • the flight name column the flight name of the delivery flight corresponding to the loading area is stored.
  • the watch number No column stores the continuation number of the number assigned to each store and each flight number.
  • the product code string stores a code corresponding to the product.
  • the product name column stores the name of the product to be loaded.
  • the number column stores the number of products to be loaded in the loading area (number of loaded items).
  • the coordinate 1 column stores the coordinate value of the lower left coordinate that defines the loading area.
  • the coordinate 2 column stores the coordinate value of the upper right coordinate that defines the loading area.
  • FIG. 21 is a flowchart showing the procedure of loading method instruction processing.
  • the CPU 11 of the sorting apparatus 10 selects one number among the numbers corresponding to the stores and flights to be processed (step S121).
  • the CPU 11 reads the loading area data corresponding to the selected number from the loading area database 143 (step S122).
  • the CPU 11 performs grouping with reference to the Y coordinate of the point that defines each loading area that has been read (step S123).
  • the Y coordinate is divided by the deceleration of the truck, and the products loaded in the stack move in the -X-axis direction (forward direction) and press the adjacent products in the front-rear direction, but are adjacent in the Y-axis direction. This is because the product is hardly affected.
  • the X-axis direction that is, the front-rear direction corresponds to the predetermined direction.
  • CPU 11 selects one group (step S124).
  • the CPU 11 sorts the loading areas in the selected group by the X coordinate (step S125).
  • the CPU 11 performs subgrouping based on the sorting result and the X coordinate of each loading area (step S126).
  • the CPU 11 performs sorting according to the product category associated with each loading area in the group (step S127).
  • the sorting is performed in the order from the one that is not easily crushed to the one that is easily crushed.
  • sorting is performed in the order of categories A, B, and C.
  • the order from the one that is not easily crushed to the one that is easily crushed corresponds to the order of rank.
  • the sub group if there are products that are more likely to be crushed than the products to be compared, the sub group is the front and the products to be compared are the back. In addition, if there is a product that is less likely to be crushed than the product to be compared among the products included in the subgroup, the product to be compared is placed in front and the subgroup is placed in the back.
  • the CPU 11 updates the coordinates stored in the loading area database 143 based on the sorting result (step S128).
  • the CPU 11 determines whether there is an unprocessed group (step S129). If the CPU 11 determines that there is an unprocessed group (YES in step S129), the process returns to step S124. If the CPU 11 determines that there is no unprocessed group (NO in step S129), the CPU 11 determines whether there is an unprocessed number (step S130). If the CPU 11 determines that there is an unprocessed weight (YES in step S130), the process returns to step S121.
  • the CPU 11 determines that there is no unprocessed weight (NO in step S130), it outputs a loading method (step S131) and returns the process to the caller.
  • the output of the loading method is, for example, transmitting the contents of the loading area database 143 to the transport device 20.
  • the placement within the number may be displayed on the screen based on the loading area database 143.
  • FIG. 22 is an explanatory diagram showing an example of the loading layout after the loading method instruction processing.
  • FIG. 23 is an explanatory diagram showing an example of the loading area database 143 after the loading method instruction processing.
  • the CPU 11 selects a weight having a weight No. 1 (step S121).
  • the CPU 11 reads the loading area data of the selected number from the loading area database 143 (step S122).
  • the five records shown in FIG. 20 are read.
  • the CPU 11 performs grouping based on the Y coordinate (step S123).
  • the layout shown in FIG. 19 is divided into two groups.
  • One group (denoted as group 1) is composed of a cream cream loading area A11 (denoted as area A11) and a hamburger lunch loading area A12 (denoted as area 12).
  • the other group (referred to as group 2) is a rice ball / plum loading area A21 (referred to as area A21), a rice ball / rice picking area A22 (referred to as area A22), and a curtain lunch box loading area A23 (referred to as area A23). ).
  • the CPU 11 selects group 1 (step S124).
  • the CPU 11 sorts the loading area of group 1 by the X coordinate (step S125).
  • the order is the area A11 and the area A12.
  • the CPU 11 performs subgrouping (step S126), but the subgroup and group 1 are the same.
  • the CPU 11 sorts the areas A11 and A12 by category (step S127). Since the area A11 corresponds to the cream puff, the category is C. Since the area A12 corresponds to the hamburger lunch, it is a category A. Therefore, the areas A12 and A11 are arranged in this order by sorting.
  • the CPU 11 updates the coordinates (step S128).
  • the CPU 11 determines YES in step S129, and selects group 2 in step S124.
  • the CPU 11 sorts the area of group 2 by the X coordinate (step S125).
  • rice ball / plum loading area A21 (denoted as area A21)
  • curtain inner lunch box loading area A23 (denoted as area A23)
  • rice ball / salmon loading area A22 (denoted as area A22) are arranged in this order.
  • the CPU 11 divides the area A21 into one subgroup and the areas A22 and A23 into another subgroup (step S126).
  • the CPU 11 sorts by category (step S127).
  • the region A21 corresponds to rice balls and plums, the category is B, the region A22 corresponds to rice balls and rice cakes, the category is B, and the region A23 corresponds to the inner lunch box of the curtain, and the category is A. Since both the area A21 and the area A22 have the category B, the replacement is not necessary. However, since the area A23 is the category A, the replacement with the A21 is necessary. Since the area A22 belongs to the same subgroup as the area A23, the area A22 is also a replacement target. As a result of the sorting, the order is area A22, area A23, and area A21.
  • the CPU 11 updates the loading area database 143 according to the sorting result (step S128). Since there is no unprocessed group, the CPU 11 determines NO in step S129, and performs the processes in and after step S130.
  • the layout shown in FIG. 19 becomes the layout shown in FIG.
  • the positions of the cream cream loading area A11 and the hamburger lunch loading area A12 are interchanged.
  • the rice ball / plum loading area A21, the rice ball / rice cake loading area A22, and the inner lunch box loading area A23 are switched in position.
  • the loading area database 143 shown in FIG. 20 is also updated and updated to the coordinates shown in FIG.
  • the sorting device 10 of the first embodiment has the following effects.
  • the conveyance device 20 is instructed to load a product that is not easily crushed at a position on the front side of the truck and a product that is easily crushed at a position on the rear side of the truck.
  • the conveyance device 20 is instructed to load a product that is not easily crushed at a position on the front side of the truck and a product that is easily crushed at a position on the rear side of the truck.
  • Embodiment 2 In the second embodiment, it is assumed that when a product is loaded on the weight of each store, the manufacture of all the products to be loaded is completed. Since the configuration of the food system 1 and the hardware configuration of the sorting apparatus 10 in the second embodiment are the same as those in the first embodiment, description thereof is omitted. Moreover, since the process performed in the sorting apparatus 10 is the same as that of Embodiment 1 except for a part, in the following description, a different point is mainly demonstrated.
  • FIG. 24 and 25 are flowcharts showing an example of the procedure of the sorting process.
  • the CPU 11 of the sorting apparatus 10 divides the products delivered to the selected store into categories (step S141).
  • the CPU 11 selects a category of products to be processed (step S142).
  • the category is selected in the order of A, B, and C. In other words, the products are loaded from products that are not easily crushed.
  • CPU11 reads the merchandise information about the goods of the selected category from the merchandise database 141 (step S143).
  • CPU11 selects one of the goods contained in the selected category (step S144), and performs the process after step S7.
  • the CPU 11 determines whether there are other unprocessed products that are included in the selected category (step S145). When the CPU 11 determines that there is another unprocessed product (YES in step S145), the CPU 11 performs the processing after step S12. If the CPU 11 determines that there is no other unprocessed product (NO in step S145), the CPU 11 determines whether there is an unprocessed category (step S146). If the CPU 11 determines that there is an unprocessed category (YES in step S146), the process returns to step S142.
  • step S147 the CPU 11 rearranges the loading areas for each number based on the weight of the product. This rearrangement process is the same as the loading method instruction process shown in FIG. In step S127 of FIG. 21, sorting is performed by category, but in rearrangement processing, sorting is performed in descending order of weight.
  • the CPU 11 outputs the loading method (similar to step S131 in FIG. 21).
  • the CPU 11 determines whether there is an unprocessed store (step S15). If the CPU 11 determines that there is an unprocessed store (YES in step S15), the process returns to step S2. If the CPU 11 determines that there is no unprocessed store (NO in step S15), the process ends.
  • the sorting apparatus 10 has the following effects. After all the products that should be loaded are collected, the loading position is determined for each category. Accordingly, it is possible to reliably load a product that is not easily crushed into a position on the front side of the truck in the weight, and to prevent a problem that the product is crushed during delivery. In addition, since sorting is performed by weight even within the same category, it is possible to more reliably suppress the occurrence of a problem that products are crushed during delivery.
  • the number of product categories is three, but is not limited thereto.
  • the number of categories may be an arbitrary number of 2 or more.
  • the category of goods is divided from the viewpoint of the degree of easy crushing, it is not limited thereto. It is also possible to categorize according to the weight of the product, and arrange the heavy product on the front and the light product on the back. As described above, as long as the product category is used when determining the arrangement of the product within the weight, other viewpoints can be adopted.
  • the product is a cooked food, but is not limited thereto.
  • a transport container such as a weight, and delivery is performed
  • the present invention can also be applied to cases where consideration must be given to the arrangement of products in the transport container.
  • the watch weight is a rectangular parallelepiped box, but the invention is not limited thereto.
  • the bottom plate may be oval or polygonal.
  • the above-described algorithm for obtaining the number of products that can be loaded into the weight is an example. Other algorithms that can determine the number of products that can be loaded in order can also be employed. Furthermore, it may be appropriately changed according to the shape of the weight.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

 番重内での配置を考慮した調理済み食品の仕分けを行う仕分け装置等を提供すること。 商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、商品の種別により、前記番重毎に商品の順位付けを行う順位付け部と、前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを備える。

Description

仕分け装置、コンピュータプログラム、仕分け方法
 本発明は、調理済み食品を配送先毎に仕分けを行う仕分け装置等に関する。
 食品工場で製造される弁当、おにぎり、サンドイッチなどの調理済み食品は、出荷先である店舗毎に仕分けされ、運搬容器(搬送コンテナ)に積込まれ配送される。調理済み食品の仕分けを効率的に行うために、運搬容器毎に投入すべき調理済み食品を指示する仕分け装置が提案されている(特許文献1)。なお、以下の説明においては、運搬容器を「番重」(ばんじゅう)と記す。
特開平5-242122号公報
 しかし、従来の仕分け装置では、複数種類の調理済み食品を番重毎に仕分ける場合に、各調理済み食品を番重内でどのように配置するかを考慮していない。番重内での配置を考慮しないで、複数の調理済み食品を仕分け、番重に積込んだ場合、配送時のトラックの振動や危険回避のための急ブレーキにより、番重内で移動した弁当がおにぎりを潰してしまうなどの不具合が発生する。
 本発明はかかる事情に鑑みてなされたものである。その目的は、番重内での配置を考慮した調理済み食品の仕分けを行う仕分け装置などを提供することである。
 本明細書に開示する仕分け装置は、商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、商品の種別により、前記番重毎に前記商品の順位付けを行う順位付け部と、前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを備えることを特徴とする。
 本発明の一観点によれば、配送時の不具合の発生を抑制することが可能となる。
食品システムの構成例を示すブロック図である。 仕分け装置のハードウェア構成例を示すブロック図である。 商品データベースのレコードレイアウトの例を示す説明図である。 受注情報データベースのレコードレイアウトの例を示す説明図である。 仕分け処理の手順の一例を示すフローチャートである。 仕分け処理の手順の一例を示すフローチャートである。 積込み数算出処理の手順の一例を示すフローチャートである。 積込み数算出処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の手順の一例を示すフローチャートである。 積込み判定処理の途中結果の一例を示す説明図である。 番重の余裕スペースの一例を示す説明図である。 番重の余裕スペースの一例を示す説明図である。 商品を積込み途上の番重の例を示す説明図である。 積込み数算出処理により求められた積込みレイアウトの一例を示す説明図  である。 積込み領域データベースのレコードレイアウトの一例を示す説明図である  。 積込み方法指示処理の手順を示すフローチャートである。 積込み方法指示処理後の積込みレイアウトの一例を示す説明図である。 積込み方法指示処理後の積込み領域データベースの一例を示す説明図であ  る。 仕分け処理の手順の一例を示すフローチャートである。 仕分け処理の手順の一例を示すフローチャートである。
 以下、実施の形態を、図面を参照して説明する。本願に係る仕分け装置は、食品システムの構成要素の1つである。食品システムは、コンビニエンスストア(以下、コンビニと記す)、スーパーマーケット、百貨店等で販売される調理済み食品の製造及び配送を管理する情報システムである。ここで、調理済み食品(以下、商品と記す)には、弁当、おにぎり、サンドイッチなどや、シュークリーム、エクレアなどの菓子類も含むものとする。また、番重は、矩形状の底板と当該底板の周縁から略垂直に延びる側板(周壁)を含む、一面が開口された直方体状の箱体とする。
 実施の形態1
 図1は、食品システム1の構成例を示すブロック図である。食品システム1は、店舗POS(point of sale system)装置2、受注管理システム3、食品製造システム4、仕分けシステム5及び配送便システム6を含む。店舗POS装置2と受注管理システム3とは、例えば専用回線で接続されている。また、受注管理システム3と食品製造システム4とも、例えば専用回線で接続されている。食品製造システム4、仕分けシステム5及び配送便システム6は、例えばLAN(Local Area Network)、WAN(Wide Area Network)、インターネット、電話回線、衛星回線等により接続されている。
 店舗POS装置2は、コンビニのPOSに係るコンピュータである。図1では、店舗POS装置2は、例えば3台である。しかし、店舗POS装置2は、少なくともコンビニ店舗の数だけ存在する。店舗POS装置2は、客に販売するための商品の発注情報を受注管理システム3に送信する。
 受注管理システム3は、店舗POS装置2からの発注情報、すなわち受注情報を管理するシステムである。受注管理システム3は、店舗POS装置2から受信した受注情報を食品製造システム4に送信する。
 食品製造システム4は、コンビニに配送する商品を製造する製造作業及び製造装置を管理するシステムである。食品製造システム4は、受注管理システム3から商品の受注情報を受信する。
 仕分けシステム5は、食品製造システム4が製造した商品を配送先の店舗毎に仕分ける仕分作業又は仕分け装置10及び搬送装置20を管理するシステムである。
 配送便システム6は、店舗毎に仕分けられた商品を配送するトラック便を管理するシステムである。店舗毎に仕分けられた商品は、配送便システム6の指示に従い、トラック便により店舗に配送される。
 食品製造システム4、仕分けシステム5及び配送便システム6は、互いに情報の送受信を行い、連携して店舗に配送する商品を管理している。
 仕分けシステム5は、仕分け装置10、搬送装置20を含む。仕分け装置10、搬送装置20は、有線又は無線により互いに接続されている。
 仕分け装置10は、メインフレーム、ワークステーション等のコンピュータである。仕分け装置10は、商品を店舗毎に仕分け、番重への積込み方を搬送装置20に指示する。
 搬送装置20は、アームを有する自走走行ロボット、ピッキングロボット等である。搬送装置20は、仕分け装置10の指示に従い商品を店舗別の番重に積込む。
 図2は、仕分け装置10のハードウェア構成例を示すブロック図である。仕分け装置10は、CPU(Central Processing Unit)(決定部、順位付け部、変更部、第1取得部、第2取得部、単品決定部、判定部)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13及びハードディスク14を含む。また、仕分け装置10は、ディスクドライブ15、通信部16、表示部17及び操作部18を含む。仕分け装置10の各構成部は、バス10bを介して接続されている。
 CPU11は、仕分け装置10の各構成部を制御する。CPU11は、ハードディスク14に記憶されたプログラム(コンピュータプログラム)10PをRAM13に読み出し、当該プログラム10Pを実行する。
 ROM12は、不揮発性の半導体メモリ又は半導体メモリ以外の読み出し専用記憶媒体である。ROM12は、仕分け装置10の起動時にCPU11が実行するBIOS(Basic Input/Output System)、ファームウェア等を記憶している。
 RAM13は、主記憶装置である。RAM13は、CPU11による処理の過程で必要な作業変数、データ等を一時的に記憶する。なお、RAM13は、フラッシュメモリ、メモリカード等により代替されてもよい。
 ハードディスク14は、補助記憶装置である。ハードディスク14は、CPU11が実行するプログラム10Pを記憶している。ハードディスク14は、仕分け装置10の内部に取り付けられるものであっても、仕分け装置10の外部に置かれるものであってもよい。なお、ハードディスク14は、大容量の情報の記憶が可能なフラッシュメモリ、CD(Compact Disc)、DVD(Digital Versatile Disk)、BD(Blu-ray(登録商標) Disc、)等の光ディスク10dで代替されてもよい。
 ディスクドライブ15は、外部の記憶媒体である光ディスク10dから情報を読み出し、読み出した情報を光ディスク10dに記録する記録装置である。
 通信部16は、モデム又はLAN(Local Area Network)カード等である。通信部16は、受注管理システム3、食品製造システム4内の各構成部、仕分けシステム5及び配送便システム6と情報の送受信をする。仕分け装置10は、通信部16を介してインターネットにも接続されている。
 表示部17は、例えば液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等の画面を有し、CPU11からの指示に従って、プログラム10Pに係る様々な画面を表示する。
 操作部18は、ユーザが各種の入力を行うキーボード、マウス、表示部17の画面に設けられたタッチパネル等の入力デバイスである。操作部18は、ユーザによる操作に基づいて入力信号を生成する。生成された入力信号は、バス10bを介してCPU11に出力される。
 なお、CPU11は、ディスクドライブ15を介して、プログラム10Pを光ディスク10dから読み込んでもよい。CPU11は、通信部16を介して、プログラム10Pを外部の情報処理装置又は記憶装置から読み込んでもよい。さらに、プログラム10Pを記憶したフラッシュメモリ等の半導体メモリ10mが、仕分け装置10内に実装されていてもよい。
 次に仕分け装置10が用いるデータベースについて説明する。図3は商品データベース141のレコードレイアウトの例を示す説明図である。商品データベース141は、例えばハードディスク14に記憶されている。商品データベース141は、商品コード列、商品名列、カテゴリー列、縦列、横列、高さ列、隙間列、重量列、形状列、積み重ね可否列、段数列の各列を含む。商品コード列は商品を一意に特定するコード(識別情報)を記憶する。商品名列は商品名を記憶する。カテゴリー列は商品のカテゴリー(種別)を示す記号、数字などを記憶する。例えば、弁当などの容器に入っていてつぶれにくい商品のカテゴリーをAとする。おにぎりなどの容器に入っていないが変形しにくい商品のカテゴリーをBとする。シュークリームなど容器に入っておらずつぶれやすい商品のカテゴリーをCとする。縦列は商品の縦の寸法値を記憶する。横列は商品の横の寸法値を記憶する。高さ列は商品の高さの寸法値を記憶する。隙間列は商品を番重に積込んだ際に、当該商品と隣の商品または番重の壁との間に設けるべき隙間の寸法値を記憶する。重量列は商品の重量を記憶する。形状列は商品の形状を示す記号、数字などを記憶する。例えば、商品が丸容器に入っていれば1、商品が長方形容器に入っていれば2、商品が丸おにぎりであれば3、商品が三角おにぎりであれば4、丸いお菓子であれば5、細長いお菓子であれば6とする。積み重ね可否列は商品を番重に積込む際に積み重ねても良いか否かを示す積み重ね可否フラグの値を記憶する。値1は積み重ねが可能であることを示す。値0は積み重ねができないことを示す。段数列は積み重ねが可能である場合に、積重ね可能な段数(許容段数)を記憶する。
 図4は受注情報データベース142のレコードレイアウトの例を示す説明図である。受注情報データベース142は、例えばハードディスク14に記憶されている。受注情報データベース142は店舗コード列、商品コード列、受注数量列を含む。店舗コード列は受注情報に対応付けられた店舗、すなわち発注をした店舗のコードを記憶する。商品コード列は受注した商品のコードを記憶する。受注数量列は受注した数量(発注個数)を記憶する。
 なお、商品データベース141、受注情報データベース142は、ハードディスク14に記憶されているとしたが、それに限らない。仕分け装置10以外の受注管理システム3や食品製造システム4に記憶されていても良いし、その他の仕分け装置10からアクセス可能なデータベース装置に記憶されていても良い。
 次に仕分け装置10が行う情報処理について説明する。図5及び図6は仕分け処理の手順の一例を示すフローチャートである。仕分け装置10のCPU11は受注情報データベース142から受注情報を読込む(ステップS1)。CPU11は読込んだ受注情報を店舗コード毎に分け、処理対象とする店舗を選択する(ステップS2)。CPU11は商品を積込む番重の寸法を変数に設定する。CPU11は、変数Gに番重の縦寸法の値を、変数Hに番重の横寸法の値を、変数Iに番重の高さ寸法の値を設定する(ステップS3)。寸法はいずれも商品の収納スペースを規定する番重の内寸法である。CPU11は、食品製造システム4により製造され、店舗毎の仕分けを待っている商品の1つを選択する(ステップS4)。CPU11は、選択した商品の情報を読込む(ステップS5)。CPU11は選択した商品が処理対象店舗から受注した商品であるか否かを判定する(ステップS6)。CPU11は、選択した商品が受注した商品ではないと判定した場合(ステップS6でNO)、処理をステップS4に戻す。CPU11は、選択した商品が受注した商品であると判定した場合(ステップS6でYES)、商品の寸法を変数に設定する。CPU11は、変数Cに商品の縦寸法の値を、変数Dに商品の横寸法の値を、変数Eに商品の高さ寸法の値を、変数Fに商品の隙間寸法の値を、それぞれ設定する(ステップS7)。
 CPU11は選択した商品を積込む個数(積込み数)を算出する(ステップS8)。この積込み数算出処理については、後述する。CPU11は残数があるか否か判定する(ステップS9)。すなわち、受注数分の商品が積込み可能であるか否か判定する。CPU11は残数があると判定した場合(ステップS9でYES)、番重を新たなものとし、番重の寸法を各変数に設定する(ステップS10)。この処理は上述のステップS3と同様な処理である。CPU11は処理をステップS8に戻す。
 CPU11は残数がないと判定した場合(ステップS9でNO)、未処理の他の商品があるか否かを判定する(ステップS11)。CPU11は他の商品があると判定した場合(ステップS11でYES)、番重に余裕があるか否かを判定する(ステップS12)。CPU11は番重に余裕があると判定した場合(ステップS12でYES)、処理をステップS4に戻す。CPU11は番重に余裕がないと判定した場合(ステップS12でNO)、番重を新たなものとし、番重の寸法を各変数に設定する(ステップS13)。この処理は上述のステップS3及びステップS10と同様な処理である。CPU11は処理をステップS4に戻す。
 CPU11は他の商品がないと判定した場合(ステップS11でNO)、積込み方法を搬送装置20に指示する(ステップS14)。CPU11は未処理の店舗又は処理が完了していない店舗があるか否かを判定する(ステップS15)。CPU11は未処理の店舗又は処理が完了していない店舗があると判定した場合(ステップS15でYES)、処理をステップS2に戻す。CPU11は未処理の店舗及び処理が完了していない店舗がないと判定した場合(ステップS15でNO)、仕分け処理を終了する。
 なお、CPU11がステップS4を実行したときに、処理対象店舗に対応付けられたいずれの商品も製造が完了していない場合、CPU11は処理をステップS2に戻し、他の店舗についての処理を行っても良い。
 また、処理対象店舗に対応付けられた一部の商品について、仕分け処理をしたものの、残りの商品については製造が完了しておらず、積込みができない場合は、当該店舗についての処理を中断し、仕分け処理の完了していない他の店舗の処理を行っても良い。
 次に積込み数算出処理について説明する。図7及び図8は積込み数算出処理の手順の一例を示すフローチャートである。CPU11は積込み判定処理を行う(ステップS21)。図9から図15は積込み判定処理の手順の一例を示すフローチャートである。CPU11は、番重の横方向に商品の横方向を合わせた場合に、横方向に何個積込み可能であるかを算出する。番重の横寸法はH、商品の横寸法はDであり、隣接する商品間には寸法Fの隙間(所定寸法の隙間)を設けるので、CPU11は式(1)により、Nc1を求める(ステップS41)。
 Nc1=H div (D+F)・・・(1)
 ここで演算子divは、除算した商の整数部を求める演算子である。A div B=Cは、AをBで除算した場合の商の値がCであることを示している。
 CPU11はNc1が0より大きいかを判定する(ステップS42)。CPU11はNc1が0より大きいと判定した場合(ステップS42でYES)、式(2)が成り立つか否かを判定する(ステップS43)。
 H mod (D+F)≧F・・・(2)
 ここで演算子modは、除算の剰余を求める演算子である。A mod B=Dは、AをBで除算した余りがDであることを示している。
 式(1)では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式(2)により他方の隙間を設けられるか否かを判定している。
 CPU11は、式(2)が成り立つ場合(ステップS43でYES)、すなわち隙間を確保できる場合、処理をステップS45に進める。CPU11は、式(2)が成り立たない場合(ステップS43でNO)、すなわち隙間を確保できない場合は、横方向に積込む個数Nc1を減らす(ステップS44)。
 CPU11は同様に、番重の横方向に商品の横方向を合わせた場合に、縦方向に何個積込み可能であるかを算出する。番重の縦寸法はG、商品の縦寸法はCであり、隣接する商品間には寸法Fの隙間を設けるので、CPU11は式(3)により、Nr1を求める(ステップS45)。
 Nr1=G div (C+F)・・・(3)
 CPU11はNr1が0より大きいかを判定する(ステップS46)。CPU11はNr1が0より大きいと判定した場合(ステップS46でYES)、式(4)が成り立つか否かを判定する(ステップS47)。
 G mod (C+F)≧F・・・(4)
 式(3)では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式(4)により他方の隙間を設けられるか否かを判定している。
 CPU11は、式(4)が成り立つ場合(ステップS47でYES)、すなわち隙間を確保できる場合、処理をステップS49に進める。CPU11は、式(4)が成り立たな場合(ステップS47でNO)、すなわち隙間を確保できない場合は、縦方向に積込む個数Nr1を減らす(ステップS48)。
 CPU11は横方向に積込める個数Nc1と、縦方向に積込める個数Nr1とを乗算し、商品の積込める個数N1を算出する(ステップS49)。CPU11はNc1が0以下と判定した場合(ステップS42でNO)、またはNr1が0以下と判定した場合(ステップS46でNO)、積込める個数N1を0に設定し(ステップS50)、処理をステップS70に移す。図16は積込み判定処理の途中結果の一例を示す説明図である。図16は商品を積込んだ番重の平面図を示している。図16に示す例では、左下から右方向及び左方向に商品を積込んだ場合を示している。図16の紙面上側部分、右側部分に余裕スペース(空きスペース)がある。次に、CPU11は余裕スペースに商品の向きを替えて積込むことを試みる。
 CPU11は余裕スペースの縦方向の寸法G’、横方向の寸法H’を算出する(ステップS51)。図17A及び17Bは番重の余裕スペースの一例を示す説明図である。図17A及び17Bは図16と同様な平面図である。図17A及び17Bの右上部分は2つの余裕スペースが重なる部分である。そのため、余裕スペースに商品の積込みを考える場合、重なる部分を図17Aに示すように縦長の余裕スペースに含めるときと、重なる部分を図17Bに示すように横長の余裕スペースに含めるときとを検討する必要がある。前者の処理から説明する。
 CPU11は縦寸法がG’、横寸法がH-H’の余裕スペースにおいて、横方向に積込める商品の個数Nc11、縦方向に積込める商品の個数Nr11を算出する(ステップS52)。CPU11はNc11=0またはNr11=0であるか否かを判定する(ステップS53)。CPU11はNc11=0またはNr11=0であると判定した場合(ステップS53でYES)、処理をステップS56に移す。CPU11はNc11及びNr11が0でないと判定した場合(ステップS53でNO)、横方向の端に隙間が確保できるか否かを判定する(ステップS54)。CPU11は隙間が確保できると判定した場合(ステップS54でYES)、処理をステップS56に移す。CPU11は隙間が確保できないと判定した場合(ステップS54でNO)、個数Nc11を減らす(ステップS55)。
 CPU11は縦寸法がG、横寸法がH’の余裕スペースにおいて、横方向に積込める商品の個数Nc12、縦方向に積込める商品の個数Nr12を算出する(ステップS56)。CPU11はNc12=0またはNr12=0であるか否かを判定する(ステップS57)。CPU11はNc12=0またはNr12=0であると判定した場合(ステップS57でYES)、処理をステップS60に移す。CPU11はNc12及びNr12が0でないと判定した場合(ステップS57でNO)、縦方向の端に隙間が確保できるか否かを判定する(ステップS58)。CPU11は隙間が確保できると判定した場合(ステップS58でYES)、処理をステップS60に移す。CPU11は隙間が確保できないと判定した場合(ステップS58でNO)、個数Nr12を減らす(ステップS59)。CPU11は2つの余裕スペースに積込める商品の個数N1’を算出する(ステップS60)。
 つぎに、CPU11は、重なる部分を図17Bに示すように横長の余裕スペースに含めるときの処理を行う。CPU11は縦寸法がG’、横寸法がHの余裕スペースにおいて、横方向に積込める商品の個数Nc13、縦方向に積込める商品の個数Nr13を算出する(ステップS61)。CPU11はNc13=0またはNr13=0であるか否かを判定する(ステップS62)。CPU11はNc13=0またはNr13=0であると判定した場合(ステップS62でYES)、処理をステップS65に移す。CPU11はNc13及びNr13が0でないと判定した場合(ステップS62でNO)、横方向の端に隙間が確保できるか否かを判定する(ステップS63)。CPU11は隙間が確保できると判定した場合(ステップS63でYES)、処理をステップS65に移す。CPU11は隙間が確保できないと判定した場合(ステップS63でNO)、個数Nc13を減らす(ステップS64)。
 CPU11は縦寸法がG-G’、横寸法がH’の余裕スペースにおいて、横方向に積込める商品の個数Nc14、縦方向に積込める商品の個数Nr14を算出する(ステップS65)。CPU11はNc14=0またはNr14=0であるか否かを判定する(ステップS66)。CPU11はNc14=0またはNr14=0であると判定した場合(ステップS66でYES)、処理をステップS69に移す。CPU11はNc14及びNr14が0でないと判定した場合(ステップS66でNO)、縦方向の端に隙間が確保できるか否かを判定する(ステップS67)。CPU11は隙間が確保できると判定した場合(ステップS67でYES)、処理をステップS69に移す。CPU11は隙間が確保できないと判定した場合(ステップS67でNO)、個数Nr14を減らす(ステップS68)。CPU11は2つの余裕スペースに積込める商品の個数N1’’を算出する(ステップS69)。
 続いて、CPU11は、番重の横方向に商品の縦方向を合わせた場合に、横方向に何個積込み可能であるかを算出する。番重の横寸法はH、商品の縦寸法はCであり、隣接する商品間には寸法Fの隙間を設けるので、CPU11は式(5)により、Nc2を求める(ステップS70)。
 Nc2=H div (C+F)・・・(5)
 CPU11はNc2が0より大きいかを判定する(ステップS71)。CPU11はNc2が0より大きいと判定した場合(ステップS71でYES)、式(6)が成り立つか否かを判定する(ステップS72)。
 H mod (C+F)≧F・・・(6)
 式(5)では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式(6)により他方の隙間を設けられるか否かを判定している。
 CPU11は、式(6)が成り立つ場合(ステップS72でYES)、すなわち隙間を確保できる場合、処理をステップS74に進める。CPU11は、式(6)が成り立たな場合(ステップS72でNO)、すなわち隙間を確保できない場合は、横方向に積込む個数Nc2を減らす(ステップS73)。
 CPU11は同様に、番重の横方向に商品の縦方向を合わせた場合に、縦方向に何個積込み可能であるかを算出する。番重の縦寸法はG、商品の横寸法はDであり、隣接する商品間には寸法Fの隙間を設けるので、CPU11は式(7)により、Nr2を求める(ステップS74)。
 Nr2=G div (D+F)・・・(7)
 CPU11はNr2が0より大きいかを判定する(ステップS75)。CPU11はNr2が0より大きいと判定した場合(ステップS75でYES)、式(8)が成り立つか否かを判定する(ステップS76)。
 H mod (D+F)≧F・・・(8)
 式(7)では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式(8)により他方の隙間を設けられるか否かを判定している。
 CPU11は、式(8)が成り立つ場合(ステップS76でYES)、すなわち隙間を確保できる場合、処理をステップS78に進める。CPU11は、式(8)が成り立たな場合(ステップS76でNO)、すなわち隙間を確保できない場合は、縦方向に積込む個数Nr2を減らす(ステップS77)。
 CPU11は横方向に積込める個数Nc2と、縦方向に積込める個数Nr2とを乗算し、商品の積込める個数N2を算出する(ステップS78)。CPU11はNc2が0以下と判定した場合(ステップS71でNO)、またはNr2が0以下と判定した場合(ステップS75でNO)、積込める個数N2を0に設定し(ステップS80)、処理をステップS99に移す。
 次に、図16と同様に、左下から右方向及び左方向に商品を積込みと、図16と同様に上側部分、右側部分に余裕スペースが残る。CPU11は余裕スペースに商品の向きを替えて積込みことを試みる。
 CPU11は余裕スペースの縦方向の寸法G’’、横方向の寸法H’’を算出する(ステップS79)。上述と同様に、余裕スペースに商品の積込みを考える場合において、重なる部分を図17Aに示すように縦長の余裕スペースに含めるときと、重なる部分を図17Bに示すように横長の余裕スペースに含めるときとに分けて検討する。前者の処理から説明する。
 CPU11は縦寸法がG’’、横寸法がH-H’’の余裕スペースにおいて、横方向に積込める商品の個数Nc21、縦方向に積込める商品の個数Nr21を算出する(ステップS81)。CPU11はNc21=0またはNr21=0であるか否かを判定する(ステップS82)。CPU11はNc21=0またはNr21=0であると判定した場合(ステップS82でYES)、処理をステップS85に移す。CPU11はNc21及びNr21が0でないと判定した場合(ステップS82でNO)、横方向の端に隙間が確保できるか否かを判定する(ステップS83)。CPU11は隙間が確保できると判定した場合(ステップS83でYES)、処理をステップS85に移す。CPU11は隙間が確保できないと判定した場合(ステップS83でNO)、個数Nc21を減らす(ステップS84)。
 CPU11は縦寸法がG、横寸法がH’’の余裕スペースにおいて、横方向に積込める商品の個数Nc22、縦方向に積込める商品の個数Nr22を算出する(ステップS85)。CPU11はNc22=0またはNr22=0であるか否かを判定する(ステップS86)。CPU11はNc22=0またはNr22=0であると判定した場合(ステップS86でYES)、処理をステップS89に移す。CPU11はNc22及びNr22が0でないと判定した場合(ステップS86でNO)、縦方向の端に隙間が確保できるか否かを判定する(ステップS87)。CPU11は隙間が確保できると判定した場合(ステップS87でYES)、処理をステップS89に移す。CPU11は隙間が確保できないと判定した場合(ステップS87でNO)、個数Nr22を減らす(ステップS88)。CPU11は2つの余裕スペースに積込める商品の個数N2’を算出する(ステップS89)。
 つぎに、CPU11は、重なる部分を図17Bと同様に横長の余裕スペースに含めるときの処理を行う。CPU11は縦寸法がG’’、横寸法がHの余裕スペースにおいて、横方向に積込める商品の個数Nc23、縦方向に積込める商品の個数Nr23を算出する(ステップS90)。CPU11はNc23=0またはNr23=0であるか否かを判定する(ステップS91)。CPU11はNc23=0またはNr23=0であると判定した場合(ステップS91でYES)、処理をステップS94に移す。CPU11はNc23及びNr23が0でないと判定した場合(ステップS91でNO)、横方向の端に隙間が確保できるか否かを判定する(ステップS92)。CPU11は隙間が確保できると判定した場合(ステップS92でYES)、処理をステップS94に移す。CPU11は隙間が確保できないと判定した場合(ステップS92でNO)、個数Nc23を減らす(ステップS93)。
 CPU11は縦寸法がG-G’’、横寸法がH’’の余裕スペースにおいて、横方向に積込める商品の個数Nc24、縦方向に積込める商品の個数Nr24を算出する(ステップS94)。CPU11はNc24=0またはNr24=0であるか否かを判定する(ステップS95)。CPU11はNc24=0またはNr24=0であると判定した場合(ステップS95でYES)、処理をステップS98に移す。CPU11はNc24及びNr24が0でないと判定した場合(ステップS95でNO)、縦方向の端に隙間が確保できるか否かを判定する(ステップS96)。CPU11は隙間が確保できると判定した場合(ステップS96でYES)、処理をステップS98に移す。CPU11は隙間が確保できないと判定した場合(ステップS96でNO)、個数Nr24を減らす(ステップS97)。CPU11は2つの余裕スペースに積込める商品の個数N2’’を算出する(ステップS98)。
 CPU11は、番重の横方向に商品の横方向を合わせた場合の商品を積込める個数N1が0であるか否かを判定する(ステップS99)。CPU11は個数N1が0であると判定した場合(ステップS99でYES)、処理をステップS103に移す。CPU11は個数N1が0でないと判定した場合(ステップS99でNO)、2つのパターンで検討した余裕スペースに積込める商品の個数について、いずれのパターンでの個数が多くなるか判定する(ステップS100)。CPU11は、一番目に検討したパターンでの個数N1’が、二番目に検討したパターンでの個数N1’’より大きいと判定した場合(ステップS100でYES)、商品を積込める個数N1にN1’を加算するともに、flag1を1に設定する(ステップS101)。CPU11は、二番目に検討したパターンでの個数N1’’が、一番目に検討したパターンでの個数N1’以上であると判定した場合(ステップS100でNO)、商品を積込める個数N1にN1’’を加算するとともに、flag1を2に設定する(ステップS102)。
 CPU11は、番重の横方向に商品の縦方向を合わせた場合の商品を積込める個数N2が0であるか否かを判定する(ステップS103)。CPU11は個数N2が0であると判定した場合(ステップS103でYES)、処理をステップS107に移す。CPU11は個数N2が0でないと判定した場合(ステップS103でNO)、2つのパターンで検討した余裕スペースに積込める商品の個数について、いずれのパターンでの個数が多くなるか判定する(ステップS104)。CPU11は、一番目に検討したパターンでの個数N2’が、二番目に検討したパターンでの個数N2’’より大きいと判定した場合(ステップS104でYES)、商品を積込める個数N2にN2’を加算するとともに、flag2を1に設定する(ステップS105)。CPU11は、二番目に検討したパターンでの個数N2’’が、一番目に検討したパターンでの個数N2’以上であると判定した場合(ステップS104でNO)、商品を積込める個数N2にN2’’を加算するとともに、flag2を2に設定する(ステップS106)。
 CPU11は、商品を積込める個数N1及びN2が0であるか否かを判定する(ステップS107)。CPU11は個数N1またはN2が0でないと判定した場合(ステップS107でNO)、N1はN2より大きいか否かを判定する(ステップS108)。CPU11はN1がN2より大きいと判定した場合(ステップS108でYES)、商品を積み決める個数の最大値Nとして、N1を設定するとともに、flagを1に設定する(ステップS109)。CPU11はN1がN2以下であると判定した場合(ステップS108でNO)、商品を積込める個数の最大値Nとして、N2を設定するとともに、flagを2に設定する(ステップS110)。
 CPU11は、flagの値並びにflag1及びflag2の値を元に、番重に商品がどのように積込めるかを示すレイアウト情報をRAM13やハードディスク14に設けた一時領域に記憶する。それとともに、番重の縦寸法を示す変数G、横寸法を示す変数Hのそれぞれに、商品が積込まれない余裕スペースの縦寸法の値、横寸法の値に更新する(ステップS111)。CPU11は積込み判定処理を終了し、呼び出し元に処理を戻す。これにより、CPU11は、余裕スペースを擬似的な番重として扱い、以降の処理において、他の商品が積込み可能か否かを判定する。
 図18は商品を積込み途上の番重の例を示す説明図である。図18は番重の平面図である。縦寸法G-G’、横寸法H-H’の矩形領域に商品P1が、縦寸法G、横寸法H’の矩形領域に商品P2が積込まれている。縦寸法G’、横寸法H-H’の矩形領域は、商品が未だ積込みされていない余裕スペースとなっている。
 CPU11は個数N1及びN2が0であると判定した場合(ステップS107でYES)、商品を積込める個数Nを0に設定し(ステップS112)、呼び出し元に処理を戻す。
 処理は図7のステップS22に移る。CPU11は積込み判定処理の結果、商品が積込み可能か否か判定する(ステップS22)。CPU11は商品を積込める個数Nが0であるか否かにより判定する。CPU11は積込み不可能、すなわち個数Nが0であると判定した場合(ステップS22でNO)、積込み数算出処理を終了し、処理を呼び出し元に戻す。
 CPU11は積込み可能、すなわち個数Nが1以上であると判定した場合(ステップS22でYES)、選択した商品は積重ね可能か否か判定する(ステップS23)。この判定は、商品情報に含まれる積み重ね可否フラグにより行う。CPU11は積重ねが可能である、すなわち積み重ね可否フラグが1であると判定した場合(ステップS23でYES)、段数を2に設定する(ステップS24)。また、CPU11は、番重の高さ寸法を示す変数Iから商品の高さ寸法Eを減ずる。さらに、CPU11は、商品の残数から積込み可能数を減ずる。CPU11は、段数が積重ねの許容段数以下であるか否かを判定する(ステップS25)。この判定は、商品情報に含まれる段数の値を用いる。CPU11は、段数が許容段数以下であると判定した場合(ステップS25でYES)、商品を更に一段積む余裕が番重にあるか否かを判定する。すなわち、CPU11は、I-Eの値が0以上であるか否かを判定する(ステップS26)。CPU11は、商品を更に一段積む余裕が番重にある、I-Eの値が0以上であると判定した場合(ステップS26でYES)、残数が積込み可能数より大きいか否かを判定する(ステップS27)。CPU11は、残数が積込み可能数より大きい場合(ステップS27でYES)、残数より積込み可能数を減ずる(ステップS28)。CPU11は、Iの値からEを減じ、段数を1増やす(ステップS29)。CPU11は、処理をステップS25に戻す。
 CPU11は、段数が許容段数を越えている判定した場合(ステップS25でNO)、または、商品を更に一段積む余裕が、番重にはないと判定した場合(ステップS26でNO)、段数を1減らし(ステップS32)、処理を呼び出し元に戻す。
 CPU11は、残数が積込み可能数以下の場合(ステップS27でNO)、残数を0に設定する(ステップS30)。CPU11は、IからEを減ずる(ステップS31)。CPU11は段数を1減らし(ステップS32)、処理を呼び出し元に戻す。
 CPU11は積重ねが可能ではない、すなわち積み重ね可否フラグが0であると判定した場合(ステップS23でNO)、残数が積込み可能数より大きいか否かを判定する(ステップS33)。CPU11は、残数が積込み可能数より大きい場合(ステップS33でYES)、残数より積込み可能数を減じ(ステップS34)、処理を呼び出し元に戻す。CPU11は、残数が積込み可能数以下である場合(ステップS33でNO)、残数を0に設定し(ステップS35)、処理を呼び出し元に戻す。
 次に、積込み方法指示処理について説明する。図19は積込み数算出処理により求められた積込みレイアウトの一例を示す説明図である。図19は番重の平面図である。紙面左下の番重の角を原点に上下方向がY軸、それに交差する横方向がX軸とする。図19に示す例では、シュークリーム、ハンバーグ弁当、おにぎり・梅、幕の内弁当、おにぎり・鮭が積込むレイアウトが示されている。各商品が積込まれる領域は矩形であり、左下の点の座標値及び右上の点の座標値により規定する。また、番重は紙面左側がトラックの前側に向けられて、積載されるものとする。
 図20は積込み領域データベース143のレコードレイアウトの一例を示す説明図である。積込み領域データベース143は、店舗コード列、便名列、番重No列、商品コード列、商品名列、個数列、座標1列、座標2列の各列を含む。店舗コード列は積込み領域に対応する店舗のコードを記憶する。便名列には積込み領域に対応する配送便の便名を記憶する。番重No列は、店舗毎、便名毎に付与された番重の続き番号を記憶する。商品コード列は、商品に対応したコードを記憶する。商品名列は積込む商品の名称を記憶する。個数列には、積込み領域に積込む商品の個数(積込み個数)を記憶する。座標1列は、積込み領域を規定する左下座標の座標値を記憶する。座標2列は、積込み領域を規定する右上座標の座標値を記憶する。
 図21は積込み方法指示処理の手順を示すフローチャートである。仕分け装置10のCPU11は処理対象としている店舗、便に対応する番重のうち、1つの番重を選択する(ステップS121)。CPU11は選択した番重に対応する積込み領域データを、積込み領域データベース143より読込む(ステップS122)。CPU11は読込んだ各積込み領域を規定する点のY座標を参照して、グループ分けを行う(ステップS123)。Y座標で分けるのは、トラックの減速により、番重に積込まれている商品は-X軸方向(前方向)に動き、前後方向に隣接する商品を圧迫するが、Y軸方向に隣接する商品にほとんど影響を与えないからである。ここでは、X軸方向、すなわち、前後方向が所定方向に相当する。
 CPU11は1つのグループを選択する(ステップS124)。CPU11は選択したグループ内の積込み領域をX座標でソートする(ステップS125)。CPU11はソート結果と各積込み領域のX座標とを元に、サブグループ分けを行う(ステップS126)。
 CPU11は、グループ内の各積込み領域と対応付けられた商品のカテゴリーにより、ソートを行う(ステップS127)。当該ソートでは、つぶれにくいものから、つぶれやすいものの順になるように、ソートをする。実施の形態1では、カテゴリーA、B、Cの順となるようにソートする。ここでは、つぶれにくいものから、つぶれやすいものの順が、順位順に相当する。
 サブグループでは、サブグループに含まれる商品のうち、比較する商品よりもつぶれやすい商品があれば、サブグループを前、比較する商品を後ろにする。また、サブグループに含まれる商品のうち、比較する商品よりもつぶれにくい商品があれば、比較する商品を前、サブグループを後ろにする。
 CPU11はソートの結果に基づいて、積込み領域データベース143に記憶されている座標の更新を行う(ステップS128)。CPU11は未処理のグループがあるか否かを判定する(ステップS129)。CPU11は未処理のグループがあると判定した場合(ステップS129でYES)、処理をステップS124へ戻す。CPU11は未処理のグループがないと判定した場合(ステップS129でNO)、未処理の番重があるか否かを判定する(ステップS130)。CPU11は未処理の番重があると判定した場合(ステップS130でYES)、処理をステップS121へ戻す。CPU11は未処理の番重がないと判定した場合(ステップS130でNO)、積込み方法を出力し(ステップS131)、処理を呼び出し元に戻す。積込み方法の出力は、例えば、積込み領域データベース143の内容を搬送装置20に送信することである。商品の番重の積込みを搬送装置20ではなく、人が行う場合には、積込み領域データベース143に基づき、番重内での配置を画面表示等すれば良い。
 次に、積込み方法指示処理の内容を図19に示したレイアウトを例に説明する。図22は積込み方法指示処理後の積込みレイアウトの一例を示す説明図である。図23は積込み方法指示処理後の積込み領域データベース143の一例を示す説明図である。
 CPU11は番重No1の番重を選択する(ステップS121)。CPU11は積込み領域データベース143より、選択した番重の積込み領域データを読込む(ステップS122)。読込まれるのは図20に示した5レコードである。CPU11はY座標で、グループ分けをする(ステップS123)。図19に示したレイアウトの場合、2つのグループに分けられる。一方のグループ(グループ1と記す)は、シュークリームの積込み領域A11(領域A11と記す)、ハンバーグ弁当の積込み領域A12(領域12と記す)からなる。他方のグループ(グループ2と記す)は、おにぎり・梅の積込み領域A21(領域A21と記す)、おにぎり・鮭の積込み領域A22(領域A22と記す)、幕の内弁当の積込み領域A23(領域A23と記す)からなる。
 CPU11はグループ1を選択する(ステップS124)。CPU11はグループ1の積込み領域をX座標でソートする(ステップS125)。領域A11、領域A12の順となる。CPU11はサブグループ分けを行う(ステップS126)が、サブグループとグループ1と同一となる。CPU11は領域A11、A12をカテゴリーでソートする(ステップS127)。領域A11はシュークリームが対応するから、カテゴリーはCである。領域A12はハンバーグ弁当が対応するから、カテゴリーAである。よって、ソートにより、領域A12、A11の順となる。CPU11は座標を更新する(ステップS128)。
 グループ2が未処理であるので、CPU11はステップS129でYESと判定し、ステップS124でグループ2を選択する。CPU11はグループ2の領域をX座標でソートする(ステップS125)。その結果、おにぎり・梅の積込み領域A21(領域A21と記す)、幕の内弁当の積込み領域A23(領域A23と記す)、おにぎり・鮭の積込み領域A22(領域A22と記す)の順となる。CPU11は領域A21を1つのサブグループ、領域A22と領域A23をもう一つのサブグループに分ける(ステップS126)。
 CPU11はカテゴリーによるソートをする(ステップS127)。領域A21はおにぎり・梅が対応するからカテゴリーはB、領域A22はおにぎり・鮭が対応するからカテゴリーはB、領域A23は幕の内弁当が対応するからカテゴリーはAである。領域A21と領域A22は共にカテゴリーがBであるから、入れ替えは不要であるが、領域A23はカテゴリーAであるから、A21との入れ替えが必要である。そして、領域A22は領域A23と同じサブグループに属するから、領域A22も入れ替え対象となる。ソートの結果、領域A22、領域A23、領域A21の順となる。CPU11はソートの結果にしたがって、積込み領域データベース143を更新する(ステップS128)。未処理のグループがないので、CPU11はステップS129をNOと判定し、ステップS130以降の処理を行う。
 積込み方法指示処理により、図19に示したレイアウトは図22に示したレイアウトとなる。シュークリームの積込み領域A11とハンバーグ弁当の積込み領域A12とは、位置が入れ替わっている。また、おにぎり・梅の積込み領域A21と、おにぎり・鮭の積込み領域A22及び幕の内弁当の積込み領域A23とは、位置が入れ替わっている。そして、図20に示した積込み領域データベース143も更新され、図23に示す座標に更新される。
 実施の形態1の仕分け装置10は、以下の効果を奏する。番重内において、つぶれにくい商品をトラックの前側となる位置に積込み、つぶれやすい商品をトラックの後側となる位置に積込むよう、搬送装置20に指示する。それにより、トラックでの配送時に、トラックが危険回避の急ブレーキに起因する減速により、番重内で商品が移動したとしても、商品がつぶれてしまうという不具合の発生を抑制することが可能となる。
 実施の形態2
 実施の形態2では、店舗毎の番重に商品を積込む際、積込みすべき商品の全ての製造が完了していると想定する。実施の形態2における食品システム1の構成、仕分け装置10のハードウェア構成は、実施の形態1と同様であるから、説明を省略する。また、仕分け装置10で行われる処理は、一部を除いて、実施の形態1と同様であるから、以下の説明においては、主に異なる点を説明する。
 図24及び図25は、仕分け処理の手順の一例を示すフローチャートである。図24及び図25において、図4及び図5に示した処理と同様な処理については、同一の符号を振っている。仕分け装置10のCPU11は、処理店舗の選択(ステップS2)後、選択した店舗に配送される商品をカテゴリー毎に分ける(ステップS141)。CPU11は新規番重を設定(ステップS3)後、処理する商品のカテゴリーを選択する(ステップS142)。ここで、カテゴリーの選択はA、B、Cの順で行う。すなわち、つぶれにくい商品から積込みようにする。CPU11は選択したカテゴリーの商品についての商品情報を商品データベース141より読込む(ステップS143)。CPU11は選択したカテゴリーに含まれる商品の1つを選択し(ステップS144)、ステップS7以降の処理を行う。
 CPU11は選択した商品の処理が完了したら、選択したカテゴリーに含まれている商品で未処理の他の商品があるか否かを判定する(ステップS145)。CPU11は未処理の他の商品があると判定した場合(ステップS145でYES)、ステップS12以降の処理を行う。CPU11は未処理の他の商品がないと判定した場合(ステップS145でNO)、未処理のカテゴリーがあるか否かを判定する(ステップS146)。CPU11は未処理のカテゴリーがあると判定した場合(ステップS146でYES)、処理をステップS142に戻す。
 CPU11は未処理のカテゴリーがないと判定した場合(ステップS146でNO)、商品の重量に基づき、番重毎に積込み領域の再配置を行う(ステップS147)。この再配置の処理は、図21に示した積込み方法指示処理と同様である。図21のステップS127ではカテゴリーでソートしたが、再配置処理では、重量の降順にソートする。CPU11は積込み方法を出力する(図21のステップS131と同様)。CPU11は未処理店舗があるか否かを判定する(ステップS15)。CPU11は未処理店舗があると判定した場合(ステップS15でYES)、処理をステップS2に戻す。CPU11は未処理店舗がないと判定した場合(ステップS15でNO)、処理を終了する。
 実施の形態2の仕分け装置10は、以下の効果を奏する。番重に積込むべき商品が全て揃った後に、カテゴリー毎に分けて積込み位置を定める。それにより、番重内において、つぶれにくい商品をトラックの前側となる位置に確実に積込み、配送時に商品がつぶれてしまうという不具合の発生を抑制することが可能となる。また、同一カテゴリー内でも重量によりソートを行うので、配送時に商品がつぶれてしまうという不具合の発生を、より確実に抑制することが可能となる。
 上述の実施の形態1及び2においては、商品のカテゴリー数を3つにしたが、それに限られない。カテゴリー数は、2以上の任意の数で良い。また、商品のカテゴリーは、つぶれやすさの程度を観点に分けているが、それに限らない。商品の重量によりカテゴリー分けを行い、重い商品を前寄りに、軽い商品を後ろ寄りに配置するようにしても良い。このように、商品のカテゴリーは、番重内での商品の配置を決める場合に用いるものであれば、他の観点を採用することが可能である。
 さらに、上述においては、商品は調理済み食品としたが、それに限らない。番重などの運搬容器に複数種類の商品を混載し、配送を行う場合において、運搬容器内での商品の配置に考慮が必要となる場合にも適用可能である。
 また、上述においては、番重を直方体状の箱体であるとしたが、それに限らない。底板が楕円状や多角形状である番重でも良い。加えて、上述した、番重に積込み可能な商品数を求めるアルゴリズムは一例である。番重に積込み可能な商品数を求めることが可能な他のアルゴリズムも採用可能である。さらに、番重の形状に併せて適宜変更しても良い。
 各実施例で記載されている技術的特徴(構成要件)はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
 今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
 1   食品システム
 2   店舗POS装置
 3   受注管理システム
 4   食品製造システム
 5   仕分けシステム
 6   配送便システム
 10  仕分け装置
 11  CPU
 12  ROM
 13  RAM
 14  ハードディスク
 141 商品データベース
 142 受注情報データベース
 143 積込み領域データベース
 15  ディスクドライブ
 16  通信部
 17  表示部
 18  操作部
 10P プログラム(コンピュータプログラム)
 10d 光ディスク
 10m 半導体メモリ
 20  搬送装置

Claims (8)

  1.  商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、
     前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、
     商品の種別により、前記番重毎に前記商品の順位付けを行う順位付け部と、
     前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを
     備えることを特徴とする仕分け装置。
  2.  前記決定部は、
     前記商品毎に前記積込み個数、前記積込み位置を決定する単品決定部と、
     該単品決定部が一の商品についての処理を終えた後に、前記番重に空きスペースがあるか否かを判定する判定部とを有し、
     該判定部が、空きスペースがあると判定した場合に、前記単品決定部は前記空きスペースに積込む商品の積込み個数及び積込み位置を決定する
     ことを特徴とする請求項1に記載の仕分け装置。
  3.  前記単品決定部は、前記商品が積重ね可能である場合、積重ね段数が許容段数以下で、積み重ねた高さが前記番重の高さ寸法を超えないように、前記積重ね段数を決定する
     ことを特徴とする請求項1または請求項2に記載の仕分け装置。
  4.  前記単品決定部は、前記商品間及び前記商品と前記番重の周壁との間に所定寸法の隙間を確保するように、前記積込み数、積込み位置を決定する
     ことを特徴とする請求項1から請求項3のいずれか一項に記載の仕分け装置。
  5.  積込むべき商品の識別情報を取得する第1取得部と、
     製造が完了し積込み可能な商品の識別情報を取得する第2取得部とを備え、
     該第2取得部が取得した識別情報が、前記第1取得部が取得した識別情報に含まれる場合に、前記積込み可能な商品に関する、前記決定部、順位付け部及び変更部による処理を実行する
     ことを特徴とする請求項1から請求項4のいずれか一項に記載の仕分け装置。
  6.  前記第2取得部が取得した識別情報が、前記第1取得部が取得した全ての識別情報を含む場合に、前記積込み可能な商品に関する、前記決定部、順位付け部及び変更部による処理を実行する
     ことを特徴とする請求項5に記載の仕分け装置。
  7.  商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分けるコンピュータに、
     前記番重毎に前記商品の積込み個数及び積込み位置を決定し、
     商品の種別により、前記番重毎に商品の順位付けを行い、
     前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する処理を
     実行させることを特徴とするコンピュータプログラム。
  8.  コンピュータが、商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け方法において、
     前記番重毎に前記商品の積込み個数及び積込み位置を決定し、
     商品の種別により、前記番重毎に商品の順位付けを行い、
     前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する
     ことを特徴とする仕分け方法。
     
PCT/JP2016/055361 2015-03-05 2016-02-24 仕分け装置、コンピュータプログラム、仕分け方法 WO2016140120A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017503435A JPWO2016140120A1 (ja) 2015-03-05 2016-02-24 仕分け装置、コンピュータプログラム、仕分け方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015043749A JP6473638B2 (ja) 2015-03-05 2015-03-05 仕分け装置、コンピュータプログラム、仕分け方法
JP2015-043749 2015-03-05

Publications (1)

Publication Number Publication Date
WO2016140120A1 true WO2016140120A1 (ja) 2016-09-09

Family

ID=56848076

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/055361 WO2016140120A1 (ja) 2015-03-05 2016-02-24 仕分け装置、コンピュータプログラム、仕分け方法

Country Status (2)

Country Link
JP (2) JP6473638B2 (ja)
WO (1) WO2016140120A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109871979A (zh) * 2018-12-31 2019-06-11 北京云杉信息技术有限公司 摘果式分拣生鲜商品的方法
JP2020529660A (ja) * 2017-07-28 2020-10-08 ニューロ・インコーポレーテッドNuro Incorporated 自律車両および半自律車両による食料および飲料配達システム
JP2020173789A (ja) * 2019-04-12 2020-10-22 株式会社日立製作所 配送計画生成装置、システム、方法及びコンピュータ読み取り可能な記憶媒体

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62251958A (ja) * 1986-04-25 1987-11-02 Hitachi Ltd 貨物荷崩れ予報方式
JPH03111337A (ja) * 1989-09-22 1991-05-13 Mitsubishi Electric Corp パレタイズ装置
JP2012197123A (ja) * 2011-03-18 2012-10-18 Fujitsu Advanced Engineering Ltd 商品仕分システム及び商品仕分プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62251958A (ja) * 1986-04-25 1987-11-02 Hitachi Ltd 貨物荷崩れ予報方式
JPH03111337A (ja) * 1989-09-22 1991-05-13 Mitsubishi Electric Corp パレタイズ装置
JP2012197123A (ja) * 2011-03-18 2012-10-18 Fujitsu Advanced Engineering Ltd 商品仕分システム及び商品仕分プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020529660A (ja) * 2017-07-28 2020-10-08 ニューロ・インコーポレーテッドNuro Incorporated 自律車両および半自律車両による食料および飲料配達システム
CN109871979A (zh) * 2018-12-31 2019-06-11 北京云杉信息技术有限公司 摘果式分拣生鲜商品的方法
CN109871979B (zh) * 2018-12-31 2023-11-10 北京云杉信息技术有限公司 摘果式分拣生鲜商品的方法
JP2020173789A (ja) * 2019-04-12 2020-10-22 株式会社日立製作所 配送計画生成装置、システム、方法及びコンピュータ読み取り可能な記憶媒体
JP6993449B2 (ja) 2019-04-12 2022-01-13 株式会社日立製作所 配送計画生成装置、システム、方法及びコンピュータ読み取り可能な記憶媒体

Also Published As

Publication number Publication date
JP6473638B2 (ja) 2019-02-20
JP2018052626A (ja) 2018-04-05
JPWO2016140120A1 (ja) 2018-04-26

Similar Documents

Publication Publication Date Title
CN112001535B (zh) 物流装箱方法、装置、设备及存储介质
Boysen et al. The forgotten sons: Warehousing systems for brick-and-mortar retail chains
US11027920B2 (en) Rack management system and rack management method
Shiau et al. A warehouse management system with sequential picking for multi-container deliveries
JP6748592B2 (ja) ピッキング管理システム、およびピッキング管理方法
US20040254759A1 (en) State tracking load storage system
CN109272135B (zh) 物品装箱方法及相关设备
WO2021019702A1 (ja) 自動化倉庫最適化システム
WO2016140120A1 (ja) 仕分け装置、コンピュータプログラム、仕分け方法
JP2019021065A (ja) サーバ装置、パッキング装置およびプログラム
Martínez et al. A grasp algorithm for the container loading problem with multi-drop constraints
KR102216641B1 (ko) 로케이션 추천을 위한 동작 방법 및 이를 위한 장치
WO2015125287A1 (ja) 倉庫レイアウト生成装置および物流倉庫
JP2018083676A (ja) 物品格納シミュレーション装置及び物品格納シミュレーション方法
JP2003201003A (ja) 自動倉庫管理システム
JP4076821B2 (ja) 入出荷管理システム
JP2018052626A5 (ja)
Hoare et al. Placing boxes on shelves: a case study
JP6781825B2 (ja) 物品管理システムおよび物品管理方法
JP2003026309A (ja) 物品のピッキング方法、ピッキングシステム及びピッキング指示システム
JP3336889B2 (ja) 収納割付装置
JP2001236340A (ja) 箱詰め手順決定方法及び装置
JP2004001933A (ja) ピッキング方式決定方法およびピッキング方式決定プログラム
JP2017075022A (ja) 箱入れ支援プログラム、箱入れ支援方法及び箱入れ支援装置
US20210276804A1 (en) Dynamically Configurable Put Wall For Fullfilment

Legal Events

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

Ref document number: 16758814

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017503435

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16758814

Country of ref document: EP

Kind code of ref document: A1