Fault isolation method for a Controller Area Network

The method uses voltage sensors to diagnose CAN bus errors by comparing CAN-H and CAN-L voltage pairs, effectively isolating terminator loss or crossed wire faults, ensuring reliable vehicle communication.

DE102018113863B4Active Publication Date: 2024-12-24GM GLOBAL TECHNOLOGY OPERATIONS LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
DE102018113863
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2017-06-12
Filing Date
2018-06-11
Publication Date
2024-12-24
Estimated Expiration
2038-06-11

AI Technical Summary

Technical Problem

Existing methods for fault isolation in a Controller Area Network (CAN) are inefficient and do not effectively diagnose connection errors such as terminator loss or crossed wire faults, leading to miscommunications and improper vehicle functions.

Method used

A method involving voltage sensors to read and compare high (CAN-H) and low (CAN-L) voltage pairs on the CAN bus, identifying error signatures through statistical analysis to diagnose terminator loss or crossed wire faults, using flowcharts to guide the fault isolation process.

Benefits of technology

Efficiently isolates CAN bus connection errors by accurately detecting and locating terminator loss or crossed wire faults, ensuring reliable communication and functionality in vehicles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Method for evaluating a Controller Area Network (CAN) with a CAN bus and a plurality of modules configured to communicate via the CAN bus, wherein the method comprises the following: Providing a voltage sensor in electrical connection with the CAN bus; Reading a number of pairs (N pairs) of voltages, where each pair has a high CAN (CAN-H) value and a low CAN (CAN-L) value; and Processing the voltage pair N by comparing the CAN-H values ​​with the CAN-L values; Determine from the processing whether an error signature is present in the CAN-H and CAN-L values; and Determining the error signature by evaluating a waveform of communication signals on the CAN bus.
Need to check novelty before this filing date? Find Prior Art

Description

INTRODUCTION

[0001] The present invention relates generally to a controller area network, and more particularly to methods for fault isolation in a controller area network.

[0002] Such procedures are essentially described in the documents DE 10 2015 108 333 A1 and DE 10 2016 223 712 A1.

[0003] Vehicles, such as automobiles, may include a Controller Area Network (CAN), which allows modules, computers, electronic control units (ECUs), sensors, actuators, and other electronic elements to communicate with each other over a common network bus. Any number of devices can be connected to the CAN bus at nodes. The CAN allows devices to send and receive data for processing and enables checking for further information. These communications are useful, which is why it may be desirable to isolate possible faults in the CAN. One technique for troubleshooting is to disconnect individual modules from the CAN bus and check them individually until the fault is found.

[0004] Accordingly, it is desirable to provide improved techniques for fault isolation in a CAN. SUMMARY

[0005] According to the invention, a method is presented which is characterized by the features of claim 1 or those of claim 9.

[0006] According to an exemplary embodiment, the method includes evaluating a CAN, which includes a CAN bus and a plurality of modules configured for communication via the CAN bus. A voltage sensor may be provided in electrical connection with the CAN bus. A number (N) of voltage pairs may be read. Each pair may include a high CAN (CAN-H) value and a low CAN (CAN-L) value. The voltage pair N may be processed by comparing the CAN-H values ​​with the CAN-L values. Whether an error signature is present in the CAN-H and CAN-L values ​​can be determined from the processing.

[0007] According to another exemplary embodiment, the CAN may include evaluating a CAN bus and a plurality of modules configured to communicate over the CAN bus. An error signature indicating a connection error in the CAN bus may be determined. A voltage sensor may be provided in electrical communication with the CAN bus. N voltage pairs may be read from the CAN bus, each pair comprising a CAN H value and a CAN L value. The N voltage pairs may be evaluated by comparing the CAN H values ​​with the CAN L values. Whether the error signature is present in the CAN H and CAN L values ​​can be determined from the processing.

