![CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試._第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a1.gif)
![CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試._第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a2.gif)
![CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試._第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a3.gif)
![CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試._第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a4.gif)
![CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試._第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a/ee3bd1c3-d0f1-497b-b798-b5b2be5a886a5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試韓鑫1,2,鮑可進(jìn)1(1.江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇鎮(zhèn)江212013;2.上海華普汽車有限公司,上海201501摘要:對(duì)ISO15765協(xié)議進(jìn)行分析,依據(jù)協(xié)議在基于MC9S12DP512芯片的整車控制器上完成CAN網(wǎng)絡(luò)層協(xié)議棧的開(kāi)發(fā),給出開(kāi)發(fā)過(guò)程。在VC環(huán)境下開(kāi)發(fā)測(cè)試程 序,對(duì)協(xié)議棧進(jìn)行測(cè)試。結(jié)果表明,實(shí)現(xiàn)的CAN網(wǎng)絡(luò)層協(xié)議棧符合ISO15765協(xié)議的 規(guī)定,可滿足車輛故障診斷系統(tǒng)等具體應(yīng)用中系統(tǒng)對(duì) CAN網(wǎng)絡(luò)層通信的需求。 關(guān) 鍵詞:控制局域網(wǎng);網(wǎng)絡(luò)層;協(xié)議棧;整車控制器Develo pment and Test of CAN Bus Network
2、 Layer P rotocol StackHAN Xin 1,2, BAO Ke-ji n 1(1. School of Compu ter Science and Telecom muni cati on Engin eeri ng, Jia ngsuUn iversity, Zhenjia ng 212013, Chi na;2. Sha nghai Maple Automobile Co., Ltd., Sha nghai 201501, ChinaAbstract 】The ISO15765 protocol is analyzed, the development of CAN n
3、etwork layer p rotocol stack is achieved by the pl atform of vehicle con trol unit which is based onMC9S12D P512, mea nwhile, the develo pment p rocess is give n in detail. U nder the VC en vir onment, test p rocedures are devel oped for the test of the p rotocol stack. The results show that the p r
4、otocol stack is in accord with ISO15765, and meets CAN n etwork layer com muni cati ons n eeds in variety app licati ons, such as vehicle fault diag no sis system.【Key words 】Control Area Network(CAN; network layer; protocol stack; VehicleControl Unit (VCU DOI: 10.3969/j.iss n.1000-3428.2011.15.075計(jì)
5、算機(jī)工程Computer Engineering第37卷第15期V 01.37 No.15 2011 年 8 月August 2011工程應(yīng)用技術(shù)與實(shí)現(xiàn) 文章編號(hào):1000 3428(201115-0232 03文獻(xiàn)標(biāo)識(shí)碼:A中圖分類號(hào):TP3111概述CAN總線具有結(jié)構(gòu)簡(jiǎn)單、成本低、可靠性高、抗干擾能力強(qiáng)等優(yōu)點(diǎn),已廣泛應(yīng)用于車輛通信與控制系統(tǒng)中,在其他工業(yè)領(lǐng)域也得到廣泛應(yīng)用1 0 ISO15765是一種 基于CAN總線的車輛故障診斷協(xié)議,在其網(wǎng)絡(luò)層協(xié)議中規(guī)定了 CAN總線上不同節(jié)點(diǎn)間進(jìn)行數(shù)據(jù)交換的網(wǎng)絡(luò)層通信需求,為保證數(shù)據(jù)在CAN總線上的可靠傳輸提供了 完善的網(wǎng)絡(luò)層管理機(jī)制。除車輛故障診斷系
6、統(tǒng)外 ,ISO15765的網(wǎng)絡(luò)層協(xié)議可應(yīng)用到其他采用CAN總線進(jìn)行通信的工業(yè)系統(tǒng)中,滿足系統(tǒng)對(duì)CAN網(wǎng)絡(luò)層協(xié)議的需求2 0弔奩Vol 57弔2朗No 15IT 貝Computer Ei工程應(yīng)用技術(shù)與實(shí)現(xiàn)丈章*號(hào)i Ili0428(201CAN總線網(wǎng)絡(luò)左«*入'本文介紹分析。在基于ISO15765協(xié)議體系結(jié)構(gòu),對(duì)協(xié)議中的CAN網(wǎng)絡(luò)層通信機(jī)制進(jìn)行深入MC9S12DP512芯片的整車控制器上開(kāi)發(fā)符合 ISO15765協(xié)議的CAN網(wǎng)絡(luò)層協(xié)議棧。在PC機(jī)的VC環(huán)境下開(kāi)發(fā)協(xié)議棧測(cè)試程序與控制器進(jìn)行通信,通過(guò) 分析測(cè)試程序記錄的數(shù)據(jù)對(duì)協(xié)議棧功能進(jìn)行驗(yàn)證。所實(shí)現(xiàn)的網(wǎng)絡(luò)層協(xié)議棧已應(yīng)用到 新型電
7、容混合動(dòng)力轎車故障診斷系統(tǒng)中,可用于實(shí)現(xiàn)診斷系統(tǒng)上位機(jī)與控制器之間 的診斷通信。2 ISO15765協(xié)議分析CAN2.0規(guī)范在開(kāi)放系統(tǒng)互連模型 OSI上定義了 CAN的物理層和數(shù)據(jù)鏈路層標(biāo)準(zhǔn),國(guó)際標(biāo)準(zhǔn)化組織ISO通過(guò)對(duì)CAN2.0規(guī)范的進(jìn)一步標(biāo)準(zhǔn)化制訂了 ISO11898協(xié)議。在實(shí)際應(yīng)用中,CAN通信的實(shí)現(xiàn)通常需要更高層協(xié)議的支持3。比如ASAM 組織制定的CAN標(biāo)定協(xié)議CCP ,SAE組織制定的J1939協(xié)議等。ISO15765協(xié)議是ISO針對(duì)車輛故障診斷系統(tǒng)制定的 CAN高層協(xié)議。ISO15765協(xié)議的目標(biāo)是為基于CAN總線實(shí)現(xiàn)的車輛故障診斷系統(tǒng)定義一組統(tǒng)一的需求。如圖1所示,ISO157
8、65依據(jù)OSI模型的分層結(jié)構(gòu)在ISO11898協(xié)議規(guī)定的CAN物理層與數(shù)據(jù)鏈路層基礎(chǔ)之上,定義了故障診斷系統(tǒng)網(wǎng)絡(luò)層通信和應(yīng)用層服務(wù)相關(guān)的內(nèi)容。ISO15765-3診斷服務(wù)層映射到OSI模型的應(yīng)用層,規(guī)定了應(yīng)用層定時(shí)參數(shù)、網(wǎng)絡(luò)層接口、診斷服 務(wù)格式等信息;ISO15765-2網(wǎng)絡(luò)層服務(wù)映射到OSI模型的網(wǎng)絡(luò)層和傳輸層4,規(guī)定了 網(wǎng)絡(luò)層協(xié)議數(shù)據(jù)單元N PDU與底層CAN數(shù)據(jù)幀、應(yīng)用層協(xié)議數(shù)據(jù)單元 A PDU之間的映射關(guān)系,通過(guò)網(wǎng)絡(luò)層可對(duì)長(zhǎng)報(bào)文進(jìn)行分段傳輸,網(wǎng)絡(luò)層為分段傳輸過(guò)程提供 了時(shí)間管理、流控制和錯(cuò)誤處理機(jī)制。圖1 ISO15765體系結(jié)構(gòu)在OSI模型中的映射關(guān)系IS015765采用分層結(jié)構(gòu),
9、各層之間通過(guò)約定的服務(wù)接口進(jìn)行數(shù)據(jù)交換,各層對(duì)其內(nèi)部的操作機(jī)制進(jìn)行完全的封裝。這使得在進(jìn)行協(xié)議棧開(kāi)發(fā)時(shí)只需要按協(xié)議規(guī)定為 相鄰層設(shè)計(jì)服務(wù)接口,各層內(nèi)部操作的實(shí)現(xiàn)完全不受其他層的制約,可基金項(xiàng)目:國(guó)家“863”劃基金資助項(xiàng)目 新型電容混合動(dòng)力轎車整車產(chǎn)品研 發(fā)” (2006AA11A128作者簡(jiǎn)介:韓鑫(1984-,男,碩士,主研方向:嵌入式系統(tǒng);鮑可進(jìn),教授收稿日期:2011-03-17 E-mail :crazyxiaoxin第37卷第15期233韓鑫,鮑可進(jìn):CAN總線網(wǎng)絡(luò)層協(xié)議棧開(kāi)發(fā)測(cè)試單獨(dú)進(jìn)行各層協(xié)議棧的開(kāi)發(fā)和 測(cè)試。3 ISO15765網(wǎng)絡(luò)層協(xié)議分析3.1網(wǎng)絡(luò)層服務(wù)接口網(wǎng)絡(luò)層向下層傳
10、輸?shù)氖蔷W(wǎng)絡(luò)層協(xié)議數(shù)據(jù)單元N_PDU ,向應(yīng)用層提供應(yīng)用層協(xié)議數(shù)據(jù)單元A PDU , 一個(gè)A PDU可映射為一個(gè)或多個(gè)N_PDU 5 。 N_PDU對(duì)應(yīng)于CAN幀,兩者之間的對(duì)應(yīng)關(guān)系由尋址方式確定。網(wǎng)絡(luò)層負(fù)責(zé)完成 N_PDU與A_PDU之間轉(zhuǎn)換的組織和管理,應(yīng)用層不必關(guān)心分段信息重組和分段的過(guò)程,只需訪問(wèn)網(wǎng)絡(luò)層提供的接口即可請(qǐng)求網(wǎng)絡(luò)層服務(wù)、獲取請(qǐng)求服務(wù)的執(zhí)行情況。如表1所示,網(wǎng)絡(luò)層為應(yīng)用層提供4類服務(wù)接口。穿bl一 &臺(tái)BSSTelti服務(wù)名稱功能表1網(wǎng)絡(luò)層提供的服務(wù)接口及功能右 ffl控制tfstLP即中的韋節(jié)ttiBv ?-+B±i J O*K!C3F>心如日牌DLi
11、tiAN/Aif mm1I;AN_PCrtypt=2SWN小meiwuTfvcjN-PCftypgFSBSSTiimiN_USData.reques1應(yīng)用層請(qǐng)求網(wǎng)絡(luò)層傳輸數(shù)據(jù) N_USData.co nfirm網(wǎng)絡(luò)層通知應(yīng)用層所請(qǐng)求的服務(wù)已執(zhí)行完成/失敗N_USData_FF.indication網(wǎng)絡(luò)層通知應(yīng)用層 開(kāi)始接收分段信息N_USData. in dication網(wǎng)絡(luò)層通知應(yīng)用層單幀(分段信息接收完成/失敗3.2網(wǎng)絡(luò)層數(shù)據(jù)傳輸方式由于CAN數(shù)據(jù)幀最多只能傳送8個(gè)字節(jié)的數(shù)據(jù),為適應(yīng)不同長(zhǎng)度數(shù)據(jù)的傳輸需 求,ISO15765網(wǎng)絡(luò)層協(xié)議提供了非確信不分段傳輸(UUDT和非確信分段傳輸(USD
12、T2種數(shù)據(jù)傳輸機(jī)制。為實(shí)現(xiàn)這兩種傳輸方式,協(xié)議中通過(guò)網(wǎng)絡(luò)層協(xié)議控制信息 N_PCI定義了 4種類型的網(wǎng)絡(luò)層協(xié)議數(shù)據(jù)單元N_ PDU。3.2.1網(wǎng)絡(luò)層協(xié)議數(shù)據(jù)單元N PDUN_PDU包含網(wǎng)絡(luò)層地址信息 N_AI、N_PCI和網(wǎng)絡(luò)層數(shù)據(jù)N_Data三部分。N_AI存放于CAN標(biāo)識(shí)符中(不需要擴(kuò)展地址時(shí),N_PCI和N_Data存放于CAN幀的 數(shù)據(jù)域中。如 圖2所示,不同類型N_PDU通過(guò)N_PCI第1個(gè)字節(jié)中的前4位進(jìn)行 區(qū)分,表中單幀數(shù)據(jù)長(zhǎng)度SF_DL記錄單幀傳輸數(shù)據(jù)的長(zhǎng)度;首幀數(shù)據(jù)長(zhǎng)度FF_DL在 多幀傳輸中記錄分段數(shù)據(jù)的總長(zhǎng)度;連續(xù)幀序號(hào)SN保存數(shù)據(jù)分段的順序;流控制狀 態(tài)FS,在分段傳輸
13、中用來(lái)控制發(fā)送方數(shù)據(jù)發(fā)送的過(guò)程;N_Data存放于CAN幀數(shù)據(jù) 域除N_PCI之外的其他字節(jié)中。協(xié)議控制信息N_PCI中的字節(jié)字節(jié)#1N_PDU名稱Bits 7-4Bits 3-0#2 #3單幀(SF N_P CIt ype =0 SF_DL N/A N/A 首幀(FF N_PCItype =1 FF_DL N/A 連續(xù)幀(CF N_PCItype =2 SN N/A N/A流控制幀(FCN_P CIt ype =3 FS BS STmin圖2 N_PCI在不同類型N_PDU中的描述3.2.2非確信不分段數(shù)據(jù)傳輸非確信不分段數(shù)據(jù)傳輸即單幀傳輸,該方式下網(wǎng)絡(luò)層使用單幀N_PDU傳送數(shù) 據(jù)。由于單
14、幀N_PCI占用CAN幀數(shù)據(jù)域中的一個(gè)字節(jié),單幀傳送方式可傳輸?shù)淖?大數(shù)據(jù)長(zhǎng)度為7個(gè)字節(jié),如果采用遠(yuǎn)程診斷方式,由于擴(kuò)展地址AE需要占用數(shù)據(jù)域 中的一個(gè)字節(jié),可傳輸?shù)淖畲髷?shù)據(jù)長(zhǎng)度變?yōu)?個(gè)字節(jié)。3.2.3非確信分段數(shù)據(jù)傳輸非確信分段傳輸是指多幀傳輸,當(dāng)網(wǎng)絡(luò)層傳送數(shù)據(jù)中的字節(jié)個(gè)數(shù)超出單幀傳輸 方式的傳送能力時(shí),網(wǎng)絡(luò)層將數(shù)據(jù)分段為多個(gè) N_PDU進(jìn)行發(fā)送;接收時(shí),網(wǎng)絡(luò)層將接 收到的多個(gè)N_PDU進(jìn)行重組。分段數(shù)據(jù)包括一個(gè)首幀 N_PDU、一個(gè)或多個(gè)連續(xù)幀 N_PDU。為解決通信雙方的數(shù)據(jù)同步問(wèn)題,分段傳輸過(guò)程應(yīng)當(dāng)按照協(xié)議規(guī)定流控制 管理機(jī)制執(zhí)行。分段傳輸?shù)倪^(guò)程如圖3所示,發(fā)送方網(wǎng)絡(luò)層檢查發(fā)送數(shù)據(jù)的長(zhǎng)
15、度,如果數(shù)據(jù)不能 通過(guò)單幀傳輸方式發(fā)送,發(fā)送方向接收方發(fā)送首幀N_PDU。接收方網(wǎng)絡(luò)層在接收到 首幀N_PDU后,將其包含的FF_DL與自身網(wǎng)絡(luò)層緩沖區(qū)大小進(jìn)行比較,如果FF_DL大于接收方網(wǎng)絡(luò)層緩沖區(qū)的容量,接收方中止接收過(guò)程并向發(fā)送方發(fā)送 FS=OVFLW的流控制幀。圖3分段傳輸示意圖1如果接收方暫時(shí)無(wú)法接收數(shù)據(jù),接收方暫停數(shù)據(jù)接收向發(fā)送方發(fā)送 FS=WAIT的流控制幀。若接收方可接收數(shù)據(jù),向發(fā)送方發(fā)送FS=CTS的流控制幀,其中包含發(fā) 送方可連續(xù)發(fā)送CF N_PDU的最大個(gè)數(shù)BS(Block Size和發(fā)送間隔時(shí)間STmin。發(fā)送方接收到FC N_PDU后,根據(jù)N_PCI中的BS和STm
16、in向接收方發(fā)送分段數(shù)據(jù),并 記錄當(dāng)前已發(fā)送CF N_PDU的個(gè)數(shù)。當(dāng)發(fā)送方發(fā)送連續(xù)幀個(gè)數(shù)等于 BS后暫停數(shù)據(jù)發(fā)送,等待接收方發(fā)送新的流控制信息,重復(fù)以上的操作,直到所有數(shù)據(jù)傳輸完成或者 傳輸過(guò)程出錯(cuò)進(jìn)行錯(cuò)誤處理。接收方的數(shù)據(jù)接收能力受到網(wǎng)絡(luò)層緩沖區(qū)容量和數(shù)據(jù) 幀處理速度的限制,可通過(guò)BS與STmin進(jìn)行衡量。3.3網(wǎng)絡(luò)層時(shí)間管理及錯(cuò)誤處理機(jī)制網(wǎng)絡(luò)層時(shí)間管理機(jī)制是為防止 CAN網(wǎng)絡(luò)上的通信節(jié)點(diǎn)因持續(xù)等待而被永久掛起,從而造成整個(gè)CAN網(wǎng)絡(luò)通信能力的癱瘓。CAN網(wǎng)絡(luò)上不同節(jié)點(diǎn)間進(jìn)行通信時(shí), 需要根據(jù)網(wǎng)絡(luò)層協(xié)議設(shè)置超時(shí)參數(shù),在超時(shí)時(shí)間內(nèi)未完成規(guī)定的操作時(shí)觸發(fā)網(wǎng)絡(luò)層超時(shí)錯(cuò)誤。除超時(shí)錯(cuò)誤外與網(wǎng)絡(luò)層相關(guān)
17、的錯(cuò)誤還包括N_PCI錯(cuò)誤、非預(yù)期N_PDU、流控制等待錯(cuò)誤。錯(cuò)誤處理機(jī)制在網(wǎng)絡(luò)層發(fā)生錯(cuò)誤時(shí)進(jìn)行錯(cuò)誤處理,保證CAN網(wǎng)絡(luò)的正常通信。4 ISO15765網(wǎng)絡(luò)層協(xié)議的實(shí)現(xiàn)F面介紹在CodeWarrior 4.7下使用C語(yǔ)言進(jìn)行協(xié)議棧開(kāi)發(fā)的詳細(xì)過(guò)程。以新型電容混合動(dòng)力轎車整車控制器為開(kāi)發(fā)平臺(tái),控制器采用Freescale公司的16位控制 芯片MC9S12DP512,擁有五路MSCAN控制器,14 KB的RAM和512 KB的Flash等硬件資源。外接晶振頻率為16 MHz ,控制器中的主程序采用前后臺(tái)系統(tǒng) 。通過(guò)以上對(duì)ISO15765網(wǎng)絡(luò)層協(xié)議的分析,網(wǎng)絡(luò)層協(xié)議234計(jì)算機(jī)工程2011年8月5日棧
18、的功能可通過(guò)網(wǎng)絡(luò)層接口、數(shù)據(jù)分段與重組、時(shí)間管理、 錯(cuò)誤處理4個(gè)模塊實(shí)現(xiàn),協(xié)議棧實(shí)現(xiàn)的原理如圖4所示。其 中網(wǎng)絡(luò)層接口的實(shí)現(xiàn)比較簡(jiǎn)單,首先根據(jù)協(xié)議定義四類網(wǎng)絡(luò) 層服務(wù)接口的結(jié)構(gòu)體類型,然后定義相應(yīng)服務(wù)接口的結(jié)構(gòu)體 變量即可,重點(diǎn)講述其他3個(gè)模塊的實(shí)現(xiàn)過(guò)程。圖4網(wǎng)絡(luò)層協(xié)議棧實(shí)現(xiàn)原理4.1數(shù)據(jù)分段與重組在多幀傳輸時(shí),網(wǎng)絡(luò)層負(fù)責(zé)將傳輸?shù)臄?shù)據(jù)進(jìn)行分段和重 組,分段和重組的過(guò)程中需要設(shè)置網(wǎng)絡(luò)層緩沖區(qū)來(lái)暫時(shí)存放 數(shù)據(jù)。緩沖區(qū)的設(shè)置可以考慮 2種方案,一種是設(shè)置雙緩沖區(qū),分別用作接收緩沖區(qū)和發(fā)送緩沖區(qū)。該方案優(yōu)點(diǎn)是數(shù)據(jù) 的傳輸過(guò)程可實(shí)現(xiàn)全雙工通信,通信速率、總線負(fù)載率較高, 不需要單獨(dú)的緩沖區(qū)管理程序;缺點(diǎn)
19、是占用RAM空間大。另一種方案是設(shè)置單緩沖區(qū),接收和發(fā)送過(guò)程中網(wǎng)絡(luò)層互斥 使用該緩沖區(qū)。該方案只能進(jìn)行半雙工通信,通信速率較低, 實(shí)現(xiàn)過(guò)程中需要專門的程序?qū)彌_區(qū)進(jìn)行管理;優(yōu)點(diǎn)是系統(tǒng)RAM的占用率低??紤]到開(kāi)發(fā)環(huán)境中硬件條件的限制,本研究采用單緩沖區(qū)方案。如圖5所示,為充分利用緩沖區(qū)空間,克服假溢出”現(xiàn)象,將緩沖區(qū)設(shè)計(jì)為單向循環(huán)隊(duì)列。在多幀傳輸過(guò)程中接 收到首幀時(shí),將首幀中的FF_DL與緩沖區(qū)大小進(jìn)行比較,如 果緩沖區(qū)的容量大于FF_DL,允許向緩沖區(qū)中寫入數(shù)據(jù)。在 數(shù)據(jù)重組完成后只需要將數(shù)據(jù)在循環(huán)隊(duì)列中的開(kāi)始位置和數(shù) 據(jù)的總長(zhǎng)度提供給應(yīng)用層,應(yīng)用層便可從緩沖區(qū)中讀取重組 后的數(shù)據(jù)。在分段發(fā)送
20、數(shù)據(jù)時(shí),先比較發(fā)送數(shù)據(jù)的長(zhǎng)度與緩 沖區(qū)容量,如果數(shù)據(jù)的長(zhǎng)度小于緩沖區(qū)容量將發(fā)送數(shù)據(jù)拷入 緩沖區(qū)中,同時(shí)保存數(shù)據(jù)的開(kāi)始位置與長(zhǎng)度。啟動(dòng)數(shù)據(jù)分段 將數(shù)據(jù)依次從緩沖區(qū)中取出填入相應(yīng)的 N_PDU中,數(shù)據(jù)鏈路層根據(jù)接收到的N_PDU填充CAN幀,調(diào)用發(fā)送函數(shù)發(fā)送 數(shù)據(jù)。圖5分段傳輸示意圖2 分段和重組的過(guò)程中互斥使用緩沖區(qū),只有循環(huán)隊(duì)列為 空時(shí)才允許新的緩沖區(qū)使用請(qǐng)求。為適應(yīng)不同應(yīng)用中的數(shù)據(jù) 對(duì)網(wǎng)絡(luò)層緩沖區(qū)容量的要求,緩沖區(qū)長(zhǎng)度采用宏定義,最大 可達(dá) 4 095 Byte。4.2時(shí)間管理時(shí)間管理包括延時(shí)發(fā)送和超時(shí)處理兩部分功能。同一塊 中的連續(xù)幀發(fā)送或流控制等待幀連續(xù)發(fā)送時(shí),連續(xù)發(fā)送的兩幀之間需要一定
21、的間隔時(shí)間,來(lái)保證接收方有足夠的時(shí)間處 理接收到的數(shù)據(jù),即發(fā)送方前一幀發(fā)送結(jié)束后需要延時(shí)固定 時(shí)間后再調(diào)用發(fā)送函數(shù)發(fā)送新的幀。此外,在通信過(guò)程中通 信雙方每發(fā)送完一幀或接收到一幀后,都需要記錄時(shí)間進(jìn)行 超時(shí)判斷。網(wǎng)絡(luò)層通信過(guò)程中使用系統(tǒng)時(shí)鐘進(jìn)行計(jì)時(shí)。通過(guò)配置寄 存器,利用系統(tǒng)時(shí)鐘產(chǎn)生一個(gè)長(zhǎng)度為1 ms的實(shí)時(shí)中斷基準(zhǔn)時(shí)間(RTICTL = Ox1f。在實(shí)時(shí)時(shí)鐘中斷函數(shù)中定義一個(gè) 16位的無(wú)符號(hào)計(jì)數(shù)器進(jìn)行加一操作,當(dāng)需要進(jìn)行延時(shí)操作時(shí)采集計(jì) 數(shù)器的當(dāng)前值作為計(jì)時(shí)開(kāi)始時(shí)間,當(dāng)計(jì)時(shí)器達(dá)到設(shè)定的時(shí)間 條件后進(jìn)行下一步操作。需要進(jìn)行超時(shí)判斷時(shí)將計(jì)時(shí)器值、 超時(shí)參數(shù)與需要觸發(fā)的事件是否發(fā)生一起作為發(fā)生超時(shí)錯(cuò)
22、誤 的判斷條件。4.3錯(cuò)誤處理如圖3所示,在網(wǎng)絡(luò)層通信過(guò)程中,發(fā)生任何類型錯(cuò)誤 時(shí)通信過(guò)程都會(huì)被中斷,并轉(zhuǎn)入錯(cuò)誤處理模塊進(jìn)行錯(cuò)誤處理。錯(cuò)誤處理模塊將接收到的錯(cuò)誤指示信息與自身case語(yǔ)句中的錯(cuò)誤類型進(jìn)行匹配,匹配成功后執(zhí)行相應(yīng)的錯(cuò)誤處理操作, 并將錯(cuò)誤告知應(yīng)用層。錯(cuò)誤處理完成后應(yīng)當(dāng)及時(shí)清空網(wǎng)絡(luò)層緩沖區(qū),已備網(wǎng)絡(luò)層接收新的數(shù)據(jù)。5協(xié)議棧測(cè)試為驗(yàn)證協(xié)議棧功能的可靠性與正確性,在PC機(jī)的VC6.0環(huán)境下開(kāi)發(fā)測(cè)試程序?qū)?shí)現(xiàn)的協(xié)議棧進(jìn)行測(cè)試。測(cè)試程序通過(guò)周立功公司的USBCANI接口卡與控制器進(jìn)行 CAN通信。測(cè)試程序的運(yùn)行界面如圖6所示,通信的整個(gè)過(guò)程可在測(cè)試程序中實(shí)時(shí)顯示,通過(guò)讀取顯示數(shù)據(jù)分析協(xié)議棧
23、運(yùn)行的正確性與可靠性。設(shè)定上位機(jī)地址為 0x00,控制器地址為0x10,CAN總線的通信速率為500 Kb/s。圖6測(cè)試程序界面測(cè)試過(guò)程分為2個(gè)部分:正常通信功能測(cè)試和錯(cuò)誤處理功能測(cè)試。正常通信功能測(cè)試通過(guò)單幀發(fā)送(測(cè)試程序單幀響應(yīng)(控制器、單幀發(fā)送分段響應(yīng)、分段發(fā)送分段響應(yīng)、分段發(fā)送單幀響應(yīng)4類測(cè)試實(shí)例來(lái)測(cè)試協(xié)議棧在正常通信情況下的數(shù)據(jù)分段與重組等功能是否正常。錯(cuò)誤處理功能測(cè)試根據(jù)故障類型編寫錯(cuò)誤實(shí)例,驗(yàn)證網(wǎng)絡(luò)層協(xié)議棧是否能夠?qū)﹀e(cuò)誤進(jìn)行識(shí)別,并通過(guò)錯(cuò)誤處理模塊對(duì)出現(xiàn)的錯(cuò)誤進(jìn)行容錯(cuò)處理,保證通信正常。(下轉(zhuǎn)第237頁(yè)第37卷第15期237I illl. Jliil iiLl ii Jiilll
24、S.S5£OJ03OJ0DD fOD imo ion JSOD3000 iixyj 40t»原菊梅,潘宏俠:基于遞推參數(shù)辨識(shí)的齒輪箱故障在線檢測(cè)有發(fā)生變化,而當(dāng)該統(tǒng)計(jì)量超過(guò)一定范圍時(shí)則認(rèn)為齒輪箱發(fā)生故障。對(duì)3.2節(jié)中所得的正常工況、正常運(yùn)行一段時(shí)間后出現(xiàn)齒輪磨損2種情況的遞推模型參數(shù)進(jìn)行參數(shù)變化量的 2-范數(shù)統(tǒng)計(jì),得到圖3。0500 1 000 1 500 2 000 2 500 3 0003 500 4 000 4 5000.000.050.100.150.200.250.300.350.400.450.50采樣點(diǎn)(a正常工況時(shí)參數(shù)變化量的2-范數(shù)(b齒面磨損時(shí)參數(shù)變化量
25、的2-范數(shù)圖3 2種情況下參數(shù)變化量的2-范數(shù)從圖3可以看出,齒輪箱保持正常工作狀態(tài)時(shí),其參數(shù)變化量的2-范數(shù)波動(dòng)不大,基本保持在小于0.43的范圍內(nèi),而當(dāng)突然出現(xiàn)齒面磨損時(shí),參數(shù)變化量的2-范數(shù)將超過(guò)正常時(shí)的范圍,出現(xiàn)大于0.5的變化量。同樣可以得到正常運(yùn)行一段時(shí)間后突然出現(xiàn)軸承外圈剝落時(shí)的參數(shù)變化量2-范數(shù)圖如圖4所示,其參數(shù)變化量的2-范數(shù)突變性表現(xiàn)得更突出。若取遞推參數(shù)變化量的閾值為0.5,則2種情況下均能快速檢測(cè)出齒輪箱發(fā)生故障。說(shuō)明用此方法可以進(jìn)行齒輪箱故障的在線檢測(cè)。圖4正常運(yùn)行后軸承外圈剝落參數(shù)變化量范數(shù)5結(jié)束語(yǔ)本文在對(duì)齒輪箱振動(dòng)信號(hào)進(jìn)行時(shí)序模型建立的基礎(chǔ)上 研究了遞推AR模型
26、參數(shù)辨識(shí)技術(shù),然后基于Kalman濾波技 術(shù)進(jìn)行齒輪箱振動(dòng)信號(hào)遞推參數(shù)模型辨識(shí)。同時(shí),對(duì)遞推參 數(shù)變化量的2-范數(shù)進(jìn)行了統(tǒng)計(jì)分析,說(shuō)明其可以作為齒輪箱 故障在線檢測(cè)的判定依據(jù)。通過(guò)實(shí)例分析,證明了所提方法 的可行性和有效性。進(jìn)一步的研究工作是對(duì)所構(gòu)造的統(tǒng)計(jì)量 用于齒輪箱在線故障檢測(cè)時(shí)的閾值的確定。閾值的大小可以 根據(jù)先驗(yàn)知識(shí)和故障的檢測(cè)率要求來(lái)確定,其值越大,則虛 警的可能性越小,而漏警的可能性越大;反之,其值越小, 則虛警的可能性越大,而漏警的可能性越小。參考文獻(xiàn)1 姚竹亭,潘宏俠.裝甲車輛齒輪主傳動(dòng)系統(tǒng)的建模與辨識(shí)J.振動(dòng)、測(cè)試與診斷,2005, 25(3: 196-199.2 黃國(guó)龍.基于階比跟蹤和AR模
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于成都地區(qū)房地產(chǎn)開(kāi)發(fā)的合作合同
- 大數(shù)據(jù)應(yīng)用項(xiàng)目技術(shù)開(kāi)發(fā)合同
- 化妝品生產(chǎn)項(xiàng)目投資合同
- 電力工程合同管理計(jì)劃
- 餐廳場(chǎng)地租賃合同
- 物聯(lián)網(wǎng)技術(shù)應(yīng)用合同
- 藝考培訓(xùn)協(xié)議合同
- 2025年度新能源汽車充電樁建設(shè)補(bǔ)充合同范本
- 2025年度醬香型白酒酒莊旅游合作合同
- 2025年度貨車租賃及車輛租賃合同變更協(xié)議
- 結(jié)腸造瘺還納手術(shù)配合
- 2024年云南省中考物理真題含解析
- 2025年中國(guó)艾草行業(yè)市場(chǎng)現(xiàn)狀、發(fā)展概況、未來(lái)前景分析報(bào)告
- (閩教版)六年級(jí)下英語(yǔ)教學(xué)計(jì)劃
- 人教版英語(yǔ)高考試卷與參考答案(2024年)
- 河砂、碎石生產(chǎn)質(zhì)量保證措施方案
- 三位數(shù)除以兩位數(shù)過(guò)關(guān)練習(xí)口算題大全附答案
- 紅樓夢(mèng)服飾文化
- 湖北省2024年村干部定向考試真題
- 2024年沙石材料運(yùn)輸合同
- 浙江省中小學(xué)心理健康教育課程標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論