數(shù)據(jù)傳輸是工業(yè)控制領(lǐng)域一個非常重要的環(huán)節(jié),數(shù)據(jù)傳輸?shù)姆(wěn)定程度直接影響到產(chǎn)品的可靠性。如何提高數(shù)據(jù)傳輸?shù)目煽啃院头(wěn)定性是工程師不得不面對的課題。 ~xPU#m<
g A+p^`;[
無論通過何種介質(zhì)傳輸信號,都會在傳輸過程中產(chǎn)生衰減。導線的電阻對信號的影響很小,可以忽略不計。電纜的分布電容主要是由雙絞線的兩條平行導線產(chǎn)生。信號的損失主要在于電纜的分布電容和分布電感組成的LC低通濾波器。通訊波特率越高,信號衰減也會越大。因此,在傳輸數(shù)據(jù)量不是很大,傳輸速率要求不是很高的情況下,一般采用9600bps的波特率。 c`,'[Q5(O
K4U_sCh#f
除了信號衰減之外,影響信號傳輸?shù)牧硪粋因素是信號反射。阻抗不匹配和阻抗不連續(xù)是導致RS-485總線形成信號反射的兩個主要原因。阻抗不匹配主要是485芯片與通訊線路之間的阻抗不匹配。因為在通訊線路空閑時,整個通訊線路信號雜亂無章,一旦此類反射信號觸發(fā)了485芯片輸入端的比較器,就會產(chǎn)生錯誤的信號。解決方法是將RS-485總線的A、B線加上一定阻值的偏置電阻,分別拉高和拉低,這樣就不會出現(xiàn)不可預知的雜亂信號了。信號在傳輸線末端突然遇到電纜阻抗很小甚至沒有,信號在這個地方就會引起反射。消除這種反射最常用的方法,是在電纜的末端跨接一個與電纜的特性阻抗同樣大小的終端電阻,使電纜的阻抗連續(xù)。在實際應用中,由于傳輸電纜的特性阻抗與通訊波特率等應用環(huán)境有關(guān),特性阻抗不可能與終端電阻完全相等,所以不能完全避免信號反射的發(fā)生。 pz4lC=H%o
E>_N|j)9
RS-485傳輸電纜通常多為雙絞線,雙絞線的兩條平行導線之間即會產(chǎn)生電容。同時,電纜和大地之間也同樣存在類似很小的電容。由于RS-485總線上傳輸?shù)男盘柺怯蔁o數(shù)的“1”和“0”位所組成的,所以當遇到0x01等特殊字節(jié)時,電平“0”使得分布電容得到充足的時間充電,而當電平“1”突然來到時,電容集聚的電荷不能在短時間之內(nèi)放掉,因此導致信號位的變形,從而影響了整個數(shù)據(jù)傳輸?shù)馁|(zhì)量。所以,一方面要盡量選用分布電容較小即質(zhì)量較好的線纜作為通信線,另一方面盡量降低通訊的波特率,給電容充足的時間去放電。 6K Cv
-qyhg-k6
當通訊距離較短,應用環(huán)境干擾小的情況下,我們有時只需要簡單的單向通訊就能實現(xiàn)項目的所有功能,但是大部分應用環(huán)境并非如此理想。具體方法是將數(shù)據(jù)分包傳輸,通過將每包數(shù)據(jù)加上幀頭和幀尾的方式將數(shù)據(jù)打包,其中幀尾留一個字節(jié)作為校驗字節(jié)。下位機通過將自己計算的校驗字節(jié)與上位機傳輸過來的校驗字節(jié)作比較,從而給上位機發(fā)出指令,到底是重新發(fā)送剛剛那包數(shù)據(jù)還是接著下發(fā)下一包數(shù)據(jù),就這樣一包發(fā)完再發(fā)下一包,直至發(fā)完為止。通過這樣一種校驗重發(fā)機制,我們就可以擯棄掉出錯的概率,使得通訊系統(tǒng)正常運行。 Z; 6N7U