Method and system for determining the fill level of a liquid in a container - Patents.com

By using sensor devices to generate and detect audio signals and combining this data with container-specific information and models, the method accurately determines the fill level of liquids in IBCs, addressing reliability issues and reducing costs associated with maintenance and transport.

JP7662831B2Active Publication Date: 2025-04-15BASF COATINGS GMBH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023568266
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-05-03
Filing Date
2022-04-22
Publication Date
2025-04-15
Estimated Expiration
2042-04-22

AI Technical Summary

Technical Problem

Existing methods for determining the filling level of liquids in intermediate bulk containers (IBCs) are unreliable, leading to increased maintenance intervals, idle times, and costs associated with transporting empty or full IBCs.

Method used

A method using sensor devices mounted outside the IBC to generate and detect audio signals, combined with container-specific information and data-driven models, to accurately determine the fill level of liquids within the IBC.

Benefits of technology

This method provides reliable fill level determination, optimizes maintenance intervals, reduces idle times, and integrates transport of empty and full IBCs, ultimately reducing costs and shortening product cycles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007662831000002
    Figure 0007662831000002
  • Figure 0007662831000003
    Figure 0007662831000003
  • Figure 0007662831000004
    Figure 0007662831000004
Patent Text Reader

Abstract

Aspects described herein generally relate to methods and systems for non-invasively determining a fill level within a container. More specifically, aspects described herein relate to using a sensor device mounted on the outside of a container to generate and detect audio signals and using the detected audio signals in combination with container specific information and a data-driven model to determine the fill level within the container.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] Aspects described herein generally relate to methods and systems for non-invasively determining the fill level of a liquid in a container. More specifically, aspects described herein relate to using a sensor device mounted on the exterior of a container to generate and detect audio signals and using the detected audio signals in combination with container specific information and a data-driven model to determine the fill level of a liquid in the container. [Background technology]

[0002] Liquid and solid compounds such as food, ingredients, beverages, chemicals, pharmaceuticals, cosmetics, etc. are commonly stored and transported using industrial grade reusable intermediate bulk containers (IBCs). Depending on the design and construction, IBCs have a volume ranging from 500 litres up to 3000 litres. IBCs can be moved by forklift or pallet truck and are stackable by design, making them particularly suitable for the storage of liquid and solid compounds with the intent of transporting them for further use.

[0003] IBCs are available in various shapes, such as composite IBCs (also called K-IBCs), plastic IBCs, flexible IBCs, collapsible IBCs, and metal IBCs. The most common IBC is the composite IBC, which consists of a pallet with a plastic tank and a simple mesh cage or tubular frame around the plastic tank. Less common is the rigid plastic IBC, which consists of a plastic tank, also rectangular in shape, but without the metal outer container. The bladder is free-standing, so it is quite heavy in mass and has thick walls. Flexible IBCs (also called FIBICs or big bags) are used to transport solid but flowable products, e.g. powders or granules, and consist of a sewn polypropylene fabric with a polyethylene inliner (film bag) that is optionally placed inside the container. In contrast to rigid IBCs, flexible IBCs are collapsible, and the cost of transporting an empty IBC is much lower than that of rigid IBCs. Collapsible IBCs allow the cost-effective transport and storage of fruit concentrates, fruit preparations, dairy products and other liquid viscous products, and more recently solid products such as granules or tablets. They are based on a collapsible plastic container and a pre-sterilized plastic bag (inliner) with an aseptic valve. The inliner is inside the container and can be filled with liquids. Collapsible IBCs are particularly cost-effective because they are loadable, easy to fold and require little maintenance. Metal IBCs are used for the rational handling of goods in almost all industrial sectors: chemical, pharmaceutical, cosmetic, food and beverage, trade and commerce. Metal IBCs are usually made of stainless steels such as 1.4301 or 1.4571, or aluminum. They consist of a sturdy frame, inside which a rectangular or cylindrical container is placed. IBCs of this design are permanently approved for dangerous goods, provided that regular inspections are carried out every two and a half years. Cylindrical and rectangular tanks are particularly suitable for operations with frequent changeover of products. These IBCs are also used as sterile food containers, as stainless steel is very easy to clean without leaving any residue behind.Unlike composite or plastic IBCs, stainless steel containers do not pose a risk of dispersion of the substances stored in the IBC.

[0004] The period of use (service life) of metal IBCs is practically unlimited and often reaches more than 20 years. In contrast, the permissible period of use of plastic drums and jerrycans, rigid plastic IBCs and composite IBCs with plastic inner containers for the transport of dangerous goods is usually 5 years from the date of manufacture. For example, plastic IBCs must be withdrawn from circulation after 5 years of use as dangerous goods containers. However, recycling of plastic IBCs can be very problematic, especially if the container was previously used as a dangerous goods container, due to the potential risk of harmful substances being dispersed in the plastic. In contrast, recycling of metal IBCs is possible without any problems.

[0005] Special types of IBCs have been developed to manage the challenges of specific shipping cases or receiving environments, e.g. preservative-containing IBCs, electrostatic discharge (ESD) or antistatic IBCs, ATEX-compliant IBCs for explosives, IBCs containing inlays, e.g. to avoid cleaning processes or to support hygiene requirements, coated IBCs etc.

[0006] Most IBCs have the advantage that they can be cleaned after use and therefore reused several times. Therefore, various parties may handle an IBC during its life, including the manufacturer of the IBC (hereafter also referred to as the IBC manufacturer), the company selling the goods contained in the IBC (e.g. liquid or solid materials) (hereafter also referred to as the OEM), and the company consuming the goods in the IBC (hereafter also referred to as the customer). For example, the life cycle of a liquid IBC may include the following stages: - Phase 1: IBC manufacturers manufacture IBCs or prepare used IBCs and provide them to OEMs. - Phase 2: The OEM prepares the IBCs, which may include repairing and cleaning the IBCs, fills the prepared IBCs with liquid or solid compounds, and transports the filled IBCs to the customer. - third step: the customer extracts the liquid or solid compound, e.g. in one or more steps; - Phase 4: Either the IBC has reached its end of life (also known as EoL) and is discarded, or the IBC is returned to the IBC manufacturer who performs services such as cleaning and repairs, or the IBC is returned to the OEM who prepared the IBC (i.e. repeating phase 2 above).

[0007] Monitoring technologies have been developed to track IBCs during their life cycle. Such technologies currently in use include sensors to detect the fill level of the IBC, cellular machine-to-machine (M2M modem) and GPS technologies to detect the geographic location of the IBC, and RFID tags to identify the IBC and its contents. Fill level detection can be done by using sensor devices attached to the container. Since IBCs need to be thoroughly cleaned from the outside and inside to remove any residual dirt and to prevent internal residues from mixing with the new fill and compromising the quality of the new fill, such sensor devices need to either withstand the cleaning process or be removed before cleaning and reattached after the cleaning process to prevent the sensor device from being destroyed by the cleaning process. Since permanently attaching a sensor device to the container may require a new certification of the container, removable sensor devices have been used in combination with IBCs to measure the fill level using various techniques. One technique is optical detection of the fill level by a camera. However, this is only possible if the container is transparent. Another technique is to detect the temperature difference between the contents of the container and the gas / air inside the container. However, this technique is only applicable if a temperature change is induced when the contents are removed from the container. Yet another technique involves acoustic stimulation of the outside of the container, by using resonators, ultrasonic devices or actuators with defined frequencies, and analysis of the detected signal, for example by using trained machine learning algorithms. However, the aforementioned sensor devices have a high power consumption, which reduces the battery life and therefore increases the maintenance intervals. Furthermore, the sensor device needs to be in direct contact with the outside of the container to detect the signal with high accuracy, so that the design of the sensor device needs to be adapted to the design of each container. Moreover, the accuracy of the determination of the filling level using such algorithms is still not satisfactory, so that reliable results cannot be obtained as to whether the container is empty and can be retrieved for refilling. Summary of the Invention [Problem to be solved by the invention]

[0008] In view of the aforementioned drawbacks, it is desirable to provide a method for determining the filling level of containers, in particular IBCs, which provides reliable results regarding the filling level, allows optimizing the maintenance intervals of the IBCs, reduces the idle time of empty or full IBCs, consolidates the transport of empty and / or full IBCs, automatically orders new IBCs and decommissions old IBCs, resulting in a reduction in the total number of IBCs required to transport goods to customers, a shortened product cycle and ultimately reduced costs. Furthermore, the method can be implemented in combination with existing IBCs without the need to recertify the IBCs. [Means for solving the problem]

[0009] "Digital representation" may refer to a representation of a container in a computer readable format. In particular, the digital representation of a container may be, for example, data relating to the size of the container, in particular data relating to the fill volume of the container, data relating to the contents of the container, data relating to the initial fill level, data relating to the fill date, data relating to the location of the container, data relating to the manufacturing date of the container, data relating to the number of cycles of use of the container, data relating to the maintenance intervals of the container, data relating to the maximum life time of the container, the expiry date of the contents of the container, and any combination thereof.

[0010] "Liquid" refers to a compound that has a liquid state of aggregation under the conditions present in the container. The container may be heated or cooled to ensure a liquid state of aggregation for the compound present in the container.

[0011] A "communication interface" may refer to a software and / or hardware interface for establishing communication, such as the transfer or exchange of signals or data. A software interface may be, for example, a function call, an API. A communication interface may comprise a transceiver and / or a receiver. The communication may be wired or wireless. A communication interface may be based on or support one or more communication protocols. A communication protocol may be a wireless protocol, e.g., a short-range communication protocol, such as Bluetooth or WIFI, or a long-range communication protocol, such as a cellular or mobile network, e.g., a second generation cellular network ("2G"), 3G, 4G, Long-Term Evolution ("LTE"), or 5G. Alternatively or additionally, a communication interface may be based on a proprietary short-range or long-range protocol. A communication interface may support any one or more standard and / or proprietary protocols.

[0012] A "computer processor" refers to any logic circuitry configured to perform basic operations of a computer or system, and / or generally a device configured to perform calculations or logical operations. In particular, the processing means or computer processor may be configured to process basic instructions that run the computer or system. By way of example, the processing means or computer processor may comprise at least one arithmetic logic computing device ("ALU"), at least one floating point unit ("FPU"), such as a mathematical coprocessor or numeric coprocessor, a number of registers, in particular registers configured to supply operands to the ALU and to store the results of the operations, and memories, such as an L1 cache memory and an L2 cache memory. In particular, the processing means or computer processor may be a multi-core processor. In particular, the processing means or computer processor may be or comprise a central processing unit ("CPU"). The processing means or computer processor may be a complex instruction set computer ("CISC") microprocessor, a reduced instruction set computer ("RISC") microprocessor, a very long instruction word ("VLIW") microprocessor, or a processor implementing other instruction sets, or a processor implementing a combination of instruction sets. The processing means may also be one or more special purpose processing devices, such as an application specific integrated circuit ("ASIC"), a field programmable gate array ("FPGA"), a complex programmable logic device ("CPLD"), a digital signal processor ("DSP"), a network processor, or the like. The methods, systems, and devices described herein may be implemented as software in a DSP, microcontroller, or other side processor, or as hardware circuitry in an ASIC, CPLD, or FPGA. It should be understood that the term processing means or processor may refer to one or more processing devices, such as a distributed system of processing devices located across multiple computer systems (e.g., cloud computing), and is not limited to a single device unless otherwise specified.

[0013] "Audio signal" may refer to a direct voltage pulsating in the audible range of 6 to 20,000 Hz.

[0014] A "data-driven model" may refer to a model that is derived at least in part from data. The use of a data-driven model makes it possible to describe relationships that cannot be modeled by physicochemical laws. The use of a data-driven model makes it possible to describe relationships without solving equations from physicochemical laws. This can reduce computational power and improve speed. A data-driven model may be derived from statistics (Statistics 4th edition, David Freedman et al., WW Norton & Company Inc., 2004). A data-driven model may be derived from machine learning (Machine Learning and Deep Learning frameworks and libraries for large-scale data mining: a survey, Artificial Intelligence Review 52, ​​77-124(2019), Springer). The data-driven model may include an empirical model or a so-called "black-box model". An empirical model or a "black-box" model may refer to a model constructed by using one or more of machine learning, deep learning, neural networks, or other forms of artificial intelligence. An empirical model or a "black-box" model may be any model that provides a good fit between training data and test data. Alternatively, the data-driven model may include a rigorous model or a "white-box" model. A rigorous model or a "white-box" model refers to a model based on physicochemical laws. The physicochemical laws may be derived from first principles. The physicochemical laws include one or more of chemical kinetics, conservation of mass, conservation of momentum and energy, particle populations of any dimension, physical relationships, and / or chemical relationships.A rigorous model or a "white box" model can be selected according to the physicochemical laws governing the respective problem. A data-driven model can include a hybrid model. A "hybrid model" refers to a model that includes a white box model and a black box model, see for example the review paper of Von Stoch et al., 2014, Computers & Chemical Engineering, 60, Pages 86 to 101.

[0015] A "data storage medium" may refer to physical media and other computer-readable media for carrying or storing computer-executable instructions and / or data structures. Such computer-readable media may be any available media accessible by a general-purpose or special-purpose computer system. A computer-readable medium may include a physical storage medium for storing computer-executable instructions and / or data structures. A physical storage medium includes computer hardware such as RAM, ROM, EEPROM, solid-state drive ("SSD"), flash memory, phase-change memory ("PCM"), optical disk storage, magnetic disk storage or other magnetic storage devices, or any other hardware storage device that may be used to store program code in the form of computer-executable instructions or data structures that can be accessed and executed by a general-purpose or special-purpose computer system to implement the disclosed functions of the present invention.

[0016] A "database" may refer to a collection of related information that can be searched and retrieved. A database may be a searchable electronic numeric, alphanumeric, or text document; a searchable PDF document; a Microsoft Excel® spreadsheet, or any database commonly known in the state of the art. A database may be a set of electronic documents, photographs, images, diagrams, data, or drawings that reside on a computer readable storage medium that can be searched and retrieved. A database may be a single database, a set of related databases, or a collection of unrelated databases. "Related databases" means there is at least one common information element in related databases that can be used to relate such databases.

[0017] A "client device" may refer to a computer or program that relies as part of its operation on sending requests to another program, or computer hardware or software that accesses services provided by a server, which may or may not be located on another computer.

[0018] overview To solve the above problems, the following is proposed: 1. A method for determining a fill level of a liquid in a container, comprising the steps of: (i) attaching a sensor device to a container; (ii) providing a digital representation of the container to a computer processor via a communications interface; (iii) acoustically stimulating the container with the sensor device to generate at least one audio signal indicative of a fill level of liquid in the container; (iv) detecting the generated audio signal and optionally processing the detected audio signal; (v) providing, via the communications interface, to a computer processor, a detected or processed audio signal indicative of a fill level of liquid in the container; (vi) providing, via the communications interface, at least one data-driven model parameterized with the historical audio signal, the historical fill level of the liquid in the container, and the digital representation of the historical container to a computer processor; (vii) using a computer processor, determining a fill level of liquid in the container based on the provided digital representation of the container, the provided audio signal, and the provided data-driven model; (viii) providing via the communication interface the determined fill level of the liquid in the container; Includes.

[0019] An essential advantage of the method according to the invention is that it allows to remotely track the life cycle of an IBC in a flexible, reliable, efficient and comprehensive way. The sensor enables a digital twin approach by creating a link between container master data and product master data in real time. This link allows to draw conclusions regarding the origin of the liquid in the container, the life cycle of the liquid in the container and the life cycle of the container in terms of quality control. The digital representation of the container is preferably provided via an identification tag present on the IBC, which can withstand harsh cleaning environments and thus makes removal of the identification tag before cleaning unnecessary. The sensor device can be attached to the container by means of removable attachment means and can be removed before the cleaning process, thus making it possible to make recertification of existing IBCs unnecessary and to avoid destruction of the sensor device during cleaning operations. An audio signal can be simply generated by using an actuator to stimulate the container. Processing the audio signal, in particular the sampling, calculation of the Fourier spectrum and the combination of said extracted features with the optional extraction of predefined features from the Fourier spectrum before providing said processed signal to the data-driven model, significantly improves the accuracy of the determination of the filling level by the data-driven model. To further improve the accuracy of the determination, different data-driven models can be used for different filling volumes of the IBC.

[0020] Further disclosure includes: Use of the methods disclosed herein, comprising: - Optimize container maintenance intervals, and / or - Reducing the total amount of circulating containers by consolidating the transport of empty and / or full containers, and / or - Shorten product cycles, and / or - Order a new container, and / or - Stop using old containers, The use of the method for

[0021] The method of the invention allows to easily and accurately detect the filling level of liquid in a container without calling each customer and requesting the actual filling level, thus offering the possibility to remotely manage the life cycle of the container and thus consolidating the transportation of empty containers. Combining the determined filling level with the digital representation of the container allows to predict the circulation time of the container, thus reducing the idle time of the container and the time taken between two fillings. Reducing the idle time leads to shorter product cycles and optimizes production planning and maintenance intervals.

[0022] Further disclosed is 1. A system for determining a fill level of a liquid in a container, the system comprising: - Containers and; - a sensor device for generating, detecting and optionally processing at least one audio signal indicative of the fill level of the liquid in the container; - a data storage medium storing at least one data-driven model parameterized with the past audio signal, the past fill level of the liquid in the container, and a digital representation of the past container; - a communications interface for providing the digital representation of the container, the detected or processed audio signal, and at least one data-driven model to a computer processor; - a computer processor (CP) in communication with a communication interface and a data storage medium, a. receiving via a communications interface a digital representation of the container, a detected or processed audio signal, and at least one data-driven model; b. optionally, processing the received detected audio signal; c. determining a fill level of the liquid in the container based on the received digital representation of the container, the received detected or processed audio signal, and the received data-driven model; and d. providing, via the communications interface, the determined fill level of the liquid in the container; a computer processor programmed to Equipped with.

