Aspects, features, benefits and advantages of the embodiments described herein will be apparent with regard to the following description, appended claims and accompanying drawings where:
Before the present methods, systems and materials are described, it is to be understood that this disclosure is not limited to the particular systems, methodologies or protocols described, as these may vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to limit the scope of the present disclosure which will be limited only by the appended claims. It must be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural reference unless the context clearly dictates otherwise. In addition, the word “comprising” as used herein means “including, but not limited to”. Unless defined otherwise, all technical and scientific terms used herein have the same meanings as commonly understood by one of ordinary skill in the art.
While the term “user” will be used in the disclosure below, “user” will include reference to any person or persons, such as office managers, office employees, solo business owners, customers, home owners, and the like, all of which may be used interchangeably and is to represent any individual with a device. The use of the term “device”, “marking device”, “machine” and “equipment” will be used interchangeably and is to encompass any electromechanical device or system capable of being included on a computer network. Such “devices” may include, but are not limited to printers, scanners, fax machines, multifunctional devices, network routers, network switches, network computational devices including servers and workstations, network file systems and the like, household appliances such as heating and cooling systems, refrigerators, washing and drying machines, and the like. “Document production” describes, for example, printed documents/papers, scanned documents/papers, faxed documents/papers, and the like. While the term “deploy” will be used in the disclosure below, “deploy” will be taken to indicate that a procedure is displayed, installed, set-up, tested, run, distributed, or implemented on a device or network. “Deploying an instruction” may describe, for example, sending a command to a device to fix a problem or to continue operating in a degraded mode until a service engineer can repair the problem. “Deploying an instruction” may further describe notifying a service engineer of the nature of a problem, or of the diagnostic tests already performed, or the pans or procedures required to fix the problem.
This disclosure is generally related to providing an automated or partially automated system and method for the remote or partially remote diagnosis and repair of any electromechanical device which is on a computer network or is capable of being added to a computer network. The procedure, which may be executed by a customer service engineer at the customer site and/or a remote system, provides remote computational implementation in an automated diagnostics tree.
A “diagnostics tree” is a mechanism that guides the troubleshooter, in the current disclosure the diagnostics server, or the diagnostics server in concert with the customer device, through a series of steps which efficiently and correctly identify a malfunction in one or more devices. Creating a diagnostic tree may require not only a thorough understanding of the system involved but also an understanding of how to efficiently search for a problem. In some embodiments, the selection of a diagnostics tree also may depend on customer repair permissions. In the embodiments disclosed herein, a rule-engine evaluates specific rules found in a diagnostics tree, and it makes decisions as to whether to perform actions or provide responses based on the outcome of the rules evaluation.
A “tree” is a graph in which any two points are connected by exactly one path, and is a widely-used computer data structure that emulates a tree structure with sets of linked nodes. “Nodes” are similar to the branches of a tree, and may have zero or more child nodes. A node that has a child is called the child's parent node. A child has at most one parent: a node without a parent is called the root node (or root), Nodes with no children are called leaf nodes. Stepping through the items of a tree, by means of the connections between parents and children, is called “walking” the tree.
An automated procedure may identify the test or tests that the automated system can or should perform first in order to prune the symptom/solution tree. A large number of simple tests can be performed initially in a non-invasive manner. In this disclosure “non-invasive” means that the device's performance is not adversely affected by the process or activity. This allows the automated system to prune the diagnostic tree quickly. Varying levels of diagnostic access permit varying levels of diagnostic optimization of the tree.
The communications host 110 is responsible for receiving network communications and providing consistent semantics across device types and device applications, Different manufacturers and even different devices from the same manufacturer may contain data that are labeled similarly but have different meanings (semantics). For example, one device may describe units in the metric system while another uses English units. In order to properly interpret the data that are coming back from the customer devices 100, these discrepancies in definition may be resolved by the communications host 110. The resolution process may require some kind of conversion (as in between Centigrade and Fahrenheit or meters and inches). There are many other such examples. An exemplary communications host of a preferred embodiment is described in U.S. Patent Application 2004/0111315 A1 entitled “Device Model Agent” published on Jun. 10, 2004, the disclosure of which is incorporated herein by reference in its entirety.
After the information collected from the customer device 100 is placed into correct semantic form by the communications host 110, a connection to the diagnostics server 130 may be established. An exemplary diagnostics server is described in U.S, Pat. No. 5,923,834 entitled “Machine dedicated monitor, predictor, and diagnostics, server”, the disclosure of which is incorporated herein by reference in its entirety. Additionally, a suitable example of a system and method for communication between electronic devices in a distributed network is described in U.S. Pat. No. 6,892,317 entitled “System and method for failure prediction, diagnosis and remediation using data acquision and feedback for a distributed electronic system”, the disclosure of which is incorporated herein by reference i its entirety.
The communication host 110 and diagnostics server 130 may be local to the customer site or remote from the customer site. In the case of a remote location, as depicted in
The diagnostics server 130 contains instructions which may be used to decide which procedure will be executed based on the data collected by the communication host 110 from the customer device 100. This data may include device identification number and device type, data relating to the configuration and state of the device, past device performance or behavior, information about the type of account and access to the device allowed by the customer, and or the amount of time since the last service request. The diagnostics server 130 may request additional data or the execution of tests during the process of walking the procedure, and may receive data and or results. This server 130 may then analyze the results of the test, evaluate the data, and iterate to the next node in the graph using the rules engine 140. It is this rules engine 140 that implements the procedure which allows for automated assessment and transmission of data to provide for accurate and timely diagnosis and repair. The rules engine 140 resides on the diagnostics server 130 and performs the walking of the diagnostics tree of the repair analysis procedure.
The rules engine 140 contains various forms of the diagnostic tree and decides which one is appropriate for use in a specific situation based on information such as the level of allowable access to a device. An exemplary rules engine has been described in the U.S. patent application Ser. No. 11/381,193 filed on May 1st, 2006 entitled “Rule engines and methods of using same”, the disclosure of which is incorporated herein by reference in its entirety.
The rules engine 140 depicted in
The information received from the device during the “walking” of a procedure may also be used to reformulate the current procedure or to select another more appropriate procedure. This information may be obtained remotely by requests sent to the device 100 from the diagnostics server 130 via the communications host 110. Alternatively, after the initial communication from a customer device 100 is received by the communications host 110 and passed to the diagnostics server 130, the communication during a session may persist directly between the customer device 100 and the diagnostics server 130. Information, in this later case, may be obtained remotely by requests sent to the device 100 directly from the diagnostics server 130. The information request may also originate from a customer service engineer who may be located at the service provider site or the customer device site.
The information gathered from the customer device 100 may be either from the communications data transmission part of the device which is automatically generated or may be generated by a human user 125 communicating with the device 100 via a user interface 105. In this latter example, the willing human 125 (user or customer service engineer) at the customer device 100 may be asked to perform specific tasks, such as opening a device door or evaluating the device output. The information gathered from such an activity may be sent back to the service provider's communication host 110 and the diagnostics server 130, or directly to the diagnostics server 130, where the procedure currently being “walked” may be updated or reformulated,
An exemplary flow of information is depicted in flowchart form in
At block 220 of the flowchart depicted in
The diagnostics server may use the information gathered in block 250 to determine which procedure to perform on the customer device. Information on the level of access to the remove device may be determined in step 252. Information on the level of access may come from a database of contract terms and conditions and also from evaluation of the customer's willingness to monitor and assist in the diagnosis. A customer standing near the device 100 may also be able to certify that the device doors or covers are closed so that invasive tests which may be hazardous may be part of the repair analysis procedure. A decision may be made in step 254 which matches the current device request with the best procedure. The correct procedure may be chosen in block 260 and walked in block 270 of the flowchart depicted in
The automated procedures of the present disclosure may further explain the reasoning that led to the conclusions drawn from walking the procedure, as depicted by the generation of a report at block 280 of
In an embodiment of the present disclosure, the procedure may be upgraded rapidly by analysis of global data at the diagnostics server 130. This may be done computationally, or may happen after human inspection. Upgrades may be deployed instantly or periodically from the diagnostic server 130. As the number of detected field problems grows, the automated procedures can acknowledge these and test for them without having to perform a field-wide software upgrade to the customer service engineers portable workstation's device diagnostics software, or to the devices diagnostics software. These automated procedures may be managed from a central location by the service delivery provider, and may be deployed immediately or periodically to the field upon completion of verification testing.
In some embodiments of the present disclosure the procedure may respond to different specific situations. The previously transmitted data from the customer device 100 may be analyzed and an automated procedure may be generated at the diagnostics server 130 to cover only those tests that the previously generated procedure didn't address. Device history, usage patterns and environmental conditions are all used to adjust the structure and content of the automated procedure. For example, a customer device which is a marking device may be adversely affected by environmental conditions. Electrophotography is based on static electricity, thus humidity and temperature conditions may vary the performance of devices located in different regions of the world. The previously transmitted data from such devices may be used to include or exclude specific tests in the automated procedure that will be unique for even similar machines in different locations. Typically, these quantities are not pan of the current non-automated procedures because they are static trees that exist on the customer service engineer's portable workstation. The automated procedures of the present disclosure represent a major improvement in diagnosis and repair, and may provide useful diagnostic information for the future generation of additional automated procedures.
The level of available access to the data and internal test procedures, as illustrated in block 252 of
If tests involving hum intervention are not allowed, the diagnostics server 130 may then query whether hazardous tests are allowed in block 430. If hazardous tests are allowed, the server moves to block 440 and selects a procedure that allows for diagnostics which may require the device covers to be closed and their interlocks cheated, for example. Tests in this class may be potentially hazardous to personnel working on the device if executed while the covers are open. Sites where a human is monitoring the environment may perform these kinds of test and thus, when permitted, may enable more complete diagnostics and restructuring of the procedure diagnostics graph for maximal pruning of the diagnostics tree.
If tests which are hazardous are not allowed, the diagnostics server 130 may then query whether non-hazardous test are allowed in block 450 of FIG, 4. If non-hazardous tests are allowed, the server moves to block 460 and selects a procedure that allows for diagnostics which may include remote device operation and potentially device shutdown, but which pose no harm to users who may be working at or near the device.
If tests which are non-hazardous are not allowed, the diagnostics server 130 may select a procedure where only non-invasive tests are performed, as depicted in block 470. Even at this reduced level of device access, different diagnostic trees may be used which account for various degrees of non-invasive access. For example, the customer may not allow software to be downloaded onto the device, but may allow the internal memory to be accessed. This level of procedure has available graph nodes which may allow data gathering only, and may be traversed in situations where the customer requires continuous device uptime.
In the embodiments disclosed herein, the rules engine 140 evaluates the specific rules for device access as may be defined in the terms and conditions of the service contract, or by customer or customer service engineer input, and makes decisions as to what level of repair analysis procedure to carry out. A lot of diagnostics may be performed to limit the possible scope of the problem just using live information. “Live information” refers to information collected from the device while it is being operated by the customer at the customer site, often without the customer even noticing.
The automated procedure of the present disclosure may also include different numbers of tests at each node. The tests may be single requests that answer several questions at a low level of abstraction. A node in the graph may also consist of a bundled set of rule based tests that answer questions at a higher level of abstraction. It should be noted that these bundled rules are things that can readily be detected and evaluated by a computational rules engine, but would be awkward for a human agent, requiring calculations or skilled interpretation.
The automated procedures of the present disclosure may further involve download of specific diagnostic software not in the list of existing diagnostic control routines of the devices internal code. As new problems are discovered in the field and solutions identified, as depicted in block 200 of the flowchart in
The automated procedures of the present disclosure may also require additional data collection and abstraction with resumption of the diagnosis session at a later time, as is depicted in block 250 of the flowchart in
Embodiments described herein may replace the current procedure with an automated procedure that is executed computationally by remote servers operating in concert with the customer device. Further, embodiments of the procedure described herein may be tailored to the specific device. In some embodiments, this procedure may be refreshed at a diagnostics server based on data obtained from the customer device, and tests are run that may be designed specifically for that device and that may be performed remotely. A deeper level of automated diagnosis also may be available given the presence of a willing human at the device location in certain embodiments.
The present disclosure also provides a scalable increase in the knowledge base for diagnosis and repair of electromechanical devices. Historically, customer service engineers gathered only the information necessary to diagnose and repair a device at the customer site. The diagnostics server and automated procedures of the present disclosure may collect data from devices, and store this data at a central database and diagnostics server. This data may be used for a global analysis of device behavior which may detect complex patterns in the large data sets. These patterns may be used to further refine the automated procedures and make them more specific to device types and even to individual devices.
The Examples below are merely representative of the work that contributes to the teaching in the present disclosure and are not considered to be restrictive of the disclosure.
An example of a procedure for a xerographic device may include a bundled rule set which asks the question “Photoreceptor electronically dead?” In this case, the node in the tree may include tests of the photoreceptors current life in cycles, its time dependent response to light (photon induced discharge curves), and electrical and or mechanical efficiency. This may require a variety of tests for various parts of the device. Once completed, however, the procedure will alert the customer service engineer as to whether a part needs to be replaced, and which part may need to be replaced. This allows the engineer to dispatch to a customer site with the correct equipment, if necessary, and it may also allow for less trained individuals, such as the customer, to replace the part.
Another example of a bundled rule set for a xerographic device may ask the question “Toner Auger Bound?” In this case the node may include tests relating to the number of requests for toner dispense, the recent area coverage printed, and the current toner concentration.
Another example of a bundled rule set for a xerographic device may ask the question “Solenoid 7D failed?” This node m-nay contain tests that may include histograms of media arrival times, lifetime data, and signature analysis of the part.
It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. It will also be appreciated that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.