CAN總線遠程傳輸可靠性的設(shè)計方法和實現(xiàn)
本文引用地址:http://www.ex-cimer.com/article/173745.htm
由表1可見,1公里處傳輸速率最大,每秒傳輸13.2972I幀,即0.0752秒傳輸一幀數(shù)據(jù),所謂一幀實際一次發(fā)送,一次接收,對于CAN總線實際是2幀。隨著傳輸距離的增大,傳輸速率稍有減小的趨勢,說明遠程傳輸有一定的網(wǎng)絡(luò)時延, 但是在低波特率下影響不大。
4.2 相同公里數(shù)不同測試點通訊結(jié)果
接下來以通訊5公里距離為例,觀察將CHl兩端連接到0公里處的測試點,CH2兩端連接到1公里、2公里、3公里、4公里、5公里處的測試點,可以看到報文波形幅值發(fā)生了相應(yīng)的變化。經(jīng)過1公里的衰減,同一組報文幅值降低了約O.2V;2公里距離的通訊會造成同一組報文幅值上發(fā)生約0.4V的變化;同理3公里、4公里、5公里傳輸同一組報文分別發(fā)生了0.6V、0.8V和lV的幅值衰減。因此可以得出結(jié)論:同一組報文每經(jīng)過l公里距離通訊,報文信號的幅值即發(fā)生0.2V的衰減。
4.3 CAN收發(fā)器SN65FIVD251工作電壓的影響
在實驗的過程中,觀察到SN65HVD251工作電壓VCC端的大小對于傳輸距離的影響很大,經(jīng)過大量的實驗,得出1-5公里距離成功通訊的VCC臨界電壓值(精確到O.1V),所謂臨界電壓值是在確定距離內(nèi)能正常傳送數(shù)據(jù)的最小值。如表2所示。
從表中可以得出,保證l公里成功通訊的前提是VCC端電壓大于等于3.6V。VCC端電壓越高,可以通訊的距離越遠,在1-5公里實驗中,每增加1公里,VCC端電壓相應(yīng)提高了約0.3V。最高VCC不能高過SN65HVD251的最高工作電壓7V。
遠程通訊距離對于報文信號的幅值有比較大的影響,每公里約衰減O.2V;同時CAN收發(fā)器SN65HVD251的輸入電壓對于遠程通訊距離有一定的影響,確保在電壓正常范圍內(nèi)的高電壓輸入可以提高系統(tǒng)的遠程通訊距離。電源電壓每提高0.3V可延長1公里,而增加1公里損耗0.2V,余下的0.1V由驅(qū)動芯片內(nèi)部所消耗了。
5 CAN總線遠程控制網(wǎng)絡(luò)的性能總結(jié)
CAN總線傳輸距離在驅(qū)動芯片工作電壓和傳送波特率確定之后,主要決定如下二個因素:(1) 發(fā)送端的應(yīng)答位的隱性電壓和接收端把隱形變成顯性電平以后又傳送到發(fā)送端時的電平差值;(2)發(fā)送端發(fā)的應(yīng)答位到接收端被確認后又發(fā)回到發(fā)送端時該位相位變化。前者電平差值為0.6V,后者不能滯后每位的時間的一半。0.6V電平差比RS485、RS422識別“l(fā)”和“0”差值100mv要大很多。這也就是說同樣傳送條件下,RS485比CAN總線傳送距離遠。同樣RS485、RS422因閾值過小,易受干擾。另外CAN總線其他性能優(yōu)于RS485和RS422,如CRC硬化,可以多主通訊機構(gòu),以及多層已硬化的上層協(xié)議等。RS485的誤碼率10―7,CAN總線誤碼率可達2×10一ll。因此要提高遠程傳送可靠性可以采取如下方法:
(1)增加驅(qū)動芯片的工作電壓。
(2)降低發(fā)送的波特率,減少相位滯后的影響。
(3)使用更粗雙絞線,減小通訊導線電阻,從而減少傳送損耗。
(4)用兩個驅(qū)動芯片并聯(lián)驅(qū)動,減少驅(qū)動芯片的內(nèi)阻,提高驅(qū)動電流,即減少0.1V內(nèi)部損耗。
(5)選用分布電容較小的雙絞線,降低分布電容對同步位相位的影響。
總體來說, 本文設(shè)計的CAN總線控制系統(tǒng)無論從可靠性,還是從其他性能指標上來分析,都達到了很好的效果。并且在拉西瓦水電站邊坡監(jiān)測系統(tǒng)中承擔數(shù)據(jù)采集通訊的任務(wù)。
評論