[0023] An essential advantage of the system according to the invention is that the container is not permanently modified by the installation of the sensor device, thus making unnecessary recertification of the container with the sensor device or the mounting means for mounting the sensor device on the outside of the container. The components of the sensor device can be housed in a weatherproof enclosure, thus protecting the sensor components from harsh environmental conditions and preventing destruction of the sensor device. The power supply of the sensor device can be performed using industry standard batteries, thus avoiding the installation of an external power supply or the use of special power supplies. Furthermore, the sensor device complies with explosion protection regulations, thus allowing its use in combination with electrostatic discharge (ESD) or antistatic IBCs and in locations where explosion protection regulations must be met. Finally, the sensor device can act as a cache of all data acquired by the sensor device, thus avoiding data loss in cases where the acquired data cannot be transmitted directly after data acquisition to other devices for further processing and / or storage.

[0024] Further disclosure includes: A container containing a fill level of a liquid, the fill level of the liquid being determined according to the methods disclosed herein.

[0025] The present disclosure applies equally to the systems, methods and uses of the methods herein. All features disclosed in relation to the methods are equally relevant to the uses of the systems and methods disclosed herein.

[0026] Further disclosed is a client device for generating a request to initiate a determination of a fill level of a liquid in a container with a server device; - the client device is configured to provide to the server device a detected or processed audio signal indicative of the fill level of the liquid in the container, and a digital representation of the container; or - the client device is configured to initiate acoustic stimulation of the container by the sensor device, the sensor device being configured to provide to the server device a detected or processed audio signal indicative of the fill level of liquid in the container, and a digital representation of the container.

[0027] Embodiment An embodiment of the method of the present invention: In one embodiment, the liquid is a chemical composition. In one example, the chemical composition is a liquid coating composition or a component of a liquid coating composition. According to DIN EN971-1:1996-09, a coating composition is a liquid, paste or solid product which, when applied to a substrate, produces a coating having protective, decorative and / or other specific properties. Coating compositions are classified according to different criteria, such as: - the main binder present in the coating composition (i.e. epoxy coating composition, polyurethane coating composition, etc.); - the main solvent present in the coating composition (i.e. solvent-based coating composition, water-based coating composition) - Type (i.e. powder coating composition, high solids coating composition, etc.) - the application procedure used to apply the coating composition (i.e., spray coating composition, dip coating composition, etc.); - Type of film formation (i.e. 1K coating composition, 2K coating composition, baked coating composition, etc.) - type of effect (i.e. effect coating composition) - Function within a multi-layer coating (i.e., electrodeposition coating composition, primer coating composition, primer surfacer coating composition, basecoat composition, clearcoat composition) - the type of object to be coated (i.e., automotive coating composition, etc.); They can be further classified according to:

[0028] "Components of a coating composition" may refer to materials necessary to obtain a coating composition, for example, by mixing the materials. In the case of a multi-component coating composition, i.e., a coating composition prepared by mixing at least two components, such components may be, for example, a base varnish and a hardener component. Examples of liquid coating compositions and liquid components of coating compositions include liquid electrodeposition coating compositions, liquid primer coating compositions, liquid primer surfacer coating compositions, liquid base coat compositions, liquid clear coat compositions, base varnishes, or hardener components.

[0029] In another example, the chemical composition comprises a cosmetic composition.

[0030] In an aspect, the container is a plastic, glass, or metal container. In one example, the container is an intermediate bulk container (IBC). The term "intermediate bulk container" or "IBC" as used herein includes an IBC, a shipping tank, a bulk container, a solid material container, an EcoBulk® Schutz brand container, a RecoBulk® Schutz brand container, or any suitable variation or combination of the foregoing. In some embodiments, the container may be lined with one or more liners having one or more layers. In such embodiments, the container may be physically coupled to the one or more liners, for example, using ultrasonic welding, and the sensor device may be configured to take the one or more liners into account when determining the fill level and other characteristics of the container. In another example, the container is a drum or a plastic or glass container that is not an IBC. In yet another example, the container is a fiberglass container. Particularly preferably, the container is a metal IBC, particularly a single-wall stainless steel or aluminum IBC.

[0031] In one aspect, the fill level of the liquid in the container is a classifier corresponding to the container being empty or not being empty. This classifier can be used to initiate (trigger) retrieval of the container for cleaning and refilling. Furthermore, this classifier can be used to reduce fill level measurements, thus significantly increasing the battery life of the sensor device. In another aspect, the fill level of the liquid in the container corresponds to the actual fill level and can be indicated in % based on the original fill amount, or in actual amount, e.g., liters.

[0032] In step (i) the sensor device is attached to the container. In one aspect the sensor device is permanently or removably physically connected to the outside of the container, in particular removably physically connected to the outside of the container. Removably connecting the sensor device to the outside of the container may prevent recertification of the container which would be necessary if the container is permanently altered, e.g. by permanently attaching the sensor device or the attachment means of the sensor device to the container. The easy removal of the sensor device may facilitate the cleaning process of empty containers before refilling, as the sensor device can be easily removed before the cleaning process, thus avoiding damage to the sensor device during the cleaning operation.

[0033] In step (ii) a digital representation of the container is provided to the computer processor via the communications interface. In one embodiment the digital representation of the container comprises data relating to the size of the container, in particular data relating to the fill level of the container, data relating to the contents of the container, data relating to the initial fill level, the fill date, data relating to the location of the container, data relating to the age of the container, data relating to the usage cycle of the container, data relating to the maintenance intervals of the container, data relating to the maximum life time of the container, the expiry date of the contents of the container and any combination thereof.

[0034] The data regarding the location of the container may be obtained by locating the container by the sensor device via a wireless communication interface, in particular WiFi, and / or via a satellite-based positioning system, in particular Global Navigation Satellite System, and / or ISM technology. In one example, the sensor device may be pre-programmed with at least one cellular ID, a Wi-Fi network ID, an ISM location, and / or a GPS location, and a computer processor of the sensor device may determine when one of these parameter values ​​is detected via a communication interface present in the sensor device. In another example, the sensor device may determine its location based on the detected satellites. In yet another example, the data regarding the location of the container may be determined based on WiFi or ISM frequencies detected by the sensor device in combination with a database containing frequencies associated with the location. Preferably, the sensor device uses at least two different technologies to determine the data regarding the location of the container, ensuring that the data regarding the location can be obtained indoors as well as outdoors.

[0035] In one aspect, the step of providing a digital representation of the container comprises: - attaching an identification tag to the container; - obtaining a digital representation of the container stored on the attached tag or obtaining a digital representation of the container based on information stored on the attached tag; - providing the acquired digital representation of the container to a computer processor via a communications interface; Includes.

[0036] In one example, the identification tag is permanently attached to the container. In this case, the tag must be able to withstand the cleaning environment used before refilling the container. Using a permanently attached identification tag eliminates the need to remove the tag before cleaning and reattach the tag after the cleaning process. In another example, the identification tag is removable such that it can be removed before the cleaning process and attached to the container after the cleaning process. Removing before cleaning reduces the risk of the tag being damaged during the cleaning process, thereby ensuring that the digital representation is provided to the processor without any issues.

[0037] The identification tag may be an RFID tag. Preferably, the identification tag is an NFC tag, in particular a passive NFC tag. The use of a passive NFC tag allows the method of the invention to be carried out in explosion-proof areas.

[0038] The digital representation of the container stored in the identification tag can be acquired by the sensor device, which can quickly provide the digital representation to a computer processor that is used to determine the fill level, without the need for additional devices such as additional scanning devices.

[0039] As an example, a digital representation of the container is stored in the tag, in which case said digital representation can be retrieved by the sensor device when the sensor device is in proximity to the identification tag, for example after coupling the sensor device to the container.

[0040] In another example, the digital representation of the container is obtained based on information stored on the tag. The information stored on the tag includes, for example, the identity of the container. Obtaining the digital representation of the container based on the information stored on the attached tag can include obtaining the information stored on the attached tag by the sensor device and obtaining the digital representation of the container from a data storage medium, in particular from a database, based on the information stored on the attached tag. This is preferred because the digital representation can be easily updated without changing the information stored on the identification tag. The data storage medium can include a database that includes the digital representation of the container associated with the identity of the container stored on the tag. The data storage medium can be present in the sensor device or in another device, for example a further computing device. If the data storage medium is present in another device, the sensor device can obtain the digital representation of the container stored on the data storage medium present in the further device via a communication interface.

[0041] The obtained digital representation can be stored on a data storage medium, in particular a data storage medium present in the sensor device, before providing said digital representation to a computer processor via the communication interface for further processing, in which case the sensor device acts as a cache and ensures that the obtained digital representation is provided to the computer processor even if the connection between the sensor device and the computer processor via the communication interface is temporarily interrupted.

[0042] The digital representation of the container may be provided to the computer processor at predefined times, or the provision may be initiated at predefined events, such as upon updating of the digital representation of the container or before determining the fill level of liquid in the container, This procedure ensures that all available information relating to the container is available for processing.

[0043] In step (iii), the container is acoustically stimulated by the sensor device to generate at least one audio signal indicative of the fill level of the liquid in the container. In one embodiment, the sensor device comprises an actuator, at least one microphone, a computer processor, in particular a microprocessor, a data storage medium, at least one further sensor for detecting at least one characteristic of the container other than the fill level of the liquid in the container, and at least one power source. "Microprocessor" refers to a semiconductor chip that includes a processor and peripheral functions. In many cases, the working memory and the program memory are also partially or completely located on the same chip. Particularly preferably, the sensor device is powered by at least one battery commonly used in the industry. The use of at least one battery to power the sensor device eliminates the need for an external power source for the sensor device and allows the sensor device to be easily removed from the container. To avoid maintenance efforts associated with the sensor device, the battery life should be at least three years. To prevent damage to the sensor device after physical coupling to the container, the components of the sensor device can be present in a housing designed to be physically robust for outdoor use. The housing can be made of plastic and should be silicone-free and easily cleanable. Particularly preferably, the sensor device should be ATEX compliant so that it can be used in combination with containers in areas requiring special measures regarding explosion protection. At least some of the components of the sensor device may be integrated, for example, on a printed circuit board (PCB).

[0044] The actuator may be a solenoid or a vibration generator, in particular a vibration generator.

[0045] In one example, the sensor device comprises exactly one microphone. In another example, the sensor device can comprise at least two microphones. Using at least two microphones can reduce the amount of interference noise detected by the microphone. The at least one microphone can be a capacitive microphone or a Microelectromechanical System (MEMS) microphone, in particular a Microelectromechanical System (MEMS) microphone. MEMS microphones are relatively small and require a relatively small amount of energy, which allows a compact design of the sensor device and increases the battery life of the battery present in the sensor device. Particularly preferably, the MEMS microphone is directional and soundproofed in order to reduce unwanted interference.

[0046] The at least one further sensor may be a climate sensor, a motion sensor, an ambient light sensor, a position sensor, a sensor for detecting a power supply level, or a combination thereof. The climate sensor may be configured to measure changes or climate conditions of the sensor device, for example, the climate conditions inside the housing of the sensor device or surrounding the sensor device. Such climate conditions may include temperature, air humidity, air pressure, other climate conditions, or a suitable combination thereof. The climate conditions surrounding the sensor device may be determined, for example, by a climate pressure equalization gasket present in the sensor device. The motion sensor, such as an accelerometer or a gyrometric incremental motion encoder (IME), may be configured to detect and measure movements in two or three dimensions (e.g., with respect to two or three axes). That is, the motion sensor may be configured to detect relative rapid movements, for example as a result of rapid acceleration, as opposed to more general changes in geographical position, which are preferably detected by a position sensor. Such movements may occur, for example, as a result of a container being removed from a transport vehicle, as a result of being transported for emptying, as a result of movement during transport, etc. The motion sensor can be used to transition the sensor device from a sleep mode to an active mode or vice versa, as described below. The use of a sleep mode can extend the life of a battery used to power the sensor device and therefore extend maintenance intervals of the sensor device. For example, the processor of the sensor device can have an interrupt function that executes an active mode of the sensor device upon detection of motion by the motion sensor, or an interrupt function that executes a sleep mode if no motion is detected by the motion sensor for a defined period of time. The location sensor is used to determine the location of the container to which the sensor device is attached and can include WiFi technology, ISM technology, global satellite navigation system technology, or a combination thereof.The location sensor may be turned on upon detecting motion by the motion sensor or may be programmed to determine the location at a predefined time, for example, by initiating a WiFi connection of the sensor device with WiFi devices in the vicinity of the sensor device and / or by determining the location of the sensor device using a global navigation satellite system. The ambient light sensor may serve to ensure the integrity of the housing and / or electronics, including providing mechanical dust and water detection. The sensor may allow for detection of evidence of tampering and potential damage, and provide damage control to protect the electronics of the sensor device.

[0047] In one example, the sensor device may further comprise a display such that the determined filling level and / or data acquired by the further sensor and / or battery level may be displayed. In another example, the sensor device may not comprise a display in order to reduce the complexity of the device and comply with ATEX regulations. In this case, the determined filling level and the further sensor data and / or battery level are provided via the communication interface to the further device for display.

[0048] In one embodiment, acoustically stimulating the container to generate at least one audio signal indicative of the fill level of the liquid in the container includes beating (hitting) an outer wall of the container by an actuator of the sensor device to induce at least one audio signal. The beating energy is not critical and can be selected to balance the energy required to obtain sufficient acoustic stimulation of the container with the battery life of the sensor device. Furthermore, the beating energy may depend on regulations, such as regulations regarding explosion-proof areas. In one example, the beating is performed with an energy of up to 3.4 Newton meters, preferably 0.3 to 0.7 Newton meters, especially 0.5 Newton meters. If the sensor device is used in an explosion-proof area, an energy of up to 3.4 Newton meters is preferred. In another example, the beating energy is higher than 3.4 Newton meters. This is preferred if the sensor device is not operated in an explosion-proof area and a high beating energy is required to provide sufficient acoustic stimulation to the container. The sensor device may be configured to perform beating at a predefined rate (e.g. beating frequency), e.g. once every x hours, once every x minutes, once every x seconds, subsecond, etc., the beating frequency may vary depending on the time of day or the day of the week, month, year, etc. Particularly preferably, the beating is performed at a time when background noise, such as ambient noise, e.g. noise resulting from stirring of the liquid in the container, moving the container, operations taking place around the container, etc., is absent or at a minimum level, in order to increase the accuracy of the determination of the filling level of the liquid in the container. For this purpose, the beating can be performed at a predefined time point with a minimum background noise, e.g. during the night or during a defined time period after partial removal of the liquid from the container.

[0049] In one aspect, step (iii) may further comprise detecting, before or after acoustic stimulation of the container, at least one further characteristic of the container other than the filling level, in particular the position and / or temperature of the container and / or the battery level of the sensor device, using at least one sensor of the sensor device. The detection of the further characteristic may either be initiated upon detection of movement, for example by a motion sensor, or triggered by acoustic stimulation of the container by the sensor device, or performed at a predefined time point. In one example, determining a change in position (which may have been triggered by detection of movement by the motion sensor) may result in initiating acoustic stimulation of the container. For example, the sensor device may store predefined emptying station and storage location positions in an internal memory, and upon detecting a movement of the container from the emptying station, may initiate a determination of the position as described above. If the determined container position matches the stored storage location information, the sensor device may be programmed to initiate acoustic stimulation of the container in order to determine the filling level of the liquid remaining after returning the container from the emptying station to the storage station. In another example, triggering of the acoustic stimulus may be performed after a battery level is determined by a processor of the sensor device to be above a predefined threshold to ensure that sufficient power is available for the acoustic stimulus and detection / processing of the generated audio signal. In yet another example, triggering of the acoustic stimulus may be dependent on whether a temperature determined by a temperature sensor is below or above a predefined value.

[0050] In step (iv), the generated audio signals are detected and optionally processed. In one aspect, at least one generated audio signal is detected by at least one microphone of the sensor device. If the sensor device includes multiple microphones, at least one microphone of the sensor device is used to detect the generated audio signal. In one example, all microphones of the sensor device are used to detect the generated audio signal. In another example, only a portion of the microphones of the sensor device are used to detect the generated audio signal, and the remaining microphones of the sensor device are used to detect the ambient or background noise. The detected ambient or background noise can then be used to subtract the ambient or background noise from the detected audio signal during processing of the detected audio signal.

[0051] In one embodiment, the audio signal is detected 0.1 to 1 seconds, particularly 0.3 to 0.5 seconds, after acoustic stimulation of the container by the sensor device. Time-shifted detection of the audio signal after acoustic stimulation of the container by the sensor device can be beneficial because all frequencies are stimulated equally immediately after acoustic stimulation and an audio signal indicative of the fill level is generated time-shifted relative to the acoustic stimulation.

[0052] In an embodiment, the audio signal is detected for up to 2 seconds, in particular up to 1.6 seconds, after acoustic stimulation of the container by the sensor device. Since the attenuation of the audio signal is quite strong, detecting the audio signal for only a limited time is beneficial to conserve energy and extend the life of the battery present in the sensor device.

[0053] In one aspect, processing the detected audio signal includes digitally sampling (with a computer processor) the audio signal detected by at least one microphone of the sensor device as a result of the acoustic stimulation of the container. The digital sampling by the computer processor can be performed using Pulse Code Modulation (PCM) or Pulse Density Modulation (PDM). Pulse Code Modulation (PCM) is a method used to digitally represent a sampled analog audio signal. In a PCM stream, the amplitude of the analog signal is sampled periodically at regular intervals and each sample is quantized to the nearest value within a range of digital steps. As an example, the sampling frequency used for PCM is 16 kHz. Pulse Density Modulation (PDM) is a modulation format used to represent an analog audio signal in a binary signal. In a PDM signal, a particular amplitude value is not encoded into a code word of pulses of different weights (as is the case in Pulse Code Modulation (PCM)), but rather, the relative density of the pulses corresponds to the amplitude of the analog signal. The output of a 1-bit DAC (Digital to Analog Converter) is the same as the PDM encoding of the signal.

