Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Self

HI Myself Pavan Kumar. I completed my B.Tech graduate from N.B.K.R college of engineering and
Technology . Totally I am having 2.10 years of experience in automotive field. Currently I am working
in client location NAVTech for Body Control Module project for HIL Testing and I have good
knowledge in CAN and UDS protocols and I have good knowledge with respective system level
testing of body control module ECU, at the same time I am good in understanding the delay issues
having debugging the issues, I have thorough knowledge with respective Atlassian tools like Jira, BIT
BUCKET and SVN Repository. At the same time I am very much interested in automotive topics.
Coming to Roles and Responsibilities:
In my current organization my role is I am working as a functional test engineer and my
responsibilities are first I get system requirements for Body Control Module, and next I
understand the System requirements, and later I Develop the Test cases for each
functionality, And once after preparation of test cases we do peer review with my manager, After
that if everything is good then I will test those test cases in control desk. And after testing I will
consolidate to pass and fail test cases, if any fail test cases I will raise JIRA Tickets and do follow up
according to fail cases.
Project Info:
Currently I am working for BCM ECU’s which is one of the comfort features given to the customer.
There will be different features in BCM like Rear Defogger, Power Windows, RKE(Remote Keyless
Entry) , Head lamp, ORVM(Over rear view mirror), Tail lamp, Hand Brake Indicator, Bonnet, Wiper.

EMBEDDED AUTOMOTIVE TESTING


Embedded: An embedded system is a combination of computer hardware and software
designed for a specific function.
Automotive Testing: Automotive Testing means testing the ECU’s which are in Vehicles.
ECU (Electronic Control Unit) Testing: ECU is a small device in the vehicle’s body that is
responsible for controlling a specific function. There are some ECU components shown
below,

1.BCM(Body Control Module): Body of the Vehicles like doors, car wipers, power windows,
lock and unlock etc.,.
2.IC(Instrument Cluster): It displays speed, fuel indication, and signals etc.,
3.IS(Infotainment System): Display of maps and music player etc.,
4.TPMS(Tyre Pressure Monitoring System): It Monitors Tyres Pressure, indicates air in
tyres.
5.EMS(Engine Management System): It monitors engine.
6.AIRBAG: When there is an accident Airbags will open.
7.ADS(Anti Lock Braking System): It controls braking system.
8.IMMO(Immobilizer): It is used for security purpose, for example it check car key when
ever you put.
9.ADAS(Advanced Driver Assistance System): Driver less vehicles.
10.RPAS(Rear Parking Assistance System): It assistance reverse gear parking , displays the
way in Infotainment System.
11.TCU(Transmission Control Unit): It monitors the wheels of the vehicle, that is like how
much energy has to send to the wheels like that.
12.EPS(Electric Power Steering): Power steering
13.ESP(Electronic Stability Program): It is used to stop skidding the vehicle tyres in rain or in
any other situations.
14.Telematics: Telematics is a communication technology , informs about location ,traffic,
speed limit etc.,.

SDLC(Software Development Life Cycle): SDLC is a process followed for a software project,
within a software organization. It consists of a detailed plan describing how to develop,
maintain, replace and alter or enhance specific software. The life cycle defines a
methodology for improving the quality of software and the overall development process.

1.Planning: Planning is performed by senior members of the team in the project. They
discuss about project plan , requirements, cost, project time period ,resource and risks etc.,
2.Analysis: Based on the requirements. A set of people sit and analysis if the project is Do-
able or not Do-able.
3.Design: Once analysis is done we prepare a blue print of the application.
4.Implementation: Based on the design the developer starts writing code using the
particular program language.
5.Testing: Once coding is completed application is hand over to the test engineer. where
they start checking the functionality of an application according to the requirement. During
test process we may encounter some bugs which need to be fixed by developers and
retested by the test engineers.
This process continuous until the application is bug free/stable/works according to the
customer needs the stable applications is hand over to the customer in the form of
installation or deploying or roll out.
6.Maintenance: When customer start using the software they may place some issue which
need to be in detail tested & fixed and handover back to the customer this is done under
maintenance phase.
Different types of SDLC:
1.Waterfall Model
2.Spiral model
3.Prototype model
4.Verification & Validation Model
5.Hybrid Model
6.Agile Methodology

