The present disclosure relates to a stock level detection apparatus. More specifically, the present disclosure is directed to a real-time on-shelf stock detection apparatus.
Typically, stocking processes to determine a level of products on a shelf is a highly manual process that involved store associates physically traversing through all aisles of a store and noting what products are low or out-of-stock. In addition, there is no standardized procedure of indicating the stock level situation on store shelves as each store associate handles the determination of stock level with different techniques.
One approach to resolve the above is to automate the stock level situation and use cameras with a computer vision algorithm to determine when a product is fully out-of-stock. However, this approach requires large amounts of data and high processing power to analyze and generate a prediction to process the data. The other problem is potential privacy concerns with having many cameras spread out across the retail store. Even with proper data security measures in place, the perception of cameras monitoring store activity can lead associates and customers to believe the cameras are there to monitor them. In addition, while camera solutions are capable of determining if a product is in-stock or out-of-stock, they generally cannot provide an amount of stock remaining. That is, existing camera solutions only determine when a certain item is completely unstocked as opposed to when any number of items greater than zero remain on the shelf.
Another option for camera-based systems is to mount cameras to a robot that patrols store aisles. However, additional drawbacks are also associated with this solution, including results that are not real-time or near real-time and still introduces a solution that still visibly interacts with the customers and associates.
Another approach involves sensors placed directly on the shelf. Current designs utilize light sensors, weight sensors, touch sensors, and distance sensors to collect data from the environment. Each of these sensor types can be used in numerous ways to collect real-world information to support different design choices. However, many of these designs present shortcomings, such as: expensive cost, difficult installation, and not enough data resolution to make accurate predictions. Most of these solutions require an array of sensors that are strategically spaced out to capture the data needed to determine an amount and/or percentage of stock remaining per product type. Because so many sensors are needed, the increased cost is not just from a raw material perspective, but also employee time to set up arrays of sensors. In addition, the sensor configuration and placement are highly dependent on the size and shape of the product being sensed. Furthermore, depending on the sensors used, it may only be possible to determine the stock level on a per shelf basis and not on a per item basis.
In view of the problems associated with conventional devices for determining stock level detection, there remains a need to provide a stock level detection apparatus to determine any number of items remaining on a shelf while communicating that information in real-time.
In an exemplary embodiment, an inventory detection system includes a sensor module disposed on a first shelf, wherein the first shelf includes a top surface and a bottom surface opposite the top surface, the sensor module includes a distance sensor to measure a distance value to an item at an inventory location on a second shelf located below the first shelf, a linear movement system mounted to the bottom surface of the first shelf, the linear movement system being configured to translate the sensor module along a horizontal direction of the first shelf so as to acquire the measured distance value, and a control unit configured to control the linear movement of the sensor module and collect data associated with the measured distance value. The control unit is configured to determine items remaining on the second shelf based on a comparison of the measured distance value to a distance threshold to define an inventory assessment.
In another exemplary embodiment, a method of assessing inventory in a shelving unit comprises measuring, by a sensor module, a distance value to an item at an inventory location on a first shelf, wherein the sensor module is disposed on a second shelf, which is above the first shelf, translating, via a linear movement system, the sensor module along a horizontal direction of the second shelf so as to acquire the measured distance value, wherein the linear movement system is mounted to a bottom surface of the second shelf, controlling, via a control unit, the linear movement of the sensor module to collect data associated with the measured distance value, and determining, by the control unit, items remaining on the first shelf based on a comparison of the measured distance value to a distance threshold to define an inventory assessment.
Other features and advantages of the present invention will be apparent from the following more detailed description of the preferred embodiment which illustrates, by way of example, the principles of the invention.
It should be noted that these Figures are intended to illustrate the general characteristics of methods, structure and/or materials utilized in certain example embodiments and to supplement the written description provided below. These drawings are not, however, to scale and may not precisely reflect the precise structural or performance characteristics of any given embodiment, and should not be interpreted as defining or limiting the range of values or properties encompassed by example embodiments. For example, the relative thicknesses and positioning of layers, regions and/or structural elements may be reduced or exaggerated for clarity. The use of similar or identical reference numbers in the various drawings is intended to indicate the presence of a similar or identical element or feature.
The present disclosure provides store associates in a retail environment to receive an amount or percentage of the stock remaining of a specific product on a given shelf in real-time. This enables the store associates to respond in a preventive manner as opposed to a reactive manner and allows them to be notified when a product is running low in stock rather than after it has already run out-of-stock. Conventional devices only determine when a certain item is completely unstocked as opposed to when any number of items greater than zero remain.
Exemplary embodiments provide for horizontal/translational movement of a sensor module along the length of a retail shelf. This avoids the need for multiple arrays of sensors mounted on each shelf. Arrays of sensors present numerous challenges that are solved by a design in which the sensors move with respect to the shelf, minimizing the number of sensors per shelf, such as to three or fewer. Exemplary embodiments also can be employed with being reliant on flow racks or gravity fed shelves in order to work. The present disclosure uses a minimal number of sensors at fixed angles or on a rotating mechanism that is compatible with monitoring items on a conventional flat shelf and there is no need for exclusively relying on gravity and/or spring-based shelving systems.
According to some implementations, a Time-of-Flight (ToF) distance sensor(s) is placed on a bottom surface of an upper shelf facing the product below on a lower shelf, and monitoring the stock level in real-time. Using the ToF distance sensor to collect data about the location of items on a shelf provides predictions of stock level on a per product basis. This is made possible by mounting the ToF sensor on a moving component (i.e., a linear movement system) enabling only one sensor to capture the entire state of the shelf in combination with comparing data regarding sensor position along the shelf to planogram information.
Referring now to the drawings,
Referring to
Referring to
The distance sensor 200 may be any device capable of sensing the distance L between the distance sensor 200 and the item 150. In one exemplary embodiment, the distance sensor 200 is a light range sensor having a light transmitter (emitter) and a light receiver (collector). For example, the distance sensor 200 may be a Time-of-Flight (ToF) laser ranging sensor. It should be appreciated that other light source may be employed, such as infrared (IR) or visible light. In other implementations, the distance sensor 200 may be an ultrasonic range sensor, or any other type of range finder or proximity sensor.
In some implementations, the ToF sensor can be a direct or an indirect sensor. Direct ToF sensors send out short pulses of light that last just a few nanoseconds and then measure the time it takes for some of the emitted light to come back. Indirect ToF sensors send out continuous, modulated light and measure the phase of the reflected light to calculate the distance to an object. Some benefits of using ToF sensors are: a) a true distance measurement is obtained independent of the target size, color, and reflectance; b) accurate and high-speed distance measurement; and/or c) low power consumption. In addition, there is no in-field unit calibration required; and can be combined with additional ToF sensors to increase depth scene. Moreover, ToF sensors can be combined with other equipment such as, for example, regular color camera for color overlay.
In some implementations, the distance sensor 200 may have a detection range (i.e., measurement of distance L) of approximately 0.1 m to 1.2 m; a field of view of 15° to 25°; resolution of 1 mm, and a detection rate of at least 90%.
In some implementations, in order to capture sufficient resolution to accurately measure the stock level of a retail shelf, the distance sensor 200 can be further moved (i.e., tilted, rotated, shifted, repositioned, etc.) approximately 0° to 120° to adjust an angle of the emission light signal and its return back to the distance sensor 200, after being reflected. This provides the distance sensor 200 with a greater field of view. As shown in
Referring to
In addition to the translational motion as described above, the distance sensor 200 can further be tilted to capture even greater resolution of the stock level. As shown in
In one example embodiment, the linear movement system 301 includes support brackets 306, a support rod 307, pulleys 309a, 309b, a connecting member 310 (e.g., a belt, chain, line, etc.), and a motor 315. The support brackets 306 are positioned near the support hooks 131 of the shelf 101 and holds the support rod 307, a rod, bar or other linear article that spans the length of the shelf over which a particular sensor 200 is designed to operate, which may be a portion or the entire shelf length, along which the distance sensor 200 (typically situated within some form of housing or mount) moves. At their respective ends, the support brackets 306 further hold and support the pulleys 309a, 309b. The connecting member 310 is connected between the (driver) pulley 309a and the (driven) pulley 309b and rotates therebetween. The driver pulley 309a moves the connecting member 310 with respect to the pulleys 309a, 309b. That is, the driver pulley 309a drives the connecting member 310 due to contact between the driver pulley 309a and the connecting member 310. In an example implementation, the connecting member 310 is a rubber belt. However, other connecting means to connect the pulleys 309a, 309b together can be used, such as, for example, a rope, a cable, or the like. The driver pulley 309a is connected to the motor 315 in order to move the connecting member 310 to thereby move the distance sensor 200, as indicated by arrow T. In one example implementation, the motor 315 rotates the driver pulley 309a in either rotational direction (i.e., clockwise and counter-clockwise) and at a constant speed in order to move the distance sensor 200 in a horizontal direction in either directions. In other implementations, the motor 315 can be a variable speed motor to change the speed of movement of the distance sensor 200. Further, the motor 315 can be any type of motor capable of rotating the driver pulley 309a. For example, the motor 315 may be a DC electric motor, such as a stepper motor.
The holding device 250 includes surface portions 255 for holding distance sensors 200, respectively. In one implementation, there may be at least three surface portions 255 for holding three distance sensors 200, respectively. It should further be appreciated that more or less surface portions 255 can be employed to hold the respective distance sensors 200. In this exemplary embodiment, the holding device 250 is substantially triangular shaped. It should be appreciated that other shapes of the holding device 250 may be employed. The surface portions 255 are designed to provide enough resolution to accurately capture the stock level on the shelf. In other words, the distance sensors 200 affixed to the surface portions 255 of the holding device 250 are positioned in such a way that it allows the distance sensors 200 to cover the entire shelf from front to back. To describe differently, the holding device 250 allows for holding a plurality of distance sensors 200 to measure distance values to a predetermined region that represents an entire front to back content of the second shelf located below the first shelf. As shown in
Referring to
The holding device 270 includes a housing enclosure 271 that houses a motor 274 for moving (i.e., rotating) a sensor platform 275. The housing enclosure 271 is designed to allow for easy mounting to the shelf itself or the linear movement system 300. For example, the housing enclosure 271 is substantially rectangular shaped to engage in the back surface (underneath) the shelf for easy attachment and removal. The housing enclosure 271 is further designed to suppress noise created by components in the enclosure, such as, for example, the motor 274. The motor 274 can be any type of motor capable of rotating the sensor platform 275. In one implementation, the motor 274 may be a DC electric motor, such as a servo motor. The sensor platform 275 is configured to receive and hold the distance sensor 200 that is rotated by the motor 274. In one implementation, the motor 274 rotates the sensor platform 275 up to 180 degrees—allowing the distance sensor 200 to measure distances from front to back of the shelf. In an example implementation, while mounted to the shelf 103 via the housing enclosure 271, the sensor platform 275 is rotated from its initial position (
The sensor platform 275 includes a first portion 276a attached to the motor 274 and a second portion 276b that extends from the first portion 276a for receiving and holding the distance sensor 200. The second portion 276b is designed to engage with a corresponding portion of the distance sensor 200. In some implementations, the second portion 276b may include rails or tracks (not shown) to properly engage with the distance sensor 200. In some implementations, the second portion 276b may include a locking device (not shown) to secure the distance sensor 200 to the second portion 276b of the sensor platform 275.
Referring to
Regardless of the particular sensor housing and/or number of sensors employed with the housing, it will likewise be appreciated that the sensor housing may be translated along the length of the shelf incrementally, temporarily pausing for sensor operation at each of one or more predetermined lateral locations associated with a particular product location on the shelf, or via continuous movement, in which, for example, the time to translate across a particular product location on the shelf permits sensor operation to still poll the viewing angles needed to determine the amount of stock.
The distance sensor 60 is configured to measure a distance L measured at each inventory location. One exemplary embodiment of a distance sensor is a Time of Flight (ToF) sensor using laser scanners to measure a depth of various points in an image with infrared light, for example. This depth can be associated as the measured distance L, which can be measured from the distance sensor 60 to a surface of an underneath shelf or to a specific item. As defined herein, the measured distance L can include a distance of the distance sensor 60 having a thickness that is part of that measured distance. The distance sensor 60 includes a light emitter 63 that produces the light to bounce off a targeted item and returned to a light receiver 64. Based on a time difference, via a timer 66, between the emission of the light and its return to the light receiver 64 after being reflected by the targeted item, the distance sensor 60 is able to measure the distance L between the target item and the distance sensor 60. In some implementations, the distance sensor 60 uses travel-time to determine distance (or depth), such as, for example, time pulses or phase shift of an amplitude modulated wave. This measured distance L is then communicated to the computing system 50 to be process, which will be described herein.
The computing system 50 provides control instructions to be executed by the motor controller 60 which controls a motor driving a linear movement system or a motor driving a sensor housing that holds the distance sensor(s). The control instructions may be individually configured for each plane. That is, the control instructions may identify, for example, a single axis (i.e., a horizontal coordinate) within a two-dimensional scanning plane where the distance sensor 60 is to be placed in order to be aligned with and scan a series of inventory locations on the shelf. In other implementations, the control instructions may identify scanning positions on a two-axis system (i.e., XY coordinate). The control instructions may further provide instructions to a position module 77 and a speed module 78 of the motor controller 60. The position module 77 determines a position(s) of the distance sensor 60 to translate along the length (i.e., horizontal direction) of the shelf, which may be incrementally for sensor operation at each of one or more predetermined lateral locations associated with a particular product location on the shelf, or via continuous movement. The speed module 78 determines the speed of the distance sensor 60 to translate along the length of the shelf. In other implementation, the speed module 78 can determine a variable speed or a constant speed.
The motor controller 70 includes a processing system 72 and a storage 73. The storage 73 may house software, such as control software to execute control instructions for managing the linear movement system and/or the sensor housing. For example, the control functionality of the motor controller 70 may be programmable, such as programmable via the computing system 50. Control software stored in the storage 73 of the motor controller 70 is executable by the processor 72 in order to carry out certain aspects of the inventory management methods and system controls described herein.
The computing system 50 includes a processor 55 and a storage system 56. The storage system 56 includes software, including inventory management module 58, and stored data 59, including data in database structure. The processor 55 loads and executes software, including the inventory management module 58, which is a software application stored in the storage system 56. The processor 55 can also access data stored in the database 59 in order to carry out the methods and control instructions described herein. Although the computing system 50 is depicted in
The storage system 56, which stores database 59, may comprise any storage media, or group of storage media, readable by processor 55, and capable of storing software and data. The storage system 56 can include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. As described above, storage system 56 may be implemented as a single storage device, but may also be implemented across multiple storage devices or subsystems located at disparate locations and communicatively connected, such as in a cloud computing system. Examples of storage media include random access memory, read only memory, optical discs, flash memory, virtual memory, and non-virtual memory, or any other medium which can be used to store the desired information and may be accessed by a processor 55.
The inventory management module 58 operates to control and produce the functionality of the inventory management system 10. For example, the inventory management module 58 determines an inventory amount based on the distance measured by the distance sensor 60 in conjunction with analyzing information about sensor position along the length of the shelf with respect to planogram information. Additionally, the inventory management module 58 may function to track any of a variety of inventory management and system parameters, and to provide information to a user regarding those aspects. For example, the inventory management module 58 may provide real time results measured during the inventory scanning process, may provide inventory notifications regarding low inventory or out-of-stock inventory based on per item basis, and/or may provide planogram compliance information. Alternatively or additionally, the inventory management module 58 may access control instructions to a linear movement system, as described herein, and may transmit such program instructions from receiver/transmitter 52 to the motor controller 70 for execution. Accordingly, the inventory management module 58 may determine when a scanning exercise should occur. For example, the inventory management module 58 may instruct scanning the inventory locations in a scanning plane once an inventory item has been removed from a shelf. For example, the system may include the distance sensor that measures a distance from the distance sensor to items on the shelf, and once an item is removed, the system scans the inventory locations for actual item inventory. Alternatively or additionally, the inventory management module 58 may instruct periodic scanning of the scanning plane. For example, the periodic scanning can occur at any interval, such as, minutes, 1 hour, 8 hours, 12 hours, 24 hours, etc.
The inventory management module 58 determines the item amount based on the distance L measured at each inventory location. Depending on the arrangement of the inventory location, the inventory management module 58 determines the item amount based on a type of item contained at the inventory location, which may be a specific item or may be determined based on a planogram for the scanning plane 12. For example, the inventory management module 58 may have information regarding the dimensions of various identified items or item types, such as item dimensions. Accordingly, the distance L measured by the distance sensor 60 can be calculated by a corresponding dimension/size of the item, i.e., the depth on the item occupying the location, to arrive at the item amount.
Further, the computing system 50 includes a display device 80 in communication to display the information executed by the inventory management module 58. The display device 80 may be a display on a device, such as a computer monitor, a laptop, a television, a smart phone, etc.
The table 84 further includes a maximum number of items indicator 86 to be tested, a number of items on shelf indicator 87 to indicate an amount of items allotted on the shelf, a percent remaining indicator 88 to indicate a percentage of items remaining on the shelf, an expected output indicator 89 to indicate an expected stock level of the items on the shelf, and an actual result indicator 90 to indicate an actual amount of stock level on the shelf. The item amount for each location may be displayed at the respective table location 84 so that the inventory across a scanning plane may be assessed, such as for stocking purposes. In addition to indicating the actual item amount, a low stock or out-of-stock indicator is provided to alert a user where the item amount is below a low inventory threshold, such as indicating that the items at that inventory location needs to be restocked. It should be appreciated that inventory item 85b also includes similar indicators as related to inventory item 85a and will not be repeated herein.
Similarly, the item amount or inventory threshold may be determined based on the distance L, such as by comparing the measured distance L to a distance threshold, such as a maximum distance value representing low inventory. Referring to the exemplary display 82 at
In some implementations, a stock level indication may be a visual alert provided at the percent remaining indicator 87. For example, the visual alert can be a color indicator that indicates an out-of-stock inventory level, with a red mark indicating out-of-stock, a very low inventory level, with an orange mark indicating low stock level, a mid-stock inventory level, with a yellow mark indicating a mid-stock level, and a full stock inventory level, with a green mark indicating full stock. It should be appreciated to represent the different color indicators,
Various other embodiments of visual or other alerts are provided in the display 82. For example, indicator 91, displayed at a lower right of the display 82, indicates the current stock level in conjunction with the actual result indicator 90 indicating the current stock level, (e.g., full stock (FS), mid-stock (MS), low stock (LS), and out-of-stock (OS)). For example,
Next, the distance sensor 60 measures various measurements at step S120, including measuring the distance L to the item(s). For example, the measured distance L can be from the distance sensor 60 to a surface of an underneath shelf (including the distance of the distance sensor 60 itself). At step S130, the measured distance L is transmitted to the computing system 50. In other implementations, the measurements may be stored at a memory on the distance sensor 60, and upon completion of a scanning process across a scanning axis or plane, all measurements may be transmitted to the computing system 50. Next, the inventory management system determines whether the inventory location on a scanning axis or in a scanning plane has been reached, or whether scanning should continue. Once all inventory locations have been scanned or scanning no longer commences, the distance sensor 60 returns to its initial position at step S140. Any stored data that was not transmitted is then communicated to the computing system 50.
Based on the received distance measurement (or depth of the item on the shelf), the inventory management module 58 can identify an amount of items remaining on the shelf based on a per item basis. The measured distance can also be described as the amount of space occupied by the items on the shelf. For example, the distance may be determined based on a distance between the distance sensor and an edge of the location, such as a front end of the shelf. The inventory amount at the inventory location is then determined at step S220 based on the measured distance. Then, at step S230, if the stock level of inventory falls below a threshold, an alert is generated to indicate that items on the location of the shelf is low or out-of-stock. For example, a percentage of remaining items remaining can be displayed or a visual alert having a color indicator to indicate a low stock or an out-of-stock inventory level is displayed (e.g., color red or orange).
In some implementations, the inventory management system may include a tag reader that reads a tag associated with each item. The tag provides an item identification identifying a retail item housed at the inventory location. In various examples, the item identification may be a general identification of the type of retail item (e.g., 16 oz pasta box, 8 oz can soup, small bag of chips, etc.). In one implementation, the tag reader may be a near field communication (NFC) reader and the tag may be an NFC tag. In other implementations, the tag reader may be any type of device capable of reading the associated tag. For example, the tag may be a barcode, QR code, or other visual code depiction, and the tag reader may be a corresponding barcode scanner or QR code scanner or imaging device. The tag is arranged at a location so as to be readable by the tag reader when the distance sensor is at the inventory location. In some implementations, the tag can be fixed to the back wall of the shelf and positioned such that the tag reader is in very close proximity to the tag.
The articles “a” and “an,” as used herein, mean one or more when applied to any feature in embodiments of the present disclosure described in the specification and claims. The use of “a” and “an” does not limit the meaning to a single feature unless such a limit is specifically stated. The article “the” preceding singular or plural nouns or noun phrases denotes a particular specified feature or particular specified features and may have a singular or plural connotation depending upon the context in which it is used. The adjective “any” means one, some, or all indiscriminately of whatever quantity.
“At least one,” as used herein, means one or more and thus includes individual components as well as mixtures/combinations.
The transitional terms “comprising”, “consisting essentially of and” “consisting of”, when used in the appended claims, in original and amended form, define the claim scope with respect to what unrecited additional claim elements or steps, if any, are excluded from the scope of the claim(s). The term “comprising” is intended to be inclusive or open-ended and does not exclude any additional, unrecited element, method, step or material. The term “consisting of” excludes any element, step or material other than those specified in the claim and, in the latter instance, impurities ordinarily associated with the specified material(s). The term “consisting essentially of” limits the scope of a claim to the specified elements, steps or material(s) and those that do not materially affect the basic and novel characteristic(s) of the claimed disclosure. All materials and methods described herein that embody the present disclosure can, in alternate embodiments, be more specifically defined by any of the transitional terms “comprising,” “consisting essentially of,” and “consisting of.”
Although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
It will be understood that, if an element is referred to as being “connected” or “coupled” to another element, it can be directly connected, or coupled, to the other element or intervening elements may be present. In contrast, if an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.).
Spatially relative terms (e.g., “beneath,” “below,” “lower,” “above,” “upper” and the like) may be used herein for ease of description to describe one element or a relationship between a feature and another element or feature as illustrated in the figures. It will be understood that the spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if the device in the figures is turned over, elements described as “below” or “beneath” other elements or features would then be oriented “above” the other elements or features. Thus, for example, the term “below” can encompass both an orientation that is above, as well as, below. The device may be otherwise oriented (rotated 90 degrees or viewed or referenced at other orientations) and the spatially relative descriptors used herein should be interpreted accordingly.
Example embodiments are described herein with reference to cross-sectional illustrations that are schematic illustrations of idealized embodiments (and intermediate structures). As such, variations from the shapes of the illustrations as a result, for example, of manufacturing techniques and/or tolerances, may be expected. Thus, example embodiments should not be construed as limited to the particular shapes of regions illustrated herein but may include deviations in shapes that result, for example, from manufacturing.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
While the disclosure has been described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the essential scope thereof. While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Number | Date | Country | |
---|---|---|---|
63363982 | May 2022 | US |