Hvað gerist ef tveir hnút-auðkenni eru þau sömu?

Apr 04, 2018Skildu eftir skilaboð

Hvað gerist ef tveir hnút-auðkenni eru þau sömu?




CAN-strætókerfi leyfa ekki tveimur hnútum að hafa sömu auðkenni hluti í grundvallaratriðum, en hvað gerist ef tvö hnút-ID hluti eru þau sömu?

Fyrir tilraunina verðum við að hafa skýra skilning á uppbyggingu CAN skilaboðanna og meginreglunum um gerðardóm.


Fyrst, CAN skilaboð uppbyggingu

Mest notaður CAN-strætó net staðall er V2.0 útgáfa. Þessi staðall er frekar skipt í A og B hluta. Helstu munurinn er kennitími lengd í gerðardómi. Meðal þeirra CAN2.0A (staðall ramma) er 11 bita ID, CAN2.0B (expand frame) er 29 bita ID. Tafla 1 hér að neðan sýnir uppbyggingu CAN skilaboðanna:

Tafla 1 CAN skilaboð uppbyggingu

Phase Name Phase lengd / bita Lýsing
SOF 1 þýðir gögn áfanga byrja og gera upp með einum ríkjandi hluti
Abtrition Phase Standard ramma 12 Gefur til kynna forgang rammans, fyllt upp með 11 auðkenni og 1 RTR
framlengdur rammi 32 Gefur til kynna forgang rammans, fyllt upp með 29 kennitölum, 1 bita SRR, IDE framlengdur og RTR
Stjórnunarstigi 6 merkir hópkóðann og áskilinn hluti af gagnalengd gagnahlutans
Gagnafasa 0 ~ 8 gögn innihald, stjórna áfanga stjórna gögnum lengd
CRC 16 athugaðu rammaflutninginn erro, frá SOF til gagnasafns, allt innihald, nema fylla bita
ACK 2 önnur hnútur staðfestir þessa ramma að hann berist rétt
Ramma lok 7 þýðir rammahliðin


Í öðru lagi, reglan um gerðardómsmeðferð

CAN-gerðardómsúrskurður byggist á "línu og reglu", eins og sýnt er á mynd 1. Þegar senditæki sendir frá sér merki á mismunandi stigum á sama tíma, er yfirgnæmisstigið alltaf undir ríkjandi stigi. Meðan skilaboðin eru send, mun CAN stjórnandi fylgjast með hvort strætósstaða sé sú sama og sá sem sendur er af sjálfu sér. Ef ósamræmi á sér stað í kennitölu mun gerðardómur eiga sér stað. Ef það gerist á öðrum sviðum, verður samsvarandi villa í gangi.

Eftirfarandi er lykilatriði. Hvað ef tveir hnútskírteinisþættirnir eru þau sömu? Við byrjuðum á tilrauninni með tveimur CAN kortum og einum CANScope. CAN kortið hermir CAN staðlaðan hnút til að senda og taka á móti skilaboðum og CANScope gerir samskiptatölvunina, eins og sýnt er á mynd 2.

                                                           

1.jpg

Mynd 2


Í þriðja lagi, tilraun einn "The ID hluti er það sama en gögnin eru mismunandi"

A CAN kort er notað til að senda CAN ramma með ID 000H gögn til 01020304050607H og annað CAN kort til að senda CAN ramma með 000H gögn til 02020304050607H. Gögnin sem CANScope hlustar á er sýnd á mynd 3. Það má sjá að það eru margar gagnafyllingarvillur í gagnasvæðinu.


2.jpg

Mynd 3 Gögn sviði fylla erro

Af hverju er þetta svo? Við fáum fyrst bylgjulögin sem svara til tveggja skilaboða um sendibúnað, eins og sýnt er á mynd 4. Þar sem tveir pinna skilaboðin eru staðal gagnagrind og hver ramma inniheldur 8 bæti af gögnum eru bylgjulögin sem samsvara tveimur ramma pakka nákvæmlega það sama í ID hluti, RTR, IDE, R0 og DLC hluti. Því er hlutverk gerðardóms árangurslaus og báðir hnúður telja sig hafa forgang og halda áfram að senda gögn.

3.jpg

Nú leggjum við áherslu á gagnasniðið, fyrstu bæjargögnin eru þau sömu, eru 00H; önnur bata gögn eru mismunandi, hver um sig 01H, 02H. Örvarnar á mynd 5 gefa til kynna að rökfræði samsvarandi bita er 0 og 1 í sömu röð. Fyrr nefndum við að CAN-hnútið muni uppgötva hvort strætóstigið sé það sama og það stig sem það sendi þegar skilaboðin voru send. Ef ósamræmi á sér stað á ekki gerðardómi, þá er samsvarandi villa í gangi, þannig að ef tveir rammarnar eru sendar í strætó á sama tíma þarf að gera hluti villur. Vegna þess að bitur sendingarvillan veldur því að knúinn sendi 6 ríkjandi bitar sem brjóta í bága við áfyllingarregluna (virka villan eyðileggur rammagögnin), þá er fylla villuskilyrði gagnasviðs, eins og sýnt er á myndinni. 3.


4.jpg

Mynd 5 Gagnasvið átök


Í fjórða lagi, reyndu tvö "sömu gögn með sama auðkenni"

Á sama tíma, notaðu tvö CAN kort til að senda CAN ramma, þar sem auðkenni er 000H gögn til 01020304050607H og CANScope fylgist með samskiptum. Fyrst af öllu, athugum við ekki valkostinn "strætisviðbrögð" til að gera CANScope virka í aðeins hlustunarham. Tilraunarniðurstöðurnar eru sýndar á mynd 6 og svörunin er á röngum sniði.

5.jpg

Mynd 6


Af hverju gerist þetta? Hnúturinn sem sendir skilaboðin sendir tvær recessive bits í ACK hluti. Ef ríkjandi stigi er borið á fyrsta hlutanum er ramma talið rétt tekið. Vegna þess að tveir gerðarmennirnir telja að þeir hafi fengið gerðardómsrétt þegar þeir eru með sömu gerðardómsþætti, bíða þeir eftir svari í ACK-hluti en aðeins eru tveir hnútar í netinu. Því er ekki hægt að taka við neinum svörum í ACK-flokki og svörun við svörun svara. Einfaldlega talað er þetta ástand svipað því að aðeins einn hnútur í strætó mun ekki geta sent gögn. Mynd 7 sýnir viðmiðunarbylgjuformið þegar ekkert svar er í ACK-hlutanum.

6.jpg

Mynd 7 ACK Svara


Við athugum strætósvarið og byrjaðu tilraunina aftur (nú eru 3 hnútar í strætó). Á þessum tíma, eins og sýnt er á myndum 8, strætó gögn eru send og berast venjulega.

7.jpg

Mynd 8 Byrja BUS Svara


Samantekt: Þegar tveir hnútar senda pakka með sömu auðkenni og gögnum á sama tíma, verður gagnafylling villa. Þegar tveir hnútar senda pakka með sömu auðkenni og sömu gögn, kemur engin villa upp ef aðrir hnútar svara. Aðrar hnútar brugðust við svörun. Þess vegna ættum við að forðast sömu aðstæður í kennitölu við hönnun CAN-rútu.


Hringdu í okkur

whatsapp

Sími

Tölvupóstur

inquiry