[0008] According to another exemplary embodiment, the CAN may include evaluating a CAN bus and a plurality of modules configured to communicate over the CAN bus. The modules may be configured to control functions of the vehicle. A determination may be made as to whether a fault exists in the CAN. A fault signature indicative of a connection fault in the CAN may be determined. A voltage sensor may be provided in electrical communication with the CAN bus. N voltage pairs may be read from the CAN bus, each pair including a CAN high (CAN-H) value and a CAN low (CAN-L) value. Voltage pair N may be processed by comparing the CAN-H values ​​with the CAN-L values. The processing determines whether the fault signature is present in the CAN-H and CAN-L values. If the fault signature is present, the fault may be isolated based on the fault signature. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The present invention will now be described in conjunction with the following drawing figures, in which like reference numerals designate like elements and in which: Fig. 1 is a functional block diagram of a vehicle including a CAN according to an exemplary embodiment; Fig. Figure 2 is a schematic diagram of a CAN as used in the vehicle of Fig. 1 is used, according to an exemplary embodiment; Fig. 3 is a graph of the error signatures expressed as voltage versus time for a CAN using the example of Fig. 2 with terminator loss according to an exemplary embodiment; Fig. 4 is a flowchart of methods for fault isolation according to exemplary embodiments; Fig. Figure 5 is a schematic diagram of a CAN as used in the vehicle of Fig. 1 is used, with a crossed wire fault; Fig. Figure 6 is a graph of the error signatures expressed as voltage over time for a CAN using the example of Fig. 5 according to an exemplary embodiment; and Fig. 7 is a flowchart of methods for fault isolation according to example embodiments. DETAILED DESCRIPTION

[0010] The following detailed description is by its nature merely exemplary

[0011] Fig. 1 illustrates a machine with multiple electronic controllers. In some embodiments, the machine may be any air, land, or marine vehicle, an industrial plant, or any application utilizing the CAN. In the current embodiment, the machine is a vehicle 20 or an automobile. The vehicle 20 may be one of a number of different types of automobiles, such as a sedan, station wagon, truck, or sport utility vehicle (SUV), and may have two-wheel drive (2WD) (i.e., rear-wheel drive or front-wheel drive), four-wheel drive (4WD), or all-wheel drive (AWD). Additionally, in certain embodiments, the vehicle 20 may include any number of other vehicle types.

[0012] As described in more detail below, the vehicle 20 includes a CAN 22 for communication with and between various devices connected in the network. In particular, as explained in more detail below, the CAN includes a CAN bus 24 that includes conductors 26 that form a circuit over which various devices communicate. In the illustrated embodiment, the CAN 22 includes a number of nodes to which various devices are connected to the CAN bus 24. In various embodiments, the CAN 22 performs or is used to perform various steps, as described below in connection with processes 200 and 300 of the Fig. 4 and Fig. 7 explained in detail.

[0013] As in Fig. 1, the vehicle 20 includes, in addition to the aforementioned CAN 22, a body 28, a drive system 30 having an engine 32 and a transmission 34, and four wheels 36. The wheels 36 are each rotatably connected near a respective corner of the body 28. The drive system 30 may provide one or more of the wheels 36 with torque to propel the vehicle 20, such as through drive shafts 38. In various embodiments, the vehicle 20 may differ from that shown in Fig. 1. For example, in certain embodiments, the number of wheels 36 may vary. As an additional example, among various other possible differences, in various embodiments, the vehicle 20 may not have an engine 32 and may be powered, for example, by an electric motor.

[0014] In the exemplary embodiment shown in Fig. 1, the vehicle 20 may include a steering system 40. The steering system 40 is mounted to the body 28 and controls the steering of the wheels 36. The steering system 40 may be powered by a power bus 42 that may be connected to a battery 44. A steering control module (SCM) 46 may be communicative with and configured to control the steering system 40. The SCM 46 may be connected to the CAN bus 24 for communication thereover. The steering system 40 includes a steering wheel and a steering column (not shown). In certain embodiments, the vehicle 20 may be configured as an autonomous vehicle and utilize steering commands generated by a computer without driver intervention. Under autonomous control, steering may be provided by an actuator 48 of the steering system 40 that is configured to control the rotation of the wheels 36.

[0015] The vehicle 20 may include a braking system 50 mounted to the body 28 and operable to brake the vehicle 20. The braking system 50 receives inputs from the driver via a brake pedal (not shown) and provides appropriate braking via brake units 52 that may be mounted on each wheel 36. A brake control module 54 may be communicatively coupled to and configured to control the steering system 50. The BCM 54 may be connected to the CAN bus 24 for communication therewith. Similar to the above discussion regarding possible variations for the vehicle 20, in certain embodiments, braking may be commanded by a computer rather than a driver. In autonomous control, braking may be provided by an actuator 56 of the braking system 50, which may be communicatively coupled to the brake units 52.

