http://www.henanjusheng.com 2026-07-15 09:19 廣州市微嵌計(jì)算機(jī)科技有限公司
干工控這行的,串口通信故障大概是遇到最多的問題之一了。
現(xiàn)場(chǎng)跑得好好的設(shè)備,突然PLC不響應(yīng)了、變頻器收不到指令了、稱重?cái)?shù)據(jù)不刷新了。你過去一看,工業(yè)一體機(jī)屏幕上的數(shù)據(jù)卡住了,串口通信斷了。然后就是一頓排查,有時(shí)候半個(gè)小時(shí)搞定,有時(shí)候折騰大半天還找不著原因。
今天就分享一套串口通信故障排查的7步定位法。這不是什么高深理論,就是多年現(xiàn)場(chǎng)經(jīng)驗(yàn)的總結(jié),希望能幫大家縮短故障定位時(shí)間。
## 第一步:確認(rèn)故障范圍
串口通信出問題,第一時(shí)間不要急著拆機(jī)器,先搞清楚是單點(diǎn)故障還是多點(diǎn)故障。
具體怎么做?看看是一臺(tái)設(shè)備斷了通信,還是多臺(tái)同時(shí)斷。如果只有一臺(tái)設(shè)備的串口通信異常,其他都正常,那大概率是這臺(tái)設(shè)備本身的問題。如果多臺(tái)同時(shí)斷,那可能跟供電、網(wǎng)絡(luò)或者共用的什么東西有關(guān)。
再看看是剛安裝就斷的,還是運(yùn)行了一段時(shí)間才斷。剛安裝就斷的,多半是配置或接線問題。運(yùn)行了一段時(shí)間才斷的,可能是設(shè)備老化、環(huán)境變化或者干擾累積。
這一步的信息非常關(guān)鍵,能幫你快速縮小排查范圍。
## 第二步:檢查物理連接
這是最基本但也最容易被忽略的一步。
先看接頭有沒有松動(dòng)。工業(yè)現(xiàn)場(chǎng)震動(dòng)大,DB9接頭用久了螺絲可能松了,或者端子排上的線被震掉了。動(dòng)手檢查一遍,該擰的擰緊。
再看線纜有沒有破損。有些現(xiàn)場(chǎng)線纜走在電纜橋架里,跟動(dòng)力線混在一起,時(shí)間長(zhǎng)了被磨破皮也不稀奇。特別是RS485用的屏蔽雙絞線,屏蔽層如果破了,抗干擾能力直接歸零。
還有一個(gè)容易忽略的點(diǎn):線纜長(zhǎng)度。RS232理論最遠(yuǎn)15米,RS485理論最遠(yuǎn)1200米,但實(shí)際現(xiàn)場(chǎng)因?yàn)橛懈蓴_,有效距離比理論值短不少。有些安裝的時(shí)候可能就超了,平時(shí)勉強(qiáng)能用,環(huán)境干擾一變大就斷了。
第三步要檢查終端電阻。RS485總線兩端要接120歐姆終端電阻,這個(gè)很多人知道。但實(shí)際現(xiàn)場(chǎng)經(jīng)常發(fā)現(xiàn)沒接、或者只接了一端、或者兩端都接了但中間分支太多。用萬用表量一下總線電阻,正常應(yīng)該是兩個(gè)120歐并聯(lián)約60歐。
## 第三步:確認(rèn)串口參數(shù)
物理連接沒問題的話,接下來看軟件配置。
串口參數(shù)對(duì)不對(duì),一查就知道:波特率、數(shù)據(jù)位、停止位、校驗(yàn)位、流控方式。這五個(gè)參數(shù),工業(yè)一體機(jī)和從站設(shè)備必須完全一致。
實(shí)際操作中,最常見的坑是波特率搞錯(cuò)。有些設(shè)備的默認(rèn)波特率是9600,但有些廠家出廠設(shè)的是19200或38400。如果是從別的項(xiàng)目換過來的設(shè)備,參數(shù)可能被改過。
校驗(yàn)方式也容易搞混。有的PLC設(shè)的是偶校驗(yàn),但上位機(jī)軟件里設(shè)的是無校驗(yàn)。這種情況下短包能通,長(zhǎng)包就容易出錯(cuò)。
確認(rèn)參數(shù)的最好辦法是拿串口調(diào)試助手單獨(dú)跟從站設(shè)備通信。發(fā)一個(gè)簡(jiǎn)單的讀命令,看能不能收到正常回包。如果能通,說明參數(shù)沒問題,問題出在上位機(jī)軟件。如果不通,繼續(xù)往下查。
## 第四步:用串口調(diào)試工具做回環(huán)測(cè)試
如果前面幾步都排除了,這時(shí)候該上工具了。
最簡(jiǎn)單的辦法是做硬件回環(huán)測(cè)試。把串口的TX和RX短接,然后用串口調(diào)試助手發(fā)數(shù)據(jù),看能不能收到自己發(fā)的內(nèi)容。能收到說明串口硬件本身沒壞,不能收到說明串口芯片或者驅(qū)動(dòng)有問題。
工控機(jī)上有多個(gè)串口的情況下,還要確認(rèn)你用的是物理幾號(hào)口。Windows設(shè)備管理器里顯示的COM口號(hào),跟物理接口的對(duì)應(yīng)關(guān)系有時(shí)候不是你想的那樣。特別是用了MOXA等多串口卡的設(shè)備,映射關(guān)系更容易搞混。
建議用USB轉(zhuǎn)串口工具,一頭接工控機(jī)串口,一頭接另一臺(tái)電腦,兩臺(tái)機(jī)器對(duì)發(fā)數(shù)據(jù)來驗(yàn)證。這樣能排除從站設(shè)備的影響,確認(rèn)工控機(jī)端串口是否正常工作。
## 第五步:排查電磁干擾
到這一步,如果硬件和軟件都正常但通信還是時(shí)斷時(shí)續(xù),那就得考慮干擾了。
電磁干擾是串口通信故障里最隱蔽的原因。因?yàn)槟憧床坏健⒚恢?,但它確實(shí)在作怪。
典型表現(xiàn):通信時(shí)好時(shí)壞,白天正常晚上斷、或者設(shè)備全開的時(shí)候斷、或者旁邊變頻器一啟動(dòng)就斷。這些都是干擾的信號(hào)。
排查方法:
先看布線。串口通信線跟動(dòng)力線(380V、220V)有沒有平行布線?間距夠不夠?如果挨著走,干擾幾乎不可避免。標(biāo)準(zhǔn)要求通信線和動(dòng)力線至少分開30厘米以上,條件允許的話最好穿管隔離。
再看屏蔽層接地。RS485的屏蔽層應(yīng)該單端接地,不是兩端都接。兩端接地會(huì)形成地環(huán)路,反而引入干擾。接地電阻要小于4歐姆。
變頻器是個(gè)大干擾源。如果旁邊有大功率變頻器,建議在變頻器輸出端加磁環(huán),通信線上加磁環(huán)也有幫助。有些場(chǎng)合需要在通信線上加裝信號(hào)隔離器,能有效切斷共模干擾。
## 第六步:檢查供電和接地
供電問題也會(huì)導(dǎo)致串口通信異常,雖然不常見但確實(shí)存在。
工業(yè)一體機(jī)的供電電壓是否穩(wěn)定?有些現(xiàn)場(chǎng)供電波動(dòng)大,電壓一低串口芯片工作就不正常。用萬用表量一下供電電壓,看有沒有明顯的波動(dòng)。
接地系統(tǒng)很關(guān)鍵。工業(yè)一體機(jī)的外殼接地、串口接口的信號(hào)地、從站設(shè)備的接地,這幾個(gè)地之間如果有電位差,就會(huì)在通信線上產(chǎn)生共模電壓,輕則通信出錯(cuò),重則燒接口芯片。
理想狀態(tài)下,整個(gè)系統(tǒng)的接地應(yīng)該是等電位的。但實(shí)際現(xiàn)場(chǎng)很多廠子接地做得不規(guī)范,不同設(shè)備的接地點(diǎn)之間有電位差。遇到這種情況,加裝RS485隔離器是最有效的解決辦法。
## 第七步:檢查驅(qū)動(dòng)和系統(tǒng)層面
如果以上都排除了,問題還存在,那就要看軟件層面了。
串口驅(qū)動(dòng)有沒有沖突?設(shè)備管理器里看串口有沒有黃色感嘆號(hào)。有些工控機(jī)裝了多個(gè)軟件,可能有兩個(gè)軟件同時(shí)占用同一個(gè)串口,這種情況下后啟動(dòng)的軟件會(huì)通信失敗。
Windows系統(tǒng)更新有時(shí)候也會(huì)搞壞串口驅(qū)動(dòng)。特別是Windows更新之后,有些驅(qū)動(dòng)被替換成了通用驅(qū)動(dòng),導(dǎo)致串口工作異常。遇到這種情況,回滾驅(qū)動(dòng)或者重新安裝廠家提供的驅(qū)動(dòng)。
還有一個(gè)容易忽略的:BIOS設(shè)置。有些工控機(jī)的BIOS里可以設(shè)置串口的工作模式(RS232/RS485/RS422),如果模式設(shè)錯(cuò)了,通信當(dāng)然不通。進(jìn)BIOS確認(rèn)一下串口模式設(shè)置是否正確。
## 幾個(gè)實(shí)戰(zhàn)經(jīng)驗(yàn)補(bǔ)充
上面是7步排查法,再補(bǔ)充幾個(gè)現(xiàn)場(chǎng)經(jīng)驗(yàn)。
第一,準(zhǔn)備一個(gè)"串口通信急救包"。里面放一個(gè)USB轉(zhuǎn)串口工具、一根交叉串口線、一個(gè)120歐終端電阻、一個(gè)RS485隔離器、一根屏蔽雙絞線?,F(xiàn)場(chǎng)遇到問題的時(shí)候,這些東西能幫你快速做交叉驗(yàn)證。
第二,養(yǎng)成記錄通信參數(shù)的習(xí)慣。每套設(shè)備安裝完成后,把所有串口的參數(shù)記錄在案:端口號(hào)、波特率、校驗(yàn)方式、從站地址。下次出問題直接對(duì)著表查,不用從頭來。
第三,安裝的時(shí)候就把防干擾措施做到位。別等出了問題再補(bǔ),出了問題再補(bǔ)的成本遠(yuǎn)高于安裝時(shí)多花幾根管子和幾個(gè)隔離器的錢。
第四,選設(shè)備的時(shí)候多問一句串口隔離的事。有些便宜的工業(yè)一體機(jī)串口沒做隔離,芯片直接對(duì)外,遇到現(xiàn)場(chǎng)干擾大的環(huán)境就容易出問題。帶光電隔離的串口雖然貴一點(diǎn),但省下的維修時(shí)間和停產(chǎn)損失遠(yuǎn)遠(yuǎn)超過這個(gè)差價(jià)。
## 寫在最后
串口通信故障排查本質(zhì)上就是逐層排除的過程。從物理層到數(shù)據(jù)鏈路層再到應(yīng)用層,一層一層往上查,大概率都能找到原因。關(guān)鍵是排查的時(shí)候要有條理,不要東查一下西查一下,最后把自己繞進(jìn)去了。
7步定位法的核心思路就是:先確認(rèn)范圍再動(dòng)手,先查硬件再查軟件,先排簡(jiǎn)單原因再排復(fù)雜原因。按照這個(gè)順序來,大部分串口通信故障都能在30分鐘內(nèi)定位到原因。
廣州微嵌的工業(yè)一體機(jī)全系標(biāo)配光電隔離串口,另外我們?cè)诔鰪S前會(huì)對(duì)每個(gè)串口做通信測(cè)試。如果你在現(xiàn)場(chǎng)遇到串口通信問題,也歡迎交流,有些問題可能我們以前碰到過,能幫你少走彎路。