[0054] The audio samples may be further processed (by a computer processor) by calculating a Fourier spectrum of the detected audio samples, optionally extracting at least one predefined feature from the calculated Fourier spectrum, and optionally combining the extracted features. Before calculating the Fourier spectrum, the detected audio samples may be aligned and the Fourier spectrum may be calculated from the aligned audio samples. The alignment of the audio samples may include detecting an onset of an acoustic excitation of the container resulting from beating the outside of the container with an actuator. The onset may be determined by a threshold algorithm, such as an adaptive threshold algorithm, and the audio samples may then be aligned to the detected onset. The alignment of the audio samples ensures that a signal indicative of the filling level is obtained independently of the measurement situation and thus the time course of the detected signals (indicative of the filling level) is comparable. The Fourier spectrum (hereinafter also referred to as spectrogram) is calculated from the detected audio samples or the aligned audio samples, in particular from the aligned audio samples, by using a short-time Fourier transform (STFT). The STFT represents a signal in the time-frequency domain by computing a Discrete Fourier Transform (DFT) over short overlapping windows. The length of an audio frame of an audio signal used to compute the Fourier spectrum is at least 5 ms and at most 3 seconds. In one example, the STFT is performed by dividing the detected or aligned audio samples into a set of overlapping windows according to a predefined size, creating frames from the windows, and performing a DFT on each frame. Suitable predefined sizes include in the range of 2 to 4096, e.g., 2, 4, 8, 16, 64, 128, 1024, 2084, 4096, etc. The result is a complex matrix, where each row represents an overlapping window with frequency magnitude and phase. Prior to extracting at least one predefined feature as described below, the magnitude (or coefficient) r of the complex number z=x+yl (where x is the real part and y is the imaginary part) is:

number

[0055] Then, predefined features can be calculated for each audio frame using the spectrogram or the calculated frequency magnitude and frequency phase. "Predefined features" may refer to features indicative of the fill level, such as: the frequency with the highest energy, the (normalized) mean frequency, the (normalized) median frequency, the standard deviation of the frequency distribution, the skewness of the frequency distribution, the different L p These may include deviation of the frequency distribution from the mean or median frequency in space, spectral flatness, (normalized) root mean square, fill-level specific audio coefficients, fundamental frequency calculated by the yin algorithm, (normalized) spectral flux between two successive frames, and any combination thereof. Spectral flatness can be calculated from the spectrogram as disclosed in S. Dubnov, "Generalization of spectral flatness measure for non-Gaussian linear processes"; IEEE Signal Processing Letters; Vol. 11, pp. 698-701, 2004. Fill-level specific audio coefficients can be calculated by the following steps: - scaling the amplitude of the spectrogram by a function that weights the fill level and container specific frequencies higher than other frequencies, such a function can be obtained by simulation or experiment, for example as described in Jeong et al., "Hydroelastic vibration of a liquid-filled circular cylindrical shell," Computers & Structures, vol. 66, pp. 2-3, 1998, pp. 173-185; - calculating a logarithmic power spectrum from the scaled amplitudes; - computing the discrete cosine transform of the logarithmic power spectrum and using the magnitude of the discrete cosine transform as a fill-level specific audio coefficient; can be obtained by

[0056] The predefined features can be computed from the spectrogram of each audio frame, or from the magnitude and phase of the calculated frequencies, or in the logarithmic power domain using commonly known methods.

[0057] Anomalies can be detected using predefined features to filter out corrupted audio samples, e.g. audio samples recorded during the movement of a container or liquid in the container, or audio samples with high background noise, in order to improve the accuracy of the filling level determination. For this purpose, trained algorithms can be used, e.g. SVM-machines, autoencoders, separation forests, LSTM-, GRU- or transformer classifiers, etc. Training is performed using labeled training data, which comprises features extracted from corrupted and uncorrupted audio samples. If an anomaly is detected, step (iii) can be repeated after a predefined time, e.g. by providing a respective instruction to the processor of the sensor device.

[0058] In one example, the extracted features are combined by reducing the dimensionality of the predefined features using algorithms such as Principal Component Analysis (PCA) known in the state of the art, since the data may be too large for machine learning to calculate said features. In particular, the number of features can be reduced to less than 50 before performing machine learning. As a combined feature, the component of the PCA with the highest eigenvalue can be used. In another example, the predefined features are combined by aggregation of the extracted features. If machine learning algorithms other than classification algorithms based on deep learning are used, such as convolutional neural networks (CNN) and recurrent neural networks (RNN), the extraction and combination of predefined features leads to an improvement in the accuracy of the determination of the fill level using the data-driven model and the digital representation of the container, in particular in the border case between when the container is empty and when the container still contains liquid. Therefore, if machine learning algorithms other than classification algorithms based on deep learning are used, the extraction of predefined features and the combination of the extracted predefined features are preferred. When classification algorithms based on deep learning, such as Convolutional Neural Networks (CNN) and Recurrent Neural Networks (RNN), are used, the calculated spectrogram can be used for the determination of the filling level without performing the aforementioned feature analysis, since said algorithms provide the required accuracy without performing feature extraction and combination.

[0059] In one example, the processing of the detected audio signals is performed using a computer processor of the sensor device. This is preferable if the processor has a sufficiently high computing power to allow a reasonable processing time without consuming a large amount of energy that would significantly reduce the battery life of the battery present in the sensor module. A reasonable processing time in terms of energy consumption can be, for example, up to 10 seconds.

[0060] In another example, the processing of the detected audio signal is performed using a computer processor different from the computer processor of the sensor device. The computer processor different from the computer processor of the sensor device can be located on a server such that the processing of the detected audio signal is performed in a cloud computing environment. In this case, the sensor device acts as a client device and is connected to the server via a network such as the Internet or mobile communication. The server can be accessed via mobile communication technology. A mobile communication based system is particularly useful when the computational power of the sensor device is not sufficient to perform the processing of the detected audio signal within a reasonable time or when the processing of the audio signal by the sensor device unacceptably reduces the battery life of the battery of the sensor device.

[0061] In one aspect, step (iv) further comprises storing the detected or processed audio signal in a data storage medium prior to providing the detected or processed audio signal to the computer processor via the communication interface. Storing the detected or processed audio signal prevents data loss if communication to the computer processor via the communication interface is interrupted for a period of time or if there is an interruption during the provision of data to the computer processor via the communication interface. In this case, the stored detected or processed audio signal can be retransmitted after the interruption is resolved. The data storage medium may be internal to the sensor device or may be present in a computing device separate from the sensor device, as described above.

[0062] If at least one further characteristic is detected in step (iii), step (iv) may further comprise providing the detected at least one further characteristic of the container other than the filling level, in particular the position and / or the temperature of the container and / or the battery level of the sensor device, to the computer processor via the communication interface. Prior to providing the detected characteristics, it may be beneficial to store the sensor data acquired as described above on a data storage medium.

[0063] In one embodiment, steps (iii) and (iv) are repeated at least once, preferably 2 to 10 times, in particular 5 times. The repetition of steps (iii) to (iv) increases the accuracy of the determination of the filling level. It may therefore be preferred to repeat steps (iii) and (iv) at least once to increase the accuracy of the determination of the filling level of the liquid in the container. However, a large number of repetitions also reduces the battery life of the battery of the sensor device without further significantly improving the accuracy of the determination. It is therefore particularly preferred to repeat steps (iii) to (iv) five times to increase the accuracy of the determination without excessively reducing the battery life of the battery present in the sensor device.

[0064] In step (v), the detected or processed audio signal indicative of the fill level of the liquid in the container is provided to a computer processor via a communications interface, which may be wireless or wired, in particular wireless, as previously described.

[0065] In step (vi), at least one data-driven model parameterized with the historical audio signal, the historical liquid fill level and the historical digital representation of the container is provided to the computer processor via the communications interface. The data-driven model provides a relationship between the liquid fill level in the container and the detected or processed audio signal and is derived from the historical audio signal, the historical liquid fill level in the container and the historical digital representation of the container. The digital representation of the historical container preferably includes data relating to the size of the container, in particular data relating to the fill volume of the container, data relating to the contents of the container, data relating to the initial fill level, data relating to the age of the container, data relating to the use cycle of the container and any combination thereof.

[0066] In one embodiment, step (vi) includes providing at least two data-driven models to a computer processor via a communication interface. This further includes selecting (using a computer processor) a data-driven model from the provided data-driven models based on a digital representation of the provided container, in particular based on the fill volume of the provided container. The use of a data-driven model specific to the fill volume of the container can increase the accuracy of the determination of the fill level of the liquid in the container by selecting the data-driven model that provides the most accurate determination. In one example, there may be multiple data-driven models for the provided fill volume. In this case, one data-driven model may be selected, or the fill volume may be determined using some or all of the available models, and the results may be stacked as described below to increase accuracy.

[0067] In an aspect, each data-driven model is derived from a trained machine learning algorithm. "Machine learning" may refer to a computer algorithm that is improved through experience and builds on a model using supervised, unsupervised, or semi-supervised machine learning techniques based on sample data, often referred to as training data. Supervised learning involves using training data with known labels or outcomes and preparing a model through a training process in which it is required to make predictions and is corrected if the predictions are incorrect. The training process continues until the model achieves a desired level of accuracy on the training data. Semi-supervised learning involves using a mixture of labeled and unlabeled input data and preparing a model through a training process in which the model must learn structures to organize the data as well as make predictions. Unsupervised learning involves using unlabeled input data with no known outcomes and preparing a model by inferring structures such as general rules, similarities, etc., present in the input data.

[0068] In one example, a machine learning algorithm is trained by selecting inputs and outputs to define the internal structure of the machine learning algorithm, applying a collection of data samples of the inputs and outputs to train the machine learning algorithm, verifying the accuracy of the machine learning algorithm by applying input data samples of known filling levels and comparing the generated output values ​​with the expected output values, and modifying the parameters of the machine learning algorithm using an optimization algorithm if the received output values ​​do not correspond to the known filling levels. As input, the aforementioned spectrogram obtained by Fourier transformation of the detected or aligned audio samples, or the combined predefined features obtained as described above, optionally combined with data acquired by further sensors of the sensor device, can be used. The input data is selected randomly, provided that the training data includes a complete spectrum of the filling level. The output can be either a classifier such as "empty" or "not empty", or an exact filling level, for example a % relative to the starting filling level.

[0069] In principle, a suitable machine learning model or algorithm can be selected by a person skilled in the art, taking into account pre-processing, existence of a solution set, distinction between regression and classification problems, computational load, and other factors. For this purpose, a cheat sheet of machine learning algorithms can be used (see P. Sivasothy et al.: "Proof of concept: Machine Learning based filling level estimation for bulk solid silos"; Proc. Mtgs. Acoust.; Vol. 35; 055002; 2018). If the filling level needs to be predicted accurately, a regression algorithm should be selected, while if the filling level needs to be a classifier such as "empty" or "not empty", a classification algorithm can be used. In the present invention, the machine learning algorithm may be (i) a deep learning algorithm, such as a long short-term memory (LSTM) algorithm, a gated recurrent unit (GRU) algorithm or a perceptron algorithm; (ii) an instance-based algorithm, such as a support vector machine (SVM); (iii) a regression algorithm, such as a linear regression algorithm; or (iv) an ensemble algorithm, such as a gradient boosting machine (GBM), a gradient boosting regression tree (GBRT), a random forest, or a combination thereof, in particular an ensemble algorithm. "Deep learning" may refer to methods based on artificial neural networks (ANNs) with an unlimited number of layers of limited size, which allow practical application and optimized implementation while retaining theoretical universality under mild conditions. Deep learning architectures that implement deep learning algorithms may include deep neural networks, deep belief networks (DBNs), recurrent neural networks (RNNs), and convolutional neural networks (CNNs). In ensemble learning, an ensemble (collection of predictors) is formed to generate an ensemble average (ensemble mean).The predictors may be the same algorithm with different parameters, such as several k-nearest neighbor classifiers with different k values ​​and dimension weights, or they may be different algorithms all trained on the same problem. In the prediction, all classifiers are treated equally or weighted differently. According to the ensemble rules, the results of all classifiers are aggregated, either by majority voting in the case of classification, by mainly averaging in the case of regression, or by another regressor (in the case of stacking). The combination of algorithms in an ensemble is performed by the following kinds of meta-algorithms: bagging, boosting, and stacking. Bagging considers homogeneous weak learners (i.e. the same algorithm), learns them in parallel and independently of each other, and combines them according to some kind of deterministic averaging process. In one example, the training dataset is fully partitioned, i.e. the complete training dataset is partitioned and used for training, or it is only used randomly, i.e. some data are used multiple times, while others are not used at all. In another example (also called pasting), the partitioning of the data must not overlap. Thus, each classifier is trained on specific training data, i.e. it is trained independently of the other classifiers. Boosting often considers homogeneous weak learners, sequentially trains them in a highly adaptive way (i.e. weights are adjusted during multiple runs) and combines them according to a deterministic strategy. Weights are adjusted in the direction of the prediction error, i.e. incorrectly predicted data sets are weighted higher in the next run, or adjusted in the opposite direction of the prediction error (also known as gradient boosting). Optimization algorithms suitable for manipulating the parameters of the learning algorithm during training are known in the art and include, for example, gradient descent, momentum, RMSProp, Newton-based optimizers, adam, BFGS or model-specific methods. These optimization algorithms are used during the training of a machine learning algorithm to modify the parameters at each training step such that the difference between the output of the machine learning algorithm and the expected output decreases until a predefined termination criterion, such as the number of iterations or accuracy, is obtained.

[0070] In step (vii), the fill level of the liquid in the container is determined by the computer processor based on the provided digital representation of the container, the provided audio signal, and the provided data-driven model. In one example, classifiers or regressors from different algorithms and audio samples are stacked to obtain higher accuracy. Stacking is an extension of the ensemble learning algorithm at a higher level (blending level) to learn the optimal aggregation of a single result. At the top of the stacking are (at least) one or more classifiers or regressors. Stacking is particularly useful when the results of the individual algorithms vary widely, which is almost always the case in regression, since continuous values ​​are output instead of several classes. Suitable stacking algorithms are known in the art and can be selected by the skilled person based on their knowledge.

[0071] In an embodiment, at least one further detected characteristic of the container other than the filling level, in particular the position and / or temperature of the container, is taken into account during the determination of the filling level of the liquid in the container.

[0072] In one aspect, the fill level of the liquid in the container is determined in step (vii) using a computer processor of the sensor device, which is preferred if the computational power of the sensor device is high enough to determine the fill level of the liquid in the container using the data-driven model, the provided digital representation of the container and the provided detected or processed audio signal within a reasonable time, i.e. within a maximum of 10 seconds, without consuming a large amount of energy.

[0073] In an alternative embodiment, the filling level of the liquid in the container is determined in step (vii) using a computer processor different from the computer processor of the sensor device. In one example, the computer processor different from the computer processor of the sensor device can be located on a server, such that the processing of the detected audio signal is performed in a cloud computing environment as described above. In another example, the computer processor is different from the computer processor of the sensor device. This is particularly preferred if the computing power of the computer processor of the sensor device is insufficient to determine the filling level of the liquid in the container within a reasonable time, or if using the computer processor of the sensor device to determine the filling level of the liquid in the container is associated with a significant power consumption and therefore significantly reduces the battery life of the battery of the sensor device and increases the maintenance intervals of the sensor device. The detected or processed audio signal and the digital representation of the container may be provided to the computer processor of the further computing device via a wireless communication wide area network protocol, in particular a low power wide area network protocol, before the determination performed in step (vii). Using a low power wide area network protocol results in less energy consumption and a longer battery life of the sensor device and also longer maintenance intervals for battery replacement.

[0074] In step (viii), the determined fill level of the liquid in the container is provided via the communication interface. In one aspect, the step of providing the determined fill level of the liquid in the container via the communication interface includes converting the determined fill level into a numerical variable or a descriptive output, each indicative of the fill level of the liquid in the container, prior to providing the determined fill level of the liquid in the container via the communication interface. The numerical variable may be a single continuous variable that may take any value between two end points. As an example, a set of real numbers from 0 to 1. As a further example, the numerical variable may take into account the uncertainty inherent in the data, for example, the detected or processed audio signal and the output of the data-driven model. For example, it may range from 0 to 1, where 1 indicates no uncertainty in the result. The output may also be converted into a descriptive output indicative of the fill level of the liquid. In particular, the descriptive output may include an empty / not empty format or a % value based on the original fill amount.

[0075] In one aspect, providing the determined fill level of the liquid in the container via the communication interface includes displaying the determined fill level of the liquid in the container on a screen of a display device. The display device may be equipped with a GUI for increased user comfort. In addition to the determined fill level, the display device may also display data used to determine the displayed fill level, such as data included in the digital representation, data related to processing of the audio signal, data driven models used to determine the displayed fill level, data acquired by further sensors, time of the acoustic stimulus, and any combination thereof.

[0076] In one aspect, providing the determined fill level of the liquid in the container via the communication interface comprises storing the provided fill level of the liquid in the container in a data storage medium, in particular in a database. By storing the determined fill level in the data storage medium, data can be generated that can be used to optimize the repetition of steps (iii) and (iv) by analysing the measurement frequency and the associated fill level. Furthermore, this data can be used for predictive purposes, e.g. for predicting when the container will be empty, for predicting the schedule of maintenance intervals, etc.

[0077] In one aspect, steps (iii), (iv), (v), (vii) and optionally step (viii) are repeated. In one example, the repeating of the aforementioned steps can be triggered at predefined time points by a routine executed by a computer processor. This allows the aforementioned steps to be performed under ideal measurement conditions, i.e. with background noise suppressed. In another example, the repetition can be triggered by obtaining a digital representation of the container by the sensor device. As mentioned above, the container may be equipped with an identification tag that stores information, such as a container ID, which can be used by the sensor device to obtain a digital representation of the container from a database. The digital representation can include information regarding the date and / or time the liquid was removed from the container and can be used to trigger the aforementioned steps. In yet another example, the aforementioned steps can be triggered by a motion sensor detecting movement or by the absence of motion detection. In yet another example, the aforementioned steps can be triggered by a change in position or by determining a predefined position. Triggering the repetition at predefined time points or predefined conditions can reduce the number of measurements and therefore the power consumption of the sensor device, thus increasing the battery life of the battery of the sensor device. The trigger also ensures that the time span between two measurements is small enough so that containers that are emptied and ready to be picked up for cleaning and refilling are detected quickly, thus reducing the idle time of empty containers and therefore increasing the efficiency of the container life cycle.

