WO2022002081A1 - Method, device, and computer-readable storage medium for production traceability - Google Patents
Method, device, and computer-readable storage medium for production traceability Download PDFInfo
- Publication number
- WO2022002081A1 WO2022002081A1 PCT/CN2021/103297 CN2021103297W WO2022002081A1 WO 2022002081 A1 WO2022002081 A1 WO 2022002081A1 CN 2021103297 W CN2021103297 W CN 2021103297W WO 2022002081 A1 WO2022002081 A1 WO 2022002081A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- identifier
- message
- arrival
- determining
- time
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000004519 manufacturing process Methods 0.000 title description 37
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims abstract description 8
- 230000002159 abnormal effect Effects 0.000 claims description 36
- 230000008569 process Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 23
- 238000010801 machine learning Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 22
- 239000000047 product Substances 0.000 description 18
- 238000001514 detection method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 7
- 230000000875 corresponding effect Effects 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 5
- 230000002596 correlated effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41885—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32339—Object oriented modeling, design, analysis, implementation, simulation language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0833—Tracking
Definitions
- Embodiments of the present disclosure generally relate to smart manufacturing and more specifically, to a method, device and computer-readable storage medium for product traceability.
- Object detection is a key task in the automation industry, for example smart manufacturing.
- Industrial controls need to know when an object has arrived at a particular position.
- the most common types of object sensing technologies include electro-mechanical, pneumatic, capacitive and photoelectric sensors. These sensors usually have a higher demand on the environment of operation and cannot be used in harsh conditions, for example, high temperature. In addition, the cost for the sensors to recognize an object is usually high.
- a computer-implemented method for product traceability comprises determining whether a first object arrives at a first position; in response to determining that the first object arrives at the first position, determining an identifier of the first object; generating a first message including the identifier of the first object; and causing a second message at a second position upstream of the first position to be moved, the second message including the identifier of the first object.
- a computing device comprising a processing unit, and a memory coupled to the processing unit and comprising instructions stored thereon, the instructions, when executed by the processing unit, causing the computing device to perform the method of the first aspect.
- a system for product traceability comprises a plurality of modules disposed in a process flow, wherein each of the plurality of modules comprises: an object detector configured to detect whether an object arrives at a position of the object detector; and the computing device of the second aspect coupled to the object detector.
- a computer-readable storage medium comprising computer-executable instructions stored thereon, the computer-executable instructions, when executed by at least one processor, causing the at least one processor to perform the method of the first aspect.
- Fig. 1 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure
- Fig. 2 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure
- Fig. 3 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure
- Fig. 4 illustrates a flowchart of a tracking method in accordance with some embodiments of the present disclosure
- Fig. 5 illustrates a schematic diagram of abnormal processing in accordance with some embodiments of the present disclosure
- Fig. 6 illustrates a schematic diagram of abnormal processing in accordance with some embodiments of the present disclosure
- Fig. 7 illustrates a schematic diagram of process parameter correlation in accordance with some embodiments of the present disclosure
- Fig. 8 illustrates a flowchart of a tracking method in accordance with some embodiments of the present disclosure
- Fig. 9 illustrates a schematic diagram of a production line system in accordance with some embodiments of the present disclosure.
- Fig. 10 illustrates a block diagram of a computing device capable of implementing some embodiments of the present disclosure.
- the term “includes” and its variants are to be read as open-ended terms that mean “includes, but is not limited to. ”
- the term “based on” is to be read as “based at least in part on. ”
- the terms “one example embodiment” and “one embodiment” are to be read as “at least one example embodiment. ”
- the term “afurther embodiment” is to be read as “at least a further embodiment. ”
- Other possible yet unmentioned terms shall not be explained or defined in a way contrary to the underlying ideas of the embodiments of the present disclosure unless clearly indicated otherwise.
- first and second etc. throughout the text, the elements are not restricted by the terms, and the terms are irrelevant to the sequence of corresponding elements. The terms are provided only for distinguishing one element from another. For example, the first element may be referred to as second element, and the second element likewise also may be indicated as first element without deviating from the scope of the embodiments. As used herein, the term “and/or” includes any and all combinations of one or more listed terms.
- Fig. 1 illustrates a schematic diagram of a tracing method in accordance with some embodiments of the present disclosure.
- objects 1-6 pass a production line in sequence, and object detectors Detctor i-1 and Detector i are disposed on the production line to detect whether the objects arrive at the positions where the detectors are located, where Detctor i-1 is located upstream of Detector i .
- the object detector may only be able to detect presence of an object without complex image detection and recognition features. In such case, the cost of the object detector is relatively low.
- the detector may output 1 when detecting an object; otherwise, the detector may output 0.
- the function of the object detector also may be implemented by a pyrometer, a pressure sensor, or the like.
- an identifier (ID) of an object arriving at respective positions may be recorded.
- ID the time of arrival of each object at a corresponding detection point
- a corresponding message may be generated at the position of each detector, the message including object ID and optionally the time when the object is detected by the detector, i.e., the time of arrival of the object at the position of the detector.
- the object ID such as the Component/Part Identifier (CPID)
- CPID Component/Part Identifier
- OEM Original Equipment Manufacturer
- ID is intended to uniquely recognize an object.
- the basics of the identifier are to allow recognition of every single object even when objects of the same shape and material are manufactured in volume.
- the object ID may be printed as text or encoded in a barcode or Data Matrix Code (DMC) or Electronic Product Code (EPC) /Radio Frequency Identifier (RFID) tag attached to the object, e.g. component or part.
- DMC Data Matrix Code
- EPC Electronic Product Code
- RFID Radio Frequency Identifier
- Virtual tracking is sometimes unavoidable because of the harsh environment where no ID reader can survive long enough, for example high temperature, highly corrosive atmosphere, narrow place etc.
- the physical ID is not a must and instead may be used for cross-checking the virtual tracking result. Therefore, the physical ID may be flexibly disposed.
- the virtual tracking solution in accordance with the embodiments of the present disclosure can ease or even eliminate the above problem caused by the harsh environment.
- the information may be recorded using a linear data structure, e.g., queue or stack, where queue is a First-In-First-Out (FIFO) linear data structure while stack is Last-In-First-Out (LIFO) linear data structure.
- queue is a First-In-First-Out (FIFO) linear data structure while stack is Last-In-First-Out (LIFO) linear data structure.
- FIFO First-In-First-Out
- LIFO Last-In-First-Out
- the queue or stack here only indicates logical representations of the data, rather than real storage situation in the storage device.
- the data may be stored in the storage device in a more optimized way.
- the queue may be beneficial because this pipeline design is quite suitable for recording information of the object (e.g., ID) with a queue.
- some products may be temporarily stored in a warehouse or a temporary station.
- some process flows may need cooling and in such case high temperature products should be placed to a temporary station.
- the storage station may act as buffer to slow down the production speed of the glass arriving at a next processing site.
- the product last entering the temporary storage base should be taken out in the first place, and the information of the object (e.g., ID) may be recorded by a stack.
- ID information of the object
- the linear data structure such as queue and stack, is just a preferred example of the data structure.
- Other data structures also may be used to record the data or information.
- the length of the linear data structure is also dynamic depending on the situation of the production line.
- Queue i-1 and Queue i respectively record the object IDs and the time of arrival detected by Detctor i-1 and Detector i .
- the queue is taken as an example to further discuss the embodiments of the present disclosure.
- the inventive concept of the present invention may also be applied to other data structures such as stack.
- New elements are pushed to the beginning of the queue.
- Detctor i-1 detects the object. Then, a message including ID6 and the time of arrival (as a timestamp) of the object is generated, and is then added to the top of the queue Queue i-1 .
- the last element in the queue at a previous position pops up and a message including the ID of the element and the time when the element arrives at the new position is generated. The message is then pushed to the current queue, and so on. In this way, traceability is implemented.
- the last element ID3 in Queue i-1 will pop up, and a message including the ID of the element and the time of arrival of the element at Detector i is pushed to the top of Queue i .
- the push and pop operations here only indicate logical representations of the data, rather than operations related to the actual storage situations in the storage device. Instead, the data may be stored in the storage device in a more optimized manner.
- detectors Detctor i-1 and Detector i may be viewed as an entrance and an exit of a module on the production line in the direction of flow.
- the object within the module may be tracked using Queue i-1 along the sequence of movement.
- detection sensors may be mounted at entrance and exit of the work site/process to implement object tracking between the entrance and the exit.
- FIG. 4 illustrates a flowchart of an operating method 400 of a single tracking module in accordance with some embodiments of the present disclosure.
- the tracking module may be set at the position of Detector i as indicated in Fig. 1.
- Detector i here is denoted as object detector 402.
- the operating method 400 also may be applied to tracking modules disposed at other detectors.
- an output value of the object detector 402 may be monitored continuously or examined periodically. If it is determined that no change occurs to the output of the object detector 402 at block 404, the method returns to block 402 to continue examining the output value of the object detector 402.
- a message is popped out from a previous linear data structure (e.g., the bottom of the queue Queue i-1 ) and the ID of the object is extracted from Queue i-1 (in particular, from the message that has been popped out) .
- the timestamp is recorded as at block 412. It should be appreciated that although 1 represents the arrival of the object and 0 indicates no arrival of the object as explained above, other numbers also may be used to indicate corresponding meanings. For example, 0 may indicate the arrival of the object while 1 may indicate no arrival of the object.
- the object may be taken away from the pipeline or a new object may be added into the pipeline, so it is possible that the detected time of arrival of the object does not match the expected time of arrival, and an abnormal situation occurs.
- the method 400 proceeds to block 416, at which a new message is generated based on the ID of the object and Alternatively, the message may include the ID of the object only.
- a new message is pushed to a linear data structure at Detector i . For example, a new message is pushed to the top of the queue Queue i as a new element of Queue i .
- the method 400 proceeds to block 420, at which the details of the abnormal situation are determined. For example, it may be determined whether the object arrives at the position earlier or later than the expected time of arrival. If it is determined at block 420 that the object arrives at the position later than the expected time of arrival, this is a timeout situation, which will be described in detail below with reference to Fig. 5. In such case, the method 400 proceeds to block 422, at which one or more timeout IDs are pushed to a linear data structure (e.g., queue or stack) for an abnormal object of Detector i . In addition, the expected time of arrival also may be pushed to the abnormal linear data structure.
- a linear data structure e.g., queue or stack
- the method 400 proceeds to block 416, to determine the ID of the object and push a message including the ID and the optional time of arrival of the object to the queue Queue i .
- the queue may be traversed from the element at the tail (i.e., the element pushed to the queue at the earliest time) .
- the stack its traversal may start from the element at the beginning (i.e., the element pushed to the stack at the most recent time) .
- the ID of the element may be determined as the ID of the object.
- the method 400 proceeds to block 424, at which a message including the ID and the time of arrival of the object is generated.
- the ID of the object may be defined in a way different from the normal objects, and may be re-defined at check points. For example, inserted object and regular object may be defined by different encoding manners.
- the message is pushed to the linear data structure at Detector i . For example, the message is pushed to the top of Queue i as the new element of the Queue i .
- a time interval is calculated by to determine whether the movement of the object between two positions is considered timeout.
- the process may be further simplified, i.e., the movement time interval is calculated only using the timestamp indicating the entry into the detector, i.e., pronounced, where d is a dimension of the object in a movement direction and indicates an average moving speed between the two positions.
- the movement interval also may be calculated using a timestamp indicating the exit from the detector, i.e., As the timestamps of the object entering each position are recorded in corresponding queues, the time interval, for example, of the object 3 indicated in Fig.
- the time interval for each object moving from one position to the next position is substantially the same.
- a timeout situation may occur.
- Fig. 5 illustrates an example of timeout. If the distance between Detector i-1 and Detector i is l i and the average moving speed therebetween is then the moving time t i equals to Aslight deviation may be induced due to the unstable transmission speed.
- the actual moving time equals to because in fact is the time of arrival of object 4 and g n is a gap between the object 3 and the object 4 plus the dimension of the object in the direction of movement.
- a reference time for timeout criterion indicates the buffer time considering that the speed is not absolutely stable. usually is an empirical value and smaller than The reference time also reflects a production cycle of the process (between Detector i-1 and Detector i ) .
- t′ i is calculated by subtracting from then t′ i is closest to It may be used for determining the ID of the object that actually arrives at Detector i in case of the timeout. For example, the above approach is quite useful when removing a plurality of objects.
- the actual ID of the object at Detector i may be determined by calculating t i with the minimum deviation from
- the reference time can also be determined by statistics or machine learning without knowing details of kinematics inside the module. For example, an average value of the time spent by a given number of objects (e.g., five) on moving from Detector i-1 to Detector i may be calculated by a statistical approach.
- the moving time of respective objects may also be continuously recorded to determine outliers or changes of the reference time caused by adjustment of the moving speed.
- the timeout may be determined by the following formulas:
- j is an index of elements in Queue i-1 to indicate the actual detected object.
- the detail of kinematics inside the module may be deduced by calculating the minimum moving time interval.
- the element at the tail of Queue i-1 i.e., the element first entering Queue i-1
- the element at the tail of Queue i-1 is also the first arriving at Detector i .
- the abnormal elements are moved to the abnormal linear data structure (e.g., abnormal queue or abnormal stack) to be further examined and tracked.
- the abnormal elements include timestamps, they may be correlated with the abnormal situations in the actual production to find out causes.
- abnormalities may be recorded by marking. For example, time of occurrence, time interval, position and cause of the abnormalities may be marked to be correlated with the abnormal elements.
- object information under different abnormal situations may be recorded using a plurality of abnormal queues, such as a queue of broken objects, a queue of defective products and a queue of removed objects etc. It is certain that other information may also be obtained for classifying the abnormal situations, e.g., programmable logic controller (PLC) signal indicative of door opening and test results of examination device (NOK) etc.
- PLC programmable logic controller
- NOK examination device
- the abnormal queues are highly customized since different production lines may have various abnormalities.
- the abnormal situations may be classified by a simple filter, i.e., timeout plus condition A/condition B/....
- the idea of the embodiments of the present disclosure is described above only with reference to the abnormal queues. However, it should be understood that the all of the above abnormal queues may be replaced with other linear data structures, such as abnormal stack etc.
- an abnormal queue may be created for each section of the production line (e.g., between Detector i-1 and Detector i ) .
- an algorithm is employed to classify the abnormal objects by correlating with abnormal signals (e.g., alarm) .
- abnormal data or abnormal flows may be classified using a machine learning algorithm.
- the classification is carried out almost immediately after the determination of timeout and automatic signal reading functions such as PLC are also used. Therefore, the abnormal flow can be effectively managed.
- the classified data may be provided for subsequent statistical analysis and predictive maintenance.
- FIG. 6 illustrates a schematic diagram of a tracking method under the above situation in accordance with some embodiments of the present disclosure.
- the object 7 is inserted into the moving sequence and placed in front of the object 3.
- Detector i has a new detection value
- t i is equal to
- two conditions may be employed for determining the situation as shown in the following formulas:
- n i-1 len (Queue i-1 ) -1.
- the object ID in process and form a new element, which is pushed to the top of Queue i .
- the object ID in process may be defined in a way different from a normal object and also may be redefined at the check point.
- Embodiments for inserting a single object into the production line are introduced above with reference to Fig. 6. Those skilled in the art should understand that the process of inserting a plurality of objects concurrently is similar to the determination of timeout when removing a plurality of objects.
- the accuracy of the above mentioned virtual tracking may be verified by cross-checking.
- the cross-checking may be conducted using the count of objects. That is, the number of objects entering a work station minus the number of objects being removed and further plus the number of reinjected objects and further minus the number of damaged objects equals to the number of objects at the work station.
- one or more check points may be set up.
- the object may be provided thereon with a physical identifier, e.g., two-dimensional code and barcode etc.
- a physical identifier e.g., two-dimensional code and barcode etc.
- DMC Data Matrix Code
- a scanner may be mounted at a particular position as a check point to examine whether the actual ID sequence number is consistent with the expected ID sequence number. If the examination result indicates inconsistency, the queue may be readjusted based on the actual scanning result. At this moment, it is examined whether the configuration of the virtual tracking algorithm is correct, e.g., whether the setting value of is reasonable.
- the idea of the embodiments of the present disclosure is described above with reference to the queue as an example. However, it should be understood that the queue also may be substituted by other suitable linear data structures, such as stack.
- the check point is used as means of verification, rather than the basis for traceability.
- the costs for implementing traceability solely based on scanners or RFID readers are huge.
- the devices cannot be mounted or used (for example, RFID tag cannot survive in an environment over 400°C) . Therefore, the virtual tracking, without any doubts, has advantages in flexibility and cost-saving aspects.
- check point is also necessary.
- the sequence of the ID in the linear data structure such as queue or stack, may be reorganized by subsequently setting the check point.
- Fig. 7 illustrates an example of correlating the object ID to the process parameter (s) . Since the distance between the sensor Sensor k and the closest detector Detector i is fixed, corresponding process parameters may be derived and extracted using the distance l k and the timestamp For example, that is the value measured at or the value measured at the time closest to depending on the sampling frequency of Sensor k . The sampling frequency may also be set using the production cycle to help associate the object ID and the process parameters.
- the value of some process parameters may differ greatly in the presence or absence of the object, e.g., the surface temperature of the object.
- the process parameter sensor of the above type also may be viewed as object detector.
- a queue may be allocated to this object detector and the elements in the queue also include measurement values of the process parameters in addition to the object ID and the timestamp.
- the virtual traceability system may be easily deployed to the production line by the modular design.
- object detectors are mounted at key stations of the production line and then are connected to edge computing devices or other computing devices via industrial networks.
- the virtual tracking program may be deployed on the computing devices, which are implemented at various stations in a distributed manner and communicatively interconnected via a network.
- the computing devices may also be implemented in a centralized way and receive detection signals from various object detectors to make a determination.
- the various sensors, PLC and the like may be connected to the network, to manage the abnormal flows and correlate the object ID with the production conditions. Further, in the course of tracking an object, the ID of the object, the timestamp of the object entering each detection position and related process parameters and measurement results also may be written into a database, to establish a product-centric database.
- Fig. 8 illustrates a flowchart of a tracking method 800 in accordance with some embodiments of the present disclosure.
- Fig. 8 may be implemented by a computing device arranged at the station of the detector Detector i as shown in Fig. 1.
- the first position may be where Detector i is located as shown in Fig. 3 and the first object may be object 3. It is certain that the first position may also be any other suitable positions on the production line, e.g., the position where Detector i-1 is located.
- an identifier of the first object is determined.
- the identifier of the first object may be determined from at Detector i-1 .
- the identifier of the object i.e., ID 3
- the identifier of the object may be obtained from Queue i-1 at Detector i-1 .
- a first message including the identifier of the first object is generated.
- the first message may include the identifier of the first object, e.g., ID 3, and may further include the time of arrival of the first object at the first position, such as the time of ID 3 shown in Fig. 3.
- a second message at a second position upstream of the first position is caused to be moved, the second message including the identifier of the first object.
- the second position may be where Detector i-1 is located.
- the message including ID 3 may be popped up from Queue i-1 .
- the message is either directly deleted, or moved to a further data structure (e.g., a further queue) at the second position or other storage space. It should be understood that although the sequence is indicated in Fig. 8, blocks 806 and 808 may be implemented in a reverse order or in parallel.
- the first message may be pushed to the linear data structure at the first position and the second message is caused to be popped up from the linear data structure at the second position.
- the linear data structure may be implemented by a queue or a stack. Alternatively, any other suitable data structures also may be employed.
- the method 800 further includes: determining an expected time of arrival of the second object at the first position; and in response to determining that the time when a third object arrives at the first position does not match the expected time of arrival, generating a third message indicating the second object does not arrive at the first position as expected.
- the third message may include the identifier of the second object and optionally the expected time of arrival of the second object at the first position. In this way, abnormality detection may be implemented, as indicated by block 414 of Fig. 4.
- determining the expected time of arrival includes: determining time of arrival of the second object at the second position, an average moving speed between the first position and the second position and a distance between the first position and the second position; and determining the expected time of arrival based on the time of arrival of the second object at the second position, the average moving speed between the first position and the second position and the distance between the first position and the second position.
- determining the expected time of arrival includes: determining a reference movement time between the first position and the second position by statistics or machine learning; and determining the expected time of arrival based on the reference movement time.
- the time of arrival of the third object at the first position not matching the expected time of arrival includes: the third object arrives at the first position after a time window defined by the expected time of arrival, the third message includes identifier of the second object and expected time of arrival of the second object at the first position.
- the third message is pushed to an abnormal linear data structure at the first position; the identifier of the third object is determined and a fourth message including the identifier of the third object is generated; and the fourth message is pushed to the linear data structure at the first position.
- the timeout detection is implemented.
- the timeout detection may be performed by the method shown by Figs. 4-5.
- the time of arrival of the third object at the first position not matching the expected time of arrival includes: the third object arrives at the first position before a time window defined by the expected time of arrival, the third message includes an identifier of the third object and time of arrival of the third object at the first position.
- the method 800 further includes pushing the third message to the linear data structure at the first position.
- the identifier of the third object may be obtained and defined in a way different from the regular objects, so as to detect and track the reinjected objects.
- the third message may be correlated to abnormal signals associated with the first position at the expected time of arrival of the second object. In this way, the cause for the abnormality may be analyzed to facilitate subsequent improvements in the tracking method and/or process flow.
- the method 800 further includes: correlating one or more process parameters of a process associated with the first position to the first object based on the identifier of the first object. Accordingly, a product may be correlated to various process parameters to provide convenient query and product traceability.
- the method 800 further includes determining whether a fourth object arrives at the second position; in response to determining that the fourth object arrives at the second position, determining an identifier of the fourth object; generating a fifth message including the identifier of the fourth object; and causing a sixth message at a third position upstream of the second position to be moved, the sixth message including the identifier of the fourth object.
- the second position may be where Detector i-1 is located as indicated by Fig. 3 and the third position may be a position of an upstream Detector i-2 .
- the first object includes a physical identifier, e.g., two-dimensional code and barcode etc.
- the method 800 includes extracting from the first object the physical identifier of the first object; and determining whether the physical identifier extracted from the first object is consistent with the identifier obtained from at the second position for cross-checking or cross-examination.
- the physical identifier may be extracted from the first object by code reading.
- product traceability can be quickly deployed to respective stations on the production line by a modular design.
- identifiers and optional timestamps of the products at each section of the production line are recorded using the output signals of the object detector.
- new stations are allowed to be quickly added to the tracking process, and it is also convenient to modify, skip, and delete tracking of one or more sections.
- the above solution is not strict with the production line.
- the solution may be suitable for various production lines and can be quickly deployed to different production lines.
- FIG. 9 illustrates a schematic diagram of a production line system 900 in accordance with some embodiments.
- detectors are set at a plurality of stations and a corresponding module is also disposed at each detector.
- FIFO 901 indicates a module at a station for implementing the method and functions illustrated in Figs. 1-8.
- FIFO (901 and 904) , FIFO (902 and 905) and FIFO (903 and 906) form respective upstream and downstream pipelines.
- Three sub-pipelines are combined at block 907 and further split into two sub-pipelines at block 908, i.e., LIFO 909 and 910.
- Fig. 10 illustrates a schematic block diagram of a device 1000 for implementing embodiments of the present disclosure.
- the method 400 indicated in Fig. 4 and the method 800 shown by Fig. 8 may be carried out by the device 1000.
- the device 1000 may be implemented at each detector or may be communicatively connected to each detector.
- the device 1000 comprises a central process unit (CPU) 1001, which can execute various suitable actions and processing based on the computer program instructions stored in the read-only memory (ROM) 1002 or computer program instructions loaded in the random-access memory (RAM) 1003.
- the RAM 1003 can also store all kinds of programs and data required by the operation of the device 1000.
- CPU 1001, ROM 1002 and RAM 1003 are connected to each other via a bus 1004.
- the input/output (I/O) interface 1005 is also connected to the bus 1004.
- a plurality of components in the device 1000 is connected to the I/O interface 1005, including: an input unit 1006, such as keyboard, mouse and the like; an output unit 1007, e.g., various kinds of display and loudspeakers etc.; a storage unit 1008, such as disk and optical disk etc.; and a communication unit 1009, such as network card, modem, wireless transceiver and the like.
- the communication unit 1009 allows the device 1000 to exchange information/data with other devices via the computer network, such as Internet, and/or various telecommunication networks.
- the above described procedure and processing can be executed by the processing unit 1001.
- the method 400 or 800 can be implemented as a computer software program tangibly included in the machine-readable medium, e.g., storage unit 1008.
- the computer program can be partially or fully loaded and/or mounted to the apparatus 1000 via ROM 1002 and/or communication unit 1009.
- the CPU 1001 may be configured in any other suitable ways (e.g., by means of firmware) to execute the method 400 or 800.
- the present disclosure can be method, device, system and/or computer program product.
- the computer program product can include a computer-readable storage medium, on which the computer-readable program instructions for executing various aspects of the present disclosure are loaded.
- the computer-readable storage medium can be a tangible apparatus that maintains and stores instructions utilized by the instruction executing apparatuses.
- the computer-readable storage medium can be, but not limited to, such as electrical storage device, magnetic storage device, optical storage device, electromagnetic storage device, semiconductor storage device or any appropriate combinations of the above.
- Non-exhaustive list examples include: portable computer disk, hard disk, random-access memory (RAM) , read-only memory (ROM) , erasable programmable read-only memory (EPROM or flash) , static random-access memory (SRAM) , portable compact disk read-only memory (CD-ROM) , digital versatile disk (DVD) , memory stick, floppy disk, mechanical coding devices, punched card stored with instructions thereon, or a projection in a slot, and any appropriate combinations of the above.
- RAM random-access memory
- ROM read-only memory
- EPROM or flash erasable programmable read-only memory
- SRAM static random-access memory
- CD-ROM compact disk read-only memory
- DVD digital versatile disk
- memory stick floppy disk
- mechanical coding devices punched card stored with instructions thereon, or a projection in a slot, and any appropriate combinations of the above.
- the computer-readable storage medium utilized here is not interpreted as transient signals per se, such as radio waves or freely propagated electromagnetic waves, electromagnetic waves propagated via waveguide or other transmission media (such as optical pulses via fiber-optic cables) , or electric signals propagated via electric wires.
- the described computer-readable program instruction can be downloaded from the computer-readable storage medium to each computing/processing device, or to an external computer or external storage via Internet, local area network, wide area network and/or wireless network.
- the network can comprise copper-transmitted cable, optical fiber transmission, wireless transmission, router, firewall, switch, network gate computer and/or edge server.
- the network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium of each computing/processing device.
- the computer program instructions for executing operations of the present disclosure can be assembly instructions, instructions of instruction set architecture (ISA) , machine instructions, machine-related instructions, microcodes, firmware instructions, state setting data, or source codes or target codes written in any combinations of one or more programming languages, wherein the programming languages comprise object-oriented programming languages, e.g., Smalltalk, Python, C++ and so on, and traditional procedural programming languages, such as “C” language or similar programming languages.
- the computer-readable program instructions can be implemented fully on the user computer, partially on the user computer, as an independent software package, partially on the user computer and partially on the remote computer, or completely on the remote computer or server.
- the remote computer can be connected to the user computer via any type of networks, including local area network (LAN) and wide area network (WAN) , or to the external computer (e.g., connected via Internet using the Internet service provider) .
- state information of the computer-readable program instructions is used to customize an electronic circuit, e.g., programmable logic circuit, field programmable gate array (FPGA) or programmable logic array (PLA) .
- the electronic circuit can execute computer-readable program instructions to implement various aspects of the present disclosure.
- the computer-readable program instructions can be provided to the processing unit of general-purpose computer, dedicated computer or other programmable data processing apparatuses to manufacture a machine, such that the instructions that, when executed by the processing unit of the computer or other programmable data processing apparatuses, generate an apparatus for implementing functions/actions stipulated in one or more blocks in the flow chart and/or block diagram.
- the computer-readable program instructions can also be stored in the computer-readable storage medium and cause the computer, programmable data processing apparatus and/or other devices to work in a particular manner, such that the computer-readable medium stored with instructions comprises an article of manufacture, including instructions for implementing various aspects of the functions/actions stipulated in one or more blocks of the flow chart and/or block diagram.
- the computer-readable program instructions can also be loaded into computer, other programmable data processing apparatuses or other devices, so as to execute a series of operation steps on the computer, other programmable data processing apparatuses or other devices to generate a computer-implemented procedure. Therefore, the instructions executed on the computer, other programmable data processing apparatuses or other devices implement functions/actions stipulated in one or more blocks of the flow chart and/or block diagram.
- each block in the flow chart or block diagram can represent a module, a part of program segment or code, wherein the module and the part of program segment or code include one or more executable instructions for performing stipulated logic functions.
- the functions indicated in the block can also take place in an order different from the one indicated in the drawings. For example, two successive blocks can be in fact executed in parallel or sometimes in a reverse order dependent on the involved functions.
- each block in the block diagram and/or flow chart and combinations of the blocks in the block diagram and/or flow chart can be implemented by a hardware-based system exclusive for executing stipulated functions or actions, or by a combination of dedicated hardware and computer instructions.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- General Factory Administration (AREA)
Abstract
A method (800), a device (1000) and a computer-readable storage medium for product traceability are provided. The method (800) includes determining whether a first object arrives at a first position (802); in response to determining that the first object arrives at the first position, determining an identifier of the first object (804); generating a first message (806) including the identifier of the first object; and causing a second message at a second position upstream of the first position to be moved (808), the second message including the identifier of the first object.
Description
Embodiments of the present disclosure generally relate to smart manufacturing and more specifically, to a method, device and computer-readable storage medium for product traceability.
Object detection is a key task in the automation industry, for example smart manufacturing. Industrial controls need to know when an object has arrived at a particular position. The most common types of object sensing technologies include electro-mechanical, pneumatic, capacitive and photoelectric sensors. These sensors usually have a higher demand on the environment of operation and cannot be used in harsh conditions, for example, high temperature. In addition, the cost for the sensors to recognize an object is usually high.
SUMMARY
In accordance with embodiments of the present disclosure, there is provided a method, device, and computer-readable storage medium for product traceability.
In accordance with a first aspect, there is provided a computer-implemented method for product traceability. The method comprises determining whether a first object arrives at a first position; in response to determining that the first object arrives at the first position, determining an identifier of the first object; generating a first message including the identifier of the first object; and causing a second message at a second position upstream of the first position to be moved, the second message including the identifier of the first object.
In accordance with a second aspect, there is provided a computing device. The device comprises a processing unit, and a memory coupled to the processing unit and comprising instructions stored thereon, the instructions, when executed by the processing unit, causing the computing device to perform the method of the first aspect.
In accordance with a third aspect, there is provided a system for product traceability. The system comprises a plurality of modules disposed in a process flow, wherein each of the plurality of modules comprises: an object detector configured to detect whether an object arrives at a position of the object detector; and the computing device of the second aspect coupled to the object detector.
According to a fourth aspect, there is provided a computer-readable storage medium comprising computer-executable instructions stored thereon, the computer-executable instructions, when executed by at least one processor, causing the at least one processor to perform the method of the first aspect.
It should be appreciated that the contents described in this Summary are not intended to identify key or essential features of the embodiments of the present disclosure, or limit the scope of the present disclosure. Other features of the present disclosure will be understood more easily through the following description.
Through the following detailed description with reference to the accompanying drawings, the above and other features, advantages and aspects of every embodiment of the present disclosure will become more apparent. In the drawings, same or similar reference signs indicate the same or similar elements, wherein:
Fig. 1 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure;
Fig. 2 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure;
Fig. 3 illustrates a schematic diagram of a tracking method in accordance with some embodiments of the present disclosure;
Fig. 4 illustrates a flowchart of a tracking method in accordance with some embodiments of the present disclosure;
Fig. 5 illustrates a schematic diagram of abnormal processing in accordance with some embodiments of the present disclosure;
Fig. 6 illustrates a schematic diagram of abnormal processing in accordance with some embodiments of the present disclosure;
Fig. 7 illustrates a schematic diagram of process parameter correlation in accordance with some embodiments of the present disclosure;
Fig. 8 illustrates a flowchart of a tracking method in accordance with some embodiments of the present disclosure;
Fig. 9 illustrates a schematic diagram of a production line system in accordance with some embodiments of the present disclosure; and
Fig. 10 illustrates a block diagram of a computing device capable of implementing some embodiments of the present disclosure.
DETAILED DESCRIPTION OF EMBODIMENTS
Ideas of the present disclosure are now explained with reference to various example embodiments shown in the drawings. It should be appreciated that description of those embodiments is merely to enable those skilled in the art to better understand and further implement the present disclosure and is not intended for limiting the scope disclosed herein in any manners. It should be noted similar or same reference signs can be used in the drawings where feasible, and similar or same reference signs can represent similar or same functions. Those skilled in the art will easily understand from the following description that alternative embodiments of the structure and/or method described in the text can be adopted without deviating from the principles and ideas of the present invention described herein.
As used herein, the term “includes” and its variants are to be read as open-ended terms that mean “includes, but is not limited to. ” The term “based on” is to be read as “based at least in part on. ” The terms “one example embodiment” and “one embodiment” are to be read as “at least one example embodiment. ” The term “afurther embodiment” is to be read as “at least a further embodiment. ” Other possible yet unmentioned terms shall not be explained or defined in a way contrary to the underlying ideas of the embodiments of the present disclosure unless clearly indicated otherwise.
It is to be understood although respective elements may be described by terms like “first” and “second” etc. throughout the text, the elements are not restricted by the terms, and the terms are irrelevant to the sequence of corresponding elements. The terms are provided only for distinguishing one element from another. For example, the first element may be referred to as second element, and the second element likewise also may be indicated as first element without deviating from the scope of the embodiments. As used herein, the term “and/or” includes any and all combinations of one or more listed terms.
Fig. 1 illustrates a schematic diagram of a tracing method in accordance with some embodiments of the present disclosure. As shown in Fig. 1, objects 1-6 pass a production line in sequence, and object detectors Detctor
i-1 and Detector
i are disposed on the production line to detect whether the objects arrive at the positions where the detectors are located, where Detctor
i-1 is located upstream of Detector
i. In some embodiments, the object detector may only be able to detect presence of an object without complex image detection and recognition features. In such case, the cost of the object detector is relatively low. For example, the detector may output 1 when detecting an object; otherwise, the detector may output 0. The function of the object detector also may be implemented by a pyrometer, a pressure sensor, or the like.
In this example, an identifier (ID) of an object arriving at respective positions (e.g., object detection point or positions where the detectors are located) may be recorded. In addition to the object ID, the time of arrival of each object at a corresponding detection point may also be recorded. For example, upon detection of an object, a corresponding message may be generated at the position of each detector, the message including object ID and optionally the time when the object is detected by the detector, i.e., the time of arrival of the object at the position of the detector. To facilitate discussion, both the ID and the time of arrival of the object are taken into account. However, it should be appreciated that the time of arrival is not recorded in some embodiments of the present disclosure.
The object ID, such as the Component/Part Identifier (CPID) , enables manufacturers to identify components and parts, typically where an Original Equipment Manufacturer (OEM) defines the specification of a component or part that is part of its final product, such as an automobile. Identifier (ID) is intended to uniquely recognize an object. The basics of the identifier are to allow recognition of every single object even when objects of the same shape and material are manufactured in volume. The object ID may be printed as text or encoded in a barcode or Data Matrix Code (DMC) or Electronic Product Code (EPC) /Radio Frequency Identifier (RFID) tag attached to the object, e.g. component or part. Virtual tracking is sometimes unavoidable because of the harsh environment where no ID reader can survive long enough, for example high temperature, highly corrosive atmosphere, narrow place etc. In the embodiments of the present disclosure, the physical ID is not a must and instead may be used for cross-checking the virtual tracking result. Therefore, the physical ID may be flexibly disposed. The virtual tracking solution in accordance with the embodiments of the present disclosure can ease or even eliminate the above problem caused by the harsh environment.
For example, the information may be recorded using a linear data structure, e.g., queue or stack, where queue is a First-In-First-Out (FIFO) linear data structure while stack is Last-In-First-Out (LIFO) linear data structure. It is to be understood that the queue or stack here only indicates logical representations of the data, rather than real storage situation in the storage device. On the contrary, the data may be stored in the storage device in a more optimized way. In the example shown by Fig. 1, the queue may be beneficial because this pipeline design is quite suitable for recording information of the object (e.g., ID) with a queue. Alternatively, in certain pipelines, some products may be temporarily stored in a warehouse or a temporary station. For example, some process flows may need cooling and in such case high temperature products should be placed to a temporary station. For example, in glass production, the storage station may act as buffer to slow down the production speed of the glass arriving at a next processing site. Under such circumstance, the product last entering the temporary storage base should be taken out in the first place, and the information of the object (e.g., ID) may be recorded by a stack. It should be understood that the linear data structure, such as queue and stack, is just a preferred example of the data structure. Other data structures also may be used to record the data or information.
The length of the linear data structure, e.g., queue or stack, is also dynamic depending on the situation of the production line. As shown in Fig. 1, Queue
i-1and Queue
i respectively record the object IDs and the time of arrival detected by Detctor
i-1 and Detector
i. For the sake of convenience, the queue is taken as an example to further discuss the embodiments of the present disclosure. However, it should be understood that the inventive concept of the present invention may also be applied to other data structures such as stack.
New elements are pushed to the beginning of the queue. As shown in Fig. 2, when the object with ID6 enters the position where Detctor
i-1 is located, Detctor
i-1 detects the object. Then, a message including ID6 and the time of arrival (as a timestamp) of the object is generated, and is then added to the top of the queue Queue
i-1.
When the object arrives at a new position, the last element in the queue at a previous position pops up and a message including the ID of the element and the time when the element arrives at the new position is generated. The message is then pushed to the current queue, and so on. In this way, traceability is implemented. As shown in Fig. 3, once an object with ID3 arrives at the position where Detector
i is located, the last element ID3 in Queue
i-1 will pop up, and a message including the ID of the element and the time of arrival of the element at Detector
i is pushed to the top of Queue
i. It should be understood that the push and pop operations here only indicate logical representations of the data, rather than operations related to the actual storage situations in the storage device. Instead, the data may be stored in the storage device in a more optimized manner.
For example, detectors Detctor
i-1 and Detector
i may be viewed as an entrance and an exit of a module on the production line in the direction of flow. The object within the module may be tracked using Queue
i-1 along the sequence of movement. In the production line, detection sensors may be mounted at entrance and exit of the work site/process to implement object tracking between the entrance and the exit.
Some embodiments of the present disclosure may be fulfilled by a modular design. For example, Fig. 4 illustrates a flowchart of an operating method 400 of a single tracking module in accordance with some embodiments of the present disclosure. For example, the tracking module may be set at the position of Detector
i as indicated in Fig. 1. Detector
i here is denoted as object detector 402. It should be appreciated that the operating method 400 also may be applied to tracking modules disposed at other detectors.
At block 404, it is determined whether a change occurs to the output of the detector 402. For example, an output value of the object detector 402 may be monitored continuously or examined periodically. If it is determined that no change occurs to the output of the object detector 402 at block 404, the method returns to block 402 to continue examining the output value of the object detector 402.
If it is determined that the output of the object detector 402 changes at block 404, a decision is made at block 406 as to whether the output value changes from 1 to 0 or 0 to 1. If it is determined at block 406 that the output value changes from 1 to 0, the method proceeds to block 408. At this time, the object has left the position and the timestamp is recorded as
If the value changes from 0 to 1 at block 406, it indicates there is an object that has arrived. At block 410, a message is popped out from a previous linear data structure (e.g., the bottom of the queue Queue
i-1) and the ID of the object is extracted from Queue
i-1 (in particular, from the message that has been popped out) . The timestamp is recorded as
at block 412. It should be appreciated that although 1 represents the arrival of the object and 0 indicates no arrival of the object as explained above, other numbers also may be used to indicate corresponding meanings. For example, 0 may indicate the arrival of the object while 1 may indicate no arrival of the object.
At block 414, it is determined whether the time of arrival of the object matches an expected time of arrival. For example, the object may be taken away from the pipeline or a new object may be added into the pipeline, so it is possible that the detected time of arrival of the object does not match the expected time of arrival, and an abnormal situation occurs.
If it is determined at block 414 that the time of arrival of the object matches the expected time of arrival, the method 400 proceeds to block 416, at which a new message is generated based on the ID of the object and
Alternatively, the message may include the ID of the object only. At block 418, a new message is pushed to a linear data structure at Detector
i. For example, a new message is pushed to the top of the queue Queue
i as a new element of Queue
i.
If it is determined at block 414 that the time of arrival of the object does not match the expected time of arrival, the method 400 proceeds to block 420, at which the details of the abnormal situation are determined. For example, it may be determined whether the object arrives at the position earlier or later than the expected time of arrival. If it is determined at block 420 that the object arrives at the position later than the expected time of arrival, this is a timeout situation, which will be described in detail below with reference to Fig. 5. In such case, the method 400 proceeds to block 422, at which one or more timeout IDs are pushed to a linear data structure (e.g., queue or stack) for an abnormal object of Detector
i. In addition, the expected time of arrival also may be pushed to the abnormal linear data structure. If it is determined at block 420 that the object arrives at the position later than the expected time of arrival, the method 400 proceeds to block 416, to determine the ID of the object and push a message including the ID and the optional time of arrival
of the object to the queue Queue
i.
In case of timeout, by traversing elements in Queue
i-1 at a previous position, a decision is made as to which element has an expected time of arrival matching the time of arrival of the object. For example, the queue may be traversed from the element at the tail (i.e., the element pushed to the queue at the earliest time) . As to the stack, its traversal may start from the element at the beginning (i.e., the element pushed to the stack at the most recent time) . In this way, the ID of the element may be determined as the ID of the object.
If it is determined at block 420 that the object arrives at the position earlier than the expected time of arrival, this indicates a situation where an object is inserted. Such situation is described in detail below with reference to Fig. 6. In the above situation, the method 400 proceeds to block 424, at which a message including the ID and the time of arrival
of the object is generated. It should be understood that the ID of the object may be defined in a way different from the normal objects, and may be re-defined at check points. For example, inserted object and regular object may be defined by different encoding manners. At block 426, the message is pushed to the linear data structure at Detector
i. For example, the message is pushed to the top of Queue
i as the new element of the Queue
i.
In some embodiments, a time interval is calculated by
to determine whether the movement of the object between two positions is considered timeout. To facilitate the calculation, the process may be further simplified, i.e., the movement time interval is calculated only using the timestamp indicating the entry into the detector, i.e.,
Apparently,
where d is a dimension of the object in a movement direction and
indicates an average moving speed between the two positions. Alternatively, the movement interval also may be calculated using a timestamp indicating the exit from the detector, i.e.,
As the timestamps of the object entering each position are recorded in corresponding queues, the time interval, for example, of the object 3 indicated in Fig. 3 moving from Detector
i-1 to Detector
i may be calculated according to
where
indicates a timestamp of the first element of Queue
i (i.e., the topmost element or latest element pushed to Queue
i) and
is a timestamp of the last element of Queue
i-1 (i.e., the bottommost element or element to be popped from Queue
i-1) , wherein n
i-1=len (Queue
i-1) -1.
For a given cycle in the production, the time interval for each object moving from one position to the next position is substantially the same. In case of an abnormal situation, for example, an operator takes away the object or breaks the object during transmission, a timeout situation may occur.
Fig. 5 illustrates an example of timeout. If the distance between Detector
i-1 and Detector
i is l
i and the average moving speed therebetween is
then the moving time t
i equals to
Aslight deviation may be induced due to the unstable transmission speed.
Assuming that the object 3 (i.e., object with ID 3) is taken away from a transmission belt, the actual moving time
equals to
because
in fact is the time of arrival of object 4 and g
n is a gap between the object 3 and the object 4 plus the dimension of the object in the direction of movement. Accordingly,
may be defined as a reference time for timeout criterion.
here indicates the buffer time considering that the speed is not absolutely stable.
usually is an empirical value and smaller than
The reference time
also reflects a production cycle of the process (between Detector
i-1 and Detector
i) .
If t′
i is calculated by subtracting
from
then t′
i is closest to
It may be used for determining the ID of the object that actually arrives at Detector
i in case of the timeout. For example, the above approach is quite useful when removing a plurality of objects. The actual ID of the object at Detector
i may be determined by calculating t
i with the minimum deviation from
In some embodiments, since the average moving speed
cannot be easily obtained, the reference time
can also be determined by statistics or machine learning without knowing details of kinematics inside the module. For example, an average value of the time spent by a given number of objects (e.g., five) on moving from Detector
i-1 to Detector
i may be calculated by a statistical approach. In addition, the moving time of respective objects may also be continuously recorded to determine outliers or changes of the reference time caused by adjustment of the moving speed.
For example, the timeout may be determined by the following formulas:
here j is an index of elements in Queue
i-1 to indicate the actual detected object. As such, the detail of kinematics inside the module may be deduced by calculating the minimum moving time interval.
In some embodiments, because of the use of queue, the element at the tail of Queue
i-1, i.e., the element first entering Queue
i-1, is also the first arriving at Detector
i. As observed, in the previous formulas, all elements of Queue
i-1, including the elements at the tail, are traversed to calculate a time closest to
in case of timeout. This is because if the element at the tail of the queue still obtains the minimum value (i.e., j=len (Queue
i-1) -1) during the timeout, it may indicate a suspension in the transmission.
if j<len (Queue
i-1) -1, it means that one or more objects leave the moving queue, and elements (index > j) that enter the Queue
i-1 before the j-th element are pushed to the abnormal linear data structure, i.e., abnormal queue or abnormal stack.
Rather than being simply deleted, the abnormal elements are moved to the abnormal linear data structure (e.g., abnormal queue or abnormal stack) to be further examined and tracked. As the abnormal elements include timestamps, they may be correlated with the abnormal situations in the actual production to find out causes.
Alternatively, abnormalities may be recorded by marking. For example, time of occurrence, time interval, position and cause of the abnormalities may be marked to be correlated with the abnormal elements.
In addition, object information under different abnormal situations may be recorded using a plurality of abnormal queues, such as a queue of broken objects, a queue of defective products and a queue of removed objects etc. It is certain that other information may also be obtained for classifying the abnormal situations, e.g., programmable logic controller (PLC) signal indicative of door opening and test results of examination device (NOK) etc. Accordingly, the abnormal queues are highly customized since different production lines may have various abnormalities. However, the abnormal situations may be classified by a simple filter, i.e., timeout plus condition A/condition B/…. The idea of the embodiments of the present disclosure is described above only with reference to the abnormal queues. However, it should be understood that the all of the above abnormal queues may be replaced with other linear data structures, such as abnormal stack etc.
In some embodiments, an abnormal queue may be created for each section of the production line (e.g., between Detector
i-1 and Detector
i) . Afterwards, an algorithm is employed to classify the abnormal objects by correlating with abnormal signals (e.g., alarm) . For example, abnormal data or abnormal flows may be classified using a machine learning algorithm.
The classification is carried out almost immediately after the determination of timeout and automatic signal reading functions such as PLC are also used. Therefore, the abnormal flow can be effectively managed. The classified data may be provided for subsequent statistical analysis and predictive maintenance.
In some embodiments, an object may be placed back to the production line after being removed. Fig. 6 illustrates a schematic diagram of a tracking method under the above situation in accordance with some embodiments of the present disclosure. As shown in Fig. 6, the object 7 is inserted into the moving sequence and placed in front of the object 3. In such case, when Detector
i has a new detection value, t
i is equal to
For example, two conditions may be employed for determining the situation as shown in the following formulas:
here,
and
respectively are a current timestamp and a next timestamp of the object detected by Detector
i, and
is the last timestamp of the object detected by Detector
i-1, and n
i-1=len (Queue
i-1) -1. In this case, the object ID in process and
form a new element, which is pushed to the top of Queue
i. The object ID in process may be defined in a way different from a normal object and also may be redefined at the check point.
Embodiments for inserting a single object into the production line are introduced above with reference to Fig. 6. Those skilled in the art should understand that the process of inserting a plurality of objects concurrently is similar to the determination of timeout when removing a plurality of objects.
In some embodiments, the accuracy of the above mentioned virtual tracking may be verified by cross-checking. For example, the cross-checking may be conducted using the count of objects. That is, the number of objects entering a work station minus the number of objects being removed and further plus the number of reinjected objects and further minus the number of damaged objects equals to the number of objects at the work station.
For example, one or more check points may be set up. The object may be provided thereon with a physical identifier, e.g., two-dimensional code and barcode etc. For example, if the ID is printed on the object in the form of Data Matrix Code (DMC) , a scanner may be mounted at a particular position as a check point to examine whether the actual ID sequence number is consistent with the expected ID sequence number. If the examination result indicates inconsistency, the queue may be readjusted based on the actual scanning result. At this moment, it is examined whether the configuration of the virtual tracking algorithm is correct, e.g., whether the setting value of
is reasonable. The idea of the embodiments of the present disclosure is described above with reference to the queue as an example. However, it should be understood that the queue also may be substituted by other suitable linear data structures, such as stack.
In the embodiments of the present disclosure, the check point is used as means of verification, rather than the basis for traceability. In fact, the costs for implementing traceability solely based on scanners or RFID readers are huge. In some harsh conditions, the devices cannot be mounted or used (for example, RFID tag cannot survive in an environment over 400℃) . Therefore, the virtual tracking, without any doubts, has advantages in flexibility and cost-saving aspects.
However, under certain circumstances, check point is also necessary. In other words, when the moving sequence is interrupted and the sequence of the objects are manually damaged, the sequence of the ID in the linear data structure, such as queue or stack, may be reorganized by subsequently setting the check point.
In the applications of the production traceability, it is usually required to correlate the object ID with process parameters of each process, so as to link the indicators (e.g., product quality) with the production process, for analyzing product defects and optimizing process control.
Fig. 7 illustrates an example of correlating the object ID to the process parameter (s) . Since the distance between the sensor Sensor
k and the closest detector Detector
i is fixed, corresponding process parameters may be derived and extracted using the distance l
k and the timestamp
For example, that is the value measured at
or the value measured at the time closest to
depending on the sampling frequency of Sensor
k. The sampling frequency may also be set using the production cycle
to help associate the object ID and the process parameters.
The value of some process parameters may differ greatly in the presence or absence of the object, e.g., the surface temperature of the object. The process parameter sensor of the above type also may be viewed as object detector. For example, a queue may be allocated to this object detector and the elements in the queue also include measurement values of the process parameters in addition to the object ID and the timestamp.
The virtual traceability system may be easily deployed to the production line by the modular design. For example, object detectors are mounted at key stations of the production line and then are connected to edge computing devices or other computing devices via industrial networks. The virtual tracking program may be deployed on the computing devices, which are implemented at various stations in a distributed manner and communicatively interconnected via a network. Alternatively, the computing devices may also be implemented in a centralized way and receive detection signals from various object detectors to make a determination.
In some embodiments, the various sensors, PLC and the like may be connected to the network, to manage the abnormal flows and correlate the object ID with the production conditions. Further, in the course of tracking an object, the ID of the object, the timestamp of the object entering each detection position and related process parameters and measurement results also may be written into a database, to establish a product-centric database.
Fig. 8 illustrates a flowchart of a tracking method 800 in accordance with some embodiments of the present disclosure. Fig. 8 may be implemented by a computing device arranged at the station of the detector Detector
i as shown in Fig. 1.
At block 802, it is determined whether a first object arrives at a first position. For example, the first position may be where Detector
i is located as shown in Fig. 3 and the first object may be object 3. It is certain that the first position may also be any other suitable positions on the production line, e.g., the position where Detector
i-1 is located.
At block 804, in response to determining that the first object arrives at the first position, an identifier of the first object is determined. In some embodiments, the identifier of the first object may be determined from at Detector
i-1. For example, the identifier of the object (i.e., ID 3) may be obtained from Queue
i-1 at Detector
i-1.
At block 806, a first message including the identifier of the first object is generated. The first message may include the identifier of the first object, e.g., ID 3, and may further include the time of arrival of the first object at the first position, such as the time of ID 3 shown in Fig. 3.
At block 808, a second message at a second position upstream of the first position is caused to be moved, the second message including the identifier of the first object. As shown in Fig. 3, the second position may be where Detector
i-1 is located. For example, the message including ID 3 may be popped up from Queue
i-1. The message is either directly deleted, or moved to a further data structure (e.g., a further queue) at the second position or other storage space. It should be understood that although the sequence is indicated in Fig. 8, blocks 806 and 808 may be implemented in a reverse order or in parallel.
For example, the first message may be pushed to the linear data structure at the first position and the second message is caused to be popped up from the linear data structure at the second position. The linear data structure may be implemented by a queue or a stack. Alternatively, any other suitable data structures also may be employed.
In some embodiments, the method 800 further includes: determining an expected time of arrival of the second object at the first position; and in response to determining that the time when a third object arrives at the first position does not match the expected time of arrival, generating a third message indicating the second object does not arrive at the first position as expected. The third message may include the identifier of the second object and optionally the expected time of arrival of the second object at the first position. In this way, abnormality detection may be implemented, as indicated by block 414 of Fig. 4.
In some embodiments, determining the expected time of arrival includes: determining time of arrival of the second object at the second position, an average moving speed between the first position and the second position and a distance between the first position and the second position; and determining the expected time of arrival based on the time of arrival of the second object at the second position, the average moving speed between the first position and the second position and the distance between the first position and the second position.
In some embodiments, determining the expected time of arrival includes: determining a reference movement time between the first position and the second position by statistics or machine learning; and determining the expected time of arrival based on the reference movement time.
In some embodiments, the time of arrival of the third object at the first position not matching the expected time of arrival includes: the third object arrives at the first position after a time window defined by the expected time of arrival, the third message includes identifier of the second object and expected time of arrival of the second object at the first position. In addition, the third message is pushed to an abnormal linear data structure at the first position; the identifier of the third object is determined and a fourth message including the identifier of the third object is generated; and the fourth message is pushed to the linear data structure at the first position. In this way, the timeout detection is implemented. For example, the timeout detection may be performed by the method shown by Figs. 4-5.
In some embodiments, the time of arrival of the third object at the first position not matching the expected time of arrival includes: the third object arrives at the first position before a time window defined by the expected time of arrival, the third message includes an identifier of the third object and time of arrival of the third object at the first position. The method 800 further includes pushing the third message to the linear data structure at the first position. The identifier of the third object may be obtained and defined in a way different from the regular objects, so as to detect and track the reinjected objects.
In some embodiments, the third message may be correlated to abnormal signals associated with the first position at the expected time of arrival of the second object. In this way, the cause for the abnormality may be analyzed to facilitate subsequent improvements in the tracking method and/or process flow.
In some embodiments, the method 800 further includes: correlating one or more process parameters of a process associated with the first position to the first object based on the identifier of the first object. Accordingly, a product may be correlated to various process parameters to provide convenient query and product traceability.
In some embodiments, the method 800 further includes determining whether a fourth object arrives at the second position; in response to determining that the fourth object arrives at the second position, determining an identifier of the fourth object; generating a fifth message including the identifier of the fourth object; and causing a sixth message at a third position upstream of the second position to be moved, the sixth message including the identifier of the fourth object. The second position may be where Detector
i-1 is located as indicated by Fig. 3 and the third position may be a position of an upstream Detector
i-2.
In some embodiments, the first object includes a physical identifier, e.g., two-dimensional code and barcode etc. The method 800 includes extracting from the first object the physical identifier of the first object; and determining whether the physical identifier extracted from the first object is consistent with the identifier obtained from at the second position for cross-checking or cross-examination. For example, the physical identifier may be extracted from the first object by code reading.
In accordance with embodiments of the present disclosure, product traceability can be quickly deployed to respective stations on the production line by a modular design. In addition, identifiers and optional timestamps of the products at each section of the production line are recorded using the output signals of the object detector. In the embodiments of the present disclosure, new stations are allowed to be quickly added to the tracking process, and it is also convenient to modify, skip, and delete tracking of one or more sections. The above solution is not strict with the production line. In addition, the solution may be suitable for various production lines and can be quickly deployed to different production lines.
It brings a great benefit to quality control and quick tracking and analysis of product failure when an identifier is printed on a product (e.g., component or part) to provide related information. Accordingly, users can easily obtain the related information of the product to improve the production process using the components or parts and further advance to intelligent manufacturing.
By means of modular configuration, embodiments of the present disclosure may be applied to various complicated pipelines. For example, Fig. 9 illustrates a schematic diagram of a production line system 900 in accordance with some embodiments. In the production line system 900, detectors are set at a plurality of stations and a corresponding module is also disposed at each detector. For example, according to Fig. 9, FIFO 901 indicates a module at a station for implementing the method and functions illustrated in Figs. 1-8. FIFO (901 and 904) , FIFO (902 and 905) and FIFO (903 and 906) form respective upstream and downstream pipelines. Three sub-pipelines are combined at block 907 and further split into two sub-pipelines at block 908, i.e., LIFO 909 and 910.
Fig. 10 illustrates a schematic block diagram of a device 1000 for implementing embodiments of the present disclosure. The method 400 indicated in Fig. 4 and the method 800 shown by Fig. 8 may be carried out by the device 1000. The device 1000 may be implemented at each detector or may be communicatively connected to each detector.
As shown in Fig. 10, the device 1000 comprises a central process unit (CPU) 1001, which can execute various suitable actions and processing based on the computer program instructions stored in the read-only memory (ROM) 1002 or computer program instructions loaded in the random-access memory (RAM) 1003. The RAM 1003 can also store all kinds of programs and data required by the operation of the device 1000. CPU 1001, ROM 1002 and RAM 1003 are connected to each other via a bus 1004. The input/output (I/O) interface 1005 is also connected to the bus 1004.
A plurality of components in the device 1000 is connected to the I/O interface 1005, including: an input unit 1006, such as keyboard, mouse and the like; an output unit 1007, e.g., various kinds of display and loudspeakers etc.; a storage unit 1008, such as disk and optical disk etc.; and a communication unit 1009, such as network card, modem, wireless transceiver and the like. The communication unit 1009 allows the device 1000 to exchange information/data with other devices via the computer network, such as Internet, and/or various telecommunication networks.
The above described procedure and processing, such as method 400 or 800, can be executed by the processing unit 1001. For example, in some embodiments, the method 400 or 800 can be implemented as a computer software program tangibly included in the machine-readable medium, e.g., storage unit 1008. In some embodiments, the computer program can be partially or fully loaded and/or mounted to the apparatus 1000 via ROM 1002 and/or communication unit 1009. When the computer program is loaded to RAM 1003 and executed by the CPU 1001, one or more actions of the above described method 400 or 800 can be implemented. Alternatively, in other embodiments, the CPU 1001 may be configured in any other suitable ways (e.g., by means of firmware) to execute the method 400 or 800.
The present disclosure can be method, device, system and/or computer program product. The computer program product can include a computer-readable storage medium, on which the computer-readable program instructions for executing various aspects of the present disclosure are loaded.
The computer-readable storage medium can be a tangible apparatus that maintains and stores instructions utilized by the instruction executing apparatuses. The computer-readable storage medium can be, but not limited to, such as electrical storage device, magnetic storage device, optical storage device, electromagnetic storage device, semiconductor storage device or any appropriate combinations of the above. More concrete examples of the computer-readable storage medium (non-exhaustive list) include: portable computer disk, hard disk, random-access memory (RAM) , read-only memory (ROM) , erasable programmable read-only memory (EPROM or flash) , static random-access memory (SRAM) , portable compact disk read-only memory (CD-ROM) , digital versatile disk (DVD) , memory stick, floppy disk, mechanical coding devices, punched card stored with instructions thereon, or a projection in a slot, and any appropriate combinations of the above. The computer-readable storage medium utilized here is not interpreted as transient signals per se, such as radio waves or freely propagated electromagnetic waves, electromagnetic waves propagated via waveguide or other transmission media (such as optical pulses via fiber-optic cables) , or electric signals propagated via electric wires.
The described computer-readable program instruction can be downloaded from the computer-readable storage medium to each computing/processing device, or to an external computer or external storage via Internet, local area network, wide area network and/or wireless network. The network can comprise copper-transmitted cable, optical fiber transmission, wireless transmission, router, firewall, switch, network gate computer and/or edge server. The network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium of each computing/processing device.
The computer program instructions for executing operations of the present disclosure can be assembly instructions, instructions of instruction set architecture (ISA) , machine instructions, machine-related instructions, microcodes, firmware instructions, state setting data, or source codes or target codes written in any combinations of one or more programming languages, wherein the programming languages comprise object-oriented programming languages, e.g., Smalltalk, Python, C++ and so on, and traditional procedural programming languages, such as “C” language or similar programming languages. The computer-readable program instructions can be implemented fully on the user computer, partially on the user computer, as an independent software package, partially on the user computer and partially on the remote computer, or completely on the remote computer or server. In the case where remote computer is involved, the remote computer can be connected to the user computer via any type of networks, including local area network (LAN) and wide area network (WAN) , or to the external computer (e.g., connected via Internet using the Internet service provider) . In some embodiments, state information of the computer-readable program instructions is used to customize an electronic circuit, e.g., programmable logic circuit, field programmable gate array (FPGA) or programmable logic array (PLA) . The electronic circuit can execute computer-readable program instructions to implement various aspects of the present disclosure.
Various aspects of the present disclosure are described here with reference to flow chart and/or block diagram of method, device (system) and computer program products according to embodiments of the present disclosure. It should be understood that each block of the flow chart and/or block diagram and the combination of various blocks in the flow chart and/or block diagram can be implemented by computer-readable program instructions.
The computer-readable program instructions can be provided to the processing unit of general-purpose computer, dedicated computer or other programmable data processing apparatuses to manufacture a machine, such that the instructions that, when executed by the processing unit of the computer or other programmable data processing apparatuses, generate an apparatus for implementing functions/actions stipulated in one or more blocks in the flow chart and/or block diagram. The computer-readable program instructions can also be stored in the computer-readable storage medium and cause the computer, programmable data processing apparatus and/or other devices to work in a particular manner, such that the computer-readable medium stored with instructions comprises an article of manufacture, including instructions for implementing various aspects of the functions/actions stipulated in one or more blocks of the flow chart and/or block diagram.
The computer-readable program instructions can also be loaded into computer, other programmable data processing apparatuses or other devices, so as to execute a series of operation steps on the computer, other programmable data processing apparatuses or other devices to generate a computer-implemented procedure. Therefore, the instructions executed on the computer, other programmable data processing apparatuses or other devices implement functions/actions stipulated in one or more blocks of the flow chart and/or block diagram.
The flow chart and block diagram in the drawings illustrate system architecture, functions and operations that may be implemented by system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each block in the flow chart or block diagram can represent a module, a part of program segment or code, wherein the module and the part of program segment or code include one or more executable instructions for performing stipulated logic functions. In some alternative implementations, it should be noted that the functions indicated in the block can also take place in an order different from the one indicated in the drawings. For example, two successive blocks can be in fact executed in parallel or sometimes in a reverse order dependent on the involved functions. It should also be noted that each block in the block diagram and/or flow chart and combinations of the blocks in the block diagram and/or flow chart can be implemented by a hardware-based system exclusive for executing stipulated functions or actions, or by a combination of dedicated hardware and computer instructions.
Various embodiments of the present disclosure have been described above and the above description is only exemplary rather than exhaustive and is not limited to the embodiments of the present disclosure. Many modifications and alterations, without deviating from the scope and spirit of the explained various embodiments, are obvious for those skilled in the art. The selection of terms in the text aims to best explain principles and actual applications of each embodiment and technical improvements made in the market by each embodiment, or enable those ordinary skilled in the art to understand embodiments of the present disclosure.
Claims (16)
- A computer-implemented method for product traceability, comprising:determining whether a first object arrives at a first position;in response to determining that the first object arrives at the first position, determining an identifier of the first object;generating a first message including the identifier of the first object; andcausing a second message at a second position upstream of the first position to be moved, the second message including the identifier of the first object.
- The method of claim 1, further comprising pushing the first message to a linear data structure at the first position, andwherein causing the second message to be moved comprises causing the second message to be popped from a linear data structure at the second position.
- The method of claim 2, wherein the linear data structure comprises a queue or a stack.
- The method of claim 1, further comprising:determining an expected time of arrival of a second object at the first position; andin response to determining that the time when a third object arrives at the first position does not match the expected time of arrival, generating a third message indicating the second object does not arrive at the first position as expected.
- The method of claim 4, wherein determining the expected time of arrival comprises:determining time of arrival of the second object at the second position, an average speed of movement between the first and second positions, and a distance between the first and second positions; anddetermining the expected time of arrival based on the time of arrival of the second object at the second position, the average speed of movement between the first and second positions, and the distance between the first and second positions.
- The method of claim 4, wherein determining the expected time of arrival comprises:determining a reference movement time between the first and second positions by statistics or machine learning; anddetermining the expected time of arrival based on the reference movement time.
- The method of claim 4, wherein when the third object arrives at the first position after a time window defined by the expected time of arrival, and the third message comprises an identifier of the second object and the expected time of arrival of the second object at the first position;the method further comprising:pushing the third message to an abnormal linear data structure at the first position;determining an identifier of the third object and generating a fourth message comprising the identifier of the third object; andpushing the fourth message to the linear data structure at the first position.
- The method of claim 4, wherein when the third object arrives at the first position before a time window defined by the expected time of arrival, and the third message comprises an identifier of the third object and the expected time of arrival of the third object at the first position,the method further comprising pushing the third message to the linear data structure at the first position.
- The method of claim 4, further comprising:correlating the third message to abnormal signals associated with the first position at the expected time of arrival of the second object.
- The method of any of claims 1 to 8, further comprising:correlating, based on the identifier of the first object, a process parameter of a process associated with the first position to the first object.
- The method of any of claims 1 to 8, further comprising:determining whether a fourth object arrives at the second position;in response to determining that the fourth object arrives at the second position, determining an identifier of the fourth object;generating a fifth message comprising the identifier of the fourth object; andcausing a sixth message at a third position upstream of the second position to be moved, the sixth message comprising the identifier of the fourth object.
- The method of any of claims 1 to 8, wherein determining the identifier of the first object comprises:obtaining the identifier of the first object from at the second position.
- The method of claim 12, wherein the first object comprises a physical identifier and the method further comprises:extracting the physical identifier of the first object from the first object; anddetermining whether the physical identifier extracted from the first object is consistent with the identifier obtained from at the second position for cross-examination.
- A computing device, comprising:a processing unit, anda memory coupled to the processing unit and comprising instructions stored thereon, the instructions, when executed by the processing unit, causing the computing device to perform the method of any of claims 1-13.
- A system for product traceability, comprising:a plurality of modules disposed in a process flow, wherein each of the plurality of modules comprises:an object detector configured to detect whether an object arrives at a position of the object detector; andthe computing device of claim 14 coupled to the object detector.
- A computer-readable storage medium comprising computer-executable instructions stored thereon, the computer-executable instructions, when executed by at least one processor, causing the at least one processor to perform the method of any of claims 1-13.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010617284.4 | 2020-06-30 | ||
CN202010617284.4A CN113138588A (en) | 2020-06-30 | 2020-06-30 | Method, apparatus and computer-readable storage medium for product tracing |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022002081A1 true WO2022002081A1 (en) | 2022-01-06 |
Family
ID=76809304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/103297 WO2022002081A1 (en) | 2020-06-30 | 2021-06-29 | Method, device, and computer-readable storage medium for production traceability |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113138588A (en) |
WO (1) | WO2022002081A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114329118A (en) * | 2022-01-13 | 2022-04-12 | 湖南视比特机器人有限公司 | Part tracking and positioning method, central control system, PLC system and storage medium |
CN116109209B (en) * | 2023-04-11 | 2023-06-30 | 广东广泽实业有限公司 | Electric power product quality tracing and tracking management method and system based on big data |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005053661A (en) * | 2003-08-05 | 2005-03-03 | Toyota Industries Corp | Physical distribution system |
WO2013168187A2 (en) * | 2012-05-07 | 2013-11-14 | Italia Distribuzioni S.R.L. | Method and apparatus for tracking postal articles delivered through a "door to door" postal distribution |
CN104221035A (en) * | 2012-03-06 | 2014-12-17 | A-1包装解决方案有限公司 | A radio frequency identification system for tracking and managing materials in a manufacturing process |
US20190112086A1 (en) * | 2016-03-25 | 2019-04-18 | Gebo Cermex Canada Inc. | Transfer unit and process |
CN111126523A (en) * | 2019-11-30 | 2020-05-08 | 富泰华精密电子(郑州)有限公司 | Object information tracing method and device |
-
2020
- 2020-06-30 CN CN202010617284.4A patent/CN113138588A/en active Pending
-
2021
- 2021-06-29 WO PCT/CN2021/103297 patent/WO2022002081A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005053661A (en) * | 2003-08-05 | 2005-03-03 | Toyota Industries Corp | Physical distribution system |
CN104221035A (en) * | 2012-03-06 | 2014-12-17 | A-1包装解决方案有限公司 | A radio frequency identification system for tracking and managing materials in a manufacturing process |
WO2013168187A2 (en) * | 2012-05-07 | 2013-11-14 | Italia Distribuzioni S.R.L. | Method and apparatus for tracking postal articles delivered through a "door to door" postal distribution |
US20190112086A1 (en) * | 2016-03-25 | 2019-04-18 | Gebo Cermex Canada Inc. | Transfer unit and process |
CN111126523A (en) * | 2019-11-30 | 2020-05-08 | 富泰华精密电子(郑州)有限公司 | Object information tracing method and device |
Also Published As
Publication number | Publication date |
---|---|
CN113138588A (en) | 2021-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022002081A1 (en) | Method, device, and computer-readable storage medium for production traceability | |
CN111507147A (en) | Intelligent inspection method and device, computer equipment and storage medium | |
CN110802030B (en) | Package sorting method, device and equipment and readable storage medium | |
EP3751245A1 (en) | Smart sensor measurement system | |
CN115629127A (en) | Container defect analysis method, device and equipment and readable storage medium | |
US11954131B2 (en) | Time-series data processing method | |
JP6135192B2 (en) | Time series data abnormality monitoring apparatus, abnormality monitoring method and program | |
KR101499456B1 (en) | Facility anomaly detection System and Method using image | |
CN113781460A (en) | Cigarette packet appearance defect online detection method and device, electronic equipment and storage medium | |
CN117668737A (en) | Pipeline detection data fault early warning checking method and related device | |
CN113298469A (en) | Abnormal data detection method and device, electronic equipment and storage medium | |
CN102015161B (en) | Porosity detection | |
CN117714175A (en) | HTTP request smuggling hole detection method based on crowdsourcing test feedback improvement | |
CN117196441A (en) | Luggage automatic identification tracking system applied to airport | |
KR102444941B1 (en) | Gateway apparatus, and control method thereof | |
CN115512283A (en) | Parcel image processing method and device, computer equipment and storage medium | |
CN114283319A (en) | Locomotive wheel set tread stripping identification method | |
CN114265359A (en) | Intelligent detection system and method for abnormal running time of conveying equipment | |
CN113269106A (en) | Method and device for detecting state of conveyor belt of conveying tool | |
JP7257470B2 (en) | Defect inspection device, defect inspection method, and prediction model generation method | |
CN110929425B (en) | Soft measurement method for longitudinal elongation of paper based on Lasso algorithm | |
RU2784683C1 (en) | Method and device for monitoring technical condition of conveyor belt elements | |
US12111328B2 (en) | Method for classifying an identification tag on a sample tube containing a sample and an automated laboratory system | |
CN113333301B (en) | Cross-band control method, system, computer device, and storage medium | |
WO2023234805A1 (en) | Monitoring the technical condition of conveyor belt components |
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: 21832265 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21832265 Country of ref document: EP Kind code of ref document: A1 |