<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 四冗余通信板的仿真 少不了CAN總線技術(shù)輔助

          四冗余通信板的仿真 少不了CAN總線技術(shù)輔助

          作者: 時間:2014-02-14 來源:網(wǎng)絡(luò) 收藏
          (HCS)的光纖配合使用,最高通信速率可達(dá)5 MB。由于采用了開集電極電路,此接收器兼容TTL及CMOS電平。該電路的通信距離最遠(yuǎn)可達(dá)1.7 km。

          本文引用地址:http://www.ex-cimer.com/article/226552.htm

          為提高CAN通信板的抗震性,抗干擾性等綜合性能,采用了雙面布線設(shè)計。該通信板尺寸規(guī)格嚴(yán)格按照PC/104板的要求做。

          (3)冗余設(shè)計及CAN Hub設(shè)計

          該通信板設(shè)計了4路冗余,工作時只有1路CAN通道進(jìn)行工作,采用高位片選的方式進(jìn)行工作通道的選擇,其片選模塊在FPGA內(nèi)部設(shè)計完成。

          (4)GAN Hub的設(shè)計

          由于本系統(tǒng)采用“雙光雙電”四冗余的電路設(shè)計,為提高通信速度,采用485收發(fā)器代替標(biāo)準(zhǔn)的CAN收發(fā)器。光是“點(diǎn)對點(diǎn)” 的傳輸,485收發(fā)器是差分傳輸,在形式上都無法構(gòu)成總線式結(jié)構(gòu)。因此,引入CAN Hub來對信號進(jìn)行處理,在邏輯上達(dá)到總線式的結(jié)構(gòu)。

          3 軟件設(shè)計

          CAN通信板的正常工作離不開強(qiáng)大的軟件支持,本系統(tǒng)中控制部分的核心采用PC/104嵌入式計算機(jī)系統(tǒng)。PC/104嵌入式計算機(jī)擁有可以和PC機(jī)媲美的強(qiáng)大功能,CAN通信板軟件部分的開發(fā)和設(shè)計就是在PC/104計算機(jī)上完成的,采用C語言進(jìn)行設(shè)計。C語言具有通用性、高效性和實時性,能滿足儀器的實時性要求。在設(shè)計過程中采用了模塊化、結(jié)構(gòu)化的設(shè)計方法,把軟件按功能分成若干個模塊,這些模塊既有一定的獨(dú)立性,又有一定聯(lián)系。每個模塊的編制要求相對獨(dú)立,以便對各模塊進(jìn)行檢驗調(diào)試和修改、維護(hù)。這種框架模式的程序可以保證良好的通用性、可維護(hù)性、可擴(kuò)展性、移植性、互換性和獨(dú)立性。

          由于CAN核的內(nèi)部結(jié)構(gòu)和SJA1000一樣,因此,開發(fā)時就像面對SJA1000一樣,編寫起來簡單方便。本設(shè)計采用中斷處理的方式來進(jìn)行任務(wù)的處理。在中斷到來后進(jìn)行相應(yīng)的處理就可以了。

          通信板初始化流程如圖3所示。數(shù)據(jù)發(fā)送流程如圖4所示,數(shù)據(jù)接收流程如圖5所示。

          四冗余通信板的仿真 少不了CAN總線技術(shù)輔助

          4 系統(tǒng)的仿真

          采用Modelsim進(jìn)行仿真。

          系統(tǒng)的測試平臺(TestBench),例化了模塊can4core和1個CAN核cantop,并仿真它們之間的通信。

          本仿真完全按照 CAN核正常工作過程進(jìn)行,仿真過程如下:

          ①初始化設(shè)置。首先進(jìn)行時間寄存器的設(shè)置和數(shù)據(jù)格式的設(shè)置。通過平臺對本系統(tǒng)設(shè)計模塊和CAN核進(jìn)行設(shè)置。

          ②同步測試。包括硬同步測試和重新同步測試。一個硬同步后,內(nèi)部的位時間以同步段重新開始。硬同步使引起硬同步的跳變沿位于重新開始的位時間同步段之內(nèi)。

          ③空FIFO測試(test_empty_fifo_ext)。該測試通過接收2個數(shù)據(jù)幀,然后讀取接收緩沖器,接著清空緩沖器,再讀取緩沖器,反復(fù)清空和讀取,看FIFO中的數(shù)據(jù)是否被完全清除。

          ④滿FIFO測試 (test_full_fifo_ext)。首先清空寄存器,然后通過不斷地接收數(shù)據(jù)幀來填滿FIFO并讀取信息,檢測是否能正常工作。

          ⑤ 總線空閑測試(bus-off-test)。通過不斷發(fā)送數(shù)據(jù)來使總線處于忙狀態(tài),致使總線產(chǎn)生錯誤,測試中斷寄存器是否能檢測到錯誤,以及錯誤清除后 CAN核能否繼續(xù)正常工作。

          ⑥Basic CAN模式發(fā)送幀檢測。測試CAN核能否正常發(fā)送幀。

          ⑦寄存器測試。通過不停地讀寫寄存器,檢測CAN核寄存器是否正常工作。

          ⑧總線上數(shù)據(jù)的傳輸。仿真過程中重要的一點(diǎn)就是總線上是否能夠正常傳輸數(shù)據(jù)信息。

          經(jīng)過仿真可以看到該CAN通信板突破了SJA1000在速度方面的限制,傳輸速度可達(dá)2MHz,有效傳輸速率得到了大幅提高,工作性能良好。

          結(jié)語



          關(guān)鍵詞: 四冗余通信 CAN總線技術(shù)

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();