基于Modbus協(xié)議的串口通訊程序——(RS485總線系統(tǒng)應(yīng)用之3)
為克服RS-232串口的通信距離短、波特率低的缺點(diǎn),后來推出了RS-485/422接口標(biāo)準(zhǔn)(以下簡(jiǎn)稱485總線)。由于485總線的先進(jìn)性,很快在工業(yè)測(cè)控等領(lǐng)域得到了廣泛地應(yīng)用。
2. 485總線的特點(diǎn)
485總線采用了平衡發(fā)送和差分接收接口標(biāo)準(zhǔn)。在發(fā)送端將串行口的TTL電平信號(hào)轉(zhuǎn)換成差分信號(hào)由A、B兩線輸出,經(jīng)過雙絞線傳輸?shù)浇邮斩撕?,再將差分信?hào)還原成TTL電平信號(hào)。因此具有極強(qiáng)的抗共模干擾能力,加之總線收發(fā)器靈敏度很高,可以檢測(cè)到低至200mV的電壓。故傳輸信號(hào)經(jīng)過千米以上的衰減后都可以完好恢復(fù)。在100kbit/s的傳輸速率下,通信距離可以達(dá)到1200米左右。如果通信距離較短,其最大傳輸速率可達(dá)10Mbit/s。如果需傳輸更長(zhǎng)的距離,需要增加485中繼器。RS-485采用半雙工工作方式,支持多點(diǎn)數(shù)據(jù)通信。RS-485總線網(wǎng)絡(luò)拓?fù)湟话悴捎媒K端匹配的總線型結(jié)構(gòu)。即采用一條總線將各個(gè)節(jié)點(diǎn)串接起來,不支持環(huán)形或星型網(wǎng)絡(luò)。如果需要使用星型結(jié)構(gòu),就必須使用485中繼器或者485集線器。RS-485/422總線一般最大支持32個(gè)節(jié)點(diǎn),如果使用特制的485芯片,可以達(dá)到256個(gè)節(jié)點(diǎn)或更多。
3. 485總線布線規(guī)則
?、?由于485總線傳送的是一對(duì)差分信號(hào),485網(wǎng)絡(luò)上各設(shè)備之間的數(shù)據(jù)傳輸線最好采用外加屏蔽層的雙絞線,屏蔽層應(yīng)在一個(gè)點(diǎn)可靠接地。
?、?在工業(yè)現(xiàn)場(chǎng)應(yīng)用中,如果現(xiàn)場(chǎng)干擾源非常復(fù)雜,各節(jié)點(diǎn)之間可能存在很高的共模電壓。雖然485接口使用的是差分傳輸方式,具有抗共模干擾能力。但是當(dāng)共模電壓大于+12V或者小于-9V時(shí),就超過了485接收器的極限接收電壓,接收器將無法工作,甚至可能燒毀芯片和設(shè)備。此時(shí),應(yīng)在485總線網(wǎng)絡(luò)中使用485光隔離中繼器,從而消除共模電壓的影響。
?、?隨著傳輸距離的延長(zhǎng),485總線網(wǎng)絡(luò)上會(huì)產(chǎn)生回波反射信號(hào)。如果485總線的傳輸距離超過100米,建議在485網(wǎng)絡(luò)的開始端和結(jié)束端并接120Ω電阻。
?、?一般應(yīng)采用手牽手的總線拓?fù)浣Y(jié)構(gòu)。最好不要采用星型拓?fù)浣Y(jié)構(gòu)。否則會(huì)產(chǎn)生反射信號(hào),影響通信質(zhì)量。要盡量減少節(jié)點(diǎn)設(shè)備與主干線路之間的距離,如果在實(shí)際應(yīng)用中必須距離較遠(yuǎn),應(yīng)使用485中繼器接出一個(gè)485總線的分支。如果實(shí)際應(yīng)用中一定要使用星型拓?fù)浣Y(jié)構(gòu),則必須使用485集線器。
⑤.必須重視485總線的負(fù)載能力,影響負(fù)載能力的因素有:接在主計(jì)算機(jī)串口的485轉(zhuǎn)換器的供電能力,通訊距離,485數(shù)據(jù)線材的品質(zhì),波特率等。
無源型的485轉(zhuǎn)換器是從計(jì)算機(jī)的串口竊電,供電力較差,帶負(fù)載能力不足。如果485網(wǎng)絡(luò)上的設(shè)備比較多,應(yīng)使用帶電源的485轉(zhuǎn)換器。選用好的485專用通訊線纜,盡可能使用低的波特率。使用485中繼器或者485集線器,都可以提高485總線的負(fù)載能力。
4. 485總線布線方法
485總線星形拓?fù)浣Y(jié)構(gòu)
485總線樹型拓?fù)浣Y(jié)構(gòu)
5. 120Ω電阻的連接方法
評(píng)論