EP2564370A1 - Trigger-based control and agricultural inventory and invoice system - Google Patents
Trigger-based control and agricultural inventory and invoice systemInfo
- Publication number
- EP2564370A1 EP2564370A1 EP11720913A EP11720913A EP2564370A1 EP 2564370 A1 EP2564370 A1 EP 2564370A1 EP 11720913 A EP11720913 A EP 11720913A EP 11720913 A EP11720913 A EP 11720913A EP 2564370 A1 EP2564370 A1 EP 2564370A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- work
- application
- implement
- processing unit
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000005259 measurement Methods 0.000 claims abstract description 33
- 230000004044 response Effects 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims description 57
- 230000005055 memory storage Effects 0.000 claims description 24
- 239000000446 fuel Substances 0.000 claims description 16
- 238000004458 analytical method Methods 0.000 claims description 13
- 239000000463 material Substances 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 description 69
- 230000008569 process Effects 0.000 description 19
- 230000009471 action Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 239000003337 fertilizer Substances 0.000 description 4
- 238000003306 harvesting Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009313 farming Methods 0.000 description 2
- 238000010304 firing Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 241001124569 Lycaenidae Species 0.000 description 1
- 240000008042 Zea mays Species 0.000 description 1
- 235000005824 Zea mays ssp. parviglumis Nutrition 0.000 description 1
- 235000002017 Zea mays subsp mays Nutrition 0.000 description 1
- 239000012773 agricultural material Substances 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- AIXMJTYHQHQJLU-UHFFFAOYSA-N chembl210858 Chemical compound O1C(CC(=O)OC)CC(C=2C=CC(O)=CC=2)=N1 AIXMJTYHQHQJLU-UHFFFAOYSA-N 0.000 description 1
- 235000005822 corn Nutrition 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004720 fertilization Effects 0.000 description 1
- 239000010872 fertilizer runoff Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000003973 irrigation Methods 0.000 description 1
- 230000002262 irrigation Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/02—Agriculture; Fishing; Forestry; Mining
Definitions
- Trigger-based application control may be provided.
- the automated, real time ability to inventory the quality, quantity, and location of harvested material is not possible. Instead, equipment operators must manually instruct a system to capture such information, configure the equipment to gather the information correctly, remove the captured information from the machine, and transport the information to other systems for reports and/or invoices. This often causes problems because the equipment operators require specialized training for each type of work implement for which such information needs to be captured. For example, a fertilizer implement requires different information to be captured (e.g., areas covered, areas that may need additional attention, quantity of fertilizer used, etc.) than a harvesting implement (e.g., source location and quantity of the harvested material, pickup locations for remaining material, etc.). Furthermore, the manual configuration and delivery comprises an inefficient use of the equipment operators' time.
- Precision Farming (PA), Farm Management Information Systems (FMIS), and Fleet Management Systems (FMS) comprise known examples of agricultural technology domain areas (ATDA) in the agricultural industry using an Agricultural Service Architecture to capture process data from farming machines operating on and off field.
- ATDA agricultural technology domain areas
- Trigger-based application control may be provided.
- An application trigger associated with a work area may be received by a work implement.
- an application associated with the work implement may be received and initialized.
- the application may be halted and a data report may be transmitted.
- Dynamically triggered application configuration may be provided.
- An application trigger may be created and associated with a work area.
- a characteristic may be associated with a work implement. The work implement may be determined to be located in the work area and, if the characteristic of the work implement satisfies a condition associated with the application trigger, an application configuration may be transmitted to the work implement.
- An agricultural inventorying and invoicing system may be provided.
- a work task associated with an agricultural implement and a work area may be identified. If the agricultural implement is determined to be located within the work area, a work application for recording at least one data measurement associated with the work task may be initiated. If the work implement is determined to no longer be located within the work area, the work application may be halted and the recorded at least one data measurement may be transmitted to a central system.
- Figure 1 is a block diagram illustrating an operating environment
- Figure 2 is an illustration of an example work area
- Figure 3 is a block diagram of a computing device
- Figure 4 is a flow chart of a method for providing trigger-based application control
- Figure 5 is a flow chart of a method for providing agricultural product inventorying and invoicing; and [013] Figure 6 is a flow chart of a method for providing dynamically triggered application configuration.
- Embodiments of the present invention provide for a system and method for providing agricultural inventorying and invoicing. Embodiment of the present invention also provide for a system and method for providing dynamically triggered application configuration.
- An agricultural implement such as a hay baler implement coupled to a tractor, may be automatically configured and monitored before, during, and after operation in a work area. Upon leaving the work area, reports such as an inventory count and location of gathered hay bales may be generated and transmitted to a central system, such as a farm owner's computer-based inventory application. Consistent with embodiments of the invention, invoices for the work performed may be generated according to factors such as time and material efficiency and amount of harvested material gathered and similarly transmitted to the central system.
- an independent contractor may be retained to harvest a crop in a given field.
- the equipment operator may couple an appropriate implement (e.g. a combine harvester) to a tractor.
- the system may identify the type of implement and retrieve a work order from a central system identifying a field location.
- a GPS system in the tractor may direct the operator to the field and/or pilot the tractor to the field using an autosteer system.
- the GPS system may determine when the implement has entered the work area according to a geo-boundary that may be provided with the work order.
- an appropriate application may be transmitted to a computer onboard the tractor, such as a hay baling application operative to inventory the number of bales created, tag the bales' locations in the field for later retrieval, and/or measure the quality, yield, moisture content, etc., associated with each bale.
- a trigger may occur upon leaving the work area that may cause the application to finalize the recorded information, transmit a report and/or invoice to the central system.
- Dynamic application configuration may be provided to enable the automatic selection of an appropriate farm management information (FMIS) application according to implement and/or tractor type, the location, a time and/or date, information captured by sensors coupled to the implement and/or tractor.
- FMIS farm management information
- the application configuration may identify what work implements are available for coupling to the tractor, what work needs to be done in which fields, which operators are available, and may comprise a priority task list based on factors such as weather forecasts, current market prices, scheduling requirements, etc.
- FIG. 1 illustrates an operating environment 100 for providing trigger-based application control.
- FIG. 1 also illustrates an agricultural inventory and invoice system.
- Operating environment 100 may comprise a tractor/implement 1 10 coupled via a network 120 to a central system 130.
- Tractor/implement 110 may comprise a tractor capable of being coupled to a plurality of different work implements (e.g., harvesters, balers, irrigation implements, fertilizing implements, tillers, trailers, crane arms, etc.) and/or a single machine such as a flatbed truck.
- Network 120 may comprise a
- Central system 130 may comprise a plurality of applications that may execute on a computing device 300, described below with respect to FIG. 3, and/or a plurality of different communicatively-coupled computing devices.
- the applications may comprise a machine session control server 135, a machine subscription server 140, an invoice server 145, an inventory database 150, and/or a plurality of application servers 160(A)-(B).
- Other elements not shown may also be included in central system 130, such as weather forecasting applications, price tracking applications, yield and/or efficiency reporting applications, and/or operator databases comprising information such as wages and trained skills and proficiencies.
- Central system 130 may also be operative to communicate with and send and/or retrieve data from an outside data source such as a crop market price and/or weather service.
- Central system 130 may be operative to identify whether tractor/implement 110 is associated with an application subscription according to machine subscription server 140 and may download an application 165 to tractor/implement 110 appropriate to a current work assignment.
- Application 165 may be configured to perform certain functions upon the occurrence of trigger events such as recording a start time and/or initiating data recording when tractor/implement 110 enters a field and/or transmitting a report or invoice when tractor/implement 110 leaves the field.
- trigger events such as recording a start time and/or initiating data recording when tractor/implement 110 enters a field and/or transmitting a report or invoice when tractor/implement 110 leaves the field.
- FIG. 2 illustrates an example work area 200.
- a plurality of tractors 110(A)-(B) may arrive at a depot 220 in the morning.
- Central system 130 may be located at depot 220 and/or offsite may communicate with tractors 110(A)-(B) via a communication medium such as a wireless, radio, and/or cellular network.
- the tractor operators may be identified according to skill sets, operation costs (e.g., equipment costs and/or operator wages) and/or tractor capabilities (e.g., tractor 110(A) may comprise a more powerful engine better suited to a heavier work implement than tractor 110(B) and/or tractors 110(A) and/or tractor 110(B) may already have a work implement coupled).
- the central system may also comprise a list of available work implements such as plurality of implements 230(A)-(D) and/or work areas, such as a plurality of fields 240(A)-(D).
- work implement 230(A) may comprise a combine harvester
- work implement 230(B) may comprise a hay baler
- work implement 230(C) may comprise a fertilizer
- work implement 230(D) may comprise a hay bale gatherer.
- Field 240(A) may comprise a hay field ready for baling
- field 240(B) may comprise a hay field that has already been baled but in need of retrieval
- field 240(C) may comprise a corn field in need of fertilizing
- field 240(D) may comprise a field in need of tilling.
- the central system may provide a work assignment to one and/or more of tractors 110(A)-(B). For example, if tractor 110(A) already has a hay baler implement coupled, tractor 110(A) may be assigned to field 240(A). If tractor 110(B) does not yet have an implement coupled, central system 130 may provide a work assignment according to a work priority list and/or tractor 110(B)'s (and/or its operators) capabilities and/or costs. For example, a weather forecast may provide for rain in the afternoon. Collection of baled hay from field 240(B) may receive a higher priority than fertilization of field 240(C) in order to minimize damage to the quality of the baled hay and/or to avoid excess fertilizer runoff.
- Application configurations, triggers, and/or work orders may be downloaded prior to beginning work and/or updated as information is gathered.
- a hay baler application e.g., work application 165
- a tractor 110 may be downloaded to a tractor 110.
- an updated work order may direct the operator to another work location and/or transmit a location according to the GPS identifying the material for a later attempt.
- a yield and/or quality measurement determines that the cost of having the operator in a particular location is greater than the value of the crop being harvested, the operator may be directed to increase speed so as to finish the area faster, accepting a lower yield and/or quality in exchange for the operator reaching a higher value area sooner.
- central system 130 may identify various fields such as fields 240(A)-240(B) and track past work done, current work needed, and/or future work expected.
- field 240(A) may comprise a plurality of work assignments, their required order, and their status such as: tilled - completed, planted - completed, cut - completed, baled - pending, collected - waiting for baling.
- the completed assignments may be associated with recorded data such as time spent, costs incurred, yields, quality measurements, etc.
- central system 130 may determine whether tractor 110 comprises an appropriate implement for the current work needed in that field.
- central system 130 may download application 165 as a hay baling application and instruct tractor 110 to begin operation in field 240(A).
- Application 165 may comprise configuration and/or trigger information such as acceptable moisture content such that if a sensor coupled to tractor 110 detects an unacceptably high moisture level, application 165 may reconfigure for new instructions, such as skipping the wetter areas, tagging their location for later re-attempts, and reporting the problem to central system 130.
- trigger examples may comprise a fuel cost/mileage reporting upon completion of the work (triggered by leaving the field boundary and/or retarning to depot 220), providing new instructions to tractor 110 such as directing it to another field to perform similar work or returning to depot 220 to change implements), and/or generating and/or transmitting invoice data to central system 130 associated with the completed work as measured by application 165.
- Triggers may comprise automatic start, stop, and/or reconfiguration instructions that may be associated with tractor 110 such as a location, a time/date, a capability, an attached implement, and/or data collected by tractor 110. Triggers may comprise a condition (and/or a plurality of conditions) and an action. For example, a first trigger may comprise the conditions of entering field 240(A) with a hay baler implement attached and an action of initiate hay baler application. A second trigger may become active only after the first trigger has fired, such as one comprising a condition of leaving field 240(A) and an action of reporting gathered data to central system 130.
- Tractor 110(A) may receive a plurality of triggers from central system 130. As tractor 110(A) enters field 240(D) with a hay baling implement attached, triggers may fire associated with field 240(D) to determine whether appropriate work is available for field 240(D). If field 240(D) is currently in need of fertilizing, however, tractor 110(A) has the wrong implement and so no application may be initiated. As tractor 110(A) crosses the boundary into field 240(A), which may be in need of hay baling, a trigger may fire that causes central server 130 to transmit a hay baling application comprising configuration information, data recording instructions, and/or operator instructions to tractor 110(A).
- the hay baling application may initiate based on the trigger firing and may, for example, provide a suggested route via a GPS display to an operator of tractor 110(A) and/or initiate data recording associated with the working of the hay baling implement.
- Other triggers may be operative while the hay baling application is executing.
- outside data source 170 may provide hay bale prices data to central server 130 enabling a trigger condition based on yield data collected by tractor 110(A).
- a predicted market value of the hay being baled by tractor 110(A) may be calculated and compared to predicted costs such as operator wages and equipment and fuel costs.
- the trigger may fire to stop the application and direct the operator of tractor 110(A) to cease operations in field 240(A).
- Another trigger may comprise a moisture level threshold that may direct the operator to skip some and/or all of field 240(A) if the moisture content of the hay is too high.
- the skipped areas may be recorded and transmitted back to central system 130, such as on the firing of another trigger comprising a condition of leaving the boundaries of field 240(A).
- a single trigger condition, such as leaving the field may comprise multiple resulting actions, such as requesting new instructions for the operator and transmitting inventory and collection data to central system 130.
- the hay baling application may transmit data comprising a GPS location for each bale ready for pickup and may comprise additional data such as warnings about which bales may comprise a higher moisture content than desired and so may require special handling.
- Agricultural technology domain areas may comprise features and functionality used by a farmer to provide management, logistics, planning and operational efficiencies in the application and harvesting of material.
- a farmer may have access to many machines and implements that may comprise different makes, models, and have different configurations that generate unstructured process data.
- an architecture layer referred to herein as an Agricultural Application Control Subsystem (AACS)
- ACS Agricultural Application Control Subsystem
- Applications may be designed for use with multiple makes and models by relying on the architecture layer to translate abstracted instructions (e.g., "collect moisture level data") into specific control instructions for a given implement.
- Tractor 110 may provide data through a standardized interface, such as that described by ISO 1 1783 over network 120 to central system 130, which may then store and/or convert the data into a standard format (e.g., XML) and/or a proprietary format associated with a particular data management application.
- the converted data may be made available to a farmer through an interface application, such as on a personal computer and may be used by value-added service applications, such as profit and loss analysis applications.
- value-added service applications such as profit and loss analysis applications.
- data from different machines may be collected, converted into a common format, and aggregated for use in a single analysis application.
- a closed loop architecture comprising a machine and a server in communication may be used. Process data may be sent to the server, analyzed, and adjustments may be made to the machine's configuration.
- the AACS may comprise a three-layer architecture structure.
- a first layer may comprise a transport plane comprising physical resources necessary for a connection from the agricultural machine to a middle layer.
- the middle layer may comprise a control plane that may comprise intelligent elements that may determine whether a data from a tractor is allowed to enter the network and which ATDA(s) to invoke in a top layer.
- the top layer may comprise an application plane where the ATDA(s) reside.
- the lower layer may be represented, for example, as a combination of a cellular network and a mobile application system, the AACS, and a network application system.
- the AACS may be responsible for examining each process-data record as it enters central system 130. This examination may be implemented, for example, via machine session control server 135 and/or machine subscription server 140.
- AACS may provide session control by recognizing that a machine may be generating process-data and that it may be possible to provide additional features and functionalities to the machine or to the ATDA service provider's application.
- a session may comprise a path of the data to ATDA service providers) from the machine and visa versa.
- Session control may allows establishment of a session and/or two-way transmission between central server 130 and tractor 110 during the life time of that session.
- An example of a service may comprise the storage of process data, such as in inventory database 150. Once the machine starts sending data, a session may be started by creating a path between the machine data and the storage service. If the data includes GPS coordinates it may be possible during the session life time to engage another service such as a geofence analysis.
- a geofence may comprise a virtual perimeter for a real- world geographic area.
- a location-aware device of a location-based service (LBS) user enters or exits a geofence, the device receives a generated notification.
- This notification might contain information about the location of the device.
- Geofencing is an element associated with telematics hardware and software. It may allow users of the system to draw zones around places of work, customers sites, fields, and/or secure areas. These geofences, when crossed by an equipped vehicle or person may trigger a notification to the user or operator.
- the AACS may allow the determination of routing information (address) for a machine (e.g. for sending updated information, content adaptation for incompatible devices (e.g. converting units of captured data to the ISO 11783 standard), and interworking between different access networks.
- Session control may further enable the provision of application logic not natively available in devices (e.g. data corrections and auto field detection algorithms or the addition of coding data like an operator's name) and supplemental outside information for the application (e.g. weather information or commodity pricing).
- Session control may also provide store and forward capabilities when one ATDA service provider is not connected (e.g. the user of a FMIS software package is not at the computer) or when a machine is not in coverage. Session control may also offer authentication and authorization functionality.
- the AACS architecture may provide two mechanisms with which to blend applications already deployed in the network to create new ATDA services - Initial Filter Criteria (IFC) and service brokering.
- the iFC may comprise a set of prioritized trigger points assigned to a subscriber's profile that indicate the order in which multiple application servers (e.g., application servers 160(A)-(B)) may be invoked depending on what services a user has subscribed to.
- IFC implementation may use triggers that may define a set of conditions under which a particular application server is notified about the existence of data. Particular conditions may be provided in the form of regular expressions. IFCs may define a correlation between a set of triggers and particular application server(s) responsible for execution of the associated service logic.
- the process data flow through the AACS may begin with the machine (e.g., tractor 110) capturing data and sending it to session control server 135 of central system 130.
- the process data from the machine may be parsed and a machine ID may be captured.
- the machine ID may be sent to machine subscriber server 140 to determine if the machine is allowed to enter this server (e.g. authentication and/or determination of whether the machine is an active paid subscriber).
- Session control server 135 may examine each telemetry message against the IFC contained in the application profile(s); if a match occurs, the session may be assigned to an Application Server.
- the IFC may be able to select an application server based on the process data. That is, central server 130 may dynamically assign each session to a service. For example, if the process data does not include the speed of the machine but does include GPS, then a session may be dynamically assigned to a speed-as- a-function-of-GPS data service.
- the service brokerage may comprise a set of rules that govern service invocation during the life time of a session.
- the application profile may assign a quality of service (QoS, e.g., a required speed or performance of the network) value to force a route used by the assigned application server to allow real time access to the data.
- QoS quality of service
- Application services may be offered as packages and/or individual applications that may incur a one-time, a periodic, and/or a recurring cost.
- a flexible charging mechanism may allow a network operator to offer a differential value beyond just set pricing or monthly fees. Pricing scenarios may be supported in the ACSS such as prepaid, postpaid, machine owner pays, ATDA service provider pays, and/or data storage costs (e.g., pay per data increment consumed and/or made available).
- Application services may comprise, for example, data analysis applications, external data provider applications, auto field detections algorithms, data shaping algorithms, mapping services, invoicing services, geofencing services, SMS services, e-mail services, streaming audio and/or video, and/or firmware and/or software application upgrade services.
- Each session may be associated with a set of services invoked as desired by the end user and/or the ATDA service provider.
- a list of services invoked, the time, date and length of invocation may be captured in a Charging Data Record (CDR). The CDR is then used by a billing entity against a rate sheet to create a bill.
- CDR Charging Data Record
- a farmer may create a new application called "Baler Inventory and Invoice.”
- Central system 130 may request the farmer to configure the application by providing details such as a location, desired equipment and/or operators, and/or scheduling data.
- the farmer may configure the application for use in field 240(A) when he is using tractor 110(A) with implement 230(A).
- the farmer may use two triggers such as geofence and machine configuration. He may assign the field name to the geofence trigger and the machine configuration to a machine and implement triggers.
- the Initial Filter Criteria may be created to define when and where to start the application. In addition, the application may also know when to stop. Two filters may be created as shown below. A session may be started once the conditions) of Example Trigger 1 are met and the session may remain active until an end condition such as Example Trigger 2 is satisfied.
- the application provisioning process may store the IFC as part of the farmer's application profile for that machine into machine subscription server 140.
- the ACSS may continuously monitor process data from all machines.
- Machine process data may be sent to an application control function and its data may be parsed and sent to machine subscription server 140.
- Machine subscription server 140 may find the application profile and return the IFCs. Until the triggers for the Baler is met, the data may be stored via a default process.
- Each time a set of process data is sent to the ACF it may be parsed and examined to perform machine authentication, load in the application service profile, and executes the IFCs. For example, the geofences service may be invoked to determine whether the machine is in the trigger field.
- a session (a stateful program counter that assist in application control) may be created and a Session Detailed Record (SDR) for billing purposes may be generated.
- a message may be sent to one of application servers 160(A)-(B), such as applications server 160(A), comprising the SDR and an instruction to start the baler application.
- Application server 160(A) may receive the message, parse the SDR, and begins work.
- Application server 160(A) may download the baler application and/or a task to a task controller on tractor 110(A) so that the machine may capture the correct data.
- the baler application may be transmitted to tractor 110 as application 165.
- Application 165 may begin to query the machine process data.
- the process data may allow application 165 to count the number of bales and record the location of the bales.
- Session control server 135 may monitor the machine process data until the IFC that ends the application is met.
- An SDR associated with stopping the application may be sent to application server 160(A), the application may be stopped, and the SDRs may be logged to be retrieved by a billing system such as invoice server 145.
- FIG. 3 illustrates a computing device 300 as configured to operate as central system 130.
- Computing device 300 may include a processing unit 310 and a memory unit 320.
- Memory 320 may comprise, for example, application server 160(A) and inventory database 150. While executing on processing unit 310, application server 160(A) may perform processes for providing embodiments of the invention as described above.
- Computing device 300 may be implemented using a personal computer, a network computer, a server, a mainframe, or other similar microcomputer43ased workstation.
- the processor may comprise any computer operating environment, such as hand-held devices, multiprocessor systems, microprocessor-based or programmable sender electronic devices, minicomputers, mainframe computers, and the like.
- the processor may also be practiced in distributed computing environments where tasks are performed by remote processing devices.
- the processor may comprise a mobile terminal, such as a smart phone, a cellular telephone, a cellular telephone utilizing wireless application protocol (WAP), personal digital assistant (PDA), intelligent pager, portable computer, a hand held computer, a conventional telephone, a wireless fidelity (Wi-Fi) access point, or a facsimile machine.
- a mobile terminal such as a smart phone, a cellular telephone, a cellular telephone utilizing wireless application protocol (WAP), personal digital assistant (PDA), intelligent pager, portable computer, a hand held computer, a conventional telephone, a wireless fidelity (Wi-Fi) access point, or a facsimile machine.
- Wi-Fi wireless fidelity
- FIG. 4 is a flow chart setting forth the general stages involved in a method 400 consistent with an embodiment of the invention for providing trigger-based application control.
- Method 400 may be implemented using computing device 400 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 400 will be described in greater detail below.
- Method 400 may begin at starting block 405 and proceed to stage 410 where computing device 300 may receive an application trigger.
- a computer coupled to tractor/implement 110 may receive a plurality of application triggers each comprising a condition and an action.
- Each trigger may be associated with a work area and/or work task, such as baling hay harvested in a given field.
- method 400 may advance to stage 415 where computing device 300 may determine whether tractor/implement 110 is located within a work area associated with at least one of the trigger conditions.
- a global positioning system (GPS) device associated with tractor/implement 110 may be operative to provide a location of tractor/implement 110.
- the work area may be identified by a geo fence and computing device 300 may be operative to determine whether tractor/implement 110's current location is within the geo fence. If not, method 400 may remain in stage 415, and computing device 300 may periodically re-evaluate tractor/implement 110's location.
- GPS global positioning system
- method 400 may advance to stage 420 where computing device 300 may receive an application associated with the work area.
- an application trigger may be associated with a hay field work area.
- the coupled computer may receive an application downloaded from a remote server for tracking and inventorying hay as it is gathered and baled.
- method 400 may advance to stage 425 where computing device 300 may initialize the application.
- tractor/implement 110's computer may execute the downloaded application and initialize a plurality of data variables.
- a number of hay bales created may be set to zero.
- the initialization may also comprise receiving operator instructions associated with performing a work task.
- method 400 may advance to stage 430 where computing device 300 may provide a task instruction.
- the received application may cause directions to be displayed to an operator of tractor/implement 110. If tractor/implement 110 is equipped with an auto- steering system, the application may be operative to cause the implement to navigate to a start point for the work task.
- method 400 may advance to stage 435 where computing device 300 may determine whether tractor/implement 110 is still within the work area. If so, method 400 may remain in stage 435 and may periodically re-evaluate tractor/implement 110's location, such as with a GPS device.
- method 400 may advance to stage 440 where computing device 300 may transmit a data report.
- tractor/implement 110 may transmit a data report generated by the application to central system 130.
- the data report may comprise, for example, efficiency and/or yield data associated with the work task.
- Method 400 may then end at stage 445.
- FIG. 5 is a flow chart setting forth the general stages involved in a method 500 consistent with an embodiment of the invention for providing agricultural inventorying and invoicing.
- Method 500 may be implemented using computing device 300 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 500 will be described in greater detail below.
- Method 500 may begin at starting block 505 and proceed to stage 510 where computing device 300 may determine whether a work implement is in a work area.
- a Global Positioning System (GPS) compatible device may determine whether a tractor towing a work implement is located with a geo fence identifying a field area.
- the work implement may comprise, for example, a harvester, a combine, a cultivator, an irrigator, and/or a transport implement.
- GPS Global Positioning System
- the GPS device may be coupled to the tractor and/or the implement, and the location of the tractor and/or implement may be evaluated by a computing device coupled to the tractor and/or implement and/or may be transmitted to a central server for evaluation. While the work implement is not in a work area, method 500 may remain at stage 510 and computing device 300 may periodically determine whether the implement has entered a work area.
- method 500 may advance to stage 515 where computing device 300 may identify a work task in the work area. For example, a hay baling implement may be determined to be located in a hay field; a work task may then comprise gathering crop material into hay bales from the hay field. Consistent with embodiments of the invention, computing device 300 may determine whether the work implement is equipped for the work task. For example, if the work task associated with the work area comprises hay baling, but the implement is equipped with a cultivator, computing device 300 may determine whether any other work tasks in the current area are suitable for such equipment. If not, method 500 may return to stage 510 until the implement is determined to be in a different work area.
- method 500 may advance to stage 520 where computing device 300 may initiate an application.
- a hay bale inventorying application may be initiated that is operative to receive measurement data related to an amount and/or location of hay baled and/or a fuel consumption application may be initiated that is operative to track an amount of fuel used by the work implement while in the work area.
- one and/or a plurality of applications may be initiated.
- the applications may be operative to execute on a computer coupled to the work implement and/or tractor.
- the applications may also and/or alternatively be operative to execute on a server remotely located from the work implement.
- a computer associated with the work implement may communicatively coupled to the remotely located server, such as via network 120.
- computing device 300 may record at least one data point.
- computing device 300 may record a periodic fuel level measurement that may be provided to a fuel consumption application.
- sensors coupled to the work implement may measure work related characteristic data such as crop moisture levels and/or yields, and/or meteorological data.
- a GPS may also be used to record location based data, such as a traversed path through the work area. The recorded data may be provided to the initiated application(s) as it is gathered and/or after the work task is complete.
- method 500 may advance to stage 530 where computing device 300 may determine whether the work implement is still within the work area. If so, method 500 may return to stage 525 where computing device 300 may continue recording data.
- method 500 may advance to stage 535 where computing device 300 may halt the initiated application(s). For example, computing device 300 may inform the applications that the work task has been completed and/or that the work implement is no longer within the work area. The application(s) may receive the recorded data and may provide a report and/or modifications to the data prior to being halted.
- method 500 may advance to stage 540 where computing device 300 may generate a work report.
- computing device 300 may produce a report detailing a number of hay bales created, a moisture content level for each bale, and a location for each bale.
- the report may, for example, be used to generate a new work task for a cargo bed equipped work implement to retrieve the hay bales.
- method 500 may advance to stage 545 where computing device 300 may generate an invoice.
- computing device 300 may receive fuel consumption data such as total fuel used and efficiency over time as calculated by an application. This data may be combined with fuel cost data, operator wage data, cost of consumables used (e.g., fertilizer, ropes, etc.) and/or equipment maintenance costs to generate an overall cost for completing the work task.
- fuel consumption data such as total fuel used and efficiency over time as calculated by an application. This data may be combined with fuel cost data, operator wage data, cost of consumables used (e.g., fertilizer, ropes, etc.) and/or equipment maintenance costs to generate an overall cost for completing the work task.
- method 500 may advance to stage 550 where computing device 300 may deliver the invoice.
- the invoice may be provided to an owner of the work area, such as via e-mail, text message, being displayed on a web page, and/or being printed out for mailing.
- Method 500 may then end at stage 555.
- FIG. 6 is a flow chart setting forth the general stages involved in a method 600 consistent with an embodiment of the invention for providing dynamically triggered application configuration.
- Method 600 may be implemented using computing device 300 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 600 will be described in greater detail below.
- Method 600 may begin at starting block 605 and proceed to stage 610 where computing device 300 may create a trigger condition.
- a trigger condition may comprise a location of a work implement, a time, a date, a piece of data recorded by the work implement, and or the analysis of data recorded by the work implement.
- the work implement may be recording data associated with a crop yield. This data may be analyzed with respect to a current market value of the crop and a trigger condition may comprise the yield value dropping below a threshold point.
- method 600 may advance to stage 615 where computing device 300 may identify a characteristic of a work implement.
- the work implement characteristic may comprise a type of the work implement (e.g., a cultivator, a cargo truck, an irrigator, a hay baler, a combine harvester, etc.), a capability of the work implement (e.g., a maximum load size, speed, cost efficiency, etc.), a time of day, a date, a recorded data element, an analysis of the recorded data element, an operator, and/or an environmental factor (e.g., weather data).
- a type of the work implement e.g., a cultivator, a cargo truck, an irrigator, a hay baler, a combine harvester, etc.
- a capability of the work implement e.g., a maximum load size, speed, cost efficiency, etc.
- a time of day e.g., a date, a recorded data element, an analysis of the recorded data element, an operator, and/or
- method 600 may advance to stage 620 where computing device 300 may determine whether the work implement is located within a work area associated with the trigger condition.
- a global positioning system (GPS) device associated with the work implement may be operative to provide a location of the work implement.
- the work area may be identified by a geo fence and computing device 300 may be operative to determine whether the work implement's current location is within the geofence. If not, method 600 may remain in stage 620, and computing device 300 may periodically re-evaluate the work implement's location.
- GPS global positioning system
- method 600 may advance to stage 625 where computing device 300 may determine whether the trigger condition is satisfied.
- the trigger condition comprises a date upon which a field (i.e., the work area) may be harvested and/or a requirement that the implement type comprise a suitable harvester for the crop located within that field.
- Computing device 300 may determine, for example, whether the current date satisfies the date condition (e.g., is on or after the date condition) and/or whether the work implement is of a suitable type. If not, method 600 may end at stage 645.
- a configuration may comprise an instruction of data to record by the work implement, directions to a start and/or end location and/or a routing path, an application to be executed on a computer associated with the work implement, and/or a server destination to which recorded data should be transmitted by the work implement.
- method 600 may advance to stage 635 where computing device 300 may determine whether the work task associated with the application configuration is complete. For example, the application may track the work implement's progress through the work area and may determine when the work area has been fully harvested. For another example, computing device 300 may determine that the work implement has left the work area which may signify that the work task is completed. While the work task has not been completed, method 600 may remain in stage 635.
- method 600 may advance to stage 640 where computing device 300 may generate a report associated with the work task. For example, computing device 300 may analyze data recorded by the work implement into a summary of work tasks completed by the work implement. Method 600 may then end at stage 645.
- An embodiment consistent with the invention may comprise a system for providing trigger-based application control.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be associated with a work implement and may be operative to receive at least one application trigger comprising a location-based condition, determine whether the work implement has entered a work area associated with the location-based condition, and in response to determining that the work implement has entered the work area associated with the location-based condition, receive an application associated with the work implement and initialize the application.
- the processing unit may be further operative to determine whether the work implement has left the work area associated with the location-based condition and, if so, halt the application and transmit a data report.
- the processing unit may be further operative to determine whether the work implement has entered a second work area associated with a second location-based condition of at least one second application trigger and, in response to determining that the work implement has entered the second work area associated with the second location-based condition of the at least one second application trigger, receive a second application associated with the work implement and initialize the second application.
- the processing unit may be further operative to measure at least one data parameter and provide the at least one data parameter to the application.
- the processing unit may be further operative to determine whether a current time satisfies a time-based condition of the trigger and, if not, ignore that trigger.
- Another embodiment consistent with the invention may comprise a system for providing an application trigger.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to determine whether at least one characteristic associated with a work implement satisfies a condition of at least one application trigger and, in response to determining that the at least one characteristic associated with the work implement satisfies the condition of the at least one application trigger, initialize an application associated with the at least one application trigger, record at least one data parameter associated with the at least one application trigger, provide the at least one data parameter to the application, and display at least one work task instruction associated with the application to an operator of the work implement.
- the characteristic may comprise, for example, an equipment type coupled to the work implement, a location of the work implement, a time, a date, an environmental condition, and/or a measurement recorded by the work implement.
- the processing unit may be further operative to determine whether the at least one data parameter satisfies at least one operating condition and, in response to determining that the at least one data parameter does not satisfy the at least one operating condition, display at least one new work task instruction to the operator of the work implement.
- Being operative to determine whether the at least one data parameter satisfies the at least one operating condition may comprise the processing unit being operative to, for example, determine whether the at least one data parameter is within a target range and/or determine whether an operational cost of the work implement exceeds a cost threshold.
- the operational cost may be calculated, for example, according to a fuel expense and a compensation expense associated with the operator and wherein the cost threshold is established according to a current market price for a crop being grown in the work area.
- Yet another embodiment consistent with the invention may comprise a system for providing a dynamic application configuration trigger.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to transmit a location of a work implement to a monitoring server, receive, from the monitoring server, an application configuration associated with the location comprising at least one first work instruction, at least one required measurement, and at least one condition associated with the at least one required measurement, display the at least one first work instruction to an operator of the work implement, record a plurality of data measurements according to the at least one required measurement, determine whether at least one of the plurality of data measurements satisfies the at least one condition, and in response to determining that the at least one of the plurality of data measurements satisfies the at least one condition, display at least one second work instruction to the operator of the work implement.
- the at least one first work instruction may comprise, for example a crop harvesting instruction and the at least one required measurement comprises a quality measurement associated with a harvested crop material, such as a moisture level measurement.
- the processing unit may be further operative to transmit the data tag to the monitoring server.
- An embodiment consistent with the invention may comprise a system for providing an agricultural application.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to identify a work task associated with an agricultural implement, wherein the work task is associated with a work area, determine whether the agricultural implement is located within the work area, and in response to determining that the agricultural implement is located within the work area, initiate a work application associated with the work task, wherein initiating the work application comprises recording at least one data measurement associated with the work task.
- the processing unit may be further operative to determine whether the agricultural implement is no longer located within the work area and, if so, halt the work application and transmit the recorded at least one data measurement associated with the work task to a central system.
- the work task may comprise, for example, collecting a plurality of agricultural material (e.g., hay) into a plurality of transportable units (e.g., bales).
- Each of the transportable units may be associated with a geo tag comprising, for example, a location, a collection time, a collection date, and/or the recorded at least one data measurement.
- the processing unit may be further operative to display each of the plurality of transportable units on a map according to the geo tag associated with each of the plurality of transportable units.
- the processing unit may be further operative to generate an invoice based on a count of the plurality of transportable units and/or deliver the invoice to an owner of the work area.
- Another embodiment consistent with the invention may comprise a system for providing an agricultural inventorying application.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to determine whether an agricultural implement is located within a work area defined by a geo fence and in response to determining that the agricultural implement is located within the work area, initiate a work application associated with a work task.
- Initiating the work application may comprise the processing unit being operative to record at least one data measurement associated with each of a plurality of operations associated with the work task and record a location associated with each of the plurality of operations associated with the work task.
- the processing unit may be further operative to determine whether the agricultural implement is no longer located within the work area, and, in response to determining that the agricultural implement is no longer located within the work area, generate a report associated with the work task and transmit the report to a remote server.
- the processing unit may be further operative to determine, for at least one of the plurality of operations, whether the recorded at least one data measurement associated with the at least one of the plurality of operations is associated with a threshold rule, in response to determining that the recorded at least one data measurement is associated with a threshold rule, determine whether the recorded at least one data measurement satisfies the threshold rule, and, if so, create a tag associated with the at least one of the plurality of operations comprising an alert.
- the threshold rule may comprise a maximum safe moisture level associated with baled hay. If the measured moisture level exceeds the threshold moisture level in a hay bale, that bale may be associated with a geo tag. Other work implements may be operative to detect the geo tag and, for example, alert an operator that the high moisture hay bale should be isolated from other bales and/or left uncollected.
- the processing unit may be further operative to determine whether a second work task should be scheduled for the work area and, if so, create the second work task for the work area and/or add the tag associated with the at least one of the plurality of operations to the second work task. For example, after completing a hay baling work task, the processing unit may be operative to create a pick up hay bales work task using the geo tags associated with the hay bales to identify the pick up locations for the new task.
- Yet another embodiment consistent with the invention may comprise a system for providing an agricultural invoicing application.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to receive a work task for an agricultural implement, wherein the work task is associated with a work area, determine, according to a global positioning system, whether the agricultural implement is located within the work area, in response to determining that the agricultural implement is located within the work area, initiate a work application associated with the work task, wherein the work application is operative to record a plurality of measurements associated with the work task, determine whether the agricultural implement is no longer located within the work area, and in response to determining that the agricultural implement is no longer located within the work area, halt the work application, generate an invoice according to the plurality of measurements associated with the work task, and provide the invoice to an owner of the work area.
- the measurement may comprise, for example, a count of a plurality of operations performed associated with the work task, a time the work application was initiated, and a time the work application
- An embodiment consistent with the invention may comprise a system for providing a dynamic configuration trigger.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to create at least one application trigger associated with a work area, identify at least one characteristic associated with a work implement, determine whether the work implement is located in the work area, in response to determining that the work implement is located in the work area, determine whether the at least one characteristic of the work implement satisfies a condition associated with the at least one application trigger, and in response to determining that the at least one characteristic of the work implement satisfies a condition associated with the at least one application trigger, transmit an application configuration to the work implement.
- the application trigger may comprise a server identifier associated with an application server operative to provide the application configuration.
- the processing unit may be further operative to determine whether at least one second application trigger is associated with the work area and, if so determine whether at least one second characteristic of the work implement satisfies a condition associated with the at least one second application trigger.
- the processing unit may be operative to transmit a second application configuration to the work implement. The determination of whether the at least one second application trigger is associated with the work area may be made before, during, and/or after the work task associated with the first application trigger has been started and/or completed.
- Another embodiment consistent with the invention may comprise a system for providing an application trigger.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to locate a work area, define an application trigger associated with the work area, determine whether a work implement is located within the work area, and in response to determining that the work implement is located with the work area, transmit an application configuration to the work implement.
- Locating the work area may comprise receiving a geo fence boundary from a user, such as a field owner, and/or may comprise identifying the work area according to data received from a work implement.
- the application configuration may comprise, for example, at least one data parameter for the work implement to record.
- the processing unit may be further operative to receive a transmission of the at least one data parameter recorded by the work implement, determine whether the work implement has moved from the work area to a depot area, and in response to determining that the work implement has moved from the work area to the depot area, transmit a work analysis application to the work implement.
- the depot area may be identified by a geo-fence designating a fuel station, repair and/or maintenance location, etc.
- the processing unit may be further operative to receive a fuel use analysis from the work analysis application and produce a work report according to the fuel use analysis and transmitted at least one data parameter received from the work implement.
- Yet another embodiment consistent with the invention may comprise a system for providing a dynamic application trigger.
- the system may comprise a memory storage and a processing unit coupled to the memory storage.
- the processing unit may be operative to receive a plurality of data from a work implement, identify a location of the work implement, determine whether at least one first application trigger of a plurality of application triggers is associated with the location of the work implement, and in response to determining that the at least one first application trigger is associated with the location of the work implement, provide the received plurality of data to an application server associated with the at least one first application trigger.
- the processing unit may be further operative to receive a modification to the received plurality of data from the application server, determine whether at least one second application trigger of the plurality of application triggers is associated with the location of the work implement, and in response to determining that the at least one second application trigger is associated with the location of the work implement, provide the modified plurality of data to a second application server associated with the at least one second application trigger.
- the processing unit may be further operative to determine whether the work implement is no longer located within the work area and, in response to determining that the work implement is no longer located within the work area, provide the received plurality of data to a reporting application.
- the processing unit may be further operative to generate an invoice according to the received plurality of data and provide the invoice to an owner of the work area.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- Life Sciences & Earth Sciences (AREA)
- Primary Health Care (AREA)
- Animal Husbandry (AREA)
- General Health & Medical Sciences (AREA)
- Mining & Mineral Resources (AREA)
- Marine Sciences & Fisheries (AREA)
- Agronomy & Crop Science (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Educational Administration (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A trigger-based application control may be provided. An application trigger may be created and associated with a work area and a characteristic associated with a work implement. In response to determining that the work implement has entered the work area associated with the location-based condition if the characteristic of the work implement satisfies a condition associated with the application trigger, an application configuration may be transmitted to the work implement where it is received and initialized. In an agricultural inventorying and invoicing system a work task associated with an agricultural implement and a work area may be identified. If the agricultural implement is determined to be located within the work area, a work application for recording at least one data measurement associated with the work task may be initiated.
Description
TRIGGER-BASED CONTROL AND AGRICULTURAL INVENTORY AND INVOICE
SYSTEM
BACKGROUND
[001] Trigger-based application control may be provided. In conventional systems, the automated, real time ability to inventory the quality, quantity, and location of harvested material is not possible. Instead, equipment operators must manually instruct a system to capture such information, configure the equipment to gather the information correctly, remove the captured information from the machine, and transport the information to other systems for reports and/or invoices. This often causes problems because the equipment operators require specialized training for each type of work implement for which such information needs to be captured. For example, a fertilizer implement requires different information to be captured (e.g., areas covered, areas that may need additional attention, quantity of fertilizer used, etc.) than a harvesting implement (e.g., source location and quantity of the harvested material, pickup locations for remaining material, etc.). Furthermore, the manual configuration and delivery comprises an inefficient use of the equipment operators' time.
[002] Precision Farming (PA), Farm Management Information Systems (FMIS), and Fleet Management Systems (FMS) comprise known examples of agricultural technology domain areas (ATDA) in the agricultural industry using an Agricultural Service Architecture to capture process data from farming machines operating on and off field. However, only the process data availability is addressed and a need for mechanisms of how to automatically invoke services and how to manage a flexible billing system exists.
SUMMARY
[003] Trigger-based application control may be provided. An application trigger associated with a work area may be received by a work implement. In response to determining that the work implement has entered a work area associated with the application trigger, an application associated with the work implement may be received and initialized. In response to determining that the work implement has left the work area associated with the location-based condition, the application may be halted and a data report may be transmitted.
[004] Dynamically triggered application configuration may be provided. An application trigger may be created and associated with a work area. A characteristic may be associated with a work implement. The work implement may be determined to be located in the work area and, if the characteristic of the work implement satisfies a condition associated with the application trigger, an application configuration may be transmitted to the work implement.
[005] An agricultural inventorying and invoicing system may be provided. A work task associated with an agricultural implement and a work area may be identified. If the agricultural implement is determined to be located within the work area, a work application for recording at least one data measurement associated with the work task may be initiated. If the work implement is determined to no longer be located within the work area, the work application may be halted and the recorded at least one data measurement may be transmitted to a central system.
[006] It is to be understood that both the foregoing general description and the following detailed description are examples and explanatory only, and should not be considered to restrict the invention's scope, as described and claimed. Further, features and/or variations may be provided in addition to those set forth herein. For example, embodiments of the invention may be directed to various feature combinations and sub-combinations described in the detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
[007] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various embodiments of the present invention. In the drawings:
[008] Figure 1 is a block diagram illustrating an operating environment;
[009] Figure 2 is an illustration of an example work area;
[010] Figure 3 is a block diagram of a computing device;
[011] Figure 4 is a flow chart of a method for providing trigger-based application control;
[012] Figure 5 is a flow chart of a method for providing agricultural product inventorying and invoicing; and
[013] Figure 6 is a flow chart of a method for providing dynamically triggered application configuration.
DETAILED DESCRIPTION
[014] The following detailed description refers to the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar elements. While embodiments of the invention may be described, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the elements illustrated in the drawings, and the methods described herein may be modified by substituting, reordering, or adding stages to the disclosed methods.
Accordingly, the following detailed description does not limit the invention.
[015] Embodiments of the present invention provide for a system and method for providing agricultural inventorying and invoicing. Embodiment of the present invention also provide for a system and method for providing dynamically triggered application configuration. An agricultural implement, such as a hay baler implement coupled to a tractor, may be automatically configured and monitored before, during, and after operation in a work area. Upon leaving the work area, reports such as an inventory count and location of gathered hay bales may be generated and transmitted to a central system, such as a farm owner's computer-based inventory application. Consistent with embodiments of the invention, invoices for the work performed may be generated according to factors such as time and material efficiency and amount of harvested material gathered and similarly transmitted to the central system.
[016] For example, an independent contractor may be retained to harvest a crop in a given field. The equipment operator may couple an appropriate implement (e.g. a combine harvester) to a tractor. The system may identify the type of implement and retrieve a work order from a central system identifying a field location. A GPS system in the tractor may direct the operator to the field and/or pilot the tractor to the field using an autosteer system. The GPS system may determine when the implement has entered the work area according to a geo-boundary that may be provided with the work order.
Upon receiving the work order and/or upon detecting that a trigger associated with entering the work area has occurred, an appropriate application may be transmitted to a computer onboard the tractor, such as a hay baling application operative to inventory the number of bales created, tag the bales' locations in the field for later retrieval, and/or measure the quality, yield, moisture content, etc., associated with each bale. Another trigger may occur upon leaving the work area that may cause the application to finalize the recorded information, transmit a report and/or invoice to the central system.
[017] Dynamic application configuration may be provided to enable the automatic selection of an appropriate farm management information (FMIS) application according to implement and/or tractor type, the location, a time and/or date, information captured by sensors coupled to the implement and/or tractor. The application configuration may identify what work implements are available for coupling to the tractor, what work needs to be done in which fields, which operators are available, and may comprise a priority task list based on factors such as weather forecasts, current market prices, scheduling requirements, etc.
[018] FIG. 1 illustrates an operating environment 100 for providing trigger-based application control. FIG. 1 also illustrates an agricultural inventory and invoice system. Operating environment 100 may comprise a tractor/implement 1 10 coupled via a network 120 to a central system 130.
Tractor/implement 110 may comprise a tractor capable of being coupled to a plurality of different work implements (e.g., harvesters, balers, irrigation implements, fertilizing implements, tillers, trailers, crane arms, etc.) and/or a single machine such as a flatbed truck. Network 120 may comprise a
communication medium such as a wireless, radio, and/or cellular network. Central system 130 may comprise a plurality of applications that may execute on a computing device 300, described below with respect to FIG. 3, and/or a plurality of different communicatively-coupled computing devices. The applications may comprise a machine session control server 135, a machine subscription server 140, an invoice server 145, an inventory database 150, and/or a plurality of application servers 160(A)-(B). Other elements not shown may also be included in central system 130, such as weather forecasting applications, price tracking applications, yield and/or efficiency reporting applications, and/or operator
databases comprising information such as wages and trained skills and proficiencies. Central system 130 may also be operative to communicate with and send and/or retrieve data from an outside data source such as a crop market price and/or weather service.
[019] Central system 130 may be operative to identify whether tractor/implement 110 is associated with an application subscription according to machine subscription server 140 and may download an application 165 to tractor/implement 110 appropriate to a current work assignment.
Application 165 may be configured to perform certain functions upon the occurrence of trigger events such as recording a start time and/or initiating data recording when tractor/implement 110 enters a field and/or transmitting a report or invoice when tractor/implement 110 leaves the field.
[020] FIG. 2 illustrates an example work area 200. A plurality of tractors 110(A)-(B) may arrive at a depot 220 in the morning. Central system 130 may be located at depot 220 and/or offsite may communicate with tractors 110(A)-(B) via a communication medium such as a wireless, radio, and/or cellular network. The tractor operators may be identified according to skill sets, operation costs (e.g., equipment costs and/or operator wages) and/or tractor capabilities (e.g., tractor 110(A) may comprise a more powerful engine better suited to a heavier work implement than tractor 110(B) and/or tractors 110(A) and/or tractor 110(B) may already have a work implement coupled). The central system may also comprise a list of available work implements such as plurality of implements 230(A)-(D) and/or work areas, such as a plurality of fields 240(A)-(D). For example, work implement 230(A) may comprise a combine harvester, work implement 230(B) may comprise a hay baler, work implement 230(C) may comprise a fertilizer, and work implement 230(D) may comprise a hay bale gatherer. Field 240(A) may comprise a hay field ready for baling, field 240(B) may comprise a hay field that has already been baled but in need of retrieval, field 240(C) may comprise a corn field in need of fertilizing, and field 240(D) may comprise a field in need of tilling.
[021 ] The central system may provide a work assignment to one and/or more of tractors 110(A)-(B). For example, if tractor 110(A) already has a hay baler implement coupled, tractor 110(A) may be assigned to field 240(A). If tractor 110(B) does not yet have an implement coupled, central
system 130 may provide a work assignment according to a work priority list and/or tractor 110(B)'s (and/or its operators) capabilities and/or costs. For example, a weather forecast may provide for rain in the afternoon. Collection of baled hay from field 240(B) may receive a higher priority than fertilization of field 240(C) in order to minimize damage to the quality of the baled hay and/or to avoid excess fertilizer runoff.
[022] Application configurations, triggers, and/or work orders may be downloaded prior to beginning work and/or updated as information is gathered. For example, at the beginning of the work day, a hay baler application (e.g., work application 165) may be downloaded to a tractor 110. if a hay baler application detects that the gathered material is becoming too wet, an updated work order may direct the operator to another work location and/or transmit a location according to the GPS identifying the material for a later attempt. Similarly, if a yield and/or quality measurement determines that the cost of having the operator in a particular location is greater than the value of the crop being harvested, the operator may be directed to increase speed so as to finish the area faster, accepting a lower yield and/or quality in exchange for the operator reaching a higher value area sooner.
[023] Consistent with embodiments of the invention, central system 130 may identify various fields such as fields 240(A)-240(B) and track past work done, current work needed, and/or future work expected. For example, field 240(A) may comprise a plurality of work assignments, their required order, and their status such as: tilled - completed, planted - completed, cut - completed, baled - pending, collected - waiting for baling. The completed assignments may be associated with recorded data such as time spent, costs incurred, yields, quality measurements, etc. As tractor 110 enters boundaries identified for field 240(A), central system 130 may determine whether tractor 110 comprises an appropriate implement for the current work needed in that field. If tractor 110 comprises a hay baler implement and field 240(A) is currently in need of baling, central system 130 may download application 165 as a hay baling application and instruct tractor 110 to begin operation in field 240(A). Application 165 may comprise configuration and/or trigger information such as acceptable moisture content such that if a sensor coupled to tractor 110 detects an unacceptably high moisture
level, application 165 may reconfigure for new instructions, such as skipping the wetter areas, tagging their location for later re-attempts, and reporting the problem to central system 130. Other trigger examples may comprise a fuel cost/mileage reporting upon completion of the work (triggered by leaving the field boundary and/or retarning to depot 220), providing new instructions to tractor 110 such as directing it to another field to perform similar work or returning to depot 220 to change implements), and/or generating and/or transmitting invoice data to central system 130 associated with the completed work as measured by application 165.
[024] Triggers may comprise automatic start, stop, and/or reconfiguration instructions that may be associated with tractor 110 such as a location, a time/date, a capability, an attached implement, and/or data collected by tractor 110. Triggers may comprise a condition (and/or a plurality of conditions) and an action. For example, a first trigger may comprise the conditions of entering field 240(A) with a hay baler implement attached and an action of initiate hay baler application. A second trigger may become active only after the first trigger has fired, such as one comprising a condition of leaving field 240(A) and an action of reporting gathered data to central system 130.
[025] An example use case may be as follows. Tractor 110(A) may receive a plurality of triggers from central system 130. As tractor 110(A) enters field 240(D) with a hay baling implement attached, triggers may fire associated with field 240(D) to determine whether appropriate work is available for field 240(D). If field 240(D) is currently in need of fertilizing, however, tractor 110(A) has the wrong implement and so no application may be initiated. As tractor 110(A) crosses the boundary into field 240(A), which may be in need of hay baling, a trigger may fire that causes central server 130 to transmit a hay baling application comprising configuration information, data recording instructions, and/or operator instructions to tractor 110(A). The hay baling application may initiate based on the trigger firing and may, for example, provide a suggested route via a GPS display to an operator of tractor 110(A) and/or initiate data recording associated with the working of the hay baling implement.
[026] Other triggers may be operative while the hay baling application is executing. For example, outside data source 170 may provide hay bale prices data to central server 130 enabling a trigger condition based on yield data collected by tractor 110(A). A predicted market value of the hay being baled by tractor 110(A) may be calculated and compared to predicted costs such as operator wages and equipment and fuel costs. If the projected profit is below a configurable threshold, the trigger may fire to stop the application and direct the operator of tractor 110(A) to cease operations in field 240(A). Another trigger may comprise a moisture level threshold that may direct the operator to skip some and/or all of field 240(A) if the moisture content of the hay is too high. The skipped areas may be recorded and transmitted back to central system 130, such as on the firing of another trigger comprising a condition of leaving the boundaries of field 240(A). A single trigger condition, such as leaving the field, may comprise multiple resulting actions, such as requesting new instructions for the operator and transmitting inventory and collection data to central system 130. For example, the hay baling application may transmit data comprising a GPS location for each bale ready for pickup and may comprise additional data such as warnings about which bales may comprise a higher moisture content than desired and so may require special handling.
[027] Agricultural technology domain areas (ATDA) may comprise features and functionality used by a farmer to provide management, logistics, planning and operational efficiencies in the application and harvesting of material. A farmer may have access to many machines and implements that may comprise different makes, models, and have different configurations that generate unstructured process data. Consistent with embodiments of the invention, an architecture layer, referred to herein as an Agricultural Application Control Subsystem (AACS), may be provided allowing user and/or location based customization and configuration independent of the underlying machine specific implementations. Applications may be designed for use with multiple makes and models by relying on the architecture layer to translate abstracted instructions (e.g., "collect moisture level data") into specific control instructions for a given implement.
[028] Tractor 110 may provide data through a standardized interface, such as that described by ISO 1 1783 over network 120 to central system 130, which may then store and/or convert the data into a standard format (e.g., XML) and/or a proprietary format associated with a particular data management application. The converted data may be made available to a farmer through an interface application, such as on a personal computer and may be used by value-added service applications, such as profit and loss analysis applications. Further, data from different machines may be collected, converted into a common format, and aggregated for use in a single analysis application. A closed loop architecture comprising a machine and a server in communication may be used. Process data may be sent to the server, analyzed, and adjustments may be made to the machine's configuration.
[029] The AACS may comprise a three-layer architecture structure. A first layer may comprise a transport plane comprising physical resources necessary for a connection from the agricultural machine to a middle layer. The middle layer may comprise a control plane that may comprise intelligent elements that may determine whether a data from a tractor is allowed to enter the network and which ATDA(s) to invoke in a top layer. The top layer may comprise an application plane where the ATDA(s) reside. The lower layer may be represented, for example, as a combination of a cellular network and a mobile application system, the AACS, and a network application system.
[030] The AACS may be responsible for examining each process-data record as it enters central system 130. This examination may be implemented, for example, via machine session control server 135 and/or machine subscription server 140. AACS may provide session control by recognizing that a machine may be generating process-data and that it may be possible to provide additional features and functionalities to the machine or to the ATDA service provider's application. A session may comprise a path of the data to ATDA service providers) from the machine and visa versa. Session control may allows establishment of a session and/or two-way transmission between central server 130 and tractor 110 during the life time of that session. An example of a service may comprise the storage of process data, such as in inventory database 150. Once the machine starts sending data, a session may be started by creating a path between the machine data and the storage service. If the data includes
GPS coordinates it may be possible during the session life time to engage another service such as a geofence analysis.
[031] A geofence may comprise a virtual perimeter for a real- world geographic area. When a location-aware device of a location-based service (LBS) user enters or exits a geofence, the device receives a generated notification. This notification might contain information about the location of the device. Geofencing is an element associated with telematics hardware and software. It may allow users of the system to draw zones around places of work, customers sites, fields, and/or secure areas. These geofences, when crossed by an equipped vehicle or person may trigger a notification to the user or operator.
[032] Through session control, the AACS may allow the determination of routing information (address) for a machine (e.g. for sending updated information, content adaptation for incompatible devices (e.g. converting units of captured data to the ISO 11783 standard), and interworking between different access networks. Session control may further enable the provision of application logic not natively available in devices (e.g. data corrections and auto field detection algorithms or the addition of coding data like an operator's name) and supplemental outside information for the application (e.g. weather information or commodity pricing). Session control may also provide store and forward capabilities when one ATDA service provider is not connected (e.g. the user of a FMIS software package is not at the computer) or when a machine is not in coverage. Session control may also offer authentication and authorization functionality.
[033] The AACS architecture may provide two mechanisms with which to blend applications already deployed in the network to create new ATDA services - Initial Filter Criteria (IFC) and service brokering. The iFC may comprise a set of prioritized trigger points assigned to a subscriber's profile that indicate the order in which multiple application servers (e.g., application servers 160(A)-(B)) may be invoked depending on what services a user has subscribed to.
[034] IFC implementation may use triggers that may define a set of conditions under which a particular application server is notified about the existence of data. Particular conditions may be
provided in the form of regular expressions. IFCs may define a correlation between a set of triggers and particular application server(s) responsible for execution of the associated service logic. The process data flow through the AACS may begin with the machine (e.g., tractor 110) capturing data and sending it to session control server 135 of central system 130. The process data from the machine may be parsed and a machine ID may be captured. The machine ID may be sent to machine subscriber server 140 to determine if the machine is allowed to enter this server (e.g. authentication and/or determination of whether the machine is an active paid subscriber). The applications that the machine has subscribed to may be returned to session control server 135 in the form of application profiles. Session control server 135 may examine each telemetry message against the IFC contained in the application profile(s); if a match occurs, the session may be assigned to an Application Server. The IFC may be able to select an application server based on the process data. That is, central server 130 may dynamically assign each session to a service. For example, if the process data does not include the speed of the machine but does include GPS, then a session may be dynamically assigned to a speed-as- a-function-of-GPS data service.
[035] The service brokerage may comprise a set of rules that govern service invocation during the life time of a session. The application profile may assign a quality of service (QoS, e.g., a required speed or performance of the network) value to force a route used by the assigned application server to allow real time access to the data.
[036] Application services may be offered as packages and/or individual applications that may incur a one-time, a periodic, and/or a recurring cost. A flexible charging mechanism may allow a network operator to offer a differential value beyond just set pricing or monthly fees. Pricing scenarios may be supported in the ACSS such as prepaid, postpaid, machine owner pays, ATDA service provider pays, and/or data storage costs (e.g., pay per data increment consumed and/or made available).
Application services may comprise, for example, data analysis applications, external data provider applications, auto field detections algorithms, data shaping algorithms, mapping services, invoicing services, geofencing services, SMS services, e-mail services, streaming audio and/or video, and/or
firmware and/or software application upgrade services. Each session may be associated with a set of services invoked as desired by the end user and/or the ATDA service provider. A list of services invoked, the time, date and length of invocation may be captured in a Charging Data Record (CDR). The CDR is then used by a billing entity against a rate sheet to create a bill.
[037] The following use case is provided as a non-limiting example of embodiments of the invention. A farmer may create a new application called "Baler Inventory and Invoice." Central system 130 may request the farmer to configure the application by providing details such as a location, desired equipment and/or operators, and/or scheduling data. The farmer may configure the application for use in field 240(A) when he is using tractor 110(A) with implement 230(A). The farmer may use two triggers such as geofence and machine configuration. He may assign the field name to the geofence trigger and the machine configuration to a machine and implement triggers.
[038] The Initial Filter Criteria may be created to define when and where to start the application. In addition, the application may also know when to stop. Two filters may be created as shown below. A session may be started once the conditions) of Example Trigger 1 are met and the session may remain active until an end condition such as Example Trigger 2 is satisfied.
IfGeoFence == field 240(A) &&
If Machine == tractor 110(A) &&
If Implement == implement 230(A) &&
Then Start the Baler Inventory and Invoicing Application
Example Trigger 1
[039] The application provisioning process may store the IFC as part of the farmer's application profile for that machine into machine subscription server 140. The ACSS may continuously monitor process data from all machines. Machine process data may be sent to an application control function and its data may be parsed and sent to machine subscription server 140. Machine subscription
server 140 may find the application profile and return the IFCs. Until the triggers for the Baler is met, the data may be stored via a default process. Each time a set of process data is sent to the ACF, it may be parsed and examined to perform machine authentication, load in the application service profile, and executes the IFCs. For example, the geofences service may be invoked to determine whether the machine is in the trigger field.
[040] If the process data matches the IFC, a session (a stateful program counter that assist in application control) may be created and a Session Detailed Record (SDR) for billing purposes may be generated. A message may be sent to one of application servers 160(A)-(B), such as applications server 160(A), comprising the SDR and an instruction to start the baler application. Application server 160(A) may receive the message, parse the SDR, and begins work. Application server 160(A) may download the baler application and/or a task to a task controller on tractor 110(A) so that the machine may capture the correct data. For example, the baler application may be transmitted to tractor 110 as application 165. Application 165 may begin to query the machine process data. The process data may allow application 165 to count the number of bales and record the location of the bales. Session control server 135 may monitor the machine process data until the IFC that ends the application is met. An SDR associated with stopping the application may be sent to application server 160(A), the application may be stopped, and the SDRs may be logged to be retrieved by a billing system such as invoice server 145.
[041] Figure 3 illustrates a computing device 300 as configured to operate as central system 130. Computing device 300 may include a processing unit 310 and a memory unit 320. Memory 320 may comprise, for example, application server 160(A) and inventory database 150. While executing on processing unit 310, application server 160(A) may perform processes for providing embodiments of the invention as described above.
[042] Computing device 300 may be implemented using a personal computer, a network computer, a server, a mainframe, or other similar microcomputer43ased workstation. The processor may comprise any computer operating environment, such as hand-held devices, multiprocessor
systems, microprocessor-based or programmable sender electronic devices, minicomputers, mainframe computers, and the like. The processor may also be practiced in distributed computing environments where tasks are performed by remote processing devices. Furthermore, the processor may comprise a mobile terminal, such as a smart phone, a cellular telephone, a cellular telephone utilizing wireless application protocol (WAP), personal digital assistant (PDA), intelligent pager, portable computer, a hand held computer, a conventional telephone, a wireless fidelity (Wi-Fi) access point, or a facsimile machine. The aforementioned systems and devices are examples and the processor may comprise other systems or devices.
[043] FIG. 4 is a flow chart setting forth the general stages involved in a method 400 consistent with an embodiment of the invention for providing trigger-based application control.
Method 400 may be implemented using computing device 400 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 400 will be described in greater detail below. Method 400 may begin at starting block 405 and proceed to stage 410 where computing device 300 may receive an application trigger. For example, a computer coupled to tractor/implement 110 may receive a plurality of application triggers each comprising a condition and an action. Each trigger may be associated with a work area and/or work task, such as baling hay harvested in a given field.
[044] From stage 410, method 400 may advance to stage 415 where computing device 300 may determine whether tractor/implement 110 is located within a work area associated with at least one of the trigger conditions. For example, a global positioning system (GPS) device associated with tractor/implement 110 may be operative to provide a location of tractor/implement 110. The work area may be identified by a geo fence and computing device 300 may be operative to determine whether tractor/implement 110's current location is within the geo fence. If not, method 400 may remain in stage 415, and computing device 300 may periodically re-evaluate tractor/implement 110's location.
[045] Otherwise, method 400 may advance to stage 420 where computing device 300 may receive an application associated with the work area. For example, an application trigger may be associated with a hay field work area. Upon entering the work area by tractor/implement 110, the
coupled computer may receive an application downloaded from a remote server for tracking and inventorying hay as it is gathered and baled.
[046] From stage 420, method 400 may advance to stage 425 where computing device 300 may initialize the application. For example, tractor/implement 110's computer may execute the downloaded application and initialize a plurality of data variables. For a hay baling application, for example, a number of hay bales created may be set to zero. The initialization may also comprise receiving operator instructions associated with performing a work task.
[047] From stage 425, method 400 may advance to stage 430 where computing device 300 may provide a task instruction. For example, the received application may cause directions to be displayed to an operator of tractor/implement 110. If tractor/implement 110 is equipped with an auto- steering system, the application may be operative to cause the implement to navigate to a start point for the work task.
[048] From stage 430, method 400 may advance to stage 435 where computing device 300 may determine whether tractor/implement 110 is still within the work area. If so, method 400 may remain in stage 435 and may periodically re-evaluate tractor/implement 110's location, such as with a GPS device.
[049] Otherwise, method 400 may advance to stage 440 where computing device 300 may transmit a data report. For example, tractor/implement 110 may transmit a data report generated by the application to central system 130. The data report may comprise, for example, efficiency and/or yield data associated with the work task. Method 400 may then end at stage 445.
[050] FIG. 5 is a flow chart setting forth the general stages involved in a method 500 consistent with an embodiment of the invention for providing agricultural inventorying and invoicing. Method 500 may be implemented using computing device 300 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 500 will be described in greater detail below. Method 500 may begin at starting block 505 and proceed to stage 510 where computing device 300 may determine whether a work implement is in a work area. For example, a Global Positioning
System (GPS) compatible device may determine whether a tractor towing a work implement is located with a geo fence identifying a field area. The work implement may comprise, for example, a harvester, a combine, a cultivator, an irrigator, and/or a transport implement. The GPS device may be coupled to the tractor and/or the implement, and the location of the tractor and/or implement may be evaluated by a computing device coupled to the tractor and/or implement and/or may be transmitted to a central server for evaluation. While the work implement is not in a work area, method 500 may remain at stage 510 and computing device 300 may periodically determine whether the implement has entered a work area.
[051] From stage 510, method 500 may advance to stage 515 where computing device 300 may identify a work task in the work area. For example, a hay baling implement may be determined to be located in a hay field; a work task may then comprise gathering crop material into hay bales from the hay field. Consistent with embodiments of the invention, computing device 300 may determine whether the work implement is equipped for the work task. For example, if the work task associated with the work area comprises hay baling, but the implement is equipped with a cultivator, computing device 300 may determine whether any other work tasks in the current area are suitable for such equipment. If not, method 500 may return to stage 510 until the implement is determined to be in a different work area.
[052] From stage 515, method 500 may advance to stage 520 where computing device 300 may initiate an application. For example, a hay bale inventorying application may be initiated that is operative to receive measurement data related to an amount and/or location of hay baled and/or a fuel consumption application may be initiated that is operative to track an amount of fuel used by the work implement while in the work area. Consistent with embodiments of the invention, one and/or a plurality of applications may be initiated. The applications may be operative to execute on a computer coupled to the work implement and/or tractor. The applications may also and/or alternatively be operative to execute on a server remotely located from the work implement. A computer associated
with the work implement may communicatively coupled to the remotely located server, such as via network 120.
[053] From stage 520, method 500 may advance to stage 525 where computing device 300 may record at least one data point. For example, computing device 300 may record a periodic fuel level measurement that may be provided to a fuel consumption application. For another example, sensors coupled to the work implement may measure work related characteristic data such as crop moisture levels and/or yields, and/or meteorological data. A GPS may also be used to record location based data, such as a traversed path through the work area. The recorded data may be provided to the initiated application(s) as it is gathered and/or after the work task is complete.
[054] From stage 525, method 500 may advance to stage 530 where computing device 300 may determine whether the work implement is still within the work area. If so, method 500 may return to stage 525 where computing device 300 may continue recording data.
[055] Otherwise, method 500 may advance to stage 535 where computing device 300 may halt the initiated application(s). For example, computing device 300 may inform the applications that the work task has been completed and/or that the work implement is no longer within the work area. The application(s) may receive the recorded data and may provide a report and/or modifications to the data prior to being halted.
[056] From stage 535, method 500 may advance to stage 540 where computing device 300 may generate a work report. For example, computing device 300 may produce a report detailing a number of hay bales created, a moisture content level for each bale, and a location for each bale. The report may, for example, be used to generate a new work task for a cargo bed equipped work implement to retrieve the hay bales.
[057] From stage 540, method 500 may advance to stage 545 where computing device 300 may generate an invoice. For example, computing device 300 may receive fuel consumption data such as total fuel used and efficiency over time as calculated by an application. This data may be combined
with fuel cost data, operator wage data, cost of consumables used (e.g., fertilizer, ropes, etc.) and/or equipment maintenance costs to generate an overall cost for completing the work task.
[058] From stage 545, method 500 may advance to stage 550 where computing device 300 may deliver the invoice. For example, the invoice may be provided to an owner of the work area, such as via e-mail, text message, being displayed on a web page, and/or being printed out for mailing.
Method 500 may then end at stage 555.
[059] FIG. 6 is a flow chart setting forth the general stages involved in a method 600 consistent with an embodiment of the invention for providing dynamically triggered application configuration. Method 600 may be implemented using computing device 300 as described in more detail above with respect to FIG. 3. Ways to implement the stages of method 600 will be described in greater detail below. Method 600 may begin at starting block 605 and proceed to stage 610 where computing device 300 may create a trigger condition. For example, a trigger condition may comprise a location of a work implement, a time, a date, a piece of data recorded by the work implement, and or the analysis of data recorded by the work implement. For example, the work implement may be recording data associated with a crop yield. This data may be analyzed with respect to a current market value of the crop and a trigger condition may comprise the yield value dropping below a threshold point.
[060] From stage 610, method 600 may advance to stage 615 where computing device 300 may identify a characteristic of a work implement. For example, the work implement characteristic may comprise a type of the work implement (e.g., a cultivator, a cargo truck, an irrigator, a hay baler, a combine harvester, etc.), a capability of the work implement (e.g., a maximum load size, speed, cost efficiency, etc.), a time of day, a date, a recorded data element, an analysis of the recorded data element, an operator, and/or an environmental factor (e.g., weather data).
[061] From stage 615, method 600 may advance to stage 620 where computing device 300 may determine whether the work implement is located within a work area associated with the trigger condition. For example, a global positioning system (GPS) device associated with the work implement
may be operative to provide a location of the work implement. The work area may be identified by a geo fence and computing device 300 may be operative to determine whether the work implement's current location is within the geofence. If not, method 600 may remain in stage 620, and computing device 300 may periodically re-evaluate the work implement's location.
[062] Otherwise, method 600 may advance to stage 625 where computing device 300 may determine whether the trigger condition is satisfied. For example, computing device 300 may determine that the trigger condition comprises a date upon which a field (i.e., the work area) may be harvested and/or a requirement that the implement type comprise a suitable harvester for the crop located within that field. Computing device 300 may determine, for example, whether the current date satisfies the date condition (e.g., is on or after the date condition) and/or whether the work implement is of a suitable type. If not, method 600 may end at stage 645.
[063] Otherwise, method 600 may continue to stage 630 where computing device 300 may transmit an application configuration to the work implement. For example, a configuration may comprise an instruction of data to record by the work implement, directions to a start and/or end location and/or a routing path, an application to be executed on a computer associated with the work implement, and/or a server destination to which recorded data should be transmitted by the work implement.
[064] From stage 630, method 600 may advance to stage 635 where computing device 300 may determine whether the work task associated with the application configuration is complete. For example, the application may track the work implement's progress through the work area and may determine when the work area has been fully harvested. For another example, computing device 300 may determine that the work implement has left the work area which may signify that the work task is completed. While the work task has not been completed, method 600 may remain in stage 635.
[065] Otherwise, once the work task is determined to be complete in stage 635, method 600 may advance to stage 640 where computing device 300 may generate a report associated with the work
task. For example, computing device 300 may analyze data recorded by the work implement into a summary of work tasks completed by the work implement. Method 600 may then end at stage 645.
[066] An embodiment consistent with the invention may comprise a system for providing trigger-based application control. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be associated with a work implement and may be operative to receive at least one application trigger comprising a location-based condition, determine whether the work implement has entered a work area associated with the location-based condition, and in response to determining that the work implement has entered the work area associated with the location-based condition, receive an application associated with the work implement and initialize the application. The processing unit may be further operative to determine whether the work implement has left the work area associated with the location-based condition and, if so, halt the application and transmit a data report. The processing unit may be further operative to determine whether the work implement has entered a second work area associated with a second location-based condition of at least one second application trigger and, in response to determining that the work implement has entered the second work area associated with the second location-based condition of the at least one second application trigger, receive a second application associated with the work implement and initialize the second application. The processing unit may be further operative to measure at least one data parameter and provide the at least one data parameter to the application. The processing unit may be further operative to determine whether a current time satisfies a time-based condition of the trigger and, if not, ignore that trigger.
[067] Another embodiment consistent with the invention may comprise a system for providing an application trigger. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to determine whether at least one characteristic associated with a work implement satisfies a condition of at least one application trigger and, in response to determining that the at least one characteristic associated with the work implement satisfies the condition of the at least one application trigger, initialize an application associated with the
at least one application trigger, record at least one data parameter associated with the at least one application trigger, provide the at least one data parameter to the application, and display at least one work task instruction associated with the application to an operator of the work implement. The characteristic may comprise, for example, an equipment type coupled to the work implement, a location of the work implement, a time, a date, an environmental condition, and/or a measurement recorded by the work implement. The processing unit may be further operative to determine whether the at least one data parameter satisfies at least one operating condition and, in response to determining that the at least one data parameter does not satisfy the at least one operating condition, display at least one new work task instruction to the operator of the work implement. Being operative to determine whether the at least one data parameter satisfies the at least one operating condition may comprise the processing unit being operative to, for example, determine whether the at least one data parameter is within a target range and/or determine whether an operational cost of the work implement exceeds a cost threshold. The operational cost may be calculated, for example, according to a fuel expense and a compensation expense associated with the operator and wherein the cost threshold is established according to a current market price for a crop being grown in the work area.
[068] Yet another embodiment consistent with the invention may comprise a system for providing a dynamic application configuration trigger. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to transmit a location of a work implement to a monitoring server, receive, from the monitoring server, an application configuration associated with the location comprising at least one first work instruction, at least one required measurement, and at least one condition associated with the at least one required measurement, display the at least one first work instruction to an operator of the work implement, record a plurality of data measurements according to the at least one required measurement, determine whether at least one of the plurality of data measurements satisfies the at least one condition, and in response to determining that the at least one of the plurality of data measurements satisfies the at least one condition, display at least one second work instruction to the operator of the work implement. The
at least one first work instruction may comprise, for example a crop harvesting instruction and the at least one required measurement comprises a quality measurement associated with a harvested crop material, such as a moisture level measurement. The processing unit may be further operative to transmit the data tag to the monitoring server.
[069] An embodiment consistent with the invention may comprise a system for providing an agricultural application. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to identify a work task associated with an agricultural implement, wherein the work task is associated with a work area, determine whether the agricultural implement is located within the work area, and in response to determining that the agricultural implement is located within the work area, initiate a work application associated with the work task, wherein initiating the work application comprises recording at least one data measurement associated with the work task. The processing unit may be further operative to determine whether the agricultural implement is no longer located within the work area and, if so, halt the work application and transmit the recorded at least one data measurement associated with the work task to a central system. The work task may comprise, for example, collecting a plurality of agricultural material (e.g., hay) into a plurality of transportable units (e.g., bales). Each of the transportable units may be associated with a geo tag comprising, for example, a location, a collection time, a collection date, and/or the recorded at least one data measurement. The processing unit may be further operative to display each of the plurality of transportable units on a map according to the geo tag associated with each of the plurality of transportable units. The processing unit may be further operative to generate an invoice based on a count of the plurality of transportable units and/or deliver the invoice to an owner of the work area.
[070] Another embodiment consistent with the invention may comprise a system for providing an agricultural inventorying application. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to determine whether an agricultural implement is located within a work area defined by a geo fence and in response
to determining that the agricultural implement is located within the work area, initiate a work application associated with a work task. Initiating the work application may comprise the processing unit being operative to record at least one data measurement associated with each of a plurality of operations associated with the work task and record a location associated with each of the plurality of operations associated with the work task. The processing unit may be further operative to determine whether the agricultural implement is no longer located within the work area, and, in response to determining that the agricultural implement is no longer located within the work area, generate a report associated with the work task and transmit the report to a remote server. The processing unit may be further operative to determine, for at least one of the plurality of operations, whether the recorded at least one data measurement associated with the at least one of the plurality of operations is associated with a threshold rule, in response to determining that the recorded at least one data measurement is associated with a threshold rule, determine whether the recorded at least one data measurement satisfies the threshold rule, and, if so, create a tag associated with the at least one of the plurality of operations comprising an alert. For example, the threshold rule may comprise a maximum safe moisture level associated with baled hay. If the measured moisture level exceeds the threshold moisture level in a hay bale, that bale may be associated with a geo tag. Other work implements may be operative to detect the geo tag and, for example, alert an operator that the high moisture hay bale should be isolated from other bales and/or left uncollected. The processing unit may be further operative to determine whether a second work task should be scheduled for the work area and, if so, create the second work task for the work area and/or add the tag associated with the at least one of the plurality of operations to the second work task. For example, after completing a hay baling work task, the processing unit may be operative to create a pick up hay bales work task using the geo tags associated with the hay bales to identify the pick up locations for the new task.
[071] Yet another embodiment consistent with the invention may comprise a system for providing an agricultural invoicing application. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to receive a work
task for an agricultural implement, wherein the work task is associated with a work area, determine, according to a global positioning system, whether the agricultural implement is located within the work area, in response to determining that the agricultural implement is located within the work area, initiate a work application associated with the work task, wherein the work application is operative to record a plurality of measurements associated with the work task, determine whether the agricultural implement is no longer located within the work area, and in response to determining that the agricultural implement is no longer located within the work area, halt the work application, generate an invoice according to the plurality of measurements associated with the work task, and provide the invoice to an owner of the work area. The measurement may comprise, for example, a count of a plurality of operations performed associated with the work task, a time the work application was initiated, and a time the work application was halted.
[072] An embodiment consistent with the invention may comprise a system for providing a dynamic configuration trigger. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to create at least one application trigger associated with a work area, identify at least one characteristic associated with a work implement, determine whether the work implement is located in the work area, in response to determining that the work implement is located in the work area, determine whether the at least one characteristic of the work implement satisfies a condition associated with the at least one application trigger, and in response to determining that the at least one characteristic of the work implement satisfies a condition associated with the at least one application trigger, transmit an application configuration to the work implement. The application trigger may comprise a server identifier associated with an application server operative to provide the application configuration. The processing unit may be further operative to determine whether at least one second application trigger is associated with the work area and, if so determine whether at least one second characteristic of the work implement satisfies a condition associated with the at least one second application trigger. In response to determining that the at least one second characteristic of the work implement satisfies a condition
associated with the at least one second application trigger, the processing unit may be operative to transmit a second application configuration to the work implement. The determination of whether the at least one second application trigger is associated with the work area may be made before, during, and/or after the work task associated with the first application trigger has been started and/or completed.
[073] Another embodiment consistent with the invention may comprise a system for providing an application trigger. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to locate a work area, define an application trigger associated with the work area, determine whether a work implement is located within the work area, and in response to determining that the work implement is located with the work area, transmit an application configuration to the work implement. Locating the work area may comprise receiving a geo fence boundary from a user, such as a field owner, and/or may comprise identifying the work area according to data received from a work implement. The application configuration may comprise, for example, at least one data parameter for the work implement to record. The processing unit may be further operative to receive a transmission of the at least one data parameter recorded by the work implement, determine whether the work implement has moved from the work area to a depot area, and in response to determining that the work implement has moved from the work area to the depot area, transmit a work analysis application to the work implement. The depot area may be identified by a geo-fence designating a fuel station, repair and/or maintenance location, etc. The processing unit may be further operative to receive a fuel use analysis from the work analysis application and produce a work report according to the fuel use analysis and transmitted at least one data parameter received from the work implement.
[074] Yet another embodiment consistent with the invention may comprise a system for providing a dynamic application trigger. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to receive a plurality of data from a work implement, identify a location of the work implement, determine whether at least one first
application trigger of a plurality of application triggers is associated with the location of the work implement, and in response to determining that the at least one first application trigger is associated with the location of the work implement, provide the received plurality of data to an application server associated with the at least one first application trigger. The processing unit may be further operative to receive a modification to the received plurality of data from the application server, determine whether at least one second application trigger of the plurality of application triggers is associated with the location of the work implement, and in response to determining that the at least one second application trigger is associated with the location of the work implement, provide the modified plurality of data to a second application server associated with the at least one second application trigger. The processing unit may be further operative to determine whether the work implement is no longer located within the work area and, in response to determining that the work implement is no longer located within the work area, provide the received plurality of data to a reporting application. The processing unit may be further operative to generate an invoice according to the received plurality of data and provide the invoice to an owner of the work area.
[075] While certain embodiments of the invention have been described, other embodiments may exist. While the specification includes examples, the invention's scope is indicated by the following claims. Furthermore, while the specification has been described in language specific to structural features and/or methodological acts, the claims are not limited to the features or acts described above. Rather, the specific features and acts described above are disclosed as example for embodiments of the invention.
Claims
1. A system for providing an application trigger, the system comprising:
a memory storage; and
a processing unit coupled to the memory storage, wherein the processing unit is operative to: determine whether at least one characteristic associated with a work implement satisfies a condition of at least one application trigger;
in response to determining that the at least one characteristic associated with the work implement satisfies the condition of the at least one application trigger:
initialize an application associated with the at least one application trigger, record at least one data parameter associated with the at least one application trigger,
provide the at least one data parameter to the application, and
display at least one work task instruction associated with the application to an operator of the work implement.
2. The system of claim 1 , wherein the at least one characteristic comprises at least one of the following: an equipment type coupled to the work implement, a location of the work implement, a time, a date, an environmental condition, and a measurement recorded by the work implement.
3. The system of claim 1 , wherein the processing unit is further operative to:
determine whether the at least one data parameter satisfies at least one operating condition; and in response to determining that the at least one data parameter does not satisfy the at least one operating condition, display at least one new work task instruction to the operator of the work implement.
4. The system of claim 3, wherein being operative to determine whether the at least one data parameter satisfies the at least one operating condition comprises determining whether the at least one data parameter is within a target range.
5. The system of claim 3, wherein being operative to determine whether the at least one data parameter satisfies the at least one operating condition comprises determining whether an operational cost of the work implement exceeds a cost threshold.
6. The system of claim 5, wherein the operational cost comprises at least a fuel expense and a compensation expense associated with the operator and wherein the cost threshold is established according to a current market price.
7. A system for providing agricultural inventorying application, the system comprising: a memory storage; and
a processing unit coupled to the memory storage, wherein the processing unit is operative to: determine whether an agricultural implement is located within a work area defined by a geo fence,
in response to determining that the agricultural implement is located within the work area, initiate a work application associated with a work task, wherein being operative to initiate the work application comprises being operative to:
record at least one data measurement associated with each of a plurality of operations associated with the work task, and
record a location associated with each of the plurality of operations associated with the work task,
determine whether the agricultural implement is no longer located within the work area, and
in response to determining that the agricultural implement is no longer located within the work area:
generate a report associated with the work task, and
transmit the report to a remote server.
8. The system of Claim 7, wherein the work area comprises a hay field and wherein the plurality of operations associated with the work task comprise gathering crop material into a plurality of hay bales in the hay field.
9. The system of Claim 7, wherein the processing unit is further operative to:
determine, for at least one of the plurality of operations, whether the recorded at least one data measurement associated with the at least one of the plurality of operations is associated with a threshold rule;
in response to determining that the recorded at least one data measurement is associated with a threshold rule, determine whether the recorded at least one data measurement satisfies the threshold rule; and
in response to determining that the recorded at least one data measurement satisfies the threshold rule, create a tag associated with the at least one of the plurality of operations comprising an alert.
10. The system of Claim 9, wherein the processing unit is further operative to:
in response to determining that the agricultural implement is no longer located within the work area, determine whether a second work task should be scheduled for the work area; and
in response to determining that the second work task should be scheduled, create the second work task for the work area.
11. The system of Claim 10, wherein the processing unit is further operative to add the tag associated with the at least one of the plurality of operations to the second work task.
12. A system for providing an application trigger, the system comprising:
a memory storage; and
a processing unit coupled to the memory storage, wherein the processing unit is operative to: locate a work area
define an application trigger associated with the work area,
determine whether a work implement is located within the work area, and in response to determining that the work implement is located with the work area, transmit an application configuration to the work implement.
13. The system of claim 12, wherein the application configuration comprises at least one data parameter for the work implement to record.
14. The system of claim 13, wherein the processing unit is further operative to receive a transmission of the at least one data parameter recorded by the work implement.
15. The system of claim 14, wherein the processing unit is further operative to:
determine whether the work implement has moved from the work area to a depot area; and in response to determining that the work implement has moved from the work area to the depot area, transmit a work analysis application to the work implement.
16. The system of claim 15, wherein the processing unit is further operative to:
receive a fuel use analysis from the work analysis application; and
produce a work report according to the fuel use analysis and transmitted at least one data parameter received from the work implement.
17. The system of claim 12, wherein the processing unit is further operative to transmit an executable application to the work implement.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33000210P | 2010-04-30 | 2010-04-30 | |
US33001510P | 2010-04-30 | 2010-04-30 | |
US33002610P | 2010-04-30 | 2010-04-30 | |
US12/915,803 US20110270724A1 (en) | 2010-04-30 | 2010-10-29 | Agricultural inventory and invoice system |
US12/915,777 US20110270783A1 (en) | 2010-04-30 | 2010-10-29 | Trigger-based application control |
US12/915,792 US20110270723A1 (en) | 2010-04-30 | 2010-10-29 | Dynamically triggered application configuration |
PCT/US2011/034349 WO2011137251A1 (en) | 2010-04-30 | 2011-04-28 | Trigger-based control and agricultural inventory and invoice system |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2564370A1 true EP2564370A1 (en) | 2013-03-06 |
Family
ID=44169145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP11720913A Withdrawn EP2564370A1 (en) | 2010-04-30 | 2011-04-28 | Trigger-based control and agricultural inventory and invoice system |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP2564370A1 (en) |
WO (1) | WO2011137251A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015046007A (en) * | 2013-08-28 | 2015-03-12 | ヤンマー株式会社 | Remote server |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6236907B1 (en) * | 1995-05-30 | 2001-05-22 | Ag-Chem Equipment Co., Inc. | System and method for creating agricultural decision and application maps for automated agricultural machines |
WO2001095164A1 (en) * | 2000-06-05 | 2001-12-13 | Ag-Chem Equipment Company, Inc. | System and method for creating crop input requirement maps for site specific farming |
CA2419272A1 (en) * | 2000-08-22 | 2002-02-28 | Deere & Company | System and method for developing a farm management plan for production agriculture |
DE102005008105A1 (en) * | 2005-02-21 | 2006-08-31 | Amazonen-Werke H. Dreyer Gmbh & Co. Kg | Electronic Machine Management System |
-
2011
- 2011-04-28 EP EP11720913A patent/EP2564370A1/en not_active Withdrawn
- 2011-04-28 WO PCT/US2011/034349 patent/WO2011137251A1/en active Application Filing
Non-Patent Citations (1)
Title |
---|
See references of WO2011137251A1 * |
Also Published As
Publication number | Publication date |
---|---|
WO2011137251A1 (en) | 2011-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110270724A1 (en) | Agricultural inventory and invoice system | |
US20120072533A1 (en) | Dynamic service generation in an agricultural service architecture | |
US20110270723A1 (en) | Dynamically triggered application configuration | |
US11257014B2 (en) | Ticket-based harvest management system and method utilizing GPS trails | |
US20210350316A1 (en) | Ticket Based Harvest Management System and Method | |
US11716588B2 (en) | System and method for proximity-based analysis of multiple agricultural entities | |
US20120143642A1 (en) | Fleet Management Revenue Assurance | |
US9881278B2 (en) | Ticket-based harvest life cycle information management: system and method | |
US20110270783A1 (en) | Trigger-based application control | |
US20120072922A1 (en) | Evaluating triggers for application control and machine configuration | |
US20100145572A1 (en) | Method for supporting the automation of agricultural work or service | |
WO2014112154A1 (en) | Farm work machine, farm work management method, farm work management program, and recording medium recording farm work management program | |
US20120072317A1 (en) | Billing management system for agricultural services access | |
US20190050946A1 (en) | Automated activity tracking system | |
AU2021261877A1 (en) | Utilizing crop moisture data | |
RU2498549C2 (en) | Method of providing automation of agricultural works | |
US20120072322A1 (en) | Self-provisioning by a machine owner | |
CA2911502C (en) | Ticket-based harvest management system and method | |
CN109919341A (en) | One kind being based on Android intelligent agricultural equipment monitoring management system and method | |
CN105684006A (en) | Quality management server for recyclable waste paper and method for same | |
US20120072341A1 (en) | Allocating application servers in a service delivery platform | |
WO2011137251A1 (en) | Trigger-based control and agricultural inventory and invoice system | |
WO2012040182A2 (en) | Billing management system for agricultural services access | |
US20130090975A1 (en) | Method for Managing a Cellulosic Biomass Harvest | |
CN210515367U (en) | Agricultural machinery station system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20121009 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20130618 |