已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀
[碩士論文精品]基于ccp協(xié)議的電池管理標(biāo)定系統(tǒng)研究.pdf 免費(fèi)下載
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
中文摘要摘要電池管理系統(tǒng)是混合動力汽車中的關(guān)鍵部件,是電池和整車的聯(lián)接紐帶。在對電池狀態(tài)進(jìn)行監(jiān)控的同時,還需估算電池的剩余電量,調(diào)整電池的充放電功率限制,為整車能量的流動提供依據(jù)。為使動力電池合理利用,需要對系統(tǒng)參數(shù)進(jìn)行大量標(biāo)定試驗(yàn)。本文借鑒了汽車發(fā)動機(jī)電控系統(tǒng)標(biāo)定方法,提出了一種基于CCP協(xié)議的電池管理系統(tǒng)的標(biāo)定方案。該方案主要由電池管理系統(tǒng)、USBCAN通信模塊及主控PC機(jī)的標(biāo)定平臺軟件組成,并采用國際通用的CCP作為電池管理系統(tǒng)和PC機(jī)的標(biāo)定通信協(xié)議,由于CCP基于地址通信,可以提高了系統(tǒng)的擴(kuò)展性和通用性。論文簡要介紹了CCP協(xié)議及標(biāo)定系統(tǒng)組成,完成了針對長安混合動力汽車的電池管理系統(tǒng)硬件系統(tǒng)設(shè)計(jì)。在此基礎(chǔ)之上,著重討論了CCP驅(qū)動程序與接口程序的開發(fā)方法,以及實(shí)時操作系統(tǒng)IRTCOSII在電池管理系統(tǒng)軟件設(shè)計(jì)中的開發(fā)方法。電池管理系統(tǒng)所采用的微控制器是FREESCALE16位芯片MC9S12DTL28,軟件開發(fā)是在集成開發(fā)環(huán)境CODEWARRIOR下完成。采用UML建模工具對標(biāo)定平臺軟件的功能需求和動態(tài)行為進(jìn)行了建模,并在VISUALC60下完成了軟件的開發(fā)。最后對電池管理系統(tǒng)進(jìn)行初步標(biāo)定試驗(yàn),結(jié)果表明將CCP協(xié)議引入電池管理系統(tǒng)可以方便對系統(tǒng)進(jìn)行標(biāo)定,實(shí)現(xiàn)對電池的合理利用。關(guān)鍵詞混合動力汽車;電池管理系統(tǒng);CCP協(xié)議;標(biāo)定;ITCOS11分類號U46972ABSTRACTABSTRACTBATTERYMANAGEMENTSYSTEMWHICHISTHELINKINGLIGAMENTOFBATTERYANDHEVISTHEKEYPARTFORHEVITMONITORSTHESTATEOFBATTERY,ESTIMATESTHESTATEOFCHARGEANDADJUSTSTHEBATTERYCHARGEDISCHARGEPOWERLIMITALLTHESEARETHEFOUNDATIONOFTHECAI“SENERGYFLOWTHECALIBRATIONPROGRAMBASEDONCCPPROTOCOLISDEVELOPEDWHICHISMAINLYCOMPOSEDOFTHEBATTERYMANAGEMENT,USBCANCOMMUNICATIONCONVERTMODULEANDTHECALIBRATIONPLATFORMSOFTWARETHECCPPROTOCOLCANIMPROVETHESYSTEMSSCALABILITYANDVERSATILITYTHEPAPEROUTLINESTHECCPPROTOCOLANDTHECOMPOSITIONOFCALIBRATIONSYSTEMTHEBATTERYSYSTEMSHARDWAREFORCHANGANHEVISDESIGNEDONTHISBASIS,THEPAPERINTRODUCESHOWTODESIGNCCPDRIVERANDSOFTWAREDEVELOPMENTFORBATTERYMANAGEMENTUSINGIXCOSIITHEMCUMC9S12DT128ISTHECORECONTROLLEROFTHEBATTERYMANAGEMENTSYSTEM,WHILESOFTWAREDESIGNISCOMPETEDININTEGRATEDDEVELOPMENTENVIRONMENTCODEWARRIORUMLMODELINGTOOLISUSEDTOMODELFORCALIBRATIONSOFTWAREPLATFORMFUNCTIONALREQUIREMENTSANDDYNAMICBEHAVIOR,ANDVISUALC60ISUSEDTOCOMPLETESOFTWAREINORDERTOVERIFYTHECALIBRATIONSYSTEMFUNCTION,THECALIBRATIONTESTSHAVEBEENDONETHERESULTINDICATESTHATTHECCPPROTOCOLCANMAKETHECALIBRATIONOFTHESYSTEMFACILELYANDHELPTHEBATTERYISUSEDMOREREASONABLEKEYWORDSHEV;BATTERYMANAGEMENTSYSTEM;CCP;CALIBRATION;TCOSIICLASSNO1546972V11獨(dú)創(chuàng)性聲明本人聲明所呈交的學(xué)位論文是本人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作和取得的研究成果,除了文中特別加以標(biāo)注和致謝之處外,論文中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包含為獲得北京交通大學(xué)或其他教育機(jī)構(gòu)的學(xué)位或證書而使用過的材料。與我一同工作的同志對本研究所做的任何貢獻(xiàn)均已在論文中作了明確的說明并表示了謝意。學(xué)位論文作者簽名1A孓叉簽字同期希7年么月筘77學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解北京交通大學(xué)有關(guān)保留、使用學(xué)位論文的規(guī)定。特授權(quán)北京交通大學(xué)可以將學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,并采用影印、縮印或掃描等復(fù)制手段保存、匯編以供查閱和借閱。同意學(xué)校向國家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和磁盤。保密的學(xué)位論文在解密后適用本授權(quán)說明學(xué)位論文作者簽名益大叉又導(dǎo)師簽名辯醐中聽辯嗍1”坳致謝本論文的工作是在我的導(dǎo)師姜久春教授的悉心指導(dǎo)下完成的,姜久春教授嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和科學(xué)的工作方法給了我極大的幫助和影響。在此衷心感謝兩年來姜久春老師對我的關(guān)心和指導(dǎo)。姜久春教授悉心指導(dǎo)我們完成了實(shí)驗(yàn)室的科研工作,在學(xué)習(xí)上和生活上都給予了我很大的關(guān)心和幫助,在此向姜久春老師表示衷心的謝意。張維戈教授和王占國老師對于我的科研工作和論文都提出了許多的寶貴意見,在此表示衷心的感謝。在實(shí)驗(yàn)室工作及撰寫論文期間,實(shí)驗(yàn)室里的師兄弟師姐妹對我論文的研究工作給予了熱情幫助,在此向他們表達(dá)我的感激之情。另外也感謝我的家人,他們的理解和支持使我能夠在學(xué)校專心完成我的學(xué)業(yè)。緒論11引言1緒論交通能源與環(huán)境保護(hù)是2L世紀(jì)全球面臨的重大挑戰(zhàn),人們在不斷地尋求清潔的代用燃料,以改善日益惡化的交通排放現(xiàn)狀,電動汽車逐漸成為各國政府和汽車制造商關(guān)注的焦點(diǎn),人們不遺余力地開展電動汽車的研究,試圖使其成為新世紀(jì)汽車的發(fā)展主流。當(dāng)代融合多種高新技術(shù)而興起的純蓄電池電動汽車、混合動力電動汽車及燃料電池汽車正在引發(fā)世界汽車工業(yè)的一場革命,展現(xiàn)了汽車工業(yè)的光明未來。12HEV和BMS在國內(nèi)外的發(fā)展?fàn)顩r國際電工委員會IEC電動汽車技術(shù)委員會將混合動力汽車HYBRIDELECTRICVEHICLE,HEV定義為有一種以上能量轉(zhuǎn)換器提供驅(qū)動動力的混合型電動汽車,也可簡單定義為將電力驅(qū)動和輔助動力單元AUXILIARYPOWERUNIT,APU合用到一輛車上。混合動力汽車采用適當(dāng)?shù)娜剂限D(zhuǎn)換裝置如內(nèi)燃機(jī)、儲能裝置和電動機(jī)作為混合動力源,在嚴(yán)密的控制策略控制下,使燃料轉(zhuǎn)換裝置、儲能裝置和電機(jī)在驅(qū)動工況下盡可能工作在高效率、低排放區(qū)域,在汽車制動工況下,通過發(fā)電機(jī)或電機(jī)工作象限的調(diào)整回收部分制動能量,從而大大改善汽車在不同工況行駛時的燃油經(jīng)濟(jì)性能、尾氣排放性能及其他使用性能?;旌蟿恿ζ嚱Y(jié)合了傳統(tǒng)內(nèi)燃機(jī)汽車和純電動汽車的優(yōu)點(diǎn),續(xù)航里程不受限制,而且對于傳統(tǒng)汽車的改動并不大,產(chǎn)業(yè)化生產(chǎn)的投入相比燃料電池汽車也少得多心1。20世紀(jì)90年代以來,各大汽車公司通過使用先進(jìn)的開發(fā)手段,已在較短的開發(fā)周期內(nèi)相繼推出了采用不同布置形式和控制策略的HEV產(chǎn)品。1991年德國大眾汽車公司第一次推出了“CHICO混合動力電動微型汽車。自1995年起,世界各大汽車生產(chǎn)廠商已將研究的重點(diǎn)轉(zhuǎn)向了混合動力汽車的研究開發(fā)。同本豐田汽車公司是走在混合動力汽車研究發(fā)展前沿的汽車公司,開發(fā)的混合動力汽車已達(dá)到實(shí)用化水平。1997年,豐田推出了世界上第一款批量生產(chǎn)的混合動力汽車PRIUS,其后又在2001年相繼推出了混合動力的面包車和阜冠轎車,2003年推出第二代PRIUS,在日本、美國和歐洲上市。截至2006年4月,豐田PRIUS混合動力車全球銷售504700輛,成為到目前為止市場表現(xiàn)最好的混合動力汽車。日本的本田汽車公司于1999年獨(dú)立研制開發(fā)的INSIGHT混合動力車也已經(jīng)實(shí)現(xiàn)量產(chǎn)。繼INSIGHT后,北京交通人學(xué)碩士學(xué)位論文2002年本田公司又推出DUALNOTE運(yùn)動型概念車。國內(nèi)90年代末期開始了混合動力汽車的研發(fā)工作。1999年,清華大學(xué)與廈門金龍聯(lián)合汽車工業(yè)有限公司合作研制成功國內(nèi)第一輛混合動力輕型客車。2001年底,國家“863“電動汽車科技攻關(guān)項(xiàng)目正式啟動,第一批項(xiàng)目中主要是混合動力車,目前仍在進(jìn)行當(dāng)中。一汽和東風(fēng)汽車集團(tuán)聯(lián)合各高校和研究所,在各自客車底盤上,研發(fā)混合驅(qū)動的公共汽車和大型客車。此外,東風(fēng)電動汽車公司還承擔(dān)了混合動力轎車的研究開發(fā)。目前東風(fēng)電動車輛股份有限公司丌發(fā)出混合動力汽車。其中,EQ7200HEV型混合動力轎車以風(fēng)神藍(lán)鳥轎車為平臺,以滿足未來城市公務(wù)、出租用車需求為目標(biāo);EQ6110V型混合動力城市公交車采用混聯(lián)方案,專為2008年北京奧運(yùn)會公交用車而開發(fā)。北京嘉捷博大電動車有限公司是國內(nèi)最早進(jìn)行混合動力技術(shù)和相關(guān)產(chǎn)品的研究和開發(fā)實(shí)踐的公司,2001年以來自主開發(fā)了串聯(lián)式電動混合動力技術(shù)并且成功研制出中國第一輛混合動力電動大客車和世界第一輛混合動力電動機(jī)場擺渡車。天津清源電動車輛有限公司開發(fā)出混合動力中型客車,排放達(dá)到歐III標(biāo)準(zhǔn),燃油經(jīng)濟(jì)性提高15以上,適于城市和城際之間的公共交通。深圳明華環(huán)保汽車有限公司開發(fā)出混合動力電動輕型客車,采用并聯(lián)式混合動力系統(tǒng),內(nèi)燃機(jī)采用達(dá)到歐II排放標(biāo)準(zhǔn)的柴油機(jī)。第一汽車集團(tuán)公司、美國電動車亞洲公司、汕頭國家電動汽車試驗(yàn)示范區(qū)三方共同合作推出一款混合動力轎車A7180AE。我國通過國家“八五“、“九五”以及“十五”電動汽車的科技攻關(guān),在HEV方面已經(jīng)積累了一定的技術(shù)基礎(chǔ)和經(jīng)驗(yàn),正向商品化階段邁進(jìn)【3】。在“十一五“中,部分汽車公司的混合動力大巴和轎車已經(jīng)成功在北京奧運(yùn)會交付使用。2009年2月,財(cái)政部、科技部初步選擇了北京、上海、重慶等13個城市,率先在公交、出租、公務(wù)、市政和郵政等公共交通領(lǐng)域試點(diǎn)推廣使用以混合動力為主的新能源汽車,在一些有條件的大城市,也適當(dāng)推廣應(yīng)用部分純電動和燃料電池汽車,這將進(jìn)一步促進(jìn)電動汽車的發(fā)展。電動汽車電池管理系統(tǒng)BARERYMANAGEMENTSYSTEM,簡稱BMS是電動汽車中一個越來越重要的部分,是個處于監(jiān)控運(yùn)行及保護(hù)電池關(guān)鍵技術(shù)中的核心地位,能給出電池剩余電量和功率強(qiáng)度預(yù)測、進(jìn)行智能充電和電池安全診斷等功能集合的綜合系統(tǒng)。從有關(guān)資料來看,美國一直站在世界汽車技術(shù)領(lǐng)域的最前列,在電動汽車的電池管理系統(tǒng)的研究方面也走在世界各國的前列。通用汽車公司的BMS采用了一個微電腦,對電池組進(jìn)行管理。監(jiān)測和控制蓄電池組的充放電工作狀態(tài),提高電池的充放電性能,預(yù)測蓄電池組的荷電狀態(tài)和剩余能量。美國也在開展基于智能電池模塊SMARTBARERYMODULE簡稱SBM的電池管理系統(tǒng)的研究。即在一個電池模塊中裝入一個微控制器并集成相關(guān)外圍電路,然后封裝為一個整2緒論體,多個智能電池模塊再與一個主控制模塊相連,加以其它輔助設(shè)備,就構(gòu)成了一個基于智能電池的管理系統(tǒng)。該BMS系統(tǒng)成功實(shí)現(xiàn)了對每個電池模塊的狀態(tài)監(jiān)測、模塊內(nèi)電池電量均衡和電池保護(hù)等功能。在歐洲,法國是電動汽車應(yīng)用發(fā)展較快的國家。法國電動汽車計(jì)劃EDF設(shè)計(jì)了一個隨車電池管理系統(tǒng)來管理其電動汽車上的密封鉛酸電池組,其主要功能有電池壽命的記錄、充電監(jiān)測、行駛過程中電池組的管理、剩余電量顯示,防止對電池的有害使用,收集電池信息從而確定如何合理使用電池和更換電池。在德國,西門子公司在其丌發(fā)的電動汽車上安裝了一個電池管理系統(tǒng),電動汽車充電時,電池管理系統(tǒng)能跟蹤電池充電特性,控制充電器對電池進(jìn)行優(yōu)化充電,電池管理系統(tǒng)對電池的工作狀態(tài)進(jìn)行監(jiān)測,檢測電池組的電量消耗,并將有關(guān)信息傳送到儀表板上的儀表和信號指示裝置上。在日本,本田公司在電動汽車上安裝的電池管理系統(tǒng)包括管理控制模塊、車載充電器、慣性控制開關(guān)、高壓系統(tǒng)安全檢測裝置等。該系統(tǒng)對電池的狀態(tài)進(jìn)行監(jiān)控,并根據(jù)電池的狀態(tài)控制車載充電器的充電過程,當(dāng)動力電池組高壓端與車體有接觸時,管理系統(tǒng)發(fā)出報(bào)警信號,當(dāng)電動汽車發(fā)生碰撞時,管理系統(tǒng)切斷電源,以保證安全。我國在十五和十一五期間設(shè)立了電動汽車重大專項(xiàng),經(jīng)過幾年的發(fā)展之后,在電池管理系統(tǒng)方面取得了很大的突破,與國外的水平也較為接近。各高校和動力電池公司等單位承擔(dān)了混合動力汽車中電池系統(tǒng)研究的相關(guān)課題,并取得了良好的效果,在一汽,東風(fēng),上汽等多個汽車廠家均進(jìn)行了裝車,部分實(shí)現(xiàn)了量產(chǎn)。北京交通大學(xué)研究了包括國家電動汽車運(yùn)行試驗(yàn)示范區(qū)、東風(fēng)汽車集團(tuán)、北京公共交通控股有限公司、北京121示范線、北京奧運(yùn)用電動大巴等電動車電池管理系統(tǒng),具有性能穩(wěn)定、可靠性好、檢測精度高、功能齊備、方便耐用等優(yōu)點(diǎn)。經(jīng)過大量的研究發(fā)展,電池管理系統(tǒng)已經(jīng)從監(jiān)控系統(tǒng)逐漸向管理系統(tǒng)轉(zhuǎn)變,在功能、可靠性、實(shí)用性、安全性等方面都有了很大提高,檢測精度提高,優(yōu)化了整車通訊,數(shù)據(jù)處理方面,增加了電池故障的實(shí)時分析能力,對電池的濫用進(jìn)行預(yù)警和報(bào)警,對故障進(jìn)行定位,為電池的維護(hù)提供便利,增加了電池的均衡控制能力,但在電池的建模,SOC和SOH的計(jì)算和評價方面,充放電算法等方面還需要進(jìn)一步研究41別。13基于CCP協(xié)議標(biāo)定的優(yōu)勢混合動力整車控制系統(tǒng)是一個很復(fù)雜的控制系統(tǒng),為了使混合動力系統(tǒng)協(xié)調(diào)工作,并達(dá)到最佳的綜合性能,必須對整車控制器的控制參數(shù)進(jìn)行相應(yīng)的修改和北京交通人學(xué)碩士學(xué)位論文優(yōu)化,使混合動力系統(tǒng)按照最優(yōu)的控制參數(shù)運(yùn)行,這個過程稱為標(biāo)定。傳統(tǒng)的汽車標(biāo)定只是涉及到發(fā)動機(jī)電子控制系統(tǒng)ECU,這是因?yàn)閭鹘y(tǒng)的汽車最主要的核心部件就是發(fā)動機(jī),發(fā)動機(jī)的控制性能優(yōu)劣直接決定了汽車性能。ECU是計(jì)算機(jī)技術(shù)在發(fā)動機(jī)控制技術(shù)的典型應(yīng)用,采用微型計(jì)算機(jī)數(shù)字控制的燃油噴射系統(tǒng)和電子點(diǎn)火系統(tǒng),使發(fā)動機(jī)的控制變得快速和準(zhǔn)確,從根本上解決了發(fā)動機(jī)控制的難題?,F(xiàn)在,發(fā)動機(jī)電控系統(tǒng)己成為現(xiàn)代發(fā)動機(jī)的標(biāo)準(zhǔn)配置。發(fā)動機(jī)電控系統(tǒng)的控制效果,很大程度上取決于其內(nèi)部控制參數(shù)的優(yōu)劣。為使發(fā)動機(jī)達(dá)到最佳性能,必須對這些控制參數(shù)進(jìn)行精確的標(biāo)定,獲取其綜合最優(yōu)值,使發(fā)動機(jī)按照最優(yōu)控制參數(shù)運(yùn)行?;旌蟿恿ζ囋趥鹘y(tǒng)汽車基礎(chǔ)上,還需要兩大重要部件電機(jī)和輔助儲能單元,這就增加了整車控制器需要控制的參數(shù)。而作為儲能單元的電池,它需要自己的電池管理系統(tǒng)以優(yōu)化電池使用和延長電池壽命。電池管理系統(tǒng)為了實(shí)現(xiàn)優(yōu)化電池使用和延長電池壽命的目標(biāo),需要對其內(nèi)部的一些參數(shù)針對具體使用的電池進(jìn)行優(yōu)化,即需要進(jìn)行系統(tǒng)標(biāo)定。CCP協(xié)議首先在歐洲成為標(biāo)準(zhǔn),不僅ASAP的很多成員廠商均有支持它的ECU產(chǎn)品,VECTOR公司的CANAPE,DSPACE公司的CALDESK,ETAS公司的INCACCP以及ATI公司的VISIONCCP及等標(biāo)定和測試工具都支持CCP協(xié)議,德國BOSCH公司新一代發(fā)動機(jī)管理系統(tǒng)的標(biāo)定也將全面采用CCP協(xié)議。CCP協(xié)議的不斷完善和發(fā)展,顯示出了強(qiáng)大優(yōu)勢,使得標(biāo)定通訊標(biāo)準(zhǔn)的統(tǒng)一成為可制6J。14研究內(nèi)容本課題的研究目的是針對電池管理系統(tǒng)內(nèi)部控制參數(shù)優(yōu)化的實(shí)際應(yīng)用需要,主要研究內(nèi)容包括1、在廣泛查閱文獻(xiàn)資料的基礎(chǔ)上,提出電池管理標(biāo)定系統(tǒng)的整體結(jié)構(gòu)設(shè)計(jì)方案。2、設(shè)計(jì)適用于混合動力車輛的車載電池管理系統(tǒng)的硬件電路的設(shè)計(jì),確保各功能模塊的準(zhǔn)確測量,保證測量精度,具有較高的可靠性和穩(wěn)定性,有較強(qiáng)的抗干擾性能。3、實(shí)現(xiàn)CCP標(biāo)定驅(qū)動程序的開發(fā)和實(shí)時操作系統(tǒng)I_TCOSII在電池管理系統(tǒng)的移植,完成基于它們的應(yīng)用程序開發(fā)。開發(fā)適合電池管理系統(tǒng)標(biāo)定用的上位機(jī)軟件。4、對動力電池的功率限制進(jìn)行初步標(biāo)定試驗(yàn)。4緒論15本章小結(jié)本章首先介紹了課題研究背景,結(jié)合對電池管理系統(tǒng)的國內(nèi)外研究現(xiàn)狀進(jìn)行了綜述,介紹了課題的研究目的和研究工作的內(nèi)容。5CCP協(xié)議概述2CCP協(xié)議概述CCP協(xié)議是標(biāo)定平臺軟件和標(biāo)定型ECU連接所需的軟件接口協(xié)議,是在CAN數(shù)據(jù)幀的數(shù)據(jù)域中擴(kuò)展的應(yīng)用層協(xié)議,定義了數(shù)據(jù)域內(nèi)數(shù)據(jù)的具體含義,因此完全遵循CAN20B標(biāo)準(zhǔn)。CCP由歐洲的自動測量系統(tǒng)標(biāo)準(zhǔn)化協(xié)會ASAM提出并制定,屬于ASAP標(biāo)準(zhǔn)體系的一部分,接口的標(biāo)準(zhǔn)化使得標(biāo)定系統(tǒng)更為通用,功能也更加強(qiáng)大。本課題采用的CCP協(xié)議版本為1999年發(fā)布的21版。21CAN總線協(xié)議211基本概念CANCONTROLLERAREANETWORK艮J控制器局域網(wǎng)絡(luò),屬于工業(yè)現(xiàn)場總線的范疇。與一般的通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時性和靈活性。由于其良好的性能及獨(dú)特的設(shè)計(jì),CAN總線越來越受到人們的重視。它在汽車領(lǐng)域上的應(yīng)用是最為廣泛的,世界上一些著名的汽車制造廠商,如BENZ奔馳、BMW寶馬、PORSCHE保時捷、ROLLSROYCE勞斯萊斯和JAGUAR美洲豹等都采用了CAN總線來實(shí)現(xiàn)汽車內(nèi)部控制系統(tǒng)與各檢測和執(zhí)行機(jī)構(gòu)間的數(shù)據(jù)通信。CAN總線是一種串行數(shù)據(jù)通信協(xié)議,通信介質(zhì)可以是雙絞線、同軸電纜或光導(dǎo)纖維,通信速率可達(dá)1MBPS。CAN總線通信接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級判別等項(xiàng)工作。CAN協(xié)議的一個最大特點(diǎn)是廢除了傳統(tǒng)的站地址編碼,而代之以對通信數(shù)據(jù)塊進(jìn)行編碼。采用這種方法的優(yōu)點(diǎn)可使網(wǎng)絡(luò)內(nèi)的節(jié)點(diǎn)個數(shù)在理論上不受限制,數(shù)據(jù)塊的標(biāo)識碼可由11位或29位二進(jìn)制數(shù)組成,因此可以定義211或229個不同的數(shù)據(jù)塊,這種按數(shù)據(jù)塊編碼的方式,可以非常靈活地控制節(jié)點(diǎn)的通信對象和通信來源,比如使不同的節(jié)點(diǎn)同時接受到相同的數(shù)據(jù),這一點(diǎn)在分布式控制系統(tǒng)中非常有用。數(shù)據(jù)段長度最多為8個字節(jié),可滿足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測試數(shù)據(jù)的一般要求。同時,8個字節(jié)不會過長占用總線時間,從而保證了通信的實(shí)時性。CAN協(xié)議采用CRC檢驗(yàn)并可提供相應(yīng)的錯誤處理功能,保證了數(shù)據(jù)通信的可靠性訂引。CAN具有下列主要特性1、通信方式靈活網(wǎng)絡(luò)上任意一個節(jié)點(diǎn)均可以在任意時刻主動地向網(wǎng)絡(luò)上的其它節(jié)點(diǎn)發(fā)送信息,而不分主從;7北京交通大學(xué)碩士學(xué)位論文2、多優(yōu)先級通過報(bào)文標(biāo)識符,可以為CAN節(jié)點(diǎn)賦予不同的優(yōu)先級,滿足系統(tǒng)的實(shí)時要求,數(shù)據(jù)最快可在134微秒內(nèi)得到傳輸;3、CAN采用非破壞性總線仲裁技術(shù)當(dāng)兩個節(jié)點(diǎn)同時向網(wǎng)絡(luò)上發(fā)送數(shù)據(jù)時,優(yōu)先級低的節(jié)點(diǎn)主動停止數(shù)據(jù)發(fā)送,而優(yōu)先級高的節(jié)點(diǎn)可不受影響地繼續(xù)傳輸數(shù)據(jù),大大地節(jié)約了總線仲裁沖突時間,在網(wǎng)絡(luò)負(fù)載很重的情況下也不會出現(xiàn)網(wǎng)絡(luò)癱瘓;4、CAN系統(tǒng)內(nèi)任意兩個節(jié)點(diǎn)之間的傳輸距離與其位速率有關(guān),其最大速率可達(dá)到1MBPS,最遠(yuǎn)距離可達(dá)10KM。CAN的總線數(shù)值為兩種互補(bǔ)的邏輯值“隱性“DOMA仆烈ANT”和“顯性”“RECESSIVE”。在“隱性狀態(tài)下CANH和CANL都被固定在平均電壓電平,VDIFF近似為0,而“顯性“狀態(tài)以大于最小閾值的差分電壓表示。但需要注意的是當(dāng)“隱性位“和“顯性位“同時發(fā)送時,最后的值將為“顯性”,這也是故障界定和錯誤檢測的根本基礎(chǔ);5、CAN網(wǎng)絡(luò)可以無破壞性地給予優(yōu)先權(quán)的仲裁,各個節(jié)點(diǎn)之間依據(jù)優(yōu)先權(quán)進(jìn)行總線訪問。在保證靈活性的同時,錯誤檢測和出錯信令方面都有獨(dú)特的要求,使全系統(tǒng)的數(shù)據(jù)相兼容,即使在發(fā)送期間丟失仲裁或因遭遇破壞,數(shù)據(jù)幀都可自動重新發(fā)送,甚至在嚴(yán)重出錯的情況下,系統(tǒng)可以很容易的區(qū)分暫時錯誤和永久性故障節(jié)點(diǎn)以及故障節(jié)點(diǎn)的自動脫離;6、CAN可以點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)成組及全局廣播方式傳送接收數(shù)據(jù);7、CAN總線通信格式采用短幀格式,傳輸時間短,受干擾概率較低,具有極好的檢錯效果,并且每幀信息都有CRC校驗(yàn)及其他檢錯措施,保證了數(shù)據(jù)通信的可靠性。212CAN網(wǎng)絡(luò)分層結(jié)構(gòu)CAN按照ISOOSI標(biāo)準(zhǔn)模型,CAN結(jié)構(gòu)分為數(shù)據(jù)鏈路層和物理層,其中數(shù)據(jù)鏈路層又分為邏輯鏈路控制子層LLC,LOGICALLINKCONTR01和媒體訪問控制子層MAC,MEDIUMACCESSCONTR01;物理層又分為物理信令PLS,PHYSICALSIGNALING、物理媒體附屬裝置PMA,PHYSICALMEDIUMATTACHMENT和媒體相關(guān)接口MDI,MEDIUMDEPENDENTINTERFACE。LLC子層的主要功能是報(bào)文濾波、超載通知和恢復(fù)管理,它為數(shù)據(jù)傳送和遠(yuǎn)程數(shù)據(jù)請求提供服務(wù),確認(rèn)由LLC子層接收的報(bào)文實(shí)際已被接收,并為恢復(fù)管理和通知超載提供信息。在定義目標(biāo)處理時,存在許多靈活性。MAC子層是CAN協(xié)議的核心,MAC子層的功能主要是數(shù)據(jù)的傳送規(guī)則,亦即控制幀結(jié)構(gòu),執(zhí)行仲裁、錯誤檢測、出錯標(biāo)定和故障界定,它描述由LLC子層接收到的報(bào)文和對LLC8CCP協(xié)議概述子層發(fā)送的認(rèn)可報(bào)文。在開始一次新的發(fā)送時,MAC子層需要確定總線是否丌放或者是否馬上丌始接收。MAC子層由稱為故障界定的一個管理實(shí)體監(jiān)控,它具有識別永久故障或短暫擾動的自檢機(jī)制。位定時特性也是MAC子層的一部分,MAC子層不存在修改的靈活性。物理層的功能是有關(guān)全部電氣特性在不同節(jié)點(diǎn)間的實(shí)際傳送,在一個網(wǎng)絡(luò)內(nèi),物理層的所有節(jié)點(diǎn)必須是相同的,然而,物理層的選擇存在很大的靈活性。CAN技術(shù)規(guī)范20B定義了數(shù)據(jù)鏈路中的MAC子層和LLC子層的一部分,并描述了與CAN有關(guān)的外層。物理層定義信號怎樣進(jìn)行發(fā)送,并涉及到位定時、位編碼和同步的描述。在這部分技術(shù)規(guī)范中,未定義物理層中的驅(qū)動器接收器特性,以便允許根據(jù)具體應(yīng)用,對發(fā)送媒體和信號電平進(jìn)行優(yōu)化陽1。213CAN協(xié)議報(bào)文2131CAN總線位數(shù)值的表示總線位數(shù)值表示如圖21所示,根據(jù)IS011898以及SAEJ2284定義的標(biāo)準(zhǔn),CAN總線的傳輸介質(zhì)由兩根傳輸線組成,其中一根為高電平傳輸線CANH,其對地電壓為VCANH,另一根為低電平傳輸線CANL,其對地電壓為VCANL,它們之間的差值被稱為差分電壓VDIFF,即VDIFFVCANHVCANL。滿足條件09V軔時化模式2一。始馳P設(shè)置CAN控匙囂少制器I丁作模式上使能發(fā)送和接收中斷設(shè)置CAN通訊速率I,LL退出圖42CAN控制器初始化程序流程圖FIGURE42INITIALPROGRAMFLOWCHARTOFCANCONTROLLERCCP協(xié)議驅(qū)動程序與應(yīng)用程序開發(fā)412CAN數(shù)據(jù)接收與發(fā)送模塊CAN數(shù)據(jù)接收與發(fā)送模塊通過中斷的方式來實(shí)現(xiàn)的,這種采用前后臺的方式可以充分利用從設(shè)備控制核心的資源,發(fā)送程序還會由CCP程序主動對其進(jìn)行調(diào)用。接收模塊在CAN接收到數(shù)據(jù)時將數(shù)據(jù)轉(zhuǎn)存,然后讓CCP驅(qū)動程序?qū)D(zhuǎn)存的數(shù)據(jù)進(jìn)行解析和處理;發(fā)送程序則將解析和處理的結(jié)果發(fā)送給標(biāo)定上位機(jī),MSCAN內(nèi)部具有三個發(fā)送緩沖區(qū),發(fā)送程序只有在發(fā)送緩沖器區(qū)至少有一個為空的情況下進(jìn)行發(fā)送操作。接收與發(fā)送模塊的程序流程圖如圖43所示進(jìn)入CAN發(fā)送H等多選擇發(fā)送緩沖區(qū)土L學(xué)設(shè)置發(fā)送緩沖區(qū)的優(yōu)先級上置請求發(fā)送標(biāo)志位圖43CAN驅(qū)動數(shù)據(jù)發(fā)送和接收程序流程圖FIGURE43TRANSEIVEANDRECEIVEFLOWCHARTDIAGRAMOFCANDRIVER42CCP驅(qū)動程序CCP驅(qū)動程序是CCP協(xié)議的真正實(shí)現(xiàn)者,使整個標(biāo)定系統(tǒng)設(shè)計(jì)的核心。421CCP驅(qū)動程序基本函數(shù)根據(jù)CCP協(xié)議規(guī)范,實(shí)現(xiàn)CCP的基本功能,需要包括兩個命令處理模塊命令處理模塊和DAQ處理模塊。這些實(shí)現(xiàn)在程序主要模塊CCEC中,其中包含J“女N表41所示的CCP驅(qū)動程序基本函數(shù)35北京交通人學(xué)碩士學(xué)位論文表41CCP驅(qū)動程序基本函數(shù)TLBLE41BASICFUNCTIONOFCCPDRIVER命令分類函數(shù)名說明使用CCP必須事先調(diào)用這個命令初始化CCPCCPINIT驅(qū)動程序。獲得協(xié)議規(guī)定SEED,然后根據(jù)該SEED按協(xié)議計(jì)CCPGETSEED算訪問資源的密匙KEY,通過CCPUNLOCK獲取資源的訪問權(quán)限。CCPUNLOCK以獲得的密匙獲取資源的訪問權(quán)限。CCPSETSSTATUS設(shè)置從機(jī)的會話狀態(tài)系統(tǒng)命令CCPGETSSTATUS獲取從機(jī)的會話狀態(tài)這是CCP驅(qū)動程序中最主要的函數(shù),每次接收到CRO命令的時候,都必須調(diào)用這個函數(shù)。其中包含了實(shí)現(xiàn)CCP驅(qū)動功能的所有28個命CCPCOMMAND令,并且通過這些命令再調(diào)用其它服務(wù)函數(shù),用于實(shí)現(xiàn)邏輯連接、解鎖、數(shù)據(jù)上傳、下載及FLASH擦除和寫操作等功能。設(shè)置需要標(biāo)定參數(shù)的物理地址,由從機(jī)根據(jù)物理地址所處的范圍來采取對RAM區(qū)、CCPSETMTAEEPROM區(qū)及CPU自帶的FLASH區(qū)不同的操CAL命令作。CCPDNLOAD由標(biāo)定平臺向從機(jī)下載標(biāo)定的數(shù)據(jù)CCPUPLOAD由從機(jī)向標(biāo)定平臺上傳標(biāo)定參數(shù)的數(shù)據(jù)CCPMOVE控制從機(jī)不同存儲區(qū)的數(shù)據(jù)轉(zhuǎn)移獲取從機(jī)控制內(nèi)部所配置的DAQ列表的數(shù)量CCPGETDAQSIZE以及每個列表所包含的ODT數(shù)量。在DAQ列表初始化時,選中所要設(shè)置元素所CCPSETDAQPTR在的DAQ列表、ODT及在該ODT中所處的位置。在DAQ列表初始化時,設(shè)置元素的物理地址DAQ命令CEPWRITEDAQ及數(shù)據(jù)長度CCPSTARTSTOP用來控制DAQ運(yùn)行狀態(tài),開始、暫停及退出這是DAQ模式實(shí)現(xiàn)的主要命令。按照一定的事件觸發(fā)如周期觸發(fā),采集預(yù)先設(shè)定需要CCPDAQ采集的數(shù)據(jù),并通過CAN發(fā)送DTO消息到標(biāo)定平臺,主要使用在監(jiān)測功能。422CCP驅(qū)動程序核心函數(shù)CCPCOMMAND圖44為CCPCOMMANDO函數(shù)流程圖,該函數(shù)作為CCP驅(qū)動程序的核心函數(shù),CCP協(xié)議中所有需要實(shí)現(xiàn)的功能都是在這個函數(shù)中執(zhí)行的。該函數(shù)負(fù)責(zé)解釋并執(zhí)CCP協(xié)議驅(qū)動程序與應(yīng)用孵序開發(fā)圖4_4CCPCOMMAND函數(shù)流程圖FIGURE44FLOWCHARTOFCCPCOMMAND行收到的CRO命令,其輸入量為指向CAN數(shù)據(jù)幀接受緩沖區(qū)首字節(jié)地址的指針,37北京交通大學(xué)碩十學(xué)位論文通過分析該CAN幀的第一個字節(jié)BYTE0即命令代碼字節(jié)CMD從而判斷該CRO幀的功能,在建立好邏輯連接的前提下,采用SWITCH結(jié)構(gòu)噱副將任務(wù)分配至具體的模塊,再調(diào)用CCP驅(qū)動程序中的其它如CCPSETMTA,CCPGETDAQSIZE和CCPSTARTSTOP等函數(shù),進(jìn)行數(shù)據(jù)處理并組織需要反饋的數(shù)據(jù),實(shí)現(xiàn)邏輯連接、解鎖、數(shù)據(jù)上傳、下載等功能。執(zhí)行完畢使用CRMDTO返回命令執(zhí)行情況至上位機(jī),至此命令處理模塊完成處理一個CRO命令。423DAQ模式的實(shí)現(xiàn)DAQ模式的實(shí)現(xiàn)包括四個步驟主機(jī)與從機(jī)建立邏輯連接,主機(jī)獲取從機(jī)的DAQ資源大小,主機(jī)根據(jù)需要監(jiān)控的數(shù)據(jù)完成從機(jī)DAQ的數(shù)據(jù)信息的初始化及啟動DAQ過程。主機(jī)與從機(jī)建立邏輯連接是整個標(biāo)定系統(tǒng)得以運(yùn)行的基礎(chǔ),主機(jī)與從機(jī)的各種命令的交互都是以邏輯連接已經(jīng)被建立為前提,如果主從機(jī)沒能完成主從機(jī)的邏輯建立,則從機(jī)對主機(jī)發(fā)送過來的CCP協(xié)議命令都會作出拒絕訪問的響應(yīng)。DAQ模式的下一步就是要獲取從機(jī)能夠支持的DAQ列表的數(shù)目及每個表所支持的ODT的數(shù)目,其中每個ODT需要根據(jù)標(biāo)定平臺的需要完成初始化,即給ODT設(shè)置監(jiān)控參數(shù)的地址及數(shù)據(jù)長度等信息。CCP驅(qū)動在設(shè)計(jì)時提供三個結(jié)構(gòu)體來描述DAQ列表和ODT信息及ODT的元素信息ODT的元素信息結(jié)構(gòu)體TYPEDEFSTRUCTCCP_DAQBYTEPTRPTR;PTR是字節(jié)型指針,描述元素的內(nèi)存地址CCPBYTESIZE;SIZE是字節(jié)型變量,描述元素的長度CCPELEMENT;ODT信息結(jié)構(gòu)體TYPEDEFSTRUCTCCPELEMENTELEMENT7;每個ODT內(nèi)最多能夠包含7個元素CCP_ODT;DAQ列表結(jié)構(gòu)體TYPEDEFSTRUCTCCPODTODTCCPMAXODT;該列表含有的最大ODT數(shù)目CCPWORDPRESCALER預(yù)分頻系數(shù)CCPWORDCYCLE;內(nèi)部使用CCPBYTEEVENTCHANNEL;事件通道號CCP協(xié)議驅(qū)動程序與應(yīng)用程序開發(fā)CCPBYTELAST記錄該列表實(shí)際擁有的ODT數(shù)目CCPBYTEFLAGS;當(dāng)前DAQ運(yùn)行狀態(tài)標(biāo)識CCP_DAQ_LIST;從機(jī)是用一維數(shù)組的方式來組織DAQ列表,通過上面的結(jié)構(gòu)體描述,可以發(fā)現(xiàn)每個DAQ列表可以擁有ODT最大數(shù)目是相同,它采用宏定義的方式。實(shí)際被利用的ODT的數(shù)目是通過LAST記錄下來的他3兒2鍆。因此當(dāng)主機(jī)需要獲取從機(jī)DAQ資源大小的時候就會把DAQ列表的數(shù)目和每個DAQ列表最大ODT數(shù)目反饋給主機(jī)。即執(zhí)行CCPGETDAQSIZE0。、7,。圖45DAQ函數(shù)CCPDAQO的程序流程圖FIGURE45FLOWCHARTOFCCPDAQOFDAQ主機(jī)根據(jù)獲取的從機(jī)DAQ資源的大小,將需要監(jiān)控的參數(shù)的物理地址和長度39北京交通大學(xué)碩學(xué)位論文信息發(fā)送給從機(jī),以完成對從機(jī)ODT的元素的初始化。針對不同的DAQ列表賦以事件通道EVENTCHANNEL,同一個DAQ列表中不同的ODT享有同一EVENTCHANNEL。EVENTCHANNEL由從機(jī)程序?qū)崿F(xiàn),從機(jī)按一定周期發(fā)布事件,與EVENTCHANNEL對應(yīng)的事件會促發(fā)從機(jī)上傳相應(yīng)DAQ列表中所有ODT對應(yīng)的DAQDTO消息,因此EVENTCHANNEL實(shí)際上表示的就是上傳周期。最后就是由標(biāo)定平臺控制DAQ的運(yùn)行狀態(tài),由FLAGS標(biāo)志記錄當(dāng)前的DAQ的運(yùn)行的狀態(tài)。從機(jī)的應(yīng)用程序會周期性調(diào)用EEPDAQ0函數(shù),由該函數(shù)根據(jù)當(dāng)前DAQ初始化信息執(zhí)行DAQ模式。CCPDAQ0執(zhí)行流程圖如圖45所示。424數(shù)據(jù)標(biāo)定功能數(shù)據(jù)標(biāo)定功能的實(shí)現(xiàn)就需要對被標(biāo)定系統(tǒng)即從機(jī)的內(nèi)存和外部存儲設(shè)備進(jìn)行訪問,能夠?qū)ζ溥M(jìn)行讀寫操作,并能夠完成數(shù)據(jù)的保存。一般還要求被標(biāo)定的參數(shù)的修改結(jié)果在系統(tǒng)斷電或重新啟動時都不會丟失。本系統(tǒng)采用的是飛思卡爾MC9S12DTL28單片機(jī),同時還配備有專門的數(shù)據(jù)存儲單元FM24C64。飛思卡爾MC9S12DTL28單片機(jī)內(nèi)部的存儲單元由三個部分組成RAM、EEPROM及FLASH。系統(tǒng)設(shè)計(jì)時之所以單獨(dú)配置鐵電存儲器FM24C64,是因?yàn)閱纹瑱C(jī)內(nèi)部白帶的EEPROM的擦除與寫入速度比較慢,在擦除與寫入時必須間隔20MS以后才能對EEPROM進(jìn)行下一步的操作,擦除和寫入是兩個獨(dú)立的過程,擦除的最小單位是4個字節(jié),寫入的最小單位是2個字節(jié);鐵電存儲器的特點(diǎn)就是讀寫速度快,最高總線訪問頻率為1MHZ,在高噪聲的環(huán)境下,數(shù)據(jù)讀寫可靠性高,應(yīng)用靈活。針對電池管理系統(tǒng)這一應(yīng)用,標(biāo)定所選用的方案是系統(tǒng)各種參數(shù)都是保存在鐵電存儲器中,上電后從存儲器中將這些參數(shù)的信息讀入到單片機(jī)內(nèi)部的RAM區(qū),標(biāo)定平臺針對參數(shù)所在的RAM區(qū)進(jìn)行標(biāo)定操作,等所需參數(shù)完成了標(biāo)定以后將標(biāo)定結(jié)果回寫到鐵電存儲器當(dāng)中。其中部分參數(shù)在每一個系統(tǒng)當(dāng)中都是一樣的,在完成了這部分參數(shù)的標(biāo)定以后,在以后程序設(shè)計(jì)中將這部分參數(shù)直接寫到單片機(jī)內(nèi)部的FLASH中。因此系統(tǒng)標(biāo)定的目標(biāo)主要有兩個單片機(jī)內(nèi)部的RAM區(qū)和外部的鐵電存儲器。MC9S12DTL28單片機(jī)單片模式下的存儲區(qū)域分布如圖46所示,在默認(rèn)的系統(tǒng)配置下,EEPROM的存儲空間是沒有被分配的,即讓RAM的物理分配從400開始分配存儲空間。0“400這1KB的存儲空間被分配給單片機(jī)的寄存器,它的存在也覆蓋了RAM本來從O開始的8KB字節(jié)RAM存儲空間的開始的1KB字節(jié)的存儲空間,也就說系統(tǒng)實(shí)際使用的RAM空間大小是7KB字節(jié)。CCP協(xié)議驅(qū)動程序與應(yīng)州程序開發(fā)OOOO04000800LFFF4000C000LVO寄存器蠶R髓囫RAM保留16KB同定FLASHL3E16KB分頁FLASH38393A3B3C3D3E3F8木16KB分頁FLASH存儲器16KB固定FLASH3F圖46MC9S12DTL28內(nèi)部存儲器空間分配圖FIGURE46MEMORYDISTRIBUTIONOFMC9S12DT128由于系統(tǒng)標(biāo)定的目標(biāo)包括兩個部分,除了上述的標(biāo)定方案,系統(tǒng)還可對外置的鐵電存儲器也像RAM一樣進(jìn)行讀寫操作,即將FM24C64模擬成RAM。系統(tǒng)實(shí)際使用的鐵電存儲器的空間并不是很大,小于1KB,因此可以將針對FM24C64的擦寫函數(shù)的接口和針對RAM的寫操作的函數(shù)接口統(tǒng)一起來,在函數(shù)CCPWRITEMTA中通過需要操作的內(nèi)存地址來判斷是對FM24C64還是對RAM的操作。當(dāng)對空間4001FFF進(jìn)行訪問操作時可以斷定是對RAM的操作,而把對FM24C64的存儲空間進(jìn)行操作的地址分配在20003FFF。CCPWRITEMTA函數(shù)程序流程圖如圖47所示。值得注意的是,在設(shè)計(jì)電池管理系統(tǒng)的應(yīng)用程序時應(yīng)該將系統(tǒng)需要進(jìn)行標(biāo)定的參數(shù)作為全局變量放在RAM中,因?yàn)檫@樣變量的存儲狀態(tài)是靜態(tài)的,有固定的分配空間,它們的生存周期同整個應(yīng)用程序的生存周期。如果將參數(shù)作為局部變量的話,它們的存儲空間是動態(tài)分配的,沒有固定的存儲位置,這樣標(biāo)定平臺是無法完成對這些參數(shù)的修改。4L北京交通人學(xué)碩十學(xué)位論文圖47CCPWRITEMTA函數(shù)流程圖FIGURE47FLOWCHARTOFCCPWRITEMTA43基于CCP協(xié)議應(yīng)用根據(jù)前一章節(jié)對電池管理系統(tǒng)所要完成功能的描述,可以從中看出該系統(tǒng)需要完成的任務(wù)比較多模塊電壓的測量、模塊溫度、總電壓的測量、動力電池上流過的電流、電池包絕緣性能檢測、電池荷電狀態(tài)SOC在線估算、高壓控制、握手機(jī)制、串口通訊及整車CAN通訊,另外還有一項(xiàng)輔助功能,測量車載DCDC變換器的輸入電流該電流也是由動力電池提供的。傳統(tǒng)的應(yīng)用程序的丌發(fā)是采用前后臺或超循環(huán)系統(tǒng)SUPERLOOPS的編程模式,對于這種前后臺的編程模式難以在多個復(fù)雜任務(wù)之間進(jìn)行協(xié)調(diào)管理,開發(fā)起來比較困難,不利于以后系統(tǒng)程序的開發(fā)與維護(hù)。整個應(yīng)用程序就是一個大的循環(huán)程序,在循環(huán)中調(diào)用函數(shù)完成相應(yīng)的操作,這部分稱為后臺行為BACKGROUND,利用中斷服務(wù)程序ISR來處理異步事件,這部分稱為前臺行為FOREGROUND。前后臺系統(tǒng)中后臺行為的響應(yīng)時間是與整個循環(huán)的執(zhí)行時間有關(guān)的,對于某一個特定部分的準(zhǔn)確時間是不能確定的,所以它不能保證實(shí)時性。為了保證系統(tǒng)的實(shí)時性,系統(tǒng)一般需要采用一個實(shí)時操作系統(tǒng)內(nèi)核1。嵌入式實(shí)時操作系統(tǒng)RTOS在目前的嵌入式應(yīng)用中使用越來越多,尤其在功能復(fù)雜、系統(tǒng)龐大的應(yīng)用中顯得愈來愈重要。這主要是嵌入式操作系統(tǒng)自身特42CCP協(xié)議驅(qū)動程序與應(yīng)用程序開發(fā)點(diǎn)所決定的首先,嵌入式實(shí)時操作系統(tǒng)提高了系統(tǒng)的實(shí)時性和可靠性。其次,提高了開發(fā)效率,縮短了開發(fā)周期。在嵌入式實(shí)時操作系統(tǒng)環(huán)境下,開發(fā)一個復(fù)雜的應(yīng)用程序,通??梢园凑哲浖こ讨械慕怦钤瓌t,將整個程序分解為多個任務(wù)模塊。每個任務(wù)模塊的調(diào)試、修改幾乎不影響其他模塊。另外,嵌入式實(shí)時操作系統(tǒng)可以充分的發(fā)揮CPU的應(yīng)用潛能心71。因此,本課題在開發(fā)電池管理系統(tǒng)應(yīng)用程序的時候,將實(shí)時操作系統(tǒng)TCOSII引入進(jìn)來,采用的版本是V252。431UC0SII的特點(diǎn)1、源代碼公開它的源代碼公開,可以從IICOS官方網(wǎng)站上獲取全部源碼以及在各種體系結(jié)構(gòu)上的移植范例。通過和其它源碼公開的商業(yè)實(shí)時內(nèi)核相比較,LLCOSII的源碼清晰易讀、結(jié)構(gòu)協(xié)調(diào),注釋詳盡有序,這也是肛COSII能成功的得到廣泛應(yīng)用的一個原因。2、可移植絕大部分PCOSII的源碼是用移植性很強(qiáng)的ANSIC寫的。和微處理器硬件相關(guān)的那部分是用匯編語言寫的。匯編語言寫的部分己經(jīng)壓到最低限度,使得ITCOSII便于移植到其他微處理器上。條件是,只要該微處理器有堆棧指針,有CPU內(nèi)部寄存器入棧、出棧指令。另外,使用的C編譯器必須支持內(nèi)嵌匯編或者該C語言可擴(kuò)展、可連接匯編模塊,使得關(guān)中斷、開中斷能在C語言程序中實(shí)現(xiàn)。PCOSII可以在絕大多數(shù)8位、16位、32位以至64位微處理器、微控制器、數(shù)字信號處理器DSP上運(yùn)行。3、可裁剪可以只使用LLCOSII中應(yīng)用程序需要的某些系統(tǒng)服務(wù)。也就是說某方案設(shè)計(jì)可以只使用很少幾個PCOSII系統(tǒng)調(diào)用,而另外一個方案則可以使用幾乎所有LLCOSII的功能。這樣可以定制方案設(shè)計(jì)中的I,TCOSII所需的存儲空間RAM和ROM,這種可裁剪性是利用條件編譯實(shí)現(xiàn)的。只要在用戶的應(yīng)用程序中定義哪些ITCOSII中的功能是應(yīng)用程序需要運(yùn)行的就可以了。程序和數(shù)據(jù)兩部分的存儲用量己被盡可能的壓低。4、多任務(wù)肛COSII可以管理64個任務(wù)最新的版本可以管理256個任務(wù),其中應(yīng)用程序最多可以有56個任務(wù),另外8個任務(wù)是給系統(tǒng)預(yù)留的。每個任務(wù)分配的優(yōu)先級必須是不同的,這意味著ITCOSII不支持時間片輪轉(zhuǎn)調(diào)度法ROUNDROBIN43北京交通大學(xué)碩十學(xué)位論文SCHEDULING,時間片輪轉(zhuǎn)調(diào)度法可用于調(diào)度相同優(yōu)先級的任務(wù)。5、任務(wù)執(zhí)行時間可確定全部P,COSII的函數(shù)調(diào)用與服務(wù)的執(zhí)行時間具有其可確定性。也就是說,全部IRTCOSII的函數(shù)調(diào)用與服務(wù)的執(zhí)行時間是可知的。進(jìn)而言之,斗COSII系統(tǒng)服務(wù)的執(zhí)行時間不依賴于應(yīng)用程序任務(wù)的多少。6、任務(wù)棧每個任務(wù)都有自己單獨(dú)的??臻g,ITCOSII允許每個任務(wù)有不同的??臻g。以便靈活得控制應(yīng)用程序?qū)AM的需求量。通過使用ITCOSII的??臻g校驗(yàn)函數(shù),還可以確定每個任務(wù)到底需要多少??臻g乜引。432UCOSII操作系統(tǒng)結(jié)構(gòu)P,COSII是一個基于優(yōu)先級調(diào)度的搶占式的實(shí)時內(nèi)核,并在這個內(nèi)核之上提供最基本的系統(tǒng)服務(wù),如信號量,郵箱,消息隊(duì)列,內(nèi)存管理,中斷管理等嘞1。4321任務(wù)管理ITCOSII中最多可以支持64個任務(wù),分別對應(yīng)優(yōu)先級063,其中0為最高優(yōu)先級,63為最低級,系統(tǒng)保留了4個最高優(yōu)先級的任務(wù)和4個最低優(yōu)先級的任務(wù),所以用戶可以使用的任務(wù)數(shù)有56個。I,TCOSII提供了任務(wù)管理的各種函數(shù)調(diào)用,包括創(chuàng)建任務(wù),刪除任務(wù),改變?nèi)蝿?wù)的優(yōu)先級,任務(wù)掛起和恢復(fù)等。系統(tǒng)初始化時會自動產(chǎn)生兩個任務(wù)一個是空閑任務(wù),它的優(yōu)先級最低,該任務(wù)僅給一個整形變量做累加運(yùn)算;另一個是系統(tǒng)統(tǒng)計(jì)任務(wù),它的優(yōu)先級為次低,該任務(wù)負(fù)責(zé)統(tǒng)計(jì)當(dāng)前CPU的利用率,該任務(wù)也可以通過系統(tǒng)配置而取消。4322時間管理L,TCOSII的時間管理是通過定時中斷來實(shí)現(xiàn)的,該定時中斷一般為10毫秒到100毫秒發(fā)生一次,時間頻率取決于用戶對硬件系統(tǒng)的定時器編程來實(shí)現(xiàn)。中斷發(fā)生的時間間隔是固定不變的,該中斷也成為一個時鐘節(jié)拍。TTCOSII要求用戶在定時中斷的服務(wù)程序中,調(diào)用系統(tǒng)提供的與時鐘節(jié)拍相關(guān)的系統(tǒng)函數(shù),例如中斷級的任務(wù)切換函數(shù),獲取系統(tǒng)時間函數(shù)。4323內(nèi)存管理在ANSIC中是使用MALLOC和FLEE兩個函數(shù)來動態(tài)分配和釋放內(nèi)存。但在嵌入式實(shí)時系統(tǒng)中,多次這樣的操作會導(dǎo)致內(nèi)存碎片,且由于內(nèi)存管理算法的原因,MALLOC和FLEE的執(zhí)行時間也是不確定。J_TCOSII中把連續(xù)的大塊內(nèi)存按分區(qū)管理。每個分區(qū)中包含整數(shù)個大小相同的內(nèi)存塊,但不同分區(qū)之間的內(nèi)存塊大小可以不同。用戶需要動態(tài)分配內(nèi)存時,系統(tǒng)選擇一個適當(dāng)?shù)姆謪^(qū),按塊來分配內(nèi)存。釋CCP協(xié)議驅(qū)動程序與應(yīng)用程序開發(fā)放內(nèi)存時將該塊放回它以前所屬的分區(qū),這樣能有效解決碎片問題,同時執(zhí)行時間也是固定的。4324任務(wù)問通信與同步對一個多任務(wù)的操作系統(tǒng)來說,任務(wù)問的通信和同步是必不可少的。GCOSII中提供了4種同步對象,分別是信號量,郵箱,消息隊(duì)列和事件標(biāo)志。所有這些同步對象都有創(chuàng)建,等待,發(fā)送,查詢等接口用于實(shí)現(xiàn)任務(wù)間的通信和同步。4325任務(wù)調(diào)度I且COSII采用的是可剝奪型實(shí)時多任務(wù)內(nèi)核??蓜儕Z型的實(shí)時內(nèi)核在任何時候都運(yùn)行處于任務(wù)就緒態(tài)的最高優(yōu)先級的任務(wù)。I且COSII的任務(wù)調(diào)度是完全基于任務(wù)優(yōu)先級的搶占式調(diào)度,也就是高優(yōu)先級的任務(wù)一旦處于就緒狀態(tài),則立即搶占正在運(yùn)行的低優(yōu)先級任務(wù)的處理器資源。為了簡化系統(tǒng)設(shè)計(jì),GCOSII規(guī)定所有任務(wù)的優(yōu)先級不同,因?yàn)槿蝿?wù)的優(yōu)先級也同時唯一標(biāo)志了該任務(wù)本身。4326ITCOSII的組成部分I上COSII可以大致分成核心、任務(wù)處理、時間處理、任務(wù)同步與通信、CPU的移植等5個部分。內(nèi)核部分OSCORCC是操作系統(tǒng)處理的核心,包括操作系統(tǒng)的初始化、操作系統(tǒng)的運(yùn)行控制、中斷進(jìn)出的前導(dǎo)、時鐘節(jié)拍、任務(wù)調(diào)度、事件處理等多部分二能夠維持系統(tǒng)基本工作的部分都在這里。任務(wù)處理部分OSTASKC,任務(wù)處理部分中的內(nèi)容都是與任務(wù)的操作密切相關(guān)的。包括任務(wù)的建立、刪除、掛起、恢復(fù)等等。因?yàn)镚COSII是以任務(wù)為基本單位調(diào)度的,所以這部分內(nèi)容也相當(dāng)重要。時鐘部分OSTIMCC,GCOSII中的最小時鐘單位是TIMETICK時鐘節(jié)拍。任務(wù)的調(diào)度也會發(fā)生在時鐘節(jié)拍中斷中,任務(wù)延時等操作是在這里完成的。任務(wù)同步和通信部分包括信號量、郵箱、郵箱隊(duì)列、事件標(biāo)志等部分,主要用于任務(wù)間的互相聯(lián)系和對共享資源的訪問。與CPU的接口部分指PCOSII針對所使用的CPU的移植部分。由于TTCOSII是一個通用性的操作系統(tǒng),所以對于關(guān)鍵問題上的實(shí)現(xiàn),還是需要根據(jù)具體CPU的具體內(nèi)容和要求作相應(yīng)的修改。這部分內(nèi)容由于牽涉到SP等系統(tǒng)指針,所以通常用匯編語言編寫。主要包括中斷級任務(wù)切換的底層實(shí)現(xiàn)、任務(wù)級任務(wù)切換的底層實(shí)現(xiàn)、時鐘節(jié)拍的產(chǎn)生和處理、中斷的相關(guān)處理部分等內(nèi)容。433基于UCOSII的CCP協(xié)議應(yīng)用4331GCOSII的移植45北京交通大學(xué)碩十學(xué)位論文所謂移植,就是使一個實(shí)時內(nèi)核能在某個微處理器或微控制器上運(yùn)行。為了方便移植,大部分的IACOSII代碼是用C語言寫的,但仍需要用C和匯編語言寫一些與處理器相關(guān)的代碼,這是因?yàn)門COSII在讀寫處理器寄存器時只能通過匯編語言來實(shí)現(xiàn)。由于I,TCOSII在設(shè)計(jì)時就已經(jīng)充分考慮了可移植性,所以I上COSII的移植相對是比較容易的。要使PCOSII正常運(yùn)行,處理器必須滿足以下要求啪11、處理器的C編譯器能產(chǎn)生可重入代碼;2、用C語言就可以打開和關(guān)閉中斷;3、處理器支持中斷,并且能產(chǎn)生定時中斷通常在10至100HZ之間;4、處理器支持能夠容納一定量數(shù)據(jù)可能是幾千字節(jié)的硬件堆棧5、處理器有將堆棧指針和其它CPU寄存器讀出和存儲到堆?;騼?nèi)存中的指令。電池管理系統(tǒng)采用的控制器是飛思卡爾的MC9S12DTL28,軟件開發(fā)環(huán)境是METROWERKS公司的CODEWARRIOR31。系統(tǒng)提供的能允許同時被多個任務(wù)所調(diào)用,而不會通過函數(shù)中變量的藕合而引起任務(wù)之間的干擾的函數(shù),叫做可重入函數(shù)。CODEWARRIOR支持高級語言,可通過在公共函數(shù)中只使用局部變量來產(chǎn)生可重入函數(shù),因?yàn)榫植孔兞看鎯υ谌蝿?wù)的堆棧中,所以可以保證不同的任務(wù)在調(diào)用同一個函數(shù)時不會發(fā)生沖突。若必須使用全局變量,則需要對使用的全局變量做必要的保護(hù)。CODEWARRIOR31編譯器能夠滿足移植條件的前兩個。LXCOSII由于可以定制內(nèi)核大小、可裁減,用戶可以只選用對其應(yīng)用程序有用的那一部分,內(nèi)核目標(biāo)代碼可以裁減小到15KB,大到10KB以上,同時也會占用一定的RA
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年中級銀行從業(yè)資格之中級公司信貸考試題庫300道含答案【新】
- 2026年國家電網(wǎng)招聘之金融類考試題庫300道帶答案(綜合題)
- 2026年國家電網(wǎng)招聘之人力資源類考試題庫300道及參考答案(黃金題型)
- 2026年中級注冊安全工程師之安全實(shí)務(wù)化工安全考試題庫300道含答案【黃金題型】
- 2026年教師招聘之中學(xué)教師招聘考試題庫帶答案
- 2026年一級建造師之一建水利水電工程實(shí)務(wù)考試題庫500道及參考答案【完整版】
- 2026年一級建造師之一建鐵路工程實(shí)務(wù)考試題庫300道及完整答案(各地真題)
- 2026年初級銀行從業(yè)資格之初級銀行管理考試題庫500道【典優(yōu)】
- 2026年初級經(jīng)濟(jì)師之初級經(jīng)濟(jì)師基礎(chǔ)知識考試題庫300道及答案【必刷】
- 2026年初級經(jīng)濟(jì)師之初級經(jīng)濟(jì)師基礎(chǔ)知識考試題庫300道附參考答案(培優(yōu))
- 生活老師面試試題及答案
- 新能源發(fā)電技術(shù)課件:新能源發(fā)電的故障穿越技術(shù)
- 管線拆除施工方案
- 杉木容器育苗技術(shù)規(guī)程
- 售后工程師述職報(bào)告
- 專題12將軍飲馬模型(原卷版+解析)
- 粉刷安全晨會(班前會)
- (中職)中職生創(chuàng)新創(chuàng)業(yè)能力提升教課件完整版
- 部編版八年級語文上冊課外文言文閱讀訓(xùn)練5篇()【含答案及譯文】
- 高三英語一輪復(fù)習(xí)人教版(2019)全七冊單元寫作主題匯 總目錄清單
- 路基工程危險源辨識與風(fēng)險評價清單
評論
0/150
提交評論