1、怎樣實現 RS485 modbus 幾台 多個 主機連接一台從機 ?
485集線器其實是有多路串口的MCU控制器,常見的集線器有兩種,一種為透傳型,主機下發時,集線器輸出的每一路485從機都能收到,根據廣播還是帶地址發送,完成一對多還是一對一通訊的控制。另一種為非標准型,現在有許多做485集線器的廠家,使用非標准MODBUS協議,要求使用者也根據其協議完成通訊,這樣可以完成對後端輸出每一路的控制精準控制。歸根結底,多對多的485的應用誕生是因為485本身的局限性。因為485通訊只能進行輪詢,無法適應復雜的多主機網路以及從站主動上傳的問題,近幾年出現了新的匯流排技術POWERBUS,可以透傳MODBUS協議,只需兩根線即可完成通訊供電,且支持從機主動上報的功能。替代485晶元作為通訊介面,成為了一種新的發展方向。下圖是應用POWERBUS匯流排技術解決現場設備多主問題的一種模型。
2、modbus協議中,是否可以幾台主機帶一台從機的?
在同一個modbus網路中,只能有1台主機,多台從機。
你的系統中,PLC是通過不同的通訊口與三台pc通訊的,則每個通訊口的網路獨立,組成3個modbus網路,仍符合「1台主機:1台從機」,所以是可以的。
由於3個modbus網路是分開的,故要設定3個從機地址,地址號可以相同,也可以不相同。而且每個modbus網路的協議是分別編程的。
3、rs485 多機通信時,主機怎麼自動分配從機地址?
系統設計、施工 時指定
軟體里 會有這個方面的信息
就是 通信協議
4、485多主機通信用全雙工還是半雙工?
RS-485是半雙工的,此介面具有以下特點:
1. RS-485的電氣特性:邏輯「1」以兩線間的電壓差為+(2—6) V表示;邏輯「0」以兩線間的電壓差為-(2—6)V表示。介面信號電平比RS-232-C降低了,就不易損壞介面電路的晶元, 且該電平與TTL電平兼容,可方便與TTL 電路連接。
2. RS-485的數據最高傳輸速率為10Mbps
3. RS-485介面是採用平衡驅動器和差分接收器的組合,抗共模干能力增強,即抗雜訊干擾性好。
4. RS-485介面的最大傳輸距離標准值為4000英尺,實際上可達 3000米,另外RS-232-C介面在匯流排上只允許連接1個收發器, 即單站能力。而RS-485介面在匯流排上是允許連接多達128個收發器。即具有多站能力,這樣用戶可以利用單一的RS-485介面方便地建立起設備網路。
因RS-485介面具有良好的抗雜訊干擾性,長的傳輸距離和多站能力等上述優點就使其成為首選的串列介面。 因為RS485介面組成的半雙工網路,一般只需二根連線,所以RS485介面均採用屏蔽雙絞線傳輸。 RS485介面連接器採用DB-9的9芯插頭座,與智能終端RS485介面採用DB-9(孔),與鍵盤連接的鍵盤介面RS485採用DB-9(針)。
5、RS485匯流排 多個從機同時發送問題
485 本身就是 一主多從的結構,只能如此
6、rs485組網通訊時,主機485和多個從機485是怎麼連線,怎麼通信的?
rs485接線時,一般應採用手牽手的匯流排拓撲結構,最好不要採用星型拓撲結構。可參考:
http://blog.sina.com.cn/s/blog_729a492301019owo.html
通信最常見為modbus協議,採用問答式,由主機一個一個查詢,從機被動回答。
RS485
理想用線為雙絞線:半雙工的兩線最好用雙絞線中的一對,這樣兩線雙絞,加在兩線上的干擾電平抵消實現抗干擾效果。全雙工時接收兩線用一對,發送兩線用另一對。RS485沒有功率傳輸要求,所以對線徑要求不高。
實際工程中,通常采購室外阻水雙絞線保證線的保護性能。但有些工程商會用RVV線纜,這也是可以的,但抗干擾性要差些。這樣就有工程商採用RVVP線纜(帶屏蔽),這個並不好,因為線間電容的加大會影響傳輸質量,需要降低傳輸的波特率。
波特率的設置與線纜長度(含分支的總長)是有一定對應關系的,線路越長,波特率應該設置的更低比較穩定。
無論選擇什麼樣的線纜,盡可能採用匯流排架構,減少星形聯接,分支線盡可能短,盡量採用菊花鏈的連接方式,即匯流排接到第一個結點,再跳到下一個結點。未接設備的分支線最好從匯流排上移除,否則易形成干擾。匯流排的最未端如果接收信號不佳,可加120歐的線未電阻跨接在信號線兩端。中間設備不要加,否則會加大線路損耗,減少設備數量和距離。
不同設備的RS485晶元通常會不同,有不同負載的類型的晶元,這些通常工程商沒法直接看出。所以也就是說匯流排上不同設備的最大連接設備數不確定,同樣的設備連接數參見設備說明要求就行。下面給出菊花鏈的方式連接圖
全雙工四線制結構下,主機的發送端線與從機的接收端線連,正接正,負接負對應。從機的發送線與主機的接收線對應。
半雙工兩線制下,正接正,負接負就行。
通信:2Kbps或線路長度大於500米時。
RS-485接地
RS-485通信雙方的地電位差要求小於1V,所以建議將兩邊RS-485介面的信號地相連,注意信號地不要接大地干擾問題,線路存在回波干擾,此時要在通信線路首末兩端並聯120Ω匹配電阻?
驅動能力?
RS-485匹配電阻
RS-485是差分電平通信,才考慮加接匹配電阻,在距離較長或速率較高時;485/。推薦在通信速率大於19。
7、採用485多機通訊
RS-485介面大多都是基於RS-232介面與電腦進行通信的,485協議編程都是基於串口編程的,而由於RS-232與RS-485介面的不同,由於RS-232隻支持點對點通信,全雙工通信,而RS-485是支持點對多點通信,半雙工通信,基於其編寫的協議有一定的相關性又有一定的區別。
RS-232介面支持點對點通信,全雙工通信模式,現在對於RS-232的使用大多都是基於無Modem連接,其分為握手連接和無握手連接,握手連接方式類似於打電話,請求連接方發起連接請求發送,等待對方准備就緒並且允許發送,然後發送數據,發送數據的同時也可以接收對方發送的數據。而無握手連接則是類似於對講,直接發送相關的數據過去,由於現在硬體功能增強,串口可以隨時處於准備接收狀態。在針對RS-232串口進行編程,無握手連接最簡單,而握手連接則需要編寫相應的應答命令之類的代碼。
RS-485介面支持點對多點通信,半雙工通信模式,由於485是半雙工通信模式,就必須要解決數據流向問題,就像某條鐵路可以雙向通車,為了防止撞車追尾等事故的發生,必須要通過相應的調度來解決該問題,同樣的道理,由於支持點對多點通信,也必須要通過主機進行相應的調度來解決該問題,而且主機對於整個匯流排必須具有絕對的控制權。關於485通信問題,我們利用老師在教室講課作為例子來說明。
我們假設老師作為RS-485匯流排的主機,而學生作為485匯流排的從設備,而學生的學號則是從設備的地址碼。老師對於整個課堂具有絕對的掌控力,一般來說,老師在上課之前會對學生進行點名以確實學生是否有缺課的,同樣的道理,RS-485匯流排的主機一開始也會對從設備進行一次輪詢,逐個地址碼去詢問設備是否正常並且對相關情況做個記錄,防止在正常通信的時候不斷呼叫並不存在的地址碼而導致通信效率下降。主機對於從設備的控制是利用廣播方式發送下去的,而從設備只對含有自己地址碼的指令做相關的回應,在從設備做回應的情況下,其他的從設備和主機保持沉默,當從設備執行完相關指令之後,發送完畢信號給主機,主機繼續執行下一條指令。就像老師在課堂講課的時候,指定某個學生回答問題,學生回答問題過程中,其他學生和老師保持沉默,不容許課堂上有講小話的情況,只有當學生回答完問題之後並且告知老師自己回答完畢,老師才會繼續講課或者指令另外的學生做相應的動作。485協議的編程基於上面的思路編寫。
RS-485匯流排協議對於意外情況的處理,當485匯流排主機對其從設備發送相關的指令的時候,從設備可能會因為種種原因而不執行相關指令的情況,比如從設備在使用過程中損壞而不能回應相關指令,主機一般都會設定一個時延,在設定的時間之內得不到相關從設備的回應,其應該做相應的記錄並且執行下一條指令。就像老師點名要求某個學生回答問題,而沒有得到相應的回應,點名三次之後,還是沒有回應,對於該學生的缺課做相關的記錄,然後繼續下面的課程。
關於485匯流排線路另外的一些問題也可以用老師講課來做比喻,如老師講課過程中,外面的噪音非常的大,從而導致學生聽不到,那就需要加擴音器,對於485匯流排而言,就是外部干擾過大,導致衰減的485信號淹沒在雜訊中,需要增加深圳市鼎信鴻達科技有限公司的485中繼器中繼還原相關信號再次傳輸,同樣的道理,如果教室過大,導致老師說的話並不能傳到最後面的學生處,也是增加擴音器來解決問題,當485匯流排傳輸距離過長的時候,也是通過485中繼器放大信號延長傳輸距離,還有就是如果講課過程中,產生了混音的情況有可能會導致整個課堂都聽不清楚,就將其劃分為多個小教室,通過多個廣播將老師的聲音分別傳入各個教室,使其不混雜都能夠聽清楚,如果將多個RS-485匯流排簡單的按照星型連接或者樹形連接方式連接,就會產生信號反射等問題,就必須採用深圳市鼎信鴻達科技有限公司的485集線器或者485中繼器將其相互隔離,獨立驅動,不會相互影響,從而保證485通信的穩定性。
8、RS485匯流排中有幾十台設備,主機如何區分每一台設備?
rS485匯流排中有幾十台設備,主機如何區分每一台設備?
在多機通信中,每台從機均分配有一個從機地址,主機與從機之間進行串列通信時,通常是主機先呼叫某從機地址,喚醒被叫從機後,主、從兩機之間進行數據交換。而未被呼叫的從機則繼續進行各自的工作。
一次完整的通信過程分為3個階段:主機詢問、從機應答和鏈路釋放。主機詢問階段,主機以幀的形式將從機地址碼、命令、數據和校驗碼傳送到指定從機;從機應答階段,從機解釋接收的命令碼,並組織相應幀信息回送到主機;鏈路釋放階段,從機清除接收緩沖區及相關變數,准備與主機下次通信。任何一次完整的通信過程都是由主機方發起的,從機在被主機定址前只能處於偵聽狀態,從機在接收到地址碼的第2個位元組後,立即判斷是否定址自己,如果是.繼續接受下面的數據,否則不與理睬。
來自於網路)
9、能不能有兩台主機同時查詢一個RS485設備中的數據?
兩線制485的協議里是允許匯流排式傳輸非點對點,但是是多從機,多主機在原生協議中是不支持的。你的需求是可以實現的,不過需要一些技巧
我沒做過不知道,百度的這是某公司的解決方案,也許能給你些啟發。
10、485通訊 一台主機和多台分機
這個是不會的。他會對標識符的判定,如果標識符一樣的話,匯流排會進行仲裁!