[0078] In one aspect, the method further comprises the step of determining an action to be taken on the container based on the fill level of the liquid in the provided container and the provided digital representation, and optionally controlling the taking of the determined action. In one example, the action may be determined and controlled by a computer processor of the sensor device according to a programmed routine. In another example, the action is determined by the computer processor of the sensor device and controlled by a further computer processor present separately from the sensor device, e.g. in a further processing device. To this end, the sensor device may transfer the determined action to the further computer processor via a communication interface. In yet another example, the action may be determined and controlled by the further computer processor, as mentioned above, based on the fill level of the liquid in the provided container and the digital representation. In determining the action, the computer processor may take into account sensor data collected by further sensors of the sensor device (apart from the determined / provided fill level and digital representation), e.g. movement data, climatic data, location data and combinations thereof. The actions may be predefined and may be different for different states / locations of the container, times of day, days or weeks, months or years, parameter values ​​received from the container management network, user inputs, other conditions, or any suitable combination thereof. Actions may include, for example, transporting, cleaning, emptying, filling, moving, discarding, or scheduling maintenance of the container, ordering a new container, changing the location of the container, powering down, powering up, or adjusting the operation of the sensor device, activating an alarm (e.g., visual, audible, or noisy), other action, or any suitable combination of the foregoing. As previously discussed, it should be understood that different actions may be taken for the same determined characteristic based on the current state / location and / or other conditions.

[0079] In an embodiment, the method further includes determining (by a computer processor) an optimized maintenance interval based on the fill level of the liquid in the provided container and the digital representation of the provided container. Data regarding the provided fill level can be associated with the digital representation of the container and used to predict when the container will be emptied and can be transported again for maintenance. This prediction thus allows for scheduling maintenance intervals for containers that are still in use without waiting until the container is transported back again, thus allowing for optimization of maintenance intervals based on the prediction.

[0080] In an embodiment, the method further includes determining (by a computer processor) a consolidated shipment of the empty container based on the fill level of the liquid in the provided container and the digital representation of the provided container. Calculating consolidated shipments based on determined container fill levels to reduce emissions and transportation costs is well known in the art (see, for example, J. Ferrer et al.; "BIN-CT: Urban waste collection based on predicting the container fill level"; BioSystems; Vol. 186; 2019; 103962).

[0081] In summary, the determined fill level together with further sensor data collected by the sensor device and the digital representation of the container can be used to manage the lifecycle of the container in an efficient and reliable manner. This method can be used for Vendor Managed Inventory (VMI) (also known as Supplier Managed Inventory or Supplier Managed Stock (SMI)), a logistics measure that improves supply chain performance since suppliers have access to customer inventory and demand data.

[0082] Embodiments of the container of the present invention: In one embodiment, the container comprises a sensor device, in particular a sensor device for generating, detecting and optionally processing at least one audio signal indicative of the filling level of the liquid in the container, preferably a sensor device as described in connection with the method of the invention.

[0083] An embodiment of the system of the present invention: The sensor devices described herein can be considered a type of Internet of Things (IoT) device that can be communicatively coupled to additional computing devices, such as remotely located servers, that can be accessed by clients. Thus, the system of the present invention can be operated as a container management network, as described in connection with FIG. 9 below.

[0084] In one embodiment, the computer processor (CP) is located in a server, in particular a cloud server, in which case the fill level of the liquid in the container is determined by the computer processor located in the server based on an audio signal generated by the sensor device and indicative of the fill level.

[0085] In another embodiment, the computer processor (CP) corresponds to a processor of the sensor device, in which case the fill level of the liquid in the container is determined by the computer processor of the sensor device based on an audio signal generated by the sensor device and indicative of the fill level.

[0086] In one aspect, the sensor device is permanently attached to the container or is removable, in particular removable. The removable configuration of the sensor device prevents recertification of the container as described above, and thus allows the sensor device to be attached to an existing container that is already certified without the need for an extensive certification process. Furthermore, the removable configuration allows the sensor device to be easily removed before a cleaning process, thereby preventing destruction of the device during cleaning.

[0087] The sensor device can be physically coupled to the outside of the container by a bar that can be removably attached to the container, for example by clamping the bar to a frame that surrounds the container, thereby avoiding permanent modification of the container that would cause a recertification, and allowing the sensor device to be used in combination with existing containers without having to recertify each container with the bar and any attached sensor device.

[0088] The bar may be equipped with an identification tag, preferably an RFID tag, in particular a passive NFC tag, configured to provide a digital representation of the container or information related to the digital representation of the container to a computer processor (CP) via a communication interface. Upon attachment of a sensor device to the bar, the sensor device may initiate a coupling procedure for obtaining the digital representation of the container stored on the tag or information related to the digital representation of the container stored on the tag.

[0089] Client device embodiments: The server device may include at least one data storage medium including at least one data-driven model, said model being used to determine a fill level of a liquid in a container.

[0090] Further embodiments or aspects are described in the following numbered paragraphs:

[0091] 1. A method for determining a fill level of a liquid in a container, the method comprising the steps of: (i) attaching a sensor device to a container; (ii) providing a digital representation of the container to a computer processor via a communications interface; (iii) acoustically stimulating the container with a sensor device to generate at least one audio signal indicative of a fill level of liquid in the container; (iv) detecting the generated audio signal and optionally processing the detected audio signal; (v) providing a detected or processed audio signal indicative of a fill level of liquid in the container to a computer processor via the communications interface; (vi) providing at least one data-driven model parameterized with the past audio signal, the past fill level of the liquid in the container, and the past digital representation of the container to a computer processor via the communications interface; (vii) using the computer processor, determining a fill level of liquid in the container based on the provided digital representation of the container, the provided audio signal, and the provided data-driven model; (viii) providing, via the communication interface, the determined fill level of liquid in the container; and A method comprising:

[0092] 2. The method according to claim 1, wherein the liquid is a chemical composition, in particular a liquid coating composition or a component of a liquid coating composition.

[0093] 3. The method according to claim 1 or 2, wherein the container is a plastic, glass or metal container, preferably a metal intermediate bulk container (IBC) optionally containing a plastic inliner, in particular a single-walled stainless steel or aluminium intermediate bulk container (IBC).

[0094] 4. The method of any one of the preceding claims, wherein the fill level of liquid in the container is a classifier corresponding to the container being empty or the container being not empty.

[0095] 5. The method according to any one of the preceding claims, wherein the sensor device is permanently or removably physically coupled to the outside of the container, in particular removably physically coupled to the outside of the container.

[0096] 6. A method according to any one of the preceding claims, wherein the digital representation of the container comprises data relating to the size of the container, in particular data relating to the fill level of the container, data relating to the contents of the container, data relating to the initial fill level, the fill date, data relating to the location of the container, data relating to the age of the container, data relating to the service cycle of the container, data relating to the maintenance intervals of the container, data relating to the maximum life time of the container, the expiry date of the contents of the container, and any combination thereof.

[0097] 7. The method according to claim 6, wherein the data relating to the location of the container is obtained by determining the location of the container by a sensor device via a wireless communication interface, in particular WiFi, and / or via a satellite-based positioning system, in particular a global navigation satellite system.

[0098] 8. The step of providing a digital representation of the container comprises: - attaching an identification tag to said container; - obtaining a digital representation of the container stored on the attached tag or obtaining a digital representation of the container based on information stored on the attached tag; - providing a digital representation of the acquired container to the computer processor via the communications interface; Item 11. The method of any one of the preceding items, comprising:

[0099] 9. The method of claim 7, wherein the identification tag is permanently attached to the container or is removable.

[0100] 10. The method according to claim 7 or 8, wherein the identification tag is an RFID tag, preferably an NFC tag, in particular a passive NFC tag.

[0101] 11. A method according to any one of claims 7 to 9, wherein the digital representation of the container stored in the identification tag is acquired by the sensor device.

[0102] 12. The method according to any one of clauses 7 to 10, wherein obtaining a digital representation of the container based on information stored in the attached tag is further defined as obtaining the information stored in the attached tag by the sensor device and obtaining a digital representation of the container from a data storage medium, in particular from a database, based on the information stored in the attached tag.

[0103] 13. A method according to any one of claims 7 to 11, wherein the obtained digital representation is stored on a data storage medium, in particular a data storage medium present in the sensor device, before providing the digital representation to the computer processor via the communication interface.

[0104] 14. The method according to any one of the preceding claims, wherein the sensor device comprises an actuator, at least one microphone, a computer processor, in particular a microprocessor, a data storage medium, at least one further sensor for detecting at least one characteristic of the container other than the filling level of liquid in the container, and at least one power source.

[0105] 15. The method according to claim 14, wherein the actuator is a solenoid or a vibration generator, in particular a vibration generator.

[0106] 16. The method according to claim 14 or 15, wherein the at least one microphone is a capacitive microphone or a Microelectromechanical System (MEMS) microphone, in particular a Microelectromechanical System (MEMS) microphone.

[0107] 17. The method according to any one of claims 14 to 16, wherein the at least one further sensor is a climate sensor, a motion sensor, an ambient light sensor, a position sensor, a sensor for detecting a power supply level, or a combination thereof.

[0108] 18. A method according to any one of the preceding claims, wherein acoustically stimulating the container to generate at least one audio signal indicative of the fill level of liquid in the container comprises causing an actuator of the sensor device to beat an outer wall of the container to induce the at least one audio signal.

[0109] 19. The method according to item 18, wherein the beating is carried out with an energy of up to 3.4 Newton meters, preferably 0.3 to 0.7 Newton meters, in particular 0.5 Newton meters.

[0110] 20. The method of any one of the preceding claims, wherein the at least one generated audio signal is detected by at least one microphone of the sensor device.

[0111] 21. A method according to any one of the preceding claims, wherein the audio signal is detected 0.1 to 1 seconds, in particular 0.3 to 0.5 seconds, after acoustic stimulation of the container by the sensor device.

[0112] 22. A method according to any one of the preceding claims, wherein the audio signal is detected up to 2 seconds, in particular up to 1.6 seconds, after acoustic stimulation of the container by the sensor device.

[0113] 23. A method according to any one of the preceding claims, wherein step (iii) further comprises detecting, before or after acoustic stimulation of the container, at least one further characteristic of the container other than the filling level, in particular the position and / or temperature of the container and / or the battery level of the sensor device, using at least one sensor of the sensor device.

[0114] 24. A method according to any one of the preceding claims, wherein processing the detected audio signal includes digitally sampling, by a computer processor, the audio signal detected by at least one microphone of the sensor device as a result of acoustic stimulation of the container.

[0115] 25. The method according to claim 23, wherein the digital sampling is performed using pulse code modulation (PCM) or pulse density modulation (PDM).

[0116] 26. The method of claim 23 or 24, wherein the audio samples are further processed by the computer processor, optionally by aligning the audio samples, calculating a Fourier spectrum of the detected or aligned audio samples, optionally extracting at least one predefined feature from the calculated Fourier spectrum, and optionally combining the extracted features.

[0117] 27. The method according to claim 26, wherein the alignment of the audio samples comprises detecting, in particular by a threshold algorithm, an onset of an acoustic excitation of the container resulting from beating the outside of the container by the actuator.

[0118] 28. The method of claim 26 or 27, wherein the Fourier spectrum is calculated using a short-time Fourier transform.

[0119] 29. The method according to claim 28, wherein the magnitude r of the complex numbers contained in the complex matrix resulting from the short-time Fourier transform is calculated.

[0120] 30. The predefined features may be the frequency with the highest energy, the (normalized) mean frequency, the (normalized) median frequency, the standard deviation of the frequency distribution, the skewness of the frequency distribution, the different L p30. The method according to any one of claims 26 to 29, wherein the deviation of the frequency distribution from the mean frequency or median frequency in space, the spectral flatness, the (normalized) root mean square, the fill level specific audio coefficients, the fundamental frequency calculated by the YIN algorithm, the (normalized) spectral flux between two successive frames, and any combination thereof are selected from the group consisting of: deviation of the frequency distribution from the mean frequency or median frequency in space, the spectral flatness, the (normalized) root mean square, the fill level specific audio coefficients, the fundamental frequency calculated by the YIN algorithm, the (normalized) spectral flux between two successive frames, and any combination thereof.

[0121] 31. Fill level specific audio coefficients next step: - scaling the amplitude of the spectrogram by a function that weights the fill level and container specific frequencies more than other frequencies, such a function can be obtained by simulation or experiment; - calculating a logarithmic power spectrum from the scaled amplitudes; - calculating a discrete cosine transform of said logarithmic power spectrum and using the magnitude of said discrete cosine transform as a fill-level specific audio coefficient; 31. The method according to claim 30, wherein the compound is obtained by

[0122] 32. The method according to any one of claims 26 to 31, wherein combining the extracted pre-defined features comprises reducing the dimensionality of the extracted pre-defined features by an algorithm, in particular by principal component analysis (PCA).

[0123] 33. A method according to any one of claims 23 to 32, wherein processing of the detected audio signal is performed using a computer processor of the sensor device.

[0124] 34. A method according to any one of claims 23 to 33, wherein processing of the detected audio signal is performed using a computer processor different from a computer processor of the sensor device.

[0125] 35. A method according to any one of the preceding clauses, wherein step (iv) further comprises storing the detected or processed audio signal on a data storage medium prior to providing the detected or processed audio signal to the computer processor via the communications interface.

[0126] 36. A method according to any one of clauses 23 to 35, wherein step (iv) further comprises providing at least one further detected characteristic of the container other than the filling level, in particular the position and / or temperature of the container and / or the battery level of a sensor device, to the computer processor via the communications interface.

[0127] 37. The method according to any one of the preceding claims, wherein steps (iii) and (iv) are repeated at least once, preferably 2 to 10 times, in particular 5 times.

[0128] 38. A method according to any one of the preceding claims, wherein step (vi) comprises providing at least two data-driven models to the computer processor via the communications interface.

[0129] 39. The method of claim 38, wherein step (vi) comprises selecting, using the computer processor, a data-driven model from the provided data-driven models based on the digital representation of the provided container, in particular based on the filling volume of the provided container.

[0130] 40. The method of any one of the preceding clauses, wherein each data-driven model is derived from a trained machine learning algorithm.

[0131] 41. The method of claim 40, wherein the machine learning algorithm is trained by selecting inputs and outputs to define an internal structure of the machine learning algorithm, applying a collection of data samples of the inputs and outputs to train the machine learning algorithm, verifying the accuracy of the machine learning algorithm by applying input data samples of known fill levels and comparing output values ​​generated with expected output values, and modifying parameters of the machine learning algorithm using an optimization algorithm if the received output values ​​do not correspond to the known fill levels.

[0132] 42. The method according to claim 40 or 41, wherein the machine learning algorithm is (i) a deep learning algorithm such as a long short-term memory (LSTM) algorithm, a gated recurrent unit (GRU) algorithm or a perceptron algorithm, (ii) an instance-based algorithm such as a support vector machine (SVM), (iii) a regression algorithm such as a linear regression algorithm, or (iv) an ensemble algorithm such as a gradient boosting machine (GBM), a gradient boosting regression tree (GBRT), a random forest, or a combination thereof, in particular an ensemble algorithm.

[0133] 43. A method according to any one of claims 23 to 42, wherein at least one further characteristic of the container other than the detected filling level, in particular the position and / or temperature of the container, is used to determine the filling level of liquid in the container.

[0134] 44. A method according to any one of the preceding claims, wherein the fill level of liquid in the container is determined in step (vii) by a computer processor of the sensor device.

[0135] 45. A method according to any one of claims 1 to 44, wherein the fill level of liquid in the container is determined in step (vii) by a computer processor different from the computer processor of the sensor device.

[0136] 46. ​​The method described in clause 45, wherein the detected or processed audio signal and the digital representation of the container are provided to the computer processor via a wireless communication wide area network protocol, in particular a low power wide area network protocol, prior to the determination performed in step (vii).

[0137] 47. A method according to any one of the preceding clauses, wherein the step of providing the determined fill level of liquid in the container via the communications interface comprises converting the determined fill level into a numerical variable or a descriptive output, each of which is indicative of the fill level of liquid in the container, before providing the determined fill level of liquid in the container via the communications interface.

[0138] 48. A method according to any one of the preceding claims, wherein providing the determined fill level of liquid in the container via the communications interface comprises displaying the determined fill level of liquid in the container on a screen of a display device.

[0139] 49. The method according to any one of the preceding claims, wherein providing the determined filling level of liquid in the container via the communication interface comprises storing the provided filling level of liquid in the container in a data storage medium, in particular in a database.

[0140] 50. The method of any one of the preceding clauses, further comprising repeating steps (iii), (iv), (v), (vii) and optionally step (viii).

[0141] 51. A method according to any one of the preceding clauses, further comprising the step of determining an action to be taken with respect to the container based on the fill level of liquid in the provided container and the provided digital representation, and optionally controlling the taking of the determined action.

[0142] 52. The method of claim 51, wherein the action is selected from transporting, cleaning, emptying, filling, moving, scrapping or scheduling maintenance of the container, ordering a new container, changing the location of the container, powering up, powering down or adjusting the operation of the sensor device, activating an alarm, other action, or a combination thereof.

[0143] 53. The method of any one of the preceding claims, further comprising determining, with a computer processor, an optimized maintenance interval based on a fill level of liquid in the provided container and a digital representation of the provided container.

[0144] 54. The method of any one of the preceding claims, further comprising the step of determining, with a computer processor, a consolidated shipment of an empty container based on the fill level of liquid in the provided container and a digital representation of the provided container.

[0145] 55. A system for determining a fill level of a liquid in a container, the system comprising: - Containers and; - a sensor device for generating, detecting and optionally processing at least one audio signal indicative of a filling level of liquid in said container; - a data storage medium storing at least one data-driven model parameterized with the past audio signals, the past fill level of the liquid in the container, and a digital representation of the past container; - a communications interface for providing the digital representation of the container, the detected or processed audio signal, and at least one data-driven model to a computer processor; - a computer processor (CP) in communication with said communication interface and said data storage medium, a. receiving via the communications interface a digital representation of the container, the detected or processed audio signal, and the at least one data-driven model; b. optionally, processing the received detected audio signal; c. determining a fill level of liquid in the container based on the received digital representation of the container, the received detected or processed audio signal and the received data-driven model; and d. providing, via said communications interface, the determined fill level of liquid within said container; a computer processor (CP) programmed to A system comprising:

