版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第4章CAN現(xiàn)場總線與CANopen早在20世紀80年代初,德國的BOSCH公司就提出了用CAN(ControllerAreaNetwork)控制器局域網(wǎng)絡(luò)來解決汽車內(nèi)部的復(fù)雜硬信號接線。目前,其應(yīng)用范圍已不再局限于汽車工業(yè),而向過程控制、紡織機械、農(nóng)用機械、機器人、數(shù)控機床、醫(yī)療器械及傳感器等領(lǐng)域發(fā)展。CAN總線以其獨特的設(shè)計,低成本、高可靠性、實時性、抗干擾能力強等特點得到了廣泛的應(yīng)用。CAN具有如下特點:CAN為多主方式工作,網(wǎng)絡(luò)上任一節(jié)點均可以在任意時刻主動地向網(wǎng)絡(luò)上其他節(jié)點發(fā)送信息,而不分主從,通信方式靈活,且無需站地址等節(jié)點信息。CAN網(wǎng)絡(luò)上的節(jié)點信息分成不同的優(yōu)先級,可滿足不同的實時要求,高優(yōu)先級的數(shù)據(jù)最多可在134μs內(nèi)得到傳輸。CAN采用非破壞性總線仲裁技術(shù)。CAN只需通過報文濾波即可實現(xiàn)點對點、一點對多點及全
局廣播等幾種方式傳送接收數(shù)據(jù),無需專門的“調(diào)度”。CAN的直接通信距離最遠可達10km(速率5kbps以下);通信速率最高可達1Mbps(此時通信距離最長為40m)。CAN上的節(jié)點數(shù)主要取決于總線驅(qū)動電路,目前可達110個;報文標識符可達2032種(CAN2.0A),而擴展標準(CAN2.0B)的報文標識符幾乎不受限制。采用短幀結(jié)構(gòu),傳輸時間短,受干擾概率低,具有極好的檢錯效果。CAN的每幀信息都有CRC校驗及其他檢錯措施,保證了數(shù)據(jù)出錯率極低。CAN的通信介質(zhì)可為雙絞線、同軸電纜或光纖,選擇靈活。CAN節(jié)點在錯誤嚴重的情況下具有自動關(guān)閉輸出功能,以使總線上其他節(jié)點的操作不受影響。4.1CAN的技術(shù)規(guī)范控制器局域網(wǎng)(CAN)為串行通信協(xié)議,能有效地支持具有很高安全等級的分布實時控制。CAN的應(yīng)用范圍很廣,從高速的網(wǎng)絡(luò)到低價位的多路接線都可以使用CAN。在汽車電子行業(yè)里,使用CAN連接發(fā)動機控制單元、傳感器、防剎車系統(tǒng)等等,其傳輸速度可達1Mbps。同時,可以將CAN安裝在卡車本體的電子控制系統(tǒng)里,諸如車燈組、電氣車窗等等,用以代替接線配線裝置。制訂技術(shù)規(guī)范的目的是為了在任何兩個CAN儀器之間建立兼容性。4.1.1CAN的基本概念1.報文總線上的信息以不同格式的報文發(fā)送,但長度有限制。當總線開放時,任何連接的單元均可開始發(fā)送一個新報文。2.信息路由在CAN系統(tǒng)中,一個CAN節(jié)點不使用有關(guān)系統(tǒng)結(jié)構(gòu)的任何信息(如站地址)。這時包含如下重要概念:系統(tǒng)靈活性——節(jié)點可在不要求所有節(jié)點及其應(yīng)用層改變?nèi)魏诬浖蛴布那闆r下,被接于CAN網(wǎng)絡(luò)。報文通信——一個報文的內(nèi)容由其標識符ID命名。成組——由于采用了報文濾波,所有節(jié)點均可接收報文,并同時被相同的報文激活。數(shù)據(jù)相容性——在CAN網(wǎng)絡(luò)中,可以確保報文同時被所有節(jié)點或者沒有節(jié)點接收,因此,系統(tǒng)的數(shù)據(jù)相容性是借助于成組和出錯處理達到的。3.位速率CAN的數(shù)據(jù)傳輸率在不同的系統(tǒng)中是不同的,而在一個給定的系統(tǒng)中,此速度是惟一的,并且是固定的。4.優(yōu)先權(quán)在總線訪問期間,標識符定義了一個報文靜態(tài)的優(yōu)先權(quán)。5.遠程數(shù)據(jù)請求通過發(fā)送一個遠程幀,需要數(shù)據(jù)的節(jié)點可以請求另一個節(jié)點發(fā)送一個相應(yīng)的數(shù)據(jù)幀,該數(shù)據(jù)幀與對應(yīng)的遠程幀以相同標識符ID命名。6.多主站當總線開放時,任何單元均可開始發(fā)送報文,發(fā)送具有最高優(yōu)先權(quán)報文的單元,以贏得總線訪問權(quán)。7.仲裁當總線開放時,任何單元均可開始發(fā)送報文,若同時有兩個或更多的單元開始發(fā)送,總線訪問沖突運用逐位仲裁規(guī)則,借助標識符ID解決,這種仲裁規(guī)則可以使信息和時間均無損失。8.故障界定CAN節(jié)點有能力識別永久性故障和短暫擾動,可自動關(guān)閉故障節(jié)點。9.連接CAN串行通信鏈路是一條眾多單元均可被連接的總線。理論上,單元數(shù)目是無限的,實際上,單元總數(shù)受限于延遲時間和(或)總線的電氣負載。10.單通道由單一進行雙向位傳送的通道組成的總線,借助數(shù)據(jù)重同步實現(xiàn)信息傳輸。在CAN技術(shù)規(guī)范中,實現(xiàn)這種通道的方法不是固定的,例如,可以是單線(加接地線)、兩條差分連線、光纖等。11.總線數(shù)值表示總線上具有兩種互補邏輯數(shù)值:顯性電平和隱性電平。在顯性位與隱性位同時發(fā)送期間,總線上數(shù)值將是顯性位。例如,在總線的“線與”操作情況下,顯性位由邏輯“0”表示,隱性位由邏輯“1”表示。在CAN技術(shù)規(guī)范中未給出表示這種邏輯電平的物理狀態(tài)(如電壓、光、電磁波等)。12.應(yīng)答所有接收器均對接收報文的相容性進行檢查,應(yīng)答一個相容報文,并標注一個不相容報文。4.1.2CAN的分層結(jié)構(gòu)CAN遵從OSI模型,按照OSI標準模型,CAN結(jié)構(gòu)劃分為兩層:數(shù)據(jù)鏈路層和物理層。CAN的分層結(jié)構(gòu)和功能如圖4-1所示。圖4-1CAN的分層結(jié)構(gòu)和功能LLC子層的主要功能是:為數(shù)據(jù)傳送和遠程數(shù)據(jù)請求提供服務(wù),確認由LLC子層接收的報文實際已被接收,并為恢復(fù)管理和通知超載提供信息。在定義目標處理時,存在許多靈活性。MAC子層的功能主要是:傳送規(guī)則,亦即控制幀結(jié)構(gòu)、執(zhí)行仲裁、錯誤檢測、出錯標定和故障界定。4.1.3報文傳送和幀結(jié)構(gòu)在進行數(shù)據(jù)傳送時,發(fā)出報文的單元稱為該報文的發(fā)送器。該單元在總線空閑或丟失仲裁前恒為發(fā)送器。如果一個單元不是報文發(fā)送器,并且總線不處于空閑狀態(tài),則該單元為接收器。構(gòu)成一幀的幀起始、仲裁場、控制場、數(shù)據(jù)場和CRC序列均借助位填充規(guī)則進行編碼。當發(fā)送器在發(fā)送的位流中檢測到5位連續(xù)的相同數(shù)值時,將自動地在實際發(fā)送的位流中插入一個補碼位。數(shù)據(jù)幀和遠程幀的其余位場采用固定格式,不進行填充,出錯幀和超載幀同樣是固定格式,也不進行位填充。位填充方法如圖4-2所示。
圖4-2位填充1.數(shù)據(jù)幀數(shù)據(jù)幀由7個不同的位場組成,即幀起始、仲裁場、控制場、數(shù)據(jù)場、CRC場、應(yīng)答場和幀結(jié)束。數(shù)據(jù)場長度可為0。CAN2.0A數(shù)據(jù)幀的組成如圖4-3所示。圖4-3數(shù)據(jù)幀的組成標準格式和擴展格式的數(shù)據(jù)幀結(jié)構(gòu)如圖4-4所示。
圖4-4標準格式和擴展格式數(shù)據(jù)幀2.遠程幀激活為數(shù)據(jù)接收器的站可以借助于傳送一個遠程幀初始化各自源節(jié)點數(shù)據(jù)的發(fā)送。遠程幀由6個不同分位場組成:幀起始、仲裁場、控制場、CRC場、應(yīng)答場和幀結(jié)束。同數(shù)據(jù)幀相反,遠程幀的RTR位是隱性位。遠程幀不存在數(shù)據(jù)場。DLC的數(shù)據(jù)值是沒有意義的,它可以是0~8中的任何數(shù)值。遠程幀的組成如圖4-5所示。
圖4-5遠程幀組成3.出錯幀出錯幀由兩個不同場組成,第一個場由來自各幀的錯誤標志疊加得到,后隨的第二個場是出錯界定符。出錯幀的組成如圖4-6所示。圖4-6出錯幀組成4.超載幀超載幀包括兩個位場:超載標志和超載界定符,如圖4-7所示。5.幀間空間幀間空間包括間歇場和總線空閑場。
圖4-7超載幀組成4.1.5位定時與同步的基本概念1.正常位速率為在非重同步情況下,借助理想發(fā)送器每秒發(fā)出的位數(shù)。2.正常位時間即正常位速率的倒數(shù)。正常位時間可分為幾個互不重疊的時間段。這些時間段包括:同步段(SYNC-SEG)、傳播段(PROP-SEG)、相位緩沖段1(PHASE-SEG1)和相位緩沖段2(PHASE-SEG2),如圖4-8所示。圖4-8位時間的各組成部分3.同步段用于同步總線上的各個節(jié)點,為了處于此段內(nèi)需要有一個跳變沿。4.傳播段用于補償網(wǎng)絡(luò)內(nèi)的傳輸延遲時間,它是信號在總線上傳播時間、輸入比較器延遲和驅(qū)動器延遲之和的兩倍。5.相位緩沖段1和相位緩沖段2用于補償沿的相位誤差,通過重同步,這兩個時間段可被延長或縮短。6.采樣點它是這樣一個時點,在此點上,仲裁電平被讀,并被理解為各位的數(shù)值,位于相位緩沖段1的終點。7.信息處理時間由采樣點開始,保留用于計算子序列位電平的時間。8.時間份額由振蕩器周期派生出的一個固定時間單元。9.硬同步硬同步后,內(nèi)部位時間從SYNC-SEG重新開始,因而,硬同步強迫由于硬同步引起的沿處于重新開始的位時間同步段之內(nèi)。10.重同步跳轉(zhuǎn)寬度由于重同步的結(jié)果,PHASE-SEG1可被延長或PHASE-SEG2可被縮短。這兩個相位緩沖段的延長或縮短的總和上限由重同步跳轉(zhuǎn)寬度給定。11.沿相位誤差沿相位誤差由沿相對于SYNC-SEG的位置給定,以時間份額度量。12.重同步當引起重同步沿的相位誤差小于或等于重同步跳轉(zhuǎn)寬度編程值時,重同步的作用與硬同步相同。當相位誤差大于重同步跳轉(zhuǎn)寬度且相位誤差為正時,則PHASE-SEG1延長總數(shù)為重同步跳轉(zhuǎn)寬度。當相位誤差大于重同步跳轉(zhuǎn)寬度且相位誤差為負時,則PHASE-SEG2縮短總數(shù)為重同步跳轉(zhuǎn)寬度。4.1.6CAN總線的位數(shù)值表示與通信距離CAN總線上用“顯性”(Dominant)和“隱性”(Recessive)兩個互補的邏輯值表示“0”和“1”。當總線上出現(xiàn)同時發(fā)送顯性和隱性位時,其結(jié)果是總線數(shù)值為顯性(即“0”與“1”的結(jié)果為“0”)。如圖4-9所示。圖4-9總線位的數(shù)值表示CAN總線上任意兩個節(jié)點之間的最大傳輸距離與其位速率有關(guān),表4-1列舉了相關(guān)的數(shù)據(jù)。這里的最大通信距離是指在同一條總線上兩個節(jié)點之間的距離。4.2CAN通信控制器SJA1000SJA1000是一種獨立控制器,用于汽車和一般工業(yè)環(huán)境中的局域網(wǎng)絡(luò)控制。它是PHILIPS公司的PCA82C200CAN控制器(BasicCAN)的替代產(chǎn)品。而且,它增加了一種新的工作模式(PeliCAN),這種模式支持具有很多新特點的CAN2.0B協(xié)議。4.2.1SJA1000內(nèi)部結(jié)構(gòu)SJA1000的內(nèi)部結(jié)構(gòu)如圖4-10所示。
圖4-10總線位的數(shù)值表示SJA1000CAN控制器主要由以下幾部分構(gòu)成。1.接口管理邏輯(IML)接口管理邏輯解釋來自CPU的命令,控制CAN寄存器的尋址,向主控制器提供中斷信息和狀態(tài)信息。2.發(fā)送緩沖器(TXB)發(fā)送緩沖器是CPU和BSP(位流處理器)之間的接口,能夠存儲發(fā)送到CAN網(wǎng)絡(luò)上的完整報文。緩沖器長13個字節(jié),由CPU寫入,BSP讀出。3.接收緩沖器(RXB,RXFIFO)接收緩沖器是接收過濾器和CPU之間的接口,用來接收CAN總線上的報文,并儲存接收到的報文。接收緩沖器(RXB,13B)作為接收FIFO(RXFIFO,64B)的一個窗口,可被CPU訪問。CPU在此FIFO的支持下,可以在處理報文的時候接收其他報文。4.接收過濾器(ACF)接收過濾器把它其中的數(shù)據(jù)和接收的標識符相比較,以決定是否接收報文。在純粹的接收測試中,所有的報文都保存在RXFIFO中。5.位流處理器(BSP)位流處理器是一個在發(fā)送緩沖器、RXFIFO和CAN總線之間控制數(shù)據(jù)流的序列發(fā)生器。它還執(zhí)行錯誤檢測、仲裁、總線填充和錯誤處理。6.位時序邏輯(BTL)位時序邏輯監(jiān)視串行CAN總線,并處理與總線有關(guān)的位定時。在報文開始,由隱性到顯性的變換同步CAN總線上的位流(硬同步),接收報文時再次同步下一次傳送(軟同步)。BTL還提供了可編程的時間段來補償傳播延遲時間、相位轉(zhuǎn)換(例如,由于振蕩漂移)和定義采樣點和每一位的采樣次數(shù)。7.錯誤管理邏輯(EML)EML負責(zé)傳送層中調(diào)制器的錯誤界定。它接收BSP的出錯報告,并將錯誤統(tǒng)計數(shù)字通知BSP和IML。4.2.2SJA1000引腳介紹SJA1000為28引腳DIP和SO封裝,引腳如圖4-11所示。圖4-11SJA1000引腳圖4.2.3SJA1000應(yīng)用說明SJA1000在軟件和引腳上都是與它的前一款——PCA82C200獨立控制器兼容的。在此基礎(chǔ)上它增加了很多新的功能。為了實現(xiàn)軟件兼容,SJA1000增加修改了兩種模式:BasicCAN模式:PCA82C200兼容模式。PeliCAN模式:擴展特性。工作模式通過時鐘分頻寄存器中的CAN模式位來選擇。復(fù)位默認模式是BasicCAN模式。1.與PCA82C200兼容性在BasicCAN模式中,SJA1000模仿PCA82C200獨立控制器所有已知的寄存器。2.BasicCAN和PeliCAN模式的區(qū)別在PeliCAN模式下,SJA1000有一個含很多新功能的重組寄存器。SJA1000包含了設(shè)計在PCA82C200中的所有位及一些新功能位,PeliCAN模式支持CAN2.0B協(xié)議規(guī)定的所有功能(29位標識符)。4.2.4BasicCAN功能說明1.BasicCAN地址分配SJA1000對微控制器而言是內(nèi)存管理的I/O器件。兩器件的獨立操作是通過象RAM一樣的片內(nèi)寄存器修正來實現(xiàn)的。SJA1000的地址區(qū)包括控制段和報文緩沖器。控制段在初始化加載時,是可被編程來配置通信參數(shù)的(如位定時等)。微控制器也是通過這個段來控制CAN總線上的通信的。2.控制段(1)控制寄存器(CR)控制寄存器的內(nèi)容是用于改變CAN控制器的狀態(tài)??刂萍拇嫫鞲魑坏墓δ苋绫?-2所示。(2)命令寄存器(CMR)命令位初始化SJA1000傳輸層上的動作。命令寄存器各位的功能如表4-3所示。(3)狀態(tài)寄存器(SR)狀態(tài)寄存器的內(nèi)容反映了SJA1000的狀態(tài)。狀態(tài)寄存器對微控制器來說是只讀存儲器,各位的功能如表4-4所示。(4)中斷寄存器(IR)中斷寄存器允許識別中斷源。各位的功能如表4-5所示。(5)驗收代碼寄存器(ACR)復(fù)位請求位被置高(當前)時,這個寄存器是可以訪問(讀/寫)的。如果一條報文通過了接收過濾器的測試而且接收緩沖器有空間,那么描述符和數(shù)據(jù)將被分別順次寫入RXFIFO。當報文被正確的接收完畢,則有:接收狀態(tài)位置高(滿)接收中斷使能位置高(使能),接收中斷置高(產(chǎn)生中斷)驗收代碼位(AC.7~AC.0)和報文標識符的高8位(ID.10~ID.3)必須相等,或者驗收屏蔽位(AM.7~AM.0)的所有位為1。即如果滿足以下方程的描述,則予以接收。[(ID.10~ID.3)≡(AC.7~AC.0)]∨(AM.7~AM.0)≡11111111(6)驗收屏蔽寄存器(AMR)如果復(fù)位請求位置高(當前),這個寄存器可以被訪問(讀/寫)。驗收屏蔽寄存器定義驗收代碼寄存器的哪些位對接收過濾器是“相關(guān)的”或“無關(guān)的”(即可為任意值)。當AM.i=0時,是“相關(guān)的”;當AM.i=1時,是“無關(guān)的”(i=0,1,…,7)。3.發(fā)送緩沖區(qū)發(fā)送緩沖區(qū)的全部內(nèi)容如表4-6所示。4.接收緩沖區(qū)接收緩沖區(qū)的全部列表和發(fā)送緩沖區(qū)類似。接收緩沖區(qū)是RXFIFO中可訪問的部分,位于CAN地址的20~29之間。4.2.5PeliCAN功能說明CAN控制器的內(nèi)部寄存器對CPU來說是內(nèi)部在片存儲器。因為CAN控制器可以工作于不同模式(操作/復(fù)位),所以必須要區(qū)分兩種不同內(nèi)部地址的定義。從CAN地址32起所有的內(nèi)部RAM(80字節(jié))被映像為CPU的接口。4.2.6BasicCAN和PeliCAN的公用寄存器1.總線時序寄存器0總線時序寄存器0(BTR0)如表4-7所示。(1)波特率預(yù)置器位域位域BRP使得CAN系統(tǒng)時鐘的周期tSCL是可編程的,而tSCL決定了各自的位定時。CAN系統(tǒng)時鐘由如下公式計算:tSCL=2tCLK×(32×BRP.5+16×BRP.4+8×BRP.3+4×BRP.2+2×BRP.1+BRP.0+1)
式中:tCLK=XTAL的振蕩周期=1/fXTAL(2)同步跳轉(zhuǎn)寬度位域為了補償在不同總線控制器的時鐘振蕩器之間的相位漂移,任何總線控制器必須在當前傳送的任一相關(guān)信號邊沿重新同步。同步跳轉(zhuǎn)寬度tSJW定義了一個位周期可以被一次重新同步縮短或延長的時鐘周期的最大數(shù)目,它與位域SJW的關(guān)系是:tSJW=tSCL×(2×SJW.1+SJW.0+1)2.總線時序寄存器1總線時序寄存器1(BTR1)如表4-8所示。(1)采樣位采樣位(SAM)的功能說明如表4-9所示。(2)時間段1和時間段2位域時間段1(TSEG1)和時間段2(TSEG2)決定了每一位的時鐘周期數(shù)目和采樣點的位置,如圖4-12所示,這里:tSYNCSEG=1×tSCLtTSEG1=tSCL×(8×TSEG1.3+4×TSEG1.2+2×TSEG1.0+1)tTSEG2=tSCL×(4×TSEG2.2+2×TSEG2.1+TSEG2.1+1)圖4-12位周期的總體結(jié)構(gòu)3.輸出控制寄存器輸出控制寄存器(OCR)如表4-10所示,允許由軟件控制建立不同輸出驅(qū)動的配置。在復(fù)位模式中此寄存器可被讀/寫訪問。在PeliCAN模式的操作模式中,這個寄存器是只讀的。在BasicCAN模式中總是“FFH”。4.3帶SPI接口的CAN通信控制器MCP25154.3.1MCP2515概述Microchip公司的MCP2515是一款獨立CAN協(xié)議控制器,完全支持CANV2.0B技術(shù)規(guī)范。MCP2515與MCU的連接是通過標準串行外設(shè)接口SPI(SearialPeripheralInterface)來實現(xiàn)的。該器件能發(fā)送與接收標準和擴展數(shù)據(jù)幀以及遠程幀。MCP2515自帶2個驗收屏蔽寄存器和6個驗收濾波寄存器可以過濾掉不想要的報文。它還包含3個發(fā)送緩沖器和2個接收緩存器,減少了單片機(MCU)的管理負擔,因此減少了主單片機(MCU)的開銷。4.3.2MCP2515的功能MCP2515的引腳圖如圖4-13所示。4.4CAN總線收發(fā)器4.4.1概述CAN作為一種技術(shù)先進、可靠性高、功能完善、成本低的遠程網(wǎng)絡(luò)通信控制方式,已廣泛應(yīng)用于汽車電子、自動控制、電力系統(tǒng)、樓宇自控、安防監(jiān)控、機電一體化、醫(yī)療儀器等自動化領(lǐng)域。目前,世界眾多著名半導(dǎo)體生產(chǎn)商推出了獨立的CAN通信控制器,而有些半導(dǎo)體生產(chǎn)商(例如INTEL、NXP、Mirochip、Samsung、NEC、ST、TI等公司),還推出了內(nèi)嵌CAN通信控制器的MCU、DSP和ARM微控制器。為了組成CAN總線通信網(wǎng)絡(luò),NXP和安森美(ON半導(dǎo)體)等公司推出了CAN總線驅(qū)動器。
4.4.2PCA82C250/251CAN總線收發(fā)器PCA82C250/251收發(fā)器是協(xié)議控制器和物理傳輸線路之間的接口。此器件對總線提供差動發(fā)送能力,對CAN控制器提供差動接收能力,可以在汽車和一般的工業(yè)應(yīng)用上使用。1.功能說明PCA82C250/251的功能框圖如圖4-14所示。2.引腳介紹PCA82C250/251為8引腳DIP和SO兩種封裝,引腳如圖4-15所示。3.應(yīng)用電路PCA82C250/251收發(fā)器的典型應(yīng)用如圖4-16所示。圖4-16PCA82C250/251應(yīng)用電路4.4.3TJA1050CAN總線收發(fā)器TJA1050是Philips公司生產(chǎn)的、用以替代PCA82C250的高速CAN總線收發(fā)器。該器件提供了CAN控制器與物理總線之間的接口以及對CAN總線的差動發(fā)送和接收功能。TJA1050除了具有PCA82C250的主要特性以外,在某些方面的性能還作了很大的改善。1.功能說明TJA1050的功能框圖如圖4-17所示。2.引腳介紹TJA1050的引腳如圖4-18所示。4.4.4TJA1051CAN總線收發(fā)器1.功能說明TJA1051是一款高速CAN收發(fā)器,是CAN控制器和物理總線之間的接口,為CAN控制器提供差動發(fā)送和接收功能。該收發(fā)器專為汽車行業(yè)的高速CAN應(yīng)用設(shè)計,傳輸速率高達1Mbit/s。TJA1051是高速CAN收發(fā)器TJA1050的升級版本,改進了電磁兼容性(EMC)和靜電放電(ESD)性能。2.引腳介紹TJA1051有SO8和HVSON8兩種封裝,TJA1051引腳如圖4-19所示。4.5CAN總線應(yīng)用節(jié)點設(shè)計4.5.1硬件電路設(shè)計采用AT89S52單片微控制器、獨立CAN通信控制器SJA1000、CAN總線驅(qū)動器PCA82C250及復(fù)位電路IMP708的CAN應(yīng)用節(jié)點電路如圖4-20所示。在圖4-20中,IMP708具有兩個復(fù)位輸出RESET和
,分別接至AT89S52單片微控制器和SJA1000CAN通信控制器。當按下按鍵S時,為手動復(fù)位。圖4-20CAN應(yīng)用節(jié)點電路4.5.2程序設(shè)計1.BasicCAN程序設(shè)計CAN應(yīng)用節(jié)點的程序設(shè)計主要分為三部分:初始化子程序、發(fā)送子程序、接收子程序。(1)CAN初始化程序CAN初始化子程序流程圖如圖4-21所示。圖4-21CAN初始化子程序流程圖(2)CAN接收子程序CAN接收子程序流程圖如圖4-22所示。(3)CAN發(fā)送子程序CAN發(fā)送子程序流程圖如圖4-23所示。圖4-23CAN發(fā)送子程序流程圖4.6基于PCI總線的CAN智能網(wǎng)絡(luò)通信適配器的設(shè)計4.6.1SCADA系統(tǒng)結(jié)構(gòu)基于CAN現(xiàn)場總線的數(shù)據(jù)采集與監(jiān)控(SCADA)系統(tǒng)結(jié)構(gòu)如圖4-24所示。在圖4-24中,該系統(tǒng)主要由上位計算機及監(jiān)控軟件、基于PCI總線的CAN智能網(wǎng)絡(luò)通信適配器及與其相配套的設(shè)備驅(qū)動程序(WDM)、FBC2000現(xiàn)場控制單元和基于CAN現(xiàn)場總線的FBCAN系列智能測控模塊等設(shè)備單元構(gòu)成。圖4-24基于CAN現(xiàn)場總線的SCADA系統(tǒng)結(jié)構(gòu)圖4.6.2PCI總線概述PCI總線的英文全稱為:PeripheralComponentInterconnectSpercialInterestGroup,簡稱PCISIG,即外設(shè)部件互連,PCI總線是由Intel公司提出的。PCI總線寬度32位,可升級到64位;最高工作頻率33MHz,支持猝發(fā)工作方式,傳輸速度更高;低隨機訪問延遲(對從總線上的主控寄存器到從屬寄存器的寫訪問延遲為60ns);處理器/內(nèi)存子系統(tǒng)能力完全一致;隱含的中央仲裁器;多路復(fù)用體系結(jié)構(gòu)減少了引腳數(shù)和PCI部件;PCI擴展板單獨工作在ISA、EISA,MC系統(tǒng)中減少了用戶的開發(fā)成本。對PCI擴展卡及元件,能夠自動配置,實現(xiàn)設(shè)備的即插即用;處理器獨立,不依賴任何CPU,支持多種處理器及將來待開發(fā)的更高性能處理器;支持64位地址;多主控制允許任何PCI主設(shè)備和從設(shè)備之間進行點對點訪問;PCI提供數(shù)據(jù)和地址的奇偶校驗功能,保證了數(shù)據(jù)的完整性和準確性。4.6.3
PCI控制器CY7C09449PV1.簡介CY7C09449PV是Cypress公司生產(chǎn)的半導(dǎo)體PCI-DP系列的PCI接口控制器之一,它提供了可與多種常用的微處理器直接連接的PCI主/從接口,一個128Kbit的雙端口SRAM用作局部微處理器和PCI總線間的共享存儲器。CY7C09449PV給設(shè)計者提供了一種將應(yīng)用連接到PCI總線的簡單方法。它同時提供一個I2O消息單元,具有消息隊列和中斷能力。
CY7C09449PV控制器的主要特點為:具有128Kbit的雙端口共享存儲器;可以作為主設(shè)備和從設(shè)備接口使用,符合PCI2.2規(guī)范;內(nèi)置主橋能力;可以直接與多種微處理器接口;具有I2O
(IntelligentInput&Output的縮寫)信息傳送單元,包括4個深度為32的FIFO;它的局部總線時鐘頻率最高可達50MHz;采用單一3.3V電源供電,與3V和5V的PCI總線信號兼容。
2.功能說明CY7C09449PV包括許多共享資源,它為局部總線和PCI總線之間進行高效的數(shù)據(jù)傳輸提供了通道。其結(jié)構(gòu)如圖4-25所示。CY7C09449PV內(nèi)部基本的資源是一個128Kbit的雙端口存儲器。這個存儲器既可以連接到PCI總線上,又可以連接到局部微處理器總線上。這個共享存儲器可同時被兩個總線訪問,用于過程間通信。圖4-25CY7C09449結(jié)構(gòu)示意圖4.6.4CAN智能網(wǎng)絡(luò)通信適配器的設(shè)計1.系統(tǒng)功能CAN智能網(wǎng)絡(luò)通信適配器主要是用來承擔上位計算機和CAN智能測控節(jié)點等下位機之間的數(shù)據(jù)交互任務(wù)的。當現(xiàn)場有數(shù)據(jù)要送到監(jiān)控PC機時,智能網(wǎng)絡(luò)通信適配器負責(zé)接收來自現(xiàn)場的數(shù)據(jù)信息,并立即轉(zhuǎn)發(fā)給PC機進行監(jiān)視和處理;當PC機有監(jiān)控命令、輸出信息或組態(tài)參數(shù)需要傳送至下位機時,智能網(wǎng)絡(luò)適配器也要實現(xiàn)轉(zhuǎn)發(fā)功能,及時地將PC機的數(shù)據(jù)發(fā)送至CAN網(wǎng)絡(luò),并由目標下位機接收,以控制相應(yīng)下位機單元的動作。2.硬件結(jié)構(gòu)和工作過程基于PCI總線的CAN智能網(wǎng)絡(luò)通信適配器硬件結(jié)構(gòu)如圖4-26所示。適配器主要由CAN總線驅(qū)動器PCA82C250、CAN通信控制器SJA1000、INTEL80C88CPU、譯碼電路EPM7064和EEPROM以及與PC機相連接的PCI控制器CY7C09449PV等構(gòu)成。板內(nèi)INTEL80C88內(nèi)部的監(jiān)控程序控制CAN總線的接收、發(fā)送及數(shù)據(jù)處理,并通過內(nèi)含雙口RAM的PCI控制器CY7C09449PV與PC機進行通信,實現(xiàn)下位機智能測控節(jié)點與上位PC機的數(shù)據(jù)交換。PC機一側(cè)采用的PCI接口芯片是Cypress公司生產(chǎn)的半導(dǎo)體PCI-DP系列的PCI接口控制器CY7C09449,其主要特點上文已有敘述。本設(shè)計中通過對其內(nèi)置的128kbit的雙端口SRAM的訪問實現(xiàn)PC機與INTEL80C88的數(shù)據(jù)交互。INTEL80C88CPU一側(cè)負責(zé)實現(xiàn)與CAN總線網(wǎng)絡(luò)的通信。圖4-26CAN智能網(wǎng)絡(luò)通信適配器硬件結(jié)構(gòu)圖3.CAN數(shù)據(jù)包格式CAN通信數(shù)據(jù)傳輸采用短幀結(jié)構(gòu),每幀最多發(fā)送8個字節(jié)有效數(shù)據(jù),在傳輸?shù)臄?shù)據(jù)量超過8個字節(jié)有效數(shù)據(jù)時,給用戶編程帶來了一定的困難。為此,定義了如圖4-27所示的CAN的數(shù)據(jù)包格式,利用該格式,只需要將待傳輸?shù)臄?shù)據(jù)進行相應(yīng)的解包和打包操作即可實現(xiàn)數(shù)據(jù)的單幀和多幀傳輸,有效地簡化了數(shù)據(jù)通信。采用圖4-27所示的CAN數(shù)據(jù)包格式,無論是單幀傳輸還是多幀傳輸,只要把數(shù)據(jù)填入相應(yīng)的發(fā)送緩沖區(qū)即可,在接收方,則將數(shù)據(jù)解包并放至接收緩沖區(qū)。與上述定義的數(shù)據(jù)包格式相對應(yīng),CAN的多幀數(shù)據(jù)傳輸幀結(jié)構(gòu)如圖4-28所示。圖4-27發(fā)送數(shù)據(jù)包和接收數(shù)據(jù)包格式圖4-28CAN多幀數(shù)據(jù)傳輸幀結(jié)構(gòu)圖當發(fā)送的有效數(shù)據(jù)個數(shù)不超過4個時,一幀數(shù)據(jù)即可傳輸;當有效數(shù)據(jù)超過4個時,則需要多幀傳輸。此處的“地址變址”是指從發(fā)送緩沖區(qū)所取的存放于本幀的第一個有效數(shù)據(jù)的存儲地址相對于緩沖區(qū)首地址的偏移量,如第一幀中“地址變址”為4,第二幀中的“地址變址”為10?!暗刂纷冎贰钡脑O(shè)置,使得對數(shù)據(jù)包的解包和打包實現(xiàn)起來較容易。4.設(shè)備驅(qū)動程序WDM的開發(fā)Windows操作系統(tǒng)(Windows98,Windows2000)為了保證系統(tǒng)的安全性,穩(wěn)定性和可移植性,對底層操作采取了屏蔽的策略,對應(yīng)用程序訪問硬件資源進行了限制。上層的應(yīng)用程序無權(quán)直接訪問硬件資源,需要通過編制的設(shè)備驅(qū)動程序(WDM)實現(xiàn)對硬件資源、外圍設(shè)備(如PCI設(shè)備)等的控制,如獲取PCI資源配置情況,把分配的物理地址映射到線性地址以及對局部總線工作方式的控制等。WDM(Win32DriverModel)作為Windows的最新一代驅(qū)動程序模型,其運行平臺是Windows98/Me/NT/2000/XP等操作系統(tǒng),運行在系統(tǒng)的內(nèi)核態(tài)。開發(fā)WDM的方式有兩種:選用DDK開發(fā)和選用第三方軟件工具開發(fā)。本系統(tǒng)開發(fā)選用NuMega公司提供的DriverWorks軟件。4.7CAN智能節(jié)點的設(shè)計4.7.1CAN智能測控節(jié)點的一般結(jié)構(gòu)在基于CAN現(xiàn)場總線的SCADA系統(tǒng)中,需要設(shè)計對工業(yè)現(xiàn)場實現(xiàn)測控的智能節(jié)點。CAN智能測控節(jié)點的結(jié)構(gòu)如圖4-29。下面以FBCAN-8DI八路數(shù)字量輸入模塊為例介紹智能測控節(jié)點的設(shè)計。圖4-29N智能測控節(jié)點結(jié)構(gòu)圖4.7.2FBCAN-8DI八路數(shù)字量輸入智能節(jié)點的設(shè)計1.硬件結(jié)構(gòu)FBCAN-8DI八路數(shù)字量輸入智能節(jié)點的硬件框圖如圖4-30。圖4-30FBCAN-8DI智能節(jié)點的硬件結(jié)構(gòu)框圖2.數(shù)字量輸入電路數(shù)字量輸入電路如圖4-31所示。當跳線器JP1的1-2短路,跳線器JP2的1-2斷開、2-3短路時,輸入端DI+和DI-可以接一干接點信號。當跳線器JP1的1-2斷開,跳線器JP2的1-2短路、2-3斷開時,輸入端DI+和DI-可以接有源接點。在圖4-31中,開關(guān)量輸入端所用電源為+24V,也可以是+15V或+5V電源,只需改變電阻R1的阻值即可。圖4-31數(shù)字量輸入電路3.DC/DC電源電路在智能節(jié)點的設(shè)計中,供電電源一般為+24V,而智能節(jié)點內(nèi)部通常需要+5V或其它電源(如放大器、A/D、D/A等器件所需電源),因此需要將+24V電源進行DC/DC變換,產(chǎn)生所需電源,圖4-32為將+24V變成+5V的DC/DC變換電路。在圖4-32中,VD1為防止電源反接二極管,VD2為TVS抗浪涌二極管,C1~C2為濾波電容。圖4-32DC/DC電路4.程序設(shè)計在FBCAN-8DI智能節(jié)點的設(shè)計中,采用第4.6節(jié)介紹的CAN數(shù)據(jù)包格式。程序主要包括主程序、讀取數(shù)字量狀態(tài)子程序、定時器0中斷服務(wù)程序、CAN數(shù)據(jù)包接收中斷服務(wù)程序、CAN數(shù)據(jù)包發(fā)送子程序。另外,還有參數(shù)配置程序,網(wǎng)絡(luò)檢查程序,WDT及串行E2PROM數(shù)據(jù)讀寫等程序。4.8CAN通信轉(zhuǎn)換器的設(shè)計4.8.1CAN通信轉(zhuǎn)換器概述CAN通信轉(zhuǎn)換器可以將RS-232、RS-485或USB串行口轉(zhuǎn)換為CAN現(xiàn)場總線。1.CAN通信轉(zhuǎn)換器性能指標CAN通信轉(zhuǎn)換器的性能指標如下:支持CAN2.0A和CAN2.0B協(xié)議,與ISO11898兼容??煞奖愕膶崿F(xiàn)RS232接口與CAN總線的轉(zhuǎn)換。CAN總線接口為DB9針式插座,符合CIA標準。CAN總線波特率可選,最高可達1Mbps。串口波特率可選,最高可達115200bps。由PCI總線或微機內(nèi)部電源供電,無需外接電源。隔離電壓2000Vrms。外形尺寸:130mm×110mm。2.CAN節(jié)點地址設(shè)定CAN通信轉(zhuǎn)換器上的JP1用于設(shè)定通信轉(zhuǎn)換器的CAN節(jié)點地址。跳線短接為“0”,斷開為“1”。3.串口速率和CAN總線速率設(shè)定CAN通信轉(zhuǎn)換器上的JP2用于設(shè)定串口及CAN通信波特率。其中JP2.3~JP2.1用于設(shè)定串口速率。JP2.6~JP2.4用于設(shè)定CAN波特率。4.通信協(xié)議CAN通信轉(zhuǎn)換器的通信協(xié)議格式如下:開始字節(jié)(40H)+CAN數(shù)據(jù)包(1~126字節(jié))+校驗字節(jié)(1字節(jié))+結(jié)束字節(jié)(23H)校驗字節(jié)為從開始字節(jié)(包括開始字節(jié)40H)到CAN幀中最后一個數(shù)據(jù)字節(jié)(包括最后一個數(shù)據(jù)字節(jié))之間的所有字節(jié)的異或和。結(jié)束符為23H,表示數(shù)據(jù)結(jié)束。4.8.2CAN通信轉(zhuǎn)換器微控制器主電路的設(shè)計CAN通信轉(zhuǎn)換器微控制器主電路的設(shè)計如圖4-33所示。主電路采用ST公司的STM32F103微控制器,利用其內(nèi)嵌的UART串口和CAN控制器設(shè)計轉(zhuǎn)換器,體積小、可靠性高,實現(xiàn)了低成本設(shè)計。LED1為通信狀態(tài)指示燈,JP1和JP2設(shè)定CAN節(jié)點地址和通信波特率。圖4-33CAN通信轉(zhuǎn)換器微控制器主電路的設(shè)計4.8.3CAN通信轉(zhuǎn)換器UART驅(qū)動電路的設(shè)計CAN通信轉(zhuǎn)換器UART驅(qū)動電路的設(shè)計如圖4-34所示。MAX3232為MAXIM公司的RS-232電平轉(zhuǎn)換器,適合3.3V供電系統(tǒng);ADM487為ADI公司的RS-485收發(fā)器。
圖4-34CAN通信轉(zhuǎn)換器UART驅(qū)動電路的設(shè)計4.8.4CAN通信轉(zhuǎn)換器CAN總線隔離驅(qū)動電路的設(shè)計CAN通信轉(zhuǎn)換器CAN總線隔離驅(qū)動電路的設(shè)計如圖4-35所示。采用6N137高速光耦合器實現(xiàn)CAN總線的光電隔離,TJA1051為NXP公司的CAN收發(fā)器。圖4-35CAN通信轉(zhuǎn)換器CAN總線隔離驅(qū)動電路的設(shè)計4.8.5CAN通信轉(zhuǎn)換器USB接口電路的設(shè)計CAN通信轉(zhuǎn)換器USB接口電路的設(shè)計如圖4-36所示。CH340G為USB轉(zhuǎn)UART串口的接口電路,實現(xiàn)USB到CAN總線的轉(zhuǎn)換。圖4-36CAN通信轉(zhuǎn)換器USB接口電路的設(shè)計4.9CAN總線在汽車電子系統(tǒng)中的應(yīng)用4.9.1應(yīng)用概述20世紀80年代以來,隨著集成電路和單片機在汽車上的廣泛應(yīng)用,汽車上電子控制單元越來越多,例如電子燃油噴射裝置、防抱死制動裝置(ABS)、安全氣囊裝置、電控門窗裝置和主動懸架等。在這種情況下,如果仍采用常規(guī)的布線方式,即電線一端與開關(guān)相接,另一端與用電設(shè)備相通,將導(dǎo)致車上電線數(shù)目急劇增加。一輛采用傳統(tǒng)布線方式的高檔汽車,其導(dǎo)線長度可達2000m,電氣節(jié)點達1500個,電線的重量可以達到40~60kg。另外,電控系統(tǒng)的增加雖然提高了汽車的安全性、經(jīng)濟性和舒適性,但隨之增加的復(fù)雜電路也降低了車輛的可靠性,增加了維修的難度。為此,改革汽車電氣技術(shù)的呼聲日益高漲,于是車上控制器局域網(wǎng)絡(luò)CAN(ControllerAreaNetwork)就應(yīng)用而生。自1989年以來,支持CAN總線標準的公司越來越多,其中,汽車公司有奔馳、大眾、寶馬、保時捷、勞斯萊斯、美洲豹等,電子公司有英特爾、摩托羅拉、菲利普、Microchip、Siemens等。標準化組織SAE和日本汽車工程師學(xué)會(JSAE)也都支持CAN總線標準??傊?,在國外,汽車總線技術(shù)很快得到普及,這是汽車發(fā)展的一個必然趨勢。4.9.2汽車CAN總線設(shè)計方案目前汽車上的網(wǎng)絡(luò)連接方式主要采用兩條CAN,一條用于動力系統(tǒng)的高速CAN,傳輸速率達到500Kbit/s;另一條用于車身系統(tǒng)的低速CAN,速率是100Kbit/s。動力系統(tǒng)CAN主要連接對象是發(fā)動機電控單元(ECU)、變速箱、ABS控制器、安全氣囊控制器等,它們的基本特征相同,都是控制與汽車行駛直接相關(guān)的系統(tǒng)。車身系統(tǒng)CAN主要連接和控制汽車內(nèi)外部照明、燈光信號、空調(diào)、組合儀表及其他輔助電器等。目前,動力系統(tǒng)CAN之間的資源共享,并將各個數(shù)據(jù)總線的信息反饋到儀表盤上。駕車者只要看儀表板,就可以知道各個電控裝置是否正常工作了。汽車計算機控制已經(jīng)涉及動力性、經(jīng)濟性、安全性、可靠性、凈化性和舒適性等諸多方面,具體包括發(fā)動機控制、變速器控制、巡航控制、制動控制、照明控制、空調(diào)控制、雨刷控制、儀表管理系統(tǒng)等,而且各種控制系統(tǒng)的電控單元(ECU)相互聯(lián)系緊密,需要隨時進行實時數(shù)據(jù)通信。CAN總線作為一種極具應(yīng)用潛力的控制器局域網(wǎng)總線,近年來在汽車計算機控制系統(tǒng)中得到越來越廣泛的應(yīng)用,并已成為歐洲汽車制造業(yè)主體行業(yè)標準,代表著汽車電子控制網(wǎng)絡(luò)的主流發(fā)展趨勢。汽車CAN網(wǎng)絡(luò)拓撲結(jié)構(gòu)如圖4-37所示。圖4-37汽車CAN網(wǎng)絡(luò)拓撲結(jié)構(gòu)4.10CANopen4.10.1CANopen通信和設(shè)備模型1.通信層和參考模型所有標準的工業(yè)通信系統(tǒng)均必須符合國際標準化組織(ISO)所定義的OSI(開放系統(tǒng)互聯(lián)模型)開放協(xié)議標準。CANopen通信系統(tǒng),可根據(jù)該模型來描述,如圖4-38所示。CANopen功能均被映射到一個或多個CAN報文。預(yù)定義CANopen消息使用的是基本的報文格式(帶11位標識符)。CANopen規(guī)范和建議文檔包含一些擴展的定義,其中部分為用戶專用的定義。圖4-38CANopen數(shù)據(jù)通信模型的簡化圖2.對象的描述與定義為了達到各種不同的兼容性等級,所有的過程數(shù)據(jù)、配置參數(shù)和診斷信息都必須用同一個對象模型來描述。CANopen規(guī)范用通過3套屬性來描述一個對象。(1)對象描述對象描述包括對象的名稱及其唯一的標識符(索引)。此外用戶還可設(shè)定對象的類型:變量(僅由一個元素構(gòu)成)、數(shù)組(由多個相同的元素構(gòu)成)以及記錄(由不同的元素構(gòu)成)。包含在對象描述中的數(shù)據(jù)類型描述了各組成部分的編碼和長度。(2)入口描述入口描述可以為數(shù)組和記錄(子對象)設(shè)定一個名稱及其唯一的標識符(子索引)。(3)值定義描述該描述詳細規(guī)定了對象的含義,包括物理單位、乘數(shù)、偏置量和編碼。4.10.2CANopen物理層CANopen的物理層相當于CAN控制器中采用的子層PLS(物理信息)、MAU(介質(zhì)訪問單元)和MDI(介質(zhì)專用接口),這些子層均位于驅(qū)動模塊中并通過連接器和電纜實現(xiàn)。在許多工業(yè)應(yīng)用中均采用DIN46912規(guī)定的9針D-Sub連接器。這種連接裝置由一個插座和一個插頭構(gòu)成。該連接器為CiA102規(guī)定的端口配置,也適用于CANopen。4.10.3CANopen應(yīng)用層CANopen應(yīng)用層詳細的定義了通信服務(wù)和其他相關(guān)的通信協(xié)議。通信對象、過程參數(shù)和配置參數(shù)一起保存在設(shè)備的對象字典中。CANopen規(guī)范中所定義的基本通信服務(wù)構(gòu)成了應(yīng)用程序與CANopen應(yīng)用層之間的接口。基本服務(wù)有以下4種:?請求:應(yīng)用程序請求CANopen軟件的一種通信服務(wù);?指示:CANopen軟件向應(yīng)用程序報告某一事件或應(yīng)執(zhí)行的任務(wù);?響應(yīng):應(yīng)用程序?qū)ANopen軟件報告的事件或任務(wù)作出的應(yīng)答;?確認:CANopen軟件向應(yīng)用程序確認CANopen軟件已經(jīng)執(zhí)行了任務(wù)。CANopen應(yīng)用層的服務(wù)類型分為2種,一種是僅在一個設(shè)備中執(zhí)行的服務(wù),比如:局部服務(wù)和提供者啟動的服務(wù);另一種是多個設(shè)備通過網(wǎng)絡(luò)進行通信的服務(wù),比如:確認和未確認的服務(wù)。1.基本原理由于CAN只對物理層和數(shù)據(jù)鏈路層進行了定義,因此,為了能然設(shè)備之間通過CAN進行通信,用戶還需要進行一些與應(yīng)用相關(guān)的定義。首先,將網(wǎng)絡(luò)中可用的CAN標識符分配給每個設(shè)備。這樣才能知道哪些消息的優(yōu)先級高,哪些消息的優(yōu)先級低,設(shè)備之間是否具有優(yōu)先順序,或CAN標識符中是否包含預(yù)設(shè)功能。其次,為了不讓系統(tǒng)中出現(xiàn)功能不同但CAN報文相同的情況,用戶還要做出一些相關(guān)的定義。通信單元由CAN收發(fā)器、CAN控制器以及CANopen協(xié)議棧組成。協(xié)議棧中包括實現(xiàn)通信的通信對象(如過程數(shù)據(jù)對象(PDO)和服務(wù)數(shù)據(jù)對象(SDO))和狀態(tài)機。通信單元提供數(shù)據(jù)傳輸所需的所有機制和通信對象,符合CANopen規(guī)范的數(shù)據(jù)可以利用這些機制通過CAN接口進行傳輸。在CANopen設(shè)備的應(yīng)用單元中,對設(shè)備的基本功能進行定義或描述。例如:在I/O設(shè)備中,可以訪問設(shè)備的數(shù)字或模擬輸入/輸出接口;在驅(qū)動控制系統(tǒng)中,可以實現(xiàn)軌跡發(fā)生器或速度控制模塊的控制。對象字典是應(yīng)用單元與通信單元之間的接口,實際上是設(shè)備的所有參數(shù)列表。應(yīng)用單元和通信單元都可訪問這個參數(shù)列表。對象字典中的詞目進行讀或?qū)?。例如,為通信對象配置不同的CAN標識符。如果應(yīng)用對象是一個調(diào)節(jié)器,那么對象字典中的詞目就是調(diào)節(jié)器的參數(shù)。2.通信對象CANopen應(yīng)用層詳細描述了各種不同類型的通信對象(COB),這些通信對象都是由一個或多個CAN報文實現(xiàn)的。通信對象分為以下4中類型:?過程數(shù)據(jù)對象(PDO消息),用來傳輸實時數(shù)據(jù);?服務(wù)數(shù)據(jù)對象(SDO服務(wù)器消息和SDO客戶端消息),用來讀/寫其他CANopen設(shè)備的對象字典;?預(yù)定義對象(同步、時間和緊急報文);?網(wǎng)絡(luò)管理對象,用來控制NMT狀態(tài)機(NMT消息)和監(jiān)測設(shè)備(心跳、啟動報文)。(1)過程數(shù)據(jù)對象在許多集中式控制系統(tǒng)中,各種設(shè)備都可能會定時傳輸其所有的過程數(shù)據(jù)。通常情況下,控制主機會通過輪詢的方法來查詢從機的過程數(shù)據(jù),按照一定的順序進行查詢。從機則把各自過程數(shù)據(jù)應(yīng)答給控制主機。在CANopen中,過程數(shù)據(jù)被分為幾個單獨的段,每個段最多為8個字節(jié),這些段就是過程數(shù)據(jù)對象(PDO)。過程數(shù)據(jù)對象由一個CAN報文構(gòu)成,過程數(shù)據(jù)對象的優(yōu)先級有對應(yīng)的CAN標識符決定。過程數(shù)據(jù)對象分接收過程數(shù)據(jù)對象(RPDO)和發(fā)送過程數(shù)據(jù)對象(TPDO)兩種。(2)服務(wù)數(shù)據(jù)對象CANopen設(shè)備為用戶提供了一種訪問內(nèi)部設(shè)備數(shù)據(jù)的標準途徑,設(shè)備數(shù)據(jù)由一種固定的結(jié)構(gòu)(即對象字典)管理,同時也能通過這個結(jié)構(gòu)來讀取。對象字典中的條目可以通過服務(wù)數(shù)據(jù)對象(SDO)來訪問,此外,一個CANopen設(shè)備必須提供至少一個SDO服務(wù)器,該服務(wù)器被稱為默認的SDO服務(wù)器。而與之對應(yīng)的SDO客戶端通常在CANopen管理器中實現(xiàn)。因此,為了讓其他CANopen設(shè)備或配置工具也能訪問默認SDO服務(wù)器,CANopen管理器必須引入一個SDO管理器。被訪問對象字典的設(shè)備必學(xué)具有一個SDO管理器,這樣才能保證正確的解釋標準的SDO傳輸協(xié)議,并確保正確地訪問對象字典。SDO之間的數(shù)據(jù)交換通常都是由SDO客戶端發(fā)起的,它可以是CANopen網(wǎng)絡(luò)中任意一個設(shè)備中的SDO客戶端。3.對象字典在對象字典中,CANopen設(shè)備的所有對象都是以標準化方式進行描述的。對象字典是所有數(shù)據(jù)結(jié)構(gòu)的集合,這些數(shù)據(jù)結(jié)構(gòu)涉及設(shè)備的應(yīng)用程序、通信以及狀態(tài)機。對象字典利用對象來描述CANopen設(shè)備的全部功能,并且它也是通信接口與應(yīng)用程序之間的接口。對象字典中的對象可以通過一個已知的16位索引來識別,對象可以是一個變量、一個數(shù)組或一種結(jié)構(gòu);數(shù)組和結(jié)構(gòu)中的單元又可以通過8位子索引進行訪問(不允許嵌套結(jié)構(gòu))。CANopen協(xié)議已經(jīng)將對象字典進行了分配。4.網(wǎng)絡(luò)管理系統(tǒng)網(wǎng)絡(luò)管理系統(tǒng)(NMT)負責(zé)啟動網(wǎng)絡(luò)和監(jiān)控設(shè)備。為了節(jié)約網(wǎng)絡(luò)資源(尤其是CAN標識符和總線帶寬),將CANopen網(wǎng)絡(luò)管理系統(tǒng)設(shè)計成一種主/從機系統(tǒng)。對于那些出于安全原因要求在網(wǎng)絡(luò)中包含多個NMT主機的應(yīng)用而言,可以采用一個“動態(tài)主機”(FlyingNMTMaster)。當活動的NMT主機出現(xiàn)故障時,另一個設(shè)備將會自動承擔NMT主機的義務(wù)。4.10.4CANopen設(shè)備子協(xié)議設(shè)備子協(xié)議的作用是定義一種至少可以部分互換的設(shè)備。設(shè)備子協(xié)議定義過程數(shù)據(jù)和PDO映射以及設(shè)備的功能特性,包括特定設(shè)備類的狀態(tài)機。首批CANopen設(shè)備子協(xié)議是在1996年發(fā)布的,由于設(shè)備功能日新月異,這些設(shè)備子協(xié)議也隨之不斷地修改完善。除了用于I/O模塊、傳感器、電動和液壓驅(qū)動器的通用設(shè)備子協(xié)議之外,隨后還開發(fā)出了用于編碼器、傾角傳感器、控制手柄以及RFID讀卡器設(shè)備的專用設(shè)備子協(xié)議,其中一部分已經(jīng)在通用子協(xié)議的附錄中進行了定義。此外,還制定了專門用于準直透鏡、劑量計(醫(yī)療設(shè)備)以及輸紗設(shè)備的子協(xié)議。1.I/O模塊的子協(xié)議用于通用I/O模塊的CANopen設(shè)備子協(xié)議(CiA401)是CiA通過的第一個設(shè)備子協(xié)議。該協(xié)議規(guī)定,I/O設(shè)備均可通過SDO進行配置。此外,根據(jù)I/O設(shè)備實現(xiàn)的功能,可以將它們設(shè)置成發(fā)送霍潔壽過程數(shù)據(jù)對象。2.驅(qū)動和運動控制設(shè)備子協(xié)議驅(qū)動和運動控制子協(xié)議CiA402所涉及的對象非常多,而且規(guī)模也十分龐大,它是國際標準IEC61800-7的組成部分。IEC61800-7主要包括3個部分:?第一部分:一般定義;?第二部分:運行模式與驅(qū)動對象;?第三部分:CANopen對象的映射(如PDO映射)。整個設(shè)備子協(xié)議大約包含400個對象(包括所有的子索引),共占用1500字節(jié)內(nèi)存。它還包含部分CANopen通信子協(xié)議,因此其規(guī)??赡芨育嫶蟆A硗?,它還包含多個PDO通信連接以及同步和緊急報文服務(wù)。3.傳感器和測量設(shè)備的子協(xié)議制定傳感器和測量設(shè)備的子協(xié)議(CiA404)的主要目的是為了滿足如下應(yīng)用需求,即對溫度、壓力、流量等物理量進行測量、調(diào)節(jié),而且測量值又不便于轉(zhuǎn)化為標準模擬信號(0~10V或0~20mA)。4.編碼器和凸輪轉(zhuǎn)換機構(gòu)子協(xié)議編碼器通常用于自動化技術(shù)領(lǐng)域,它可以根據(jù)不同的測量原理來采集角度和位移,然后將信息提供給其他設(shè)備。編碼器還可以用來檢測速度、加速
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大氣物理專業(yè)就業(yè)前景
- 數(shù)學(xué)答疑話術(shù)
- 2026陜西漢中市略陽縣綠色循環(huán)經(jīng)濟產(chǎn)業(yè)園區(qū)管委會(園區(qū)公司)選聘2人備考題庫附答案
- 2026廣東深圳市南山區(qū)教育科學(xué)研究院附屬學(xué)校教育集團松坪學(xué)校小學(xué)部教師招聘4人參考題庫附答案
- 屏山縣衛(wèi)生健康局下屬事業(yè)單位屏山縣生育服務(wù)和愛國衛(wèi)生事務(wù)中心2025年公開考調(diào)事業(yè)單位工作 人員考試備考題庫必考題
- 2026湖北省普通選調(diào)生招錄497人備考題庫必考題
- 2026廣西北部灣大學(xué)公開招聘高層次人才76人參考題庫附答案
- 2025 小學(xué)五年級科學(xué)下冊非金屬材料的分類與應(yīng)用范圍課件
- 南充朗池220千伏輸變電工程環(huán)境影響報告表
- 瀘州市輔警考試題庫2025
- 2026屆新高考語文三輪沖刺復(fù)習(xí):二元思辨作文審題構(gòu)思寫作
- 2025年社工社區(qū)招聘筆試題庫及答案
- 病毒性肺炎診療指南(2025年版)
- 2026年度新疆兵團草湖項目區(qū)公安局招聘警務(wù)輔助人員工作(100人)筆試參考題庫及答案解析
- GB/T 46778-2025精細陶瓷陶瓷造粒粉壓縮強度試驗方法
- 行業(yè)背景分析報告
- 工程管理費合同協(xié)議
- 協(xié)助審計協(xié)議書范本
- 采購主管年終工作總結(jié)
- 電力公司安全第一課課件
- 注塑車間人員管理改善方案
評論
0/150
提交評論