引言
can(controller area network)即控制器局域網(wǎng),是國際上應(yīng)用最廣泛的現(xiàn)場總線之一胚嘲。與一般的總線通信相比嫌佑,can的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性迅箩。本課題設(shè)計了一種基于can總線的監(jiān)控系統(tǒng)溉愁,并對位定時這一關(guān)鍵問題進(jìn)行了詳細(xì)的闡述。借助該系統(tǒng)饲趋,使用者可以實現(xiàn)對can網(wǎng)絡(luò)的實時監(jiān)控拐揭,并可對系統(tǒng)參數(shù)進(jìn)行優(yōu)化。
監(jiān)控系統(tǒng)整體結(jié)構(gòu)
整個監(jiān)控系統(tǒng)(如圖1)是一個分布式控制系統(tǒng)奕塑,由三部分組成:上位機(jī)愧陈、轉(zhuǎn)換模塊登凿、can節(jié)點。上位機(jī)負(fù)責(zé)監(jiān)控整個系統(tǒng)的運(yùn)行狀況煮啡;轉(zhuǎn)換模塊作為各個節(jié)點與上位機(jī)的通信中介隘匙,實現(xiàn)上位機(jī)與節(jié)點間的雙向通信;各個can節(jié)點均可以在任意時刻馁祈,遵循通信協(xié)議完成上傳信息和執(zhí)行控制命令等任務(wù)恕臣。
can節(jié)點接口電路設(shè)計
can總線上各節(jié)點均采用atmel公司生產(chǎn)的8位單片機(jī)為主控器,除完成節(jié)點自身的控制功能外银薪,還與can控制器sja1000配合以實現(xiàn)can網(wǎng)絡(luò)通信功能靴亩。
設(shè)計中選擇sja1000控制器并采用其性能優(yōu)越的pelican擴(kuò)展模式。can收發(fā)器tja1050是philips公司生產(chǎn)的高速can總線驅(qū)動器洗馅。tja1050具有速率高膀钝、低功耗、電磁性能優(yōu)越等特點赌羽。can接口電路如圖2所示萎煤。
節(jié)點模塊中采用高速光耦來實現(xiàn)收發(fā)器與控制器之間的電氣隔離,抗干擾领迈。光耦選擇高速器件tlp113以滿足在最高速率500kbps下的電氣響應(yīng)彻磁。采用dc/dc模塊提供5v電源并實現(xiàn)系統(tǒng)電源與網(wǎng)絡(luò)電源之間電氣隔離措施。為了確保該系統(tǒng)的安全狸捅,在dc/dc模塊及系統(tǒng)的輸入和輸出端增加tvs保護(hù)衷蜓。
系統(tǒng)通信的實現(xiàn)
can控制器協(xié)議
can控制器實現(xiàn)的串口通信網(wǎng)絡(luò)遵循osi模型,劃分為兩層:數(shù)據(jù)鏈路層和物理層尘喝。物理層按照ieee802.3lan標(biāo)準(zhǔn)構(gòu)造磁浇,實現(xiàn)將數(shù)據(jù)發(fā)送到傳輸介質(zhì)上和接收數(shù)據(jù)流的功能。在數(shù)據(jù)鏈路層實現(xiàn)比特流的拼裝朽褪。can通信協(xié)議約定了4種不同的幀格式置吓,本系統(tǒng)中使用標(biāo)準(zhǔn)幀格式,其格式如表1缔赠。can首先接收到仲裁場衍锚,根據(jù)仲裁場的內(nèi)容判斷所接收到的信號是哪種幀格式,用戶將相應(yīng)的數(shù)據(jù)寫入數(shù)據(jù)場中進(jìn)行發(fā)送嗤堰,或從數(shù)據(jù)場中讀取接收到的數(shù)據(jù)戴质。
[DividePage:NextPage]
can應(yīng)用層協(xié)議
在can 2.0規(guī)范中,只對物理層和數(shù)據(jù)鏈路層作了規(guī)定卒抖,用戶需要根據(jù)自己的需求制定應(yīng)用層協(xié)議氏腐。本設(shè)計以各個節(jié)點為控制對象,設(shè)計其應(yīng)用層通信協(xié)議。can總線上傳輸?shù)男畔⒁话憧煞譃?類:
命令信息:包括上位機(jī)要數(shù)命令用堤、上位機(jī)控制命令馒狡。每周期上位機(jī)經(jīng)can—rs232轉(zhuǎn)換模塊下發(fā)至各個節(jié)點要數(shù)命令。上位機(jī)接到狀態(tài)信息后萌烁,根據(jù)情況下發(fā)控制命令,經(jīng)由轉(zhuǎn)換模塊下發(fā)至各個節(jié)點模塊逸茅。
狀態(tài)信息绎儡。節(jié)點接到命令信息后,由各個節(jié)點采集現(xiàn)場數(shù)據(jù)信息详不,發(fā)送到can—rs232轉(zhuǎn)換模塊蚯氯,再由其上傳給上位機(jī)。信息包括:設(shè)備開關(guān)狀態(tài)妖救,電壓電流量等橄浓。
根據(jù)系統(tǒng)實際情況,本系統(tǒng)can2.0標(biāo)準(zhǔn)幀格式的基礎(chǔ)上(見表2)亮航,制定了一個多幀傳輸?shù)膽?yīng)用層協(xié)議荸实。協(xié)議中,實用軟件濾波缴淋,即屏蔽了驗收濾波器准给,將除了幀信息外,包括11位標(biāo)識符的第二重抖、三字節(jié)都進(jìn)行了分配露氮,如表3所示。
其中钟沛,幀信息可以根據(jù)實際情況而定畔规。
標(biāo)識符id10~id3代表模塊地址,所以協(xié)議理論上可滿足256個控制節(jié)點恨统,標(biāo)識符id2叁扫、id0以及該字節(jié)后六位定義為幀類型:命令幀或狀態(tài)幀,數(shù)據(jù)信息這樣劃分簡單明了延欠。上位機(jī)根據(jù)模塊地址收集判斷節(jié)點信息陌兑,并下發(fā)相應(yīng)命令。協(xié)議還規(guī)定禽虹,按優(yōu)先權(quán)由高到低素司,從低向高為模塊分配地址,以保證總線競爭中優(yōu)先權(quán)高的節(jié)點能更先占有總線赌置。
系統(tǒng)軟件設(shè)計
基于總體設(shè)計要求和硬件組成押逾,結(jié)合can總線協(xié)議的模型結(jié)構(gòu),整個系統(tǒng)的軟件設(shè)計可以分為兩部分:節(jié)點部分蓝捌、上位機(jī)部分眶洗。
節(jié)點部分包括:初始化模塊蟀披,can通信模塊,串行通信模塊堤网,數(shù)據(jù)處理模塊巫碍。正確的can初始化,可以充分利用can總線的優(yōu)勢贫肌,保證can通信正確可靠工作禀舰。對can節(jié)點初始化只有在復(fù)位模式下才可以進(jìn)行,初始化主要包括工作方式的設(shè)置怔匣、接收濾波方式的設(shè)置握联、接收屏蔽寄存器(amr)的設(shè)置、接收代碼寄存器(acr)的設(shè)置每瞒、波特率參數(shù)設(shè)置和中斷允許寄存器(ier)的設(shè)置等金闽。在完成can控制器的初始化設(shè)置以后,can控制器就可以回到工作狀態(tài)剿骨,執(zhí)行正常的通信任務(wù)代芜。其他模塊,不再詳述懦砂。
上位機(jī)部分:上位機(jī)軟件由vc++6.0軟件編寫蜒犯,應(yīng)用mfc類庫編寫并生成了具有windows風(fēng)格的人機(jī)交互界面。軟件應(yīng)用mscomm控件通過串行端口傳輸和接收數(shù)據(jù)荞膘,為應(yīng)用程序提供了串行通訊功能罚随。microsoft communications control(mscomm)是microsoft公司提供的簡化windows下串行通信編程的activex控件,為應(yīng)用程序提供了通過串行接口收發(fā)數(shù)據(jù)的簡便方法羽资。具體來說淘菩,它提供了兩種處理通信問題的方法:一是事件驅(qū)動(event-driven)方法,一是查詢法魏蜒。我們采用事件驅(qū)動方式茧音。使用者可以通過良好的人機(jī)界面對整個系統(tǒng)進(jìn)行實時監(jiān)控。
[DividePage:NextPage]
位周期參數(shù)確定
在初始化can控制器的時候发凹,要考慮配置總線時序寄存器的配置等重要問題盘嘉。事實上,can通信協(xié)議中規(guī)定衍康、通信波特率蹲京、位周期的取樣點以及取樣個數(shù)均可以自主設(shè)定,這樣為用戶在網(wǎng)絡(luò)通訊性能的優(yōu)化上提供了空間鞍票。如果位周期采樣點偏后蚊牌,可以接受較大的信號傳輸延遲,相應(yīng)總線的傳輸距離可以延長;如果周期的取樣點接近中間诀虹,則可以容忍系統(tǒng)節(jié)點間的參考時鐘誤差渊输。這些矛盾直接影響了網(wǎng)絡(luò)系統(tǒng)性能,所以總線位定時非常重要晌颅,合理的位定時可以提高系統(tǒng)的整體性能奸误。
can 總線周期由4個部分組成: 同步段(sync_seg) 、傳播延時段真仲、相位緩沖段1 ( phase_seg1) 和相位緩沖段2 (phase_ seg2) 嚼隘,如表4所示。
同步機(jī)制
can是有效支持分布式實時控制的串行通訊網(wǎng)絡(luò)袒餐。從位定時的同步方式考慮,它實質(zhì)上屬于異步通訊協(xié)議谤狡,每傳輸一幀灸眼,以幀起始位開始,而以幀結(jié)束及隨后的間歇場結(jié)束墓懂。這就要求收/發(fā)雙方從幀起始位開始必須保持幀內(nèi)信息代碼中的每一位嚴(yán)格的同步焰宣。從位定時編碼考慮,它采用的是非歸零編碼方式捕仔,位流傳輸不像差分碼那樣可以直接用電平的變化來代表同步信號匕积,它屬于自同步方式(接收端設(shè)法從收到的信號中提取同步信息的方式),can節(jié)點從一個位值到另一個位值的轉(zhuǎn)變中提取時鐘信息榜跌。為保證同步質(zhì)量闪唆,can協(xié)議定義了自己的位同步方式:硬同步和重同步。
通過同步機(jī)制邪胳,可以消除由于相位誤差帶來的影響擅很,保證信息正確解碼。硬同步后肪尾,內(nèi)部的位時間從同步段重新開始鹅甚。因此,硬同步強(qiáng)迫同步沿處于重新開始的位時間同步段之內(nèi)催蓄。重新同步的結(jié)果使相位緩沖段1增長夸截,或使相位緩沖段2縮短。相位緩沖段加長或縮短的數(shù)量有上限乱来,此上限由重新同步跳轉(zhuǎn)寬度給定儒淌。
一個沿的相位誤差由相關(guān)同步段的沿的位置給出。相位誤差定義如下:
le = 0如果沿處于同步段里降蹋;
le 》 0 如果沿處于采集點之前防擎;
le 《 0 如果沿處于前一個位的采集點之后。
當(dāng)引起重新同步沿的相位誤差的幅值小于或者等于重新同步跳轉(zhuǎn)寬度的設(shè)定值時,重新同步和硬同步的作用相同助店。當(dāng)相位錯誤的量級大于重新同步跳轉(zhuǎn)寬度時有2種情況:
如果相位誤差為正磁滚,則相位緩沖段1被增長,增長的范圍與重新同步跳轉(zhuǎn)寬度相同宵晚;
如果相位誤差為負(fù)垂攘,則相位緩沖段2被縮短,縮短的范圍與重新同步跳轉(zhuǎn)寬度相同淤刃。
硬同步和重新同步是同步的2種形式晒他,遵循以下規(guī)則:
在一個位時間里只允許一個同步;
僅當(dāng)采集點之前探測到的值與緊跟沿之后的總線值不相符合時逸贾,才把沿用作于同步陨仅;
總線空閑期間,有一“隱性”轉(zhuǎn)變到“顯性”的沿铝侵,無論何時灼伤,硬同步都會被執(zhí)行。
[DividePage:NextPage]
位時間參數(shù)計算規(guī)則
位時間參數(shù)計算規(guī)則是為保證系統(tǒng)在極端惡劣條件的兩個節(jié)點間咪鲜,能夠正確接受并解碼網(wǎng)絡(luò)上的信息幀狐赡。極端惡劣條件是指這兩個節(jié)點的鐘振偏差在系統(tǒng)容忍偏差極限的兩端,并且兩個節(jié)點間具有最大的傳輸延遲疟丙。在沒有噪音干擾的正常通信情況下颖侄,相位誤差累計的最壞情況是:重同步邊沿之間間隔有10個位周期(5個顯性位后跟5個隱性位)。實際系統(tǒng)都運(yùn)行在噪音環(huán)境中聋遮。由于噪音干擾重柄,可能會導(dǎo)致重同步邊沿之間的間隔超過10個位周期,在這種情況下必須進(jìn)行嚴(yán)格的采用驼值,否則可能進(jìn)入錯誤處理模式钳舵。本監(jiān)控系統(tǒng)各節(jié)點模塊是以sja1000作為can控制器的。所以顷沉,考慮各方面的影響邓樟,位定時參數(shù)在只有1個取樣點時的公式設(shè)置如下:
( sjw) min =max{(20×nbt×δf)/(1 - δf) 钢囚,((nbt(1-25×δf )- prop max -(1 -δf)+prop min/2))/(1-δf)}
∫勰( s j w) max = 4
t(seg2) min = max{2 , s j w}
t(seg2) max =min{8鸟氨,((n b t (1-25×δf ) - ( pro p) max)/
≡├巍(1 - δf), (nb t(1 - 25×δf) - ( pro p)
max - (1-δf) + prop min )/ 2) / (1-δf )
以上所述為位時間參數(shù)的計算規(guī)則集炭,在實際監(jiān)控系統(tǒng)中丙者,以此規(guī)則根據(jù)適當(dāng)?shù)姆椒ㄟM(jìn)行位定時參數(shù)確定和優(yōu)化复斥,使系統(tǒng)性能達(dá)到最優(yōu)。
結(jié)語
現(xiàn)場總線系統(tǒng)用開放的現(xiàn)場總線控制通信網(wǎng)絡(luò)將自動化最底層的現(xiàn)場控制器和現(xiàn)場智能儀表設(shè)備互連的實時網(wǎng)絡(luò)控制系統(tǒng)械媒。是工業(yè)控制系統(tǒng)發(fā)展的一個新的階段目锭。本文所設(shè)計的基于can總線的監(jiān)控系統(tǒng)設(shè)計簡單方便,性能穩(wěn)定纷捞,能很好的滿足控制系統(tǒng)對實時性和可靠性的要求痢虹,并在現(xiàn)場運(yùn)行,效果良好主儡。
聲明:本網(wǎng)站所收集的部分公開資料來源于互聯(lián)網(wǎng)奖唯,轉(zhuǎn)載的目的在于傳遞更多信息及用于網(wǎng)絡(luò)分享,并不代表本站贊同其觀點和對其真實性負(fù)責(zé)糜值,也不構(gòu)成任何其他建議丰捷。本站部分作品是由網(wǎng)友自主投稿和發(fā)布、編輯整理上傳寂汇,對此類作品本站僅提供交流平臺瓢阴,不為其版權(quán)負(fù)責(zé)。如果您發(fā)現(xiàn)網(wǎng)站上所用視頻盹躬、圖片、文字如涉及作品版權(quán)問題血沦,請第一時間告知恐程,我們將根據(jù)您提供的證明材料確認(rèn)版權(quán)并按國家標(biāo)準(zhǔn)支付稿酬或立即刪除內(nèi)容,以保證您的權(quán)益野言!聯(lián)系電話:010-58612588 或 Email:editor@mmsonline.com.cn皿理。
- 暫無反饋
編輯推薦
- 2025新年特刊:打造新質(zhì)生產(chǎn)力,智啟未來新篇章
- 定義制造業(yè)未來的數(shù)控加工中心技術(shù)專題
- 航空航天及交通領(lǐng)域先進(jìn)制造技術(shù)應(yīng)用專題
- 解碼消費(fèi)電子產(chǎn)品生產(chǎn)的數(shù)字化之路技術(shù)專題
- 精密智能機(jī)床则涎,助力制造升級技術(shù)專題
- 汽車輕量化驅(qū)動下的零部件加工應(yīng)用專題
- 高性能銑刀實現(xiàn)高精加工生產(chǎn)技術(shù)專題
- 航空航天發(fā)動機(jī)解決方案專題
- 高效齒輪加工生產(chǎn)技術(shù)方案專題
- 金屬加工液的性能不止?jié)櫥夹g(shù)應(yīng)用專題