[0146] 56. The system according to claim 55, wherein the computer processor (CP) is located in a server, in particular a cloud server.

[0147] 57. The system described in paragraph 56, wherein the computer processor (CP) corresponds to a processor of the sensor device.

[0148] 58. A system according to any one of claims 55 to 57, wherein the sensor device is permanently attached to the container or is removable, in particular removable.

[0149] 59. A system described in any one of claims 55 to 58, wherein the sensor device is physically connected to the outside of the container by a bar.

[0150] 60. The system of claim 59, wherein the bar is removably attached to the container.

[0151] 61. The system described in clause 59 or 60, wherein the bar is equipped with an identification tag, preferably an RFID tag, in particular a passive NFC tag, configured to provide a digital representation of the container or information related to the digital representation of the container to the computer processor (CP) via the communication interface.

[0152] 62. - Optimize container maintenance intervals, and / or - Reducing the total amount of circulating containers by consolidating the transport of empty and / or full containers, and / or - Shorten product cycles, and / or - Order a new container, and / or - Stop using old containers, Use of the method according to any one of items 1 to 54.

[0153] 63. A container containing a liquid fill level, the liquid fill level being determined by the method of any one of claims 1 to 54.

[0154] 64. A client device for generating a request to initiate a determination of a fill level of liquid in a container at a server device, the client device being configured to provide to the server device a detected or processed audio signal indicative of the fill level of liquid in the container and a digital representation of the container.

[0155] 65. A client device for generating a request to initiate a determination of a fill level of liquid in a container at a server device, the client device being configured to initiate acoustic stimulation of the container by a sensor device, the sensor device being configured to provide to the server device a detected or processed audio signal indicative of the fill level of liquid in the container and a digital representation of the container.

[0156] 66. A client device according to claim 64 or 65, wherein the server device comprises at least one data storage medium containing at least one data-driven model, the model being used to determine the fill level of liquid in the container. [Brief description of the drawings]

[0157] These and other features of the present invention are more fully described in the following description of exemplary embodiments of the invention. To easily identify the discussion of any particular element or operation, the most significant digit or digits in a reference number refer to the figure number in which that element is first introduced. This description is provided with reference to the accompanying drawings, in which: [Figure 1] 2 is a state diagram illustrating an example of multiple defined states of a container's lifecycle, according to an embodiment of the method described herein. [Diagram 2] 1 is an exploded view of an exemplary sensor device, in accordance with embodiments of methods and systems described herein. [Diagram 3] 1 is a flow chart illustrating an example method for implementing different modes of a sensor device, according to embodiments of methods and systems described herein. [Figure 4a] FIG. 2 illustrates an example of a container including attachment means for physically coupling a sensor device to the container, according to embodiments of methods and systems described herein. [Figure 4b] 1 illustrates an example of a physical coupling between a container and a sensor device according to embodiments of the methods and systems described herein. [Diagram 5] 5a and b are block diagrams of a method for determining the fill level in a container according to the invention described herein. [Figure 6] FIG. 1 is a block diagram of a preferred embodiment of the invention described herein. [Figure 7] FIG. 1 is a process diagram of an exemplary embodiment of a machine learning algorithm determination method according to the present disclosure. [Figure 8] 1 is an example of a system in accordance with the present invention as described herein. [Figure 9] FIG. 1 is a block diagram illustrating an example of a system for remotely monitoring and managing containers, according to embodiments of the systems described herein. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0158] Detailed Description The detailed description set forth below is intended as a description of various aspects of the present subject matter and is not intended to represent the only configurations in which the present subject matter may be practiced. The accompanying drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details for the purpose of providing a thorough understanding of the present subject matter. However, it will be apparent to one skilled in the art that the present subject matter may be practiced without these specific details.

[0159] 1 is a state diagram illustrating an example of a container lifecycle involving a container manufacturer, an OEM (i.e., a business that sells the goods contained in the container), and a customer (i.e., a business that consumes the goods contained in the container) according to an embodiment of the methods and systems described herein. States 102, 106, 108, 110, 112, 114, 118, and 120 are referred to herein as active states, and state 116 is referred to herein as a passive state. Each arrowed line between states in FIG. 1 indicates a state transition, and the direction of the arrow indicates the direction of the transition. A preferred lifecycle of a container or multiple containers involves only the OEM and the customer to reduce the amount of resources (e.g., computing, networking, and / or storage resources) consumed in managing the lifecycle of a container or group of containers.

[0160] In the idle state 104, the container is not handled, e.g., manufactured, prepared, cleaned, filled, transported, emptied, or disposed of. Thus, the idle state 104 does not require acquisition of sensor data or only requires acquisition of selected sensor data at predefined time slots. To minimize the power consumption of the sensor device, the device may transition to a sleep mode in the container's idle state 104 and may be activated (i.e., configured to transition to an active mode) upon the container's passage to the active state. A "sleep mode" may refer to an operating mode of the sensor device during which the sensor device does not acquire, transmit, or compute sensor data. In contrast, an "active mode" may refer to an operating mode of the sensor device during which the sensor device acquires sensor data. The transition of the sensor device from an active mode to a sleep mode may occur in response to various predefined conditions such as: instructions or data received via the communication interface from a further device, a network (e.g., a container management network), or a database; determining the passage of a predefined time without any activity (e.g., no change in data acquired by the sensor device) or without change in one or more predefined characteristics (e.g., position, movement / vibration, fill level); determining a predefined time of day (e.g., after x hours of operation) and / or day of week (e.g., weekend), month or year (e.g., holiday), etc. The transition to the sleep mode may be performed by turning off all components of the sensor device that are not necessary to wake up the sensor device. Components necessary for wake-up may include a computer processor, selected further sensors (e.g., motion sensors), and timer components. If a commercial communication network (e.g., a cellular network) is used, the amount of commercial (e.g., cellular) charges may be reduced by turning off the communication interface of the sensor device, thereby reducing the use of communication services. The amount of power and / or cost saved / reduced must be balanced against the desire or need to have up-to-date container status information.The transition of the sensor device from a sleep mode to an active mode can occur in response to various predefined routines, such as setting a wake-up timer or a motion interrupt. A wake-up timer can be set by configuring a timer component to interrupt the computer processor of the sensor device after a predefined time has elapsed. The timer component may have a predefined configuration or may be configured via a communication interface based on data from a network, such as a container management network, or a database. A motion interrupt may be set in a motion sensor to interrupt the computer processor in response to detecting motion, for example, during the transport of a container within a company or to another company.

[0161] In the container manufacturing state 102, the container manufacturer manufactures (e.g., produces) the container. In the container preparation state 106, the container manufacturer prepares (e.g., repairs, cleans, and / or tests) used containers, e.g., empty containers that were shipped from the customer to the container manufacturer in state 122. After the container manufacturing state 102 or the container preparation state 106, the container may transition to the idle state 104 before the preparation state 108. In the preparation state 108, the OEM prepares the container, which may include repairing, cleaning, and / or testing the container. By way of example, the physical coupling of the sensor device to the container may be performed during states 102 or 106, e.g., as described in relation to Figures 4a and 4b. Preferably, the coupling of the sensor device is performed either before the preparation state 106, or immediately after the preparation state 106, or during the container manufacturing state 102. The installation of the sensor device at the container manufacturing state 102 allows the sensor device to be used to perform quality control measurements, for example by performing steps (iii)-(viii) of the disclosed method and using a data-driven model trained on empty containers, to detect deviations in the audio signal of a manufactured container from audio signals of past containers having a required quality, thereby easily determining whether a container has been damaged during the manufacturing process without human intervention and without expensive x-ray inspections.

[0162] Attaching the sensor device before the preparation state 106 is preferred if the sensor device is not damaged by the operations performed in the preparation state 106 and can be used to monitor and optionally control the preparation process, for example by monitoring the temperature and cleaning duration. Based on the recorded data, the quality of the cleaning can be derived or the sensor device can be configured to provide notifications and / or alarms or stop the cleaning process if a certain threshold is reached, for example a certain predefined temperature threshold. If the preparation state 108 performed by the OEM requires the use of a strong cleaning agent, the sensor device may be detached before performing the preparation state 108 and reattached after the preparation state 108 is completed. In another example, the physical coupling of the sensor device to the container can be performed during state 108. This is preferred if the container is not equipped with a sensor device during the container manufacturing state 102 or the container preparation state 106. After the preparation state 108, the container may transition to the idle state 104 before entering the container filling state 110.

[0163] In the container filling state 110, the OEM fills the container with liquid contents, such as the liquid coating composition described above. The sensor device can determine the transition based on a change in position or by receiving an instruction. The change in position may be determined by the sensor device as described elsewhere and provided to a network, such as a container management network, or a database via a communication interface for further use. The instruction may be received from a user via a network, such as a container management network, connected to the sensor device. In one example, the sensor device can be configured to store, for example, a product identifier for the container, an identifier for the sensor device itself, information about the contents the container is being filled with, any of the product specifications described above, an address or other location ID of the intended customer, other information, or any suitable combination of the foregoing, during the container filling state 110. Such information can be stored in a non-volatile memory of the sensor device, and some of such information can be retrieved via the communication interface. In another example, the information described above can be associated with a container ID, stored in a database, and retrieved by the sensor device upon detection of the container ID as disclosed above. This can reduce the amount of internal data storage of the sensor device, which can reduce the cost of the sensor device. Furthermore, since there is no need to provide updated information to the sensor device, updating of information can be performed more easily.

[0164] After the container fill state 110, the container may transition to an idle state 104 before being transported to the customer. In the transport to customer state 112, the container is transported from the OEM to a customer facility (including a facility on behalf of the customer). The sensor device may be configured to transition from a sleep mode in the idle state 104 to an active mode during the transport to customer state 112 in response to determining a change in location for the container fill state 110. The change in location for the container fill state 110 may be determined using the networking techniques described elsewhere herein, for example, by detecting a change in GPS location or a transition between one or more Wi-Fi networks. For example, the sensor device may record the Wi-Fi network ID and / or the GPS location of the filling location, and a computer processor of the sensor device may determine when a determined value of one of these parameters for the current location no longer matches the recorded value. The sensor device may be configured to cycle between a sleep mode and an active mode during transport to the customer. To conserve energy, the sensor device may remain in an active mode during the transport to customer state 112 for a very small percentage of the time spent in a sleep mode. During the transport to customer state 112, information detected from additional sensors of the sensor device may be analyzed to determine if there has been damage or other degradation to the container or the quality of the liquid within the container. For example, the sensor device may be woken up in response to motion detected by a motion sensor. The degree of motion detected may derive if damage occurred to the container or contents during transport. Other sensor data that may be collected and analyzed includes air temperature, humidity, and pressure. These data may be used to estimate "use by" or "best by" dates, expiration dates, etc. This same analysis may be performed while the container is in other states, such as the container fill state 108 and the container contents consumption state 114.

[0165] After the transport to customer state 112, the container may transition to an idle state 104 before being used by the customer, i.e., before liquid is removed from the container by the customer. In the consumption of container contents state 114, the contents of the container are consumed by the customer, for example, in one or more iterations. During this time, the fill level of the liquid in the container is monitored using the methods and systems described therein. Initiation of the fill level determination may be in response to determining that the container has arrived at the customer site, which may be determined using one or more of the networking techniques described above using predefined parameters for the customer site. In the consumption of container contents state 114, the contents of the container may be consumed all at once (i.e., emptied) or may be consumed multiple times over time. The emptying at once and each iteration of emptying may be referred to herein as an "emptying event." Emptying events often include movement of the container to a defined position, coupling / uncoupling (e.g., screwing / unscrewing) of connectors to tubes, pipes, pumps, etc., and vibration during emptying (e.g., by using an agitator before / during emptying to ensure a homogenous composition of the liquid). The sensor device may be configured to initiate a fill level determination before or after an emptying event such that the degree of background noise is reduced, thereby improving the accuracy of the fill level determination. The sensor device may obtain information about the emptying event from a network, such as a container management network, via a communication interface, which may transfer data about planned or occurred emptying events to the sensor device or by detecting a change in position as described above. The container contents consumption state 114 may transition to an idle state 104 before the container is transported to the OEM in a transport back to OEM state 118, discarded by the customer (i.e., reaches an end of life (EOL) state 116), or transported to the container manufacturer in a transport back to container manufacturer state 120.

[0166] In the shipping back to OEM state 118, the container is shipped back to the OEM and transitions to the idle state 104 prior to the container preparation state 108. In the shipping back to container manufacturer state 120, the container is shipped back to the container manufacturer and may transition to the idle state 104 prior to the container preparation state 106. The sensor device may be configured to transition from a sleep mode in the idle state 104 to cycle between a sleep mode and an active mode during the shipping back to OEM state 118 or the shipping back to container manufacturer state 120 in response to determining a change in position relative to the customer site, as previously described.

[0167] The data acquired by the sensor devices while in the active state can be used within the container management network to significantly reduce container idle states 104 in the container's lifecycle, as the acquired data can be used to schedule the next state in the lifecycle or predict when the next stage is approximately reached, thus optimizing the container lifecycle and therefore reducing the costs associated with container idle states 104.

[0168] 2 is an exploded view of an exemplary sensor device 200 including a housing 202 and a cover 216 covering the housing 202 of the sensor device 200. The housing 202 includes a microphone 204, such as the MEMS microphone previously described, and an NFC reader board 206. The NFC reader board 206 of the sensor device 200 is used to obtain information such as a container ID stored on an identification tag, such as an NFC tag, present on a bar attached to the frame of a container, as described in connection with FIGS. 4a and 4b.

[0169] The sensor device 200 further comprises a main board 208, such as a printed circuit board (PCB), which comprises a computer processor, such as a microprocessor, a communication module, sensors, such as an inertial measurement unit (IMU) for determining specific forces, angular rates, and orientation of the sensor device using an accelerometer, a gyroscope, and optionally a combination of a geomagnetic field and a climate sensor, memory, such as a random access memory and / or a non-volatile memory (e.g., flash), and optionally a timer component and / or a trusted platform module (TPM).

[0170] The processor may be an ARM CPU or other type of CPU and may be configured with processing capabilities and interfaces necessary for other components present in the sensor device described herein, as well as one or more of a timer component and the ability to be interrupted by an IMU. For this purpose, the components of the sensor device 200 are connected via digital and / or analog interfaces with a processor present on the main board 208. In one example, the microprocessor of the sensor device 200 is used to process the audio signals detected by the microphones 204 and / or 212 after acoustic stimulation of the container by the actuator 214. In another example, the processing is performed in a further processor not present inside the sensor device 200 (not shown), and the detected audio signals are provided to the further processor via a communication interface using any one of the communication modules present on the main board 208 of the sensor device 200. The further processor may be present in a processing device such as a server or in a cloud computing environment such as a container management network as described in relation to Figures 8 and 9. A "cloud computing environment" may refer to on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by a user, and may include at least one of the following service modules: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), Mobile "Backend" as a Service (MBaaS), and Function as a Service (FaaS). The filling level of the liquid in the container may be determined in the microprocessor of the sensor device 200, as described in relation to FIG. 5, or in a further computing device. If the filling level is determined in a further computing device, the sensor device 200 provides the detected or processed audio signal via a communication interface to the further processor before determining the filling level, as described elsewhere herein.The data storage medium on the main board 208 of the sensor device can be used to store detected, analyzed or processed data and to prevent data loss if communication between the sensor device and further devices of the system is interrupted during data transfer.

[0171] The communication interface includes at least one cellular communication interface that allows communication with a cellular network, and may be configured with technologies such as, for example, Long-term Evolution (LTE) and its derivatives such as LTE Narrowband (5G) and LTE FDD / TDD (4G), HSPA (UMTS, 3G), EDGE / GSM (2G), CDMA or LPWAN technologies. The cellular communication is for enabling the sensor device to communicate with one or more other devices of a container management network, such as the system described in connection with Figures 8 and 9. In one example, the communication with the cellular network is used to detect the geographic location of a container to which the sensor device 200 is coupled, including detecting a change in location from one cell of the cellular network to another cell, the relative location of the container within the cell, e.g., the radial distance from a mobile phone base station, etc. In another example, the communication with the cellular network is used to transmit data acquired and / or processed by the sensor device to a further computing device, such as a server (see, for example, Figure 8). In yet another example, the communication with the cellular network is used to detect a change in location and transmit data, as previously described. The at least one cellular communication interface may be, include, or be part of a cellular modem. The communication interface may further be configured to implement Wi-Fi technology, for example according to one or more 802.11 standards, to allow determination of changes in the location of the container or the location of the container with the sensor device attached thereto indoors. Wi-Fi technology may be used to connect with hotspots at various positions and during various states of the container life cycle described in relation to FIG. 1 and may serve, for example, as an option to establish communication paths within further devices or container management networks (see FIG. 9) as an alternative or in addition to the cellular communication paths. The sensor device 200 may be equipped with one or more antennas corresponding to one or more of the communication technologies described above.Each antenna may, where appropriate, be integrated within the main board 208 or physically connected to the main board 208 and / or the housing 202 and / or cover 216 of the sensor device 200. The communication interface is further configured to implement GNSS technology so as to be able to determine a container attached to the sensor device 200 outdoors.

[0172] The inertial measurement unit (IMU) is used to determine the motion of a container to which the sensor device 200 is attached by determining the specific forces, angular velocities, and orientation of the sensor device 200 using a combination of accelerometers, gyroscopes, and optionally geomagnetometers. The climate sensor is configured to measure the climate conditions of the sensor device 200 (e.g., inside the housing of the sensor device 200). Such climate conditions may include temperature, air humidity, air pressure, other climate conditions, or any suitable combination thereof, particularly temperature. Although the climate sensor is illustrated as part of the main board 208, one or more additional climate sensors may be external to the main board 208, internal to the sensor device 200, or external thereto. The climate sensor located external to the main board 208 may be linked via a digital and / or analog interface, such as one or more M12.8 connectors, and may measure any of a variety of climate conditions, including, but not limited to, temperature, humidity, and pressure or other climate conditions of the container, its contents (e.g., liquid, air), and / or the ambient air outside the container.

