用戶中心
· 企業(yè)空間 首頁 | 資訊 | 技術(shù) | 產(chǎn)品 | 企業(yè) | 直播 | 專題 | 智能制造 | 論壇| 在線研討會
北京市天地華杰科技有限公司
企業(yè)空間 > 案例應(yīng)用 > 正文
  • 提高485總線通訊速率的方法
  • 發(fā)布時間:2008/11/14 3:11:29   修改時間:2008/11/12 14:42:35 瀏覽次數(shù):3179
  • 提高RS485總線通信速度的一種設(shè)計

      引言

      工業(yè)現(xiàn)場經(jīng)常要采集多點數(shù)據(jù),模擬信號或開關(guān)信號,一般用到RS485總線,使用一主帶多從的通信方式,該種方式接線方便只需要兩根屏蔽電纜線,通信距離遠(yuǎn)最大可支持1500m,加深圳天地華杰公司的中繼器(TD-109)還可延長通信距離,采用差分信號方式抗電磁干擾好。但該方式通信速度不能太快,一般采用主從召喚的方式采集各子單元的數(shù)據(jù),即主單元依次召喚各子單元(見圖1),召喚到哪個單元哪個單元上傳數(shù)據(jù),總線的使用權(quán)完全由主單元分配,各子單元不能擅自占領(lǐng)總線。如果系統(tǒng)的單元多,主單元循環(huán)采集一周的時間就很長,子單元信息變化時不能及時發(fā)送給主單元,導(dǎo)致系統(tǒng)對突變事件的反應(yīng)處理速度慢。本文通過總線狀態(tài)檢測、從機(jī)主動上發(fā)的方式解決。

    常規(guī)RS485總線主從方式接口圖

      硬件設(shè)計

      整個系統(tǒng)由主單元和多個子單元組成(2),主單元包括:ARM7微控制器、程序存儲器、數(shù)據(jù)存儲器、與子單元通信RS485、與主單元通信RS485、系統(tǒng)電源和通信隔離電源;子單元包括:MSP430單片機(jī)、與子單元通信RS485、系統(tǒng)電源和通信隔離電源。

    系統(tǒng)框圖

      主單元

      ARM微控制器是主單元的核心,采用三星32ARM7TDMI內(nèi)核芯片S3C44B0,該芯片最高處理速度可達(dá)76MHZ,總線開放,可外擴(kuò)程序存儲器FLASH和數(shù)據(jù)存儲器SDRAM,該系統(tǒng)外擴(kuò)了SST公司生產(chǎn)的39VF1601和現(xiàn)代生產(chǎn)的HY57V641620HG,2UART串行接口,使用ADI的隔離RS485芯片ADM2483進(jìn)行接口電平轉(zhuǎn)換,總線狀態(tài)檢測使用74HC125三態(tài)門芯片。

      子單元

      子單元的微控制器使用TIMSP430F133單片機(jī),該單片機(jī)處理速度可達(dá)8MHz8K字節(jié)片內(nèi)FLASH存儲,256K字節(jié)片內(nèi)SRAM

      電源電路

      電源電路采用開關(guān)電源供電,開關(guān)電源輸入電壓范圍比較寬,輸出直流電壓5V,通過SP1117-3.3SP1117-2.5芯片輸出3.3V電源。RS485需要的隔離5V電源通過DC-DC模塊得到。

      總線檢測電路

      總線狀態(tài)檢測使用74HC125三態(tài)門芯片和單片機(jī)的兩個I/O(3),當(dāng)系統(tǒng)都不使用總線時,每個單元的74HC125都輸出高阻狀態(tài),此時總線為低電平,當(dāng)有單元要使用總線時,他首先檢測總線狀態(tài),如果總線為低電平,該單元迅速把74HC125改為輸出狀態(tài),此時總線變?yōu)楦唠娖?,該單元占領(lǐng)總線,往總線上發(fā)送數(shù)據(jù),發(fā)送數(shù)據(jù)完成再把74HC125改為高阻狀態(tài)。如果檢測到總線是高電平,等待檢測,直到總線變低后再占領(lǐng)總線。

    總線檢測電路

      

    隔離485電路

      使用ADIADM2483芯片進(jìn)行接口電平轉(zhuǎn)換(4),該芯片屬于隔離485,雙電源供電輸入輸出隔離。

    4 隔離485電路

      軟件設(shè)計

    主機(jī)程序部分需要實現(xiàn)各從機(jī)上傳數(shù)據(jù)的接收、處理和上傳。主機(jī)接收子單元信息通過一個RS485串口實現(xiàn),數(shù)據(jù)格式為16進(jìn)制,數(shù)據(jù)位8位,1 個起始位,1個結(jié)束位,無寄偶校驗位,波特率9600bps。采用串行口中斷的方式接收,主機(jī)程序初始化完成后等待各從機(jī)發(fā)送信息,當(dāng)主機(jī)接收到第一個字節(jié)后,判斷該字節(jié)是否為設(shè)備號,如果不是設(shè)備號,接收個數(shù)清零,如果是設(shè)備號繼續(xù)接收第二個字節(jié);判定第二個字節(jié)是否為正確的功能碼,如果功能碼錯誤,接收個數(shù)清零重新接收,功能碼正確;接收第三個字節(jié),該字節(jié)為從單元發(fā)送信息的字節(jié)個數(shù)x,計算從單元發(fā)送總字節(jié)個數(shù)為M=X+3+2,3個開頭字節(jié)和2 CRC校驗碼,主機(jī)接收到M個字節(jié)后,首先判斷CRC校驗碼是否正確,錯誤舍棄所有信息,正確則把從單元的信息保存到數(shù)據(jù)區(qū),該次接收結(jié)束,主機(jī)繼續(xù)等待接收。

    信息的上傳通過一個RS232串口實現(xiàn)。當(dāng)主機(jī)接收到從機(jī)信息后,進(jìn)行數(shù)據(jù)的處理,發(fā)現(xiàn)從單元信息發(fā)生變化,主機(jī)準(zhǔn)備把從機(jī)信息發(fā)送到上位機(jī),首先重新初始化發(fā)送緩沖區(qū),然后通過中斷的方式依次發(fā)送信息到上位機(jī),發(fā)送信息包括設(shè)備號、功能碼、發(fā)送字節(jié)個數(shù)、信息字節(jié)和CRC校驗碼。

      主機(jī)單元接收數(shù)據(jù)流程圖示于圖5。

    程序流程圖

      結(jié)束語

      徐龍輝所設(shè)計的系統(tǒng)實現(xiàn)了開關(guān)信號的多點監(jiān)測,一個主機(jī)單元,32個從機(jī)單元,每個從機(jī)單元監(jiān)測32個開關(guān),該系統(tǒng)共可監(jiān)測1024個開關(guān),使用 9600bps的波特率。采用主從召換的方式,開關(guān)信號監(jiān)測的反應(yīng)時間一般要用20-30s,使用該種總線檢測的方式,開關(guān)信號的反應(yīng)速度最慢也不超過 1s,快時只有幾百ms,大大提高反應(yīng)時間,并且由于不用時時召喚,總線數(shù)據(jù)流少,提高了總線的穩(wěn)定性。

     

  • 企業(yè)介紹
