RS-485總線在多節(jié)點遠距離通信系統(tǒng)中的應(yīng)用
介紹RS-485接口SN65HVD3082E芯片的結(jié)構(gòu)、性能特點,及以該芯片為主的通信系統(tǒng)的構(gòu)成,包括它們的硬件電路和軟件設(shè)計方法;說明了該系統(tǒng)的優(yōu)點及應(yīng)用領(lǐng)域。
本文引用地址:http://www.ex-cimer.com/article/186568.htmSN65HVD3082E芯片是一款為RS-485數(shù)據(jù)總線網(wǎng)絡(luò)而設(shè)計的半雙工的收發(fā)器。它由+5V供電,與TIA/EIA-485A標準完全兼容。通過控制輸出轉(zhuǎn)換時序,它能夠在長距離雙絞線電纜上傳輸高達200kbps速率的信號。它的供電電流極低,一般小于0.6mA,當(dāng)處于不活動的關(guān)閉模式時,供電電流只有幾個nA,所以特別適合于低功耗方面的應(yīng)用。它具有寬的共模抑制范圍和高靜電放電保護能力,因此,適用于噪聲容限要求很高的場合。SN65HVD3082E與SN75176的工業(yè)標準封裝相匹配。它的上電復(fù)位電路能使輸出保持高阻狀態(tài)直至供電電壓穩(wěn)定,其熱關(guān)斷功能還可以保護芯片不因系統(tǒng)故障而損壞。它的管腳圖如圖1所示,內(nèi)部功能圖如圖2所示。其他特性還有:在一條總線上可以多達256個節(jié)點;總線引腳上的防靜電保護超過16kV,接收器帶故障保護。
2.1系統(tǒng)總體設(shè)計
系統(tǒng)由一臺IBM-PC機和多個AT89C52單片機構(gòu)成,采用主從式結(jié)構(gòu),以AT89C52芯片為核心的從機既可以獨立地完成數(shù)據(jù)處理和控制任務(wù),又可以將數(shù)據(jù)傳給上位PC機。PC機將這些數(shù)據(jù)進行處理、顯示、打印,同時將各種控制命令傳給各個從機,以實現(xiàn)集中管理和最優(yōu)控制。它們之間的通信由SN65HVD3082E芯片完成。組成框圖如圖3所示。在接口之間接有匹配電阻,用于吸收總線上的反射信號,保證正常傳播信號干凈、無毛刺(其取值與總線的特性阻抗相當(dāng))。當(dāng)總線上沒有信號傳輸時,總線處于懸浮狀態(tài),容易受干擾信號的影響。在總線上,差分信號的正端和+5V電源間接一個10kΩ的電阻;正端和負端之間也接一個10kΩ的電阻;負端和地之間再接一個10kΩ的電阻,形成一個電阻網(wǎng)絡(luò)。當(dāng)總線上沒有信號傳輸時,正端的電平大約為3.2V,負端的電平大約為1.6V,即使有干擾信號,也很難產(chǎn)生串行通信的起始信號0,從而增加了總線抗干擾的能力。
2.2RS232/RS485的轉(zhuǎn)換部分
選用DAQ485A系列產(chǎn)品DAQ485A-6N作為RS-232/RS-485轉(zhuǎn)換器。其一端為DB9S插頭,可直接與PC機的RS-232口相連,而其另一端為四端子接線座,分別為A、B、GND、VCC??捎捎嬎銠CRS-232口直接供電,亦可在VCC和GND間外接+5V直流電源;DQ485A轉(zhuǎn)換器內(nèi)部具有自動處理功能,外部電源不影響內(nèi)部竊電,內(nèi)部竊電亦不影響外部電源,因此,兩者可分而供之,亦可同時供之。DAQ485A-6N系列使用了TI的E系列ESD保護器件,因此,適合于長線室外使用。圖4是RS-232/RS-485轉(zhuǎn)換器與RS-485的連線圖。
本系統(tǒng)軟件設(shè)計以Windows 98為平臺,采用Delphi和C++語言設(shè)計,下面僅介紹上下位機通信及界面的主要程序的設(shè)計思想和設(shè)計方法。通信軟件必須符合RS-485協(xié)議標準。因此上位機與下位機之間嚴格實行主從結(jié)構(gòu)形式的通信方式,上位機為主,下位機為從。一切都由主機控制,任一時刻主機只與一臺從機傳輸信息,從機之間不能直接通信,若要通信可通過主機實觀。數(shù)據(jù)通信波特率定為9600波特,每個從機都有唯一的地址號,用來區(qū)分各從機。單片機的數(shù)據(jù)通信由串口完成,定時器T1為波特發(fā)生器,數(shù)據(jù)傳送格式為1位起始位,8位數(shù)據(jù)位,1位停止位,1位可編程位(TB8)。工作方式:定時器T1設(shè)置為方式2,串口設(shè)置為工作方式3。單片機通過中斷方式發(fā)送和接收數(shù)據(jù)。由于RS-485是一種半雙工通信方式,發(fā)送與接收共用同一物理信道。各任何時刻只允許一臺單機處于發(fā)送狀態(tài)。因此,要求應(yīng)答的單機必須在偵聽到總線上呼叫信號已經(jīng)發(fā)送完畢,且沒有其他單機發(fā)出應(yīng)答信號的情況下才能應(yīng)答。主從機的時序有嚴格的要求,若配合不好會發(fā)生總線沖突,使系統(tǒng)的通信癱瘓,無法正常。應(yīng)采取的措施:(1)復(fù)位時,主從機均應(yīng)處于接收狀態(tài)。在軟件設(shè)計時,應(yīng)使系統(tǒng)上電或正式通信前對串口做幾次空操作,清除端口的非法數(shù)據(jù)和命令;(2)控制端RE和DE信號的有效脈寬應(yīng)大于發(fā)送或接收一幀信號的寬度;(3)總線上所連接的各單機的發(fā)送控制信號在時序上應(yīng)完全隔開,避免總線沖突。主機程序流程圖如圖5所示,下位機通信框圖如圖6所示。
由于RS485總線傳輸距離長(1200米以上),而且其傳輸線通常暴露于戶外,因此極易因為雷擊等原因遭受過電壓的沖擊。而RS-485收發(fā)器工作電壓較低(+5V左右),其本身耐壓也非常低(-7V~+12V),一旦遭受過電壓的沖擊,就會被擊穿損壞。在有強烈的浪涌電能出現(xiàn)時,甚至?xí)故瞻l(fā)器爆裂,線路板燒焦。因此,除采用防護電路、選擇優(yōu)質(zhì)的防護器件、良好的PCB板設(shè)計之外,還采用可靠的接地技術(shù)(接地電阻不能超過10Ω)。
由RS-485總線構(gòu)成的多節(jié)點遠距離通信系統(tǒng)可用于倉庫通信、電視監(jiān)控、機器人焊接、考勤機、水表集抄、高速公路收費、脈沖功率裝置、數(shù)據(jù)采集、工業(yè)控制等諸多系統(tǒng)中。它具有傳輸距離遠、抗干擾能力強、價格低、穩(wěn)定性好、電路簡單等許多優(yōu)點,應(yīng)用前景廣闊。
評論