[0173] The timer component may provide a clock at any of a variety of frequencies, for example up to 32 KHz, for the processor on the main board 208. The frequency of the clock may be selected to balance a variety of factors, including, for example, financial cost, resource consumption (including power consumption), and the highest desired operating frequency.

[0174] A Trusted Platform Module (TPM) can be used to encrypt data and protect computer processor integrity. The TPM can be used for a variety of functions, such as creating data for communication with one or more networks (e.g., any of the networks described herein) and protecting credentials and secrets; creating TPM objects, which are special encrypted data that are stored in non-volatile memory outside the TPM and can only be decrypted through the TPM; creating data to be communicated and stored as part of a transaction record (e.g., a blockchain record) or register; signing files to ensure the integrity and authenticity of services, such as those described herein; enabling features such as Over-the-Air (OtA) updates of firmware, software, and parameters of the sensor device 200; other functions; and any suitable combination of any of the foregoing.

[0175] The sensor device 200 further comprises an energy source 210, e.g. two batteries commonly used in industry. The batteries can be charged via an M12.8 connector and can also be replaced when empty. The processor can be connected to the batteries via a digital and / or analog interface so that the battery level can be monitored by the processor. The processor can be configured to provide a notification / alarm if the battery level reaches a predefined value to avoid malfunction of the sensor device 200 due to lack of power. The processor can also predict the battery life based on historical and / or actual power consumption and provide the prediction to further devices via the communication interface.

[0176] The sensor device 200 comprises a microphone 212, such as the MEMS microphone described above, and an actuator 214, such as the vibration motor described above. When the sensor device is physically coupled to the outside of the container (see, for example, FIG. 4b), the actuator of the sensor device can acoustically stimulate the container, and the resulting audio signal is detected by the microphones 212 and / or 204. For this purpose, the cover 216 is provided with an opening for the actuator and the microphone. The actuator is controlled by a microprocessor on the main board 208 of the sensor device 200 according to its programming. To prevent dust from entering the opening of the cover, the cover 216 is provided with a sealing lip 218. In this example, the cover 216 is provided with two sets of sealing lips 218 at the top and bottom ends. In another example, the sealing lips may be aligned circumferentially around the cover.

[0177] FIG. 3 is a flow chart illustrating an example of a method 300 for implementing different modes of a sensor device, such as the sensor device 200 described in relation to FIG. 2. In step 302, a sleep mode is initiated. The sleep mode is initiated in an idle state of the container, as described in FIG. 1, to reduce the power consumption of the sensor device and extend the battery life of the sensor device. This allows for increased maintenance intervals and therefore an overall cost associated with the operation of the sensor device. The transition from the active mode to the sleep mode of the sensor device can occur in response to various predefined conditions, as previously described.

[0178] After initiating the sleep mode, all components of the sensor device that are not necessary for wake-up of the sensor device are turned off in step 304. For example, with reference to sensor device 200 of FIG. 2, all components except the IMU, timer components, and processor may be powered off, including all communication interfaces, sensors, microphones 204, 212, and actuators 214 present on main board 208. By powering off components of the sensor device that are not necessary for wake-up, power may be conserved and the battery life of the sensor device may be extended, thereby reducing the overall costs associated with operation of the sensor device.

[0179] An interrupt event is configured at step 306 to enable the sensor device to wake up. The interrupt event may include a wake-up signal from a timer component at a predefined time and / or interval and / or detection of motion by the motion sensor. In one example, a wake-up timer may be configured. The wake-up timer may be configured by configuring the timer component to interrupt the computer processor of the sensor device after a predefined time has elapsed. The timer component may have a predefined configuration or may be configured via the communication interface based on data received from a network, such as a container management network, or a database. In one example, the wake-up timer of the sensor device may be configured to coincide with a schedule of time slots during which the sensor device is scheduled to transmit data to further devices via the communication interface, as described in connection with Figures 8 and 9. A motion interrupt may be configured in the motion sensor to interrupt the computer processor in response to detecting motion, for example, during the transport of a container within a company or to another company.

[0180] In step 308, the state of the sensor device is changed to a sleep mode.

[0181] In step 310, at least one interrupt event is detected, such as a wake-up signal or action from a timer component.

[0182] In step 312 , the defined state of the sensor device is changed to an active mode in response to detecting the interrupt event in step 310 .

[0183] In step 314, one or more of the components of the sensor device may be powered on, including any of those described in connection with FIG. 2, such as, for example, a climate sensor and its interface in response to detection of an interrupt event, and a communication interface. Which components are turned on may depend, at least in part, on the functionality and parameter values ​​for which the sensor device is configured. The transition of the sensor device from a sleep mode to an active mode may occur in response to various predefined routines, such as setting a wake-up timer or a motion interrupt. Steps 312 and 314 may collectively be considered activating the sensor device, and may be performed at least in part simultaneously, or may be performed simultaneously in reverse order from that displayed in FIG. 3.

[0184] In step 316, the sensor device performs at least one action that is programmed when the sensor device is in the active mode. Such actions may include determining a temperature, determining a location of the sensor device, acoustically stimulating the container by an actuator, detecting an audio signal generated from the acoustic stimulation or background noise, and any combination thereof. The actions vary depending on the programming of the sensor device, and optionally also take into account the state of the container (see FIG. 1). In one example, the determination of the location may be triggered by detecting a movement of a container to which the sensor device with an IMU is attached. In another example, acoustically stimulating the container by an actuator and detecting an audio signal generated from the acoustic stimulation or an audio signal generated from the background noise may be triggered due to reaching a predefined or predetermined time point. The detected sensor data may be stored in the memory of the sensor device along with a current time. It should be understood that the current time may be determined any time data, such as sensor data, location data, audio signals, etc., are detected and information is determined, and such current time may be recorded and / or transmitted along with information related to the detected or determined data.

[0185] In step 318, it may be determined whether the detected audio signal should be processed by a processor of the sensor device or remotely, i.e. by a further device. The determination may be made by the processor of the sensor device in accordance with programming of the sensor device, as described in relation to FIG.

[0186] If in step 318 it is determined that the detected audio signal should be processed by the processor of the sensor device, then in step 320 the processor of the sensor device can perform processing as described in relation to FIG. 5. The processed audio signal may be stored in a memory of the sensor device before further processing as described below. In step 322 it may be determined whether the filling level is determined by the processor of the sensor device or remotely, i.e. by a further device. The determination may be made by the processor of the sensor device according to the programming of the sensor device, as described in relation to FIG. 5. If in step 322 it is determined that the filling level is determined by the processor of the sensor device, then in step 324 the processor of the sensor device can perform a determination as described in relation to FIG. 5. After the filling level has been determined, the method 300 proceeds to step 326. If in step 322 it is determined that the filling level is not determined by the processor of the sensor device, then the method 300 proceeds to step 326.

[0187] If in step 318 it is determined that the detected audio signal is not processed by the processor of the sensor device, then the method proceeds to step 326, where it is determined whether there is a connection to a further device or server environment, such as a gateway or server of a system as described in Figures 8 and 9. The determination can be made using a communication interface of the main board 208, for example its Wi-Fi and / or cellular interface. If in step 326 it is determined that there is a network connection, then in step 328 data (e.g. any of the information described above in relation to steps 318 or 320) may be transmitted to the further device or server environment. If in step 318 it is determined that there is no network connection, then the method 300 proceeds to step 332, where the sensor device stores the data in a memory present on the main board 208 and returns to step 326 after a predefined time point.

[0188] After the data is transmitted in step 328, the method proceeds to step 330. In step 330, it may be determined whether to have the sensor device remain awake, for example based on data received from the further device or server environment, or according to its programming. If it is determined not to remain awake, then the method 300 may proceed to step 302, where the sensor device may enter a sleep mode. If it is determined to remain awake, then the method 300 may proceed to step 316, where the actions previously described may be performed.

[0189] FIG. 4a shows an example of a container with attachment means for physically coupling the sensor device to the container. In this example, the container 400 is a metal intermediate bulk container (IBC) with a metal container 402 having an opening 404 for the filling and emptying process. Alternatively, the container may be a plastic IBC, a composite IBC, or any other container mentioned above. The metal container 402 is fixed in a metal framework 406 to facilitate transport and stacking of the metal IBC. The container comprises attachment means 408 for physically coupling the sensor device (not shown, see e.g. FIG. 4b) to the outside of the container. In this example, the attachment means 408 is a metal bar that can be removably clamped to the container's metal framework 406. Using a removable attachment means 408 makes it possible to avoid re-authentication of the container that would have to be performed if the container is permanently altered. The attachment means comprises an identification tag 410 for storing container related information. In this example, the identification tag 410 is a passive NFC tag that contains the container ID. The identification tag 410 may be permanently attached to the attachment means 408 or may be removable so that it can be removed prior to cleaning to prevent the identification tag 410 from being destroyed during the cleaning process.

[0190] FIG. 4b shows an example of a physical coupling of the sensor device to a container. In this example, the container 402 is a metal intermediate bulk container (IBC) with a metal container 412 having an opening 414 for the filling and emptying process. In another example, the container may be a plastic IBC, a composite IBC, or other containers as mentioned above. The metal container 412 is fixed in a metal framework 416 to allow easy transport and stacking of the metal IBC. The container comprises attachment means 418, such as a bar, for physically coupling the sensor device 422 (such as the sensor device 200 described in relation to FIG. 2) to the outside of the container. In this example, the attachment means 418 is removably clamped to the metal framework 416 to avoid recertification as mentioned above. The sensor device 420 is attached to the attachment means by a screw, which can also be used to ensure that the sensor device 420 is in contact with the outside of the container 401. The sensor device 420 can be detached from the attachment means 418 by unscrewing, thus facilitating attachment and removal of the sensor device 420, for example during a cleaning process to avoid destruction of the sensor device 420. The attachment means 418 also comprises an identification tag 420, as described in relation to Fig. 4a. The sensor device 420 can be used to retrieve information stored in said tag, as described in relation to Fig. 2.

[0191] 5 is a flow chart illustrating an example of a method 500 for determining the fill level of a liquid in a container, according to embodiments described herein. The method 500 is performed on a container filled with liquid and having a sensor device (e.g., the sensor device 200 of FIG. 2) physically coupled thereto. In this example, the container is a metal IBC container, as described in connection with FIGS. 4a and 4b, that has been filled with a liquid coating composition, such as a liquid basecoat composition for use in the automotive industry. The method 500 may include considering a current state of the container (see, e.g., FIG. 1) and one or more characteristics detected by the sensor device (e.g., any of those described herein).

[0192] In step 502, the sensor device is attached to the container by physically coupling the device to the container by a bar that is clamped to the metal framework of the container, for example as described in relation to Fig. 4b. The bar is provided with an identification tag, such as a passive NFC tag, on which the container ID is stored, and after the sensor device is attached to the bar, the sensor device can be physically coupled to the container by screws.

[0193] After attaching the sensor device to the container, the sensor is initialized in step 504, which may include loading software (including firmware) and software parameters, activating a particular function of the sensor device, or defining an initial state of the container (e.g., a state as described in connection with FIG. 1). The initial state of the container, e.g., idle state 104, can be set in the sensor device as part of loading the software. The software and software parameters can define one or more aspects of the functionality of the sensor device and / or its components described herein. For example, one or more algorithms can be specified by such software. The algorithms can be generic for all defined states of the container's life cycle, can be specific to one or more defined states, or can be specific to a particular mode or event within a particular predefined state. The functionality (i.e., operation) of the sensor device, e.g., one or more algorithms stored thereon, can be defined to be specific to a particular application, industry, or expected life cycle of the container considering the contents (e.g., type of liquid product, such as coating composition, cosmetics, etc.) contained within the container and the intended use (e.g., commercial process) involving the contents.

[0194] In step 506, a digital representation of the container is provided to the processor of the sensor device. In this example, the digital representation is provided using a container ID. For this purpose, the container ID stored in the identification tag of the bar is acquired by the sensor device via an NFC reader board present in the sensor device. This container ID is then used to acquire a digital representation of the container from a database in which the container ID associated with the digital representation of the container is stored. To this end, the sensor device acquires the digital representation of the container from the database via a communication interface using the previously acquired container ID. In this example, the digital representation of the container includes data on the size of the container, in particular data on the fill volume of the container, data on the contents of the container, data on the initial fill level, the fill date, data on the location of the container, data on the age of the container, data on the use cycle of the container, data on the maintenance intervals of the container, data on the maximum life time of the container, planned emptying events of the container, and any combination thereof. The digital representation of the container stored in the database may be updated frequently, for example after a change in the state of the container as described in relation to FIG. 1, and the update of the digital representation may trigger the retrieval of an updated digital representation of the container by the sensor device via the container ID stored in the identification tag, as described above. For example, the processor of the sensor device may receive instructions via the communication interface to read the container ID and retrieve the digital representation from the database using the container ID. The digital representation of the container may be used to control the acoustic stimulation of the container by the sensor device, for example by implementing an algorithm in the computer processor of the sensor device that determines, based on the provided digital representation, the time point at which background noise is reduced to a minimum, and initiates the acoustic stimulation at the determined time point. This may improve the accuracy of the fill level determination, since no background noise is superimposed on the detected audio signal, making the processing steps more difficult.In another example, the digital representation of the container is stored in an identification tag and retrieved directly from the tag using a sensor device as described above.

[0195] In step 508, an acoustic stimulus is applied to the container by the sensor device. A suitable sensor device is described in relation to FIG. 2. For this purpose, an actuator of the sensor device, in particular a vibration generator, beats the outside of the container with a beating energy of 0.3 to 0.5 Newton meters. This beating energy is sufficient to generate an audio signal indicative of the filling level. If the sensor device is used in an explosion-proof area, the actuator comprises a material that does not generate sparks when beating the metal outer wall of the container. The beating can be controlled by a processor of the sensor device according to the programming of the sensor device. In one example, the beating is performed at predefined time points, which can be provided to the processor via the digital representation of the container or via a further database, or can be determined by the processor on the basis of provided data, such as the digital representation of the container or data acquired by a further sensor of the sensor device. The predefined time points can be selected such that the detected audio signal does not overlap significantly with background noise that would complicate the identification of an audio signal indicative of the filling level from the detected audio signal, thus reducing background noise and improving the accuracy of the filling level determination. In another example, the beating can be performed at random time points. In yet another example, the beating may be triggered by a user input via an external device, such as a further computing device. This is preferred in cases where current information on the filling level is required and the last filling level determination was made some time ago. Since each acoustic stimulation and subsequent filling level determination leads to energy consumption, the acoustic stimulation and the filling level determination must be balanced with the battery life of the battery of the sensor device. Therefore, it may be preferred to perform the filling level determination at a predefined time point where an emptying event of the container can be taken into account. This step may also include determining at least one further characteristic that does not correspond to the filling level, for example temperature, position or battery level.The acquired data may be stored in a memory of the sensor device together with the current time and analyzed by a processor of the sensor device to determine the time of the acoustic stimulation as described below. This determination may be made before the acoustic stimulation or after the acoustic stimulation. If the determination is performed before the acoustic stimulation, the acoustic stimulation may be triggered based on the acquired and optionally analyzed sensor data of further sensors of the sensor device as described above.

[0196] In step 510, an audio signal resulting from the acoustic stimulation is recorded by at least one microphone, in particular at least one sound-proof directional MEMS microphone, and provided to the processor of the sensor device via a communication interface. The detected audio signal may include background noise, for example if the acoustic stimulation is performed during a time period with background noise. In order to identify the background noise, the sensor device may include a second microphone used to detect such noise so that the detected background noise can be subtracted from the detected audio signal resulting from the acoustic stimulation. This may improve the accuracy of the filling level determination, making it possible to perform step 508 at a time point when there is background noise, thus making it possible to accurately determine the filling level at any desired time point, regardless of the background noise present at the time of measurement. The audio signal indicative of the filling level may be generated with a time shift relative to the stimulation, so that the generated audio signal may be detected at the first microphone from a predefined time point after the stimulation. In this example, the generated audio signal may be detected 0.3 to 0.5 seconds after acoustic stimulation of the container by the actuator of the sensor device. To identify background noise present during the acoustic stimulation, the second microphone can detect noise during predefined time points before and after the acoustic stimulation. Because the attenuation of the generated audio signal is quite strong, the generated audio signal can be detected up to a predefined time point to reduce the amount of data that needs to be processed. In this example, the generated audio signal is detected by the first microphone 1.6 seconds after the acoustic stimulation.

[0197] Steps 508 and 510 can be repeated several times to increase the accuracy of the fill level determination. The number of repetitions must balance the increased accuracy with the decreased battery life. In one example, steps 508 and 510 are repeated five times. Repeating more than five times no longer significantly increases the accuracy. Therefore, repeating steps 508 and 510 more than five times is less preferred as it negatively impacts the battery life of the sensor device without any additional benefit in terms of increased accuracy.

[0198] In step 512, it is determined whether the detected audio signal is processed by the processor of the sensor device. This determination is made by the processor of the sensor device according to the programming of the sensor device. In one example, the processing of the detected audio signal by the sensor device includes full processing of the detected audio signal. In another example, the processing of the detected audio signal by the sensor device includes partial processing of the detected audio signal and forwarding the partially processed audio signal to a further device for further processing (see step 518). "Full processing" includes at least the following steps: digital sampling, alignment of the audio samples, and calculation of a Fourier spectrum of the aligned audio samples. Full processing may further include extracting predefined features from the calculated Fourier spectrum and combining the extracted features. "Partial processing" includes at least one step less than full processing. In order to reduce the power consumption of the sensor device, it may be beneficial to use an external device to perform the processing of the audio signal.

