Devices, systems, and methods for managing a livestock warehouse
The environmental control system uses a Kalman filter to process sensor data, addressing precision and responsiveness issues in livestock housing, enhancing animal health and productivity through accurate environmental management.
Patent Information
- Application Number
- PCT/IB2025/050115
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-08
- Filing Date
- 2025-01-06
- Publication Date
- 2025-07-17
AI Technical Summary
Existing livestock housing systems face challenges in accurately controlling environmental conditions due to sensor bias, drift, noise, and distribution issues, leading to imprecise management of gases like CO2 and ammonia, which affects animal health and productivity.
An environmental control system utilizing a Kalman filter processes data from environmental sensors to generate a Kalman environmental status, adjusting controls like fans and temperature to maintain optimal conditions, and identifies outliers for sensor calibration.
The system provides precise and responsive environmental control, improving animal health and productivity by maintaining optimal conditions within livestock housing.
Smart Images

Figure IB2025050115_17072025_PF_FP_ABST
Abstract
Description
TITLEDEVICES, SYSTEMS, AND METHODS FOR MANAGING A LIVESTOCK WAREHOUSEFIELD
[0001] Embodiments of the present disclosure relate generally to operating a livestock housing. More particularly, embodiments of the present disclosure relate to an environmental control system including an environmental status manager that manages an environmental status for livestock housing utilizing a Kalman filter to process environmental data received from environmental sensors distributed throughout the livestock housing.BACKGROUND
[0002] Precision livestock farming (PLF) is an emerging sector in the field of research and development of tools for livestock management and continuous real-time monitoring of livestock. One of the primary goals of PLF is to facilitate animal welfare, avoid diseases, and increase productivity.
[0003] For example, a piggery (also referred to as a hog house, a pig sty, a swing house, a hog pen, a pig pen) is structured to house a plurality of swine (pigs, hogs). The piggery may be designed to protect the swine from excessive temperatures (e.g., heat and cold), and to provide sanitary bedding and feeding. Conditions within the piggery may affect the health of the swine. For example, excessive levels of gases, such as carbon dioxide and ammonia, may accumulate in the piggery depending on the activity level of the swine, among other things. Measuring the concentration of the gases in the piggery is a challenging problem due to the size of the piggery, sensor bias, sensor drift, sensor noise, issues with one or more sensors (e.g., failure of one or more sensors, such as due to animal interactions, short circuits, disconnected, frozen) and the distribution of multiple sensors throughout the piggery. Structures for housing other animals (e.g., a hen house, an aviary, a stable, etc.) face similar issues with controlling the environment to be suitable forthe animals housingtherein. Due to multiple variables within such housing structures, controlling the conditions therein is a dynamic process and can be difficult to control to a desired level.BRIEF SUMMARY
[0004] In some aspects, the techniques described herein relate to a method of operating a livestock housing. An environmental status manager receives environmental data for an interior of the livestock housing from a plurality of environmental sensors. The environmental status manager generates a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data. Based on the Kalman environmental status, An environmental control manager adjusts an environmental control to adjust an actual environmental status of the livestock housing. In some embodiments, adjusting the actual environmental status of the livestock housing adjusts the Kalman environmental status to be within an environmental threshold.
[0005] The method may further include determining an estimated error for the Kalman environmental status. Adjusting the environmental control may include adjusting the environmental control when the estimated error exceeds an error threshold. The method may further include generating an average environmental status using a running average of the plurality of environmental sensors, and when the estimated error does not exceed the error threshold, adjusting the environmental control based on the running average.
[0006] In some embodiments, the method further includes generating a projected environmental status using the Kalman filter and the Kalman environmental status. Generating the projected environmental status may include using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
[0007] Adjusting the environmental control may include adjusting the environmental control based on the projected environmental status.
[0008] In some embodiments, adjustingthe environmental control includes at least one of powering on a fan, adjusting a louver, adjusting a temperature in the housing, or adjusting a humidity of the housing. The environmental status may include at least one of temperature, humidity, or CO2 concentration.
[0009] In some embodiments, a system for controlling a livestock housing includes a plurality of environmental sensors located in an interior of a livestock housing, a plurality of environmental controls in the interior of the livestock housing, and an environmental control system in operable communication with the plurality of environmental sensors and the plurality of environmental controls. The environmental control system includes at least one processor, and at least one non-transitory computer-readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the environmental control system to receive environmental data for the interior of the livestock housing from the plurality of environmental sensors, generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data, and based on the Kalman environmental status, adjust at least one environmental control of the plurality of environmental controls to adjust an actual environmental status of the livestock housing.
[0010] The plurality of environmental sensors are configured to measure at least one of CO2 concentration, CO concentration, temperature, or humidity.
[0011] The plurality of environmental controls may include at least one of a fan, a louver, a heater, or a chiller.
[0012] In some embodiments, the instructions further cause the environmental control system to determine an estimated error for the Kalman environmental status.
[0013] In some embodiments, adjustingthe at least one environmental control includes adjusting the at least one environmental control when the estimated error exceeds an error threshold, and the instructions further cause the environmental control system to generate an average environmental status using a running average of the plurality of environmental sensors, and when the estimated error does not exceed the error threshold, adjust the at least one of the plurality of environmental controls based on the running average.
[0014] The instructions may further cause the environmental control system to generate a projected environmental status usingthe Kalman filter and the Kalman environmental status.
[0015] In some embodiments, generating the projected environmental status includes using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
[0016] Adjusting the environmental control may include adjusting the environmental control based on the projected environmental status.
[0017] In some embodiments, an environmental control system for a livestock housing includes at least one processor, and at least one non-transitory computer-readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the environmental control system to receive environmental data for an interior of a livestock housing from a plurality of environmental sensors, generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data, and based on the Kalman environmental status, adjust an environmental control to adjust an actual Kalman environmental status of the livestock housing.
[0018] The instructions may further cause the environmental control system to generate a projected environmental status usingthe Kalman filter and the Kalman environmental status.
[0019] Generating the projected environmental status may include using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
[0020] In some embodiments, adjusting the environmental control includes adjusting the environmental control based on the projected environmental status.
[0021] In some embodiments, a method of operating a livestock housing includes receiving environmental data for an interior of the livestock housing from a plurality of environmental sensors, generating a Kalman environmental status for the interior of the housing by applying a Kalman filter to the environmental data, identifying, in the environmental data, an outlier datapoint, and identifying, based on the outlier datapoint, an environmental sensor from the plurality of environmental sensors for calibration.
[0022] The method may further include calibrating the environmental sensor of the plurality of environmental sensors based on the Kalman environmental status. In someembodiments, the method also includes calibrating each of the plurality of environmental sensors based on the Kalman environmental status.
[0023] In some embodiments, the method further includes identifying a bias of the plurality of environmental sensors based on the Kalman environmental status.BRIEF DESCRIPTION OF THE DRAWINGS
[0024] While the specification concludes with claims particularly pointing out and distinctly claiming what are regarded as embodiments of the present disclosure, various features and advantages may be more readily ascertained from the following description of example embodiments when read in conjunction with the accompanying drawings, in which:
[0025] FIG. 1 is a simplified representation of an environmental control system, according to at least one embodiment of the present disclosure.
[0026] FIG. 2 is a schematic representation of an environmental control system, according to at least one embodiment of the present disclosure.
[0027] FIG. 3 is a representation of a Kalman filter implementation, according to at least one embodiment of the present disclosure.
[0028] FIG. 4 is a schematic representation of an environmental control system, according to at least one embodiment of the present disclosure.
[0029] FIG. 5 is a schematic representation of an environmental control system, according to at least one embodiment of the present disclosure.
[0030] FIG. 6 is a schematic representation of an environmental control system, according to at least one embodiment of the present disclosure.
[0031] FIG. 7 is a flowchart of a method for operating a livestock housing, according to at least one embodiment of the present disclosure.
[0032] FIG. 8 is a flowchart of a method for operating a livestock housing, according to at least one embodiment of the present disclosure.
[0033] FIG. 9 illustrates an example computer-readable storage medium including processor-executable instructions configured to embody one or more of the methods disclosed herein, such as the methods illustrated in FIG. 7 and 8.DETAILED DESCRIPTION
[0034] The illustrations presented herein are not actual views of any agricultural machine or portion thereof, but are merely idealized representations to describe example embodiments of the present disclosure. Additionally, elements common between figures may retain the same numerical designation.
[0035] The following description provides specific details of embodiments. However, a person of ordinary skill in the art will understand that the embodiments of the disclosure may be practiced without employing many such specific details. Indeed, the embodiments of the disclosure may be practiced in conjunction with conventional techniques employed in the industry. In addition, the description provided below does not include all elements to form a complete structure or assembly. Only those process acts and structures necessary to understand the embodiments of the disclosure are described in detail below. Additional conventional acts and structures may be used. The drawings accompanying the application are for illustrative purposes only, and are thus not drawn to scale.
[0036] As used herein, the terms "comprising," "including," "containing," "characterized by," and grammatical equivalents thereof are inclusive or open-ended terms that do not exclude additional, unrecited elements or method steps, but also include the more restrictive terms "consisting of" and "consisting essentially of" and grammatical equivalents thereof.
[0037] As used herein, the term "may" with respect to a material, structure, feature, or method act indicates that such is contemplated for use in implementation of an embodiment of the disclosure, and such term is used in preference to the more restrictive term "is" so as to avoid any implication that other, compatible materials, structures, features, and methods usable in combination therewith should or must be excluded.
[0038] As used herein, the term "configured" refers to a size, shape, material composition, and arrangement of one or more of at least one structure and at least one apparatus facilitating operation of one or more of the structure and the apparatus in a predetermined way.
[0039] As used herein, the singular forms following "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0040] As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0041] As used herein, spatially relative terms, such as "beneath," "below," "lower," "bottom," "above," "upper," "top," "front," "rear," "left," "right," and the like, may be used for ease of description to describe one element's or feature's relationship to another element(s) or feature(s) as illustrated in the figures. Unless otherwise specified, the spatially relative terms are intended to encompass different orientations of the materials in addition to the orientation depicted in the figures.
[0042] As used herein, the term "substantially" in reference to a given parameter, property, or condition means and includes to a degree that one of ordinary skill in the art would understand that the given parameter, property, or condition is met with a degree of variance, such as within acceptable manufacturing tolerances. By way of example, depending on the particular parameter, property, or condition that is substantially met, the parameter, property, or condition may be at least 90.0% met, at least 95.0% met, at least 99.0% met, or even at least 99.9% met.
[0043] As used herein, the term "about" used in reference to a given parameter is inclusive of the stated value and has the meaning dictated by the context (e.g., it includes the degree of error associated with measurement of the given parameter).
[0044] As used throughout, ranges are used as shorthand for describing each and every value that is within the range. Any value within the range can be selected as the terminus of the range.
[0045] This disclosure generally relates to devices, systems, and methods for operating a livestock housing. An environmental status of the livestock housing may be monitored by a set of environmental sensors. When the environmental status varies from a threshold state, an environmental control manager may adjust environmental controls to return the environmental status to the threshold state. Measurements from environmental sensors may vary (e.g., sensors may drift, poison, require calibration), resulting in reduced accuracy and / or precision of theenvironmental control manager in controlling the environmental status. This may result in the environmental control manager implementing environmental controls based on an inaccurate and / or imprecise estimation of the environmental status.
[0046] In accordance with at least one embodiment of the present disclosure, a Kalman environmental status of the livestock housing may be generated by applying a Kalman filter to environmental data measured by the environmental sensors. Applying a Kalman filter to the environmental data may facilitate a reduction in the impact of uncertainty in the measurements from the environmental sensors. For example, a Kalman filter may apply a time-based filtering technique to the environmental data that determines a Kalman environmental status based on a weighing of past and present measurements. The Kalman environmental status generated using the Kalman filter may be more representative of the actual environmental status (the actual environmental conditions) in the livestock housing than other estimates of the actual environmental status (e.g., averages of the data obtained with the environmental sensors). In some embodiments, the Kalman filter may generate a Kalman environmental status that is more representative of the actual environmental status while utilizing a relatively smaller dataset compared to when using an average of data obtained with environmental sensors to estimate the actual environmental status.
[0047] When the Kalman environmental status differs from an environmental threshold, an operator may implement one or more environmental controls. For example, the operator may adjust a ventilation system (e.g., turn on or off a fan, adjust a speed of a variable speed fan, open or close ventilation louvers), adjust a temperature, adjust a humidity, or otherwise implement an environmental control, and combinations thereof. Different environmental controls may change different environmental statuses, and changing the environmental controls may result in the actual environmental status changing to be within the environmental threshold. In this manner, implementing environmental controls based on a Kalman environmental status generated using a Kalman filter may improve the management of the actual environmental status within the livestock housing. This may result in higher yields from the livestock housing and / or healthier livestock that reside therein.
[0048] In some embodiments, utilizing a Kalman filter to monitor and / or control the environmental status within the interior of the livestock housing may allow for a finer control of the environmental status in the housing. For example, in a cold climate and / or during colder portions of the year, adding ventilation quantity and / or velocity to reduce the CO2 concentration may decrease the temperature to below healthy levels (resulting in increased heating costs to maintain the temperature of the housing). Utilizing the Kalman filter to estimate the Kalman environmental status and projected Kalman environmental status may allow the operator to more accurately and / or precisely control the ventilation to maintain the CO2 levels within the CO2 threshold.
[0049] In accordance with at least one embodiment of the present disclosure, the Kalman environmental status generated by the Kalman filter may be utilized to identify outliers in the environmental data. Outliers in the environmental data may be caused in any manner. For example, outliers in the environmental data may be caused by faulty sensors, livestock breathing, f latu lating, urinating, or defecating at or near a sensor, livestock damaging power and / or sensor infrastructure through chewing, stepping on, or otherwise interacting with sensor infrastructure, sensor calibration and / or bias drift, random sensor error, any other cause, and combinations thereof. Utilizing a Kalman filter to process the environmental data may help to identify outlier environmental data. The outliers may be identified by the distance from the environmental status and / or the weight applied to the outlier in the Kalman filter.
[0050] In some embodiments, a calibration manager may identify if a sensor is generating too many outlier data points. The calibration manager may determine that such a sensor is out of calibration. In some embodiments, the Kalman environmental status generated by the Kalman filter may be used to calibrate the sensor. For example, a particular sensor may be calibrated using the Kalman environmental status (e.g., to a value corresponding to the Kalman environmental status). This may result in sensors that generate more accurate and / or precise results, thereby improving the generation of the Kalman environmental status.
[0051] FIG. 1 is a simplified representation of an environmental control system 100, according to at least one embodiment of the present disclosure. The environmental control system 100 includes a livestock housing 102 having livestock pens 104 that may house one ormore livestock animals. The livestock pens 104 may house any type of livestock, including cattle, swine, poultry (e.g., chickens, turkey), sheep, any other livestock, and combinations thereof. While the livestock housing 102 shown includes livestock pens 104, it should be understood that the livestock in the livestock housing 102 may be housed in any manner, including a single pen per animal, multiple animals per pen, free-range (e.g., no pens), multiple vertical stories of pens, any other arrangement, and combinations thereof.
[0052] An interior 106 of the livestock housing 102 may impact the growth, health, and / or yield of the livestock. The interior 106 may have an environmental status. The environmental status may be a combination of one or more measurable environmental factors (environmental conditions), including carbon dioxide (CO2) concentration, carbon monoxide (CO) concentration, ammonia (NH3) concentration, oxygen (O2) concentration, methane (CH4) concentration, suspended particulate matter (e.g., dust) concentration, interior temperature, exterior temperature, relative humidity, effective environmental temperature (EET) (e.g., a value based on temperature, relative humidity, and wind speed), atmospheric pressure, differential pressure, animal weight, animal waste weight, animal feed weight, any other environmental status, and combinations thereof.
[0053] The various environmental factors may be measured using one or more environmental sensors 108. The environmental sensors 108 may include any type of sensor used to detect and / or infer the properties of the environmental factors. For example, the environmental sensors 108 may include chemical sensors, gas sensors, optical sensors (e.g., infrared, ultraviolet, visible light), cameras, load cells, strain gauges, scales, thermocouples, anemometers, air pressure sensors, any other sensor, and combinations thereof. The environmental sensors 108 may be located at any location within the livestock housing 102. For example, the environmental sensors 108 may be located near a ceiling, near a floor, on a wall, suspended in the interior 106, proximate to the livestock pens 104, at any other location, and combinations thereof. In some embodiments, the environmental sensors 108 may be located in a position that is configured to detect a particular environmental factor. For example, a CO2 sensor may be located near the floor of the livestock housing 102 based on the relative density of CO2 compared to atmospheric air. In some embodiments, certain environmental sensors 108may be located proximate the livestock pens 104 to monitor the environmental status proximate the livestock pens.
[0054] The environmental status of the interior 106 of the livestock housing 102 may be adjusted using one or more environmental controls (collectively 110). An environmental control may include any type of environmental control, such as a ventilation fan 110-1, a ventilation louver 110-2, a heater 110-3, a chiller 110-4, a humidifier, any other environmental control 110, and combinations thereof. Changing an operational status of one or more of the environmental controls 110 may cause a change in the environmental status of the interior 106 of the livestock housing 102. For example, turning on a ventilation fan 110-1 and / or opening a ventilation louver 110-2 may increase the ventilation airflow through the interior 106, thereby changing the concentration of the composition of the atmosphere in the interior 106 of the livestock housing 102. For example, increasing the ventilation airflow may decrease the concentration of CO2 and / or CO in the interior 106 of the livestock housing 102. In some examples, increasing the ventilation airflow may increase the concentration of O2 in the interior 106 of the livestock housing 102. In some embodiments, turning on or off the heater 110-3 and / or turning on or off the chiller 110-4 may change the temperature within the interior 106 of the environmental sensors 108.
[0055] A housing monitoring system 112 may monitor the livestock housing 102. For example, the housing monitoring system 112 may receive measurements from the environmental sensors 108. In some examples, the housing monitoring system 112 may monitor the status of the environmental controls 110, such as the power status of the ventilation fan 110- 1, the open or closed (or degree of open or closed) of the ventilation louver 110-2, the operational status of the heater 110-3 and / or the chiller 110-4, the status of any other environmental control, and combinations thereof. The housing monitoring system 112 may monitor the measurements from the environmental sensors 108 and / or the environmental controls 110 by storing time-series data from the environmental sensors 108 and / or the environmental controls 110. For example, the housing monitoring system 112 may associate each measurement or status update with a time-stamp.
[0056] An environmental status manager 114 may receive the environmental data from the environmental sensors 108. Using the environmental data, the environmental status manager 114 may determine the environmental status of the interior 106 of the livestock housing 102. For example, the environmental status manager 114 may process the environmental data to determine the environmental status of the interior 106 of the livestock housing 102. The environmental status manager 114 may process the environmental data in any way. For example, the environmental status manager 114 may process time-series environmental data to determine the environmental status.
[0057] As discussed herein, conventional environmental monitoring systems may utilize an average of multiple measurements from the environmental sensors 108 to estimate the environmental status of an environment. For example, a typical environmental monitoring system may determine the environmental status by averaging the measurements from multiple environmental sensors 108, such as measurements taken by environmental sensors 108 in different locations. In some examples, conventional environmental monitoring systems may utilize a rolling average of time-based measurements. For example, a rolling average may be used to determine the environmental status by averaging measurements taken over a particular period of time and / or a previous number of measurements. In some situations, conventional environmental monitoring systems may average a combination of measurements from multiple different environmental sensors 108 and a rolling average. But conventional environmental monitoring systems may not account for any measurement inaccuracies and / or bias, which may skew the resulting environmental status based on the extent of the inaccuracy and / or bias.
[0058] In accordance with at least one embodiment of the present disclosure, the environmental status manager 114 may apply a Kalman filter to the environmental data received from the housing monitoring system 112 and the environmental sensors 108. The Kalman filter may utilize time-series data to determine a Kalman environmental status based on the timeseries data that accounts for statistical noise and other inaccuracies in the environmental data. The Kalman filter generates an estimated state using a first set of measurements at a first time stamp. Using updated measurements at a second time stamp (which may include some variation based at least on random noise), the Kalman filter updates the estimated state by applyingweights to each of the measurements. As additional time-based measurements are received, the Kalman filter may continue to update weights for measurements and the resulting estimated state. After an initialization period (in which the Kalman filter is receiving sufficient time-based data to assign reduced weights to outlier data), the Kalman filter may generate a Kalman environmental status (also described herein as a Kalman filter environmental status) that is more representative of the actual environmental status than a conventional average or running average of the data from the environmental sensors 108.
[0059] During the initialization period, in some embodiments, the Kalman filter may accept the first set of measurements as true and assign a high variance to the first set of measurements and the Kalman filter may correct itself over time. The initialization period may be accelerated by assigning a blame (e.g., a weight) to each environmental sensor 108, depending on the inaccuracy of the environmental sensor 108. For example, an environmental sensor 108 having an accuracy with a particular range (e.g., within 1°C) but reading a second value that differs by more than the accuracy level (e.g., measuring a change of 10°C) may be reading a change in the parameter being measured; whereas an environmental sensor 108 having a larger inaccuracy (e.g., within 10°C) reading a change in the parameter may assign a portion of the reading to sensor inaccuracy and another portion of the reading partly to the velocity of the change in the parameter. The Kalman filter may utilize a cumulative distribution function (CDF) during the initialization period to determine how well initial readings fit within a current model and proportionally assign blame between sensor error and velocity error (accounting for the velocity of the change in the parameter) when the variance of the velocity is missing in the Kalman filter.
[0060] In accordance with at least one embodiment of the present disclosure, the environmental status manager 114 may generate an environmental status gradient of the environmental status within the livestock housing 102. For example, the environmental status of the livestock housing 102 may change based on the location within the livestock housing 102, based on factors including ventilation flow path, animal concentration, and so forth. Identifying the environmental status gradient and shifts in the environmental status gradient may help to identify whether a particular area of the livestock housing 102 is outside of the environmentalthreshold. In some embodiments, the Kalman environmental status may be determined across the entire livestock housing 102, but a certain portion of the livestock housing 102 may be outside of the environmental threshold. Generating a Kalman environmental status gradient may allow the operator to implement environmental control based on a portion of the livestock housing 102. This may help to improve the environmental status throughout the entire livestock housing 102.
[0061] An environmental control manager 116 may be in communication with each of the environmental controls 110. For example, the environmental control manager 116 may send control signals to change the activation status of the environmental controls 110. In some embodiments, the environmental control manager 116 may cause the environmental controls 110 to be adjusted to facilitate control of the environmental status of the interior 106 of the livestock housing 102 to an environmental threshold. For example, if the Kalman environmental status indicates that the CO2 levels are above the environmental threshold for CO2 concentration, the environmental control manager 116 may actuate the ventilation fan 110-1 to increase the air flow rate through the interior 106 of the livestock housing 102. This may help to reduce the CO2 concentration, thereby returning the CO2 concentration to below the environmental threshold.
[0062] The environmental control manager 116 may be in communication with the environmental status manager 114. For example, the environmental control manager 116 may be in communication with the environmental status manager 114 over a network 118. The network 118 may be any type of network. For example, the network 118 may be a local network, such as a wireless or wired local network. In some examples, the network 118 may include the Internet. In some embodiments, the environmental status manager 114 and the environmental control manager 116 may be in direct communication. For example, the environmental status manager 114 and the environmental control manager 116 may be located on the same computing device and / or server. In some embodiments, the environmental status manager 114 and the environmental control manager 116 may be in direct wired or wireless communication.
[0063] In some embodiments, the environmental control manager 116 may receive the Kalman environmental status determined by the environmental status manager 114. The environmental control manager 116 may compare the Kalman environmental status to one ormore environmental thresholds (e.g., suitable operating conditions for the livestock housing 102, such as a suitable temperature range, suitable CO2 concentration, suitable CO concentration, suitable NH3 concentration, suitable humidity level). If the environmental control manager 116 determines that the Kalman environmental status is not within the environmental threshold, the environmental control manager 116 may implement one or more mitigating activities. Such mitigating activities may include adjusting the operating state of one or more of the environmental controls 110. This may help to return the actual environmental status in the interior 106 of the livestock housing 102 to within the environmental threshold, thereby improving the health and / or yield of the livestock within the livestock housing 102.
[0064] Following are some specific, non-limiting examples of mitigating activities the environmental control manager 116 may implement to return the actual environmental status in the interior 106 of the livestock housing 102 to within the environmental threshold. In some examples, as discussed above, if the concentration of an atmospheric contaminant (e.g., CO2, CO, particulate dust) is higher than an environmental threshold, the environmental control manager 116 may cause the airflow to increase through the interior 106 of the livestock housing 102, such as by powering on the ventilation fans 110-1, adjusting a fan speed of the ventilation fans 110-1, adjusting a blade angle of the ventilation fans 110-1, opening the ventilation louvers 110-2, or otherwise increasing the airflow. In some examples, if the temperature of the interior 106 of the livestock housing 102 is outside of the environmental threshold, the environmental control manager 116 may cause the heater 110-3 and / or the chiller 110-4 to be activated, adjust a power level of the heater 110-3 and / or the chiller 110-4, adjust the airflow rate through the interior 106 of the livestock housing 102 (as discussed above), adjust the humidity, otherwise adjust the temperature, and combinations thereof.
[0065] In some embodiments, the environmental status manager 114 may generate a projected environmental status for the interior 106 of the livestock housing 102. The projected environmental status may be the Kalman environmental status at a time that is after the most recent time-stamp of the environmental data. While generating the Kalman environmental status, the Kalman filter may determine the value (e.g., the position) of the Kalman environmental status, the velocity of the change in the Kalman environmental status, and the acceleration of the changein the Kalman environmental status. Using the value, velocity, and / or the acceleration of the Kalman environmental status, the environmental status manager 114 may utilize the Kalman filter to generate the projected environmental status. In other words, based on the current value of the Kalman environmental status, the current rate of change of the Kalman environmental status, and the acceleration of the Kalman environmental status, the projected Kalman environmental status may be predicted based on the time of the projected future Kalman environmental status. As one example, the projected Kalman environmental status may be different than the current Kalman environmental status responsive to a relatively higher Kalman environmental status velocity.
[0066] In some embodiments, the environmental control manager 116 may cause the actual environmental status of the interior 106 of the livestock housing 102 to be adjusted based on the projected environmental status. For example, the environmental control manager 116 may identify that, at a time in advance of the most recently received environmental data, one or more aspects of the environmental status may be outside of the environmental threshold. This may help to improve the responsiveness of the environmental control system 100. In some embodiments, adjusting the environmental controls 110 based on the projected environmental status may help reduce a likelihood that the actual environmental status falls outside of the environmental threshold.
[0067] In some embodiments, the environmental control manager 116 and / or the environmental status manager 114 may generate a projected environmental status based on simulated environmental controls. For example, the environmental control manager 116 may simulate one or more environmental control actions. The environmental status manager 114 may simulate the effect of the simulated environmental control actions and determine the projected environmental status based on the simulated environmental control actions. This may allow the operator to determine (e.g., predict, estimate) the impact of the environmental control actions on the projected environmental status.
[0068] In some embodiments, the environmental control manager 116 may prepare multiple simulations of the impact of simulated environmental control actions. The environmental status manager 114 may determine the impact of each of the simulations. Theenvironmental status manager 114 may select which of the simulated environmental control actions to implement. For example, the environmental status manager 114 may select the simulated environmental control action that returns the Kalman environmental status to within the environmental threshold fastest. In some examples, the environmental status manager 114 may select the simulated environmental control action that has the lowest cost. In some examples, the environmental status manager 114 may select the simulated environmental control action that utilizes a particular environmental control.
[0069] In some embodiments, the Kalman filter applied to the environmental data by the environmental status manager 114 may be used to identify outliers in the environmental data received by the environmental sensors 108. For example, an outlier in the environmental data (referred to an outlier environmental data point or an outlier data point) may be a value that differs from the Kalman environmental status generated by the Kalman filter by more than an outlier threshold. The outlier environmental data point may correspond to environmental data measured (obtained) with an environmental sensor 108 with a corresponding time-stamp. The outlier threshold may be based on any threshold. For example, the outlier threshold may be based on the weight applied to the environmental data point at any time stamp. The outlier threshold weight may be based on a percentage of the weight applied to the highest-weighted environmental data point. For example, the outlier threshold weight may be less than 20%, less than 15%, less than 10%, less than 5%, less than 2%, less than 1%, or any value therebetween. In some embodiments, the outlier threshold weight may be an absolute value within the Kalman filter. As a specific, non-limiting example, a CO2 sensor may have a bias of one or both 50 ppm or 1% of the actual ppm. In that case, in a room with an average concentration of approximately 1000 ppm, the biased sensor may detect an average concentration of approximately 940 ppm with similarly located sensors detecting an average concentration of approximately 1,000 ppm. If the concentration were to increase to 2,000 ppm, the biased sensor would report a concentration of approximately 1,930 ppm while similarly located sensors would report concentrations of approximately 2,000. The environmental status manager 114 may help to identify both the absolute bias of approximately 50 ppm and the proportional bias of 1%. In some embodiments, the outlier environmental data point may be identified in any other manner.
[0070] In some embodiments, the Kalman filter may help the environmental status manager to identify and / or account for uncertainty. For example, a sensor having a high accuracy may measure CO2 with a confidence interval of 990 ppm to 1,010 ppm for a room having a concentration of 1,000 ppm. A sensor having a low accuracy may have a confidence interval of approximately 900 ppm to 1100 ppm for the same room. Due to varying accuracy of sensors (based on sensor type, sensor brand, sensor model, etc.), the actual accuracy might differ from the one described in the accuracy guaranteed by the manufacturer. The manufacturer may state the accuracy range based on the worst possible accuracy for their sensors, when in reality, they may provide better accuracy than anticipated. This accuracy may be determined using a white test. A white test determines the amount of white noise contained in readings given the actual values. A greater white noise may correspond to a larger confidence interval. Instead of relying on the manufacturer's accuracy range, using a Kalman filter followed by a smoothing filter, the environmental status manager may compute the average squared error between the Kalman filter estimates and the sensor's readings. A smaller average squared error may correspond to an increased accuracy of the sensor. Using the average squared error, the environmental status manager 114 may determine the certainty of the sensor reading. A higher certainty may allow the environmental status manager and other elements to generate projected Kalman environmental statuses further into the future while maintaining the same confidence.
[0071] As discussed herein, the environmental status manager may identify faulty sensors, or sensors that have a confidence level that insufficient to generate readings useful to determine the actual environmental status. Faulty sensors may be based on the confidence level tracked over time, the absolute change in sensor measurements, the absolute sensor reading (e.g., a measurement of 270° C for the interior of the livestock housing would be an indication of a faulty sensor or sensor measurement). In some embodiments, a single outlier datapoint may be identified. Such outliers may be identified based on the velocity and / or acceleration of the particular sensor and / or the entire sensor set.
[0072] In some embodiments, when the environmental status manager 114 identifies an outlier environmental data point, the environmental status manager 114 may determine whether the outlier environmental data point is caused by one or more of the livestock animalsin the livestock housing 102. For example, the environmental status manager 114 may compare the outlier environmental data point to other environmental data points measured by the particular environmental sensor 108 from which the outlier environmental data point was obtained and / or other environmental data points from environmental sensors 108 physically proximate to the particular environmental sensor 108 that generated the outlier environmental data point. If other environmental data points from the same sensor are not similarly outliers and / or if other environmental data points from environmental sensors 108 in the same area are similarly outliers, then the environmental status manager 114 may determine that the outlier environmental data point is a result of livestock activity, such as animal breath, flatulence, excrement, or other animal cause. If other environmental data points from the same sensor are similarly outliers and / or if other environmental data points from environmental sensors 108 in the same area are not similarly outliers, then the environmental status manager 114 may determine that the outlier environmental data point is a result of a faulty environmental sensor 108.
[0073] In some embodiments, the environmental status manager 114 and / or the environmental control manager 116 may utilize the Kalman environmental status generated by the Kalman filter to calibrate one or more of the environmental sensors 108. For example, the environmental status manager 114 and / or an operator may determine that a particular environmental sensor 108 is out of calibration. The operator may utilize the Kalman environmental status to calibrate the particular environmental sensor 108. This may help to improve the accuracy and / or precision of the Kalman environmental status generated by the environmental status manager 114.
[0074] In some embodiments, the environmental status manager 114 and / or the environmental control manager 116 may periodically and / or episodically calibrate one or more of the environmental sensors 108 using the Kalman environmental status generated by the Kalman filter. For example, the environmental status manager 114 and / or the environmental control manager 116 may periodically calibrate the environmental sensors 108 based on a calibration schedule. The calibration schedule may include calibration of the environmental sensors 108 every hour, every 2 hours, every 6 hours, every 12 hours, every 1 day, every 1.5 days,every 2 days, every 3 days, every 5 days, every week, every 2 weeks, every month, every 3 months, every 6 months, every year, and any timeframe therebetween. In some embodiments, the environmental status manager 114 and / or the environmental control manager 116 may calibrate one or more of the environmental sensors 108 using the Kalman environmental status generated by the Kalman filter episodically based on one or more conditions, such as the identification of one or more outlier datapoints, the installation of a new sensor, the removal of a sensor, the introduction of new livestock, the removal of livestock, any other condition, and combinations thereof. In some embodiments, the environmental sensors 108 may be calibrated using a T-test. If the measurements from the environmental sensors match an expected distribution (as determined in the T-test), then the sensor is likely within calibration. If the measurements do not match an expected distribution, then the sensor is likely out of calibration. If another distribution is found which better explains the data, then the new distribution may be used as the baseline. Over time, the patterns of the sensor and sensor calibration may be monitored to determine if a new calibration would result in improved measurements and / or if the sensor itself is faulty.
[0075] Each of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116 may be implemented at a computing device (e.g., the same computing device, different computing devices) that is local to the container environmental control system 100 (e.g., the livestock housing 102) (e.g., edge computing). In some embodiments, one or more of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116 may be implemented at different devices of the environmental control system 100 operating according to a primarysecondary configuration or a peer-to-peer configuration. In some embodiments, each of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116 may be implemented by a server; or may be implemented in other and / or additional devices. In embodiments where the one or more of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116 are implemented on a server, the server may include a mobile device (e.g., a cell phone, a smartphone, a PDA, a tablet, a laptop, a watch, a wearable device, etc.); a non-mobile device (e.g., a desktop or server); a cloud computing platform and configured to perform processing toimplement one or more of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116; and a web server.
[0076] The network 118 may include one or more networks, such as the Internet, and can use one or more communications platforms or technologies suitable for transmitting data and / or communication signals. As a non-limiting example, the network 124 may utilize one or more of near field communication (NFC), BLUETOOTH ©, wireless / cellular networks, wide area networks (WAN), wired communications, or any other conventional network for transmitting data and / or communication signals between each of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116.
[0077] Although FIG. 1 illustrates a particular arrangement of the housing monitoring system 112, the environmental status manager 114, and the environmental control manager 116, and the network 118, various additional arrangements are possible.
[0078] FIG. 2 is a schematic representation of an environmental control system 200, according to at least one embodiment of the present disclosure. Each of the components of the environmental control system 200 can include software, hardware, or both. For example, the components can include one or more non-transitory computer-readable storage medium storing instructions stored on a computer-readable storage medium and executable by processors of one or more computing devices, such as a client device or server device. When executed by the one or more processors, the computer-executable instructions of the environmental control system 200 can cause the computing device(s) to perform the methods described herein. Alternatively, the components can include hardware, such as a special-purpose processing device to perform a certain function or group of functions. Alternatively, the components of the environmental control system 200 can include a combination of computer-executable instructions and hardware.
[0079] Furthermore, the components of the environmental control system 200 may, for example, be implemented as one or more operating systems, as one or more stand-alone applications, as one or more modules of an application, as one or more plug-ins, as one or more library functions or functions that may be called by other applications, and / or as a cloudcomputing model. Thus, the components may be implemented as a stand-alone application, suchas a desktop or mobile application. Furthermore, the components may be implemented as one or more web-based applications hosted on a remote server. The components may also be implemented in a suite of mobile device applications or "apps."
[0080] The environmental control system 200 includes an environmental status manager 214. The environmental status manager 214 may receive environmental data from environmental sensors 208. The environmental sensors 208 may include any type of environmental sensor, including, but not limited to, a CO2 sensor 220, a temperature sensor 222, and a humidity sensor 224. Using the environmental data from the environmental sensors 208, the environmental status manager 214 may generate an environmental status for the interior 106 of the livestock housing 102. The environmental status manager 214 may correspond to the environmental status manager 114 and the environmental sensors 208 may correspond to the environmental sensors 108.
[0081] In accordance with at least one embodiment of the present disclosure, the environmental status manager 214 may include a Kalman filter 226. The Kalman filter 226 may process the environmental data from the environmental sensors 208 to generate a Kalman environmental status 228. As discussed herein, the Kalman environmental status 228 may be representative of (e.g., an estimate of) the actual environmental status of the interior 106 of the livestock housing 102. In some embodiments, the environmental status manager 214 may generate a projected environmental status 230. The projected environmental status 230 may be a projection of the environmental status at a point in time after the environmental data received from the environmental sensors 208. In other words, the projected environmental status 230 may include a prediction of a future environmental status within the livestock housing 102. The environmental status manager 214 may generate the projected environmental status 230 using the velocity and / or acceleration of the change in the Kalman environmental status generated by the Kalman filter 226.
[0082] The environmental control system 200 may include an environmental control manager 216, which may correspond to the environmental control manager 116. The environmental control manager 216 may be in communication with one or more environmental controls (e.g., environmental controls 110). Based on the Kalman environmental status 228and / or the projected environmental status 230, the environmental control manager 216 may provide instructions to one or more of the environmental controls 110 to change the actual environmental status within the livestock housing 102 to be within an environmental threshold. As discussed herein, the environmental control manager 216 may adjust any type of environmental control 110, such as one or more fans, louvers, heaters, chillers, humidifiers, any other environmental control, and combinations thereof.
[0083] The environmental control system 200 may include a sensor calibration engine 232. The sensor calibration engine 232 may receive the environmental data from the environmental sensors 208 and the Kalman environmental status 228 from the environmental status manager 214. In some embodiments, the sensor calibration engine 232 calibrates one or more of the environmental sensors 208 based on the Kalman environmental status 228. For example, the sensor calibration engine 232 may adjust the interpretation of the signal received from the environmental sensors 208 to result in a value that is consistent with the Kalman environmental status 228. In some such embodiments, the sensor calibration engine 232 may apply a compensation value to the signal received from the environmental sensors 208 to provide a value consistent with the Kalman environmental status 228.
[0084] The environmental status manager 214 may identify one or more outlier environmental data points in the environmental data. The outlier data points may be identified based on the deviation of the data point from the Kalman environmental status 228. In some embodiments, the sensor calibration engine 232 may calibrate the environmental sensors 208 based on the identification of the outlier data points. For example, the environmental status manager 214 and / or the sensor calibration engine 232 may determine that the bias of an environmental sensor 208 has drifted based on one or more outlier data points from that environmental sensor 208. The sensor calibration engine 232 may calibrate the environmental sensor 208 to return the interpretation of the sensor data to be consistent with the Kalman environmental status 228.
[0085] FIG. 3 is a representation of a Kalman filter implementation 334, according to at least one embodiment of the present disclosure. The Kalman filter implementation 334 includes multiple plots that illustrate the various time-based aspects of the Kalman filter 226. A statuscurve 336 may be a representation of the environmental status in the livestock housing 102. An actual status curve 338 is representative of the actual environmental status, an average status curve 340 is representative of a rolling average of environmental data 342, and a Kalman environmental status curve 344 is representative of the Kalman environmental status generated by the Kalman filter 226.
[0086] As may be seen, the environmental data 342 includes variation in the data values. The average status curve 340 (corresponding to the rolling average of the environmental data 342) may be offset from the actual status curve 338. Applying the Kalman filter 226 to the environmental data 342 may result in the Kalman environmental status curve 344 that is closer to the actual status curve 338 than the average status curve 340. In other words, the Kalman environmental status 228 may be more representative of the actual environmental status than the rolling average of the environmental data 342.
[0087] As discussed herein, the Kalman filter 226 has an initialization period 346. The initialization period 346 may be the period during which the Kalman filter 226 is being applied to the time-series data and applying weights to the various data points of the environmental data 342. The weight applied to the data points may depend on, for example, the velocity of the change in the parameter measured with the environmental sensor measuring the data points, and / or the accuracy of the environmental sensor measuring the data points. In some embodiments, during the initialization period 346, the rolling average of the environmental data 342 may be more representative of the actual environmental status than the Kalman environmental status 228 (i.e., the average status curve 340 may be closer to the actual status curve 338 than the Kalman environmental status curve 344.
[0088] The initialization period 346 may be identified in any manner. For example, the initialization period 346 may be identified based on an estimated error in the Kalman filter 226. When the estimated error is less than an error threshold, the Kalman environmental status 228 may be representative of the actual environmental status. In some embodiments, the initialization period 346 may be based on a duration of time. In some embodiments, the initialization period 346 is based on a number of data points against which the Kalman filter 226 is applied (e.g., the number of available data points).
[0089] FIG. 3 further includes a velocity plot 348 and an acceleration plot 350. The velocity plot 348 may be a representation of the rate of change of the Kalman environmental status 228 (e.g., the Kalman environmental status curve 344). The acceleration plot 350 may be a representation of the change (e.g., the increase and / or decrease) in the rate of change of the Kalman environmental status 228. As discussed herein, the environmental status manager 214 may generate a projected environmental status 230. In some embodiments, the environmental status manager 214 may generate the projected environmental status 230 utilizing the current Kalman environmental status 228, the velocity, and the acceleration of the change in the Kalman environmental status 228. For example, the environmental status manager 214 may generate the projected environmental status 230 using dead reckoning from the status, the velocity, and the acceleration of the Kalman environmental status 228.
[0090] A position error plot 352, a velocity error plot 354, and an acceleration error plot 356 may be a representation of the estimated uncertainty or error in the Kalman filter 226 when generating the Kalman environmental status 228. As may be seen, the estimated error decreases as the Kalman filter 226 is applied to more time-series data. This may help to increase how representative the Kalman environmental status 228 is to the actual environmental status of the interior 106 of the livestock housing 102.
[0091] As discussed herein, during the initialization period 346, the status error 358 may be greater than an error threshold 360. When the status error 358 is reduced below the error threshold 360, the Kalman environmental status 228 may be representative of the actual environmental status. In some embodiments, the environmental status may not be determined (e.g., estimated) using the Kalman filter 226 during the initialization period 346. In some embodiments, the environmental status may be determined using the rolling average, or the average environmental status, during the initialization period 346. When the status error 358 is reduced below the error threshold 360, the environmental status may be determined using the Kalman environmental status. In this manner, the operator may determine the environmental status based on the determination that may be most representative of the actual environmental status at a particular period of time. In other words, the Kalman environmental status 228 maybe ignored when the status error 358 is greater than the error threshold 360 (e.g., during the initialization period 346).
[0092] FIG. 4 is a schematic representation of an environmental control system 400, according to at least one embodiment of the present disclosure. The environmental control system 400 includes environmental sensors 408. The environmental sensors 408 may measure environmental data. The environmental control system 400 may apply a Kalman filter 426 to the environmental data. The Kalman filter 426 may generate a Kalman environmental status 428 based on the environmental data. For example, the Kalman filter 426 may utilize the time-series environmental data (including past and present environmental data) to generate a Kalman environmental status 428 that is representative of the actual environmental status of an interior of a livestock housing.
[0093] In some embodiments, as discussed herein, the Kalman environmental status 428 may be representative of the current environmental status, and / or the environmental status at the most recent time-stamp from the environmental data. In some embodiments, the Kalman environmental status 428 may be representative of a past environmental status, or the environmental status at a time-stamp that is earlier than the most recent time stamp from the environmental data. In some embodiments, the Kalman environmental status 428 may be a projected environmental status, or representative of an environmental status at a time after the most recent time stamp from the environmental data.
[0094] An environmental control manager 416 (e.g., environmental control manager 116) may receive the Kalman environmental status 428. The environmental control manager 416 may analyze the Kalman environmental status 428 and determine whether the Kalman environmental status 428 and / or any particular aspect of the Kalman environmental status 428 is outside of an environmental threshold. If the Kalman environmental status 428 is outside of the environmental threshold, the environmental control manager 416 may generate a control signal 462. The control signal 462 may be a signal to one or more environmental controls (e.g., environmental controls 110) to adjust the operation of the environmental controls. For example, the control signal 462 may be configured to cause the environmental status to fall within the environmental threshold such as by controlling one or more conditions (e.g., temperature,pressure, airflow, humidity, CO2 concentration, CO concentration, NH3 concentration) in the livestock housing 102.
[0095] In some embodiments, the environmental control manager 416 may determine whether the Kalman environmental status 428 is trending toward the environmental threshold. For example, the environmental control manager 416 may determine a projected Kalman environmental status, and determine whether the projected Kalman environmental status is outside of the environmental threshold. If the projected Kalman environmental status is outside of the environmental threshold, then the environmental control manager 416 may implement an environmental control to prevent the Kalman environmental status from exceeding the Kalman environmental control. In this manner, the environmental control manager may implement an environmental control that accounts for the velocity and acceleration of the environmental status in near real-time, thereby improving the responsiveness of the environmental control manager 416.
[0096] FIG. 5 is a schematic representation of an environmental control system 500, according to at least one embodiment of the present disclosure. The environmental control system 500 includes environmental sensors 508. The environmental sensors 508 may measure environmental data in the interior of a livestock housing. An environmental status manager 514 may determine an environmental status for the interior of the livestock housing based on the environmental data.
[0097] In some embodiments, the environmental status manager 514 may determine the environmental status using different techniques. For example, the environmental status manager 514 (corresponding to the environmental status manager 114) may apply a Kalman filter 526 to the environmental data to generate a Kalman environmental status 528. The environmental status manager 514 may further apply an averaging engine 564 to the environmental data. The averaging engine 564 may generate an average environmental status 566. The average environmental status 566 may be an average of the environmental data, including an average of the most recent environmental data and / or a rolling average of the timeseries environmental data.T1
[0098] As discussed herein, the Kalman filter 526 may have an associated error or uncertainty for the Kalman environmental status 528. When the error or uncertainty of the Kalman environmental status 528 is greater than an error threshold, the environmental control system 500 may select the average environmental status 566 to send to the environmental control manager 516. When the error or uncertainty of the Kalman environmental status 528 is less than the error threshold, the environmental control system 500 may select the Kalman environmental status 528 to send to the environmental control manager 516. As discussed herein, the environmental control manager 516 may generate one or more control signals 562, which may be received by an environmental control manager (e.g., environmental control manager 116) configured to cause the environmental status to return the environmental status to within an environmental threshold, such as by controlling one or more conditions (e.g., temperature, pressure, airflow, humidity, CO2 concentration, CO concentration, NH3 concentration) in the livestock housing 102.
[0099] FIG. 6 is a schematic representation of an environmental control system 600, according to at least one embodiment of the present disclosure. The environmental control system 600 includes environmental sensors 608. The environmental sensors 608 may measure environmental data in the interior of a livestock housing. The environmental control system 600 may apply a Kalman filter 628 to the environmental data received from the environmental sensors 608. For example, as discussed herein, the Kalman filter 628 may be part of an environmental status manager, and the environmental status manager may apply the Kalman filter 628 to the environmental data to generate a Kalman environmental status.
[0100] An environmental data manager 668 (e.g., corresponding to the environmental control manager 116) may receive the Kalman environmental status from the Kalman filter 628 (e.g., from the environmental status manager that applies the Kalman filter 628 to the environmental data). The environmental data manager 668 may further receive the environmental data from the environmental sensors 608. The environmental data manager 668 may determine whether one or more measurements from the environmental data is an outlier. For example, the environmental data manager 668 may determine whether a measurement from the environmental data significantly differs from the Kalman environmental status. In someembodiments, the environmental data manager 668 determines that environmental data differing from the Kalman environmental status by more than about 30%, more than about 40%, or more than about 50% is an outlier.
[0101] In some embodiments, the environmental data manager 668 may determine that one or more of the environmental sensors 608 is out of calibration. The environmental data manager 668 may determine that one or more measurements from a particular environmental sensor 608 are outliers. Based on the number and / or extent of the outlier measurements, the environmental data manager 668 may determine that the particular environmental sensor 608 is out of calibration. In some embodiments, the environmental data manager 668 may determine that the particular environmental sensor 608 is out of calibration based on multiple non-outlier measurements that may trend to be different than the Kalman environmental status. In some embodiments, the environmental data manager 668 may determine that the particular environmental sensor 608 is out of calibration based on any metric and / or combination of measurements. By way of non-limiting example, the environmental data manager 668 may determine that an environmental sensor 608 is out of calibration responsive to receiving greater than a predetermined number or a predetermined percentage of measurements falling outside of a predetermined range from the Kalman environmental status. As one example, the environmental data manager 668 may determine that an environmental sensor 608 is out of calibration responsive to receiving greater than 5%, greater than about 10%, greater than 20%, or greater than 30% of the measurements differing from the Kalman environmental status more than about 10%, more than about 20%, more than about 30%, more than about 40%, or more than about 50%.
[0102] In accordance with at least one embodiment of the present disclosure, a sensor calibration engine 632 may calibrate one or more of the environmental sensors 608. For example, the sensor calibration engine 632 may calibrate one or more of the environmental sensors 608 that the environmental data manager 668 determines is out of calibration. In some embodiments, the sensor calibration engine 632 may calibrate one or more of the environmental sensors 608 periodically and / or episodically. For example, the sensor calibration engine 632 may periodically calibrate the environmental sensors 608 based on a predetermined schedule. In some examples,the sensor calibration engine 632 may episodically calibrate the environmental sensors 608 based on predetermined events. In some embodiments, the sensor calibration engine 632 may calibrate each of the environmental sensors 608 simultaneously. In some embodiments, the sensor calibration engine 632 may calibrate the environmental sensors 608 independently. Calibrating the environmental sensors 608 may help to improve the accuracy and / or precision of the Kalman environmental status. In some embodiments, responsive to receiving a signal from the environmental data manager than a particular sensor is out of calibration, the sensor calibration engine 632 calibrates the sensor and / or provides a signal to a user interface to indicate that the sensor should be calibrated (e.g., exposed to a calibration process and / or a calibration gas).
[0103] FIG. 7 is a simplified flowchart illustrating a method 700 of operating a livestock housing, in accordance with one or more embodiments of the disclosure. While FIG. 7 illustrates acts according to one embodiment, alternative embodiments may omit, add to, reorder, and / or modify any of the acts shown in FIG. 7. The acts of FIG. 7 can be performed as part of a method. Alternatively, a computer-readable medium can include instructions that, when executed by one or more processors, cause a computing device to perform the acts of FIG. 7. In some embodiments, a system can perform the acts of FIG. 7.
[0104] The method 700 may include receiving environmental data for an interior of a livestock housing from a plurality of environmental sensors, as shown at act 770. The environmental data may be received by the environmental sensors, and received by an environmental status manager (e.g., environmental status manager 114) from the environmental sensors. The environmental status manager may generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data, as shown at act 772. The environmental status manager may determine whether the Kalman environmental state is within an environmental threshold, as shown at act 774.
[0105] Responsive to determining that the Kalman environmental status is within the environmental threshold, the environmental control system may continue to monitor the environmental data. For example, in the embodiment shown, acts 770 and 772 may be repeated responsive to determining that the Kalman environmental status is within the environmentalthreshold. If the Kalman environmental status is not within the environmental threshold (e.g., if the Kalman environmental status is outside of the environmental threshold), an environmental control manager may adjust an environmental control to adjust the Kalman environmental status to be within the environmental threshold, as shown at act 776. In this manner, the environmental control system may maintain the Kalman environmental status within the environmental threshold.
[0106] In accordance with at least one embodiment of the present disclosure, the environmental status manager may monitor the environmental data and / or the Kalman environmental status. For example, the environmental status manager may loop through acts 770, 772, and 774 while the Kalman environmental status is within the environmental threshold. Responsive to the Kalman environmental status falling outside of the environmental threshold, the environmental control manager may adjust one or more environmental controls to return the Kalman environmental to within the environmental threshold. In some embodiments, as discussed herein, the Kalman environmental status may be a projected Kalman environmental status. The projected Kalman environmental status may be used adjust an environmental control to prevent the Kalman environmental status from exceeding the environmental threshold.
[0107] FIG. 8 is a simplified flowchart illustrating a method 800 for operating a livestock housing, in accordance with one or more embodiments of the disclosure. While FIG. 8 illustrates acts according to one embodiment, alternative embodiments may omit, add to, reorder, and / or modify any of the acts shown in FIG. 8. The acts of FIG. 8 can be performed as part of a method. Alternatively, a computer-readable medium can include instructions that, when executed by one or more processors, cause a computing device to perform the acts of FIG. 8. In some embodiments, a system can perform the acts of FIG. 8.
[0108] The method 800 may include receiving, with an environmental status manager, environmental data for an interior of a livestock housing from a plurality of environmental sensors, as shown at act 878. The environmental status manager may generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data, as shown at act 880. An environmental data manager may analyze the environmental data with respect to the Kalman environmental status. The environmental datamanager may identify, in the environmental data, an outlier datapoint, as shown at act 882. The environmental data manager may identify, based on the outlier datapoint, an environmental sensor from the plurality of environmental sensors for calibration, as shown at act 884. In some embodiments, a sensor calibration engine may calibrate one or more of the environmental sensors.
[0109] Still other embodiments involve a computer-readable storage medium (e.g., a non-transitory computer-readable storage medium) having processor-executable instructions configured to implement one or more of the techniques presented herein. FIG. 9 is a schematic view of a computer device 902, in accordance with embodiments of the disclosure. In some embodiments, one or more of the housing monitoring system 112 (FIG. 1), the environmental status manager 114 (FIG. 1), the environmental status manager 116 (FIG. 1), the environmental control system 200, 400, 500, 600 (FIG. 2-FIG. 4) and / or one or more components thereof includes a computer device such as the computer device 902 of FIG. 9. The computer device 902 may include a communication interface 904, at least one processor 906, a memory 908, a storage device 910, an input / output device 912, and a bus 914. The computer device 902 may be used to implement various functions, operations, acts, processes, and / or methods disclosed herein, such as the method 700 and / or the method 800.
[0110] The communication interface 904 may include hardware, software, or both. The communication interface 904 may provide one or more interfaces for communication (such as, for example, packet-based communication) between the computer device 902 and one or more other computing devices or networks (e.g., a server). As an example, and not byway of limitation, the communication interface 904 may include a network interface controller (NIC) or network adapter for communicating with an Ethernet or other wire-based network or a wireless NIC (WNIC) or wireless adapter for communicating with a wireless network, such as a Wi-Fi.
[0111] The at least one processor 906 may include hardware for executing instructions, such as those making up a computer program. By way of non-limiting example, to execute instructions, the at least one processor 906 may retrieve (or fetch) the instructions from an internal register, an internal cache, the memory 908, or the storage device 910 and decode and execute them to execute instructions. In some embodiments, the at least one processor 906includes one or more internal caches for data, instructions, or addresses. The at least one processor 906 may include one or more instruction caches, one or more data caches, and one or more translation look aside buffers (TLBs). Instructions in the instruction caches may be copies of instructions in the memory 908 or the storage device 910.
[0112] The memory 908 may be coupled to the at least one processor 906. The memory 908 may be used for storing data, metadata, and programs for execution by the processor(s). The memory 908 may include one or more of volatile and non-volatile memories, such as Random- Access Memory ("RAM"), Read-Only Memory ("ROM"), a solid state disk ("SSD"), Flash, Phase Change Memory ("PCM"), or other types of data storage. The memory 908 may be internal or distributed memory.
[0113] The storage device 910 may include storage for storing data or instructions. As an example, and not by way of limitation, storage device 910 may include a non-transitory storage medium described above. The storage device 910 may include a hard disk drive (HDD), Flash memory, an optical disc, a magneto-optical disc, magnetic tape, or a Universal Serial Bus (USB) drive or a combination of two or more of these. The storage device 910 may include removable or non-removable (or fixed) media, where appropriate. The storage device 910 may be internal or external to the storage device 910. In one or more embodiments, the storage device 910 is non-volatile, solid-state memory. In other embodiments, the storage device 910 includes read-only memory (ROM). Where appropriate, this ROM may be mask programmed ROM, programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), electrically alterable ROM (EAROM), or Flash memory or a combination of two or more of these.
[0114] The storage device 910 may include machine-executable code stored thereon. The storage device 910 may include, for example, a non-transitory computer-readable storage medium. The machine-executable code includes information describing functional elements that may be implemented by (e.g., performed by) the at least one processor 906. The at least one processor 906 is adapted to implement (e.g., perform) the functional elements described by the machine-executable code. In some embodiments the at least one processor 906 may be configured to perform the functional elements described by the machine-executable codesequentially, concurrently (e.g., on one or more different hardware platforms), or in one or more parallel process streams.
[0115] When implemented by the at least one processor 906, the machine-executable code is configured to adapt the at least one processor 906 to perform operations of embodiments disclosed herein. For example, the machine-executable code may be configured to adapt the at least one processor 906 to perform at least a portion or a totality of the method 700 of FIG. 7 and / or the method 800 of FIG. 8. As another example, the machine-executable code may be configured to adapt the at least one processor 906 to implement a system, such as at least some of the example environmental control system 100 depicted in FIG. 1. As a specific, non-limiting example, the machine-executable code may be configured to cause the environmental status manager 114 to generate an environmental Kalman filter and the environmental control manager to control one or more operations of the environmental controls 110 based on the environmental Kalman filter.
[0116] All references cited herein are incorporated herein in their entireties. If there is a conflict between definitions herein and in an incorporated reference, the definition herein shall control.
[0117] While the present disclosure has been described herein with respect to certain illustrated embodiments, those of ordinary skill in the art will recognize and appreciate that it is not so limited. Rather, many additions, deletions, and modifications to the illustrated embodiments may be made without departing from the scope of the disclosure as hereinafter claimed, including legal equivalents thereof. In addition, features from one embodiment may be combined with features of another embodiment while still being encompassed within the scope as contemplated by the inventors. Further, embodiments of the disclosure have utility with different and various machine types and configurations.
Claims
CLAIMSWhat is claimed is:
1. A method of operating a livestock housing, the method comprising: receiving environmental data for an interior of the livestock housing from a plurality of environmental sensors; generating a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data; and based on the Kalman environmental status, adjusting an environmental control to adjust an actual environmental status of the livestock housing.
2. The method of claim 1, further comprising determining an estimated error for the Kalman environmental status.
3. The method of claim 2, wherein adjusting the environmental control comprises adjusting the environmental control when the estimated error exceeds an error threshold, and further comprising: generating an average environmental status using a running average of the plurality of environmental sensors; and when the estimated error does not exceed the error threshold, adjusting the environmental control based on the running average.
4. The method of any one of claims 1 through 3, further comprising generating a projected environmental status using the Kalman filter and the Kalman environmental status.
5. The method of claim 4, wherein generating the projected environmental status comprises using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
6. The method of claim 4 or claim 5, wherein adjusting the environmental control comprises adjusting the environmental control based on the projected environmental status.
7. The method of any one of claims 1 through 6, wherein adjusting the environmental control comprises at least one of powering on a fan, adjusting a louver, adjusting a temperature in the housing, or adjusting a humidity of the housing.
8. The method of any of any one of claims 1 through 7, wherein the environmental status comprises at least one of temperature, humidity, or CO2 concentration.
9. A system, comprising: a plurality of environmental sensors located in an interior of a livestock housing; a plurality of environmental controls in the interior of the livestock housing; and an environmental control system in operable communication with the plurality of environmental sensors and the plurality of environmental controls, the environmental control system comprising: at least one processor; and at least one non-transitory computer-readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the environmental control system to: receive environmental data for the interior of the livestock housing from the plurality of environmental sensors; generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data; and based on the Kalman environmental status, adjust at least one environmental control of the plurality of environmental controls to adjust an actual environmental status of the livestock housing.
10. The system of claim 9, wherein the plurality of environmental sensors are configured to measure at least one of CO2 concentration, CO concentration, temperature, or humidity.
11. The system of claim 9 or claim 10, wherein the plurality of environmental controls comprises at least one of a fan, a louver, a heater, or a chiller.
12. The system of any one of claims 9 through 11, wherein the instructions further cause the environmental control system to determine an estimated error for the Kalman environmental status.
13. The system of claim 12, wherein adjusting the at least one environmental control comprises adjusting the at least one environmental control when the estimated error exceeds an error threshold, and wherein the instructions further cause the environmental control system to: generate an average environmental status using a running average of the plurality of environmental sensors; and when the estimated error does not exceed the error threshold, adjust the at least one of the plurality of environmental controls based on the running average.
14. The system of any one of claims 9 through 13, wherein the instructions further cause the environmental control system to generate a projected environmental status using the Kalman filter and the Kalman environmental status.
15. The system of claim 14, wherein generating the projected environmental status comprises using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
16. The system of claim 14 or claim 15, wherein adjusting the environmental control comprises adjusting the environmental control based on the projected environmental status.
17. An environmental control system, comprising: at least one processor; and at least one non-transitory computer-readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the environmental control system to: receive environmental data for an interior of a livestock housing from a plurality of environmental sensors; generate a Kalman environmental status for the interior of the livestock housing by applying a Kalman filter to the environmental data; and based on the Kalman environmental status, adjust an environmental control to adjust an actual Kalman environmental status of the livestock housing.
18. The environmental control system of claim 17, wherein the instructions further cause the environmental control system to generate a projected environmental status using the Kalman filter and the Kalman environmental status.
19. The environmental control system of claim 18, wherein generating the projected environmental status comprises using dead reckoning based on at least one of a velocity of the Kalman environmental status or an acceleration of the Kalman environmental status.
20. The environmental control system of claim 18 or claim 19, wherein adjusting the environmental control comprises adjusting the environmental control based on the projected environmental status.
21. A method of operating a livestock housing, the method comprising: receiving environmental data for an interior of the livestock housing from a plurality of environmental sensors; generating a Kalman environmental status for the interior of the housing by applying a Kalman filter to the environmental data; identifying, in the environmental data, an outlier datapoint; and identifying, based on the outlier datapoint, an environmental sensor from the plurality of environmental sensors for calibration.
22. The method of claim 21, further comprising calibrating the environmental sensor of the plurality of environmental sensors based on the Kalman environmental status.
23. The method of claim 22, further comprising calibrating each of the plurality of environmental sensors based on the Kalman environmental status.
24. The method of any one of claims 21 through 23, further comprising identifying a bias of the plurality of environmental sensors based on the Kalman environmental status.
Citation Information
Patent Citations
Control method and device of oxygen production air conditioner, oxygen production air conditioner and storage medium
CN117029167A
Control device for regulating at least one room climate parameter, room air conditioning system and procedure
DE102019213018A1
Estimation method of environment in greenhouse, estimation device of environment in greenhouse, and computer program
JP2021114968A
Systems and methods for rapid disturbance detection and response
US20140214214A1
System and method for optimizing building energy on basis of indoor environment parameter prediction and dynamic user setup
WO2019017555A1
Cited By
Pig farm intelligent temperature monitoring system based on rail robot
CN121115942A