• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁(yè) > 設(shè)計(jì)應(yīng)用 > 基于PCI總線的四通道CAN通訊卡的設(shè)計(jì)

    基于PCI總線的四通道CAN通訊卡的設(shè)計(jì)

    作者: 時(shí)間:2016-10-10 來(lái)源:網(wǎng)絡(luò) 收藏

    摘要:為了完成核電現(xiàn)場(chǎng)I/O模塊和控制站之間的數(shù)據(jù)傳輸,設(shè)計(jì)了一種基于的四通道CAN通訊卡,每個(gè)CAN通道連接32個(gè)單通道I/O模塊,每隔25 ms采集I/O模塊的數(shù)據(jù)一次,該系統(tǒng)的數(shù)據(jù)采集總量為400個(gè)模擬量和112個(gè)開(kāi)關(guān)量。本設(shè)計(jì)采用兩個(gè)CPU,使每個(gè)中斷服務(wù)時(shí)間占用中斷間隔的百分比提高了19%。本文重點(diǎn)闡述了具體的硬件電路設(shè)計(jì),包括原理設(shè)計(jì)、芯片選型、PCB制作等,具有高速度和低成本的優(yōu)點(diǎn)。

    本文引用地址:http://www.czjhyjcfj.com/article/201610/306142.htm

    關(guān)鍵詞;數(shù)據(jù)采集;CAN通訊;

    (peripheral component interconnect)俗稱外部部件互聯(lián)總線,是由美國(guó)Intel公司率先提出的一種先進(jìn)的高性能局部總線,不依附于某個(gè)具體的處理器。比起IS A、EISA和MC等標(biāo)準(zhǔn)總線,更能滿足人們對(duì)微機(jī)系統(tǒng)I/O帶寬的要求。PCI總線的時(shí)鐘頻率為0~33 MHz,其最大數(shù)據(jù)傳輸速率可達(dá)到528 Mbps,PCI局部總線的引入,打破了數(shù)據(jù)傳輸?shù)钠款i,使數(shù)據(jù)的實(shí)時(shí)高速采集和傳輸成為可能。CAN總線是一種全數(shù)字化、雙向和多主的現(xiàn)場(chǎng)總線,具有通信速率高、容易實(shí)現(xiàn)、且性價(jià)比高等優(yōu)點(diǎn),應(yīng)用廣泛。

    1 CAN通訊卡的設(shè)計(jì)原理

    四通道CAN通訊卡介于核電現(xiàn)場(chǎng)I/O模塊和主站之間,是一塊基于PCI總線的高速數(shù)據(jù)采集卡。一塊通訊卡上有4個(gè)CAN通道,每個(gè) CAN通道連接32個(gè)單通道I/O模塊。每隔25 ms采集I/O模塊的數(shù)據(jù)一次,通過(guò)CAN通訊接口傳送到微控制器80C196KB,經(jīng)過(guò)處理后再通過(guò)8K*8的經(jīng)由PCI總線控制器上傳給主機(jī)。主機(jī)對(duì)I/O模塊的初始化、對(duì)時(shí)等操作由80C196KB通過(guò)CAN通訊下傳到單通道I/O模塊。其具體的邏輯框圖如圖1所示。

    a.jpg

    根據(jù)核電站試驗(yàn)數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)規(guī)范,該系統(tǒng)的數(shù)據(jù)采集總量為400個(gè)模擬量和112個(gè)開(kāi)關(guān)量。每個(gè)采集模塊采集一個(gè)點(diǎn),因而共有512個(gè)采集模塊,這些采集模塊分布在兩個(gè)機(jī)柜中。所有這些采集模塊的數(shù)據(jù)都是通過(guò)CAN總線分別傳送到數(shù)據(jù)采集柜中的兩臺(tái)數(shù)據(jù)采集計(jì)算機(jī),進(jìn)行量程轉(zhuǎn)換和相關(guān)處理,送到數(shù)據(jù)處理計(jì)算機(jī)。每臺(tái)數(shù)據(jù)采集計(jì)算機(jī)上有2塊4通道智能CAN總線通訊卡,即8條CAN總線通道,分別將兩個(gè)機(jī)柜的采集信號(hào)轉(zhuǎn)到數(shù)據(jù)采集計(jì)算機(jī)上進(jìn)行處理。因而每根CAN總線傳送32個(gè)采集模塊的數(shù)據(jù)。

    鑒于四通道CAN通訊卡的數(shù)據(jù)采集功能,該卡的工作流程是:CPU每隔25 ms(最小巡檢周期)掃描四條CAN總線上的128個(gè)采集模塊的數(shù)據(jù),經(jīng)過(guò)處理后送給PCI總線,最后到達(dá)數(shù)據(jù)采集計(jì)算機(jī)。

    由于CAN卡的數(shù)據(jù)采集量比較大,根據(jù)掃描周期,對(duì)CPU而言,每秒鐘由CAN總線控制器產(chǎn)生的中斷有32*4*1 000/25=5 120個(gè),則每個(gè)中斷之間的間隔為1 000 000/5120= 195.3μs。這對(duì)于CPU提出了很高的要求。如采用一個(gè)80C196KB,由于其單指令周期為0.125μs,假設(shè)每個(gè)中斷服務(wù)指令需300條匯編指令,平均每條匯編需兩個(gè)單指令周期,即0.25μs,則每個(gè)中斷服務(wù)程序需300*0.25=75μs,占用這個(gè)中斷間隔的 75/195.3=38.4%。這些數(shù)據(jù)表明即使處理速度滿足要求,CPU的資源也是比較緊張的。若采用兩個(gè)80 C196KB,則每個(gè)CPU處理的中斷為5 120/2=2 560,每個(gè)中斷之間的間隔195.3*2=390.6μs,每個(gè)中斷服務(wù)程序時(shí)間占用這個(gè)中斷間隔的75/390.6=19.2%,這對(duì)每個(gè)CPU而言,就輕松多了。

    根據(jù)上述分析,決定采用兩個(gè)CPU(分別稱為CPU和從CPU)。從CPU只負(fù)責(zé)采集兩個(gè)CAN通道數(shù)據(jù),通過(guò)向主CPU發(fā)送采集的數(shù)據(jù)。主 CPU不僅負(fù)責(zé)采集兩個(gè)CAN通道數(shù)據(jù),還負(fù)責(zé)和PCI總線接口,將從CPU采集的數(shù)據(jù)和自身采集的數(shù)據(jù)一起向PCI總線傳輸。同時(shí),主CPU接收到 PCI總線上的命令字和數(shù)據(jù)后,還需通過(guò)雙口RAM將它們傳送給從CPU,以確保主、從CPU進(jìn)行數(shù)據(jù)采集的一致性和完整性。

    2 芯片介紹

    2.1 PCI總線控制器

    PCI總線控制器采用AMCC公司的S5920,S5920是符合PCI2.2規(guī)范的從方式接口控制器,他只能工作于從方式(slave)。Add-On 側(cè)有兩種工作方式:郵箱方式(MAILBOX)和直通方式(PASS—THRU)方式。PASS—THRU方式又分PASSIVE和ACTIVE方式。根據(jù)各種方式的側(cè)重點(diǎn)不同,我們采用PASS—THRU的ACTIVE方式。它操作簡(jiǎn)單,對(duì)時(shí)序要求較少,比較適合大量數(shù)據(jù)的傳輸。四通道CAN通訊卡的資源申請(qǐng)采用非易失性RAM(NVRAM)——串行EEPROM AT24C04來(lái)實(shí)現(xiàn)。

    2.2 CPU

    采用Intel的16位微控制器80C196KB,它是Intel公司性能最強(qiáng)的CMOS芯片,其片內(nèi)集成有8路A/D轉(zhuǎn)換器,包括一個(gè) 8通道多路模擬開(kāi)關(guān),采樣保持電路和10位A/D轉(zhuǎn)換器。與96系列微控制器相兼容,并增加了許多新功能。具有高速I/O子系統(tǒng)、中斷源及中斷向量顯著增加(28個(gè)中斷源,18個(gè)中斷向量),可動(dòng)態(tài)配置8位或16位總線寬度。

    2.3 雙口RAM

    接口卡含有板級(jí)CPU總線和主站ISA總線。兩條總線通過(guò)8K*8的雙口RAM交換數(shù)據(jù)。通過(guò)雙口RAM,主站直接控制接口卡、并與其交換靜態(tài)數(shù)據(jù),主站和接口卡協(xié)調(diào)的依據(jù)是郵箱命令。雙口RAM的詳細(xì)內(nèi)存地址分配如表1所示。

    b.jpg

    2.4 CAN通訊接口

    CAN控制線采用Philips公司的SJA1000,它與PCA82C200管腳兼容。具有擴(kuò)展的接收緩沖器,64字節(jié)的FIFO結(jié)構(gòu),支持CAN2.0B協(xié)議。24 MHz晶振頻率下,傳輸速率高達(dá)1.M bits/s。其內(nèi)部結(jié)構(gòu)如圖2所示。物理傳輸層采用EIA RS485,故采用高速光電隔離器件HCPL0611,保證電氣上無(wú)干擾,隔離電壓達(dá)到500 V以上,提高整個(gè)系統(tǒng)的測(cè)量精度。收發(fā)器采用Philips公司的PCA82C250芯片,其可以提供對(duì)總線數(shù)據(jù)的差動(dòng)發(fā)送能力和對(duì)通信總線數(shù)據(jù)的差動(dòng)接收能力。

    c.jpg

    2.5 譯碼電路

    譯碼電路采用ALTERA公司的EPM7128S CPLD。它具有高阻抗、電可擦等特點(diǎn),可用門(mén)單元為2 500個(gè),管腳間最大延遲5 ns,工作電壓5 V,輸入輸出線數(shù)84,并且它集邏輯譯碼、總線接口等于一體,十分方便。圖3為EPM7128S的功能邏輯框圖,其與PCI總線的連接示意圖如圖4所示。

    d.jpg

    2.6 微處理器監(jiān)控故障自復(fù)位電路

    復(fù)位電路采用MAXIM公司的MAX823看門(mén)狗電路,如圖5所示,以它為核心可以完成以下幾項(xiàng)功能:

    1)上電和手動(dòng)復(fù)位;

    2)監(jiān)視定時(shí)器(看門(mén)狗)復(fù)位。

    e.jpg

    單排兩針跨接器JP3、JP4分別用于2個(gè)80C196KB的電源監(jiān)控和硬件看門(mén)狗復(fù)位。跨接表示允許看門(mén)狗復(fù)位,否則禁止看門(mén)狗復(fù)位。

    3 CAN通訊卡的PCB設(shè)計(jì)

    在設(shè)計(jì)PCB時(shí),我們采用Mentor Graphics公司的PADS2005軟件,它包括整個(gè)完整的PCB設(shè)計(jì)過(guò)程,涵蓋了從原理圖網(wǎng)表導(dǎo)入,規(guī)則驅(qū)動(dòng)下的交互式布局布線,DRC/DFT/DFM檢查與分析,直至最終Gerber生產(chǎn)文件、裝配及物料清單輸出等全方位的功能需求。良好的PCB設(shè)計(jì)不僅可以增加PCB的視覺(jué)美感,更能提高系統(tǒng)的抗干擾能力。在數(shù)據(jù)采集卡的PCB制作中,要考慮插卡的高頻性能、電源去耦與干擾的抑制、接地方式的選擇等因素。

    3.1 PCB層數(shù)的選擇

    在制作PCI板卡時(shí),選擇制作四層的PCB板,其堆疊方式如圖6所示,這樣因使用了Power及Ground平面層,EMI之特性有很大改善。

    f.jpg

    3.2 去耦電容

    由于一些高速信號(hào),噪聲頻率比較高,我們采用0.1μF的電容作為去耦電容,并使之盡量靠近IC的電源地管腳,使其與電源和地之間形成的回路最短。對(duì)于從外部連接器進(jìn)來(lái)的信號(hào)線使用的旁路電容,要靠近連接器放置,以減小外部連接線可能引入的干擾在板上傳播。

    3.3 電源設(shè)計(jì)

    為了防止數(shù)字器件所帶來(lái)的高頻噪聲對(duì)模擬器件造成影響,將模擬信號(hào)的地與數(shù)字信號(hào)的地的走線分開(kāi),然后在PCB上找一個(gè)適當(dāng)?shù)奈恢脤烧邌吸c(diǎn)連通。系統(tǒng)的模擬地和數(shù)字地的共地點(diǎn)一般選擇ADC芯片上引腳所需電流最大的地方,以便使大電流對(duì)地回流路徑最短,減少對(duì)模擬電路的電磁干擾,提高系統(tǒng)精度。因?yàn)榭焖俚臄?shù)字振蕩可能將轉(zhuǎn)換噪聲禍合到模擬電源中,所以模擬電源和數(shù)字電源應(yīng)該分開(kāi)供電。在數(shù)據(jù)采集卡的設(shè)計(jì)中,模擬電路直接由DC—DC隔離電源供電,數(shù)字電源直接由PCI插槽中的+5V和+3.3V供電。

    3.4 走線要求

    PCI總線的32位部分的所有信號(hào)最大走線長(zhǎng)度必須限定在1 500 mil以內(nèi),PCI時(shí)鐘信號(hào)線的長(zhǎng)度必須是2 500 mil(±100 mil),并且只能和插卡上的一個(gè)負(fù)載連接。該引線只能在PCB一面走線且在轉(zhuǎn)角處用弧形,切忌用直角,銳角,可用“蛇”形走線來(lái)滿足長(zhǎng)度要求。

    另外,對(duì)于電源線和地線的線寬,通常是地線比電源線窄,即:信號(hào)線電源線地線,信號(hào)線寬通常為:0.2~0.3 mm,電源線為1.2~2.5 mm。地線盡量采用大面積覆銅的方式來(lái)增大地線面積減小接地阻抗,提高電路板的抗干擾能力。

    3.5 時(shí)鐘信號(hào)的保護(hù)

    為了滿足高速數(shù)字信號(hào)的要求,PCB布線要求滿足盡量減少傳輸延遲、減少信號(hào)損耗等。數(shù)據(jù)采集板上PCI時(shí)鐘信號(hào)和AD采樣、鎖存、FIFO的讀和寫(xiě)這些頻率較高的時(shí)鐘信號(hào),應(yīng)在PCB布線時(shí)在兩邊設(shè)置地線加以保護(hù)。

    4 結(jié)束語(yǔ)

    使用基于PCI總線的高速數(shù)據(jù)采集卡是現(xiàn)代信號(hào)處理中實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)進(jìn)機(jī)存儲(chǔ)的重要方法。本方法所設(shè)計(jì)實(shí)現(xiàn)的數(shù)據(jù)采集系統(tǒng)也可應(yīng)用于通信振動(dòng)工程、語(yǔ)音處理、工業(yè)自動(dòng)控制以及生物醫(yī)學(xué)工程領(lǐng)域。目前我國(guó)的數(shù)字化儀控系統(tǒng)還處于初級(jí)階段,核電站數(shù)字化儀控系統(tǒng)的國(guó)產(chǎn)化是我國(guó)核電儀控事業(yè)發(fā)展的必由之路。該高速數(shù)據(jù)采集卡將應(yīng)用在嶺澳核電站BOPLOT KDO/KME項(xiàng)目中,完成現(xiàn)場(chǎng)I/O模塊和控制站之間的數(shù)據(jù)傳輸,每隔25 ms采集一次數(shù)據(jù),實(shí)現(xiàn)了高速度和低成本的優(yōu)點(diǎn)。



    評(píng)論


    相關(guān)推薦

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

    關(guān)閉
    主站蜘蛛池模板: 武汉市| 定南县| 乐都县| 娄底市| 平远县| 崇阳县| 长宁县| 江陵县| 肥乡县| 丹江口市| 富裕县| 浪卡子县| 乐安县| 玛沁县| 海宁市| 万州区| 东方市| 宁武县| 温州市| 稷山县| 惠安县| 罗山县| 延津县| 汕头市| 翼城县| 霍州市| 宁远县| 武夷山市| 霍林郭勒市| 房山区| 福清市| 云阳县| 榕江县| 呈贡县| 洛浦县| 林芝县| 迁西县| 海兴县| 清徐县| 青龙| 漾濞|