[0199] If in step 512 it is determined that the detected audio signal is fully or partially processed by the processor of the further device, the method proceeds to step 518. The further device may be, for example, a computing device, such as a server, a fixed or mobile computing device, as described in connection with Figs. 8 and 9. The processor of the sensor device transmits the detected or partially processed audio signal and data acquired by the further sensor, such as temperature, location, battery level, etc., to the further device via a communication interface, such as a mobile communication interface. To avoid data loss, the detected or partially processed audio signal may be stored in a memory of the sensor device before data transmission. In one example, the data is transmitted to the further device via LPWAN communication. LPWAN allows reliable data transmission over long distances and difficult conditions and requires low power consumption for data transmission. This allows the use of further devices that are not in close proximity to the sensor device, centralizing data processing and using a single further device for processing data received from multiple sensor devices from various locations. Furthermore, the use of LPWAN allows data transmission with low power consumption, which can shorten maintenance intervals of the sensor device for battery replacement. Prior to data transmission, the processor of the sensor device may determine the battery level and estimate whether the battery level is sufficient for data transmission. If the battery level is not sufficient, the processor may provide an alarm / notification via the communication interface to the further device to inform the user that the battery level is low. Data transmission may be delayed until the battery is replaced to avoid data loss. The processor of the sensor device may further monitor the data transmission to determine whether the data has been completely transmitted, or may provide an indication to the further device, such as a file size, that can be used by the further device to determine whether the data has been completely transmitted. If the data has not been completely transmitted, the processor of the sensor device may resume data transmission.The time of data transmission and information regarding the data transmission (e.g. duration, success, connection parameters, etc.) can be stored in the memory of the sensor device and provided to a further device via the aforementioned communication interface at a later time for data evaluation.

[0200] The data received from the sensor device is processed in step 518 by further devices as described in relation to step 514. The use of further devices to process the detected or partially processed audio signals may be beneficial if the computational power of the sensor device is not sufficient to perform the processing in a reasonable time frame, or if the processing requires a large amount of energy and reduces the battery life of the sensor device to an unacceptable period, such as less than three years.

[0201] In steps 516 and 520 it is decided whether the filling level should be determined by the processor of the sensor device or by a further device. This decision is made by the processor of the respective device according to the programming of the respective device. In order to reduce the power consumption of the sensor device, it may be beneficial to determine the filling level using an external device.

[0202] If in step 516 it is decided that the filling level should be determined by the processor of the sensor device (corresponding to variant A of FIG. 5), the data-driven model and the optionally processed audio signal - if the audio signal was only partially processed by the sensor device - are provided to the processor of the sensor device in steps 522 and 524. The data-driven model, parameterized with the past audio signals, the past liquid filling level and the past digital representation of the container, is provided to the computer processor via the communication interface. The data-driven model provides a relationship between the filling level of the liquid in the container and the detected or processed audio signal and is derived from the past audio signals, the past liquid filling level in the container and the past digital representation of the container. The past digital representation of the container preferably includes data on the size of the container, in particular data on the filling amount of the container, data on the contents of the container, data on the initial filling level, data on the age of the container, data on the use cycle of the container and any combination thereof. To increase the accuracy of the determination, there may be multiple data-driven models, which may be trained with different parameters such as the container size. In this case, the processor of the sensor device selects an appropriate model based on the digital representation, in particular the container size. In another example, there may be multiple suitable data-driven models and the fill level may be determined using some or all of the suitable data-driven models, where classifiers from different models are stacked to increase the accuracy of the determination.

[0203] In one example, the data-driven model is stored in a memory of the sensor device and optionally retrieved by the processor based on the digital representation of the container as described above, in another example, the data-driven model is stored in an external data storage medium, such as a database, and retrieved (optionally based on the digital representation of the container) from the external data storage medium by the processor of the sensor device via a communication interface as described above.

[0204] In this example, the data-driven model is a trained machine learning algorithm, in particular an ensemble algorithm, such as a gradient boosting machine (GBM), a gradient boosting regression tree (GBRT), a random forest, etc. Training of the machine learning algorithm can be performed as described in relation to FIG.

[0205] The filling level of the liquid in the container is then determined by the processor of the sensor device using a data-driven model selected based on the digital representation of the container, the processed audio signal, and optionally data acquired by further sensors of the sensor device, such as temperature and / or position. In one example, the data-driven model uses data contained in the digital representation, such as data on the emptying event, data on the filling level of the container after filling, and data acquired by climate sensors of the sensor device, such as temperature data, to improve the accuracy of the determination. In this example, the filling level is a classifier of "empty" or "not empty", i.e. the actual filling level is not determined. Using this classifier, the complexity of the training data can be reduced as well as the error level of the determination, since accuracy is only required with respect to the determination that the liquid in the container has been consumed and the filling level is "empty". In another example, the determined filling level corresponds to the actual filling level of the liquid in the container.

[0206] In step 528, the fill level determined by the processor of the sensor device is provided, for example via a communication interface. Providing the determined fill level may include displaying the determined fill level on a display device, such as a mobile or stationary display device including a computer, laptop, tablet, smartphone, etc., connected to the sensor device via the communication interface, and / or storing the determined fill level in a data storage medium, such as a database or memory. The display device may be equipped with a GUI for increased user comfort, and the fill level may be displayed graphically or using text. Furthermore, coloring may be used if the fill level is determined to be "empty". The data storage medium may be the memory of the display device or may be external to the display device, for example on a server or in the system described in connection with Figures 8 and 9. By storing the determined fill level in the memory of the display device before transmission to the external device, data loss can be avoided in case the communication interface is interrupted during data transfer. In one example, the determined fill level is converted into numerical variables or descriptive outputs, each of which indicates the fill level of the liquid in the container, before providing the determined fill level of the liquid in the container via the communication interface. The numerical variable may be a single continuous variable that can take any value between two endpoints. An example is a set of real numbers from 0 to 1. As a further example, the numerical variable may take into account the uncertainty inherent in the data, for example the detected or processed audio signal and the output of a data-driven model, for example ranging from 0 to 1, with 1 indicating no uncertainty in the result. The output may also be converted to a descriptive output indicating the fill level of the liquid. In particular, the descriptive output may include an empty / not empty format.

[0207] In step 516 it is decided that the filling level is to be determined remotely, i.e. by a further device (corresponding to variant B of FIG. 5), and steps 530 to 538 are executed.

[0208] In step 530, the digital representation obtained in step 506 is provided by the sensor device to a further device via a communications interface. Data transfer can be achieved as described in relation to step 518.

[0209] In step 532, the fully processed audio signal and data acquired by the further sensor of the sensor device are provided by the sensor device to the further device via the communications interface. Data transfer can be accomplished as described in relation to step 518.

[0210] In step 534, the data-driven model is provided to a processor of the further device, as described in relation to step 524. The data-driven model may be stored in a database and may be retrieved by the processor of the further device based on the digital representation of the container provided in step 530.

[0211] In step 536, the fill level is determined in the computer processor of the further device, as described in relation to step 526.

[0212] In step 538, the determined fill level is provided as described in relation to step 528.

[0213] If in step 520 it is decided that the filling level should not be determined remotely, i.e. in the sensor device (corresponding to variant A of FIG. 5), then steps 522 to 528 are executed. In step 522, the audio signal, fully or partially processed as described in relation to step 518, is provided to the sensor device via a communication interface. The communication interface may be the same as that described in relation to step 518. After the audio signal has been provided to the computer processor of the sensor device, steps 524 to 528 are executed as described above.

[0214] If, in step 520, it is decided that the filling level should be determined remotely, i.e. by a further device (corresponding to variant C of FIG. 5), steps 540 to 546 are executed. Steps 540 to 546 are the same as steps 530 and 534 to 538 described above.

[0215] In one example, the method 500 may include repeating all steps beginning with step 506 or 508. The repetition may be performed at predefined times or may be triggered by data received by the sensor device. Such data may include data informing the sensor device to update the digital representation of the container, data related to an emptying event, motion detected by a motion sensor, a change in position, or any combination thereof. To extend the battery life of the sensor device, it may be preferable to repeat these steps only when necessary to avoid unnecessary power consumption of the sensor device.

[0216] Figure 6 is a block diagram of a preferred embodiment of the method. Method 600 includes all steps described in connection with Figure 5, as well as additional steps 604 to 608. For ease of reference, steps 528, 538 or 546 of the method described in Figure 5 are described as step 602 in Figure 6.

[0217] In step 604, an action is determined. In one example, the decision may be made by a processor of the sensor device according to the programming of the sensor device. This is preferred if the filling level has also been determined by the processor of the sensor device. In another example, the action may be determined in a further device. The action may include a date for transportation, a date for cleaning or a date for filling, a date for disposal or maintenance of the container, ordering a new container, disposal of the container, a change in the position of the container, a power down, a power up or adjustment of the operation of the sensor device, activation of an alarm, other actions, or a combination thereof, activation of an alarm (e.g. visual, sound or noise), optimization of maintenance intervals, or any suitable combination of the above. When determining the action, the processor may take into account - apart from the determined filling level - the digital representation of the container and the sensor data collected by the sensor of the sensor device (e.g. movement data, climate data, location data, and combinations thereof, etc.). Scheduling the transportation of empty or filled containers may include determining a mixed transport as described above in order to save on transportation costs. The scheduling may be performed automatically, i.e. without human intervention, based on the determined filling level and further data received from the sensor device. The optimization of maintenance intervals may be based on a prediction of when empty containers will be returned based on the determined fill levels. The prediction may include historical fill levels for each location / customer to improve the accuracy of the prediction.

[0218] In step 606, the determined action is initiated. Initiation may include the sending of instructions / data / alarms to a sensor device, further devices, or a user. For example, if a consolidated transport is determined, a respective transport order is sent to a transport company. To ensure the fulfillment of company-specific requirements, it may be preferable to approve the consolidated transport determined by the user before sending the respective order. Initiation may include further actions required by the user, such as an approval process, or other types of actions.

[0219] In step 608, the initiated action is controlled. This ensures that the action that should be performed is indeed actually performed. The control can be performed by the computing device or by the user, for example within an approval process or a checking procedure. For this purpose, the user can be provided with all the data used for the decision, the initiated action and the data obtained after the initiation of the action. It may be useful if the action can be corrected when an error is realized or modified when the parameters used for the decision are changed. The correction or modification can be performed manually by the user or can be initiated by the computing device upon receipt of data obtained during the execution of the initiated action.

[0220] Steps 604 to 608 may be repeated to ensure that a predefined action is initiated once the determined fill level and optionally further sensor data meets a predefined value.

[0221] 7 illustrates an exemplary process 700 for implementing a machine learning algorithm, more specifically an ensemble learning algorithm, such as a gradient boosting machine (GBM), a gradient boosting regression tree (GBRT), a random forest, or a combination thereof, in one exemplary embodiment of the method 500 for using machine learning to train an algorithm for determining the fill level of a liquid in a container. The algorithm can use the detected or processed audio signal, and optionally data detected by further sensors, to determine and output the fill level.

[0222] The algorithms can be hosted by the sensor device, a remote server, or a cloud or other server. Advantageously, by placing the algorithms on a remote or cloud server, the cost of additional memory and / or more complex processors and associated battery usage when using the algorithms to determine the fill level can be avoided for each sensor device. Furthermore, continuous or periodic improvements to the algorithms can be more easily made on a centralized server, avoiding the data costs, battery usage, and risk of pushing out firmware updates of the algorithms to each sensor device. The remote server can also act as a central repository that stores a collection of training data and / or operational data sent from various sensor devices to be used for training and development of existing algorithms. For example, the growing data repository can be used to update and improve algorithms on existing systems and provide improved algorithms for future use. Exemplary available software for implementing process 7000 is scikit-learn (available on the Internet at https: / / scikit-learn.org), an open source machine learning library that runs on Windows, macOS, and Linux, or XGBoost, an open source machine learning library that runs on Windows, macOS, and Linux. Another example of commercially available software is MATHLAB (available on the Internet at mattworks.com), which provides classification ensembles in its Statistics and Machine Learning Toolbox. An example of available software for ANN models is Keras (available on the Internet at Keras.io), an open source ANN model library that runs on top of TensorFlow or Theano, which provides the necessary computational engine.TENSORFLOW (an unregistered trademark of Google, Mountain View, California) is an open source software library developed independently by Google, Mountain View, California, and is available as an Internet resource at www.tensorflow.org. Theano is an open software library developed by the Lisa Lab at the University of Montreal, Montreal, Quebec, Canada, and is available as an Internet resource at deeplearning.net / software / theano / .

[0223] In step 702, inputs and outputs are selected. If an artificial neural network (ANN) is used, inputs and outputs refer to the number of data points in each of the input and output layers, which are separated by one or more neuron layers in the ANN model. Any number of input and output data points can be utilized. In one example, there can be a number of data inputs, such as spectrograms of each audio signal obtained after processing the generated audio signal, or combined features as described above, and one data output, such as a percentage of the liquid in the container relative to its fill level, or two data outputs, such as a classifier of "empty" or "not empty". In one example, the inputs can be configured to represent at least 15, in particular at least 20 spectrograms of each audio signal, or less than 9000, in particular less than 300, or less than 50 combined features, and a measured environmental variable, such as temperature. In this example, the combined features are obtained from the frequency magnitude and frequency phase (i.e. the raw features described in connection with FIG. 5) by extracting the following features: (normalized) mean frequency, (normalized) median frequency, standard deviation of the frequency distribution, skewness of the frequency distribution. In another example, the combined features are the following features from the spectrogram of each audio signal: the frequency with the highest energy, the (normalized) mean frequency, the (normalized) median frequency, the distinct L pIt is obtained by extracting at least one, and in particular all, of the deviation of the frequency distribution from the mean or median frequency in space, the spectral flatness, the (normalized) root mean square, the fill-level specific audio coefficients, the fundamental frequency calculated by the yin algorithm, the (normalized) spectral flux between two consecutive frames. The extracted features are then combined using a Principal Component Analysis (PCA) algorithm as described above, and the PCA component with the highest eigenvalue is used as the combined feature. The machine learning algorithm can be configured to make more or less input response samples and / or environmental samples available.

[0224] In step 704, it is determined whether a customized algorithm is needed. Using a customized algorithm trained for a specific condition, such as a specific installation, container model, or other various conditions, may improve the accuracy of the determination. For example, if two different containers differ significantly in mechanical design and configuration, it is likely that a separate training data set and separate algorithm will need to be developed for each type of container. For example, different training data sets and possibly algorithms will need to be developed by step 700 for containers with different volumes, or single or double walled containers. If in step 704, it is determined that a customized algorithm is needed, then a training set, validation set, and verification set for each algorithm will need to be developed in step 706. Otherwise, a generic training set, validation set, and verification set can be used in step 708.

[0225] In step 708, an algorithm training dataset is developed and / or collected for use in the current machine learning application. A commonly accepted practice is to split the model's training dataset into three parts: a training set, a validation set, and a validation (or "test") set. When using an ANN, the training set is used to tune the internal weighting algorithms and functions of the neural network's hidden layer, so that the neural network iteratively "learns" how to correctly recognize and classify patterns in input data. However, the validation set is primarily used to minimize overfitting. The validation set typically does not tune the neural network's internal weighting algorithms as the training set does, but rather verifies that an improvement in accuracy on the training dataset results in an improvement in accuracy on a dataset that has not been applied to the neural network before, or at least on a dataset on which the network has not yet been trained (i.e., the validation dataset). If the accuracy on the training dataset improves but the accuracy on the validation dataset remains the same or decreases, the process is often referred to as "overfitting" the neural network, and training should be stopped. Finally, the validation set is used to test the final solution to confirm the actual predictive ability of the neural network.

[0226] In one example, about 70% of the developed or collected data model set is used for model training, 15% for model validation, and 15% for model verification. These approximate divisions can be changed as necessary to obtain the desired results. The size and accuracy of the training data set can be very important for the accuracy of the algorithm developed by the process 700. For example, in an exemplary embodiment of the method 500, about 40.000 sets of data can be collected, each set including spectrograms or combined features of audio frames as described above, environmental data samples, and accurate determination of the fill level by commonly known methods such as using an ultrasonic sensor fixed above the fill hole, using a time-of-flight sensor, or a defined addition or removal of liquid from the container. The training data set can include samples spanning the full range of expected fill levels and environmental and other ambient conditions.

[0227] Additionally, as shown in step 706, for containers with known or relatively known characteristics (e.g., specific container models, styles, dimensions, and / or uses), an individually tailored data set can be collected to ensure that the internal weights of the neural network or algorithm are better trained so that the fill level determination is more accurate. For example, data can be collected from a large number of containers and classified based on the collected models of the containers. The classified data can then be used to train the same or a different algorithm to improve accuracy. An algorithm specifically trained on this data set is then selected to determine the fill level based on the provided digital representation of the container. The remote server acts as a central repository to store and classify this data collected from a vast database of container types and unique fill level applications, and can be used to locally or remotely develop, train, or retrain algorithms for existing or future fill level indication systems or related applications.

[0228] In step 710, an ensemble learning algorithm is selected, such as a gradient boosting machine (GBM), gradient boosting regression tree (GBRT), random forest, or a combination thereof. Optionally, process 700 can be adjusted for a selected number of algorithm types and / or dimensions to compare accuracy and select preferred algorithms for any particular container or related application. Guidelines known to those skilled in the art and / or associated with the particular algorithm software can aid in the initial selection of model types and dimensions.

[0229] At step 712, the algorithm presents a training portion and a validation portion of the training data set. Training is an iterative process of setting - in the case of an ANN - the internal weights between the ANN model neurons, or a weighting algorithm, where each neuron in each layer is connected to each neuron in each adjacent layer, and each connection is further represented by a weighting algorithm. After each iteration of the training data to adjust the weights, the validation data is run through the ANN model, and one or more measures of accuracy are determined by comparing the model output of the fill level to the actual fill level measurements collected in the training data. For example, the standard deviation and mean error of the output typically improves with each iteration for the validation data, and then the standard deviation and mean error start to increase with subsequent iterations. The iteration where the standard deviation and mean error are minimized is the most accurate set of weights for the ANN model for that training data set. In the case of an ensemble learning algorithm, training is performed by modifying the parameters of each algorithm using bagging or boosting as described above, or by modifying the weights of each classifier / regressor in the ensemble.

[0230] At step 714, the algorithm indicates a determination of whether the output of the algorithm is sufficiently accurate when compared to the validation data set and the actual fill level measurements from the collection of data. If the accuracy is not sufficient, the process 700 may continue at step 716, or at step 722 if additional training models are required. If the algorithm validation is unsatisfactory, the process continues at step 722 and it may be desirable to return to steps 706 or 708 to collect a larger and / or more accurate training data set to improve the algorithm accuracy. If it is desirable to attempt to improve the algorithm accuracy using the current training data set by selecting a different type and / or dimensionality of the algorithm, the process continues at step 710.

