基于RS-485總線的可擴展局域網(wǎng)絡的研究
RS-485是在RS-422的基礎上發(fā)展起來的,能實現(xiàn)一點對多點的通信,也能實現(xiàn)多點雙向通信,但同一時刻只能有一個發(fā)送器,其余的為接收器,即一主多從的通信方式。目前市場上可供選擇的RS-485總線芯片很多,其中包括可支持128個節(jié)點的MAXl487和支持400個節(jié)點的SP485R。利用該類芯片可直接組成簡單的通信網(wǎng)絡。
本文引用地址:http://m.butianyuan.cn/article/157797.htmRS-485收發(fā)器采用平衡發(fā)送、差分接收的方式,即在發(fā)送端將TTL信號轉換成差分信號輸出,在接收端,接收器將差分信號轉換成TTL信號。因此具有較高的共模抑制能力。同時接收器具有較高的靈敏度,能檢測低達200mV的電壓,數(shù)據(jù)傳輸可達1200m。如降低數(shù)據(jù)傳輸速率,則通信距離可更長。當通信速率為1200bps時,理論上通信距離可達15km。當傳輸距離超過300m時,在網(wǎng)絡的二端需接入120Ω的匹配電阻,以減少因阻抗不匹配而引起的反射,吸收噪聲,從而有效抑制噪聲干擾。MAXl487的接口電路示意圖如圖1所示。
2網(wǎng)絡結構及實施方案
在實際應用中,RS-485總線芯片本身所擁有的節(jié)點數(shù)已不能滿足需求,而往往需要一個接點龐大的復雜局域網(wǎng)絡(如幾千甚至幾萬個節(jié)點)來完成。連接在該網(wǎng)絡中的各類設備能相互通信,并且可以在一定節(jié)點數(shù)范圍內根據(jù)實際需要任意擴展,并做到即插即用。管理人員通過隨身攜帶的筆記本電腦,接入網(wǎng)絡中的任一接點,可了解整個網(wǎng)絡的運行情況。結合用戶應用程序,管理人員還可獲得連接于該網(wǎng)絡上相關設備的運行數(shù)據(jù)。
針對以上要求,局域網(wǎng)絡必須由多片具有RS-485總線的芯片連接而成。本文討論節(jié)點數(shù)≤32768點的局域網(wǎng)絡,使用MAXl487作收發(fā)器。根據(jù)RS-485總線的特點;在任一時刻,整個網(wǎng)絡只允許有一個發(fā)送器,其余的必須處于接收狀態(tài)。而接入網(wǎng)絡中的設備隨時可能有多個設備同時傳輸數(shù)據(jù)的要求,如不進行協(xié)調,就會出現(xiàn)總線競爭現(xiàn)象,使總線電子紊亂,整個網(wǎng)絡無法工作。
將一片MAXl487所能連接的128個節(jié)點作為一個子網(wǎng),整個局域網(wǎng)絡由若干個子網(wǎng)組成。所有節(jié)點不直接和用戶設備相連,而是通過一個節(jié)點模塊和設備連接。這是一種二端帶通信口的智能化模塊,內帶一個單片機系統(tǒng),用于執(zhí)行局域網(wǎng)絡通信協(xié)議,負責BS-485總線和設備間的通信,同時參與整個局域網(wǎng)絡的通信協(xié)調工作。模塊的一端為RS-485總線,用于連接網(wǎng)絡,另一端是RS-232總線(或TTL電平)與用戶設備、儀器儀表或智能傳感器連接。
子網(wǎng)中每個節(jié)點模塊都有自己的地址,用1個字節(jié)表示,即00H~7FH。而在整個局域網(wǎng)絡中,每個子網(wǎng)也有自己的子網(wǎng)地址,也用1個字節(jié)表示,即00H~FFH。這樣,在整個局域網(wǎng)絡中每個節(jié)點就有自己惟一的用2個字節(jié)的二進制數(shù)表示的地址,類似Internet中的IP地址,其地址格式如圖2所示。以00H子網(wǎng)05H節(jié)點為例,其中的X為無效位
規(guī)定每個子網(wǎng)中的地址為00H和7FH的2個節(jié)點為特殊節(jié)點。地址為00H的節(jié)點是該子網(wǎng)的管理者,協(xié)調子網(wǎng)中的通信,同時也是該子網(wǎng)的一個數(shù)據(jù)出入口,和上一個地址為7FH的節(jié)點連接。地址為7FH的節(jié)點為該子網(wǎng)的另一個數(shù)據(jù)出入口,負責和下一個子網(wǎng)中地址為00H的節(jié)點連接。這表示子網(wǎng)之間是由2個背靠背的節(jié)點模塊通過RS-232總線相連的。
評論