STLC(Software Testing Life Cycle):

V-MODEL: V-Model contains the process of the product from starting to ending.
One side is about Verification and other side is about Validation. Verification means
complete development phase and Validation means complete Testing phase.
CAN(Controller Area Network) PROTOCAL:
CAN means communication between the ECU/Nodes.
In terms of Electronic, ECU calls as ECU only but in terms of Communication , ECU calls as
Nodes.
Every node consists of messages and these messages consists of signals and these signals
are communicated.
Below shown are example for nodes consists of messages,

Fundamentals of Communication- Basic Definitions that are important to understand,


Communication- Way to exchange information
Protocol- Standardized method of communication
Node- ECU or controller or a participant in network.
Serial Communication- messages are sent one by one.
Parallel Communication- multiple message are set at a time.
Automotive communication- Different types of communications are CAN, LIN, Ethernet and
FlexRay etc., Based on some qualities the communications are selected they are,

What is CAN: CAN means Controller Area Network. It is a Bit-Oriented Serial Communication
Protocol and its is up to 1Mbps speed. It is multi Master – Multi slave protocol. It supports
communication length of 40 meters wire with 30 to 60 ECU’s based on communication
speed. It is used to communication between ECU’s. it is a single unshielded twisted pair wire
cable terminated on each ends with 120 ohm resistor. It supports both event based and
periodical communication.
Event based communication means – Whenever event happen then only the message will
send to the communication.
Periodical communication means – periodicity is nothing but a cycle time. Every message we
send for communication with in a given time, for example BCM1_20 means for every 20
milliseconds the message will go to communications and BCM2_30 means for every 30
milliseconds the message will go to communications.
CAN FRAME:

SOF(Start of Frame)- Start of frame is dominant ‘0’ to tell all the other ECUs that a message
is on the way.
Arbitration Field- Arbitration field tells the priority of the message. Low identifier is equal to
high priority. Whenever two or three messages are trying to occupies the communication
then which message having the less value that message will occupies the communication
first. Every message has a ID ex- 0*21 ,0*22 , 0*23 which message has the lowest value it
has the highest priority.
Control Field- It tells length of the message ID and data size.
Data Field- Data field contains the data. Ex: In BCM1 – head lamp, tail lamp etc.,
CRC Field- In Cyclic Redundancy Checksum, the two sent messages which are comes from
two nodes are sync or not.
Acknowledgement field- It is used to indicate a correct reception of the message.
EOF(End of Frame)- It indicates the frame end.
Types of CAN Frames:
Different types of frames are,
1.Data Frame: Carries information from a transmitter to the receivers
2.Remote Frame: Used to request a data frame
3.Error Frame: Used to indicate error to the entire network control
4.Overload Frame: Used to create an extra delay between frames
CAN Errors:
1.Bit Error: if one node sent dominant ‘0’ bit but another node recessive ‘1’ bit then it is
called bit error.
2.ACK Error: If one node sent message but another node not received then it is called
Acknowledgement error.
3.STUFF Error: If continuously 5 bit(0 0 0 0 0) are send and the next bit will be a ‘1’ bit if not
then it is called Stuff error.
4.CRC Error: From sender a CRC code will sent and receiver code has not match with it then
it is called CRC code.
5.Form Error: Form error is nothing but if there is any format is not correct then it is called
form error.
Interview Questions:
Q1. What is CAN?
A. CAN is communication protocol which is use to communicate between different ECUs. It
has maximum speed of 1 Mbps but in over current project we are using 500 Kbps speed. It is
a bit oriented serial communication protocol at the same time it has more reliability when
compare to other communication protocol and it can cover almost 40 meters of distance
and up to 30 to 60 ECUs.

Q2. Uses of CAN?


A. The speed of the communication is very high its like 1 Mbps of speed and it is less cost
involve when compare to other communication networks and its can handle error networks
like a whenever if any message is lost again it will be re-transmitted. It has less interference
noise and is architecture is very simple

Q3. What is Arbitration field?


