METHOD FOR OPERATING A CONTROL DEVICE OF A UTILITY VEHICLE FOR CARRYING OUT A WORK PROCESS

20230359195 ยท 2023-11-09

    Inventors

    Cpc classification

    International classification

    Abstract

    A method for operating a control device of a utility vehicle for carrying out a work process, in particular an agricultural utility vehicle. The utility vehicle includes a large number of sub-systems, each for executing a sub-process of the work process, a control program for controlling the utility vehicle and the work process is divided into a large number of sub-programs; each sub-program is provided for controlling a relevant sub-system of the utility vehicle and for controlling a sub-process of the work process that is to be executed by this relevant sub-system; a large number of virtual machines is executed, the individual virtual machines each executing one of the sub-programs.

    Claims

    1-15. (canceled)

    16. A method for operating a control device of a utility vehicle for carrying out a work process, the utility vehicle including a large number of sub-systems, each of the sub-systems configured to execute a respective sub-process of the work process, wherein a control program for controlling the utility vehicle and the work process is divided into a large number of sub-programs, wherein each sub-program of the sub-programs is configured to control a respective sub-system of the sub-systems of the utility vehicle and to control the respective sub-process of the work process executed by the respective sub-system, the method comprising: executing a large number of virtual machines, each individual virtual machine of the virtual machines respectively executing one of the sub-programs.

    17. The method according to claim 16, wherein the utility vehicle is an agricultural utility vehicle.

    18. The method according to claim 16, wherein a first processor core of a processor unit of the control device executes a basic functionality of the control device including an operating system and safety-relevant software, and wherein the first processor core and/or at least a second processor core of the processor unit executes the large number of virtual machines.

    19. The method according to claim 18, wherein: (i) the first processor core executes a first management unit, which manages access of the individual virtual machines to resources of the control device and/or of the utility vehicle, and/or (ii) for each of one or more respective virtual machines of the virtual machines, a second management unit is respectively executed and respectively receives an access request of the respective virtual machine and forwards it to the first management unit, and/or (iii) wherein the first processor core executes a function switching unit which manages access of functions, executed by the individual virtual machines, to resources of the control device and/or of the utility vehicle within predetermined thresholds, and/or (iv) a function coordination unit is executed for one or more of the virtual machines and coordinates functions, executed by the one or more virtual machines, and resources of the control device and/or of the utility vehicle.

    20. The method according to claim 16, wherein the utility vehicle is configured as a combine harvester, wherein a first sub-system of the combine harvester is provided for basic functions of the combine harvester, wherein on the control device, a first sub-program is executed in a first virtual machine and controls the basic functions of the combine harvester, wherein a second sub-system of the combine harvester is provided for driving the combine harvester, wherein on the control device, a second sub-program is executed in a second virtual machine and controls a sub-process of driving the combine harvester, wherein a third sub-system of the combine harvester is provided for mowing useful plants, wherein on the control device, a third sub-program is executed in a third virtual machine and controls a sub-process of mowing, wherein a fourth sub-system of the combine harvester is provided for threshing the mowed useful plants, wherein on the control device, a fourth sub-program is executed in a fourth virtual machine and controls a sub-process of threshing, wherein a fifth sub-system of the combine harvester is provided for separating straw and grains and/or seeds, wherein on the control device, a fifth sub-program is executed in a fifth virtual machine and controls a sub-process of separating, wherein a sixth sub-system of the combine harvester is provided for storing the separated grains and/or seeds, wherein on the control device, a sixth sub-program is executed in a sixth virtual machine and controls a subprocess of storing, wherein a seventh sub-system of the combine harvester is provided for straw management of the separated straw, wherein on the control device, a seventh sub-program is executed in a seventh virtual machine and controls a sub-process of straw management.

    21. The method according to claim 20, wherein the first sub-program for controlling the basic functions controls one or more of the following functions: a powertrain function; and/or an internal combustion engine control; and/or auxiliary unit functions; and/or a longitudinal and lateral guidance.

    22. The method according to claim 20, wherein the second sub-program for controlling driving controls one or more of the following functions: an automatic steering system; and/or parallel driving for transfer operations; and/or a right-of-way control.

    23. The method according to claim 20, wherein the third sub-program for controlling mowing controls cutting-unit types and cutting-unit functions depending on a respective useful plant variety.

    24. The method according to claim 20, wherein the fourth sub-program for controlling threshing controls one or more of the following functions: a rotor threshing unit; and/or a tangential threshing unit; and/or an axial threshing unit; and/or a hybrid threshing unit.

    25. The method according to claim 20, wherein the fifth sub-program for controlling separating controls one or more of the following functions: a slope compensation; and/or a loss determination; and/or a screen movement; and/or a gap; and/or a fan.

    26. The method according to claim 20, wherein the sixth sub-program for controlling storing controls one or more of the following functions: a yield measurement; and/or a detection of breakage and soiling; and/or a transfer.

    27. The method according to claim 20, wherein the seventh sub-program for controlling the straw management controls one or more of the following functions: a chaff cutter; and/or a windrow placement; and/or a wind measurement; and/or a wind compensation; and/or a slope measurement; and/or a slope compensation.

    28. A control device for a utility vehicle for carrying out a work process, the utility vehicle including a large number of sub-systems, each of the sub-systems configured to execute a respective sub-process of the work process, wherein a control program for controlling the utility vehicle and the work process is divided into a large number of sub-programs, wherein each sub-program of the sub-programs is configured to control a respective sub-system of the sub-systems of the utility vehicle and to control the respective sub-process of the work process executed by the respective sub-system, the control device configured to: execute a large number of virtual machines, each individual virtual machine of the virtual machines respectively executing one of the sub-programs.

    29. An agricultural utility vehicle configured to carry out a work process, the utility vehicle comprising: a control device, the utility vehicle including a large number of sub-systems, each of the sub-systems configured to execute a respective sub-process of the work process, wherein a control program for controlling the utility vehicle and the work process is divided into a large number of sub-programs, wherein each sub-program of the sub-programs is configured to control a respective sub-system of the sub-systems of the utility vehicle and to control the respective sub-process of the work process executed by the respective sub-system, the control device configured to: execute a large number of virtual machines, each individual virtual machine of the virtual machines respectively executing one of the sub-programs.

    30. A non-transitory machine-readable storage medium on which is stored a computer program for operating a control device of a utility vehicle for carrying out a work process, the utility vehicle including a large number of sub-systems, each of the sub-systems configured to execute a respective sub-process of the work process, wherein a control program for controlling the utility vehicle and the work process is divided into a large number of sub-programs, wherein each sub-program of the sub-programs is configured to control a respective sub-system of the sub-systems of the utility vehicle and to control the respective sub-process of the work process executed by the respective sub-system, the computer program, when executed by a control device, causing the control device to perform: executing a large number of virtual machines, each individual virtual machine of the virtual machines respectively executing one of the sub-programs.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0047] FIG. 1 shows a schematic sectional view of a utility vehicle configured as a combine harvester with a preferred configuration of a control device according to the present invention, configured to carry out a preferred embodiment of a method according to the present invention.

    [0048] FIG. 2 schematically shows a preferred configuration of a control device according to the present invention, configured to carry out a preferred embodiment of a method according to the present invention.

    DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

    [0049] In FIG. 1, an agricultural utility vehicle configured as a combine harvester is shown in a schematic sectional view and denoted by 100.

    [0050] The combine harvester 100 is configured to carry out a work process, namely to harvest useful plants, e.g., grains. For this purpose, the combine harvester 100 comprises a large number of sub-systems, each of which carries out an individual sub-process as a section or process step of the entire work process or of the entire harvesting process.

    [0051] A first sub-system 110 is provided for basic functions of the combine harvester and comprises, for example, an internal combustion engine 111, a powertrain 112, a brake 113, etc.

    [0052] A second sub-system 120 is provided for driving the combine harvester during harvesting, and comprises, for example, a steering system 121, which is in particular automatic.

    [0053] A third sub-system 130 is provided for mowing the useful plants, e.g., the grains, in particular including collecting and feeding. For this purpose, the third sub-system 130 comprises a reel 131, a cutter bar 132, a feed auger 133, an inclined conveyor 134, and a rock catching trough 135.

    [0054] A fourth sub-system 140 is provided for threshing the mowed useful plants or mowed grains and comprises, for example, a threshing drum 141 and a threshing basket 142.

    [0055] A fifth sub-system 150 is provided for separating straw and grain and furthermore for cleaning the separated grain and comprises a straw walker 151, a grain pan 152, a fan 153, an upper screen 154, a lower screen 155, a return auger 156, a return 157, and furthermore a turning drum 158.

    [0056] A sixth sub-system 160 is provided for storing the separated and cleaned grain and comprises a grain auger 161, a grain tank 162, and furthermore an unloading auger 163.

    [0057] A seventh sub-system 170 is provided for straw management of the separated straw and comprises, for example, a straw chaff cutter 171.

    [0058] It is understood that the combine harvester 100 may not necessarily comprise all of the elements discussed above and may also comprise further elements.

    [0059] A control device 200 is provided for controlling the combine harvester 100 and the work process and is, in particular in terms of program technology, configured to execute a preferred embodiment of a method according to the present invention. A preferred configuration of the control device 200 is shown schematically in FIG. 2 and is to be explained below.

    [0060] The control device 200 comprises a processor unit 210 having a large number of processor cores, for example having five processor cores 211, 212, 213, 214, 215.

    [0061] Furthermore, the control device 200 comprises memory units, for example a RAM memory 220 and a flash memory 230, as well as furthermore peripheral units 240, e.g., a port 241 for a CAN fieldbus, a port 242 for a LIN bus as well as inputs and outputs 243, etc.

    [0062] In the processor unit 210, a large number of virtual machines 310 are executed. For example, a first virtual machine 311 is executed by a first processor core 211. For example, two virtual machines 312, 313, 314, 315, 316, 317 are respectively executed by the further processor cores 212, 213, and 214. It should be noted that significantly more, for example up to 20, virtual machines can be executed per processor core today. The mapping of the respective virtual machine to a particular processor core takes place statically with microcontrollers, i.e., this is already defined during the development or configuration or initialization. Furthermore, a hypervisor 301, such as a light-weight hypervisor (LWHVR), for coordinating and managing the virtual machines 310 is executed by the processor unit 210.

    [0063] The first processor core 211 is in particular provided as a master core on which an operating system 302 is executed, e.g., RTA-OS, as well as safety-relevant master software 303, e.g., AUTOSAR.

    [0064] Furthermore, a first management unit or virtual machine interface (VMI) 331 is executed by the first processor core 211 and manages access of the individual virtual machines 310 to resources of the control device 200 and/or of the combine harvester 100.

    [0065] For the virtual machines 312, 313, 314, 315, 316, 317, a second management unit or virtual machine adapter (VMA) 332, 333, 334, 335, 336, 337 is respectively executed and respectively receives an access request of the respective virtual machine 312-317 and forwards it to the first management unit or VMI 331.

    [0066] A function switching unit or feature proxy-on-device (FPoD) 341 is furthermore executed by the first processor core 211 and switches access of functions, executed by the virtual machines 310, to resources of the control device 200 and/or of the combine harvester 100 within predetermined thresholds.

    [0067] A first virtual machine 318 is executed by a further processor core 215. A function coordination unit or feature coordinator-on-device (FCoD) 328 is executed in the virtual machine 318 and coordinates functions or control programs, executed by the virtual machines 310, and resources of the control device 200 and/or of the combine harvester 100.

    [0068] The virtual machine 318 in which a function coordination unit or a feature coordinator-on-device (FCoD) 328 is executed could also be operated by one of the other processor cores 212-214, which also operate the virtual machine adapters (VMAs) with the associated virtual machines and the associated functions or control programs or sub-programs.

    [0069] The mapping of the virtual machine 318 to a processor core 212-215 takes place statically with microcontrollers, i.e., this is already defined during the development or configuration or initialization.

    [0070] A control program 320 for controlling the combine harvester 100 and for controlling the work process is executed in the processor unit 210. The control program 320 is divided into a large number of independent sub-programs 321, 322, 323, 324, 325, 326, 327.

    [0071] Each of these sub-programs 321, 322, 323, 324, 325, 326, 327 is respectively provided to control one of the sub-systems 110, 120, 130, 140, 150, 160, 170 of the combine harvester 100 and to control a sub-process of the work process to be executed by the respective sub-system. In each of the virtual machines 311, 312, 313, 314, 315, 316, 317, one of the sub-programs 321, 322, 323, 324, 325, 326, 327 is respectively executed.

    [0072] In a first virtual machine 311, a first sub-program 321 is executed and controls the sub-system 110 for the basic functions of the combine harvester 100. For example, the first sub-program 321 controls the internal combustion engine 111, the powertrain 112, and the brake 113.

    [0073] In a second virtual machine 312, a first sub-program 322 is executed and controls the sub-system 120 or the sub-process of driving the combine harvester 100. For example, the second sub-program 322 controls the automatic steering system 121.

    [0074] In a third virtual machine 313, a third sub-program 323 is executed and controls the sub-system 130 or the sub-process of mowing. For example, the third sub-program 323 controls the reel 131, the cutter bar 132, the feed auger 133, the inclined conveyor 134.

    [0075] In a fourth virtual machine 314, a fourth sub-program 324 is executed and controls the sub-system 140 or the sub-process of threshing. For example, the fourth sub-program 324 controls the threshing drum 141 of the threshing unit.

    [0076] In a fifth virtual machine 315, a fifth sub-program 325 is executed and controls the sub-system 150 or the sub-process of separating. For this purpose, the fifth sub-program 325 controls the straw walker 151, the fan 153, the upper screen 154, the lower screen 155, and the return auger 156, for example.

    [0077] In a sixth virtual machine 316, a sixth sub-program 326 is executed and controls the sub-system 160 or the sub-process of storing. For example, the sixth sub-program 326 controls the grain auger 161 and the unloading auger 163.

    [0078] In a seventh virtual machine 317, a seventh sub-program 327 is executed and controls the sub-system 170 or the sub-process of straw management. For example, the seventh sub-program 327 controls the straw chaff cutter 171.

    [0079] The feature proxy-on-device 341 can furthermore be configured to monitor central or critical operating relationships of the function features or user software function of the sub-programs 320, which, e.g., relate to the functional crop-dependent and/or work-process-related sequence of functions. A functional integrity of an overall system of the combine harvester 100 can thereby be ensured. Such monitoring can also take place at the runtime of the function feature or the user software function or the sub-programs 320.

    [0080] Operating relationships that are also mapped in the function software 320 and in the configuration of the hypervisor 301 result, for example, from components of the combine harvester 100 that are mechanically connected to a belt drive. For example, a main drive unit, e.g., a diesel engine, as well as furthermore all mechanically driven units, e.g., the threshing unit, a hydrostatic traction drive, etc. can be connected in this case.

    [0081] Furthermore, operating relationships of the sub-processes of the work process result. For example, a higher forward speed means more harvested crops. This results in an increase in the inclined conveyor speed, which in turn results in an increase in the threshing unit speed and in an increase in the distance to the basket due to the increased number of materials.

    [0082] Accordingly, the speed of the fan is increased. A screen distance may initially be kept constant, but a conveying speed of the auger into the storage unit is increased due to the increased number of grains. Accordingly, a rotation speed of the blades of the straw chaff cutter is also increased.

    [0083] The feature coordinator-on-device 328 may be automatically generated in the control device 200, in particular on the basis of the interfaces, used by the function features of the sub-programs 322-327, in the combine harvester 100 and the dependencies between the function features. In particular, FCoD 328 may implement ensuring, checking, and/or monitoring the fulfillment of predetermined technical requirements. In particular, it may thereby be considered that particular function features may be based on other function features. For example, a distance control may require a cruise control.

    [0084] For example, functional dependencies may be considered for the control program 320 or for the sub-programs 321-327. For example, for an automatic parallel travel during a transfer from the combine harvester 200 to a transfer trailer, an automatic steering system may be used in both machines, i.e., in the combine harvester 200 and the transfer trailer. For example, a GNSS is used for automatic steering of the combine harvester 200. For example, in order to automatically optimize the threshing unit with a multi-target optimization (e.g., with respect to breakage, speed, losses), a break detection, a speedometer, a loss sensor, and associated software functions are used.

    [0085] Furthermore, in particular for the control device 200, a suitable order as well as parallelization of function features can be considered in the generation of the FCoD 328. The order and/or parallelization of function features may, for example, be implemented statically within operating chains or may be activated or deactivated at the runtime of the function features.

    [0086] For example, parallel or independent or sequential or dependent functions may be considered for the control program 320 or for the sub-programs 321-327. A steering system is, for example, independent of the (harvested-crop) processing process. An analysis of the environment (losses, breakage) is, for example, independent of how the useful plants are cut. In contrast, a parallelism of the control processes is, for example, dependent on a travel time or latency of harvested crops through the machine. Grid losses in control function calls may be permitted, for example, to a limited extent.

    [0087] The present method may, for example also be used for use in an autonomous utility vehicle. For this purpose, further virtual machines that enable autonomous operation of the utility vehicle may, for example, be provided. For example, a virtual machine with a corresponding sub-program for autonomous route guidance may be provided as an extension to a steering system. Trajectory planning and obstruction detection may be realized therein, for example. For example, a separate virtual machine may also be provided for remote access to the utility vehicle in the event of an error.