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