北京市天地華杰科技有限公司是一家專業(yè)從事網(wǎng)絡(luò)數(shù)據(jù)通信產(chǎn)品研發(fā)和銷售的高科技企業(yè)。是由中石油深圳市中油匯通實業(yè)發(fā)展有限公司直接控股。百富勤國際(香港)有限公司做為國際銷售伙伴三方合作成立的。 深圳市天地華杰科技有限公司產(chǎn)品齊全,主…  更多>>
  • 聯(lián)系方式

北京市天地華杰科技有限公司

聯(lián)系人:張生

地址:北京市東城區(qū)東四三條65號

郵編:100010

電話:010-67737811

傳真:-

公司網(wǎng)址:http://www.tdhj.com.cn

  • 該空間手機(jī)版

掃描此二維碼即可訪問該空間手機(jī)版

  • 在線反饋
1.我有以下需求:



2.詳細(xì)的需求:
姓名:
單位:
電話:
郵件:
您還沒有登錄,請登陸,
如果您還沒有注冊,點擊這里注冊.
  • 網(wǎng)友反饋
更多請進(jìn)入空間管理中心查看
關(guān)于我們 | 網(wǎng)站地圖 | 聯(lián)系我們
© 2003-2018    經(jīng)營許可編號:京ICP證120335號
公安機(jī)關(guān)備案號:110102002318  服務(wù)熱線:010-82053688
我要反饋