在 RS-485 一般的技術(shù)文獻(xiàn)中,為了簡(jiǎn)便起見,收發(fā)器產(chǎn)品說明書通常會(huì)介紹一種全雙工中繼器設(shè)計(jì)。但是,在遠(yuǎn)距離傳輸網(wǎng)絡(luò)中,數(shù)千個(gè)儀表都使用全雙工線纜并不可取,因?yàn)榫€纜和配線都非常的昂貴。
為了實(shí)施一款更遠(yuǎn)距離的半雙工模式遠(yuǎn)距傳輸網(wǎng)絡(luò),我們必須安裝一個(gè)半雙工中繼器。圖 1 顯示了一個(gè)系統(tǒng)結(jié)構(gòu)圖。由于半雙工中繼器連接至兩個(gè)總線段,該中繼器必須包含兩個(gè)獨(dú)立的收發(fā)器,每個(gè)收發(fā)器都經(jīng)由信號(hào)隔離器連接至其各自總線,并連接至一個(gè)隔離于兩個(gè)收發(fā)器部分的控制邏輯。該控制邏輯及時(shí)關(guān)閉和開啟中繼器的驅(qū)動(dòng)器和接收機(jī)部分。任意方向的發(fā)來數(shù)據(jù)信號(hào)都可對(duì)其初始化。
圖1 雙隔離半雙工中繼器總線擴(kuò)展
兩種最為常用的時(shí)序控制方法是圖 3 所示單觸發(fā)電路和圖 4 所示時(shí)延反相緩沖器電路。為了確保正確的開關(guān)行為,兩種方法都要求對(duì)上電和總線閑置以后的啟動(dòng)條件進(jìn)行定義。通過故障保護(hù)偏壓電阻器 RFS 可以完成這項(xiàng)工作,其在沒有收發(fā)器有效驅(qū)動(dòng)總線時(shí),產(chǎn)生一個(gè)大于接收機(jī)輸入敏感度 VFS > +200 mV 的故障保護(hù)電壓 VFS。
圖2 利用一個(gè)單觸發(fā)電路實(shí)施的收發(fā)器時(shí)序控制
圖3 利用一個(gè)反相緩沖器電路實(shí)施的收發(fā)器時(shí)序控制
完整執(zhí)行一遍單觸發(fā)電路的功能運(yùn)行順序(此處以數(shù)字編號(hào),請(qǐng)參見圖 3),清楚地說明了該中繼器的工作過程:
在總線閑置期間,由于VFS,兩個(gè)中繼器端口的接收機(jī)輸出均為高電平。因此,兩個(gè)收發(fā)器在接收模式下相互牽制。
接下來,端口 1 上發(fā)來數(shù)據(jù)包起始位的到達(dá),驅(qū)動(dòng) RX1 輸出為低。這種轉(zhuǎn)變觸發(fā)單觸發(fā)電路,從而驅(qū)動(dòng)其輸出為高,并激活驅(qū)動(dòng)器 DR2。
正確計(jì)算時(shí)間常量 RD × CD,以使該單觸發(fā)電路輸出在整個(gè)數(shù)據(jù)包時(shí)間期間都保持高態(tài)。
在單觸發(fā)時(shí)間常量期間,DR2 始終驅(qū)動(dòng)總線 2。XCVROUT 代表總線 2 上遠(yuǎn)程收發(fā)器的接收機(jī)輸出狀態(tài)。請(qǐng)注意,DR2 被激活時(shí),上拉電阻器 RPU 拉高未激活接收機(jī) (RX2) 的輸出,以使 RX1 保持激活狀態(tài)。
這種解決方案的缺點(diǎn)是,R-C 時(shí)間常量取決于數(shù)據(jù)包長(zhǎng)度和發(fā)送信號(hào)的數(shù)據(jù)速率。另外,單觸發(fā)電路易受噪聲瞬態(tài)的影響,容易引起偽觸發(fā)和中繼器故障。
不過,單觸發(fā)電路常用于接口橋接,例如:RS-232 到 RS-485 轉(zhuǎn)換器等。這些轉(zhuǎn)換器直接把 RS-485 網(wǎng)絡(luò)連接至老式 PC 或者 RS-232 控制機(jī)器的 RS-232 端口。
有一種更加穩(wěn)健和不依賴于數(shù)據(jù)速率的方法可以替代單觸發(fā)電路,即通過一種具有不同充電和放電時(shí)間的反相施米特 (Schmitt) 觸發(fā)緩沖器,實(shí)現(xiàn)時(shí)序控制。優(yōu)先原則是在邏輯低狀態(tài)期間主動(dòng)驅(qū)動(dòng)總線,并在邏輯高狀態(tài)期間關(guān)閉驅(qū)動(dòng)器。然后,根據(jù)逐位原則開啟和關(guān)閉序列,從而使中繼器功能獨(dú)立于數(shù)據(jù)速率和數(shù)據(jù)包長(zhǎng)度。
完整執(zhí)行一遍反相器控制中繼器的功能運(yùn)行順序(此處以數(shù)字編號(hào),請(qǐng)參見圖4),可以清楚地說明其運(yùn)行過程:
在總線閑置期間,由于 VFS,兩個(gè)中繼器端口的接收機(jī)輸出均為高。延遲電容 CD 獲得完全充電,驅(qū)動(dòng)反相器輸出為低態(tài),以使收發(fā)器維持在接收模式下。
之后,總線 1 出現(xiàn)一個(gè)低位,驅(qū)動(dòng)RX1輸出為低電平,快速對(duì) CD 放電,并激活驅(qū)動(dòng)器 DR2。
當(dāng)總線電壓變?yōu)檎╒Bus > 200 mV)時(shí),RX1 輸出變?yōu)楦?,其?qū)動(dòng) DR2 輸出為高,并通過 RD 對(duì) CD 緩慢充電。必須正確計(jì)算最小時(shí)間常量(RD × CD),以使最大電源電壓 VCC(max) 和最小正反相器輸入閾值VTH+(min) 時(shí),延遲時(shí)間tD 超過驅(qū)動(dòng)器最大低到高傳播延遲 tPLH(max),即超出 30%。例如,電容為 CD = 100 Pf 時(shí),RD 的要求電阻值為:
[page]
根據(jù)延遲時(shí)間 (tD) 與實(shí)際數(shù)據(jù)位間隔時(shí)間的對(duì)比情況,延長(zhǎng)驅(qū)動(dòng)器激活時(shí)間,以在總線建立有效的高態(tài)信號(hào)。需在從發(fā)射模式切換至接收模式以前完成這項(xiàng)工作,目的是讓接收機(jī)輸出始終保持高態(tài)。由于接收機(jī)傳播延遲短于驅(qū)動(dòng)器,因此接收機(jī)不可能變?yōu)榈蛻B(tài),即使是一瞬間的低態(tài)都不可能。驅(qū)動(dòng)器一旦關(guān)閉,外部故障保護(hù)電阻器便將總線 2 偏壓至 200 mV 以上,其被活躍接收機(jī)看作是一個(gè)定義高電平。
某個(gè)總線閑置,低位 VOD < 1.5 V,高位之初時(shí)延 (tD) 的 VOD > 1.5 V,此時(shí),總線 2 的差動(dòng)輸出電壓為 VOD = VFS > +200 mV。之后,其余高位 VOD = VFS > +200 mV。
此外,XCVROUT代表總線 2 上遠(yuǎn)程收發(fā)器的接收機(jī)輸出狀態(tài)。傳統(tǒng)中繼器設(shè)計(jì)的數(shù)據(jù)速率通常被限制為 10 kbps,更短傳播延遲的一些現(xiàn)代收發(fā)器擁有高達(dá) 100 kbps 以上的數(shù)據(jù)速率。
為了簡(jiǎn)便起見,到目前為止,中繼器討論始終都沒有涉及電隔離這一重要內(nèi)容。但是,在一些遠(yuǎn)距傳輸網(wǎng)絡(luò)(中繼器的主要應(yīng)用領(lǐng)域)中,網(wǎng)絡(luò)節(jié)點(diǎn)之間的大接地電位差 (GPD) 很是常見。這些 GPD 以收發(fā)器輸入強(qiáng)共模電壓的形式存在,如果不實(shí)施電隔離,它們會(huì)對(duì)器件產(chǎn)生破壞力。當(dāng)收發(fā)器總線電路隔離于其控制電路時(shí),總線系統(tǒng)獨(dú)立于本地節(jié)點(diǎn)的接地電位。
圖1顯示了隔離于節(jié)點(diǎn)控制電路的總線節(jié)點(diǎn)驅(qū)動(dòng)器和接收機(jī)部分。但是,就中繼器而言,必須使用雙隔離,因?yàn)閮?nèi)部控制邏輯必須隔離于總線 1 和總線 2。另外,兩個(gè)總線還必須相互隔離。圖 4 顯示了實(shí)施這種隔離的一個(gè)中繼器電路。電路使用兩個(gè)經(jīng)過隔離的 RS-485 收發(fā)器,每個(gè)收發(fā)器都要求一個(gè)單獨(dú)的隔離電源 VISO,其源自于控制部分的中央 3.3V 電源(請(qǐng)參見圖5)。
圖4 雙隔離半雙工中繼器
圖5 雙隔離電源設(shè)計(jì)
中繼器可用作總線擴(kuò)展器或者分接頭延長(zhǎng)器。用作總線擴(kuò)展器時(shí),中繼器構(gòu)建一個(gè)總線的末端和另一個(gè)總線的開端。這樣可以在兩個(gè)端口固定安置故障保護(hù)電阻器和端接電阻器。但是,當(dāng)中繼器用作分接頭延長(zhǎng)器時(shí),它可以放置在網(wǎng)絡(luò)的任何位置。這時(shí),應(yīng)去除連接總線的端口的電阻器,但是仍然保留分接頭端口的電阻器。