diagnostic feature automation and diagnostic tool for in

8
1 AbstractThe In-Vehicle Infotainment (IVI) system is becoming increasingly complex with the addition of more and more features to make it more useful and entertaining to the driver. Thus testing the IVI system has become a difficult task which consumes a large amount of time. The automotive manufacturers are permitted to use only licensed tools and software for testing. In this paper, we have developed 2 new methods of testing using the licensed software, Vector CANoe: (i) a diagnostic tool to perform manual testing and (ii) a CAPL script to perform automatic testing. Index TermsEOL testing, UDS standard, diagnostic tool, diagnostic feature automation, CAPL script I. INTRODUCTION HE In - Vehicle Infotainment (IVI) system located at the center of the car‟s dashboard provides useful information such as vehicle alerts, navigation and entertainment in the form of music, videos and pictures to the user. Today IVI systems are becoming more complex as they are getting more and more features to give the user an exhilarating experience while driving the vehicle. Due to the increased number of features, testing of the IVI system has become a complex and time consuming process. After the IVI system has been designed, it needs to be tested by the automotive manufacturer before integrating it into the vehicle. This type of testing done at the manufacturing stage is referred to as EOL (End-Of- Line) testing. Testing methods today make use of open source programming languages such as python. However the manufacturers are prohibited from using open source tools and software for testing. Thus the objective of this project is to develop two methods of testing: (i) Manual testing and (ii) Automatic testing for the IVI system using Vector CANoe, a proprietary software. The programming language used is CAPL (CAN Access Programming Language). To perform manual testing, a diagnostic tool has been created. The proposed diagnostic tool provides the manufacturers with 3 modes of request transmission and 15 Customizable Hot Keys (CHKs). For performing automatic testing, a CAPL script has been developed. The proposed CAPL script for diagnostic feature automation completes the testing of the entire ECU (Electronic Controller Unit) in less time and with little human effort. It also provides a lot of useful information to the manufacturers. As both these methods are developed using licensed software, they can be employed by automotive manufacturers for testing the ECU. A diagnostic communication protocol defines what diagnostic services in the ECU can be accessed through this protocol. The protocol used in this project is UDS (Unified Diagnostic Services) protocol and the ECU used is the IVI system. II. BASIC PRINCIPLE The personal computer (PC) communicates with the IVI system using the CAN (Controller Area Network) protocol. Since the CAN protocol is used, the PC can directly talk to the IVI system. The IVI system is a typical CAN node containing the host controller, CAN controller, CAN transceiver and the CAN bus. To connect the Vector CANoe software on the PC to the CAN bus in the IVI system, the CANoe hardware is used. The CANoe hardware serves 2 purposes: Relay information from the PC to the IVI system Convert the data sent by the PC into CAN frames which can be understood by the IVI system Fig. 1. Basic block diagram In the proposed manual and automatic testing methods, the software on the PC sends a request to the IVI system and the IVI system responds with a positive or negative response as shown in Fig. 1. Based on this response, it is determined whether the test has passed/ failed. III. UDS STANDARD UDS has been standardized as ISO 14229 1. Some of the services defined by this standard have been mentioned below along with their service ID (hexadecimal value): Diagnostic session control (0x10) ECU reset (0x11) Read DTC (0x19) Clear DTC (0x14) Read data by identifier (0x22) Write data by identifier (0x2E) Diagnostic feature automation and diagnostic tool for In Vehicle Infotainment (IVI) system Deepti Susan John, Dr. V. Sathiesh Kumar, Prasath Ramalingam and Manikandan Murugesan T International Journal of Pure and Applied Mathematics Volume 119 No. 7 2018, 1093-1099 ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version) url: http://www.ijpam.eu Special Issue ijpam.eu 1093

Upload: others

Post on 16-Nov-2021

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Diagnostic feature automation and diagnostic tool for In

1

Abstract— The In-Vehicle Infotainment (IVI) system is

becoming increasingly complex with the addition of more and

more features to make it more useful and entertaining to the

driver. Thus testing the IVI system has become a difficult task

which consumes a large amount of time. The automotive

manufacturers are permitted to use only licensed tools and

software for testing. In this paper, we have developed 2 new

methods of testing using the licensed software, Vector CANoe: (i)

a diagnostic tool to perform manual testing and (ii) a CAPL

script to perform automatic testing.

Index Terms— EOL testing, UDS standard, diagnostic tool,

diagnostic feature automation, CAPL script

I. INTRODUCTION

HE In - Vehicle Infotainment (IVI) system located at the

