Animal condition monitoring

A distributed animal condition monitoring system using adaptable intelligence modules on nodes like tags and sensors addresses the inflexibility of existing systems, enabling real-time and localized condition detection for improved livestock health management.

GB2617324BActive Publication Date: 2025-05-07CAMBRIDGE ANIMAL TECH LTD
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
GB2022004677
Authority / Receiving Office
GB · GB
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-31
Publication Date
2025-05-07
Estimated Expiration
2042-03-31

AI Technical Summary

Technical Problem

Existing animal health monitoring systems are not flexible and responsive enough to adapt to the needs of livestock welfare, particularly in terms of identifying conditions such as illness or birth, and often require centralized processing that can be delayed or inefficient.

Method used

A distributed animal condition monitoring system that utilizes nodes like tags, environmental sensors, and gateways to identify conditions based on measured data using trained models, with adaptable logic and intelligence modules that can be deployed according to node capabilities, allowing for real-time and localized condition detection.

Benefits of technology

The system provides a more flexible and responsive animal condition monitoring system that can identify conditions like illness or birth more effectively and adapt to various environments, enhancing the overall health management of livestock.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000001_0000
    Figure 00000001_0000
  • Figure 00000002_0000
    Figure 00000002_0000
  • Figure 00000002_0001
    Figure 00000002_0001
Patent Text Reader

Abstract

A method for use in monitoring condition of an animal or its environment comprising generating code embodying a set of rules for allowing a node, such as a tag 1 worn by the animal, an environmental s
Need to check novelty before this filing date? Find Prior Art

Description