[0016] A driver may also provide inputs via an accelerator pedal 58 to achieve a desired speed or acceleration of the vehicle 20 by initializing a response of the propulsion system 30. An engine control module (ECM) 60 may be communicatively coupled to the engine and configured to control the engine 32. The ECM 60 may be connected to the CAN bus 24 for communication thereover. Likewise, a transmission control module (TCM) 62 may be communicatively coupled to the transmission controller 34 and configured to communicate thereover. The TCM 62 may be connected to the CAN bus 24 for communication thereover. Similar to the above discussion regarding possible variations for the vehicle 20, in certain embodiments, acceleration may be commanded by a computer rather than a driver. In autonomous control, acceleration may be performed by an actuator 66 that may be communicatively coupled to the propulsion system 30.

[0017] The vehicle 20 may have any number of auxiliary systems 68 to provide the functions of the vehicle 20. A control module 70 may be communicatively coupled and configured with the auxiliary system or series of auxiliary systems 68. The control module 70 may be connected for communication with the CAN bus 24. Each of the modules connected to the CAN bus 24 may be capable of sending and receiving signals over the CAN bus 24. Each module has a unique address on the CAN 22. This allows a module to receive inputs and data for its functions, but not for other functions intended for other modules. When an individual module sends information over the CAN 22, that information may be encoded so that other modules recognize the signal source.

[0018] The vehicle 20 may include an on-board diagnostic data link connector (DLC) 72 that may be mounted on the body 28. The DLC 72 may be connected to the CAN bus 24 for communication therethrough. The vehicle 20 may be serviced by connecting a diagnostic tool to the DLC connector 72, which may provide information, such as self-diagnostic information for the systems connected to the CAN 22, including data regarding whether various vehicle components require or will require information or maintenance. For example, a standardized set of diagnostic codes may be used to provide information regarding the operation of the systems to assist in the repair or replacement of components. The DLC connector 72 provides a point for receiving information about the controllers connected to the CAN bus 24.The CAN bus 24 may have ends 74 and 76 configured as described below.

[0019] As in Fig. 1, the control module 70 is used as an example to illustrate that the modules on the CAN bus 24 each include any one of a processor 78, memory 80, interface 82, or storage device 84. An individual module may, if not needed, omit any of the foregoing elements or rely on other control modules or computers to provide various information or functions and may communicate therewith via the CAN bus 24. The processor 78 performs the computational and control functions of the corresponding controller and may include any type of processor or multiple processors, individual integrated circuits such as a microprocessor, or any suitable number of integrated circuit devices and / or printed circuit boards that cooperate to perform the functions of a processing unit.During operation, the processor 78 executes one or more programs contained in the memory 80 and thus controls the general operation of the control module and the system it controls.

[0020] Memory 80 may be any suitable type of memory. For example, memory 80 may include various types of dynamic random access memory (DRAM), such as SDRAM, various types of static RAM (SRAM), and various types of non-volatile memory (PROM, EPROM, and Flash). In certain exemplary embodiments, memory 80 is located on the same computer chip as and / or co-located with processor 78. In the depicted embodiment, memory 80 stores the aforementioned program(s) along with one or more stored values.

[0021] The user interface 82 may include a component that enables communication with the system 68. The interface 82 may also include a component that enables communication via the CAN bus 24, such as with other modules, systems, or components. A high-speed CAN transceiver may be used in the interface 82 for communication via the CAN bus 24.

[0022] The storage device 84 may be any suitable type of storage device, including random access storage devices such as hard disk drives, flash systems, floppy disk drives, and optical disks. In an exemplary embodiment, the storage device 84 includes a program product from which the memory 80 can receive a program that performs one or more embodiments of one or more processes of the present invention, such as the steps of processes 200, 300 (and any sub-processes thereof) described below with respect to the Fig. 4 and Fig. 7. In another exemplary embodiment, the program product may be stored and / or otherwise accessed directly in memory 80.

[0023] It is estimated that the computer system of the control module 70 or the other control modules described herein may be different from the Fig. 1, for example, the computer system of each of the control modules may use one or more other control systems, including one or more of the other control modules connected in CAN 22.