center of the car‟s dashboard provides useful information

such as vehicle alerts, navigation and entertainment in the

form of music, videos and pictures to the user. Today IVI

systems are becoming more complex as they are getting more

and more features to give the user an exhilarating experience

while driving the vehicle. Due to the increased number of

features, testing of the IVI system has become a complex and

time consuming process. After the IVI system has been

designed, it needs to be tested by the automotive manufacturer

before integrating it into the vehicle. This type of testing done

at the manufacturing stage is referred to as EOL (End-Of-

Line) testing. Testing methods today make use of open source

programming languages such as python. However the

manufacturers are prohibited from using open source tools and

software for testing. Thus the objective of this project is to

develop two methods of testing: (i) Manual testing and (ii)

Automatic testing for the IVI system using Vector CANoe, a

proprietary software. The programming language used is

CAPL (CAN Access Programming Language). To perform

manual testing, a diagnostic tool has been created. The

proposed diagnostic tool provides the manufacturers with 3

modes of request transmission and 15 Customizable Hot Keys

(CHKs). For performing automatic testing, a CAPL script has

been developed. The proposed CAPL script for diagnostic

feature automation completes the testing of the entire ECU

(Electronic Controller Unit) in less time and with little human

effort. It also provides a lot of useful information to the

manufacturers. As both these methods are developed using

licensed software, they can be employed by automotive

manufacturers for testing the ECU.

A diagnostic communication protocol defines what

diagnostic services in the ECU can be accessed through this

protocol. The protocol used in this project is UDS (Unified

Diagnostic Services) protocol and the ECU used is the IVI

system.

II. BASIC PRINCIPLE

The personal computer (PC) communicates with the IVI

system using the CAN (Controller Area Network) protocol.

Since the CAN protocol is used, the PC can directly talk to the

IVI system. The IVI system is a typical CAN node containing

the host controller, CAN controller, CAN transceiver and the

CAN bus. To connect the Vector CANoe software on the PC

to the CAN bus in the IVI system, the CANoe hardware is

used.

The CANoe hardware serves 2 purposes:

Relay information from the PC to the IVI system

Convert the data sent by the PC into CAN frames

which can be understood by the IVI system

Fig. 1. Basic block diagram

In the proposed manual and automatic testing methods, the

software on the PC sends a request to the IVI system and the

IVI system responds with a positive or negative response as

shown in Fig. 1. Based on this response, it is determined

whether the test has passed/ failed.

III. UDS STANDARD

UDS has been standardized as ISO 14229 – 1. Some of the

services defined by this standard have been mentioned below

along with their service ID (hexadecimal value):

Diagnostic session control (0x10)

ECU reset (0x11)

Read DTC (0x19)

Clear DTC (0x14)

Read data by identifier (0x22)

Write data by identifier (0x2E)

Diagnostic feature automation and diagnostic

tool for In – Vehicle Infotainment (IVI) system

Deepti Susan John, Dr. V. Sathiesh Kumar, Prasath Ramalingam and Manikandan Murugesan

T

International Journal of Pure and Applied MathematicsVolume 119 No. 7 2018, 1093-1099ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version)url: http://www.ijpam.euSpecial Issue ijpam.eu

1093

Page 2: Diagnostic feature automation and diagnostic tool for In

2

Diagnostic session control is used to request for the desired

session in the ECU. The three sessions available are default,

programming and extended session. Each session enables a set

of diagnostic services and/or functionalities in the ECU. The

ECU is always in the default session. The programming

session enables all the diagnostic services needed for

programming the memory of the ECU. The extended session

provides a higher level of security than the other sessions and

therefore any service that causes any change to the ECU will

be enabled only in this session. The ECU remains in any

session other than the default session only for a few seconds.

ECU reset enables the manufacturer to reset the ECU. The

three types of reset provided are hard reset, key on-off reset

and soft reset. This service is enabled only in the extended

session.

Most modern vehicles today have the capability to detect

faults and store the corresponding fault codes in their memory.

These fault codes are referred to as Diagnostic Trouble Codes

(DTC). The Read DTC service allows the manufacturer to

read all the DTCs or the number of DTCs present in the

vehicle‟s memory. By knowing these DTCs, the manufacturer

can quickly identify and repair the faults. The Clear DTC

service is used to clear the DTCs in the memory.

The read and write data by identifier service is used for

requesting for diagnostic data to be read from or written to the

ECU. The identifier is commonly referred to as Parameter

Identifier (PID) and is used to specify what data has to be read

