版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
CANBusControllerAreaNetwork(CAN)wasinitiallycreatedbyGermanautomotivesystemrRobertBoschinthemid-1980sforautomotiveapplicationsasamethodforenablingrobustserialcommunication.Thegoalwastomakeautosmorereliable,safeandfuel-efficientwhiledecreasingwiringharnessweightandcomplexity.Sinceitsinception,theCANprotocolhasgainedwidespreadpopularityinindustrialautomationandautomotive/truckapplications.Othermarketswherenetworkedsolutionscanbringattractivebenefitslikemedicalequipment,testequipmentandmachinesarealsostartingtoutilizethebenefitsofCAN.ThegoalofthisapplicationnoteistoexinsomeofthebasicsofCANandshowthebenefitsofchoosingCANforembeddedsystemsnetworkedapplications.CANMostnetworkapplicationsfollowalayeredapproachtosystemimplementation.Thissystemeticapproachenablessinteroperabilitybetweenproductsfromdifferentmanufacturers.AstandardwascreatedbytheInternationalStandardsOrganization(ISO)asatemtetofollowforthislayeredapproach.ItiscalledtheISOOpenSystemsInterconnection(OSI)NetworkLayeringReferenceModel.TheCANprotocolitselfimplementsmostofthelowertwolayersofthisreferencemodel.ThecommunicationmediumportionofthemodelwaspurposelyleftoutoftheBoschCANspecificationtoenablesystemdesignerstoadaptandoptimizethecommunicationprotocolonmultiplemediaforumflexibility(twistedpair,singlewire,opticallyisolated,RF,IR,etc.).Withthisflexibility,however,comesthepossibilityofinteroperabilityconcerns.Toeasesomeoftheseconcerns,theInternationalStandardsOrganizationandSocietyofAutomotiveEngineers(SAE)havedefinedsomebasedonCANthatincludetheMediaDependentsInterfacedefinitionsuchthatallofthelowertwolayersarespecified.ISO11898isastandardforhigh-speedapplications,ISO11519isastandardforlow-speedapplications,andJ1939(fromSAE)istargetedfortruckandbusapplications.Allthreeoftheseprotocolsspecifya5Vdifferentialelectricalbusasthephysicalinterface.TherestofthelayersoftheISO/OSIprotocolstackarelefttobeimplementedbythesystemsoftwaredeveloper.HigherLayerProtocols(HLPs)aregenerallyusedtoimplementtheupperfivelayersoftheOSIReferenceModel.HLPsareusedStandardizestartupproceduresincludingbitratesDistributeaddressesamongparticipatingnodesortypesofDeterminethestructureofthemessages,Providesystem-levelerrorhandlingroutines.ThisisbynomeansafulllistofthefunctionsHLPsperform;howeveritdoesdescribesomeoftheirbasicfunctionality.CANProtocolCarrierSenseMultipleAccesswithCollisionDetectionTheCANcommunicationprotocolisaCSMA/CDprotocol.TheCSMAstandsforCarrierSenseMultipleAccess.Whatthismeansisthateverynodeonthenetworkmustmonitorthebusforaperiodofnoactivitybeforetryingtosendamessageonthebus(CarrierSense).Also,oncethisperiodofnoactivityoccurs,everynodeonthebushasanequalopportunitytotransmitamessage(MultipleAccess).TheCDstandsforCollisionDetection.Iftwonodesonthenetworkstarttransmittingatthesametime,thenodeswilldetectthe‘collision’andtaketheappropriateaction.InCANprotocol,anondestructivebitwisearbitrationmethodisutilized.Thismeansthatmessagesremainintactafterarbitrationiscompletedevenifcollisionsaredetected.Allofthisarbitrationtakescewithoutcorruptionordelayofthehigherprioritymessage.Thereareacoupleofthingsthatarerequiredtosupportnon-destructivebitwisearbitration.First,logicstatesneedtobedefinedasdominantorrecessive.Second,thetransmittingnodemustmonitorthestateofthebustoseeifthelogicstateitistosendactuallyappearsonthebus.CANdefinealogicbit0asadominantbitandalogicbit1asarecessivebit.Adominantbitstatewillalwayswinarbitrationoverarecessivebitstate,thereforethelowerthevalueintheMessageIdentifier(thefieldusedinthemessagearbitrationprocess),thehigherthepriorityofthemessage.Asanexample,supposetwonodesaretryingtotransmitamessageatthesametime.Eachnodewillmonitorthebustomakesurethebitthatitistryingtosendactuallyappearsonthebus.Thelowerprioritymessagewillatsomepointtrytosendarecessivebitandthemonitoredstateonthebuswillbeadominant.Atthatpointthisnodelosesarbitrationandimmediaystopstransmitting.Thehigherprioritymessagewillcontinueuntilcompletionandthenodethatlostarbitrationwillwaitforthenextperiodofnoactivityonthebusandtrytotransmititsmessageagain.Message-BasedCANprotocolisamessage-basedprotocol,notanaddressbasedprotocol.Thismeansthatmessagesarenottransmittedfromonenodetoanothernodebasedonaddresses.EmbeddedintheCANmessageitselfisthepriorityandthecontentsofthedatabeingtransmitted.Allnodesinthesystemreceiveeverymessagetransmittedonthebus(andwillacknowledgeifthemessagewasproperlyreceived).Itisuptoeachnodeinthesystemtodecidewhetherthemessagereceivedshouldbeimmediaydiscardedorkepttobeprocessed.Asinglemessagecanbedestinedforoneparticularnodetoreceive,ormanynodesbasedonthewaythenetworkandsystemaredesigned.Forexample,anautomotiveairbagsensorcanbeconnectedviaCANtoasafetysystemrouternodeonly.Thisrouternodetakesinothersafetysysteminformationandroutesittoallothernodesonthesafetysystemnetwork.Thenalltheothernodesonthesafetysystemnetworkcanreceivethelatestairbagsensorinformationfromtherouteratthesametime,acknowledgeifthemessagewasreceivedproperly,anddecidewhethertoutilizethisinformationordiscardit.AnotherusefulfeaturebuiltintotheCANprotocolistheabilityforanodetorequestinformationfromothernodes.ThisiscalledaRemoteTransmitThisisdifferentfromtheexampleinthepreviousparagraphbecauseinsteadofwaitingforinformationtobesentbyaparticularnode,thisnodespecificallyrequestsdatatobesenttoit.Oneadditionalbenefitofthismessage-basedprotocolisthatadditionalnodescanbeaddedtothesystemwithoutthenecessitytoreprogramallothernodestorecognizethisaddition.Thisnewnodewillstartreceivingmessagesfromthenetworkand,basedonthemessageID,decidewhethertoprocessordiscardthereceivedinformation.CANMessageFrameCANprotocoldefinefourdifferenttypesofmessages(orFrames).ThefirstandmostcommontypeofframeisaDataFrame.Thisisusedwhenanodetransmitsinformationtoanyorallothernodesinthesystem.SecondisaRemoteFrame,whichisbasicallyaDataFramewiththeRTRbitsettosignifyitisaRemoteTransmitRequest.Theothertwoframetypesareforhandlingerrors.OneiscalledanErrorFrameandoneiscalledanOverloadFrame.ErrorFramesaregeneratedbynodesthatdetectanyoneofthemanyprotocolerrorsdefinedbyCAN.Overloaderrorsaregeneratedbynodesthatrequiremoretimetoprocessmessagesalreadyreceived.DataFramesconsistoffieldsthatprovideadditionalinformationaboutthemessageasdefinedbytheCANspecification.EmbeddedintheDataFramesareArbitrationFields,ControlFields,DataFields,CRCFields,a2-bitAcknowledgeFieldandanEndofFrame.TheArbitrationFieldisusedtoprioritizemessagesonthebus.SincetheCANprotocoldefinesalogical0asthedominantstate,thelowerthenumberinthearbitrationfield,thehigherprioritythemessagehasonthebus.Thearbitrationfieldconsistsof12-bits(11identifierbitsandoneRTRbit)or32-bits(29identifierbits,1-bittodefinethemessageasanextendeddataframe,anSRRbitwhichisunused,andanRTRbit),dependingonwhetherStandardFramesorExtendedFramesarebeingutilized.ThecurrentversionoftheCANspecification,version2.0B,defines29-bitidentifiersandcallsthemExtendedFrames.PreviousversionsoftheCANspecificationdefined11-bitidentifierswhicharecalledStandardFrames.Asdescribedintheprecedingsection,theRemoteTransmitRequest(RTR)isusedbyanodewhenitrequiresinformationtobesenttoitfromanothernode.To anRTR,aRemoteFrameissentwiththeidentifieroftherequiredDataFrame.TheRTRbitintheArbitrationFieldisutilizedtodifferentiatebetweenaRemoteFrameandaDataFrame.IftheRTRbitisrecessive,thenthemessageisaRemoteFrame.IftheRTRbitisdominant,themessageisaDataFrame.TheControlFieldconsistsofsixbits.TheMSBistheIDEbit(signifiesExtendedFrame)whichshouldbedominantforStandardDataFrames.ThisbitdeterminesifthemessageisaStandardorExtendedFrame.InExtendedFrames,thisbitisRB1anditis.ThenextbitisRB0anditisalso.ThefourLSBsaretheDataLengthCode(DLC)bits.TheDataLengthCodebitsdeterminehowmanydatabytesareincludedinthemessage.ItshouldbenotedthataRemoteFramehasnodatafield,regardlessofthevalueoftheDLCbits.TheDataFieldconsistsofthenumberofdatabytesdescribedintheDataLengthCodeoftheControlField.TheCRCFieldconsistsofa15-bitCRCfieldandaCRCdelimiter,andisusedbyreceivingnodestodetermineiftransmissionerrorshaveoccurred.TheAcknowledgeFieldisutilizedtoindicateifthemessagewasreceivedcorrectly.Anynodethathascorrectlyreceivedthemessage,regardlessofwhetherthenodeprocessesordiscardsthedata,putsadominantbitonthebusintheACKSlotbitThelasttwomessagetypesareErrorFramesandOverloadFrames.WhenanodedetectsoneofthemanytypesoferrorsdefinedbytheCANprotocol,anErrorFrameoccurs.OverloadFrameslthenetworkthatthenodesendingtheOverloadFrameisnotreadytoreceiveadditionalmessagesatthistime,orthatintermissionhasbeenviolated.Theseerrorswillbediscussedinmoredetailinthenextsection.Fast,RobustBecauseCANwasinitiallydesignedforuseinautos,aprotocolthatefficientlyhandlederrorswascriticalifitwastogainmarketacceptance.Withreleaseofversion2.0BoftheCANspecification,theumcommunicationratewasincreased8xovertheversion1.0specificationto1Mbit/sec.Atthisrate,eventhemosttime-criticalparameterscanbetransmittedseriallywithoutlatencyconcerns.Inadditiontothis,theCANprotocolhasacomprehensivelistoferrorsitcandetectthatensurestheintegrityofmessages.CANnodeshavetheabilitytodeterminefaultconditionsandtransitiontodifferentmodesbasedontheseverityofproblemsbeingencountered.Theyalsohavetheabilitytodetectshortdisturbancesfrompermanentfailuresandmodifytheirfunctionalityaccordingly.CANnodescantransitionfromfunctioninglikeanormalnode(beingabletotransmitandreceivemessagesnormally),toshuttingdowncompley(bus-off)basedontheseverityoftheerrorsdetected.ThisfeatureiscalledFaultConfinement.NofaultyCANnodeornodeswillbeabletomonopolizeallofthebandwidthonthenetworkbecausefaultswillbeconfinedtothefaultynodesandthesefaultynodeswillshutoffbeforebringingthenetworkdown.ThisisverypowerfulbecauseFaultConfinementguaranteesbandwidthforcriticalsysteminformation.TheCANprotocolwasoptimizedforsystemsthatneedtotransmitandreceiverelativelysmallamountsofinformation(ascomparedtoEthernetorUSB,whicharedesignedtomovemuchlargerblocksofdata)reliablytoanyorallothernodesonthenetwork.CSMA/CDallowseverynodetohaveanequalchancetogainaccesstothebus,andallowsforsmoothhandlingofcollisions.Sincetheprotocolismessage-based,notaddressbased,allmessagesonthebusreceiveeverymessageandacknowledgeeverymessage,regardlessofwhetherinneedsthedataornot.Thisallowsthebustooperateinnode-to-nodeormulticastmessagingformatswithouthavingtosenddifferenttypesofmessages.Fast,robustmessagetransmissionwithfaultconfinementisalsoabigplusforCANbecausefaultynodeswillautomaticallydropoffthebusnotallowinganyonenodefrombringinganetworkdown.Thiseffectivelyguaranteesthatbandwidthwillalwaysbeavailableforcritic
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年簡化版居家養(yǎng)老照護(hù)合同
- 2024甲方委托乙方可再生能源項(xiàng)目的建設(shè)與運(yùn)營合同
- 2024年重點(diǎn)中學(xué)校長任用合同范本3篇
- 2025年度家禽養(yǎng)殖廢棄物處理設(shè)施運(yùn)營管理買賣合同書3篇
- 2025年度財務(wù)會計(jì)軟件定制開發(fā)與授權(quán)使用合同3篇
- 2024年度商鋪?zhàn)赓U合同提前解除及清退協(xié)議3篇
- 2025年70米煙囪拆除工程風(fēng)險評估與安全防護(hù)設(shè)計(jì)合同3篇
- 2024年經(jīng)銷商雙方合作協(xié)議版B版
- 2024年項(xiàng)目管理服務(wù)協(xié)議:工程監(jiān)理與咨詢服務(wù)
- 2024年財務(wù)風(fēng)險評估與管理合同
- 成品煙道安裝施工方案
- 醫(yī)療免責(zé)協(xié)議書范本
- 耳部銅砭刮痧技術(shù)評分標(biāo)準(zhǔn)
- 2022年初中歷史課程標(biāo)準(zhǔn)電子版
- 數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編
- 因公出國教育談話記錄
- 湖北世界最大跨度三塔全懸吊懸索長江大橋建設(shè)移交B投標(biāo)文件
- YC/T 306-2009煙草物流設(shè)備條煙分揀設(shè)備
- JJF 1616-2017脈沖電流法局部放電測試儀校準(zhǔn)規(guī)范
- GB/T 6671-2001熱塑性塑料管材縱向回縮率的測定
- GB/T 2440-2017尿素
評論
0/150
提交評論