[0024] With reference to Fig. Figure 2 is a schematic diagram showing a portion of the CAN 22 of Fig. 1 representatively illustrates the CAN bus 22. The CAN bus 24 includes a two-wire CAN bus 24 that includes a higher voltage signal line (CAN-H) 86 and a lower voltage signal line (CAN-L) 88. It should be noted that the signal lines 86, 88 may be configured as twisted pairs but are shown separately for clarity. The CAN bus 24 includes a plurality of nodes, namely the control module 70, the steering control module 46, the brake control module 54, the engine control module 60, and the transmission control module 62. Each of the modules is shown as a load with power and ground. The ends 74, 76 of the CAN bus 24 may include terminators 90 and 92 with resistors (R) and capacitor (C). The terminators 90, 92 are configured to match the impedance of the signal lines 86, 88.Termination resistors 90, 92 can provide a low-impedance path to ground for high-frequency signals to minimize signal reflections. Incorrect or lost termination resistors 90, 92 can lead to CAN errors in the message waveforms and miscommunications.

[0025] In relation to Fig. 3, fault signatures of the terminator loss are represented by voltage levels on the signal lines CAN-H 86 and CAN-L 88. A terminator loss fault can occur, for example, due to a missing connection of the terminating resistors 90, 92 to the signal lines 86, 88 or due to breaks in the signal lines 86, 88. As shown in Fig. 2, a counter or a voltage sensor or sensors 91 are provided in electrical connection with the CAN bus 24. The sensor(s) 91 may be provided as part of one of the control modules on the CAN 22, as part of another unit, or as separate units. The sensor(s) 91 may be connected or provided with each signal line CAN-H 86 and CAN-L 88. The voltage sensor(s) 91 may be provided on the DLC 72 of Fig. 1. The voltage sensor(s) 91 can be integrated as part of the CAN 22. The message transmission waveforms are represented with voltage on the vertical axis 93 in volts and time on the horizontal axis 95 in microseconds. Waveform 94 denotes the CAN-H voltage and waveform 96 denotes the CAN-L voltage. Both the CAN-H waveform 94 and the CAN-L waveform 96 start at approximately 2.5 volts. A message transmission begins at time 102 and involves the transmission of 24 bits over a period of approximately 48 microseconds at time 104. Under the applicable CAN protocol, each dominant bit should shift the CAN-H signal higher to approximately 3.5 volts and should simultaneously shift the CAN-L signal to approximately 1.5 volts for the duration of the communication signal. In the case of Fig. 3, with lost termination resistors 90, 92, the CAN-H signal rises to approximately 4.7 volts, approaching the logic voltage level, and the CAN-L signal drops to approximately 0.3 volts, approaching the ground voltage level. After transmitting four bits, an arbitration loss occurs, and both the CAN-H and CAN-L signals return via a slow slope to approximately 2.5 volts for the remainder of the 24-bit transmission. Following point 138, retransmission occurs, and a cycle similar to that between times 102 and 104 repeats. From the data of Fig. 3, fault signatures of the terminator loss can be identified. These include an excessively high CAN-H voltage, an excessively low CAN-L voltage, a slow discharge curve from point 112 to point 127, and a repeating periodic pattern. From these observed fault characteristics, a method 200, as in Fig. 4, can be used to diagnose a terminator loss error.

[0026] From these observed error characteristics, a process 200, as in Fig. 4, to diagnose a terminator loss fault. The method 200 may be used in conjunction with the vehicle 20 of Fig. 1, including CAN 22 and other systems, subsystems and components thereof, or with other units that use a CAN. As described in Fig. 4, the method 200 is initiated at step 202. For example, in various embodiments, the method 200 may be initiated when there is an indication that the CAN 22 is not functioning properly. The CAN 22 may have errors with unidentified sources, or communication may be lost, which may result in lost messages or improper functions. In one embodiment, the method 200 continues by determining whether a terminator loss has occurred.

[0027] In step 202, a number of data points may be collected, each point representing a set of two simultaneous voltage measurements as collected by the voltage sensors 91. The number of collected data points covers a sufficiently large period of data traffic on the CAN bus 24 to ensure the accuracy required for the conclusions from the method 200. For example, the period may be chosen to capture communication with all modules on the CAN bus 24. In the present example, the number of data points is N=1000, with each data point including a set of voltage measurements with a CAN H voltage measurement and a CAN L voltage measurement. The two values, data point sets, are referred to herein as data points. Following step 202, the data points are processed to identify high / low differences.For example, data points are identified where the difference between the CAN H voltage and the CAN L voltage is larger than expected or where the difference between the CAN H voltage and the CAN L voltage is smaller than expected.

