Jag vet orsakerna till att använda avslutningsmotstånd på en CAN-buss och hur viktigt det är är.
Men varför 120 ohm? Hur kom detta värde upp? Finns det någon specifik anledning att använda 120 ohm?
Kommentarer
- I romerska siffror är CXX 120 så det är vettigt, A och N är odefinierade enligt det schemat så de ersattes med X som ofta används för att markera en okänd (X markerar platsen etc).
- @PeterJ – Rolig =)
Svar
Du måste känna till Överföringslinje Teori för att förstå den djupare fysiken som spelas här. Som sagt, här är översikten på hög nivå:
Hur viktig avslutning är för ditt system bestäms nästan uteslutande av hur lång bussledningarna är. Här bestäms längden i våglängder. Om din buss är kortare än en våglängd över 10, är avslutningen irrelevant (praktiskt taget) eftersom det finns gott om tid för reflektionerna från en impedansmatchning att dö ut.
Längd definierad i våglängder är en konstig enhet först För att konvertera till standardenheter måste du känna till vågens hastighet och dess frekvens. Hastighet är en funktion av mediet det färdas genom och omgivningen kring mediet. Vanligtvis kan detta uppskattas ganska bra genom materialets dielektriska konstant och förutsatt att det fria utrymmet som omger det mediet.
Frekvensen är lite mer intressant. För digitala signaler (som de i CAN) är du bekymrad över den maximala frekvensen i den digitala signalen. Det är ungefärligt ungefärligt med f, max = 1 / (2 * Tr) där Tr är stigningstiden (definierat 30% -60% av den slutliga spänningsnivån, konservativt).
Varför det är 120 är helt enkelt en funktion av designen begränsad av fysisk storlek. Det är inte särskilt viktigt vilket värde de valde inom ett brett intervall (till exempel kunde de ha gått med 300 ohm). Emellertid måste alla enheter i nätverket överensstämma med bussimpedansen, så när CAN-standarden publicerades kan det inte bli mer debatt.
Här ”s en hänvisning till publikationen (tack @MartinThompson).
Kommentarer
- En mer ingående behandling av vad som bestämmer linjeimpedansen (120 ohm i detta fall) för parallella eller tvinnade ledningar finns i ett svar till Anpassad USB-impedansfråga .
Svar
Den typen av CAN-buss är avsedd att implementeras av ett tvinnat par ledningar. Överföringsledningsimpedansen för ospecificerat tvinnat par är inte exakt, men 120 Ω kommer att vara nära för det mesta för de relativt stora ledningarna som vanligtvis används för CAN.
Motstånden har också en annan funktion i CAN. Du kan tänka på CAN som en öppen samlarbuss implementerad som ett differentiellt par. Totalt 60 Ω är den passiva sammankopplingen av CAN-bussen. När ingenting kör bussen är de två linjerna på samma spänning på grund av 60 Ω mellan dem. För att driva bussen till dominerande tillstånd drar en nod linjerna isär, cirka 900 mV vardera, för totalt 1,8 V differentiell signal. Bussen körs aldrig aktivt till det recessiva tillståndet, bara släpp. Det betyder att motståndet mellan linjerna måste vara tillräckligt lågt så att linjerna går tillbaka till viloläge på en bråkdel av en bit tid.
Observera att den faktiska CAN-standarden inte säger något om det fysiska lagret annat än det måste ha dessa dominerande och recessiva stater. Du kan till exempel implementera en CAN-buss som en öppen kollektorledning med en enda slut. Differentialbussen du tänker på används mycket ofta med CAN och är förkroppsligad i busschaufförchips från olika tillverkare, som vanliga Microchip MCP2551.
Kommentarer
- Pedantläge – ISO11898 (vilket verkligen är en CAN-standard 🙂 har delarna 2,3 och 5 som beskriver fysiska lager. del 1 är (som du säger) begränsad till " dominerande och recessiv " – precis som den ursprungliga Bosch-specifikationen var. en.wikipedia.org/wiki/ISO_11898
- ISO11898 del 3 (låg hastighet, feltolerant) anger också att bussen kan falla tillbaka till en-trådsläge i händelse av att en kort detekteras på en av de parade raderna.
Svar
CAN-buss är en differentiell buss. Varje differentiell tråd är en överföringsledning. I grund och botten ska avslutningsmotståndet matcha med Karaktäristisk impedans för överföringsledningen till undvik eftertanke.CAN-buss har en nominell karakteristisk linjeimpedans på 120Ω. På grund av detta använder vi typiskt termineringsmotståndsvärde på 120Ω vid varje ände av bussen.