WO2014039182A1 - Control system having automatic component version management - Google Patents

Control system having automatic component version management Download PDF

Info

Publication number
WO2014039182A1
WO2014039182A1 PCT/US2013/052643 US2013052643W WO2014039182A1 WO 2014039182 A1 WO2014039182 A1 WO 2014039182A1 US 2013052643 W US2013052643 W US 2013052643W WO 2014039182 A1 WO2014039182 A1 WO 2014039182A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
software
machine
component
hardware
Prior art date
Application number
PCT/US2013/052643
Other languages
French (fr)
Inventor
Bibhrajit Halder
Original Assignee
Caterpillar Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Caterpillar Inc. filed Critical Caterpillar Inc.
Priority to CA2880968A priority Critical patent/CA2880968A1/en
Priority to AU2013313275A priority patent/AU2013313275A1/en
Priority to JP2015531082A priority patent/JP2015527679A/en
Priority to EP13836051.6A priority patent/EP2893439A1/en
Priority to CN201380046049.4A priority patent/CN104603751A/en
Publication of WO2014039182A1 publication Critical patent/WO2014039182A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions

Definitions

  • This disclosure relates generally to a control system and, more particularly, to a machine control system having automatic component version management.
  • Machines such as autonomous construction equipment, passenger vehicles, vocational trucks, and other machines known in the art are often equipped with one or more components having software or hardware that require periodic service upgrades for operation of the components.
  • the components work in concert with each other and are sometimes calibrated to function with specific versions of software and/or hardware in neighboring components within the same system.
  • Software and hardware version mismatch between two or more components can cause the system to function in an unexpected way, or in some circumstances, may cause one or more components to stop functioning.
  • Maintaining a history of software and/or hardware versions for each component includes checking the software version of each component at the electronic control module, manually recording the software version, and subsequently tracking a software version history over time via an external tool such as a spreadsheet.
  • a software and hardware version list is then generated and manually compared against a record of expected software and hardware versions to identify any mismatches. When a mismatch is spotted, appropriate action is then taken. The action can include alerting the machine operator of the mismatch, and/or scheduling a maintenance visit for a software upgrade to the mismatched components. Identifying software and/or hardware version mismatch between individual components using current methods can be cumbersome and increase the possibility of error.
  • the '560 publication describes a system for detecting the presence of a suitable component, it does not provide for system level management of software versioning for each component. Pertinent information, such as the history of appropriate component installations, presumably must still be retrieved manually from each ECM. Furthermore, the '560 publication appears to track only matches and mismatches of physical hardware, and is silent as to other important factors.
  • the system of the present disclosure is directed towards overcoming one or more of the problems as set forth above.
  • the component version management system may include a software driven component located on the machine, a data system located offboard the machine, and a data system controller in
  • the data system controller may be configured to automatically collect at least one of software version and hardware version of the software driven component, analyze the information for at least one of software and hardware mismatch, and generate a notification in the machine when a software or hardware mismatch is detected.
  • Another aspect of the present disclosure is directed to a computer- implemented method of managing a software version of a machine component.
  • the method may include collecting information from the machine component, analyzing, by one or more processors, the information for at least one of software and hardware version mismatch, and generating, by the one or more processors, a notification when a software or hardware version mismatch is detected.
  • Fig. 1 is a schematic and pictorial illustration of an exemplary disclosed machine
  • Fig. 2 is a diagrammatic illustration of an exemplary component version management system that may be used in conjunction with the machine of Fig. 1;
  • Fig. 3 is a flowchart illustrating an exemplary disclosed method of operating the component version management system of Fig. 2.
  • Fig. 1 illustrates an exemplary machine 10 for use in a worksite.
  • Machine 10 may embody an autonomous, semi-autonomous or manually controlled mobile machine.
  • machine 10 may be an earth moving machine such as an off-highway haul truck (shown in Fig. 1), a wheel loader, a motor grader, or any other mobile machine known in the art.
  • Machine 10 may alternatively embody a non-earth moving machine such as an on-road vehicle, a passenger vehicle, a stationary generator set, a pumping mechanism, or any other suitable operation-performing machine.
  • Machine 10 may have one or more software driven components 18 that facilitate its operation at the worksite.
  • a software driven component 18 may be considered any component that utilizes software and/or hardware in its operation.
  • Examples of software driven components 18 may include various auxiliary equipment such as a sensing device module 18a.
  • Auxiliary equipment may be onboard the machine 10 to perform various tasks during machine 10 operation that aid in the application of the machine 10 on the worksite.
  • sensing device module 18 may be used to sense the physical surroundings of the machine 10 using lidar, radar and/or the like.
  • Software drive components 18 may further include a locating device 18b, used to geographically locate the machine 10, and a communications module 18c, used to facilitate communication between the machine 10 and another device or system remotely located from the machine 10.
  • Additional examples include a chassis control module 18d, used to control operational aspects of a machine chassis, a brake control module 18e used to control operational aspects of a braking system, a steering control module 18f, a transmission control module 18g, a tire control module 18h, and an auxiliary equipment module (not shown).
  • a chassis control module 18d used to control operational aspects of a machine chassis
  • a brake control module 18e used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a steering control module 18f used to control operational aspects of a braking system
  • a transmission control module 18g used to control operational aspects of a braking system
  • one or more machine controllers 25 may be onboard the machine 10.
  • a machine controller 25, embodied as an electronic control module (ECM), may be operably connected to one or more software driven components 18.
  • ECM electronice control module
  • machine controller 25 may be in communication with a software driven component 18, such as a brake control module 18e, and together function as a brake control system that works in conjunction with an autonomous machine control system and/or operator interface (not shown).
  • Machine controllers 25 may communicate with one another, and/or communicate with an onboard data system controller 16.
  • Data system controller 16 may coordinate the function of various machine controllers 25 and/or software driven components 18.
  • software driven components 18 may report to machine controllers 25, and each of machine controllers 25 may report to data system controller 16.
  • Data system controller 25 may be responsible for collecting information regarding the software driven components 18 and for processing the information.
  • Data system controller 16 may include any means for monitoring, recording, storing, indexing, processing, and/or communicating the operational aspects of machine 10 described above. These means may include components such as, for example, a memory, one or more data storage devices, a central processing unit, or any other components that may be used to run an application. Furthermore, although aspects of the present disclosure may be described generally as being stored in memory, one skilled in the art will appreciate that these aspects can be stored on or read from different types of computer program products or computer-readable media such as computer chips and secondary storage devices, including hard disks, optical media, CD-ROM, or other forms of non-transitory computer readable media.
  • Data system controller 16 may also include a means for communicating with an offboard data system 20.
  • data system controller 16 may include hardware and/or software that enables sending and receiving of data messages through a direct data link (not shown) or a wireless communication link (not shown).
  • the wireless communications may include satellite 12, cellular, infrared, and any other type of wireless communications that enable data system controller 16 to exchange information with offboard data system 20. It is contemplated that a separate module may be included within data system controller 16 to facilitate the communication of data between data system controller 16 and offboard data system 20, if desired.
  • Offboard data system 20 may represent one or more computing systems of a business entity associated with machine 10, such as a worksite operator, manufacturer, dealer, retailer, owner, service provider, or any other entity that generates, maintains, sends, and/or receives information associated with machine 10.
  • the one or more computing systems may include, for example, a laptop, a work station, a mobile computing device, a mainframe, and other computing systems known in the art.
  • Fig. 3 illustrates a flowchart describing a method of managing the software and/or hardware of 18. Fig. 3 will be discussed in the following section to further illustrate the disclosed system and its operation.
  • the disclosed method and system may provide an accurate and reliable way for managing software and hardware versions in onboard software driven components. Specifically, because the disclosed system and method provide for automatic version management, the amount of manual effort expended to identify version mismatch and record a version history of components of a machine may be low, and the likelihood of error may be reduced.
  • the operation of control system having automatic version management 24 will now be described with respect to Fig. 3.
  • the first step of the component version management process may include determining when the process should begin.
  • the process may begin when a new software driven component is installed in machine 10.
  • the process may begin when machine 10 is started and/or keyed on.
  • the process may begin when a specific interval of time has elapsed since a previous process cycle. For example, while machine 10 is in operation, control system 24 may collect and analyze the information at a predetermined time interval of five seconds.
  • the process may begin when a start process signal is received by the onboard control system from an external source, such as offboard data system 20.
  • Data system controller 16 may determine that one or more software driven components has been newly installed by monitoring a power and/or communication signal sent to or received from the component 18 by machine controller 25.
  • the component version management process may be triggered in other ways.
  • the process may be manually triggered by a service technician upon installation, if desired.
  • the component version management process may also be manually triggered by a request from an individual, such as a mine operator, who has an operative connection to the control system 24. The request from an individual may cause the control system 24 to return version information to the operator even if a software and hardware mismatch has not been detected.
  • the process of Fig. 3 is configured to commence following any one or more of the events described above (step 100).
  • data system controller 16 may initiate automatic collection of software and hardware information (step 110).
  • the collected software and hardware information may include component information such as, for example, an identifying serial number or other identification, a model number, a hardware version number, a software version number, a software and/or hardware release date, a software and/or hardware expiration date, a software and/or hardware group description, a fabrication or testing date or facility, an operating system version, a firmware version, and/or other related component information.
  • the collected information may also include user information, such as, information identifying the particular machine 10 into which software driven component 18 is installed, information associated with the selling or servicing dealership associated with the machine 10 and/or any component and/or systems installed on the machine 10, customer information (i.e., name, billing address, intended work location, contact information, and/or the like), and other user-related information known in the art.
  • the component information may be automatically collected via electronic communication with a memory of the newly installed software driven component 18 and/or other components and systems of machine 10.
  • the information may be collected via optical, infrared or magnetic scanning of external or internal indices placed on or programmed into machine 10 during fabrication or installation.
  • the component information may be automatically collected to determine a hardware or electronic configuration of software driven component 18 by communication with data system controller 16, and/or communication with offboard data system 20, or in any other appropriate manner.
  • Collecting software and hardware information may be accomplished by control system 24.
  • Control system 24 may query each system and subsystem of machine 10 to determine if there are additional unique software driven components 18 from which information should be collected.
  • Control system 24 may accomplish the data collection by means of data system controller 16 and/or any other combination of system components such as, for example, one or more of machine controllers 25.
  • control system 24 Following receipt of the automatically-collected information, the information may be analyzed by control system 24 (step 120) to identify any software and hardware version mismatch.
  • the analysis may be processed by data system controller 16, or other processing means within control system 24.
  • Analyzing the collected information may further include identifying one or more elements of the information that has changed since a previous analysis, and comparing the one or more elements of information against a master list of compatible component software and hardware matches.
  • Data system controller 16 may be further configured to automatically update the master list with information related to at least one of software and hardware version, and automatically send the information to the data system 20 located offboard the machine 10.
  • a software and hardware version mismatch of software driven component 18 may occur as a result of altering machine 10 in some way.
  • software and hardware version mismatch may occur when the software of one component 18 is upgraded, and the upgraded software version is not compatible with one or more other components or systems of machine 10.
  • Other forms of mismatch may occur when the version of component software on a component 18 of machine 10 is incompatible with one or more versions of hardware or software of software driven component 18.
  • Version mismatch may also be created when a software and/or hardware version is incompatible with machine 10 on which the component installation is made.
  • Other types of software and hardware version mismatch may be detected by the presently disclosed control system 24.
  • a notification may be generated on a display operatively connected to machine 10 indicating the mismatch (step 140).
  • the notification may be a visual display, an audio notification, etc.
  • a notification is generated by control system 24 and transmitted to the offboard data system 20 (step 140).
  • the version information of software driven component 18 may be processed by control system 24 in such a way as to make the information displayable on a graphic user interface located onboard machine.
  • the displayed information may include a readily identifiable notification on the screen showing one or more mismatches in such a way as to bring attention to the mismatch information. Displaying mismatch information in such a fashion may provide an efficient way for a technician, operator or other individual to be made immediately aware of a software and hardware mismatch on machine 10, so that appropriate action can be taken.
  • the need for tedious comparison between an appropriate software version list and the software currently installed on software driven components 18 may be avoided.
  • the potential for human error in comparing a master version list to the currently installed software driven components 18 may also be reduced or avoided.
  • Analyzing the collected information may further include recording the version history for each software driven component 18 on the memory of data system controller 16. Analyzing the collected information may be done at any time after collecting the information.
  • the version history information may include, but is not limited to any one or more of: component identification information that uniquely identifies the component 18, the date that component 18 was installed, a name of component 18, a description of component 18, machine 10 identification, a hardware version, a hardware serial number, a firmware version, an operating system version, a software name, a software version, a release date of software and/or hardware, a software expiration date, and/or a group description.
  • FIG. 3 shows one possible order in which control system 24 described herein is operated. Those skilled in the art will appreciate that a different logical order may be utilized in the practice of the presently disclosed control system 24, if desired. It will be apparent to those skilled in the art that various modifications and variations can be made to the method and system of the present disclosure. Other embodiments of the method and system will be apparent to those skilled in the art from consideration of the specification and practice of the method and system disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope of the disclosure being indicated by the following claims and their equivalents.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