Field The present invention relates to animal condition monitoring. 5 Background Welfare of livestock, such as cattle, is becoming increasing important, and systems for monitoring the health of livestock are being deployed. 10 Several animal health monitoring systems which employ sensors, such as temperature sensors, carried by or implanted in an animal are known. WO 2005 / 101273 Ai describes a system for the intensive management of animals. The system comprises animal identification means for identifying individual animals, at 15 least one device for measuring one or more parameters of individual animals, a processor for processing measurements obtained for the one or more parameters. The processed parameter data is used to determine management strategies for individual animals in real-time. 20 US 2016 / 120154 Ai describes a system for monitoring the health of a companion animal (such as a dog). The animal health monitoring system includes an electronic assembly located on a companion animal including a microprocessor, a power source connected to the microprocessor, and a transceiver and a microchip implanted in the companion animal and including memory storing identification data and a temperature 25 sensor measuring the temperature of the companion animal. The electronic assembly interrogates the microchip to obtain identification data and temperature data and transmits the identification data and the temperature data. US 2019 / 090754 Ai describes apparatus for managing animals, such as livestock. A tag 30 assembly is configured for attachment to an outer ear of an animal. A primary temperature sensor of the tag assembly is configured to obtain outer ear temperature data indicative of an outer ear temperature of the outer ear. A control circuit is configured to receive the outer ear temperature data via a wireless communication link with the tag assembly. The control circuit determines a health state of the animal in 35 response to a localized change in a magnitude of the outer ear temperature data in relation to a set of ambient temperature data over a selected time interval. CN 110839552 Ai describes an animal temperature measuring ear tag and a temperature measuring system which can be used to realise real-time animal body temperature monitoring. 21 01 25 21 01 25 Summary According to a first aspect of the present invention there is provided a computer-implemented method, the method comprising generating code embodying a set of one or more first rules for allowing a node (such as a tag worn by the animal, an 5 environmental sensor or a gateway) in a network to identify a condition of an animal or of an environment of the animal from measured data, and to transmit a message in response to the condition being identified. The condition is identified by receiving a set of measurements, identifying the condition based on classifying the set of measurements using a trained model, and generating a rule for identifying the io condition from a further set of measurements. The method comprises selecting, based on a set of capabilities of nodes (such as processing power of a node), at least one node in the network for monitoring for the condition, and transmitting the code to the node. This can help to provide an animal condition monitoring system which is flexible and 15 potentially more responsive, and which is adaptable by virtue of being able to distribute the logic capable of identifying a condition (such as illness, or onset of giving birth) more widely and potentially closer to the animal, and in a way that can be updated. The measured data may comprise measurements of at least one parameter relating to 20 the condition and / or activity of the animal. The measurements of the at least one parameter relating to the condition of the animal may comprise measurements of temperature of the animal. The temperature of the animal may be surface (or “external”) temperature of the animal. The temperature of the animal may be core temperature of the animal. The measurements of the at least one parameter relating to 25 the condition of the animal comprises measurements of heart rate of the animal. The measurements of the at least one parameter relating to the activity of the animal comprises measurements of acceleration of the animal. The measurements of acceleration of the animal may include measurements of the acceleration of the animal 30 in three orthogonal directions. The at least one parameter relating to the activity of the animal comprises measurements of orientation of the animal. Measurements of orientation of the animal may include me asurements of the orientation of the animal in three orthogonal directions. 35 The measured data may comprise measurements of the environment of the animal. The measurements of the environment may comprise measurements of ambient 21 01 25 temperature. The measurements of the environment may comprise measurements of humidity. The measurements of the environment may comprise measurements of temperature-humidity index. The measurements of the environment may comprise measurements of a concentration of particulate matter of a given size. For example, the 5 particulate matter of a given size may be PM 2.5 or PM 10. The measurements of the environment may comprise measurements of a concentration of a given chemical or biological substance. The given chemical substance maybe ammonia. The set of capabilities may include a maximum power consumption and / or a maximum 10 memory size and / or a maximum run time. The message may include a message identifier and / or a location and / or a result and / or a timestamp. 15 The method may further comprise assigning a confidence level to the condition. For example, the confidence level may be selected from a first confidence level, a second confidence level which is lower than the first confidence level, or a third confidence level which is lower than the second confidence level. 20 The trained model may be trained using a set of labelled measurements. The trained model may be trained using a k-nearest neighbours (KNN) algorithm, a random forest algorithm, simple regression algorithm and / or a neural network. According to a second aspect of the present invention there is provided a system 25 comprising at least one computer system configured to perform the method of the first aspect. According to a seventh aspect of the present invention there is provided a computer program comprising instructions for performing any one of the methods of the first, 30 third, and / or sixth aspects. According to an eighth aspect of the present invention there is provided an article comprising a computer-readable medium (which may be non-transitory) carrying thereon the computer program of the seventh aspect. 35 According to a ninth aspect of the invention there is provided code embodying a set of one or more rules for allowing a node (such as a tag worn by the animal, an environmental sensor or a gateway) in a network to identify a condition of an animal or of an environment of the animal from measured data. 21 01 25 21 01 25 Brief Description of the Drawings Certain embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a perspective view of a cow wearing an ear tag in its outer ear; 5 Figure 2 is a schematic block diagram of an animal health monitoring system; Figure 3 is a schematic block diagram of a functional module which can be deployed in the animal health monitoring system of Figure 1; Figure 4 is a schematic block diagram of an output of the functional module shown in Figure 3; 10 Figure 5 is a detailed block diagram of the animal health monitoring system shown in Figure 2; Figure 6 is a schematic block diagram of a sensor system contained in an ear tag; Figure 7 is a schematic block diagram of modules implemented in a controller in the sensor system shown in Figure 6; 15 Figure 8 is a schematic block diagram of an actuator system; Figure 9 illustrates distributing intelligence modules to nodes in an animal health monitoring system; Figure 10 is a process flow diagram of a method of operating an intelligence module; Figure 11 illustrates nodes in an animal health monitoring system transmitting 20 intelligence tokens; Figure 12 shows graphs of animal temperature, ambient temperature and activity variability over a two-week period; Figure 13 shows graphs of x, y and z acceleration measurements of a tag over a two-week period; 25 Figure 14 shows graphs of x, y and z gyroscope measurements of a tag over a two-week period; Figure 15 shows graphs of humidity, ammonia level and dust measurements over a two-week period; Figure 16 shows graphs of ammonia level measurements over a two-week period; and 30 Figure 17 shows a graph of intelligence token states for five nodes over a two-week period. 21 01 25 Detailed Description of Certain Embodiments System Referring to Figure 1, a tag 1 for an animal 2, which in this case is a cow, is shown. 5 The tag 1 is attached to a suitable external part 3 of the animal 2, for example, an extremity or appendage of the animal 2, such as an ear. The tag 1 can take the form of a collar, attached, for example, around the neck of the animal 2. The tag 1 measures, among other things, the external temperature of the animal 2. The 10 tag 1 preferably measures one or more other parameters relating to the condition and / or activity of the animal, such as its heart rate, acceleration, and orientation, or the environment of the animal, such as ambient temperature. Referring to Figure 2, a system 4 for monitoring health of animals using tags 1 is 15 shown. The system 4 is used to collect and analyse animal and environmental data 5,6 from endpoint sensors 7, 8 including animal-mounted sensors 7 in the tags 1 and other, environmental sensors 8 (such as ambient temperature or humidity sensors), and 20 optionally data 9 from other sources (not shown) to identify anomalies which indicate, for example, that an animal is unwell. The system 4 may also include actuators 10, such as pumps, motors and switches. The system 4 includes one or more gateways 11 (or “access points”) for wirelessly 25 communicating with tags 1, the environmental sensors 8 and actuators 10, and for communicating with a core system 12 (or “core”). The core 12 includes, among other things, a rules engine 13 and a module deployment system 14. The rules engine 13 is used to analyse data and can be employed to send 30 notifications to users. The module deployment system 14 is used to generate and distribute instructions 15 (herein referred to as “intelligence modules” or “IMs”) to computing nodes 16 in the system 4, such as the tags 1, the gateway(s) 11 or components in the core 12. Each intelligence module 15 is used to look for one or more anomalies. Moreover, each intelligence module 15 is selectably executable according to 35 the available resources or capabilities of a node 16, such as the power, memory size and run time of the node 16. Thus, an intelligence module 15 processable by a tag 1 is likely 21 01 25 to be less onerous in terms of power, processing and memory requirements compared with another different intelligence module 15 executed by more powerful node, such as a gateway 11. Upon detecting a predetermined condition, an intelligence module 15 can prepare and transmit an intelligence token 17 to the core 12 which in turn can send a 5 notification 19 to a user device 15. Alternatively, an intelligence module 15, for example in a sensor or in a gateway and which has connectivity e.g., to the internet or a mobile network, can send a message directly to a user. This may be used, for example, if there is a time-critical alert. 10 The system 4 may also include one or more data collectors 20 for collecting data from external data sources 21 such as feeding stations, automatic weight machines, or weather stations. The system 4 may also include internal data sources 22 holding, for example, historic data, group averages, predicted growth, activity levels per age and the like. 15 Intelligence module is Referring also to Figure 3, an intelligence module 15 may include a set of operating variables 24,25,26 which allows a node 16 to determine whether the intelligence module 15 is operable by that node 16. The operating variables 24, 25, 26 may, 20 however, be omitted. For example, the intelligence module deployment module 14 may determine these and, based on the determination, transmits the intelligence module 15 to suitable nodes without transmitting these variables. Thus, the node need not store operating variables 24,25,26. Indeed, the node may not know the values of operating variables 24, 25,26. The set of variables 24, 25, 26 include a specified maximum power 25 consumption 24 (for example, expressed in units based on ampere-hours, such as microampere hours), specified maximum memory size 25 (for example, expressed in units based on bytes, such as kilobytes) and specified maximum run time 26 (for example, expressed in units based on seconds, such as milliseconds). 30 The intelligence module 15 includes anomaly-identifying rules 27 in the form of code (herein referred to as a “function”) which a node 16 executes to determine whether one or more conditions corresponding to an anomaly are met. In particular, the node 16 receives inputs, which can include animal and / or environmental data and / or intelligence token(s) from other intelligence module(s), and applies the anomaly- 35 identifying rules to identify an anomaly. The function 27 includes an input map 28 which includes a set of one or more rules or conditions 29 which, if satisfied, triggers 21 01 25 output of an intelligence token 17, and an output 30 which includes an intelligence token identifier 30. Intelligence token 17 5 Referring to Figure 4, the intelligence token 17 takes the form of data string, in this case a JavaScript object notation (JSON) string, or other form of data container. The intelligence token 17 includes the intelligence token identifier 31, a location identifier 32, a result 33 which may contain one or more outputs 34 and a timestamp 10 35. System 4 Referring to Figure 5, the system 4 can be seen as being distributed across three domains 36, 37, 38, namely a farm domain 36 generally where the sensors 7, 8, 15 actuators 10 and gateway(s) 11 are located, a core domain 37 generally where the core 12 is found, and a user / third party domain 38 in which the user device 18 is found. Figure 5 intended to show the flow of data from animal-mounted sensors 7 (which may be contained in ear tags or in collars) and environmental sensor 8 to the gateway 11 and 20 onwards to the core 12. It will be appreciated, however, that data 5, 6, 9 and intelligence module 15 can be transmitted in the opposite direction, from the core 12 via the gateway 11 to the tags 1 and sensors 7,8. The gateway 11 includes a suitable short-range wireless communications network 25 interface (not shown) such as Bluetooth transceiver (not shown), a LoRa transceiver or other form of wireless network transceiver. The gateway 11 includes a data logger server 41 for storing data received from sensors 7,8 over a period of, for example, days or weeks. The gateway includes a gateway data manager 42 for managing transmission of data to the core 12 or other remote servers. The gateway data manager 42 is 30 configured using local preference data 43 which may specify, for example, transmission schedules. The farm domain 36 includes actuators 10 and external data sources 17. The farm domain 33 may also include one or more computing devices 44 for other, on-farm 35 information services which can provide data about the farm or relating to (a part of) the farm, such as environmental information, animal weights, milk production, feed 21 01 25 rations, and the like. The farm domain 33 may also include computer devices 46 which run application software 47 which can be used in classifying the condition of an animal. Application software or video can be used to verify a current animal condition. For example, a farmer can capture the fact that the animal is eating or lying down. A 5 veterinary surgeon can confirm that the animal is sick. Data classified in this way becomes highly reliable data that can later be included in modelling to detect automatically what is classified by a human or expert observer. The core 12 includes storage 48, an ingestion engine 49, a sensor data server 50 and a 10 farm data server 51. Data 5, 6,9 from the gateway 11 and other data sources can be collated in storage 48, for example a data server, before being passed to the ingestion engine 49. The ingestion engine 49 can pass data 5, 6, 9 to the sensor data server 50 or the farm data server 51, filtering the data 5, 6, 9 as necessary. The sensor data server 51 is provided with a sensor data database 52 for storing sensor data 5, 6 and a labelled 15 sensor database 53 for storing labelled data 5, 6. The farm data server 51 is provided with an external data database 54. The core 12 includes a data processing engine 55, a machine learning engine 56 which includes a data classification system 56, the rules engine 13, the intelligence module 20 dispatch server 14, a push notification server 58, a web server 59 and an application programming interface 60. The user / third domain 38 can include a mobile device 15 which runs a software application 61 which can receive push notifications from the push notification server 25 58. A user can access the web server 59 via a web browser 62 running on their mobile device 18 or on another computing device 63. The user / third party domain 38 can include remote computing devices 64 (such as a server) which runs third party applications 65. 30 Animal-mounted, sensors 8 The animal-mounted sensors 8 collect data 7 on individual animals, such as, for example, temperature, acceleration, rotation, heart rate, location and other variables. 35 Referring in particular to Figure 6, a tag 1 includes a sensor system 69 which comprises a controller 70, for example in the form of a microcontroller, which includes a 21 01 25 processor 71 and memory 702, and a set of sensors 8 including a temperature sensor 73 for measuring the temperature of the cow 2 via an IR-transparent window (not shown), an environmental temperature sensor 74 for measuring the temperature of the surroundings, an accelerometer 75, a gyroscope 76 and, optionally, a heart rate monitor 5 77 for measuring heart rate of the cow via the IR-transparent window (not shown), magnetometer 78 for measuring the orientation of the cow and a positioning unit 79, for example, a global position system (GPS) unit. Other sensors can be included, for example, for measuring humidity, volatile gases, dust and the like. The sensor system 69 includes a switch 80 which operated by a push button (not shown), an LED 80 for 10 indicating an alert (different alerts can be signalled using different patterns of flashes), status or location of the animal, a wireless communications network interface 82 for example in the form of a Bluetooth network interface, a LoRa network interface or other suitable network interface, an NFC interface 83 and non-volatile memory 84 for storing logged data 85. The sensor system 69 may retain logged data until it is range of 15 a receiver device such as a gateway 11 (Figure 2). The sensor system 69 includes an energy-harvesting module 87 and / or a battery 88. Referring also to Figure 7, the controller 70 implements several functions or modules 12, 91, 92, 93, 94, 96, 97, 98, 99 in software. 20 The functions and modules 12, 91,92,93, 94, 96, 97, 98,99 include suitable interfaces 91 for the sensors, a monitoring module 92 for gathering and optionally timestamping data, such as temperature of the animal, from the sensors, a logging module 93 for storing measured data in memory 84, a processing module 95 for analysing measured 25 data, and one or more intelligence modules 15. The processing module 94 may include a model 95 which can be trained by machine learning algorithm to learn animal behaviour. The model 95 may be used to detect anomalies in animal behaviour The controller 70 includes a communication module 96. The sensor system 69 is able 30 to wirelessly communicate data from the sensors 8 to a receiver device such as a gateway 11. The sensor system 69 may also be chirp its current location. The controller 70 may include a self-test module 97 for assessing status and indicating an alert condition, such as faulty operation of a sensor or low battery, a security module 35 98 for handing encryption, and an over-the-air (OTA) update module 99 for updating the device’s firmware. 21 01 25 The tag 1 can be configured to process sensor data to look for anomalies. For example, the tag 1 may periodically run a monitoring cycle during which it searches for anomalies. Data from the tags, intelligence tokens 17 and / or other form of messages 5 (e.g., alerts) can transmitted to the gateway 11 (which may be fixed). Data and alerts can, however, be transmitted to a mobile device (not shown) or to a remote device via the Internet. The tag 1 has internal storage 84 and implements a set of rules in a mechanism for 10 generating a priority to the data collected. Based on the priority level, the data is either transmitted immediately, or is stored and transmitted later. The tag 1 generally serves two functions (or “components”), namely a first function that provides RFID identification and a second function which actively monitors the animal 15 2 (Figure 1) and sends information about the animal to other parts of the system 4 or to the animal keeper (e.g., farmer). The tag 1 can communicate and interact with other parts of the infrastructure in the farm and / or with other tag 1. For example, the tag 1 can record the Received Signal Strength Indicator (RSSI) of other signals and keep a record of tags or infrastructure which are proximate to the tag. This can be used for 20 traceability applications. Environmental sensors 8 Environmental sensors 8 which are located on site (e.g., on the farm) can collect data 6 relating to the farm, such as temperature, humidity, barometric pressure, ammonia 25 level, dust, and rainfall. The data 6 may be specific to locations within the farm, for example, a level of water in a water trough in a particular field. An environmental sensor 8 may include a sensor system similar to that in the tag 1, although the number of sensors may be limited and the type of sensor specific to the 30 type of parameter being measured. An environmental sensor 8 can process sensor data to look for anomalies. The sensor 8 may periodically run a monitoring cycle during which it searches for anomalies. Data 6 from the environmental sensors 8, intelligence tokens 17 and / or other form of 35 messages (e.g., alerts) can transmitted to the gateway 11. Data and alerts can be transmitted to a mobile device (not shown) or to a remote device via the Internet -It 21 01 25 An environmental sensor 8 has internal storage (not shown) and implements a set of rules in a mechanism for generating a priority to the data collected. Based on the priority level the data is either transmitted immediately or stored before being 5 transmitted later. A sensor 8 can sense the proximity of tags and log which tags where close by registering their RSSI. Actuators io An actuator io can take the form of a motor, a pump, a valve, a switch or the like which io can interact with the environment (for example, to close and close a gate, to supply feed to a trough, or to pump water) or animal tags 1. An actuator io can sense the proximity of tags and log which tags i are close by, for example, by registering the RSSI of a tag. Referring in particular to Figure 8, the actuator io is provided with an actuator control 15 system too which comprises a controller 101, for example in the form of a microcontroller, which includes a processor 102 and memory 103. The actuator control system 100 includes a wireless communications network interface 104 for example in the form of a Bluetooth network interface, an optional NFC interface 105, non-volatile memory 106 for storing logged data and a power source 108. 20 An actuator 10 (more specifically, the actuator control system 100) has internal storage 106 which can implement a set of rules in a mechanism for generating a priority to the data collected. Based on the priority level the data is either transmitted immediately or it can be stored then transmitted later. 25 Actuator rules can also set a defined behaviour for their interaction with tags, such as activating a motor to open a gate based on RSSI proximity of an animal and data on current health status for sorting animals to treat. 30 API data integration The system 4 may employ data integration, collecting data from other data sources 17 and third-party data sources 65, optionally via an application programming interface (API) interface 60. 35 Examples of data sources 17 include feeding stations, automatic milk feeders, automatic weight machines, weather stations, farm management systems, and cattle movement 21 01 25 services, such as the British Cattle Movement Service (BCMS). Data sources may push data to the rest of the system 4 or the system 4 may pull data from these data sources. Examples of data and their respective sources include feed data from milk feeders, 5 water and solid intake from automated feeders, genomic data from external testing centres or laboratories, weather data from weather stations and video data from CCTV or web cameras. Gateways and data collectors (“access points”) 10 Referring still to Figure 2, gateways 11 and data collectors 16 interact with sensors 7,8 and actuators 10. Sensors 7,8 and actuators 10 can collect data for later transmission to a local endpoint such as a gateway or data collector. In some cases, sensors 7,8 and actuators 10 can 15 pass data to the core 8 via an active internet connection, such as WiFi, Ethernet, broadband mobile networks or other form of communication link. Devices 1, 8,10 can be interlinked to form a local mesh network with one or more access points to create a data collection network. 20 Gateways 11 and data collectors 20 can process data and look for anomalies in its internal routine monitoring cycle. Gateways 11 and data collectors 20 generally have significantly higher processing power (compared to tags and actuators) and so edge computing at this level is considerably higher. This is represented in power, size and 25 time metrics. Gateways 11 and data collectors 20 orchestrate local system settings, passing down rules that should be implemented in local monitoring loops to tags 1, sensors 7,8 and actuators 10. 30 Gateways 11 and data collectors 20 perform system upgrades by providing OTA capabilities to the units monitored within their network. Gateways 11 and data collectors 20 have internal storage (not shown) and implement a 35 set of rules in a mechanism for generating a priority to the data collected. Based on the 21 01 25 priority level the data is either transmitted immediately or it can be stored for later transmission. This part of the infrastructure can be fixed or mobile. For example, the infrastructure 5 may take the form of a (mobile) Cattle Mesh network. This mesh network comprises cattle collars with energy harvesting devices and larger power packs. This can allow lower cost deployment in larger herds in which cattle roam large expanses of land with poor connectivity where creating a fixed network would be prohibitively expensive. io Mobile devices Referring to Figures 2 and 5, a mobile device 18 can perform multiple roles in the system 4. A mobile device 18 can serve as a device for delivering information to a user. A user 15 has access via a mobile app 61 (Figure 5) to alerts, decision support, reports, and farm bench marking. A mobile device 18 may also serve as a data gathering tool. A user can supply information about an animal assessment and / or a treatment, assign a tag to an animal, 20 provide information about a location of an animal and other animal metadata such as breed, sire, dam, date of birth and the like. A mobile device 18 may also serve a device which can directly communicate or interact with tags 1 and gateways 11. 25 A mobile device 18 can serve as a gateway 11 or access point. Thus, it can be used for data transfer and OTA updates. A mobile device 18 can also execute an intelligence module 15 which requires greater processing, power or memory overheads. Thus, it can serve as a gateway 11 which executes one or more intelligence modules 15. 30 A mobile device 18 can interact with a gateway 11 providing a channel to lift data 5, 6 from the gateway 11 and transmit the data to the core 12. Thus, a mobile device 15 can provide an internet connection to a gateway 11. This allows the system to operate offline and when a user visits and uses their mobile device 18 to connect to the gateway 35 11, the user can obtain an update on the status and activity of the animals since the user last visited. 21 01 25 Core 12 Referring again to Figure 5, the core 12 can be implemented in a cloud-computing environment using a plurality of distributed, connected computing systems (not 5 shown). The core 12 provides several functions which are provided by one or more systems or servers. The core 12 includes a data ingestion engine 49 and data ingestion can take different forms. Pull data ingestion involves, on a given schedule, polling external API and / or 10 data sources, such as feed machines or BCMS, and ingesting data. Push data ingestion involves an authorised external data source 63, such as a mobile app, calling a system API and supplying data to be ingested. Direct data transfer involves an external system dumping a series of data in a predefined format and object storage service (such as S3) location. The data is then ingested by a pull service on a schedule. 15 Internal data storage 52,53 is accessible only to other parts of the core 12. Data stored in the internal data storage includes raw sensor data, video data and classifications for machine learning. 20 Internal information services 50 provide an API for accessing the internal data store 52, 53. This is intended to be used by the machine learning engine 56 and the data processing engine 55. External data storage 54 is intended for that is accessed externally by users and which 25 is available to third parties (via information service API 60). External information services 51 provide an API for accessing the external data store 54 and is intended to be used by the cloud server 59 30 Data classification system 57 The core 12 includes a data classification system 57, which is preferably included in the machine learning engine 56. The data classification system 57 has a series of rules for classifying raw data 5,6 based 35 on events allocating them a confidence level. There are three, four or more levels of confidence including high, medium and low, and unknown. 21 01 25 For data classed as having a high level of confidence, data are classified by an expert, preferably a human expert, which may be a researcher, and / or are classified based on a veterinary assessment. For medium confidence data, data are classified based on user 5 input from model farms, in other words, farms operate according to a set of pre-defined practices. For low confidence data, the data are classified on user input from farms, but not farms which are classed as model farms. Events that have no confirmation from any of the above is classed as unknown. io Classified data are available to the machine learning engine 56 where the confidence level can be used to further refine models, while still using all the data that the system has acquired. Machine learning engine 56 15 The machine learning engine 56 creates the intelligence modules 15 and creates rules modules 15’ for the rules engine 13. A rules module 15’ is an intelligence module 15 which is executed by the rules engine 13. It differs from an intelligence module 15 in that the rules in the rules module 15’ can changed based on data or instructions from a farm. For example, if a farmer considers that he or she is receiving too many or too few 20 notifications, then they can adjust, say sensitivity or other data, in the rules module 15’ to receive fewer or more notifications. Intelligence modules 15 and rules modules 15’ are scored based on three characteristics, namely maximum power consumption, maximum module size and maximum module 25 run time. Depending on these characteristics, an intelligence modulei2 is classified as being deployable by a sensor at the sensor level or by a gateway at the gateway level, or by the data processing engine 55. Similarly, rules can be implemented at each one of those levels. 30 An operations team (not shown), using feedback from farms, specify or select targets for the machine learning engine 56. A target is a variable of optimisation or an anomaly to detect. The machine learning engine 56 ingests data and classifications from the internal information service 50 and runs a plurality of machine learning algorithms, such as a k-nearest neighbours (KNN) algorithm, a random forest 35 algorithm, simple regression algorithm and / or neural networks. The targets have a 21 01 25 specific scoring system against which to optimise. A scoring system can take the form of a confusion matrix, specificity and / or sensitivity target. The machine learning engine 56 evaluates the models against an achieved score. If the 5 score is superior to one currently or actively being used by the system 4, then new intelligence modules 15 are distributed to nodes 13 in the system 4 using a system update service and new rules 15’ can be provided to the rules engine 13. Data processing engine 55 10 The data processing engine 55 implements intelligence modules 15 at the core level and processes raw data 5, 6 from sensors 7,8 and other inputs. The data processing engine 55 can output information to be stored in the internal data store 52, 53 and / or to the external data store 54. 15 For example, raw data 5, 6 in the form of acceleration data can be processed by an intelligence module 15 run by the data processing engine 55 that converts the acceleration data into a rapid or fast (e.g., by the minute) time-varying lying behaviour which is stored in internal data store 52,53 and a slower (e.g., aggregated over five minutes) time-varying lying behaviour is stored in the external data store 54. The fast 20 time-varying lying time is then made available to the data processing engine 55 to run a further intelligence module 15 to assess lying bouts which are then stored in the external data store 54. In this way, several intelligence modules 15 can stack on top of each other (or be 25 “nested”) to help create a more precise picture of the animal’s condition and detection of anomalies. Rules engine 13 The rules engine 13 analyses and triggers events based on data stored in the external 30 data store 54. The rules engine 13 executes rules 15’ which are predefined and can be fine-tuned based on user input. User input can be specific or explicit, such a specified percentage selected via a user interface running on device (e.g., mobile device 18). Additionally, or 35 alternatively, user input can be inferred by the machine learning engine 55 based on 21 01 25 prior user behaviour, such as choices in the past animal assessments once an alert has been raised. For instance, using the example of lying times, rules that can be implemented on top of 5 lying time information. A rule can include, for example, a specified lying time per day which can trigger an alert in response to a low lying time or a high lying time. These maybe based on an animal’s individual average over time, or a number of lying bouts per hour. Such a rule can be used to trigger an alert that a pregnant cow is calving. Rules can have pre-set values which can depend on farm and animal data, such as io breed, farm type, type of operating conditions (e.g., indoors or outdoors), and the like. Users can alter these values and override these pre-sets based on their needs. Device manager 67 The intelligence module deployment system 11 includes a device manager 67 which 15 keeps track of and manages remote devices such a tags 1, actuators 10 and gateways 11. The device manager 67 performs several functions including (i) keeping track of device location and user allocation which ties a device to a particular user or farm, (ii) keeping track of a device, in other words, animal assignment, (iii) keeping track of firmware 20 versions on all devices, (iv) keeping track of hardware versions of devices, (v) keeping track of device status (including any system alerts present and monitoring user action on the alerts, such as whether the alert is dismissed, is assessed etc.) (vi) managing OTA packets (OTA updates are done via the gateways and mobile devices, but the packets are accessed via the device manager) and (vii) managing intelligence modules 25 15 and rules 15’ that will be deployed in sensors 7, 8, actuators 10 and gateways 11. System update service (IM deployment system 14) The system update service 14 orchestrates system updates. This includes moving new OTA updates to the device manager 67, internal system updates for pushing out new 30 intelligence modules 15 across sensors 7, 8, actuators 10, gateways 11 and cloud infrastructure. In this way, the system update service helps to make sure that the distributed architecture is cohesive and updates are cascaded across the entire system in a way that 35 does not break operations. 21 01 25 Cloud server (web server 59) The cloud server 59 provides access to the mobile application 61 and web browsers 62 to the information accessible to users. The cloud server 59 interacts internally with the external information service 54 and with a user access control service (not shown). It 5 hosts user interface content in html, JavaScript, CSS, etc. The cloud server 59 provides all external APIs available to users and third-party applications 65. 10 Push notifications server 58 The push notification server 58 is connected to the rules engine 13. If a rule 15’ indicates a notification should immediately go to users, the push notification server 58 selects an appropriate channel or platform, such as the (dedicated) application 61, Telegram messaging application, WhatsApp messaging application, SMS service, etc. 15 and sends a direct notification to the relevant user(s) based on the farm profile / Farm AI virtual assistant A farm AI virtual assistant (not shown) can provide a human interaction layer for communicating with farms. The mode of interaction can be based on user input via 20 voice or text recognition and the assistant can interact with a user via a text chat (such as WhatsApp) or via voice messages. An assistant can provide a tailored user experience and / or hands-free capability. User access control 25 A user access controller (not shown) can provide a security layer on top of data in the system. It can allow different users to have different access permissions depending on their role within a farm or organisation. Mobile applications 30 The mobile application 61 can interact with the web server 59 to retrieve or post data into the system. Data validation service (Blockchain) Data can be validated for traceability. 21 01 25 A data validation server (not shown) can create a timestamp and a digital information signature for a piece of data or transaction. The transaction information and the key are submitted to the blockchain (not shown) for validation. In this way, the blockchain is kept light while still providing a way of validating data in the system. 5 The data validation server (not shown) may be able to validate a location of a tag and animal by creating a unique key of the data in the database, adding metadata and submitting this data to the blockchain. The key can then be used to verify that the data was in the database at that specific date and time, and has not been modified since, if it io had been modified, the key would not match. Creation and distribution of intelligence modules is Figure 9 illustrates an example of a process in which intelligence modules 15 are created and distributed in the animal monitoring system 4. 15 Referring to Figures 2,5 and 9, a sensor 7,8 and other data source transmits data 5,6, 9, via a gateway 11 (or data collector 20) or other interface, to the core 12, specifically to the machine learning engine 56 (step S9.1). 20 As explained hereinbefore, a sensor 7,8 may transmit data 5, 6 immediately or (i.e., in real time) or may cache the data 5,6 locally before transmitting it to a gateway 11. The gateway may also transmit the data 5,6 immediately or cache it. Aggregated data 5,6 may be held in storage 48 before ingestion. 25 The machine learning engine 56 inspects the data 5, 6 and assigns a confidence level, e.g., high / medium / low / unknown, and, if appropriate generates one or more new intelligence modules 15 or generates one or more updated intelligence modules 15 (step S9.3). 30 The machine learning engine 56 sends the intelligence module(s) 15 to the intelligence module deployment server 14 (step S9.4). The intelligence module deployment server 14 determines the intended destination(s) for the intelligence module(s) 15 (step S9.5) and transmits the intelligence module(s) 15 35 to the intended destination node(s) 16, e.g., tags 1, sensors 8, gateways 11, user device 18 or other part of the core 12 (step 9.6). 21 01 25 The recipient node 16, having received the intelligence module(s) 15, implements the intelligence module(s) 15 (step S9.7). 5 Generation and transmission of intelligence tokens 17 Figures 10 and 11 illustrate an example of a process in which intelligence tokens 17 are generated and transmitted. Referring to Figures 2,5 and 10, a node 16 receives data 5, 6 (step S10.1) and one or 10 more intelligence modules 15 in the node 16 processes the data 5, 6 (step S10.2). The intelligence module 15 determines whether action should be taken (step S10.3) such as generating and transmitting an intelligence token 17, and takes appropriate action (step S10.4). 15 Referring to Figures 2, 5 and 11, the nodes 16 transmit intelligence tokens 17, via a gateway 11 (or data collector 20) or other interface, to the core 12, specifically to the farm data server 51 (step S11.1). The farm data server 51 stores the intelligence tokens 17 (step S11.2) and transmits the 20 intelligence tokens 17 to the rules engine 13 for processing (step S11.3). The rules engine 13 processes the intelligence tokens 17 (step S11.4). If processing the intelligence tokens 17 identifies a need to notify a user, the rules engine 13 sends an instruction to the push notification server 58 to transmit a notification (step S11.5). 25 The push notification server 58 to transmit a notification to the user, e.g., to their mobile device 18 (Figure 2) (step S11.6). Example 30 Figures 12 to 16 show plots of data 5,6 measured by sensors 7, 8 over a 15-day period, from midnight on 17 December to midnight on 1 January. In particular, Figure 12 shows animal temperature, ambient temperature and activity variability recorded by a tag 1 (Figure 2). Figure 13 shows accelerometer values for X-, 35 Y- and Z-axes recorded by the tag. Figure 14 shows gyroscope values for X-, Y- and Z-axes recorded by the tag 1 (Figure 2). Figure 15 shows humidity, ammonia level and 21 01 25 dust measurements recorded by sensors 7 (Figure 2). Figure 16 shows ammonia level recorded by another sensor (Figure 2). Figure 17 illustrates the intelligence token states for a tag (Figure 1), a gateway 11 5 (Figure 2) and the rules engine 13 (Figure 2), in other words, the states in which a node is either (A) in a first state when an intelligence token 17 (Figure 2) is not transmitted or (B) a second state when an intelligence token is transmitted. Referring to Figure 17, tag information tokens are triggered at midnight on 18 and 19 10 December. A rules engine information token is triggered at midnight on 20 December. Trigger of an information token by the rules engine 13 (Figure2) causes the push notification server 58 (Figure 5) to notify the user by the mobile application 61 (Figure 5)- 15 Tag information tokens are also triggered later in the 15-day period, at midnight on 24 and 26 December. A gateway information token is also triggered at midnight on 24 December. A rules engine information token is triggered at midnight on 27 December. Again, the user is notified. 20 Modifications It will be appreciated that various modifications may be made to the embodiments hereinbefore described. Such modifications may involve equivalent and other features which are already known in the design, manufacture and use of animal health monitoring systems and component parts thereof and which may be used instead of or 25 in addition to features already described herein. Features of one embodiment may be replaced or supplemented by features of another embodiment. The stud assembly need not necessarily comprise two separate parts. The stud assembly can take the form of a single-piece clip which maybe folded over an edge of, 30 for example, ear, and joined through it. Although a cow has been described, the tag can be used with other animals, such as a pig, horse or sheep. 35 The code may include one or more tables of reference values. The code may take the form of a script. Although claims have been formulated in this application to particular combinations of features, it should be understood that the scope of the disclosure of the present invention also includes any novel features or any novel combination of features 5 disclosed herein either explicitly or implicitly or any generalization thereof, whether or not it relates to the same invention as presently claimed in any claim and whether or not it mitigates any or all of the same technical problems as does the present invention. The applicants hereby give notice that new claims may be formulated to such features and / or combinations of such features during the prosecution of the present application io or of any further application derived therefrom. 21 01 25 21 01 25