[0231] Once an algorithm has been selected and trained to sufficient accuracy, the algorithm is executed in step 716. For example, in an exemplary embodiment, the algorithm is hosted in software form by a remote server. Alternatively, the algorithm can be hosted in hardware form and / or hosted by the sensor device, optionally with a wireless data connection to a remote server to receive updates or modifications to the locally hosted algorithm as needed.

[0232] Optionally, the algorithm can be improved over time with additional data. For example, in step 718, operational data (e.g., spectrograms or a collection of combined features, environment, and actual fill level data) can be collected from individual containers and used in step 720 to further train and improve the algorithm for a particular container or application, essentially increasing the collective training data set over time. This operational data can be compiled from many sources, including historical data generated by the container itself, or from containers used in similar environments. This training method fine-tunes the accuracy of the algorithm as it receives data specifically generated by the containers being serviced or from similarly positioned containers.

[0233] One exemplary method of collecting this operational data is from customers consuming the liquid present in the container. Once the container is filled to 100% capacity, an accurate data set is obtained and the tank level can be monitored. Each time the container is emptied, another accurate data can be obtained and the collected data can be analyzed to verify the algorithm output reading and whether the container is truly empty. After repeating this process through multiple container refills, the algorithm servicing that particular type of container will have collected enough validated data to use to further train the algorithm, becoming smarter as the machine learning progresses with each instance. As such, it may prove advantageous to begin reading container fills less frequently (e.g., once or twice a day) once the algorithm has learned how to provide the most accurate readings.

[0234] FIG. 8 is an example of a system for determining the fill level of a liquid in a container, according to an embodiment of the system described herein. The system 800 comprises a metallic single-walled IBC container 802 present in a metallic framework 804. In one example, the container is filled with a liquid coating composition, such as a liquid basecoat composition. In another example, the container is filled with a liquid cosmetic composition or a liquid food composition. The system further comprises an attachment means 806, such as a bar as described in relation to FIGS. 4a and 4b, which is used to physically couple a sensor device 810 to the outside of the container 802. A suitable sensor device is described, for example, in relation to FIG. 2. The attachment means comprises an identification tag 808 having stored thereon information indicative of a digital representation of the container or an indication, such as a container ID, as described in relation to FIGS. 4a and 4b. The system 800 further comprises at least one further computing device 818, for example a geographically separated server, such as a cloud-based server. In one example, the further computing device 818 is used to determine the filling level (see e.g. FIG. 5) and optionally actions as described below based on data transmitted from the sensor arrangement via the communication interfaces 826 and 828. To this end, the further computing device 818 may be equipped with a trained machine learning algorithm, e.g. as described above in relation to FIG. 7.

[0235] The further computing device 818 is connected to the sensor device via a cellular communication interface 826, 828 utilizing a mobile radio tower 816. In one example, the cellular communication interface 826 may be an LPWAN technology as described above. In one example, the cellular-based communication interface 826 and / or 828 exceeds the coverage capability of a 900 MHz communication system, eliminating the need for integration with a WiFi network or other LAN and associated issues such as, for example, firewalls, password changes, or different SSIDs. The further computing device is connected to clients 820.1 to 820.3, such as mobile or stationary computing devices including laptops, smartphones, tablets, or personal computers, via a communication interface 830. In one example, access to the further computing device 818 via the clients 820.1 to 820.3 may be restricted using commonly known authentication procedures such as single sign-on. The further computing device 818 may perform further analysis of the transmitted and determined data, such as initiating and controlling actions as described in connection with FIG. 6. The data, associated analyses, and initiated actions can be accessed and viewed using clients 820.1 to 820.3, for example via a web browser, thus eliminating the need for a dedicated computing device. Further computing device 818 can also interface with enterprise resource planning or vendor-managed inventory systems, such that information is sent directly to a user's computing device (such as clients 820.1 to 820.3), or such that information residing in a database used by the vendor-managed inventory system is automatically updated by further computing device 818, and can then be accessed by the user's computing device.To determine the location of the container, the sensor device 810 may communicate with a WiFi hotspot 812 via a communication interface 822 and / or with a global navigation satellite system 814 via a communication interface 824, as described above. Data relating to the determined location - together with data determined by further sensors of the sensor device, such as temperature - may be transmitted to a further processing device 818 via communication interfaces 826, 828, as described above.

[0236] In one example, the system 800 comprises a number of containers 802.1 to 802.n with sensor devices 810.1 to 810.n attached thereto. In one example, each sensor device 810.1 to 810.n transmits data via communication interfaces 826, 828 to a further computing device 818, which then processes all data received from the sensor devices. In another example, data from the sensor devices 810.1 to 810.n is transmitted to different computing devices 818.1 to 818.n for further processing by these computing devices. The computing devices 818.1 to 818.n can then transmit the processed data to another computing device, which can be done by the clients 820.1 to 820.n. Alternatively, the client devices 820.1 to 820.n can access respective computing devices 818.1 to 818.n which process relevant data from the sensor devices.

[0237] 9 illustrates an example of a system 900 for remotely monitoring and managing containers, according to embodiments of the methods and systems described herein. The system 900 includes a cloud 902 to which a plurality of sensor devices 918, 922, 926, 930 and clients 912, 914 are coupled. The cloud 902 may include one or more servers, such as, for example, the computing device 818 described in connection with FIG. 8. The sensor devices 918, 922, 926, 930 are physically attached to the containers 916, 920, 924, 928, as described in connection with FIG. 4b, for example. Each of the sensor devices 918, 922, 926, 930 may be implemented as the sensor device 200 described in connection with FIG. 2.

[0238] Each of the sensor devices 918, 922, 926, 930 and clients 912, 914 is coupled to the cloud 902 via a communication interface 932, 934, 936, 938, 940, 942. In one example, at least some of the communication interfaces 932, 934, 936, 938, 940, 942 may represent a gateway. In this example, at least two sensor devices may be coupled to the cloud 902 (not shown) via one gateway. In another example, the sensor devices are directly coupled to the cloud 902. In this case, the sensor devices are configured with any of the gateway functions and components described herein and are treated like a gateway by the cloud 902 in at least some respects. Each gateway may be configured to implement any of the network communication techniques described herein in connection with the sensor device 200 such that the gateway can remotely communicate with, monitor, and manage the sensor devices. Each gateway may be configured to have one or more functions of a gateway and / or a controller, as known in the art, and may be any of several types of devices configured to perform the gateway functions defined herein. To ensure security of transmitted data, each gateway may include a TPM (e.g., at the hardware layer of the controller), as described in connection with FIG. 2. The TPM may be used, for example, to encrypt some of the communications to and from the sensor devices, to encrypt some of such information received at the gateway that is unencrypted, or to provide secure communications between the cloud 902, the gateways 932, 934, 936, 938, 940, 942, the sensor devices 918, 922, 926, 930, and the client devices 912, 914. For example, the TPM or other components of the system 900 may be configured to implement Transport Layer Security (TLS) for HTTPS communications and / or Datagram Transport Layer Security (DTLS) for datagram-based applications.Additionally, one or more security credentials associated with any of the aforementioned data security operations may be stored in the TPM. A TPM may be implemented in any of the gateways, sensor devices, or servers in cloud 902, e.g., during manufacturing, and may be used to personalize the gateways or sensor devices. Such gateways, sensor devices, and / or servers may be configured (e.g., during manufacturing or thereafter) to implement cryptographic techniques known in the art, such as Public Key Infrastructure (PKI) for key and credential management.

[0239] In one example, each gateway connecting a sensor device 918, 922, 926, 930 to the cloud 902 or each gateway present within the sensor device 918, 922, 926, 930 may be configured to process data received from the sensor device, including analyzing data that may have been generated or received by the sensor device and providing instructions to the sensor device, as described in more detail in connection with FIG. 5 and elsewhere herein. In addition, each gateway may be configured to provide one or more functions related to commissioning, filling, cleaning, incoming inspection, and certification (e.g., after 2 years), consumption, and other processing of containers, as described in more detail in connection with FIG. 6. To this end, each gateway may be configured with software encapsulating such capabilities. In another example, a sensor device directly connected to the cloud 902 via a communication interface may be configured to process data and perform the further functions described above. To this end, each sensor device may be configured with software encapsulating such capabilities. By performing such processing on one or more gateways and / or the sensor devices themselves, as opposed to a more centralized approach on one or more servers in the cloud 902, the system 900 can implement and enjoy the advantages of more distributed edge computing techniques.

[0240] In this example, the cloud 902 includes two tiers: an application tier 906 that includes one or more applications 904, and a service tier 910 that includes one or more databases 908. The applications and service tier 910 can each be implemented using one or more servers in the cloud 902. In another example, the cloud 902 includes more or fewer tiers. The service tier 910 can include, for example, the following databases 908: a transaction database, a container database, a container contents database, and a lifecycle management database.

[0241] The transaction database may include one or more transaction records related to the containers managed by the system 900. For example, the transaction records may include blockchain technology, where the blockchain may act as a secure transaction register for the system 900. A transaction may include any commercial transaction involving one of the managed containers, or other status information not related to a commercial transaction. Additionally, data stored in each of the other databases 908 in the services layer 910 may be stored as one or more transaction records and may be part of the transaction register for the container management system 900.

[0242] The container database can include information about the containers managed by the system 900, such as, for example, mechanical specifications, shape, date of manufacture, maintenance intervals, last inspection, material composition, and other information.

[0243] The container contents database may include information about the contents of the containers being controlled (e.g., liquids, bulk solids, powders), such as ingredients, chemical composition, classification (e.g., pharmaceuticals, beverages, food), ATEX classification of the contents or intended contents of the container, regulatory related information, container characteristics and other information collected over time, and other information about the contents. Container characteristics may include, for example, physical characteristics associated with the container, such as climatic conditions, location, mass, fill level, maximum fill level of the container, as well as other characteristics. For a given container, the information stored in the container database and / or container contents database may include the same information as that stored in the container itself, and in combination with the information about the container itself, may be considered a digital representation of the container, e.g., a digital twin.

[0244] The lifecycle management database may store information regarding states, rules, algorithms, procedures, etc. that may be used to manage containers through stages of their lifecycle, as described in more detail elsewhere herein.

[0245] The information stored in the container database and / or container contents database may be retrieved by the sensor device 918, 922, 926, 930 via the communication interface 934, 936, 938, 940 upon physical coupling of the sensor device 918, 922, 926, 930 to the container (see Figures 4a and 4b). After physical coupling, the container ID stored in the NFC tag present in the attachment means is retrieved by the sensor device 918, 922, 926, 930 and used to obtain the information stored in the container database and / or container contents database associated with the container ID.

[0246] The translation layer 906 may include any of a variety of applications that utilize information and services related to container management, including any of the information and services made available from the services layer 910. The translation layer 906 may include an inventory application, an order management application, additional applications, or any suitable combination of the foregoing.

[0247] The inventory application can provide an inventory of containers managed within a system (e.g., system 900), including properties (e.g., characteristics) for each container in the system and its contents, including the container's current state within its lifecycle, the container's fill level, its current location (e.g., cellular network, Wi-Fi network, ISM network, or one or more other network identifiers), and other properties corresponding to the container described herein. The container inventory can be a group (e.g., a "fleet") of containers owned, leased, controlled, managed, and / or used by an entity, such as an OEM.

[0248] The order management application may manage container orders for a customer, e.g., all customers of an entity, e.g., an OEM, and / or orders for an OEM, e.g., orders for new containers. The order management application may maintain information regarding all past and current container orders for the entity's or OEM's customers and process such orders. The order management application may be configured to automatically order containers for an entity (e.g., a customer or an OEM) based on container status information received from a sensor device physically coupled to the container (e.g., via one or more gateways or directly from the sensor device itself). For example, the application may have one or more predefined thresholds, e.g., empty containers, damaged containers, container fill levels, etc., after the thresholds are reached or exceeded (e.g., the number of containers below the fill level and / or not empty and not damaged). The applications may be configured to interface with other applications in the application layer 906, including each other. These applications or portions thereof may be programmed into the gateways and / or sensor devices of the container management network as well.

[0249] The container information may be communicated in any of a variety of ways between components of the system 900, including the sensor devices, the gateway, and the cloud 902 components. Such techniques may include, for example, transmitting the container information in a transaction record using blockchain technology. Such a transaction record may include public and private information, where the public information may be made more generally available to interested parties, and the more sensitive information may be treated more selectively, for example, as private information made available only to specific container manufacturers, OEMs, and / or customers. For example, the information in the transaction record may include private data encrypted with a private key unique to the container and / or sensor device, and may include public data that is not encrypted. The public data may also be encrypted to protect the value of this data and to enable trading of the data, for example, as part of a smart contract. The distinction between public and private data may be made depending on the data and its use.

[0250] The amount of communication between components of the system 900 can be minimized, which in some embodiments can include communicating transactions (e.g., container status information) to a server in the cloud 902 according to a predefined schedule, where the gateway is assigned slots in a time cycle to transmit transactions (e.g., sending data from a sensor device to the cloud 902 or sending instructions from the cloud 902 to a sensor device) to or from one or more servers. Data can be collected over a predefined period of time and grouped into a single transaction record before transmission.

Claims

1. 1. A method for determining a fill level of a liquid in a container, the method comprising the steps of: (i) attaching a sensor device to a container; (ii) providing a digital representation of the container to a computer processor via a communications interface; (iii) acoustically stimulating the container with the sensor device to generate at least one audio signal indicative of a fill level of liquid within the container; (iv) detecting the generated audio signal and processing the detected audio signal, wherein processing the detected audio signal includes digitally sampling, by the computer processor, the audio signal detected by at least one microphone of the sensor device as a result of acoustic stimulation of the container, and the audio samples are further processed by the computer processor by calculating a Fourier spectrum of the audio sample and extracting at least one predefined feature from the Fourier spectrum; (v) providing, via the communications interface, to the computer processor, a detected or processed audio signal indicative of a fill level of liquid in the container; (vi) providing to said computer processor via said communications interface at least one data-driven model parameterized with past audio signals, past fill levels of liquid in the containers, and past digital representations of the containers; (vii) using the computer processor, determining a fill level of liquid in the container based on the provided digital representation of the container, the provided audio signal, and the provided data-driven model; (viii) providing, via the communication interface, the determined fill level of liquid in the container; and A method comprising:

2. The method of claim 1 , wherein the fill level of the liquid in the container is a classifier corresponding to the container being empty or not empty.

3. 3. The method according to claim 1 or 2, wherein the digital representation of the container comprises data relating to the size of the container, in particular data relating to the fill volume of the container, data relating to the contents of the container, data relating to the initial fill level, the fill date, data relating to the location of the container, data relating to the age of the container, data relating to the use cycle of the container, data relating to the maintenance intervals of the container, data relating to the maximum life time of the container, the expiration date of the contents of the container, and any combination thereof.

4. The step of providing a digital representation of the container comprises: - attaching an identification tag to said container; - obtaining a digital representation of the container stored on the attached tag or obtaining a digital representation of the container based on information stored on the attached tag; - providing a digital representation of the acquired container to the computer processor via the communications interface; The method of claim 1 , comprising:

5. 2. The method of claim 1 , wherein acoustically stimulating the container to generate at least one audio signal indicative of a fill level of liquid in the container comprises beating an outer wall of the container with an actuator of the sensor device to induce the at least one audio signal.

6. The method of claim 1 , wherein the at least one generated audio signal is detected by at least one microphone of the sensor device.

7. The method of claim 1, wherein the audio samples are aligned prior to calculating the Fourier spectrum of the audio samples.

8. The method of claim 1, further comprising combining the extracted features.

9. The predefined features can be the frequency with the highest energy, the (normalized) mean frequency, the (normalized) median frequency, the standard deviation of the frequency distribution, the skewness of the frequency distribution, the different L p 2. The method of claim 1, wherein the deviation of the frequency distribution from the mean or median frequency in space is selected from the spectral flatness, the (normalized) root mean square, the fill level specific audio coefficients, the fundamental frequency calculated by the yin algorithm, the (normalized) spectral flux between two successive frames, and any combination thereof.

10. The method of claim 1 , wherein the data-driven model is derived from a trained machine learning algorithm.

11. 11. The method of claim 10, wherein the machine learning algorithm is trained by selecting inputs and outputs to define an internal structure of the machine learning algorithm, applying a collection of data samples of the inputs and outputs to train the machine learning algorithm, validating the accuracy of the machine learning algorithm by comparing output values ​​produced by applying input data samples of known fill levels to expected output values, and modifying parameters of the machine learning algorithm using an optimization algorithm if received output values ​​do not correspond to the known fill levels.

12. 2. The method of claim 1, wherein providing the determined fill level of liquid in the container via the communications interface comprises displaying the determined fill level of liquid in the container on a screen of a display device.

13. 1. A system for determining a fill level of a liquid in a container, the system comprising: - a container; a sensor device for generating, detecting and optionally processing at least one audio signal indicative of the filling level of liquid in said container; a data storage medium storing at least one data-driven model parameterized with the past audio signals, the past filling level of the liquid in the container, and the past digital representation of the container; a communications interface for providing the digital representation of the container, the detected or processed audio signal, and the at least one data-driven model to a computer processor; a computer processor (CP) in communication with said communication interface and with said data carrier, a. receiving, via the communication interface, a digital representation of the container, the detected or processed audio signal, and the at least one data-driven model; b. processing the received detected audio signal by digitally sampling the received audio signal and calculating a Fourier spectrum of the audio samples and extracting at least one predefined feature from the calculated Fourier spectrum; c. determining a fill level of liquid in the container based on the received digital representation of the container, the received detected or processed audio signal and the received data-driven model; and d. providing the determined fill level of liquid in the container via the communications interface; a computer processor programmed to A system comprising:

14. - Optimizing the maintenance intervals of containers, and / or - reducing the total amount of containers in circulation by consolidating the transport of empty and / or full containers, and / or - shortening product cycles, and / or - Order a new container, and / or - Stop using the old container, 2. Use of the method according to claim 1 for

Citation Information

Patent Citations

  • Device, system and method for determining the fill level of a container

    GB2585194A