-
1 # 玩轉嵌入式
-
2 # 水牛
說一下我個人的經驗吧,我做工業產品十幾年了,用到很多串列埠通訊的裝置,我用到的串列埠隔離有兩種情況:
1、提高裝置工作穩定性,減少串列埠通訊線引入的干擾訊號。
2、防爆電氣電路的隔離,設計防爆產品時本安電路和非本安電路是必須要隔離的。
再說一下串列埠隔離的距離和作用:
1、隔離的通訊距離和產品要求有關,如果是民用產品,通訊線有個3-4米以內不隔離是可以的,如果是工業產品,那就不行了,只要是串列埠線離開裝置就要隔離。很多人說我距離很近,不需要隔離,很多人不了個隔離的本質作用是抗干擾,其實裝置內部都會產生很大的干擾。舉個例子:我們之前做電力裝置,我看到有個產品的訊號線、電源線都是走線槽的,唯獨RS485線在各機箱之間直接,沒有走線槽,很難看,我和不理解,我問公司的老工程師,他們告訴我RS485走線槽就會導致RS485丟包率上升很高,通訊很慢。因為線槽內的電源線和訊號線會把干擾訊號耦合到RS485線上。
2、串列埠通訊隔離的作用:隔離的最大作用就是抵抗共摸干擾,其實通訊電路中的差模干擾一般不是靠隔離去除的,通訊介面電路前端一般都設定有差模和共摸吸收電路,因為一個光耦只有大約7pF的分佈電容,所以他對高頻共摸干擾的抵抗能力是非常好的。我之前做過電力系統的抄表專案,RS485通訊線距離都很遠,最近的幾十米,遠的能達到800米,專案做好後執行過程中發現,系統很脆弱,只要是下雨打雷就會壞裝置,而且一壞就是一串,但是我們拆回來的裝置裡邊通訊電路都沒燒糊了,殼子都燒壞了,單CPU依然執行正常,沒有損壞,沒有宕機,這就是隔離的作用。
另外我再補充一點,很多人知道要用隔離,原理圖設計很好,設計pcb時沒有將光耦兩端重發隔離,導致隔而不離,使隔離效果嚴重打折,因此設計隔離電路時應按下圖進行PCB設計,而且通訊電路的電源也要隔離。
回覆列表
在工控自動化行業,使用串列埠通訊或者使用串列埠擴展出來的RS485通訊介面、CAN介面通訊時,一般都對通訊介面做隔離處理,包括通訊部分的供電都是隔離的。這樣做的目的是為了避免資料在傳輸過程當中受到干擾,提高通訊的穩定。
1.為什麼要進行通訊隔離
微控制器在使用UART串列埠通訊時,其通訊距離有限,所以單純的UART通訊或者RS232介面的通訊只用作近距離的資料傳輸,這裡所謂的近距離是指同一塊PCB板上的距離,用於晶片級別的通訊,如微控制器和藍芽模組透過UART通訊、微控制器透過UART和wifi模組通訊等。這種極短距離的通訊可以不使用隔離。但是在涉及到遠距離通訊時,一般都會用RS485介面或者CAN匯流排介面通訊,通訊距離在幾百米、上千米時都會做隔離處理。隔離一般透過光耦或者專用的數字隔離晶片來實現,典型的光耦隔離晶片如下圖所示。
2.通訊隔離電路如何實現
在設計隔離電路時,可以透過光耦來實現,也可以透過數字隔離晶片來實現,用光耦時要考慮通訊的波特率。以RS485通訊介面為例,用光耦實現的隔離通訊電路如下圖所示。
上圖中,用三個光耦分別隔離TXD、RXD以及方向埠,並且電源也是隔離電源。使用隔離晶片所實現的通訊隔離如下圖所示。
上圖中所使用的數字隔離晶片為ADUM1201,RS485的方向引腳還是透過光耦實現隔離的。