[0028] At step 204, the method 200 determines whether all data points have been processed (i.e., whether all 1000 points have been processed). If the determination is negative and further processing is required, the method 200 continues with step 206. At step 206, it is determined whether (T1 < V H (i) < T2) && (T3 < V L (i) < T4)? When determining V H (i) and V L(i) the CAN-H and CAN-L voltages to be evaluated for the data point. When determining T1-T4, voltages are selected to identify a statistically significant voltage difference. In this example, T1 = 4 volts, T2 = 5 volts, T3 = 0 volts, and T4 = 1 volt. The two-part evaluation is performed using the AND operator, where a V H (i) between 4 and 5 volts and one V L (i) between 0 and 1 volt, causes the data point to have a high difference between the CAN-H voltage and the CAN-L voltage. If the determination is positive, the data set V H (i), V L (i) referred to as a high difference data point at step 208. If the determination at step 206 is negative, the data point does not have a large difference, and the method 200 continues to step 210. Also from step 208, the method 200 continues to step 210.

[0029] At step 210, it is determined whether (T5 < V H(i) < T6) && (T7 < V L (i) < T8)? When determining V H (i) and V L (i) the CAN-H and CAN-L voltages to be evaluated at the data point. When determining T5-T8, voltages are selected to identify a statistically significant voltage difference. In this example, T5 = 2.5 volts, T6 = 2.9 volts, T7 = 2.1 volts, and T8 = 2.5 volts. The evaluation is performed using the AND operator, where a V H (i) between 2.5 and 2.9 volts and one V L (i) between 2.1 and 2.5 volts, causes the data point to have a low difference between the CAN-H voltage and the CAN-L voltage. With such a positive determination, the data set V H (i), V L(i) referred to as a low difference data point at step 212. If the determination at step 210 is negative, the data point does not have a low difference, and the method 200 proceeds to step 204. Also from step 212, the method 200 proceeds to step 204. The loop between steps 204 and 210 / 212 continues until it is determined at step 204 that all 1000 data points have been processed. Upon a positive determination at step 204 that all data points have been processed, the method 200 proceeds to step 214.

[0030] The process may arrive at step 214 with an identified set of data points with a high difference and an identified set of data points with a low difference. These two sets are then processed to identify the number of sections in the collected N data points that indicate a terminator loss error. One section of the 1000-point example corresponds to 24 bits, which, as shown in Fig. 3, corresponds to the number of data points between time 102 and time 104 (i.e., one period of the periodic waveforms). Note that time 104 corresponds to point 138. The variables are initialized at step 214, and k is set to zero. k is a portion of the data traffic on the CAN bus 24 equal to one period. At step 216, the method 200 begins counting the number of points, which is represented as the high difference C H (k) and the number of points that are considered as low difference CL (k) in each section. In Fig. 3, for example, the section from time 102 to time 104 has four points 111-114, with a high difference, as identified at step 208. In the same section between times 102 and 104 are 18 points 121-138, with a low difference, as identified at step 212. From step 216, the method proceeds to step 218 and the count changes to the next section of waveforms 94, 96. At step 220, a determination is made as to whether all data points for all sections of the 1000-point sample have been processed. If the determination is negative and not all points have been processed, the method 200 returns to step 216 and the next section is counted. If the determination at step 220 is positive and all N data points for all sections have been processed, the method 200 proceeds to step 222.