or written. For each ECU specification, there is a unique PID.

The write data by identifier service is enabled only in the

extended session.

The request can be a single frame or a multi-frame. The

general request format for all the services is shown in Fig. 2.

When there are multiple frames, frame numbers are used to

distinguish the different frames. The frame number for frame

1 is 10, for frame 2 it is 21, for frame 3 it is 22 and so on. The

data field is optional for both the request and response frames.

Fig. 2. General request format

A response is said to be positive if the 2nd

or 3rd

byte has a

value equal to the service id plus 40. The positive response

can be a single frame or multiple frames. The general positive

response format is shown in Fig. 3.

Fig. 3. General positive response format

The negative response format shown in Fig. 4 is the same

for all services. The response is negative if the value in 2nd

byte is 0x7F. The negative response trouble code indicates

what error occurred.

Fig. 4. Negative response format

IV. CAN ACCESS PROGRAMMING LANGUAGE (CAPL)

CAPL is pronounced as „Kapple‟. As it is an event based

programming language, the program is organized into sections

called event procedures. When an event occurs such as key

press, switch activation, message reception etc, the

corresponding event procedure is executed. If no event occurs,

the program will be idle. An example program is shown in

Fig. 5. When the key „a‟ is pressed, the code typed within the

curly braces will be executed.

Fig. 5. An example CAPL program

V. PROPOSED DIAGNOSTIC TOOL

The panel for the diagnostic tool has been designed using a

separate application provided with Vector CANoe called the

Panel designer which is used for designing graphic panels. All

the controls i.e. buttons, drop down box, input-output box etc

used in the panel must be assigned to environment variables

and these variables should be defined in the CANdb++ (CAN

Database) editor. Environment variables make the connection

between the controls on the panel and its associated CAPL

code possible. Fig. 6 shows the environment variables

database that was developed for this project.

on key ‘a’ { // code

}

International Journal of Pure and Applied Mathematics Special Issue

1094

Page 3: Diagnostic feature automation and diagnostic tool for In

3

Fig. 6. Environment variables database

The developed diagnostic tool shown in Fig. 7 provides the

manufacturer with three ways to send a request (shown in Fig.

8).

(a)

(b)

Fig. 7. (a) Top and (b) bottom portion of the diagnostic tool

Fig. 8. Types of request transmission

In the general R/W section (shown in Fig. 9), the data

length of the request message is typed in the data length box.

The data length need not be specified for services that have a

constant length request. From the service type drop down

menu, the desired service is selected. In the PID box, the PID

value can be typed. The request is typed in the boxes D0 – D7

which represents the 8 bytes of a frame. By using the „+‟ or „-‟

button, we can move from one frame to another. The save and

clear button is used to save the contents of the request into a

buffer and to clear all the entries in the general R/W section

respectively. The frame no box specifies the number of the

current frame. Initially the request ID and frame number will

be set as 0x750 and 1 respectively. When send request button

is pressed, the request is transmitted.

Fig. 9. General R/W section

In the direct transmission section (shown in Fig. 10), the

request can be typed continuously leaving space between the

bytes in the „data to transmit‟ box instead of typing each byte

in a separate box as in the General R/W section. On clicking

the send button, the request is sent.

Fig. 10. Direct transmission section

Hot keys (shown in Fig. 11) ensure that the manufacturer no

longer needs to type the frequently used requests. By simply

pressing the key, the request saved in the key is transmitted.

Two kinds of hot keys have been provided:

International Journal of Pure and Applied Mathematics Special Issue

1095

Page 4: Diagnostic feature automation and diagnostic tool for In

4

Fixed hot keys (FHK) – Frequently used requests are

already stored in the key.

Customized hot keys (CHK) – Allows the

manufacturer to save any request that he wants to the

key. 15 such keys have been provided. Two check

boxes are present: General R/W and Direct

transmission. If the General R/W check box is ticked,

it indicates that the message typed in the General

R/W section needs to be saved to the key. The same

applies to the Direct transmission check box as well.

Fig. 11. Hot keys section

In all the three sections, single and multiple frames can be

transmitted and received accurately. The response from the

IVI system will always be displayed in the message data

(payload) sub-section of the General R/W section.

VI. PROPOSED DIAGNOSTIC FEATURE AUTOMATION

The developed CAPL script automatically tests all the

diagnostic features in the IVI system. When the CAPL script

is run, the requests are sent one after the other to the IVI

system and the responses received are displayed. The

advantage of automatic testing is that it reduces the amount of