A. Arbitration field tells the priority of the message whenever 2 or 3 messages trying to
occupy the communication whatever the message that is having the highest priority that
message will occupy the communication first. It makes each message will be having the
message ID the message which is having the less value that message will having the highest
priority.

Q4. What is CAN Frame?


A. CAN frame will be having different kind of fields like
SOF(Start of Frame)- Start of frame is dominant ‘0’ to tell all the other ECUs that a message
is on the way.
Arbitration Field- Arbitration field tells the priority of the message.
Control Field- It tells length of the message ID.
Data Field- Data field will be having the actual data which is going to transmit in to the
communication and it is 8 bits of data.
CRC Field- CRC fields is like Cyclic Redundancy Checksum whenever you are transmitting
message from sender to receiver, receiver also should have the same CRC then only
Acknowledgement will send to the sender.
Acknowledgement field- It is used to indicate a correct reception of the message.
EOF(End of Frame)- It indicates the frame is end.

Q5. What are CAN Errors?


A. Bit Error: Bit error is like whenever you have transmitting one bit if receiver receives a
different bit then it is a Bit error.
Acknowledgement Error: It is like whenever receiver doesn’t receive the message then it
send the message to the sender like the message is not received though acknowledgement.
STUFF Error: Stuff error is like whenever same 5 bits of dominant or recessive are
transmitting in to the Bus then the next bit should be opposite polarity.
CRC Error: CRC error is like whenever you transmitting message from sender to receiver
both should match same CRC otherwise CRC error will come.
Form Error: Form error is nothing but if there is any format is not correct then it is called
form error.
Q6. Different types of CAN frame?
A. Different types of frames are,
1.Data Frame: Carries information from a transmitter to the receivers
2.Remote Frame: Used to request a data frame
3.Error Frame: Used to indicate error to the entire network control
4.Overload Frame: Used to create an extra delay between frames

Q7. What is bit Stuffing?


A. Whenever 5 bits of same polarity are transmitting in to the communication and the next
bit should be with the opposite polarity.

Q8. What is difference between CANalyzer and CANoe?


A. CANalyzer and CANoe both belongs to the vector family CANalyzer is use to access only
single node and CANoe is use to access multiple node.

Q9.What is CAN speed?


A. CAN speed is like theoretically it is 1 Mbps but in our current project we are using 500
Kbps.

Q10.Why 120 ohms?


A. In order to reduce the noise interference.

UDS(Unified Diagnostic Services) Protocol:


UDS is a diagnostic communication protocol used in electronic control units (ECUs)
within automotive electronics.
UDS protocol is used for diagnostic purpose. There are different kind of service IDs or S-ID.
By using this service ID we do the Diagnostic(means Read and Write the data). They are,
10 – Session Control
11 – ECU Reset
14 – Clear Diagnostic Trouble Code
19 – Read DTC
22 – Read data by Identifier
2E – Write data by Identifier
27 - Security Access
31 - Routine Control
3E - Tester Present
Each service ID have sub functions as shown below,
10- Session Control
10 01 – Default session
10 02 - Programming session
10 03 - Extended session

10 01 Default Session – It means by default ignition is on that state is called Default Session.
10 02 Programming session – It means If any software was to flash into ECU then is called
programming session.
10 03 Extended session – It means every ECU having high security data, Extended session is
used to cross the security level to read the data.

P2 timer means If you send request and for response it will take some time, so that time is
called P2 timer.
P2 max means maximum time which is given for response. Suppose If the response is not
come with in the given time(max 3000 milli sec) then the message will be cancel.

22- Security access


2E – Write data by Identifier – It means it is used to Write the information in ECUs.
11 – ECU reset – In ECUs if we are unable to Read data then we do this reset
11 01 – Hard Reset – it is like Battery reset type
11 02 – Key in/off Reset – means ignition on and ignition off.
11 03 – Soft Reset – it is nothing but a application restart.
19 – Read DTC(Diagnostic Trouble Code) – It read all fault in the ECUs.
19 01 – It tells about how many number of fault in the ECUs.
19 02 – It gives the data of fault in ECUs. It is used to record the DTCs along with the state of
mask.
Every DTC has three bytes. State of mask is extra one bit.
For Example,
19 01
59 01 03
19 02
59 02 BX CD01 AF BX CD02 A3 BX CD03 2F
AF – AF is the state of mask means currently that DTC is still there.
A3 - means DTC is not there but previously it is there, gone to history or other or Fault free
2F – means Healed position (issue rectified)
For Example, see below

19 01
59 01 02
19 02
59 02 B1 089 AF C1100 A3
14 – Clear DTC – used to clearing DTCs
14 FF FF FF – means clear all the DTCs which are in internal fault memory. But after
restarting ignition again the current DTC will appear on screen.
14 B1089 FF - means only the particular DTC will remove.

Negative Response Codes:


10 – General reject
11 – Service not supported - means for example we have S-IDs like 10 , 11 , 14, 19 etc., but
we entered 13 then this NRC will appear.
12 – Sub function not supported - means for example in 10 S-ID there is 10 01 , 10 02 and
10 03 but we write 10 09 then this NRC will appear.
13 – Invalid format – means for example in 10 S-ID there is 10 01 , 10 02 and 10 03 but we
write 10 01 02 like this then it is called invalid format.
22 – Conditions not correct – Generally ECU temperature will be 8 to 16 volts. If you work
on 7 volts then this NRC will appear.
24 – Request sequence error – If the sequence is having an error. for example,
10 01
50 01 after this 10 03 has to enter but if you write 27 01 then this NRC will appear.
27 01
7F 27 24
31 – Request out of range – Variant coding contains 5 bytes of data, suppose we write 6
bytes then this negative response code appear.
33 – Security access denied – If without security access any body read or write S-IDs then
this negative response code will appear.
35 – Invalid key – If the given key is not correct. For example,
27 01
67 01 AB DC 03
27 02 AB DC 04
7F 27 35
36 – Exceeded no. of attempts – When again and again for three times the key entered
invalid. For example,
27 01
67 01 AB DC 03
27 02 AB DC 04 , and again entered this wrong AB DC 05 and again entered AB DC 06
7F 27 36
37 – Request time delay not expired – If there is any delay in request or in fourth time the
key entered correctly or wrong then also this negative response will shown. For example,
27 01
67 01 AB DC 03
27 02 AB DC 03
7F 27 37
-Why +40 is added?
As per UDS protocol 6th bit has to be 1, it is standard.
Suppose for service ID 10,
00010000
For 50
01010000
HIL(Hardware In Loop) Setup: HIL Setup means setting up the testing environment.
-Actually my HIL Setup is here we are calling it as a Body HIL.
-In Body HIL we are connecting to real ECUs one is a Body Control Module and another one
is Instrument Cluster.
-Body HIL consisting of Electronic components like dSPACE Simulator , Break out Box and
TDK lambda.
-dSpace simulator will be having different cards like CAN card, ADC card, DAC card and
Power supply card and
-at the same time Break Out Box will be having different kind of input pin, output pin and
ECUs and
-at the same time TDK lambda is used to regulate the voltage for ECUs,
-the interface for my BCM is like control desk from control desk to dSpace simulator we are
connecting with Ethernet cable and
-from dSpace simulator we will connect to break out box by using D sub Connectors and
-from Break out box will connect to Ecus by using ECU connectors and
-from backside of Breakout box we will connect to load by using load connectors.

BCM Features:
For generating test cases there are different scenarios like function level ,non function level,
boundary value analysis and equivalve testing. For writing test cases first we have to
understand the BCM features completely and after then understand the requirement which
is in .PDF format and then write the test cases in .EXCEL format.
In BCM different kind of features are there, they are
1. Headlamp
1.1. Turn Indicator
1.2. DRL
1.3. Low beam
1.4. High beam
1.5. Cornering Lamp
2. Rear defogger- Rear defogger is a system that removes fog and melts frost from a car’s
rear windshield.

Below are example for requirements for rear defogger,


- Rear defogger has to ON only in Engine ON conditions.
- Battery condition 8 v - 16 v
- waiting time up to 12 min
Below are the Example for Writing different Test cases based on the requirements,
Not only these output signals and also Gear info , clutch info , brake info , accelerator pedal
info like these all signals are checked in Monitoring which is in Control Desk.
3. Power Window
4. Key in Remainder
5. RKE
6. DRVM

You might also like