[0031] At step 222, process 200 retrieves the number of points determined in step 208 as high difference C H (k) and the number of points that were designated in step 212 as low difference C L (k) for the first section k. At step 224, it is determined whether (T9 < C H (k) + C L (k) < T 10 ) && (T 11 < C L (k))? As stated above for the exemplary section, C H (k) 4 data points and C L (k) is 18 data points, so C H (k) + C L (k) is equal to 22. In the determination T9 = 20, T 10 = 28 and T 11 = 12, each of which consists of the signature of the waveforms of Fig. 3. Since the number 22 lies between 20 (T9) and 28 (T 10 ) and the number 18 is greater than 12 (T 11), the exemplary section results in a positive determination at step 224. The method 200 continues to step 226 and the positive output case from step 224 is counted. The method 200 continues to step 228 and it is determined whether C F (k) ≥ T 12 is? C F (k) is the number of counted sections that resulted in positive determinations at step 224. T 12 is a number that depends on the sampling rate. In this example, a sample of 1000 data points is used, with 24 data points in each section, which means that the sample 4123 sections. In this example, T 12 = 10. Starting from an example that at step 226, 15 sections from the 4123 sections were counted, C F(k) equals 15. Since 15 is greater than 10, the determination at step 228 is positive, and the method 200 proceeds to step 230, reporting a terminator loss. The method then ends at step 232.

[0032] Returning to step 224, if the determination is negative, the method 200 continues to step 234, where it is determined whether all k sections of the data points have been processed. If the determination is negative, the method 200 returns to step 222 and the remaining sections of the data points are processed. If the determination at step 234 is positive, i.e., all data sections have been processed, and if the determination at step 228 is negative, i.e., the number of sections with positive determinations at step 224 is less than T 12If the error is not detected, the method proceeds to step 236 and a fault-free result is reported. The method then ends at step 232. The method 200 determines the presence or absence of a fault using a physically based approach. To determine whether a fault signature is present, CAN bus voltage measurements of the message traffic on the CAN bus 24 are used.

[0033] Another exemplary embodiment of a physically based approach to isolating a fault in a CAN using voltage measurements is described with respect to the Fig. 5-7. With reference to Fig. Figure 5 is a schematic diagram showing a portion of the CAN 22 of Fig. 1. The CAN 22 has a two-wire CAN bus 24 that includes a higher voltage signal line (CAN-H) 86 and a lower voltage signal line (CAN-L) 88. It should be noted that the signal lines 86, 88 can be configured as twisted pairs, but are shown separately for clarity. The CAN bus 24 includes a plurality of nodes that include the control module 70, the steering control module 46, the brake control module 54, the engine control module 60, and the transmission control module 62. Each of the modules is shown as a load with a power supply and ground. The ends 74, 76 of the CAN bus 24 may include termination resistors 90 and 92 with resistors (R) and the capacitor (C). A crossed wire, as illustrated by the crossed connection 140, may occur between the signal lines 86, 88 if the signal lines are incorrectly connected.The crossed connection 140 can occur in a connection between a module and the CAN bus 24 or in the connection of the signal lines 86, 88. In a crossed connection situation 140, miscommunication can occur.

[0034] In relation to Fig. 6, error signatures of the crossed connection 140 are demonstrated by voltage levels on the signal lines of the CAN-H 86 and the CAN-L 88. A counter or voltage sensor(s) 91 can be connected to each signal line of the CAN-H 86 and the CAN-L 88, as shown in Fig. 5, where in several examples the voltage sensor(s) can be connected to the DLC 72 or at another location. Alternatively, the voltage sensor(s) can be provided as part of the CAN 24. In Fig. 6, the message transmission waveforms are represented as voltage on the vertical axis 142 in volts and time on the horizontal axis 144 in microseconds. Waveform 146 denotes the CAN-H voltage and waveform 148 denotes the CAN-L voltage. Both the CAN-H waveform 146 and the CAN-L waveform 148 start at approximately 2.5 volts. Under the applicable CAN protocol, during message transmission, each dominant bit should shift the CAN-H signal higher to approximately 3.5 volts and should simultaneously shift the CAN-L signal to approximately 1.5 volts for the duration of the communication signal. In the case of Fig. 6, with a crossed connection 140, the CAN-H signal rises to approximately 3.5 volts and the CAN-L signal falls to approximately 1.5 volts for message transmissions 160, 162, and 166. For message transmission 164, the CAN-H signal falls to approximately 1.5 volts, while the CAN-L signal rises to approximately 3.5 volts. Message transmission 164 does not correspond to a dominant state for the CAN-H signal. From the data of Fig. 6, error signatures of the crossed connection 140 are detected. These include an excessively low CAN-H voltage compared to the CAN-L voltage, and other CAN protocols, such as timing, message content, and signal flow, are followed. From these observed error characteristics, a method 300, as in Fig. 7, can be used to diagnose a crossed connection fault.

