由于RS-422總線具有抗干擾能力強、通訊速率高、通訊距離遠、可以與多臺從機通訊等特點,所以,該總線在數(shù)據(jù)采集、監(jiān)控管理及集散控制系統(tǒng)的主從式多機通訊系統(tǒng)中得到普遍應用。但是,若在一條RS-422 通訊總線上連接過多的從機,則有可能會由于總線負擔過重,而使系統(tǒng)可靠性變差,有時甚至會導致整個系統(tǒng)無法正常工作。
為了解決RS422總線在實際應用中可能出現(xiàn)的問題,筆者設計出一種以可編程" title="可編程">可編程邏輯陣列GAL16V8為核心的串行" title="串行">串行口擴展電路。它可將微機的一路RS232串行口擴展至4路RS-422串行口。該電路通過主機軟件對DTR、RTS控制信號的編程,可以和任選通訊接口的從機進行數(shù)據(jù)通訊;也可以不用DTR、RTS控制信號,而直接實現(xiàn)主機與全部通訊接口的從機之間的數(shù)據(jù)通訊,同時可在不改變原來軟件的情況下,做到即插即用。
本電路采用DC-DC隔離電源供電,主機與通訊接口之間采用高速光耦來實現(xiàn)光電隔離,從而增強了主機系統(tǒng)的抗干擾能力。此外,該擴展電路還具有不占用系統(tǒng)資源、結(jié)構(gòu)簡單、使用方便、通用性強和性能可靠等特點,因此,可廣泛應用于全雙工通訊方式的主從式多機通訊系統(tǒng)。 該DC-DC隔離電源主要通過調(diào)節(jié)輸出脈沖的頻率(調(diào)節(jié)脈沖的間歇時間)來使輸出電壓保持穩(wěn)定。其穩(wěn)壓過程的原理為: 2.3 RS422/RS485接口電路
在實際的煤氣泄漏巡檢系統(tǒng)中,筆者用該擴展電路組成的主從式多機通訊網(wǎng)絡,實現(xiàn)了主機與40多臺數(shù)據(jù)采集裝置之間的數(shù)據(jù)通訊,而且保證了通訊性能的穩(wěn)定可靠。
1 電路的整體結(jié)構(gòu)
圖1所示是這種RS-422串行口擴展電路的結(jié)構(gòu)框圖。整個擴展電路分為4個部分,其中,第一部分是DC-DC隔離電源。為了提高整個系統(tǒng)的抗干擾能力,本電路采用隔離電源來進行供電。第二部分是RS-232接口電路,用于實現(xiàn)各信號的RS-232電平與TTL電平的轉(zhuǎn)換;第三部分是RS485/RS422接口電路,主要實現(xiàn)各信號的RS485/RS422電平與TTL電平的轉(zhuǎn)換;第四部分是以可編程邏輯陣列GAL16V8 為核心的譯碼控制電路,主要用于實現(xiàn)對通訊接口的切換。
2 電路工作原理
2.1 DC-DC隔離電源
為了提高整個系統(tǒng)的抗干擾能力,本電路采用隔離電源供電。DC-DC隔離電源的工作原理如圖2所示。電路中的MAX761 DC-DC轉(zhuǎn)換芯片是采用PFM(脈沖調(diào)頻方式)方式來工作的,最高調(diào)制頻率為300kHz。該芯片內(nèi)部含有誤差放大器、頻率調(diào)制器和功率驅(qū)動管。MAX761只需少數(shù)幾個外圍元件即可組成DC-DC電源轉(zhuǎn)換電路。而電路中的LT431芯片則是集電極開路的誤差放大器,它內(nèi)含2.5V基準源。
當輸出電壓下降時,R4電壓、誤差、LT431輸出、光耦輸出電流、R1電壓均隨之降低。當R1電壓小于1.5V基準電壓時,在調(diào)制脈沖的正半周期,LX端輸出低電平 脈沖變壓器初極電流線性增大,D1反偏截止,此時次極無電流,脈沖變壓器開始儲存能量;而在調(diào)制脈沖的負半周,LX端輸出高電平,脈沖變壓器釋放能量,感應電壓經(jīng)D1(正向?qū)ǎ┹敵鍪馆敵鲭妷荷仙?。從而使輸出電壓保持穩(wěn)定。
實際上,當輸出電壓升高時,R4電阻上的電壓和誤差、LT431輸出到光耦的輸出電流、以及R1上的電壓均隨之升高,當R1電壓大于1.5V基準電壓時,在調(diào)制脈沖的負半周,LX端輸出高電平,脈沖變壓器不產(chǎn)生電壓。而此時負載消耗將使輸出電壓下降。從而使輸出電壓保持穩(wěn)定。
2.2 RS-232接口電路
串行口擴展電路的電路連接如圖3所示。圖中的MAX238 接口芯片含有4路RS-232接口電路,其中一路用于RXD、TXD通訊信號的電平轉(zhuǎn)換,另外兩路用于DTR、RTS信號的電平轉(zhuǎn)換。通過主機軟件可設置DTR、RTS的狀態(tài)以選擇通訊接口,從而實現(xiàn)主機與連接在此通訊接口上的從機之間的數(shù)據(jù)通訊。
圖3
RS422/RS485接口電路由4片(U3~U6)MAX489芯片組成。MAX489芯片內(nèi)部含有一組接收、發(fā)送電平轉(zhuǎn)換電路。該芯片是全雙工通訊方式的RS422接口芯片, 芯片上的RE使能端(低有效)用于控制數(shù)據(jù)的接收,DE 使能端(高有效)則控制數(shù)據(jù)的發(fā)送。為便于通訊系統(tǒng)的調(diào)試,可以在接收端、發(fā)送端和各路發(fā)送使能端分別安裝一個發(fā)光管以觀察各路的通訊狀態(tài)。
2.4 譯碼控制電路
電路中的U1(GAL16V8)是可編程的邏輯陣列,利用該芯片并通過編程可實現(xiàn)譯碼控制。將主機發(fā)出的通訊口選擇信號DTR、RTS由IN5、IN6輸入到U1,同時將設置開關K1由IN1接入U1這樣,當K1、DTR和RTS經(jīng)譯碼后,即可由OUT1~OUT5輸出到U3~U6的發(fā)送使能端,以分別控制4個通訊口的數(shù)據(jù)發(fā)送器,從而完成主機向所選擇通訊總線的數(shù)據(jù)發(fā)送;此外,經(jīng)OUT5~OUT8輸出到U3~U6的接收使能端,則可分別控制4個通訊口的數(shù)據(jù)接收器,以最終使主機通過通訊總線完成從機數(shù)據(jù)的接收功能。其通訊端口的選擇如表1所列。
表1 通訊端口選擇表
K1 | DTR | RTS | 通訊端口 |
0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 2 |
0 | 1 | 1 | 3 |
1 | X | X | 全部 |
3 結(jié)束語
該電路中的全部芯片均選用+5V單電源供電,因而電路結(jié)構(gòu)十分簡單。另外,電路采用DC-DC隔離電源供電,且主機與通訊接口之間采用高速光耦進行光電隔離,也增強了主機系統(tǒng)的抗干擾能力。該電路同時具有不占用系統(tǒng)資源、結(jié)構(gòu)簡單、使用方便、通用性強和性能可靠等特點可廣泛應用于雙全工通訊方式的主從式多機通訊系統(tǒng)。