time and effort required for testing. The developed CAPL

script takes approximately 1 minute 40 seconds to test all

features of the IVI system.

Provides useful information to the manufacturer such as:

Information about each test

Result of test – Pass/ Fail

Total no of tests

No of tests that passed/ failed

Response received (Single and multiple frames)

List of tests that failed

No of tests that failed due to a particular error

VII. RESULTS AND DISCUSSIONS

A. Diagnostic tool

An example of how a request is sent and received in the

general R/W section is shown in Fig. 12. The ECU reset

service is selected from the service type drop down list and the

value 3 is typed in D0 to request for the sub-function - soft

reset as shown in Fig. 12(a). On clicking send request button,

the values entered are put into the CAN request frame (Fig. 2)

and transmitted. The positive response received is shown in

Fig. 12(b).

(a)

(b)

Fig. 12. (a) ECU reset request and (b) ECU reset response

Fig. 13 shows an example for a write request using a fixed

hot key. Before a write request is sent, the request for

extended session is sent. Once a positive response is received,

the write request is sent. In this example we are changing the

preset value of the tuner. A positive response indicates that the

preset value has changed. The same can be observed in the IVI

system.

(a)

International Journal of Pure and Applied Mathematics Special Issue

1096

Page 5: Diagnostic feature automation and diagnostic tool for In

5

(b)

Fig. 13. (a) Write request and (b) write response

Fig. 14 shows an example for Customizable Hot Keys

(CHK). The request is typed in the „data to transmit‟ box of

the Direct transmission section. The send button has a dual

functionality. It not only sends the request but it also saves the

request into a buffer. The Direct transmission check box is

selected to indicate that the request typed in the Direct

transmission section needs to saved to the desired CHK. A text

box is provided near each CHK, for typing the name/ purpose

of the CHK, so that the manufacturer knows what he has

saved in the CHK. On clicking the desired CHK, the request is

saved in it (shown in Fig. 14(a)). After saving the request, the

check box is deselected and now whenever the CHK is

pressed and the request is transmitted and the response

received can be viewed in the General R/W section (shown in

Fig. 14(b)).

(a)

(b)

Fig. 14. (a) Request is saved to CHK 12 (b) On pressing CHK 12, the request saved in it is transmitted

B. CAPL based diagnostic feature automation

The result for CAPL based diagnostic feature automation is

shown in Fig. 15. The amount of time taken is shown at the

bottom right corner of the window in Fig 15(b).

(a)

(b)

Fig. 15. (a) Information about each test is displayed and (b) Result for

CAPL based diagnostic feature automation

International Journal of Pure and Applied Mathematics Special Issue

1097

Page 6: Diagnostic feature automation and diagnostic tool for In

6

C. Hardware implementation

Fig. 16 shows the overall hardware implementation.

Fig. 16. Overall hardware implementation

VIII. CONCLUSION

Two methods of testing: a diagnostic tool to perform

manual testing and a CAPL script for performing automatic

testing of the diagnostic features in the IVI system have been

developed. The tool has been developed to make the

manufacturer‟s work easier by providing new features like

three options for sending requests and 15 customizable hot

keys. Diagnostic feature automation using CAPL script

completes the testing of the IVI system within a short period

of time and requires less human effort. Thus the motivation to

help the automotive manufacturers to test the IVI system

manually and automatically using licensed tools and software

has been achieved.

REFERENCES

[1] Deepti Susan John, Dr. V. Sathiesh Kumar, Prasath Ramalingam and Manikandan Murugesan, “In – Vehicle Infotainment (IVI) system diagnostic tool”, in Proceedings of 9th National Conference on Signal Processing, Communication and VLSI Design (NCSCV‟17), Anna University, Regional Campus, Coimbatore, pp. 486 – 491, March 2017.

[2] Giovanni Betta, Domenico Capriglione, Antonio Pietrosanto and Paolo Sommella, “A Methodology to Test Instrument Software: An Automotive Diagnostic System Application,” IEEE Transactions on Instrumentation and Measurement, vol. 57, pp. 2733-2741, June 2008.

[3] Shankar. C. Subramanian, Swaroop Darbha and K. R. Rajagopal, “A diagnostic system for airbrakes in commercial vehicles”, IEEE Transactions on Intelligent Transportation Systems, vol. 7, no. 3, pp. 360-376, September 2006.

[4] Rajesh Rajamani, Adam. S. Howell, Chieh Chen, J. Karl. Hedrick and Masayoshi Tomizuka, “A complete fault diagnostic system for automated vehicles operating in a platoon”, IEEE Transactions on Control Systems Technology, vol. 9, no. 4, pp. 553-564, July 2001.