[0035] Fig. 7 is a flowchart of a method 300 for diagnosing a crossed connection fault according to an exemplary embodiment. The method 300 may be used in connection with the vehicle 20 of Fig. 1, including CAN 22 and other systems, subsystems and components thereof, or with other units that use a CAN. As described in Fig. As illustrated in Figure 7, method 300 is initiated at step 302. For example, in various embodiments, method 300 may be initiated when CAN 22 is not functioning properly. CAN 22 may have errors with unidentified sources, or communication may be lost, which may result in lost messages or improper functions. In one embodiment, method 300 continues while determining whether a crossed link fault exists.

[0036] At step 302, a number N of data points may be collected, each point representing a set of two simultaneous voltage measurements as collected by the voltage sensors 91. The number of collected data points covers a sufficiently large period of message traffic on the CAN bus 24 to ensure the accuracy required for the conclusions from the method 300. For example, the period may be selected to capture communication on the CAN bus 24 with the normal frame of message transmissions 160, 162, and / or 166 and the reverse frame of message communication 164. In the present example, the number of data points N=500, where each data point 500 includes a set of one CAN-H voltage measurement and one CAN-L voltage measurement. Following step 302, the data points are processed to identify low CAN-H voltages.For example, data points are identified where the CAN-H voltage is significantly below the CAN-L voltage.

[0037] At step 304, it may be determined whether all data points have been processed (i.e., whether all N points have been processed). If the determination is negative and further processing is required, the method 300 continues to step 306. At step 306, it is determined whether (V H (i) < V L (i) - T1) && (| V H (i) + V L (i) - T2| < T3) && (| V H (i) - V L (i) - T4| < T5)? When determining V H (i) and V L(i) The CAN-H and CAN-L voltages to be evaluated in the data point. When determining T1-T5, voltages are selected to identify a statistically significant voltage comparison. In this example, T1 = 1 volt, T2 = 5 volts, T3 = 0.5 volts, T4 = 2 volts, and T5 is 0.5 volts. T1, T2, and T4 are derived from the CAN protocol, where the value T1 of 1 means to distinguish from the same recessive voltages of CAN-H and CAN-L. The value T2 corresponds to the signal voltage, which is 5. Note that CANH+CANL is always 5V, regardless of whether it is a dominant or recessive bit. The value T4 of 2 results from the dominant difference between the voltages of 3.5V and 1.5V. Additionally, T3 and T5 are selected as small values. The three evaluations of step 306 are performed using AND operators. Question V H (i) < V L (i) - T1? is evaluated to determine whether V H is significantly lower than V L. The question | V H (i) + V L (i) - T2| < T3? is evaluated to determine whether the sum of the V H and V L Voltages match the signal voltage. The question | V H (i) - V L (i) - T 41 < T5? is evaluated to determine whether the difference of V H and V L agrees with the expected difference in a dominant state. If a positive determination is made at step 306, the method 300 proceeds to step 308 and a count C1 of the positive determination is recorded. If the determination at step 306 is negative, the data point is not counted and the method 300 returns to step 304. From step 308, the method 300 proceeds to step 310.

[0038] At step 310, it is determined whether C1 > T6, where C1 is the count sum and T6 is a number of positive determinations that is a statistically significant portion of the sample. In one embodiment, a determination is made as to whether there are 10 positive determinations out of the 500 data points. If the determination at step 310 is negative, the method 300 returns to step 304 to process additional data points. If the determination at step 310 is positive, i.e., more than 10 positive determinations were made at step 306, the method 300 proceeds to step 312. At step 312, a crossed connection error is reported, and the method 300 may end.Returning to step 304, if all data points have been processed and a positive determination has been made at step 310, the method 300 continues to step 314, reporting the absence of a crossed link fault, and the method 300 ends at step 316.

[0039] In a number of examples, if a reverse link fault is reported at step 312, the method 300 may proceed to fault location. In a number of examples, the method 300 may continue fault location at step 320. Messages on the CAN bus 24 may be read and the topology of the CAN bus 24 may be referenced. At step 322, the location of the crossed link fault may be determined using a topology-based approach. For example, a predetermined time window of messages on the CAN bus 24 may be monitored to determine if a first transient fault and a second transient fault are present. A first set of faults having at least one inactive controller associated with the first transient fault and a second set of faults having at least one inactive controller associated with the second transient fault may be identified.An intermittent fault may be located in the CAN based on the first and second fault sets. Once the fault location is determined, method 200 may end at step 216.

