欧美极品jizzhd欧美,91精品久久一区二区三区,欧美乱妇无乱码大黄a片,欧美日韩国产一区在线看

PLC技術(shù)資料
    基于CAN總線的機(jī)車實(shí)時(shí)監(jiān)控系統(tǒng)
    發(fā)布者:用戶投稿  發(fā)布時(shí)間:2008/4/25 13:03:54

    1  引言


        傳統(tǒng)機(jī)車監(jiān)控裝置通過轉(zhuǎn)存將機(jī)車運(yùn)行過程中所記錄的數(shù)據(jù)轉(zhuǎn)存到地面二次開發(fā)平臺,在地面進(jìn)行機(jī)車運(yùn)行數(shù)據(jù)分析和故障診斷,這樣的檢測設(shè)備實(shí)時(shí)性不強(qiáng),不能實(shí)時(shí)監(jiān)測機(jī)車的運(yùn)行狀態(tài);隨著鐵路信息化數(shù)字化的發(fā)展,提出了機(jī)車在線實(shí)時(shí)監(jiān)控以及機(jī)車檢修應(yīng)向狀態(tài)修發(fā)展。近年來國內(nèi)現(xiàn)場總線技術(shù)的成熟和不斷發(fā)展以及移動(dòng)通信GPRS(通用分組無線業(yè)務(wù)General Packet RadioService)的無線數(shù)據(jù)傳輸業(yè)務(wù)的成熟,使機(jī)車車輛的實(shí)時(shí)監(jiān)測成為可能。為此,筆者根據(jù)自己實(shí)踐,介紹一種基于CAN(Controller Area Network)總線的機(jī)車實(shí)時(shí)監(jiān)控系統(tǒng)。系統(tǒng)通過GPRS的短信息業(yè)務(wù),實(shí)現(xiàn)車載數(shù)據(jù)采集模塊與地面監(jiān)控系統(tǒng)的實(shí)時(shí)通信,實(shí)現(xiàn)地面監(jiān)控中心實(shí)時(shí)監(jiān)控列車運(yùn)行狀態(tài)。


        CAN總線是眾多現(xiàn)場總線標(biāo)準(zhǔn)之一,具有使用簡單、性能可靠以及系統(tǒng)可擴(kuò)展性能好等優(yōu)點(diǎn)。CAN總線有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò),采用短報(bào)文幀及GSMA/CD-AMP(帶有信息優(yōu)先權(quán)及沖突檢測的載波監(jiān)聽多路訪問)的MAC(媒介訪問控制)方式,在工業(yè)自動(dòng)控制化領(lǐng)域得到廣泛應(yīng)用。特別適用于做優(yōu)化、分析及維護(hù)的系統(tǒng)。90年代,國內(nèi)開始對CAN總線應(yīng)用進(jìn)行研究,目前已在諸多領(lǐng)域中應(yīng)用CAN總線技術(shù)。

    2  基本原理

    圖1     機(jī)車監(jiān)控系統(tǒng)結(jié)構(gòu)圖


        圖1為機(jī)車實(shí)時(shí)監(jiān)控系統(tǒng)結(jié)構(gòu)圖。包括三個(gè)數(shù)據(jù)采集模塊、一個(gè)存貯發(fā)射模塊和地面監(jiān)控系統(tǒng)(地面系統(tǒng)部分圖中未示)。數(shù)據(jù)采集模塊負(fù)責(zé)采集牽引電機(jī)電樞電壓、電樞電流、勵(lì)磁電流等重要模擬量數(shù)據(jù);各種風(fēng)機(jī)接觸器的開閉狀態(tài)的開關(guān)量;機(jī)車基本信息(包括機(jī)車速度、機(jī)車位置、機(jī)車車號等)數(shù)字編碼量。存貯發(fā)射模塊負(fù)責(zé)各數(shù)據(jù)采集模塊的協(xié)調(diào)工作,通過GPRS將各采集的數(shù)據(jù)發(fā)送到地面監(jiān)控系統(tǒng)。地面系統(tǒng)由PC機(jī)與GPRS無線天線等模塊組成,通過GPRS天線向車載系統(tǒng)發(fā)送指令,指示車載模塊按地面要求進(jìn)行工作。地面系統(tǒng)同時(shí)接收存貯發(fā)射模塊發(fā)送來的現(xiàn)場數(shù)據(jù),數(shù)據(jù)按GPRS的短信息業(yè)務(wù)格式發(fā)送接收。地面系統(tǒng)軟件采用Visual C++軟件編寫。軟件使用友好人機(jī)對話界面實(shí)時(shí)顯示、跟蹤、監(jiān)控列車運(yùn)行狀態(tài),實(shí)現(xiàn)對機(jī)車實(shí)時(shí)在線故障檢測與診斷,機(jī)車出現(xiàn)故障時(shí),還可以及時(shí)向司機(jī)提供操作建議,在機(jī)車庫檢時(shí),系統(tǒng)還提供檢修指導(dǎo),限于篇幅所限本文將重點(diǎn)介紹車載部分。

    3  硬件結(jié)構(gòu)設(shè)計(jì)


        本系統(tǒng)是一個(gè)依照CAN2.0B構(gòu)建的控制局域網(wǎng)(Controller Area Network),總線控制器采用Philips公司P87C591微控器內(nèi)置的CAN控制器。P8xC591是一個(gè)單片8位高性能微控制器,具有片內(nèi)CAN控制器,采用強(qiáng)大的80C51指令集并成功的包括了半導(dǎo)體 SJA1000 CAN控制器的PeliCAN功能。CAN總線驅(qū)動(dòng)器采用與SJA1000 CAN控制器相匹配的PCA82C250,下位機(jī)和上位機(jī)通過CANH、CANL屏蔽雙絞線進(jìn)行雙向通信?偩終端需跨接100Ω~120Ω電阻以抑制信號反射,保證通信可靠性。雙絞線連接各個(gè)模塊節(jié)點(diǎn),形成多主控制的局域網(wǎng)。為增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,P87C591的RXDC和TXDC腳,通過高速光耦6N173后與82C250相連,保證總線上各CAN節(jié)點(diǎn)間的電氣隔離,光耦部份電路所采用的兩個(gè)電源必須完全隔離。圖2為各節(jié)點(diǎn)和CAN總線間的接口電路圖。

    圖2     CAN總線接口電路圖


        模擬量采集單元主要功能可以劃分為微處理器及其控制部分、CAN通訊接口部分、多路模擬量輸入通道選擇開關(guān)、模數(shù)轉(zhuǎn)換芯片等。模擬量直接由機(jī)車微機(jī)柜內(nèi)引入,信號在微機(jī)柜內(nèi)已調(diào)理成適合A/D轉(zhuǎn)換的電平。模擬量信號的采樣和量化工作由一片ADS774完成。ADS774是美國Burr-Brown公司生產(chǎn)的12位逐次逼近并行A/D轉(zhuǎn)換器,典型轉(zhuǎn)換時(shí)間為8.5μs。選擇MCP506A作為16路信號通道轉(zhuǎn)換開關(guān),分時(shí)對16路模擬信號采樣及A/D轉(zhuǎn)換。


        開關(guān)量采集單元采集的信號均來自機(jī)車電氣控制柜,采集板需采用光電隔離,增強(qiáng)抗干擾能力,實(shí)現(xiàn)與采樣電路的電氣隔離。系統(tǒng)采用兩片8255A擴(kuò)展P0口以對48路開關(guān)信號采樣,兩片8255A的A,B,C口設(shè)定為模式0和輸入方式。四個(gè)模塊結(jié)構(gòu)基本相似,在此不一一綴述。
       

        存貯發(fā)射模塊包括:閃存、帶斷電保護(hù)的時(shí)鐘芯片DS12887以及GPRS天線組成。閃存具有斷電后保存數(shù)據(jù)特點(diǎn),作為存放機(jī)車數(shù)據(jù)的黑匣子。GPRS天線和單片機(jī)通過RS-232相聯(lián)接,單片機(jī)通過讀寫串行口實(shí)現(xiàn)和中國移動(dòng)網(wǎng)絡(luò)之間的數(shù)據(jù)接收和發(fā)送。用一片64kB的HM6264RAM存儲有關(guān)控制信息并作為與中國移動(dòng)網(wǎng)絡(luò)和存貯發(fā)射模塊的數(shù)據(jù)交換區(qū)。

    [NextPage]

    4  系統(tǒng)軟件設(shè)計(jì)


    4.1  CAN初始化子程序 
        CAN控制器的初始化是系統(tǒng)設(shè)計(jì)工作中極為重要的部分,它是CAN總線正常工作的前提,關(guān)系整個(gè)車載系統(tǒng)能否正常工作,初始化工作既是一個(gè)重點(diǎn),也是一個(gè)難點(diǎn)。CAN通信初始化包括操作模式的設(shè)置、驗(yàn)收濾波器的設(shè)置、總線定時(shí)器的設(shè)置等。驗(yàn)收濾波器的設(shè)置決定了節(jié)點(diǎn)所接收的信息的格式;定時(shí)器設(shè)置確定CAN總線數(shù)據(jù)傳輸波特率。80C51CPU接口將PeliCAN與P87C591微控制器內(nèi)部總線相連,通過5個(gè)特殊功能寄存器CANADR、CANDAT、CANMOD、CANSTA和CANCON對PeliCAN寄存器和RAM區(qū)進(jìn)行快捷的訪問。對CAN進(jìn)行初始化實(shí)際就是對以上5個(gè)特殊功能寄存器的進(jìn)行讀寫訪問。以下是用C語言編寫的初始化子程序代碼。
    void init_can(void)
    {
    CANMOD=0x01; 
    //將CAN控制器設(shè)置為復(fù)位模式以啟動(dòng)初始化
    P1M2=P1M2|0x02;
    //P1M2.1=1,P1M1.1=0(默認(rèn))
    CANADR=BTR0;
    //BTR0和BTR1編程為125kbit/s@12MHz
    CANDAT=0x45;
    CANADR=BTR1;
    //TSEG1=12,TSEG2=3,SJW=2
    CANDAT=0x2B;
    //Sample=1->sample point~81%
    CANADR=ACR10;
    //將地址設(shè)置到驗(yàn)收代碼寄存器0(Bank1)
    CANDAT=0x40; //驗(yàn)收濾波代碼
    CANDAT=0xE0; //驗(yàn)收濾波代碼
    CANADR=AMR10;
    //將地址設(shè)置到驗(yàn)收屏蔽寄存器0(Bank1)
    CANDAT=0x00;   //bank1:驗(yàn)收屏蔽0
    CANDAT=0x0F;  //bank1:驗(yàn)收屏蔽1無關(guān)
    CANDAT=0xFF;  //bank1:驗(yàn)收屏蔽2無關(guān)
    CANDAT=0xFF;  //bank1:驗(yàn)收屏蔽3無關(guān)
    CANADR=ACFMOD;
    //將地址設(shè)置到ACF模式寄存器
    CANDAT=0x55;    
    //單驗(yàn)收濾波器使用11位ID(SFF)
    CANADR=ACFPRIO;
    //將地址設(shè)置到ACF優(yōu)先級寄存器
    CANDAT=0xFF;    
    //所有濾波器都為高優(yōu)先級
    CANADR=ACFEN; 
    //將地址設(shè)置到ACF使能寄存器
    CANDAT=0x01;    
    //使能Bank1的驗(yàn)收濾波器   
    CANMOD=0x00;   
    //選擇操作模式,退出CAN控制器復(fù)位模式
    }


    4.2  CAN接收發(fā)送子程序
        CAN總線通信采用單濾波器標(biāo)準(zhǔn)幀:使用包括RTR位的完整的識別碼和頭兩個(gè)數(shù)據(jù)字節(jié)進(jìn)行驗(yàn)收濾波(濾波器設(shè)置見CAN初始化程序代碼)。標(biāo)準(zhǔn)幀共13個(gè)字節(jié),包括:3個(gè)字節(jié)幀頭(同步字) ,以保證每次接收端都能夠正確的找到幀頭;一個(gè)字節(jié)的命令/數(shù)據(jù)標(biāo)識位,該標(biāo)識位在本系統(tǒng)中作為包代碼的身份識別信息(包括數(shù)據(jù)類型、指令類型等),這樣就把命令和數(shù)據(jù)分開處理便于接收端對命令和數(shù)據(jù)的正確區(qū)分和處理;接著7個(gè)字節(jié)為CAN數(shù)據(jù)包所包含的具體數(shù)據(jù)或指令最后2個(gè)字節(jié)在標(biāo)準(zhǔn)幀中作備用。各模塊根據(jù)接收到包的標(biāo)識位的不同來對數(shù)據(jù)包進(jìn)行分解、判斷,各模塊根據(jù)包代碼的身分識別號將數(shù)據(jù)存放到相應(yīng)的緩沖區(qū),等該源節(jié)點(diǎn)發(fā)送的數(shù)據(jù)全部正確接收完畢后,再一起送入公用緩沖區(qū),以便控制處理子程序根據(jù)收到的數(shù)據(jù)進(jìn)行控制處理。以下是用C語言編寫的CAN接收程序基本代碼
    void Rec_CAN(void)      //接收子程序

    [NextPage]
    {
    uchar Length;   //CAN數(shù)據(jù)長度代碼
    uchar i;
    bit FF; //FF=0(標(biāo)準(zhǔn)CAN幀);FF=1(擴(kuò)展CAN幀)
    while(RBS==0)RBS=0;
    //檢查RBS是否為1,如不為1說明RBF中沒有可讀的數(shù)據(jù)
    CANADR=RBF; //地址指向CAN接收緩沖區(qū)地址
    ReceiveMessage[0]=CANDAT;
    //讀取并保存幀信息字節(jié)
    FF=ReceiveMessage[0]&0x80;     //取出幀格式
    Length=ReceiveMessage[0]&0x0F; 
    //取出幀長度DLC
    if(Length>0x08)Length=0x08;    
    ReceiveMessage[1]=CANDAT;
    //讀取并保存RX識別碼1
    ReceiveMessage[2]=CANDAT;
    //讀取并保存RX識別碼2
    if(FF)
    {ReceiveMessage[3]=CANDAT;eceiveMessage[4]=CANDAT;}
    for(i=0;i
    {if(FF) ReceiveMessage[i+5]=CANDAT;
    else ReceiveMessage[i+3]=CANDAT;  //標(biāo)準(zhǔn)幀
    }
    CANCON=0x04;   
    //釋放接收緩沖區(qū)
    }
     CAN控制器的發(fā)送程序也是模塊間通信的基本程序,下面是用CAN節(jié)點(diǎn)通信的發(fā)送子程序。
    void Send_CAN(void)  //發(fā)送子程序
    {uchar i;
    if(TBS==1)//發(fā)送緩沖區(qū)狀態(tài)=釋放?
    {CANADR=TBF;//地址指向591TX緩沖區(qū),
    CANDAT=Message[0]; //寫TX幀信息
    CANDAT=Message[1]; //寫TX識別碼1
    CANDAT=Message[2]; //寫TX識別碼2
    for(i=0;i<8;i++)  //寫數(shù)據(jù)字節(jié)
    {CANDAT=Message[i+3];}
    CANCON=0x01;   //置位發(fā)送請求位
    }
    else{//P8xC591發(fā)送緩沖區(qū)未釋放,運(yùn)行其它程序}
    }


    4.3  系統(tǒng)軟件結(jié)構(gòu)
        存貯發(fā)射模塊和三個(gè)數(shù)據(jù)采集模塊按如下協(xié)議工作:數(shù)字量采集單元通過RS485總線接收機(jī)車基本信息,RS485總線數(shù)據(jù)按一包數(shù)據(jù)共40個(gè)字節(jié),第一個(gè)字節(jié)為節(jié)點(diǎn)地址,最后一個(gè)字節(jié)為校驗(yàn)字節(jié),中間38個(gè)字節(jié)為傳送的機(jī)車基本信息量。數(shù)字量采集單元對數(shù)據(jù)包解包,取出當(dāng)前機(jī)車速度、位置、機(jī)車號、線路狀態(tài)等基本信息,將數(shù)據(jù)按CAN標(biāo)準(zhǔn)幀格式發(fā)給存貯發(fā)射模塊;存貯發(fā)射模塊等待、接收數(shù)字量采集單元采集的數(shù)據(jù)后,向其余模塊發(fā)送數(shù)據(jù)采集命令,采用在運(yùn)行中改變?yōu)V波參數(shù)方式接收各個(gè)模塊發(fā)給存貯發(fā)射的數(shù)據(jù)采集結(jié)果。把接收到數(shù)據(jù)按和地面監(jiān)控系統(tǒng)約定格式存貯在閃存存貯器內(nèi),最后寫串口,把一次采集的數(shù)據(jù)通過GPRS天線發(fā)往地面監(jiān)控系統(tǒng)。地面系統(tǒng)收到車載系統(tǒng)數(shù)據(jù)時(shí),發(fā)送一幀確認(rèn)幀給車載系統(tǒng)。圖3所示為存貯發(fā)送模塊基本工作流程圖。


        模擬量采集模塊和開關(guān)量采集模塊工作流程相似,模擬量單元初始化后等待存貯發(fā)送模塊發(fā)來的A/D轉(zhuǎn)換指令后,依次啟動(dòng)16路A/D轉(zhuǎn)換,轉(zhuǎn)換完成后將16路A/D轉(zhuǎn)換結(jié)果按CAN標(biāo)準(zhǔn)幀格式打包發(fā)送給存貯發(fā)送模塊。開關(guān)量采集單元初始化后等待上位機(jī)的數(shù)據(jù)采集請求指令后,讀取48路繼電器通斷信號,轉(zhuǎn)換完成后將數(shù)據(jù)按CAN標(biāo)準(zhǔn)幀格式打包發(fā)送給存貯發(fā)送模塊。

    5  結(jié)束語


        系統(tǒng)經(jīng)過實(shí)驗(yàn)室內(nèi)部聯(lián)調(diào), 性能穩(wěn)定, 抗干擾能力強(qiáng),充分體現(xiàn)了CAN 總線的優(yōu)越性。目前系統(tǒng)已在裝車運(yùn)行,取得了以下良好效益:

    圖3     存貯發(fā)送模塊程序流程


    (1) 實(shí)時(shí)監(jiān)控機(jī)車運(yùn)行狀態(tài),保障列車行車安全。機(jī)車在任何時(shí)間、任何地點(diǎn)產(chǎn)生的運(yùn)行數(shù)據(jù)都可以被地面監(jiān)控系統(tǒng)所監(jiān)控;車載存貯發(fā)送單元實(shí)時(shí)將運(yùn)行數(shù)據(jù)發(fā)送地面監(jiān)控系統(tǒng),當(dāng)機(jī)車出現(xiàn)故障時(shí),該系統(tǒng)可以為機(jī)務(wù)和電務(wù)部門及時(shí)提供原始分析數(shù)據(jù)。
    (2) 裝備該系統(tǒng)后減輕了轉(zhuǎn)儲人員的勞動(dòng)強(qiáng)度,提高了生產(chǎn)效率,節(jié)省了勞動(dòng)力。

    版權(quán)聲明PLC信息網(wǎng)轉(zhuǎn)載作品均注明出處,本網(wǎng)未注明出處和轉(zhuǎn)載的,是出于傳遞更多信息之目的,并不意味 著贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性。如轉(zhuǎn)載作品侵犯作者署名權(quán),或有其他諸如版權(quán)、肖像權(quán)、知識產(chǎn)權(quán)等方面的傷害,并非本網(wǎng)故意為之,在接到相關(guān)權(quán)利人通知后將立即加以更正。聯(lián)系電話:0571-87774297。
0571-87774297  
国产人妖乱国产精品人妖| 23部禽女乱小说内裤畸情视频| 体育生受整晚含着攻不放| 十大免费软件不收费软件| 视频 在线 一区 二区| 亚洲人日本人JLZZY| 在线毛片片免费观看| 黄色网站亚洲| 丰满岳妇乱一区二区三区| 亚洲乱码国产乱码精品精| 亚洲另类图片小说综合网| 欧美与黑人午夜性猛交久久久| av在线观看网址| 性少妇tubevⅰdeos高清| 精品亚洲日韩免费777| 欧美白丰满老太aaa片| jk白丝污免费在线观看| 一区二区三区视频在线视频| 年轻的朋友4免费观看韩剧| H纯肉无码动漫在线观看| 三级片视频一区| 日韩欧美在线一区二区观看| 欧美精品乱码99久久蜜桃| 国产97视频在线观看免费| 亚洲 中文 字幕 一区| 怡红院熟女一区二区av| 在线小说视频图片大全免费| 国产乱了真实在线观看| 中文字幕人妻无码专区| 小雪早被伴郎摸湿出水了| 国产精品婷婷久久爽一下| 久久在热99视频精品店| 国产丰满美女a级毛片| 色噜噜狠狠狠久久久久久| 一级高清片免费欧美一级| 国产精品一区二区三区房景| 国产又色又爽又黄刺激在线观看| 中文字幕日韩精品第一页| 国产精品一区二区av白丝| 2中文字幕版亚洲无乱码| 欧美性猛交xxxx|