[5] J. R. Wagner, “Failure mode testing tool set for automotive electronic controllers”, IEEE Transactions on Vehicular Technology, vol. 43, pp. 156-163, February 1994.

[6] T. M. Cummings and M. J. Hall, “Vehicle diagnostics – A system view”, Proceedings of the International Congress on Transportation Electronics, 1990. Vehicle Electronics in the 90‟s, pp. 473-479, Oct 1990.

[7] Jie Hu, Fuwu Yan, Jing Tian, Pan Wang and Kai Cao, “Developing PC-based automobile diagnostic system based on OBD system”, 2010 Asia-

Pacific Power and Energy Engineering Conference (APPEEC), pp. 1-5, March 2010.

[8] P. O‟Reilly, “An overview of the potential contribution of diagnostics to improving vehicle safety and reducing vehicle emissions”, IEE Colloquium on Vehicle Diagnostics in Europe, February 1994.

[9] P. Greening, “On-board diagnostics for control of vehicle emissions”, IEE Colloquium on Vehicle Diagnostics in Europe, February 1994.

[10] Swathi K and S M Narasimhan, “Implementation of diagnostics module in car-infotainment system,” International Journal of Scientific & Engineering Research, vol. 6, pp. 1025-1028, May 2015.

[11] C. Sasikumar, Rohit Agrawal, Saurabh Gupta, Saurabh Gupta and Ravi Maheshwari, “Built in self-test for fault tolerant real time in-vehicle networks through automotive diagnostics,” 2011 International Conference on Emerging Trends in Networks and Computer Communications (ETNCC), pp. 379 – 382, 2011.

[12] Hela Lajmi, Habib. M. Kammoun and Adel. M. Alimi, “Advanced control units diagnostic based on Ethernet for smart cars,” 2015 4th International Conference on Advanced Logistics and Transport (ICALT), pp. 269 – 274, 2015.

[13] Piet Engelke and Hermann Obermeir, “Funding project DIANA – Integrated diagnostics for the analysis of electronic failures in vehicles”, 2012 17th IEEE European Test Symposium (ETS), pp. 1-1, May 2012.

[14] Monica Sălcianu and Cristian Fosalau, “A new CAN diagnostic fault simulator based on UDS protocol,” 2012 International Conference and Exposition on Electrical and Power Engineering, pp. 820-824, October 2012.

[15] Anca Lupei and Loredana Stanciu, “Application for UDS automated test generation,” 2016 IEEE 11th International Symposium on Applied Computational Intelligence and Informatics (SACI), 12-14 May 2016.

[16] Alexandros Mouzakitis, Nataraja Muniyappa, Richard Parker and Shamal Puthiyapurayal, “Advanced automated onboard vehicle diagnostics testing”, UKACC International Conference on Control 2010, September 2010.

[17] Alexandros Mouzakitis, Anand Nayak and Shamal Puthiyapurayal, “Automated fault diagnostics testing for automotive electronic control units deploying hardware-in-the-loop”, UKACC International Conference on Control 2010, pp. 1-6, September 2010.

[18] Supriya Kelkar and Raj Kamal, “Adaptive fault diagnosis algorithm for Controller Area Network,” IEEE Transactions on Industrial Electronics, Volume 61, Issue 10, pp. 5527 – 5537, October 2014.

Deepti Susan John completed her B.E in Electronics and

Communication Engineering from Anna University in 2015.

She is an alumnus of Meenakshi Sundararajan Engineering

College, Chennai, India. She is currently pursuing M.E in

VLSI design and Embedded systems at Anna University –

Madras Institute of Technology Campus, Chennai, India and is

doing her internship at Visteon Technical and Services Centre

Pvt. Ltd, Chennai, India.

Dr. V. Sathiesh Kumar is an Assistant Professor, Department

of Electronics Engineering, Anna University - Madras Institute

of Technology Campus, Chennai, India.

Prasath Ramalingam is a senior software design engineer at

Visteon Technical and Services Centre Pvt. Ltd, Chennai,

India.

Manikandan Murugesan is a software project manager at

Visteon Technical and Services Centre Pvt. Ltd, Chennai,

India.

International Journal of Pure and Applied Mathematics Special Issue

1098

Page 7: Diagnostic feature automation and diagnostic tool for In

1099

Page 8: Diagnostic feature automation and diagnostic tool for In

1100