Claims

1. A computer-implemented method comprising:• generating code embodying a set of one or more first rules for allowing a node to5 identify a condition of an animal or of an environment of the animal from a set of measurements, and to transmit a message in response to the condition being identified, wherein the condition is identified by:• receiving the set of measurements;• identifying the condition based on classifying the set of measurements using a io trained model; and■ generating a rule for identifying the condition from a further set of measurements;• selecting, based on a set of capabilities of nodes in a network, at least one node in the network for monitoring for the condition; and15 • transmitting the code to the at least one node.

2. The method of claim 1, wherein the set of capabilities include a maximum power consumption.20 3. The method of claim 1 or 2, wherein the set of capabilities include a maximummemory size.

4. The method of any one of claims 1 to 3, wherein the set of capabilities include a maximum run time.

255. The method of any one of claims 1 to 4, wherein the message includes a message identifier.

6. The method of any one of claims 1 to 5, wherein the message includes a location.

307. The method of any one of claims 1 to 6, wherein the message includes a result.

8. The method of any one of claims 1 to 7, wherein the message includes atimestamp.

9. The method of claim 1, further comprising:21 01 25• assigning a confidence level to the condition.io. The method of any one of claims 1 to 9, wherein the set of measurements comprise measurements of at least one parameter relating to the condition and / or 5 activity of the animal.

11. The method of claim 10, wherein the measurements of the at least one parameter relating to the condition of the animal comprises measurements of temperature of the animal.1012. The method of claim 10 or 11. wherein the measurements of the at least one parameter relating to the activity of the animal comprises measurements of acceleration of the animal.15 13. The method of any one of claims 1 to 12, wherein the set of measurementscomprise measurements of the environment of the animal.

14. The method of claim 13, wherein the measurements of the environment comprise measurements of ambient temperature and / or humidity, or temperature-humidity20 index.

15. A system comprising at least one computer system configured to perform the method of any one of claims 1 to 14.

Citation Information

Patent Citations

  • Animal temperature measuring ear tag, temperature measuring method and system

    CN110839552A

  • Intelligent cattle herd breeding method based on intelligent necklace

    CN113575460A

  • Remote control system and method for supporting animal's independent task execution, and animal wearable multi-purpose modular platform system

    EP3760039A1

  • Location specific assistance for autonomous vehicle control system

    US20180081362A1

  • Physiological condition determination system

    US20180333244A1