A component version management system (24) for a machine (10) is disclosed. The component version management system has a software driven component (18) located on the machine, a data system (20) located offboard the machine, and a data system controller (16) in communication with the software driven component and the data system. The data system controller is configured to automatically collect at least one of a software and hardware version of the component, analyze the information for at least one of software and hardware mismatch (130), and generate a notification for display in the machine when software or hardware mismatch is detected.

Description

Description
CONTROL SYSTEM HAVING AUTOMATIC COMPONENT VERSION
MANAGEMENT
Technical Field
This disclosure relates generally to a control system and, more particularly, to a machine control system having automatic component version management.
Background
Machines such as autonomous construction equipment, passenger vehicles, vocational trucks, and other machines known in the art are often equipped with one or more components having software or hardware that require periodic service upgrades for operation of the components. The components work in concert with each other and are sometimes calibrated to function with specific versions of software and/or hardware in neighboring components within the same system. Software and hardware version mismatch between two or more components can cause the system to function in an unexpected way, or in some circumstances, may cause one or more components to stop functioning.
Currently, the software version for each individual component is recorded at a corresponding electronic control module onboard the machine, and has to be retrieved manually by a technician with module reading equipment. Maintaining a history of software and/or hardware versions for each component includes checking the software version of each component at the electronic control module, manually recording the software version, and subsequently tracking a software version history over time via an external tool such as a spreadsheet. A software and hardware version list is then generated and manually compared against a record of expected software and hardware versions to identify any mismatches. When a mismatch is spotted, appropriate action is then taken. The action can include alerting the machine operator of the mismatch, and/or scheduling a maintenance visit for a software upgrade to the mismatched components. Identifying software and/or hardware version mismatch between individual components using current methods can be cumbersome and increase the possibility of error.
One exemplary method used to identify an incorrect or mismatched component is described in U.S. Patent Application Publication No. US 2011/0220560 (the '560 publication) filed by Verdegan on 09 March 2011. The '560 publication describes a system in which a component, such as an engine filter, is identified as genuine or not genuine. A surface acoustical wave sensor is mounted on the filter, which transmits a signal to an interface module operatively connected to an electronic control module (ECM) of a host machine, the signal indicating whether or not the component is appropriate. The system described in the '560 publication updates a maintenance history log located at the electronic control module (ECM), and warns an operator of possible used, defective, non- genuine or counterfeit components. When a serviceable component is determined to not be genuine after detection, appropriate action is taken to warn operators and document such findings.
Although the '560 publication describes a system for detecting the presence of a suitable component, it does not provide for system level management of software versioning for each component. Pertinent information, such as the history of appropriate component installations, presumably must still be retrieved manually from each ECM. Furthermore, the '560 publication appears to track only matches and mismatches of physical hardware, and is silent as to other important factors.
The system of the present disclosure is directed towards overcoming one or more of the problems as set forth above.
Summary
One aspect of the present disclosure is directed to a component version management system for a machine. The component version management system may include a software driven component located on the machine, a data system located offboard the machine, and a data system controller in
communication with the software driven component and the data system. The data system controller may be configured to automatically collect at least one of software version and hardware version of the software driven component, analyze the information for at least one of software and hardware mismatch, and generate a notification in the machine when a software or hardware mismatch is detected.
Another aspect of the present disclosure is directed to a computer- implemented method of managing a software version of a machine component. The method may include collecting information from the machine component, analyzing, by one or more processors, the information for at least one of software and hardware version mismatch, and generating, by the one or more processors, a notification when a software or hardware version mismatch is detected.
Brief Description of the Drawings
Fig. 1 is a schematic and pictorial illustration of an exemplary disclosed machine;
Fig. 2 is a diagrammatic illustration of an exemplary component version management system that may be used in conjunction with the machine of Fig. 1; and
Fig. 3 is a flowchart illustrating an exemplary disclosed method of operating the component version management system of Fig. 2.
Detailed Description
Fig. 1 illustrates an exemplary machine 10 for use in a worksite. Machine 10 may embody an autonomous, semi-autonomous or manually controlled mobile machine. For example, machine 10 may be an earth moving machine such as an off-highway haul truck (shown in Fig. 1), a wheel loader, a motor grader, or any other mobile machine known in the art. Machine 10 may alternatively embody a non-earth moving machine such as an on-road vehicle, a passenger vehicle, a stationary generator set, a pumping mechanism, or any other suitable operation-performing machine.
Machine 10 may have one or more software driven components 18 that facilitate its operation at the worksite. For the purposes of this disclosure, a software driven component 18 may be considered any component that utilizes software and/or hardware in its operation. Examples of software driven components 18 may include various auxiliary equipment such as a sensing device module 18a. Auxiliary equipment may be onboard the machine 10 to perform various tasks during machine 10 operation that aid in the application of the machine 10 on the worksite. For example, sensing device module 18 may be used to sense the physical surroundings of the machine 10 using lidar, radar and/or the like. Software drive components 18 may further include a locating device 18b, used to geographically locate the machine 10, and a communications module 18c, used to facilitate communication between the machine 10 and another device or system remotely located from the machine 10. Additional examples include a chassis control module 18d, used to control operational aspects of a machine chassis, a brake control module 18e used to control operational aspects of a braking system, a steering control module 18f, a transmission control module 18g, a tire control module 18h, and an auxiliary equipment module (not shown). Other types of devices not named herein may be included on the machine 10, which may communicate with one another and/or communicate with other software driven components. While other devices are not explicitly named, it is to be understood that such devices may cooperate with one another, and may benefit from software and/or hardware compatibility matching between components.
As shown in Fig. 2, one or more machine controllers 25 may be onboard the machine 10. A machine controller 25, embodied as an electronic control module (ECM), may be operably connected to one or more software driven components 18. For example, machine controller 25 may be in communication with a software driven component 18, such as a brake control module 18e, and together function as a brake control system that works in conjunction with an autonomous machine control system and/or operator interface (not shown). Machine controllers 25 may communicate with one another, and/or communicate with an onboard data system controller 16.
Data system controller 16 may coordinate the function of various machine controllers 25 and/or software driven components 18. For example, software driven components 18 may report to machine controllers 25, and each of machine controllers 25 may report to data system controller 16. Data system controller 25 may be responsible for collecting information regarding the software driven components 18 and for processing the information.
Data system controller 16 may include any means for monitoring, recording, storing, indexing, processing, and/or communicating the operational aspects of machine 10 described above. These means may include components such as, for example, a memory, one or more data storage devices, a central processing unit, or any other components that may be used to run an application. Furthermore, although aspects of the present disclosure may be described generally as being stored in memory, one skilled in the art will appreciate that these aspects can be stored on or read from different types of computer program products or computer-readable media such as computer chips and secondary storage devices, including hard disks, optical media, CD-ROM, or other forms of non-transitory computer readable media.
Data system controller 16 may also include a means for communicating with an offboard data system 20. For example, data system controller 16 may include hardware and/or software that enables sending and receiving of data messages through a direct data link (not shown) or a wireless communication link (not shown). The wireless communications may include satellite 12, cellular, infrared, and any other type of wireless communications that enable data system controller 16 to exchange information with offboard data system 20. It is contemplated that a separate module may be included within data system controller 16 to facilitate the communication of data between data system controller 16 and offboard data system 20, if desired.
Offboard data system 20 may represent one or more computing systems of a business entity associated with machine 10, such as a worksite operator, manufacturer, dealer, retailer, owner, service provider, or any other entity that generates, maintains, sends, and/or receives information associated with machine 10. The one or more computing systems may include, for example, a laptop, a work station, a mobile computing device, a mainframe, and other computing systems known in the art.
Fig. 3 illustrates a flowchart describing a method of managing the software and/or hardware of 18. Fig. 3 will be discussed in the following section to further illustrate the disclosed system and its operation.
Industrial Applicability
The disclosed method and system may provide an accurate and reliable way for managing software and hardware versions in onboard software driven components. Specifically, because the disclosed system and method provide for automatic version management, the amount of manual effort expended to identify version mismatch and record a version history of components of a machine may be low, and the likelihood of error may be reduced. The operation of control system having automatic version management 24 will now be described with respect to Fig. 3.
As illustrated in the flowchart of Fig. 3, the first step of the component version management process may include determining when the process should begin. In one embodiment, the process may begin when a new software driven component is installed in machine 10. In another embodiment, the process may begin when machine 10 is started and/or keyed on. In another embodiment, the process may begin when a specific interval of time has elapsed since a previous process cycle. For example, while machine 10 is in operation, control system 24 may collect and analyze the information at a predetermined time interval of five seconds. In yet another embodiment, the process may begin when a start process signal is received by the onboard control system from an external source, such as offboard data system 20. Data system controller 16 may determine that one or more software driven components has been newly installed by monitoring a power and/or communication signal sent to or received from the component 18 by machine controller 25. Alternatively, the component version management process may be triggered in other ways. For example, the process may be manually triggered by a service technician upon installation, if desired. The component version management process may also be manually triggered by a request from an individual, such as a mine operator, who has an operative connection to the control system 24. The request from an individual may cause the control system 24 to return version information to the operator even if a software and hardware mismatch has not been detected. Accordingly, the process of Fig. 3 is configured to commence following any one or more of the events described above (step 100).
In the event that the process has been triggered, data system controller 16 may initiate automatic collection of software and hardware information (step 110). The collected software and hardware information may include component information such as, for example, an identifying serial number or other identification, a model number, a hardware version number, a software version number, a software and/or hardware release date, a software and/or hardware expiration date, a software and/or hardware group description, a fabrication or testing date or facility, an operating system version, a firmware version, and/or other related component information. The collected information may also include user information, such as, information identifying the particular machine 10 into which software driven component 18 is installed, information associated with the selling or servicing dealership associated with the machine 10 and/or any component and/or systems installed on the machine 10, customer information (i.e., name, billing address, intended work location, contact information, and/or the like), and other user-related information known in the art. The component information may be automatically collected via electronic communication with a memory of the newly installed software driven component 18 and/or other components and systems of machine 10. The information may be collected via optical, infrared or magnetic scanning of external or internal indices placed on or programmed into machine 10 during fabrication or installation. The component information may be automatically collected to determine a hardware or electronic configuration of software driven component 18 by communication with data system controller 16, and/or communication with offboard data system 20, or in any other appropriate manner.
Collecting software and hardware information (step 110) may be accomplished by control system 24. Control system 24 may query each system and subsystem of machine 10 to determine if there are additional unique software driven components 18 from which information should be collected. Control system 24 may accomplish the data collection by means of data system controller 16 and/or any other combination of system components such as, for example, one or more of machine controllers 25.
Following receipt of the automatically-collected information, the information may be analyzed by control system 24 (step 120) to identify any software and hardware version mismatch. The analysis may be processed by data system controller 16, or other processing means within control system 24.
Analyzing the collected information (step 120) may further include identifying one or more elements of the information that has changed since a previous analysis, and comparing the one or more elements of information against a master list of compatible component software and hardware matches. Data system controller 16 may be further configured to automatically update the master list with information related to at least one of software and hardware version, and automatically send the information to the data system 20 located offboard the machine 10.
A software and hardware version mismatch of software driven component 18 may occur as a result of altering machine 10 in some way. For example, software and hardware version mismatch may occur when the software of one component 18 is upgraded, and the upgraded software version is not compatible with one or more other components or systems of machine 10. Other forms of mismatch may occur when the version of component software on a component 18 of machine 10 is incompatible with one or more versions of hardware or software of software driven component 18. Version mismatch may also be created when a software and/or hardware version is incompatible with machine 10 on which the component installation is made. Other types of software and hardware version mismatch may be detected by the presently disclosed control system 24.
If a software and hardware mismatch is detected (step 130), a notification may be generated on a display operatively connected to machine 10 indicating the mismatch (step 140). The notification may be a visual display, an audio notification, etc. According to yet another embodiment, a notification is generated by control system 24 and transmitted to the offboard data system 20 (step 140).
According to one embodiment, the version information of software driven component 18 may be processed by control system 24 in such a way as to make the information displayable on a graphic user interface located onboard machine. The displayed information may include a readily identifiable notification on the screen showing one or more mismatches in such a way as to bring attention to the mismatch information. Displaying mismatch information in such a fashion may provide an efficient way for a technician, operator or other individual to be made immediately aware of a software and hardware mismatch on machine 10, so that appropriate action can be taken. When information is readily viewable on the screen, the need for tedious comparison between an appropriate software version list and the software currently installed on software driven components 18 may be avoided. Furthermore, the potential for human error in comparing a master version list to the currently installed software driven components 18 may also be reduced or avoided. Analyzing the collected information may further include recording the version history for each software driven component 18 on the memory of data system controller 16. Analyzing the collected information may be done at any time after collecting the information. The version history information may include, but is not limited to any one or more of: component identification information that uniquely identifies the component 18, the date that component 18 was installed, a name of component 18, a description of component 18, machine 10 identification, a hardware version, a hardware serial number, a firmware version, an operating system version, a software name, a software version, a release date of software and/or hardware, a software expiration date, and/or a group description.
The flow chart depicted in Fig. 3 shows one possible order in which control system 24 described herein is operated. Those skilled in the art will appreciate that a different logical order may be utilized in the practice of the presently disclosed control system 24, if desired. It will be apparent to those skilled in the art that various modifications and variations can be made to the method and system of the present disclosure. Other embodiments of the method and system will be apparent to those skilled in the art from consideration of the specification and practice of the method and system disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope of the disclosure being indicated by the following claims and their equivalents.

Claims

Claims
1. A component version management system (24) for a machine (10), comprising:
a software driven component (18) located onboard the machine; a data system (20) located offboard the machine; and a data system controller (16) in communication with the software driven component and the data system, the data system controller being configured to:
automatically collect information comprising at least one of a software and a hardware version of the component;
analyze the information for at least one of software and hardware mismatch; and
generate a notification in the machine when software or hardware mismatch is detected.
2. The component version management system of claim 1, wherein the data system controller is located onboard the machine, in communication with the software driven component via a machine controller, and is configured to:
automatically collect and analyze the information upon the event of any one or more of:
installation of the software driven component on the machine; startup of the machine;
a predetermined time interval; and
a request is received from the data system.
3. The component version management system of claim 1, wherein the information further includes component identification information that uniquely identifies the component.
4. The component version management system of claim 1 , wherein the data system controller is configured to analyze the information by:
identifying one or more elements of the information that have changed since a previous analysis; and
comparing the one or more elements of information against a master list of compatible component software and hardware matches.
5. The component version management system of claim 1, wherein the data system controller is further configured to:
automatically update the master list with information related to at least one of software and hardware version; and
automatically send the information to the data system.
6. A computer-implemented method of managing a software version of a machine (10) component (18), the method comprising:
collecting information from the machine component; analyzing, by one or more processors, the information for at least one of software and hardware version mismatch; and
generating, by the one or more processors, a notification when a software or hardware version mismatch is detected.
7. The method of claim 6, wherein collecting and analyzing the information includes automatically collecting and analyzing the information upon the event of any one or more of:
installation of the machine component on the machine;
a startup of the machine;
after a predetermined time interval; and
a request is received from an offboard data system (20).
8. The method of claim 6, wherein collecting and analyzing the information includes automatically collecting and analyzing the information.
9. The method of claim 6, wherein analyzing the information includes:
identifying one or more elements of the information that has changed since previously collecting and analyzing the information; and
comparing the one or more elements of information against a master list of compatible component software and hardware matches.
10. The method of claim 6, further including automatically updating the master list with information related to software and hardware version.
PCT/US2013/052643 2012-09-05 2013-07-30 Control system having automatic component version management WO2014039182A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CA2880968A CA2880968A1 (en) 2012-09-05 2013-07-30 Control system having automatic component version management
AU2013313275A AU2013313275A1 (en) 2012-09-05 2013-07-30 Control system having automatic component version management
JP2015531082A JP2015527679A (en) 2012-09-05 2013-07-30 Control system for automatic component version management
EP13836051.6A EP2893439A1 (en) 2012-09-05 2013-07-30 Control system having automatic component version management
CN201380046049.4A CN104603751A (en) 2012-09-05 2013-07-30 Control system having automatic component version management

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/603,668 US20140068561A1 (en) 2012-09-05 2012-09-05 Control system having automatic component version management
US13/603,668 2012-09-05

Publications (1)

Publication Number Publication Date
WO2014039182A1 true WO2014039182A1 (en) 2014-03-13

Family

ID=50189323

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2013/052643 WO2014039182A1 (en) 2012-09-05 2013-07-30 Control system having automatic component version management

Country Status (8)

Country Link
US (1) US20140068561A1 (en)
EP (1) EP2893439A1 (en)
JP (1) JP2015527679A (en)
CN (1) CN104603751A (en)
AU (1) AU2013313275A1 (en)
CA (1) CA2880968A1 (en)
CL (1) CL2015000449A1 (en)
WO (1) WO2014039182A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130232019A1 (en) * 2012-02-23 2013-09-05 P97 Networks, Inc. Fuel purchase transaction method and system
WO2015040764A1 (en) * 2013-12-11 2015-03-26 株式会社小松製作所 Work machine, management system and management method
CN105278957B (en) * 2015-10-08 2018-05-22 南京南瑞继保电气有限公司 A kind of version match recognition methods of software and driving bag
US20170293478A1 (en) * 2016-04-11 2017-10-12 Tyco Fire & Security Gmbh Fire detection system with automatic firmware updating
US10860541B2 (en) 2016-04-11 2020-12-08 Johnson Controls Fire Protection LP Fire detection system with distributed file system
US10453320B2 (en) 2016-04-11 2019-10-22 Johnson Controls Fire Protection LP Addressing method for slave units in fire detection system
US20170323263A1 (en) * 2016-05-03 2017-11-09 Cnh Industrial America Llc Equipment library with link to manufacturer database
DE102017212109A1 (en) * 2017-07-14 2019-01-17 Siemens Aktiengesellschaft Method for operating a rail vehicle
JP7311245B2 (en) * 2018-03-07 2023-07-19 トヨタ自動車株式会社 Master device, master, control method, program and vehicle
CN110928561B (en) * 2019-08-09 2023-04-07 中国第一汽车股份有限公司 Vehicle controller software version management method and device, vehicle and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001030633A1 (en) * 1999-10-28 2001-05-03 General Electric Company Remote verification of software configuration information
US20010008024A1 (en) * 1998-09-04 2001-07-12 Toru Inaba Upgrade control method and data processing system
US20030177223A1 (en) * 2002-03-12 2003-09-18 Erickson Michael J. Verification of computer programs
US20120109914A1 (en) * 2010-10-27 2012-05-03 Antonio Lain Version mismatch delay and update for a distributed system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2318665B (en) * 1996-10-28 2000-06-28 Altera Corp Work group computing for electronic design automation
US7062765B1 (en) * 1999-05-25 2006-06-13 Realnetworks, Inc. System and method for updating information via a network
US20030110482A1 (en) * 2001-12-06 2003-06-12 Ferguson Alan L. System and method for remotely modifying software on a machine
US7143395B2 (en) * 2002-02-14 2006-11-28 Hewlett-Packard Development Company, L.P. Verifying a program version
US7730476B2 (en) * 2003-07-01 2010-06-01 Hewlett-Packard Development Company, L.P. Field-replaceable unit revision compatibility
US7415706B1 (en) * 2003-12-01 2008-08-19 Cisco Technology, Inc. Dynamic handling of multiple software component versions for device management
US7640541B2 (en) * 2005-05-23 2009-12-29 Intel Corporation In-system reconfiguring of hardware resources
US7506336B1 (en) * 2005-06-29 2009-03-17 Emc Corporation System and methods for version compatibility checking
US8392764B2 (en) * 2009-11-16 2013-03-05 Cooper Technologies Company Methods and systems for identifying and configuring networked devices
BR112012022776A2 (en) * 2010-03-09 2018-05-22 Cummins Filtration Ip Inc apparatus, system and method for detecting the presence of original repairable product components
US20120233605A1 (en) * 2011-03-07 2012-09-13 Microsoft Corporation Application Compatibility Leveraging Successful Resolution of Issues

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010008024A1 (en) * 1998-09-04 2001-07-12 Toru Inaba Upgrade control method and data processing system
WO2001030633A1 (en) * 1999-10-28 2001-05-03 General Electric Company Remote verification of software configuration information
US20030177223A1 (en) * 2002-03-12 2003-09-18 Erickson Michael J. Verification of computer programs
US20120109914A1 (en) * 2010-10-27 2012-05-03 Antonio Lain Version mismatch delay and update for a distributed system

Also Published As

Publication number Publication date
JP2015527679A (en) 2015-09-17
AU2013313275A1 (en) 2015-02-26
CA2880968A1 (en) 2014-03-13
EP2893439A1 (en) 2015-07-15
US20140068561A1 (en) 2014-03-06
CN104603751A (en) 2015-05-06
CL2015000449A1 (en) 2015-07-03

Similar Documents

Publication Publication Date Title
US20140068561A1 (en) Control system having automatic component version management
US20140208306A1 (en) Control system having automatic component software management
US10706125B2 (en) Off-board hours-of-service (“HOS”) processing
US9679423B2 (en) Systems and methods of creating and delivering item of manufacture specific information to remote devices
US20190095012A1 (en) Mobile computing device for fleet telematics
CN102741900B (en) Road condition management system and road condition management method
US10665040B2 (en) Method and apparatus for remote vehicle diagnosis
US7677452B2 (en) Method and system for providing signatures for machines
US20170242678A1 (en) Method and apparatus for vehicle software update installation
US20130246135A1 (en) System, device and method of remote vehicle diagnostics based service for vehicle owners
EP3734570A1 (en) Vehicle detection method, apparatus, device and readable storage medium
CN112134952B (en) Vehicle management system and method based on Internet of vehicles, electronic equipment and storage medium
CN104512356A (en) Vehicle autonomous mode deactivation
CN105138529B (en) Connected vehicle predictive quality
WO2019202770A1 (en) Tire state remote monitoring system, tire state remote monitoring program, and tire state remote monitoring method
CN105008875A (en) Determining a remedial action for a motorized vehicle based on sensed vibration
US20150277891A1 (en) Electronic controller software coding system and method for vehicle control
GB2501291A (en) Diagnostic system with predicted problem cause feedback
KR20190090942A (en) System for calculalting automobile insurance fee based on driving pattern and method therefor
KR20150064474A (en) Software upgrade method for vehicle controller
US10703383B1 (en) Systems and methods for detecting software interactions for individual autonomous vehicles
CN111311044A (en) Vehicle damage assessment method and system
CN105469147B (en) Method for diagnosing faults and/or diagnosing repair and/or maintenance needs
CN114973646A (en) Road detection method, device and system and server
KR20190096842A (en) Networking system for efficient management of vehicle using data mining

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13836051

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2880968

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2013836051

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2013313275

Country of ref document: AU

Date of ref document: 20130730

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2015531082

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE