Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Points in selecting the right protocol...

Status
Not open for further replies.

ChansAlive

Member level 3
Joined
Jul 8, 2013
Messages
55
Helped
2
Reputation
4
Reaction score
2
Trophy points
8
Activity points
449
Hi,
I need to communicate using either CAN, LIN or K-Line.
Can someone help me to identify the points to compare between these protocols which will help in choosing the right protocol? For me baudrate is not a big factor... Can someone suggest some other points and its importance in a scale of 10
Hope someone could help me...
 

Hi there,

I have hands on experience in CAN protocol and it is good to use in Industrial and Automation systems. Based on your area of application, you can choose your communication protocol.

Best regards,
 
@Jinzpaul4u,
Thanx for the reply,
CAN protocol implementation is little costly considering the components cost. It is fast too.
But I don't want that much speed. My idea is to establish a communication with ECU of a vehicle and my device. It has to take few information from the ECU. It is not acting as a tester. I just want to select the right protocol which will be simpler and cost effective. So I thought of comparing the pros and cons of these protocols to arrive at a conclusion. But I didn't get the points on which I have to make a comparison and its advantage considering the project. I can make a one to one communication with the ECU with no other nodes. But please advice me on the right protocol with comparison with others...
 

Hello there,

I am not fully agree with you. who told to you CAN is expensive?? Inbuilt CAN control based Microcontrollers are available in market(best example is dsPIC33F series) and it is very reilable protocol too. Please execuse me even I don't have knowledge in LIN and K-line protocol.

Best regards,
 

Hi,
I need to communicate using either CAN, LIN or K-Line.
Can someone help me to identify the points to compare between these protocols which will help in choosing the right protocol? For me baudrate is not a big factor... Can someone suggest some other points and its importance in a scale of 10
Hope someone could help me...

First we have two things on start.

You making new car as manufacturer or you want something from some existing commercial car ?

If you making your car model you can use what you want, and when you want to communicate with existing car ECU/Bus you need to use that used bus protocol or to use protocol convertor.



CAN Bus
CAN Bus is the dominant protocol for networking electronics in vehicles. It features a bit rate up to 1 Mbit and offers simple networking of microcontrollers with the help of dedicated CAN bus silicon called a CAN Controller. The data transfer message of CAN is the data frame. This data frame is allowed to have a longer ID and is then called an extended data frame. Used in some applications but not in automotive is the remote frame. The remote frame allows a node to request a particular CAN ID. CAN is very robust. This means it can not only detect many errors but can take action such as automatic transmission or node shut down. CAN uses the bit stream to resyncronize the receivers to the transmitter. In order for this to work with specific bit sequences CAN must use bit stuffing. Bit stuffing makes decoding a CAN waveform on a traditional oscilloscope difficult. CAN is a data link layer. To signal CAN electrically there are three common physical layers in use. In some applications where CAN is used FlexRay or LIN may provide advantages.

Bosch CAN v2.0 Specification
http://esd.cs.ucr.edu/webres/can20.pdf

Can data frame:
CAN_Frame.png



LIN Bus
LIN Bus is a low speed network that focuses on ulta low cost low speed (5-20 Kbits) applications. It is UART based and provides time deterministic messaging via LIN Frames. The LIN Bus uses a master node to control all communications. Unlike any other protocol, the LIN protocol frame can be composed of data from two separate nodes. The LIN master node supplies the first half of the message consisting of the Break, Sync field and ID. The rest of the frame is filled in by either the master node or slave node depending on the ID. There are different errors that can occur on a LIN bus including problems with break, sync field, checksum, timing and the unresponsive nodes. LIN's advantage over CAN and FlexRay is primarily cost. Time determinism is also a major advantage over CAN bus. LIN's relative slowness is the primary disadvantage.

LIN data frame:
typical-linframe.jpg



FlexRay, CAN Bus, and LIN bus are very different protocols and fit very different applications. Therefore, it is very unlikely that any of these protocols will replace the other. For example, the FlexRay protocol was designed for specific time deterministic applications with fault tolerance and may replace CAN in applications such as safety, chassis, and powertrain but not in body or diagnostics.



FlexRay is faster than the CAN bus. Here we can see a 32 byte FlexRay 10 MBit frame taking just a fraction of a 500Kbits CAN frame:

can_vs_flexray_small.jpg


http://en.wikipedia.org/wiki/FlexRay

http://www.ni.com/white-paper/3352/en/



Best regards,
Peter

:wink:
 
@Jinzpaul4u
Hi thanks for the reply...
I'm not sure about it. Because even if there is a CAN interface present in the controller, I don't know how much fault tolerant the device will be towards short to Vbat or ground. That is why I'm preferring a CAN transceiver too

@tpetar
Hai thanx for your reply. It is really very helpful.
Here I'm having the privilage to configure the ECU too.
Can anyone please provide some info about K-Line(KWP 2000), Transcever model etc
 

@tpetar
Thanks for the post... It was very useful...

The information provided are very useful in understanding the protocol in an independent sense. But can anyone provide me some comparison table? I need the points on which we will compare between these protocols. If it is specific to an application, my project details include a communication interface to get few information(3 byte) every 10ms(min) from ECU. My board has a micro-controller dsPIC33F and require a transceiver for better fault tolerance.(still I couldn't find any transceiver for K-Line). Hope everyone understood my question...
 

@tpetar
It is a wonderful link, most of the information I was searching is present there. Thanks very much... :)
 

Hi @tpeatr Thanx again
In that pdf, they compared mainly about the electrical specification between K-Line and LIN
Can someone please tell me some comparison points between three protocols like cost of implementation(microcontroller + Transceiver), simplicity, type of comm etc... I mean general description which will define the pros and cons of a protocol relative to others. I already explained my project requirement. Hope you will read that too to get proper understanding of the requirement...

- - - Updated - - -

Hi everyone,
This is what I was looking for...
<http://www.freescale.com/files/training_pdf/20451_BUS_COMM_WBT.pdf>
Thanks everyone for their wonderful support...
I welcome if you have any more solutions. Thanking all...

Regards
Athul M
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top