[0040] Accordingly, methods, systems, and vehicles are provided for determining whether a terminator loss or a crossed wire fault has occurred in a CAN bus 24. A connection fault is considered to be either a terminator loss fault or a crossed wire fault. The disclosed methods, systems, and vehicles provide efficient ways to diagnose a connection fault in a CAN system. It is understood that the disclosed methods, systems, and vehicles may differ from those illustrated in the figures and described herein. For example, the vehicle 20, the CAN 22, and / or various components thereof may differ from those described in Fig. 1 and described in connection therewith. Furthermore, it is understood that certain steps and / or implementations of the process 200, 300 may differ from those described in Fig. 4 and Fig. 7 and / or described above in connection therewith. Likewise, it is understood that certain steps of the methods described above may be performed simultaneously or in a different order than that described in the Fig. 4 and Fig. 7 and / or described above in connection therewith.

Claims

[1] A method for evaluating a Controller Area Network (CAN) having a CAN bus and a plurality of modules configured to communicate via the CAN bus, the method comprising: Providing a voltage sensor in electrical connection with the CAN bus; Reading a number of pairs (N pairs) of voltages, each pair having a high CAN (CAN-H) value and a low CAN (CAN-L) value; and Processing the voltage pair N by comparing the CAN-H values ​​with the CAN-L values; Determining from the processing whether an error signature is present in the CAN-H and CAN-L values; and Determining the error signature by evaluating a waveform of communication signals on the CAN bus. [2] A method according to claim 1, comprising: Selecting a voltage value equal to a signal voltage level of the CAN bus; and Comparing the CAN-H value and the CAN-L value with the voltage value. [3] A method according to claim 1, comprising: Determining a voltage magnitude, wherein if the CAN-H value is less than a difference between the CAN-L value and the voltage magnitude, a crossed connection fault is indicated; and Evaluate whether the CAN-H value is smaller than the difference between the CAN-L value and the voltage value. [4] A method according to claim 1, comprising: Determining a difference between the CAN-H and CAN-L values; and evaluating a magnitude of the difference to determine whether the fault signature indicates a terminator loss fault. [5] A method according to claim 1, comprising: Evaluating whether a difference between the CAN-H value and the CAN-L value is greater than a first threshold; and Evaluate whether the difference between the CAN-H value and the CAN-L value is lower than a second threshold. [6] A method according to claim 1, comprising: Determining a number of events which, if present in the voltage pair N, indicate the presence of the fault signature; and Evaluate whether the number of events in the voltage pair N is present. [7] A method according to claim 1, comprising: Selecting a first voltage value equal to a signal voltage of the CAN bus; Selecting a second voltage value that is less than one volt; and Subtracting the first voltage value from a sum of the CAN-H value and the CAN-L value to obtain an amount; and Evaluate whether an absolute value of the magnitude is smaller than the second voltage value. [8] A method according to claim 1, comprising: the provision of a vehicle; and Using the CAN to control part of the vehicle. [9] A method for evaluating a Controller Area Network (CAN) of a vehicle having a CAN bus and a plurality of modules configured to communicate via the CAN bus, the method comprising: Configuring the modules to control the vehicle's functions; Determine that there is a fault in the CAN; Determining an error signature that indicates a connection error in the CAN; Providing a voltage sensor in electrical connection with the CAN bus; Reading a number of pairs (N pairs) of voltages from the CAN bus, each pair having a high CAN (CAN-H) value and a low CAN (CAN-L) value; Processing the voltage pair N by comparing the CAN-H values ​​with the CAN-L values; Determine from the processing whether the error signature is present in the CAN-H and CAN-L values; if the fault signature is present, isolate the fault based on the fault signature; and Determining the error signature by evaluating a waveform of communication signals on the CAN bus.

Citation Information

Patent Citations

  • Short-circuit fault isolation in a controller area network

    DE102015108333A1

  • METHOD FOR DETECTING A GROUND FAULT IN A FAULTY ELECTRONIC CONTROL DEVICE

    DE102016223712A1

  • METHODS AND SYSTEMS FOR DIAGNOSIS OF A CONTROLLER AREA NETWORK

    DE102018109953A1